From 439ff764eb1f3a31f70b52d71ea86608220316bd Mon Sep 17 00:00:00 2001 From: Lola Aimar Date: Sun, 22 Mar 2026 09:41:09 -0300 Subject: [PATCH 01/21] add initial readme --- lazer/cardano/our-project/README.md | 3 +++ 1 file changed, 3 insertions(+) create mode 100644 lazer/cardano/our-project/README.md diff --git a/lazer/cardano/our-project/README.md b/lazer/cardano/our-project/README.md new file mode 100644 index 00000000..449851ba --- /dev/null +++ b/lazer/cardano/our-project/README.md @@ -0,0 +1,3 @@ +# Our submission for Pythathon + +## Idea From 5fa07b24984d224c61e5046f16924d52507d7b7c Mon Sep 17 00:00:00 2001 From: sofia-bobbiesi Date: Sun, 22 Mar 2026 09:59:20 -0300 Subject: [PATCH 02/21] aiken boilerplate --- lazer/cardano/our-project/on-chain/.gitignore | 6 ++ lazer/cardano/our-project/on-chain/README.md | 65 +++++++++++++++++++ lazer/cardano/our-project/on-chain/aiken.toml | 23 +++++++ .../on-chain/validators/placeholder.ak | 41 ++++++++++++ 4 files changed, 135 insertions(+) create mode 100644 lazer/cardano/our-project/on-chain/.gitignore create mode 100644 lazer/cardano/our-project/on-chain/README.md create mode 100644 lazer/cardano/our-project/on-chain/aiken.toml create mode 100644 lazer/cardano/our-project/on-chain/validators/placeholder.ak diff --git a/lazer/cardano/our-project/on-chain/.gitignore b/lazer/cardano/our-project/on-chain/.gitignore new file mode 100644 index 00000000..ff7811b1 --- /dev/null +++ b/lazer/cardano/our-project/on-chain/.gitignore @@ -0,0 +1,6 @@ +# Aiken compilation artifacts +artifacts/ +# Aiken's project working directory +build/ +# Aiken's default documentation export +docs/ diff --git a/lazer/cardano/our-project/on-chain/README.md b/lazer/cardano/our-project/on-chain/README.md new file mode 100644 index 00000000..86c1e160 --- /dev/null +++ b/lazer/cardano/our-project/on-chain/README.md @@ -0,0 +1,65 @@ +# on-chain + +Write validators in the `validators` folder, and supporting functions in the `lib` folder using `.ak` as a file extension. + +```aiken +validator my_first_validator { + spend(_datum: Option, _redeemer: Data, _output_reference: Data, _context: Data) { + True + } +} +``` + +## Building + +```sh +aiken build +``` + +## Configuring + +**aiken.toml** +```toml +[config.default] +network_id = 41 +``` + +Or, alternatively, write conditional environment modules under `env`. + +## Testing + +You can write tests in any module using the `test` keyword. For example: + +```aiken +use config + +test foo() { + config.network_id + 1 == 42 +} +``` + +To run all tests, simply do: + +```sh +aiken check +``` + +To run only tests matching the string `foo`, do: + +```sh +aiken check -m foo +``` + +## Documentation + +If you're writing a library, you might want to generate an HTML documentation for it. + +Use: + +```sh +aiken docs +``` + +## Resources + +Find more on the [Aiken's user manual](https://aiken-lang.org). diff --git a/lazer/cardano/our-project/on-chain/aiken.toml b/lazer/cardano/our-project/on-chain/aiken.toml new file mode 100644 index 00000000..efd12252 --- /dev/null +++ b/lazer/cardano/our-project/on-chain/aiken.toml @@ -0,0 +1,23 @@ +name = "delfines/on-chain" +version = "0.0.0" +compiler = "v1.1.21" +plutus = "v3" +license = "Apache-2.0" +description = "Aiken contracts for project 'delfines/on-chain'" + +[repository] +user = "delfines" +project = "on-chain" +platform = "github" + +[[dependencies]] +name = "aiken-lang/stdlib" +version = "v3.0.0" +source = "github" + +[[dependencies]] +name = "pyth-network/pyth-lazer-cardano" +version = "main" +source = "github" + +[config] diff --git a/lazer/cardano/our-project/on-chain/validators/placeholder.ak b/lazer/cardano/our-project/on-chain/validators/placeholder.ak new file mode 100644 index 00000000..bbf9d47d --- /dev/null +++ b/lazer/cardano/our-project/on-chain/validators/placeholder.ak @@ -0,0 +1,41 @@ +use cardano/address.{Credential} +use cardano/assets.{PolicyId} +use cardano/certificate.{Certificate} +use cardano/governance.{ProposalProcedure, Voter} +use cardano/transaction.{Transaction, OutputReference} + +validator placeholder { + mint(_redeemer: Data, _policy_id: PolicyId, _self: Transaction) { + todo @"mint logic goes here" + } + + spend(_datum: Option, _redeemer: Data, _utxo: OutputReference, _self: Transaction) { + todo @"spend logic goes here" + } + + withdraw(_redeemer: Data, _account: Credential, _self: Transaction) { + todo @"withdraw logic goes here" + } + + publish(_redeemer: Data, _certificate: Certificate, _self: Transaction) { + todo @"publish logic goes here" + } + + vote(_redeemer: Data, _voter: Voter, _self: Transaction) { + todo @"vote logic goes here" + } + + propose(_redeemer: Data, _proposal: ProposalProcedure, _self: Transaction) { + todo @"propose logic goes here" + } + + // // If needs be, remove any of unneeded handlers above, and use: + // + // else(_ctx: ScriptContext) { + // todo @"fallback logic if none of the other purposes match" + // } + // + // // You will also need an additional import: + // // + // // use cardano/script_context.{ScriptContext} +} From c0a7b11248607092c32002e977cd923dcb126f26 Mon Sep 17 00:00:00 2001 From: sofia-bobbiesi Date: Sun, 22 Mar 2026 10:09:38 -0300 Subject: [PATCH 03/21] initialize off-chain project with Bun setup --- .../cardano/our-project/off-chain/.gitignore | 34 +++++++++++ lazer/cardano/our-project/off-chain/README.md | 15 +++++ lazer/cardano/our-project/off-chain/bun.lock | 26 ++++++++ lazer/cardano/our-project/off-chain/index.ts | 1 + .../our-project/off-chain/package-lock.json | 59 +++++++++++++++++++ .../our-project/off-chain/package.json | 12 ++++ .../our-project/off-chain/tsconfig.json | 30 ++++++++++ 7 files changed, 177 insertions(+) create mode 100644 lazer/cardano/our-project/off-chain/.gitignore create mode 100644 lazer/cardano/our-project/off-chain/README.md create mode 100644 lazer/cardano/our-project/off-chain/bun.lock create mode 100644 lazer/cardano/our-project/off-chain/index.ts create mode 100644 lazer/cardano/our-project/off-chain/package-lock.json create mode 100644 lazer/cardano/our-project/off-chain/package.json create mode 100644 lazer/cardano/our-project/off-chain/tsconfig.json diff --git a/lazer/cardano/our-project/off-chain/.gitignore b/lazer/cardano/our-project/off-chain/.gitignore new file mode 100644 index 00000000..a14702c4 --- /dev/null +++ b/lazer/cardano/our-project/off-chain/.gitignore @@ -0,0 +1,34 @@ +# dependencies (bun install) +node_modules + +# output +out +dist +*.tgz + +# code coverage +coverage +*.lcov + +# logs +logs +_.log +report.[0-9]_.[0-9]_.[0-9]_.[0-9]_.json + +# dotenv environment variable files +.env +.env.development.local +.env.test.local +.env.production.local +.env.local + +# caches +.eslintcache +.cache +*.tsbuildinfo + +# IntelliJ based IDEs +.idea + +# Finder (MacOS) folder config +.DS_Store diff --git a/lazer/cardano/our-project/off-chain/README.md b/lazer/cardano/our-project/off-chain/README.md new file mode 100644 index 00000000..5525c80c --- /dev/null +++ b/lazer/cardano/our-project/off-chain/README.md @@ -0,0 +1,15 @@ +# off-chain + +To install dependencies: + +```bash +bun install +``` + +To run: + +```bash +bun run index.ts +``` + +This project was created using `bun init` in bun v1.3.11. [Bun](https://bun.com) is a fast all-in-one JavaScript runtime. diff --git a/lazer/cardano/our-project/off-chain/bun.lock b/lazer/cardano/our-project/off-chain/bun.lock new file mode 100644 index 00000000..3e394c49 --- /dev/null +++ b/lazer/cardano/our-project/off-chain/bun.lock @@ -0,0 +1,26 @@ +{ + "lockfileVersion": 1, + "configVersion": 1, + "workspaces": { + "": { + "name": "off-chain", + "devDependencies": { + "@types/bun": "latest", + }, + "peerDependencies": { + "typescript": "^5", + }, + }, + }, + "packages": { + "@types/bun": ["@types/bun@1.3.11", "", { "dependencies": { "bun-types": "1.3.11" } }, "sha512-5vPne5QvtpjGpsGYXiFyycfpDF2ECyPcTSsFBMa0fraoxiQyMJ3SmuQIGhzPg2WJuWxVBoxWJ2kClYTcw/4fAg=="], + + "@types/node": ["@types/node@25.5.0", "", { "dependencies": { "undici-types": "~7.18.0" } }, "sha512-jp2P3tQMSxWugkCUKLRPVUpGaL5MVFwF8RDuSRztfwgN1wmqJeMSbKlnEtQqU8UrhTmzEmZdu2I6v2dpp7XIxw=="], + + "bun-types": ["bun-types@1.3.11", "", { "dependencies": { "@types/node": "*" } }, "sha512-1KGPpoxQWl9f6wcZh57LvrPIInQMn2TQ7jsgxqpRzg+l0QPOFvJVH7HmvHo/AiPgwXy+/Thf6Ov3EdVn1vOabg=="], + + "typescript": ["typescript@5.9.3", "", { "bin": { "tsc": "bin/tsc", "tsserver": "bin/tsserver" } }, "sha512-jl1vZzPDinLr9eUt3J/t7V6FgNEw9QjvBPdysz9KfQDD41fQrC2Y4vKQdiaUpFT4bXlb1RHhLpp8wtm6M5TgSw=="], + + "undici-types": ["undici-types@7.18.2", "", {}, "sha512-AsuCzffGHJybSaRrmr5eHr81mwJU3kjw6M+uprWvCXiNeN9SOGwQ3Jn8jb8m3Z6izVgknn1R0FTCEAP2QrLY/w=="], + } +} diff --git a/lazer/cardano/our-project/off-chain/index.ts b/lazer/cardano/our-project/off-chain/index.ts new file mode 100644 index 00000000..2a5e4b80 --- /dev/null +++ b/lazer/cardano/our-project/off-chain/index.ts @@ -0,0 +1 @@ +console.log("Hello via Bun!"); diff --git a/lazer/cardano/our-project/off-chain/package-lock.json b/lazer/cardano/our-project/off-chain/package-lock.json new file mode 100644 index 00000000..9c9637aa --- /dev/null +++ b/lazer/cardano/our-project/off-chain/package-lock.json @@ -0,0 +1,59 @@ +{ + "name": "off-chain", + "lockfileVersion": 3, + "requires": true, + "packages": { + "": { + "name": "off-chain", + "devDependencies": { + "@types/bun": "latest" + }, + "peerDependencies": { + "typescript": "^5" + } + }, + "node_modules/@types/bun": { + "version": "1.3.11", + "resolved": "https://registry.npmjs.org/@types/bun/-/bun-1.3.11.tgz", + "integrity": "sha512-5vPne5QvtpjGpsGYXiFyycfpDF2ECyPcTSsFBMa0fraoxiQyMJ3SmuQIGhzPg2WJuWxVBoxWJ2kClYTcw/4fAg==", + "dev": true, + "license": "MIT", + "dependencies": { + "bun-types": "1.3.11" + } + }, + "node_modules/@types/node": { + "version": "25.5.0", + "dev": true, + "license": "MIT", + "dependencies": { + "undici-types": "~7.18.0" + } + }, + "node_modules/bun-types": { + "version": "1.3.11", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/typescript": { + "version": "5.9.3", + "license": "Apache-2.0", + "peer": true, + "bin": { + "tsc": "bin/tsc", + "tsserver": "bin/tsserver" + }, + "engines": { + "node": ">=14.17" + } + }, + "node_modules/undici-types": { + "version": "7.18.2", + "dev": true, + "license": "MIT" + } + } +} diff --git a/lazer/cardano/our-project/off-chain/package.json b/lazer/cardano/our-project/off-chain/package.json new file mode 100644 index 00000000..54835b44 --- /dev/null +++ b/lazer/cardano/our-project/off-chain/package.json @@ -0,0 +1,12 @@ +{ + "name": "off-chain", + "module": "index.ts", + "type": "module", + "private": true, + "devDependencies": { + "@types/bun": "latest" + }, + "peerDependencies": { + "typescript": "^5" + } +} diff --git a/lazer/cardano/our-project/off-chain/tsconfig.json b/lazer/cardano/our-project/off-chain/tsconfig.json new file mode 100644 index 00000000..f159082f --- /dev/null +++ b/lazer/cardano/our-project/off-chain/tsconfig.json @@ -0,0 +1,30 @@ +{ + "compilerOptions": { + // Environment setup & latest features + "lib": ["ESNext", "DOM"], + "types": ["bun"], + "target": "ESNext", + "module": "Preserve", + "moduleDetection": "force", + "jsx": "react-jsx", + "allowJs": true, + + // Bundler mode + "moduleResolution": "bundler", + "allowImportingTsExtensions": true, + "verbatimModuleSyntax": true, + "noEmit": true, + + // Best practices + "strict": true, + "skipLibCheck": true, + "noFallthroughCasesInSwitch": true, + "noUncheckedIndexedAccess": true, + "noImplicitOverride": true, + + // Some stricter flags (disabled by default) + "noUnusedLocals": false, + "noUnusedParameters": false, + "noPropertyAccessFromIndexSignature": false + } +} From dfcf3bd8788c66b078c1f3f21b21af54614f79ec Mon Sep 17 00:00:00 2001 From: sofia-bobbiesi Date: Sun, 22 Mar 2026 10:18:10 -0300 Subject: [PATCH 04/21] feat: update dependencies in package.json and bun.lock for off-chain project --- lazer/cardano/our-project/off-chain/bun.lock | 130 ++++++++++++++++++ .../our-project/off-chain/package.json | 4 + 2 files changed, 134 insertions(+) diff --git a/lazer/cardano/our-project/off-chain/bun.lock b/lazer/cardano/our-project/off-chain/bun.lock index 3e394c49..371ec261 100644 --- a/lazer/cardano/our-project/off-chain/bun.lock +++ b/lazer/cardano/our-project/off-chain/bun.lock @@ -4,6 +4,10 @@ "workspaces": { "": { "name": "off-chain", + "dependencies": { + "@evolution-sdk/evolution": "^0.3.30", + "@pythnetwork/pyth-lazer-sdk": "^6.2.1", + }, "devDependencies": { "@types/bun": "latest", }, @@ -13,14 +17,140 @@ }, }, "packages": { + "@effect/cluster": ["@effect/cluster@0.48.16", "", { "peerDependencies": { "@effect/platform": "^0.90.10", "@effect/rpc": "^0.69.4", "@effect/sql": "^0.44.2", "@effect/workflow": "^0.9.6", "effect": "^3.17.14" } }, "sha512-ZZkrSMVetOvlRDD8mPCX3IcVJtvUZBp6++lUKNGIT6LRIObRP4lVwtei85Z+4g49WpeLvJnSdH0zjPtGieFDHQ=="], + + "@effect/experimental": ["@effect/experimental@0.54.6", "", { "dependencies": { "uuid": "^11.0.3" }, "peerDependencies": { "@effect/platform": "^0.90.2", "effect": "^3.17.7", "ioredis": "^5", "lmdb": "^3" }, "optionalPeers": ["ioredis", "lmdb"] }, "sha512-UqHMvCQmrZT6kUVoUC0lqyno4Yad+j9hBGCdUjW84zkLwAq08tPqySiZUKRwY+Ae5B2Ab8rISYJH7nQvct9DMQ=="], + + "@effect/platform": ["@effect/platform@0.90.10", "", { "dependencies": { "find-my-way-ts": "^0.1.6", "msgpackr": "^1.11.4", "multipasta": "^0.2.7" }, "peerDependencies": { "effect": "^3.17.13" } }, "sha512-QhDPgCaLfIMQKOCoCPQvRUS+Y34iYJ07jdZ/CBAvYFvg/iUBebsmFuHL63RCD/YZH9BuK/kqqLYAA3M0fmUEgg=="], + + "@effect/platform-node": ["@effect/platform-node@0.96.1", "", { "dependencies": { "@effect/platform-node-shared": "^0.49.0", "mime": "^3.0.0", "undici": "^7.10.0", "ws": "^8.18.2" }, "peerDependencies": { "@effect/cluster": "^0.48.2", "@effect/platform": "^0.90.6", "@effect/rpc": "^0.69.1", "@effect/sql": "^0.44.2", "effect": "^3.17.10" } }, "sha512-4nfB/XRJJ246MCdI7klTE/aVvA9txfI83RnymS7pNyoG4CXUKELi87JrkrWFTtOlewzt5UMWpmqsFmm2qHxx3A=="], + + "@effect/platform-node-shared": ["@effect/platform-node-shared@0.49.2", "", { "dependencies": { "@parcel/watcher": "^2.5.1", "multipasta": "^0.2.7", "ws": "^8.18.2" }, "peerDependencies": { "@effect/cluster": "^0.48.10", "@effect/platform": "^0.90.10", "@effect/rpc": "^0.69.3", "@effect/sql": "^0.44.2", "effect": "^3.17.13" } }, "sha512-uYlQi2swDV9hdHatr2Onov3G+VlEF+3+Qm9dvdOZiZNE1bVqvs/zs6LVT8Yrz/3Vq/4JPzGcN+acx0iiJo5ZVw=="], + + "@effect/rpc": ["@effect/rpc@0.69.5", "", { "peerDependencies": { "@effect/platform": "^0.90.10", "effect": "^3.17.14" } }, "sha512-LLCZP/aiaW4HeoIaoZuVZpJb/PFCwdJP21b3xP6l+1yoRVw8HlKYyfy/outRCF+BT4ndtY0/utFSeGWC21Qr7w=="], + + "@effect/sql": ["@effect/sql@0.44.2", "", { "dependencies": { "uuid": "^11.0.3" }, "peerDependencies": { "@effect/experimental": "^0.54.6", "@effect/platform": "^0.90.4", "effect": "^3.17.7" } }, "sha512-DEcvriHvj88zu7keruH9NcHQzam7yQzLNLJO6ucDXMCAwWzYZSJOsmkxBznRFv8ylFtccSclKH2fuj+wRKPjCQ=="], + + "@effect/workflow": ["@effect/workflow@0.9.6", "", { "peerDependencies": { "@effect/platform": "^0.90.10", "@effect/rpc": "^0.69.4", "effect": "^3.17.14" } }, "sha512-uPBpSJ8NYwYA6VLZovfejwNik+2kAaoDtlPi+VTlxFMscWNYx+xlGiRg8CO/oa2pHCwkJYjOI27SGOlUawiz1w=="], + + "@evolution-sdk/evolution": ["@evolution-sdk/evolution@0.3.30", "", { "dependencies": { "@effect/platform": "^0.90.10", "@effect/platform-node": "^0.96.1", "@noble/curves": "^2.0.1", "@noble/hashes": "^1.8.0", "@scure/base": "^1.2.6", "@scure/bip32": "^1.7.0", "@scure/bip39": "^1.6.0", "@types/bip39": "^3.0.4", "bip39": "^3.1.0", "effect": "^3.19.3" } }, "sha512-8DMgxNdjWCEhCu8sMKz/ikY4qfGmoW8vBPT53Dji7i5PmHYMXLuVk0Nt5mNpIovujwSbC271GIJQo2pINtQsxg=="], + + "@isaacs/ttlcache": ["@isaacs/ttlcache@1.4.1", "", {}, "sha512-RQgQ4uQ+pLbqXfOmieB91ejmLwvSgv9nLx6sT6sD83s7umBypgg+OIBOBbEUiJXrfpnp9j0mRhYYdzp9uqq3lA=="], + + "@msgpackr-extract/msgpackr-extract-darwin-arm64": ["@msgpackr-extract/msgpackr-extract-darwin-arm64@3.0.3", "", { "os": "darwin", "cpu": "arm64" }, "sha512-QZHtlVgbAdy2zAqNA9Gu1UpIuI8Xvsd1v8ic6B2pZmeFnFcMWiPLfWXh7TVw4eGEZ/C9TH281KwhVoeQUKbyjw=="], + + "@msgpackr-extract/msgpackr-extract-darwin-x64": ["@msgpackr-extract/msgpackr-extract-darwin-x64@3.0.3", "", { "os": "darwin", "cpu": "x64" }, "sha512-mdzd3AVzYKuUmiWOQ8GNhl64/IoFGol569zNRdkLReh6LRLHOXxU4U8eq0JwaD8iFHdVGqSy4IjFL4reoWCDFw=="], + + "@msgpackr-extract/msgpackr-extract-linux-arm": ["@msgpackr-extract/msgpackr-extract-linux-arm@3.0.3", "", { "os": "linux", "cpu": "arm" }, "sha512-fg0uy/dG/nZEXfYilKoRe7yALaNmHoYeIoJuJ7KJ+YyU2bvY8vPv27f7UKhGRpY6euFYqEVhxCFZgAUNQBM3nw=="], + + "@msgpackr-extract/msgpackr-extract-linux-arm64": ["@msgpackr-extract/msgpackr-extract-linux-arm64@3.0.3", "", { "os": "linux", "cpu": "arm64" }, "sha512-YxQL+ax0XqBJDZiKimS2XQaf+2wDGVa1enVRGzEvLLVFeqa5kx2bWbtcSXgsxjQB7nRqqIGFIcLteF/sHeVtQg=="], + + "@msgpackr-extract/msgpackr-extract-linux-x64": ["@msgpackr-extract/msgpackr-extract-linux-x64@3.0.3", "", { "os": "linux", "cpu": "x64" }, "sha512-cvwNfbP07pKUfq1uH+S6KJ7dT9K8WOE4ZiAcsrSes+UY55E/0jLYc+vq+DO7jlmqRb5zAggExKm0H7O/CBaesg=="], + + "@msgpackr-extract/msgpackr-extract-win32-x64": ["@msgpackr-extract/msgpackr-extract-win32-x64@3.0.3", "", { "os": "win32", "cpu": "x64" }, "sha512-x0fWaQtYp4E6sktbsdAqnehxDgEc/VwM7uLsRCYWaiGu0ykYdZPiS8zCWdnjHwyiumousxfBm4SO31eXqwEZhQ=="], + + "@noble/curves": ["@noble/curves@2.0.1", "", { "dependencies": { "@noble/hashes": "2.0.1" } }, "sha512-vs1Az2OOTBiP4q0pwjW5aF0xp9n4MxVrmkFBxc6EKZc6ddYx5gaZiAsZoq0uRRXWbi3AT/sBqn05eRPtn1JCPw=="], + + "@noble/hashes": ["@noble/hashes@1.8.0", "", {}, "sha512-jCs9ldd7NwzpgXDIf6P3+NrHh9/sD6CQdxHyjQI+h/6rDNo88ypBxxz45UDuZHz9r3tNz7N/VInSVoVdtXEI4A=="], + + "@parcel/watcher": ["@parcel/watcher@2.5.6", "", { "dependencies": { "detect-libc": "^2.0.3", "is-glob": "^4.0.3", "node-addon-api": "^7.0.0", "picomatch": "^4.0.3" }, "optionalDependencies": { "@parcel/watcher-android-arm64": "2.5.6", "@parcel/watcher-darwin-arm64": "2.5.6", "@parcel/watcher-darwin-x64": "2.5.6", "@parcel/watcher-freebsd-x64": "2.5.6", "@parcel/watcher-linux-arm-glibc": "2.5.6", "@parcel/watcher-linux-arm-musl": "2.5.6", "@parcel/watcher-linux-arm64-glibc": "2.5.6", "@parcel/watcher-linux-arm64-musl": "2.5.6", "@parcel/watcher-linux-x64-glibc": "2.5.6", "@parcel/watcher-linux-x64-musl": "2.5.6", "@parcel/watcher-win32-arm64": "2.5.6", "@parcel/watcher-win32-ia32": "2.5.6", "@parcel/watcher-win32-x64": "2.5.6" } }, "sha512-tmmZ3lQxAe/k/+rNnXQRawJ4NjxO2hqiOLTHvWchtGZULp4RyFeh6aU4XdOYBFe2KE1oShQTv4AblOs2iOrNnQ=="], + + "@parcel/watcher-android-arm64": ["@parcel/watcher-android-arm64@2.5.6", "", { "os": "android", "cpu": "arm64" }, "sha512-YQxSS34tPF/6ZG7r/Ih9xy+kP/WwediEUsqmtf0cuCV5TPPKw/PQHRhueUo6JdeFJaqV3pyjm0GdYjZotbRt/A=="], + + "@parcel/watcher-darwin-arm64": ["@parcel/watcher-darwin-arm64@2.5.6", "", { "os": "darwin", "cpu": "arm64" }, "sha512-Z2ZdrnwyXvvvdtRHLmM4knydIdU9adO3D4n/0cVipF3rRiwP+3/sfzpAwA/qKFL6i1ModaabkU7IbpeMBgiVEA=="], + + "@parcel/watcher-darwin-x64": ["@parcel/watcher-darwin-x64@2.5.6", "", { "os": "darwin", "cpu": "x64" }, "sha512-HgvOf3W9dhithcwOWX9uDZyn1lW9R+7tPZ4sug+NGrGIo4Rk1hAXLEbcH1TQSqxts0NYXXlOWqVpvS1SFS4fRg=="], + + "@parcel/watcher-freebsd-x64": ["@parcel/watcher-freebsd-x64@2.5.6", "", { "os": "freebsd", "cpu": "x64" }, "sha512-vJVi8yd/qzJxEKHkeemh7w3YAn6RJCtYlE4HPMoVnCpIXEzSrxErBW5SJBgKLbXU3WdIpkjBTeUNtyBVn8TRng=="], + + "@parcel/watcher-linux-arm-glibc": ["@parcel/watcher-linux-arm-glibc@2.5.6", "", { "os": "linux", "cpu": "arm" }, "sha512-9JiYfB6h6BgV50CCfasfLf/uvOcJskMSwcdH1PHH9rvS1IrNy8zad6IUVPVUfmXr+u+Km9IxcfMLzgdOudz9EQ=="], + + "@parcel/watcher-linux-arm-musl": ["@parcel/watcher-linux-arm-musl@2.5.6", "", { "os": "linux", "cpu": "arm" }, "sha512-Ve3gUCG57nuUUSyjBq/MAM0CzArtuIOxsBdQ+ftz6ho8n7s1i9E1Nmk/xmP323r2YL0SONs1EuwqBp2u1k5fxg=="], + + "@parcel/watcher-linux-arm64-glibc": ["@parcel/watcher-linux-arm64-glibc@2.5.6", "", { "os": "linux", "cpu": "arm64" }, "sha512-f2g/DT3NhGPdBmMWYoxixqYr3v/UXcmLOYy16Bx0TM20Tchduwr4EaCbmxh1321TABqPGDpS8D/ggOTaljijOA=="], + + "@parcel/watcher-linux-arm64-musl": ["@parcel/watcher-linux-arm64-musl@2.5.6", "", { "os": "linux", "cpu": "arm64" }, "sha512-qb6naMDGlbCwdhLj6hgoVKJl2odL34z2sqkC7Z6kzir8b5W65WYDpLB6R06KabvZdgoHI/zxke4b3zR0wAbDTA=="], + + "@parcel/watcher-linux-x64-glibc": ["@parcel/watcher-linux-x64-glibc@2.5.6", "", { "os": "linux", "cpu": "x64" }, "sha512-kbT5wvNQlx7NaGjzPFu8nVIW1rWqV780O7ZtkjuWaPUgpv2NMFpjYERVi0UYj1msZNyCzGlaCWEtzc+exjMGbQ=="], + + "@parcel/watcher-linux-x64-musl": ["@parcel/watcher-linux-x64-musl@2.5.6", "", { "os": "linux", "cpu": "x64" }, "sha512-1JRFeC+h7RdXwldHzTsmdtYR/Ku8SylLgTU/reMuqdVD7CtLwf0VR1FqeprZ0eHQkO0vqsbvFLXUmYm/uNKJBg=="], + + "@parcel/watcher-win32-arm64": ["@parcel/watcher-win32-arm64@2.5.6", "", { "os": "win32", "cpu": "arm64" }, "sha512-3ukyebjc6eGlw9yRt678DxVF7rjXatWiHvTXqphZLvo7aC5NdEgFufVwjFfY51ijYEWpXbqF5jtrK275z52D4Q=="], + + "@parcel/watcher-win32-ia32": ["@parcel/watcher-win32-ia32@2.5.6", "", { "os": "win32", "cpu": "ia32" }, "sha512-k35yLp1ZMwwee3Ez/pxBi5cf4AoBKYXj00CZ80jUz5h8prpiaQsiRPKQMxoLstNuqe2vR4RNPEAEcjEFzhEz/g=="], + + "@parcel/watcher-win32-x64": ["@parcel/watcher-win32-x64@2.5.6", "", { "os": "win32", "cpu": "x64" }, "sha512-hbQlYcCq5dlAX9Qx+kFb0FHue6vbjlf0FrNzSKdYK2APUf7tGfGxQCk2ihEREmbR6ZMc0MVAD5RIX/41gpUzTw=="], + + "@pythnetwork/pyth-lazer-sdk": ["@pythnetwork/pyth-lazer-sdk@6.2.1", "", { "dependencies": { "@isaacs/ttlcache": "^1.4.1", "buffer": "^6.0.3", "isomorphic-ws": "^5.0.0", "ts-log": "^2.2.7", "ws": "^8.19.0" } }, "sha512-+d+ATApOBF5z3YvqwP/5R42xr9vWpLOvbAFWDWldYiltlH8eU9PaGgeczgCs3it3STpnL+8jTXsUBhqv9T94Aw=="], + + "@scure/base": ["@scure/base@1.2.6", "", {}, "sha512-g/nm5FgUa//MCj1gV09zTJTaM6KBAHqLN907YVQqf7zC49+DcO4B1so4ZX07Ef10Twr6nuqYEH9GEggFXA4Fmg=="], + + "@scure/bip32": ["@scure/bip32@1.7.0", "", { "dependencies": { "@noble/curves": "~1.9.0", "@noble/hashes": "~1.8.0", "@scure/base": "~1.2.5" } }, "sha512-E4FFX/N3f4B80AKWp5dP6ow+flD1LQZo/w8UnLGYZO674jS6YnYeepycOOksv+vLPSpgN35wgKgy+ybfTb2SMw=="], + + "@scure/bip39": ["@scure/bip39@1.6.0", "", { "dependencies": { "@noble/hashes": "~1.8.0", "@scure/base": "~1.2.5" } }, "sha512-+lF0BbLiJNwVlev4eKelw1WWLaiKXw7sSl8T6FvBlWkdX+94aGJ4o8XjUdlyhTCjd8c+B3KT3JfS8P0bLRNU6A=="], + + "@standard-schema/spec": ["@standard-schema/spec@1.1.0", "", {}, "sha512-l2aFy5jALhniG5HgqrD6jXLi/rUWrKvqN/qJx6yoJsgKhblVd+iqqU4RCXavm/jPityDo5TCvKMnpjKnOriy0w=="], + + "@types/bip39": ["@types/bip39@3.0.4", "", { "dependencies": { "bip39": "*" } }, "sha512-kgmgxd14vTUMqcKu/gRi7adMchm7teKnOzdkeP0oQ5QovXpbUJISU0KUtBt84DdxCws/YuNlSCIoZqgXexe6KQ=="], + "@types/bun": ["@types/bun@1.3.11", "", { "dependencies": { "bun-types": "1.3.11" } }, "sha512-5vPne5QvtpjGpsGYXiFyycfpDF2ECyPcTSsFBMa0fraoxiQyMJ3SmuQIGhzPg2WJuWxVBoxWJ2kClYTcw/4fAg=="], "@types/node": ["@types/node@25.5.0", "", { "dependencies": { "undici-types": "~7.18.0" } }, "sha512-jp2P3tQMSxWugkCUKLRPVUpGaL5MVFwF8RDuSRztfwgN1wmqJeMSbKlnEtQqU8UrhTmzEmZdu2I6v2dpp7XIxw=="], + "base64-js": ["base64-js@1.5.1", "", {}, "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA=="], + + "bip39": ["bip39@3.1.0", "", { "dependencies": { "@noble/hashes": "^1.2.0" } }, "sha512-c9kiwdk45Do5GL0vJMe7tS95VjCii65mYAH7DfWl3uW8AVzXKQVUm64i3hzVybBDMp9r7j9iNxR85+ul8MdN/A=="], + + "buffer": ["buffer@6.0.3", "", { "dependencies": { "base64-js": "^1.3.1", "ieee754": "^1.2.1" } }, "sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA=="], + "bun-types": ["bun-types@1.3.11", "", { "dependencies": { "@types/node": "*" } }, "sha512-1KGPpoxQWl9f6wcZh57LvrPIInQMn2TQ7jsgxqpRzg+l0QPOFvJVH7HmvHo/AiPgwXy+/Thf6Ov3EdVn1vOabg=="], + "detect-libc": ["detect-libc@2.1.2", "", {}, "sha512-Btj2BOOO83o3WyH59e8MgXsxEQVcarkUOpEYrubB0urwnN10yQ364rsiByU11nZlqWYZm05i/of7io4mzihBtQ=="], + + "effect": ["effect@3.21.0", "", { "dependencies": { "@standard-schema/spec": "^1.0.0", "fast-check": "^3.23.1" } }, "sha512-PPN80qRokCd1f015IANNhrwOnLO7GrrMQfk4/lnZRE/8j7UPWrNNjPV0uBrZutI/nHzernbW+J0hdqQysHiSnQ=="], + + "fast-check": ["fast-check@3.23.2", "", { "dependencies": { "pure-rand": "^6.1.0" } }, "sha512-h5+1OzzfCC3Ef7VbtKdcv7zsstUQwUDlYpUTvjeUsJAssPgLn7QzbboPtL5ro04Mq0rPOsMzl7q5hIbRs2wD1A=="], + + "find-my-way-ts": ["find-my-way-ts@0.1.6", "", {}, "sha512-a85L9ZoXtNAey3Y6Z+eBWW658kO/MwR7zIafkIUPUMf3isZG0NCs2pjW2wtjxAKuJPxMAsHUIP4ZPGv0o5gyTA=="], + + "ieee754": ["ieee754@1.2.1", "", {}, "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA=="], + + "is-extglob": ["is-extglob@2.1.1", "", {}, "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ=="], + + "is-glob": ["is-glob@4.0.3", "", { "dependencies": { "is-extglob": "^2.1.1" } }, "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg=="], + + "isomorphic-ws": ["isomorphic-ws@5.0.0", "", { "peerDependencies": { "ws": "*" } }, "sha512-muId7Zzn9ywDsyXgTIafTry2sV3nySZeUDe6YedVd1Hvuuep5AsIlqK+XefWpYTyJG5e503F2xIuT2lcU6rCSw=="], + + "mime": ["mime@3.0.0", "", { "bin": { "mime": "cli.js" } }, "sha512-jSCU7/VB1loIWBZe14aEYHU/+1UMEHoaO7qxCOVJOw9GgH72VAWppxNcjU+x9a2k3GSIBXNKxXQFqRvvZ7vr3A=="], + + "msgpackr": ["msgpackr@1.11.9", "", { "optionalDependencies": { "msgpackr-extract": "^3.0.2" } }, "sha512-FkoAAyyA6HM8wL882EcEyFZ9s7hVADSwG9xrVx3dxxNQAtgADTrJoEWivID82Iv1zWDsv/OtbrrcZAzGzOMdNw=="], + + "msgpackr-extract": ["msgpackr-extract@3.0.3", "", { "dependencies": { "node-gyp-build-optional-packages": "5.2.2" }, "optionalDependencies": { "@msgpackr-extract/msgpackr-extract-darwin-arm64": "3.0.3", "@msgpackr-extract/msgpackr-extract-darwin-x64": "3.0.3", "@msgpackr-extract/msgpackr-extract-linux-arm": "3.0.3", "@msgpackr-extract/msgpackr-extract-linux-arm64": "3.0.3", "@msgpackr-extract/msgpackr-extract-linux-x64": "3.0.3", "@msgpackr-extract/msgpackr-extract-win32-x64": "3.0.3" }, "bin": { "download-msgpackr-prebuilds": "bin/download-prebuilds.js" } }, "sha512-P0efT1C9jIdVRefqjzOQ9Xml57zpOXnIuS+csaB4MdZbTdmGDLo8XhzBG1N7aO11gKDDkJvBLULeFTo46wwreA=="], + + "multipasta": ["multipasta@0.2.7", "", {}, "sha512-KPA58d68KgGil15oDqXjkUBEBYc00XvbPj5/X+dyzeo/lWm9Nc25pQRlf1D+gv4OpK7NM0J1odrbu9JNNGvynA=="], + + "node-addon-api": ["node-addon-api@7.1.1", "", {}, "sha512-5m3bsyrjFWE1xf7nz7YXdN4udnVtXK6/Yfgn5qnahL6bCkf2yKt4k3nuTKAtT4r3IG8JNR2ncsIMdZuAzJjHQQ=="], + + "node-gyp-build-optional-packages": ["node-gyp-build-optional-packages@5.2.2", "", { "dependencies": { "detect-libc": "^2.0.1" }, "bin": { "node-gyp-build-optional-packages": "bin.js", "node-gyp-build-optional-packages-optional": "optional.js", "node-gyp-build-optional-packages-test": "build-test.js" } }, "sha512-s+w+rBWnpTMwSFbaE0UXsRlg7hU4FjekKU4eyAih5T8nJuNZT1nNsskXpxmeqSK9UzkBl6UgRlnKc8hz8IEqOw=="], + + "picomatch": ["picomatch@4.0.3", "", {}, "sha512-5gTmgEY/sqK6gFXLIsQNH19lWb4ebPDLA4SdLP7dsWkIXHWlG66oPuVvXSGFPppYZz8ZDZq0dYYrbHfBCVUb1Q=="], + + "pure-rand": ["pure-rand@6.1.0", "", {}, "sha512-bVWawvoZoBYpp6yIoQtQXHZjmz35RSVHnUOTefl8Vcjr8snTPY1wnpSPMWekcFwbxI6gtmT7rSYPFvz71ldiOA=="], + + "ts-log": ["ts-log@2.2.7", "", {}, "sha512-320x5Ggei84AxzlXp91QkIGSw5wgaLT6GeAH0KsqDmRZdVWW2OiSeVvElVoatk3f7nicwXlElXsoFkARiGE2yg=="], + "typescript": ["typescript@5.9.3", "", { "bin": { "tsc": "bin/tsc", "tsserver": "bin/tsserver" } }, "sha512-jl1vZzPDinLr9eUt3J/t7V6FgNEw9QjvBPdysz9KfQDD41fQrC2Y4vKQdiaUpFT4bXlb1RHhLpp8wtm6M5TgSw=="], + "undici": ["undici@7.24.5", "", {}, "sha512-3IWdCpjgxp15CbJnsi/Y9TCDE7HWVN19j1hmzVhoAkY/+CJx449tVxT5wZc1Gwg8J+P0LWvzlBzxYRnHJ+1i7Q=="], + "undici-types": ["undici-types@7.18.2", "", {}, "sha512-AsuCzffGHJybSaRrmr5eHr81mwJU3kjw6M+uprWvCXiNeN9SOGwQ3Jn8jb8m3Z6izVgknn1R0FTCEAP2QrLY/w=="], + + "uuid": ["uuid@11.1.0", "", { "bin": { "uuid": "dist/esm/bin/uuid" } }, "sha512-0/A9rDy9P7cJ+8w1c9WD9V//9Wj15Ce2MPz8Ri6032usz+NfePxx5AcN3bN+r6ZL6jEo066/yNYB3tn4pQEx+A=="], + + "ws": ["ws@8.20.0", "", { "peerDependencies": { "bufferutil": "^4.0.1", "utf-8-validate": ">=5.0.2" }, "optionalPeers": ["bufferutil", "utf-8-validate"] }, "sha512-sAt8BhgNbzCtgGbt2OxmpuryO63ZoDk/sqaB/znQm94T4fCEsy/yV+7CdC1kJhOU9lboAEU7R3kquuycDoibVA=="], + + "@noble/curves/@noble/hashes": ["@noble/hashes@2.0.1", "", {}, "sha512-XlOlEbQcE9fmuXxrVTXCTlG2nlRXa9Rj3rr5Ue/+tX+nmkgbX720YHh0VR3hBF9xDvwnb8D2shVGOwNx+ulArw=="], + + "@scure/bip32/@noble/curves": ["@noble/curves@1.9.7", "", { "dependencies": { "@noble/hashes": "1.8.0" } }, "sha512-gbKGcRUYIjA3/zCCNaWDciTMFI0dCkvou3TL8Zmy5Nc7sJ47a0jtOeZoTaMxkuqRo9cRhjOdZJXegxYE5FN/xw=="], } } diff --git a/lazer/cardano/our-project/off-chain/package.json b/lazer/cardano/our-project/off-chain/package.json index 54835b44..703de86a 100644 --- a/lazer/cardano/our-project/off-chain/package.json +++ b/lazer/cardano/our-project/off-chain/package.json @@ -8,5 +8,9 @@ }, "peerDependencies": { "typescript": "^5" + }, + "dependencies": { + "@evolution-sdk/evolution": "^0.3.30", + "@pythnetwork/pyth-lazer-sdk": "^6.2.1" } } From 0106885c02245b9a63ddf011ae1a096cb4cecb40 Mon Sep 17 00:00:00 2001 From: sofia-bobbiesi Date: Sun, 22 Mar 2026 10:49:08 -0300 Subject: [PATCH 05/21] feat: integrate dotenv for environment variable management and update package dependencies --- lazer/cardano/our-project/off-chain/bun.lock | 3 ++ lazer/cardano/our-project/off-chain/index.ts | 45 ++++++++++++++++++- .../our-project/off-chain/package.json | 3 +- 3 files changed, 49 insertions(+), 2 deletions(-) diff --git a/lazer/cardano/our-project/off-chain/bun.lock b/lazer/cardano/our-project/off-chain/bun.lock index 371ec261..322923a3 100644 --- a/lazer/cardano/our-project/off-chain/bun.lock +++ b/lazer/cardano/our-project/off-chain/bun.lock @@ -7,6 +7,7 @@ "dependencies": { "@evolution-sdk/evolution": "^0.3.30", "@pythnetwork/pyth-lazer-sdk": "^6.2.1", + "dotenv": "^17.3.1", }, "devDependencies": { "@types/bun": "latest", @@ -107,6 +108,8 @@ "detect-libc": ["detect-libc@2.1.2", "", {}, "sha512-Btj2BOOO83o3WyH59e8MgXsxEQVcarkUOpEYrubB0urwnN10yQ364rsiByU11nZlqWYZm05i/of7io4mzihBtQ=="], + "dotenv": ["dotenv@17.3.1", "", {}, "sha512-IO8C/dzEb6O3F9/twg6ZLXz164a2fhTnEWb95H23Dm4OuN+92NmEAlTrupP9VW6Jm3sO26tQlqyvyi4CsnY9GA=="], + "effect": ["effect@3.21.0", "", { "dependencies": { "@standard-schema/spec": "^1.0.0", "fast-check": "^3.23.1" } }, "sha512-PPN80qRokCd1f015IANNhrwOnLO7GrrMQfk4/lnZRE/8j7UPWrNNjPV0uBrZutI/nHzernbW+J0hdqQysHiSnQ=="], "fast-check": ["fast-check@3.23.2", "", { "dependencies": { "pure-rand": "^6.1.0" } }, "sha512-h5+1OzzfCC3Ef7VbtKdcv7zsstUQwUDlYpUTvjeUsJAssPgLn7QzbboPtL5ro04Mq0rPOsMzl7q5hIbRs2wD1A=="], diff --git a/lazer/cardano/our-project/off-chain/index.ts b/lazer/cardano/our-project/off-chain/index.ts index 2a5e4b80..22ca7ab7 100644 --- a/lazer/cardano/our-project/off-chain/index.ts +++ b/lazer/cardano/our-project/off-chain/index.ts @@ -1 +1,44 @@ -console.log("Hello via Bun!"); +import { PythLazerClient } from "@pythnetwork/pyth-lazer-sdk"; +import dotenv from "dotenv"; + +dotenv.config(); + +const lazerToken = process.env.LAZER_TOKEN; + +if (!lazerToken) { + throw new Error("LAZER_TOKEN is not set in environment"); +} + +const lazer = await PythLazerClient.create({ + token: lazerToken, + logger: console, // Optionally log operations (to the console in this case.) + webSocketPoolConfig: { + numConnections: 1, // Optionally specify number of parallel redundant connections to reduce the chance of dropped messages. The connections will round-robin across the provided URLs. Default is 4. + onError: (error) => { + console.error("⛔️ WebSocket error:", error.message); + }, + // Optional configuration for resilient WebSocket connections + rwsConfig: { + heartbeatTimeoutDurationMs: 5000, // Optional heartbeat timeout duration in milliseconds + maxRetryDelayMs: 1000, // Optional maximum retry delay in milliseconds + logAfterRetryCount: 10, // Optional log after how many retries + }, + }, +}); + +const latestPrice = await lazer.getLatestPrice({ + channel: "fixed_rate@200ms", + formats: ["solana"], + jsonBinaryEncoding: "hex", + priceFeedIds: [16], + properties: ["price", "exponent"], +}); + +if (!latestPrice.solana?.data) { + throw new Error("Missing update payload"); +} + +console.log("Latest price update:", latestPrice.solana.data); + +const update = Buffer.from(latestPrice.solana.data, "hex"); +console.log("Decoded update:", update); diff --git a/lazer/cardano/our-project/off-chain/package.json b/lazer/cardano/our-project/off-chain/package.json index 703de86a..76f140f6 100644 --- a/lazer/cardano/our-project/off-chain/package.json +++ b/lazer/cardano/our-project/off-chain/package.json @@ -11,6 +11,7 @@ }, "dependencies": { "@evolution-sdk/evolution": "^0.3.30", - "@pythnetwork/pyth-lazer-sdk": "^6.2.1" + "@pythnetwork/pyth-lazer-sdk": "^6.2.1", + "dotenv": "^17.3.1" } } From 80c542c1ed828f255f1d6aeb678301c72b124c36 Mon Sep 17 00:00:00 2001 From: sofia-bobbiesi Date: Sun, 22 Mar 2026 12:35:26 -0300 Subject: [PATCH 06/21] implement on-chain validator logic Co-authored-by: lola --- lazer/cardano/our-project/on-chain/aiken.lock | 27 +++++ .../cardano/our-project/on-chain/lib/types.ak | 20 ++++ .../our-project/on-chain/validators/osi.ak | 107 ++++++++++++++++++ .../on-chain/validators/placeholder.ak | 41 ------- 4 files changed, 154 insertions(+), 41 deletions(-) create mode 100644 lazer/cardano/our-project/on-chain/aiken.lock create mode 100644 lazer/cardano/our-project/on-chain/lib/types.ak create mode 100644 lazer/cardano/our-project/on-chain/validators/osi.ak delete mode 100644 lazer/cardano/our-project/on-chain/validators/placeholder.ak diff --git a/lazer/cardano/our-project/on-chain/aiken.lock b/lazer/cardano/our-project/on-chain/aiken.lock new file mode 100644 index 00000000..fddd4f7f --- /dev/null +++ b/lazer/cardano/our-project/on-chain/aiken.lock @@ -0,0 +1,27 @@ +# This file was generated by Aiken +# You typically do not need to edit this file + +[[requirements]] +name = "aiken-lang/stdlib" +version = "v3.0.0" +source = "github" + +[[requirements]] +name = "pyth-network/pyth-lazer-cardano" +version = "main" +source = "github" + +[[packages]] +name = "aiken-lang/stdlib" +version = "v3.0.0" +requirements = [] +source = "github" + +[[packages]] +name = "pyth-network/pyth-lazer-cardano" +version = "main" +requirements = [] +source = "github" + +[etags] +"pyth-network/pyth-lazer-cardano@main" = [{ secs_since_epoch = 1774193504, nanos_since_epoch = 607975386 }, "a46dacd97a22eb07feeaf966d48c3116c8249ddc836705656e3135cea285bcfc"] diff --git a/lazer/cardano/our-project/on-chain/lib/types.ak b/lazer/cardano/our-project/on-chain/lib/types.ak new file mode 100644 index 00000000..37d13c8f --- /dev/null +++ b/lazer/cardano/our-project/on-chain/lib/types.ak @@ -0,0 +1,20 @@ +use aiken/crypto.{Signature} +use cardano/address.{PaymentCredential} +use cardano/assets.{AssetName, PolicyId} +use pyth.{PriceUpdate} + +pub type AssetClass { + policy_id: PolicyId, + asset_name: AssetName, +} + +pub type OsiDatum { + timestamp: Int, + payees: Pairs, + quote_token: AssetClass, +} + +pub type OsiRedeemers { + Fund + Payout { signature: Signature, feeds: PriceUpdate } +} diff --git a/lazer/cardano/our-project/on-chain/validators/osi.ak b/lazer/cardano/our-project/on-chain/validators/osi.ak new file mode 100644 index 00000000..0f9978ad --- /dev/null +++ b/lazer/cardano/our-project/on-chain/validators/osi.ak @@ -0,0 +1,107 @@ +use aiken/collection/list +use aiken/collection/pairs +use aiken/option +use cardano/address.{PaymentCredential, Script} +use cardano/assets.{AssetName, PolicyId} +use cardano/transaction.{ + Output, OutputReference, Transaction, find_script_outputs, +} +use pyth.{PriceUpdate} +use types.{Fund, OsiDatum, OsiRedeemers, Payout} + +fn pow10(n: Int) -> Int { + if n <= 0 { + 1 + } else { + 10 * pow10(n - 1) + } +} + +fn expected_quote_amount( + base_amount: Int, + price: Int, + exponent: Int, + base_currency: Int, +) -> Int { + if exponent >= 0 { + base_amount * price * pow10(exponent) / base_currency + } else { + base_amount * price / ( base_currency * pow10(0 - exponent) ) + } +} + +fn expected_for_credential( + payees: Pairs, + payee_cred: PaymentCredential, + price: Int, + exponent: Int, + base_currency: Int, +) -> Option { + pairs.get_first(payees, payee_cred) + |> option.map( + fn(base_amount) { + expected_quote_amount(base_amount, price, exponent, base_currency) + }, + ) +} + +/// Oracle-settled Invoice +validator oracleSettled(base_currency: Int) { + spend( + datum: Option, + redeemer: OsiRedeemers, + utxo: OutputReference, + tx: Transaction, + ) { + let Transaction { inputs, outputs, .. } = tx + + when redeemer is { + Fund -> { + let in = inputs |> transaction.resolve_input(utxo) + expect Script(script_hash) = in.address.payment_credential + expect [out] = find_script_outputs(outputs, script_hash) + assets.match(in.value, out.value, <=) + } + + Payout { signature: _, feeds } -> { + expect Some(datum) = datum + let OsiDatum { timestamp, payees, quote_token } = datum + + // REVIEW + expect Some(feed) = list.head(feeds.feeds) + expect Some(Some(price)) = feed.price + expect Some(exponent) = feed.exponent + + list.all( + outputs, + fn(out) { + let actual = + assets.quantity_of( + out.value, + quote_token.policy_id, + quote_token.asset_name, + ) + + let payee_cred = out.address.payment_credential + when + expected_for_credential( + payees, + payee_cred, + price, + exponent, + base_currency, + ) + is { + Some(expected) -> actual == expected + None -> False + } + }, + ) + } + } + } + + else(_) { + fail + } +} diff --git a/lazer/cardano/our-project/on-chain/validators/placeholder.ak b/lazer/cardano/our-project/on-chain/validators/placeholder.ak deleted file mode 100644 index bbf9d47d..00000000 --- a/lazer/cardano/our-project/on-chain/validators/placeholder.ak +++ /dev/null @@ -1,41 +0,0 @@ -use cardano/address.{Credential} -use cardano/assets.{PolicyId} -use cardano/certificate.{Certificate} -use cardano/governance.{ProposalProcedure, Voter} -use cardano/transaction.{Transaction, OutputReference} - -validator placeholder { - mint(_redeemer: Data, _policy_id: PolicyId, _self: Transaction) { - todo @"mint logic goes here" - } - - spend(_datum: Option, _redeemer: Data, _utxo: OutputReference, _self: Transaction) { - todo @"spend logic goes here" - } - - withdraw(_redeemer: Data, _account: Credential, _self: Transaction) { - todo @"withdraw logic goes here" - } - - publish(_redeemer: Data, _certificate: Certificate, _self: Transaction) { - todo @"publish logic goes here" - } - - vote(_redeemer: Data, _voter: Voter, _self: Transaction) { - todo @"vote logic goes here" - } - - propose(_redeemer: Data, _proposal: ProposalProcedure, _self: Transaction) { - todo @"propose logic goes here" - } - - // // If needs be, remove any of unneeded handlers above, and use: - // - // else(_ctx: ScriptContext) { - // todo @"fallback logic if none of the other purposes match" - // } - // - // // You will also need an additional import: - // // - // // use cardano/script_context.{ScriptContext} -} From 720332f4243dd7ee5e867629b25352d4d813b38e Mon Sep 17 00:00:00 2001 From: sofia-bobbiesi Date: Sun, 22 Mar 2026 12:53:52 -0300 Subject: [PATCH 07/21] update oracleSettled --- .../cardano/our-project/on-chain/lib/types.ak | 2 +- .../our-project/on-chain/validators/osi.ak | 77 ++++++++----------- 2 files changed, 34 insertions(+), 45 deletions(-) diff --git a/lazer/cardano/our-project/on-chain/lib/types.ak b/lazer/cardano/our-project/on-chain/lib/types.ak index 37d13c8f..0e56f98a 100644 --- a/lazer/cardano/our-project/on-chain/lib/types.ak +++ b/lazer/cardano/our-project/on-chain/lib/types.ak @@ -16,5 +16,5 @@ pub type OsiDatum { pub type OsiRedeemers { Fund - Payout { signature: Signature, feeds: PriceUpdate } + Payout } diff --git a/lazer/cardano/our-project/on-chain/validators/osi.ak b/lazer/cardano/our-project/on-chain/validators/osi.ak index 0f9978ad..92b1472d 100644 --- a/lazer/cardano/our-project/on-chain/validators/osi.ak +++ b/lazer/cardano/our-project/on-chain/validators/osi.ak @@ -6,28 +6,16 @@ use cardano/assets.{AssetName, PolicyId} use cardano/transaction.{ Output, OutputReference, Transaction, find_script_outputs, } -use pyth.{PriceUpdate} +use pyth.{PriceUpdate, get_updates} use types.{Fund, OsiDatum, OsiRedeemers, Payout} -fn pow10(n: Int) -> Int { - if n <= 0 { - 1 - } else { - 10 * pow10(n - 1) - } -} - fn expected_quote_amount( base_amount: Int, price: Int, exponent: Int, base_currency: Int, ) -> Int { - if exponent >= 0 { - base_amount * price * pow10(exponent) / base_currency - } else { - base_amount * price / ( base_currency * pow10(0 - exponent) ) - } + todo } fn expected_for_credential( @@ -46,7 +34,7 @@ fn expected_for_credential( } /// Oracle-settled Invoice -validator oracleSettled(base_currency: Int) { +validator oracleSettled(base_currency: Int, pyth_policy: PolicyId) { spend( datum: Option, redeemer: OsiRedeemers, @@ -63,40 +51,41 @@ validator oracleSettled(base_currency: Int) { assets.match(in.value, out.value, <=) } - Payout { signature: _, feeds } -> { + Payout -> { expect Some(datum) = datum let OsiDatum { timestamp, payees, quote_token } = datum - // REVIEW - expect Some(feed) = list.head(feeds.feeds) - expect Some(Some(price)) = feed.price - expect Some(exponent) = feed.exponent + expect [feed1, feed2] = get_updates(pyth_policy, tx) - list.all( - outputs, - fn(out) { - let actual = - assets.quantity_of( - out.value, - quote_token.policy_id, - quote_token.asset_name, - ) + trace feed1 + trace feed2 - let payee_cred = out.address.payment_credential - when - expected_for_credential( - payees, - payee_cred, - price, - exponent, - base_currency, - ) - is { - Some(expected) -> actual == expected - None -> False - } - }, - ) + // REVIEW + // list.all( + // outputs, + // fn(out) { + // let actual = + // assets.quantity_of( + // out.value, + // quote_token.policy_id, + // quote_token.asset_name, + // ) + // let payee_cred = out.address.payment_credential + // when + // expected_for_credential( + // payees, + // payee_cred, + // price, + // exponent, + // base_currency, + // ) + // is { + // Some(expected) -> actual == expected + // None -> False + // } + // }, + // ) + False } } } From 9fe9a8c1715371ff673318f45751b0e0c85c8a28 Mon Sep 17 00:00:00 2001 From: a-osiecki Date: Sun, 22 Mar 2026 14:43:15 -0300 Subject: [PATCH 08/21] fix cbor encoding --- lazer/cardano/our-project/off-chain/README.md | 21 +- lazer/cardano/our-project/off-chain/e2e.ts | 463 ++++++++++++++++++ lazer/cardano/our-project/off-chain/index.ts | 44 -- .../our-project/off-chain/package-lock.json | 59 --- .../our-project/off-chain/package.json | 7 +- .../scripts/create-validator-utxo.ts | 34 ++ .../off-chain/scripts/spend-validator-utxo.ts | 108 ++++ lazer/cardano/our-project/on-chain/README.md | 65 --- lazer/cardano/our-project/on-chain/aiken.lock | 2 +- .../cardano/our-project/on-chain/plutus.json | 215 ++++++++ .../on-chain/validators/osi_accept_pyth.ak | 15 + 11 files changed, 860 insertions(+), 173 deletions(-) create mode 100644 lazer/cardano/our-project/off-chain/e2e.ts delete mode 100644 lazer/cardano/our-project/off-chain/index.ts delete mode 100644 lazer/cardano/our-project/off-chain/package-lock.json create mode 100644 lazer/cardano/our-project/off-chain/scripts/create-validator-utxo.ts create mode 100644 lazer/cardano/our-project/off-chain/scripts/spend-validator-utxo.ts delete mode 100644 lazer/cardano/our-project/on-chain/README.md create mode 100644 lazer/cardano/our-project/on-chain/plutus.json create mode 100644 lazer/cardano/our-project/on-chain/validators/osi_accept_pyth.ak diff --git a/lazer/cardano/our-project/off-chain/README.md b/lazer/cardano/our-project/off-chain/README.md index 5525c80c..9aad5369 100644 --- a/lazer/cardano/our-project/off-chain/README.md +++ b/lazer/cardano/our-project/off-chain/README.md @@ -6,10 +6,25 @@ To install dependencies: bun install ``` -To run: +Minimal e2e commands: ```bash -bun run index.ts +bun run create-validator-utxo +bun run spend-validator-utxo ``` -This project was created using `bun init` in bun v1.3.11. [Bun](https://bun.com) is a fast all-in-one JavaScript runtime. +You can also pass an explicit out-ref as `#`. + +Required environment variables: + +- `NETWORK` = `preprod`, `preview`, or `mainnet` +- `WALLET_MNEMONIC` +- `PYTH_POLICY_ID` +- `LAZER_TOKEN` +- `FEED_ID` (defaults to `16`) +- `VALIDATOR_LOVELACE` (defaults to `5000000`) +- provider config: + - `PROVIDER_TYPE=blockfrost` with `BLOCKFROST_BASE_URL` and `BLOCKFROST_PROJECT_ID` + - or `PROVIDER_TYPE=kupmios` with `KUPO_URL` and `OGMIOS_URL` + - or `PROVIDER_TYPE=maestro` with `MAESTRO_BASE_URL` and `MAESTRO_API_KEY` + - or `PROVIDER_TYPE=koios` with `KOIOS_BASE_URL` and optional `KOIOS_TOKEN` diff --git a/lazer/cardano/our-project/off-chain/e2e.ts b/lazer/cardano/our-project/off-chain/e2e.ts new file mode 100644 index 00000000..0ee5804b --- /dev/null +++ b/lazer/cardano/our-project/off-chain/e2e.ts @@ -0,0 +1,463 @@ +import { Buffer } from "node:buffer"; +import { readFile } from "node:fs/promises"; +import { dirname, join } from "node:path"; +import { fileURLToPath } from "node:url"; + +import dotenv from "dotenv"; +import { + Address, + Assets, + Cardano, + Data, + ScriptHash, + TransactionHash, + UPLC, + UTxO, + createClient, + type ProviderConfig, + type ProviderOnlyClient, + type SigningClient, +} from "@evolution-sdk/evolution"; +import { + PythLazerClient, + type JsonUpdate, + type PriceFeedProperty, +} from "@pythnetwork/pyth-lazer-sdk"; + +dotenv.config(); + +const OFF_CHAIN_DIR = dirname(fileURLToPath(import.meta.url)); +const PLUTUS_JSON_PATH = join(OFF_CHAIN_DIR, "../on-chain/plutus.json"); +const VALIDATOR_TITLE = "osi_accept_pyth.osi_accept_pyth.spend"; + +const DEFAULT_LAZER_PROPERTIES = [ + "price", + "exponent", + "confidence", + "feedUpdateTimestamp", +] as const satisfies readonly PriceFeedProperty[]; + +const DEFAULT_LAZER_WS_URLS = [ + "wss://pyth-lazer-0.dourolabs.app/v1/stream", + "wss://pyth-lazer-1.dourolabs.app/v1/stream", + "wss://pyth-lazer-2.dourolabs.app/v1/stream", +] as const; + +type NetworkName = "mainnet" | "preprod" | "preview"; + +type BlueprintValidator = { + title: string; + compiledCode: string; + hash?: string; + parameters?: unknown[]; +}; + +type Blueprint = { + validators: BlueprintValidator[]; +}; + +export type OsiRuntime = { + client: SigningClient; + providerClient: ProviderOnlyClient; + network: NetworkName; + feedId: number; + pythPolicyId: string; + fundingLovelace: bigint; + validator: { + script: Cardano.PlutusV3.PlutusV3; + scriptHash: ScriptHash.ScriptHash; + address: Address.Address; + }; +}; + +export type PythSignedUpdate = { + signedUpdate: Buffer; + signedUpdateHex: string; + parsed: JsonUpdate["parsed"]; +}; + +export async function loadRuntimeFromEnv(): Promise { + const network = readNetwork(); + const pythPolicyId = readRequiredEnv("PYTH_POLICY_ID"); + const feedId = readIntEnv("FEED_ID", 16); + const fundingLovelace = readBigIntEnv("VALIDATOR_LOVELACE", 5_000_000n); + const providerConfig = readProviderConfig(); + const client = createSigningClientFromEnv(network, providerConfig); + const providerClient = createProviderOnlyClient(network, providerConfig); + const validator = await loadParameterizedValidator({ + network, + pythPolicyId, + }); + + return { + client, + providerClient, + network, + feedId, + pythPolicyId, + fundingLovelace, + validator, + }; +} + +export async function loadFirstValidatorUtxo( + client: SigningClient, + address: Address.Address, +): Promise { + const utxos = await client.getUtxos(address); + const [utxo] = utxos; + + if (!utxo) { + throw new Error( + `No UTxOs found at validator address ${Address.toBech32(address)}`, + ); + } + + return utxo; +} + +export async function loadValidatorUtxoByTxHash( + client: SigningClient, + address: Address.Address, + transactionIdHex: string, + index?: bigint, +): Promise { + const utxos = await client.getUtxos(address); + const matches = utxos.filter((utxo) => { + if (TransactionHash.toHex(utxo.transactionId) !== transactionIdHex) { + return false; + } + + return index === undefined || utxo.index === index; + }); + + const [utxo] = matches; + + if (!utxo) { + const target = + index === undefined + ? transactionIdHex + : `${transactionIdHex}#${index.toString()}`; + + throw new Error( + `No validator UTxO found at ${Address.toBech32(address)} for ${target}`, + ); + } + + return utxo; +} + +export function parseCliOutRef(argument: string | undefined): { + transactionIdHex: string; + index?: bigint; +} | null { + if (!argument) { + return null; + } + + const [transactionIdHex, indexRaw] = argument.split("#"); + + if (!transactionIdHex || !/^[0-9a-fA-F]{64}$/.test(transactionIdHex)) { + throw new Error( + "Expected first CLI argument to be a 64-hex transaction hash or #", + ); + } + + if (indexRaw === undefined) { + return { + transactionIdHex: transactionIdHex.toLowerCase(), + }; + } + + if (!/^\d+$/.test(indexRaw)) { + throw new Error("UTxO index must be a non-negative integer"); + } + + return { + transactionIdHex: transactionIdHex.toLowerCase(), + index: BigInt(indexRaw), + }; +} + +export async function fetchLatestSignedUpdate( + token: string, + feedId: number, +): Promise { + const client = await PythLazerClient.create({ + token, + webSocketPoolConfig: { + numConnections: DEFAULT_LAZER_WS_URLS.length, + urls: [...DEFAULT_LAZER_WS_URLS], + }, + }); + + try { + const latest = await client.getLatestPrice({ + channel: "fixed_rate@200ms", + priceFeedIds: [feedId], + properties: [...DEFAULT_LAZER_PROPERTIES], + formats: ["solana"], + jsonBinaryEncoding: "hex", + parsed: true, + }); + + const signedUpdateHex = latest.solana?.data; + + if (!signedUpdateHex) { + throw new Error("Pyth response did not include a signed solana update"); + } + + return { + signedUpdate: Buffer.from(signedUpdateHex, "hex"), + signedUpdateHex, + parsed: latest.parsed, + }; + } finally { + client.shutdown(); + } +} + +export function makeFeedRedeemer(feedId: number): Data.Data { + return Data.int(BigInt(feedId)); +} + +export function makeWithdrawRedeemer(update: Buffer): Data.Data { + return Data.list([update]); +} + +export function formatTxHash(txHash: TransactionHash.TransactionHash): string { + return TransactionHash.toHex(txHash); +} + +export function logDetailedError(error: unknown): void { + console.error("Detailed error:"); + console.dir(normalizeError(error), { depth: null, colors: true }); + + if (error instanceof Error && error.stack) { + console.error("\nStack:"); + console.error(error.stack); + } +} + +export function readLazerToken(): string { + return readRequiredEnv("LAZER_TOKEN"); +} + +export function readWalletMnemonic(): string { + return readRequiredEnv("WALLET_MNEMONIC"); +} + +export function makeLovelace(amount: bigint): Assets.Assets { + return Assets.fromLovelace(amount); +} + +async function loadParameterizedValidator({ + network, + pythPolicyId, +}: { + network: NetworkName; + pythPolicyId: string; +}) { + const blueprintRaw = await readFile(PLUTUS_JSON_PATH, "utf8"); + const blueprint = JSON.parse(blueprintRaw) as Blueprint; + const validator = blueprint.validators.find( + (candidate) => candidate.title === VALIDATOR_TITLE, + ); + + if (!validator) { + throw new Error(`Validator ${VALIDATOR_TITLE} not found in plutus.json`); + } + + const scriptBytesHex = + Array.isArray(validator.parameters) && validator.parameters.length > 0 + ? UPLC.applyParamsToScript(validator.compiledCode, [ + Buffer.from(pythPolicyId, "hex"), + ]) + : validator.compiledCode; + + const script = new Cardano.PlutusV3.PlutusV3({ + bytes: Buffer.from(scriptBytesHex, "hex"), + }); + const scriptHash = ScriptHash.fromScript(script); + const scriptHashHex = ScriptHash.toHex(scriptHash); + + if ( + (!Array.isArray(validator.parameters) || validator.parameters.length === 0) && + validator.hash && + validator.hash !== scriptHashHex + ) { + throw new Error( + `Loaded validator hash ${scriptHashHex} does not match blueprint hash ${validator.hash}`, + ); + } + + const address = new Address.Address({ + networkId: networkToAddressNetworkId(network), + paymentCredential: scriptHash, + }); + + return { + script, + scriptHash, + address, + }; +} + +function createSigningClientFromEnv( + network: NetworkName, + provider: ProviderConfig, +): SigningClient { + return createClient({ + network, + provider, + wallet: { + type: "seed", + mnemonic: readWalletMnemonic(), + }, + }); +} + +function createProviderOnlyClient( + network: NetworkName, + provider: ProviderConfig, +): ProviderOnlyClient { + return createClient({ + network, + provider, + }); +} + +function readProviderConfig(): ProviderConfig { + const providerType = (process.env.PROVIDER_TYPE?.trim() || "blockfrost") as + | "blockfrost" + | "kupmios" + | "maestro" + | "koios"; + + switch (providerType) { + case "blockfrost": + return { + type: "blockfrost", + baseUrl: readRequiredEnv("BLOCKFROST_BASE_URL"), + projectId: readRequiredEnv("BLOCKFROST_PROJECT_ID"), + }; + case "kupmios": + return { + type: "kupmios", + kupoUrl: readRequiredEnv("KUPO_URL"), + ogmiosUrl: readRequiredEnv("OGMIOS_URL"), + }; + case "maestro": + return { + type: "maestro", + baseUrl: readRequiredEnv("MAESTRO_BASE_URL"), + apiKey: readRequiredEnv("MAESTRO_API_KEY"), + }; + case "koios": + return { + type: "koios", + baseUrl: readRequiredEnv("KOIOS_BASE_URL"), + token: optionalEnv("KOIOS_TOKEN"), + }; + default: + throw new Error( + `Unsupported PROVIDER_TYPE: ${providerType satisfies never}`, + ); + } +} + +function readNetwork(): NetworkName { + const network = (process.env.NETWORK?.trim() || "preprod") as NetworkName; + + if (network !== "mainnet" && network !== "preprod" && network !== "preview") { + throw new Error(`Unsupported NETWORK: ${network}`); + } + + return network; +} + +function networkToAddressNetworkId(network: NetworkName): number { + return network === "mainnet" ? 1 : 0; +} + +function readRequiredEnv(name: string): string { + const value = process.env[name]?.trim(); + + if (!value) { + throw new Error(`${name} is not set in environment`); + } + + return value; +} + +function optionalEnv(name: string): string | undefined { + const value = process.env[name]?.trim(); + return value === undefined || value === "" ? undefined : value; +} + +function readIntEnv(name: string, fallback: number): number { + const raw = process.env[name]?.trim(); + + if (!raw) { + return fallback; + } + + const value = Number(raw); + + if (!Number.isInteger(value) || value < 0) { + throw new Error(`${name} must be a non-negative integer`); + } + + return value; +} + +function readBigIntEnv(name: string, fallback: bigint): bigint { + const raw = process.env[name]?.trim(); + return raw ? BigInt(raw) : fallback; +} + +function normalizeError(error: unknown): unknown { + if (error instanceof Error) { + const errorRecord = error as unknown as Record; + + return { + name: error.name, + message: error.message, + ...errorRecord, + cause: normalizeNestedValue( + (error as unknown as { cause?: unknown }).cause, + ), + }; + } + + return normalizeNestedValue(error); +} + +function normalizeNestedValue(value: unknown): unknown { + if (value === null || value === undefined) { + return value; + } + + if (Array.isArray(value)) { + return value.map(normalizeNestedValue); + } + + if (typeof value === "bigint") { + return value.toString(); + } + + if (value instanceof Uint8Array) { + return Buffer.from(value).toString("hex"); + } + + if (typeof value === "object") { + return Object.fromEntries( + Object.entries(value as Record).map(([key, nested]) => [ + key, + normalizeNestedValue(nested), + ]), + ); + } + + return value; +} diff --git a/lazer/cardano/our-project/off-chain/index.ts b/lazer/cardano/our-project/off-chain/index.ts deleted file mode 100644 index 22ca7ab7..00000000 --- a/lazer/cardano/our-project/off-chain/index.ts +++ /dev/null @@ -1,44 +0,0 @@ -import { PythLazerClient } from "@pythnetwork/pyth-lazer-sdk"; -import dotenv from "dotenv"; - -dotenv.config(); - -const lazerToken = process.env.LAZER_TOKEN; - -if (!lazerToken) { - throw new Error("LAZER_TOKEN is not set in environment"); -} - -const lazer = await PythLazerClient.create({ - token: lazerToken, - logger: console, // Optionally log operations (to the console in this case.) - webSocketPoolConfig: { - numConnections: 1, // Optionally specify number of parallel redundant connections to reduce the chance of dropped messages. The connections will round-robin across the provided URLs. Default is 4. - onError: (error) => { - console.error("⛔️ WebSocket error:", error.message); - }, - // Optional configuration for resilient WebSocket connections - rwsConfig: { - heartbeatTimeoutDurationMs: 5000, // Optional heartbeat timeout duration in milliseconds - maxRetryDelayMs: 1000, // Optional maximum retry delay in milliseconds - logAfterRetryCount: 10, // Optional log after how many retries - }, - }, -}); - -const latestPrice = await lazer.getLatestPrice({ - channel: "fixed_rate@200ms", - formats: ["solana"], - jsonBinaryEncoding: "hex", - priceFeedIds: [16], - properties: ["price", "exponent"], -}); - -if (!latestPrice.solana?.data) { - throw new Error("Missing update payload"); -} - -console.log("Latest price update:", latestPrice.solana.data); - -const update = Buffer.from(latestPrice.solana.data, "hex"); -console.log("Decoded update:", update); diff --git a/lazer/cardano/our-project/off-chain/package-lock.json b/lazer/cardano/our-project/off-chain/package-lock.json deleted file mode 100644 index 9c9637aa..00000000 --- a/lazer/cardano/our-project/off-chain/package-lock.json +++ /dev/null @@ -1,59 +0,0 @@ -{ - "name": "off-chain", - "lockfileVersion": 3, - "requires": true, - "packages": { - "": { - "name": "off-chain", - "devDependencies": { - "@types/bun": "latest" - }, - "peerDependencies": { - "typescript": "^5" - } - }, - "node_modules/@types/bun": { - "version": "1.3.11", - "resolved": "https://registry.npmjs.org/@types/bun/-/bun-1.3.11.tgz", - "integrity": "sha512-5vPne5QvtpjGpsGYXiFyycfpDF2ECyPcTSsFBMa0fraoxiQyMJ3SmuQIGhzPg2WJuWxVBoxWJ2kClYTcw/4fAg==", - "dev": true, - "license": "MIT", - "dependencies": { - "bun-types": "1.3.11" - } - }, - "node_modules/@types/node": { - "version": "25.5.0", - "dev": true, - "license": "MIT", - "dependencies": { - "undici-types": "~7.18.0" - } - }, - "node_modules/bun-types": { - "version": "1.3.11", - "dev": true, - "license": "MIT", - "dependencies": { - "@types/node": "*" - } - }, - "node_modules/typescript": { - "version": "5.9.3", - "license": "Apache-2.0", - "peer": true, - "bin": { - "tsc": "bin/tsc", - "tsserver": "bin/tsserver" - }, - "engines": { - "node": ">=14.17" - } - }, - "node_modules/undici-types": { - "version": "7.18.2", - "dev": true, - "license": "MIT" - } - } -} diff --git a/lazer/cardano/our-project/off-chain/package.json b/lazer/cardano/our-project/off-chain/package.json index 76f140f6..73ed5cd5 100644 --- a/lazer/cardano/our-project/off-chain/package.json +++ b/lazer/cardano/our-project/off-chain/package.json @@ -1,8 +1,12 @@ { "name": "off-chain", - "module": "index.ts", "type": "module", "private": true, + "scripts": { + "create-validator-utxo": "bun run scripts/create-validator-utxo.ts", + "spend-validator-utxo": "bun run scripts/spend-validator-utxo.ts", + "typecheck": "bun x tsc --noEmit" + }, "devDependencies": { "@types/bun": "latest" }, @@ -11,6 +15,7 @@ }, "dependencies": { "@evolution-sdk/evolution": "^0.3.30", + "@pythnetwork/pyth-lazer-cardano-js": "^0.1.0", "@pythnetwork/pyth-lazer-sdk": "^6.2.1", "dotenv": "^17.3.1" } diff --git a/lazer/cardano/our-project/off-chain/scripts/create-validator-utxo.ts b/lazer/cardano/our-project/off-chain/scripts/create-validator-utxo.ts new file mode 100644 index 00000000..a994a95e --- /dev/null +++ b/lazer/cardano/our-project/off-chain/scripts/create-validator-utxo.ts @@ -0,0 +1,34 @@ +import { + Address, + Data, + InlineDatum, +} from "@evolution-sdk/evolution"; + +import { + formatTxHash, + loadRuntimeFromEnv, + makeLovelace, +} from "../e2e.ts"; + +const runtime = await loadRuntimeFromEnv(); +const walletAddress = await runtime.client.address(); +const validatorAddressBech32 = Address.toBech32(runtime.validator.address); + +const txHash = await runtime.client + .newTx() + .payToAddress({ + address: runtime.validator.address, + assets: makeLovelace(runtime.fundingLovelace), + datum: new InlineDatum.InlineDatum({ + data: Data.constr(0n, []), + }), + }) + .build() + .then((built) => built.sign()) + .then((signed) => signed.submit()); + +console.log(`Wallet address: ${Address.toBech32(walletAddress)}`); +console.log(`Validator address: ${validatorAddressBech32}`); +console.log(`Funded lovelace: ${runtime.fundingLovelace.toString()}`); +console.log(`Create tx hash: ${formatTxHash(txHash)}`); +console.log(`Verify with: bun run spend-validator-utxo ${formatTxHash(txHash)}`); diff --git a/lazer/cardano/our-project/off-chain/scripts/spend-validator-utxo.ts b/lazer/cardano/our-project/off-chain/scripts/spend-validator-utxo.ts new file mode 100644 index 00000000..c19c82f1 --- /dev/null +++ b/lazer/cardano/our-project/off-chain/scripts/spend-validator-utxo.ts @@ -0,0 +1,108 @@ +import { + Address, + ScriptHash, + Transaction, + UTxO, +} from "@evolution-sdk/evolution"; +import { getPythScriptHash, getPythState } from "@pythnetwork/pyth-lazer-cardano-js"; + +import { + fetchLatestSignedUpdate, + formatTxHash, + loadFirstValidatorUtxo, + loadValidatorUtxoByTxHash, + logDetailedError, + loadRuntimeFromEnv, + makeFeedRedeemer, + makeWithdrawRedeemer, + parseCliOutRef, + readLazerToken, +} from "../e2e.ts"; + +const runtime = await loadRuntimeFromEnv(); +const lazerToken = readLazerToken(); +const targetOutRef = parseCliOutRef(process.argv[2]); +const validatorUtxo = targetOutRef + ? await loadValidatorUtxoByTxHash( + runtime.client, + runtime.validator.address, + targetOutRef.transactionIdHex, + targetOutRef.index, + ) + : await loadFirstValidatorUtxo( + runtime.client, + runtime.validator.address, + ); + +const pythState = await getPythState( + runtime.pythPolicyId, + runtime.providerClient, +); +const pythWithdrawScriptHash = getPythScriptHash(pythState); +const pythUpdate = await fetchLatestSignedUpdate(lazerToken, runtime.feedId); + +const now = BigInt(Date.now()); +const loggingEvaluator = { + evaluate: ( + tx: Transaction.Transaction, + additionalUtxos: ReadonlyArray | undefined, + ) => { + console.log("Evaluation tx cbor hex:"); + console.log(Transaction.toCBORHex(tx)); + + if (additionalUtxos && additionalUtxos.length > 0) { + console.log("Evaluation additional UTxOs:"); + console.dir(additionalUtxos.map(UTxO.toOutRefString), { + depth: null, + colors: true, + }); + } + + return runtime.providerClient.Effect.evaluateTx(tx); + }, +} as const; + +console.log(`Validator address: ${Address.toBech32(runtime.validator.address)}`); +console.log(`Spent validator input: ${UTxO.toOutRefString(validatorUtxo)}`); +console.log(`Pyth state input: ${UTxO.toOutRefString(pythState)}`); +console.log(`Pyth withdraw script hash: ${pythWithdrawScriptHash}`); +console.log(`Feed id: ${runtime.feedId}`); +console.log(`Signed update hex: ${pythUpdate.signedUpdateHex}`); +console.dir({ parsed: pythUpdate.parsed }, { depth: null, colors: true }); + +try { + const txHash = await runtime.client + .newTx() + .setValidity({ + from: now - 60_000n, + to: now + 60_000n, + }) + .readFrom({ + referenceInputs: [pythState], + }) + .withdraw({ + amount: 0n, + redeemer: makeWithdrawRedeemer(pythUpdate.signedUpdate), + stakeCredential: ScriptHash.fromHex(pythWithdrawScriptHash), + label: "pyth-withdraw", + }) + .attachScript({ + script: runtime.validator.script, + }) + .collectFrom({ + inputs: [validatorUtxo], + redeemer: makeFeedRedeemer(runtime.feedId), + label: "osi-accept-pyth", + }) + .build({ + debug: true, + evaluator: loggingEvaluator as never, + }) + .then((built) => built.sign()) + .then((signed) => signed.submit()); + + console.log(`Spend tx hash: ${formatTxHash(txHash)}`); +} catch (error) { + logDetailedError(error); + throw error; +} diff --git a/lazer/cardano/our-project/on-chain/README.md b/lazer/cardano/our-project/on-chain/README.md deleted file mode 100644 index 86c1e160..00000000 --- a/lazer/cardano/our-project/on-chain/README.md +++ /dev/null @@ -1,65 +0,0 @@ -# on-chain - -Write validators in the `validators` folder, and supporting functions in the `lib` folder using `.ak` as a file extension. - -```aiken -validator my_first_validator { - spend(_datum: Option, _redeemer: Data, _output_reference: Data, _context: Data) { - True - } -} -``` - -## Building - -```sh -aiken build -``` - -## Configuring - -**aiken.toml** -```toml -[config.default] -network_id = 41 -``` - -Or, alternatively, write conditional environment modules under `env`. - -## Testing - -You can write tests in any module using the `test` keyword. For example: - -```aiken -use config - -test foo() { - config.network_id + 1 == 42 -} -``` - -To run all tests, simply do: - -```sh -aiken check -``` - -To run only tests matching the string `foo`, do: - -```sh -aiken check -m foo -``` - -## Documentation - -If you're writing a library, you might want to generate an HTML documentation for it. - -Use: - -```sh -aiken docs -``` - -## Resources - -Find more on the [Aiken's user manual](https://aiken-lang.org). diff --git a/lazer/cardano/our-project/on-chain/aiken.lock b/lazer/cardano/our-project/on-chain/aiken.lock index fddd4f7f..a46c67b4 100644 --- a/lazer/cardano/our-project/on-chain/aiken.lock +++ b/lazer/cardano/our-project/on-chain/aiken.lock @@ -24,4 +24,4 @@ requirements = [] source = "github" [etags] -"pyth-network/pyth-lazer-cardano@main" = [{ secs_since_epoch = 1774193504, nanos_since_epoch = 607975386 }, "a46dacd97a22eb07feeaf966d48c3116c8249ddc836705656e3135cea285bcfc"] +"pyth-network/pyth-lazer-cardano@main" = [{ secs_since_epoch = 1774201447, nanos_since_epoch = 634991200 }, "a46dacd97a22eb07feeaf966d48c3116c8249ddc836705656e3135cea285bcfc"] diff --git a/lazer/cardano/our-project/on-chain/plutus.json b/lazer/cardano/our-project/on-chain/plutus.json new file mode 100644 index 00000000..24a674b2 --- /dev/null +++ b/lazer/cardano/our-project/on-chain/plutus.json @@ -0,0 +1,215 @@ +{ + "preamble": { + "title": "delfines/on-chain", + "description": "Aiken contracts for project 'delfines/on-chain'", + "version": "0.0.0", + "plutusVersion": "v3", + "compiler": { + "name": "Aiken", + "version": "v1.1.21+42babe5" + }, + "license": "Apache-2.0" + }, + "validators": [ + { + "title": "osi.oracleSettled.spend", + "datum": { + "title": "datum", + "schema": { + "$ref": "#/definitions/types~1OsiDatum" + } + }, + "redeemer": { + "title": "redeemer", + "schema": { + "$ref": "#/definitions/types~1OsiRedeemers" + } + }, + "parameters": [ + { + "title": "base_currency", + "schema": { + "$ref": "#/definitions/Int" + } + }, + { + "title": "pyth_policy", + "schema": { + "$ref": "#/definitions/cardano~1assets~1PolicyId" + } + } + ], + "compiledCode": "59232d0101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bad0039bae00248888888888a60022a660089212a65787065637420757064617465733a204c6973743c4279746541727261793e203d2072656465656d657200168a998022491a6578706563742073746174653a2050797468203d20737461746500168a9980224938657870656374205b6f75745d203d2066696e645f7363726970745f6f757470757473286f7574707574732c207363726970745f686173682900168a9980224934657870656374205b66656564312c2066656564325d203d206765745f7570646174657328707974685f706f6c6963792c2074782900168a998022491672656465656d65723a204f736952656465656d65727300164888896600264653001301000198081808800cdc3a400530100024888966002600460206ea800e2646644b300100789919912cc004c00c0062b300130173754015002806a0308acc004c0200062b300130173754015002806a030806a0284050265300122259800801452844ca600264b30013007301a37540031375a6036603c6eacc078c06cdd5000c520004060603a003375e603a603c00337560069112cc0040062b30013002006899802801a400114a080d2264b30013375e603a0029810140008acc004cc018010dd6980f18109bab301e001898019ba630220028a50406d1598009980300224001130030078a50406c80d8c08000501e0ca6002003004911980f0011980f1ba60014bd7020022225980080144cc005300103d87a80004bd6f7b63044ca60026eb8c0700066eacc07400660420069112cc004cdc8a441000038acc004cdc7a441000038998029805998111ba60024bd70000c4cc015300103d87a8000006407519800803c006446600e0046604866ec0dd48029ba6004001401c80e8603e00480ea29422942294101e48c068c06c006602c6ea8019222598009802980c1baa00c899192cc004c030c068dd5000c4c9660020030148992cc004c08400a330013756600c603a6ea8012600c603a6ea80064466e24008005007405501e180f800a03a323233001001375860406042604200a44b30010018a5eb8226644b30013259800980918101baa001899b8f006375c604860426ea8006294101e181198101baa30233020375400513302200233004004001899802002000a03a30210013022001407c6eb8c078c06cdd5000c54cc0652413a65787065637420536372697074287363726970745f6861736829203d20696e2e616464726573732e7061796d656e745f63726564656e7469616c00164060603a60346ea8c074c068dd500099198008009bac301d0022259800800c5a264b30013375e603e60386ea800402a2600a60386ea8006266006006604000480c8c07800501c4566002600a60306ea801a266446530013756603e003301f3020001cc004dc4a4009370e9002488c8cc00400400c88cc00c004c00800a4464b30013371e910100375c60446046003130220018a9980ea4811b6578706563742028612c20235b5d29203d2073656c6628737263290016407060040032302030213021001488888c8c8c966002602060466ea8006264b300130113024375400313259800800c08204113233009001225980080144c8cc004004010896600200314bd7044cc0b660026e2520009b8c480126e0120039b89480226e3120009b8c480226e01200748888888cc88cc0548c8d6600266e3cdd7181c800a450475d3c793008cc004888c8cc00cdd6981e8009bae303d303e00130030019b89480426e3120109b804803e600e90082444446600a4646607e6ea0cde5250375c60800026607e6080608200297ae05980098029b8d00189981f1ba930020013303e37526600860066e340040052f5c1153303a49124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e74001640e44646600e4660806ea0cdc7000a4000660806ea4cc008c090dc6800800a5eb808cc0208cc104dd419b8e00148000cc104dd49980198129b8d0010014bd70111919198221816998221ba800733044375000a66088608a00297ae033044304530460014bd7018008012cc004c05400a2653001001a5eb82006800888966002605e003123233047374e0026608e6ea40092f5c065300100180252f5c080088896600200510018cc00400e609600533049304a002001400c8242246530010059982398240008024c0ac00e6eb8c120c1240050054c004c8cc11cdd419bca4a06eb8c120004cc11cc120c1240052f5c0b30013016371a003133046375260220026608c6ea4cc050c04cdc6800800a5eb822a6608492124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e7400164105223304800233048375200297ae09b874801a6e1d200848888c8c8c8cc018ca60020033758609e00530373304e304f0083304e4c103d87a80003304e4c103d87a80003304e4c103d87a80003304e4c103d87a80003304e4c103d87a80003304e4c103d87a80003304e4c103d87a80003304e4c103d87a80003304e4c103d87a80003304e4c103d87a80003304e4c103d87a80003304e4c103d87a80003304e4c103d87a80004bd70200222259800801440063300100398290014c8c9660026078003132303c33053305400133053303c3305330543051375400697ae030553055001305037540071598009820800c4c8c8c0f4cc150c154008cc150c154004cc150c0f4cc150c154c148dd500225eb80c158c158004c154004c140dd5001c56600260660031323232303e33055305600333055305600233055305600133055303e3305530563053375400a97ae03057305700130560013055001305037540071598009805000c4c8c8c8c8c0fccc158c15c010cc158c15c00ccc158c15c008cc158c15c004cc158c0fccc158c15cc150dd500325eb80c160c160004c15c004c158004c154004c140dd5001c56600260120031323232323230403305730580053305730580043305730580033305730580023305730580013305730403305730583055375400e97ae03059305900130580013057001305600130550013050375400715980099b874802800626464646464646082660b060b200c660b060b200a660b060b2008660b060b2006660b060b2004660b060b2002660b06082660b060b260ac6ea80212f5c060b460b400260b200260b000260ae00260ac00260aa00260a06ea800e2b30013370e9006000c4c8c8c8c8c8c8c8c108cc164c16801ccc164c168018cc164c168014cc164c168010cc164c16800ccc164c168008cc164c168004cc164c108cc164c168c15cdd5004a5eb80c16cc16c004c168004c164004c160004c15c004c158004c154004c140dd5001c56600266e1d200e0018991919191919191918219982d182d8041982d182d8039982d182d8031982d182d8029982d182d8021982d182d8019982d182d8011982d182d8009982d18219982d182d982c1baa00a4bd70182e182e000982d800982d000982c800982c000982b800982b000982a80098281baa0038acc004cdc3a4020003132323232323232323230443305b305c0093305b305c0083305b305c0073305b305c0063305b305c0053305b305c0043305b305c0033305b305c0023305b305c0013305b30443305b305c3059375401697ae0305d305d001305c001305b001305a001305900130580013057001305600130550013050375400715980099b8748048006264646464646464646464608a660b860ba014660b860ba012660b860ba010660b860ba00e660b860ba00c660b860ba00a660b860ba008660b860ba006660b860ba004660b860ba002660b8608a660b860ba60b46ea80312f5c060bc60bc00260ba00260b800260b600260b400260b200260b000260ae00260ac00260aa00260a06ea800e2b30013370e900a000c4c8c8c8c8c8c8c8c8c8c8c8c118cc174c17802ccc174c178028cc174c178024cc174c178020cc174c17801ccc174c178018cc174c178014cc174c178010cc174c17800ccc174c178008cc174c178004cc174c118cc174c178c16cdd5006a5eb80c17cc17c004c178004c174004c170004c16c004c168004c164004c160004c15c004c158004c154004c140dd5001c56600266e1d2016001899191919191919191919191918239982f182f8061982f182f8059982f182f8051982f182f8049982f182f8041982f182f8039982f182f8031982f182f8029982f182f8021982f182f8019982f182f8011982f182f8009982f18239982f182f982e1baa00e4bd7018301830000982f800982f000982e800982e000982d800982d000982c800982c000982b800982b000982a80098281baa003899191919191919191919191918239982f182f8061982f182f8059982f182f8051982f182f8049982f182f8041982f182f8039982f182f8031982f182f8029982f182f8021982f182f8019982f182f8011982f182f8009982f182f98300009982f18239982f182f982e1baa00e4bd7025eb80c17c004c178004c174004c170004c16c004c168004c164004c160004c15c004c158004c154004c140dd5001a09a4134826904d209a4134826904d209a4134826904d18271baa0013051002400c8278dd718271827800991acc004c08000a2653001001a5eb820068008889660026074003123233052374e002660a46ea40092f5c065300100180252f5c080088896600200510018cc00400e60ac005330543055002001400c829a246530010059982918298008024c0d800e6eb8c14cc1500050051802800a0968a99824a4811165787065637420636f756e74203e3d2030001641206eb8c138c13c00ca60024464b30013001480422b30013001480022900044cdc7244108010204081020408000002412d1598009800a408113370490400219801801980a80144cdc124101010100406600600666e00009203f412c8258dc4000c888c8cc144c00cdd698290009982898291829800a5eb80c00c0066609a6ea0cdc7000a40006609a6ea4cc03cc0c4dc6800800a5eb81222323298009198029191982a9ba833794940dd7182b0009982a982b182b800a5eb816600260366e340062660a86ea4c060004cc150dd49980d180c9b8d0010014bd70454cc141240124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e740016413c4646006b3001303f0018a60103d87a80008981f1982a9ba80014bd7020a030030019bad3053003911191acc006600260806eb4c15c00694294505144cc02000c8c014c100cc15cdd4000a5eb822601e600898103d87a800041446eb8c15cc160004cc154dd419b8e00148000cc154dd49980b981c9b8d0010014bd7024446b3001303f002898019181f9982b000a5eb822b3001304400289801919ba548008cc1580052f5c1159800981b00144c00c8cdd2a4008660ac00297ae08acc004c03400a26600e464660ae6ea0cde5250375c60b0002660ae60b060b200297ae059800981c1b8d00189982b1ba9302200133056375266050604e6e340040052f5c1153305249124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e7400164144466e95200633056375000297ae08acc004c03000a26600e464660ae6ea0cde5250375c60b0002660ae60b060b200297ae059800981c1b8d00189982b1ba9302200133056375266050604e6e340040052f5c1153305249124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e7400164144466e952008330563750b3001337100029040400244006266e04004c0192020414497ae08acc004cdc3a40140051300323374a90051982b000a5eb822b30013370e900600144cc0048cdd2a4018660ac00297ae0232330573750600c6eb4c160004cc15cc160c1640052f5c064660ae6ea0cde5250375c60b0002660ae60b060b200297ae059800980e9b8d00189982b1ba9301a0013305637526603860366e340040052f5c11533052490124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e740016414515980099b874803800a266002466e95200e330560014bd701191982b9ba833794940dd7182c0009982b982c182c800a5eb8166002603a6e340062660ac6ea4c068004cc158dd49980e180d9b8d0010014bd70454cc14924124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e740016414515980099b874804000a266002466e952010330560014bd701191982b9ba833794940dd7182c0009982b982c182c800a5eb8166002603a6e340062660ac6ea4c068004cc158dd49980e180d9b8d0010014bd70454cc14924124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e740016414515980099b874804800a246464660b066e9520123305830590014bd701982c182c982d000a5eb80c004008cc0208c8cc160dd419bca4a06eb8c164004cc160c164c1680052f5c0b30013039371a00313305737526046002660ae6ea4cc0a4c0a0dc6800800a5eb822a660a6920124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e74001641484b300130410018a60103d87980008acc004c118006298103d87a80008acc004c0e0006298103d87b80008acc004c03c006298103d87c80008acc004c038006298103d87d80008a99829a49204d61726b657453657373696f6e2076616c7565206f7574206f662072616e676500164148829105220a4414915980099b874805000a26006466e952014330560014bd70456600266e1d201600289801919ba548058cc1580052f5c115980099b874806000a266002466e952018330560014bd701191982b9ba833794940dd7182c0009982b982c182c800a5eb8166002603a6e340062660ac6ea4c068004cc158dd49980e180d9b8d0010014bd70454cc14924124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e740016414515330514911c4665656450726f7065727479204944206f7574206f662072616e676500164140828105020a04140828105020a04140828105020a041406eb8c158c15c0184b300133710002904040404040404040400144006266e04004c00920800141346006006375a609800264660966ea0cdc7000a4000660966ea4cc034c0bcdc6800800a5eb80dd7182598260021040454cc0f924011165787065637420636f756e74203e3d2030001640f46e312002454cc0d1240125657870656374206d61676963203d3d2070726963655f7570646174655f6d616769635f6c65001640cc6eb8c0e4c0e800566002600e6e3400626606e6ea4c008004cc0dcdd49980298021b8d0010014bd70454cc0cd240124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e74001640c86eb8c050c0d0dd51980a9191acc004cdc79bae303900148904b9011a8200891919191919191991198209815198209821003998209ba90013304130420024bd70198209821182180125eb80d660026024003125980099b89002371a00313304037526601e004002660806ea66002005337026e3400400a002b8c25eb822a66078920124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e74001640ed153303b4911165787065637420636f756e74203e3d2030001640e86eb8c100c104008dd718200021bad303f001323303e375066f29281bae303f0013303e303f30400014bd702cc004c07cdc6800c4cc0f4dd498048009981e9ba93300f300e371a00200297ae08a9981ca4924657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e74001640e06eb8c0f4c0f8004d6600294624b30013371290201b8d00189981e1ba93300b48100004cc0f0dd4cc005204099b80371a002901fc0057184bd70454cc0e124124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e74001640dd15330374911165787065637420636f756e74203e3d2030001640d86eb8c0f0c0f4004c0040096600294624b3001337129040009b8d00189981d1ba9330094820004004cc0e8dd4cc00520800199b80371a002903fc0057184bd70454cc0d924124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e74001640d515330354911165787065637420636f756e74203e3d2030001640d1153303449126657870656374206d61676963203d3d20736f6c616e615f666f726d61745f6d616769635f6c65001640cc6eb8c0e4c0e800566002600e6e3400626606e6ea4c008004cc0dcdd49980298021b8d0010014bd70454cc0cd240124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e74001640c86eb8c0dc028c00d200430034802066004004605e0028162264b30010018124092049024899180198178021bae00140bc60580048150dd6000c0820408158c0a0c094dd5000c54cc08d24016465787065637420536f6d652872656465656d657229203d0a2020202070616972732e6765745f66697273742873656c662e72656465656d6572732c205769746864726177285363726970742873746174652e77697468647261775f736372697074292929001640886466446600400400244b30010018a60103d87a80008992cc004cdd78021813800c4c04ccc0a8c0a00052f5c1133003003302c002409460540028140dd5981418149814981498149814981498149814981498129baa0153374a90021981319ba548008cc098c09cc0a0c0a0c0a0c090dd5181398121baa0014bd7025eb822a660449201ff65787065637420536f6d6528737461746529203d0a202020206c6973742e66696e645f6d6170280a20202020202073656c662e7265666572656e63655f696e707574732c0a202020202020666e28696e70757429207b0a20202020202020206966206173736574732e6861735f6e66745f73747269637428696e7075742e6f75747075742e76616c75652c20707974685f69642c2022507974682053746174652229207b0a202020202020202020202f2f20737461746520746f6b656e206f757473696465206f6620736372697074206164647265737320776f756c6420696d706c792061206275670a202020202020202020206578706563742053637269dc7074285f29203d20696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c0a2020202020202020202065787065637420496e6c696e65446174756d28737461746529203d20696e7075742e6f75747075742e646174756d0a202020202020202020206578706563742073746174653a2050797468203d2073746174650a20202020202020202020536f6d65287374617465290a20202020202020207d20656c7365207b0a202020202020202020204e6f6e650a20202020202020207d0a2020202020207d2c0a20202020290016408464660020026eb0c034c090dd500a112cc0040062980103d87a80008992cc006600266ebc00530103d87a8000a50a51408d1001899801801981500120463259800cc004dd5980798131baa300f30263754003374c6605066ec0dd48109ba6330283376098010b4a50797468205374617465004c010101004bd6f7b63025eb7bdb182449450104566002602e604a6ea8c0a4c098dd5181498131baa300f3026375400313259800980518131baa0018992cc0040062b300130143027375400313259800800c08a264b30010018992cc00400604913259800800c09626644b3001001813c4c966002003028899912cc00400605513259800800c0ae05702b815c4c966002606e007159800980f98191baa00a8992cc00400605b13259800800c0ba05d02e81744cc89660020030308992cc004006063031818c4cc89660020030338992cc00400606903481a40d226644b300100181b44c96600200303781bc0de264b30013043003899810809912cc00400a26604602444b3001002898171982280e25eb8226464b30010018992cc00400607f03f81fc0fe265300100389802982580341010251bae001412c608a00503e81f40fa07c8250c10c004c11800904444c8c96600200303c81e40f20791332259800800c6600200313005304900681f204681f40fa07d03e41286eb8004c10c00904818208009822001208481c2080375a003037410c608000281f0dd7000981f8012080303d00140ec6eb4004c0f000a06281e8c0e80050381bae001303900240e8606e00281a8c0ccdd500540b103040b10341bae00140dc60680028190dd5800981980140a205102840d060620028178dd58009818001409604b02540c4605c0028160c0b800a047023811c08d02f1816000a054302837540030214095021810c0860428168c0a8c09cdd5000c54cc0952412e65787065637420496e6c696e65446174756d28737461746529203d20696e7075742e6f75747075742e646174756d00164090600c604c6ea8c03cc098dd5000c54cc09124013a65787065637420536372697074285f29203d20696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c0016408d14c103d87a8000408c6050002813088966002602260486ea800e264b300100180144c96600200313259800800c012264b30010018acc004c0b400a330010038cc00400600d0054021005402100540a9005802c01600a8170c0ac0050291815801400e007003801a0583029001409c604a6ea800e002811088966002602060466ea800e264b300100180144c96600200313259800800c012264b30010018992cc004c0a40062b3001300d302800180344c966002605c00913259800980b800c56600260566ea801a01300840b1159800980e000c4c9660020030098992cc00400601500a80544c966002606400700c805a05e375a00300a40c8605e0028168c0acdd50034566002601c00315980098159baa006804c02102c4021028205040a060526ea801600e8158c068c0a0005026401902a1baa001802c01600b00540b460540028140c0a800a007003801c00d02b1814000a04c3024375400700140849bad301f0034888966002005017899912cc00400603313259800981380144c8c8cc88c8c94cc09cdcc99800804a4500153302737326600200e9110014a0600200244464b30010038991919911980500119b8a488101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100920605980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c815102a1bac302d002375a60560026466ec0dd418158009ba7302c001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6060003337149101023a200098008054c0c400600a805100a181980144ca6002015303000199b8a489023a200098008054c0c4006600e66008008004805100a18198012062303300140c066e29220102207d0000340b46eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a0028039006205a3758007133006375a0060051323371491102682700329800800cc04cdc68014cdc52450127000044004444b30013371000490004400626466453001006980c002ccdc599b800025980099b88002480522903045206e40bc66e2ccdc0000acc004cdc4000a402914818229037205e004401866e0c00520203370c002901019b8e00400240b06eb800d0301b8a4881022c20002232330010010032259800980a800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003409881308888c8cc004004014896600200310058992cc004006266008605e00400d133005302f0023300300300140b4605e0028160c0040048896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801902340690241812800a046302300230240024084301f00230193754603860326ea8018dc024003153301749011a65787065637420536f6d6528646174756d29203d20646174756d0016405880b06e952000301437540106e1d2000805402a01500a4064602a002602a602c00260226ea800e2c8070602000260166ea8046293454cc02524011856616c696461746f722072657475726e65642066616c7365001365640201", + "hash": "132dae0e530c75546b5a65d8db2835316ab856877659f2f9cc12032d" + }, + { + "title": "osi.oracleSettled.else", + "redeemer": { + "schema": {} + }, + "parameters": [ + { + "title": "base_currency", + "schema": { + "$ref": "#/definitions/Int" + } + }, + { + "title": "pyth_policy", + "schema": { + "$ref": "#/definitions/cardano~1assets~1PolicyId" + } + } + ], + "compiledCode": "59232d0101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bad0039bae00248888888888a60022a660089212a65787065637420757064617465733a204c6973743c4279746541727261793e203d2072656465656d657200168a998022491a6578706563742073746174653a2050797468203d20737461746500168a9980224938657870656374205b6f75745d203d2066696e645f7363726970745f6f757470757473286f7574707574732c207363726970745f686173682900168a9980224934657870656374205b66656564312c2066656564325d203d206765745f7570646174657328707974685f706f6c6963792c2074782900168a998022491672656465656d65723a204f736952656465656d65727300164888896600264653001301000198081808800cdc3a400530100024888966002600460206ea800e2646644b300100789919912cc004c00c0062b300130173754015002806a0308acc004c0200062b300130173754015002806a030806a0284050265300122259800801452844ca600264b30013007301a37540031375a6036603c6eacc078c06cdd5000c520004060603a003375e603a603c00337560069112cc0040062b30013002006899802801a400114a080d2264b30013375e603a0029810140008acc004cc018010dd6980f18109bab301e001898019ba630220028a50406d1598009980300224001130030078a50406c80d8c08000501e0ca6002003004911980f0011980f1ba60014bd7020022225980080144cc005300103d87a80004bd6f7b63044ca60026eb8c0700066eacc07400660420069112cc004cdc8a441000038acc004cdc7a441000038998029805998111ba60024bd70000c4cc015300103d87a8000006407519800803c006446600e0046604866ec0dd48029ba6004001401c80e8603e00480ea29422942294101e48c068c06c006602c6ea8019222598009802980c1baa00c899192cc004c030c068dd5000c4c9660020030148992cc004c08400a330013756600c603a6ea8012600c603a6ea80064466e24008005007405501e180f800a03a323233001001375860406042604200a44b30010018a5eb8226644b30013259800980918101baa001899b8f006375c604860426ea8006294101e181198101baa30233020375400513302200233004004001899802002000a03a30210013022001407c6eb8c078c06cdd5000c54cc0652413a65787065637420536372697074287363726970745f6861736829203d20696e2e616464726573732e7061796d656e745f63726564656e7469616c00164060603a60346ea8c074c068dd500099198008009bac301d0022259800800c5a264b30013375e603e60386ea800402a2600a60386ea8006266006006604000480c8c07800501c4566002600a60306ea801a266446530013756603e003301f3020001cc004dc4a4009370e9002488c8cc00400400c88cc00c004c00800a4464b30013371e910100375c60446046003130220018a9980ea4811b6578706563742028612c20235b5d29203d2073656c6628737263290016407060040032302030213021001488888c8c8c966002602060466ea8006264b300130113024375400313259800800c08204113233009001225980080144c8cc004004010896600200314bd7044cc0b660026e2520009b8c480126e0120039b89480226e3120009b8c480226e01200748888888cc88cc0548c8d6600266e3cdd7181c800a450475d3c793008cc004888c8cc00cdd6981e8009bae303d303e00130030019b89480426e3120109b804803e600e90082444446600a4646607e6ea0cde5250375c60800026607e6080608200297ae05980098029b8d00189981f1ba930020013303e37526600860066e340040052f5c1153303a49124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e74001640e44646600e4660806ea0cdc7000a4000660806ea4cc008c090dc6800800a5eb808cc0208cc104dd419b8e00148000cc104dd49980198129b8d0010014bd70111919198221816998221ba800733044375000a66088608a00297ae033044304530460014bd7018008012cc004c05400a2653001001a5eb82006800888966002605e003123233047374e0026608e6ea40092f5c065300100180252f5c080088896600200510018cc00400e609600533049304a002001400c8242246530010059982398240008024c0ac00e6eb8c120c1240050054c004c8cc11cdd419bca4a06eb8c120004cc11cc120c1240052f5c0b30013016371a003133046375260220026608c6ea4cc050c04cdc6800800a5eb822a6608492124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e7400164105223304800233048375200297ae09b874801a6e1d200848888c8c8c8cc018ca60020033758609e00530373304e304f0083304e4c103d87a80003304e4c103d87a80003304e4c103d87a80003304e4c103d87a80003304e4c103d87a80003304e4c103d87a80003304e4c103d87a80003304e4c103d87a80003304e4c103d87a80003304e4c103d87a80003304e4c103d87a80003304e4c103d87a80003304e4c103d87a80004bd70200222259800801440063300100398290014c8c9660026078003132303c33053305400133053303c3305330543051375400697ae030553055001305037540071598009820800c4c8c8c0f4cc150c154008cc150c154004cc150c0f4cc150c154c148dd500225eb80c158c158004c154004c140dd5001c56600260660031323232303e33055305600333055305600233055305600133055303e3305530563053375400a97ae03057305700130560013055001305037540071598009805000c4c8c8c8c8c0fccc158c15c010cc158c15c00ccc158c15c008cc158c15c004cc158c0fccc158c15cc150dd500325eb80c160c160004c15c004c158004c154004c140dd5001c56600260120031323232323230403305730580053305730580043305730580033305730580023305730580013305730403305730583055375400e97ae03059305900130580013057001305600130550013050375400715980099b874802800626464646464646082660b060b200c660b060b200a660b060b2008660b060b2006660b060b2004660b060b2002660b06082660b060b260ac6ea80212f5c060b460b400260b200260b000260ae00260ac00260aa00260a06ea800e2b30013370e9006000c4c8c8c8c8c8c8c8c108cc164c16801ccc164c168018cc164c168014cc164c168010cc164c16800ccc164c168008cc164c168004cc164c108cc164c168c15cdd5004a5eb80c16cc16c004c168004c164004c160004c15c004c158004c154004c140dd5001c56600266e1d200e0018991919191919191918219982d182d8041982d182d8039982d182d8031982d182d8029982d182d8021982d182d8019982d182d8011982d182d8009982d18219982d182d982c1baa00a4bd70182e182e000982d800982d000982c800982c000982b800982b000982a80098281baa0038acc004cdc3a4020003132323232323232323230443305b305c0093305b305c0083305b305c0073305b305c0063305b305c0053305b305c0043305b305c0033305b305c0023305b305c0013305b30443305b305c3059375401697ae0305d305d001305c001305b001305a001305900130580013057001305600130550013050375400715980099b8748048006264646464646464646464608a660b860ba014660b860ba012660b860ba010660b860ba00e660b860ba00c660b860ba00a660b860ba008660b860ba006660b860ba004660b860ba002660b8608a660b860ba60b46ea80312f5c060bc60bc00260ba00260b800260b600260b400260b200260b000260ae00260ac00260aa00260a06ea800e2b30013370e900a000c4c8c8c8c8c8c8c8c8c8c8c8c118cc174c17802ccc174c178028cc174c178024cc174c178020cc174c17801ccc174c178018cc174c178014cc174c178010cc174c17800ccc174c178008cc174c178004cc174c118cc174c178c16cdd5006a5eb80c17cc17c004c178004c174004c170004c16c004c168004c164004c160004c15c004c158004c154004c140dd5001c56600266e1d2016001899191919191919191919191918239982f182f8061982f182f8059982f182f8051982f182f8049982f182f8041982f182f8039982f182f8031982f182f8029982f182f8021982f182f8019982f182f8011982f182f8009982f18239982f182f982e1baa00e4bd7018301830000982f800982f000982e800982e000982d800982d000982c800982c000982b800982b000982a80098281baa003899191919191919191919191918239982f182f8061982f182f8059982f182f8051982f182f8049982f182f8041982f182f8039982f182f8031982f182f8029982f182f8021982f182f8019982f182f8011982f182f8009982f182f98300009982f18239982f182f982e1baa00e4bd7025eb80c17c004c178004c174004c170004c16c004c168004c164004c160004c15c004c158004c154004c140dd5001a09a4134826904d209a4134826904d209a4134826904d18271baa0013051002400c8278dd718271827800991acc004c08000a2653001001a5eb820068008889660026074003123233052374e002660a46ea40092f5c065300100180252f5c080088896600200510018cc00400e60ac005330543055002001400c829a246530010059982918298008024c0d800e6eb8c14cc1500050051802800a0968a99824a4811165787065637420636f756e74203e3d2030001641206eb8c138c13c00ca60024464b30013001480422b30013001480022900044cdc7244108010204081020408000002412d1598009800a408113370490400219801801980a80144cdc124101010100406600600666e00009203f412c8258dc4000c888c8cc144c00cdd698290009982898291829800a5eb80c00c0066609a6ea0cdc7000a40006609a6ea4cc03cc0c4dc6800800a5eb81222323298009198029191982a9ba833794940dd7182b0009982a982b182b800a5eb816600260366e340062660a86ea4c060004cc150dd49980d180c9b8d0010014bd70454cc141240124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e740016413c4646006b3001303f0018a60103d87a80008981f1982a9ba80014bd7020a030030019bad3053003911191acc006600260806eb4c15c00694294505144cc02000c8c014c100cc15cdd4000a5eb822601e600898103d87a800041446eb8c15cc160004cc154dd419b8e00148000cc154dd49980b981c9b8d0010014bd7024446b3001303f002898019181f9982b000a5eb822b3001304400289801919ba548008cc1580052f5c1159800981b00144c00c8cdd2a4008660ac00297ae08acc004c03400a26600e464660ae6ea0cde5250375c60b0002660ae60b060b200297ae059800981c1b8d00189982b1ba9302200133056375266050604e6e340040052f5c1153305249124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e7400164144466e95200633056375000297ae08acc004c03000a26600e464660ae6ea0cde5250375c60b0002660ae60b060b200297ae059800981c1b8d00189982b1ba9302200133056375266050604e6e340040052f5c1153305249124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e7400164144466e952008330563750b3001337100029040400244006266e04004c0192020414497ae08acc004cdc3a40140051300323374a90051982b000a5eb822b30013370e900600144cc0048cdd2a4018660ac00297ae0232330573750600c6eb4c160004cc15cc160c1640052f5c064660ae6ea0cde5250375c60b0002660ae60b060b200297ae059800980e9b8d00189982b1ba9301a0013305637526603860366e340040052f5c11533052490124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e740016414515980099b874803800a266002466e95200e330560014bd701191982b9ba833794940dd7182c0009982b982c182c800a5eb8166002603a6e340062660ac6ea4c068004cc158dd49980e180d9b8d0010014bd70454cc14924124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e740016414515980099b874804000a266002466e952010330560014bd701191982b9ba833794940dd7182c0009982b982c182c800a5eb8166002603a6e340062660ac6ea4c068004cc158dd49980e180d9b8d0010014bd70454cc14924124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e740016414515980099b874804800a246464660b066e9520123305830590014bd701982c182c982d000a5eb80c004008cc0208c8cc160dd419bca4a06eb8c164004cc160c164c1680052f5c0b30013039371a00313305737526046002660ae6ea4cc0a4c0a0dc6800800a5eb822a660a6920124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e74001641484b300130410018a60103d87980008acc004c118006298103d87a80008acc004c0e0006298103d87b80008acc004c03c006298103d87c80008acc004c038006298103d87d80008a99829a49204d61726b657453657373696f6e2076616c7565206f7574206f662072616e676500164148829105220a4414915980099b874805000a26006466e952014330560014bd70456600266e1d201600289801919ba548058cc1580052f5c115980099b874806000a266002466e952018330560014bd701191982b9ba833794940dd7182c0009982b982c182c800a5eb8166002603a6e340062660ac6ea4c068004cc158dd49980e180d9b8d0010014bd70454cc14924124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e740016414515330514911c4665656450726f7065727479204944206f7574206f662072616e676500164140828105020a04140828105020a04140828105020a041406eb8c158c15c0184b300133710002904040404040404040400144006266e04004c00920800141346006006375a609800264660966ea0cdc7000a4000660966ea4cc034c0bcdc6800800a5eb80dd7182598260021040454cc0f924011165787065637420636f756e74203e3d2030001640f46e312002454cc0d1240125657870656374206d61676963203d3d2070726963655f7570646174655f6d616769635f6c65001640cc6eb8c0e4c0e800566002600e6e3400626606e6ea4c008004cc0dcdd49980298021b8d0010014bd70454cc0cd240124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e74001640c86eb8c050c0d0dd51980a9191acc004cdc79bae303900148904b9011a8200891919191919191991198209815198209821003998209ba90013304130420024bd70198209821182180125eb80d660026024003125980099b89002371a00313304037526601e004002660806ea66002005337026e3400400a002b8c25eb822a66078920124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e74001640ed153303b4911165787065637420636f756e74203e3d2030001640e86eb8c100c104008dd718200021bad303f001323303e375066f29281bae303f0013303e303f30400014bd702cc004c07cdc6800c4cc0f4dd498048009981e9ba93300f300e371a00200297ae08a9981ca4924657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e74001640e06eb8c0f4c0f8004d6600294624b30013371290201b8d00189981e1ba93300b48100004cc0f0dd4cc005204099b80371a002901fc0057184bd70454cc0e124124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e74001640dd15330374911165787065637420636f756e74203e3d2030001640d86eb8c0f0c0f4004c0040096600294624b3001337129040009b8d00189981d1ba9330094820004004cc0e8dd4cc00520800199b80371a002903fc0057184bd70454cc0d924124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e74001640d515330354911165787065637420636f756e74203e3d2030001640d1153303449126657870656374206d61676963203d3d20736f6c616e615f666f726d61745f6d616769635f6c65001640cc6eb8c0e4c0e800566002600e6e3400626606e6ea4c008004cc0dcdd49980298021b8d0010014bd70454cc0cd240124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e74001640c86eb8c0dc028c00d200430034802066004004605e0028162264b30010018124092049024899180198178021bae00140bc60580048150dd6000c0820408158c0a0c094dd5000c54cc08d24016465787065637420536f6d652872656465656d657229203d0a2020202070616972732e6765745f66697273742873656c662e72656465656d6572732c205769746864726177285363726970742873746174652e77697468647261775f736372697074292929001640886466446600400400244b30010018a60103d87a80008992cc004cdd78021813800c4c04ccc0a8c0a00052f5c1133003003302c002409460540028140dd5981418149814981498149814981498149814981498129baa0153374a90021981319ba548008cc098c09cc0a0c0a0c0a0c090dd5181398121baa0014bd7025eb822a660449201ff65787065637420536f6d6528737461746529203d0a202020206c6973742e66696e645f6d6170280a20202020202073656c662e7265666572656e63655f696e707574732c0a202020202020666e28696e70757429207b0a20202020202020206966206173736574732e6861735f6e66745f73747269637428696e7075742e6f75747075742e76616c75652c20707974685f69642c2022507974682053746174652229207b0a202020202020202020202f2f20737461746520746f6b656e206f757473696465206f6620736372697074206164647265737320776f756c6420696d706c792061206275670a202020202020202020206578706563742053637269dc7074285f29203d20696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c0a2020202020202020202065787065637420496e6c696e65446174756d28737461746529203d20696e7075742e6f75747075742e646174756d0a202020202020202020206578706563742073746174653a2050797468203d2073746174650a20202020202020202020536f6d65287374617465290a20202020202020207d20656c7365207b0a202020202020202020204e6f6e650a20202020202020207d0a2020202020207d2c0a20202020290016408464660020026eb0c034c090dd500a112cc0040062980103d87a80008992cc006600266ebc00530103d87a8000a50a51408d1001899801801981500120463259800cc004dd5980798131baa300f30263754003374c6605066ec0dd48109ba6330283376098010b4a50797468205374617465004c010101004bd6f7b63025eb7bdb182449450104566002602e604a6ea8c0a4c098dd5181498131baa300f3026375400313259800980518131baa0018992cc0040062b300130143027375400313259800800c08a264b30010018992cc00400604913259800800c09626644b3001001813c4c966002003028899912cc00400605513259800800c0ae05702b815c4c966002606e007159800980f98191baa00a8992cc00400605b13259800800c0ba05d02e81744cc89660020030308992cc004006063031818c4cc89660020030338992cc00400606903481a40d226644b300100181b44c96600200303781bc0de264b30013043003899810809912cc00400a26604602444b3001002898171982280e25eb8226464b30010018992cc00400607f03f81fc0fe265300100389802982580341010251bae001412c608a00503e81f40fa07c8250c10c004c11800904444c8c96600200303c81e40f20791332259800800c6600200313005304900681f204681f40fa07d03e41286eb8004c10c00904818208009822001208481c2080375a003037410c608000281f0dd7000981f8012080303d00140ec6eb4004c0f000a06281e8c0e80050381bae001303900240e8606e00281a8c0ccdd500540b103040b10341bae00140dc60680028190dd5800981980140a205102840d060620028178dd58009818001409604b02540c4605c0028160c0b800a047023811c08d02f1816000a054302837540030214095021810c0860428168c0a8c09cdd5000c54cc0952412e65787065637420496e6c696e65446174756d28737461746529203d20696e7075742e6f75747075742e646174756d00164090600c604c6ea8c03cc098dd5000c54cc09124013a65787065637420536372697074285f29203d20696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c0016408d14c103d87a8000408c6050002813088966002602260486ea800e264b300100180144c96600200313259800800c012264b30010018acc004c0b400a330010038cc00400600d0054021005402100540a9005802c01600a8170c0ac0050291815801400e007003801a0583029001409c604a6ea800e002811088966002602060466ea800e264b300100180144c96600200313259800800c012264b30010018992cc004c0a40062b3001300d302800180344c966002605c00913259800980b800c56600260566ea801a01300840b1159800980e000c4c9660020030098992cc00400601500a80544c966002606400700c805a05e375a00300a40c8605e0028168c0acdd50034566002601c00315980098159baa006804c02102c4021028205040a060526ea801600e8158c068c0a0005026401902a1baa001802c01600b00540b460540028140c0a800a007003801c00d02b1814000a04c3024375400700140849bad301f0034888966002005017899912cc00400603313259800981380144c8c8cc88c8c94cc09cdcc99800804a4500153302737326600200e9110014a0600200244464b30010038991919911980500119b8a488101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100920605980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c815102a1bac302d002375a60560026466ec0dd418158009ba7302c001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6060003337149101023a200098008054c0c400600a805100a181980144ca6002015303000199b8a489023a200098008054c0c4006600e66008008004805100a18198012062303300140c066e29220102207d0000340b46eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a0028039006205a3758007133006375a0060051323371491102682700329800800cc04cdc68014cdc52450127000044004444b30013371000490004400626466453001006980c002ccdc599b800025980099b88002480522903045206e40bc66e2ccdc0000acc004cdc4000a402914818229037205e004401866e0c00520203370c002901019b8e00400240b06eb800d0301b8a4881022c20002232330010010032259800980a800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003409881308888c8cc004004014896600200310058992cc004006266008605e00400d133005302f0023300300300140b4605e0028160c0040048896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801902340690241812800a046302300230240024084301f00230193754603860326ea8018dc024003153301749011a65787065637420536f6d6528646174756d29203d20646174756d0016405880b06e952000301437540106e1d2000805402a01500a4064602a002602a602c00260226ea800e2c8070602000260166ea8046293454cc02524011856616c696461746f722072657475726e65642066616c7365001365640201", + "hash": "132dae0e530c75546b5a65d8db2835316ab856877659f2f9cc12032d" + }, + { + "title": "osi_accept_pyth.osi_accept_pyth.spend", + "datum": { + "title": "_datum", + "schema": { + "$ref": "#/definitions/Data" + } + }, + "redeemer": { + "title": "redeemer", + "schema": { + "$ref": "#/definitions/Data" + } + }, + "compiledCode": "587e01010029800aba2aba1aab9eaab9dab9cab9a48888896600264653001300700198039804000cc01c0092225980099b8748008c020dd500144c8cc892898058009805980600098049baa0028a50401830070013004375400f149a2a660049211856616c696461746f722072657475726e65642066616c7365001365640041", + "hash": "c5a309b71891d69bf076062a68fe46f9c54470128bb9fa0f2ac957d5" + }, + { + "title": "osi_accept_pyth.osi_accept_pyth.else", + "redeemer": { + "schema": {} + }, + "compiledCode": "587e01010029800aba2aba1aab9eaab9dab9cab9a48888896600264653001300700198039804000cc01c0092225980099b8748008c020dd500144c8cc892898058009805980600098049baa0028a50401830070013004375400f149a2a660049211856616c696461746f722072657475726e65642066616c7365001365640041", + "hash": "c5a309b71891d69bf076062a68fe46f9c54470128bb9fa0f2ac957d5" + } + ], + "definitions": { + "Data": { + "title": "Data", + "description": "Any Plutus data." + }, + "Int": { + "dataType": "integer" + }, + "Pairs": { + "title": "Pairs", + "dataType": "map", + "keys": { + "$ref": "#/definitions/cardano~1address~1PaymentCredential" + }, + "values": { + "$ref": "#/definitions/Int" + } + }, + "aiken/crypto/ScriptHash": { + "title": "ScriptHash", + "dataType": "bytes" + }, + "aiken/crypto/VerificationKeyHash": { + "title": "VerificationKeyHash", + "dataType": "bytes" + }, + "cardano/address/PaymentCredential": { + "title": "PaymentCredential", + "description": "A general structure for representing an on-chain `Credential`.\n\n Credentials are always one of two kinds: a direct public/private key\n pair, or a script (native or Plutus).", + "anyOf": [ + { + "title": "VerificationKey", + "dataType": "constructor", + "index": 0, + "fields": [ + { + "$ref": "#/definitions/aiken~1crypto~1VerificationKeyHash" + } + ] + }, + { + "title": "Script", + "dataType": "constructor", + "index": 1, + "fields": [ + { + "$ref": "#/definitions/aiken~1crypto~1ScriptHash" + } + ] + } + ] + }, + "cardano/assets/AssetName": { + "title": "AssetName", + "dataType": "bytes" + }, + "cardano/assets/PolicyId": { + "title": "PolicyId", + "dataType": "bytes" + }, + "types/AssetClass": { + "title": "AssetClass", + "anyOf": [ + { + "title": "AssetClass", + "dataType": "constructor", + "index": 0, + "fields": [ + { + "title": "policy_id", + "$ref": "#/definitions/cardano~1assets~1PolicyId" + }, + { + "title": "asset_name", + "$ref": "#/definitions/cardano~1assets~1AssetName" + } + ] + } + ] + }, + "types/OsiDatum": { + "title": "OsiDatum", + "anyOf": [ + { + "title": "OsiDatum", + "dataType": "constructor", + "index": 0, + "fields": [ + { + "title": "timestamp", + "$ref": "#/definitions/Int" + }, + { + "title": "payees", + "$ref": "#/definitions/Pairs" + }, + { + "title": "quote_token", + "$ref": "#/definitions/types~1AssetClass" + } + ] + } + ] + }, + "types/OsiRedeemers": { + "title": "OsiRedeemers", + "anyOf": [ + { + "title": "Fund", + "dataType": "constructor", + "index": 0, + "fields": [] + }, + { + "title": "Payout", + "dataType": "constructor", + "index": 1, + "fields": [] + } + ] + } + } +} \ No newline at end of file diff --git a/lazer/cardano/our-project/on-chain/validators/osi_accept_pyth.ak b/lazer/cardano/our-project/on-chain/validators/osi_accept_pyth.ak new file mode 100644 index 00000000..e0176877 --- /dev/null +++ b/lazer/cardano/our-project/on-chain/validators/osi_accept_pyth.ak @@ -0,0 +1,15 @@ +use aiken/collection/list +use cardano/assets.{PolicyId} +use cardano/transaction.{OutputReference, Transaction} +use pyth +use types/u32 + +validator osi_accept_pyth(){//pyth_id: PolicyId) { + spend(_datum: Option, redeemer: Data, _utxo: OutputReference, self: Transaction) { + True + } + + else(_) { + False + } +} From 32638cddc660e0990140585f1e6fd14248355059 Mon Sep 17 00:00:00 2001 From: sofia-bobbiesi Date: Sun, 22 Mar 2026 15:37:04 -0300 Subject: [PATCH 09/21] feat: update README --- lazer/cardano/our-project/README.md | 31 ++++++++++++++++++-- lazer/cardano/our-project/off-chain/bun.lock | 3 ++ 2 files changed, 32 insertions(+), 2 deletions(-) diff --git a/lazer/cardano/our-project/README.md b/lazer/cardano/our-project/README.md index 449851ba..0ffa5377 100644 --- a/lazer/cardano/our-project/README.md +++ b/lazer/cardano/our-project/README.md @@ -1,3 +1,30 @@ -# Our submission for Pythathon +# OSI: Oracle-Settled Invoice -## Idea +Oracle-Settled Invoice is a Cardano escrow that locks one asset and settles a liability indexed to another using Pyth prices. + +## Quick Start + +### 1. Build contracts + +```bash +cd on-chain +aiken build -t verbose -f all +``` + +### 2. Install off-chain deps + +```bash +cd off-chain +bun install +``` + +### 3. Set environment variables + +Create a `.env` file in the `off-chain` directory with the following variables: + +- `LAZER_TOKEN` - The asset name of the Lazer token that provides access to Pyth. +- `WALLET_MNEMONIC` - The mnemonic phrase for the wallet that will be used to interact with the contracts. This wallet should have some ADA on the preprod network. +- `PYTH_POLICY_ID` - The policy ID of the Pyth on the Cardano preprod network. +- `BLOCKFROST_BASE_URL` - The base URL for the Blockfrost API. For preprod, this is `https://cardano-preprod.blockfrost.io/api/v0`. +- `BLOCKFROST_PROJECT_ID` - Your Blockfrost project ID for the preprod network. +- `BASE_CURRENCY` - The number of decimal places for the base currency (e.g., 8 for USDT). diff --git a/lazer/cardano/our-project/off-chain/bun.lock b/lazer/cardano/our-project/off-chain/bun.lock index 322923a3..994bb32e 100644 --- a/lazer/cardano/our-project/off-chain/bun.lock +++ b/lazer/cardano/our-project/off-chain/bun.lock @@ -6,6 +6,7 @@ "name": "off-chain", "dependencies": { "@evolution-sdk/evolution": "^0.3.30", + "@pythnetwork/pyth-lazer-cardano-js": "^0.1.0", "@pythnetwork/pyth-lazer-sdk": "^6.2.1", "dotenv": "^17.3.1", }, @@ -82,6 +83,8 @@ "@parcel/watcher-win32-x64": ["@parcel/watcher-win32-x64@2.5.6", "", { "os": "win32", "cpu": "x64" }, "sha512-hbQlYcCq5dlAX9Qx+kFb0FHue6vbjlf0FrNzSKdYK2APUf7tGfGxQCk2ihEREmbR6ZMc0MVAD5RIX/41gpUzTw=="], + "@pythnetwork/pyth-lazer-cardano-js": ["@pythnetwork/pyth-lazer-cardano-js@0.1.0", "", { "dependencies": { "@evolution-sdk/evolution": "^0.3.29" } }, "sha512-KfddoNfkRf+a6Qqf1zKGkMyKK9Mgib6P5hLVApc6qB3XpLkzk9GfPLOc9q2uqCF0EOjzPRDRTMF9beKMxyAK4Q=="], + "@pythnetwork/pyth-lazer-sdk": ["@pythnetwork/pyth-lazer-sdk@6.2.1", "", { "dependencies": { "@isaacs/ttlcache": "^1.4.1", "buffer": "^6.0.3", "isomorphic-ws": "^5.0.0", "ts-log": "^2.2.7", "ws": "^8.19.0" } }, "sha512-+d+ATApOBF5z3YvqwP/5R42xr9vWpLOvbAFWDWldYiltlH8eU9PaGgeczgCs3it3STpnL+8jTXsUBhqv9T94Aw=="], "@scure/base": ["@scure/base@1.2.6", "", {}, "sha512-g/nm5FgUa//MCj1gV09zTJTaM6KBAHqLN907YVQqf7zC49+DcO4B1so4ZX07Ef10Twr6nuqYEH9GEggFXA4Fmg=="], From 08b70495eea9fa2e73d60a126205952d996dff78 Mon Sep 17 00:00:00 2001 From: sofia-bobbiesi Date: Sun, 22 Mar 2026 15:38:58 -0300 Subject: [PATCH 10/21] fix: simplify aiken build command in README --- lazer/cardano/our-project/README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lazer/cardano/our-project/README.md b/lazer/cardano/our-project/README.md index 0ffa5377..01a70f39 100644 --- a/lazer/cardano/our-project/README.md +++ b/lazer/cardano/our-project/README.md @@ -8,7 +8,7 @@ Oracle-Settled Invoice is a Cardano escrow that locks one asset and settles a li ```bash cd on-chain -aiken build -t verbose -f all +aiken build ``` ### 2. Install off-chain deps From 466109a6793c2edf06bc2f8cdb304633dd1a78cd Mon Sep 17 00:00:00 2001 From: sofia-bobbiesi Date: Sun, 22 Mar 2026 15:43:28 -0300 Subject: [PATCH 11/21] feat: enhance project description in README --- lazer/cardano/our-project/README.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/lazer/cardano/our-project/README.md b/lazer/cardano/our-project/README.md index 01a70f39..194e7b34 100644 --- a/lazer/cardano/our-project/README.md +++ b/lazer/cardano/our-project/README.md @@ -2,6 +2,8 @@ Oracle-Settled Invoice is a Cardano escrow that locks one asset and settles a liability indexed to another using Pyth prices. +This project is a practical blueprint for building oracle-driven settlement flows on Cardano with Pyth. It combines Aiken on-chain validators with a typeScript off-chain client, so you can go from contract logic to real transaction execution with minimal setup. + ## Quick Start ### 1. Build contracts From cf9619bc48f7a3b752f9b79355f7d02dda9948c9 Mon Sep 17 00:00:00 2001 From: Lola Aimar Date: Sun, 22 Mar 2026 15:45:09 -0300 Subject: [PATCH 12/21] added checks and modified types --- lazer/cardano/our-project/on-chain/aiken.lock | 2 +- .../on-chain/lib/{types.ak => otypes.ak} | 5 +- .../cardano/our-project/on-chain/lib/utils.ak | 18 ++ .../cardano/our-project/on-chain/plutus.json | 158 ++++++++++++++++++ .../our-project/on-chain/validators/osi.ak | 112 ++++++------- 5 files changed, 231 insertions(+), 64 deletions(-) rename lazer/cardano/our-project/on-chain/lib/{types.ak => otypes.ak} (72%) create mode 100644 lazer/cardano/our-project/on-chain/lib/utils.ak create mode 100644 lazer/cardano/our-project/on-chain/plutus.json diff --git a/lazer/cardano/our-project/on-chain/aiken.lock b/lazer/cardano/our-project/on-chain/aiken.lock index fddd4f7f..efd852ae 100644 --- a/lazer/cardano/our-project/on-chain/aiken.lock +++ b/lazer/cardano/our-project/on-chain/aiken.lock @@ -24,4 +24,4 @@ requirements = [] source = "github" [etags] -"pyth-network/pyth-lazer-cardano@main" = [{ secs_since_epoch = 1774193504, nanos_since_epoch = 607975386 }, "a46dacd97a22eb07feeaf966d48c3116c8249ddc836705656e3135cea285bcfc"] +"pyth-network/pyth-lazer-cardano@main" = [{ secs_since_epoch = 1774204238, nanos_since_epoch = 559791297 }, "a46dacd97a22eb07feeaf966d48c3116c8249ddc836705656e3135cea285bcfc"] diff --git a/lazer/cardano/our-project/on-chain/lib/types.ak b/lazer/cardano/our-project/on-chain/lib/otypes.ak similarity index 72% rename from lazer/cardano/our-project/on-chain/lib/types.ak rename to lazer/cardano/our-project/on-chain/lib/otypes.ak index 0e56f98a..800627dd 100644 --- a/lazer/cardano/our-project/on-chain/lib/types.ak +++ b/lazer/cardano/our-project/on-chain/lib/otypes.ak @@ -1,7 +1,5 @@ -use aiken/crypto.{Signature} use cardano/address.{PaymentCredential} use cardano/assets.{AssetName, PolicyId} -use pyth.{PriceUpdate} pub type AssetClass { policy_id: PolicyId, @@ -9,9 +7,8 @@ pub type AssetClass { } pub type OsiDatum { - timestamp: Int, + deadline: Int, payees: Pairs, - quote_token: AssetClass, } pub type OsiRedeemers { diff --git a/lazer/cardano/our-project/on-chain/lib/utils.ak b/lazer/cardano/our-project/on-chain/lib/utils.ak new file mode 100644 index 00000000..5b6b98f2 --- /dev/null +++ b/lazer/cardano/our-project/on-chain/lib/utils.ak @@ -0,0 +1,18 @@ +use aiken/math/rational.{Rational} +use aiken/option +use pyth.{Feed} + +pub fn quote_price_multiplier(base_feed: Feed, quote_feed: Feed) -> Rational { + expect Some(b_exponent) = base_feed.exponent + expect Some(q_exponent) = quote_feed.exponent + + expect Some(multiplier) = + rational.from_int(10) |> rational.pow(b_exponent - q_exponent) + + expect Some(base_price) = option.flatten(base_feed.price) + expect Some(quote_price) = option.flatten(quote_feed.price) + + expect Some(price_ratio) = rational.new(base_price, quote_price) + + rational.mul(price_ratio, multiplier) +} diff --git a/lazer/cardano/our-project/on-chain/plutus.json b/lazer/cardano/our-project/on-chain/plutus.json new file mode 100644 index 00000000..149e188a --- /dev/null +++ b/lazer/cardano/our-project/on-chain/plutus.json @@ -0,0 +1,158 @@ +{ + "preamble": { + "title": "delfines/on-chain", + "description": "Aiken contracts for project 'delfines/on-chain'", + "version": "0.0.0", + "plutusVersion": "v3", + "compiler": { + "name": "Aiken", + "version": "v1.1.21+42babe5" + }, + "license": "Apache-2.0" + }, + "validators": [ + { + "title": "osi.oracle_settled_invoice.spend", + "datum": { + "title": "datum", + "schema": { + "$ref": "#/definitions/otypes~1OsiDatum" + } + }, + "redeemer": { + "title": "redeemer", + "schema": { + "$ref": "#/definitions/otypes~1OsiRedeemers" + } + }, + "parameters": [ + { + "title": "base_currency", + "schema": { + "$ref": "#/definitions/Int" + } + }, + { + "title": "pyth_policy", + "schema": { + "$ref": "#/definitions/cardano~1assets~1PolicyId" + } + } + ], + "compiledCode": "591c400101002229800aba4aba2aba1aba0aab9faab9eaab9dab9a9bad0039bae002488888888896600264653001300a00198051805800cdc3a4005300a0024888966002600460146ea800e2653001300f00198079808000cdc3a400091119912cc004c00c0062b3001301137540150028b20248acc004c0200062b3001301137540150028b20248b201e403c33001300f375400b2301330140019b91489009b8f4881009ba548001222223322598009804180a9baa00f899192cc004c03cc05cdd5000c4c966002603a003198009bab3009301937540073009301937546038003223371200400280222c80d0c8c8cc004004018896600200314bd7044cc896600264b30013015301d375400313371e00c6eb8c084c078dd5000c52820383020301d37546040603a6ea800a26603e00466008008003133004004001406c603c002603e00280e0dd7180d980c1baa0018b202c301a301737546034602e6ea8004c8cc004004dd6180d004112cc0040062d1325980099baf301c3019375400201b1300930193754003133003003301d002405c603600280ca2b300130083015375401319800980b1baa3019301637540132301a301b301b0019b80480066e1d200448888c966002603e0031323232598009811000c660026042005223322300f33024375066e08dd698128011bad302500133024375066e08dd6981298130011bad302530260014bd7018101baa002302037540032300c330213750002660429810101004bd704dc0a4001230223023302330233023302330233023001488888c9660026530010019bab3028302900fa514004444b30010028800c4c8ca600200b302d004992cc004c070c0a4dd5000c56600266e24c8cdc19bad302e001375a605c605e00260546ea8c0b4c0a8dd5000994c004006646600200203044b30010018a5eb822646644b30013027302f3754005133005005001899819181998181baa0023300500500140b8b30013375e6062605c6ea8c0c4c0b8dd500080344c06ccc0c0c078c0b8dd5000a5eb82298103d87a800040b06064004606000281729000200222259800801440063300100398188014cdc019199119801001000912cc00400600713233225980098110014566002604200510018032062899802802981b8022062375c60600026eb4c0c4004c0cc0050311919198008009bab30330052259800800c00e2646644b300130230028acc004c08800a200300640c9133005005303800440c86eb8c0c4004dd59819000981a000a06414bd6f7b6300a4000002801902e440122941028459028192cc004c084c0a4dd5000c530103d87a80008980b998161980598051bad302a003302d302a375400297ae040a0646644b300133710004900044c064cc0b8c064cc0b8dd41805800998171ba8300b0024bd7025eb822b300133710900000144c064cc0b8c064cc0b8dd4000998171ba80024bd7025eb822980103d87a800040a88150dd698168009bad302d302e0013029375400c8028c09c004c0a8009028456600266e1cdd6981398121baa0060218acc004cc89660026464b3001301a0018a518acc004c07c006264b3001302030283754603260526ea8c0b0c0a4dd5002c4cdc480080244cdc4000802204e375a605660506ea800a2941026204c302637540026052604c6ea8c0a4c098dd500144c8c966002603400314a1159800980f800c4c966002604060506ea8c064c0a4dd5180c98149baa005899b89004001899b88004001409c6eb4c0acc0a0dd50014528a04c4098604c6ea8004c0a4c098dd5180b18131baa0028a504090600460486ea8068dd6981398121baa0098991919912cc004c07c00a264b3001302030283754603260526ea8c064c0a4dd5002c4cdc400080144cdc4800801204e375a605660506ea800e2b3001300f0028a508a5140988130c094dd50009bad3029010302830253754602a604a6ea8004c008c090dd500d452820448a50408914a081126002444b30013371000290004520008acc004c0600062900144c966002603266e1800920048cc0040126002007337060049002200889800cc004012600200733706601e0049002200840946e0800902420489181398141814181418141814000c966002602c60466ea80062604e60486ea80062980103d87a80004089302600648888cc8966002603660506ea8006264b3001301c3029375400313259800980e98151baa0018992cc004c078c0acdd5000c4c966002603e60586ea8006264b30013020302d375400313300f3031302e37540026062605c6ea80122c8160cc8966002604200314c103d87a80008acc004cdc4000a40011301c33031301c330313750601c004660626ea0c0380052f5c097ae08980e19818980e198189ba800233031375000297ae04bd70205a40b46eb4c0c0c0b4dd50011bad3030302d37540031640ac600e603860586ea801a2c8150c018c06cc0acdd5006c5902919194c004dd69817800cdd698179818000ccdc09bad302f302c37540086eb4c0bcc0b0dd5001a444b3001598009810801c4cdc4800a400114a0816a298103d87a80008acc004cdc4240000031301c33031301c33031375066010006002660626ea0cc0200080052f5c097ae08acc004cdc4000a40011301c33031301c33031375066010004601c002660626ea0cc02000cc0380052f5c097ae08a610ad8799fd8799f0101ffff0040b4816902d0c0acdd50009805240291640a0600a60526ea800e2c8138c010010c00cc09cdd5004916407c60420026eb0c014c070dd5000980f000c5901c1919199119912cc004c048c07cdd500144c966002602660406ea80062646600a00244b300100289919800800802112cc004006297ae08998144c004dc4a4001371890024dc024007371290044dc624001371890044dc02400e91111111991198081191acc004cdc79bae30340014890475d3c793008cc004888c8cc00cdd6981c0009bae3038303900130030019b89480426e3120109b804803e600e90082444446600a464660746ea0cde5250375c6076002660746076607800297ae05980098029b8d00189981c9ba930020013303937526600860066e340040052f5c11640d44646600e4660766ea0cdc7000a4000660766ea4cc008c084dc6800800a5eb808cc0208cc0f0dd419b8e00148000cc0f0dd49980198111b8d0010014bd701119191981f98151981f9ba80073303f375000a6607e608000297ae03303f304030410014bd7018008012cc004c05400a2653001001a5eb820068008889660026060003123233042374e002660846ea40092f5c065300100180252f5c080088896600200510018cc00400e608c005330443045002001400c821a246530010059982118218008024c0a000e6eb8c10cc1100050054c004c8cc108dd419bca4a06eb8c10c004cc108c10cc1100052f5c0b30013016371a00313304137526022002660826ea4cc050c04cdc6800800a5eb822c81ea4466086004660866ea40052f5c1370e90034dc3a4010911119191919803194c0040066eb0c12800a60686609260940106609298103d87a8000330494c103d87a8000330494c103d87a8000330494c103d87a8000330494c103d87a8000330494c103d87a8000330494c103d87a8000330494c103d87a8000330494c103d87a8000330494c103d87a8000330494c103d87a8000330494c103d87a8000330494c103d87a80004bd70200222259800801440063300100398268014c8c966002607a00313230393304e304f0013304e30393304e304f304c375400697ae030503050001304b37540071598009821000c4c8c8c0e8cc13cc140008cc13cc140004cc13cc0e8cc13cc140c134dd500225eb80c144c144004c140004c12cdd5001c56600260640031323232303b33050305100333050305100233050305100133050303b330503051304e375400a97ae03052305200130510013050001304b37540071598009805000c4c8c8c8c8c0f0cc144c148010cc144c14800ccc144c148008cc144c148004cc144c0f0cc144c148c13cdd500325eb80c14cc14c004c148004c144004c140004c12cdd5001c566002601200313232323232303d33052305300533052305300433052305300333052305300233052305300133052303d3305230533050375400e97ae0305430540013053001305200130510013050001304b375400715980099b87480280062646464646464607c660a660a800c660a660a800a660a660a8008660a660a8006660a660a8004660a660a8002660a6607c660a660a860a26ea80212f5c060aa60aa00260a800260a600260a400260a200260a000260966ea800e2b30013370e9006000c4c8c8c8c8c8c8c8c0fccc150c15401ccc150c154018cc150c154014cc150c154010cc150c15400ccc150c154008cc150c154004cc150c0fccc150c154c148dd5004a5eb80c158c158004c154004c150004c14c004c148004c144004c140004c12cdd5001c56600266e1d200e0018991919191919191918201982a982b0041982a982b0039982a982b0031982a982b0029982a982b0021982a982b0019982a982b0011982a982b0009982a98201982a982b18299baa00a4bd70182b982b800982b000982a800982a000982980098290009828800982800098259baa0038acc004cdc3a4020003132323232323232323230413305630570093305630570083305630570073305630570063305630570053305630570043305630570033305630570023305630570013305630413305630573054375401697ae03058305800130570013056001305500130540013053001305200130510013050001304b375400715980099b87480480062646464646464646464646084660ae60b0014660ae60b0012660ae60b0010660ae60b000e660ae60b000c660ae60b000a660ae60b0008660ae60b0006660ae60b0004660ae60b0002660ae6084660ae60b060aa6ea80312f5c060b260b200260b000260ae00260ac00260aa00260a800260a600260a400260a200260a000260966ea800e2b30013370e900a000c4c8c8c8c8c8c8c8c8c8c8c8c10ccc160c16402ccc160c164028cc160c164024cc160c164020cc160c16401ccc160c164018cc160c164014cc160c164010cc160c16400ccc160c164008cc160c164004cc160c10ccc160c164c158dd5006a5eb80c168c168004c164004c160004c15c004c158004c154004c150004c14c004c148004c144004c140004c12cdd5001c56600266e1d2016001899191919191919191919191918221982c982d0061982c982d0059982c982d0051982c982d0049982c982d0041982c982d0039982c982d0031982c982d0029982c982d0021982c982d0019982c982d0011982c982d0009982c98221982c982d182b9baa00e4bd70182d982d800982d000982c800982c000982b800982b000982a800982a000982980098290009828800982800098259baa003899191919191919191919191918221982c982d0061982c982d0059982c982d0051982c982d0049982c982d0041982c982d0039982c982d0031982c982d0029982c982d0021982c982d0019982c982d0011982c982d0009982c982d182d8009982c98221982c982d182b9baa00e4bd7025eb80c168004c164004c160004c15c004c158004c154004c150004c14c004c148004c144004c140004c12cdd5001a0924124824904920924124824904920924124824904918249baa001304c002400c8250dd718249825000991acc004c08000a2653001001a5eb82006800888966002607600312323304d374e0026609a6ea40092f5c065300100180252f5c080088896600200510018cc00400e60a20053304f3050002001400c8272246530010059982698270008024c0cc00e6eb8c138c13c0050051802800a08e8b2088375c60926094006530012232598009800a40211598009800a4001148002266e39220108010204081020408000002411d1598009800a408113370490400219801801980a80144cdc124101010100406600600666e00009203f411c8238dc4000c888c8cc130c00cdd698268009982618269827000a5eb80c00c006660906ea0cdc7000a4000660906ea4cc03cc0b8dc6800800a5eb8122232329800919802919198281ba833794940dd718288009982818289829000a5eb816600260366e3400626609e6ea4c060004cc13cdd49980d180c9b8d0010014bd7045904b1191801acc004c100006298103d87a80008981d998281ba80014bd70209830030019bad304e003911191acc006600260826eb4c14800694294504d44cc02000c8c014c0f4cc148dd4000a5eb822601e600898103d87a800041346eb8c148c14c004cc140dd419b8e00148000cc140dd49980b981b1b8d0010014bd7024446b30013040002898019181e19828800a5eb822b3001304500289801919ba548008cc1440052f5c1159800981a80144c00c8cdd2a4008660a200297ae08acc004c03400a26600e464660a46ea0cde5250375c60a6002660a460a660a800297ae059800981a9b8d0018998289ba9302200133051375266050604e6e340040052f5c1164134466e95200633051375000297ae08acc004c03000a26600e464660a46ea0cde5250375c60a6002660a460a660a800297ae059800981a9b8d0018998289ba9302200133051375266050604e6e340040052f5c1164134466e952008330513750b3001337100029040400244006266e04004c0192020413497ae08acc004cdc3a40140051300323374a900519828800a5eb822b30013370e900600144cc0048cdd2a4018660a200297ae0232330523750600c6eb4c14c004cc148c14cc1500052f5c064660a46ea0cde5250375c60a6002660a460a660a800297ae059800980e9b8d0018998289ba9301a0013305137526603860366e340040052f5c116413515980099b874803800a266002466e95200e330510014bd70119198291ba833794940dd71829800998291829982a000a5eb8166002603a6e340062660a26ea4c068004cc144dd49980e180d9b8d0010014bd7045904d456600266e1d2010002899800919ba548040cc1440052f5c0464660a46ea0cde5250375c60a6002660a460a660a800297ae059800980e9b8d0018998289ba9301a0013305137526603860366e340040052f5c116413515980099b874804800a246464660a666e9520123305330540014bd7019829982a182a800a5eb80c004008cc0208c8cc14cdd419bca4a06eb8c150004cc14cc150c1540052f5c0b30013036371a00313305237526046002660a46ea4cc0a4c0a0dc6800800a5eb822c8270966002608400314c103d87980008acc004c11c006298103d87a80008acc004c0dc006298103d87b80008acc004c03c006298103d87c80008acc004c038006298103d87d80008b209c4138827104e209c8acc004cdc3a40280051300323374a900a19828800a5eb822b30013370e900b00144c00c8cdd2a402c660a200297ae08acc004cdc3a403000513300123374a900c19828800a5eb808c8cc148dd419bca4a06eb8c14c004cc148c14cc1500052f5c0b3001301d371a00313305137526034002660a26ea4cc070c06cdc6800800a5eb822c826a2c826104c20984130826104c20984130826104c209841308260dd718289829003096600266e2000520808080808080808080028800c4cdc0800980124100028248c00c00c6eb4c11c004c8cc118dd419b8e00148000cc118dd49980698161b8d0010014bd701bae3046304700420788b20723718900122c8178dd7181a181a800acc004c01cdc6800c4cc0c8dd49801000998191ba9330053004371a00200297ae08b205c375c6030605e6ea8cc0408c8d6600266e3cdd7181a000a44104b9011a82008919191919191919911981e18139981e181e8039981e1ba90013303c303d0024bd701981e181e981f00125eb80d660026024003125980099b89002371a00313303b37526601e004002660766ea66002005337026e3400400a002b8c25eb822c81ba2c81b0dd7181d981e0011bae303b004375a607400264660726ea0cde5250375c6074002660726074607600297ae059800980e1b8d00189981c1ba930090013303837526601e601c6e340040052f5c11640d06eb8c0e0c0e4004d6600294624b30013371290201b8d00189981b9ba93300b48100004cc0dcdd4cc005204099b80371a002901fc0057184bd704590334590321bae30373038001300100259800a51892cc004cdc4a4100026e3400626606a6ea4cc0252080010013303537533001482000666e00dc6800a40ff0015c612f5c11640c51640c11640bc6eb8c0d0c0d400566002600e6e340062660646ea4c008004cc0c8dd49980298021b8d0010014bd7045902e1bae303200a300348010c00d2008198010011815000a04e899180118148019bae302700240946eb0c090c084dd5000c5901f19199119801001000912cc004006298103d87a80008992cc004cdd78021811800c4c044cc098c0900052f5c113300300330280024088604c0028120dd5981218129812981298129812981298129812981298109baa0173374a90021981119ba548008cc088c08cc090c090c090c080dd5181198101baa0024bd7025eb822c80f0c8cc004004dd61807980f9baa0152259800800c530103d87a80008992cc006600266ebc00530103d87a8000a50a51407d10018998018019812801203e3259800cc004dd5980898109baa301130213754003374c6604666ec0dd480e9ba6330233376098010b4a50797468205374617465004c010101004bd6f7b63025eb7bdb1824494500c4566002603060406ea8c090c084dd5181218109baa30113021375400313259800980498109baa0018992cc004c054c088dd5000c4c8c8c8c8cc8966002605a00713259800980e18149baa0018991919194c004dd69818800cdd718188024dd69818801cdd7181880124444b3001303600589980a9bab303500e225980080144cc05c030896600200513023330380144bd7044c8c8cc070c0dc0084c00cc0f0010dd7181b800981c801206e899191980d181b00109801981d0021bae3034001303700240d51640cc30310013030001302f001302a37540031640a0605800d1640a86eb8c0a8004dd5981500118150009814800981400098119baa0018b2042302530223754003164080601460426ea8c044c084dd5000c5901f4530103d87a8000407c6046002810888c966002601e6eb8c090c0940062604800316407c600400244b30013010301d3754005132323259800981280144cc018c09000c4cc0180040122c8110c08c004c08c004c078dd500145901c11191980080080191198018009801001112cc004c03cc070dd500144c8c8c96600260480051323259800980a000c56600260446ea800a00d16408d159800980c800c4c8c96600260500050088b204a375a604c00260446ea800a2b300130090018acc004c088dd5001401a2c811a2c8101020204030203754002604600716408464b300130200018acc004c018c07c0062d13017301f00140791640846ea8c088004c088004c074dd500145901b1b894801116405080a0dd6180b980c180c0029112cc00400a2942265300132598009805980c1baa00189bad3019301c3756603860326ea800629000202e301b0019baf301b301c0019bab003488966002003159800980100344cc01400d20008a5040651325980099baf301b0014c10140008acc004cc018010dd6980e180f9bab301c001898019ba630200028a5040691598009980300224001130030078a50406880d0c07800501c0ca6002003004911980e0011980e1ba60014bd7020022225980080144cc005300103d87a80004bd6f7b63044ca60026eb8c0680066eacc06c006603e0069112cc004c03400e2b3001300c0038998029805998101ba60024bd70000c4cc01530103d87a8000006407119800803c006446600e0046604466ec0dd48029ba6004001401c80e0603a00480da29422942294101c0c038dd50040c02cdd5001c590090c028004c014dd5005c52689b2b200601", + "hash": "1436b3f855cecbdced6d3bed4b2bf87737ada2afd9b2028624021b6e" + }, + { + "title": "osi.oracle_settled_invoice.else", + "redeemer": { + "schema": {} + }, + "parameters": [ + { + "title": "base_currency", + "schema": { + "$ref": "#/definitions/Int" + } + }, + { + "title": "pyth_policy", + "schema": { + "$ref": "#/definitions/cardano~1assets~1PolicyId" + } + } + ], + "compiledCode": "591c400101002229800aba4aba2aba1aba0aab9faab9eaab9dab9a9bad0039bae002488888888896600264653001300a00198051805800cdc3a4005300a0024888966002600460146ea800e2653001300f00198079808000cdc3a400091119912cc004c00c0062b3001301137540150028b20248acc004c0200062b3001301137540150028b20248b201e403c33001300f375400b2301330140019b91489009b8f4881009ba548001222223322598009804180a9baa00f899192cc004c03cc05cdd5000c4c966002603a003198009bab3009301937540073009301937546038003223371200400280222c80d0c8c8cc004004018896600200314bd7044cc896600264b30013015301d375400313371e00c6eb8c084c078dd5000c52820383020301d37546040603a6ea800a26603e00466008008003133004004001406c603c002603e00280e0dd7180d980c1baa0018b202c301a301737546034602e6ea8004c8cc004004dd6180d004112cc0040062d1325980099baf301c3019375400201b1300930193754003133003003301d002405c603600280ca2b300130083015375401319800980b1baa3019301637540132301a301b301b0019b80480066e1d200448888c966002603e0031323232598009811000c660026042005223322300f33024375066e08dd698128011bad302500133024375066e08dd6981298130011bad302530260014bd7018101baa002302037540032300c330213750002660429810101004bd704dc0a4001230223023302330233023302330233023001488888c9660026530010019bab3028302900fa514004444b30010028800c4c8ca600200b302d004992cc004c070c0a4dd5000c56600266e24c8cdc19bad302e001375a605c605e00260546ea8c0b4c0a8dd5000994c004006646600200203044b30010018a5eb822646644b30013027302f3754005133005005001899819181998181baa0023300500500140b8b30013375e6062605c6ea8c0c4c0b8dd500080344c06ccc0c0c078c0b8dd5000a5eb82298103d87a800040b06064004606000281729000200222259800801440063300100398188014cdc019199119801001000912cc00400600713233225980098110014566002604200510018032062899802802981b8022062375c60600026eb4c0c4004c0cc0050311919198008009bab30330052259800800c00e2646644b300130230028acc004c08800a200300640c9133005005303800440c86eb8c0c4004dd59819000981a000a06414bd6f7b6300a4000002801902e440122941028459028192cc004c084c0a4dd5000c530103d87a80008980b998161980598051bad302a003302d302a375400297ae040a0646644b300133710004900044c064cc0b8c064cc0b8dd41805800998171ba8300b0024bd7025eb822b300133710900000144c064cc0b8c064cc0b8dd4000998171ba80024bd7025eb822980103d87a800040a88150dd698168009bad302d302e0013029375400c8028c09c004c0a8009028456600266e1cdd6981398121baa0060218acc004cc89660026464b3001301a0018a518acc004c07c006264b3001302030283754603260526ea8c0b0c0a4dd5002c4cdc480080244cdc4000802204e375a605660506ea800a2941026204c302637540026052604c6ea8c0a4c098dd500144c8c966002603400314a1159800980f800c4c966002604060506ea8c064c0a4dd5180c98149baa005899b89004001899b88004001409c6eb4c0acc0a0dd50014528a04c4098604c6ea8004c0a4c098dd5180b18131baa0028a504090600460486ea8068dd6981398121baa0098991919912cc004c07c00a264b3001302030283754603260526ea8c064c0a4dd5002c4cdc400080144cdc4800801204e375a605660506ea800e2b3001300f0028a508a5140988130c094dd50009bad3029010302830253754602a604a6ea8004c008c090dd500d452820448a50408914a081126002444b30013371000290004520008acc004c0600062900144c966002603266e1800920048cc0040126002007337060049002200889800cc004012600200733706601e0049002200840946e0800902420489181398141814181418141814000c966002602c60466ea80062604e60486ea80062980103d87a80004089302600648888cc8966002603660506ea8006264b3001301c3029375400313259800980e98151baa0018992cc004c078c0acdd5000c4c966002603e60586ea8006264b30013020302d375400313300f3031302e37540026062605c6ea80122c8160cc8966002604200314c103d87a80008acc004cdc4000a40011301c33031301c330313750601c004660626ea0c0380052f5c097ae08980e19818980e198189ba800233031375000297ae04bd70205a40b46eb4c0c0c0b4dd50011bad3030302d37540031640ac600e603860586ea801a2c8150c018c06cc0acdd5006c5902919194c004dd69817800cdd698179818000ccdc09bad302f302c37540086eb4c0bcc0b0dd5001a444b3001598009810801c4cdc4800a400114a0816a298103d87a80008acc004cdc4240000031301c33031301c33031375066010006002660626ea0cc0200080052f5c097ae08acc004cdc4000a40011301c33031301c33031375066010004601c002660626ea0cc02000cc0380052f5c097ae08a610ad8799fd8799f0101ffff0040b4816902d0c0acdd50009805240291640a0600a60526ea800e2c8138c010010c00cc09cdd5004916407c60420026eb0c014c070dd5000980f000c5901c1919199119912cc004c048c07cdd500144c966002602660406ea80062646600a00244b300100289919800800802112cc004006297ae08998144c004dc4a4001371890024dc024007371290044dc624001371890044dc02400e91111111991198081191acc004cdc79bae30340014890475d3c793008cc004888c8cc00cdd6981c0009bae3038303900130030019b89480426e3120109b804803e600e90082444446600a464660746ea0cde5250375c6076002660746076607800297ae05980098029b8d00189981c9ba930020013303937526600860066e340040052f5c11640d44646600e4660766ea0cdc7000a4000660766ea4cc008c084dc6800800a5eb808cc0208cc0f0dd419b8e00148000cc0f0dd49980198111b8d0010014bd701119191981f98151981f9ba80073303f375000a6607e608000297ae03303f304030410014bd7018008012cc004c05400a2653001001a5eb820068008889660026060003123233042374e002660846ea40092f5c065300100180252f5c080088896600200510018cc00400e608c005330443045002001400c821a246530010059982118218008024c0a000e6eb8c10cc1100050054c004c8cc108dd419bca4a06eb8c10c004cc108c10cc1100052f5c0b30013016371a00313304137526022002660826ea4cc050c04cdc6800800a5eb822c81ea4466086004660866ea40052f5c1370e90034dc3a4010911119191919803194c0040066eb0c12800a60686609260940106609298103d87a8000330494c103d87a8000330494c103d87a8000330494c103d87a8000330494c103d87a8000330494c103d87a8000330494c103d87a8000330494c103d87a8000330494c103d87a8000330494c103d87a8000330494c103d87a8000330494c103d87a8000330494c103d87a80004bd70200222259800801440063300100398268014c8c966002607a00313230393304e304f0013304e30393304e304f304c375400697ae030503050001304b37540071598009821000c4c8c8c0e8cc13cc140008cc13cc140004cc13cc0e8cc13cc140c134dd500225eb80c144c144004c140004c12cdd5001c56600260640031323232303b33050305100333050305100233050305100133050303b330503051304e375400a97ae03052305200130510013050001304b37540071598009805000c4c8c8c8c8c0f0cc144c148010cc144c14800ccc144c148008cc144c148004cc144c0f0cc144c148c13cdd500325eb80c14cc14c004c148004c144004c140004c12cdd5001c566002601200313232323232303d33052305300533052305300433052305300333052305300233052305300133052303d3305230533050375400e97ae0305430540013053001305200130510013050001304b375400715980099b87480280062646464646464607c660a660a800c660a660a800a660a660a8008660a660a8006660a660a8004660a660a8002660a6607c660a660a860a26ea80212f5c060aa60aa00260a800260a600260a400260a200260a000260966ea800e2b30013370e9006000c4c8c8c8c8c8c8c8c0fccc150c15401ccc150c154018cc150c154014cc150c154010cc150c15400ccc150c154008cc150c154004cc150c0fccc150c154c148dd5004a5eb80c158c158004c154004c150004c14c004c148004c144004c140004c12cdd5001c56600266e1d200e0018991919191919191918201982a982b0041982a982b0039982a982b0031982a982b0029982a982b0021982a982b0019982a982b0011982a982b0009982a98201982a982b18299baa00a4bd70182b982b800982b000982a800982a000982980098290009828800982800098259baa0038acc004cdc3a4020003132323232323232323230413305630570093305630570083305630570073305630570063305630570053305630570043305630570033305630570023305630570013305630413305630573054375401697ae03058305800130570013056001305500130540013053001305200130510013050001304b375400715980099b87480480062646464646464646464646084660ae60b0014660ae60b0012660ae60b0010660ae60b000e660ae60b000c660ae60b000a660ae60b0008660ae60b0006660ae60b0004660ae60b0002660ae6084660ae60b060aa6ea80312f5c060b260b200260b000260ae00260ac00260aa00260a800260a600260a400260a200260a000260966ea800e2b30013370e900a000c4c8c8c8c8c8c8c8c8c8c8c8c10ccc160c16402ccc160c164028cc160c164024cc160c164020cc160c16401ccc160c164018cc160c164014cc160c164010cc160c16400ccc160c164008cc160c164004cc160c10ccc160c164c158dd5006a5eb80c168c168004c164004c160004c15c004c158004c154004c150004c14c004c148004c144004c140004c12cdd5001c56600266e1d2016001899191919191919191919191918221982c982d0061982c982d0059982c982d0051982c982d0049982c982d0041982c982d0039982c982d0031982c982d0029982c982d0021982c982d0019982c982d0011982c982d0009982c98221982c982d182b9baa00e4bd70182d982d800982d000982c800982c000982b800982b000982a800982a000982980098290009828800982800098259baa003899191919191919191919191918221982c982d0061982c982d0059982c982d0051982c982d0049982c982d0041982c982d0039982c982d0031982c982d0029982c982d0021982c982d0019982c982d0011982c982d0009982c982d182d8009982c98221982c982d182b9baa00e4bd7025eb80c168004c164004c160004c15c004c158004c154004c150004c14c004c148004c144004c140004c12cdd5001a0924124824904920924124824904920924124824904918249baa001304c002400c8250dd718249825000991acc004c08000a2653001001a5eb82006800888966002607600312323304d374e0026609a6ea40092f5c065300100180252f5c080088896600200510018cc00400e60a20053304f3050002001400c8272246530010059982698270008024c0cc00e6eb8c138c13c0050051802800a08e8b2088375c60926094006530012232598009800a40211598009800a4001148002266e39220108010204081020408000002411d1598009800a408113370490400219801801980a80144cdc124101010100406600600666e00009203f411c8238dc4000c888c8cc130c00cdd698268009982618269827000a5eb80c00c006660906ea0cdc7000a4000660906ea4cc03cc0b8dc6800800a5eb8122232329800919802919198281ba833794940dd718288009982818289829000a5eb816600260366e3400626609e6ea4c060004cc13cdd49980d180c9b8d0010014bd7045904b1191801acc004c100006298103d87a80008981d998281ba80014bd70209830030019bad304e003911191acc006600260826eb4c14800694294504d44cc02000c8c014c0f4cc148dd4000a5eb822601e600898103d87a800041346eb8c148c14c004cc140dd419b8e00148000cc140dd49980b981b1b8d0010014bd7024446b30013040002898019181e19828800a5eb822b3001304500289801919ba548008cc1440052f5c1159800981a80144c00c8cdd2a4008660a200297ae08acc004c03400a26600e464660a46ea0cde5250375c60a6002660a460a660a800297ae059800981a9b8d0018998289ba9302200133051375266050604e6e340040052f5c1164134466e95200633051375000297ae08acc004c03000a26600e464660a46ea0cde5250375c60a6002660a460a660a800297ae059800981a9b8d0018998289ba9302200133051375266050604e6e340040052f5c1164134466e952008330513750b3001337100029040400244006266e04004c0192020413497ae08acc004cdc3a40140051300323374a900519828800a5eb822b30013370e900600144cc0048cdd2a4018660a200297ae0232330523750600c6eb4c14c004cc148c14cc1500052f5c064660a46ea0cde5250375c60a6002660a460a660a800297ae059800980e9b8d0018998289ba9301a0013305137526603860366e340040052f5c116413515980099b874803800a266002466e95200e330510014bd70119198291ba833794940dd71829800998291829982a000a5eb8166002603a6e340062660a26ea4c068004cc144dd49980e180d9b8d0010014bd7045904d456600266e1d2010002899800919ba548040cc1440052f5c0464660a46ea0cde5250375c60a6002660a460a660a800297ae059800980e9b8d0018998289ba9301a0013305137526603860366e340040052f5c116413515980099b874804800a246464660a666e9520123305330540014bd7019829982a182a800a5eb80c004008cc0208c8cc14cdd419bca4a06eb8c150004cc14cc150c1540052f5c0b30013036371a00313305237526046002660a46ea4cc0a4c0a0dc6800800a5eb822c8270966002608400314c103d87980008acc004c11c006298103d87a80008acc004c0dc006298103d87b80008acc004c03c006298103d87c80008acc004c038006298103d87d80008b209c4138827104e209c8acc004cdc3a40280051300323374a900a19828800a5eb822b30013370e900b00144c00c8cdd2a402c660a200297ae08acc004cdc3a403000513300123374a900c19828800a5eb808c8cc148dd419bca4a06eb8c14c004cc148c14cc1500052f5c0b3001301d371a00313305137526034002660a26ea4cc070c06cdc6800800a5eb822c826a2c826104c20984130826104c20984130826104c209841308260dd718289829003096600266e2000520808080808080808080028800c4cdc0800980124100028248c00c00c6eb4c11c004c8cc118dd419b8e00148000cc118dd49980698161b8d0010014bd701bae3046304700420788b20723718900122c8178dd7181a181a800acc004c01cdc6800c4cc0c8dd49801000998191ba9330053004371a00200297ae08b205c375c6030605e6ea8cc0408c8d6600266e3cdd7181a000a44104b9011a82008919191919191919911981e18139981e181e8039981e1ba90013303c303d0024bd701981e181e981f00125eb80d660026024003125980099b89002371a00313303b37526601e004002660766ea66002005337026e3400400a002b8c25eb822c81ba2c81b0dd7181d981e0011bae303b004375a607400264660726ea0cde5250375c6074002660726074607600297ae059800980e1b8d00189981c1ba930090013303837526601e601c6e340040052f5c11640d06eb8c0e0c0e4004d6600294624b30013371290201b8d00189981b9ba93300b48100004cc0dcdd4cc005204099b80371a002901fc0057184bd704590334590321bae30373038001300100259800a51892cc004cdc4a4100026e3400626606a6ea4cc0252080010013303537533001482000666e00dc6800a40ff0015c612f5c11640c51640c11640bc6eb8c0d0c0d400566002600e6e340062660646ea4c008004cc0c8dd49980298021b8d0010014bd7045902e1bae303200a300348010c00d2008198010011815000a04e899180118148019bae302700240946eb0c090c084dd5000c5901f19199119801001000912cc004006298103d87a80008992cc004cdd78021811800c4c044cc098c0900052f5c113300300330280024088604c0028120dd5981218129812981298129812981298129812981298109baa0173374a90021981119ba548008cc088c08cc090c090c090c080dd5181198101baa0024bd7025eb822c80f0c8cc004004dd61807980f9baa0152259800800c530103d87a80008992cc006600266ebc00530103d87a8000a50a51407d10018998018019812801203e3259800cc004dd5980898109baa301130213754003374c6604666ec0dd480e9ba6330233376098010b4a50797468205374617465004c010101004bd6f7b63025eb7bdb1824494500c4566002603060406ea8c090c084dd5181218109baa30113021375400313259800980498109baa0018992cc004c054c088dd5000c4c8c8c8c8cc8966002605a00713259800980e18149baa0018991919194c004dd69818800cdd718188024dd69818801cdd7181880124444b3001303600589980a9bab303500e225980080144cc05c030896600200513023330380144bd7044c8c8cc070c0dc0084c00cc0f0010dd7181b800981c801206e899191980d181b00109801981d0021bae3034001303700240d51640cc30310013030001302f001302a37540031640a0605800d1640a86eb8c0a8004dd5981500118150009814800981400098119baa0018b2042302530223754003164080601460426ea8c044c084dd5000c5901f4530103d87a8000407c6046002810888c966002601e6eb8c090c0940062604800316407c600400244b30013010301d3754005132323259800981280144cc018c09000c4cc0180040122c8110c08c004c08c004c078dd500145901c11191980080080191198018009801001112cc004c03cc070dd500144c8c8c96600260480051323259800980a000c56600260446ea800a00d16408d159800980c800c4c8c96600260500050088b204a375a604c00260446ea800a2b300130090018acc004c088dd5001401a2c811a2c8101020204030203754002604600716408464b300130200018acc004c018c07c0062d13017301f00140791640846ea8c088004c088004c074dd500145901b1b894801116405080a0dd6180b980c180c0029112cc00400a2942265300132598009805980c1baa00189bad3019301c3756603860326ea800629000202e301b0019baf301b301c0019bab003488966002003159800980100344cc01400d20008a5040651325980099baf301b0014c10140008acc004cc018010dd6980e180f9bab301c001898019ba630200028a5040691598009980300224001130030078a50406880d0c07800501c0ca6002003004911980e0011980e1ba60014bd7020022225980080144cc005300103d87a80004bd6f7b63044ca60026eb8c0680066eacc06c006603e0069112cc004c03400e2b3001300c0038998029805998101ba60024bd70000c4cc01530103d87a8000006407119800803c006446600e0046604466ec0dd48029ba6004001401c80e0603a00480da29422942294101c0c038dd50040c02cdd5001c590090c028004c014dd5005c52689b2b200601", + "hash": "1436b3f855cecbdced6d3bed4b2bf87737ada2afd9b2028624021b6e" + } + ], + "definitions": { + "Int": { + "dataType": "integer" + }, + "Pairs": { + "title": "Pairs", + "dataType": "map", + "keys": { + "$ref": "#/definitions/cardano~1address~1PaymentCredential" + }, + "values": { + "$ref": "#/definitions/Int" + } + }, + "aiken/crypto/ScriptHash": { + "title": "ScriptHash", + "dataType": "bytes" + }, + "aiken/crypto/VerificationKeyHash": { + "title": "VerificationKeyHash", + "dataType": "bytes" + }, + "cardano/address/PaymentCredential": { + "title": "PaymentCredential", + "description": "A general structure for representing an on-chain `Credential`.\n\n Credentials are always one of two kinds: a direct public/private key\n pair, or a script (native or Plutus).", + "anyOf": [ + { + "title": "VerificationKey", + "dataType": "constructor", + "index": 0, + "fields": [ + { + "$ref": "#/definitions/aiken~1crypto~1VerificationKeyHash" + } + ] + }, + { + "title": "Script", + "dataType": "constructor", + "index": 1, + "fields": [ + { + "$ref": "#/definitions/aiken~1crypto~1ScriptHash" + } + ] + } + ] + }, + "cardano/assets/PolicyId": { + "title": "PolicyId", + "dataType": "bytes" + }, + "otypes/OsiDatum": { + "title": "OsiDatum", + "anyOf": [ + { + "title": "OsiDatum", + "dataType": "constructor", + "index": 0, + "fields": [ + { + "title": "deadline", + "$ref": "#/definitions/Int" + }, + { + "title": "payees", + "$ref": "#/definitions/Pairs" + } + ] + } + ] + }, + "otypes/OsiRedeemers": { + "title": "OsiRedeemers", + "anyOf": [ + { + "title": "Fund", + "dataType": "constructor", + "index": 0, + "fields": [] + }, + { + "title": "Payout", + "dataType": "constructor", + "index": 1, + "fields": [] + } + ] + } + } +} \ No newline at end of file diff --git a/lazer/cardano/our-project/on-chain/validators/osi.ak b/lazer/cardano/our-project/on-chain/validators/osi.ak index 92b1472d..78f88e69 100644 --- a/lazer/cardano/our-project/on-chain/validators/osi.ak +++ b/lazer/cardano/our-project/on-chain/validators/osi.ak @@ -1,40 +1,20 @@ use aiken/collection/list use aiken/collection/pairs -use aiken/option -use cardano/address.{PaymentCredential, Script} -use cardano/assets.{AssetName, PolicyId} +use aiken/interval +use aiken/math/rational +use cardano/address.{Script} +use cardano/assets.{PolicyId, lovelace_of} use cardano/transaction.{ Output, OutputReference, Transaction, find_script_outputs, } +use otypes.{Fund, OsiDatum, OsiRedeemers, Payout} use pyth.{PriceUpdate, get_updates} -use types.{Fund, OsiDatum, OsiRedeemers, Payout} - -fn expected_quote_amount( - base_amount: Int, - price: Int, - exponent: Int, - base_currency: Int, -) -> Int { - todo -} - -fn expected_for_credential( - payees: Pairs, - payee_cred: PaymentCredential, - price: Int, - exponent: Int, - base_currency: Int, -) -> Option { - pairs.get_first(payees, payee_cred) - |> option.map( - fn(base_amount) { - expected_quote_amount(base_amount, price, exponent, base_currency) - }, - ) -} +use types/u32 +use types/u64 +use utils.{quote_price_multiplier} /// Oracle-settled Invoice -validator oracleSettled(base_currency: Int, pyth_policy: PolicyId) { +validator oracle_settled_invoice(base_currency: Int, pyth_policy: PolicyId) { spend( datum: Option, redeemer: OsiRedeemers, @@ -53,39 +33,53 @@ validator oracleSettled(base_currency: Int, pyth_policy: PolicyId) { Payout -> { expect Some(datum) = datum - let OsiDatum { timestamp, payees, quote_token } = datum + let OsiDatum { deadline, payees } = datum + + expect [price_update] = get_updates(pyth_policy, tx) + + expect [feed1, feed2] = price_update.feeds + + let base_currency_feed_match = + u32.as_int(feed1.feed_id) == base_currency + + let quote_multiplier = quote_price_multiplier(feed1, feed2) - expect [feed1, feed2] = get_updates(pyth_policy, tx) + let feed_time_within_range = + tx.validity_range + |> interval.contains(u64.as_int(price_update.timestamp_us)) - trace feed1 - trace feed2 + let payment_before_deadline = + tx.validity_range + |> interval.is_entirely_before(deadline) - // REVIEW - // list.all( - // outputs, - // fn(out) { - // let actual = - // assets.quantity_of( - // out.value, - // quote_token.policy_id, - // quote_token.asset_name, - // ) - // let payee_cred = out.address.payment_credential - // when - // expected_for_credential( - // payees, - // payee_cred, - // price, - // exponent, - // base_currency, - // ) - // is { - // Some(expected) -> actual == expected - // None -> False - // } - // }, - // ) - False + let payouts_match = + payees + |> pairs.foldl( + True, + fn(k, v, r) { + let outputs_value = + outputs + |> list.filter_map( + fn(out) { + if out.address.payment_credential == k { + Some(out.value) + } else { + None + } + }, + ) + |> list.foldl( + 0, + fn(value, accumulator) { + lovelace_of(value) + accumulator + }, + ) + expect Some(expected_payout) = + rational.div(rational.from_int(v), quote_multiplier) + (outputs_value >= rational.floor(expected_payout))? && r + }, + ) + payouts_match? && base_currency_feed_match? && feed_time_within_range? && payment_before_deadline? } } } From 3ac5d10a6e212cf58cd3bf8785e92d6781ea6f9f Mon Sep 17 00:00:00 2001 From: a-osiecki Date: Sun, 22 Mar 2026 16:23:01 -0300 Subject: [PATCH 13/21] add double price fetch and handler onchain --- lazer/cardano/our-project/off-chain/README.md | 3 +- lazer/cardano/our-project/off-chain/e2e.ts | 32 ++++++++---- .../our-project/off-chain/package.json | 2 + .../off-chain/scripts/evaluate-ogmios.ts | 52 +++++++++++++++++++ .../scripts/fetch-ada-usdt-update.ts | 19 +++++++ .../off-chain/scripts/spend-validator-utxo.ts | 51 ++++++++++-------- lazer/cardano/our-project/off-chain/tx | 1 + lazer/cardano/our-project/on-chain/aiken.lock | 2 +- .../cardano/our-project/on-chain/plutus.json | 36 +++++++++++-- .../on-chain/validators/osi_accept_pyth.ak | 33 ++++++++++-- 10 files changed, 188 insertions(+), 43 deletions(-) create mode 100644 lazer/cardano/our-project/off-chain/scripts/evaluate-ogmios.ts create mode 100644 lazer/cardano/our-project/off-chain/scripts/fetch-ada-usdt-update.ts create mode 100644 lazer/cardano/our-project/off-chain/tx diff --git a/lazer/cardano/our-project/off-chain/README.md b/lazer/cardano/our-project/off-chain/README.md index 9aad5369..8fd07e4d 100644 --- a/lazer/cardano/our-project/off-chain/README.md +++ b/lazer/cardano/our-project/off-chain/README.md @@ -11,6 +11,8 @@ Minimal e2e commands: ```bash bun run create-validator-utxo bun run spend-validator-utxo +bun run evaluate-ogmios +bun run fetch-ada-usdt-update ``` You can also pass an explicit out-ref as `#`. @@ -21,7 +23,6 @@ Required environment variables: - `WALLET_MNEMONIC` - `PYTH_POLICY_ID` - `LAZER_TOKEN` -- `FEED_ID` (defaults to `16`) - `VALIDATOR_LOVELACE` (defaults to `5000000`) - provider config: - `PROVIDER_TYPE=blockfrost` with `BLOCKFROST_BASE_URL` and `BLOCKFROST_PROJECT_ID` diff --git a/lazer/cardano/our-project/off-chain/e2e.ts b/lazer/cardano/our-project/off-chain/e2e.ts index 0ee5804b..6ae45187 100644 --- a/lazer/cardano/our-project/off-chain/e2e.ts +++ b/lazer/cardano/our-project/off-chain/e2e.ts @@ -7,6 +7,7 @@ import dotenv from "dotenv"; import { Address, Assets, + Bytes, Cardano, Data, ScriptHash, @@ -24,16 +25,17 @@ import { type PriceFeedProperty, } from "@pythnetwork/pyth-lazer-sdk"; -dotenv.config(); - const OFF_CHAIN_DIR = dirname(fileURLToPath(import.meta.url)); +dotenv.config({ path: join(OFF_CHAIN_DIR, ".env") }); + const PLUTUS_JSON_PATH = join(OFF_CHAIN_DIR, "../on-chain/plutus.json"); const VALIDATOR_TITLE = "osi_accept_pyth.osi_accept_pyth.spend"; +const ADA_USD_FEED_ID = 16; +const USDT_USD_FEED_ID = 8; const DEFAULT_LAZER_PROPERTIES = [ "price", "exponent", - "confidence", "feedUpdateTimestamp", ] as const satisfies readonly PriceFeedProperty[]; @@ -61,6 +63,7 @@ export type OsiRuntime = { providerClient: ProviderOnlyClient; network: NetworkName; feedId: number; + queryFeedIds: number[]; pythPolicyId: string; fundingLovelace: bigint; validator: { @@ -79,7 +82,8 @@ export type PythSignedUpdate = { export async function loadRuntimeFromEnv(): Promise { const network = readNetwork(); const pythPolicyId = readRequiredEnv("PYTH_POLICY_ID"); - const feedId = readIntEnv("FEED_ID", 16); + const feedId = ADA_USD_FEED_ID; + const queryFeedIds = [ADA_USD_FEED_ID, USDT_USD_FEED_ID]; const fundingLovelace = readBigIntEnv("VALIDATOR_LOVELACE", 5_000_000n); const providerConfig = readProviderConfig(); const client = createSigningClientFromEnv(network, providerConfig); @@ -87,6 +91,7 @@ export async function loadRuntimeFromEnv(): Promise { const validator = await loadParameterizedValidator({ network, pythPolicyId, + baseAssetId: BigInt(USDT_USD_FEED_ID), }); return { @@ -94,6 +99,7 @@ export async function loadRuntimeFromEnv(): Promise { providerClient, network, feedId, + queryFeedIds, pythPolicyId, fundingLovelace, validator, @@ -181,7 +187,7 @@ export function parseCliOutRef(argument: string | undefined): { export async function fetchLatestSignedUpdate( token: string, - feedId: number, + feedIds: readonly number[], ): Promise { const client = await PythLazerClient.create({ token, @@ -194,7 +200,7 @@ export async function fetchLatestSignedUpdate( try { const latest = await client.getLatestPrice({ channel: "fixed_rate@200ms", - priceFeedIds: [feedId], + priceFeedIds: [...feedIds], properties: [...DEFAULT_LAZER_PROPERTIES], formats: ["solana"], jsonBinaryEncoding: "hex", @@ -254,9 +260,11 @@ export function makeLovelace(amount: bigint): Assets.Assets { async function loadParameterizedValidator({ network, pythPolicyId, + baseAssetId, }: { network: NetworkName; pythPolicyId: string; + baseAssetId: bigint; }) { const blueprintRaw = await readFile(PLUTUS_JSON_PATH, "utf8"); const blueprint = JSON.parse(blueprintRaw) as Blueprint; @@ -270,9 +278,12 @@ async function loadParameterizedValidator({ const scriptBytesHex = Array.isArray(validator.parameters) && validator.parameters.length > 0 - ? UPLC.applyParamsToScript(validator.compiledCode, [ - Buffer.from(pythPolicyId, "hex"), - ]) + ? UPLC.applySingleCborEncoding( + UPLC.applyParamsToScript(validator.compiledCode, [ + Buffer.from(pythPolicyId, "hex"), + baseAssetId, + ]), + ) : validator.compiledCode; const script = new Cardano.PlutusV3.PlutusV3({ @@ -282,7 +293,8 @@ async function loadParameterizedValidator({ const scriptHashHex = ScriptHash.toHex(scriptHash); if ( - (!Array.isArray(validator.parameters) || validator.parameters.length === 0) && + (!Array.isArray(validator.parameters) || + validator.parameters.length === 0) && validator.hash && validator.hash !== scriptHashHex ) { diff --git a/lazer/cardano/our-project/off-chain/package.json b/lazer/cardano/our-project/off-chain/package.json index 73ed5cd5..e3bd905c 100644 --- a/lazer/cardano/our-project/off-chain/package.json +++ b/lazer/cardano/our-project/off-chain/package.json @@ -4,6 +4,8 @@ "private": true, "scripts": { "create-validator-utxo": "bun run scripts/create-validator-utxo.ts", + "evaluate-ogmios": "bun run scripts/evaluate-ogmios.ts", + "fetch-ada-usdt-update": "bun run scripts/fetch-ada-usdt-update.ts", "spend-validator-utxo": "bun run scripts/spend-validator-utxo.ts", "typecheck": "bun x tsc --noEmit" }, diff --git a/lazer/cardano/our-project/off-chain/scripts/evaluate-ogmios.ts b/lazer/cardano/our-project/off-chain/scripts/evaluate-ogmios.ts new file mode 100644 index 00000000..1aba8dea --- /dev/null +++ b/lazer/cardano/our-project/off-chain/scripts/evaluate-ogmios.ts @@ -0,0 +1,52 @@ +const endpoint = + readFirstEnv("OGMIOS_ENDPOINT", "OGMIOS_URL") ?? + "https://cardano-preprod-v6.ogmios-m1.dmtr.host"; +const apiKey = + readFirstEnv("DMTR_API_KEY_OGMIOS", "OGMIOS_API_KEY", "DMTR_API_KEY") ?? + "ogmios12mr2qnpkh8g7wyrkq6v"; + +const txCbor = process.argv[2]?.trim(); + +if (!txCbor) { + throw new Error("Expected tx CBOR hex as the first CLI argument"); +} + +if (!/^[0-9a-fA-F]+$/.test(txCbor) || txCbor.length % 2 !== 0) { + throw new Error("CBOR must be an even-length hex string"); +} + +const response = await fetch(endpoint, { + method: "POST", + headers: { + "Content-Type": "application/json", + "dmtr-api-key": apiKey, + }, + body: JSON.stringify({ + jsonrpc: "2.0", + method: "evaluateTransaction", + params: { + transaction: { cbor: txCbor }, + }, + }), +}); + +const responseText = await response.text(); + +console.log(`Ogmios endpoint: ${endpoint}`); +console.log(`HTTP status: ${response.status}`); +console.log(responseText); + +if (!response.ok) { + process.exitCode = 1; +} + +function readFirstEnv(...names: string[]): string | undefined { + for (const name of names) { + const value = process.env[name]?.trim(); + if (value) { + return value; + } + } + + return undefined; +} diff --git a/lazer/cardano/our-project/off-chain/scripts/fetch-ada-usdt-update.ts b/lazer/cardano/our-project/off-chain/scripts/fetch-ada-usdt-update.ts new file mode 100644 index 00000000..b7361693 --- /dev/null +++ b/lazer/cardano/our-project/off-chain/scripts/fetch-ada-usdt-update.ts @@ -0,0 +1,19 @@ +import { + fetchLatestSignedUpdate, + readLazerToken, +} from "../e2e.ts"; + +const ADA_USD_FEED_ID = 16; +const USDT_USD_FEED_ID = 8; + +const lazerToken = readLazerToken(); +const update = await fetchLatestSignedUpdate(lazerToken, [ + ADA_USD_FEED_ID, + USDT_USD_FEED_ID, +]); + +console.log(`Queried feed ids: ${ADA_USD_FEED_ID}, ${USDT_USD_FEED_ID}`); +console.log("Signed update hex:"); +console.log(update.signedUpdateHex); +console.log("Parsed payload:"); +console.dir(update.parsed, { depth: null, colors: true }); diff --git a/lazer/cardano/our-project/off-chain/scripts/spend-validator-utxo.ts b/lazer/cardano/our-project/off-chain/scripts/spend-validator-utxo.ts index c19c82f1..4ebdb582 100644 --- a/lazer/cardano/our-project/off-chain/scripts/spend-validator-utxo.ts +++ b/lazer/cardano/our-project/off-chain/scripts/spend-validator-utxo.ts @@ -1,10 +1,14 @@ import { Address, + Effect, ScriptHash, Transaction, UTxO, } from "@evolution-sdk/evolution"; -import { getPythScriptHash, getPythState } from "@pythnetwork/pyth-lazer-cardano-js"; +import { + getPythScriptHash, + getPythState, +} from "@pythnetwork/pyth-lazer-cardano-js"; import { fetchLatestSignedUpdate, @@ -29,44 +33,45 @@ const validatorUtxo = targetOutRef targetOutRef.transactionIdHex, targetOutRef.index, ) - : await loadFirstValidatorUtxo( - runtime.client, - runtime.validator.address, - ); + : await loadFirstValidatorUtxo(runtime.client, runtime.validator.address); const pythState = await getPythState( runtime.pythPolicyId, runtime.providerClient, ); const pythWithdrawScriptHash = getPythScriptHash(pythState); -const pythUpdate = await fetchLatestSignedUpdate(lazerToken, runtime.feedId); +const pythUpdate = await fetchLatestSignedUpdate(lazerToken, runtime.queryFeedIds); const now = BigInt(Date.now()); const loggingEvaluator = { evaluate: ( tx: Transaction.Transaction, additionalUtxos: ReadonlyArray | undefined, - ) => { - console.log("Evaluation tx cbor hex:"); - console.log(Transaction.toCBORHex(tx)); + ) => + Effect.gen(function* () { + console.log("Evaluation tx cbor hex:"); + console.log(Transaction.toCBORHex(tx)); - if (additionalUtxos && additionalUtxos.length > 0) { - console.log("Evaluation additional UTxOs:"); - console.dir(additionalUtxos.map(UTxO.toOutRefString), { - depth: null, - colors: true, - }); - } + if (additionalUtxos && additionalUtxos.length > 0) { + console.log("Evaluation additional UTxOs:"); + console.dir(additionalUtxos.map(UTxO.toOutRefString), { + depth: null, + colors: true, + }); + } - return runtime.providerClient.Effect.evaluateTx(tx); - }, + return yield* runtime.providerClient.Effect.evaluateTx(tx); + }), } as const; -console.log(`Validator address: ${Address.toBech32(runtime.validator.address)}`); +console.log( + `Validator address: ${Address.toBech32(runtime.validator.address)}`, +); console.log(`Spent validator input: ${UTxO.toOutRefString(validatorUtxo)}`); console.log(`Pyth state input: ${UTxO.toOutRefString(pythState)}`); console.log(`Pyth withdraw script hash: ${pythWithdrawScriptHash}`); -console.log(`Feed id: ${runtime.feedId}`); +console.log(`Primary feed id: ${runtime.feedId}`); +console.log(`Query feed ids: ${runtime.queryFeedIds.join(", ")}`); console.log(`Signed update hex: ${pythUpdate.signedUpdateHex}`); console.dir({ parsed: pythUpdate.parsed }, { depth: null, colors: true }); @@ -95,13 +100,13 @@ try { label: "osi-accept-pyth", }) .build({ - debug: true, evaluator: loggingEvaluator as never, }) .then((built) => built.sign()) - .then((signed) => signed.submit()); + // .then((signed) => signed.submit()); - console.log(`Spend tx hash: ${formatTxHash(txHash)}`); + console.log("Transaction built and signed successfully."); + // console.log(`Spend tx hash: ${formatTxHash(txHash)}`); } catch (error) { logDetailedError(error); throw error; diff --git a/lazer/cardano/our-project/off-chain/tx b/lazer/cardano/our-project/off-chain/tx new file mode 100644 index 00000000..2ffacca9 --- /dev/null +++ b/lazer/cardano/our-project/off-chain/tx @@ -0,0 +1 @@ +84ab00d9010281825820bc78ec9fff74d582c178ed38dd2ef588b6f2b91dd2cdf367f0b26b9dd2f9fb4f00018182583900bdc0cf3d072f55b4f6261a419db53170d633c42964ab0b9378c46316897863cdf9ba430f79ede738df7bc1963c69a2a5e348e3e0bd8e86f71a00431a79021a000930c7031a071086ec05a1581df068a8972304546f254cbf625996c3a9e2ac860f77a9fcd4ee9f73907b00081a071086740b5820afbc4447373fbdd95ddb485dfa85ffdfec76212c1dfbb7ae93794f8be707d4770dd9010281825820bc78ec9fff74d582c178ed38dd2ef588b6f2b91dd2cdf367f0b26b9dd2f9fb4f011082583900bdc0cf3d072f55b4f6261a419db53170d633c42964ab0b9378c46316897863cdf9ba430f79ede738df7bc1963c69a2a5e348e3e0bd8e86f71a82f03873111a004c4b4012d901028182582049f981daf1f5a5dc1a59357b6ebd2b7f3962f7d47a73ba048a033a123e2539ed00a205a282030082815f5840b9011a823c69336e42722240bcdd63c68b27acf159da63e9a6fec1438240d5c55fdc34636aa84808f16af626a7b17174227e2c15462ab9724ac117bbae4323215840197fd50c80efc1f480c5615af3fb673d42287e993da9fbc3506b6e41dfa32950820c2e6c440075d3c793002c2ab4a14d060003021000000003005bde80010000582a000004f8ff0c01002c2ab4a14d060008000000030072cef5050000000004f8ff0c01002c2ab4a14d0600ff820000820000821082000007d901028159216c59216901010032229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0039bad00248888888888a60022a6600892012a65787065637420757064617465733a204c6973743c4279746541727261793e203d2072656465656d657200168a998022491a6578706563742073746174653a2050797468203d20737461746500168a99802249906578706563742046656564207b0a2020202020666565645f69643a20666565645f6964322c0a202020202070726963653a20536f6d6528536f6d652870726963655f3229292c0a2020202020666565645f7570646174655f74696d657374616d703a20536f6d6528536f6d652874696d657374616d705f3229292c0a20202020202e2e0a2020207d203d20666565643200168a99802249996578706563742046656564207b0a2020202020666565645f69643a206164615f70726963655f666565645f69642c0a202020202070726963653a20536f6d6528536f6d652870726963655f3129292c0a2020202020666565645f7570646174655f74696d657374616d703a20536f6d6528536f6d652874696d657374616d705f3129292c0a20202020202e2e0a2020207d203d20666565643100168a998022491d657870656374205b66656564312c2066656564325d203d20666565647300168a998022492c657870656374205b7570646174655d203d206765745f7570646174657328707974685f69642c2073656c6629001648888896600264653001301100198089809000cdc3a400530110024888966002600460226ea800e3300130123754007371290004dc3a40009114c004c06000e6030603200798009b89480126e1d200491191980080080191198018009801001488c96600266e3d220100375c603660380031301b0018a9980b24811b6578706563742028612c20235b5d29203d2073656c66287372632900164054600400323019301a0019180c980d180d000cdd2a400091111111919192cc004c02cc078dd5000c4c9660026018603e6ea8006264b300100180dc06e2646601600244b300100289919800800802112cc004006297ae08998144c004dc62400937009001cdc4a4011371890004dc62401137009003a44444466446602c4646b30013371e6eb8c0cc0052210475d3c793008cc004888c8cc00cdd6981b8009bae3037303800130030019b89480426e3120109b804803e600e90082444446600a464660726ea0cde5250375c6074002660726074607600297ae05980098029b8d00189981c1ba930020013303837526600860066e340040052f5c1153303449124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e74001640cc46644660104660766ea0cdc7000a4000660766ea4cc00cc008dc6800800a5eb808cc0248cc0f0dd419b8e00148000cc0f0dd49980218019b8d0010014bd701119191981f98111981f9ba80083303f375000a6607e608000297ae03303f304030410014bd7018008012cc004c0a000a2653001001a5eb820068008889660026054003123233042374e002660846ea40092f5c065300100180252f5c080088896600200510018cc00400e608c005330443045002001400c821a246530010059982118218008024c02400e6eb8c10cc1100050054c004c8cc108dd419bca4a06eb8c10c004cc108c10cc1100052f5c0b30013017371a00313304137526024002660826ea4cc054c050dc6800800a5eb822a6607a92124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e74001640f1223304300233043375200297ae09b874801a6e1d200848888c8c8c8cc018ca600200337586094005302c33049304a008330494c103d87a8000330494c103d87a8000330494c103d87a8000330494c103d87a8000330494c103d87a8000330494c103d87a8000330494c103d87a8000330494c103d87a8000330494c103d87a8000330494c103d87a8000330494c103d87a8000330494c103d87a8000330494c103d87a80004bd70200222259800801440063300100398268014c8c966002606e00313230313304e304f0013304e30313304e304f304c375400697ae030503050001304b3754007159800981d800c4c8c8c0c8cc13cc140008cc13cc140004cc13cc0c8cc13cc140c134dd500225eb80c144c144004c140004c12cdd5001c566002606a00313232323033330503051003330503051002330503051001330503033330503051304e375400a97ae03052305200130510013050001304b37540071598009805000c4c8c8c8c8c0d0cc144c148010cc144c14800ccc144c148008cc144c148004cc144c0d0cc144c148c13cdd500325eb80c14cc14c004c148004c144004c140004c12cdd5001c56600260120031323232323230353305230530053305230530043305230530033305230530023305230530013305230353305230533050375400e97ae0305430540013053001305200130510013050001304b375400715980099b87480280062646464646464606c660a660a800c660a660a800a660a660a8008660a660a8006660a660a8004660a660a8002660a6606c660a660a860a26ea80212f5c060aa60aa00260a800260a600260a400260a200260a000260966ea800e2b30013370e9006000c4c8c8c8c8c8c8c8c0dccc150c15401ccc150c154018cc150c154014cc150c154010cc150c15400ccc150c154008cc150c154004cc150c0dccc150c154c148dd5004a5eb80c158c158004c154004c150004c14c004c148004c144004c140004c12cdd5001c56600266e1d200e00189919191919191919181c1982a982b0041982a982b0039982a982b0031982a982b0029982a982b0021982a982b0019982a982b0011982a982b0009982a981c1982a982b18299baa00a4bd70182b982b800982b000982a800982a000982980098290009828800982800098259baa0038acc004cdc3a4020003132323232323232323230393305630570093305630570083305630570073305630570063305630570053305630570043305630570033305630570023305630570013305630393305630573054375401697ae03058305800130570013056001305500130540013053001305200130510013050001304b375400715980099b87480480062646464646464646464646074660ae60b0014660ae60b0012660ae60b0010660ae60b000e660ae60b000c660ae60b000a660ae60b0008660ae60b0006660ae60b0004660ae60b0002660ae6074660ae60b060aa6ea80312f5c060b260b200260b000260ae00260ac00260aa00260a800260a600260a400260a200260a000260966ea800e2b30013370e900a000c4c8c8c8c8c8c8c8c8c8c8c8c0eccc160c16402ccc160c164028cc160c164024cc160c164020cc160c16401ccc160c164018cc160c164014cc160c164010cc160c16400ccc160c164008cc160c164004cc160c0eccc160c164c158dd5006a5eb80c168c168004c164004c160004c15c004c158004c154004c150004c14c004c148004c144004c140004c12cdd5001c56600266e1d20160018991919191919191919191919181e1982c982d0061982c982d0059982c982d0051982c982d0049982c982d0041982c982d0039982c982d0031982c982d0029982c982d0021982c982d0019982c982d0011982c982d0009982c981e1982c982d182b9baa00e4bd70182d982d800982d000982c800982c000982b800982b000982a800982a000982980098290009828800982800098259baa0038991919191919191919191919181e1982c982d0061982c982d0059982c982d0051982c982d0049982c982d0041982c982d0039982c982d0031982c982d0029982c982d0021982c982d0019982c982d0011982c982d0009982c982d182d8009982c981e1982c982d182b9baa00e4bd7025eb80c168004c164004c160004c15c004c158004c154004c150004c14c004c148004c144004c140004c12cdd5001a0904120824104820904120824104820904120824104818249baa001304c002400c8250dd718249825000991acc004c0cc00a2653001001a5eb82006800888966002606a00312323304d374e0026609a6ea40092f5c065300100180252f5c080088896600200510018cc00400e60a20053304f3050002001400c8272246530010059982698270008024c05000e6eb8c138c13c0050051802800a08c8a9982224811165787065637420636f756e74203e3d20300016410c6eb8c124c12800ca60024464b30013001480422b30013001480022900044cdc724410801020408102040800000241191598009800a408113370490400219801801980b00144cdc124101010100406600600666e00009203f41188230dc4000c888c8cc130c00cdd698268009982618269827000a5eb80c00c006660906ea0cdc7000a4000660906ea4cc040c03cdc6800800a5eb8122232329800919802919198281ba833794940dd718288009982818289829000a5eb816600260386e3400626609e6ea4c064004cc13cdd49980d980d1b8d0010014bd70454cc12d240124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e74001641284646006b3001303a0018a60103d87a800089819998281ba80014bd70209630030019bad304e003911191acc006600260766eb4c14800694294504c44cc02000c8c014c0d4cc148dd4000a5eb822601e600898103d87a800041306eb8c148c14c004cc140dd419b8e00148000cc140dd49980c180b9b8d0010014bd7024446b3001303a002898019181a19828800a5eb822b3001303e00289801919ba548008cc1440052f5c1159800981c00144c00c8cdd2a4008660a200297ae08acc004c03400a26600e464660a46ea0cde5250375c60a6002660a460a660a800297ae059800981d1b8d0018998289ba930230013305137526605260506e340040052f5c1153304d49124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e7400164130466e95200633051375000297ae08acc004c03000a26600e464660a46ea0cde5250375c60a6002660a460a660a800297ae059800981d1b8d0018998289ba930230013305137526605260506e340040052f5c1153304d49124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e7400164130466e952008330513750b3001337100029040400244006266e04004c0192020413097ae08acc004cdc3a40140051300323374a900519828800a5eb822b30013370e900600144cc0048cdd2a4018660a200297ae0232330523750600c6eb4c14c004cc148c14cc1500052f5c064660a46ea0cde5250375c60a6002660a460a660a800297ae059800980f1b8d0018998289ba9301b0013305137526603a60386e340040052f5c1153304d490124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e740016413115980099b874803800a266002466e95200e330510014bd70119198291ba833794940dd71829800998291829982a000a5eb8166002603c6e340062660a26ea4c06c004cc144dd49980e980e1b8d0010014bd70454cc13524124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e740016413115980099b874804000a266002466e952010330510014bd70119198291ba833794940dd71829800998291829982a000a5eb8166002603c6e340062660a26ea4c06c004cc144dd49980e980e1b8d0010014bd70454cc13524124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e740016413115980099b874804800a246464660a666e9520123305330540014bd7019829982a182a800a5eb80c004008cc0208c8cc14cdd419bca4a06eb8c150004cc14cc150c1540052f5c0b3001303b371a00313305237526048002660a46ea4cc0a8c0a4dc6800800a5eb822a6609c920124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e74001641344b3001303c0018a60103d87980008acc004c100006298103d87a80008acc004c0e8006298103d87b80008acc004c03c006298103d87c80008acc004c038006298103d87d80008a99827249204d61726b657453657373696f6e2076616c7565206f7574206f662072616e676500164134826904d209a413515980099b874805000a26006466e952014330510014bd70456600266e1d201600289801919ba548058cc1440052f5c115980099b874806000a266002466e952018330510014bd70119198291ba833794940dd71829800998291829982a000a5eb8166002603c6e340062660a26ea4c06c004cc144dd49980e980e1b8d0010014bd70454cc13524124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e7400164131153304c4911c4665656450726f7065727479204944206f7574206f662072616e67650016412c825904b2096412c825904b2096412c825904b2096412c6eb8c144c1480184b300133710002904040404040404040400144006266e04004c00920800141206006006375a608e002646608c6ea0cdc7000a40006608c6ea4cc038c034dc6800800a5eb80dd718231823802103b454cc0e524011165787065637420636f756e74203e3d2030001640e06e31200237009000a2a6605c920125657870656374206d61676963203d3d2070726963655f7570646174655f6d616769635f6c65001640b46eb8c0ccc0d000566002600e6e340062660626ea4c008004cc0c4dd49980298021b8d0010014bd70454cc0b5240124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e74001640b06eb8c050c0b8dd51980b1191acc004cdc79bae303300148904b9011a82008919191919191919911981d980f1981d981e0039981d9ba90013303b303c0024bd701981d981e181e80125eb80d660026048003125980099b89002371a00313303a37526601e004002660746ea66002005337026e3400400a002b8c25eb822a6606c920124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e74001640d515330354911165787065637420636f756e74203e3d2030001640d06eb8c0e8c0ec008dd7181d0021bad30390013233038375066f29281bae3039001330383039303a0014bd702cc004c080dc6800c4cc0dcdd498048009981b9ba93300f300e371a00200297ae08a99819a4924657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e74001640c86eb8c0dcc0e0004d6600294624b30013371290201b8d00189981b1ba93300b48100004cc0d8dd4cc005204099b80371a002901fc0057184bd70454cc0c924124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e74001640c515330314911165787065637420636f756e74203e3d2030001640c06eb8c0d8c0dc004c0040096600294624b3001337129040009b8d00189981a1ba9330094820004004cc0d0dd4cc00520800199b80371a002903fc0057184bd70454cc0c124124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e74001640bd153302f4911165787065637420636f756e74203e3d2030001640b9153302e49126657870656374206d61676963203d3d20736f6c616e615f666f726d61745f6d616769635f6c65001640b46eb8c0ccc0d000566002600e6e340062660626ea4c008004cc0c4dd49980298021b8d0010014bd70454cc0b5240124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e74001640b06eb8c0c4024c00d2004300348020660040046054002813a264b300100180fc07e03f01f899180198150021bae00140a8604e0048128dd6000c06e0368130c08cc080dd5000c54cc07924016465787065637420536f6d652872656465656d657229203d0a2020202070616972732e6765745f66697273742873656c662e72656465656d6572732c205769746864726177285363726970742873746174652e77697468647261775f736372697074292929001640746466446600400400244b30010018a60103d87a80008992cc004cdd78021811000c4c020cc094c08c0052f5c113300300330270024080604a0028118dd5981198121812181218121812181218121812181218101baa00f3374a90021981099ba548008cc084c088c08cc08cc08cc07cdd51811180f9baa0014bd7025eb822a6603a9201ff65787065637420536f6d6528737461746529203d0a202020206c6973742e66696e645f6d6170280a20202020202073656c662e7265666572656e63655f696e707574732c0a202020202020666e28696e70757429207b0a20202020202020206966206173736574732e6861735f6e66745f73747269637428696e7075742e6f75747075742e76616c75652c20707974685f69642c2022507974682053746174652229207b0a202020202020202020202f2f20737461746520746f6b656e206f757473696465206f6620736372697074206164647265737320776f756c6420696d706c792061206275670a202020202020202020206578706563742053637269dc7074285f29203d20696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c0a2020202020202020202065787065637420496e6c696e65446174756d28737461746529203d20696e7075742e6f75747075742e646174756d0a202020202020202020206578706563742073746174653a2050797468203d2073746174650a20202020202020202020536f6d65287374617465290a20202020202020207d20656c7365207b0a202020202020202020204e6f6e650a20202020202020207d0a2020202020207d2c0a20202020290016407064660020026eb0c018c07cdd5007112cc0040062980103d87a80008992cc006600266ebc00530103d87a8000a50a51407910018998018019812801203c325980099912cc00400a294226530013259800980898121baa00189bad3025302837566050604a6ea800629000204430270019baf302730280019bab003488966002003159800980100344cc01400d20008a5040911325980099baf30270014c010140008acc004cc018010dd6981418159bab3028001898019ba6302c0028a5040951598009980300224001130030078a5040948128c0a80050280ca60020033756601660486ea8c02cc090dd5002488cc0a0008cc0a0dd3000a5eb810011112cc00400a26600298103d87a80004bd6f7b63044ca60026eb8c0980066eacc09c00660560069112cc004cdc8a441000038acc004cdc7a441000038998029807998161ba60024bd70000c4cc015300103d87a8000006409d19800803c006446600e0046605c66ec0dd48029ba6004001401c81386052004813a2942294229410281ba633023337606ea4074dd31981199bb04c10b4a50797468205374617465004c010101004bd6f7b63025eb7bdb1808928c566002602260406ea8c090c084dd5181218109baa30083021375400313259800980618109baa0018992cc0040062b3001300f3022375400313259800800c076264b30010018992cc00400603f13259800800c08226644b300100181144c966002003023899912cc00400604b13259800800c09a04d02681344c9660026064007159800980d18169baa00a8992cc00400605113259800800c0a6053029814c4cc896600200302b8992cc00400605902c81644cc896600200302e8992cc00400605f02f817c0be26644b3001001818c4c96600200303281940ca264b3001303e003899811809912cc00400a26604a02444b3001002898119982000e25eb8226464b30010018992cc00400607503a81d40ea265300100389802982300340ed0251bae0014118608000503981cc0e60728228c0f8004c10400903f44c8c96600200303781bc0de06f1332259800800c6600200313005304400681ca04681cc0e607303941146eb8004c0f8009043181e000981f801207a819a076375a00303240f8607600281c8dd7000981d0012076303800140d86eb4004c0dc00a05881c0c0d40050331bae001303400240d460640028180c0b8dd5005409d02b409d02f1bae00140c8605e0028168dd58009817001408e04702340bc60580028150dd58009815801408204102040b060520028138c0a400a03d01e80f407902a1813800a04a3023375400301c408101c80e40720388140c094c088dd5000c54cc0812412e65787065637420496e6c696e65446174756d28737461746529203d20696e7075742e6f75747075742e646174756d0016407c600e60426ea8c020c084dd5000c54cc07d24013a65787065637420536372697074285f29203d20696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c0016407914c103d87a8000407860460028108889660026018603e6ea800e264b300100180144c96600200313259800800c012264b30010018acc004c0a000a330010038cc00400600d005402100540210054095005802c01600a8148c0980050241813001400e007003801a04e3024001408860406ea800e00280e8889660026016603c6ea800e264b300100180144c96600200313259800800c012264b30010018992cc004c0900062b3001300f302300180344c9660026052009132598009809000c566002604c6ea801a013008409d159800980b000c4c9660020030098992cc00400601500a80544c966002605a00700c805a054375a00300a40b460540028140c098dd50034566002602000315980098131baa006804c02102740210232046408c60486ea801600e8130c050c08c00502140190251baa001802c01600b00540a0604a0028118c09400a007003801c00d0261811800a042301f3754007001407048896600200300d8992cc004c07400a2646644b300100180944cc89660020030148992cc004c08c00a26465300130243025302530253025302530253025302530253025302530250019812000cdd698120012444b300130103023375400513259800980898121baa0018992cc004c048c094dd5002c4c9660026026604c6ea8006264653001302c302d302d302d302d302d302d302d302d302d302d302d302d0019816000cdd6981618149baa0039bad302c0024888966002603260586ea800e264b3001301a302d375400313259800980d98171baa0068992cc004c070c0bcdd5000c4c96600266e1c01566002b3001301e02c899b8902c483fbfffffc7e294102e440b22a6605e921216578706563742076616c7565203e3d20302026262076616c7565203c3d206d6178001640b914a3153302f4912a65787065637420666565645f696432203d3d2066726f6d5f696e7428626173655f61737365745f696429001640b86eb4c0ccc0c0dd5000c0a102d181918179baa006813a058375a6062605c6ea800604c8158c0c0c0b4dd5001c09502a0c0b0004c09cdd5004c079024181498131baa00580ea046375a6050604a6ea80060388110c09cc090dd5001406d0210c090004c07cdd5001c0550201810800a03e301f001302000140746eb4c074004dd6180e980f180f000980c9baa0018072034301b00140644528201e180880098061baa0128a4d153300a4911856616c696461746f722072657475726e65642066616c7365001365640242611e581cd799d287105dea9377cdf9ea8502a83d2b9eb2d2050a8aea800a21e60001f5f6 diff --git a/lazer/cardano/our-project/on-chain/aiken.lock b/lazer/cardano/our-project/on-chain/aiken.lock index a46c67b4..124c3c60 100644 --- a/lazer/cardano/our-project/on-chain/aiken.lock +++ b/lazer/cardano/our-project/on-chain/aiken.lock @@ -24,4 +24,4 @@ requirements = [] source = "github" [etags] -"pyth-network/pyth-lazer-cardano@main" = [{ secs_since_epoch = 1774201447, nanos_since_epoch = 634991200 }, "a46dacd97a22eb07feeaf966d48c3116c8249ddc836705656e3135cea285bcfc"] +"pyth-network/pyth-lazer-cardano@main" = [{ secs_since_epoch = 1774206514, nanos_since_epoch = 374195339 }, "a46dacd97a22eb07feeaf966d48c3116c8249ddc836705656e3135cea285bcfc"] diff --git a/lazer/cardano/our-project/on-chain/plutus.json b/lazer/cardano/our-project/on-chain/plutus.json index 24a674b2..76fe55a0 100644 --- a/lazer/cardano/our-project/on-chain/plutus.json +++ b/lazer/cardano/our-project/on-chain/plutus.json @@ -78,16 +78,44 @@ "$ref": "#/definitions/Data" } }, - "compiledCode": "587e01010029800aba2aba1aab9eaab9dab9cab9a48888896600264653001300700198039804000cc01c0092225980099b8748008c020dd500144c8cc892898058009805980600098049baa0028a50401830070013004375400f149a2a660049211856616c696461746f722072657475726e65642066616c7365001365640041", - "hash": "c5a309b71891d69bf076062a68fe46f9c54470128bb9fa0f2ac957d5" + "parameters": [ + { + "title": "pyth_id", + "schema": { + "$ref": "#/definitions/cardano~1assets~1PolicyId" + } + }, + { + "title": "base_asset_id", + "schema": { + "$ref": "#/definitions/Int" + } + } + ], + "compiledCode": "5921460101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0039bad00248888888888a60022a660089212a65787065637420757064617465733a204c6973743c4279746541727261793e203d2072656465656d657200168a998022491a6578706563742073746174653a2050797468203d20737461746500168a99802249906578706563742046656564207b0a2020202020666565645f69643a20666565645f6964322c0a202020202070726963653a20536f6d6528536f6d652870726963655f3229292c0a2020202020666565645f7570646174655f74696d657374616d703a20536f6d6528536f6d652874696d657374616d705f3229292c0a20202020202e2e0a2020207d203d20666565643200168a99802249996578706563742046656564207b0a2020202020666565645f69643a206164615f70726963655f666565645f69642c0a202020202070726963653a20536f6d6528536f6d652870726963655f3129292c0a2020202020666565645f7570646174655f74696d657374616d703a20536f6d6528536f6d652874696d657374616d705f3129292c0a20202020202e2e0a2020207d203d20666565643100168a998022491d657870656374205b66656564312c2066656564325d203d20666565647300168a998022492c657870656374205b7570646174655d203d206765745f7570646174657328707974685f69642c2073656c6629001648888896600264653001301100198089809000cdc3a400530110024888966002600460226ea800e3300130123754007371290004dc3a40009114c004c06000e6030603200798009b89480126e1d200491191980080080191198018009801001488c96600266e3d220100375c603660380031301b0018a9980b24811b6578706563742028612c20235b5d29203d2073656c66287372632900164054600400323019301a0019180c980d180d000cdd2a400091111111919192cc004c02cc078dd5000c4c9660026018603e6ea8006264b300100180dc06e2646601600244b300100289919800800802112cc004006297ae08998144c004dc62400937009001cdc4a4011371890004dc62401137009003a44444466446602c4646b30013371e6eb8c0cc0052210475d3c793008cc004888c8cc00cdd6981b8009bae3037303800130030019b89480426e3120109b804803e600e90082444446600a464660726ea0cde5250375c6074002660726074607600297ae05980098029b8d00189981c1ba930020013303837526600860066e340040052f5c1153303449124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e74001640cc46644660104660766ea0cdc7000a4000660766ea4cc00cc008dc6800800a5eb808cc0248cc0f0dd419b8e00148000cc0f0dd49980218019b8d0010014bd701119191981f98111981f9ba80083303f375000a6607e608000297ae03303f304030410014bd7018008012cc004c0a000a2653001001a5eb820068008889660026054003123233042374e002660846ea40092f5c065300100180252f5c080088896600200510018cc00400e608c005330443045002001400c821a246530010059982118218008024c02400e6eb8c10cc1100050054c004c8cc108dd419bca4a06eb8c10c004cc108c10cc1100052f5c0b30013017371a00313304137526024002660826ea4cc054c050dc6800800a5eb822a6607a92124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e74001640f1223304300233043375200297ae09b874801a6e1d200848888c8c8c8cc018ca600200337586094005302c33049304a008330494c103d87a8000330494c103d87a8000330494c103d87a8000330494c103d87a8000330494c103d87a8000330494c103d87a8000330494c103d87a8000330494c103d87a8000330494c103d87a8000330494c103d87a8000330494c103d87a8000330494c103d87a8000330494c103d87a80004bd70200222259800801440063300100398268014c8c966002606e00313230313304e304f0013304e30313304e304f304c375400697ae030503050001304b3754007159800981d800c4c8c8c0c8cc13cc140008cc13cc140004cc13cc0c8cc13cc140c134dd500225eb80c144c144004c140004c12cdd5001c566002606a00313232323033330503051003330503051002330503051001330503033330503051304e375400a97ae03052305200130510013050001304b37540071598009805000c4c8c8c8c8c0d0cc144c148010cc144c14800ccc144c148008cc144c148004cc144c0d0cc144c148c13cdd500325eb80c14cc14c004c148004c144004c140004c12cdd5001c56600260120031323232323230353305230530053305230530043305230530033305230530023305230530013305230353305230533050375400e97ae0305430540013053001305200130510013050001304b375400715980099b87480280062646464646464606c660a660a800c660a660a800a660a660a8008660a660a8006660a660a8004660a660a8002660a6606c660a660a860a26ea80212f5c060aa60aa00260a800260a600260a400260a200260a000260966ea800e2b30013370e9006000c4c8c8c8c8c8c8c8c0dccc150c15401ccc150c154018cc150c154014cc150c154010cc150c15400ccc150c154008cc150c154004cc150c0dccc150c154c148dd5004a5eb80c158c158004c154004c150004c14c004c148004c144004c140004c12cdd5001c56600266e1d200e00189919191919191919181c1982a982b0041982a982b0039982a982b0031982a982b0029982a982b0021982a982b0019982a982b0011982a982b0009982a981c1982a982b18299baa00a4bd70182b982b800982b000982a800982a000982980098290009828800982800098259baa0038acc004cdc3a4020003132323232323232323230393305630570093305630570083305630570073305630570063305630570053305630570043305630570033305630570023305630570013305630393305630573054375401697ae03058305800130570013056001305500130540013053001305200130510013050001304b375400715980099b87480480062646464646464646464646074660ae60b0014660ae60b0012660ae60b0010660ae60b000e660ae60b000c660ae60b000a660ae60b0008660ae60b0006660ae60b0004660ae60b0002660ae6074660ae60b060aa6ea80312f5c060b260b200260b000260ae00260ac00260aa00260a800260a600260a400260a200260a000260966ea800e2b30013370e900a000c4c8c8c8c8c8c8c8c8c8c8c8c0eccc160c16402ccc160c164028cc160c164024cc160c164020cc160c16401ccc160c164018cc160c164014cc160c164010cc160c16400ccc160c164008cc160c164004cc160c0eccc160c164c158dd5006a5eb80c168c168004c164004c160004c15c004c158004c154004c150004c14c004c148004c144004c140004c12cdd5001c56600266e1d20160018991919191919191919191919181e1982c982d0061982c982d0059982c982d0051982c982d0049982c982d0041982c982d0039982c982d0031982c982d0029982c982d0021982c982d0019982c982d0011982c982d0009982c981e1982c982d182b9baa00e4bd70182d982d800982d000982c800982c000982b800982b000982a800982a000982980098290009828800982800098259baa0038991919191919191919191919181e1982c982d0061982c982d0059982c982d0051982c982d0049982c982d0041982c982d0039982c982d0031982c982d0029982c982d0021982c982d0019982c982d0011982c982d0009982c982d182d8009982c981e1982c982d182b9baa00e4bd7025eb80c168004c164004c160004c15c004c158004c154004c150004c14c004c148004c144004c140004c12cdd5001a0904120824104820904120824104820904120824104818249baa001304c002400c8250dd718249825000991acc004c0cc00a2653001001a5eb82006800888966002606a00312323304d374e0026609a6ea40092f5c065300100180252f5c080088896600200510018cc00400e60a20053304f3050002001400c8272246530010059982698270008024c05000e6eb8c138c13c0050051802800a08c8a9982224811165787065637420636f756e74203e3d20300016410c6eb8c124c12800ca60024464b30013001480422b30013001480022900044cdc724410801020408102040800000241191598009800a408113370490400219801801980b00144cdc124101010100406600600666e00009203f41188230dc4000c888c8cc130c00cdd698268009982618269827000a5eb80c00c006660906ea0cdc7000a4000660906ea4cc040c03cdc6800800a5eb8122232329800919802919198281ba833794940dd718288009982818289829000a5eb816600260386e3400626609e6ea4c064004cc13cdd49980d980d1b8d0010014bd70454cc12d240124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e74001641284646006b3001303a0018a60103d87a800089819998281ba80014bd70209630030019bad304e003911191acc006600260766eb4c14800694294504c44cc02000c8c014c0d4cc148dd4000a5eb822601e600898103d87a800041306eb8c148c14c004cc140dd419b8e00148000cc140dd49980c180b9b8d0010014bd7024446b3001303a002898019181a19828800a5eb822b3001303e00289801919ba548008cc1440052f5c1159800981c00144c00c8cdd2a4008660a200297ae08acc004c03400a26600e464660a46ea0cde5250375c60a6002660a460a660a800297ae059800981d1b8d0018998289ba930230013305137526605260506e340040052f5c1153304d49124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e7400164130466e95200633051375000297ae08acc004c03000a26600e464660a46ea0cde5250375c60a6002660a460a660a800297ae059800981d1b8d0018998289ba930230013305137526605260506e340040052f5c1153304d49124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e7400164130466e952008330513750b3001337100029040400244006266e04004c0192020413097ae08acc004cdc3a40140051300323374a900519828800a5eb822b30013370e900600144cc0048cdd2a4018660a200297ae0232330523750600c6eb4c14c004cc148c14cc1500052f5c064660a46ea0cde5250375c60a6002660a460a660a800297ae059800980f1b8d0018998289ba9301b0013305137526603a60386e340040052f5c1153304d490124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e740016413115980099b874803800a266002466e95200e330510014bd70119198291ba833794940dd71829800998291829982a000a5eb8166002603c6e340062660a26ea4c06c004cc144dd49980e980e1b8d0010014bd70454cc13524124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e740016413115980099b874804000a266002466e952010330510014bd70119198291ba833794940dd71829800998291829982a000a5eb8166002603c6e340062660a26ea4c06c004cc144dd49980e980e1b8d0010014bd70454cc13524124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e740016413115980099b874804800a246464660a666e9520123305330540014bd7019829982a182a800a5eb80c004008cc0208c8cc14cdd419bca4a06eb8c150004cc14cc150c1540052f5c0b3001303b371a00313305237526048002660a46ea4cc0a8c0a4dc6800800a5eb822a6609c920124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e74001641344b3001303c0018a60103d87980008acc004c100006298103d87a80008acc004c0e8006298103d87b80008acc004c03c006298103d87c80008acc004c038006298103d87d80008a99827249204d61726b657453657373696f6e2076616c7565206f7574206f662072616e676500164134826904d209a413515980099b874805000a26006466e952014330510014bd70456600266e1d201600289801919ba548058cc1440052f5c115980099b874806000a266002466e952018330510014bd70119198291ba833794940dd71829800998291829982a000a5eb8166002603c6e340062660a26ea4c06c004cc144dd49980e980e1b8d0010014bd70454cc13524124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e7400164131153304c4911c4665656450726f7065727479204944206f7574206f662072616e67650016412c825904b2096412c825904b2096412c825904b2096412c6eb8c144c1480184b300133710002904040404040404040400144006266e04004c00920800141206006006375a608e002646608c6ea0cdc7000a40006608c6ea4cc038c034dc6800800a5eb80dd718231823802103b454cc0e524011165787065637420636f756e74203e3d2030001640e06e31200237009000a2a6605c920125657870656374206d61676963203d3d2070726963655f7570646174655f6d616769635f6c65001640b46eb8c0ccc0d000566002600e6e340062660626ea4c008004cc0c4dd49980298021b8d0010014bd70454cc0b5240124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e74001640b06eb8c050c0b8dd51980b1191acc004cdc79bae303300148904b9011a82008919191919191919911981d980f1981d981e0039981d9ba90013303b303c0024bd701981d981e181e80125eb80d660026048003125980099b89002371a00313303a37526601e004002660746ea66002005337026e3400400a002b8c25eb822a6606c920124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e74001640d515330354911165787065637420636f756e74203e3d2030001640d06eb8c0e8c0ec008dd7181d0021bad30390013233038375066f29281bae3039001330383039303a0014bd702cc004c080dc6800c4cc0dcdd498048009981b9ba93300f300e371a00200297ae08a99819a4924657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e74001640c86eb8c0dcc0e0004d6600294624b30013371290201b8d00189981b1ba93300b48100004cc0d8dd4cc005204099b80371a002901fc0057184bd70454cc0c924124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e74001640c515330314911165787065637420636f756e74203e3d2030001640c06eb8c0d8c0dc004c0040096600294624b3001337129040009b8d00189981a1ba9330094820004004cc0d0dd4cc00520800199b80371a002903fc0057184bd70454cc0c124124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e74001640bd153302f4911165787065637420636f756e74203e3d2030001640b9153302e49126657870656374206d61676963203d3d20736f6c616e615f666f726d61745f6d616769635f6c65001640b46eb8c0ccc0d000566002600e6e340062660626ea4c008004cc0c4dd49980298021b8d0010014bd70454cc0b5240124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e74001640b06eb8c0c4024c00d2004300348020660040046054002813a264b300100180fc07e03f01f899180198150021bae00140a8604e0048128dd6000c06e0368130c08cc080dd5000c54cc07924016465787065637420536f6d652872656465656d657229203d0a2020202070616972732e6765745f66697273742873656c662e72656465656d6572732c205769746864726177285363726970742873746174652e77697468647261775f736372697074292929001640746466446600400400244b30010018a60103d87a80008992cc004cdd78021811000c4c020cc094c08c0052f5c113300300330270024080604a0028118dd5981198121812181218121812181218121812181218101baa00f3374a90021981099ba548008cc084c088c08cc08cc08cc07cdd51811180f9baa0014bd7025eb822a6603a9201ff65787065637420536f6d6528737461746529203d0a202020206c6973742e66696e645f6d6170280a20202020202073656c662e7265666572656e63655f696e707574732c0a202020202020666e28696e70757429207b0a20202020202020206966206173736574732e6861735f6e66745f73747269637428696e7075742e6f75747075742e76616c75652c20707974685f69642c2022507974682053746174652229207b0a202020202020202020202f2f20737461746520746f6b656e206f757473696465206f6620736372697074206164647265737320776f756c6420696d706c792061206275670a202020202020202020206578706563742053637269dc7074285f29203d20696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c0a2020202020202020202065787065637420496e6c696e65446174756d28737461746529203d20696e7075742e6f75747075742e646174756d0a202020202020202020206578706563742073746174653a2050797468203d2073746174650a20202020202020202020536f6d65287374617465290a20202020202020207d20656c7365207b0a202020202020202020204e6f6e650a20202020202020207d0a2020202020207d2c0a20202020290016407064660020026eb0c018c07cdd5007112cc0040062980103d87a80008992cc006600266ebc00530103d87a8000a50a51407910018998018019812801203c325980099912cc00400a294226530013259800980898121baa00189bad3025302837566050604a6ea800629000204430270019baf302730280019bab003488966002003159800980100344cc01400d20008a5040911325980099baf30270014c010140008acc004cc018010dd6981418159bab3028001898019ba6302c0028a5040951598009980300224001130030078a5040948128c0a80050280ca60020033756601660486ea8c02cc090dd5002488cc0a0008cc0a0dd3000a5eb810011112cc00400a26600298103d87a80004bd6f7b63044ca60026eb8c0980066eacc09c00660560069112cc004cdc8a441000038acc004cdc7a441000038998029807998161ba60024bd70000c4cc015300103d87a8000006409d19800803c006446600e0046605c66ec0dd48029ba6004001401c81386052004813a2942294229410281ba633023337606ea4074dd31981199bb04c10b4a50797468205374617465004c010101004bd6f7b63025eb7bdb1808928c566002602260406ea8c090c084dd5181218109baa30083021375400313259800980618109baa0018992cc0040062b3001300f3022375400313259800800c076264b30010018992cc00400603f13259800800c08226644b300100181144c966002003023899912cc00400604b13259800800c09a04d02681344c9660026064007159800980d18169baa00a8992cc00400605113259800800c0a6053029814c4cc896600200302b8992cc00400605902c81644cc896600200302e8992cc00400605f02f817c0be26644b3001001818c4c96600200303281940ca264b3001303e003899811809912cc00400a26604a02444b3001002898119982000e25eb8226464b30010018992cc00400607503a81d40ea265300100389802982300340ed0251bae0014118608000503981cc0e60728228c0f8004c10400903f44c8c96600200303781bc0de06f1332259800800c6600200313005304400681ca04681cc0e607303941146eb8004c0f8009043181e000981f801207a819a076375a00303240f8607600281c8dd7000981d0012076303800140d86eb4004c0dc00a05881c0c0d40050331bae001303400240d460640028180c0b8dd5005409d02b409d02f1bae00140c8605e0028168dd58009817001408e04702340bc60580028150dd58009815801408204102040b060520028138c0a400a03d01e80f407902a1813800a04a3023375400301c408101c80e40720388140c094c088dd5000c54cc0812412e65787065637420496e6c696e65446174756d28737461746529203d20696e7075742e6f75747075742e646174756d0016407c600e60426ea8c020c084dd5000c54cc07d24013a65787065637420536372697074285f29203d20696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c0016407914c103d87a8000407860460028108889660026018603e6ea800e264b300100180144c96600200313259800800c012264b30010018acc004c0a000a330010038cc00400600d005402100540210054095005802c01600a8148c0980050241813001400e007003801a04e3024001408860406ea800e00280e8889660026016603c6ea800e264b300100180144c96600200313259800800c012264b30010018992cc004c0900062b3001300f302300180344c9660026052009132598009809000c566002604c6ea801a013008409d159800980b000c4c9660020030098992cc00400601500a80544c966002605a00700c805a054375a00300a40b460540028140c098dd50034566002602000315980098131baa006804c02102740210232046408c60486ea801600e8130c050c08c00502140190251baa001802c01600b00540a0604a0028118c09400a007003801c00d0261811800a042301f3754007001407048896600200300d8992cc004c07400a2646644b300100180944cc89660020030148992cc004c08c00a26465300130243025302530253025302530253025302530253025302530250019812000cdd698120012444b300130103023375400513259800980898121baa0018992cc004c048c094dd5002c4c9660026026604c6ea8006264653001302c302d302d302d302d302d302d302d302d302d302d302d302d0019816000cdd6981618149baa0039bad302c0024888966002603260586ea800e264b3001301a302d375400313259800980d98171baa0068992cc004c070c0bcdd5000c4c96600266e1c01566002b3001301e02c899b8902c483fbfffffc7e294102e440b22a6605e921216578706563742076616c7565203e3d20302026262076616c7565203c3d206d6178001640b914a3153302f4912a65787065637420666565645f696432203d3d2066726f6d5f696e7428626173655f61737365745f696429001640b86eb4c0ccc0c0dd5000c0a102d181918179baa006813a058375a6062605c6ea800604c8158c0c0c0b4dd5001c09502a0c0b0004c09cdd5004c079024181498131baa00580ea046375a6050604a6ea80060388110c09cc090dd5001406d0210c090004c07cdd5001c0550201810800a03e301f001302000140746eb4c074004dd6180e980f180f000980c9baa0018072034301b00140644528201e180880098061baa0128a4d153300a4911856616c696461746f722072657475726e65642066616c7365001365640241", + "hash": "09a937718dc6384bc591d5336bbe2846285194460a0e84a72aadbe03" }, { "title": "osi_accept_pyth.osi_accept_pyth.else", "redeemer": { "schema": {} }, - "compiledCode": "587e01010029800aba2aba1aab9eaab9dab9cab9a48888896600264653001300700198039804000cc01c0092225980099b8748008c020dd500144c8cc892898058009805980600098049baa0028a50401830070013004375400f149a2a660049211856616c696461746f722072657475726e65642066616c7365001365640041", - "hash": "c5a309b71891d69bf076062a68fe46f9c54470128bb9fa0f2ac957d5" + "parameters": [ + { + "title": "pyth_id", + "schema": { + "$ref": "#/definitions/cardano~1assets~1PolicyId" + } + }, + { + "title": "base_asset_id", + "schema": { + "$ref": "#/definitions/Int" + } + } + ], + "compiledCode": "5921460101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0039bad00248888888888a60022a660089212a65787065637420757064617465733a204c6973743c4279746541727261793e203d2072656465656d657200168a998022491a6578706563742073746174653a2050797468203d20737461746500168a99802249906578706563742046656564207b0a2020202020666565645f69643a20666565645f6964322c0a202020202070726963653a20536f6d6528536f6d652870726963655f3229292c0a2020202020666565645f7570646174655f74696d657374616d703a20536f6d6528536f6d652874696d657374616d705f3229292c0a20202020202e2e0a2020207d203d20666565643200168a99802249996578706563742046656564207b0a2020202020666565645f69643a206164615f70726963655f666565645f69642c0a202020202070726963653a20536f6d6528536f6d652870726963655f3129292c0a2020202020666565645f7570646174655f74696d657374616d703a20536f6d6528536f6d652874696d657374616d705f3129292c0a20202020202e2e0a2020207d203d20666565643100168a998022491d657870656374205b66656564312c2066656564325d203d20666565647300168a998022492c657870656374205b7570646174655d203d206765745f7570646174657328707974685f69642c2073656c6629001648888896600264653001301100198089809000cdc3a400530110024888966002600460226ea800e3300130123754007371290004dc3a40009114c004c06000e6030603200798009b89480126e1d200491191980080080191198018009801001488c96600266e3d220100375c603660380031301b0018a9980b24811b6578706563742028612c20235b5d29203d2073656c66287372632900164054600400323019301a0019180c980d180d000cdd2a400091111111919192cc004c02cc078dd5000c4c9660026018603e6ea8006264b300100180dc06e2646601600244b300100289919800800802112cc004006297ae08998144c004dc62400937009001cdc4a4011371890004dc62401137009003a44444466446602c4646b30013371e6eb8c0cc0052210475d3c793008cc004888c8cc00cdd6981b8009bae3037303800130030019b89480426e3120109b804803e600e90082444446600a464660726ea0cde5250375c6074002660726074607600297ae05980098029b8d00189981c1ba930020013303837526600860066e340040052f5c1153303449124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e74001640cc46644660104660766ea0cdc7000a4000660766ea4cc00cc008dc6800800a5eb808cc0248cc0f0dd419b8e00148000cc0f0dd49980218019b8d0010014bd701119191981f98111981f9ba80083303f375000a6607e608000297ae03303f304030410014bd7018008012cc004c0a000a2653001001a5eb820068008889660026054003123233042374e002660846ea40092f5c065300100180252f5c080088896600200510018cc00400e608c005330443045002001400c821a246530010059982118218008024c02400e6eb8c10cc1100050054c004c8cc108dd419bca4a06eb8c10c004cc108c10cc1100052f5c0b30013017371a00313304137526024002660826ea4cc054c050dc6800800a5eb822a6607a92124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e74001640f1223304300233043375200297ae09b874801a6e1d200848888c8c8c8cc018ca600200337586094005302c33049304a008330494c103d87a8000330494c103d87a8000330494c103d87a8000330494c103d87a8000330494c103d87a8000330494c103d87a8000330494c103d87a8000330494c103d87a8000330494c103d87a8000330494c103d87a8000330494c103d87a8000330494c103d87a8000330494c103d87a80004bd70200222259800801440063300100398268014c8c966002606e00313230313304e304f0013304e30313304e304f304c375400697ae030503050001304b3754007159800981d800c4c8c8c0c8cc13cc140008cc13cc140004cc13cc0c8cc13cc140c134dd500225eb80c144c144004c140004c12cdd5001c566002606a00313232323033330503051003330503051002330503051001330503033330503051304e375400a97ae03052305200130510013050001304b37540071598009805000c4c8c8c8c8c0d0cc144c148010cc144c14800ccc144c148008cc144c148004cc144c0d0cc144c148c13cdd500325eb80c14cc14c004c148004c144004c140004c12cdd5001c56600260120031323232323230353305230530053305230530043305230530033305230530023305230530013305230353305230533050375400e97ae0305430540013053001305200130510013050001304b375400715980099b87480280062646464646464606c660a660a800c660a660a800a660a660a8008660a660a8006660a660a8004660a660a8002660a6606c660a660a860a26ea80212f5c060aa60aa00260a800260a600260a400260a200260a000260966ea800e2b30013370e9006000c4c8c8c8c8c8c8c8c0dccc150c15401ccc150c154018cc150c154014cc150c154010cc150c15400ccc150c154008cc150c154004cc150c0dccc150c154c148dd5004a5eb80c158c158004c154004c150004c14c004c148004c144004c140004c12cdd5001c56600266e1d200e00189919191919191919181c1982a982b0041982a982b0039982a982b0031982a982b0029982a982b0021982a982b0019982a982b0011982a982b0009982a981c1982a982b18299baa00a4bd70182b982b800982b000982a800982a000982980098290009828800982800098259baa0038acc004cdc3a4020003132323232323232323230393305630570093305630570083305630570073305630570063305630570053305630570043305630570033305630570023305630570013305630393305630573054375401697ae03058305800130570013056001305500130540013053001305200130510013050001304b375400715980099b87480480062646464646464646464646074660ae60b0014660ae60b0012660ae60b0010660ae60b000e660ae60b000c660ae60b000a660ae60b0008660ae60b0006660ae60b0004660ae60b0002660ae6074660ae60b060aa6ea80312f5c060b260b200260b000260ae00260ac00260aa00260a800260a600260a400260a200260a000260966ea800e2b30013370e900a000c4c8c8c8c8c8c8c8c8c8c8c8c0eccc160c16402ccc160c164028cc160c164024cc160c164020cc160c16401ccc160c164018cc160c164014cc160c164010cc160c16400ccc160c164008cc160c164004cc160c0eccc160c164c158dd5006a5eb80c168c168004c164004c160004c15c004c158004c154004c150004c14c004c148004c144004c140004c12cdd5001c56600266e1d20160018991919191919191919191919181e1982c982d0061982c982d0059982c982d0051982c982d0049982c982d0041982c982d0039982c982d0031982c982d0029982c982d0021982c982d0019982c982d0011982c982d0009982c981e1982c982d182b9baa00e4bd70182d982d800982d000982c800982c000982b800982b000982a800982a000982980098290009828800982800098259baa0038991919191919191919191919181e1982c982d0061982c982d0059982c982d0051982c982d0049982c982d0041982c982d0039982c982d0031982c982d0029982c982d0021982c982d0019982c982d0011982c982d0009982c982d182d8009982c981e1982c982d182b9baa00e4bd7025eb80c168004c164004c160004c15c004c158004c154004c150004c14c004c148004c144004c140004c12cdd5001a0904120824104820904120824104820904120824104818249baa001304c002400c8250dd718249825000991acc004c0cc00a2653001001a5eb82006800888966002606a00312323304d374e0026609a6ea40092f5c065300100180252f5c080088896600200510018cc00400e60a20053304f3050002001400c8272246530010059982698270008024c05000e6eb8c138c13c0050051802800a08c8a9982224811165787065637420636f756e74203e3d20300016410c6eb8c124c12800ca60024464b30013001480422b30013001480022900044cdc724410801020408102040800000241191598009800a408113370490400219801801980b00144cdc124101010100406600600666e00009203f41188230dc4000c888c8cc130c00cdd698268009982618269827000a5eb80c00c006660906ea0cdc7000a4000660906ea4cc040c03cdc6800800a5eb8122232329800919802919198281ba833794940dd718288009982818289829000a5eb816600260386e3400626609e6ea4c064004cc13cdd49980d980d1b8d0010014bd70454cc12d240124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e74001641284646006b3001303a0018a60103d87a800089819998281ba80014bd70209630030019bad304e003911191acc006600260766eb4c14800694294504c44cc02000c8c014c0d4cc148dd4000a5eb822601e600898103d87a800041306eb8c148c14c004cc140dd419b8e00148000cc140dd49980c180b9b8d0010014bd7024446b3001303a002898019181a19828800a5eb822b3001303e00289801919ba548008cc1440052f5c1159800981c00144c00c8cdd2a4008660a200297ae08acc004c03400a26600e464660a46ea0cde5250375c60a6002660a460a660a800297ae059800981d1b8d0018998289ba930230013305137526605260506e340040052f5c1153304d49124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e7400164130466e95200633051375000297ae08acc004c03000a26600e464660a46ea0cde5250375c60a6002660a460a660a800297ae059800981d1b8d0018998289ba930230013305137526605260506e340040052f5c1153304d49124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e7400164130466e952008330513750b3001337100029040400244006266e04004c0192020413097ae08acc004cdc3a40140051300323374a900519828800a5eb822b30013370e900600144cc0048cdd2a4018660a200297ae0232330523750600c6eb4c14c004cc148c14cc1500052f5c064660a46ea0cde5250375c60a6002660a460a660a800297ae059800980f1b8d0018998289ba9301b0013305137526603a60386e340040052f5c1153304d490124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e740016413115980099b874803800a266002466e95200e330510014bd70119198291ba833794940dd71829800998291829982a000a5eb8166002603c6e340062660a26ea4c06c004cc144dd49980e980e1b8d0010014bd70454cc13524124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e740016413115980099b874804000a266002466e952010330510014bd70119198291ba833794940dd71829800998291829982a000a5eb8166002603c6e340062660a26ea4c06c004cc144dd49980e980e1b8d0010014bd70454cc13524124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e740016413115980099b874804800a246464660a666e9520123305330540014bd7019829982a182a800a5eb80c004008cc0208c8cc14cdd419bca4a06eb8c150004cc14cc150c1540052f5c0b3001303b371a00313305237526048002660a46ea4cc0a8c0a4dc6800800a5eb822a6609c920124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e74001641344b3001303c0018a60103d87980008acc004c100006298103d87a80008acc004c0e8006298103d87b80008acc004c03c006298103d87c80008acc004c038006298103d87d80008a99827249204d61726b657453657373696f6e2076616c7565206f7574206f662072616e676500164134826904d209a413515980099b874805000a26006466e952014330510014bd70456600266e1d201600289801919ba548058cc1440052f5c115980099b874806000a266002466e952018330510014bd70119198291ba833794940dd71829800998291829982a000a5eb8166002603c6e340062660a26ea4c06c004cc144dd49980e980e1b8d0010014bd70454cc13524124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e7400164131153304c4911c4665656450726f7065727479204944206f7574206f662072616e67650016412c825904b2096412c825904b2096412c825904b2096412c6eb8c144c1480184b300133710002904040404040404040400144006266e04004c00920800141206006006375a608e002646608c6ea0cdc7000a40006608c6ea4cc038c034dc6800800a5eb80dd718231823802103b454cc0e524011165787065637420636f756e74203e3d2030001640e06e31200237009000a2a6605c920125657870656374206d61676963203d3d2070726963655f7570646174655f6d616769635f6c65001640b46eb8c0ccc0d000566002600e6e340062660626ea4c008004cc0c4dd49980298021b8d0010014bd70454cc0b5240124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e74001640b06eb8c050c0b8dd51980b1191acc004cdc79bae303300148904b9011a82008919191919191919911981d980f1981d981e0039981d9ba90013303b303c0024bd701981d981e181e80125eb80d660026048003125980099b89002371a00313303a37526601e004002660746ea66002005337026e3400400a002b8c25eb822a6606c920124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e74001640d515330354911165787065637420636f756e74203e3d2030001640d06eb8c0e8c0ec008dd7181d0021bad30390013233038375066f29281bae3039001330383039303a0014bd702cc004c080dc6800c4cc0dcdd498048009981b9ba93300f300e371a00200297ae08a99819a4924657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e74001640c86eb8c0dcc0e0004d6600294624b30013371290201b8d00189981b1ba93300b48100004cc0d8dd4cc005204099b80371a002901fc0057184bd70454cc0c924124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e74001640c515330314911165787065637420636f756e74203e3d2030001640c06eb8c0d8c0dc004c0040096600294624b3001337129040009b8d00189981a1ba9330094820004004cc0d0dd4cc00520800199b80371a002903fc0057184bd70454cc0c124124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e74001640bd153302f4911165787065637420636f756e74203e3d2030001640b9153302e49126657870656374206d61676963203d3d20736f6c616e615f666f726d61745f6d616769635f6c65001640b46eb8c0ccc0d000566002600e6e340062660626ea4c008004cc0c4dd49980298021b8d0010014bd70454cc0b5240124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e74001640b06eb8c0c4024c00d2004300348020660040046054002813a264b300100180fc07e03f01f899180198150021bae00140a8604e0048128dd6000c06e0368130c08cc080dd5000c54cc07924016465787065637420536f6d652872656465656d657229203d0a2020202070616972732e6765745f66697273742873656c662e72656465656d6572732c205769746864726177285363726970742873746174652e77697468647261775f736372697074292929001640746466446600400400244b30010018a60103d87a80008992cc004cdd78021811000c4c020cc094c08c0052f5c113300300330270024080604a0028118dd5981198121812181218121812181218121812181218101baa00f3374a90021981099ba548008cc084c088c08cc08cc08cc07cdd51811180f9baa0014bd7025eb822a6603a9201ff65787065637420536f6d6528737461746529203d0a202020206c6973742e66696e645f6d6170280a20202020202073656c662e7265666572656e63655f696e707574732c0a202020202020666e28696e70757429207b0a20202020202020206966206173736574732e6861735f6e66745f73747269637428696e7075742e6f75747075742e76616c75652c20707974685f69642c2022507974682053746174652229207b0a202020202020202020202f2f20737461746520746f6b656e206f757473696465206f6620736372697074206164647265737320776f756c6420696d706c792061206275670a202020202020202020206578706563742053637269dc7074285f29203d20696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c0a2020202020202020202065787065637420496e6c696e65446174756d28737461746529203d20696e7075742e6f75747075742e646174756d0a202020202020202020206578706563742073746174653a2050797468203d2073746174650a20202020202020202020536f6d65287374617465290a20202020202020207d20656c7365207b0a202020202020202020204e6f6e650a20202020202020207d0a2020202020207d2c0a20202020290016407064660020026eb0c018c07cdd5007112cc0040062980103d87a80008992cc006600266ebc00530103d87a8000a50a51407910018998018019812801203c325980099912cc00400a294226530013259800980898121baa00189bad3025302837566050604a6ea800629000204430270019baf302730280019bab003488966002003159800980100344cc01400d20008a5040911325980099baf30270014c010140008acc004cc018010dd6981418159bab3028001898019ba6302c0028a5040951598009980300224001130030078a5040948128c0a80050280ca60020033756601660486ea8c02cc090dd5002488cc0a0008cc0a0dd3000a5eb810011112cc00400a26600298103d87a80004bd6f7b63044ca60026eb8c0980066eacc09c00660560069112cc004cdc8a441000038acc004cdc7a441000038998029807998161ba60024bd70000c4cc015300103d87a8000006409d19800803c006446600e0046605c66ec0dd48029ba6004001401c81386052004813a2942294229410281ba633023337606ea4074dd31981199bb04c10b4a50797468205374617465004c010101004bd6f7b63025eb7bdb1808928c566002602260406ea8c090c084dd5181218109baa30083021375400313259800980618109baa0018992cc0040062b3001300f3022375400313259800800c076264b30010018992cc00400603f13259800800c08226644b300100181144c966002003023899912cc00400604b13259800800c09a04d02681344c9660026064007159800980d18169baa00a8992cc00400605113259800800c0a6053029814c4cc896600200302b8992cc00400605902c81644cc896600200302e8992cc00400605f02f817c0be26644b3001001818c4c96600200303281940ca264b3001303e003899811809912cc00400a26604a02444b3001002898119982000e25eb8226464b30010018992cc00400607503a81d40ea265300100389802982300340ed0251bae0014118608000503981cc0e60728228c0f8004c10400903f44c8c96600200303781bc0de06f1332259800800c6600200313005304400681ca04681cc0e607303941146eb8004c0f8009043181e000981f801207a819a076375a00303240f8607600281c8dd7000981d0012076303800140d86eb4004c0dc00a05881c0c0d40050331bae001303400240d460640028180c0b8dd5005409d02b409d02f1bae00140c8605e0028168dd58009817001408e04702340bc60580028150dd58009815801408204102040b060520028138c0a400a03d01e80f407902a1813800a04a3023375400301c408101c80e40720388140c094c088dd5000c54cc0812412e65787065637420496e6c696e65446174756d28737461746529203d20696e7075742e6f75747075742e646174756d0016407c600e60426ea8c020c084dd5000c54cc07d24013a65787065637420536372697074285f29203d20696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c0016407914c103d87a8000407860460028108889660026018603e6ea800e264b300100180144c96600200313259800800c012264b30010018acc004c0a000a330010038cc00400600d005402100540210054095005802c01600a8148c0980050241813001400e007003801a04e3024001408860406ea800e00280e8889660026016603c6ea800e264b300100180144c96600200313259800800c012264b30010018992cc004c0900062b3001300f302300180344c9660026052009132598009809000c566002604c6ea801a013008409d159800980b000c4c9660020030098992cc00400601500a80544c966002605a00700c805a054375a00300a40b460540028140c098dd50034566002602000315980098131baa006804c02102740210232046408c60486ea801600e8130c050c08c00502140190251baa001802c01600b00540a0604a0028118c09400a007003801c00d0261811800a042301f3754007001407048896600200300d8992cc004c07400a2646644b300100180944cc89660020030148992cc004c08c00a26465300130243025302530253025302530253025302530253025302530250019812000cdd698120012444b300130103023375400513259800980898121baa0018992cc004c048c094dd5002c4c9660026026604c6ea8006264653001302c302d302d302d302d302d302d302d302d302d302d302d302d0019816000cdd6981618149baa0039bad302c0024888966002603260586ea800e264b3001301a302d375400313259800980d98171baa0068992cc004c070c0bcdd5000c4c96600266e1c01566002b3001301e02c899b8902c483fbfffffc7e294102e440b22a6605e921216578706563742076616c7565203e3d20302026262076616c7565203c3d206d6178001640b914a3153302f4912a65787065637420666565645f696432203d3d2066726f6d5f696e7428626173655f61737365745f696429001640b86eb4c0ccc0c0dd5000c0a102d181918179baa006813a058375a6062605c6ea800604c8158c0c0c0b4dd5001c09502a0c0b0004c09cdd5004c079024181498131baa00580ea046375a6050604a6ea80060388110c09cc090dd5001406d0210c090004c07cdd5001c0550201810800a03e301f001302000140746eb4c074004dd6180e980f180f000980c9baa0018072034301b00140644528201e180880098061baa0128a4d153300a4911856616c696461746f722072657475726e65642066616c7365001365640241", + "hash": "09a937718dc6384bc591d5336bbe2846285194460a0e84a72aadbe03" } ], "definitions": { diff --git a/lazer/cardano/our-project/on-chain/validators/osi_accept_pyth.ak b/lazer/cardano/our-project/on-chain/validators/osi_accept_pyth.ak index e0176877..82aff24e 100644 --- a/lazer/cardano/our-project/on-chain/validators/osi_accept_pyth.ak +++ b/lazer/cardano/our-project/on-chain/validators/osi_accept_pyth.ak @@ -1,11 +1,36 @@ -use aiken/collection/list use cardano/assets.{PolicyId} use cardano/transaction.{OutputReference, Transaction} -use pyth -use types/u32 +use pyth.{PriceUpdate, Feed, get_updates} +use types/u32.{U32, from_int} -validator osi_accept_pyth(){//pyth_id: PolicyId) { +const ada_price_feed_id = 16 + +validator osi_accept_pyth(pyth_id: PolicyId, base_asset_id: Int) { spend(_datum: Option, redeemer: Data, _utxo: OutputReference, self: Transaction) { + expect [update] = get_updates(pyth_id, self) + let PriceUpdate { + timestamp_us, + feeds, + .. + } = update + expect [feed1, feed2] = feeds + + expect Feed { + feed_id: ada_price_feed_id, + price: Some(Some(price_1)), + feed_update_timestamp: Some(Some(timestamp_1)), + .. + } = feed1 + + expect Feed { + feed_id: feed_id2, + price: Some(Some(price_2)), + feed_update_timestamp: Some(Some(timestamp_2)), + .. + } = feed2 + + expect feed_id2 == from_int(base_asset_id) + True } From eca4bcc944a04b3d9c1291ef4e7bf96df838c7bc Mon Sep 17 00:00:00 2001 From: Lola Aimar Date: Sun, 22 Mar 2026 15:45:09 -0300 Subject: [PATCH 14/21] added checks and modified types --- lazer/cardano/our-project/on-chain/aiken.lock | 2 +- .../on-chain/lib/{types.ak => otypes.ak} | 5 +- .../cardano/our-project/on-chain/lib/utils.ak | 18 +++ .../cardano/our-project/on-chain/plutus.json | 50 ++------ .../our-project/on-chain/validators/osi.ak | 112 +++++++++--------- 5 files changed, 84 insertions(+), 103 deletions(-) rename lazer/cardano/our-project/on-chain/lib/{types.ak => otypes.ak} (72%) create mode 100644 lazer/cardano/our-project/on-chain/lib/utils.ak diff --git a/lazer/cardano/our-project/on-chain/aiken.lock b/lazer/cardano/our-project/on-chain/aiken.lock index 124c3c60..efd852ae 100644 --- a/lazer/cardano/our-project/on-chain/aiken.lock +++ b/lazer/cardano/our-project/on-chain/aiken.lock @@ -24,4 +24,4 @@ requirements = [] source = "github" [etags] -"pyth-network/pyth-lazer-cardano@main" = [{ secs_since_epoch = 1774206514, nanos_since_epoch = 374195339 }, "a46dacd97a22eb07feeaf966d48c3116c8249ddc836705656e3135cea285bcfc"] +"pyth-network/pyth-lazer-cardano@main" = [{ secs_since_epoch = 1774204238, nanos_since_epoch = 559791297 }, "a46dacd97a22eb07feeaf966d48c3116c8249ddc836705656e3135cea285bcfc"] diff --git a/lazer/cardano/our-project/on-chain/lib/types.ak b/lazer/cardano/our-project/on-chain/lib/otypes.ak similarity index 72% rename from lazer/cardano/our-project/on-chain/lib/types.ak rename to lazer/cardano/our-project/on-chain/lib/otypes.ak index 0e56f98a..800627dd 100644 --- a/lazer/cardano/our-project/on-chain/lib/types.ak +++ b/lazer/cardano/our-project/on-chain/lib/otypes.ak @@ -1,7 +1,5 @@ -use aiken/crypto.{Signature} use cardano/address.{PaymentCredential} use cardano/assets.{AssetName, PolicyId} -use pyth.{PriceUpdate} pub type AssetClass { policy_id: PolicyId, @@ -9,9 +7,8 @@ pub type AssetClass { } pub type OsiDatum { - timestamp: Int, + deadline: Int, payees: Pairs, - quote_token: AssetClass, } pub type OsiRedeemers { diff --git a/lazer/cardano/our-project/on-chain/lib/utils.ak b/lazer/cardano/our-project/on-chain/lib/utils.ak new file mode 100644 index 00000000..5b6b98f2 --- /dev/null +++ b/lazer/cardano/our-project/on-chain/lib/utils.ak @@ -0,0 +1,18 @@ +use aiken/math/rational.{Rational} +use aiken/option +use pyth.{Feed} + +pub fn quote_price_multiplier(base_feed: Feed, quote_feed: Feed) -> Rational { + expect Some(b_exponent) = base_feed.exponent + expect Some(q_exponent) = quote_feed.exponent + + expect Some(multiplier) = + rational.from_int(10) |> rational.pow(b_exponent - q_exponent) + + expect Some(base_price) = option.flatten(base_feed.price) + expect Some(quote_price) = option.flatten(quote_feed.price) + + expect Some(price_ratio) = rational.new(base_price, quote_price) + + rational.mul(price_ratio, multiplier) +} diff --git a/lazer/cardano/our-project/on-chain/plutus.json b/lazer/cardano/our-project/on-chain/plutus.json index 76fe55a0..0142b4e1 100644 --- a/lazer/cardano/our-project/on-chain/plutus.json +++ b/lazer/cardano/our-project/on-chain/plutus.json @@ -12,17 +12,17 @@ }, "validators": [ { - "title": "osi.oracleSettled.spend", + "title": "osi.oracle_settled_invoice.spend", "datum": { "title": "datum", "schema": { - "$ref": "#/definitions/types~1OsiDatum" + "$ref": "#/definitions/otypes~1OsiDatum" } }, "redeemer": { "title": "redeemer", "schema": { - "$ref": "#/definitions/types~1OsiRedeemers" + "$ref": "#/definitions/otypes~1OsiRedeemers" } }, "parameters": [ @@ -39,11 +39,11 @@ } } ], - "compiledCode": "59232d0101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bad0039bae00248888888888a60022a660089212a65787065637420757064617465733a204c6973743c4279746541727261793e203d2072656465656d657200168a998022491a6578706563742073746174653a2050797468203d20737461746500168a9980224938657870656374205b6f75745d203d2066696e645f7363726970745f6f757470757473286f7574707574732c207363726970745f686173682900168a9980224934657870656374205b66656564312c2066656564325d203d206765745f7570646174657328707974685f706f6c6963792c2074782900168a998022491672656465656d65723a204f736952656465656d65727300164888896600264653001301000198081808800cdc3a400530100024888966002600460206ea800e2646644b300100789919912cc004c00c0062b300130173754015002806a0308acc004c0200062b300130173754015002806a030806a0284050265300122259800801452844ca600264b30013007301a37540031375a6036603c6eacc078c06cdd5000c520004060603a003375e603a603c00337560069112cc0040062b30013002006899802801a400114a080d2264b30013375e603a0029810140008acc004cc018010dd6980f18109bab301e001898019ba630220028a50406d1598009980300224001130030078a50406c80d8c08000501e0ca6002003004911980f0011980f1ba60014bd7020022225980080144cc005300103d87a80004bd6f7b63044ca60026eb8c0700066eacc07400660420069112cc004cdc8a441000038acc004cdc7a441000038998029805998111ba60024bd70000c4cc015300103d87a8000006407519800803c006446600e0046604866ec0dd48029ba6004001401c80e8603e00480ea29422942294101e48c068c06c006602c6ea8019222598009802980c1baa00c899192cc004c030c068dd5000c4c9660020030148992cc004c08400a330013756600c603a6ea8012600c603a6ea80064466e24008005007405501e180f800a03a323233001001375860406042604200a44b30010018a5eb8226644b30013259800980918101baa001899b8f006375c604860426ea8006294101e181198101baa30233020375400513302200233004004001899802002000a03a30210013022001407c6eb8c078c06cdd5000c54cc0652413a65787065637420536372697074287363726970745f6861736829203d20696e2e616464726573732e7061796d656e745f63726564656e7469616c00164060603a60346ea8c074c068dd500099198008009bac301d0022259800800c5a264b30013375e603e60386ea800402a2600a60386ea8006266006006604000480c8c07800501c4566002600a60306ea801a266446530013756603e003301f3020001cc004dc4a4009370e9002488c8cc00400400c88cc00c004c00800a4464b30013371e910100375c60446046003130220018a9980ea4811b6578706563742028612c20235b5d29203d2073656c6628737263290016407060040032302030213021001488888c8c8c966002602060466ea8006264b300130113024375400313259800800c08204113233009001225980080144c8cc004004010896600200314bd7044cc0b660026e2520009b8c480126e0120039b89480226e3120009b8c480226e01200748888888cc88cc0548c8d6600266e3cdd7181c800a450475d3c793008cc004888c8cc00cdd6981e8009bae303d303e00130030019b89480426e3120109b804803e600e90082444446600a4646607e6ea0cde5250375c60800026607e6080608200297ae05980098029b8d00189981f1ba930020013303e37526600860066e340040052f5c1153303a49124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e74001640e44646600e4660806ea0cdc7000a4000660806ea4cc008c090dc6800800a5eb808cc0208cc104dd419b8e00148000cc104dd49980198129b8d0010014bd70111919198221816998221ba800733044375000a66088608a00297ae033044304530460014bd7018008012cc004c05400a2653001001a5eb82006800888966002605e003123233047374e0026608e6ea40092f5c065300100180252f5c080088896600200510018cc00400e609600533049304a002001400c8242246530010059982398240008024c0ac00e6eb8c120c1240050054c004c8cc11cdd419bca4a06eb8c120004cc11cc120c1240052f5c0b30013016371a003133046375260220026608c6ea4cc050c04cdc6800800a5eb822a6608492124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e7400164105223304800233048375200297ae09b874801a6e1d200848888c8c8c8cc018ca60020033758609e00530373304e304f0083304e4c103d87a80003304e4c103d87a80003304e4c103d87a80003304e4c103d87a80003304e4c103d87a80003304e4c103d87a80003304e4c103d87a80003304e4c103d87a80003304e4c103d87a80003304e4c103d87a80003304e4c103d87a80003304e4c103d87a80003304e4c103d87a80004bd70200222259800801440063300100398290014c8c9660026078003132303c33053305400133053303c3305330543051375400697ae030553055001305037540071598009820800c4c8c8c0f4cc150c154008cc150c154004cc150c0f4cc150c154c148dd500225eb80c158c158004c154004c140dd5001c56600260660031323232303e33055305600333055305600233055305600133055303e3305530563053375400a97ae03057305700130560013055001305037540071598009805000c4c8c8c8c8c0fccc158c15c010cc158c15c00ccc158c15c008cc158c15c004cc158c0fccc158c15cc150dd500325eb80c160c160004c15c004c158004c154004c140dd5001c56600260120031323232323230403305730580053305730580043305730580033305730580023305730580013305730403305730583055375400e97ae03059305900130580013057001305600130550013050375400715980099b874802800626464646464646082660b060b200c660b060b200a660b060b2008660b060b2006660b060b2004660b060b2002660b06082660b060b260ac6ea80212f5c060b460b400260b200260b000260ae00260ac00260aa00260a06ea800e2b30013370e9006000c4c8c8c8c8c8c8c8c108cc164c16801ccc164c168018cc164c168014cc164c168010cc164c16800ccc164c168008cc164c168004cc164c108cc164c168c15cdd5004a5eb80c16cc16c004c168004c164004c160004c15c004c158004c154004c140dd5001c56600266e1d200e0018991919191919191918219982d182d8041982d182d8039982d182d8031982d182d8029982d182d8021982d182d8019982d182d8011982d182d8009982d18219982d182d982c1baa00a4bd70182e182e000982d800982d000982c800982c000982b800982b000982a80098281baa0038acc004cdc3a4020003132323232323232323230443305b305c0093305b305c0083305b305c0073305b305c0063305b305c0053305b305c0043305b305c0033305b305c0023305b305c0013305b30443305b305c3059375401697ae0305d305d001305c001305b001305a001305900130580013057001305600130550013050375400715980099b8748048006264646464646464646464608a660b860ba014660b860ba012660b860ba010660b860ba00e660b860ba00c660b860ba00a660b860ba008660b860ba006660b860ba004660b860ba002660b8608a660b860ba60b46ea80312f5c060bc60bc00260ba00260b800260b600260b400260b200260b000260ae00260ac00260aa00260a06ea800e2b30013370e900a000c4c8c8c8c8c8c8c8c8c8c8c8c118cc174c17802ccc174c178028cc174c178024cc174c178020cc174c17801ccc174c178018cc174c178014cc174c178010cc174c17800ccc174c178008cc174c178004cc174c118cc174c178c16cdd5006a5eb80c17cc17c004c178004c174004c170004c16c004c168004c164004c160004c15c004c158004c154004c140dd5001c56600266e1d2016001899191919191919191919191918239982f182f8061982f182f8059982f182f8051982f182f8049982f182f8041982f182f8039982f182f8031982f182f8029982f182f8021982f182f8019982f182f8011982f182f8009982f18239982f182f982e1baa00e4bd7018301830000982f800982f000982e800982e000982d800982d000982c800982c000982b800982b000982a80098281baa003899191919191919191919191918239982f182f8061982f182f8059982f182f8051982f182f8049982f182f8041982f182f8039982f182f8031982f182f8029982f182f8021982f182f8019982f182f8011982f182f8009982f182f98300009982f18239982f182f982e1baa00e4bd7025eb80c17c004c178004c174004c170004c16c004c168004c164004c160004c15c004c158004c154004c140dd5001a09a4134826904d209a4134826904d209a4134826904d18271baa0013051002400c8278dd718271827800991acc004c08000a2653001001a5eb820068008889660026074003123233052374e002660a46ea40092f5c065300100180252f5c080088896600200510018cc00400e60ac005330543055002001400c829a246530010059982918298008024c0d800e6eb8c14cc1500050051802800a0968a99824a4811165787065637420636f756e74203e3d2030001641206eb8c138c13c00ca60024464b30013001480422b30013001480022900044cdc7244108010204081020408000002412d1598009800a408113370490400219801801980a80144cdc124101010100406600600666e00009203f412c8258dc4000c888c8cc144c00cdd698290009982898291829800a5eb80c00c0066609a6ea0cdc7000a40006609a6ea4cc03cc0c4dc6800800a5eb81222323298009198029191982a9ba833794940dd7182b0009982a982b182b800a5eb816600260366e340062660a86ea4c060004cc150dd49980d180c9b8d0010014bd70454cc141240124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e740016413c4646006b3001303f0018a60103d87a80008981f1982a9ba80014bd7020a030030019bad3053003911191acc006600260806eb4c15c00694294505144cc02000c8c014c100cc15cdd4000a5eb822601e600898103d87a800041446eb8c15cc160004cc154dd419b8e00148000cc154dd49980b981c9b8d0010014bd7024446b3001303f002898019181f9982b000a5eb822b3001304400289801919ba548008cc1580052f5c1159800981b00144c00c8cdd2a4008660ac00297ae08acc004c03400a26600e464660ae6ea0cde5250375c60b0002660ae60b060b200297ae059800981c1b8d00189982b1ba9302200133056375266050604e6e340040052f5c1153305249124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e7400164144466e95200633056375000297ae08acc004c03000a26600e464660ae6ea0cde5250375c60b0002660ae60b060b200297ae059800981c1b8d00189982b1ba9302200133056375266050604e6e340040052f5c1153305249124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e7400164144466e952008330563750b3001337100029040400244006266e04004c0192020414497ae08acc004cdc3a40140051300323374a90051982b000a5eb822b30013370e900600144cc0048cdd2a4018660ac00297ae0232330573750600c6eb4c160004cc15cc160c1640052f5c064660ae6ea0cde5250375c60b0002660ae60b060b200297ae059800980e9b8d00189982b1ba9301a0013305637526603860366e340040052f5c11533052490124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e740016414515980099b874803800a266002466e95200e330560014bd701191982b9ba833794940dd7182c0009982b982c182c800a5eb8166002603a6e340062660ac6ea4c068004cc158dd49980e180d9b8d0010014bd70454cc14924124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e740016414515980099b874804000a266002466e952010330560014bd701191982b9ba833794940dd7182c0009982b982c182c800a5eb8166002603a6e340062660ac6ea4c068004cc158dd49980e180d9b8d0010014bd70454cc14924124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e740016414515980099b874804800a246464660b066e9520123305830590014bd701982c182c982d000a5eb80c004008cc0208c8cc160dd419bca4a06eb8c164004cc160c164c1680052f5c0b30013039371a00313305737526046002660ae6ea4cc0a4c0a0dc6800800a5eb822a660a6920124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e74001641484b300130410018a60103d87980008acc004c118006298103d87a80008acc004c0e0006298103d87b80008acc004c03c006298103d87c80008acc004c038006298103d87d80008a99829a49204d61726b657453657373696f6e2076616c7565206f7574206f662072616e676500164148829105220a4414915980099b874805000a26006466e952014330560014bd70456600266e1d201600289801919ba548058cc1580052f5c115980099b874806000a266002466e952018330560014bd701191982b9ba833794940dd7182c0009982b982c182c800a5eb8166002603a6e340062660ac6ea4c068004cc158dd49980e180d9b8d0010014bd70454cc14924124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e740016414515330514911c4665656450726f7065727479204944206f7574206f662072616e676500164140828105020a04140828105020a04140828105020a041406eb8c158c15c0184b300133710002904040404040404040400144006266e04004c00920800141346006006375a609800264660966ea0cdc7000a4000660966ea4cc034c0bcdc6800800a5eb80dd7182598260021040454cc0f924011165787065637420636f756e74203e3d2030001640f46e312002454cc0d1240125657870656374206d61676963203d3d2070726963655f7570646174655f6d616769635f6c65001640cc6eb8c0e4c0e800566002600e6e3400626606e6ea4c008004cc0dcdd49980298021b8d0010014bd70454cc0cd240124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e74001640c86eb8c050c0d0dd51980a9191acc004cdc79bae303900148904b9011a8200891919191919191991198209815198209821003998209ba90013304130420024bd70198209821182180125eb80d660026024003125980099b89002371a00313304037526601e004002660806ea66002005337026e3400400a002b8c25eb822a66078920124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e74001640ed153303b4911165787065637420636f756e74203e3d2030001640e86eb8c100c104008dd718200021bad303f001323303e375066f29281bae303f0013303e303f30400014bd702cc004c07cdc6800c4cc0f4dd498048009981e9ba93300f300e371a00200297ae08a9981ca4924657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e74001640e06eb8c0f4c0f8004d6600294624b30013371290201b8d00189981e1ba93300b48100004cc0f0dd4cc005204099b80371a002901fc0057184bd70454cc0e124124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e74001640dd15330374911165787065637420636f756e74203e3d2030001640d86eb8c0f0c0f4004c0040096600294624b3001337129040009b8d00189981d1ba9330094820004004cc0e8dd4cc00520800199b80371a002903fc0057184bd70454cc0d924124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e74001640d515330354911165787065637420636f756e74203e3d2030001640d1153303449126657870656374206d61676963203d3d20736f6c616e615f666f726d61745f6d616769635f6c65001640cc6eb8c0e4c0e800566002600e6e3400626606e6ea4c008004cc0dcdd49980298021b8d0010014bd70454cc0cd240124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e74001640c86eb8c0dc028c00d200430034802066004004605e0028162264b30010018124092049024899180198178021bae00140bc60580048150dd6000c0820408158c0a0c094dd5000c54cc08d24016465787065637420536f6d652872656465656d657229203d0a2020202070616972732e6765745f66697273742873656c662e72656465656d6572732c205769746864726177285363726970742873746174652e77697468647261775f736372697074292929001640886466446600400400244b30010018a60103d87a80008992cc004cdd78021813800c4c04ccc0a8c0a00052f5c1133003003302c002409460540028140dd5981418149814981498149814981498149814981498129baa0153374a90021981319ba548008cc098c09cc0a0c0a0c0a0c090dd5181398121baa0014bd7025eb822a660449201ff65787065637420536f6d6528737461746529203d0a202020206c6973742e66696e645f6d6170280a20202020202073656c662e7265666572656e63655f696e707574732c0a202020202020666e28696e70757429207b0a20202020202020206966206173736574732e6861735f6e66745f73747269637428696e7075742e6f75747075742e76616c75652c20707974685f69642c2022507974682053746174652229207b0a202020202020202020202f2f20737461746520746f6b656e206f757473696465206f6620736372697074206164647265737320776f756c6420696d706c792061206275670a202020202020202020206578706563742053637269dc7074285f29203d20696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c0a2020202020202020202065787065637420496e6c696e65446174756d28737461746529203d20696e7075742e6f75747075742e646174756d0a202020202020202020206578706563742073746174653a2050797468203d2073746174650a20202020202020202020536f6d65287374617465290a20202020202020207d20656c7365207b0a202020202020202020204e6f6e650a20202020202020207d0a2020202020207d2c0a20202020290016408464660020026eb0c034c090dd500a112cc0040062980103d87a80008992cc006600266ebc00530103d87a8000a50a51408d1001899801801981500120463259800cc004dd5980798131baa300f30263754003374c6605066ec0dd48109ba6330283376098010b4a50797468205374617465004c010101004bd6f7b63025eb7bdb182449450104566002602e604a6ea8c0a4c098dd5181498131baa300f3026375400313259800980518131baa0018992cc0040062b300130143027375400313259800800c08a264b30010018992cc00400604913259800800c09626644b3001001813c4c966002003028899912cc00400605513259800800c0ae05702b815c4c966002606e007159800980f98191baa00a8992cc00400605b13259800800c0ba05d02e81744cc89660020030308992cc004006063031818c4cc89660020030338992cc00400606903481a40d226644b300100181b44c96600200303781bc0de264b30013043003899810809912cc00400a26604602444b3001002898171982280e25eb8226464b30010018992cc00400607f03f81fc0fe265300100389802982580341010251bae001412c608a00503e81f40fa07c8250c10c004c11800904444c8c96600200303c81e40f20791332259800800c6600200313005304900681f204681f40fa07d03e41286eb8004c10c00904818208009822001208481c2080375a003037410c608000281f0dd7000981f8012080303d00140ec6eb4004c0f000a06281e8c0e80050381bae001303900240e8606e00281a8c0ccdd500540b103040b10341bae00140dc60680028190dd5800981980140a205102840d060620028178dd58009818001409604b02540c4605c0028160c0b800a047023811c08d02f1816000a054302837540030214095021810c0860428168c0a8c09cdd5000c54cc0952412e65787065637420496e6c696e65446174756d28737461746529203d20696e7075742e6f75747075742e646174756d00164090600c604c6ea8c03cc098dd5000c54cc09124013a65787065637420536372697074285f29203d20696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c0016408d14c103d87a8000408c6050002813088966002602260486ea800e264b300100180144c96600200313259800800c012264b30010018acc004c0b400a330010038cc00400600d0054021005402100540a9005802c01600a8170c0ac0050291815801400e007003801a0583029001409c604a6ea800e002811088966002602060466ea800e264b300100180144c96600200313259800800c012264b30010018992cc004c0a40062b3001300d302800180344c966002605c00913259800980b800c56600260566ea801a01300840b1159800980e000c4c9660020030098992cc00400601500a80544c966002606400700c805a05e375a00300a40c8605e0028168c0acdd50034566002601c00315980098159baa006804c02102c4021028205040a060526ea801600e8158c068c0a0005026401902a1baa001802c01600b00540b460540028140c0a800a007003801c00d02b1814000a04c3024375400700140849bad301f0034888966002005017899912cc00400603313259800981380144c8c8cc88c8c94cc09cdcc99800804a4500153302737326600200e9110014a0600200244464b30010038991919911980500119b8a488101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100920605980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c815102a1bac302d002375a60560026466ec0dd418158009ba7302c001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6060003337149101023a200098008054c0c400600a805100a181980144ca6002015303000199b8a489023a200098008054c0c4006600e66008008004805100a18198012062303300140c066e29220102207d0000340b46eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a0028039006205a3758007133006375a0060051323371491102682700329800800cc04cdc68014cdc52450127000044004444b30013371000490004400626466453001006980c002ccdc599b800025980099b88002480522903045206e40bc66e2ccdc0000acc004cdc4000a402914818229037205e004401866e0c00520203370c002901019b8e00400240b06eb800d0301b8a4881022c20002232330010010032259800980a800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003409881308888c8cc004004014896600200310058992cc004006266008605e00400d133005302f0023300300300140b4605e0028160c0040048896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801902340690241812800a046302300230240024084301f00230193754603860326ea8018dc024003153301749011a65787065637420536f6d6528646174756d29203d20646174756d0016405880b06e952000301437540106e1d2000805402a01500a4064602a002602a602c00260226ea800e2c8070602000260166ea8046293454cc02524011856616c696461746f722072657475726e65642066616c7365001365640201", - "hash": "132dae0e530c75546b5a65d8db2835316ab856877659f2f9cc12032d" + "compiledCode": "5929880101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bad0039bae00248888888888a60022a660089212a65787065637420757064617465733a204c6973743c4279746541727261793e203d2072656465656d657200168a998022491a6578706563742073746174653a2050797468203d20737461746500168a9980224938657870656374205b6f75745d203d2066696e645f7363726970745f6f757470757473286f7574707574732c207363726970745f686173682900168a998022492a657870656374205b66656564312c2066656564325d203d2070726963655f7570646174652e666565647300168a9980224934657870656374205b70726963655f7570646174655d203d206765745f7570646174657328707974685f706f6c6963792c2074782900168a998022491672656465656d65723a204f736952656465656d657273001648888896600264653001301100198089809000cdc3a400530110024888966002600460226ea800e2646644b300100789919912cc004c00c0062b300130183754015002806a0328acc004c0200062b300130183754015002806a032806a02a4054330013016375400b2301a301b0019b91489009b8f4881009ba548001222223322598009804180e1baa00f899192cc004c03cc078dd5000c4c9660020030188992cc004c09400a330013756601460426ea8012601460426ea80064466e2400800500540650221811800a0423232330010010062259800800c52f5c11332259800992cc004c054c090dd5000c4cdc78031bae30283025375400314a08110c09cc090dd5181398121baa00289981300119802002000c4cc01001000502118128009813000a046375c6044603e6ea80062a6603a9213a65787065637420536372697074287363726970745f6861736829203d20696e2e616464726573732e7061796d656e745f63726564656e7469616c001640706042603c6ea8c084c078dd500099198008009bac30210082259800800c5a264b30013375e604660406ea80040362601260406ea8006266006006604800480e8c0880050204566002601060386ea802633001301d37546040603a6ea8026460426044604400337009000cdc3a400891114c004dd698120024dd5981218128024c8c8cc88cc89660026024604c6ea800a264b300130133027375400313259800800c08e04713233006001225980080144c8cc004004010896600200314bd7044cc0c260026e2520009b8c480126e0120039b89480226e3120009b8c480226e01200748888888cc88cc0448c8d6600266e3cdd7181e000a450475d3c793008cc004888c8cc00cdd698200009bae3040304100130030019b89480426e3120109b804803e600e90082444446600a464660846ea0cde5250375c6086002660846086608800297ae05980098029b8d0018998209ba930020013304137526600860066e340040052f5c1153303d49124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e74001640f04646600e4660866ea0cdc7000a4000660866ea4cc008c088dc6800800a5eb808cc0208cc110dd419b8e00148000cc110dd49980198119b8d0010014bd70111919198239815998239ba800733047375000a6608e609000297ae033047304830490014bd7018008012cc004c05400a2653001001a5eb82006800888966002606200312323304a374e002660946ea40092f5c065300100180252f5c080088896600200510018cc00400e609c0053304c304d002001400c825a246530010059982518258008024c0a400e6eb8c12cc1300050054c004c8cc128dd419bca4a06eb8c12c004cc128c12cc1300052f5c0b30013016371a00313304937526022002660926ea4cc050c04cdc6800800a5eb822a6608a92124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e7400164111223304b0023304b375200297ae09b874801a6e1d200848888c8c8c8cc018ca6002003375860a40053035330513052008330514c103d87a8000330514c103d87a8000330514c103d87a8000330514c103d87a8000330514c103d87a8000330514c103d87a8000330514c103d87a8000330514c103d87a8000330514c103d87a8000330514c103d87a8000330514c103d87a8000330514c103d87a8000330514c103d87a80004bd702002222598008014400633001003982a8014c8c966002607c003132303a33056305700133056303a3305630573054375400697ae030583058001305337540071598009821800c4c8c8c0eccc15cc160008cc15cc160004cc15cc0eccc15cc160c154dd500225eb80c164c164004c160004c14cdd5001c56600260660031323232303c33058305900333058305900233058305900133058303c3305830593056375400a97ae0305a305a00130590013058001305337540071598009805000c4c8c8c8c8c0f4cc164c168010cc164c16800ccc164c168008cc164c168004cc164c0f4cc164c168c15cdd500325eb80c16cc16c004c168004c164004c160004c14cdd5001c566002601200313232323232303e3305a305b0053305a305b0043305a305b0033305a305b0023305a305b0013305a303e3305a305b3058375400e97ae0305c305c001305b001305a001305900130580013053375400715980099b87480280062646464646464607e660b660b800c660b660b800a660b660b8008660b660b8006660b660b8004660b660b8002660b6607e660b660b860b26ea80212f5c060ba60ba00260b800260b600260b400260b200260b000260a66ea800e2b30013370e9006000c4c8c8c8c8c8c8c8c100cc170c17401ccc170c174018cc170c174014cc170c174010cc170c17400ccc170c174008cc170c174004cc170c100cc170c174c168dd5004a5eb80c178c178004c174004c170004c16c004c168004c164004c160004c14cdd5001c56600266e1d200e0018991919191919191918209982e982f0041982e982f0039982e982f0031982e982f0029982e982f0021982e982f0019982e982f0011982e982f0009982e98209982e982f182d9baa00a4bd70182f982f800982f000982e800982e000982d800982d000982c800982c00098299baa0038acc004cdc3a4020003132323232323232323230423305e305f0093305e305f0083305e305f0073305e305f0063305e305f0053305e305f0043305e305f0033305e305f0023305e305f0013305e30423305e305f305c375401697ae030603060001305f001305e001305d001305c001305b001305a001305900130580013053375400715980099b87480480062646464646464646464646086660be60c0014660be60c0012660be60c0010660be60c000e660be60c000c660be60c000a660be60c0008660be60c0006660be60c0004660be60c0002660be6086660be60c060ba6ea80312f5c060c260c200260c000260be00260bc00260ba00260b800260b600260b400260b200260b000260a66ea800e2b30013370e900a000c4c8c8c8c8c8c8c8c8c8c8c8c110cc180c18402ccc180c184028cc180c184024cc180c184020cc180c18401ccc180c184018cc180c184014cc180c184010cc180c18400ccc180c184008cc180c184004cc180c110cc180c184c178dd5006a5eb80c188c188004c184004c180004c17c004c178004c174004c170004c16c004c168004c164004c160004c14cdd5001c56600266e1d201600189919191919191919191919191822998309831006198309831005998309831005198309831004998309831004198309831003998309831003198309831002998309831002198309831001998309831001198309831000998309822998309831182f9baa00e4bd7018319831800983100098308009830000982f800982f000982e800982e000982d800982d000982c800982c00098299baa003899191919191919191919191918229983098310061983098310059983098310051983098310049983098310041983098310039983098310031983098310029983098310021983098310019983098310011983098310009983098311831800998309822998309831182f9baa00e4bd7025eb80c188004c184004c180004c17c004c178004c174004c170004c16c004c168004c164004c160004c14cdd5001a0a04140828105020a04140828105020a04140828105018289baa0013054002400c8290dd718289829000991acc004c08000a2653001001a5eb820068008889660026078003123233055374e002660aa6ea40092f5c065300100180252f5c080088896600200510018cc00400e60b2005330573058002001400c82b2246530010059982a982b0008024c0d000e6eb8c158c15c0050051802800a09c8a9982624811165787065637420636f756e74203e3d20300016412c6eb8c144c14800ca60024464b30013001480422b30013001480022900044cdc724410801020408102040800000241391598009800a408113370490400219801801980a80144cdc124101010100406600600666e00009203f41388270dc4000c888c8cc150c00cdd6982a8009982a182a982b000a5eb80c00c006660a06ea0cdc7000a4000660a06ea4cc03cc0bcdc6800800a5eb81222323298009198029191982c1ba833794940dd7182c8009982c182c982d000a5eb816600260366e340062660ae6ea4c060004cc15cdd49980d180c9b8d0010014bd70454cc14d240124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e74001641484646006b300130410018a60103d87a80008981e1982c1ba80014bd7020a630030019bad3056003911191acc006600260846eb4c16800694294505444cc02000c8c014c0f8cc168dd4000a5eb822601e600898103d87a800041506eb8c168c16c004cc160dd419b8e00148000cc160dd49980b981b9b8d0010014bd7024446b30013041002898019181e9982c800a5eb822b3001304600289801919ba548008cc1640052f5c1159800981b00144c00c8cdd2a4008660b200297ae08acc004c03400a26600e464660b46ea0cde5250375c60b6002660b460b660b800297ae059800981b1b8d00189982c9ba9302200133059375266050604e6e340040052f5c1153305549124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e7400164150466e95200633059375000297ae08acc004c03000a26600e464660b46ea0cde5250375c60b6002660b460b660b800297ae059800981b1b8d00189982c9ba9302200133059375266050604e6e340040052f5c1153305549124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e7400164150466e952008330593750b3001337100029040400244006266e04004c0192020415097ae08acc004cdc3a40140051300323374a90051982c800a5eb822b30013370e900600144cc0048cdd2a4018660b200297ae02323305a3750600c6eb4c16c004cc168c16cc1700052f5c064660b46ea0cde5250375c60b6002660b460b660b800297ae059800980e9b8d00189982c9ba9301a0013305937526603860366e340040052f5c11533055490124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e740016415115980099b874803800a266002466e95200e330590014bd701191982d1ba833794940dd7182d8009982d182d982e000a5eb8166002603a6e340062660b26ea4c068004cc164dd49980e180d9b8d0010014bd70454cc15524124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e740016415115980099b874804000a266002466e952010330590014bd701191982d1ba833794940dd7182d8009982d182d982e000a5eb8166002603a6e340062660b26ea4c068004cc164dd49980e180d9b8d0010014bd70454cc15524124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e740016415115980099b874804800a246464660b666e9520123305b305c0014bd701982d982e182e800a5eb80c004008cc0208c8cc16cdd419bca4a06eb8c170004cc16cc170c1740052f5c0b30013037371a00313305a37526046002660b46ea4cc0a4c0a0dc6800800a5eb822a660ac920124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e74001641544b300130430018a60103d87980008acc004c120006298103d87a80008acc004c0e0006298103d87b80008acc004c03c006298103d87c80008acc004c038006298103d87d80008a9982b249204d61726b657453657373696f6e2076616c7565206f7574206f662072616e67650016415482a905520aa415515980099b874805000a26006466e952014330590014bd70456600266e1d201600289801919ba548058cc1640052f5c115980099b874806000a266002466e952018330590014bd701191982d1ba833794940dd7182d8009982d182d982e000a5eb8166002603a6e340062660b26ea4c068004cc164dd49980e180d9b8d0010014bd70454cc15524124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e740016415115330544911c4665656450726f7065727479204944206f7574206f662072616e67650016414c829905320a6414c829905320a6414c829905320a6414c6eb8c164c1680184b300133710002904040404040404040400144006266e04004c00920800141406006006375a609e002646609c6ea0cdc7000a40006609c6ea4cc034c0b4dc6800800a5eb80dd7182718278021043454cc10524011165787065637420636f756e74203e3d2030001641006e312002454cc0dd240125657870656374206d61676963203d3d2070726963655f7570646174655f6d616769635f6c65001640d86eb8c0f0c0f400566002600e6e340062660746ea4c008004cc0e8dd49980298021b8d0010014bd70454cc0d9240124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e74001640d46eb8c064c0dcdd5198089191acc004cdc79bae303c00148904b9011a8200891919191919191991198221814198221822803998221ba90013304430450024bd70198221822982300125eb80d660026024003125980099b89002371a00313304337526601e004002660866ea66002005337026e3400400a002b8c25eb822a6607e920124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e74001640f9153303e4911165787065637420636f756e74203e3d2030001640f46eb8c10cc110008dd718218021bad30420013233041375066f29281bae304200133041304230430014bd702cc004c074dc6800c4cc100dd49804800998201ba93300f300e371a00200297ae08a9981e24924657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e74001640ec6eb8c100c104004d6600294624b30013371290201b8d00189981f9ba93300b48100004cc0fcdd4cc005204099b80371a002901fc0057184bd70454cc0ed24124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e74001640e9153303a4911165787065637420636f756e74203e3d2030001640e46eb8c0fcc100004c0040096600294624b3001337129040009b8d00189981e9ba9330094820004004cc0f4dd4cc00520800199b80371a002903fc0057184bd70454cc0e524124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e74001640e115330384911165787065637420636f756e74203e3d2030001640dd153303749126657870656374206d61676963203d3d20736f6c616e615f666f726d61745f6d616769635f6c65001640d86eb8c0f0c0f400566002600e6e340062660746ea4c008004cc0e8dd49980298021b8d0010014bd70454cc0d9240124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e74001640d46eb8c0e8028c00d2004300348020660040046064002817a264b3001001813c09e04f027899180198190021bae00140c8605e0048168dd6000c08e0468170c0acc0a0dd5000c54cc09924016465787065637420536f6d652872656465656d657229203d0a2020202070616972732e6765745f66697273742873656c662e72656465656d6572732c205769746864726177285363726970742873746174652e77697468647261775f736372697074292929001640946466446600400400244b30010018a60103d87a80008992cc004cdd78021815000c4c044cc0b4c0ac0052f5c1133003003302f00240a0605a0028158dd5981598161816181618161816181618161816181618141baa0173374a90021981499ba548008cc0a4c0a8c0acc0acc0acc09cdd5181518139baa0024bd7025eb822a6604a9201ff65787065637420536f6d6528737461746529203d0a202020206c6973742e66696e645f6d6170280a20202020202073656c662e7265666572656e63655f696e707574732c0a202020202020666e28696e70757429207b0a20202020202020206966206173736574732e6861735f6e66745f73747269637428696e7075742e6f75747075742e76616c75652c20707974685f69642c2022507974682053746174652229207b0a202020202020202020202f2f20737461746520746f6b656e206f757473696465206f6620736372697074206164647265737320776f756c6420696d706c792061206275670a202020202020202020206578706563742053637269dc7074285f29203d20696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c0a2020202020202020202065787065637420496e6c696e65446174756d28737461746529203d20696e7075742e6f75747075742e646174756d0a202020202020202020206578706563742073746174653a2050797468203d2073746174650a20202020202020202020536f6d65287374617465290a20202020202020207d20656c7365207b0a202020202020202020204e6f6e650a20202020202020207d0a2020202020207d2c0a20202020290016409064660020026eb0c03cc098dd500a912cc0040062980103d87a80008992cc006600266ebc00530103d87a8000a50a51409510018998018019816001204a3259800cc004dd5980898141baa301130283754003374c6605466ec0dd48119ba63302a3376098010b4a50797468205374617465004c010101004bd6f7b63025eb7bdb1824494500c45660026030604e6ea8c0acc0a0dd5181598141baa30113028375400313259800980498141baa0018992cc0040062b300130153029375400313259800800c092264b30010018992cc00400604d13259800800c09e26644b3001001814c4c96600200302a899912cc00400605913259800800c0b605b02d816c4c96600260720071598009810181a1baa00a8992cc00400605f13259800800c0c206103081844cc89660020030328992cc004006067033819c4cc89660020030358992cc00400606d03681b40da26644b300100181c44c96600200303981cc0e6264b3001304500389980e809912cc00400a26603e02444b3001002898159982380e25eb8226464b30010018992cc004006083041820c106265300100389802982680341090261bae0014134608e00504082041020808260c114004c12000904644c8c96600200303e81f40fa07d1332259800800c6600200313005304b0068202048820410208104041306eb8004c11400904a18218009823001208881d2084375a003039411460840028200dd700098208012084303f00140f46eb4004c0f800a06681f8c0f000503a1bae001303b00240f0607200281b8c0d4dd500540b903240b90361bae00140e4606c00281a0dd5800981a80140aa05502a40d860660028188dd58009819001409e04f02740cc60600028170c0c000a04b025812c0950311817000a058302a3754003023409d023811c08e0468178c0b0c0a4dd5000c54cc09d2412e65787065637420496e6c696e65446174756d28737461746529203d20696e7075742e6f75747075742e646174756d00164098601460506ea8c044c0a0dd5000c54cc09924013a65787065637420536372697074285f29203d20696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c0016409514c103d87a800040946054002814088c966002601e6eb8c0acc0b000626056003153302649011b6578706563742028612c20235b5d29203d2073656c662873726329001640946004002444b300130113025375400713259800800c00a264b30010018992cc00400600913259800800c566002605c00519800801c66002003006802a010802a010802a056802c01600b00540bc60580028150c0b000a007003801c00d02d1815000a05030263754007001408c44646600200200644660060026004004444b300130103024375400713259800800c00a264b30010018992cc00400600913259800800c4c966002605400315980098049814800c01a264b3001302f0048992cc004c05c0062b3001302c375400d009804205a8acc004c070006264b3001001804c4c96600200300a805402a264b30013033003806402d0301bad0018052066303000140b860586ea801a2b3001300c0018acc004c0b0dd50034026010816a01081490292052302a375400b00740b060346052002813a00c8158dd5000c01600b005802a05c302b00140a46056005003801c00e0068160c0a400502718129baa003800a044371290022444b300100180d44c966002605200513259800800c07626644b300100180fc4c966002605a005198009119911809998179ba8337046eb4c0c0008dd69818000998179ba8337046eb4c0c0c0c4008dd698181818800a5eb80c0acdd500118159baa00191808198161ba80013302c4c10101004bd704dc0a40012302d302e302e302e302e302e302e302e00148888c966002b3001329800800c0369450011112cc00400a2003132329800802cc0dc01264b3001301f30333754003159800acc004cdc49919b83375a60700026eb4c0e0c0e4004c0d0dd5181b981a1baa001329800800cc8cc00400406c896600200314bd7044c8cc8966002605460726ea800a26600a00a00313303c303d303a37540046600a00a00281b96600266ebcc0ecc0e0dd5181d981c1baa0010068980f1981d1810981c1baa0014bd704530103d87a800040d46078004607400281c290002002222598008014400633001003981d8014cdc019199119801001000912cc0040060071323322598009812801456600260480051001803207489980280298208022074375c60740026eb4c0ec004c0f400503b1919198008009bab303d0052259800800c00e2646644b300130260028acc004c09400a200300640ed133005005304200440ec6eb8c0ec004dd5981e000981f000a07814bd6f7b6300a400000280190384528c54cc0c9241386f7574707574735f76616c7565203e3d20726174696f6e616c2e666c6f6f722865787065637465645f7061796f757429203f2046616c73650014a0818a200914a0818a2a660649216765787065637420536f6d652865787065637465645f7061796f757429203d0a2020202020202020202020202020202020202020726174696f6e616c2e64697628726174696f6e616c2e66726f6d5f696e742876292c2071756f74655f6d756c7469706c69657229001640c464b300130243033375400314c103d87a80008980d1981b1980598051bad303400330373034375400297ae040c4646644b300133710004900044c070cc0e0c070cc0e0dd418058009981c1ba8300b0024bd7025eb822b300133710900000144c070cc0e0c070cc0e0dd40009981c1ba80024bd7025eb822980103d87a800040cc8198dd6981b8009bad303730380013033375400c8028c0c4004c0d00090324528c54cc0b1241157061796f7574735f6d61746368203f2046616c73650014a0815a2b30015980099b87375a6062605c6ea80200aa29462a6605892120626173655f63757272656e63795f666565645f6d61746368203f2046616c73650014a0815a2b30015980099912cc004c8c966002603a00314a31598009811000c4c966002604660646ea8c070c0ccdd5181b18199baa005899b89001004899b8800100440c06eb4c0d4c0c8dd50014528205e40bc60606ea8004c0ccc0c0dd5181998181baa002899192cc004c07400629422b300130220018992cc004c08cc0c8dd5180e18199baa301c3033375400b1337120080031337100080028180dd6981a98191baa0028a5140bc8178c0c0dd5000981998181baa30193030375400514a08168c008c0b8dd500e9bad3031302e375401514a3153302c4911e666565645f74696d655f77697468696e5f72616e6765203f2046616c73650014a0815a2b3001323232598009810800c4c966002604460626ea8c06cc0c8dd5180d98191baa004899b88001011899b8900101140bc6eb4c0d0c0c4dd50014566002602200314a114a2817102e18179baa0013032302f37546030605e6ea8004c008c0b8dd500ec528c54cc0b124011f7061796d656e745f6265666f72655f646561646c696e65203f2046616c73650014a0815a294102b452820568a5040ac664530013002002980098179baa00992cc004c06cc0bcdd5000c4c0ccc0c0dd5000c5300103d87a800040b49112cc004c074c0c4dd500144c966002603c60646ea8006264b3001301f30333754003132598009810181a1baa0018992cc004c084c0d4dd5000c4c9660026044606c6ea800626601c6074606e6ea8004c0e8c0dcdd5002454cc0d52414065787065637420536f6d652870726963655f726174696f29203d20726174696f6e616c2e6e657728626173655f70726963652c2071756f74655f707269636529001640d06644b300130230018a6103d87a80008acc004cdc4000a40011301e3303a301e3303a3750601a004660746ea0c0340052f5c097ae08980f1981d180f1981d1ba80023303a375000297ae04bd70206a40d46eb4c0e4c0d8dd50011bad30393036375400315330344913b65787065637420536f6d652871756f74655f707269636529203d206f7074696f6e2e666c617474656e2871756f74655f666565642e707269636529001640cc6008603c606a6ea80362a6606692013965787065637420536f6d6528626173655f707269636529203d206f7074696f6e2e666c617474656e28626173655f666565642e707269636529001640c86006603a60686ea803a2a6606492015c65787065637420536f6d65286d756c7469706c69657229203d0a20202020726174696f6e616c2e66726f6d5f696e7428313029207c3e20726174696f6e616c2e706f7728625f6578706f6e656e74202d20715f6578706f6e656e7429001640c464653001375a6070003375a60706072003337026eb4c0e0c0d4dd50029bad3038303537540069112cc00566002604600713371200290004528206a8a6103d87a80008acc004cdc4240000031301e3303a301e3303a375066012006002660746ea0cc0240080052f5c097ae08acc004cdc4000a40011301e3303a301e3303a375066012004601a002660746ea0cc02400cc0340052f5c097ae08a610ad8799fd8799f0101ffff0040d481a90350c0d0dd50009804a4029153303149012d65787065637420536f6d6528715f6578706f6e656e7429203d2071756f74655f666565642e6578706f6e656e74001640c0600860646ea802a2a6606092012c65787065637420536f6d6528625f6578706f6e656e7429203d20626173655f666565642e6578706f6e656e74001640bc2225980099b8800148002290004566002603600314800a264b3001301c3370c0049002466002009300100399b830024801100444c0066002009300100399b83301200248011004205c3704004816902d1181898191819181918191819000a0408150c0ac00502918148009815000a04e3758600e604a6ea80060368130c09c0050251153301b49011a65787065637420536f6d6528646174756d29203d20646174756d0016406880d0dd6180f180f980f8029112cc00400a2942265300132598009805980f9baa00189bad302030233756604660406ea800629000203a30220019baf302230230019bab003488966002003159800980100344cc01400d20008a50407d1325980099baf30220014c010140008acc004cc018010dd6981198131bab3023001898019ba630270028a5040811598009980300224001130030078a5040808100c0940050230ca60020030049119811801198119ba60014bd7020022225980080144cc005300103d87a80004bd6f7b63044ca60026eb8c0840066eacc088006604c0069112cc004c03400e2b3001300c0038998029805998139ba60024bd70000c4cc01530103d87a8000006408919800803c006446600e0046605266ec0dd48029ba6004001401c8110604800481122942294229410230c054dd50041b874800201500a805402901a180b000980b180b80098091baa0038b201e180880098061baa0128a4d153300a4911856616c696461746f722072657475726e65642066616c7365001365640241", + "hash": "055bd9d478929653c5e23c0f3024cb2fdb154a02d2a88e93068eb669" }, { - "title": "osi.oracleSettled.else", + "title": "osi.oracle_settled_invoice.else", "redeemer": { "schema": {} }, @@ -61,8 +61,8 @@ } } ], - "compiledCode": "59232d0101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bad0039bae00248888888888a60022a660089212a65787065637420757064617465733a204c6973743c4279746541727261793e203d2072656465656d657200168a998022491a6578706563742073746174653a2050797468203d20737461746500168a9980224938657870656374205b6f75745d203d2066696e645f7363726970745f6f757470757473286f7574707574732c207363726970745f686173682900168a9980224934657870656374205b66656564312c2066656564325d203d206765745f7570646174657328707974685f706f6c6963792c2074782900168a998022491672656465656d65723a204f736952656465656d65727300164888896600264653001301000198081808800cdc3a400530100024888966002600460206ea800e2646644b300100789919912cc004c00c0062b300130173754015002806a0308acc004c0200062b300130173754015002806a030806a0284050265300122259800801452844ca600264b30013007301a37540031375a6036603c6eacc078c06cdd5000c520004060603a003375e603a603c00337560069112cc0040062b30013002006899802801a400114a080d2264b30013375e603a0029810140008acc004cc018010dd6980f18109bab301e001898019ba630220028a50406d1598009980300224001130030078a50406c80d8c08000501e0ca6002003004911980f0011980f1ba60014bd7020022225980080144cc005300103d87a80004bd6f7b63044ca60026eb8c0700066eacc07400660420069112cc004cdc8a441000038acc004cdc7a441000038998029805998111ba60024bd70000c4cc015300103d87a8000006407519800803c006446600e0046604866ec0dd48029ba6004001401c80e8603e00480ea29422942294101e48c068c06c006602c6ea8019222598009802980c1baa00c899192cc004c030c068dd5000c4c9660020030148992cc004c08400a330013756600c603a6ea8012600c603a6ea80064466e24008005007405501e180f800a03a323233001001375860406042604200a44b30010018a5eb8226644b30013259800980918101baa001899b8f006375c604860426ea8006294101e181198101baa30233020375400513302200233004004001899802002000a03a30210013022001407c6eb8c078c06cdd5000c54cc0652413a65787065637420536372697074287363726970745f6861736829203d20696e2e616464726573732e7061796d656e745f63726564656e7469616c00164060603a60346ea8c074c068dd500099198008009bac301d0022259800800c5a264b30013375e603e60386ea800402a2600a60386ea8006266006006604000480c8c07800501c4566002600a60306ea801a266446530013756603e003301f3020001cc004dc4a4009370e9002488c8cc00400400c88cc00c004c00800a4464b30013371e910100375c60446046003130220018a9980ea4811b6578706563742028612c20235b5d29203d2073656c6628737263290016407060040032302030213021001488888c8c8c966002602060466ea8006264b300130113024375400313259800800c08204113233009001225980080144c8cc004004010896600200314bd7044cc0b660026e2520009b8c480126e0120039b89480226e3120009b8c480226e01200748888888cc88cc0548c8d6600266e3cdd7181c800a450475d3c793008cc004888c8cc00cdd6981e8009bae303d303e00130030019b89480426e3120109b804803e600e90082444446600a4646607e6ea0cde5250375c60800026607e6080608200297ae05980098029b8d00189981f1ba930020013303e37526600860066e340040052f5c1153303a49124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e74001640e44646600e4660806ea0cdc7000a4000660806ea4cc008c090dc6800800a5eb808cc0208cc104dd419b8e00148000cc104dd49980198129b8d0010014bd70111919198221816998221ba800733044375000a66088608a00297ae033044304530460014bd7018008012cc004c05400a2653001001a5eb82006800888966002605e003123233047374e0026608e6ea40092f5c065300100180252f5c080088896600200510018cc00400e609600533049304a002001400c8242246530010059982398240008024c0ac00e6eb8c120c1240050054c004c8cc11cdd419bca4a06eb8c120004cc11cc120c1240052f5c0b30013016371a003133046375260220026608c6ea4cc050c04cdc6800800a5eb822a6608492124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e7400164105223304800233048375200297ae09b874801a6e1d200848888c8c8c8cc018ca60020033758609e00530373304e304f0083304e4c103d87a80003304e4c103d87a80003304e4c103d87a80003304e4c103d87a80003304e4c103d87a80003304e4c103d87a80003304e4c103d87a80003304e4c103d87a80003304e4c103d87a80003304e4c103d87a80003304e4c103d87a80003304e4c103d87a80003304e4c103d87a80004bd70200222259800801440063300100398290014c8c9660026078003132303c33053305400133053303c3305330543051375400697ae030553055001305037540071598009820800c4c8c8c0f4cc150c154008cc150c154004cc150c0f4cc150c154c148dd500225eb80c158c158004c154004c140dd5001c56600260660031323232303e33055305600333055305600233055305600133055303e3305530563053375400a97ae03057305700130560013055001305037540071598009805000c4c8c8c8c8c0fccc158c15c010cc158c15c00ccc158c15c008cc158c15c004cc158c0fccc158c15cc150dd500325eb80c160c160004c15c004c158004c154004c140dd5001c56600260120031323232323230403305730580053305730580043305730580033305730580023305730580013305730403305730583055375400e97ae03059305900130580013057001305600130550013050375400715980099b874802800626464646464646082660b060b200c660b060b200a660b060b2008660b060b2006660b060b2004660b060b2002660b06082660b060b260ac6ea80212f5c060b460b400260b200260b000260ae00260ac00260aa00260a06ea800e2b30013370e9006000c4c8c8c8c8c8c8c8c108cc164c16801ccc164c168018cc164c168014cc164c168010cc164c16800ccc164c168008cc164c168004cc164c108cc164c168c15cdd5004a5eb80c16cc16c004c168004c164004c160004c15c004c158004c154004c140dd5001c56600266e1d200e0018991919191919191918219982d182d8041982d182d8039982d182d8031982d182d8029982d182d8021982d182d8019982d182d8011982d182d8009982d18219982d182d982c1baa00a4bd70182e182e000982d800982d000982c800982c000982b800982b000982a80098281baa0038acc004cdc3a4020003132323232323232323230443305b305c0093305b305c0083305b305c0073305b305c0063305b305c0053305b305c0043305b305c0033305b305c0023305b305c0013305b30443305b305c3059375401697ae0305d305d001305c001305b001305a001305900130580013057001305600130550013050375400715980099b8748048006264646464646464646464608a660b860ba014660b860ba012660b860ba010660b860ba00e660b860ba00c660b860ba00a660b860ba008660b860ba006660b860ba004660b860ba002660b8608a660b860ba60b46ea80312f5c060bc60bc00260ba00260b800260b600260b400260b200260b000260ae00260ac00260aa00260a06ea800e2b30013370e900a000c4c8c8c8c8c8c8c8c8c8c8c8c118cc174c17802ccc174c178028cc174c178024cc174c178020cc174c17801ccc174c178018cc174c178014cc174c178010cc174c17800ccc174c178008cc174c178004cc174c118cc174c178c16cdd5006a5eb80c17cc17c004c178004c174004c170004c16c004c168004c164004c160004c15c004c158004c154004c140dd5001c56600266e1d2016001899191919191919191919191918239982f182f8061982f182f8059982f182f8051982f182f8049982f182f8041982f182f8039982f182f8031982f182f8029982f182f8021982f182f8019982f182f8011982f182f8009982f18239982f182f982e1baa00e4bd7018301830000982f800982f000982e800982e000982d800982d000982c800982c000982b800982b000982a80098281baa003899191919191919191919191918239982f182f8061982f182f8059982f182f8051982f182f8049982f182f8041982f182f8039982f182f8031982f182f8029982f182f8021982f182f8019982f182f8011982f182f8009982f182f98300009982f18239982f182f982e1baa00e4bd7025eb80c17c004c178004c174004c170004c16c004c168004c164004c160004c15c004c158004c154004c140dd5001a09a4134826904d209a4134826904d209a4134826904d18271baa0013051002400c8278dd718271827800991acc004c08000a2653001001a5eb820068008889660026074003123233052374e002660a46ea40092f5c065300100180252f5c080088896600200510018cc00400e60ac005330543055002001400c829a246530010059982918298008024c0d800e6eb8c14cc1500050051802800a0968a99824a4811165787065637420636f756e74203e3d2030001641206eb8c138c13c00ca60024464b30013001480422b30013001480022900044cdc7244108010204081020408000002412d1598009800a408113370490400219801801980a80144cdc124101010100406600600666e00009203f412c8258dc4000c888c8cc144c00cdd698290009982898291829800a5eb80c00c0066609a6ea0cdc7000a40006609a6ea4cc03cc0c4dc6800800a5eb81222323298009198029191982a9ba833794940dd7182b0009982a982b182b800a5eb816600260366e340062660a86ea4c060004cc150dd49980d180c9b8d0010014bd70454cc141240124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e740016413c4646006b3001303f0018a60103d87a80008981f1982a9ba80014bd7020a030030019bad3053003911191acc006600260806eb4c15c00694294505144cc02000c8c014c100cc15cdd4000a5eb822601e600898103d87a800041446eb8c15cc160004cc154dd419b8e00148000cc154dd49980b981c9b8d0010014bd7024446b3001303f002898019181f9982b000a5eb822b3001304400289801919ba548008cc1580052f5c1159800981b00144c00c8cdd2a4008660ac00297ae08acc004c03400a26600e464660ae6ea0cde5250375c60b0002660ae60b060b200297ae059800981c1b8d00189982b1ba9302200133056375266050604e6e340040052f5c1153305249124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e7400164144466e95200633056375000297ae08acc004c03000a26600e464660ae6ea0cde5250375c60b0002660ae60b060b200297ae059800981c1b8d00189982b1ba9302200133056375266050604e6e340040052f5c1153305249124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e7400164144466e952008330563750b3001337100029040400244006266e04004c0192020414497ae08acc004cdc3a40140051300323374a90051982b000a5eb822b30013370e900600144cc0048cdd2a4018660ac00297ae0232330573750600c6eb4c160004cc15cc160c1640052f5c064660ae6ea0cde5250375c60b0002660ae60b060b200297ae059800980e9b8d00189982b1ba9301a0013305637526603860366e340040052f5c11533052490124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e740016414515980099b874803800a266002466e95200e330560014bd701191982b9ba833794940dd7182c0009982b982c182c800a5eb8166002603a6e340062660ac6ea4c068004cc158dd49980e180d9b8d0010014bd70454cc14924124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e740016414515980099b874804000a266002466e952010330560014bd701191982b9ba833794940dd7182c0009982b982c182c800a5eb8166002603a6e340062660ac6ea4c068004cc158dd49980e180d9b8d0010014bd70454cc14924124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e740016414515980099b874804800a246464660b066e9520123305830590014bd701982c182c982d000a5eb80c004008cc0208c8cc160dd419bca4a06eb8c164004cc160c164c1680052f5c0b30013039371a00313305737526046002660ae6ea4cc0a4c0a0dc6800800a5eb822a660a6920124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e74001641484b300130410018a60103d87980008acc004c118006298103d87a80008acc004c0e0006298103d87b80008acc004c03c006298103d87c80008acc004c038006298103d87d80008a99829a49204d61726b657453657373696f6e2076616c7565206f7574206f662072616e676500164148829105220a4414915980099b874805000a26006466e952014330560014bd70456600266e1d201600289801919ba548058cc1580052f5c115980099b874806000a266002466e952018330560014bd701191982b9ba833794940dd7182c0009982b982c182c800a5eb8166002603a6e340062660ac6ea4c068004cc158dd49980e180d9b8d0010014bd70454cc14924124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e740016414515330514911c4665656450726f7065727479204944206f7574206f662072616e676500164140828105020a04140828105020a04140828105020a041406eb8c158c15c0184b300133710002904040404040404040400144006266e04004c00920800141346006006375a609800264660966ea0cdc7000a4000660966ea4cc034c0bcdc6800800a5eb80dd7182598260021040454cc0f924011165787065637420636f756e74203e3d2030001640f46e312002454cc0d1240125657870656374206d61676963203d3d2070726963655f7570646174655f6d616769635f6c65001640cc6eb8c0e4c0e800566002600e6e3400626606e6ea4c008004cc0dcdd49980298021b8d0010014bd70454cc0cd240124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e74001640c86eb8c050c0d0dd51980a9191acc004cdc79bae303900148904b9011a8200891919191919191991198209815198209821003998209ba90013304130420024bd70198209821182180125eb80d660026024003125980099b89002371a00313304037526601e004002660806ea66002005337026e3400400a002b8c25eb822a66078920124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e74001640ed153303b4911165787065637420636f756e74203e3d2030001640e86eb8c100c104008dd718200021bad303f001323303e375066f29281bae303f0013303e303f30400014bd702cc004c07cdc6800c4cc0f4dd498048009981e9ba93300f300e371a00200297ae08a9981ca4924657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e74001640e06eb8c0f4c0f8004d6600294624b30013371290201b8d00189981e1ba93300b48100004cc0f0dd4cc005204099b80371a002901fc0057184bd70454cc0e124124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e74001640dd15330374911165787065637420636f756e74203e3d2030001640d86eb8c0f0c0f4004c0040096600294624b3001337129040009b8d00189981d1ba9330094820004004cc0e8dd4cc00520800199b80371a002903fc0057184bd70454cc0d924124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e74001640d515330354911165787065637420636f756e74203e3d2030001640d1153303449126657870656374206d61676963203d3d20736f6c616e615f666f726d61745f6d616769635f6c65001640cc6eb8c0e4c0e800566002600e6e3400626606e6ea4c008004cc0dcdd49980298021b8d0010014bd70454cc0cd240124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e74001640c86eb8c0dc028c00d200430034802066004004605e0028162264b30010018124092049024899180198178021bae00140bc60580048150dd6000c0820408158c0a0c094dd5000c54cc08d24016465787065637420536f6d652872656465656d657229203d0a2020202070616972732e6765745f66697273742873656c662e72656465656d6572732c205769746864726177285363726970742873746174652e77697468647261775f736372697074292929001640886466446600400400244b30010018a60103d87a80008992cc004cdd78021813800c4c04ccc0a8c0a00052f5c1133003003302c002409460540028140dd5981418149814981498149814981498149814981498129baa0153374a90021981319ba548008cc098c09cc0a0c0a0c0a0c090dd5181398121baa0014bd7025eb822a660449201ff65787065637420536f6d6528737461746529203d0a202020206c6973742e66696e645f6d6170280a20202020202073656c662e7265666572656e63655f696e707574732c0a202020202020666e28696e70757429207b0a20202020202020206966206173736574732e6861735f6e66745f73747269637428696e7075742e6f75747075742e76616c75652c20707974685f69642c2022507974682053746174652229207b0a202020202020202020202f2f20737461746520746f6b656e206f757473696465206f6620736372697074206164647265737320776f756c6420696d706c792061206275670a202020202020202020206578706563742053637269dc7074285f29203d20696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c0a2020202020202020202065787065637420496e6c696e65446174756d28737461746529203d20696e7075742e6f75747075742e646174756d0a202020202020202020206578706563742073746174653a2050797468203d2073746174650a20202020202020202020536f6d65287374617465290a20202020202020207d20656c7365207b0a202020202020202020204e6f6e650a20202020202020207d0a2020202020207d2c0a20202020290016408464660020026eb0c034c090dd500a112cc0040062980103d87a80008992cc006600266ebc00530103d87a8000a50a51408d1001899801801981500120463259800cc004dd5980798131baa300f30263754003374c6605066ec0dd48109ba6330283376098010b4a50797468205374617465004c010101004bd6f7b63025eb7bdb182449450104566002602e604a6ea8c0a4c098dd5181498131baa300f3026375400313259800980518131baa0018992cc0040062b300130143027375400313259800800c08a264b30010018992cc00400604913259800800c09626644b3001001813c4c966002003028899912cc00400605513259800800c0ae05702b815c4c966002606e007159800980f98191baa00a8992cc00400605b13259800800c0ba05d02e81744cc89660020030308992cc004006063031818c4cc89660020030338992cc00400606903481a40d226644b300100181b44c96600200303781bc0de264b30013043003899810809912cc00400a26604602444b3001002898171982280e25eb8226464b30010018992cc00400607f03f81fc0fe265300100389802982580341010251bae001412c608a00503e81f40fa07c8250c10c004c11800904444c8c96600200303c81e40f20791332259800800c6600200313005304900681f204681f40fa07d03e41286eb8004c10c00904818208009822001208481c2080375a003037410c608000281f0dd7000981f8012080303d00140ec6eb4004c0f000a06281e8c0e80050381bae001303900240e8606e00281a8c0ccdd500540b103040b10341bae00140dc60680028190dd5800981980140a205102840d060620028178dd58009818001409604b02540c4605c0028160c0b800a047023811c08d02f1816000a054302837540030214095021810c0860428168c0a8c09cdd5000c54cc0952412e65787065637420496e6c696e65446174756d28737461746529203d20696e7075742e6f75747075742e646174756d00164090600c604c6ea8c03cc098dd5000c54cc09124013a65787065637420536372697074285f29203d20696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c0016408d14c103d87a8000408c6050002813088966002602260486ea800e264b300100180144c96600200313259800800c012264b30010018acc004c0b400a330010038cc00400600d0054021005402100540a9005802c01600a8170c0ac0050291815801400e007003801a0583029001409c604a6ea800e002811088966002602060466ea800e264b300100180144c96600200313259800800c012264b30010018992cc004c0a40062b3001300d302800180344c966002605c00913259800980b800c56600260566ea801a01300840b1159800980e000c4c9660020030098992cc00400601500a80544c966002606400700c805a05e375a00300a40c8605e0028168c0acdd50034566002601c00315980098159baa006804c02102c4021028205040a060526ea801600e8158c068c0a0005026401902a1baa001802c01600b00540b460540028140c0a800a007003801c00d02b1814000a04c3024375400700140849bad301f0034888966002005017899912cc00400603313259800981380144c8c8cc88c8c94cc09cdcc99800804a4500153302737326600200e9110014a0600200244464b30010038991919911980500119b8a488101280059800800c4cdc52441035b5d2900006899b8a489035b5f20009800800ccdc52441025d2900006914c00402a00530070014029229800805400a002805100920605980099b880014803a266e0120f2010018acc004cdc4000a41000513370066e01208014001480362c815102a1bac302d002375a60560026466ec0dd418158009ba7302c001375400713259800800c4cdc52441027b7d00003899b8a489037b5f20003232330010010032259800800c400e264b30010018994c00402a6060003337149101023a200098008054c0c400600a805100a181980144ca6002015303000199b8a489023a200098008054c0c4006600e66008008004805100a18198012062303300140c066e29220102207d0000340b46eac00e264b3001001899b8a489025b5d00003899b8a489035b5f20009800800ccdc52441015d00003914c00401e0053004001401d229800803c00a0028039006205a3758007133006375a0060051323371491102682700329800800cc04cdc68014cdc52450127000044004444b30013371000490004400626466453001006980c002ccdc599b800025980099b88002480522903045206e40bc66e2ccdc0000acc004cdc4000a402914818229037205e004401866e0c00520203370c002901019b8e00400240b06eb800d0301b8a4881022c20002232330010010032259800980a800c4cdc52450130000038acc004cdc4000a40011337149101012d0033002002337029000000c4cc014cdc2000a402866e2ccdc019b85001480512060003409881308888c8cc004004014896600200310058992cc004006266008605e00400d133005302f0023300300300140b4605e0028160c0040048896600266e2400920008800c6600200733708004900a4cdc599b803370a004900a240c0002801902340690241812800a046302300230240024084301f00230193754603860326ea8018dc024003153301749011a65787065637420536f6d6528646174756d29203d20646174756d0016405880b06e952000301437540106e1d2000805402a01500a4064602a002602a602c00260226ea800e2c8070602000260166ea8046293454cc02524011856616c696461746f722072657475726e65642066616c7365001365640201", - "hash": "132dae0e530c75546b5a65d8db2835316ab856877659f2f9cc12032d" + "compiledCode": "5929880101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bad0039bae00248888888888a60022a660089212a65787065637420757064617465733a204c6973743c4279746541727261793e203d2072656465656d657200168a998022491a6578706563742073746174653a2050797468203d20737461746500168a9980224938657870656374205b6f75745d203d2066696e645f7363726970745f6f757470757473286f7574707574732c207363726970745f686173682900168a998022492a657870656374205b66656564312c2066656564325d203d2070726963655f7570646174652e666565647300168a9980224934657870656374205b70726963655f7570646174655d203d206765745f7570646174657328707974685f706f6c6963792c2074782900168a998022491672656465656d65723a204f736952656465656d657273001648888896600264653001301100198089809000cdc3a400530110024888966002600460226ea800e2646644b300100789919912cc004c00c0062b300130183754015002806a0328acc004c0200062b300130183754015002806a032806a02a4054330013016375400b2301a301b0019b91489009b8f4881009ba548001222223322598009804180e1baa00f899192cc004c03cc078dd5000c4c9660020030188992cc004c09400a330013756601460426ea8012601460426ea80064466e2400800500540650221811800a0423232330010010062259800800c52f5c11332259800992cc004c054c090dd5000c4cdc78031bae30283025375400314a08110c09cc090dd5181398121baa00289981300119802002000c4cc01001000502118128009813000a046375c6044603e6ea80062a6603a9213a65787065637420536372697074287363726970745f6861736829203d20696e2e616464726573732e7061796d656e745f63726564656e7469616c001640706042603c6ea8c084c078dd500099198008009bac30210082259800800c5a264b30013375e604660406ea80040362601260406ea8006266006006604800480e8c0880050204566002601060386ea802633001301d37546040603a6ea8026460426044604400337009000cdc3a400891114c004dd698120024dd5981218128024c8c8cc88cc89660026024604c6ea800a264b300130133027375400313259800800c08e04713233006001225980080144c8cc004004010896600200314bd7044cc0c260026e2520009b8c480126e0120039b89480226e3120009b8c480226e01200748888888cc88cc0448c8d6600266e3cdd7181e000a450475d3c793008cc004888c8cc00cdd698200009bae3040304100130030019b89480426e3120109b804803e600e90082444446600a464660846ea0cde5250375c6086002660846086608800297ae05980098029b8d0018998209ba930020013304137526600860066e340040052f5c1153303d49124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e74001640f04646600e4660866ea0cdc7000a4000660866ea4cc008c088dc6800800a5eb808cc0208cc110dd419b8e00148000cc110dd49980198119b8d0010014bd70111919198239815998239ba800733047375000a6608e609000297ae033047304830490014bd7018008012cc004c05400a2653001001a5eb82006800888966002606200312323304a374e002660946ea40092f5c065300100180252f5c080088896600200510018cc00400e609c0053304c304d002001400c825a246530010059982518258008024c0a400e6eb8c12cc1300050054c004c8cc128dd419bca4a06eb8c12c004cc128c12cc1300052f5c0b30013016371a00313304937526022002660926ea4cc050c04cdc6800800a5eb822a6608a92124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e7400164111223304b0023304b375200297ae09b874801a6e1d200848888c8c8c8cc018ca6002003375860a40053035330513052008330514c103d87a8000330514c103d87a8000330514c103d87a8000330514c103d87a8000330514c103d87a8000330514c103d87a8000330514c103d87a8000330514c103d87a8000330514c103d87a8000330514c103d87a8000330514c103d87a8000330514c103d87a8000330514c103d87a80004bd702002222598008014400633001003982a8014c8c966002607c003132303a33056305700133056303a3305630573054375400697ae030583058001305337540071598009821800c4c8c8c0eccc15cc160008cc15cc160004cc15cc0eccc15cc160c154dd500225eb80c164c164004c160004c14cdd5001c56600260660031323232303c33058305900333058305900233058305900133058303c3305830593056375400a97ae0305a305a00130590013058001305337540071598009805000c4c8c8c8c8c0f4cc164c168010cc164c16800ccc164c168008cc164c168004cc164c0f4cc164c168c15cdd500325eb80c16cc16c004c168004c164004c160004c14cdd5001c566002601200313232323232303e3305a305b0053305a305b0043305a305b0033305a305b0023305a305b0013305a303e3305a305b3058375400e97ae0305c305c001305b001305a001305900130580013053375400715980099b87480280062646464646464607e660b660b800c660b660b800a660b660b8008660b660b8006660b660b8004660b660b8002660b6607e660b660b860b26ea80212f5c060ba60ba00260b800260b600260b400260b200260b000260a66ea800e2b30013370e9006000c4c8c8c8c8c8c8c8c100cc170c17401ccc170c174018cc170c174014cc170c174010cc170c17400ccc170c174008cc170c174004cc170c100cc170c174c168dd5004a5eb80c178c178004c174004c170004c16c004c168004c164004c160004c14cdd5001c56600266e1d200e0018991919191919191918209982e982f0041982e982f0039982e982f0031982e982f0029982e982f0021982e982f0019982e982f0011982e982f0009982e98209982e982f182d9baa00a4bd70182f982f800982f000982e800982e000982d800982d000982c800982c00098299baa0038acc004cdc3a4020003132323232323232323230423305e305f0093305e305f0083305e305f0073305e305f0063305e305f0053305e305f0043305e305f0033305e305f0023305e305f0013305e30423305e305f305c375401697ae030603060001305f001305e001305d001305c001305b001305a001305900130580013053375400715980099b87480480062646464646464646464646086660be60c0014660be60c0012660be60c0010660be60c000e660be60c000c660be60c000a660be60c0008660be60c0006660be60c0004660be60c0002660be6086660be60c060ba6ea80312f5c060c260c200260c000260be00260bc00260ba00260b800260b600260b400260b200260b000260a66ea800e2b30013370e900a000c4c8c8c8c8c8c8c8c8c8c8c8c110cc180c18402ccc180c184028cc180c184024cc180c184020cc180c18401ccc180c184018cc180c184014cc180c184010cc180c18400ccc180c184008cc180c184004cc180c110cc180c184c178dd5006a5eb80c188c188004c184004c180004c17c004c178004c174004c170004c16c004c168004c164004c160004c14cdd5001c56600266e1d201600189919191919191919191919191822998309831006198309831005998309831005198309831004998309831004198309831003998309831003198309831002998309831002198309831001998309831001198309831000998309822998309831182f9baa00e4bd7018319831800983100098308009830000982f800982f000982e800982e000982d800982d000982c800982c00098299baa003899191919191919191919191918229983098310061983098310059983098310051983098310049983098310041983098310039983098310031983098310029983098310021983098310019983098310011983098310009983098311831800998309822998309831182f9baa00e4bd7025eb80c188004c184004c180004c17c004c178004c174004c170004c16c004c168004c164004c160004c14cdd5001a0a04140828105020a04140828105020a04140828105018289baa0013054002400c8290dd718289829000991acc004c08000a2653001001a5eb820068008889660026078003123233055374e002660aa6ea40092f5c065300100180252f5c080088896600200510018cc00400e60b2005330573058002001400c82b2246530010059982a982b0008024c0d000e6eb8c158c15c0050051802800a09c8a9982624811165787065637420636f756e74203e3d20300016412c6eb8c144c14800ca60024464b30013001480422b30013001480022900044cdc724410801020408102040800000241391598009800a408113370490400219801801980a80144cdc124101010100406600600666e00009203f41388270dc4000c888c8cc150c00cdd6982a8009982a182a982b000a5eb80c00c006660a06ea0cdc7000a4000660a06ea4cc03cc0bcdc6800800a5eb81222323298009198029191982c1ba833794940dd7182c8009982c182c982d000a5eb816600260366e340062660ae6ea4c060004cc15cdd49980d180c9b8d0010014bd70454cc14d240124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e74001641484646006b300130410018a60103d87a80008981e1982c1ba80014bd7020a630030019bad3056003911191acc006600260846eb4c16800694294505444cc02000c8c014c0f8cc168dd4000a5eb822601e600898103d87a800041506eb8c168c16c004cc160dd419b8e00148000cc160dd49980b981b9b8d0010014bd7024446b30013041002898019181e9982c800a5eb822b3001304600289801919ba548008cc1640052f5c1159800981b00144c00c8cdd2a4008660b200297ae08acc004c03400a26600e464660b46ea0cde5250375c60b6002660b460b660b800297ae059800981b1b8d00189982c9ba9302200133059375266050604e6e340040052f5c1153305549124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e7400164150466e95200633059375000297ae08acc004c03000a26600e464660b46ea0cde5250375c60b6002660b460b660b800297ae059800981b1b8d00189982c9ba9302200133059375266050604e6e340040052f5c1153305549124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e7400164150466e952008330593750b3001337100029040400244006266e04004c0192020415097ae08acc004cdc3a40140051300323374a90051982c800a5eb822b30013370e900600144cc0048cdd2a4018660b200297ae02323305a3750600c6eb4c16c004cc168c16cc1700052f5c064660b46ea0cde5250375c60b6002660b460b660b800297ae059800980e9b8d00189982c9ba9301a0013305937526603860366e340040052f5c11533055490124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e740016415115980099b874803800a266002466e95200e330590014bd701191982d1ba833794940dd7182d8009982d182d982e000a5eb8166002603a6e340062660b26ea4c068004cc164dd49980e180d9b8d0010014bd70454cc15524124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e740016415115980099b874804000a266002466e952010330590014bd701191982d1ba833794940dd7182d8009982d182d982e000a5eb8166002603a6e340062660b26ea4c068004cc164dd49980e180d9b8d0010014bd70454cc15524124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e740016415115980099b874804800a246464660b666e9520123305b305c0014bd701982d982e182e800a5eb80c004008cc0208c8cc16cdd419bca4a06eb8c170004cc16cc170c1740052f5c0b30013037371a00313305a37526046002660b46ea4cc0a4c0a0dc6800800a5eb822a660ac920124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e74001641544b300130430018a60103d87980008acc004c120006298103d87a80008acc004c0e0006298103d87b80008acc004c03c006298103d87c80008acc004c038006298103d87d80008a9982b249204d61726b657453657373696f6e2076616c7565206f7574206f662072616e67650016415482a905520aa415515980099b874805000a26006466e952014330590014bd70456600266e1d201600289801919ba548058cc1640052f5c115980099b874806000a266002466e952018330590014bd701191982d1ba833794940dd7182d8009982d182d982e000a5eb8166002603a6e340062660b26ea4c068004cc164dd49980e180d9b8d0010014bd70454cc15524124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e740016415115330544911c4665656450726f7065727479204944206f7574206f662072616e67650016414c829905320a6414c829905320a6414c829905320a6414c6eb8c164c1680184b300133710002904040404040404040400144006266e04004c00920800141406006006375a609e002646609c6ea0cdc7000a40006609c6ea4cc034c0b4dc6800800a5eb80dd7182718278021043454cc10524011165787065637420636f756e74203e3d2030001641006e312002454cc0dd240125657870656374206d61676963203d3d2070726963655f7570646174655f6d616769635f6c65001640d86eb8c0f0c0f400566002600e6e340062660746ea4c008004cc0e8dd49980298021b8d0010014bd70454cc0d9240124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e74001640d46eb8c064c0dcdd5198089191acc004cdc79bae303c00148904b9011a8200891919191919191991198221814198221822803998221ba90013304430450024bd70198221822982300125eb80d660026024003125980099b89002371a00313304337526601e004002660866ea66002005337026e3400400a002b8c25eb822a6607e920124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e74001640f9153303e4911165787065637420636f756e74203e3d2030001640f46eb8c10cc110008dd718218021bad30420013233041375066f29281bae304200133041304230430014bd702cc004c074dc6800c4cc100dd49804800998201ba93300f300e371a00200297ae08a9981e24924657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e74001640ec6eb8c100c104004d6600294624b30013371290201b8d00189981f9ba93300b48100004cc0fcdd4cc005204099b80371a002901fc0057184bd70454cc0ed24124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e74001640e9153303a4911165787065637420636f756e74203e3d2030001640e46eb8c0fcc100004c0040096600294624b3001337129040009b8d00189981e9ba9330094820004004cc0f4dd4cc00520800199b80371a002903fc0057184bd70454cc0e524124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e74001640e115330384911165787065637420636f756e74203e3d2030001640dd153303749126657870656374206d61676963203d3d20736f6c616e615f666f726d61745f6d616769635f6c65001640d86eb8c0f0c0f400566002600e6e340062660746ea4c008004cc0e8dd49980298021b8d0010014bd70454cc0d9240124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e74001640d46eb8c0e8028c00d2004300348020660040046064002817a264b3001001813c09e04f027899180198190021bae00140c8605e0048168dd6000c08e0468170c0acc0a0dd5000c54cc09924016465787065637420536f6d652872656465656d657229203d0a2020202070616972732e6765745f66697273742873656c662e72656465656d6572732c205769746864726177285363726970742873746174652e77697468647261775f736372697074292929001640946466446600400400244b30010018a60103d87a80008992cc004cdd78021815000c4c044cc0b4c0ac0052f5c1133003003302f00240a0605a0028158dd5981598161816181618161816181618161816181618141baa0173374a90021981499ba548008cc0a4c0a8c0acc0acc0acc09cdd5181518139baa0024bd7025eb822a6604a9201ff65787065637420536f6d6528737461746529203d0a202020206c6973742e66696e645f6d6170280a20202020202073656c662e7265666572656e63655f696e707574732c0a202020202020666e28696e70757429207b0a20202020202020206966206173736574732e6861735f6e66745f73747269637428696e7075742e6f75747075742e76616c75652c20707974685f69642c2022507974682053746174652229207b0a202020202020202020202f2f20737461746520746f6b656e206f757473696465206f6620736372697074206164647265737320776f756c6420696d706c792061206275670a202020202020202020206578706563742053637269dc7074285f29203d20696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c0a2020202020202020202065787065637420496e6c696e65446174756d28737461746529203d20696e7075742e6f75747075742e646174756d0a202020202020202020206578706563742073746174653a2050797468203d2073746174650a20202020202020202020536f6d65287374617465290a20202020202020207d20656c7365207b0a202020202020202020204e6f6e650a20202020202020207d0a2020202020207d2c0a20202020290016409064660020026eb0c03cc098dd500a912cc0040062980103d87a80008992cc006600266ebc00530103d87a8000a50a51409510018998018019816001204a3259800cc004dd5980898141baa301130283754003374c6605466ec0dd48119ba63302a3376098010b4a50797468205374617465004c010101004bd6f7b63025eb7bdb1824494500c45660026030604e6ea8c0acc0a0dd5181598141baa30113028375400313259800980498141baa0018992cc0040062b300130153029375400313259800800c092264b30010018992cc00400604d13259800800c09e26644b3001001814c4c96600200302a899912cc00400605913259800800c0b605b02d816c4c96600260720071598009810181a1baa00a8992cc00400605f13259800800c0c206103081844cc89660020030328992cc004006067033819c4cc89660020030358992cc00400606d03681b40da26644b300100181c44c96600200303981cc0e6264b3001304500389980e809912cc00400a26603e02444b3001002898159982380e25eb8226464b30010018992cc004006083041820c106265300100389802982680341090261bae0014134608e00504082041020808260c114004c12000904644c8c96600200303e81f40fa07d1332259800800c6600200313005304b0068202048820410208104041306eb8004c11400904a18218009823001208881d2084375a003039411460840028200dd700098208012084303f00140f46eb4004c0f800a06681f8c0f000503a1bae001303b00240f0607200281b8c0d4dd500540b903240b90361bae00140e4606c00281a0dd5800981a80140aa05502a40d860660028188dd58009819001409e04f02740cc60600028170c0c000a04b025812c0950311817000a058302a3754003023409d023811c08e0468178c0b0c0a4dd5000c54cc09d2412e65787065637420496e6c696e65446174756d28737461746529203d20696e7075742e6f75747075742e646174756d00164098601460506ea8c044c0a0dd5000c54cc09924013a65787065637420536372697074285f29203d20696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c0016409514c103d87a800040946054002814088c966002601e6eb8c0acc0b000626056003153302649011b6578706563742028612c20235b5d29203d2073656c662873726329001640946004002444b300130113025375400713259800800c00a264b30010018992cc00400600913259800800c566002605c00519800801c66002003006802a010802a010802a056802c01600b00540bc60580028150c0b000a007003801c00d02d1815000a05030263754007001408c44646600200200644660060026004004444b300130103024375400713259800800c00a264b30010018992cc00400600913259800800c4c966002605400315980098049814800c01a264b3001302f0048992cc004c05c0062b3001302c375400d009804205a8acc004c070006264b3001001804c4c96600200300a805402a264b30013033003806402d0301bad0018052066303000140b860586ea801a2b3001300c0018acc004c0b0dd50034026010816a01081490292052302a375400b00740b060346052002813a00c8158dd5000c01600b005802a05c302b00140a46056005003801c00e0068160c0a400502718129baa003800a044371290022444b300100180d44c966002605200513259800800c07626644b300100180fc4c966002605a005198009119911809998179ba8337046eb4c0c0008dd69818000998179ba8337046eb4c0c0c0c4008dd698181818800a5eb80c0acdd500118159baa00191808198161ba80013302c4c10101004bd704dc0a40012302d302e302e302e302e302e302e302e00148888c966002b3001329800800c0369450011112cc00400a2003132329800802cc0dc01264b3001301f30333754003159800acc004cdc49919b83375a60700026eb4c0e0c0e4004c0d0dd5181b981a1baa001329800800cc8cc00400406c896600200314bd7044c8cc8966002605460726ea800a26600a00a00313303c303d303a37540046600a00a00281b96600266ebcc0ecc0e0dd5181d981c1baa0010068980f1981d1810981c1baa0014bd704530103d87a800040d46078004607400281c290002002222598008014400633001003981d8014cdc019199119801001000912cc0040060071323322598009812801456600260480051001803207489980280298208022074375c60740026eb4c0ec004c0f400503b1919198008009bab303d0052259800800c00e2646644b300130260028acc004c09400a200300640ed133005005304200440ec6eb8c0ec004dd5981e000981f000a07814bd6f7b6300a400000280190384528c54cc0c9241386f7574707574735f76616c7565203e3d20726174696f6e616c2e666c6f6f722865787065637465645f7061796f757429203f2046616c73650014a0818a200914a0818a2a660649216765787065637420536f6d652865787065637465645f7061796f757429203d0a2020202020202020202020202020202020202020726174696f6e616c2e64697628726174696f6e616c2e66726f6d5f696e742876292c2071756f74655f6d756c7469706c69657229001640c464b300130243033375400314c103d87a80008980d1981b1980598051bad303400330373034375400297ae040c4646644b300133710004900044c070cc0e0c070cc0e0dd418058009981c1ba8300b0024bd7025eb822b300133710900000144c070cc0e0c070cc0e0dd40009981c1ba80024bd7025eb822980103d87a800040cc8198dd6981b8009bad303730380013033375400c8028c0c4004c0d00090324528c54cc0b1241157061796f7574735f6d61746368203f2046616c73650014a0815a2b30015980099b87375a6062605c6ea80200aa29462a6605892120626173655f63757272656e63795f666565645f6d61746368203f2046616c73650014a0815a2b30015980099912cc004c8c966002603a00314a31598009811000c4c966002604660646ea8c070c0ccdd5181b18199baa005899b89001004899b8800100440c06eb4c0d4c0c8dd50014528205e40bc60606ea8004c0ccc0c0dd5181998181baa002899192cc004c07400629422b300130220018992cc004c08cc0c8dd5180e18199baa301c3033375400b1337120080031337100080028180dd6981a98191baa0028a5140bc8178c0c0dd5000981998181baa30193030375400514a08168c008c0b8dd500e9bad3031302e375401514a3153302c4911e666565645f74696d655f77697468696e5f72616e6765203f2046616c73650014a0815a2b3001323232598009810800c4c966002604460626ea8c06cc0c8dd5180d98191baa004899b88001011899b8900101140bc6eb4c0d0c0c4dd50014566002602200314a114a2817102e18179baa0013032302f37546030605e6ea8004c008c0b8dd500ec528c54cc0b124011f7061796d656e745f6265666f72655f646561646c696e65203f2046616c73650014a0815a294102b452820568a5040ac664530013002002980098179baa00992cc004c06cc0bcdd5000c4c0ccc0c0dd5000c5300103d87a800040b49112cc004c074c0c4dd500144c966002603c60646ea8006264b3001301f30333754003132598009810181a1baa0018992cc004c084c0d4dd5000c4c9660026044606c6ea800626601c6074606e6ea8004c0e8c0dcdd5002454cc0d52414065787065637420536f6d652870726963655f726174696f29203d20726174696f6e616c2e6e657728626173655f70726963652c2071756f74655f707269636529001640d06644b300130230018a6103d87a80008acc004cdc4000a40011301e3303a301e3303a3750601a004660746ea0c0340052f5c097ae08980f1981d180f1981d1ba80023303a375000297ae04bd70206a40d46eb4c0e4c0d8dd50011bad30393036375400315330344913b65787065637420536f6d652871756f74655f707269636529203d206f7074696f6e2e666c617474656e2871756f74655f666565642e707269636529001640cc6008603c606a6ea80362a6606692013965787065637420536f6d6528626173655f707269636529203d206f7074696f6e2e666c617474656e28626173655f666565642e707269636529001640c86006603a60686ea803a2a6606492015c65787065637420536f6d65286d756c7469706c69657229203d0a20202020726174696f6e616c2e66726f6d5f696e7428313029207c3e20726174696f6e616c2e706f7728625f6578706f6e656e74202d20715f6578706f6e656e7429001640c464653001375a6070003375a60706072003337026eb4c0e0c0d4dd50029bad3038303537540069112cc00566002604600713371200290004528206a8a6103d87a80008acc004cdc4240000031301e3303a301e3303a375066012006002660746ea0cc0240080052f5c097ae08acc004cdc4000a40011301e3303a301e3303a375066012004601a002660746ea0cc02400cc0340052f5c097ae08a610ad8799fd8799f0101ffff0040d481a90350c0d0dd50009804a4029153303149012d65787065637420536f6d6528715f6578706f6e656e7429203d2071756f74655f666565642e6578706f6e656e74001640c0600860646ea802a2a6606092012c65787065637420536f6d6528625f6578706f6e656e7429203d20626173655f666565642e6578706f6e656e74001640bc2225980099b8800148002290004566002603600314800a264b3001301c3370c0049002466002009300100399b830024801100444c0066002009300100399b83301200248011004205c3704004816902d1181898191819181918191819000a0408150c0ac00502918148009815000a04e3758600e604a6ea80060368130c09c0050251153301b49011a65787065637420536f6d6528646174756d29203d20646174756d0016406880d0dd6180f180f980f8029112cc00400a2942265300132598009805980f9baa00189bad302030233756604660406ea800629000203a30220019baf302230230019bab003488966002003159800980100344cc01400d20008a50407d1325980099baf30220014c010140008acc004cc018010dd6981198131bab3023001898019ba630270028a5040811598009980300224001130030078a5040808100c0940050230ca60020030049119811801198119ba60014bd7020022225980080144cc005300103d87a80004bd6f7b63044ca60026eb8c0840066eacc088006604c0069112cc004c03400e2b3001300c0038998029805998139ba60024bd70000c4cc01530103d87a8000006408919800803c006446600e0046605266ec0dd48029ba6004001401c8110604800481122942294229410230c054dd50041b874800201500a805402901a180b000980b180b80098091baa0038b201e180880098061baa0128a4d153300a4911856616c696461746f722072657475726e65642066616c7365001365640241", + "hash": "055bd9d478929653c5e23c0f3024cb2fdb154a02d2a88e93068eb669" }, { "title": "osi_accept_pyth.osi_accept_pyth.spend", @@ -170,35 +170,11 @@ } ] }, - "cardano/assets/AssetName": { - "title": "AssetName", - "dataType": "bytes" - }, "cardano/assets/PolicyId": { "title": "PolicyId", "dataType": "bytes" }, - "types/AssetClass": { - "title": "AssetClass", - "anyOf": [ - { - "title": "AssetClass", - "dataType": "constructor", - "index": 0, - "fields": [ - { - "title": "policy_id", - "$ref": "#/definitions/cardano~1assets~1PolicyId" - }, - { - "title": "asset_name", - "$ref": "#/definitions/cardano~1assets~1AssetName" - } - ] - } - ] - }, - "types/OsiDatum": { + "otypes/OsiDatum": { "title": "OsiDatum", "anyOf": [ { @@ -207,22 +183,18 @@ "index": 0, "fields": [ { - "title": "timestamp", + "title": "deadline", "$ref": "#/definitions/Int" }, { "title": "payees", "$ref": "#/definitions/Pairs" - }, - { - "title": "quote_token", - "$ref": "#/definitions/types~1AssetClass" } ] } ] }, - "types/OsiRedeemers": { + "otypes/OsiRedeemers": { "title": "OsiRedeemers", "anyOf": [ { diff --git a/lazer/cardano/our-project/on-chain/validators/osi.ak b/lazer/cardano/our-project/on-chain/validators/osi.ak index 92b1472d..78f88e69 100644 --- a/lazer/cardano/our-project/on-chain/validators/osi.ak +++ b/lazer/cardano/our-project/on-chain/validators/osi.ak @@ -1,40 +1,20 @@ use aiken/collection/list use aiken/collection/pairs -use aiken/option -use cardano/address.{PaymentCredential, Script} -use cardano/assets.{AssetName, PolicyId} +use aiken/interval +use aiken/math/rational +use cardano/address.{Script} +use cardano/assets.{PolicyId, lovelace_of} use cardano/transaction.{ Output, OutputReference, Transaction, find_script_outputs, } +use otypes.{Fund, OsiDatum, OsiRedeemers, Payout} use pyth.{PriceUpdate, get_updates} -use types.{Fund, OsiDatum, OsiRedeemers, Payout} - -fn expected_quote_amount( - base_amount: Int, - price: Int, - exponent: Int, - base_currency: Int, -) -> Int { - todo -} - -fn expected_for_credential( - payees: Pairs, - payee_cred: PaymentCredential, - price: Int, - exponent: Int, - base_currency: Int, -) -> Option { - pairs.get_first(payees, payee_cred) - |> option.map( - fn(base_amount) { - expected_quote_amount(base_amount, price, exponent, base_currency) - }, - ) -} +use types/u32 +use types/u64 +use utils.{quote_price_multiplier} /// Oracle-settled Invoice -validator oracleSettled(base_currency: Int, pyth_policy: PolicyId) { +validator oracle_settled_invoice(base_currency: Int, pyth_policy: PolicyId) { spend( datum: Option, redeemer: OsiRedeemers, @@ -53,39 +33,53 @@ validator oracleSettled(base_currency: Int, pyth_policy: PolicyId) { Payout -> { expect Some(datum) = datum - let OsiDatum { timestamp, payees, quote_token } = datum + let OsiDatum { deadline, payees } = datum + + expect [price_update] = get_updates(pyth_policy, tx) + + expect [feed1, feed2] = price_update.feeds + + let base_currency_feed_match = + u32.as_int(feed1.feed_id) == base_currency + + let quote_multiplier = quote_price_multiplier(feed1, feed2) - expect [feed1, feed2] = get_updates(pyth_policy, tx) + let feed_time_within_range = + tx.validity_range + |> interval.contains(u64.as_int(price_update.timestamp_us)) - trace feed1 - trace feed2 + let payment_before_deadline = + tx.validity_range + |> interval.is_entirely_before(deadline) - // REVIEW - // list.all( - // outputs, - // fn(out) { - // let actual = - // assets.quantity_of( - // out.value, - // quote_token.policy_id, - // quote_token.asset_name, - // ) - // let payee_cred = out.address.payment_credential - // when - // expected_for_credential( - // payees, - // payee_cred, - // price, - // exponent, - // base_currency, - // ) - // is { - // Some(expected) -> actual == expected - // None -> False - // } - // }, - // ) - False + let payouts_match = + payees + |> pairs.foldl( + True, + fn(k, v, r) { + let outputs_value = + outputs + |> list.filter_map( + fn(out) { + if out.address.payment_credential == k { + Some(out.value) + } else { + None + } + }, + ) + |> list.foldl( + 0, + fn(value, accumulator) { + lovelace_of(value) + accumulator + }, + ) + expect Some(expected_payout) = + rational.div(rational.from_int(v), quote_multiplier) + (outputs_value >= rational.floor(expected_payout))? && r + }, + ) + payouts_match? && base_currency_feed_match? && feed_time_within_range? && payment_before_deadline? } } } From 531112e595395d7ab79424c1b23d18f4d9fb8e0a Mon Sep 17 00:00:00 2001 From: a-osiecki Date: Sun, 22 Mar 2026 17:12:28 -0300 Subject: [PATCH 15/21] final tweaks on validator --- lazer/cardano/our-project/on-chain/aiken.lock | 2 +- .../cardano/our-project/on-chain/lib/utils.ak | 15 +- .../cardano/our-project/on-chain/plutus.json | 73 ++-------- .../our-project/on-chain/validators/osi.ak | 135 ++++++++++++------ .../on-chain/validators/osi_accept_pyth.ak | 40 ------ 5 files changed, 106 insertions(+), 159 deletions(-) delete mode 100644 lazer/cardano/our-project/on-chain/validators/osi_accept_pyth.ak diff --git a/lazer/cardano/our-project/on-chain/aiken.lock b/lazer/cardano/our-project/on-chain/aiken.lock index efd852ae..18fcb901 100644 --- a/lazer/cardano/our-project/on-chain/aiken.lock +++ b/lazer/cardano/our-project/on-chain/aiken.lock @@ -24,4 +24,4 @@ requirements = [] source = "github" [etags] -"pyth-network/pyth-lazer-cardano@main" = [{ secs_since_epoch = 1774204238, nanos_since_epoch = 559791297 }, "a46dacd97a22eb07feeaf966d48c3116c8249ddc836705656e3135cea285bcfc"] +"pyth-network/pyth-lazer-cardano@main" = [{ secs_since_epoch = 1774208654, nanos_since_epoch = 272061541 }, "a46dacd97a22eb07feeaf966d48c3116c8249ddc836705656e3135cea285bcfc"] diff --git a/lazer/cardano/our-project/on-chain/lib/utils.ak b/lazer/cardano/our-project/on-chain/lib/utils.ak index 5b6b98f2..64fb70e4 100644 --- a/lazer/cardano/our-project/on-chain/lib/utils.ak +++ b/lazer/cardano/our-project/on-chain/lib/utils.ak @@ -2,15 +2,14 @@ use aiken/math/rational.{Rational} use aiken/option use pyth.{Feed} -pub fn quote_price_multiplier(base_feed: Feed, quote_feed: Feed) -> Rational { - expect Some(b_exponent) = base_feed.exponent - expect Some(q_exponent) = quote_feed.exponent - +pub fn quote_price_multiplier( + base_price: Int, + base_exponent: Int, + quote_price: Int, + quote_exponent: Int, + ) -> Rational { expect Some(multiplier) = - rational.from_int(10) |> rational.pow(b_exponent - q_exponent) - - expect Some(base_price) = option.flatten(base_feed.price) - expect Some(quote_price) = option.flatten(quote_feed.price) + rational.from_int(10) |> rational.pow(base_exponent - quote_exponent) expect Some(price_ratio) = rational.new(base_price, quote_price) diff --git a/lazer/cardano/our-project/on-chain/plutus.json b/lazer/cardano/our-project/on-chain/plutus.json index 0142b4e1..9c163706 100644 --- a/lazer/cardano/our-project/on-chain/plutus.json +++ b/lazer/cardano/our-project/on-chain/plutus.json @@ -26,103 +26,46 @@ } }, "parameters": [ - { - "title": "base_currency", - "schema": { - "$ref": "#/definitions/Int" - } - }, { "title": "pyth_policy", "schema": { "$ref": "#/definitions/cardano~1assets~1PolicyId" } - } - ], - "compiledCode": "5929880101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bad0039bae00248888888888a60022a660089212a65787065637420757064617465733a204c6973743c4279746541727261793e203d2072656465656d657200168a998022491a6578706563742073746174653a2050797468203d20737461746500168a9980224938657870656374205b6f75745d203d2066696e645f7363726970745f6f757470757473286f7574707574732c207363726970745f686173682900168a998022492a657870656374205b66656564312c2066656564325d203d2070726963655f7570646174652e666565647300168a9980224934657870656374205b70726963655f7570646174655d203d206765745f7570646174657328707974685f706f6c6963792c2074782900168a998022491672656465656d65723a204f736952656465656d657273001648888896600264653001301100198089809000cdc3a400530110024888966002600460226ea800e2646644b300100789919912cc004c00c0062b300130183754015002806a0328acc004c0200062b300130183754015002806a032806a02a4054330013016375400b2301a301b0019b91489009b8f4881009ba548001222223322598009804180e1baa00f899192cc004c03cc078dd5000c4c9660020030188992cc004c09400a330013756601460426ea8012601460426ea80064466e2400800500540650221811800a0423232330010010062259800800c52f5c11332259800992cc004c054c090dd5000c4cdc78031bae30283025375400314a08110c09cc090dd5181398121baa00289981300119802002000c4cc01001000502118128009813000a046375c6044603e6ea80062a6603a9213a65787065637420536372697074287363726970745f6861736829203d20696e2e616464726573732e7061796d656e745f63726564656e7469616c001640706042603c6ea8c084c078dd500099198008009bac30210082259800800c5a264b30013375e604660406ea80040362601260406ea8006266006006604800480e8c0880050204566002601060386ea802633001301d37546040603a6ea8026460426044604400337009000cdc3a400891114c004dd698120024dd5981218128024c8c8cc88cc89660026024604c6ea800a264b300130133027375400313259800800c08e04713233006001225980080144c8cc004004010896600200314bd7044cc0c260026e2520009b8c480126e0120039b89480226e3120009b8c480226e01200748888888cc88cc0448c8d6600266e3cdd7181e000a450475d3c793008cc004888c8cc00cdd698200009bae3040304100130030019b89480426e3120109b804803e600e90082444446600a464660846ea0cde5250375c6086002660846086608800297ae05980098029b8d0018998209ba930020013304137526600860066e340040052f5c1153303d49124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e74001640f04646600e4660866ea0cdc7000a4000660866ea4cc008c088dc6800800a5eb808cc0208cc110dd419b8e00148000cc110dd49980198119b8d0010014bd70111919198239815998239ba800733047375000a6608e609000297ae033047304830490014bd7018008012cc004c05400a2653001001a5eb82006800888966002606200312323304a374e002660946ea40092f5c065300100180252f5c080088896600200510018cc00400e609c0053304c304d002001400c825a246530010059982518258008024c0a400e6eb8c12cc1300050054c004c8cc128dd419bca4a06eb8c12c004cc128c12cc1300052f5c0b30013016371a00313304937526022002660926ea4cc050c04cdc6800800a5eb822a6608a92124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e7400164111223304b0023304b375200297ae09b874801a6e1d200848888c8c8c8cc018ca6002003375860a40053035330513052008330514c103d87a8000330514c103d87a8000330514c103d87a8000330514c103d87a8000330514c103d87a8000330514c103d87a8000330514c103d87a8000330514c103d87a8000330514c103d87a8000330514c103d87a8000330514c103d87a8000330514c103d87a8000330514c103d87a80004bd702002222598008014400633001003982a8014c8c966002607c003132303a33056305700133056303a3305630573054375400697ae030583058001305337540071598009821800c4c8c8c0eccc15cc160008cc15cc160004cc15cc0eccc15cc160c154dd500225eb80c164c164004c160004c14cdd5001c56600260660031323232303c33058305900333058305900233058305900133058303c3305830593056375400a97ae0305a305a00130590013058001305337540071598009805000c4c8c8c8c8c0f4cc164c168010cc164c16800ccc164c168008cc164c168004cc164c0f4cc164c168c15cdd500325eb80c16cc16c004c168004c164004c160004c14cdd5001c566002601200313232323232303e3305a305b0053305a305b0043305a305b0033305a305b0023305a305b0013305a303e3305a305b3058375400e97ae0305c305c001305b001305a001305900130580013053375400715980099b87480280062646464646464607e660b660b800c660b660b800a660b660b8008660b660b8006660b660b8004660b660b8002660b6607e660b660b860b26ea80212f5c060ba60ba00260b800260b600260b400260b200260b000260a66ea800e2b30013370e9006000c4c8c8c8c8c8c8c8c100cc170c17401ccc170c174018cc170c174014cc170c174010cc170c17400ccc170c174008cc170c174004cc170c100cc170c174c168dd5004a5eb80c178c178004c174004c170004c16c004c168004c164004c160004c14cdd5001c56600266e1d200e0018991919191919191918209982e982f0041982e982f0039982e982f0031982e982f0029982e982f0021982e982f0019982e982f0011982e982f0009982e98209982e982f182d9baa00a4bd70182f982f800982f000982e800982e000982d800982d000982c800982c00098299baa0038acc004cdc3a4020003132323232323232323230423305e305f0093305e305f0083305e305f0073305e305f0063305e305f0053305e305f0043305e305f0033305e305f0023305e305f0013305e30423305e305f305c375401697ae030603060001305f001305e001305d001305c001305b001305a001305900130580013053375400715980099b87480480062646464646464646464646086660be60c0014660be60c0012660be60c0010660be60c000e660be60c000c660be60c000a660be60c0008660be60c0006660be60c0004660be60c0002660be6086660be60c060ba6ea80312f5c060c260c200260c000260be00260bc00260ba00260b800260b600260b400260b200260b000260a66ea800e2b30013370e900a000c4c8c8c8c8c8c8c8c8c8c8c8c110cc180c18402ccc180c184028cc180c184024cc180c184020cc180c18401ccc180c184018cc180c184014cc180c184010cc180c18400ccc180c184008cc180c184004cc180c110cc180c184c178dd5006a5eb80c188c188004c184004c180004c17c004c178004c174004c170004c16c004c168004c164004c160004c14cdd5001c56600266e1d201600189919191919191919191919191822998309831006198309831005998309831005198309831004998309831004198309831003998309831003198309831002998309831002198309831001998309831001198309831000998309822998309831182f9baa00e4bd7018319831800983100098308009830000982f800982f000982e800982e000982d800982d000982c800982c00098299baa003899191919191919191919191918229983098310061983098310059983098310051983098310049983098310041983098310039983098310031983098310029983098310021983098310019983098310011983098310009983098311831800998309822998309831182f9baa00e4bd7025eb80c188004c184004c180004c17c004c178004c174004c170004c16c004c168004c164004c160004c14cdd5001a0a04140828105020a04140828105020a04140828105018289baa0013054002400c8290dd718289829000991acc004c08000a2653001001a5eb820068008889660026078003123233055374e002660aa6ea40092f5c065300100180252f5c080088896600200510018cc00400e60b2005330573058002001400c82b2246530010059982a982b0008024c0d000e6eb8c158c15c0050051802800a09c8a9982624811165787065637420636f756e74203e3d20300016412c6eb8c144c14800ca60024464b30013001480422b30013001480022900044cdc724410801020408102040800000241391598009800a408113370490400219801801980a80144cdc124101010100406600600666e00009203f41388270dc4000c888c8cc150c00cdd6982a8009982a182a982b000a5eb80c00c006660a06ea0cdc7000a4000660a06ea4cc03cc0bcdc6800800a5eb81222323298009198029191982c1ba833794940dd7182c8009982c182c982d000a5eb816600260366e340062660ae6ea4c060004cc15cdd49980d180c9b8d0010014bd70454cc14d240124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e74001641484646006b300130410018a60103d87a80008981e1982c1ba80014bd7020a630030019bad3056003911191acc006600260846eb4c16800694294505444cc02000c8c014c0f8cc168dd4000a5eb822601e600898103d87a800041506eb8c168c16c004cc160dd419b8e00148000cc160dd49980b981b9b8d0010014bd7024446b30013041002898019181e9982c800a5eb822b3001304600289801919ba548008cc1640052f5c1159800981b00144c00c8cdd2a4008660b200297ae08acc004c03400a26600e464660b46ea0cde5250375c60b6002660b460b660b800297ae059800981b1b8d00189982c9ba9302200133059375266050604e6e340040052f5c1153305549124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e7400164150466e95200633059375000297ae08acc004c03000a26600e464660b46ea0cde5250375c60b6002660b460b660b800297ae059800981b1b8d00189982c9ba9302200133059375266050604e6e340040052f5c1153305549124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e7400164150466e952008330593750b3001337100029040400244006266e04004c0192020415097ae08acc004cdc3a40140051300323374a90051982c800a5eb822b30013370e900600144cc0048cdd2a4018660b200297ae02323305a3750600c6eb4c16c004cc168c16cc1700052f5c064660b46ea0cde5250375c60b6002660b460b660b800297ae059800980e9b8d00189982c9ba9301a0013305937526603860366e340040052f5c11533055490124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e740016415115980099b874803800a266002466e95200e330590014bd701191982d1ba833794940dd7182d8009982d182d982e000a5eb8166002603a6e340062660b26ea4c068004cc164dd49980e180d9b8d0010014bd70454cc15524124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e740016415115980099b874804000a266002466e952010330590014bd701191982d1ba833794940dd7182d8009982d182d982e000a5eb8166002603a6e340062660b26ea4c068004cc164dd49980e180d9b8d0010014bd70454cc15524124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e740016415115980099b874804800a246464660b666e9520123305b305c0014bd701982d982e182e800a5eb80c004008cc0208c8cc16cdd419bca4a06eb8c170004cc16cc170c1740052f5c0b30013037371a00313305a37526046002660b46ea4cc0a4c0a0dc6800800a5eb822a660ac920124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e74001641544b300130430018a60103d87980008acc004c120006298103d87a80008acc004c0e0006298103d87b80008acc004c03c006298103d87c80008acc004c038006298103d87d80008a9982b249204d61726b657453657373696f6e2076616c7565206f7574206f662072616e67650016415482a905520aa415515980099b874805000a26006466e952014330590014bd70456600266e1d201600289801919ba548058cc1640052f5c115980099b874806000a266002466e952018330590014bd701191982d1ba833794940dd7182d8009982d182d982e000a5eb8166002603a6e340062660b26ea4c068004cc164dd49980e180d9b8d0010014bd70454cc15524124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e740016415115330544911c4665656450726f7065727479204944206f7574206f662072616e67650016414c829905320a6414c829905320a6414c829905320a6414c6eb8c164c1680184b300133710002904040404040404040400144006266e04004c00920800141406006006375a609e002646609c6ea0cdc7000a40006609c6ea4cc034c0b4dc6800800a5eb80dd7182718278021043454cc10524011165787065637420636f756e74203e3d2030001641006e312002454cc0dd240125657870656374206d61676963203d3d2070726963655f7570646174655f6d616769635f6c65001640d86eb8c0f0c0f400566002600e6e340062660746ea4c008004cc0e8dd49980298021b8d0010014bd70454cc0d9240124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e74001640d46eb8c064c0dcdd5198089191acc004cdc79bae303c00148904b9011a8200891919191919191991198221814198221822803998221ba90013304430450024bd70198221822982300125eb80d660026024003125980099b89002371a00313304337526601e004002660866ea66002005337026e3400400a002b8c25eb822a6607e920124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e74001640f9153303e4911165787065637420636f756e74203e3d2030001640f46eb8c10cc110008dd718218021bad30420013233041375066f29281bae304200133041304230430014bd702cc004c074dc6800c4cc100dd49804800998201ba93300f300e371a00200297ae08a9981e24924657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e74001640ec6eb8c100c104004d6600294624b30013371290201b8d00189981f9ba93300b48100004cc0fcdd4cc005204099b80371a002901fc0057184bd70454cc0ed24124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e74001640e9153303a4911165787065637420636f756e74203e3d2030001640e46eb8c0fcc100004c0040096600294624b3001337129040009b8d00189981e9ba9330094820004004cc0f4dd4cc00520800199b80371a002903fc0057184bd70454cc0e524124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e74001640e115330384911165787065637420636f756e74203e3d2030001640dd153303749126657870656374206d61676963203d3d20736f6c616e615f666f726d61745f6d616769635f6c65001640d86eb8c0f0c0f400566002600e6e340062660746ea4c008004cc0e8dd49980298021b8d0010014bd70454cc0d9240124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e74001640d46eb8c0e8028c00d2004300348020660040046064002817a264b3001001813c09e04f027899180198190021bae00140c8605e0048168dd6000c08e0468170c0acc0a0dd5000c54cc09924016465787065637420536f6d652872656465656d657229203d0a2020202070616972732e6765745f66697273742873656c662e72656465656d6572732c205769746864726177285363726970742873746174652e77697468647261775f736372697074292929001640946466446600400400244b30010018a60103d87a80008992cc004cdd78021815000c4c044cc0b4c0ac0052f5c1133003003302f00240a0605a0028158dd5981598161816181618161816181618161816181618141baa0173374a90021981499ba548008cc0a4c0a8c0acc0acc0acc09cdd5181518139baa0024bd7025eb822a6604a9201ff65787065637420536f6d6528737461746529203d0a202020206c6973742e66696e645f6d6170280a20202020202073656c662e7265666572656e63655f696e707574732c0a202020202020666e28696e70757429207b0a20202020202020206966206173736574732e6861735f6e66745f73747269637428696e7075742e6f75747075742e76616c75652c20707974685f69642c2022507974682053746174652229207b0a202020202020202020202f2f20737461746520746f6b656e206f757473696465206f6620736372697074206164647265737320776f756c6420696d706c792061206275670a202020202020202020206578706563742053637269dc7074285f29203d20696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c0a2020202020202020202065787065637420496e6c696e65446174756d28737461746529203d20696e7075742e6f75747075742e646174756d0a202020202020202020206578706563742073746174653a2050797468203d2073746174650a20202020202020202020536f6d65287374617465290a20202020202020207d20656c7365207b0a202020202020202020204e6f6e650a20202020202020207d0a2020202020207d2c0a20202020290016409064660020026eb0c03cc098dd500a912cc0040062980103d87a80008992cc006600266ebc00530103d87a8000a50a51409510018998018019816001204a3259800cc004dd5980898141baa301130283754003374c6605466ec0dd48119ba63302a3376098010b4a50797468205374617465004c010101004bd6f7b63025eb7bdb1824494500c45660026030604e6ea8c0acc0a0dd5181598141baa30113028375400313259800980498141baa0018992cc0040062b300130153029375400313259800800c092264b30010018992cc00400604d13259800800c09e26644b3001001814c4c96600200302a899912cc00400605913259800800c0b605b02d816c4c96600260720071598009810181a1baa00a8992cc00400605f13259800800c0c206103081844cc89660020030328992cc004006067033819c4cc89660020030358992cc00400606d03681b40da26644b300100181c44c96600200303981cc0e6264b3001304500389980e809912cc00400a26603e02444b3001002898159982380e25eb8226464b30010018992cc004006083041820c106265300100389802982680341090261bae0014134608e00504082041020808260c114004c12000904644c8c96600200303e81f40fa07d1332259800800c6600200313005304b0068202048820410208104041306eb8004c11400904a18218009823001208881d2084375a003039411460840028200dd700098208012084303f00140f46eb4004c0f800a06681f8c0f000503a1bae001303b00240f0607200281b8c0d4dd500540b903240b90361bae00140e4606c00281a0dd5800981a80140aa05502a40d860660028188dd58009819001409e04f02740cc60600028170c0c000a04b025812c0950311817000a058302a3754003023409d023811c08e0468178c0b0c0a4dd5000c54cc09d2412e65787065637420496e6c696e65446174756d28737461746529203d20696e7075742e6f75747075742e646174756d00164098601460506ea8c044c0a0dd5000c54cc09924013a65787065637420536372697074285f29203d20696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c0016409514c103d87a800040946054002814088c966002601e6eb8c0acc0b000626056003153302649011b6578706563742028612c20235b5d29203d2073656c662873726329001640946004002444b300130113025375400713259800800c00a264b30010018992cc00400600913259800800c566002605c00519800801c66002003006802a010802a010802a056802c01600b00540bc60580028150c0b000a007003801c00d02d1815000a05030263754007001408c44646600200200644660060026004004444b300130103024375400713259800800c00a264b30010018992cc00400600913259800800c4c966002605400315980098049814800c01a264b3001302f0048992cc004c05c0062b3001302c375400d009804205a8acc004c070006264b3001001804c4c96600200300a805402a264b30013033003806402d0301bad0018052066303000140b860586ea801a2b3001300c0018acc004c0b0dd50034026010816a01081490292052302a375400b00740b060346052002813a00c8158dd5000c01600b005802a05c302b00140a46056005003801c00e0068160c0a400502718129baa003800a044371290022444b300100180d44c966002605200513259800800c07626644b300100180fc4c966002605a005198009119911809998179ba8337046eb4c0c0008dd69818000998179ba8337046eb4c0c0c0c4008dd698181818800a5eb80c0acdd500118159baa00191808198161ba80013302c4c10101004bd704dc0a40012302d302e302e302e302e302e302e302e00148888c966002b3001329800800c0369450011112cc00400a2003132329800802cc0dc01264b3001301f30333754003159800acc004cdc49919b83375a60700026eb4c0e0c0e4004c0d0dd5181b981a1baa001329800800cc8cc00400406c896600200314bd7044c8cc8966002605460726ea800a26600a00a00313303c303d303a37540046600a00a00281b96600266ebcc0ecc0e0dd5181d981c1baa0010068980f1981d1810981c1baa0014bd704530103d87a800040d46078004607400281c290002002222598008014400633001003981d8014cdc019199119801001000912cc0040060071323322598009812801456600260480051001803207489980280298208022074375c60740026eb4c0ec004c0f400503b1919198008009bab303d0052259800800c00e2646644b300130260028acc004c09400a200300640ed133005005304200440ec6eb8c0ec004dd5981e000981f000a07814bd6f7b6300a400000280190384528c54cc0c9241386f7574707574735f76616c7565203e3d20726174696f6e616c2e666c6f6f722865787065637465645f7061796f757429203f2046616c73650014a0818a200914a0818a2a660649216765787065637420536f6d652865787065637465645f7061796f757429203d0a2020202020202020202020202020202020202020726174696f6e616c2e64697628726174696f6e616c2e66726f6d5f696e742876292c2071756f74655f6d756c7469706c69657229001640c464b300130243033375400314c103d87a80008980d1981b1980598051bad303400330373034375400297ae040c4646644b300133710004900044c070cc0e0c070cc0e0dd418058009981c1ba8300b0024bd7025eb822b300133710900000144c070cc0e0c070cc0e0dd40009981c1ba80024bd7025eb822980103d87a800040cc8198dd6981b8009bad303730380013033375400c8028c0c4004c0d00090324528c54cc0b1241157061796f7574735f6d61746368203f2046616c73650014a0815a2b30015980099b87375a6062605c6ea80200aa29462a6605892120626173655f63757272656e63795f666565645f6d61746368203f2046616c73650014a0815a2b30015980099912cc004c8c966002603a00314a31598009811000c4c966002604660646ea8c070c0ccdd5181b18199baa005899b89001004899b8800100440c06eb4c0d4c0c8dd50014528205e40bc60606ea8004c0ccc0c0dd5181998181baa002899192cc004c07400629422b300130220018992cc004c08cc0c8dd5180e18199baa301c3033375400b1337120080031337100080028180dd6981a98191baa0028a5140bc8178c0c0dd5000981998181baa30193030375400514a08168c008c0b8dd500e9bad3031302e375401514a3153302c4911e666565645f74696d655f77697468696e5f72616e6765203f2046616c73650014a0815a2b3001323232598009810800c4c966002604460626ea8c06cc0c8dd5180d98191baa004899b88001011899b8900101140bc6eb4c0d0c0c4dd50014566002602200314a114a2817102e18179baa0013032302f37546030605e6ea8004c008c0b8dd500ec528c54cc0b124011f7061796d656e745f6265666f72655f646561646c696e65203f2046616c73650014a0815a294102b452820568a5040ac664530013002002980098179baa00992cc004c06cc0bcdd5000c4c0ccc0c0dd5000c5300103d87a800040b49112cc004c074c0c4dd500144c966002603c60646ea8006264b3001301f30333754003132598009810181a1baa0018992cc004c084c0d4dd5000c4c9660026044606c6ea800626601c6074606e6ea8004c0e8c0dcdd5002454cc0d52414065787065637420536f6d652870726963655f726174696f29203d20726174696f6e616c2e6e657728626173655f70726963652c2071756f74655f707269636529001640d06644b300130230018a6103d87a80008acc004cdc4000a40011301e3303a301e3303a3750601a004660746ea0c0340052f5c097ae08980f1981d180f1981d1ba80023303a375000297ae04bd70206a40d46eb4c0e4c0d8dd50011bad30393036375400315330344913b65787065637420536f6d652871756f74655f707269636529203d206f7074696f6e2e666c617474656e2871756f74655f666565642e707269636529001640cc6008603c606a6ea80362a6606692013965787065637420536f6d6528626173655f707269636529203d206f7074696f6e2e666c617474656e28626173655f666565642e707269636529001640c86006603a60686ea803a2a6606492015c65787065637420536f6d65286d756c7469706c69657229203d0a20202020726174696f6e616c2e66726f6d5f696e7428313029207c3e20726174696f6e616c2e706f7728625f6578706f6e656e74202d20715f6578706f6e656e7429001640c464653001375a6070003375a60706072003337026eb4c0e0c0d4dd50029bad3038303537540069112cc00566002604600713371200290004528206a8a6103d87a80008acc004cdc4240000031301e3303a301e3303a375066012006002660746ea0cc0240080052f5c097ae08acc004cdc4000a40011301e3303a301e3303a375066012004601a002660746ea0cc02400cc0340052f5c097ae08a610ad8799fd8799f0101ffff0040d481a90350c0d0dd50009804a4029153303149012d65787065637420536f6d6528715f6578706f6e656e7429203d2071756f74655f666565642e6578706f6e656e74001640c0600860646ea802a2a6606092012c65787065637420536f6d6528625f6578706f6e656e7429203d20626173655f666565642e6578706f6e656e74001640bc2225980099b8800148002290004566002603600314800a264b3001301c3370c0049002466002009300100399b830024801100444c0066002009300100399b83301200248011004205c3704004816902d1181898191819181918191819000a0408150c0ac00502918148009815000a04e3758600e604a6ea80060368130c09c0050251153301b49011a65787065637420536f6d6528646174756d29203d20646174756d0016406880d0dd6180f180f980f8029112cc00400a2942265300132598009805980f9baa00189bad302030233756604660406ea800629000203a30220019baf302230230019bab003488966002003159800980100344cc01400d20008a50407d1325980099baf30220014c010140008acc004cc018010dd6981198131bab3023001898019ba630270028a5040811598009980300224001130030078a5040808100c0940050230ca60020030049119811801198119ba60014bd7020022225980080144cc005300103d87a80004bd6f7b63044ca60026eb8c0840066eacc088006604c0069112cc004c03400e2b3001300c0038998029805998139ba60024bd70000c4cc01530103d87a8000006408919800803c006446600e0046605266ec0dd48029ba6004001401c8110604800481122942294229410230c054dd50041b874800201500a805402901a180b000980b180b80098091baa0038b201e180880098061baa0128a4d153300a4911856616c696461746f722072657475726e65642066616c7365001365640241", - "hash": "055bd9d478929653c5e23c0f3024cb2fdb154a02d2a88e93068eb669" - }, - { - "title": "osi.oracle_settled_invoice.else", - "redeemer": { - "schema": {} - }, - "parameters": [ - { - "title": "base_currency", - "schema": { - "$ref": "#/definitions/Int" - } }, { - "title": "pyth_policy", - "schema": { - "$ref": "#/definitions/cardano~1assets~1PolicyId" - } - } - ], - "compiledCode": "5929880101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bad0039bae00248888888888a60022a660089212a65787065637420757064617465733a204c6973743c4279746541727261793e203d2072656465656d657200168a998022491a6578706563742073746174653a2050797468203d20737461746500168a9980224938657870656374205b6f75745d203d2066696e645f7363726970745f6f757470757473286f7574707574732c207363726970745f686173682900168a998022492a657870656374205b66656564312c2066656564325d203d2070726963655f7570646174652e666565647300168a9980224934657870656374205b70726963655f7570646174655d203d206765745f7570646174657328707974685f706f6c6963792c2074782900168a998022491672656465656d65723a204f736952656465656d657273001648888896600264653001301100198089809000cdc3a400530110024888966002600460226ea800e2646644b300100789919912cc004c00c0062b300130183754015002806a0328acc004c0200062b300130183754015002806a032806a02a4054330013016375400b2301a301b0019b91489009b8f4881009ba548001222223322598009804180e1baa00f899192cc004c03cc078dd5000c4c9660020030188992cc004c09400a330013756601460426ea8012601460426ea80064466e2400800500540650221811800a0423232330010010062259800800c52f5c11332259800992cc004c054c090dd5000c4cdc78031bae30283025375400314a08110c09cc090dd5181398121baa00289981300119802002000c4cc01001000502118128009813000a046375c6044603e6ea80062a6603a9213a65787065637420536372697074287363726970745f6861736829203d20696e2e616464726573732e7061796d656e745f63726564656e7469616c001640706042603c6ea8c084c078dd500099198008009bac30210082259800800c5a264b30013375e604660406ea80040362601260406ea8006266006006604800480e8c0880050204566002601060386ea802633001301d37546040603a6ea8026460426044604400337009000cdc3a400891114c004dd698120024dd5981218128024c8c8cc88cc89660026024604c6ea800a264b300130133027375400313259800800c08e04713233006001225980080144c8cc004004010896600200314bd7044cc0c260026e2520009b8c480126e0120039b89480226e3120009b8c480226e01200748888888cc88cc0448c8d6600266e3cdd7181e000a450475d3c793008cc004888c8cc00cdd698200009bae3040304100130030019b89480426e3120109b804803e600e90082444446600a464660846ea0cde5250375c6086002660846086608800297ae05980098029b8d0018998209ba930020013304137526600860066e340040052f5c1153303d49124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e74001640f04646600e4660866ea0cdc7000a4000660866ea4cc008c088dc6800800a5eb808cc0208cc110dd419b8e00148000cc110dd49980198119b8d0010014bd70111919198239815998239ba800733047375000a6608e609000297ae033047304830490014bd7018008012cc004c05400a2653001001a5eb82006800888966002606200312323304a374e002660946ea40092f5c065300100180252f5c080088896600200510018cc00400e609c0053304c304d002001400c825a246530010059982518258008024c0a400e6eb8c12cc1300050054c004c8cc128dd419bca4a06eb8c12c004cc128c12cc1300052f5c0b30013016371a00313304937526022002660926ea4cc050c04cdc6800800a5eb822a6608a92124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e7400164111223304b0023304b375200297ae09b874801a6e1d200848888c8c8c8cc018ca6002003375860a40053035330513052008330514c103d87a8000330514c103d87a8000330514c103d87a8000330514c103d87a8000330514c103d87a8000330514c103d87a8000330514c103d87a8000330514c103d87a8000330514c103d87a8000330514c103d87a8000330514c103d87a8000330514c103d87a8000330514c103d87a80004bd702002222598008014400633001003982a8014c8c966002607c003132303a33056305700133056303a3305630573054375400697ae030583058001305337540071598009821800c4c8c8c0eccc15cc160008cc15cc160004cc15cc0eccc15cc160c154dd500225eb80c164c164004c160004c14cdd5001c56600260660031323232303c33058305900333058305900233058305900133058303c3305830593056375400a97ae0305a305a00130590013058001305337540071598009805000c4c8c8c8c8c0f4cc164c168010cc164c16800ccc164c168008cc164c168004cc164c0f4cc164c168c15cdd500325eb80c16cc16c004c168004c164004c160004c14cdd5001c566002601200313232323232303e3305a305b0053305a305b0043305a305b0033305a305b0023305a305b0013305a303e3305a305b3058375400e97ae0305c305c001305b001305a001305900130580013053375400715980099b87480280062646464646464607e660b660b800c660b660b800a660b660b8008660b660b8006660b660b8004660b660b8002660b6607e660b660b860b26ea80212f5c060ba60ba00260b800260b600260b400260b200260b000260a66ea800e2b30013370e9006000c4c8c8c8c8c8c8c8c100cc170c17401ccc170c174018cc170c174014cc170c174010cc170c17400ccc170c174008cc170c174004cc170c100cc170c174c168dd5004a5eb80c178c178004c174004c170004c16c004c168004c164004c160004c14cdd5001c56600266e1d200e0018991919191919191918209982e982f0041982e982f0039982e982f0031982e982f0029982e982f0021982e982f0019982e982f0011982e982f0009982e98209982e982f182d9baa00a4bd70182f982f800982f000982e800982e000982d800982d000982c800982c00098299baa0038acc004cdc3a4020003132323232323232323230423305e305f0093305e305f0083305e305f0073305e305f0063305e305f0053305e305f0043305e305f0033305e305f0023305e305f0013305e30423305e305f305c375401697ae030603060001305f001305e001305d001305c001305b001305a001305900130580013053375400715980099b87480480062646464646464646464646086660be60c0014660be60c0012660be60c0010660be60c000e660be60c000c660be60c000a660be60c0008660be60c0006660be60c0004660be60c0002660be6086660be60c060ba6ea80312f5c060c260c200260c000260be00260bc00260ba00260b800260b600260b400260b200260b000260a66ea800e2b30013370e900a000c4c8c8c8c8c8c8c8c8c8c8c8c110cc180c18402ccc180c184028cc180c184024cc180c184020cc180c18401ccc180c184018cc180c184014cc180c184010cc180c18400ccc180c184008cc180c184004cc180c110cc180c184c178dd5006a5eb80c188c188004c184004c180004c17c004c178004c174004c170004c16c004c168004c164004c160004c14cdd5001c56600266e1d201600189919191919191919191919191822998309831006198309831005998309831005198309831004998309831004198309831003998309831003198309831002998309831002198309831001998309831001198309831000998309822998309831182f9baa00e4bd7018319831800983100098308009830000982f800982f000982e800982e000982d800982d000982c800982c00098299baa003899191919191919191919191918229983098310061983098310059983098310051983098310049983098310041983098310039983098310031983098310029983098310021983098310019983098310011983098310009983098311831800998309822998309831182f9baa00e4bd7025eb80c188004c184004c180004c17c004c178004c174004c170004c16c004c168004c164004c160004c14cdd5001a0a04140828105020a04140828105020a04140828105018289baa0013054002400c8290dd718289829000991acc004c08000a2653001001a5eb820068008889660026078003123233055374e002660aa6ea40092f5c065300100180252f5c080088896600200510018cc00400e60b2005330573058002001400c82b2246530010059982a982b0008024c0d000e6eb8c158c15c0050051802800a09c8a9982624811165787065637420636f756e74203e3d20300016412c6eb8c144c14800ca60024464b30013001480422b30013001480022900044cdc724410801020408102040800000241391598009800a408113370490400219801801980a80144cdc124101010100406600600666e00009203f41388270dc4000c888c8cc150c00cdd6982a8009982a182a982b000a5eb80c00c006660a06ea0cdc7000a4000660a06ea4cc03cc0bcdc6800800a5eb81222323298009198029191982c1ba833794940dd7182c8009982c182c982d000a5eb816600260366e340062660ae6ea4c060004cc15cdd49980d180c9b8d0010014bd70454cc14d240124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e74001641484646006b300130410018a60103d87a80008981e1982c1ba80014bd7020a630030019bad3056003911191acc006600260846eb4c16800694294505444cc02000c8c014c0f8cc168dd4000a5eb822601e600898103d87a800041506eb8c168c16c004cc160dd419b8e00148000cc160dd49980b981b9b8d0010014bd7024446b30013041002898019181e9982c800a5eb822b3001304600289801919ba548008cc1640052f5c1159800981b00144c00c8cdd2a4008660b200297ae08acc004c03400a26600e464660b46ea0cde5250375c60b6002660b460b660b800297ae059800981b1b8d00189982c9ba9302200133059375266050604e6e340040052f5c1153305549124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e7400164150466e95200633059375000297ae08acc004c03000a26600e464660b46ea0cde5250375c60b6002660b460b660b800297ae059800981b1b8d00189982c9ba9302200133059375266050604e6e340040052f5c1153305549124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e7400164150466e952008330593750b3001337100029040400244006266e04004c0192020415097ae08acc004cdc3a40140051300323374a90051982c800a5eb822b30013370e900600144cc0048cdd2a4018660b200297ae02323305a3750600c6eb4c16c004cc168c16cc1700052f5c064660b46ea0cde5250375c60b6002660b460b660b800297ae059800980e9b8d00189982c9ba9301a0013305937526603860366e340040052f5c11533055490124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e740016415115980099b874803800a266002466e95200e330590014bd701191982d1ba833794940dd7182d8009982d182d982e000a5eb8166002603a6e340062660b26ea4c068004cc164dd49980e180d9b8d0010014bd70454cc15524124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e740016415115980099b874804000a266002466e952010330590014bd701191982d1ba833794940dd7182d8009982d182d982e000a5eb8166002603a6e340062660b26ea4c068004cc164dd49980e180d9b8d0010014bd70454cc15524124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e740016415115980099b874804800a246464660b666e9520123305b305c0014bd701982d982e182e800a5eb80c004008cc0208c8cc16cdd419bca4a06eb8c170004cc16cc170c1740052f5c0b30013037371a00313305a37526046002660b46ea4cc0a4c0a0dc6800800a5eb822a660ac920124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e74001641544b300130430018a60103d87980008acc004c120006298103d87a80008acc004c0e0006298103d87b80008acc004c03c006298103d87c80008acc004c038006298103d87d80008a9982b249204d61726b657453657373696f6e2076616c7565206f7574206f662072616e67650016415482a905520aa415515980099b874805000a26006466e952014330590014bd70456600266e1d201600289801919ba548058cc1640052f5c115980099b874806000a266002466e952018330590014bd701191982d1ba833794940dd7182d8009982d182d982e000a5eb8166002603a6e340062660b26ea4c068004cc164dd49980e180d9b8d0010014bd70454cc15524124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e740016415115330544911c4665656450726f7065727479204944206f7574206f662072616e67650016414c829905320a6414c829905320a6414c829905320a6414c6eb8c164c1680184b300133710002904040404040404040400144006266e04004c00920800141406006006375a609e002646609c6ea0cdc7000a40006609c6ea4cc034c0b4dc6800800a5eb80dd7182718278021043454cc10524011165787065637420636f756e74203e3d2030001641006e312002454cc0dd240125657870656374206d61676963203d3d2070726963655f7570646174655f6d616769635f6c65001640d86eb8c0f0c0f400566002600e6e340062660746ea4c008004cc0e8dd49980298021b8d0010014bd70454cc0d9240124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e74001640d46eb8c064c0dcdd5198089191acc004cdc79bae303c00148904b9011a8200891919191919191991198221814198221822803998221ba90013304430450024bd70198221822982300125eb80d660026024003125980099b89002371a00313304337526601e004002660866ea66002005337026e3400400a002b8c25eb822a6607e920124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e74001640f9153303e4911165787065637420636f756e74203e3d2030001640f46eb8c10cc110008dd718218021bad30420013233041375066f29281bae304200133041304230430014bd702cc004c074dc6800c4cc100dd49804800998201ba93300f300e371a00200297ae08a9981e24924657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e74001640ec6eb8c100c104004d6600294624b30013371290201b8d00189981f9ba93300b48100004cc0fcdd4cc005204099b80371a002901fc0057184bd70454cc0ed24124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e74001640e9153303a4911165787065637420636f756e74203e3d2030001640e46eb8c0fcc100004c0040096600294624b3001337129040009b8d00189981e9ba9330094820004004cc0f4dd4cc00520800199b80371a002903fc0057184bd70454cc0e524124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e74001640e115330384911165787065637420636f756e74203e3d2030001640dd153303749126657870656374206d61676963203d3d20736f6c616e615f666f726d61745f6d616769635f6c65001640d86eb8c0f0c0f400566002600e6e340062660746ea4c008004cc0e8dd49980298021b8d0010014bd70454cc0d9240124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e74001640d46eb8c0e8028c00d2004300348020660040046064002817a264b3001001813c09e04f027899180198190021bae00140c8605e0048168dd6000c08e0468170c0acc0a0dd5000c54cc09924016465787065637420536f6d652872656465656d657229203d0a2020202070616972732e6765745f66697273742873656c662e72656465656d6572732c205769746864726177285363726970742873746174652e77697468647261775f736372697074292929001640946466446600400400244b30010018a60103d87a80008992cc004cdd78021815000c4c044cc0b4c0ac0052f5c1133003003302f00240a0605a0028158dd5981598161816181618161816181618161816181618141baa0173374a90021981499ba548008cc0a4c0a8c0acc0acc0acc09cdd5181518139baa0024bd7025eb822a6604a9201ff65787065637420536f6d6528737461746529203d0a202020206c6973742e66696e645f6d6170280a20202020202073656c662e7265666572656e63655f696e707574732c0a202020202020666e28696e70757429207b0a20202020202020206966206173736574732e6861735f6e66745f73747269637428696e7075742e6f75747075742e76616c75652c20707974685f69642c2022507974682053746174652229207b0a202020202020202020202f2f20737461746520746f6b656e206f757473696465206f6620736372697074206164647265737320776f756c6420696d706c792061206275670a202020202020202020206578706563742053637269dc7074285f29203d20696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c0a2020202020202020202065787065637420496e6c696e65446174756d28737461746529203d20696e7075742e6f75747075742e646174756d0a202020202020202020206578706563742073746174653a2050797468203d2073746174650a20202020202020202020536f6d65287374617465290a20202020202020207d20656c7365207b0a202020202020202020204e6f6e650a20202020202020207d0a2020202020207d2c0a20202020290016409064660020026eb0c03cc098dd500a912cc0040062980103d87a80008992cc006600266ebc00530103d87a8000a50a51409510018998018019816001204a3259800cc004dd5980898141baa301130283754003374c6605466ec0dd48119ba63302a3376098010b4a50797468205374617465004c010101004bd6f7b63025eb7bdb1824494500c45660026030604e6ea8c0acc0a0dd5181598141baa30113028375400313259800980498141baa0018992cc0040062b300130153029375400313259800800c092264b30010018992cc00400604d13259800800c09e26644b3001001814c4c96600200302a899912cc00400605913259800800c0b605b02d816c4c96600260720071598009810181a1baa00a8992cc00400605f13259800800c0c206103081844cc89660020030328992cc004006067033819c4cc89660020030358992cc00400606d03681b40da26644b300100181c44c96600200303981cc0e6264b3001304500389980e809912cc00400a26603e02444b3001002898159982380e25eb8226464b30010018992cc004006083041820c106265300100389802982680341090261bae0014134608e00504082041020808260c114004c12000904644c8c96600200303e81f40fa07d1332259800800c6600200313005304b0068202048820410208104041306eb8004c11400904a18218009823001208881d2084375a003039411460840028200dd700098208012084303f00140f46eb4004c0f800a06681f8c0f000503a1bae001303b00240f0607200281b8c0d4dd500540b903240b90361bae00140e4606c00281a0dd5800981a80140aa05502a40d860660028188dd58009819001409e04f02740cc60600028170c0c000a04b025812c0950311817000a058302a3754003023409d023811c08e0468178c0b0c0a4dd5000c54cc09d2412e65787065637420496e6c696e65446174756d28737461746529203d20696e7075742e6f75747075742e646174756d00164098601460506ea8c044c0a0dd5000c54cc09924013a65787065637420536372697074285f29203d20696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c0016409514c103d87a800040946054002814088c966002601e6eb8c0acc0b000626056003153302649011b6578706563742028612c20235b5d29203d2073656c662873726329001640946004002444b300130113025375400713259800800c00a264b30010018992cc00400600913259800800c566002605c00519800801c66002003006802a010802a010802a056802c01600b00540bc60580028150c0b000a007003801c00d02d1815000a05030263754007001408c44646600200200644660060026004004444b300130103024375400713259800800c00a264b30010018992cc00400600913259800800c4c966002605400315980098049814800c01a264b3001302f0048992cc004c05c0062b3001302c375400d009804205a8acc004c070006264b3001001804c4c96600200300a805402a264b30013033003806402d0301bad0018052066303000140b860586ea801a2b3001300c0018acc004c0b0dd50034026010816a01081490292052302a375400b00740b060346052002813a00c8158dd5000c01600b005802a05c302b00140a46056005003801c00e0068160c0a400502718129baa003800a044371290022444b300100180d44c966002605200513259800800c07626644b300100180fc4c966002605a005198009119911809998179ba8337046eb4c0c0008dd69818000998179ba8337046eb4c0c0c0c4008dd698181818800a5eb80c0acdd500118159baa00191808198161ba80013302c4c10101004bd704dc0a40012302d302e302e302e302e302e302e302e00148888c966002b3001329800800c0369450011112cc00400a2003132329800802cc0dc01264b3001301f30333754003159800acc004cdc49919b83375a60700026eb4c0e0c0e4004c0d0dd5181b981a1baa001329800800cc8cc00400406c896600200314bd7044c8cc8966002605460726ea800a26600a00a00313303c303d303a37540046600a00a00281b96600266ebcc0ecc0e0dd5181d981c1baa0010068980f1981d1810981c1baa0014bd704530103d87a800040d46078004607400281c290002002222598008014400633001003981d8014cdc019199119801001000912cc0040060071323322598009812801456600260480051001803207489980280298208022074375c60740026eb4c0ec004c0f400503b1919198008009bab303d0052259800800c00e2646644b300130260028acc004c09400a200300640ed133005005304200440ec6eb8c0ec004dd5981e000981f000a07814bd6f7b6300a400000280190384528c54cc0c9241386f7574707574735f76616c7565203e3d20726174696f6e616c2e666c6f6f722865787065637465645f7061796f757429203f2046616c73650014a0818a200914a0818a2a660649216765787065637420536f6d652865787065637465645f7061796f757429203d0a2020202020202020202020202020202020202020726174696f6e616c2e64697628726174696f6e616c2e66726f6d5f696e742876292c2071756f74655f6d756c7469706c69657229001640c464b300130243033375400314c103d87a80008980d1981b1980598051bad303400330373034375400297ae040c4646644b300133710004900044c070cc0e0c070cc0e0dd418058009981c1ba8300b0024bd7025eb822b300133710900000144c070cc0e0c070cc0e0dd40009981c1ba80024bd7025eb822980103d87a800040cc8198dd6981b8009bad303730380013033375400c8028c0c4004c0d00090324528c54cc0b1241157061796f7574735f6d61746368203f2046616c73650014a0815a2b30015980099b87375a6062605c6ea80200aa29462a6605892120626173655f63757272656e63795f666565645f6d61746368203f2046616c73650014a0815a2b30015980099912cc004c8c966002603a00314a31598009811000c4c966002604660646ea8c070c0ccdd5181b18199baa005899b89001004899b8800100440c06eb4c0d4c0c8dd50014528205e40bc60606ea8004c0ccc0c0dd5181998181baa002899192cc004c07400629422b300130220018992cc004c08cc0c8dd5180e18199baa301c3033375400b1337120080031337100080028180dd6981a98191baa0028a5140bc8178c0c0dd5000981998181baa30193030375400514a08168c008c0b8dd500e9bad3031302e375401514a3153302c4911e666565645f74696d655f77697468696e5f72616e6765203f2046616c73650014a0815a2b3001323232598009810800c4c966002604460626ea8c06cc0c8dd5180d98191baa004899b88001011899b8900101140bc6eb4c0d0c0c4dd50014566002602200314a114a2817102e18179baa0013032302f37546030605e6ea8004c008c0b8dd500ec528c54cc0b124011f7061796d656e745f6265666f72655f646561646c696e65203f2046616c73650014a0815a294102b452820568a5040ac664530013002002980098179baa00992cc004c06cc0bcdd5000c4c0ccc0c0dd5000c5300103d87a800040b49112cc004c074c0c4dd500144c966002603c60646ea8006264b3001301f30333754003132598009810181a1baa0018992cc004c084c0d4dd5000c4c9660026044606c6ea800626601c6074606e6ea8004c0e8c0dcdd5002454cc0d52414065787065637420536f6d652870726963655f726174696f29203d20726174696f6e616c2e6e657728626173655f70726963652c2071756f74655f707269636529001640d06644b300130230018a6103d87a80008acc004cdc4000a40011301e3303a301e3303a3750601a004660746ea0c0340052f5c097ae08980f1981d180f1981d1ba80023303a375000297ae04bd70206a40d46eb4c0e4c0d8dd50011bad30393036375400315330344913b65787065637420536f6d652871756f74655f707269636529203d206f7074696f6e2e666c617474656e2871756f74655f666565642e707269636529001640cc6008603c606a6ea80362a6606692013965787065637420536f6d6528626173655f707269636529203d206f7074696f6e2e666c617474656e28626173655f666565642e707269636529001640c86006603a60686ea803a2a6606492015c65787065637420536f6d65286d756c7469706c69657229203d0a20202020726174696f6e616c2e66726f6d5f696e7428313029207c3e20726174696f6e616c2e706f7728625f6578706f6e656e74202d20715f6578706f6e656e7429001640c464653001375a6070003375a60706072003337026eb4c0e0c0d4dd50029bad3038303537540069112cc00566002604600713371200290004528206a8a6103d87a80008acc004cdc4240000031301e3303a301e3303a375066012006002660746ea0cc0240080052f5c097ae08acc004cdc4000a40011301e3303a301e3303a375066012004601a002660746ea0cc02400cc0340052f5c097ae08a610ad8799fd8799f0101ffff0040d481a90350c0d0dd50009804a4029153303149012d65787065637420536f6d6528715f6578706f6e656e7429203d2071756f74655f666565642e6578706f6e656e74001640c0600860646ea802a2a6606092012c65787065637420536f6d6528625f6578706f6e656e7429203d20626173655f666565642e6578706f6e656e74001640bc2225980099b8800148002290004566002603600314800a264b3001301c3370c0049002466002009300100399b830024801100444c0066002009300100399b83301200248011004205c3704004816902d1181898191819181918191819000a0408150c0ac00502918148009815000a04e3758600e604a6ea80060368130c09c0050251153301b49011a65787065637420536f6d6528646174756d29203d20646174756d0016406880d0dd6180f180f980f8029112cc00400a2942265300132598009805980f9baa00189bad302030233756604660406ea800629000203a30220019baf302230230019bab003488966002003159800980100344cc01400d20008a50407d1325980099baf30220014c010140008acc004cc018010dd6981198131bab3023001898019ba630270028a5040811598009980300224001130030078a5040808100c0940050230ca60020030049119811801198119ba60014bd7020022225980080144cc005300103d87a80004bd6f7b63044ca60026eb8c0840066eacc088006604c0069112cc004c03400e2b3001300c0038998029805998139ba60024bd70000c4cc01530103d87a8000006408919800803c006446600e0046605266ec0dd48029ba6004001401c8110604800481122942294229410230c054dd50041b874800201500a805402901a180b000980b180b80098091baa0038b201e180880098061baa0128a4d153300a4911856616c696461746f722072657475726e65642066616c7365001365640241", - "hash": "055bd9d478929653c5e23c0f3024cb2fdb154a02d2a88e93068eb669" - }, - { - "title": "osi_accept_pyth.osi_accept_pyth.spend", - "datum": { - "title": "_datum", - "schema": { - "$ref": "#/definitions/Data" - } - }, - "redeemer": { - "title": "redeemer", - "schema": { - "$ref": "#/definitions/Data" - } - }, - "parameters": [ - { - "title": "pyth_id", - "schema": { - "$ref": "#/definitions/cardano~1assets~1PolicyId" - } - }, - { - "title": "base_asset_id", + "title": "base_currency", "schema": { "$ref": "#/definitions/Int" } } ], - "compiledCode": "5921460101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0039bad00248888888888a60022a660089212a65787065637420757064617465733a204c6973743c4279746541727261793e203d2072656465656d657200168a998022491a6578706563742073746174653a2050797468203d20737461746500168a99802249906578706563742046656564207b0a2020202020666565645f69643a20666565645f6964322c0a202020202070726963653a20536f6d6528536f6d652870726963655f3229292c0a2020202020666565645f7570646174655f74696d657374616d703a20536f6d6528536f6d652874696d657374616d705f3229292c0a20202020202e2e0a2020207d203d20666565643200168a99802249996578706563742046656564207b0a2020202020666565645f69643a206164615f70726963655f666565645f69642c0a202020202070726963653a20536f6d6528536f6d652870726963655f3129292c0a2020202020666565645f7570646174655f74696d657374616d703a20536f6d6528536f6d652874696d657374616d705f3129292c0a20202020202e2e0a2020207d203d20666565643100168a998022491d657870656374205b66656564312c2066656564325d203d20666565647300168a998022492c657870656374205b7570646174655d203d206765745f7570646174657328707974685f69642c2073656c6629001648888896600264653001301100198089809000cdc3a400530110024888966002600460226ea800e3300130123754007371290004dc3a40009114c004c06000e6030603200798009b89480126e1d200491191980080080191198018009801001488c96600266e3d220100375c603660380031301b0018a9980b24811b6578706563742028612c20235b5d29203d2073656c66287372632900164054600400323019301a0019180c980d180d000cdd2a400091111111919192cc004c02cc078dd5000c4c9660026018603e6ea8006264b300100180dc06e2646601600244b300100289919800800802112cc004006297ae08998144c004dc62400937009001cdc4a4011371890004dc62401137009003a44444466446602c4646b30013371e6eb8c0cc0052210475d3c793008cc004888c8cc00cdd6981b8009bae3037303800130030019b89480426e3120109b804803e600e90082444446600a464660726ea0cde5250375c6074002660726074607600297ae05980098029b8d00189981c1ba930020013303837526600860066e340040052f5c1153303449124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e74001640cc46644660104660766ea0cdc7000a4000660766ea4cc00cc008dc6800800a5eb808cc0248cc0f0dd419b8e00148000cc0f0dd49980218019b8d0010014bd701119191981f98111981f9ba80083303f375000a6607e608000297ae03303f304030410014bd7018008012cc004c0a000a2653001001a5eb820068008889660026054003123233042374e002660846ea40092f5c065300100180252f5c080088896600200510018cc00400e608c005330443045002001400c821a246530010059982118218008024c02400e6eb8c10cc1100050054c004c8cc108dd419bca4a06eb8c10c004cc108c10cc1100052f5c0b30013017371a00313304137526024002660826ea4cc054c050dc6800800a5eb822a6607a92124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e74001640f1223304300233043375200297ae09b874801a6e1d200848888c8c8c8cc018ca600200337586094005302c33049304a008330494c103d87a8000330494c103d87a8000330494c103d87a8000330494c103d87a8000330494c103d87a8000330494c103d87a8000330494c103d87a8000330494c103d87a8000330494c103d87a8000330494c103d87a8000330494c103d87a8000330494c103d87a8000330494c103d87a80004bd70200222259800801440063300100398268014c8c966002606e00313230313304e304f0013304e30313304e304f304c375400697ae030503050001304b3754007159800981d800c4c8c8c0c8cc13cc140008cc13cc140004cc13cc0c8cc13cc140c134dd500225eb80c144c144004c140004c12cdd5001c566002606a00313232323033330503051003330503051002330503051001330503033330503051304e375400a97ae03052305200130510013050001304b37540071598009805000c4c8c8c8c8c0d0cc144c148010cc144c14800ccc144c148008cc144c148004cc144c0d0cc144c148c13cdd500325eb80c14cc14c004c148004c144004c140004c12cdd5001c56600260120031323232323230353305230530053305230530043305230530033305230530023305230530013305230353305230533050375400e97ae0305430540013053001305200130510013050001304b375400715980099b87480280062646464646464606c660a660a800c660a660a800a660a660a8008660a660a8006660a660a8004660a660a8002660a6606c660a660a860a26ea80212f5c060aa60aa00260a800260a600260a400260a200260a000260966ea800e2b30013370e9006000c4c8c8c8c8c8c8c8c0dccc150c15401ccc150c154018cc150c154014cc150c154010cc150c15400ccc150c154008cc150c154004cc150c0dccc150c154c148dd5004a5eb80c158c158004c154004c150004c14c004c148004c144004c140004c12cdd5001c56600266e1d200e00189919191919191919181c1982a982b0041982a982b0039982a982b0031982a982b0029982a982b0021982a982b0019982a982b0011982a982b0009982a981c1982a982b18299baa00a4bd70182b982b800982b000982a800982a000982980098290009828800982800098259baa0038acc004cdc3a4020003132323232323232323230393305630570093305630570083305630570073305630570063305630570053305630570043305630570033305630570023305630570013305630393305630573054375401697ae03058305800130570013056001305500130540013053001305200130510013050001304b375400715980099b87480480062646464646464646464646074660ae60b0014660ae60b0012660ae60b0010660ae60b000e660ae60b000c660ae60b000a660ae60b0008660ae60b0006660ae60b0004660ae60b0002660ae6074660ae60b060aa6ea80312f5c060b260b200260b000260ae00260ac00260aa00260a800260a600260a400260a200260a000260966ea800e2b30013370e900a000c4c8c8c8c8c8c8c8c8c8c8c8c0eccc160c16402ccc160c164028cc160c164024cc160c164020cc160c16401ccc160c164018cc160c164014cc160c164010cc160c16400ccc160c164008cc160c164004cc160c0eccc160c164c158dd5006a5eb80c168c168004c164004c160004c15c004c158004c154004c150004c14c004c148004c144004c140004c12cdd5001c56600266e1d20160018991919191919191919191919181e1982c982d0061982c982d0059982c982d0051982c982d0049982c982d0041982c982d0039982c982d0031982c982d0029982c982d0021982c982d0019982c982d0011982c982d0009982c981e1982c982d182b9baa00e4bd70182d982d800982d000982c800982c000982b800982b000982a800982a000982980098290009828800982800098259baa0038991919191919191919191919181e1982c982d0061982c982d0059982c982d0051982c982d0049982c982d0041982c982d0039982c982d0031982c982d0029982c982d0021982c982d0019982c982d0011982c982d0009982c982d182d8009982c981e1982c982d182b9baa00e4bd7025eb80c168004c164004c160004c15c004c158004c154004c150004c14c004c148004c144004c140004c12cdd5001a0904120824104820904120824104820904120824104818249baa001304c002400c8250dd718249825000991acc004c0cc00a2653001001a5eb82006800888966002606a00312323304d374e0026609a6ea40092f5c065300100180252f5c080088896600200510018cc00400e60a20053304f3050002001400c8272246530010059982698270008024c05000e6eb8c138c13c0050051802800a08c8a9982224811165787065637420636f756e74203e3d20300016410c6eb8c124c12800ca60024464b30013001480422b30013001480022900044cdc724410801020408102040800000241191598009800a408113370490400219801801980b00144cdc124101010100406600600666e00009203f41188230dc4000c888c8cc130c00cdd698268009982618269827000a5eb80c00c006660906ea0cdc7000a4000660906ea4cc040c03cdc6800800a5eb8122232329800919802919198281ba833794940dd718288009982818289829000a5eb816600260386e3400626609e6ea4c064004cc13cdd49980d980d1b8d0010014bd70454cc12d240124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e74001641284646006b3001303a0018a60103d87a800089819998281ba80014bd70209630030019bad304e003911191acc006600260766eb4c14800694294504c44cc02000c8c014c0d4cc148dd4000a5eb822601e600898103d87a800041306eb8c148c14c004cc140dd419b8e00148000cc140dd49980c180b9b8d0010014bd7024446b3001303a002898019181a19828800a5eb822b3001303e00289801919ba548008cc1440052f5c1159800981c00144c00c8cdd2a4008660a200297ae08acc004c03400a26600e464660a46ea0cde5250375c60a6002660a460a660a800297ae059800981d1b8d0018998289ba930230013305137526605260506e340040052f5c1153304d49124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e7400164130466e95200633051375000297ae08acc004c03000a26600e464660a46ea0cde5250375c60a6002660a460a660a800297ae059800981d1b8d0018998289ba930230013305137526605260506e340040052f5c1153304d49124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e7400164130466e952008330513750b3001337100029040400244006266e04004c0192020413097ae08acc004cdc3a40140051300323374a900519828800a5eb822b30013370e900600144cc0048cdd2a4018660a200297ae0232330523750600c6eb4c14c004cc148c14cc1500052f5c064660a46ea0cde5250375c60a6002660a460a660a800297ae059800980f1b8d0018998289ba9301b0013305137526603a60386e340040052f5c1153304d490124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e740016413115980099b874803800a266002466e95200e330510014bd70119198291ba833794940dd71829800998291829982a000a5eb8166002603c6e340062660a26ea4c06c004cc144dd49980e980e1b8d0010014bd70454cc13524124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e740016413115980099b874804000a266002466e952010330510014bd70119198291ba833794940dd71829800998291829982a000a5eb8166002603c6e340062660a26ea4c06c004cc144dd49980e980e1b8d0010014bd70454cc13524124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e740016413115980099b874804800a246464660a666e9520123305330540014bd7019829982a182a800a5eb80c004008cc0208c8cc14cdd419bca4a06eb8c150004cc14cc150c1540052f5c0b3001303b371a00313305237526048002660a46ea4cc0a8c0a4dc6800800a5eb822a6609c920124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e74001641344b3001303c0018a60103d87980008acc004c100006298103d87a80008acc004c0e8006298103d87b80008acc004c03c006298103d87c80008acc004c038006298103d87d80008a99827249204d61726b657453657373696f6e2076616c7565206f7574206f662072616e676500164134826904d209a413515980099b874805000a26006466e952014330510014bd70456600266e1d201600289801919ba548058cc1440052f5c115980099b874806000a266002466e952018330510014bd70119198291ba833794940dd71829800998291829982a000a5eb8166002603c6e340062660a26ea4c06c004cc144dd49980e980e1b8d0010014bd70454cc13524124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e7400164131153304c4911c4665656450726f7065727479204944206f7574206f662072616e67650016412c825904b2096412c825904b2096412c825904b2096412c6eb8c144c1480184b300133710002904040404040404040400144006266e04004c00920800141206006006375a608e002646608c6ea0cdc7000a40006608c6ea4cc038c034dc6800800a5eb80dd718231823802103b454cc0e524011165787065637420636f756e74203e3d2030001640e06e31200237009000a2a6605c920125657870656374206d61676963203d3d2070726963655f7570646174655f6d616769635f6c65001640b46eb8c0ccc0d000566002600e6e340062660626ea4c008004cc0c4dd49980298021b8d0010014bd70454cc0b5240124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e74001640b06eb8c050c0b8dd51980b1191acc004cdc79bae303300148904b9011a82008919191919191919911981d980f1981d981e0039981d9ba90013303b303c0024bd701981d981e181e80125eb80d660026048003125980099b89002371a00313303a37526601e004002660746ea66002005337026e3400400a002b8c25eb822a6606c920124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e74001640d515330354911165787065637420636f756e74203e3d2030001640d06eb8c0e8c0ec008dd7181d0021bad30390013233038375066f29281bae3039001330383039303a0014bd702cc004c080dc6800c4cc0dcdd498048009981b9ba93300f300e371a00200297ae08a99819a4924657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e74001640c86eb8c0dcc0e0004d6600294624b30013371290201b8d00189981b1ba93300b48100004cc0d8dd4cc005204099b80371a002901fc0057184bd70454cc0c924124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e74001640c515330314911165787065637420636f756e74203e3d2030001640c06eb8c0d8c0dc004c0040096600294624b3001337129040009b8d00189981a1ba9330094820004004cc0d0dd4cc00520800199b80371a002903fc0057184bd70454cc0c124124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e74001640bd153302f4911165787065637420636f756e74203e3d2030001640b9153302e49126657870656374206d61676963203d3d20736f6c616e615f666f726d61745f6d616769635f6c65001640b46eb8c0ccc0d000566002600e6e340062660626ea4c008004cc0c4dd49980298021b8d0010014bd70454cc0b5240124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e74001640b06eb8c0c4024c00d2004300348020660040046054002813a264b300100180fc07e03f01f899180198150021bae00140a8604e0048128dd6000c06e0368130c08cc080dd5000c54cc07924016465787065637420536f6d652872656465656d657229203d0a2020202070616972732e6765745f66697273742873656c662e72656465656d6572732c205769746864726177285363726970742873746174652e77697468647261775f736372697074292929001640746466446600400400244b30010018a60103d87a80008992cc004cdd78021811000c4c020cc094c08c0052f5c113300300330270024080604a0028118dd5981198121812181218121812181218121812181218101baa00f3374a90021981099ba548008cc084c088c08cc08cc08cc07cdd51811180f9baa0014bd7025eb822a6603a9201ff65787065637420536f6d6528737461746529203d0a202020206c6973742e66696e645f6d6170280a20202020202073656c662e7265666572656e63655f696e707574732c0a202020202020666e28696e70757429207b0a20202020202020206966206173736574732e6861735f6e66745f73747269637428696e7075742e6f75747075742e76616c75652c20707974685f69642c2022507974682053746174652229207b0a202020202020202020202f2f20737461746520746f6b656e206f757473696465206f6620736372697074206164647265737320776f756c6420696d706c792061206275670a202020202020202020206578706563742053637269dc7074285f29203d20696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c0a2020202020202020202065787065637420496e6c696e65446174756d28737461746529203d20696e7075742e6f75747075742e646174756d0a202020202020202020206578706563742073746174653a2050797468203d2073746174650a20202020202020202020536f6d65287374617465290a20202020202020207d20656c7365207b0a202020202020202020204e6f6e650a20202020202020207d0a2020202020207d2c0a20202020290016407064660020026eb0c018c07cdd5007112cc0040062980103d87a80008992cc006600266ebc00530103d87a8000a50a51407910018998018019812801203c325980099912cc00400a294226530013259800980898121baa00189bad3025302837566050604a6ea800629000204430270019baf302730280019bab003488966002003159800980100344cc01400d20008a5040911325980099baf30270014c010140008acc004cc018010dd6981418159bab3028001898019ba6302c0028a5040951598009980300224001130030078a5040948128c0a80050280ca60020033756601660486ea8c02cc090dd5002488cc0a0008cc0a0dd3000a5eb810011112cc00400a26600298103d87a80004bd6f7b63044ca60026eb8c0980066eacc09c00660560069112cc004cdc8a441000038acc004cdc7a441000038998029807998161ba60024bd70000c4cc015300103d87a8000006409d19800803c006446600e0046605c66ec0dd48029ba6004001401c81386052004813a2942294229410281ba633023337606ea4074dd31981199bb04c10b4a50797468205374617465004c010101004bd6f7b63025eb7bdb1808928c566002602260406ea8c090c084dd5181218109baa30083021375400313259800980618109baa0018992cc0040062b3001300f3022375400313259800800c076264b30010018992cc00400603f13259800800c08226644b300100181144c966002003023899912cc00400604b13259800800c09a04d02681344c9660026064007159800980d18169baa00a8992cc00400605113259800800c0a6053029814c4cc896600200302b8992cc00400605902c81644cc896600200302e8992cc00400605f02f817c0be26644b3001001818c4c96600200303281940ca264b3001303e003899811809912cc00400a26604a02444b3001002898119982000e25eb8226464b30010018992cc00400607503a81d40ea265300100389802982300340ed0251bae0014118608000503981cc0e60728228c0f8004c10400903f44c8c96600200303781bc0de06f1332259800800c6600200313005304400681ca04681cc0e607303941146eb8004c0f8009043181e000981f801207a819a076375a00303240f8607600281c8dd7000981d0012076303800140d86eb4004c0dc00a05881c0c0d40050331bae001303400240d460640028180c0b8dd5005409d02b409d02f1bae00140c8605e0028168dd58009817001408e04702340bc60580028150dd58009815801408204102040b060520028138c0a400a03d01e80f407902a1813800a04a3023375400301c408101c80e40720388140c094c088dd5000c54cc0812412e65787065637420496e6c696e65446174756d28737461746529203d20696e7075742e6f75747075742e646174756d0016407c600e60426ea8c020c084dd5000c54cc07d24013a65787065637420536372697074285f29203d20696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c0016407914c103d87a8000407860460028108889660026018603e6ea800e264b300100180144c96600200313259800800c012264b30010018acc004c0a000a330010038cc00400600d005402100540210054095005802c01600a8148c0980050241813001400e007003801a04e3024001408860406ea800e00280e8889660026016603c6ea800e264b300100180144c96600200313259800800c012264b30010018992cc004c0900062b3001300f302300180344c9660026052009132598009809000c566002604c6ea801a013008409d159800980b000c4c9660020030098992cc00400601500a80544c966002605a00700c805a054375a00300a40b460540028140c098dd50034566002602000315980098131baa006804c02102740210232046408c60486ea801600e8130c050c08c00502140190251baa001802c01600b00540a0604a0028118c09400a007003801c00d0261811800a042301f3754007001407048896600200300d8992cc004c07400a2646644b300100180944cc89660020030148992cc004c08c00a26465300130243025302530253025302530253025302530253025302530250019812000cdd698120012444b300130103023375400513259800980898121baa0018992cc004c048c094dd5002c4c9660026026604c6ea8006264653001302c302d302d302d302d302d302d302d302d302d302d302d302d0019816000cdd6981618149baa0039bad302c0024888966002603260586ea800e264b3001301a302d375400313259800980d98171baa0068992cc004c070c0bcdd5000c4c96600266e1c01566002b3001301e02c899b8902c483fbfffffc7e294102e440b22a6605e921216578706563742076616c7565203e3d20302026262076616c7565203c3d206d6178001640b914a3153302f4912a65787065637420666565645f696432203d3d2066726f6d5f696e7428626173655f61737365745f696429001640b86eb4c0ccc0c0dd5000c0a102d181918179baa006813a058375a6062605c6ea800604c8158c0c0c0b4dd5001c09502a0c0b0004c09cdd5004c079024181498131baa00580ea046375a6050604a6ea80060388110c09cc090dd5001406d0210c090004c07cdd5001c0550201810800a03e301f001302000140746eb4c074004dd6180e980f180f000980c9baa0018072034301b00140644528201e180880098061baa0128a4d153300a4911856616c696461746f722072657475726e65642066616c7365001365640241", - "hash": "09a937718dc6384bc591d5336bbe2846285194460a0e84a72aadbe03" + "compiledCode": "592c5e0101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0039bad00248888888888a60022a660089212a65787065637420757064617465733a204c6973743c4279746541727261793e203d2072656465656d657200168a998022491a6578706563742073746174653a2050797468203d20737461746500168a9980224938657870656374205b6f75745d203d2066696e645f7363726970745f6f757470757473286f7574707574732c207363726970745f686173682900168a99802249de6578706563742046656564207b0a20202020202020202020666565645f69643a2071756f74655f666565645f69642c0a2020202020202020202070726963653a20536f6d6528536f6d6528626173655f707269636529292c0a202020202020202020206578706f6e656e743a20536f6d6528626173655f6578706f6e656e74292c0a20202020202020202020666565645f7570646174655f74696d657374616d703a20536f6d6528536f6d652874696d657374616d705f3229292c0a202020202020202020202e2e0a20202020202020207d203d20626173655f6665656400168a99802249e56578706563742046656564207b0a20202020202020202020666565645f69643a206164615f70726963655f666565645f69642c0a2020202020202020202070726963653a20536f6d6528536f6d652871756f74655f707269636529292c0a202020202020202020206578706f6e656e743a20536f6d652871756f74655f6578706f6e656e74292c0a20202020202020202020666565645f7570646174655f74696d657374616d703a20536f6d6528536f6d652874696d657374616d705f3129292c0a202020202020202020202e2e0a20202020202020207d203d2071756f74655f6665656400168a9980224933657870656374205b71756f74655f666565642c20626173655f666565645d203d2070726963655f7570646174652e666565647300168a9980224934657870656374205b70726963655f7570646174655d203d206765745f7570646174657328707974685f706f6c6963792c2074782900168a998022491672656465656d65723a204f736952656465656d6572730016488888889660026465300130130019809980a000cdc3a400530130024888966002600460266ea800e2646644b300100789919912cc004c00c0062b3001301a3754015002806a0368acc004c0200062b3001301a3754015002806a036806a02e405c330013018375400b2301c301d0019b91489009b8f4881009ba548001222223322598009804180f1baa00f899192cc004c03cc080dd5000c4c96600200301a8992cc004c09c00a330013756601460466ea8012601460466ea80064466e24008005005406d0241812800a0463232330010010062259800800c52f5c11332259800992cc004c054c098dd5000c4cdc78031bae302a3027375400314a08120c0a4c098dd5181498131baa00289981400119802002000c4cc01001000502318138009814000a04a375c604860426ea80062a6603e9213a65787065637420536372697074287363726970745f6861736829203d20696e2e616464726573732e7061796d656e745f63726564656e7469616c00164078604660406ea8c08cc080dd500099198008009bac30230082259800800c5a264b30013375e604a60446ea80040362601260446ea8006266006006604c00480f8c09000502245660026010603c6ea802633001301f37546044603e6ea8026460466048604800337009000cdc4a4001370e90022444453001375a604e00b3756604e605000b32323322332259800980998149baa0028992cc004c050c0a8dd5000c4c96600200302681344c8cc0180048966002005132330010010042259800800c52f5c113303398009b8c480126e0120039b89480226e3120009b8c480226e0120074888888cc88cc0408c8d6600266e3cdd7181f000a450475d3c793008cc004888c8cc00cdd698210009bae3042304300130030019b89480426e3120109b804803e600e90082444446600a464660886ea0cde5250375c608a00266088608a608c00297ae05980098029b8d0018998219ba930020013304337526600860066e340040052f5c1153303f49124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e74001640f84646600e46608a6ea0cdc7000a40006608a6ea4cc008c088dc6800800a5eb808cc0208cc118dd419b8e00148000cc118dd49980198119b8d0010014bd70111919198249815998249ba800733049375000a66092609400297ae033049304a304b0014bd7018008012cc004c08c00a2653001001a5eb82006800888966002606200312323304c374e002660986ea40092f5c065300100180252f5c080088896600200510018cc00400e60a00053304e304f002001400c826a246530010059982618268008024c0a400e6eb8c134c1380050054c004c8cc130dd419bca4a06eb8c134004cc130c134c1380052f5c0b30013016371a00313304b37526022002660966ea4cc050c04cdc6800800a5eb822a6608e92124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e7400164119223304d0023304d375200297ae09b874801a6e1d200848888c8c8c8cc018ca6002003375860a80053035330533054008330534c103d87a8000330534c103d87a8000330534c103d87a8000330534c103d87a8000330534c103d87a8000330534c103d87a8000330534c103d87a8000330534c103d87a8000330534c103d87a8000330534c103d87a8000330534c103d87a8000330534c103d87a8000330534c103d87a80004bd702002222598008014400633001003982b8014c8c966002607c003132303a33058305900133058303a3305830593056375400697ae0305a305a001305537540071598009821800c4c8c8c0eccc164c168008cc164c168004cc164c0eccc164c168c15cdd500225eb80c16cc16c004c168004c154dd5001c56600260640031323232303c3305a305b0033305a305b0023305a305b0013305a303c3305a305b3058375400a97ae0305c305c001305b001305a001305537540071598009805000c4c8c8c8c8c0f4cc16cc170010cc16cc17000ccc16cc170008cc16cc170004cc16cc0f4cc16cc170c164dd500325eb80c174c174004c170004c16c004c168004c154dd5001c566002601200313232323232303e3305c305d0053305c305d0043305c305d0033305c305d0023305c305d0013305c303e3305c305d305a375400e97ae0305e305e001305d001305c001305b001305a0013055375400715980099b87480280062646464646464607e660ba60bc00c660ba60bc00a660ba60bc008660ba60bc006660ba60bc004660ba60bc002660ba607e660ba60bc60b66ea80212f5c060be60be00260bc00260ba00260b800260b600260b400260aa6ea800e2b30013370e9006000c4c8c8c8c8c8c8c8c100cc178c17c01ccc178c17c018cc178c17c014cc178c17c010cc178c17c00ccc178c17c008cc178c17c004cc178c100cc178c17cc170dd5004a5eb80c180c180004c17c004c178004c174004c170004c16c004c168004c154dd5001c56600266e1d200e0018991919191919191918209982f98300041982f98300039982f98300031982f98300029982f98300021982f98300019982f98300011982f98300009982f98209982f9830182e9baa00a4bd70183098308009830000982f800982f000982e800982e000982d800982d000982a9baa0038acc004cdc3a402000313232323232323232323042330603061009330603061008330603061007330603061006330603061005330603061004330603061003330603061002330603061001330603042330603061305e375401697ae03062306200130610013060001305f001305e001305d001305c001305b001305a0013055375400715980099b87480480062646464646464646464646086660c260c4014660c260c4012660c260c4010660c260c400e660c260c400c660c260c400a660c260c4008660c260c4006660c260c4004660c260c4002660c26086660c260c460be6ea80312f5c060c660c600260c400260c200260c000260be00260bc00260ba00260b800260b600260b400260aa6ea800e2b30013370e900a000c4c8c8c8c8c8c8c8c8c8c8c8c110cc188c18c02ccc188c18c028cc188c18c024cc188c18c020cc188c18c01ccc188c18c018cc188c18c014cc188c18c010cc188c18c00ccc188c18c008cc188c18c004cc188c110cc188c18cc180dd5006a5eb80c190c190004c18c004c188004c184004c180004c17c004c178004c174004c170004c16c004c168004c154dd5001c56600266e1d20160018991919191919191919191919182299831983200619831983200599831983200519831983200499831983200419831983200399831983200319831983200299831983200219831983200199831983200119831983200099831982299831983218309baa00e4bd701832983280098320009831800983100098308009830000982f800982f000982e800982e000982d800982d000982a9baa00389919191919191919191919191822998319832006198319832005998319832005198319832004998319832004198319832003998319832003198319832002998319832002198319832001998319832001198319832000998319832183280099831982299831983218309baa00e4bd7025eb80c190004c18c004c188004c184004c180004c17c004c178004c174004c170004c16c004c168004c154dd5001a0a44148829105220a44148829105220a44148829105218299baa0013056002400c82a0dd71829982a000991acc004c0b800a2653001001a5eb820068008889660026078003123233057374e002660ae6ea40092f5c065300100180252f5c080088896600200510018cc00400e60b600533059305a002001400c82c2246530010059982b982c0008024c0d000e6eb8c160c1640050051802800a0a08a9982724811165787065637420636f756e74203e3d2030001641346eb8c14cc15000ca60024464b30013001480422b30013001480022900044cdc724410801020408102040800000241411598009800a408113370490400219801801980a80144cdc124101010100406600600666e00009203f41408280dc4000c888c8cc158c00cdd6982b8009982b182b982c000a5eb80c00c006660a46ea0cdc7000a4000660a46ea4cc03cc0bcdc6800800a5eb81222323298009198029191982d1ba833794940dd7182d8009982d182d982e000a5eb816600260366e340062660b26ea4c060004cc164dd49980d180c9b8d0010014bd70454cc155240124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e74001641504646006b300130410018a60103d87a80008981e1982d1ba80014bd7020aa30030019bad3058003911191acc006600260846eb4c17000694294505644cc02000c8c014c0f8cc170dd4000a5eb822601e600898103d87a800041586eb8c170c174004cc168dd419b8e00148000cc168dd49980b981b9b8d0010014bd7024446b30013041002898019181e9982d800a5eb822b3001304600289801919ba548008cc16c0052f5c1159800981a80144c00c8cdd2a4008660b600297ae08acc004c03400a26600e464660b86ea0cde5250375c60ba002660b860ba60bc00297ae059800981a9b8d00189982d9ba930220013305b375266050604e6e340040052f5c1153305749124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e7400164158466e9520063305b375000297ae08acc004c03000a26600e464660b86ea0cde5250375c60ba002660b860ba60bc00297ae059800981a9b8d00189982d9ba930220013305b375266050604e6e340040052f5c1153305749124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e7400164158466e9520083305b3750b3001337100029040400244006266e04004c0192020415897ae08acc004cdc3a40140051300323374a90051982d800a5eb822b30013370e900600144cc0048cdd2a4018660b600297ae02323305c3750600c6eb4c174004cc170c174c1780052f5c064660b86ea0cde5250375c60ba002660b860ba60bc00297ae059800980e9b8d00189982d9ba9301a0013305b37526603860366e340040052f5c11533057490124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e740016415915980099b874803800a266002466e95200e3305b0014bd701191982e1ba833794940dd7182e8009982e182e982f000a5eb8166002603a6e340062660b66ea4c068004cc16cdd49980e180d9b8d0010014bd70454cc15d24124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e740016415915980099b874804000a266002466e9520103305b0014bd701191982e1ba833794940dd7182e8009982e182e982f000a5eb8166002603a6e340062660b66ea4c068004cc16cdd49980e180d9b8d0010014bd70454cc15d24124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e740016415915980099b874804800a246464660ba66e9520123305d305e0014bd701982e982f182f800a5eb80c004008cc0208c8cc174dd419bca4a06eb8c178004cc174c178c17c0052f5c0b30013036371a00313305c37526046002660b86ea4cc0a4c0a0dc6800800a5eb822a660b0920124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e740016415c4b300130430018a60103d87980008acc004c120006298103d87a80008acc004c0dc006298103d87b80008acc004c03c006298103d87c80008acc004c038006298103d87d80008a9982c249204d61726b657453657373696f6e2076616c7565206f7574206f662072616e67650016415c82b905720ae415d15980099b874805000a26006466e9520143305b0014bd70456600266e1d201600289801919ba548058cc16c0052f5c115980099b874806000a266002466e9520183305b0014bd701191982e1ba833794940dd7182e8009982e182e982f000a5eb8166002603a6e340062660b66ea4c068004cc16cdd49980e180d9b8d0010014bd70454cc15d24124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e740016415915330564911c4665656450726f7065727479204944206f7574206f662072616e67650016415482a905520aa415482a905520aa415482a905520aa41546eb8c16cc1700184b300133710002904040404040404040400144006266e04004c00920800141486006006375a60a200264660a06ea0cdc7000a4000660a06ea4cc034c0b4dc6800800a5eb80dd7182818288021045454cc10d24011165787065637420636f756e74203e3d2030001641086e312002454cc0e5240125657870656374206d61676963203d3d2070726963655f7570646174655f6d616769635f6c65001640e06eb8c0f8c0fc00566002600e6e340062660786ea4c008004cc0f0dd49980298021b8d0010014bd70454cc0e1240124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e74001640dc6eb8c064c0e4dd5198081191acc004cdc79bae303e00148904b9011a8200891919191919191991198231814198231823803998231ba90013304630470024bd70198231823982400125eb80d660026040003125980099b89002371a00313304537526601e0040026608a6ea66002005337026e3400400a002b8c25eb822a66082920124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e740016410115330404911165787065637420636f756e74203e3d2030001640fc6eb8c114c118008dd718228021bad30440013233043375066f29281bae304400133043304430450014bd702cc004c070dc6800c4cc108dd49804800998211ba93300f300e371a00200297ae08a9981f24924657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e74001640f46eb8c108c10c004d6600294624b30013371290201b8d0018998209ba93300b48100004cc104dd4cc005204099b80371a002901fc0057184bd70454cc0f524124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e74001640f1153303c4911165787065637420636f756e74203e3d2030001640ec6eb8c104c108004c0040096600294624b3001337129040009b8d00189981f9ba9330094820004004cc0fcdd4cc00520800199b80371a002903fc0057184bd70454cc0ed24124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e74001640e9153303a4911165787065637420636f756e74203e3d2030001640e5153303949126657870656374206d61676963203d3d20736f6c616e615f666f726d61745f6d616769635f6c65001640e06eb8c0f8c0fc00566002600e6e340062660786ea4c008004cc0f0dd49980298021b8d0010014bd70454cc0e1240124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e74001640dc6eb8c0f0024c00d200430034802066004004606a0028192264b300100181540aa05502a8991801981a8021bae00140d460640048180dd6000c09a04c8188c0b8c0acdd5000c54cc0a524016465787065637420536f6d652872656465656d657229203d0a2020202070616972732e6765745f66697273742873656c662e72656465656d6572732c205769746864726177285363726970742873746174652e77697468647261775f736372697074292929001640a06466446600400400244b30010018a60103d87a80008992cc004cdd78021816800c4c048cc0c0c0b80052f5c1133003003303200240ac60600028170dd5981718179817981798179817981798179817981798159baa0183374a90021981619ba548008cc0b0c0b4c0b8c0b8c0b8c0a8dd5181698151baa0024bd7025eb822a660509201ff65787065637420536f6d6528737461746529203d0a202020206c6973742e66696e645f6d6170280a20202020202073656c662e7265666572656e63655f696e707574732c0a202020202020666e28696e70757429207b0a20202020202020206966206173736574732e6861735f6e66745f73747269637428696e7075742e6f75747075742e76616c75652c20707974685f69642c2022507974682053746174652229207b0a202020202020202020202f2f20737461746520746f6b656e206f757473696465206f6620736372697074206164647265737320776f756c6420696d706c792061206275670a202020202020202020206578706563742053637269dc7074285f29203d20696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c0a2020202020202020202065787065637420496e6c696e65446174756d28737461746529203d20696e7075742e6f75747075742e646174756d0a202020202020202020206578706563742073746174653a2050797468203d2073746174650a20202020202020202020536f6d65287374617465290a20202020202020207d20656c7365207b0a202020202020202020204e6f6e650a20202020202020207d0a2020202020207d2c0a20202020290016409c64660020026eb0c040c0a4dd500b112cc0040062980103d87a80008992cc006600266ebc00530103d87a8000a50a5140a11001899801801981780120503259800cc004dd5980918159baa3012302b3754003374c6605a66ec0dd48139ba63302d3376098010b4a50797468205374617465004c010101004bd6f7b63025eb7bdb1824494500d4566002603260546ea8c0b8c0acdd5181718159baa3012302b375400313259800980498159baa0018992cc0040062b30013016302c375400313259800800c09e264b30010018992cc00400605313259800800c0aa26644b300100181644c96600200302d899912cc00400605f13259800800c0c206103081844c96600260780071598009810981b9baa00a8992cc00400606513259800800c0ce067033819c4cc89660020030358992cc00400606d03681b44cc89660020030388992cc00400607303981cc0e626644b300100181dc4c96600200303c81e40f2264b3001304800389980e809912cc00400a26603e02444b3001002898161982500e25eb8226464b30010018992cc0040060890448224112265300100389802982800341150261bae00141406094005043821c10e0868278c120004c12c00904944c8c966002003041820c1060831332259800800c6600200313005304e006821a048821c10e087043413c6eb8004c12000904d18230009824801208e81ea08a375a00303c4120608a0028218dd70009822001208a304200141006eb4004c10400a06c8210c0fc00503d1bae001303e00240fc607800281d0c0e0dd500540c503540c50391bae00140f0607200281b8dd5800981c00140b605b02d40e4606c00281a0dd5800981a80140aa05502a40d860660028188c0cc00a05102881440a10341818800a05e302d375400302640a9026813409a04c8190c0bcc0b0dd5000c54cc0a92412e65787065637420496e6c696e65446174756d28737461746529203d20696e7075742e6f75747075742e646174756d001640a4601660566ea8c048c0acdd5000c54cc0a524013a65787065637420536372697074285f29203d20696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c001640a114c103d87a800040a0605a002815888c96600260206eb8c0b8c0bc0062605c003153302949011b6578706563742028612c20235b5d29203d2073656c662873726329001640a06004002444b300130123028375400713259800800c00a264b30010018992cc00400600913259800800c566002606200519800801c66002003006802a010802a010802a05c802c01600b00540c8605e0028168c0bc00a007003801c00d0301816800a05630293754007001409844646600200200644660060026004004444b300130113027375400713259800800c00a264b30010018992cc00400600913259800800c4c966002605a00315980098049816000c01a264b300130320048992cc004c0600062b3001302f375400d00980420608acc004c074006264b3001001804c4c96600200300a805402a264b30013036003806402d0331bad001805206c303300140c4605e6ea801a2b3001300c0018acc004c0bcdd500340260108182010816102c2058302d375400b00740bc60366058002815200c8170dd5000c01600b005802a062302e00140b0605c005003801c00e0068178c0b000502a18141baa003800a04a371290022444b300100180dc4c966002605800513259800800c07a26644b300100181044c9660026060005132323298009819000cc0c8c0ccc0ccc0ccc0ccc0ccc0ccc0ccc0cc0066eb4c0c800e606400491112cc004c070c0c8dd5000c4c966002603a60666ea8006264b3001301e3034375400d13259800980f981a9baa0068992cc004c080c0d8dd5000c4c8c8ca6002607a003303d303e303e303e303e303e303e303e303e0019bad303d303a3754009375a607a007303d002488889660026050607c6ea8006264b30013029303f375400313259800981518201baa0078992cc004c0acc104dd5003c4c966002605860846ea800633001375a608c60866ea8006460506608c6ea0004cc11930010101004bd70488cc88c0accc124dd419b82375a60940046eb4c128004cc124dd419b82375a609460960046eb4c128c12c0052f5c0608a6ea8008c114dd5000c896600200514a3153304300116410891112cc004cc0056600266e1c02966002b30013025042899b89042483fbfffffc7e29410444410a2a6608a921216578706563742076616c7565203e3d20302026262076616c7565203c3d206d61780016411114a315330454913071756f74655f666565645f6964203d3d2066726f6d5f696e7428626173655f63757272656e637929203f2046616c73650014a08221240138426173652063757272656e6379206665656420646f6573206e6f74206d617463682065787065637465642062617365206173736574206964008992cc004cc009660026644b3001323259800981a800c528c566002607400313259800981d98261baa3034304d375460a0609a6ea8016266e24004012266e2000401104a1bad304f304c375400514a0824904918251baa001304d304a3754609a60946ea800a26464b300130350018a508acc004c0e8006264b3001303b304c37546068609a6ea8c0d0c134dd5002c4cdc4802000c4cdc4002000a094375a609e60986ea800a29450492092304a3754002609a60946ea8c0c4c128dd50014528208e30013048375406a6eb4c12cc120dd5010c528c54cc1192415774782e76616c69646974795f72616e67650a20207c3e20696e74657276616c2e636f6e7461696e73287536342e61735f696e742870726963655f7570646174652e74696d657374616d705f75732929203f2046616c73650014a0822924013850726963652066656564206e6f7420757064617465642077697468696e207472616e73616374696f6e2076616c69646974792072616e6765008acc004cc00966002646464b300130390018992cc004c0e8c12cdd5181998261baa3033304c37540091337100020511337120020508248dd6982718259baa0028acc004c0a000629422945048209030493754002609860926ea8c0c0c124dd5000980098241baa0358a518a9982324814474782e76616c69646974795f72616e67650a20207c3e20696e74657276616c2e69735f656e746972656c795f6265666f726528646561646c696e6529203f2046616c73650014a082292401245061796d656e74206e6f74206d616465206265666f72652074686520646561646c696e65008998012cc004c8c8ca60020030268172002222598008014528c4c96600200514a11332259800981c98279baa0018acc004cdd7982998281baa3053002304f0038acc004cdc49919b83375a60a80026eb4c150c154004c140dd5182998281baa001323322330020020012259800800c00e2646644b3001303c0028acc004c0ec00a2003006414d133005005305a004414c6eb8c14c004dd6982a000982b000a0a8323233001001375660ac60ae00a44b3001001801c4c8cc8966002607a005159800981e0014400600c82a226600a00a60b600882a0dd7182a0009bab305500130570014154297adef6c6014800233001006982a002cc1500110064528209a8a504135153304e49016a65787065637420536f6d652865787065637465645f7061796f757429203d0a202020202020202020202020726174696f6e616c2e64697628726174696f6e616c2e66726f6d5f696e742871756f74655f616d6f756e74292c2071756f74655f6d756c7469706c6965722900164134609c6ea8c144008c966002607a609c6ea80062980103d87a800089819998289980518059bad304f0023052304f375400297ae04130646644b300133710004900044c0d4cc14cc0d4cc14cdd41804800998299ba830090024bd7025eb822b300133710900000144c0d4cc14cc0d4cc14cdd4000998299ba80024bd7025eb822980103d87a800041388270dd698290009bad30523053001304e375400a8278c14000904e1919192cc004c0d4c12cdd5000c4c966002606c60986ea800626601060a0609a6ea8004c140c134dd5001454cc12d2414065787065637420536f6d652870726963655f726174696f29203d20726174696f6e616c2e6e657728626173655f70726963652c2071756f74655f70726963652900164128b300130350188a6103d87a80008acc004cdc400c24001130303304e30303304e375060080186609c6ea0c0100612f5c097ae089818198271818198271ba800c3304e375003097ae04bd7020924125153304a49016365787065637420536f6d65286d756c7469706c69657229203d0a20202020726174696f6e616c2e66726f6d5f696e7428313029207c3e20726174696f6e616c2e706f7728626173655f6578706f6e656e74202d2071756f74655f6578706f6e656e74290016412464653001375a60a0003375a60a060a2003337020180309112cc00566002607200713371200290004528209a8a60103d87a80008acc004cdc424000003130343305230343305237506600c006002660a46ea0cc0180080052f5c097ae08acc004cdc4000a4001130343305230343305237506600c0046010002660a46ea0cc01800cc0200052f5c097ae08a610ad8799fd8799f0101ffff004134826904d0c130dd50009803a40286002002444b30013371000290004520008acc004c0d40062900144c966002606c66e1800920048cc0040126002007337060049002200889800cc00401260020073370660580049002200841286e080090492092370290004528c54cc1192401407061796f7574735f6d617463685f6f757470757473287061796565732c206f7574707574732c2071756f74655f6d756c7469706c69657229203f2046616c73650014a0822924013c5061796f75747320646f206e6f74206d617463682065787065637465642076616c756573206261736564206f6e207468652070726963652066656564008a50411514a082288c12cc130c130c130c130c130c130c130006294104420748200c114c108dd5003c0e503f1bad30443041375400f03840f86eb4c10cc100dd5000c0dd03d1821181f9baa00181b2078181e981e981e981e800981e000981b9baa00c816a06830393036375400d02c40cc6eb4c0e0c0d4dd500340ad0321bad30373034375400302a40c4606c60666ea800605281806064606460646064002606200260586ea800e0428168c0b800502c18160009816800a0543758601060506ea80060388148c0a80050281153301d49011a65787065637420536f6d6528646174756d29203d20646174756d0016407080e0dd61810181098108029112cc00400a294226530013259800980598109baa00189bad302230253756604a60446ea800629000203e30240019baf302430250019bab003488966002003159800980100344cc01400d20008a5040851325980099baf30240014c010140008acc004cc018010dd6981298141bab3025001898019ba630290028a5040891598009980300224001130030078a5040888110c09c0050250ca60020030049119812801198129ba60014bd7020022225980080144cc005300103d87a80004bd6f7b63044ca60026eb8c08c0066eacc09000660500069112cc004c03400e2b3001300c0038998029805998149ba60024bd70000c4cc01530103d87a8000006409119800803c006446600e0046605666ec0dd48029ba6004001401c8120604c00481222942294229410250c05cdd50041b874800201500a805402901c180c000980c180c800980a1baa0038b2022180980098071baa0148a4d153300c4911856616c696461746f722072657475726e65642066616c73650013656402c1", + "hash": "61e3187740a97e7ae765725bc0ebbf232e9703b8c220305ba2bd0606" }, { - "title": "osi_accept_pyth.osi_accept_pyth.else", + "title": "osi.oracle_settled_invoice.else", "redeemer": { "schema": {} }, "parameters": [ { - "title": "pyth_id", + "title": "pyth_policy", "schema": { "$ref": "#/definitions/cardano~1assets~1PolicyId" } }, { - "title": "base_asset_id", + "title": "base_currency", "schema": { "$ref": "#/definitions/Int" } } ], - "compiledCode": "5921460101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0039bad00248888888888a60022a660089212a65787065637420757064617465733a204c6973743c4279746541727261793e203d2072656465656d657200168a998022491a6578706563742073746174653a2050797468203d20737461746500168a99802249906578706563742046656564207b0a2020202020666565645f69643a20666565645f6964322c0a202020202070726963653a20536f6d6528536f6d652870726963655f3229292c0a2020202020666565645f7570646174655f74696d657374616d703a20536f6d6528536f6d652874696d657374616d705f3229292c0a20202020202e2e0a2020207d203d20666565643200168a99802249996578706563742046656564207b0a2020202020666565645f69643a206164615f70726963655f666565645f69642c0a202020202070726963653a20536f6d6528536f6d652870726963655f3129292c0a2020202020666565645f7570646174655f74696d657374616d703a20536f6d6528536f6d652874696d657374616d705f3129292c0a20202020202e2e0a2020207d203d20666565643100168a998022491d657870656374205b66656564312c2066656564325d203d20666565647300168a998022492c657870656374205b7570646174655d203d206765745f7570646174657328707974685f69642c2073656c6629001648888896600264653001301100198089809000cdc3a400530110024888966002600460226ea800e3300130123754007371290004dc3a40009114c004c06000e6030603200798009b89480126e1d200491191980080080191198018009801001488c96600266e3d220100375c603660380031301b0018a9980b24811b6578706563742028612c20235b5d29203d2073656c66287372632900164054600400323019301a0019180c980d180d000cdd2a400091111111919192cc004c02cc078dd5000c4c9660026018603e6ea8006264b300100180dc06e2646601600244b300100289919800800802112cc004006297ae08998144c004dc62400937009001cdc4a4011371890004dc62401137009003a44444466446602c4646b30013371e6eb8c0cc0052210475d3c793008cc004888c8cc00cdd6981b8009bae3037303800130030019b89480426e3120109b804803e600e90082444446600a464660726ea0cde5250375c6074002660726074607600297ae05980098029b8d00189981c1ba930020013303837526600860066e340040052f5c1153303449124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e74001640cc46644660104660766ea0cdc7000a4000660766ea4cc00cc008dc6800800a5eb808cc0248cc0f0dd419b8e00148000cc0f0dd49980218019b8d0010014bd701119191981f98111981f9ba80083303f375000a6607e608000297ae03303f304030410014bd7018008012cc004c0a000a2653001001a5eb820068008889660026054003123233042374e002660846ea40092f5c065300100180252f5c080088896600200510018cc00400e608c005330443045002001400c821a246530010059982118218008024c02400e6eb8c10cc1100050054c004c8cc108dd419bca4a06eb8c10c004cc108c10cc1100052f5c0b30013017371a00313304137526024002660826ea4cc054c050dc6800800a5eb822a6607a92124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e74001640f1223304300233043375200297ae09b874801a6e1d200848888c8c8c8cc018ca600200337586094005302c33049304a008330494c103d87a8000330494c103d87a8000330494c103d87a8000330494c103d87a8000330494c103d87a8000330494c103d87a8000330494c103d87a8000330494c103d87a8000330494c103d87a8000330494c103d87a8000330494c103d87a8000330494c103d87a8000330494c103d87a80004bd70200222259800801440063300100398268014c8c966002606e00313230313304e304f0013304e30313304e304f304c375400697ae030503050001304b3754007159800981d800c4c8c8c0c8cc13cc140008cc13cc140004cc13cc0c8cc13cc140c134dd500225eb80c144c144004c140004c12cdd5001c566002606a00313232323033330503051003330503051002330503051001330503033330503051304e375400a97ae03052305200130510013050001304b37540071598009805000c4c8c8c8c8c0d0cc144c148010cc144c14800ccc144c148008cc144c148004cc144c0d0cc144c148c13cdd500325eb80c14cc14c004c148004c144004c140004c12cdd5001c56600260120031323232323230353305230530053305230530043305230530033305230530023305230530013305230353305230533050375400e97ae0305430540013053001305200130510013050001304b375400715980099b87480280062646464646464606c660a660a800c660a660a800a660a660a8008660a660a8006660a660a8004660a660a8002660a6606c660a660a860a26ea80212f5c060aa60aa00260a800260a600260a400260a200260a000260966ea800e2b30013370e9006000c4c8c8c8c8c8c8c8c0dccc150c15401ccc150c154018cc150c154014cc150c154010cc150c15400ccc150c154008cc150c154004cc150c0dccc150c154c148dd5004a5eb80c158c158004c154004c150004c14c004c148004c144004c140004c12cdd5001c56600266e1d200e00189919191919191919181c1982a982b0041982a982b0039982a982b0031982a982b0029982a982b0021982a982b0019982a982b0011982a982b0009982a981c1982a982b18299baa00a4bd70182b982b800982b000982a800982a000982980098290009828800982800098259baa0038acc004cdc3a4020003132323232323232323230393305630570093305630570083305630570073305630570063305630570053305630570043305630570033305630570023305630570013305630393305630573054375401697ae03058305800130570013056001305500130540013053001305200130510013050001304b375400715980099b87480480062646464646464646464646074660ae60b0014660ae60b0012660ae60b0010660ae60b000e660ae60b000c660ae60b000a660ae60b0008660ae60b0006660ae60b0004660ae60b0002660ae6074660ae60b060aa6ea80312f5c060b260b200260b000260ae00260ac00260aa00260a800260a600260a400260a200260a000260966ea800e2b30013370e900a000c4c8c8c8c8c8c8c8c8c8c8c8c0eccc160c16402ccc160c164028cc160c164024cc160c164020cc160c16401ccc160c164018cc160c164014cc160c164010cc160c16400ccc160c164008cc160c164004cc160c0eccc160c164c158dd5006a5eb80c168c168004c164004c160004c15c004c158004c154004c150004c14c004c148004c144004c140004c12cdd5001c56600266e1d20160018991919191919191919191919181e1982c982d0061982c982d0059982c982d0051982c982d0049982c982d0041982c982d0039982c982d0031982c982d0029982c982d0021982c982d0019982c982d0011982c982d0009982c981e1982c982d182b9baa00e4bd70182d982d800982d000982c800982c000982b800982b000982a800982a000982980098290009828800982800098259baa0038991919191919191919191919181e1982c982d0061982c982d0059982c982d0051982c982d0049982c982d0041982c982d0039982c982d0031982c982d0029982c982d0021982c982d0019982c982d0011982c982d0009982c982d182d8009982c981e1982c982d182b9baa00e4bd7025eb80c168004c164004c160004c15c004c158004c154004c150004c14c004c148004c144004c140004c12cdd5001a0904120824104820904120824104820904120824104818249baa001304c002400c8250dd718249825000991acc004c0cc00a2653001001a5eb82006800888966002606a00312323304d374e0026609a6ea40092f5c065300100180252f5c080088896600200510018cc00400e60a20053304f3050002001400c8272246530010059982698270008024c05000e6eb8c138c13c0050051802800a08c8a9982224811165787065637420636f756e74203e3d20300016410c6eb8c124c12800ca60024464b30013001480422b30013001480022900044cdc724410801020408102040800000241191598009800a408113370490400219801801980b00144cdc124101010100406600600666e00009203f41188230dc4000c888c8cc130c00cdd698268009982618269827000a5eb80c00c006660906ea0cdc7000a4000660906ea4cc040c03cdc6800800a5eb8122232329800919802919198281ba833794940dd718288009982818289829000a5eb816600260386e3400626609e6ea4c064004cc13cdd49980d980d1b8d0010014bd70454cc12d240124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e74001641284646006b3001303a0018a60103d87a800089819998281ba80014bd70209630030019bad304e003911191acc006600260766eb4c14800694294504c44cc02000c8c014c0d4cc148dd4000a5eb822601e600898103d87a800041306eb8c148c14c004cc140dd419b8e00148000cc140dd49980c180b9b8d0010014bd7024446b3001303a002898019181a19828800a5eb822b3001303e00289801919ba548008cc1440052f5c1159800981c00144c00c8cdd2a4008660a200297ae08acc004c03400a26600e464660a46ea0cde5250375c60a6002660a460a660a800297ae059800981d1b8d0018998289ba930230013305137526605260506e340040052f5c1153304d49124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e7400164130466e95200633051375000297ae08acc004c03000a26600e464660a46ea0cde5250375c60a6002660a460a660a800297ae059800981d1b8d0018998289ba930230013305137526605260506e340040052f5c1153304d49124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e7400164130466e952008330513750b3001337100029040400244006266e04004c0192020413097ae08acc004cdc3a40140051300323374a900519828800a5eb822b30013370e900600144cc0048cdd2a4018660a200297ae0232330523750600c6eb4c14c004cc148c14cc1500052f5c064660a46ea0cde5250375c60a6002660a460a660a800297ae059800980f1b8d0018998289ba9301b0013305137526603a60386e340040052f5c1153304d490124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e740016413115980099b874803800a266002466e95200e330510014bd70119198291ba833794940dd71829800998291829982a000a5eb8166002603c6e340062660a26ea4c06c004cc144dd49980e980e1b8d0010014bd70454cc13524124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e740016413115980099b874804000a266002466e952010330510014bd70119198291ba833794940dd71829800998291829982a000a5eb8166002603c6e340062660a26ea4c06c004cc144dd49980e980e1b8d0010014bd70454cc13524124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e740016413115980099b874804800a246464660a666e9520123305330540014bd7019829982a182a800a5eb80c004008cc0208c8cc14cdd419bca4a06eb8c150004cc14cc150c1540052f5c0b3001303b371a00313305237526048002660a46ea4cc0a8c0a4dc6800800a5eb822a6609c920124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e74001641344b3001303c0018a60103d87980008acc004c100006298103d87a80008acc004c0e8006298103d87b80008acc004c03c006298103d87c80008acc004c038006298103d87d80008a99827249204d61726b657453657373696f6e2076616c7565206f7574206f662072616e676500164134826904d209a413515980099b874805000a26006466e952014330510014bd70456600266e1d201600289801919ba548058cc1440052f5c115980099b874806000a266002466e952018330510014bd70119198291ba833794940dd71829800998291829982a000a5eb8166002603c6e340062660a26ea4c06c004cc144dd49980e980e1b8d0010014bd70454cc13524124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e7400164131153304c4911c4665656450726f7065727479204944206f7574206f662072616e67650016412c825904b2096412c825904b2096412c825904b2096412c6eb8c144c1480184b300133710002904040404040404040400144006266e04004c00920800141206006006375a608e002646608c6ea0cdc7000a40006608c6ea4cc038c034dc6800800a5eb80dd718231823802103b454cc0e524011165787065637420636f756e74203e3d2030001640e06e31200237009000a2a6605c920125657870656374206d61676963203d3d2070726963655f7570646174655f6d616769635f6c65001640b46eb8c0ccc0d000566002600e6e340062660626ea4c008004cc0c4dd49980298021b8d0010014bd70454cc0b5240124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e74001640b06eb8c050c0b8dd51980b1191acc004cdc79bae303300148904b9011a82008919191919191919911981d980f1981d981e0039981d9ba90013303b303c0024bd701981d981e181e80125eb80d660026048003125980099b89002371a00313303a37526601e004002660746ea66002005337026e3400400a002b8c25eb822a6606c920124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e74001640d515330354911165787065637420636f756e74203e3d2030001640d06eb8c0e8c0ec008dd7181d0021bad30390013233038375066f29281bae3039001330383039303a0014bd702cc004c080dc6800c4cc0dcdd498048009981b9ba93300f300e371a00200297ae08a99819a4924657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e74001640c86eb8c0dcc0e0004d6600294624b30013371290201b8d00189981b1ba93300b48100004cc0d8dd4cc005204099b80371a002901fc0057184bd70454cc0c924124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e74001640c515330314911165787065637420636f756e74203e3d2030001640c06eb8c0d8c0dc004c0040096600294624b3001337129040009b8d00189981a1ba9330094820004004cc0d0dd4cc00520800199b80371a002903fc0057184bd70454cc0c124124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e74001640bd153302f4911165787065637420636f756e74203e3d2030001640b9153302e49126657870656374206d61676963203d3d20736f6c616e615f666f726d61745f6d616769635f6c65001640b46eb8c0ccc0d000566002600e6e340062660626ea4c008004cc0c4dd49980298021b8d0010014bd70454cc0b5240124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e74001640b06eb8c0c4024c00d2004300348020660040046054002813a264b300100180fc07e03f01f899180198150021bae00140a8604e0048128dd6000c06e0368130c08cc080dd5000c54cc07924016465787065637420536f6d652872656465656d657229203d0a2020202070616972732e6765745f66697273742873656c662e72656465656d6572732c205769746864726177285363726970742873746174652e77697468647261775f736372697074292929001640746466446600400400244b30010018a60103d87a80008992cc004cdd78021811000c4c020cc094c08c0052f5c113300300330270024080604a0028118dd5981198121812181218121812181218121812181218101baa00f3374a90021981099ba548008cc084c088c08cc08cc08cc07cdd51811180f9baa0014bd7025eb822a6603a9201ff65787065637420536f6d6528737461746529203d0a202020206c6973742e66696e645f6d6170280a20202020202073656c662e7265666572656e63655f696e707574732c0a202020202020666e28696e70757429207b0a20202020202020206966206173736574732e6861735f6e66745f73747269637428696e7075742e6f75747075742e76616c75652c20707974685f69642c2022507974682053746174652229207b0a202020202020202020202f2f20737461746520746f6b656e206f757473696465206f6620736372697074206164647265737320776f756c6420696d706c792061206275670a202020202020202020206578706563742053637269dc7074285f29203d20696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c0a2020202020202020202065787065637420496e6c696e65446174756d28737461746529203d20696e7075742e6f75747075742e646174756d0a202020202020202020206578706563742073746174653a2050797468203d2073746174650a20202020202020202020536f6d65287374617465290a20202020202020207d20656c7365207b0a202020202020202020204e6f6e650a20202020202020207d0a2020202020207d2c0a20202020290016407064660020026eb0c018c07cdd5007112cc0040062980103d87a80008992cc006600266ebc00530103d87a8000a50a51407910018998018019812801203c325980099912cc00400a294226530013259800980898121baa00189bad3025302837566050604a6ea800629000204430270019baf302730280019bab003488966002003159800980100344cc01400d20008a5040911325980099baf30270014c010140008acc004cc018010dd6981418159bab3028001898019ba6302c0028a5040951598009980300224001130030078a5040948128c0a80050280ca60020033756601660486ea8c02cc090dd5002488cc0a0008cc0a0dd3000a5eb810011112cc00400a26600298103d87a80004bd6f7b63044ca60026eb8c0980066eacc09c00660560069112cc004cdc8a441000038acc004cdc7a441000038998029807998161ba60024bd70000c4cc015300103d87a8000006409d19800803c006446600e0046605c66ec0dd48029ba6004001401c81386052004813a2942294229410281ba633023337606ea4074dd31981199bb04c10b4a50797468205374617465004c010101004bd6f7b63025eb7bdb1808928c566002602260406ea8c090c084dd5181218109baa30083021375400313259800980618109baa0018992cc0040062b3001300f3022375400313259800800c076264b30010018992cc00400603f13259800800c08226644b300100181144c966002003023899912cc00400604b13259800800c09a04d02681344c9660026064007159800980d18169baa00a8992cc00400605113259800800c0a6053029814c4cc896600200302b8992cc00400605902c81644cc896600200302e8992cc00400605f02f817c0be26644b3001001818c4c96600200303281940ca264b3001303e003899811809912cc00400a26604a02444b3001002898119982000e25eb8226464b30010018992cc00400607503a81d40ea265300100389802982300340ed0251bae0014118608000503981cc0e60728228c0f8004c10400903f44c8c96600200303781bc0de06f1332259800800c6600200313005304400681ca04681cc0e607303941146eb8004c0f8009043181e000981f801207a819a076375a00303240f8607600281c8dd7000981d0012076303800140d86eb4004c0dc00a05881c0c0d40050331bae001303400240d460640028180c0b8dd5005409d02b409d02f1bae00140c8605e0028168dd58009817001408e04702340bc60580028150dd58009815801408204102040b060520028138c0a400a03d01e80f407902a1813800a04a3023375400301c408101c80e40720388140c094c088dd5000c54cc0812412e65787065637420496e6c696e65446174756d28737461746529203d20696e7075742e6f75747075742e646174756d0016407c600e60426ea8c020c084dd5000c54cc07d24013a65787065637420536372697074285f29203d20696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c0016407914c103d87a8000407860460028108889660026018603e6ea800e264b300100180144c96600200313259800800c012264b30010018acc004c0a000a330010038cc00400600d005402100540210054095005802c01600a8148c0980050241813001400e007003801a04e3024001408860406ea800e00280e8889660026016603c6ea800e264b300100180144c96600200313259800800c012264b30010018992cc004c0900062b3001300f302300180344c9660026052009132598009809000c566002604c6ea801a013008409d159800980b000c4c9660020030098992cc00400601500a80544c966002605a00700c805a054375a00300a40b460540028140c098dd50034566002602000315980098131baa006804c02102740210232046408c60486ea801600e8130c050c08c00502140190251baa001802c01600b00540a0604a0028118c09400a007003801c00d0261811800a042301f3754007001407048896600200300d8992cc004c07400a2646644b300100180944cc89660020030148992cc004c08c00a26465300130243025302530253025302530253025302530253025302530250019812000cdd698120012444b300130103023375400513259800980898121baa0018992cc004c048c094dd5002c4c9660026026604c6ea8006264653001302c302d302d302d302d302d302d302d302d302d302d302d302d0019816000cdd6981618149baa0039bad302c0024888966002603260586ea800e264b3001301a302d375400313259800980d98171baa0068992cc004c070c0bcdd5000c4c96600266e1c01566002b3001301e02c899b8902c483fbfffffc7e294102e440b22a6605e921216578706563742076616c7565203e3d20302026262076616c7565203c3d206d6178001640b914a3153302f4912a65787065637420666565645f696432203d3d2066726f6d5f696e7428626173655f61737365745f696429001640b86eb4c0ccc0c0dd5000c0a102d181918179baa006813a058375a6062605c6ea800604c8158c0c0c0b4dd5001c09502a0c0b0004c09cdd5004c079024181498131baa00580ea046375a6050604a6ea80060388110c09cc090dd5001406d0210c090004c07cdd5001c0550201810800a03e301f001302000140746eb4c074004dd6180e980f180f000980c9baa0018072034301b00140644528201e180880098061baa0128a4d153300a4911856616c696461746f722072657475726e65642066616c7365001365640241", - "hash": "09a937718dc6384bc591d5336bbe2846285194460a0e84a72aadbe03" + "compiledCode": "592c5e0101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0039bad00248888888888a60022a660089212a65787065637420757064617465733a204c6973743c4279746541727261793e203d2072656465656d657200168a998022491a6578706563742073746174653a2050797468203d20737461746500168a9980224938657870656374205b6f75745d203d2066696e645f7363726970745f6f757470757473286f7574707574732c207363726970745f686173682900168a99802249de6578706563742046656564207b0a20202020202020202020666565645f69643a2071756f74655f666565645f69642c0a2020202020202020202070726963653a20536f6d6528536f6d6528626173655f707269636529292c0a202020202020202020206578706f6e656e743a20536f6d6528626173655f6578706f6e656e74292c0a20202020202020202020666565645f7570646174655f74696d657374616d703a20536f6d6528536f6d652874696d657374616d705f3229292c0a202020202020202020202e2e0a20202020202020207d203d20626173655f6665656400168a99802249e56578706563742046656564207b0a20202020202020202020666565645f69643a206164615f70726963655f666565645f69642c0a2020202020202020202070726963653a20536f6d6528536f6d652871756f74655f707269636529292c0a202020202020202020206578706f6e656e743a20536f6d652871756f74655f6578706f6e656e74292c0a20202020202020202020666565645f7570646174655f74696d657374616d703a20536f6d6528536f6d652874696d657374616d705f3129292c0a202020202020202020202e2e0a20202020202020207d203d2071756f74655f6665656400168a9980224933657870656374205b71756f74655f666565642c20626173655f666565645d203d2070726963655f7570646174652e666565647300168a9980224934657870656374205b70726963655f7570646174655d203d206765745f7570646174657328707974685f706f6c6963792c2074782900168a998022491672656465656d65723a204f736952656465656d6572730016488888889660026465300130130019809980a000cdc3a400530130024888966002600460266ea800e2646644b300100789919912cc004c00c0062b3001301a3754015002806a0368acc004c0200062b3001301a3754015002806a036806a02e405c330013018375400b2301c301d0019b91489009b8f4881009ba548001222223322598009804180f1baa00f899192cc004c03cc080dd5000c4c96600200301a8992cc004c09c00a330013756601460466ea8012601460466ea80064466e24008005005406d0241812800a0463232330010010062259800800c52f5c11332259800992cc004c054c098dd5000c4cdc78031bae302a3027375400314a08120c0a4c098dd5181498131baa00289981400119802002000c4cc01001000502318138009814000a04a375c604860426ea80062a6603e9213a65787065637420536372697074287363726970745f6861736829203d20696e2e616464726573732e7061796d656e745f63726564656e7469616c00164078604660406ea8c08cc080dd500099198008009bac30230082259800800c5a264b30013375e604a60446ea80040362601260446ea8006266006006604c00480f8c09000502245660026010603c6ea802633001301f37546044603e6ea8026460466048604800337009000cdc4a4001370e90022444453001375a604e00b3756604e605000b32323322332259800980998149baa0028992cc004c050c0a8dd5000c4c96600200302681344c8cc0180048966002005132330010010042259800800c52f5c113303398009b8c480126e0120039b89480226e3120009b8c480226e0120074888888cc88cc0408c8d6600266e3cdd7181f000a450475d3c793008cc004888c8cc00cdd698210009bae3042304300130030019b89480426e3120109b804803e600e90082444446600a464660886ea0cde5250375c608a00266088608a608c00297ae05980098029b8d0018998219ba930020013304337526600860066e340040052f5c1153303f49124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e74001640f84646600e46608a6ea0cdc7000a40006608a6ea4cc008c088dc6800800a5eb808cc0208cc118dd419b8e00148000cc118dd49980198119b8d0010014bd70111919198249815998249ba800733049375000a66092609400297ae033049304a304b0014bd7018008012cc004c08c00a2653001001a5eb82006800888966002606200312323304c374e002660986ea40092f5c065300100180252f5c080088896600200510018cc00400e60a00053304e304f002001400c826a246530010059982618268008024c0a400e6eb8c134c1380050054c004c8cc130dd419bca4a06eb8c134004cc130c134c1380052f5c0b30013016371a00313304b37526022002660966ea4cc050c04cdc6800800a5eb822a6608e92124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e7400164119223304d0023304d375200297ae09b874801a6e1d200848888c8c8c8cc018ca6002003375860a80053035330533054008330534c103d87a8000330534c103d87a8000330534c103d87a8000330534c103d87a8000330534c103d87a8000330534c103d87a8000330534c103d87a8000330534c103d87a8000330534c103d87a8000330534c103d87a8000330534c103d87a8000330534c103d87a8000330534c103d87a80004bd702002222598008014400633001003982b8014c8c966002607c003132303a33058305900133058303a3305830593056375400697ae0305a305a001305537540071598009821800c4c8c8c0eccc164c168008cc164c168004cc164c0eccc164c168c15cdd500225eb80c16cc16c004c168004c154dd5001c56600260640031323232303c3305a305b0033305a305b0023305a305b0013305a303c3305a305b3058375400a97ae0305c305c001305b001305a001305537540071598009805000c4c8c8c8c8c0f4cc16cc170010cc16cc17000ccc16cc170008cc16cc170004cc16cc0f4cc16cc170c164dd500325eb80c174c174004c170004c16c004c168004c154dd5001c566002601200313232323232303e3305c305d0053305c305d0043305c305d0033305c305d0023305c305d0013305c303e3305c305d305a375400e97ae0305e305e001305d001305c001305b001305a0013055375400715980099b87480280062646464646464607e660ba60bc00c660ba60bc00a660ba60bc008660ba60bc006660ba60bc004660ba60bc002660ba607e660ba60bc60b66ea80212f5c060be60be00260bc00260ba00260b800260b600260b400260aa6ea800e2b30013370e9006000c4c8c8c8c8c8c8c8c100cc178c17c01ccc178c17c018cc178c17c014cc178c17c010cc178c17c00ccc178c17c008cc178c17c004cc178c100cc178c17cc170dd5004a5eb80c180c180004c17c004c178004c174004c170004c16c004c168004c154dd5001c56600266e1d200e0018991919191919191918209982f98300041982f98300039982f98300031982f98300029982f98300021982f98300019982f98300011982f98300009982f98209982f9830182e9baa00a4bd70183098308009830000982f800982f000982e800982e000982d800982d000982a9baa0038acc004cdc3a402000313232323232323232323042330603061009330603061008330603061007330603061006330603061005330603061004330603061003330603061002330603061001330603042330603061305e375401697ae03062306200130610013060001305f001305e001305d001305c001305b001305a0013055375400715980099b87480480062646464646464646464646086660c260c4014660c260c4012660c260c4010660c260c400e660c260c400c660c260c400a660c260c4008660c260c4006660c260c4004660c260c4002660c26086660c260c460be6ea80312f5c060c660c600260c400260c200260c000260be00260bc00260ba00260b800260b600260b400260aa6ea800e2b30013370e900a000c4c8c8c8c8c8c8c8c8c8c8c8c110cc188c18c02ccc188c18c028cc188c18c024cc188c18c020cc188c18c01ccc188c18c018cc188c18c014cc188c18c010cc188c18c00ccc188c18c008cc188c18c004cc188c110cc188c18cc180dd5006a5eb80c190c190004c18c004c188004c184004c180004c17c004c178004c174004c170004c16c004c168004c154dd5001c56600266e1d20160018991919191919191919191919182299831983200619831983200599831983200519831983200499831983200419831983200399831983200319831983200299831983200219831983200199831983200119831983200099831982299831983218309baa00e4bd701832983280098320009831800983100098308009830000982f800982f000982e800982e000982d800982d000982a9baa00389919191919191919191919191822998319832006198319832005998319832005198319832004998319832004198319832003998319832003198319832002998319832002198319832001998319832001198319832000998319832183280099831982299831983218309baa00e4bd7025eb80c190004c18c004c188004c184004c180004c17c004c178004c174004c170004c16c004c168004c154dd5001a0a44148829105220a44148829105220a44148829105218299baa0013056002400c82a0dd71829982a000991acc004c0b800a2653001001a5eb820068008889660026078003123233057374e002660ae6ea40092f5c065300100180252f5c080088896600200510018cc00400e60b600533059305a002001400c82c2246530010059982b982c0008024c0d000e6eb8c160c1640050051802800a0a08a9982724811165787065637420636f756e74203e3d2030001641346eb8c14cc15000ca60024464b30013001480422b30013001480022900044cdc724410801020408102040800000241411598009800a408113370490400219801801980a80144cdc124101010100406600600666e00009203f41408280dc4000c888c8cc158c00cdd6982b8009982b182b982c000a5eb80c00c006660a46ea0cdc7000a4000660a46ea4cc03cc0bcdc6800800a5eb81222323298009198029191982d1ba833794940dd7182d8009982d182d982e000a5eb816600260366e340062660b26ea4c060004cc164dd49980d180c9b8d0010014bd70454cc155240124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e74001641504646006b300130410018a60103d87a80008981e1982d1ba80014bd7020aa30030019bad3058003911191acc006600260846eb4c17000694294505644cc02000c8c014c0f8cc170dd4000a5eb822601e600898103d87a800041586eb8c170c174004cc168dd419b8e00148000cc168dd49980b981b9b8d0010014bd7024446b30013041002898019181e9982d800a5eb822b3001304600289801919ba548008cc16c0052f5c1159800981a80144c00c8cdd2a4008660b600297ae08acc004c03400a26600e464660b86ea0cde5250375c60ba002660b860ba60bc00297ae059800981a9b8d00189982d9ba930220013305b375266050604e6e340040052f5c1153305749124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e7400164158466e9520063305b375000297ae08acc004c03000a26600e464660b86ea0cde5250375c60ba002660b860ba60bc00297ae059800981a9b8d00189982d9ba930220013305b375266050604e6e340040052f5c1153305749124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e7400164158466e9520083305b3750b3001337100029040400244006266e04004c0192020415897ae08acc004cdc3a40140051300323374a90051982d800a5eb822b30013370e900600144cc0048cdd2a4018660b600297ae02323305c3750600c6eb4c174004cc170c174c1780052f5c064660b86ea0cde5250375c60ba002660b860ba60bc00297ae059800980e9b8d00189982d9ba9301a0013305b37526603860366e340040052f5c11533057490124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e740016415915980099b874803800a266002466e95200e3305b0014bd701191982e1ba833794940dd7182e8009982e182e982f000a5eb8166002603a6e340062660b66ea4c068004cc16cdd49980e180d9b8d0010014bd70454cc15d24124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e740016415915980099b874804000a266002466e9520103305b0014bd701191982e1ba833794940dd7182e8009982e182e982f000a5eb8166002603a6e340062660b66ea4c068004cc16cdd49980e180d9b8d0010014bd70454cc15d24124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e740016415915980099b874804800a246464660ba66e9520123305d305e0014bd701982e982f182f800a5eb80c004008cc0208c8cc174dd419bca4a06eb8c178004cc174c178c17c0052f5c0b30013036371a00313305c37526046002660b86ea4cc0a4c0a0dc6800800a5eb822a660b0920124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e740016415c4b300130430018a60103d87980008acc004c120006298103d87a80008acc004c0dc006298103d87b80008acc004c03c006298103d87c80008acc004c038006298103d87d80008a9982c249204d61726b657453657373696f6e2076616c7565206f7574206f662072616e67650016415c82b905720ae415d15980099b874805000a26006466e9520143305b0014bd70456600266e1d201600289801919ba548058cc16c0052f5c115980099b874806000a266002466e9520183305b0014bd701191982e1ba833794940dd7182e8009982e182e982f000a5eb8166002603a6e340062660b66ea4c068004cc16cdd49980e180d9b8d0010014bd70454cc15d24124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e740016415915330564911c4665656450726f7065727479204944206f7574206f662072616e67650016415482a905520aa415482a905520aa415482a905520aa41546eb8c16cc1700184b300133710002904040404040404040400144006266e04004c00920800141486006006375a60a200264660a06ea0cdc7000a4000660a06ea4cc034c0b4dc6800800a5eb80dd7182818288021045454cc10d24011165787065637420636f756e74203e3d2030001641086e312002454cc0e5240125657870656374206d61676963203d3d2070726963655f7570646174655f6d616769635f6c65001640e06eb8c0f8c0fc00566002600e6e340062660786ea4c008004cc0f0dd49980298021b8d0010014bd70454cc0e1240124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e74001640dc6eb8c064c0e4dd5198081191acc004cdc79bae303e00148904b9011a8200891919191919191991198231814198231823803998231ba90013304630470024bd70198231823982400125eb80d660026040003125980099b89002371a00313304537526601e0040026608a6ea66002005337026e3400400a002b8c25eb822a66082920124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e740016410115330404911165787065637420636f756e74203e3d2030001640fc6eb8c114c118008dd718228021bad30440013233043375066f29281bae304400133043304430450014bd702cc004c070dc6800c4cc108dd49804800998211ba93300f300e371a00200297ae08a9981f24924657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e74001640f46eb8c108c10c004d6600294624b30013371290201b8d0018998209ba93300b48100004cc104dd4cc005204099b80371a002901fc0057184bd70454cc0f524124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e74001640f1153303c4911165787065637420636f756e74203e3d2030001640ec6eb8c104c108004c0040096600294624b3001337129040009b8d00189981f9ba9330094820004004cc0fcdd4cc00520800199b80371a002903fc0057184bd70454cc0ed24124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e74001640e9153303a4911165787065637420636f756e74203e3d2030001640e5153303949126657870656374206d61676963203d3d20736f6c616e615f666f726d61745f6d616769635f6c65001640e06eb8c0f8c0fc00566002600e6e340062660786ea4c008004cc0f0dd49980298021b8d0010014bd70454cc0e1240124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e74001640dc6eb8c0f0024c00d200430034802066004004606a0028192264b300100181540aa05502a8991801981a8021bae00140d460640048180dd6000c09a04c8188c0b8c0acdd5000c54cc0a524016465787065637420536f6d652872656465656d657229203d0a2020202070616972732e6765745f66697273742873656c662e72656465656d6572732c205769746864726177285363726970742873746174652e77697468647261775f736372697074292929001640a06466446600400400244b30010018a60103d87a80008992cc004cdd78021816800c4c048cc0c0c0b80052f5c1133003003303200240ac60600028170dd5981718179817981798179817981798179817981798159baa0183374a90021981619ba548008cc0b0c0b4c0b8c0b8c0b8c0a8dd5181698151baa0024bd7025eb822a660509201ff65787065637420536f6d6528737461746529203d0a202020206c6973742e66696e645f6d6170280a20202020202073656c662e7265666572656e63655f696e707574732c0a202020202020666e28696e70757429207b0a20202020202020206966206173736574732e6861735f6e66745f73747269637428696e7075742e6f75747075742e76616c75652c20707974685f69642c2022507974682053746174652229207b0a202020202020202020202f2f20737461746520746f6b656e206f757473696465206f6620736372697074206164647265737320776f756c6420696d706c792061206275670a202020202020202020206578706563742053637269dc7074285f29203d20696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c0a2020202020202020202065787065637420496e6c696e65446174756d28737461746529203d20696e7075742e6f75747075742e646174756d0a202020202020202020206578706563742073746174653a2050797468203d2073746174650a20202020202020202020536f6d65287374617465290a20202020202020207d20656c7365207b0a202020202020202020204e6f6e650a20202020202020207d0a2020202020207d2c0a20202020290016409c64660020026eb0c040c0a4dd500b112cc0040062980103d87a80008992cc006600266ebc00530103d87a8000a50a5140a11001899801801981780120503259800cc004dd5980918159baa3012302b3754003374c6605a66ec0dd48139ba63302d3376098010b4a50797468205374617465004c010101004bd6f7b63025eb7bdb1824494500d4566002603260546ea8c0b8c0acdd5181718159baa3012302b375400313259800980498159baa0018992cc0040062b30013016302c375400313259800800c09e264b30010018992cc00400605313259800800c0aa26644b300100181644c96600200302d899912cc00400605f13259800800c0c206103081844c96600260780071598009810981b9baa00a8992cc00400606513259800800c0ce067033819c4cc89660020030358992cc00400606d03681b44cc89660020030388992cc00400607303981cc0e626644b300100181dc4c96600200303c81e40f2264b3001304800389980e809912cc00400a26603e02444b3001002898161982500e25eb8226464b30010018992cc0040060890448224112265300100389802982800341150261bae00141406094005043821c10e0868278c120004c12c00904944c8c966002003041820c1060831332259800800c6600200313005304e006821a048821c10e087043413c6eb8004c12000904d18230009824801208e81ea08a375a00303c4120608a0028218dd70009822001208a304200141006eb4004c10400a06c8210c0fc00503d1bae001303e00240fc607800281d0c0e0dd500540c503540c50391bae00140f0607200281b8dd5800981c00140b605b02d40e4606c00281a0dd5800981a80140aa05502a40d860660028188c0cc00a05102881440a10341818800a05e302d375400302640a9026813409a04c8190c0bcc0b0dd5000c54cc0a92412e65787065637420496e6c696e65446174756d28737461746529203d20696e7075742e6f75747075742e646174756d001640a4601660566ea8c048c0acdd5000c54cc0a524013a65787065637420536372697074285f29203d20696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c001640a114c103d87a800040a0605a002815888c96600260206eb8c0b8c0bc0062605c003153302949011b6578706563742028612c20235b5d29203d2073656c662873726329001640a06004002444b300130123028375400713259800800c00a264b30010018992cc00400600913259800800c566002606200519800801c66002003006802a010802a010802a05c802c01600b00540c8605e0028168c0bc00a007003801c00d0301816800a05630293754007001409844646600200200644660060026004004444b300130113027375400713259800800c00a264b30010018992cc00400600913259800800c4c966002605a00315980098049816000c01a264b300130320048992cc004c0600062b3001302f375400d00980420608acc004c074006264b3001001804c4c96600200300a805402a264b30013036003806402d0331bad001805206c303300140c4605e6ea801a2b3001300c0018acc004c0bcdd500340260108182010816102c2058302d375400b00740bc60366058002815200c8170dd5000c01600b005802a062302e00140b0605c005003801c00e0068178c0b000502a18141baa003800a04a371290022444b300100180dc4c966002605800513259800800c07a26644b300100181044c9660026060005132323298009819000cc0c8c0ccc0ccc0ccc0ccc0ccc0ccc0ccc0cc0066eb4c0c800e606400491112cc004c070c0c8dd5000c4c966002603a60666ea8006264b3001301e3034375400d13259800980f981a9baa0068992cc004c080c0d8dd5000c4c8c8ca6002607a003303d303e303e303e303e303e303e303e303e0019bad303d303a3754009375a607a007303d002488889660026050607c6ea8006264b30013029303f375400313259800981518201baa0078992cc004c0acc104dd5003c4c966002605860846ea800633001375a608c60866ea8006460506608c6ea0004cc11930010101004bd70488cc88c0accc124dd419b82375a60940046eb4c128004cc124dd419b82375a609460960046eb4c128c12c0052f5c0608a6ea8008c114dd5000c896600200514a3153304300116410891112cc004cc0056600266e1c02966002b30013025042899b89042483fbfffffc7e29410444410a2a6608a921216578706563742076616c7565203e3d20302026262076616c7565203c3d206d61780016411114a315330454913071756f74655f666565645f6964203d3d2066726f6d5f696e7428626173655f63757272656e637929203f2046616c73650014a08221240138426173652063757272656e6379206665656420646f6573206e6f74206d617463682065787065637465642062617365206173736574206964008992cc004cc009660026644b3001323259800981a800c528c566002607400313259800981d98261baa3034304d375460a0609a6ea8016266e24004012266e2000401104a1bad304f304c375400514a0824904918251baa001304d304a3754609a60946ea800a26464b300130350018a508acc004c0e8006264b3001303b304c37546068609a6ea8c0d0c134dd5002c4cdc4802000c4cdc4002000a094375a609e60986ea800a29450492092304a3754002609a60946ea8c0c4c128dd50014528208e30013048375406a6eb4c12cc120dd5010c528c54cc1192415774782e76616c69646974795f72616e67650a20207c3e20696e74657276616c2e636f6e7461696e73287536342e61735f696e742870726963655f7570646174652e74696d657374616d705f75732929203f2046616c73650014a0822924013850726963652066656564206e6f7420757064617465642077697468696e207472616e73616374696f6e2076616c69646974792072616e6765008acc004cc00966002646464b300130390018992cc004c0e8c12cdd5181998261baa3033304c37540091337100020511337120020508248dd6982718259baa0028acc004c0a000629422945048209030493754002609860926ea8c0c0c124dd5000980098241baa0358a518a9982324814474782e76616c69646974795f72616e67650a20207c3e20696e74657276616c2e69735f656e746972656c795f6265666f726528646561646c696e6529203f2046616c73650014a082292401245061796d656e74206e6f74206d616465206265666f72652074686520646561646c696e65008998012cc004c8c8ca60020030268172002222598008014528c4c96600200514a11332259800981c98279baa0018acc004cdd7982998281baa3053002304f0038acc004cdc49919b83375a60a80026eb4c150c154004c140dd5182998281baa001323322330020020012259800800c00e2646644b3001303c0028acc004c0ec00a2003006414d133005005305a004414c6eb8c14c004dd6982a000982b000a0a8323233001001375660ac60ae00a44b3001001801c4c8cc8966002607a005159800981e0014400600c82a226600a00a60b600882a0dd7182a0009bab305500130570014154297adef6c6014800233001006982a002cc1500110064528209a8a504135153304e49016a65787065637420536f6d652865787065637465645f7061796f757429203d0a202020202020202020202020726174696f6e616c2e64697628726174696f6e616c2e66726f6d5f696e742871756f74655f616d6f756e74292c2071756f74655f6d756c7469706c6965722900164134609c6ea8c144008c966002607a609c6ea80062980103d87a800089819998289980518059bad304f0023052304f375400297ae04130646644b300133710004900044c0d4cc14cc0d4cc14cdd41804800998299ba830090024bd7025eb822b300133710900000144c0d4cc14cc0d4cc14cdd4000998299ba80024bd7025eb822980103d87a800041388270dd698290009bad30523053001304e375400a8278c14000904e1919192cc004c0d4c12cdd5000c4c966002606c60986ea800626601060a0609a6ea8004c140c134dd5001454cc12d2414065787065637420536f6d652870726963655f726174696f29203d20726174696f6e616c2e6e657728626173655f70726963652c2071756f74655f70726963652900164128b300130350188a6103d87a80008acc004cdc400c24001130303304e30303304e375060080186609c6ea0c0100612f5c097ae089818198271818198271ba800c3304e375003097ae04bd7020924125153304a49016365787065637420536f6d65286d756c7469706c69657229203d0a20202020726174696f6e616c2e66726f6d5f696e7428313029207c3e20726174696f6e616c2e706f7728626173655f6578706f6e656e74202d2071756f74655f6578706f6e656e74290016412464653001375a60a0003375a60a060a2003337020180309112cc00566002607200713371200290004528209a8a60103d87a80008acc004cdc424000003130343305230343305237506600c006002660a46ea0cc0180080052f5c097ae08acc004cdc4000a4001130343305230343305237506600c0046010002660a46ea0cc01800cc0200052f5c097ae08a610ad8799fd8799f0101ffff004134826904d0c130dd50009803a40286002002444b30013371000290004520008acc004c0d40062900144c966002606c66e1800920048cc0040126002007337060049002200889800cc00401260020073370660580049002200841286e080090492092370290004528c54cc1192401407061796f7574735f6d617463685f6f757470757473287061796565732c206f7574707574732c2071756f74655f6d756c7469706c69657229203f2046616c73650014a0822924013c5061796f75747320646f206e6f74206d617463682065787065637465642076616c756573206261736564206f6e207468652070726963652066656564008a50411514a082288c12cc130c130c130c130c130c130c130006294104420748200c114c108dd5003c0e503f1bad30443041375400f03840f86eb4c10cc100dd5000c0dd03d1821181f9baa00181b2078181e981e981e981e800981e000981b9baa00c816a06830393036375400d02c40cc6eb4c0e0c0d4dd500340ad0321bad30373034375400302a40c4606c60666ea800605281806064606460646064002606200260586ea800e0428168c0b800502c18160009816800a0543758601060506ea80060388148c0a80050281153301d49011a65787065637420536f6d6528646174756d29203d20646174756d0016407080e0dd61810181098108029112cc00400a294226530013259800980598109baa00189bad302230253756604a60446ea800629000203e30240019baf302430250019bab003488966002003159800980100344cc01400d20008a5040851325980099baf30240014c010140008acc004cc018010dd6981298141bab3025001898019ba630290028a5040891598009980300224001130030078a5040888110c09c0050250ca60020030049119812801198129ba60014bd7020022225980080144cc005300103d87a80004bd6f7b63044ca60026eb8c08c0066eacc09000660500069112cc004c03400e2b3001300c0038998029805998149ba60024bd70000c4cc01530103d87a8000006409119800803c006446600e0046605666ec0dd48029ba6004001401c8120604c00481222942294229410250c05cdd50041b874800201500a805402901c180c000980c180c800980a1baa0038b2022180980098071baa0148a4d153300c4911856616c696461746f722072657475726e65642066616c73650013656402c1", + "hash": "61e3187740a97e7ae765725bc0ebbf232e9703b8c220305ba2bd0606" } ], "definitions": { - "Data": { - "title": "Data", - "description": "Any Plutus data." - }, "Int": { "dataType": "integer" }, diff --git a/lazer/cardano/our-project/on-chain/validators/osi.ak b/lazer/cardano/our-project/on-chain/validators/osi.ak index 78f88e69..c8d33d02 100644 --- a/lazer/cardano/our-project/on-chain/validators/osi.ak +++ b/lazer/cardano/our-project/on-chain/validators/osi.ak @@ -1,20 +1,18 @@ -use aiken/collection/list -use aiken/collection/pairs use aiken/interval use aiken/math/rational -use cardano/address.{Script} +use cardano/address.{Script, Credential} use cardano/assets.{PolicyId, lovelace_of} use cardano/transaction.{ Output, OutputReference, Transaction, find_script_outputs, } use otypes.{Fund, OsiDatum, OsiRedeemers, Payout} -use pyth.{PriceUpdate, get_updates} -use types/u32 +use pyth.{Feed, PriceUpdate, get_updates} +use types/u32.{U32, from_int} use types/u64 use utils.{quote_price_multiplier} /// Oracle-settled Invoice -validator oracle_settled_invoice(base_currency: Int, pyth_policy: PolicyId) { +validator oracle_settled_invoice(pyth_policy: PolicyId, base_currency: Int) { spend( datum: Option, redeemer: OsiRedeemers, @@ -37,49 +35,60 @@ validator oracle_settled_invoice(base_currency: Int, pyth_policy: PolicyId) { expect [price_update] = get_updates(pyth_policy, tx) - expect [feed1, feed2] = price_update.feeds + expect [quote_feed, base_feed] = price_update.feeds - let base_currency_feed_match = - u32.as_int(feed1.feed_id) == base_currency + expect Feed { + feed_id: ada_price_feed_id, + price: Some(Some(quote_price)), + exponent: Some(quote_exponent), + feed_update_timestamp: Some(Some(timestamp_1)), + .. + } = quote_feed - let quote_multiplier = quote_price_multiplier(feed1, feed2) + expect Feed { + feed_id: quote_feed_id, + price: Some(Some(base_price)), + exponent: Some(base_exponent), + feed_update_timestamp: Some(Some(timestamp_2)), + .. + } = base_feed - let feed_time_within_range = - tx.validity_range - |> interval.contains(u64.as_int(price_update.timestamp_us)) + let quote_multiplier = + quote_price_multiplier( + base_price, + base_exponent, + quote_price, + quote_exponent, + ) - let payment_before_deadline = - tx.validity_range - |> interval.is_entirely_before(deadline) - - let payouts_match = - payees - |> pairs.foldl( - True, - fn(k, v, r) { - let outputs_value = - outputs - |> list.filter_map( - fn(out) { - if out.address.payment_credential == k { - Some(out.value) - } else { - None - } - }, - ) - |> list.foldl( - 0, - fn(value, accumulator) { - lovelace_of(value) + accumulator - }, - ) - expect Some(expected_payout) = - rational.div(rational.from_int(v), quote_multiplier) - (outputs_value >= rational.floor(expected_payout))? && r - }, - ) - payouts_match? && base_currency_feed_match? && feed_time_within_range? && payment_before_deadline? + and { + // Base currency feed must match the expected base asset id + trace_if_false( + (quote_feed_id == from_int(base_currency))?, + @"Base currency feed does not match expected base asset id" + ), + // Price feed must be updated within the transaction's validity range + trace_if_false( + (tx.validity_range + |> interval.contains(u64.as_int(price_update.timestamp_us)))?, + @"Price feed not updated within transaction validity range" + ), + // Payment must be made before the deadline + trace_if_false( + (tx.validity_range + |> interval.is_entirely_before(deadline))?, + @"Payment not made before the deadline" + ), + // Payouts must be made to the correct addresses with the correct amounts + trace_if_false( + payouts_match_outputs( + payees, + outputs, + quote_multiplier, + )?, + @"Payouts do not match expected values based on the price feed" + ) + } } } } @@ -88,3 +97,39 @@ validator oracle_settled_invoice(base_currency: Int, pyth_policy: PolicyId) { fail } } + +fn trace_if_false(condition: Bool, message: String) -> Bool { + if condition { + True + } else { + fail message + } +} + +fn payouts_match_outputs( + payees: Pairs, + outputs: List, + quote_multiplier: rational.Rational, +) -> Bool { + when payees is { + [] -> True + [Pair(payee, quote_amount), ..rest_payees] -> + when outputs is { + [] -> False + [Output { address, value, .. }, ..rest_outputs] -> { + expect Some(expected_payout) = + rational.div(rational.from_int(quote_amount), quote_multiplier) + + and { + address.payment_credential == payee, + lovelace_of(value) >= rational.floor(expected_payout), + payouts_match_outputs( + rest_payees, + rest_outputs, + quote_multiplier, + ), + } + } + } + } +} diff --git a/lazer/cardano/our-project/on-chain/validators/osi_accept_pyth.ak b/lazer/cardano/our-project/on-chain/validators/osi_accept_pyth.ak deleted file mode 100644 index 82aff24e..00000000 --- a/lazer/cardano/our-project/on-chain/validators/osi_accept_pyth.ak +++ /dev/null @@ -1,40 +0,0 @@ -use cardano/assets.{PolicyId} -use cardano/transaction.{OutputReference, Transaction} -use pyth.{PriceUpdate, Feed, get_updates} -use types/u32.{U32, from_int} - -const ada_price_feed_id = 16 - -validator osi_accept_pyth(pyth_id: PolicyId, base_asset_id: Int) { - spend(_datum: Option, redeemer: Data, _utxo: OutputReference, self: Transaction) { - expect [update] = get_updates(pyth_id, self) - let PriceUpdate { - timestamp_us, - feeds, - .. - } = update - expect [feed1, feed2] = feeds - - expect Feed { - feed_id: ada_price_feed_id, - price: Some(Some(price_1)), - feed_update_timestamp: Some(Some(timestamp_1)), - .. - } = feed1 - - expect Feed { - feed_id: feed_id2, - price: Some(Some(price_2)), - feed_update_timestamp: Some(Some(timestamp_2)), - .. - } = feed2 - - expect feed_id2 == from_int(base_asset_id) - - True - } - - else(_) { - False - } -} From 650f24e663a1342b54b815907f384c8cdac6039e Mon Sep 17 00:00:00 2001 From: sofia-bobbiesi Date: Sun, 22 Mar 2026 18:01:59 -0300 Subject: [PATCH 16/21] feat: initialize web UI with components, styles, and configuration files --- lazer/cardano/our-project/web-ui/.env.example | 3 + lazer/cardano/our-project/web-ui/.gitignore | 4 + .../web-ui/app/components/osi-panel.tsx | 59 ++++++ .../web-ui/app/components/site-header.tsx | 30 +++ .../our-project/web-ui/app/globals.css | 176 +++++++++++++++++ .../cardano/our-project/web-ui/app/layout.tsx | 19 ++ lazer/cardano/our-project/web-ui/app/page.tsx | 187 ++++++++++++++++++ lazer/cardano/our-project/web-ui/app/types.ts | 5 + .../cardano/our-project/web-ui/next-env.d.ts | 6 + lazer/cardano/our-project/web-ui/package.json | 22 +++ .../cardano/our-project/web-ui/tsconfig.json | 20 ++ 11 files changed, 531 insertions(+) create mode 100644 lazer/cardano/our-project/web-ui/.env.example create mode 100644 lazer/cardano/our-project/web-ui/.gitignore create mode 100644 lazer/cardano/our-project/web-ui/app/components/osi-panel.tsx create mode 100644 lazer/cardano/our-project/web-ui/app/components/site-header.tsx create mode 100644 lazer/cardano/our-project/web-ui/app/globals.css create mode 100644 lazer/cardano/our-project/web-ui/app/layout.tsx create mode 100644 lazer/cardano/our-project/web-ui/app/page.tsx create mode 100644 lazer/cardano/our-project/web-ui/app/types.ts create mode 100644 lazer/cardano/our-project/web-ui/next-env.d.ts create mode 100644 lazer/cardano/our-project/web-ui/package.json create mode 100644 lazer/cardano/our-project/web-ui/tsconfig.json diff --git a/lazer/cardano/our-project/web-ui/.env.example b/lazer/cardano/our-project/web-ui/.env.example new file mode 100644 index 00000000..05391683 --- /dev/null +++ b/lazer/cardano/our-project/web-ui/.env.example @@ -0,0 +1,3 @@ +NEXT_PUBLIC_VALIDATOR_ADDRESS=addr_test1... +NEXT_PUBLIC_BLOCKFROST_BASE_URL=https://cardano-preprod.blockfrost.io/api/v0 +NEXT_PUBLIC_BLOCKFROST_PROJECT_ID=your_blockfrost_project_id diff --git a/lazer/cardano/our-project/web-ui/.gitignore b/lazer/cardano/our-project/web-ui/.gitignore new file mode 100644 index 00000000..78338515 --- /dev/null +++ b/lazer/cardano/our-project/web-ui/.gitignore @@ -0,0 +1,4 @@ +node_modules/ +.next/ +out/ +*.tsbuildinfo diff --git a/lazer/cardano/our-project/web-ui/app/components/osi-panel.tsx b/lazer/cardano/our-project/web-ui/app/components/osi-panel.tsx new file mode 100644 index 00000000..48a4833b --- /dev/null +++ b/lazer/cardano/our-project/web-ui/app/components/osi-panel.tsx @@ -0,0 +1,59 @@ +"use client"; + +import type { OsiRow } from "../types"; + +type OsiPanelProps = { + validatorAddress: string; + osiStatus: string; + osiRows: OsiRow[]; + isWalletConnected: boolean; +}; + +export function OsiPanel({ + validatorAddress, + osiStatus, + osiRows, + isWalletConnected, +}: Readonly) { + const hasRows = osiRows.length > 0; + + return ( +
+
+

OSIs

+ +
+ +

{osiStatus}

+ + {hasRows && ( +
    + {osiRows.map((row) => ( +
  • +
    + {row.outRef} + + Lovelace: {row.lovelace} | Datum: {row.datumKind} + +
    + +
  • + ))} +
+ )} +
+ ); +} diff --git a/lazer/cardano/our-project/web-ui/app/components/site-header.tsx b/lazer/cardano/our-project/web-ui/app/components/site-header.tsx new file mode 100644 index 00000000..db5a10b7 --- /dev/null +++ b/lazer/cardano/our-project/web-ui/app/components/site-header.tsx @@ -0,0 +1,30 @@ +"use client"; + +type SiteHeaderProps = { + title: string; + buttonLabel: string; + onConnect: () => void; + isConnecting: boolean; +}; + +export function SiteHeader({ + title, + buttonLabel, + onConnect, + isConnecting, +}: SiteHeaderProps) { + return ( +
+

{title}

+ +
+ ); +} diff --git a/lazer/cardano/our-project/web-ui/app/globals.css b/lazer/cardano/our-project/web-ui/app/globals.css new file mode 100644 index 00000000..5686932f --- /dev/null +++ b/lazer/cardano/our-project/web-ui/app/globals.css @@ -0,0 +1,176 @@ +:root { + font-family: "Space Grotesk", "Segoe UI", sans-serif; + color: #f6f7f8; + background: radial-gradient( + circle at 15% 10%, + #22436b 0%, + #0d1726 45%, + #070b12 100% + ); +} + +* { + box-sizing: border-box; +} + +html, +body { + margin: 0; + min-height: 100vh; +} + +body { + min-height: 100vh; + padding: 1.25rem; +} + +.page-shell { + width: min(100%, 980px); + margin: 0 auto; + display: grid; + gap: 1rem; +} + +.site-header { + display: flex; + align-items: center; + justify-content: space-between; + gap: 1rem; + padding: 1rem 1.25rem; + border: 1px solid rgba(255, 255, 255, 0.2); + border-radius: 14px; + background: linear-gradient(135deg, rgba(8, 19, 32, 0.9), rgba(13, 33, 54, 0.7)); + backdrop-filter: blur(3px); +} + +.project-name { + margin: 0; + font-size: clamp(1.05rem, 2.2vw, 1.45rem); + letter-spacing: 0.04em; +} + +.connect-button, +.action-button { + border-radius: 10px; + padding: 0.6rem 1rem; + color: #f7fbff; + font-weight: 700; + letter-spacing: 0.02em; + cursor: pointer; + transition: transform 120ms ease, filter 120ms ease, opacity 120ms ease; +} + +.connect-button { + border: 1px solid #ff9f43; + background: linear-gradient(135deg, #ff9f43, #f97316); +} + +.action-button { + border: 1px solid #3fd2ff; + background: linear-gradient(135deg, #2aa7cc, #1674b6); +} + +.connect-button:hover, +.action-button:hover { + transform: translateY(-1px); + filter: brightness(1.06); +} + +.connect-button:disabled, +.action-button:disabled { + opacity: 0.7; + cursor: not-allowed; + transform: none; +} + +.content-area { + display: block; +} + +.osi-panel { + border: 1px solid rgba(255, 255, 255, 0.2); + border-radius: 14px; + background: linear-gradient(135deg, rgba(8, 19, 32, 0.9), rgba(13, 33, 54, 0.7)); + padding: 1rem 1.25rem; +} + +.osi-panel-header { + display: flex; + align-items: center; + justify-content: space-between; + gap: 1rem; + margin-bottom: 0.75rem; +} + +.section-title { + margin: 0; + font-size: 1.05rem; +} + +.validator-line { + margin: 0 0 0.9rem; + color: rgba(247, 251, 255, 0.88); + font-size: 0.92rem; +} + +.validator-value { + font-family: "IBM Plex Mono", "Courier New", monospace; + font-size: 0.8rem; + opacity: 0.92; +} + +.osi-status { + margin: 0 0 0.9rem; + font-size: 0.84rem; + opacity: 0.9; +} + +.osi-list { + list-style: none; + margin: 0; + padding: 0; + display: grid; + gap: 0.75rem; +} + +.osi-item { + display: flex; + align-items: center; + justify-content: space-between; + gap: 1rem; + border: 1px solid rgba(255, 255, 255, 0.16); + border-radius: 12px; + padding: 0.8rem; + background: rgba(10, 24, 40, 0.5); +} + +.osi-item-meta { + display: grid; + gap: 0.3rem; +} + +.osi-id { + font-weight: 700; +} + +.osi-date { + font-size: 0.82rem; + opacity: 0.88; +} + +@media (max-width: 560px) { + .site-header { + padding: 0.9rem; + } + + .connect-button, + .action-button { + padding: 0.5rem 0.8rem; + font-size: 0.85rem; + } + + .osi-item { + align-items: flex-start; + flex-direction: column; + } +} diff --git a/lazer/cardano/our-project/web-ui/app/layout.tsx b/lazer/cardano/our-project/web-ui/app/layout.tsx new file mode 100644 index 00000000..77972368 --- /dev/null +++ b/lazer/cardano/our-project/web-ui/app/layout.tsx @@ -0,0 +1,19 @@ +import type { Metadata } from "next"; +import "./globals.css"; + +export const metadata: Metadata = { + title: "Oracle Settled Invoice", + description: "OSI dashboard", +}; + +type RootLayoutProps = { + children: React.ReactNode; +}; + +export default function RootLayout({ children }: RootLayoutProps) { + return ( + + {children} + + ); +} diff --git a/lazer/cardano/our-project/web-ui/app/page.tsx b/lazer/cardano/our-project/web-ui/app/page.tsx new file mode 100644 index 00000000..b5e50129 --- /dev/null +++ b/lazer/cardano/our-project/web-ui/app/page.tsx @@ -0,0 +1,187 @@ +"use client"; + +import { useCallback, useEffect, useMemo, useState } from "react"; +import { Address, createClient } from "@evolution-sdk/evolution"; +import { OsiPanel } from "./components/osi-panel"; +import { SiteHeader } from "./components/site-header"; +import type { OsiRow } from "./types"; + +type WalletApiLike = { + getUsedAddresses: () => Promise>; + getUnusedAddresses: () => Promise>; + getRewardAddresses: () => Promise>; + getUtxos: () => Promise>; + signTx: (txCborHex: string, partialSign: boolean) => Promise; + signData: (addressHex: string, payload: string) => Promise; + submitTx: (txCborHex: string) => Promise; +}; + +type BrowserWallet = { + enable: () => Promise; + isEnabled?: () => Promise; +}; + +declare global { + interface Window { + cardano?: Record; + } +} + +const shortenAddress = (bech32: string): string => + `${bech32.slice(0, 10)}...${bech32.slice(-6)}`; + +const getWalletKey = (): string => { + const wallets = window.cardano; + if (!wallets) { + throw new Error( + "No Cardano wallet found. Install Eternl, Lace, Nami, or another CIP-30 wallet.", + ); + } + + const preferred = ["eternl", "lace", "nami", "flint"]; + const installed = Object.keys(wallets).filter( + (key) => typeof wallets[key]?.enable === "function", + ); + + if (installed.length === 0) { + throw new Error( + "No compatible CIP-30 wallet was detected in your browser.", + ); + } + + return preferred.find((wallet) => installed.includes(wallet)) ?? installed[0]; +}; + +const mapUtxoToRow = (utxo: any): OsiRow => { + const json = utxo.toJSON(); + const txHash = json.transactionId.hash; + const index = json.index; + const datumKind = json.datumOption?._tag ?? "None"; + + return { + outRef: `${txHash}#${index}`, + lovelace: json.assets.lovelace, + datumKind, + }; +}; + +export default function HomePage() { + const validatorAddress = process.env.NEXT_PUBLIC_VALIDATOR_ADDRESS || ""; + const blockfrostBaseUrl = + process.env.NEXT_PUBLIC_BLOCKFROST_BASE_URL || + "https://cardano-preprod.blockfrost.io/api/v0"; + const blockfrostProjectId = + process.env.NEXT_PUBLIC_BLOCKFROST_PROJECT_ID || ""; + + const [osiRows, setOsiRows] = useState([]); + const [osiStatus, setOsiStatus] = useState("Loading OSIs from chain..."); + const [isWalletConnected, setIsWalletConnected] = useState(false); + const [isConnecting, setIsConnecting] = useState(false); + const [connectedAddressLabel, setConnectedAddressLabel] = + useState("Connect Wallet"); + + const loadOsis = useCallback(async (): Promise => { + if (!validatorAddress) { + setOsiRows([]); + setOsiStatus("Missing NEXT_PUBLIC_VALIDATOR_ADDRESS in .env.local"); + return; + } + + if (!blockfrostProjectId) { + setOsiRows([]); + setOsiStatus("Missing NEXT_PUBLIC_BLOCKFROST_PROJECT_ID in .env.local"); + return; + } + + try { + const providerClient = createClient({ + network: "preprod", + provider: { + type: "blockfrost", + baseUrl: blockfrostBaseUrl, + projectId: blockfrostProjectId, + }, + }); + + const utxos = await providerClient.getUtxos( + Address.fromBech32(validatorAddress), + ); + + const rows = utxos.map(mapUtxoToRow); + setOsiRows(rows); + setOsiStatus( + rows.length === 0 + ? "No OSIs found at this validator address." + : `Found ${rows.length} OSI contract UTxO(s).`, + ); + } catch (error) { + const message = + error instanceof Error + ? error.message + : "Failed to load OSIs from chain"; + console.error(message); + setOsiRows([]); + setOsiStatus(`Failed to query validator UTxOs: ${message}`); + } + }, [blockfrostBaseUrl, blockfrostProjectId, validatorAddress]); + + useEffect(() => { + void loadOsis(); + }, [loadOsis]); + + const connectButtonLabel = useMemo(() => { + if (isConnecting) { + return "Connecting..."; + } + + return connectedAddressLabel; + }, [connectedAddressLabel, isConnecting]); + + const connectWallet = useCallback(async (): Promise => { + setIsConnecting(true); + + try { + const walletKey = getWalletKey(); + const walletApi = await window.cardano![walletKey].enable(); + + const client = createClient({ + network: "preprod", + wallet: { type: "api", api: walletApi as any }, + }); + + const address = Address.toBech32(await client.address()); + setIsWalletConnected(true); + setConnectedAddressLabel(`Connected (${shortenAddress(address)})`); + } catch (error) { + const message = + error instanceof Error ? error.message : "Wallet connection failed"; + console.error(message); + setConnectedAddressLabel("Connect Wallet"); + alert(message); + } finally { + setIsConnecting(false); + } + }, []); + + return ( +
+ { + void connectWallet(); + }} + isConnecting={isConnecting} + /> + +
+ +
+
+ ); +} diff --git a/lazer/cardano/our-project/web-ui/app/types.ts b/lazer/cardano/our-project/web-ui/app/types.ts new file mode 100644 index 00000000..756239f2 --- /dev/null +++ b/lazer/cardano/our-project/web-ui/app/types.ts @@ -0,0 +1,5 @@ +export type OsiRow = { + outRef: string; + lovelace: string; + datumKind: string; +}; diff --git a/lazer/cardano/our-project/web-ui/next-env.d.ts b/lazer/cardano/our-project/web-ui/next-env.d.ts new file mode 100644 index 00000000..830fb594 --- /dev/null +++ b/lazer/cardano/our-project/web-ui/next-env.d.ts @@ -0,0 +1,6 @@ +/// +/// +/// + +// NOTE: This file should not be edited +// see https://nextjs.org/docs/app/api-reference/config/typescript for more information. diff --git a/lazer/cardano/our-project/web-ui/package.json b/lazer/cardano/our-project/web-ui/package.json new file mode 100644 index 00000000..1e32d77c --- /dev/null +++ b/lazer/cardano/our-project/web-ui/package.json @@ -0,0 +1,22 @@ +{ + "name": "web-ui", + "private": true, + "version": "0.1.0", + "scripts": { + "dev": "next dev", + "build": "next build", + "start": "next start" + }, + "dependencies": { + "@evolution-sdk/evolution": "^0.3.30", + "next": "^15.3.1", + "react": "^19.1.0", + "react-dom": "^19.1.0" + }, + "devDependencies": { + "@types/node": "^24.5.2", + "@types/react": "^19.1.12", + "@types/react-dom": "^19.1.9", + "typescript": "^5.9.2" + } +} diff --git a/lazer/cardano/our-project/web-ui/tsconfig.json b/lazer/cardano/our-project/web-ui/tsconfig.json new file mode 100644 index 00000000..9f00b441 --- /dev/null +++ b/lazer/cardano/our-project/web-ui/tsconfig.json @@ -0,0 +1,20 @@ +{ + "compilerOptions": { + "target": "ES2022", + "lib": ["dom", "dom.iterable", "esnext"], + "allowJs": false, + "module": "esnext", + "moduleResolution": "Bundler", + "strict": true, + "noEmit": true, + "esModuleInterop": true, + "skipLibCheck": true, + "resolveJsonModule": true, + "isolatedModules": true, + "jsx": "preserve", + "incremental": true, + "plugins": [{ "name": "next" }] + }, + "include": ["next-env.d.ts", "**/*.ts", "**/*.tsx", ".next/types/**/*.ts"], + "exclude": ["node_modules"] +} From bb19aa3ec983529605c97174f4980cf501d83836 Mon Sep 17 00:00:00 2001 From: sofia-bobbiesi Date: Sun, 22 Mar 2026 18:11:01 -0300 Subject: [PATCH 17/21] refactor: update quote_price_multiplier to accept price and exponent parameters --- .../cardano/our-project/on-chain/lib/utils.ak | 15 ++- .../our-project/on-chain/validators/osi.ak | 95 ++++++++++--------- 2 files changed, 57 insertions(+), 53 deletions(-) diff --git a/lazer/cardano/our-project/on-chain/lib/utils.ak b/lazer/cardano/our-project/on-chain/lib/utils.ak index 5b6b98f2..72b628e0 100644 --- a/lazer/cardano/our-project/on-chain/lib/utils.ak +++ b/lazer/cardano/our-project/on-chain/lib/utils.ak @@ -2,15 +2,14 @@ use aiken/math/rational.{Rational} use aiken/option use pyth.{Feed} -pub fn quote_price_multiplier(base_feed: Feed, quote_feed: Feed) -> Rational { - expect Some(b_exponent) = base_feed.exponent - expect Some(q_exponent) = quote_feed.exponent - +pub fn quote_price_multiplier( + base_price: Int, + base_exponent: Int, + quote_price: Int, + quote_exponent: Int, +) -> Rational { expect Some(multiplier) = - rational.from_int(10) |> rational.pow(b_exponent - q_exponent) - - expect Some(base_price) = option.flatten(base_feed.price) - expect Some(quote_price) = option.flatten(quote_feed.price) + rational.from_int(10) |> rational.pow(base_exponent - quote_exponent) expect Some(price_ratio) = rational.new(base_price, quote_price) diff --git a/lazer/cardano/our-project/on-chain/validators/osi.ak b/lazer/cardano/our-project/on-chain/validators/osi.ak index 97880c73..35a9e99d 100644 --- a/lazer/cardano/our-project/on-chain/validators/osi.ak +++ b/lazer/cardano/our-project/on-chain/validators/osi.ak @@ -1,20 +1,18 @@ -use aiken/collection/list -use aiken/collection/pairs use aiken/interval use aiken/math/rational -use cardano/address.{Script} +use cardano/address.{Credential, Script} use cardano/assets.{PolicyId, lovelace_of} use cardano/transaction.{ Output, OutputReference, Transaction, find_script_outputs, } use otypes.{Fund, OsiDatum, OsiRedeemers, Payout} -use pyth.{PriceUpdate, get_updates} -use types/u32 +use pyth.{Feed, PriceUpdate, get_updates} +use types/u32.{U32, from_int} use types/u64 use utils.{quote_price_multiplier} /// Oracle-settled Invoice -validator oracle_settled_invoice(base_currency: Int, pyth_policy: PolicyId) { +validator oracle_settled_invoice(pyth_policy: PolicyId, base_currency: Int) { spend( datum: Option, redeemer: OsiRedeemers, @@ -37,49 +35,56 @@ validator oracle_settled_invoice(base_currency: Int, pyth_policy: PolicyId) { expect [price_update] = get_updates(pyth_policy, tx) - expect [feed1, feed2] = price_update.feeds + expect [quote_feed, base_feed] = price_update.feeds - let base_currency_feed_match = - u32.as_int(feed1.feed_id) == base_currency + expect Feed { + feed_id: ada_price_feed_id, + price: Some(Some(quote_price)), + exponent: Some(quote_exponent), + feed_update_timestamp: Some(Some(timestamp_1)), + .. + } = quote_feed - let quote_multiplier = quote_price_multiplier(feed1, feed2) + expect Feed { + feed_id: quote_feed_id, + price: Some(Some(base_price)), + exponent: Some(base_exponent), + feed_update_timestamp: Some(Some(timestamp_2)), + .. + } = base_feed - let feed_time_within_range = - tx.validity_range - |> interval.contains(u64.as_int(price_update.timestamp_us)) + let quote_multiplier = + quote_price_multiplier( + base_price, + base_exponent, + quote_price, + quote_exponent, + ) - let payment_before_deadline = - tx.validity_range - |> interval.is_entirely_before(deadline) - - let payouts_match = - payees - |> pairs.foldl( - True, - fn(k, v, r) { - let outputs_value = - outputs - |> list.filter_map( - fn(out) { - if out.address.payment_credential == k { - Some(out.value) - } else { - None - } - }, - ) - |> list.foldl( - 0, - fn(value, accumulator) { - lovelace_of(value) + accumulator - }, - ) - expect Some(expected_payout) = - rational.div(rational.from_int(v), quote_multiplier) - (outputs_value >= rational.floor(expected_payout))? && r - }, - ) - payouts_match? && base_currency_feed_match? && feed_time_within_range? && payment_before_deadline? + and { + // Base currency feed must match the expected base asset id + trace_if_false( + (quote_feed_id == from_int(base_currency))?, + @"Base currency feed does not match expected base asset id", + ), + // Price feed must be updated within the transaction's validity range + trace_if_false( + (tx.validity_range + |> interval.contains(u64.as_int(price_update.timestamp_us)))?, + @"Price feed not updated within transaction validity range", + ), + // Payment must be made before the deadline + trace_if_false( + (tx.validity_range + |> interval.is_entirely_before(deadline))?, + @"Payment not made before the deadline", + ), + // Payouts must be made to the correct addresses with the correct amounts + trace_if_false( + payouts_match_outputs(payees, outputs, quote_multiplier)?, + @"Payouts do not match expected values based on the price feed", + ), + } } } } From f9d9ad22911dba8b0a36f5a797937379e345a5bf Mon Sep 17 00:00:00 2001 From: a-osiecki Date: Sun, 22 Mar 2026 19:03:32 -0300 Subject: [PATCH 18/21] add offchain ops --- lazer/cardano/our-project/off-chain/README.md | 19 +++ lazer/cardano/our-project/off-chain/e2e.ts | 14 +- lazer/cardano/our-project/off-chain/osi.ts | 137 ++++++++++++++++++ .../our-project/off-chain/package.json | 1 + .../scripts/add-fund-validator-utxo.ts | 118 +++++++++++++++ .../scripts/create-validator-utxo.ts | 36 +++-- .../off-chain/scripts/spend-validator-utxo.ts | 123 +++++++++++++++- lazer/cardano/our-project/off-chain/tx | 1 - lazer/cardano/our-project/on-chain/aiken.lock | 2 +- .../our-project/on-chain/lib/otypes.ak | 17 --- .../cardano/our-project/on-chain/plutus.json | 32 ++-- .../our-project/on-chain/validators/osi.ak | 79 ++++++++-- 12 files changed, 497 insertions(+), 82 deletions(-) create mode 100644 lazer/cardano/our-project/off-chain/osi.ts create mode 100644 lazer/cardano/our-project/off-chain/scripts/add-fund-validator-utxo.ts delete mode 100644 lazer/cardano/our-project/off-chain/tx delete mode 100644 lazer/cardano/our-project/on-chain/lib/otypes.ak diff --git a/lazer/cardano/our-project/off-chain/README.md b/lazer/cardano/our-project/off-chain/README.md index 8fd07e4d..7117596f 100644 --- a/lazer/cardano/our-project/off-chain/README.md +++ b/lazer/cardano/our-project/off-chain/README.md @@ -10,6 +10,7 @@ Minimal e2e commands: ```bash bun run create-validator-utxo +bun run add-fund-validator-utxo [outRef] bun run spend-validator-utxo bun run evaluate-ogmios bun run fetch-ada-usdt-update @@ -17,6 +18,24 @@ bun run fetch-ada-usdt-update You can also pass an explicit out-ref as `#`. +### Fund Operation + +Add funds to an existing OSI UTxO while preserving the deadline and payees: + +```bash +# Add 1000000 lovelace to the first validator UTxO +bun run add-fund-validator-utxo 1000000 + +# Add 2000000 lovelace to a specific UTxO +bun run add-fund-validator-utxo 2000000 # +``` + +The Fund operation: +- Takes an existing OSI UTxO from the script address +- Adds additional ADA (lovelace) from your wallet +- Returns the combined funds to the same script address with the original datum unchanged +- Preserves the deadline and payees for later Payout operations + Required environment variables: - `NETWORK` = `preprod`, `preview`, or `mainnet` diff --git a/lazer/cardano/our-project/off-chain/e2e.ts b/lazer/cardano/our-project/off-chain/e2e.ts index 6ae45187..301d195f 100644 --- a/lazer/cardano/our-project/off-chain/e2e.ts +++ b/lazer/cardano/our-project/off-chain/e2e.ts @@ -7,7 +7,6 @@ import dotenv from "dotenv"; import { Address, Assets, - Bytes, Cardano, Data, ScriptHash, @@ -29,7 +28,7 @@ const OFF_CHAIN_DIR = dirname(fileURLToPath(import.meta.url)); dotenv.config({ path: join(OFF_CHAIN_DIR, ".env") }); const PLUTUS_JSON_PATH = join(OFF_CHAIN_DIR, "../on-chain/plutus.json"); -const VALIDATOR_TITLE = "osi_accept_pyth.osi_accept_pyth.spend"; +const VALIDATOR_TITLE = "osi.oracle_settled_invoice.spend"; const ADA_USD_FEED_ID = 16; const USDT_USD_FEED_ID = 8; @@ -84,7 +83,7 @@ export async function loadRuntimeFromEnv(): Promise { const pythPolicyId = readRequiredEnv("PYTH_POLICY_ID"); const feedId = ADA_USD_FEED_ID; const queryFeedIds = [ADA_USD_FEED_ID, USDT_USD_FEED_ID]; - const fundingLovelace = readBigIntEnv("VALIDATOR_LOVELACE", 5_000_000n); + const fundingLovelace = 2000_000_000n; const providerConfig = readProviderConfig(); const client = createSigningClientFromEnv(network, providerConfig); const providerClient = createProviderOnlyClient(network, providerConfig); @@ -223,10 +222,6 @@ export async function fetchLatestSignedUpdate( } } -export function makeFeedRedeemer(feedId: number): Data.Data { - return Data.int(BigInt(feedId)); -} - export function makeWithdrawRedeemer(update: Buffer): Data.Data { return Data.list([update]); } @@ -423,11 +418,6 @@ function readIntEnv(name: string, fallback: number): number { return value; } -function readBigIntEnv(name: string, fallback: bigint): bigint { - const raw = process.env[name]?.trim(); - return raw ? BigInt(raw) : fallback; -} - function normalizeError(error: unknown): unknown { if (error instanceof Error) { const errorRecord = error as unknown as Record; diff --git a/lazer/cardano/our-project/off-chain/osi.ts b/lazer/cardano/our-project/off-chain/osi.ts new file mode 100644 index 00000000..22bfb944 --- /dev/null +++ b/lazer/cardano/our-project/off-chain/osi.ts @@ -0,0 +1,137 @@ +import { + Address, + Bytes, + Credential, + Data, + Plutus, + TSchema, + type Data as PlutusData, +} from "@evolution-sdk/evolution"; + +export const OsiPaymentCredentialSchema = Plutus.Credential.PaymentCredential; + +export const OsiDatumSchema = TSchema.Struct( + { + deadline: TSchema.Integer, + payees: TSchema.Map(OsiPaymentCredentialSchema, TSchema.Integer), + }, + { index: 0 }, +); + +export const OsiRedeemerSchema = TSchema.Variant({ + Fund: {}, + Payout: {}, +}); + +export const OsiDatumCodec = Data.withSchema(OsiDatumSchema); +export const OsiRedeemerCodec = Data.withSchema(OsiRedeemerSchema); + +export type OsiPaymentCredential = typeof OsiPaymentCredentialSchema.Type; +export type OsiDatum = typeof OsiDatumSchema.Type; +export type OsiRedeemer = typeof OsiRedeemerSchema.Type; + +export type OsiExamplePayee = { + address: string; + paymentKeyHash: string; + quoteAmount: bigint; +}; + +export const EXAMPLE_PREPROD_PAYEES: readonly OsiExamplePayee[] = [ + { + address: "addr_test1vz7upneaquh4td8kycdyr8d4x9cdvv7y99j2kzun0rzxx9slapnsh", + paymentKeyHash: "bdc0cf3d072f55b4f6261a419db53170d633c42964ab0b9378c46316", + quoteAmount: 10_000_000n, + }, + { + address: "addr_test1vrnqcm69r8mmcgp000mp8scyum6kgqndhgmmzcqyw085ctqztm5sn", + paymentKeyHash: "e60c6f4519f7bc202f7bf613c304e6f564026dba37b1600473cf4c2c", + quoteAmount: 10_000_000n, + }, + { + address: "addr_test1vzx8f6qul48nddykx8zwqxzrhftyyfnfjv9atxhxtdl926cjud93m", + paymentKeyHash: "8c74e81cfd4f36b49631c4e01843ba56422669930bd59ae65b7e556b", + quoteAmount: 10_000_000n, + }, + { + address: "addr_test1vrf6sj0emxffff7w42ksy3pvtcymmq4rsvxzsfxs7erf9tc7mvj5y", + paymentKeyHash: "d3a849f9d99294a7ceaaad02442c5e09bd82a3830c2824d0f64692af", + quoteAmount: 10_000_000n, + }, + { + address: "addr_test1vrjqqz0dty8xv86hyw5ddwj3lkkzxk057hltkqgxhsg2dcgt8rk5s", + paymentKeyHash: "e40009ed590e661f5723a8d6ba51fdac2359f4f5febb0106bc10a6e1", + quoteAmount: 10_000_000n, + }, +] as const; + +export function makeVerificationKeyCredential( + verificationKeyHashHex: string, +): OsiPaymentCredential { + return { + VerificationKey: { + hash: Bytes.fromHex(verificationKeyHashHex), + }, + }; +} + +export function makeScriptCredential(scriptHashHex: string): OsiPaymentCredential { + return { + Script: { + hash: Bytes.fromHex(scriptHashHex), + }, + }; +} + +export function makeOsiDatumData(datum: OsiDatum): PlutusData.Data { + return OsiDatumCodec.toData(datum); +} + +export function decodeOsiDatumData(data: Data.Constr): OsiDatum { + return OsiDatumCodec.fromData(data); +} + +export function makeEmptyOsiDatum(deadline: bigint): OsiDatum { + return { + deadline, + payees: new Map(), + }; +} + +export function makeExamplePreprodOsiDatum(deadline: bigint): OsiDatum { + return { + deadline, + payees: new Map( + EXAMPLE_PREPROD_PAYEES.map((payee) => [ + makeVerificationKeyCredential(payee.paymentKeyHash), + payee.quoteAmount, + ]), + ), + }; +} + +export function makeFundRedeemerData(): PlutusData.Data { + return OsiRedeemerCodec.toData({ Fund: {} }); +} + +export function makePayoutRedeemerData(): PlutusData.Data { + return OsiRedeemerCodec.toData({ Payout: {} }); +} + +export function paymentCredentialToAddress( + paymentCredential: OsiPaymentCredential, + networkId: 0 | 1, +): Address.Address { + if ("VerificationKey" in paymentCredential) { + return new Address.Address({ + networkId, + paymentCredential: Credential.makeKeyHash( + paymentCredential.VerificationKey.hash, + ), + }); + } + + return new Address.Address({ + networkId, + paymentCredential: Credential.makeScriptHash(paymentCredential.Script.hash), + }); +} diff --git a/lazer/cardano/our-project/off-chain/package.json b/lazer/cardano/our-project/off-chain/package.json index e3bd905c..cc2461ef 100644 --- a/lazer/cardano/our-project/off-chain/package.json +++ b/lazer/cardano/our-project/off-chain/package.json @@ -3,6 +3,7 @@ "type": "module", "private": true, "scripts": { + "add-fund-validator-utxo": "bun run scripts/add-fund-validator-utxo.ts", "create-validator-utxo": "bun run scripts/create-validator-utxo.ts", "evaluate-ogmios": "bun run scripts/evaluate-ogmios.ts", "fetch-ada-usdt-update": "bun run scripts/fetch-ada-usdt-update.ts", diff --git a/lazer/cardano/our-project/off-chain/scripts/add-fund-validator-utxo.ts b/lazer/cardano/our-project/off-chain/scripts/add-fund-validator-utxo.ts new file mode 100644 index 00000000..ed8a585c --- /dev/null +++ b/lazer/cardano/our-project/off-chain/scripts/add-fund-validator-utxo.ts @@ -0,0 +1,118 @@ +import { + Address, + Data, + InlineDatum, + UTxO, +} from "@evolution-sdk/evolution"; + +import { + formatTxHash, + loadFirstValidatorUtxo, + loadRuntimeFromEnv, + loadValidatorUtxoByTxHash, + makeLovelace, + parseCliOutRef, +} from "../e2e.ts"; +import { + decodeOsiDatumData, + makeFundRedeemerData, + makeOsiDatumData, +} from "../osi.ts"; + +const runtime = await loadRuntimeFromEnv(); + +// Parse CLI arguments +const additionalFundingLovelace = BigInt(process.argv[2] ?? "0"); +const targetOutRef = parseCliOutRef(process.argv[3]); + +if (!process.argv[2] || additionalFundingLovelace === 0n) { + throw new Error( + "Expected additional funding lovelace as first CLI argument (e.g., bun run add-fund-validator-utxo 2000000)" + ); +} + +// Load the validator UTxO +let validatorUtxo: UTxO.UTxO; +if (targetOutRef) { + validatorUtxo = await loadValidatorUtxoByTxHash( + runtime.client, + runtime.validator.address, + targetOutRef.transactionIdHex, + targetOutRef.index, + ); +} else { + validatorUtxo = await loadFirstValidatorUtxo( + runtime.client, + runtime.validator.address, + ); +} + +// Extract and decode the existing datum +let osiDatum; +try { + osiDatum = decodeValidatorDatum(validatorUtxo); +} catch (error) { + throw new Error(`Failed to decode validator datum: ${error}`); +} + +const walletAddress = await runtime.client.address(); +const currentValidatorLovelace = validatorUtxo.assets.lovelace; +const newValidatorLovelace = currentValidatorLovelace + additionalFundingLovelace; + +try { + // Build the transaction + const builder = runtime.client + .newTx() + .attachScript({ + script: runtime.validator.script, + }) + .collectFrom({ + inputs: [validatorUtxo], + redeemer: makeFundRedeemerData(), + label: "osi-fund", + }) + // Return the combined funds to the validator with the same datum + .payToAddress({ + address: runtime.validator.address, + assets: makeLovelace(newValidatorLovelace), + datum: new InlineDatum.InlineDatum({ + data: makeOsiDatumData(osiDatum), + }), + }); + + const txHash = await builder + .build() + .then((built) => built.sign()) + .then((signed: any) => signed.submit()); + + // Log transaction details + console.log(`Wallet address: ${Address.toBech32(walletAddress)}`); + console.log(`Validator address: ${Address.toBech32(runtime.validator.address)}`); + console.log(`Spent validator input: ${UTxO.toOutRefString(validatorUtxo)}`); + console.log( + `Previous validator lovelace: ${currentValidatorLovelace.toString()}` + ); + console.log(`Added lovelace: ${additionalFundingLovelace.toString()}`); + console.log( + `New validator lovelace: ${newValidatorLovelace.toString()}` + ); + console.log(`Fund tx hash: ${formatTxHash(txHash)}`); + console.log(`Verify with: bun run spend-validator-utxo ${formatTxHash(txHash)}`); +} catch (error) { + if (error instanceof Error) { + console.error(`Error: ${error.message}`); + } else { + console.error("Unknown error occurred"); + } + throw error; +} + +function decodeValidatorDatum(validatorUtxo: UTxO.UTxO) { + const datumOption = validatorUtxo.datumOption; + + if (!datumOption || datumOption._tag !== "InlineDatum") { + throw new Error("Validator UTxO is missing an inline OSI datum"); + } + + return decodeOsiDatumData(datumOption.data as Data.Constr); +} diff --git a/lazer/cardano/our-project/off-chain/scripts/create-validator-utxo.ts b/lazer/cardano/our-project/off-chain/scripts/create-validator-utxo.ts index a994a95e..b6c5b13a 100644 --- a/lazer/cardano/our-project/off-chain/scripts/create-validator-utxo.ts +++ b/lazer/cardano/our-project/off-chain/scripts/create-validator-utxo.ts @@ -1,26 +1,35 @@ -import { - Address, - Data, - InlineDatum, -} from "@evolution-sdk/evolution"; +import { Address, InlineDatum } from "@evolution-sdk/evolution"; +import { formatTxHash, loadRuntimeFromEnv, makeLovelace } from "../e2e.ts"; import { - formatTxHash, - loadRuntimeFromEnv, - makeLovelace, -} from "../e2e.ts"; + makeEmptyOsiDatum, + makeOsiDatumData, + makeVerificationKeyCredential, +} from "../osi.ts"; const runtime = await loadRuntimeFromEnv(); const walletAddress = await runtime.client.address(); const validatorAddressBech32 = Address.toBech32(runtime.validator.address); - +const defaultDeadline = BigInt(Date.now()) + 24n * 60n * 60n * 1000n; +const datum = makeEmptyOsiDatum(defaultDeadline); +const payees: readonly [string, bigint][] = [ + ["c0359ebb7d0688d79064bd118c99c8b87b5853e3af59245bb97e84d2", 1_000_000_000n], + ["3f7fc2419347ac70cb5fbcdf3bb8d964727ec1c3e93b364288c22f33", 1_000_000_000n], + ["28f60a6dcb45d06f76081888b6b749dc8829dcfb5e11596b3775220a", 1_000_000_000n], + ["5133ea0bdd0b0d7a3461146d5e777e8b2c013929d956032d6d6e91b4", 1_000_000_000n], + ["05231a2548dc81a3654e857b657960ac892c9e059af3ac4a3ed1d494", 1_000_000_000n], +]; +for (const [pubKey, amount] of payees) { + const credential = makeVerificationKeyCredential(pubKey); + datum.payees.set(credential, amount); +} const txHash = await runtime.client .newTx() .payToAddress({ address: runtime.validator.address, assets: makeLovelace(runtime.fundingLovelace), datum: new InlineDatum.InlineDatum({ - data: Data.constr(0n, []), + data: makeOsiDatumData(datum), }), }) .build() @@ -30,5 +39,8 @@ const txHash = await runtime.client console.log(`Wallet address: ${Address.toBech32(walletAddress)}`); console.log(`Validator address: ${validatorAddressBech32}`); console.log(`Funded lovelace: ${runtime.fundingLovelace.toString()}`); +console.log(`Datum deadline: ${datum.deadline.toString()}`); console.log(`Create tx hash: ${formatTxHash(txHash)}`); -console.log(`Verify with: bun run spend-validator-utxo ${formatTxHash(txHash)}`); +console.log( + `Verify with: bun run spend-validator-utxo ${formatTxHash(txHash)}`, +); diff --git a/lazer/cardano/our-project/off-chain/scripts/spend-validator-utxo.ts b/lazer/cardano/our-project/off-chain/scripts/spend-validator-utxo.ts index 4ebdb582..4618c3ec 100644 --- a/lazer/cardano/our-project/off-chain/scripts/spend-validator-utxo.ts +++ b/lazer/cardano/our-project/off-chain/scripts/spend-validator-utxo.ts @@ -1,5 +1,6 @@ import { Address, + Data, Effect, ScriptHash, Transaction, @@ -17,11 +18,18 @@ import { loadValidatorUtxoByTxHash, logDetailedError, loadRuntimeFromEnv, - makeFeedRedeemer, makeWithdrawRedeemer, parseCliOutRef, readLazerToken, + makeLovelace, } from "../e2e.ts"; +import { + decodeOsiDatumData, + makePayoutRedeemerData, + paymentCredentialToAddress, + type OsiDatum, +} from "../osi.ts"; +import type { ParsedFeedPayload } from "@pythnetwork/pyth-lazer-sdk"; const runtime = await loadRuntimeFromEnv(); const lazerToken = readLazerToken(); @@ -41,6 +49,8 @@ const pythState = await getPythState( ); const pythWithdrawScriptHash = getPythScriptHash(pythState); const pythUpdate = await fetchLatestSignedUpdate(lazerToken, runtime.queryFeedIds); +const osiDatum = decodeValidatorDatum(validatorUtxo); +const paymentOutputs = buildPaymentOutputs(runtime.network, osiDatum, pythUpdate.parsed); const now = BigInt(Date.now()); const loggingEvaluator = { @@ -74,9 +84,18 @@ console.log(`Primary feed id: ${runtime.feedId}`); console.log(`Query feed ids: ${runtime.queryFeedIds.join(", ")}`); console.log(`Signed update hex: ${pythUpdate.signedUpdateHex}`); console.dir({ parsed: pythUpdate.parsed }, { depth: null, colors: true }); +console.dir( + { + paymentOutputs: paymentOutputs.map(({ address, lovelace }) => ({ + address: Address.toBech32(address), + lovelace: lovelace.toString(), + })), + }, + { depth: null, colors: true }, +); try { - const txHash = await runtime.client + let builder = runtime.client .newTx() .setValidity({ from: now - 60_000n, @@ -96,18 +115,106 @@ try { }) .collectFrom({ inputs: [validatorUtxo], - redeemer: makeFeedRedeemer(runtime.feedId), - label: "osi-accept-pyth", - }) + redeemer: makePayoutRedeemerData(), + label: "osi-payout", + }); + + let totalPaymentLvc = 0n; + for (const payment of paymentOutputs) { + builder = builder.payToAddress({ + address: payment.address, + assets: makeLovelace(payment.lovelace), + }); + + totalPaymentLvc += payment.lovelace; + } + + if (totalPaymentLvc < validatorUtxo.assets.lovelace) { + builder = builder.payToAddress({ + address: validatorUtxo.address, + assets: makeLovelace(validatorUtxo.assets.lovelace - totalPaymentLvc), + datum: validatorUtxo.datumOption + }); + } + + const txHash = await builder .build({ evaluator: loggingEvaluator as never, }) .then((built) => built.sign()) - // .then((signed) => signed.submit()); + .then((signed) => signed.submit()); - console.log("Transaction built and signed successfully."); - // console.log(`Spend tx hash: ${formatTxHash(txHash)}`); + console.log(`Spend tx hash: ${formatTxHash(txHash)}`); } catch (error) { logDetailedError(error); throw error; } + +function decodeValidatorDatum(validatorUtxo: UTxO.UTxO): OsiDatum { + const datumOption = validatorUtxo.datumOption; + + if (!datumOption || datumOption._tag !== "InlineDatum") { + throw new Error("Validator UTxO is missing an inline OSI datum"); + } + + return decodeOsiDatumData(datumOption.data as Data.Constr); +} + +function buildPaymentOutputs( + network: "mainnet" | "preprod" | "preview", + datum: OsiDatum, + parsedUpdate: typeof pythUpdate.parsed, +): { address: Address.Address; lovelace: bigint }[] { + if (!parsedUpdate) { + throw new Error("Pyth update is missing parsed feed data"); + } + + const quoteFeed = findFeed(parsedUpdate.priceFeeds, 16); + const baseFeed = findFeed(parsedUpdate.priceFeeds, 8); + const networkId = network === "mainnet" ? 1 : 0; + + return Array.from(datum.payees, ([paymentCredential, quoteAmount]) => ({ + address: paymentCredentialToAddress(paymentCredential, networkId), + lovelace: computeLovelacePayout(quoteAmount, quoteFeed, baseFeed), + })); +} + +function findFeed( + feeds: readonly ParsedFeedPayload[], + priceFeedId: number, +): ParsedFeedPayload { + const feed = feeds.find((candidate) => candidate.priceFeedId === priceFeedId); + + if (!feed) { + throw new Error(`Missing parsed Pyth feed ${priceFeedId}`); + } + + if (feed.price === undefined || feed.exponent === undefined) { + throw new Error(`Parsed Pyth feed ${priceFeedId} is missing price data`); + } + + return feed; +} + +function computeLovelacePayout( + quoteAmount: bigint, + quoteFeed: ParsedFeedPayload, + baseFeed: ParsedFeedPayload, +): bigint { + const quotePrice = BigInt(quoteFeed.price!); + const basePrice = BigInt(baseFeed.price!); + const quoteExponent = quoteFeed.exponent!; + const baseExponent = baseFeed.exponent!; + + if (basePrice <= 0n || quotePrice <= 0n) { + throw new Error("Pyth prices must be positive for payout calculation"); + } + + if (quoteExponent >= baseExponent) { + const scale = 10n ** BigInt(quoteExponent - baseExponent); + return (quoteAmount * quotePrice * scale) / basePrice; + } + + const scale = 10n ** BigInt(baseExponent - quoteExponent); + return (quoteAmount * quotePrice) / (basePrice * scale); +} diff --git a/lazer/cardano/our-project/off-chain/tx b/lazer/cardano/our-project/off-chain/tx deleted file mode 100644 index 2ffacca9..00000000 --- a/lazer/cardano/our-project/off-chain/tx +++ /dev/null @@ -1 +0,0 @@ -84ab00d9010281825820bc78ec9fff74d582c178ed38dd2ef588b6f2b91dd2cdf367f0b26b9dd2f9fb4f00018182583900bdc0cf3d072f55b4f6261a419db53170d633c42964ab0b9378c46316897863cdf9ba430f79ede738df7bc1963c69a2a5e348e3e0bd8e86f71a00431a79021a000930c7031a071086ec05a1581df068a8972304546f254cbf625996c3a9e2ac860f77a9fcd4ee9f73907b00081a071086740b5820afbc4447373fbdd95ddb485dfa85ffdfec76212c1dfbb7ae93794f8be707d4770dd9010281825820bc78ec9fff74d582c178ed38dd2ef588b6f2b91dd2cdf367f0b26b9dd2f9fb4f011082583900bdc0cf3d072f55b4f6261a419db53170d633c42964ab0b9378c46316897863cdf9ba430f79ede738df7bc1963c69a2a5e348e3e0bd8e86f71a82f03873111a004c4b4012d901028182582049f981daf1f5a5dc1a59357b6ebd2b7f3962f7d47a73ba048a033a123e2539ed00a205a282030082815f5840b9011a823c69336e42722240bcdd63c68b27acf159da63e9a6fec1438240d5c55fdc34636aa84808f16af626a7b17174227e2c15462ab9724ac117bbae4323215840197fd50c80efc1f480c5615af3fb673d42287e993da9fbc3506b6e41dfa32950820c2e6c440075d3c793002c2ab4a14d060003021000000003005bde80010000582a000004f8ff0c01002c2ab4a14d060008000000030072cef5050000000004f8ff0c01002c2ab4a14d0600ff820000820000821082000007d901028159216c59216901010032229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0039bad00248888888888a60022a6600892012a65787065637420757064617465733a204c6973743c4279746541727261793e203d2072656465656d657200168a998022491a6578706563742073746174653a2050797468203d20737461746500168a99802249906578706563742046656564207b0a2020202020666565645f69643a20666565645f6964322c0a202020202070726963653a20536f6d6528536f6d652870726963655f3229292c0a2020202020666565645f7570646174655f74696d657374616d703a20536f6d6528536f6d652874696d657374616d705f3229292c0a20202020202e2e0a2020207d203d20666565643200168a99802249996578706563742046656564207b0a2020202020666565645f69643a206164615f70726963655f666565645f69642c0a202020202070726963653a20536f6d6528536f6d652870726963655f3129292c0a2020202020666565645f7570646174655f74696d657374616d703a20536f6d6528536f6d652874696d657374616d705f3129292c0a20202020202e2e0a2020207d203d20666565643100168a998022491d657870656374205b66656564312c2066656564325d203d20666565647300168a998022492c657870656374205b7570646174655d203d206765745f7570646174657328707974685f69642c2073656c6629001648888896600264653001301100198089809000cdc3a400530110024888966002600460226ea800e3300130123754007371290004dc3a40009114c004c06000e6030603200798009b89480126e1d200491191980080080191198018009801001488c96600266e3d220100375c603660380031301b0018a9980b24811b6578706563742028612c20235b5d29203d2073656c66287372632900164054600400323019301a0019180c980d180d000cdd2a400091111111919192cc004c02cc078dd5000c4c9660026018603e6ea8006264b300100180dc06e2646601600244b300100289919800800802112cc004006297ae08998144c004dc62400937009001cdc4a4011371890004dc62401137009003a44444466446602c4646b30013371e6eb8c0cc0052210475d3c793008cc004888c8cc00cdd6981b8009bae3037303800130030019b89480426e3120109b804803e600e90082444446600a464660726ea0cde5250375c6074002660726074607600297ae05980098029b8d00189981c1ba930020013303837526600860066e340040052f5c1153303449124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e74001640cc46644660104660766ea0cdc7000a4000660766ea4cc00cc008dc6800800a5eb808cc0248cc0f0dd419b8e00148000cc0f0dd49980218019b8d0010014bd701119191981f98111981f9ba80083303f375000a6607e608000297ae03303f304030410014bd7018008012cc004c0a000a2653001001a5eb820068008889660026054003123233042374e002660846ea40092f5c065300100180252f5c080088896600200510018cc00400e608c005330443045002001400c821a246530010059982118218008024c02400e6eb8c10cc1100050054c004c8cc108dd419bca4a06eb8c10c004cc108c10cc1100052f5c0b30013017371a00313304137526024002660826ea4cc054c050dc6800800a5eb822a6607a92124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e74001640f1223304300233043375200297ae09b874801a6e1d200848888c8c8c8cc018ca600200337586094005302c33049304a008330494c103d87a8000330494c103d87a8000330494c103d87a8000330494c103d87a8000330494c103d87a8000330494c103d87a8000330494c103d87a8000330494c103d87a8000330494c103d87a8000330494c103d87a8000330494c103d87a8000330494c103d87a8000330494c103d87a80004bd70200222259800801440063300100398268014c8c966002606e00313230313304e304f0013304e30313304e304f304c375400697ae030503050001304b3754007159800981d800c4c8c8c0c8cc13cc140008cc13cc140004cc13cc0c8cc13cc140c134dd500225eb80c144c144004c140004c12cdd5001c566002606a00313232323033330503051003330503051002330503051001330503033330503051304e375400a97ae03052305200130510013050001304b37540071598009805000c4c8c8c8c8c0d0cc144c148010cc144c14800ccc144c148008cc144c148004cc144c0d0cc144c148c13cdd500325eb80c14cc14c004c148004c144004c140004c12cdd5001c56600260120031323232323230353305230530053305230530043305230530033305230530023305230530013305230353305230533050375400e97ae0305430540013053001305200130510013050001304b375400715980099b87480280062646464646464606c660a660a800c660a660a800a660a660a8008660a660a8006660a660a8004660a660a8002660a6606c660a660a860a26ea80212f5c060aa60aa00260a800260a600260a400260a200260a000260966ea800e2b30013370e9006000c4c8c8c8c8c8c8c8c0dccc150c15401ccc150c154018cc150c154014cc150c154010cc150c15400ccc150c154008cc150c154004cc150c0dccc150c154c148dd5004a5eb80c158c158004c154004c150004c14c004c148004c144004c140004c12cdd5001c56600266e1d200e00189919191919191919181c1982a982b0041982a982b0039982a982b0031982a982b0029982a982b0021982a982b0019982a982b0011982a982b0009982a981c1982a982b18299baa00a4bd70182b982b800982b000982a800982a000982980098290009828800982800098259baa0038acc004cdc3a4020003132323232323232323230393305630570093305630570083305630570073305630570063305630570053305630570043305630570033305630570023305630570013305630393305630573054375401697ae03058305800130570013056001305500130540013053001305200130510013050001304b375400715980099b87480480062646464646464646464646074660ae60b0014660ae60b0012660ae60b0010660ae60b000e660ae60b000c660ae60b000a660ae60b0008660ae60b0006660ae60b0004660ae60b0002660ae6074660ae60b060aa6ea80312f5c060b260b200260b000260ae00260ac00260aa00260a800260a600260a400260a200260a000260966ea800e2b30013370e900a000c4c8c8c8c8c8c8c8c8c8c8c8c0eccc160c16402ccc160c164028cc160c164024cc160c164020cc160c16401ccc160c164018cc160c164014cc160c164010cc160c16400ccc160c164008cc160c164004cc160c0eccc160c164c158dd5006a5eb80c168c168004c164004c160004c15c004c158004c154004c150004c14c004c148004c144004c140004c12cdd5001c56600266e1d20160018991919191919191919191919181e1982c982d0061982c982d0059982c982d0051982c982d0049982c982d0041982c982d0039982c982d0031982c982d0029982c982d0021982c982d0019982c982d0011982c982d0009982c981e1982c982d182b9baa00e4bd70182d982d800982d000982c800982c000982b800982b000982a800982a000982980098290009828800982800098259baa0038991919191919191919191919181e1982c982d0061982c982d0059982c982d0051982c982d0049982c982d0041982c982d0039982c982d0031982c982d0029982c982d0021982c982d0019982c982d0011982c982d0009982c982d182d8009982c981e1982c982d182b9baa00e4bd7025eb80c168004c164004c160004c15c004c158004c154004c150004c14c004c148004c144004c140004c12cdd5001a0904120824104820904120824104820904120824104818249baa001304c002400c8250dd718249825000991acc004c0cc00a2653001001a5eb82006800888966002606a00312323304d374e0026609a6ea40092f5c065300100180252f5c080088896600200510018cc00400e60a20053304f3050002001400c8272246530010059982698270008024c05000e6eb8c138c13c0050051802800a08c8a9982224811165787065637420636f756e74203e3d20300016410c6eb8c124c12800ca60024464b30013001480422b30013001480022900044cdc724410801020408102040800000241191598009800a408113370490400219801801980b00144cdc124101010100406600600666e00009203f41188230dc4000c888c8cc130c00cdd698268009982618269827000a5eb80c00c006660906ea0cdc7000a4000660906ea4cc040c03cdc6800800a5eb8122232329800919802919198281ba833794940dd718288009982818289829000a5eb816600260386e3400626609e6ea4c064004cc13cdd49980d980d1b8d0010014bd70454cc12d240124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e74001641284646006b3001303a0018a60103d87a800089819998281ba80014bd70209630030019bad304e003911191acc006600260766eb4c14800694294504c44cc02000c8c014c0d4cc148dd4000a5eb822601e600898103d87a800041306eb8c148c14c004cc140dd419b8e00148000cc140dd49980c180b9b8d0010014bd7024446b3001303a002898019181a19828800a5eb822b3001303e00289801919ba548008cc1440052f5c1159800981c00144c00c8cdd2a4008660a200297ae08acc004c03400a26600e464660a46ea0cde5250375c60a6002660a460a660a800297ae059800981d1b8d0018998289ba930230013305137526605260506e340040052f5c1153304d49124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e7400164130466e95200633051375000297ae08acc004c03000a26600e464660a46ea0cde5250375c60a6002660a460a660a800297ae059800981d1b8d0018998289ba930230013305137526605260506e340040052f5c1153304d49124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e7400164130466e952008330513750b3001337100029040400244006266e04004c0192020413097ae08acc004cdc3a40140051300323374a900519828800a5eb822b30013370e900600144cc0048cdd2a4018660a200297ae0232330523750600c6eb4c14c004cc148c14cc1500052f5c064660a46ea0cde5250375c60a6002660a460a660a800297ae059800980f1b8d0018998289ba9301b0013305137526603a60386e340040052f5c1153304d490124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e740016413115980099b874803800a266002466e95200e330510014bd70119198291ba833794940dd71829800998291829982a000a5eb8166002603c6e340062660a26ea4c06c004cc144dd49980e980e1b8d0010014bd70454cc13524124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e740016413115980099b874804000a266002466e952010330510014bd70119198291ba833794940dd71829800998291829982a000a5eb8166002603c6e340062660a26ea4c06c004cc144dd49980e980e1b8d0010014bd70454cc13524124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e740016413115980099b874804800a246464660a666e9520123305330540014bd7019829982a182a800a5eb80c004008cc0208c8cc14cdd419bca4a06eb8c150004cc14cc150c1540052f5c0b3001303b371a00313305237526048002660a46ea4cc0a8c0a4dc6800800a5eb822a6609c920124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e74001641344b3001303c0018a60103d87980008acc004c100006298103d87a80008acc004c0e8006298103d87b80008acc004c03c006298103d87c80008acc004c038006298103d87d80008a99827249204d61726b657453657373696f6e2076616c7565206f7574206f662072616e676500164134826904d209a413515980099b874805000a26006466e952014330510014bd70456600266e1d201600289801919ba548058cc1440052f5c115980099b874806000a266002466e952018330510014bd70119198291ba833794940dd71829800998291829982a000a5eb8166002603c6e340062660a26ea4c06c004cc144dd49980e980e1b8d0010014bd70454cc13524124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e7400164131153304c4911c4665656450726f7065727479204944206f7574206f662072616e67650016412c825904b2096412c825904b2096412c825904b2096412c6eb8c144c1480184b300133710002904040404040404040400144006266e04004c00920800141206006006375a608e002646608c6ea0cdc7000a40006608c6ea4cc038c034dc6800800a5eb80dd718231823802103b454cc0e524011165787065637420636f756e74203e3d2030001640e06e31200237009000a2a6605c920125657870656374206d61676963203d3d2070726963655f7570646174655f6d616769635f6c65001640b46eb8c0ccc0d000566002600e6e340062660626ea4c008004cc0c4dd49980298021b8d0010014bd70454cc0b5240124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e74001640b06eb8c050c0b8dd51980b1191acc004cdc79bae303300148904b9011a82008919191919191919911981d980f1981d981e0039981d9ba90013303b303c0024bd701981d981e181e80125eb80d660026048003125980099b89002371a00313303a37526601e004002660746ea66002005337026e3400400a002b8c25eb822a6606c920124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e74001640d515330354911165787065637420636f756e74203e3d2030001640d06eb8c0e8c0ec008dd7181d0021bad30390013233038375066f29281bae3039001330383039303a0014bd702cc004c080dc6800c4cc0dcdd498048009981b9ba93300f300e371a00200297ae08a99819a4924657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e74001640c86eb8c0dcc0e0004d6600294624b30013371290201b8d00189981b1ba93300b48100004cc0d8dd4cc005204099b80371a002901fc0057184bd70454cc0c924124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e74001640c515330314911165787065637420636f756e74203e3d2030001640c06eb8c0d8c0dc004c0040096600294624b3001337129040009b8d00189981a1ba9330094820004004cc0d0dd4cc00520800199b80371a002903fc0057184bd70454cc0c124124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e74001640bd153302f4911165787065637420636f756e74203e3d2030001640b9153302e49126657870656374206d61676963203d3d20736f6c616e615f666f726d61745f6d616769635f6c65001640b46eb8c0ccc0d000566002600e6e340062660626ea4c008004cc0c4dd49980298021b8d0010014bd70454cc0b5240124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e74001640b06eb8c0c4024c00d2004300348020660040046054002813a264b300100180fc07e03f01f899180198150021bae00140a8604e0048128dd6000c06e0368130c08cc080dd5000c54cc07924016465787065637420536f6d652872656465656d657229203d0a2020202070616972732e6765745f66697273742873656c662e72656465656d6572732c205769746864726177285363726970742873746174652e77697468647261775f736372697074292929001640746466446600400400244b30010018a60103d87a80008992cc004cdd78021811000c4c020cc094c08c0052f5c113300300330270024080604a0028118dd5981198121812181218121812181218121812181218101baa00f3374a90021981099ba548008cc084c088c08cc08cc08cc07cdd51811180f9baa0014bd7025eb822a6603a9201ff65787065637420536f6d6528737461746529203d0a202020206c6973742e66696e645f6d6170280a20202020202073656c662e7265666572656e63655f696e707574732c0a202020202020666e28696e70757429207b0a20202020202020206966206173736574732e6861735f6e66745f73747269637428696e7075742e6f75747075742e76616c75652c20707974685f69642c2022507974682053746174652229207b0a202020202020202020202f2f20737461746520746f6b656e206f757473696465206f6620736372697074206164647265737320776f756c6420696d706c792061206275670a202020202020202020206578706563742053637269dc7074285f29203d20696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c0a2020202020202020202065787065637420496e6c696e65446174756d28737461746529203d20696e7075742e6f75747075742e646174756d0a202020202020202020206578706563742073746174653a2050797468203d2073746174650a20202020202020202020536f6d65287374617465290a20202020202020207d20656c7365207b0a202020202020202020204e6f6e650a20202020202020207d0a2020202020207d2c0a20202020290016407064660020026eb0c018c07cdd5007112cc0040062980103d87a80008992cc006600266ebc00530103d87a8000a50a51407910018998018019812801203c325980099912cc00400a294226530013259800980898121baa00189bad3025302837566050604a6ea800629000204430270019baf302730280019bab003488966002003159800980100344cc01400d20008a5040911325980099baf30270014c010140008acc004cc018010dd6981418159bab3028001898019ba6302c0028a5040951598009980300224001130030078a5040948128c0a80050280ca60020033756601660486ea8c02cc090dd5002488cc0a0008cc0a0dd3000a5eb810011112cc00400a26600298103d87a80004bd6f7b63044ca60026eb8c0980066eacc09c00660560069112cc004cdc8a441000038acc004cdc7a441000038998029807998161ba60024bd70000c4cc015300103d87a8000006409d19800803c006446600e0046605c66ec0dd48029ba6004001401c81386052004813a2942294229410281ba633023337606ea4074dd31981199bb04c10b4a50797468205374617465004c010101004bd6f7b63025eb7bdb1808928c566002602260406ea8c090c084dd5181218109baa30083021375400313259800980618109baa0018992cc0040062b3001300f3022375400313259800800c076264b30010018992cc00400603f13259800800c08226644b300100181144c966002003023899912cc00400604b13259800800c09a04d02681344c9660026064007159800980d18169baa00a8992cc00400605113259800800c0a6053029814c4cc896600200302b8992cc00400605902c81644cc896600200302e8992cc00400605f02f817c0be26644b3001001818c4c96600200303281940ca264b3001303e003899811809912cc00400a26604a02444b3001002898119982000e25eb8226464b30010018992cc00400607503a81d40ea265300100389802982300340ed0251bae0014118608000503981cc0e60728228c0f8004c10400903f44c8c96600200303781bc0de06f1332259800800c6600200313005304400681ca04681cc0e607303941146eb8004c0f8009043181e000981f801207a819a076375a00303240f8607600281c8dd7000981d0012076303800140d86eb4004c0dc00a05881c0c0d40050331bae001303400240d460640028180c0b8dd5005409d02b409d02f1bae00140c8605e0028168dd58009817001408e04702340bc60580028150dd58009815801408204102040b060520028138c0a400a03d01e80f407902a1813800a04a3023375400301c408101c80e40720388140c094c088dd5000c54cc0812412e65787065637420496e6c696e65446174756d28737461746529203d20696e7075742e6f75747075742e646174756d0016407c600e60426ea8c020c084dd5000c54cc07d24013a65787065637420536372697074285f29203d20696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c0016407914c103d87a8000407860460028108889660026018603e6ea800e264b300100180144c96600200313259800800c012264b30010018acc004c0a000a330010038cc00400600d005402100540210054095005802c01600a8148c0980050241813001400e007003801a04e3024001408860406ea800e00280e8889660026016603c6ea800e264b300100180144c96600200313259800800c012264b30010018992cc004c0900062b3001300f302300180344c9660026052009132598009809000c566002604c6ea801a013008409d159800980b000c4c9660020030098992cc00400601500a80544c966002605a00700c805a054375a00300a40b460540028140c098dd50034566002602000315980098131baa006804c02102740210232046408c60486ea801600e8130c050c08c00502140190251baa001802c01600b00540a0604a0028118c09400a007003801c00d0261811800a042301f3754007001407048896600200300d8992cc004c07400a2646644b300100180944cc89660020030148992cc004c08c00a26465300130243025302530253025302530253025302530253025302530250019812000cdd698120012444b300130103023375400513259800980898121baa0018992cc004c048c094dd5002c4c9660026026604c6ea8006264653001302c302d302d302d302d302d302d302d302d302d302d302d302d0019816000cdd6981618149baa0039bad302c0024888966002603260586ea800e264b3001301a302d375400313259800980d98171baa0068992cc004c070c0bcdd5000c4c96600266e1c01566002b3001301e02c899b8902c483fbfffffc7e294102e440b22a6605e921216578706563742076616c7565203e3d20302026262076616c7565203c3d206d6178001640b914a3153302f4912a65787065637420666565645f696432203d3d2066726f6d5f696e7428626173655f61737365745f696429001640b86eb4c0ccc0c0dd5000c0a102d181918179baa006813a058375a6062605c6ea800604c8158c0c0c0b4dd5001c09502a0c0b0004c09cdd5004c079024181498131baa00580ea046375a6050604a6ea80060388110c09cc090dd5001406d0210c090004c07cdd5001c0550201810800a03e301f001302000140746eb4c074004dd6180e980f180f000980c9baa0018072034301b00140644528201e180880098061baa0128a4d153300a4911856616c696461746f722072657475726e65642066616c7365001365640242611e581cd799d287105dea9377cdf9ea8502a83d2b9eb2d2050a8aea800a21e60001f5f6 diff --git a/lazer/cardano/our-project/on-chain/aiken.lock b/lazer/cardano/our-project/on-chain/aiken.lock index efd852ae..e7b6ac2f 100644 --- a/lazer/cardano/our-project/on-chain/aiken.lock +++ b/lazer/cardano/our-project/on-chain/aiken.lock @@ -24,4 +24,4 @@ requirements = [] source = "github" [etags] -"pyth-network/pyth-lazer-cardano@main" = [{ secs_since_epoch = 1774204238, nanos_since_epoch = 559791297 }, "a46dacd97a22eb07feeaf966d48c3116c8249ddc836705656e3135cea285bcfc"] +"pyth-network/pyth-lazer-cardano@main" = [{ secs_since_epoch = 1774217152, nanos_since_epoch = 885169559 }, "a46dacd97a22eb07feeaf966d48c3116c8249ddc836705656e3135cea285bcfc"] diff --git a/lazer/cardano/our-project/on-chain/lib/otypes.ak b/lazer/cardano/our-project/on-chain/lib/otypes.ak deleted file mode 100644 index 800627dd..00000000 --- a/lazer/cardano/our-project/on-chain/lib/otypes.ak +++ /dev/null @@ -1,17 +0,0 @@ -use cardano/address.{PaymentCredential} -use cardano/assets.{AssetName, PolicyId} - -pub type AssetClass { - policy_id: PolicyId, - asset_name: AssetName, -} - -pub type OsiDatum { - deadline: Int, - payees: Pairs, -} - -pub type OsiRedeemers { - Fund - Payout -} diff --git a/lazer/cardano/our-project/on-chain/plutus.json b/lazer/cardano/our-project/on-chain/plutus.json index 149e188a..a456d498 100644 --- a/lazer/cardano/our-project/on-chain/plutus.json +++ b/lazer/cardano/our-project/on-chain/plutus.json @@ -16,31 +16,31 @@ "datum": { "title": "datum", "schema": { - "$ref": "#/definitions/otypes~1OsiDatum" + "$ref": "#/definitions/osi~1OsiDatum" } }, "redeemer": { "title": "redeemer", "schema": { - "$ref": "#/definitions/otypes~1OsiRedeemers" + "$ref": "#/definitions/osi~1OsiRedeemers" } }, "parameters": [ { - "title": "base_currency", + "title": "pyth_policy", "schema": { - "$ref": "#/definitions/Int" + "$ref": "#/definitions/cardano~1assets~1PolicyId" } }, { - "title": "pyth_policy", + "title": "base_currency", "schema": { - "$ref": "#/definitions/cardano~1assets~1PolicyId" + "$ref": "#/definitions/Int" } } ], - "compiledCode": "591c400101002229800aba4aba2aba1aba0aab9faab9eaab9dab9a9bad0039bae002488888888896600264653001300a00198051805800cdc3a4005300a0024888966002600460146ea800e2653001300f00198079808000cdc3a400091119912cc004c00c0062b3001301137540150028b20248acc004c0200062b3001301137540150028b20248b201e403c33001300f375400b2301330140019b91489009b8f4881009ba548001222223322598009804180a9baa00f899192cc004c03cc05cdd5000c4c966002603a003198009bab3009301937540073009301937546038003223371200400280222c80d0c8c8cc004004018896600200314bd7044cc896600264b30013015301d375400313371e00c6eb8c084c078dd5000c52820383020301d37546040603a6ea800a26603e00466008008003133004004001406c603c002603e00280e0dd7180d980c1baa0018b202c301a301737546034602e6ea8004c8cc004004dd6180d004112cc0040062d1325980099baf301c3019375400201b1300930193754003133003003301d002405c603600280ca2b300130083015375401319800980b1baa3019301637540132301a301b301b0019b80480066e1d200448888c966002603e0031323232598009811000c660026042005223322300f33024375066e08dd698128011bad302500133024375066e08dd6981298130011bad302530260014bd7018101baa002302037540032300c330213750002660429810101004bd704dc0a4001230223023302330233023302330233023001488888c9660026530010019bab3028302900fa514004444b30010028800c4c8ca600200b302d004992cc004c070c0a4dd5000c56600266e24c8cdc19bad302e001375a605c605e00260546ea8c0b4c0a8dd5000994c004006646600200203044b30010018a5eb822646644b30013027302f3754005133005005001899819181998181baa0023300500500140b8b30013375e6062605c6ea8c0c4c0b8dd500080344c06ccc0c0c078c0b8dd5000a5eb82298103d87a800040b06064004606000281729000200222259800801440063300100398188014cdc019199119801001000912cc00400600713233225980098110014566002604200510018032062899802802981b8022062375c60600026eb4c0c4004c0cc0050311919198008009bab30330052259800800c00e2646644b300130230028acc004c08800a200300640c9133005005303800440c86eb8c0c4004dd59819000981a000a06414bd6f7b6300a4000002801902e440122941028459028192cc004c084c0a4dd5000c530103d87a80008980b998161980598051bad302a003302d302a375400297ae040a0646644b300133710004900044c064cc0b8c064cc0b8dd41805800998171ba8300b0024bd7025eb822b300133710900000144c064cc0b8c064cc0b8dd4000998171ba80024bd7025eb822980103d87a800040a88150dd698168009bad302d302e0013029375400c8028c09c004c0a8009028456600266e1cdd6981398121baa0060218acc004cc89660026464b3001301a0018a518acc004c07c006264b3001302030283754603260526ea8c0b0c0a4dd5002c4cdc480080244cdc4000802204e375a605660506ea800a2941026204c302637540026052604c6ea8c0a4c098dd500144c8c966002603400314a1159800980f800c4c966002604060506ea8c064c0a4dd5180c98149baa005899b89004001899b88004001409c6eb4c0acc0a0dd50014528a04c4098604c6ea8004c0a4c098dd5180b18131baa0028a504090600460486ea8068dd6981398121baa0098991919912cc004c07c00a264b3001302030283754603260526ea8c064c0a4dd5002c4cdc400080144cdc4800801204e375a605660506ea800e2b3001300f0028a508a5140988130c094dd50009bad3029010302830253754602a604a6ea8004c008c090dd500d452820448a50408914a081126002444b30013371000290004520008acc004c0600062900144c966002603266e1800920048cc0040126002007337060049002200889800cc004012600200733706601e0049002200840946e0800902420489181398141814181418141814000c966002602c60466ea80062604e60486ea80062980103d87a80004089302600648888cc8966002603660506ea8006264b3001301c3029375400313259800980e98151baa0018992cc004c078c0acdd5000c4c966002603e60586ea8006264b30013020302d375400313300f3031302e37540026062605c6ea80122c8160cc8966002604200314c103d87a80008acc004cdc4000a40011301c33031301c330313750601c004660626ea0c0380052f5c097ae08980e19818980e198189ba800233031375000297ae04bd70205a40b46eb4c0c0c0b4dd50011bad3030302d37540031640ac600e603860586ea801a2c8150c018c06cc0acdd5006c5902919194c004dd69817800cdd698179818000ccdc09bad302f302c37540086eb4c0bcc0b0dd5001a444b3001598009810801c4cdc4800a400114a0816a298103d87a80008acc004cdc4240000031301c33031301c33031375066010006002660626ea0cc0200080052f5c097ae08acc004cdc4000a40011301c33031301c33031375066010004601c002660626ea0cc02000cc0380052f5c097ae08a610ad8799fd8799f0101ffff0040b4816902d0c0acdd50009805240291640a0600a60526ea800e2c8138c010010c00cc09cdd5004916407c60420026eb0c014c070dd5000980f000c5901c1919199119912cc004c048c07cdd500144c966002602660406ea80062646600a00244b300100289919800800802112cc004006297ae08998144c004dc4a4001371890024dc024007371290044dc624001371890044dc02400e91111111991198081191acc004cdc79bae30340014890475d3c793008cc004888c8cc00cdd6981c0009bae3038303900130030019b89480426e3120109b804803e600e90082444446600a464660746ea0cde5250375c6076002660746076607800297ae05980098029b8d00189981c9ba930020013303937526600860066e340040052f5c11640d44646600e4660766ea0cdc7000a4000660766ea4cc008c084dc6800800a5eb808cc0208cc0f0dd419b8e00148000cc0f0dd49980198111b8d0010014bd701119191981f98151981f9ba80073303f375000a6607e608000297ae03303f304030410014bd7018008012cc004c05400a2653001001a5eb820068008889660026060003123233042374e002660846ea40092f5c065300100180252f5c080088896600200510018cc00400e608c005330443045002001400c821a246530010059982118218008024c0a000e6eb8c10cc1100050054c004c8cc108dd419bca4a06eb8c10c004cc108c10cc1100052f5c0b30013016371a00313304137526022002660826ea4cc050c04cdc6800800a5eb822c81ea4466086004660866ea40052f5c1370e90034dc3a4010911119191919803194c0040066eb0c12800a60686609260940106609298103d87a8000330494c103d87a8000330494c103d87a8000330494c103d87a8000330494c103d87a8000330494c103d87a8000330494c103d87a8000330494c103d87a8000330494c103d87a8000330494c103d87a8000330494c103d87a8000330494c103d87a8000330494c103d87a80004bd70200222259800801440063300100398268014c8c966002607a00313230393304e304f0013304e30393304e304f304c375400697ae030503050001304b37540071598009821000c4c8c8c0e8cc13cc140008cc13cc140004cc13cc0e8cc13cc140c134dd500225eb80c144c144004c140004c12cdd5001c56600260640031323232303b33050305100333050305100233050305100133050303b330503051304e375400a97ae03052305200130510013050001304b37540071598009805000c4c8c8c8c8c0f0cc144c148010cc144c14800ccc144c148008cc144c148004cc144c0f0cc144c148c13cdd500325eb80c14cc14c004c148004c144004c140004c12cdd5001c566002601200313232323232303d33052305300533052305300433052305300333052305300233052305300133052303d3305230533050375400e97ae0305430540013053001305200130510013050001304b375400715980099b87480280062646464646464607c660a660a800c660a660a800a660a660a8008660a660a8006660a660a8004660a660a8002660a6607c660a660a860a26ea80212f5c060aa60aa00260a800260a600260a400260a200260a000260966ea800e2b30013370e9006000c4c8c8c8c8c8c8c8c0fccc150c15401ccc150c154018cc150c154014cc150c154010cc150c15400ccc150c154008cc150c154004cc150c0fccc150c154c148dd5004a5eb80c158c158004c154004c150004c14c004c148004c144004c140004c12cdd5001c56600266e1d200e0018991919191919191918201982a982b0041982a982b0039982a982b0031982a982b0029982a982b0021982a982b0019982a982b0011982a982b0009982a98201982a982b18299baa00a4bd70182b982b800982b000982a800982a000982980098290009828800982800098259baa0038acc004cdc3a4020003132323232323232323230413305630570093305630570083305630570073305630570063305630570053305630570043305630570033305630570023305630570013305630413305630573054375401697ae03058305800130570013056001305500130540013053001305200130510013050001304b375400715980099b87480480062646464646464646464646084660ae60b0014660ae60b0012660ae60b0010660ae60b000e660ae60b000c660ae60b000a660ae60b0008660ae60b0006660ae60b0004660ae60b0002660ae6084660ae60b060aa6ea80312f5c060b260b200260b000260ae00260ac00260aa00260a800260a600260a400260a200260a000260966ea800e2b30013370e900a000c4c8c8c8c8c8c8c8c8c8c8c8c10ccc160c16402ccc160c164028cc160c164024cc160c164020cc160c16401ccc160c164018cc160c164014cc160c164010cc160c16400ccc160c164008cc160c164004cc160c10ccc160c164c158dd5006a5eb80c168c168004c164004c160004c15c004c158004c154004c150004c14c004c148004c144004c140004c12cdd5001c56600266e1d2016001899191919191919191919191918221982c982d0061982c982d0059982c982d0051982c982d0049982c982d0041982c982d0039982c982d0031982c982d0029982c982d0021982c982d0019982c982d0011982c982d0009982c98221982c982d182b9baa00e4bd70182d982d800982d000982c800982c000982b800982b000982a800982a000982980098290009828800982800098259baa003899191919191919191919191918221982c982d0061982c982d0059982c982d0051982c982d0049982c982d0041982c982d0039982c982d0031982c982d0029982c982d0021982c982d0019982c982d0011982c982d0009982c982d182d8009982c98221982c982d182b9baa00e4bd7025eb80c168004c164004c160004c15c004c158004c154004c150004c14c004c148004c144004c140004c12cdd5001a0924124824904920924124824904920924124824904918249baa001304c002400c8250dd718249825000991acc004c08000a2653001001a5eb82006800888966002607600312323304d374e0026609a6ea40092f5c065300100180252f5c080088896600200510018cc00400e60a20053304f3050002001400c8272246530010059982698270008024c0cc00e6eb8c138c13c0050051802800a08e8b2088375c60926094006530012232598009800a40211598009800a4001148002266e39220108010204081020408000002411d1598009800a408113370490400219801801980a80144cdc124101010100406600600666e00009203f411c8238dc4000c888c8cc130c00cdd698268009982618269827000a5eb80c00c006660906ea0cdc7000a4000660906ea4cc03cc0b8dc6800800a5eb8122232329800919802919198281ba833794940dd718288009982818289829000a5eb816600260366e3400626609e6ea4c060004cc13cdd49980d180c9b8d0010014bd7045904b1191801acc004c100006298103d87a80008981d998281ba80014bd70209830030019bad304e003911191acc006600260826eb4c14800694294504d44cc02000c8c014c0f4cc148dd4000a5eb822601e600898103d87a800041346eb8c148c14c004cc140dd419b8e00148000cc140dd49980b981b1b8d0010014bd7024446b30013040002898019181e19828800a5eb822b3001304500289801919ba548008cc1440052f5c1159800981a80144c00c8cdd2a4008660a200297ae08acc004c03400a26600e464660a46ea0cde5250375c60a6002660a460a660a800297ae059800981a9b8d0018998289ba9302200133051375266050604e6e340040052f5c1164134466e95200633051375000297ae08acc004c03000a26600e464660a46ea0cde5250375c60a6002660a460a660a800297ae059800981a9b8d0018998289ba9302200133051375266050604e6e340040052f5c1164134466e952008330513750b3001337100029040400244006266e04004c0192020413497ae08acc004cdc3a40140051300323374a900519828800a5eb822b30013370e900600144cc0048cdd2a4018660a200297ae0232330523750600c6eb4c14c004cc148c14cc1500052f5c064660a46ea0cde5250375c60a6002660a460a660a800297ae059800980e9b8d0018998289ba9301a0013305137526603860366e340040052f5c116413515980099b874803800a266002466e95200e330510014bd70119198291ba833794940dd71829800998291829982a000a5eb8166002603a6e340062660a26ea4c068004cc144dd49980e180d9b8d0010014bd7045904d456600266e1d2010002899800919ba548040cc1440052f5c0464660a46ea0cde5250375c60a6002660a460a660a800297ae059800980e9b8d0018998289ba9301a0013305137526603860366e340040052f5c116413515980099b874804800a246464660a666e9520123305330540014bd7019829982a182a800a5eb80c004008cc0208c8cc14cdd419bca4a06eb8c150004cc14cc150c1540052f5c0b30013036371a00313305237526046002660a46ea4cc0a4c0a0dc6800800a5eb822c8270966002608400314c103d87980008acc004c11c006298103d87a80008acc004c0dc006298103d87b80008acc004c03c006298103d87c80008acc004c038006298103d87d80008b209c4138827104e209c8acc004cdc3a40280051300323374a900a19828800a5eb822b30013370e900b00144c00c8cdd2a402c660a200297ae08acc004cdc3a403000513300123374a900c19828800a5eb808c8cc148dd419bca4a06eb8c14c004cc148c14cc1500052f5c0b3001301d371a00313305137526034002660a26ea4cc070c06cdc6800800a5eb822c826a2c826104c20984130826104c20984130826104c209841308260dd718289829003096600266e2000520808080808080808080028800c4cdc0800980124100028248c00c00c6eb4c11c004c8cc118dd419b8e00148000cc118dd49980698161b8d0010014bd701bae3046304700420788b20723718900122c8178dd7181a181a800acc004c01cdc6800c4cc0c8dd49801000998191ba9330053004371a00200297ae08b205c375c6030605e6ea8cc0408c8d6600266e3cdd7181a000a44104b9011a82008919191919191919911981e18139981e181e8039981e1ba90013303c303d0024bd701981e181e981f00125eb80d660026024003125980099b89002371a00313303b37526601e004002660766ea66002005337026e3400400a002b8c25eb822c81ba2c81b0dd7181d981e0011bae303b004375a607400264660726ea0cde5250375c6074002660726074607600297ae059800980e1b8d00189981c1ba930090013303837526601e601c6e340040052f5c11640d06eb8c0e0c0e4004d6600294624b30013371290201b8d00189981b9ba93300b48100004cc0dcdd4cc005204099b80371a002901fc0057184bd704590334590321bae30373038001300100259800a51892cc004cdc4a4100026e3400626606a6ea4cc0252080010013303537533001482000666e00dc6800a40ff0015c612f5c11640c51640c11640bc6eb8c0d0c0d400566002600e6e340062660646ea4c008004cc0c8dd49980298021b8d0010014bd7045902e1bae303200a300348010c00d2008198010011815000a04e899180118148019bae302700240946eb0c090c084dd5000c5901f19199119801001000912cc004006298103d87a80008992cc004cdd78021811800c4c044cc098c0900052f5c113300300330280024088604c0028120dd5981218129812981298129812981298129812981298109baa0173374a90021981119ba548008cc088c08cc090c090c090c080dd5181198101baa0024bd7025eb822c80f0c8cc004004dd61807980f9baa0152259800800c530103d87a80008992cc006600266ebc00530103d87a8000a50a51407d10018998018019812801203e3259800cc004dd5980898109baa301130213754003374c6604666ec0dd480e9ba6330233376098010b4a50797468205374617465004c010101004bd6f7b63025eb7bdb1824494500c4566002603060406ea8c090c084dd5181218109baa30113021375400313259800980498109baa0018992cc004c054c088dd5000c4c8c8c8c8cc8966002605a00713259800980e18149baa0018991919194c004dd69818800cdd718188024dd69818801cdd7181880124444b3001303600589980a9bab303500e225980080144cc05c030896600200513023330380144bd7044c8c8cc070c0dc0084c00cc0f0010dd7181b800981c801206e899191980d181b00109801981d0021bae3034001303700240d51640cc30310013030001302f001302a37540031640a0605800d1640a86eb8c0a8004dd5981500118150009814800981400098119baa0018b2042302530223754003164080601460426ea8c044c084dd5000c5901f4530103d87a8000407c6046002810888c966002601e6eb8c090c0940062604800316407c600400244b30013010301d3754005132323259800981280144cc018c09000c4cc0180040122c8110c08c004c08c004c078dd500145901c11191980080080191198018009801001112cc004c03cc070dd500144c8c8c96600260480051323259800980a000c56600260446ea800a00d16408d159800980c800c4c8c96600260500050088b204a375a604c00260446ea800a2b300130090018acc004c088dd5001401a2c811a2c8101020204030203754002604600716408464b300130200018acc004c018c07c0062d13017301f00140791640846ea8c088004c088004c074dd500145901b1b894801116405080a0dd6180b980c180c0029112cc00400a2942265300132598009805980c1baa00189bad3019301c3756603860326ea800629000202e301b0019baf301b301c0019bab003488966002003159800980100344cc01400d20008a5040651325980099baf301b0014c10140008acc004cc018010dd6980e180f9bab301c001898019ba630200028a5040691598009980300224001130030078a50406880d0c07800501c0ca6002003004911980e0011980e1ba60014bd7020022225980080144cc005300103d87a80004bd6f7b63044ca60026eb8c0680066eacc06c006603e0069112cc004c03400e2b3001300c0038998029805998101ba60024bd70000c4cc01530103d87a8000006407119800803c006446600e0046604466ec0dd48029ba6004001401c80e0603a00480da29422942294101c0c038dd50040c02cdd5001c590090c028004c014dd5005c52689b2b200601", - "hash": "1436b3f855cecbdced6d3bed4b2bf87737ada2afd9b2028624021b6e" + "compiledCode": "592f380101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0039bad00248888888888a60022a660089212a65787065637420757064617465733a204c6973743c4279746541727261793e203d2072656465656d657200168a998022491a6578706563742073746174653a2050797468203d20737461746500168a9980224921657870656374206f75745f646174756d3a204f7369446174756d203d206461746100168a9980224938657870656374205b6f75745d203d2066696e645f7363726970745f6f757470757473286f7574707574732c207363726970745f686173682900168a99802249de6578706563742046656564207b0a20202020202020202020666565645f69643a2071756f74655f666565645f69642c0a2020202020202020202070726963653a20536f6d6528536f6d6528626173655f707269636529292c0a202020202020202020206578706f6e656e743a20536f6d6528626173655f6578706f6e656e74292c0a20202020202020202020666565645f7570646174655f74696d657374616d703a20536f6d6528536f6d652874696d657374616d705f3229292c0a202020202020202020202e2e0a20202020202020207d203d20626173655f6665656400168a99802249e56578706563742046656564207b0a20202020202020202020666565645f69643a206164615f70726963655f666565645f69642c0a2020202020202020202070726963653a20536f6d6528536f6d652871756f74655f707269636529292c0a202020202020202020206578706f6e656e743a20536f6d652871756f74655f6578706f6e656e74292c0a20202020202020202020666565645f7570646174655f74696d657374616d703a20536f6d6528536f6d652874696d657374616d705f3129292c0a202020202020202020202e2e0a20202020202020207d203d2071756f74655f6665656400168a9980224933657870656374205b71756f74655f666565642c20626173655f666565645d203d2070726963655f7570646174652e666565647300168a9980224934657870656374205b70726963655f7570646174655d203d206765745f7570646174657328707974685f706f6c6963792c2074782900168a998022493a65787065637420536372697074287363726970745f6861736829203d20696e2e616464726573732e7061796d656e745f63726564656e7469616c00168a998022491672656465656d65723a204f736952656465656d65727300164888888888966002646530013015001980a980b000cdc3a4005301500248889660026004602a6ea800e2646644b300100789919912cc004c00c0062b3001301c3754015002806a03a8acc004c0200062b3001301c3754015002806a03a806a032406433001301a375400b3722911009b8f4881009180f180f800c8c078c07cc07c00644646600200200644660060026004005370e90022444444530013758604800f37586048604a604a00f2323322330020020012259800800c00e2646644b3001300d0028acc004c03000a20030064095133005005302c00440946eb8c094004dd698130009814000a04c3232330010010042259800800c00e2646644b3001300e0028acc004c03400a20030064099133005005302d00440986eb8c098004dd598138009814800a04e14bd6f7b6300a40012232330010010032259800800c5a264b30013375e6052604c6ea800401226012604c6ea800626600600660540048118c0a000502624444b3001300c30243754027159800980618121baa00d89919912cc004c050c09cdd500144c9660020030208992cc004c0b800a264b3001300b302a375400313259800800c566002602660566ea8006264b3001001812c4c966002003026813409a26644b300100181444c9660020030298992cc004c0d800e26602600244b30010028acc004cdd7806804c4cdc498089bab30173034375401e60226eacc05cc0d0dd5005c5282062899192cc004006264b3001001817c0be05f198009bad00189802181d802cc0d8dd50012444b300130210018992cc00400606713259800800c0d206903481a44c966002608200700581aa07c375c0028208c0f800503c181d1baa0058acc004c098006264b3001001819c4c96600200303481a40d2069132598009820801c01606a81f0dd7000a082303e00140f060746ea801606481b9037205e81e0c0d800a05d02e81740b903b181a000981b801206a81520663756003029814c0a50361819800a062375a002606400502640cc60600028170c0b0dd5000c09102940920490248122062302e302b375400315330294912465787065637420496e6c696e65446174756d286461746129203d206f75742e646174756d001640a0601860546ea80060428158c0b000502a191919800800804112cc004006297ae0899912cc004c9660026034605a6ea8006266e3c018dd7181898171baa0018a5040ac6060605a6ea8c0c0c0b4dd500144cc0bc008cc0100100062660080080028150c0b8004c0bc00502c1bae302b3028375400501a40946052604c6ea8c0a4c098dd5000981498131baa00e3300100400e8a99811a492065787065637420536f6d6528696e7075745f646174756d29203d20646174756d00164089159800980618121baa00d899914c004dd698150014dd5981518158014c0a8c09cdd5181518139baa001488966002602c60526ea800633001375c605a60546ea80064605c605e605e605e00337009000cdc4a4001374a90014dd2a400091111119912cc00400604b13259800981b80144c966002003028899912cc00400605513259800981d80144c8c8ca6002607a003303d303e303e303e303e303e303e303e303e0019bad303d003981e80124444b30013025303d3754003132598009813181f1baa0018992cc004c09cc0fcdd500344c966002605060806ea801a264b3001302930413754003132323298009824000cc120c124c124c124c124c124c124c124c1240066eb4c120c114dd50024dd69824001cc1200092222259800981898249baa0018992cc004c0c8c128dd5000c4c966002606660966ea801e264b30013034304c375400f13259800981a98269baa0018cc004dd6982898271baa00191810198289ba8001330514c010101004bd70488cc88c08ccc150dd419b82375a60aa0046eb4c154004cc150dd419b82375a60aa60ac0046eb4c154c1580052f5c060a06ea8008c140dd5000c896600200514a3153304e00116413491112cc004cc0056600266e1c02966002b3001302504d899b8904d483fbfffffc7e294104f441362a660a0921216578706563742076616c7565203e3d20302026262076616c7565203c3d206d61780016413d14a315330504913071756f74655f666565645f6964203d3d2066726f6d5f696e7428626173655f63757272656e637929203f2046616c73650014a08279240138426173652063757272656e6379206665656420646f6573206e6f74206d617463682065787065637465642062617365206173736574206964008992cc004cc009660026644b3001323259800981f000c528c5660026086003132598009822182b9baa303b3058375460b660b06ea8016266e24004012266e200040110551bad305a3057375400514a082a1054182a9baa00130583055375460b060aa6ea800a26464b3001303e0018a508acc004c10c006264b3001304430573754607660b06ea8c0ecc160dd5002c4cdc4802000c4cdc4002000a0aa375a60b460ae6ea800a294505420a83055375400260b060aa6ea8c0e0c154dd5001452820a430013053375407c66e0cdd6982b18299baa021483403e29462a660a292015e74782e76616c69646974795f72616e67650a20207c3e20696e74657276616c2e636f6e7461696e73287536342e61735f696e742870726963655f7570646174652e74696d657374616d705f757329202f203130303029203f2046616c73650014a0828124013850726963652066656564206e6f7420757064617465642077697468696e207472616e73616374696f6e2076616c69646974792072616e6765008acc004cc00966002646464b300130420018992cc004c10cc158dd5181d182b9baa303a3057375400913371000206113371200206082a0dd6982c982b1baa0028acc004c0d80062942294505320a63054375400260ae60a86ea8c0dcc150dd5000980098299baa03e8a518a99828a4814474782e76616c69646974795f72616e67650a20207c3e20696e74657276616c2e69735f656e746972656c795f6265666f726528646561646c696e6529203f2046616c73650014a082812401245061796d656e74206e6f74206d616465206265666f72652074686520646561646c696e65008998012cc004c8cc88ca600200302f81ac09d00111112cc00400e2b30013371200290004528c56600200514a11325980099baf305e305b375460bc00200d13371200460706eacc178c17c0062941058182d1baa305d002416c82ba264b30010038a50899912cc004c110c170dd5000c4c96600266ebcc184c178dd51830801982e802456600266e24c8cdc19bad3062001375a60c460c600260bc6ea8c184c178dd5001000c56600266e24004016330010089831003cc18801a66e04014005008452820b68a50416d14a082d8c0e8dd598301830801454cc16d2416a65787065637420536f6d652865787065637465645f7061796f757429203d0a202020202020202020202020726174696f6e616c2e64697628726174696f6e616c2e66726f6d5f696e742871756f74655f616d6f756e74292c2071756f74655f6d756c7469706c696572290016416860b66ea8c17800cc966002609060b66ea80062980103d87a8000898169982f1980618069bad305c002305f305c375400297ae04164646644b300133710004900044c0bccc180c0bccc180dd41805800998301ba8300b0024bd7025eb822b300133710900000144c0bccc180c0bccc180dd4000998301ba80024bd7025eb822980103d87a8000416c82d8dd6982f8009bad305f3060001305b375400e82e0c17400d05b1919192cc004c0f8c158dd5000c4c966002607e60ae6ea800626601060b660b06ea8004c16cc160dd5001454cc1592414065787065637420536f6d652870726963655f726174696f29203d20726174696f6e616c2e6e657728626173655f70726963652c2071756f74655f70726963652900164154b3001303e0188a6103d87a80008acc004cdc400c24001130283305930283305937506008018660b26ea0c0100612f5c097ae0898141982c98141982c9ba800c33059375003097ae04bd7020a84151153305549016365787065637420536f6d65286d756c7469706c69657229203d0a20202020726174696f6e616c2e66726f6d5f696e7428313029207c3e20726174696f6e616c2e706f7728626173655f6578706f6e656e74202d2071756f74655f6578706f6e656e74290016415064653001375a60b6003375a60b660b8003337020180309112cc0056600260840071337120029000452820b08a60103d87a80008acc004cdc4240000031302c3305d302c3305d37506600c006002660ba6ea0cc0180080052f5c097ae08acc004cdc4000a40011302c3305d302c3305d37506600c0046010002660ba6ea0cc01800cc0200052f5c097ae08a610ad8799fd8799f0101ffff00416082c10580c15cdd50009803a40286002002444b30013371000290004520008acc004c0f80062900144c966002607e66e1800920048cc0040126002007337060049002200889800cc00401260020073370660580049002200841546e0800905420a8302633056375205497ae0370290004528c54cc1452416f7061796f7574735f616e645f72656d61696e696e675f6d61746368287061796565732c206f7574707574732c2071756f74655f6d756c7469706c6965722c20536372697074287363726970745f68617368292c207370656e6461626c655f6c6f76656c61636529203f2046616c73650014a082812401455061796f7574206f757470757473206f722072656d61696e696e67207363726970742066756e647320646f206e6f74206d617463682065787065637465642076616c756573008a50414114a082808c158c15cc15cc15cc15cc15cc15cc15c006294104f20888258c140c134dd5003c10d04a1bad304f304c375400f04241246eb4c138c12cdd5000c105048182698251baa001820208e1824182418241824000982380098211baa00c81ba07e30443041375400d03640f86eb4c10cc100dd500340d503d1bad3042303f375400303440f06082607c6ea800606681d8607a607a607a607a0026078002606e6ea800e05681c0c0e4005037181b800981c000a06a3758602a60666ea800604c81a0c0d400503319b81300d3756602660606ea8028dd6980298181baa01b323232332259800980e181a1baa0028992cc004c074c0d4dd5000c4c966002003031818c4c8cc0640048966002005132330010010042259800800c52f5c113303e98009b8c480126e0120039b89480226e3120009b8c480226e0120074888888cc88cc0408c8d6600266e3cdd71824800a450475d3c793008cc004888c8cc00cdd698268009bae304d304e00130030019b89480426e3120109b804803e600e90082444446600a4646609e6ea0cde5250375c60a00026609e60a060a200297ae05980098029b8d0018998271ba930020013304e37526600860066e340040052f5c1153304a49124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e74001641244646600e4660a06ea0cdc7000a4000660a06ea4cc008c088dc6800800a5eb808cc0208cc144dd419b8e00148000cc144dd49980198119b8d0010014bd701119191982a18119982a1ba800733054375000a660a860aa00297ae033054305530560014bd7018008012cc004c08c00a2653001001a5eb820068008889660026074003123233057374e002660ae6ea40092f5c065300100180252f5c080088896600200510018cc00400e60b600533059305a002001400c82c2246530010059982b982c0008024c0a400e6eb8c160c1640050054c004c8cc15cdd419bca4a06eb8c160004cc15cc160c1640052f5c0b30013016371a00313305637526022002660ac6ea4cc050c04cdc6800800a5eb822a660a492124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e7400164145223305800233058375200297ae09b874801a6e1d200848888c8c8c8cc018ca6002003375860be005302d3305e305f0083305e4c103d87a80003305e4c103d87a80003305e4c103d87a80003305e4c103d87a80003305e4c103d87a80003305e4c103d87a80003305e4c103d87a80003305e4c103d87a80003305e4c103d87a80003305e4c103d87a80003305e4c103d87a80003305e4c103d87a80003305e4c103d87a80004bd70200222259800801440063300100398310014c8c966002608e00313230323306330640013306330323306330643061375400697ae030653065001306037540071598009826000c4c8c8c0cccc190c194008cc190c194004cc190c0cccc190c194c188dd500225eb80c198c198004c194004c180dd5001c5660026080003132323230343306530660033306530660023306530660013306530343306530663063375400a97ae03067306700130660013065001306037540071598009805000c4c8c8c8c8c0d4cc198c19c010cc198c19c00ccc198c19c008cc198c19c004cc198c0d4cc198c19cc190dd500325eb80c1a0c1a0004c19c004c198004c194004c180dd5001c56600260120031323232323230363306730680053306730680043306730680033306730680023306730680013306730363306730683065375400e97ae03069306900130680013067001306600130650013060375400715980099b87480280062646464646464606e660d060d200c660d060d200a660d060d2008660d060d2006660d060d2004660d060d2002660d0606e660d060d260cc6ea80212f5c060d460d400260d200260d000260ce00260cc00260ca00260c06ea800e2b30013370e9006000c4c8c8c8c8c8c8c8c0e0cc1a4c1a801ccc1a4c1a8018cc1a4c1a8014cc1a4c1a8010cc1a4c1a800ccc1a4c1a8008cc1a4c1a8004cc1a4c0e0cc1a4c1a8c19cdd5004a5eb80c1acc1ac004c1a8004c1a4004c1a0004c19c004c198004c194004c180dd5001c56600266e1d200e00189919191919191919181c99835183580419835183580399835183580319835183580299835183580219835183580199835183580119835183580099835181c99835183598341baa00a4bd7018361836000983580098350009834800983400098338009833000983280098301baa0038acc004cdc3a40200031323232323232323232303a3306b306c0093306b306c0083306b306c0073306b306c0063306b306c0053306b306c0043306b306c0033306b306c0023306b306c0013306b303a3306b306c3069375401697ae0306d306d001306c001306b001306a001306900130680013067001306600130650013060375400715980099b87480480062646464646464646464646076660d860da014660d860da012660d860da010660d860da00e660d860da00c660d860da00a660d860da008660d860da006660d860da004660d860da002660d86076660d860da60d46ea80312f5c060dc60dc00260da00260d800260d600260d400260d200260d000260ce00260cc00260ca00260c06ea800e2b30013370e900a000c4c8c8c8c8c8c8c8c8c8c8c8c0f0cc1b4c1b802ccc1b4c1b8028cc1b4c1b8024cc1b4c1b8020cc1b4c1b801ccc1b4c1b8018cc1b4c1b8014cc1b4c1b8010cc1b4c1b800ccc1b4c1b8008cc1b4c1b8004cc1b4c0f0cc1b4c1b8c1acdd5006a5eb80c1bcc1bc004c1b8004c1b4004c1b0004c1ac004c1a8004c1a4004c1a0004c19c004c198004c194004c180dd5001c56600266e1d20160018991919191919191919191919181e99837183780619837183780599837183780519837183780499837183780419837183780399837183780319837183780299837183780219837183780199837183780119837183780099837181e99837183798361baa00e4bd70183818380009837800983700098368009836000983580098350009834800983400098338009833000983280098301baa0038991919191919191919191919181e998371837806198371837805998371837805198371837804998371837804198371837803998371837803198371837802998371837802198371837801998371837801198371837800998371837983800099837181e99837183798361baa00e4bd7025eb80c1bc004c1b8004c1b4004c1b0004c1ac004c1a8004c1a4004c1a0004c19c004c198004c194004c180dd5001a0ba417482e905d20ba417482e905d20ba417482e905d182f1baa0013061002400c82f8dd7182f182f800991acc004c0b800a2653001001a5eb82006800888966002608a003123233062374e002660c46ea40092f5c065300100180252f5c080088896600200510018cc00400e60cc005330643065002001400c831a246530010059983118318008024c0d000e6eb8c18cc1900050051802800a0b68a9982ca4811165787065637420636f756e74203e3d2030001641606eb8c178c17c00ca60024464b30013001480422b30013001480022900044cdc7244108010204081020408000002416d1598009800a408113370490400219801801980a80144cdc124101010100406600600666e00009203f416c82d8dc4000c888c8cc184c00cdd698310009983098311831800a5eb80c00c006660ba6ea0cdc7000a4000660ba6ea4cc03cc0bcdc6800800a5eb8122232329800919802919198329ba833794940dd718330009983298331833800a5eb816600260366e340062660c86ea4c060004cc190dd49980d180c9b8d0010014bd70454cc181240124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e740016417c4646006b3001304a0018a60103d87a80008981a198329ba80014bd7020c030030019bad3063003911191acc006600260966eb4c19c00694294506144cc02000c8c014c0d8cc19cdd4000a5eb822601e600898103d87a800041846eb8c19cc1a0004cc194dd419b8e00148000cc194dd49980b981b9b8d0010014bd7024446b3001304a002898019181a99833000a5eb822b3001304f002898019181b19833000a5eb822b3001304300289801919ba548010cc1980052f5c1159800980680144cc01c8c8cc19cdd419bca4a06eb8c1a0004cc19cc1a0c1a40052f5c0b30013034371a00313306637526044002660cc6ea4cc0a0c09cdc6800800a5eb822a660c4920124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e7400164184466e95200633066375000297ae08acc004c03000a26600e464660ce6ea0cde5250375c60d0002660ce60d060d200297ae059800981a1b8d0018998331ba9302200133066375266050604e6e340040052f5c1153306249124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e7400164184466e952008330663750b3001337100029040400244006266e04004c0192020418497ae08acc004cdc3a40140051300323374a900519833000a5eb822b30013370e900600144cc0048cdd2a4018660cc00297ae0232330673750600c6eb4c1a0004cc19cc1a0c1a40052f5c064660ce6ea0cde5250375c60d0002660ce60d060d200297ae059800980e9b8d0018998331ba9301a0013306637526603860366e340040052f5c11533062490124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e740016418515980099b874803800a266002466e95200e330660014bd70119198339ba833794940dd718340009983398341834800a5eb8166002603a6e340062660cc6ea4c068004cc198dd49980e180d9b8d0010014bd70454cc18924124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e740016418515980099b874804000a266002466e952010330660014bd70119198339ba833794940dd718340009983398341834800a5eb8166002603a6e340062660cc6ea4c068004cc198dd49980e180d9b8d0010014bd70454cc18924124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e740016418515980099b874804800a246464660d066e9520123306830690014bd701983418349835000a5eb80c004008cc0208c8cc1a0dd419bca4a06eb8c1a4004cc1a0c1a4c1a80052f5c0b30013035371a00313306737526046002660ce6ea4cc0a4c0a0dc6800800a5eb822a660c6920124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e74001641884b3001304c0018a60103d87980008acc004c144006298103d87a80008acc004c114006298103d87b80008acc004c03c006298103d87c80008acc004c038006298103d87d80008a99831a49204d61726b657453657373696f6e2076616c7565206f7574206f662072616e676500164188831106220c4418915980099b874805000a26006466e952014330660014bd70456600266e1d201600289801919ba548058cc1980052f5c115980099b874806000a266002466e952018330660014bd70119198339ba833794940dd718340009983398341834800a5eb8166002603a6e340062660cc6ea4c068004cc198dd49980e180d9b8d0010014bd70454cc18924124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e740016418515330614911c4665656450726f7065727479204944206f7574206f662072616e676500164180830106020c04180830106020c04180830106020c041806eb8c198c19c0184b300133710002904040404040404040400144006266e04004c00920800141746006006375a60b800264660b66ea0cdc7000a4000660b66ea4cc034c0b4dc6800800a5eb80dd7182d982e0021050454cc13924011165787065637420636f756e74203e3d2030001641346e312002454cc111240125657870656374206d61676963203d3d2070726963655f7570646174655f6d616769635f6c650016410c6eb8c124c12800566002600e6e3400626608e6ea4c008004cc11cdd49980298021b8d0010014bd70454cc10d240124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e74001641086eb8c098c110dd5198081191acc004cdc79bae304900148904b9011a8200891919191919191991198289810198289829003998289ba90013305130520024bd70198289829182980125eb80d660026040003125980099b89002371a00313305037526601e004002660a06ea66002005337026e3400400a002b8c25eb822a66098920124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e740016412d153304b4911165787065637420636f756e74203e3d2030001641286eb8c140c144008dd718280021bad304f001323304e375066f29281bae304f0013304e304f30500014bd702cc004c06cdc6800c4cc134dd49804800998269ba93300f300e371a00200297ae08a99824a4924657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e74001641206eb8c134c138004d6600294624b30013371290201b8d0018998261ba93300b48100004cc130dd4cc005204099b80371a002901fc0057184bd70454cc12124124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e740016411d15330474911165787065637420636f756e74203e3d2030001641186eb8c130c134004c0040096600294624b3001337129040009b8d0018998251ba9330094820004004cc128dd4cc00520800199b80371a002903fc0057184bd70454cc11924124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e740016411515330454911165787065637420636f756e74203e3d203000164111153304449126657870656374206d61676963203d3d20736f6c616e615f666f726d61745f6d616769635f6c650016410c6eb8c124c12800566002600e6e3400626608e6ea4c008004cc11cdd49980298021b8d0010014bd70454cc10d240124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e74001641086eb8c11c024c00d200430034802066004004608000281ea264b300100181ac0d606b035899180198200021bae0014100607a00481d8dd6000c0c606281e0c0e4c0d8dd5000c54cc0d124016465787065637420536f6d652872656465656d657229203d0a2020202070616972732e6765745f66697273742873656c662e72656465656d6572732c205769746864726177285363726970742873746174652e77697468647261775f736372697074292929001640cc6466446600400400244b30010018a60103d87a80008992cc004cdd7802181c000c4c028cc0ecc0e40052f5c1133003003303d00240d8607600281c8dd5981c981d181d181d181d181d181d181d181d181d181b1baa0213374a90021981b98039981b9805181a9baa30383035375400497ae04bd70454cc0cd241ff65787065637420536f6d6528737461746529203d0a202020206c6973742e66696e645f6d6170280a20202020202073656c662e7265666572656e63655f696e707574732c0a202020202020666e28696e70757429207b0a20202020202020206966206173736574732e6861735f6e66745f73747269637428696e7075742e6f75747075742e76616c75652c20707974685f69642c2022507974682053746174652229207b0a202020202020202020202f2f20737461746520746f6b656e206f757473696465206f6620736372697074206164647265737320776f756c6420696d706c792061206275670a202020202020202020206578706563742053637269dc7074285f29203d20696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c0a2020202020202020202065787065637420496e6c696e65446174756d28737461746529203d20696e7075742e6f75747075742e646174756d0a202020202020202020206578706563742073746174653a2050797468203d2073746174650a20202020202020202020536f6d65287374617465290a20202020202020207d20656c7365207b0a202020202020202020204e6f6e650a20202020202020207d0a2020202020207d2c0a2020202029001640c864660020026eb0c05cc0d0dd500f912cc0040062980103d87a80008992cc006600266ebc00530103d87a8000a50a5140cd1001899801801981d0012066325980099912cc00400a2942265300132598009810981c9baa00189bad303a303d3756607a60746ea800629000206e303c0019baf303c303d0019bab003488966002003159800980100344cc01400d20008a5040e51325980099baf303c0014c010140008acc004cc018010dd6981e98201bab303d001898019ba630410028a5040e91598009980300224001130030078a5040e881d0c0fc00503d0ca60020033756603860726ea8c070c0e4dd5002488cc0f4008cc0f4dd3000a5eb810011112cc00400a26600298103d87a80004bd6f7b63044ca60026eb8c0ec0066eacc0f000660800069112cc004c09000e2b300130230038998029808198209ba60024bd70000c4cc01530103d87a800000640f119800803c006446600e0046608666ec0dd48029ba6004001401c81e0607c00481e229422942294103d1ba633038337606ea40c8dd31981c19bb04c10b4a50797468205374617465004c010101004bd6f7b63025eb7bdb1808928c5660026044606a6ea8c0e4c0d8dd5181c981b1baa30193036375400313259800980b981b1baa0018992cc0040062b3001301f3037375400313259800800c0ca264b30010018992cc00400606913259800800c0d626644b300100181bc4c966002003038899912cc00400607513259800800c0ee07703b81dc4c966002608e007159800981518211baa00a8992cc00400607b13259800800c0fa07d03e81f44cc89660020030408992cc004006083041820c4cc89660020030438992cc004006089044822411226644b300100182344c966002003047823c11e264b30013053003899818009912cc00400a26606402444b3001002898121982a80e25eb8226464b30010018992cc00400609f04f827c13e265300100389802982d80341410251bae001416c60aa00504e827413a09c82d0c14c004c15800905444c8c96600200304c82641320991332259800800c660020031300530590068272046827413a09d04e41686eb8004c14c0090581828800982a00120a482420a0375a003047414c60a00028270dd7000982780120a0304d001412c6eb4004c13000a0828268c1280050481bae00130490024128608e0028228c10cdd500540f104040f10441bae001411c60880028210dd5800982180140e20710384110608200281f8dd5800982000140d606b0354104607c00281e0c0f800a067033819c0cd03f181e000a0743038375400303140d5031818c0c606281e8c0e8c0dcdd5000c54cc0d52412e65787065637420496e6c696e65446174756d28737461746529203d20696e7075742e6f75747075742e646174756d001640d06030606c6ea8c064c0d8dd5000c54cc0d124013a65787065637420536372697074285f29203d20696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c001640cd14c103d87a800040cc607000281b088c96600260346eb8c0e4c0e800626072003153303449011b6578706563742028612c20235b5d29203d2073656c662873726329001640cc6004002444b3001301c3034375400713259800800c00a264b30010018992cc00400600913259800800c566002607a00519800801c66002003006802a010802a010802a074802c01600b00540f8607600281c8c0ec00a007003801c00d03c181c800a06e3035375400700140c8444b3001301b3033375400713259800800c00a264b30010018992cc00400600913259800800c4c96600260720031598009804981c000c01a264b3001303e0048992cc004c0880062b3001303b375400d00980420788acc004c09c006264b3001001804c4c96600200300a805402a264b30013042003806402d03f1bad0018052084303f00140f460766ea801a2b3001301b0018acc004c0ecdd5003402601081e201081c103820703039375400b00740ec604a607000281b200c81d0dd5000c01600b005802a07a303a00140e06074005003801c00e00681d8c0e0005036181a1baa003800a0623712900220388138604a6ea8c0a0c094dd500699800802007454cc08d24011a65787065637420536f6d6528646174756d29203d20646174756d001640888110301937540106e1d2000805402a01500a4078603400260346036002602c6ea800e2c8098602a00260206ea805a293454cc03924011856616c696461746f722072657475726e65642066616c7365001365640341", + "hash": "c6e1b648a954f2e78fc0d45fc12a291e638384f59669fbbb2d511a1e" }, { "title": "osi.oracle_settled_invoice.else", @@ -49,20 +49,20 @@ }, "parameters": [ { - "title": "base_currency", + "title": "pyth_policy", "schema": { - "$ref": "#/definitions/Int" + "$ref": "#/definitions/cardano~1assets~1PolicyId" } }, { - "title": "pyth_policy", + "title": "base_currency", "schema": { - "$ref": "#/definitions/cardano~1assets~1PolicyId" + "$ref": "#/definitions/Int" } } ], - "compiledCode": "591c400101002229800aba4aba2aba1aba0aab9faab9eaab9dab9a9bad0039bae002488888888896600264653001300a00198051805800cdc3a4005300a0024888966002600460146ea800e2653001300f00198079808000cdc3a400091119912cc004c00c0062b3001301137540150028b20248acc004c0200062b3001301137540150028b20248b201e403c33001300f375400b2301330140019b91489009b8f4881009ba548001222223322598009804180a9baa00f899192cc004c03cc05cdd5000c4c966002603a003198009bab3009301937540073009301937546038003223371200400280222c80d0c8c8cc004004018896600200314bd7044cc896600264b30013015301d375400313371e00c6eb8c084c078dd5000c52820383020301d37546040603a6ea800a26603e00466008008003133004004001406c603c002603e00280e0dd7180d980c1baa0018b202c301a301737546034602e6ea8004c8cc004004dd6180d004112cc0040062d1325980099baf301c3019375400201b1300930193754003133003003301d002405c603600280ca2b300130083015375401319800980b1baa3019301637540132301a301b301b0019b80480066e1d200448888c966002603e0031323232598009811000c660026042005223322300f33024375066e08dd698128011bad302500133024375066e08dd6981298130011bad302530260014bd7018101baa002302037540032300c330213750002660429810101004bd704dc0a4001230223023302330233023302330233023001488888c9660026530010019bab3028302900fa514004444b30010028800c4c8ca600200b302d004992cc004c070c0a4dd5000c56600266e24c8cdc19bad302e001375a605c605e00260546ea8c0b4c0a8dd5000994c004006646600200203044b30010018a5eb822646644b30013027302f3754005133005005001899819181998181baa0023300500500140b8b30013375e6062605c6ea8c0c4c0b8dd500080344c06ccc0c0c078c0b8dd5000a5eb82298103d87a800040b06064004606000281729000200222259800801440063300100398188014cdc019199119801001000912cc00400600713233225980098110014566002604200510018032062899802802981b8022062375c60600026eb4c0c4004c0cc0050311919198008009bab30330052259800800c00e2646644b300130230028acc004c08800a200300640c9133005005303800440c86eb8c0c4004dd59819000981a000a06414bd6f7b6300a4000002801902e440122941028459028192cc004c084c0a4dd5000c530103d87a80008980b998161980598051bad302a003302d302a375400297ae040a0646644b300133710004900044c064cc0b8c064cc0b8dd41805800998171ba8300b0024bd7025eb822b300133710900000144c064cc0b8c064cc0b8dd4000998171ba80024bd7025eb822980103d87a800040a88150dd698168009bad302d302e0013029375400c8028c09c004c0a8009028456600266e1cdd6981398121baa0060218acc004cc89660026464b3001301a0018a518acc004c07c006264b3001302030283754603260526ea8c0b0c0a4dd5002c4cdc480080244cdc4000802204e375a605660506ea800a2941026204c302637540026052604c6ea8c0a4c098dd500144c8c966002603400314a1159800980f800c4c966002604060506ea8c064c0a4dd5180c98149baa005899b89004001899b88004001409c6eb4c0acc0a0dd50014528a04c4098604c6ea8004c0a4c098dd5180b18131baa0028a504090600460486ea8068dd6981398121baa0098991919912cc004c07c00a264b3001302030283754603260526ea8c064c0a4dd5002c4cdc400080144cdc4800801204e375a605660506ea800e2b3001300f0028a508a5140988130c094dd50009bad3029010302830253754602a604a6ea8004c008c090dd500d452820448a50408914a081126002444b30013371000290004520008acc004c0600062900144c966002603266e1800920048cc0040126002007337060049002200889800cc004012600200733706601e0049002200840946e0800902420489181398141814181418141814000c966002602c60466ea80062604e60486ea80062980103d87a80004089302600648888cc8966002603660506ea8006264b3001301c3029375400313259800980e98151baa0018992cc004c078c0acdd5000c4c966002603e60586ea8006264b30013020302d375400313300f3031302e37540026062605c6ea80122c8160cc8966002604200314c103d87a80008acc004cdc4000a40011301c33031301c330313750601c004660626ea0c0380052f5c097ae08980e19818980e198189ba800233031375000297ae04bd70205a40b46eb4c0c0c0b4dd50011bad3030302d37540031640ac600e603860586ea801a2c8150c018c06cc0acdd5006c5902919194c004dd69817800cdd698179818000ccdc09bad302f302c37540086eb4c0bcc0b0dd5001a444b3001598009810801c4cdc4800a400114a0816a298103d87a80008acc004cdc4240000031301c33031301c33031375066010006002660626ea0cc0200080052f5c097ae08acc004cdc4000a40011301c33031301c33031375066010004601c002660626ea0cc02000cc0380052f5c097ae08a610ad8799fd8799f0101ffff0040b4816902d0c0acdd50009805240291640a0600a60526ea800e2c8138c010010c00cc09cdd5004916407c60420026eb0c014c070dd5000980f000c5901c1919199119912cc004c048c07cdd500144c966002602660406ea80062646600a00244b300100289919800800802112cc004006297ae08998144c004dc4a4001371890024dc024007371290044dc624001371890044dc02400e91111111991198081191acc004cdc79bae30340014890475d3c793008cc004888c8cc00cdd6981c0009bae3038303900130030019b89480426e3120109b804803e600e90082444446600a464660746ea0cde5250375c6076002660746076607800297ae05980098029b8d00189981c9ba930020013303937526600860066e340040052f5c11640d44646600e4660766ea0cdc7000a4000660766ea4cc008c084dc6800800a5eb808cc0208cc0f0dd419b8e00148000cc0f0dd49980198111b8d0010014bd701119191981f98151981f9ba80073303f375000a6607e608000297ae03303f304030410014bd7018008012cc004c05400a2653001001a5eb820068008889660026060003123233042374e002660846ea40092f5c065300100180252f5c080088896600200510018cc00400e608c005330443045002001400c821a246530010059982118218008024c0a000e6eb8c10cc1100050054c004c8cc108dd419bca4a06eb8c10c004cc108c10cc1100052f5c0b30013016371a00313304137526022002660826ea4cc050c04cdc6800800a5eb822c81ea4466086004660866ea40052f5c1370e90034dc3a4010911119191919803194c0040066eb0c12800a60686609260940106609298103d87a8000330494c103d87a8000330494c103d87a8000330494c103d87a8000330494c103d87a8000330494c103d87a8000330494c103d87a8000330494c103d87a8000330494c103d87a8000330494c103d87a8000330494c103d87a8000330494c103d87a8000330494c103d87a80004bd70200222259800801440063300100398268014c8c966002607a00313230393304e304f0013304e30393304e304f304c375400697ae030503050001304b37540071598009821000c4c8c8c0e8cc13cc140008cc13cc140004cc13cc0e8cc13cc140c134dd500225eb80c144c144004c140004c12cdd5001c56600260640031323232303b33050305100333050305100233050305100133050303b330503051304e375400a97ae03052305200130510013050001304b37540071598009805000c4c8c8c8c8c0f0cc144c148010cc144c14800ccc144c148008cc144c148004cc144c0f0cc144c148c13cdd500325eb80c14cc14c004c148004c144004c140004c12cdd5001c566002601200313232323232303d33052305300533052305300433052305300333052305300233052305300133052303d3305230533050375400e97ae0305430540013053001305200130510013050001304b375400715980099b87480280062646464646464607c660a660a800c660a660a800a660a660a8008660a660a8006660a660a8004660a660a8002660a6607c660a660a860a26ea80212f5c060aa60aa00260a800260a600260a400260a200260a000260966ea800e2b30013370e9006000c4c8c8c8c8c8c8c8c0fccc150c15401ccc150c154018cc150c154014cc150c154010cc150c15400ccc150c154008cc150c154004cc150c0fccc150c154c148dd5004a5eb80c158c158004c154004c150004c14c004c148004c144004c140004c12cdd5001c56600266e1d200e0018991919191919191918201982a982b0041982a982b0039982a982b0031982a982b0029982a982b0021982a982b0019982a982b0011982a982b0009982a98201982a982b18299baa00a4bd70182b982b800982b000982a800982a000982980098290009828800982800098259baa0038acc004cdc3a4020003132323232323232323230413305630570093305630570083305630570073305630570063305630570053305630570043305630570033305630570023305630570013305630413305630573054375401697ae03058305800130570013056001305500130540013053001305200130510013050001304b375400715980099b87480480062646464646464646464646084660ae60b0014660ae60b0012660ae60b0010660ae60b000e660ae60b000c660ae60b000a660ae60b0008660ae60b0006660ae60b0004660ae60b0002660ae6084660ae60b060aa6ea80312f5c060b260b200260b000260ae00260ac00260aa00260a800260a600260a400260a200260a000260966ea800e2b30013370e900a000c4c8c8c8c8c8c8c8c8c8c8c8c10ccc160c16402ccc160c164028cc160c164024cc160c164020cc160c16401ccc160c164018cc160c164014cc160c164010cc160c16400ccc160c164008cc160c164004cc160c10ccc160c164c158dd5006a5eb80c168c168004c164004c160004c15c004c158004c154004c150004c14c004c148004c144004c140004c12cdd5001c56600266e1d2016001899191919191919191919191918221982c982d0061982c982d0059982c982d0051982c982d0049982c982d0041982c982d0039982c982d0031982c982d0029982c982d0021982c982d0019982c982d0011982c982d0009982c98221982c982d182b9baa00e4bd70182d982d800982d000982c800982c000982b800982b000982a800982a000982980098290009828800982800098259baa003899191919191919191919191918221982c982d0061982c982d0059982c982d0051982c982d0049982c982d0041982c982d0039982c982d0031982c982d0029982c982d0021982c982d0019982c982d0011982c982d0009982c982d182d8009982c98221982c982d182b9baa00e4bd7025eb80c168004c164004c160004c15c004c158004c154004c150004c14c004c148004c144004c140004c12cdd5001a0924124824904920924124824904920924124824904918249baa001304c002400c8250dd718249825000991acc004c08000a2653001001a5eb82006800888966002607600312323304d374e0026609a6ea40092f5c065300100180252f5c080088896600200510018cc00400e60a20053304f3050002001400c8272246530010059982698270008024c0cc00e6eb8c138c13c0050051802800a08e8b2088375c60926094006530012232598009800a40211598009800a4001148002266e39220108010204081020408000002411d1598009800a408113370490400219801801980a80144cdc124101010100406600600666e00009203f411c8238dc4000c888c8cc130c00cdd698268009982618269827000a5eb80c00c006660906ea0cdc7000a4000660906ea4cc03cc0b8dc6800800a5eb8122232329800919802919198281ba833794940dd718288009982818289829000a5eb816600260366e3400626609e6ea4c060004cc13cdd49980d180c9b8d0010014bd7045904b1191801acc004c100006298103d87a80008981d998281ba80014bd70209830030019bad304e003911191acc006600260826eb4c14800694294504d44cc02000c8c014c0f4cc148dd4000a5eb822601e600898103d87a800041346eb8c148c14c004cc140dd419b8e00148000cc140dd49980b981b1b8d0010014bd7024446b30013040002898019181e19828800a5eb822b3001304500289801919ba548008cc1440052f5c1159800981a80144c00c8cdd2a4008660a200297ae08acc004c03400a26600e464660a46ea0cde5250375c60a6002660a460a660a800297ae059800981a9b8d0018998289ba9302200133051375266050604e6e340040052f5c1164134466e95200633051375000297ae08acc004c03000a26600e464660a46ea0cde5250375c60a6002660a460a660a800297ae059800981a9b8d0018998289ba9302200133051375266050604e6e340040052f5c1164134466e952008330513750b3001337100029040400244006266e04004c0192020413497ae08acc004cdc3a40140051300323374a900519828800a5eb822b30013370e900600144cc0048cdd2a4018660a200297ae0232330523750600c6eb4c14c004cc148c14cc1500052f5c064660a46ea0cde5250375c60a6002660a460a660a800297ae059800980e9b8d0018998289ba9301a0013305137526603860366e340040052f5c116413515980099b874803800a266002466e95200e330510014bd70119198291ba833794940dd71829800998291829982a000a5eb8166002603a6e340062660a26ea4c068004cc144dd49980e180d9b8d0010014bd7045904d456600266e1d2010002899800919ba548040cc1440052f5c0464660a46ea0cde5250375c60a6002660a460a660a800297ae059800980e9b8d0018998289ba9301a0013305137526603860366e340040052f5c116413515980099b874804800a246464660a666e9520123305330540014bd7019829982a182a800a5eb80c004008cc0208c8cc14cdd419bca4a06eb8c150004cc14cc150c1540052f5c0b30013036371a00313305237526046002660a46ea4cc0a4c0a0dc6800800a5eb822c8270966002608400314c103d87980008acc004c11c006298103d87a80008acc004c0dc006298103d87b80008acc004c03c006298103d87c80008acc004c038006298103d87d80008b209c4138827104e209c8acc004cdc3a40280051300323374a900a19828800a5eb822b30013370e900b00144c00c8cdd2a402c660a200297ae08acc004cdc3a403000513300123374a900c19828800a5eb808c8cc148dd419bca4a06eb8c14c004cc148c14cc1500052f5c0b3001301d371a00313305137526034002660a26ea4cc070c06cdc6800800a5eb822c826a2c826104c20984130826104c20984130826104c209841308260dd718289829003096600266e2000520808080808080808080028800c4cdc0800980124100028248c00c00c6eb4c11c004c8cc118dd419b8e00148000cc118dd49980698161b8d0010014bd701bae3046304700420788b20723718900122c8178dd7181a181a800acc004c01cdc6800c4cc0c8dd49801000998191ba9330053004371a00200297ae08b205c375c6030605e6ea8cc0408c8d6600266e3cdd7181a000a44104b9011a82008919191919191919911981e18139981e181e8039981e1ba90013303c303d0024bd701981e181e981f00125eb80d660026024003125980099b89002371a00313303b37526601e004002660766ea66002005337026e3400400a002b8c25eb822c81ba2c81b0dd7181d981e0011bae303b004375a607400264660726ea0cde5250375c6074002660726074607600297ae059800980e1b8d00189981c1ba930090013303837526601e601c6e340040052f5c11640d06eb8c0e0c0e4004d6600294624b30013371290201b8d00189981b9ba93300b48100004cc0dcdd4cc005204099b80371a002901fc0057184bd704590334590321bae30373038001300100259800a51892cc004cdc4a4100026e3400626606a6ea4cc0252080010013303537533001482000666e00dc6800a40ff0015c612f5c11640c51640c11640bc6eb8c0d0c0d400566002600e6e340062660646ea4c008004cc0c8dd49980298021b8d0010014bd7045902e1bae303200a300348010c00d2008198010011815000a04e899180118148019bae302700240946eb0c090c084dd5000c5901f19199119801001000912cc004006298103d87a80008992cc004cdd78021811800c4c044cc098c0900052f5c113300300330280024088604c0028120dd5981218129812981298129812981298129812981298109baa0173374a90021981119ba548008cc088c08cc090c090c090c080dd5181198101baa0024bd7025eb822c80f0c8cc004004dd61807980f9baa0152259800800c530103d87a80008992cc006600266ebc00530103d87a8000a50a51407d10018998018019812801203e3259800cc004dd5980898109baa301130213754003374c6604666ec0dd480e9ba6330233376098010b4a50797468205374617465004c010101004bd6f7b63025eb7bdb1824494500c4566002603060406ea8c090c084dd5181218109baa30113021375400313259800980498109baa0018992cc004c054c088dd5000c4c8c8c8c8cc8966002605a00713259800980e18149baa0018991919194c004dd69818800cdd718188024dd69818801cdd7181880124444b3001303600589980a9bab303500e225980080144cc05c030896600200513023330380144bd7044c8c8cc070c0dc0084c00cc0f0010dd7181b800981c801206e899191980d181b00109801981d0021bae3034001303700240d51640cc30310013030001302f001302a37540031640a0605800d1640a86eb8c0a8004dd5981500118150009814800981400098119baa0018b2042302530223754003164080601460426ea8c044c084dd5000c5901f4530103d87a8000407c6046002810888c966002601e6eb8c090c0940062604800316407c600400244b30013010301d3754005132323259800981280144cc018c09000c4cc0180040122c8110c08c004c08c004c078dd500145901c11191980080080191198018009801001112cc004c03cc070dd500144c8c8c96600260480051323259800980a000c56600260446ea800a00d16408d159800980c800c4c8c96600260500050088b204a375a604c00260446ea800a2b300130090018acc004c088dd5001401a2c811a2c8101020204030203754002604600716408464b300130200018acc004c018c07c0062d13017301f00140791640846ea8c088004c088004c074dd500145901b1b894801116405080a0dd6180b980c180c0029112cc00400a2942265300132598009805980c1baa00189bad3019301c3756603860326ea800629000202e301b0019baf301b301c0019bab003488966002003159800980100344cc01400d20008a5040651325980099baf301b0014c10140008acc004cc018010dd6980e180f9bab301c001898019ba630200028a5040691598009980300224001130030078a50406880d0c07800501c0ca6002003004911980e0011980e1ba60014bd7020022225980080144cc005300103d87a80004bd6f7b63044ca60026eb8c0680066eacc06c006603e0069112cc004c03400e2b3001300c0038998029805998101ba60024bd70000c4cc01530103d87a8000006407119800803c006446600e0046604466ec0dd48029ba6004001401c80e0603a00480da29422942294101c0c038dd50040c02cdd5001c590090c028004c014dd5005c52689b2b200601", - "hash": "1436b3f855cecbdced6d3bed4b2bf87737ada2afd9b2028624021b6e" + "compiledCode": "592f380101002229800aba4aba2aba1aba0aab9faab9eaab9dab9cab9a9bae0039bad00248888888888a60022a660089212a65787065637420757064617465733a204c6973743c4279746541727261793e203d2072656465656d657200168a998022491a6578706563742073746174653a2050797468203d20737461746500168a9980224921657870656374206f75745f646174756d3a204f7369446174756d203d206461746100168a9980224938657870656374205b6f75745d203d2066696e645f7363726970745f6f757470757473286f7574707574732c207363726970745f686173682900168a99802249de6578706563742046656564207b0a20202020202020202020666565645f69643a2071756f74655f666565645f69642c0a2020202020202020202070726963653a20536f6d6528536f6d6528626173655f707269636529292c0a202020202020202020206578706f6e656e743a20536f6d6528626173655f6578706f6e656e74292c0a20202020202020202020666565645f7570646174655f74696d657374616d703a20536f6d6528536f6d652874696d657374616d705f3229292c0a202020202020202020202e2e0a20202020202020207d203d20626173655f6665656400168a99802249e56578706563742046656564207b0a20202020202020202020666565645f69643a206164615f70726963655f666565645f69642c0a2020202020202020202070726963653a20536f6d6528536f6d652871756f74655f707269636529292c0a202020202020202020206578706f6e656e743a20536f6d652871756f74655f6578706f6e656e74292c0a20202020202020202020666565645f7570646174655f74696d657374616d703a20536f6d6528536f6d652874696d657374616d705f3129292c0a202020202020202020202e2e0a20202020202020207d203d2071756f74655f6665656400168a9980224933657870656374205b71756f74655f666565642c20626173655f666565645d203d2070726963655f7570646174652e666565647300168a9980224934657870656374205b70726963655f7570646174655d203d206765745f7570646174657328707974685f706f6c6963792c2074782900168a998022493a65787065637420536372697074287363726970745f6861736829203d20696e2e616464726573732e7061796d656e745f63726564656e7469616c00168a998022491672656465656d65723a204f736952656465656d65727300164888888888966002646530013015001980a980b000cdc3a4005301500248889660026004602a6ea800e2646644b300100789919912cc004c00c0062b3001301c3754015002806a03a8acc004c0200062b3001301c3754015002806a03a806a032406433001301a375400b3722911009b8f4881009180f180f800c8c078c07cc07c00644646600200200644660060026004005370e90022444444530013758604800f37586048604a604a00f2323322330020020012259800800c00e2646644b3001300d0028acc004c03000a20030064095133005005302c00440946eb8c094004dd698130009814000a04c3232330010010042259800800c00e2646644b3001300e0028acc004c03400a20030064099133005005302d00440986eb8c098004dd598138009814800a04e14bd6f7b6300a40012232330010010032259800800c5a264b30013375e6052604c6ea800401226012604c6ea800626600600660540048118c0a000502624444b3001300c30243754027159800980618121baa00d89919912cc004c050c09cdd500144c9660020030208992cc004c0b800a264b3001300b302a375400313259800800c566002602660566ea8006264b3001001812c4c966002003026813409a26644b300100181444c9660020030298992cc004c0d800e26602600244b30010028acc004cdd7806804c4cdc498089bab30173034375401e60226eacc05cc0d0dd5005c5282062899192cc004006264b3001001817c0be05f198009bad00189802181d802cc0d8dd50012444b300130210018992cc00400606713259800800c0d206903481a44c966002608200700581aa07c375c0028208c0f800503c181d1baa0058acc004c098006264b3001001819c4c96600200303481a40d2069132598009820801c01606a81f0dd7000a082303e00140f060746ea801606481b9037205e81e0c0d800a05d02e81740b903b181a000981b801206a81520663756003029814c0a50361819800a062375a002606400502640cc60600028170c0b0dd5000c09102940920490248122062302e302b375400315330294912465787065637420496e6c696e65446174756d286461746129203d206f75742e646174756d001640a0601860546ea80060428158c0b000502a191919800800804112cc004006297ae0899912cc004c9660026034605a6ea8006266e3c018dd7181898171baa0018a5040ac6060605a6ea8c0c0c0b4dd500144cc0bc008cc0100100062660080080028150c0b8004c0bc00502c1bae302b3028375400501a40946052604c6ea8c0a4c098dd5000981498131baa00e3300100400e8a99811a492065787065637420536f6d6528696e7075745f646174756d29203d20646174756d00164089159800980618121baa00d899914c004dd698150014dd5981518158014c0a8c09cdd5181518139baa001488966002602c60526ea800633001375c605a60546ea80064605c605e605e605e00337009000cdc4a4001374a90014dd2a400091111119912cc00400604b13259800981b80144c966002003028899912cc00400605513259800981d80144c8c8ca6002607a003303d303e303e303e303e303e303e303e303e0019bad303d003981e80124444b30013025303d3754003132598009813181f1baa0018992cc004c09cc0fcdd500344c966002605060806ea801a264b3001302930413754003132323298009824000cc120c124c124c124c124c124c124c124c1240066eb4c120c114dd50024dd69824001cc1200092222259800981898249baa0018992cc004c0c8c128dd5000c4c966002606660966ea801e264b30013034304c375400f13259800981a98269baa0018cc004dd6982898271baa00191810198289ba8001330514c010101004bd70488cc88c08ccc150dd419b82375a60aa0046eb4c154004cc150dd419b82375a60aa60ac0046eb4c154c1580052f5c060a06ea8008c140dd5000c896600200514a3153304e00116413491112cc004cc0056600266e1c02966002b3001302504d899b8904d483fbfffffc7e294104f441362a660a0921216578706563742076616c7565203e3d20302026262076616c7565203c3d206d61780016413d14a315330504913071756f74655f666565645f6964203d3d2066726f6d5f696e7428626173655f63757272656e637929203f2046616c73650014a08279240138426173652063757272656e6379206665656420646f6573206e6f74206d617463682065787065637465642062617365206173736574206964008992cc004cc009660026644b3001323259800981f000c528c5660026086003132598009822182b9baa303b3058375460b660b06ea8016266e24004012266e200040110551bad305a3057375400514a082a1054182a9baa00130583055375460b060aa6ea800a26464b3001303e0018a508acc004c10c006264b3001304430573754607660b06ea8c0ecc160dd5002c4cdc4802000c4cdc4002000a0aa375a60b460ae6ea800a294505420a83055375400260b060aa6ea8c0e0c154dd5001452820a430013053375407c66e0cdd6982b18299baa021483403e29462a660a292015e74782e76616c69646974795f72616e67650a20207c3e20696e74657276616c2e636f6e7461696e73287536342e61735f696e742870726963655f7570646174652e74696d657374616d705f757329202f203130303029203f2046616c73650014a0828124013850726963652066656564206e6f7420757064617465642077697468696e207472616e73616374696f6e2076616c69646974792072616e6765008acc004cc00966002646464b300130420018992cc004c10cc158dd5181d182b9baa303a3057375400913371000206113371200206082a0dd6982c982b1baa0028acc004c0d80062942294505320a63054375400260ae60a86ea8c0dcc150dd5000980098299baa03e8a518a99828a4814474782e76616c69646974795f72616e67650a20207c3e20696e74657276616c2e69735f656e746972656c795f6265666f726528646561646c696e6529203f2046616c73650014a082812401245061796d656e74206e6f74206d616465206265666f72652074686520646561646c696e65008998012cc004c8cc88ca600200302f81ac09d00111112cc00400e2b30013371200290004528c56600200514a11325980099baf305e305b375460bc00200d13371200460706eacc178c17c0062941058182d1baa305d002416c82ba264b30010038a50899912cc004c110c170dd5000c4c96600266ebcc184c178dd51830801982e802456600266e24c8cdc19bad3062001375a60c460c600260bc6ea8c184c178dd5001000c56600266e24004016330010089831003cc18801a66e04014005008452820b68a50416d14a082d8c0e8dd598301830801454cc16d2416a65787065637420536f6d652865787065637465645f7061796f757429203d0a202020202020202020202020726174696f6e616c2e64697628726174696f6e616c2e66726f6d5f696e742871756f74655f616d6f756e74292c2071756f74655f6d756c7469706c696572290016416860b66ea8c17800cc966002609060b66ea80062980103d87a8000898169982f1980618069bad305c002305f305c375400297ae04164646644b300133710004900044c0bccc180c0bccc180dd41805800998301ba8300b0024bd7025eb822b300133710900000144c0bccc180c0bccc180dd4000998301ba80024bd7025eb822980103d87a8000416c82d8dd6982f8009bad305f3060001305b375400e82e0c17400d05b1919192cc004c0f8c158dd5000c4c966002607e60ae6ea800626601060b660b06ea8004c16cc160dd5001454cc1592414065787065637420536f6d652870726963655f726174696f29203d20726174696f6e616c2e6e657728626173655f70726963652c2071756f74655f70726963652900164154b3001303e0188a6103d87a80008acc004cdc400c24001130283305930283305937506008018660b26ea0c0100612f5c097ae0898141982c98141982c9ba800c33059375003097ae04bd7020a84151153305549016365787065637420536f6d65286d756c7469706c69657229203d0a20202020726174696f6e616c2e66726f6d5f696e7428313029207c3e20726174696f6e616c2e706f7728626173655f6578706f6e656e74202d2071756f74655f6578706f6e656e74290016415064653001375a60b6003375a60b660b8003337020180309112cc0056600260840071337120029000452820b08a60103d87a80008acc004cdc4240000031302c3305d302c3305d37506600c006002660ba6ea0cc0180080052f5c097ae08acc004cdc4000a40011302c3305d302c3305d37506600c0046010002660ba6ea0cc01800cc0200052f5c097ae08a610ad8799fd8799f0101ffff00416082c10580c15cdd50009803a40286002002444b30013371000290004520008acc004c0f80062900144c966002607e66e1800920048cc0040126002007337060049002200889800cc00401260020073370660580049002200841546e0800905420a8302633056375205497ae0370290004528c54cc1452416f7061796f7574735f616e645f72656d61696e696e675f6d61746368287061796565732c206f7574707574732c2071756f74655f6d756c7469706c6965722c20536372697074287363726970745f68617368292c207370656e6461626c655f6c6f76656c61636529203f2046616c73650014a082812401455061796f7574206f757470757473206f722072656d61696e696e67207363726970742066756e647320646f206e6f74206d617463682065787065637465642076616c756573008a50414114a082808c158c15cc15cc15cc15cc15cc15cc15c006294104f20888258c140c134dd5003c10d04a1bad304f304c375400f04241246eb4c138c12cdd5000c105048182698251baa001820208e1824182418241824000982380098211baa00c81ba07e30443041375400d03640f86eb4c10cc100dd500340d503d1bad3042303f375400303440f06082607c6ea800606681d8607a607a607a607a0026078002606e6ea800e05681c0c0e4005037181b800981c000a06a3758602a60666ea800604c81a0c0d400503319b81300d3756602660606ea8028dd6980298181baa01b323232332259800980e181a1baa0028992cc004c074c0d4dd5000c4c966002003031818c4c8cc0640048966002005132330010010042259800800c52f5c113303e98009b8c480126e0120039b89480226e3120009b8c480226e0120074888888cc88cc0408c8d6600266e3cdd71824800a450475d3c793008cc004888c8cc00cdd698268009bae304d304e00130030019b89480426e3120109b804803e600e90082444446600a4646609e6ea0cde5250375c60a00026609e60a060a200297ae05980098029b8d0018998271ba930020013304e37526600860066e340040052f5c1153304a49124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e74001641244646600e4660a06ea0cdc7000a4000660a06ea4cc008c088dc6800800a5eb808cc0208cc144dd419b8e00148000cc144dd49980198119b8d0010014bd701119191982a18119982a1ba800733054375000a660a860aa00297ae033054305530560014bd7018008012cc004c08c00a2653001001a5eb820068008889660026074003123233057374e002660ae6ea40092f5c065300100180252f5c080088896600200510018cc00400e60b600533059305a002001400c82c2246530010059982b982c0008024c0a400e6eb8c160c1640050054c004c8cc15cdd419bca4a06eb8c160004cc15cc160c1640052f5c0b30013016371a00313305637526022002660ac6ea4cc050c04cdc6800800a5eb822a660a492124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e7400164145223305800233058375200297ae09b874801a6e1d200848888c8c8c8cc018ca6002003375860be005302d3305e305f0083305e4c103d87a80003305e4c103d87a80003305e4c103d87a80003305e4c103d87a80003305e4c103d87a80003305e4c103d87a80003305e4c103d87a80003305e4c103d87a80003305e4c103d87a80003305e4c103d87a80003305e4c103d87a80003305e4c103d87a80003305e4c103d87a80004bd70200222259800801440063300100398310014c8c966002608e00313230323306330640013306330323306330643061375400697ae030653065001306037540071598009826000c4c8c8c0cccc190c194008cc190c194004cc190c0cccc190c194c188dd500225eb80c198c198004c194004c180dd5001c5660026080003132323230343306530660033306530660023306530660013306530343306530663063375400a97ae03067306700130660013065001306037540071598009805000c4c8c8c8c8c0d4cc198c19c010cc198c19c00ccc198c19c008cc198c19c004cc198c0d4cc198c19cc190dd500325eb80c1a0c1a0004c19c004c198004c194004c180dd5001c56600260120031323232323230363306730680053306730680043306730680033306730680023306730680013306730363306730683065375400e97ae03069306900130680013067001306600130650013060375400715980099b87480280062646464646464606e660d060d200c660d060d200a660d060d2008660d060d2006660d060d2004660d060d2002660d0606e660d060d260cc6ea80212f5c060d460d400260d200260d000260ce00260cc00260ca00260c06ea800e2b30013370e9006000c4c8c8c8c8c8c8c8c0e0cc1a4c1a801ccc1a4c1a8018cc1a4c1a8014cc1a4c1a8010cc1a4c1a800ccc1a4c1a8008cc1a4c1a8004cc1a4c0e0cc1a4c1a8c19cdd5004a5eb80c1acc1ac004c1a8004c1a4004c1a0004c19c004c198004c194004c180dd5001c56600266e1d200e00189919191919191919181c99835183580419835183580399835183580319835183580299835183580219835183580199835183580119835183580099835181c99835183598341baa00a4bd7018361836000983580098350009834800983400098338009833000983280098301baa0038acc004cdc3a40200031323232323232323232303a3306b306c0093306b306c0083306b306c0073306b306c0063306b306c0053306b306c0043306b306c0033306b306c0023306b306c0013306b303a3306b306c3069375401697ae0306d306d001306c001306b001306a001306900130680013067001306600130650013060375400715980099b87480480062646464646464646464646076660d860da014660d860da012660d860da010660d860da00e660d860da00c660d860da00a660d860da008660d860da006660d860da004660d860da002660d86076660d860da60d46ea80312f5c060dc60dc00260da00260d800260d600260d400260d200260d000260ce00260cc00260ca00260c06ea800e2b30013370e900a000c4c8c8c8c8c8c8c8c8c8c8c8c0f0cc1b4c1b802ccc1b4c1b8028cc1b4c1b8024cc1b4c1b8020cc1b4c1b801ccc1b4c1b8018cc1b4c1b8014cc1b4c1b8010cc1b4c1b800ccc1b4c1b8008cc1b4c1b8004cc1b4c0f0cc1b4c1b8c1acdd5006a5eb80c1bcc1bc004c1b8004c1b4004c1b0004c1ac004c1a8004c1a4004c1a0004c19c004c198004c194004c180dd5001c56600266e1d20160018991919191919191919191919181e99837183780619837183780599837183780519837183780499837183780419837183780399837183780319837183780299837183780219837183780199837183780119837183780099837181e99837183798361baa00e4bd70183818380009837800983700098368009836000983580098350009834800983400098338009833000983280098301baa0038991919191919191919191919181e998371837806198371837805998371837805198371837804998371837804198371837803998371837803198371837802998371837802198371837801998371837801198371837800998371837983800099837181e99837183798361baa00e4bd7025eb80c1bc004c1b8004c1b4004c1b0004c1ac004c1a8004c1a4004c1a0004c19c004c198004c194004c180dd5001a0ba417482e905d20ba417482e905d20ba417482e905d182f1baa0013061002400c82f8dd7182f182f800991acc004c0b800a2653001001a5eb82006800888966002608a003123233062374e002660c46ea40092f5c065300100180252f5c080088896600200510018cc00400e60cc005330643065002001400c831a246530010059983118318008024c0d000e6eb8c18cc1900050051802800a0b68a9982ca4811165787065637420636f756e74203e3d2030001641606eb8c178c17c00ca60024464b30013001480422b30013001480022900044cdc7244108010204081020408000002416d1598009800a408113370490400219801801980a80144cdc124101010100406600600666e00009203f416c82d8dc4000c888c8cc184c00cdd698310009983098311831800a5eb80c00c006660ba6ea0cdc7000a4000660ba6ea4cc03cc0bcdc6800800a5eb8122232329800919802919198329ba833794940dd718330009983298331833800a5eb816600260366e340062660c86ea4c060004cc190dd49980d180c9b8d0010014bd70454cc181240124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e740016417c4646006b3001304a0018a60103d87a80008981a198329ba80014bd7020c030030019bad3063003911191acc006600260966eb4c19c00694294506144cc02000c8c014c0d8cc19cdd4000a5eb822601e600898103d87a800041846eb8c19cc1a0004cc194dd419b8e00148000cc194dd49980b981b9b8d0010014bd7024446b3001304a002898019181a99833000a5eb822b3001304f002898019181b19833000a5eb822b3001304300289801919ba548010cc1980052f5c1159800980680144cc01c8c8cc19cdd419bca4a06eb8c1a0004cc19cc1a0c1a40052f5c0b30013034371a00313306637526044002660cc6ea4cc0a0c09cdc6800800a5eb822a660c4920124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e7400164184466e95200633066375000297ae08acc004c03000a26600e464660ce6ea0cde5250375c60d0002660ce60d060d200297ae059800981a1b8d0018998331ba9302200133066375266050604e6e340040052f5c1153306249124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e7400164184466e952008330663750b3001337100029040400244006266e04004c0192020418497ae08acc004cdc3a40140051300323374a900519833000a5eb822b30013370e900600144cc0048cdd2a4018660cc00297ae0232330673750600c6eb4c1a0004cc19cc1a0c1a40052f5c064660ce6ea0cde5250375c60d0002660ce60d060d200297ae059800980e9b8d0018998331ba9301a0013306637526603860366e340040052f5c11533062490124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e740016418515980099b874803800a266002466e95200e330660014bd70119198339ba833794940dd718340009983398341834800a5eb8166002603a6e340062660cc6ea4c068004cc198dd49980e180d9b8d0010014bd70454cc18924124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e740016418515980099b874804000a266002466e952010330660014bd70119198339ba833794940dd718340009983398341834800a5eb8166002603a6e340062660cc6ea4c068004cc198dd49980e180d9b8d0010014bd70454cc18924124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e740016418515980099b874804800a246464660d066e9520123306830690014bd701983418349835000a5eb80c004008cc0208c8cc1a0dd419bca4a06eb8c1a4004cc1a0c1a4c1a80052f5c0b30013035371a00313306737526046002660ce6ea4cc0a4c0a0dc6800800a5eb822a660c6920124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e74001641884b3001304c0018a60103d87980008acc004c144006298103d87a80008acc004c114006298103d87b80008acc004c03c006298103d87c80008acc004c038006298103d87d80008a99831a49204d61726b657453657373696f6e2076616c7565206f7574206f662072616e676500164188831106220c4418915980099b874805000a26006466e952014330660014bd70456600266e1d201600289801919ba548058cc1980052f5c115980099b874806000a266002466e952018330660014bd70119198339ba833794940dd718340009983398341834800a5eb8166002603a6e340062660cc6ea4c068004cc198dd49980e180d9b8d0010014bd70454cc18924124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e740016418515330614911c4665656450726f7065727479204944206f7574206f662072616e676500164180830106020c04180830106020c04180830106020c041806eb8c198c19c0184b300133710002904040404040404040400144006266e04004c00920800141746006006375a60b800264660b66ea0cdc7000a4000660b66ea4cc034c0b4dc6800800a5eb80dd7182d982e0021050454cc13924011165787065637420636f756e74203e3d2030001641346e312002454cc111240125657870656374206d61676963203d3d2070726963655f7570646174655f6d616769635f6c650016410c6eb8c124c12800566002600e6e3400626608e6ea4c008004cc11cdd49980298021b8d0010014bd70454cc10d240124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e74001641086eb8c098c110dd5198081191acc004cdc79bae304900148904b9011a8200891919191919191991198289810198289829003998289ba90013305130520024bd70198289829182980125eb80d660026040003125980099b89002371a00313305037526601e004002660a06ea66002005337026e3400400a002b8c25eb822a66098920124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e740016412d153304b4911165787065637420636f756e74203e3d2030001641286eb8c140c144008dd718280021bad304f001323304e375066f29281bae304f0013304e304f30500014bd702cc004c06cdc6800c4cc134dd49804800998269ba93300f300e371a00200297ae08a99824a4924657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e74001641206eb8c134c138004d6600294624b30013371290201b8d0018998261ba93300b48100004cc130dd4cc005204099b80371a002901fc0057184bd70454cc12124124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e740016411d15330474911165787065637420636f756e74203e3d2030001641186eb8c130c134004c0040096600294624b3001337129040009b8d0018998251ba9330094820004004cc128dd4cc00520800199b80371a002903fc0057184bd70454cc11924124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e740016411515330454911165787065637420636f756e74203e3d203000164111153304449126657870656374206d61676963203d3d20736f6c616e615f666f726d61745f6d616769635f6c650016410c6eb8c124c12800566002600e6e3400626608e6ea4c008004cc11cdd49980298021b8d0010014bd70454cc10d240124657870656374206279746561727261792e6c656e67746828627329203e3d20636f756e74001641086eb8c11c024c00d200430034802066004004608000281ea264b300100181ac0d606b035899180198200021bae0014100607a00481d8dd6000c0c606281e0c0e4c0d8dd5000c54cc0d124016465787065637420536f6d652872656465656d657229203d0a2020202070616972732e6765745f66697273742873656c662e72656465656d6572732c205769746864726177285363726970742873746174652e77697468647261775f736372697074292929001640cc6466446600400400244b30010018a60103d87a80008992cc004cdd7802181c000c4c028cc0ecc0e40052f5c1133003003303d00240d8607600281c8dd5981c981d181d181d181d181d181d181d181d181d181b1baa0213374a90021981b98039981b9805181a9baa30383035375400497ae04bd70454cc0cd241ff65787065637420536f6d6528737461746529203d0a202020206c6973742e66696e645f6d6170280a20202020202073656c662e7265666572656e63655f696e707574732c0a202020202020666e28696e70757429207b0a20202020202020206966206173736574732e6861735f6e66745f73747269637428696e7075742e6f75747075742e76616c75652c20707974685f69642c2022507974682053746174652229207b0a202020202020202020202f2f20737461746520746f6b656e206f757473696465206f6620736372697074206164647265737320776f756c6420696d706c792061206275670a202020202020202020206578706563742053637269dc7074285f29203d20696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c0a2020202020202020202065787065637420496e6c696e65446174756d28737461746529203d20696e7075742e6f75747075742e646174756d0a202020202020202020206578706563742073746174653a2050797468203d2073746174650a20202020202020202020536f6d65287374617465290a20202020202020207d20656c7365207b0a202020202020202020204e6f6e650a20202020202020207d0a2020202020207d2c0a2020202029001640c864660020026eb0c05cc0d0dd500f912cc0040062980103d87a80008992cc006600266ebc00530103d87a8000a50a5140cd1001899801801981d0012066325980099912cc00400a2942265300132598009810981c9baa00189bad303a303d3756607a60746ea800629000206e303c0019baf303c303d0019bab003488966002003159800980100344cc01400d20008a5040e51325980099baf303c0014c010140008acc004cc018010dd6981e98201bab303d001898019ba630410028a5040e91598009980300224001130030078a5040e881d0c0fc00503d0ca60020033756603860726ea8c070c0e4dd5002488cc0f4008cc0f4dd3000a5eb810011112cc00400a26600298103d87a80004bd6f7b63044ca60026eb8c0ec0066eacc0f000660800069112cc004c09000e2b300130230038998029808198209ba60024bd70000c4cc01530103d87a800000640f119800803c006446600e0046608666ec0dd48029ba6004001401c81e0607c00481e229422942294103d1ba633038337606ea40c8dd31981c19bb04c10b4a50797468205374617465004c010101004bd6f7b63025eb7bdb1808928c5660026044606a6ea8c0e4c0d8dd5181c981b1baa30193036375400313259800980b981b1baa0018992cc0040062b3001301f3037375400313259800800c0ca264b30010018992cc00400606913259800800c0d626644b300100181bc4c966002003038899912cc00400607513259800800c0ee07703b81dc4c966002608e007159800981518211baa00a8992cc00400607b13259800800c0fa07d03e81f44cc89660020030408992cc004006083041820c4cc89660020030438992cc004006089044822411226644b300100182344c966002003047823c11e264b30013053003899818009912cc00400a26606402444b3001002898121982a80e25eb8226464b30010018992cc00400609f04f827c13e265300100389802982d80341410251bae001416c60aa00504e827413a09c82d0c14c004c15800905444c8c96600200304c82641320991332259800800c660020031300530590068272046827413a09d04e41686eb8004c14c0090581828800982a00120a482420a0375a003047414c60a00028270dd7000982780120a0304d001412c6eb4004c13000a0828268c1280050481bae00130490024128608e0028228c10cdd500540f104040f10441bae001411c60880028210dd5800982180140e20710384110608200281f8dd5800982000140d606b0354104607c00281e0c0f800a067033819c0cd03f181e000a0743038375400303140d5031818c0c606281e8c0e8c0dcdd5000c54cc0d52412e65787065637420496e6c696e65446174756d28737461746529203d20696e7075742e6f75747075742e646174756d001640d06030606c6ea8c064c0d8dd5000c54cc0d124013a65787065637420536372697074285f29203d20696e7075742e6f75747075742e616464726573732e7061796d656e745f63726564656e7469616c001640cd14c103d87a800040cc607000281b088c96600260346eb8c0e4c0e800626072003153303449011b6578706563742028612c20235b5d29203d2073656c662873726329001640cc6004002444b3001301c3034375400713259800800c00a264b30010018992cc00400600913259800800c566002607a00519800801c66002003006802a010802a010802a074802c01600b00540f8607600281c8c0ec00a007003801c00d03c181c800a06e3035375400700140c8444b3001301b3033375400713259800800c00a264b30010018992cc00400600913259800800c4c96600260720031598009804981c000c01a264b3001303e0048992cc004c0880062b3001303b375400d00980420788acc004c09c006264b3001001804c4c96600200300a805402a264b30013042003806402d03f1bad0018052084303f00140f460766ea801a2b3001301b0018acc004c0ecdd5003402601081e201081c103820703039375400b00740ec604a607000281b200c81d0dd5000c01600b005802a07a303a00140e06074005003801c00e00681d8c0e0005036181a1baa003800a0623712900220388138604a6ea8c0a0c094dd500699800802007454cc08d24011a65787065637420536f6d6528646174756d29203d20646174756d001640888110301937540106e1d2000805402a01500a4078603400260346036002602c6ea800e2c8098602a00260206ea805a293454cc03924011856616c696461746f722072657475726e65642066616c7365001365640341", + "hash": "c6e1b648a954f2e78fc0d45fc12a291e638384f59669fbbb2d511a1e" } ], "definitions": { @@ -117,7 +117,7 @@ "title": "PolicyId", "dataType": "bytes" }, - "otypes/OsiDatum": { + "osi/OsiDatum": { "title": "OsiDatum", "anyOf": [ { @@ -137,7 +137,7 @@ } ] }, - "otypes/OsiRedeemers": { + "osi/OsiRedeemers": { "title": "OsiRedeemers", "anyOf": [ { diff --git a/lazer/cardano/our-project/on-chain/validators/osi.ak b/lazer/cardano/our-project/on-chain/validators/osi.ak index 35a9e99d..25766ce5 100644 --- a/lazer/cardano/our-project/on-chain/validators/osi.ak +++ b/lazer/cardano/our-project/on-chain/validators/osi.ak @@ -1,16 +1,25 @@ use aiken/interval use aiken/math/rational -use cardano/address.{Credential, Script} +use cardano/address.{PaymentCredential, Script} use cardano/assets.{PolicyId, lovelace_of} use cardano/transaction.{ - Output, OutputReference, Transaction, find_script_outputs, + Output, OutputReference, Transaction, find_script_outputs, InlineDatum } -use otypes.{Fund, OsiDatum, OsiRedeemers, Payout} use pyth.{Feed, PriceUpdate, get_updates} use types/u32.{U32, from_int} use types/u64 use utils.{quote_price_multiplier} +pub type OsiDatum { + deadline: Int, + payees: Pairs, +} + +pub type OsiRedeemers { + Fund + Payout +} + /// Oracle-settled Invoice validator oracle_settled_invoice(pyth_policy: PolicyId, base_currency: Int) { spend( @@ -23,15 +32,27 @@ validator oracle_settled_invoice(pyth_policy: PolicyId, base_currency: Int) { when redeemer is { Fund -> { + expect Some(input_datum) = datum let in = inputs |> transaction.resolve_input(utxo) expect Script(script_hash) = in.address.payment_credential expect [out] = find_script_outputs(outputs, script_hash) - assets.match(in.value, out.value, <=) + + // Verify that the datum is preserved in the output + expect InlineDatum(data) = out.datum + expect out_datum: OsiDatum = data + + and { + input_datum == out_datum, + lovelace_of(out.value) >= lovelace_of(in.value), + } } Payout -> { expect Some(datum) = datum let OsiDatum { deadline, payees } = datum + let in = inputs |> transaction.resolve_input(utxo) + expect Script(script_hash) = in.address.payment_credential + let spendable_lovelace = lovelace_of(in.value) - tx.fee expect [price_update] = get_updates(pyth_policy, tx) @@ -70,8 +91,8 @@ validator oracle_settled_invoice(pyth_policy: PolicyId, base_currency: Int) { // Price feed must be updated within the transaction's validity range trace_if_false( (tx.validity_range - |> interval.contains(u64.as_int(price_update.timestamp_us)))?, - @"Price feed not updated within transaction validity range", + |> interval.contains(u64.as_int(price_update.timestamp_us) / 1000))?, + @"Price feed not updated within transaction validity range" ), // Payment must be made before the deadline trace_if_false( @@ -79,11 +100,17 @@ validator oracle_settled_invoice(pyth_policy: PolicyId, base_currency: Int) { |> interval.is_entirely_before(deadline))?, @"Payment not made before the deadline", ), - // Payouts must be made to the correct addresses with the correct amounts + // Payouts must be made in datum order, and any remainder must stay in the script trace_if_false( - payouts_match_outputs(payees, outputs, quote_multiplier)?, - @"Payouts do not match expected values based on the price feed", - ), + payouts_and_remaining_match( + payees, + outputs, + quote_multiplier, + Script(script_hash), + spendable_lovelace, + )?, + @"Payout outputs or remaining script funds do not match expected values" + ) } } } @@ -102,24 +129,46 @@ fn trace_if_false(condition: Bool, message: String) -> Bool { } } -fn payouts_match_outputs( - payees: Pairs, +fn payouts_and_remaining_match( + payees: Pairs, outputs: List, quote_multiplier: rational.Rational, + script_credential: PaymentCredential, + remaining_input_lovelace: Int, ) -> Bool { when payees is { - [] -> True + [] -> + if remaining_input_lovelace <= 0 { + True + } else { + when outputs is { + [Output { address, value, .. }, ..] -> + and { + address.payment_credential == script_credential, + lovelace_of(value) >= remaining_input_lovelace, + } + [] -> False + } + } [Pair(payee, quote_amount), ..rest_payees] -> when outputs is { [] -> False [Output { address, value, .. }, ..rest_outputs] -> { expect Some(expected_payout) = rational.div(rational.from_int(quote_amount), quote_multiplier) + let paid_lovelace = lovelace_of(value) and { address.payment_credential == payee, - lovelace_of(value) >= rational.floor(expected_payout), - payouts_match_outputs(rest_payees, rest_outputs, quote_multiplier), + paid_lovelace >= rational.floor(expected_payout), + paid_lovelace <= remaining_input_lovelace, + payouts_and_remaining_match( + rest_payees, + rest_outputs, + quote_multiplier, + script_credential, + remaining_input_lovelace - paid_lovelace, + ), } } } From ca5b345a1361d988b442c379daf23dccc5c69c95 Mon Sep 17 00:00:00 2001 From: a-osiecki Date: Sun, 22 Mar 2026 19:33:51 -0300 Subject: [PATCH 19/21] improve CLI formatting --- .../scripts/add-fund-validator-utxo.ts | 68 ++++++++++++--- .../scripts/create-validator-utxo.ts | 42 ++++++++-- .../off-chain/scripts/spend-validator-utxo.ts | 82 ++++++++++++++----- 3 files changed, 154 insertions(+), 38 deletions(-) diff --git a/lazer/cardano/our-project/off-chain/scripts/add-fund-validator-utxo.ts b/lazer/cardano/our-project/off-chain/scripts/add-fund-validator-utxo.ts index ed8a585c..dc5d3460 100644 --- a/lazer/cardano/our-project/off-chain/scripts/add-fund-validator-utxo.ts +++ b/lazer/cardano/our-project/off-chain/scripts/add-fund-validator-utxo.ts @@ -21,6 +21,18 @@ import { const runtime = await loadRuntimeFromEnv(); +const ANSI = { + reset: "\x1b[0m", + bold: "\x1b[1m", + dim: "\x1b[2m", + green: "\x1b[32m", + yellow: "\x1b[33m", + blue: "\x1b[34m", + magenta: "\x1b[35m", + cyan: "\x1b[36m", + red: "\x1b[31m", +} as const; + // Parse CLI arguments const additionalFundingLovelace = BigInt(process.argv[2] ?? "0"); const targetOutRef = parseCliOutRef(process.argv[3]); @@ -85,24 +97,49 @@ try { .then((built) => built.sign()) .then((signed: any) => signed.submit()); - // Log transaction details - console.log(`Wallet address: ${Address.toBech32(walletAddress)}`); - console.log(`Validator address: ${Address.toBech32(runtime.validator.address)}`); - console.log(`Spent validator input: ${UTxO.toOutRefString(validatorUtxo)}`); + const submittedTxHash = formatTxHash(txHash); + + console.log(""); + console.log( + `${ANSI.bold}${ANSI.green}✅💸 OSI FUND SUCCESS${ANSI.reset}`, + ); + console.log( + `${ANSI.dim}━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━${ANSI.reset}`, + ); + console.log( + `${ANSI.cyan}🔗 Tx hash${ANSI.reset} ${ANSI.bold}${submittedTxHash}${ANSI.reset}`, + ); console.log( - `Previous validator lovelace: ${currentValidatorLovelace.toString()}` + `${ANSI.cyan}📦 Spent script UTxO${ANSI.reset} ${UTxO.toOutRefString(validatorUtxo)}`, ); - console.log(`Added lovelace: ${additionalFundingLovelace.toString()}`); + console.log(""); + console.log(`${ANSI.bold}${ANSI.blue}🏷️ Addresses${ANSI.reset}`); + console.log(`👛 Wallet ${Address.toBech32(walletAddress)}`); + console.log(`🏛️ Validator ${Address.toBech32(runtime.validator.address)}`); + console.log(""); + console.log(`${ANSI.bold}${ANSI.magenta}📊 Value Changes${ANSI.reset}`); + console.log(`• Previous ${formatLovelace(currentValidatorLovelace)}`); console.log( - `New validator lovelace: ${newValidatorLovelace.toString()}` + `• Added ${ANSI.green}+${formatLovelace(additionalFundingLovelace)}${ANSI.reset}`, + ); + console.log( + `• New Total ${ANSI.bold}${ANSI.yellow}${formatLovelace(newValidatorLovelace)}${ANSI.reset}`, + ); + console.log(""); + console.log(`${ANSI.bold}${ANSI.yellow}🚀 Next${ANSI.reset}`); + console.log(`bun run spend-validator-utxo ${submittedTxHash}`); + console.log( + `${ANSI.dim}━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━${ANSI.reset}`, ); - console.log(`Fund tx hash: ${formatTxHash(txHash)}`); - console.log(`Verify with: bun run spend-validator-utxo ${formatTxHash(txHash)}`); } catch (error) { if (error instanceof Error) { - console.error(`Error: ${error.message}`); + console.error( + `${ANSI.bold}${ANSI.red}❌ Oops:${ANSI.reset} ${ANSI.red}${error.message}${ANSI.reset}`, + ); } else { - console.error("Unknown error occurred"); + console.error( + `${ANSI.bold}${ANSI.red}❌ Oops:${ANSI.reset} ${ANSI.red}Unknown error occurred${ANSI.reset}`, + ); } throw error; } @@ -116,3 +153,12 @@ function decodeValidatorDatum(validatorUtxo: UTxO.UTxO) { return decodeOsiDatumData(datumOption.data as Data.Constr); } + +function formatLovelace(value: bigint): string { + const adaWhole = value / 1_000_000n; + const adaFraction = value % 1_000_000n; + + return `${value.toLocaleString()} lovelace (${adaWhole.toLocaleString()}.${adaFraction + .toString() + .padStart(6, "0")} ADA)`; +} diff --git a/lazer/cardano/our-project/off-chain/scripts/create-validator-utxo.ts b/lazer/cardano/our-project/off-chain/scripts/create-validator-utxo.ts index b6c5b13a..d1c8bd5d 100644 --- a/lazer/cardano/our-project/off-chain/scripts/create-validator-utxo.ts +++ b/lazer/cardano/our-project/off-chain/scripts/create-validator-utxo.ts @@ -7,6 +7,16 @@ import { makeVerificationKeyCredential, } from "../osi.ts"; +const ANSI = { + reset: "\x1b[0m", + bold: "\x1b[1m", + dim: "\x1b[2m", + green: "\x1b[32m", + yellow: "\x1b[33m", + blue: "\x1b[34m", + cyan: "\x1b[36m", +} as const; + const runtime = await loadRuntimeFromEnv(); const walletAddress = await runtime.client.address(); const validatorAddressBech32 = Address.toBech32(runtime.validator.address); @@ -36,11 +46,31 @@ const txHash = await runtime.client .then((built) => built.sign()) .then((signed) => signed.submit()); -console.log(`Wallet address: ${Address.toBech32(walletAddress)}`); -console.log(`Validator address: ${validatorAddressBech32}`); -console.log(`Funded lovelace: ${runtime.fundingLovelace.toString()}`); -console.log(`Datum deadline: ${datum.deadline.toString()}`); -console.log(`Create tx hash: ${formatTxHash(txHash)}`); +const createdTxHash = formatTxHash(txHash); + +console.log(""); +console.log(`${ANSI.bold}${ANSI.green}🆕💰 OSI CREATED${ANSI.reset}`); +console.log( + `${ANSI.dim}━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━${ANSI.reset}`, +); +console.log(`${ANSI.cyan}🔗 Tx hash${ANSI.reset} ${ANSI.bold}${createdTxHash}${ANSI.reset}`); +console.log(`${ANSI.cyan}👛 Wallet${ANSI.reset} ${Address.toBech32(walletAddress)}`); +console.log(`${ANSI.cyan}🏛️ Validator${ANSI.reset} ${validatorAddressBech32}`); +console.log(`${ANSI.cyan}💵 Funded${ANSI.reset} ${formatLovelace(runtime.fundingLovelace)}`); +console.log(`${ANSI.cyan}⏰ Deadline${ANSI.reset} ${datum.deadline.toString()}`); +console.log(`${ANSI.cyan}👥 Payees${ANSI.reset} ${payees.length.toString()}`); +console.log(""); +console.log(`${ANSI.bold}${ANSI.yellow}🚀 Next${ANSI.reset}`); +console.log(`bun run spend-validator-utxo ${createdTxHash}`); console.log( - `Verify with: bun run spend-validator-utxo ${formatTxHash(txHash)}`, + `${ANSI.dim}━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━${ANSI.reset}`, ); + +function formatLovelace(value: bigint): string { + const adaWhole = value / 1_000_000n; + const adaFraction = value % 1_000_000n; + + return `${value.toLocaleString()} lovelace (${adaWhole.toLocaleString()}.${adaFraction + .toString() + .padStart(6, "0")} ADA)`; +} diff --git a/lazer/cardano/our-project/off-chain/scripts/spend-validator-utxo.ts b/lazer/cardano/our-project/off-chain/scripts/spend-validator-utxo.ts index 4618c3ec..f118dffd 100644 --- a/lazer/cardano/our-project/off-chain/scripts/spend-validator-utxo.ts +++ b/lazer/cardano/our-project/off-chain/scripts/spend-validator-utxo.ts @@ -31,6 +31,18 @@ import { } from "../osi.ts"; import type { ParsedFeedPayload } from "@pythnetwork/pyth-lazer-sdk"; +const ANSI = { + reset: "\x1b[0m", + bold: "\x1b[1m", + dim: "\x1b[2m", + green: "\x1b[32m", + yellow: "\x1b[33m", + blue: "\x1b[34m", + magenta: "\x1b[35m", + cyan: "\x1b[36m", + red: "\x1b[31m", +} as const; + const runtime = await loadRuntimeFromEnv(); const lazerToken = readLazerToken(); const targetOutRef = parseCliOutRef(process.argv[2]); @@ -59,11 +71,12 @@ const loggingEvaluator = { additionalUtxos: ReadonlyArray | undefined, ) => Effect.gen(function* () { - console.log("Evaluation tx cbor hex:"); + console.log(`${ANSI.bold}${ANSI.blue}🧪 Evaluation${ANSI.reset}`); + console.log(`${ANSI.cyan}CBOR${ANSI.reset}`); console.log(Transaction.toCBORHex(tx)); if (additionalUtxos && additionalUtxos.length > 0) { - console.log("Evaluation additional UTxOs:"); + console.log(`${ANSI.cyan}Additional UTxOs${ANSI.reset}`); console.dir(additionalUtxos.map(UTxO.toOutRefString), { depth: null, colors: true, @@ -74,25 +87,18 @@ const loggingEvaluator = { }), } as const; +console.log(""); +console.log(`${ANSI.bold}${ANSI.blue}⚙️ OSI PAYOUT CONTEXT${ANSI.reset}`); console.log( - `Validator address: ${Address.toBech32(runtime.validator.address)}`, -); -console.log(`Spent validator input: ${UTxO.toOutRefString(validatorUtxo)}`); -console.log(`Pyth state input: ${UTxO.toOutRefString(pythState)}`); -console.log(`Pyth withdraw script hash: ${pythWithdrawScriptHash}`); -console.log(`Primary feed id: ${runtime.feedId}`); -console.log(`Query feed ids: ${runtime.queryFeedIds.join(", ")}`); -console.log(`Signed update hex: ${pythUpdate.signedUpdateHex}`); -console.dir({ parsed: pythUpdate.parsed }, { depth: null, colors: true }); -console.dir( - { - paymentOutputs: paymentOutputs.map(({ address, lovelace }) => ({ - address: Address.toBech32(address), - lovelace: lovelace.toString(), - })), - }, - { depth: null, colors: true }, + `${ANSI.dim}━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━${ANSI.reset}`, ); +console.log(`🏛️ Validator ${Address.toBech32(runtime.validator.address)}`); +console.log(`📦 Input UTxO ${UTxO.toOutRefString(validatorUtxo)}`); +console.log(`🔐 Pyth State ${UTxO.toOutRefString(pythState)}`); +console.log(`🧾 Withdraw SH ${pythWithdrawScriptHash}`); +console.log(`📈 Feed IDs ${runtime.feedId} (primary) | ${runtime.queryFeedIds.join(", ")}`); +console.log(`🛰️ Update Hex ${pythUpdate.signedUpdateHex}`); +console.log(""); try { let builder = runtime.client @@ -137,15 +143,40 @@ try { }); } + const remainingLovelace = + validatorUtxo.assets.lovelace > totalPaymentLvc + ? validatorUtxo.assets.lovelace - totalPaymentLvc + : 0n; + const txHash = await builder .build({ - evaluator: loggingEvaluator as never, }) .then((built) => built.sign()) .then((signed) => signed.submit()); - console.log(`Spend tx hash: ${formatTxHash(txHash)}`); + const spendTxHash = formatTxHash(txHash); + + console.log(""); + console.log(`${ANSI.bold}${ANSI.green}✅💸 OSI PAYOUT SUCCESS${ANSI.reset}`); + console.log( + `${ANSI.dim}━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━${ANSI.reset}`, + ); + console.log(`${ANSI.cyan}🔗 Tx hash${ANSI.reset} ${ANSI.bold}${spendTxHash}${ANSI.reset}`); + console.log(`${ANSI.cyan}📤 Paid out${ANSI.reset} ${formatLovelace(totalPaymentLvc)}`); + console.log(`${ANSI.cyan}🏦 Remaining${ANSI.reset} ${formatLovelace(remainingLovelace)}`); + console.log( + `${ANSI.dim}━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━${ANSI.reset}`, + ); } catch (error) { + if (error instanceof Error) { + console.error( + `${ANSI.bold}${ANSI.red}❌ Oops:${ANSI.reset} ${ANSI.red}${error.message}${ANSI.reset}`, + ); + } else { + console.error( + `${ANSI.bold}${ANSI.red}❌ Oops:${ANSI.reset} ${ANSI.red}Unknown error occurred${ANSI.reset}`, + ); + } logDetailedError(error); throw error; } @@ -218,3 +249,12 @@ function computeLovelacePayout( const scale = 10n ** BigInt(baseExponent - quoteExponent); return (quoteAmount * quotePrice) / (basePrice * scale); } + +function formatLovelace(value: bigint): string { + const adaWhole = value / 1_000_000n; + const adaFraction = value % 1_000_000n; + + return `${value.toLocaleString()} lovelace (${adaWhole.toLocaleString()}.${adaFraction + .toString() + .padStart(6, "0")} ADA)`; +} From cad22d1ca5a0b5313555c4ced6b99d224627e171 Mon Sep 17 00:00:00 2001 From: Lola Aimar Date: Sun, 22 Mar 2026 20:32:37 -0300 Subject: [PATCH 20/21] update readme --- lazer/cardano/our-project/README.md | 111 ++++++++++- lazer/cardano/our-project/img/add_funds.png | Bin 0 -> 101463 bytes .../cardano/our-project/img/create_escrow.png | Bin 0 -> 52582 bytes lazer/cardano/our-project/img/pay_out.png | Bin 0 -> 126095 bytes lazer/cardano/our-project/img/web.png | Bin 0 -> 656888 bytes lazer/cardano/our-project/off-chain/e2e.ts | 2 +- .../scripts/create-validator-utxo.ts | 10 +- .../off-chain/scripts/spend-validator-utxo.ts | 3 +- lazer/cardano/our-project/on-chain/aiken.lock | 2 +- lazer/cardano/our-project/web-ui/.env.example | 3 - lazer/cardano/our-project/web-ui/.gitignore | 4 - .../web-ui/app/components/osi-panel.tsx | 59 ------ .../web-ui/app/components/site-header.tsx | 30 --- .../our-project/web-ui/app/globals.css | 176 ----------------- .../cardano/our-project/web-ui/app/layout.tsx | 19 -- lazer/cardano/our-project/web-ui/app/page.tsx | 187 ------------------ lazer/cardano/our-project/web-ui/app/types.ts | 5 - .../cardano/our-project/web-ui/next-env.d.ts | 6 - lazer/cardano/our-project/web-ui/package.json | 22 --- .../cardano/our-project/web-ui/tsconfig.json | 20 -- 20 files changed, 109 insertions(+), 550 deletions(-) create mode 100644 lazer/cardano/our-project/img/add_funds.png create mode 100644 lazer/cardano/our-project/img/create_escrow.png create mode 100644 lazer/cardano/our-project/img/pay_out.png create mode 100644 lazer/cardano/our-project/img/web.png delete mode 100644 lazer/cardano/our-project/web-ui/.env.example delete mode 100644 lazer/cardano/our-project/web-ui/.gitignore delete mode 100644 lazer/cardano/our-project/web-ui/app/components/osi-panel.tsx delete mode 100644 lazer/cardano/our-project/web-ui/app/components/site-header.tsx delete mode 100644 lazer/cardano/our-project/web-ui/app/globals.css delete mode 100644 lazer/cardano/our-project/web-ui/app/layout.tsx delete mode 100644 lazer/cardano/our-project/web-ui/app/page.tsx delete mode 100644 lazer/cardano/our-project/web-ui/app/types.ts delete mode 100644 lazer/cardano/our-project/web-ui/next-env.d.ts delete mode 100644 lazer/cardano/our-project/web-ui/package.json delete mode 100644 lazer/cardano/our-project/web-ui/tsconfig.json diff --git a/lazer/cardano/our-project/README.md b/lazer/cardano/our-project/README.md index 194e7b34..dc65ffb8 100644 --- a/lazer/cardano/our-project/README.md +++ b/lazer/cardano/our-project/README.md @@ -4,7 +4,45 @@ Oracle-Settled Invoice is a Cardano escrow that locks one asset and settles a li This project is a practical blueprint for building oracle-driven settlement flows on Cardano with Pyth. It combines Aiken on-chain validators with a typeScript off-chain client, so you can go from contract logic to real transaction execution with minimal setup. -## Quick Start +## Sections + +- [Introduction](../OSI/README.md#introduction) +- [Project structure](../OSI/README.md#project-structure) +- [Setup](../OSI/README.md#setup) +- [Running instructions](../OSI/README.md#running-instructions) + - [CLI](../OSI/README.md#1-run-the-cli) + - [Web page](../OSI/README.md#2-run-the-webpage) + +## Introduction + +This project addresses a common payments challenge: obligations are often defined in one currency, while treasury and disbursement happen in another. In OSI (Oracle-Settled Invoice), the payable amount is denominated in a quote asset (USDT in this PoC), but settlement is executed in ADA using real-time oracle conversion. + +For this proof-of-concept, we use the USDT/USD and ADA/USD feeds. At settlement time, the transaction consumes signed Pyth price updates and computes the ADA amount required to satisfy each USDT-denominated payout. This enables deterministic and transparent cross-currency settlement directly on-chain. + +The `off-chain` component in OSI/off-chain/e2e.ts uses Pyth’s SDK to fetch signed price updates and Evolution SDK to construct the transaction. The `on-chain` validator in OSI/on-chain/validators/osi.ak, using Pyth’s Aiken library, verifies those updates at execution time (including authenticity and timing) before allowing payout. This ensures the ADA delivered matches the expected USDT value according to trusted oracle data, reducing exchange-rate dispute risk between payer and payee. + +The same pattern can support many real use cases, such as: + +- payroll where compensation is defined in USD but paid in ADA; +- vendor invoices denominated in fiat and settled in crypto; +- scheduled future payments indexed to a CNT pegged to an RWA, while settlement occurs in another on-chain asset. + +## Project structure + +```bash +lazer/cardano/OSI/ +├── on-chain/ +├── off-chain/ +├── web-ui/ +└── README.md +``` + +- `on-chain`: smart contract implementation +- `off-chain`: transaction building and connection with Pyth +- `web-ui`: dApp connection with browser wallet (Eternl recommended) +- `README.md`: project explanation and running instructions + +## Setup ### 1. Build contracts @@ -13,20 +51,73 @@ cd on-chain aiken build ``` -### 2. Install off-chain deps +### 2. Set environment variables + +Create a `.env` file in the `off-chain` directory with the following variables: + +- `LAZER_TOKEN` - The token that provides access to the Pyth API. +- `NETWORK` - Cardano network (recommended `preprod`) +- `PROVIDER_TYPE` - Cardano provider (recommended Blockfrost) +- `BLOCKFROST_BASE_URL` - The base URL for the Blockfrost API. For preprod, this is `https://cardano-preprod.blockfrost.io/api/v0`. +- `BLOCKFROST_PROJECT_ID` - Your Blockfrost project ID for the preprod network. +- `WALLET_MNEMONIC` - The mnemonic phrase for the wallet that will be used to interact with the contracts. This wallet should have some ADA on the preprod network. +- `PYTH_POLICY_ID` - The policy ID of the Pyth on the Cardano preprod network. + +### 3. Install off-chain deps ```bash cd off-chain bun install ``` -### 3. Set environment variables +## Running instructions -Create a `.env` file in the `off-chain` directory with the following variables: +There are two ways to interact with the dApp: -- `LAZER_TOKEN` - The asset name of the Lazer token that provides access to Pyth. -- `WALLET_MNEMONIC` - The mnemonic phrase for the wallet that will be used to interact with the contracts. This wallet should have some ADA on the preprod network. -- `PYTH_POLICY_ID` - The policy ID of the Pyth on the Cardano preprod network. -- `BLOCKFROST_BASE_URL` - The base URL for the Blockfrost API. For preprod, this is `https://cardano-preprod.blockfrost.io/api/v0`. -- `BLOCKFROST_PROJECT_ID` - Your Blockfrost project ID for the preprod network. -- `BASE_CURRENCY` - The number of decimal places for the base currency (e.g., 8 for USDT). +### 1. Run the CLI + +The CLI allows the creation and payout of the escrows. + +#### 1.1 Start the escrow + +Creates an UTxO allocating minAda and including the list of payees in the datum + +```bash +bun run create-validator-utxo +``` + +![Create escrow](../OSI/img/create_escrow.png) + +#### 1.2 Fund the escrow + +Adds the funds to pay out later + +```bash +bun run add-fund-validator-utxo +``` + +![Fund escrow](../OSI/img/add_funds.png) + +#### 1.3 Pay out + +Pays out the expected amount of ADA to the payees specified in the datum + +```bash +bun run spend-validator-utxo +``` + +![Pay out](../OSI/img/pay_out.png) + +### 2. [Experimental] Run the webpage + +Lift a webpage that will be available on `localhost:3000`. + +```bash +cd web-ui +bun install +bun run dev +``` + +![Web](../OSI/img/web.png) + +The web implementation can be accessed on [this branch](https://github.com/lolaaimar/pyth-examples/tree/integration). \ No newline at end of file diff --git a/lazer/cardano/our-project/img/add_funds.png b/lazer/cardano/our-project/img/add_funds.png new file mode 100644 index 0000000000000000000000000000000000000000..7f653e047a0b7e2de825fbe8aadd5d31240e3f47 GIT binary patch literal 101463 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 NilX|10{Lfe{tr%7z=r?; literal 0 HcmV?d00001 diff --git a/lazer/cardano/our-project/img/create_escrow.png b/lazer/cardano/our-project/img/create_escrow.png new file mode 100644 index 0000000000000000000000000000000000000000..e6f6c0452caa7ff970f70bae0a07323d4f64319c GIT binary patch literal 52582 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%0Alzj~hu2}Hy_uTTJ_%x`WvOo4Zg0xj+WjbYW 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

BgBr0!0zS1wy;rRwLoJ>}cPD9u&@zhC0vF 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 literal 0 HcmV?d00001 diff --git a/lazer/cardano/our-project/img/pay_out.png b/lazer/cardano/our-project/img/pay_out.png new file mode 100644 index 0000000000000000000000000000000000000000..70cf19cdd4e29dfece98d48761559eceb71ba4e2 GIT binary patch literal 126095 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

p5PC4p_?`@*`hu$$2rtqB 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 z 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�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 z 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 J#aAtY{s-OAChh2 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

~Wp80*66i2-{dFwR->l8UPim z*J+qi?vB#xy>a{DDpw0UwmYm*qdBm`t>)-ZM}z*`H2VsuSwZV0MQ(mc$^+;66uN>F0MVzOdY8HT<1DRX{1Q0f3X_Ow)Px*Tzy`exkmJMa2 z{nkdvZLvdIS1k<;R5eEvu=^S?PEKYG=&6WYI_E-b{=@ z&(B#Zr46ol93kq&EaHZx`Q^67WMpI}5}JZL|1OFzUI#TvW_%L_Z=mFcUusvF^D7=_Bjafcrs3gXQJr z&w+fwHTch=;o;hPdhdXBhsFp2BMIU$HK9NsR_K$76+Q9oJJu{d39L{10bjp6qM#o{ZL)~0GJ4@sn0 zfEKf}X7D3G`F486W`35&Kw-7qsvF|%Yt!|H&W)rBh};2*QzcE-7;uG;kR%BBvRz-Y z#P}zxFlZBURG9%;mQlX<2{;f)z>7a*WB`731}FtMpjgMVL8TciIt?v00>a5qLx5iZ z=oFB2nGL#l>C*0en83GjldncVoQFy)w%`WiRjwI++8--3v$O5UhXmgr&6Mnlz>q!h zkalAlNXUX596+2h)KI`zIe9}7;s+6%TYexAF{uGEDG%KL2_RsQtO!Xpz-}={?%~j6 zKuo6HGUS@9ryl`ohbJhp;vfhC5}sDMoi?iNr+B;MB7PO9ViJ2xIApz+HyxeB9aD*q(tO zk(r>*WQb}w$cLin{=RoOvy=`HlGQ7nraVA}f*be|V7Hxn%2rBBp>+I4xll0)L|ce6 z0EpNH{txljRQSv-e>S|q46xJCq|Ep$B(s?l&E|zU!%#;wf)PlkK91k}L*kKWqej&3&VaCZRH07@{ptwAPj<x{yWvb!d9&$^{=L;yZr>M z!hxzX_rDhz`tUwxc=ta#!~bem`tJ+=k5T^*&4Qx734>7+tu>}AeF)lKPCb}jFy`k1 z>cP#a^r4u`K$@f##qc_K)$-DX^~hQ$6wxKTxrO>daZN%fMF}n*v;HU^hzxdiO13#C ze~pml3b&5!_bto!C{)_<6E7{dxD3*V6Xvx1{f*M8n`LEh1^*EfKW5IQ!2*-Ux@4{x zITQjx*EZ*up#({LYr%kyz##{$Ni{jltA#ZMlF3x(`LVmwFz+@q;e4a&-xw^PXlR(*=KNZ~ zpsQE5S9f-IdE(|b*unWA=6A!B0ZzPl!AU-@`{MnqS;FJw>YthfbQ>4;u2R_5D_69> zpIMX(xpzH1-5g^x3-XXFTKvLgWrM$la`(I&9}Ea+or{`>1&5Div!!*98S+^t^v0Q^ zPXu8L=?Zvt$VR^=ZDi{vb7IuGGG6Z@*pJRmMTtHA!ja>xpGJA@rpun+_{`J2?zhRJ zfz-Ur?0z2?IB{JeKcj;XSN1gW+)&(F?GA1{JS#=1VRg7#6+i8sBi|@e{mAu{%%~v~ zVkV!t7VpC)K<6`Ut-{E4`~7}j8vmaaMb5)Etl_$M?~<|FN6{aT|8mpWu4o*USw`M|C1TH# zzo57DxJz%xX^>0aXJAk*GO1Opg_EuWe)z-wvxgeC0?C#%mG8A?@W`O(CE|B_PKB`6 z!od2P)wm?ay!(XTT3b1|xh3U!0*z6$1sHlx9YtJ!QMAE~SJ-Fn7+v{Sn(FNqWoDad z2Bm?T4VdvY(R1rFhF~cRzhq|mPbh!pIbz9P5X{+Gd4p22Y|zX>uj&oCva_?tclhg4 z7qr$=%$7L6iSJ$-=!j3n+Zp|{)jI+TEh$3d5x3(ak{?XG*Zh7^Vz)&X%ZjAL=+eT*MUBxpV3Zr#yE% z9t3DrYrL}#Ak{0BC>dCW+pS^>lIVEJigGA}j5i)RjH0<2i!m_+s%!Zr_UORy@zTb! z!5^W18`YZko*zpjw_^0iDfe*c)UIa|k6JV$Ef`d)$=F|J56jBzpiQnQO2jp#-wX|v zjmoOGi?!FvFo?aV&pc6QdqUq)6s&)z@nO*wy8KgOMrjM)VC}!DFoBZqj7;cE<3_+% z>BR0n!bAfsEYjoPapB%~nfEe88oQy!v=Qf|iq)@C7RXEvmNnEk<{@{T#zS_FoM%H! z8y!(m#jh<)qgu^JHs5KESNRl>H@cl;5>}9G3BA_4-$xY1W=8K07idQft_=OrsafvS z^38#8CH&MBW|x0z{JV8<@GG!X#)%^E=N~LoEt&i*T6`txJdFme$>j!n8w>fmMITu3 z(^>N8R#!Y63ImNx@67}@vUR`9V}0X(MAW=#GEAVRcXL2125$0b7rvL3Sy!(g$8=&a z*)l}(+r~!ch!VH0(f348(yoZML}8tV#$cH}`dDwWj9QLrT0e7TCUSn|< zO%lPCD*EoV_CsS>dhyZ&fhw*^H*qA4uZ@>(1T~NYOZHgBc@=A_H_tKdjlyF7I;!H6U7JgIHT2bej75*-|_&p@S=ItG)YaX1+P`56XX!nQU zX1L(tGGeentEY3&ZstHV+{g2eSLax>s5j5(x3NfG&6=Lt&}ljFEOW%BI+Sp~(*9Z? zKvFJkAe*H5iz>&q@YpWD5B#KGbl|oQUw5UE+kDaYCDk3#;K8y!Gr^-v#p7~_kP`!W zf$`Ug4U!rMI(fLLQW(0T8{!(m-G(^g>p02gI98#oU0{^KV!Sc%vHjGt9IC$PT%+^g zLgWrcWR7-9E^QZQl0)sf3GErsQG^~WZeR;+g|N##WA3XHr3LaNqOHs(D!w!zO=B9J ze+`{2Y{Y#q?T1de^T>@v*w{wsWus-&4D+jhH5tEO20baNj~)%YtCSn+n2W@P>&h<& z>rTf2z<8(LvV^t4fWPqWf#5V2uol|*8wY?ACn*+pCHHUqNValkMA8j=EmwS2j!nn9 zJ)W}y)Xk5dAeF;6SgRvIf%6@=ZvNXWzD@MD`2s)B0gz6OuOb%T1sd0?7a58U)0_6j z_dk15J5p)eRVG08;&3vnPutN6%W1ur8;U4G9++)v9*~8nEYVn+p>A_V~)-GxzxPEAAsbuFKxrrYGgH7)x1m z!RU1YH*q7ySzS+``jUD(LuKG5$g=(R*cyCl1VthT|N1=MpLezD+tJ6zm)Z^$M3b~# zH_u4=FTQhfnrt$LH30Wm8!cBuYL&K?*EHyyJ4eEFOL`u>VYB`I2Yz=wDZ@j77?(&~ z`@p-sxLZhd;GopK^w3NZLb8B80>;N!gV)4orBPp2H(yJleGela$z78C4<5scy&g^< z_Z^H|^R+mnJV5`+A$+hjcZV^Y>huo`(}LXB4MVv1O@+u9YQCK7k$bKPuxUdLCltyE zcw>XoJvckttuCh$?$v$8siEA6<1bIhgyJ4GdaHgE5)#4)`s^BOp!z&(8g1ycU!RU2 zYgeG3pO1}-x~`Z{cOkv$F2ZrFfoDd1j<&_JRDXBf5M_y@raIfPnV6 zF_hlxxcap?YdYcZ^@k5?oFClSMH~n8W_rnN-6F0g21SXchXzr@w4R55)b8WXskf_j zJQLV@N1Rs&RwpC@fsUh9n82!3$F%0MP?pFB!QM>xZlk( z1wb?wS!dI-_^vgXip}VmzTQ+EuRQt~XxONNw7h-A!!OBNNl|r=v!W%c*c~gt`N>y% zZQAczyCCRJTaXnH6;qQPH}9gGp|uyb?b8& zAoKp@$vq;L7B^ICZ$m+OinGlBPhOo;QO7ZU#XF2D5^XNk{Kb2{sT-!GYEQavV=hhQHD&q$VXPv z@aTDMMC8`yO+7l z5BW@LAi)Wl`DL-O0xs(%E&p0k(ay^~!^pyjTbdwTJVp;Bd;2@;_a)^Y<}y)AAYj#D)rr9)x6k!X~wsZnc$iImL%IZqxA&+nD+nt$=@k zbL3AUvVfTLR9>$k+*c@5VT4riz&0;We|&FUDs$K#foXow zKI!=UIoZxj*&-`D({{=^)me>1NcNEg9S9gxUsY%^zP@$KcMnk6#Z9S1g3?FB!8g!# z@5YP4rKo}+`dYi2PQ~($m8olD)Z9=VMfVP1JRb0NFDfqj!c(3o2&LH-ZO?}k7hRlV zAp%?X{RkH;cN{hX(W$1v`rOoLZeWD_jHiNqx%1$C05G5t$G^7&F$XU15TFo5c0q`)(3GeabQMK8WoBIRp@YCpW89oth zaQ*ccc7dDF0^}|TGD;k}25X;=WurK`-|4W|HSbYrs#By%oN(3*`zE&1ZmLr|0pE~$ zzspp)ys5wvgF+dDl_wFWLE~UPL5{bZjsr-0Uu`rQ=jSg8J2z|KC7O_v4`~kOn7_! z2iX&8Tb$%v!ArxnM41Eh4-V~er7E@+Kqn<#S9@lhbH0u^juw&wHU`NjLTCdHE#n$q zvpyaaij>RLAG}qKWf8Ida536#x=rGzsH(~MjZZJpg1AKS^qC%IHQU@HyuXN(30eF~QSS2K--#U0 zK3d366B$kWS0bnWKK4K819K7SEQcj0B5%~zTT(UUadDZ1Edg5qq`RJu=GXXP#dK|x zl0eT`>~W#*5_^%VBqiupkBqS6SU%ze@_0cdlFD^i^ceXolRa76loHFLXzjpc8xh@I*@uMbH zE)9C2P2l_*mpT7b3kT5x43=V6Ml`9YO!L>NO;-NW3?6fzeI%})2OT;f5ia91O<_<4 z&GAdsTlk9wvGW&Q*h>w36n~{9vr6;o$MkBdm_6LwkUv}2CaeSvErk;-Z!ZRca=s%Z%RoyporI-am zz}VW}fa;06$Mz2nxH!eD{*~0h)kXjFo)8y%SQaa--^yF(>(U%BuM&c`C>ih4kZAwi}RBF=VaKCxDQ=W zxO~Q)`Z^@qOt{NZxU;>Tt+e$<(lBTRUmcc!#jt=z>aSb0i;t8w?F{k$>cy}?!hn70@f7UW>%#)vAcgX#e2T74sLVaxIA&KJAV&UT<#tw{&* zUX2h2Icvw=8Xr~D$eWoKIs*1?Ur|&m&AF!;5_m87AxV( zD2YM$bdJ!2GiP334*VxWXp(!?5_K!&rV41oI(Cd~zIiM3v)SAIGoNX%v$I3xGIKwh ze{SwdB$U)^xmc zmiytcD_Pu)^C&PgNMxc5dweVUtb8{?0jY} z_3ZK$3bPoh9H9lY5TdknVr>gg6Vp8FBc0UCUoc$!<%>5c$9i)q|MN|Nm2cl(3v1<# zevM?2ZdapLdU*f-2R7XbFF8{=0)gI1>cq=?pb03Z-%Ly6jt$j6yBAcD0_OZ0>NScQ zTg4QCuE$zv$HVB4-lx>U<2veo@Poy2J+F{>HKNR6&8xQlYwJumfk5OLjO|o1`{({o z%u4088L1_!4kc1e2%Y}lHi>UXD=OHk(C8vM!zx=C_oZj z9ghU|Bm|7A-WI_ewl>utRev?A4A|Qg2=1FL2@Brw%93!| zky4@OFYO987Vur4yg!kh?FC8qj)+(HPJ1q6^wS#y()Fdfz9D|eP@JmpGRHjrl#M5P z!CT18L7TqSiH*3`cx`(n_Ou)pzeh-6pDr7dNXHVr`Ua}1CC8$n5(^uBKDtPhK6xoaFUWm$?&P|`dbUX88EFsAeb-#v$zGi8s{45oU@ zC~WqTTkCW*n|63^zU>h{57fns9o#{u)3>Sv3>qWWK9A~u_LU@4n`e)eT6_dw?&yD} zIB=rAw#&TYSu=9!z<*EL%Gx?0ve~Taijb_V>`~@pa!s~8t^SLi;2Ms|!+`UC>{DNN zj>i19tCT}moen3^qQuW1&q|56PrsSk?yXyUv-U>|!k&U|(nqEkkx89D+45m=*eQcVrCuW8*j+;%IsV>Xe;x#CPwKrr&YaMnyoM{t6J9Kp+{Qae} zb8-ZQg=508V*-8@EZ)n3pgxzVg&=G#iLYcvm);7R0M**l)4P-#t+IX_FIkOUCCIoM z`;P&&iAgozw>B33SWx@YZQ><*-mv8O(LsXRQ{<<-+m|BrT-m@=S(Gq6*L^A@zbS;( zQku*$|M@dHvu_6bK6k~Ed}=?xikf@+y%KHmE-|s~0gc?i_8z@}!5@|NyZDb-7QeYv zzl}E3Mji9bn;Ck0bynio@49BKp|swhzsiq$@B&Z7XPha~_pwTR)$%;*7|evwrMnP$ zv`ng6W}<&O%qLbpP`qw-xBUXBY+4i@g*YRGA_6w4Hwgj(%$VZ3k^_CLk2`k$%R*!` zlPR3#8#*ZjL8?SCV!(qLl%RWPEw5#dIqZD1L}P$#+YyP*=%~ZjFQq?Nd^K5YPKAT{ zO+8(tnR&}X)!Ml7kFkyEh;uh=q!A2#{=E|7#8yg+%DM2WwfwNnG3V(w<<)(laq+*l z4ID-NX%R^{mki%a*dH6lEX*`|sF(Y>TUwrUMs(v`ntcRXNi?#5996q&qb(&#F_)ga zFCAPfi$+k#`wJkD9^gsucS7x{YKqN2I&OpdW;hRG>!t=t$b~LWK7Cq(!jIJjwvgN$t^E@}I$|*0V3a7CbJP0?63Wuo|+vs{2N*rtCkFAa0 zdEBO5S@_wOBQ2scPjS+Bf^UpqqXJ9w{>&wgUBa3zb>Un(@eL`_o;N3b)Udt5C*s#= zU@|JlX(G=qI69MLcnzwqq!BC8vtSc-`dEEC5Ob`6>HPKo1=!w<6C<79n}8psb_m_M z6H48Opf&N>2`d552l_7^9o-lyGNpu79X%)h_$Jms>+IW-K z&>D0WlXs#c+c(?mPqQABHiD({^m0b0Oq_8rtZ-^w(j{MoPkRcG4?fe(uludHs}O%1Zy3Ve(Xy9tV$v@K{Fls^a{M?rI5vY( zfhQDLHjgI-foqgV&VWux)c~Aw&#@h7?9`XXaumKw+3tr=z%W{pYHv4n5@lOq?WN{;? z77jU5r1wgKKzk=g%8LN}7!B)DNTikHOxzph(!+{FP?r8NB392xk01_k11{zquuvc< zV>~Z(G(EQIH}jHaVcyv^w6dNsT(w7k^wK6x8-67+Jp5_*2w%Tj1fRr7Y~6~8_pmeb zbD8#$xnd?%Gp5m7u-G>@y5Z`CCk4Ovw*8M#3z}B4vb*6x1sa>WcM!0Rq; zNPAN3y(?vioZ7kMzm?V)TF`c^NB~J<@rael5CD1M8S{L;1L#Dmf5` zbY3(Yqgt;jz)L+h_1F>g_U?U9wT7u=!1jrgdPXKNC7|WaD4-YZGDfr37$7Gj6W$%@ z&GqV)nn!dku zPK?rrQn2DO2dSBLp}<8$%7-!&J970kx+YO_L9oxghdr^5Q zUk>~*W~4kn3smdPDtpz^?MlZb=CS`3ESev+4-E-_B~@E7b$$9>y$UVXy#M87AW;PS zbnXQK76jTzo-SnfR&8b*y5iR0$6-zeo>F_G0b<|lu`I&^NwTG`mt^-|BOHe+_}T|f zvL1bD|1l7s8a}8hbE2_kMc3PH?NTOAcArc$M;UJ#I>A?s3S1zBNV9?_*2*o#0TO~H%=`dc$kR z$Nb0hauy1OOkREBE$Qa3olV);f8b0)`>zkGB<;)xD_s31BXE`6WJR=imJ1&2FSgZA zo${JGCpNh+H{!l=G)pXOpJ>}#n`52J8dAJxODKP7-tl-~y%fWuS2@SvFqZE`AFxJY za{|`js<;*eVgJD{+H6Ax-z1QJE6B0#!IcTzvt+`HGe!q_YICJLm=jf(5RELOgrkP5 zHnK;QRrYKB;wwRXRXdkVzp#tJ;rQaUTZWjTc5&DnRP(N!@oRTgi3i44mFHE8T zB#qn_XN2TD#T5pI=3oRVva7nJM7{1uM~e$a246m~w@PGb3L$^D*pH@Zpsf8~Cq!Oy zH~kF4O#TpIltZ%m71kp5Y1IFHds?Uw()-;|cvxUdgqUaT0b` zL^tiL));}l>1haagr=%wd4LZauPNA(WUsg_XTsJr1N`&@I=^u^N~UDP#4ph^WIKH6 zus-f7dULpHj_gahwx0o?jcZpZnK>r)w9};fBX+2zYTI=en+<@Wy?*7v{s5*iq5!cM zV6;c$+|;k!b~_|yC%I{_9QV=HfukqwQry$+qWC!?4PU$8(bfa+Bj>a~TjJly+ey4u z2t2f{TR4G;RP$fc>5*E(|41Fg%k$FzUtrreoYjbY>HDYci-+rmCOL-}mm#*imyI#+ zR1I?_(8}2tk#bT^LTHX!XXYA+tY0X}%PHbms~jfJzQC2d{U+A>OYj*#R`R02QG@Fi zeDA(Zr?imo}X61AKkQtWqx*eb~je;6kwH821%`N87_6L za9ti(6Or2+y##oPs$QMTF;R!f#ieS{yUIIeE65V~ zr~gEFFRkoL$em)Q>p;- zfK#B2-}t<18d+=l@}zY8e`BYaaC6rYnRf4}nO1z`yU^z0gY#c{D<>nOqApw|zj*M` zqtX}#L(A>lEv(ta6m@>|#EBa1iyi&Zc(6?~J6Vcu%8EbIlR&JG+02tESw1Tq?WGCI zq;NRLNvVko3;*HXCrb}=LCe6SQ9RwYM!pFo%?wi8!8u$Bu2?zN0zMT$FN=3R3SF9F zZYbC=4IeJp&|dvs)9s{J*#K8ONYb5pL)fM_vva#xIa$Fib;O(Pwqg}OziJ=&ik@Yc z$$OUq#r!p;DP?gZwN{`Nq)IRR*8Sdd6is_CgpWGUkidLQXA9lGD@U{-*`;h|rd3*r za{CRbq^r9>-V*wnhhh>kNyGUQC000{y7})e$9L=E(<1l`E9c`THtzI|dDmVOU3D@c z-cC&{y{fQLtLf?FfPPS7jz1&)e5r~WIk{d*hVWLGUG9lee`8pOI_jq&pj z8(mMTN)fyrysdA_Zg!#|0wLV=eCLesj(gtU_Xi_`5t6;x&$HKBbFMY#mPT;=gTL*& zNqhCLdS_-RP{=b%{InfcL3?AzIx{dO`}>o~ysi_El^B#QkChq{4&xWm7 z9x$Y$=4@Soip?H;>NxUA7`8QmwuinG-bpcG2XqZTyF>b^@4bLu05n| zUW!x>-rlMjxk8@Z4l#D%LQEeRfSw~_Tr1zDShKw_mOb9kfxU(_nvX(ZNMVfUF}R;o z!Do}A-c5rpz3TRSokvohYd`omkS=D+Vk?i^>}$>g5u$gwwAFr9etbtrTIb%n5ocss zY;SowZ~x0CjB#;iYX>j0*9?n<$KDIJo+l9mE{{n~kYRi@+OvU%CaI{K3>PxuHpqRm z{hYSwUa(~K?vk4Gqb}OGu*Cm{UxbP{E9Yf8&6|3=r^An(n_o}~ir}vg2g-xYWwNPr zUiBU|yx!y3b{d$jyBZ6=J->Gz>PB6_*f)3Vs9oNx-@44B-|oqb5`(7}b|fUU79AUFu>+fjsT?AP>^NM>JW=;{itpL-n?*KAJm&pR1h)V1Fg{|CN-AvKZ}|*D z@AT-m(ssunalMeQU+>9J{AQmdI%ceAK%Ex4Qw1db@Y4%a=}E#bCKhR(y;?-KEY(SW z$+uo|pPy|M1c~$G=RpkJpF=@NiGO7ugUO}-cVs`f2II_Ue%a*!0E)~uvGVwH0tsHH zTSM?wf|2GKUPwj==FNi>0zP}>@<1gWG2XfNaGPG09mbD#eKsI1k{Aw>KvWTt&GYhy!s!cf)o55h#+y znhH{&Ly!Z#b;1Z09FuCX~(38OEizWzf2Q6=#MQqbj}i2MCH` z2j3^pZ*ByMNsIXI%i@~tfF56|`Q+y#HI<9Z?yu>OmSbq=oVqlD-q?S|E_XyvW~QMF zkhsk}CqMd|%1)|uVaGm{)V=!hhjF#rO`#}kdm4%he&j*ximPlUJj(vWxRC`wZNY*2 zwR>P9I~4GEb+gb6{Z)>LqGGs@JZ3zWJc>>+w<+P1%30y1t9AfU$c+C43n+#vIgg@9 zfS(!?&%{savCyhf`hfD*9abYagtOX9%|_FP0r9Yoe4)GU!TXN|LaDbb;kB5*vq9IH zBOwO|wi2)z1IR7PP>A2>nhtWiKZIxUn5MUpQK!+1a-#ViS8&$2%#$kZ!SkUZkhe+$yaRvJ zUK12&yR&MDZGM($-!=C=oPLZxI9U5SBLNNm>HK#@eBBheb^{JV#pbGV#O2vjT-4o+ zYhQNT;r9;lhu!$~g9kZ5qE#5%|C^irpA@#ogM1jF zY8deGwV*qDJXb>P9L-mQY^rky5CvXeQpc7DU5CTdTH|VGQeC=EjLY4> zz4RUk8q>DhGD&qLM%Qmc-Oc)+nuFUjERG!~$;Sx8Mf6d#TRv0-p%r%Eiyi+Zh)Y1p zH99p=q)wYTZ2ljrTanUKlAHGY5k&&yU_TYP9;XuoqzyQ977a{Os+7b zf&MQh?cY_S#`+ijw)&&)xp6FUn9odHaDu|I33f5rqamn8=|-KaHfwvbR&r)0I0J!_ ztN-_<{=Y9ZmO1;oAE^n&4B$9?L8LwB=XjJ{`u-?ACe0p7Y!V8Mz#mN)r$T88nV~+{ zi(eONzjGF`vVDvCH?{qLzvjOSl1VBq{c5z{-i*JNeF5B|lOiYyAMS_g4-2jRD>dS% z$^d0NX@OD~rM?y>u(Y(KW?)d{pMm>byLvzQ@ZkeBBjeyT^dxn=kM}=q4|=?Bdt<#B zZ|Y-Q2}21r&;;)y;g@34hGuFQm|ff3EUav7aO+HzfbM^NSi+jmW3ByFSdUp>AbD4G zrzNr-PR&4rTFP`Z7GFfl|1PHpaV*1R0#F89=YLHVUpQl=@{^GeDDcQC2WVHE7_K0w`=Ww+h8p3h634VXbv11AVX~ji$6w;^p0|Qow-qTJj%w9w0i|5L? zMq+_3ku4N>+1Cqt4)CVOT6kwXp3D!qLT-LB%lAfPB#@&}J0J=D16ehdfm`j9H}D~PCYxEg3+qS%6Y=vIDvD321DQiJ z(YrpA=hbzwg@0;2HJxhSVQ<*OoRZjm6$4+CRf^N3yfXF=t?vIoK%Yf&P$(06%9pM8 zdtB}KXtw!2ccoCx&ktBOUo2=X@$TOr?pJ`qN6-nlbv%@*Vw<#)B$w?udiihaAUc2W zh=tQ)!pg)BF1UKtptwDkG#IP2q604w{;e&bdge#M8-OI(s<_`7E30_$P7a--jnO?| zM$UEcR{?E(JTJvcmL!>1kv=LD z8$SOu2>I0~M``zrlzqz4h|uBs2b=lJCdf~5E$P11CbN2BszuEfa!P~O{Zi!@ihr_) zd6Xfn+kn1L=w%3P=nGlkvRlavLp;^1a$*~k-MGhq&9eYWp>*)f$O%-cALMs&2cO>Z z8GsMZW%KtwO*4%V{WM?vdRkXPZ!iDQrV*}8fF>)bn$E_~tA&U3^9typ1ed|tb^@A2 zEu+qah_y@7>kg;e>#=i6(59>l+_XA(O91uXmyA{2OP5Q{n{4sb0|@7yo#xPYOGo27 z4Z;A21S}ekdFgN6T%TP7(EU1}MNg{m_eqI>G2vmhU`b#AOOSMP(UG?wZQ3~Yoiqch z_c7z*9$*CR#zmq8YFK(wLCcpogYeQN(z0*4eB5>*&xthJ<3ma_a;^p=K=ed6#Q z>wV=DwpThePe#!0`=V!F`~V9P%1RQts8&d(`F{);b;o-!$@4ta`sao39p>B~IHk7i zM3I6If{Tr-B%uUsMKp)YbC_d?0y@ru0T$Cr^qSJ38AyDFbMbkYRXfL=@uSsA$H28b zwWen86?RbzM6jx(Zz;d|6%*Jkr!_Z9077w})0^Tc=%}2#L~aZ$m73%!LHO|+Y^!zI zx|7Ba=}jJ6d(pq;2m2!eJV`@A3>V{|;LWd#3~thn0-(jk;srTtf}dhpHwZ*hBGV&p(s%d1^iieZqEQ@WB_Sn`ApDziJzK2 zksmuEhA%lyEP00)r3BzcT6D^Ju4w@MdA!*M+G$~3OfQ(gu5$JHa3$L7)%yBXQ}@67 z;-Q&fXThLB%X7X3Bx&P1z13iQ<)&Gz61Cu}bXv4hv$w+mjidKBNexfc+Wskbp@Zts z$ZC*&yeLEGG=sq^x`W!jCv($&LcRs3lZ)`XL6pi_k8{!yv-F@;cQN)t znM3$m(huows7&P~V#@99^LKcpzIjya@69GbKe$zp6CvMwmAx?J7Dz^8qjoDp&PArOHw z5(tsrjEQDPHgw=!V9LD{vz>uHxvfkBib_6Yp*Sng>^Lh(jTz6;CaX3AU7Bq%1G?Qq5VB z%~s8`bikx|31}ZqIZyD?9b{uJ`8GB7Vbw5O>w-HGN{v^7qtBH@)^!^DjYT4pYC%IQ zXBJSc?G(?Bqjfe~5JANWZhj|>_h%>5JupHnqCzx>ZHD6n3;QCLjlLVJU>fSW5I1YK zf@AS9r|F9c{TjMM;@n&i#$E`gzZbSU`$XLjl1U$$cpda0g7yup?KS@2%Zv&PkSD5- zca?Dt*+?POCW-;!!Xin2e~h0i#~3PwGoyf9%MzDJ^G1XL=QdWM%tU#R(|3r{n%R|3L|s>J;b zdtGK9yFDxUFNjDKvf>c|(8#Q~JcySTe?@EmX8TGnFB2BA{E(*h$oRbV;PtI?;vh%o zpi`-pE|zsYJG#+|MYG7O{yT%{{3OcWjrB?DcKVsN7bCY!VD4}6ixp#3s8Cc znLaK+t1EXLwe;EO#p6^R)N4gZW)gdzljtvuV%0j>K2qjZp&*H4-t%9x`Km5n=sm<{ ze!veKRc3BrUgj@5loT@dTBlvq3(GEhy$-P&3A$yQb%t?9pZ)4%VK9$kA&()}Be{gC z;oIb;ThV6Wsd2M-J5$+#gOoQr)9XwgVZF#C!6TfJ=;j0>eNw*wh-;it!Q26XH~M7x zBrpxbJs>l1Vo8t}aE3-qr#ul==~$APBjufOa}mcMuYX^w=M2cdk2$LLr+}M3(|j^> zCnYFkx{&jSchF}ti`aE_YS>jR+Vv%u`j+;7_yWcD=zc#;P^HAVmO_>dMytc{h5R;;50@+4B1A7r3 ziAw`>@=0iD;|lYz+(8x29re8J@k;N83EypcU377ZY#uPyogE;mQt{~|X$BqWhk;}| z9vM_;WJCwI^et%ychEd#znJ$956G`*5?qL=65FO#jr5sA*pByNUfdrC<)H0^5I{nO z{yfsbRNSdJrFW>N%YBbW;*F$& zAp?};TG0tHo}X|?Y}W7be%*(J@71_<3b=-)2{GIulzn6vCM7Fkl=5*521c&|-+H4Z zHy3vaSiNQ|#^X)8XsV&gQA|P6-PZuUZ?EaWFHjF<_(@4mKA2BM{O;`$(G@j6lH`mr zlfJ7_KAy@IZ8lETs()?;uC`f~oM;ztXM!W#0(0c|h#xq=S;{>Vv$IbIy6@afU6s;A z)~6i4?K8@G9B9o;(P7N=DF8ZRvK~@>rq(h3r}@V;veB;~gyS~P82_zL8B znvCr)#Qei4hhjS|=Q*p*IBb%DQmuzsX$>P8|MWN{$UxK! zhPO+!`fwnb5zJrwRyghH_#XHB(VmQ=J%%sKuD^Y@+TjhXs5Beb8-@gAg{_ldtfLX1 z?bqLwYYVc3c69z!-;?J<{~G?1*WV8jgdzHyiZUwi5-`HMFn_X7kmdj1a8ir<4f#*X z!RNzNHsj4}^SPZz&kc28-&r+pUhxB07lVrr(< z$Ir^Nz=*aJ&(_ZHL>I4qO?}9Nx9PCdx$05XJ0~;IKj+8_l(QuwK1qDS=KdW=eL#FP zyB6~IwG^-=hz;)|Z16)e=PBEm&XCg{BQf|(k7_nBZySG@ z@hO;nI_OvRlM!-KD%yeKa|G$Ht}_*hAMEcDntPgcVR)yMK6rylc?+{>ciSGbbUbbsGh6k+0Tp9fPgODk|ogYFTQ z>*%LhAPa~H2Z<<7#vCC%1^VHSyFdq;o5c4%j!X;%5s+lui2+Zs{a<_x+;|ftjs6a~ z6+n^$D(>ho&aBew^<{d)vDW-KwK+VO>D)Mn7-LhrSM*@A&z#t4#BY z5B_0cOciJ6KDwxZbh_kg<=_uo!S26anyDe)LWQM(%WOghrJ6bJCy?}E7+rc{JeqP7o zo|#I(UZYVFH5JzuJH;inaA_6b7-%2C@jy$T5hMUtU)Hi=wV*bDOlt4t(H z+y$EP{OK&QSq<(JA-LqG-hw6t&EGTg>tCih)py(~WLgyEDK|BjaZ#1_KY)P(-Ut%s zp`t=JCb3?z@bCm_h$micE$_^9O^AESUDO^!S~D`dZm&q0e<7Nzev@$ks{?YU1ff!v z7YW(l7C2`7B5`WQr^wb%g1sP})>Cf^#fVUCx<>E^ftri#HyHz-{J4H#1dyvE@@2oN zrvZqn?IjG-0yqvs_FIpkmtHDNt~U+B3_*C{o}haoGy4p-G0Y!0;1jCX?O>3f(6?1N2V<9z^^iu48M zU-^!Dw)8~Y3~fLvCO*k{2+)ttUGovgxgyTrjJz?Mdf{Z?Yv%>+<43qS=*`Z}Fgb;^ zBjQ+`QsP2sS*iSS#JAV`1DUh8#0#+!Q{ek{)%f+F{?jL6EFjS!x#{^~6Vu}6y)gFw z%AD(;fpr%**c;S-5eV9GJtFcn+3l=s2Pm`M+Pl;g9FDB}E%jJ9yT{wPrEIspb`t%; zZ#33R2=bD%ZPiTB)-5e}2>q*0ig41wee`sb3L#}XNktkDiP}VqtRSDxSZ*DkWN)SX zbQlT0KOr5)MVQn6mwJ#Ec}@psFOqp6zbJR9DTo09rIy!1$jzK|fPx`)C&=l7Z>Wl+ zFzY;w-6xG7`l_&7Rvz@w+n>dbx+AZuWi#m7&4UyUV*dBcvsjU}g<3Xn;W^A*|LYJHcCV0!0HO~Yx;^C%z{w{m+DKhC(TP!-997{+&Ir7De$tK z5YE}S8Jwg#xD-_=XG68L)AT)RB8UY%IyvbO=(hliXOHqrg>tbP_22mvAXMm@q{>nX5A#?@Jitd@smsUau(i8mN4z%oCM0d9{ZHiMn%dBcQ> zHE@#E&uE#*1k+5vfv51xJlulO#&p0i(iiejRrYo5r54iLM*^oM+ALv6Zz8!z0G@u1SKfw_2Wq&I9$u zNm4%Htoi_>xX0@k<|N4wNVg5$H|%leYyE^BhdtA%f2ql93@HPx*dp`P911CDdbi#Gur1c#+M zuUU8}X1^R8*&x)%iJvgc#{Sa$#wMD7yF8H2q^Sj{uv~@980I{$*BEyWrFi+fuu*B) zzI7mi)#Nw*n`Z-h^Cz-D2A}@jf9bbHR-I-Ye)|33hf)fo|50ewaNyi@JEaRIVR?9G zmrIKh@!3wogQa*pg6Stqj)Fh+DL#H<0n~X0P^&hhq;c!nk0J%XVJsb++|d?MAhSZl zFP5p5mAF@PmvzXIjqaPxb3XH_>O(|VJ_R>?~1;##j zV`|%?w)G75fEs9)un7emd*(cgO-hKqDhJU~9p?YJGJn^1<}F6$rY{9>^Y02iMX$62 zAObQ|!3fNfFyqy-2@HjJ`hzQ^^XJn8rvLaZULkX&^3TqRzA5{gK_-g5IOzA)6<-U! zrx>5eU}{?}3O2>~I=~h|i8Sfwo_|g5_IJDCwex2*AkP#%P)!X<4u*V zWcCb_fF-7PgpelA^Y&@EJ6c&hXDGl&LzKxQM@~xTU6eVg!Pms|DaAzIn!~Cbw!OFOglUbTEvx6>~<1YA5+KMpSfQN6Vsu(LCY&@+mc8|G< zdRDtPapb1Ia(z`A4bDa{z<+L!iCj{=Y@|(3UBjQj69}I*wJeb&EnrzN+6so{AO1Ac zjAg4$3^vRVwMx{Nm2^N9-nBN}!>Ue{Ho&ld8T1kzSM%m-2t@-tB|rOc zJGd0o&Fuy>3yS!xl~hngW?JMml0xux3VVd$J7q z3(ab8IuH!K*a=w*(V)Xa+AYWt-kc*|Fdc{SG|j{X$~pV}(E5#`n5Pm1XEwl}6nbn- zwCD`-X}45k_BZF%z0bYwGK*G{c&>E(W|wj7M7%ND7mYV2OiFr+AzsN%(;hNe5|B)~ zXdVgbGtFvi8zo{+B%hMF4`a%>W$zXo@ zS}A<3i|KjMBV@1_fm2N-fD15X4!bIPO7seJX4{aQdX^!dN zZ~1&g+?dK}GPS4<66s$d62$`Eu#yOf`+!9It9rr`<5eAb6(uM@# z+X=UJ2YhvqZ(Q_VVl$-7>CLi4)`uMp<8jZwe_YzVYyLXjL`rmIg=Ih`AOv`C5Odw@ z(vMmu@%Ch34oKkz)%6C1Qtv$j6Pd}-xjp%5?B@{q$Ax=Npzj?~Ju-3F~nW8Ingb!I^mB}u}#Os@QA+i{nq#jI9{?{HC||suRLTkPn?t@jD#k_22724q+_kbCCR5zoPZ=#RrwhlU zb8GG=K9gsRizb@#7*!#sI0l4oEf?>fHOH=`UCXQ$r8F$|(Fdvk!VkO`8LMwwd8bUi zhRUG00BOF?E8MkM_du$?C3U*TeJoZVvDr(+ zwbT^-RkASyNO^sQPVhD*Ny9OIujI8#uPs2BWHVOW%|7P$r{^FXv28Abx8t@MGe8BR zsV{+?p@&3RtZk{M%rA~78{u+bG5MQvic6|duZ4^_`pZjH^rOVG!5hQ)jY}uoHh+@6 z58#ePHK@e@5DzR#??Vz4{6`nG5pqY53^8FXQg$>|5K|e|*V*o)Wnjo8L6`^|MLpnUh86tmgn&F2laLH!_)Xw;&6IRa6m95#!wpU zne1+hVaO6u&a>2X?$WR6ZJVBRyeU`{P%RluGYSrjNdt`TUaaH&CL&|i=cUnbPQb^l zYhcB1aQ1P>x4^nm+h!-{dHZo3Tso(gnw=~4a8C34sse|jBq&R0JVHImEN8V7HB?+ zKgpFvD?EN~mfiP+~|_&e%33xPjZx)dCe z4umepvpy2Afs{KoPQSNk ztK@m}yVyV-_bPso^j7I;^VsSBJI|#%Db8mPf()I^r61*VEAHQsuEF zKI+OvZl4xJ@=7OEWm9h)@Evwnl}8;|2P%{Qm#&FHk*K!Y^go;!}qs*?~d+)N`y`>*NfwXY{Ev9>)VH<(NqW+j0t{+2gxR{D*s2Bor7{E+F~pkQU_ZRrDJwH`z$25fs;DCekm z6SiY2>O&K?t6?!c5VO#3C5RFl4c_*NvJS9WRA{2Velq?pbx8+*)v;=k%;egY-Ka_x z;m*inK;9Z6IBBS&{%+$md|%=-H<6eUN6xhB{kc!Ry>}JUT1j|e!}|s7gE3-@PyMCJ z20USZFs2o3CqAh%S8CjpP*CqvnPHSb(pC33m|v=HnJn#l1im23RVMjh+Q|dMVgBBc zO`3~Foo`Y%+NSW}*xS9F9_S2K&_-#Ety!7BKn;Q+>7K|W#rYd5U~8=XMXO2Q_e`K; z5_XZc!TxR`isR(V%L255!zjhSeQsqBKnZ!GV`43?Gv1_%co6T7XNEMyNk=wlN(5YQ z{zyf1Jy)}T%6)87zuPk2kaDL8P~%vdJy1RgI)W)mCO+3D2p5hEMyD96?S3w@H6RDf zHR%+S|2gs*lye^@BYwR~;ddQ3fT;?_<=5W-2Y8EeI<@ldl`3_dE>9~o_tz0bv4dzm zP$DxgG!~!l*9E@*Gv)uq1Y=2R>jM0JulI;&3!RJG2({-%9@Pj*E1AE~C3YQnK(ln0Dv4s&Caba=$sd02&OH{rF_bRK??nD@GXFG5Skk+@1?nMbmTXTHz6tCW?`6O%6$ z`e4LYuDC)QD^R1?nroXY?G!@|n5{(hzq*Q8>;3RgWtEPuUy|X7sk4VS75_zQRwlB0^YmnY5OYIx3RygG(ioF6roa3W2+_XdY~2ASo3e4jJk?=Ip@@7^cUaw z3FDT3XTJ8MqC1#NiWqZ?@eS_G4x=PB;P?HJoACh4kl?M7s^>3R2r1wZPY128V$g+!3*h?&QfXhzBR)`&Pk5(}+9y*ldnspFyVuDS`cIXNe$mc?0T5@_K}G zURDuW!u9ey21%okdp7rgT(+F|ju~TEy45o~MEh1}fIm;M;#m_F2_G6_c6$i4(LF#| zeUq@5Ly?#OVgDp)n&Mukl@M|E3Fb~96LfybMX31b#Re7ITvoVuV%NTMge0Zr#$~>0(tvbOSXLNmMQH)DXmtvINjj2 zAEbe(5Px|_IyR(WB+Y_!{tovsX~(DQ)XJ~TfU=6f7`-V%lXHi zzd6SX^q-r_qTh@dyPE_`qIB9fD_-J_PRo>?8Y|i8v%btNEFJ*DaT3(8h1Nl*)}q3gle%SU*C$o(;;fd7Z?9)7trLFI~&Sw)feLDk`74#cEVL436a0cwZ zsQcOLnjb8s(9!Jjnlh^quCZzNq75`4`jYSxa=;1wqj)&>*YwH{w)2$xzt;#C_>Y%mS5ll1hxPds zHXgViZ?O}Br)H<)B0yVw+<;$+Oy_cOScxd{5f(})?iWJyZEy;&6kVV&dXwyRm_Wp5zcPAu4cAa@8UEqNh+ymHm!&L`E zIpvx`%#&|S&i~!TsUr4RH)~#D`8ydoeT?XLew;0^_XMTHOOF;hW|)D^pvwJ9_qluP zRurBdv~qcP1}OI277#W2@fWgi2^Xb2l!zdIfhI^EM6<>JFymSt5>6W=yDlX{I znp*oUy2khpHD0kIzTZaO1)bM&Dh&8!+6^iTm4oe89A8BZ%(9#<1FQWclSSY3qlk?9L5iREhLQcArMf zelTQWzkYG_;iz!ng`Lmpk%NbG_tEou?c>F@3^m5=g#-7eB3T61n&!g7Ta~i_H0+Hf z_|Yr1LFn6S>oM>$e89;G4Cj>5BuPRg)nebvd3B}S9d5-+`kv>Okh@)85Tt3@{SWbG zu4BY5z9Slr*ca0($~9owK+0Sg?%z{fflmW+MyK(t{bl6G+;Q;jXREA`1pQr|u3XJ^6mVBx z8-hCPI8ApPBS|2PTi%bCbI54jI_N$aR3P8n9g=WfdExhJ^$%|zrOg3tR}$Kfjo30B zF(!Zh&RX;jB=PI}G9Ep`s=##P_g6&2RnYHy0CmaZ3;UB>vL6)iz{6X3+iF^grlpUI zK%O4?i9w}Dzf$Cyke{U0c_2M@K&*2G3V=p{%;NvKxq=ci`!8B~ zYPaa6?Q(iWa^mx3?(OO+e`42&N9o%H@nea8!}q6z zW>sy8xr9~vJHePbhs&nbJE3JMcOrh)u5ZOeZfU`S^iU7H-JWiD-*7GI{N~cFJuYlt zbguLs>}c-(kV4EqbWaLi6bOG84G}HvWfVJWue=Y7iUoF)BtvpKOStCdw?gFaiH$Q) z^*AQ%4MN~C>ub1ZVy-6>CklZ+$o7^6P`2bb>H$uwQ#w;m>b-FM-N5Ch^m%3PZxb}w zQi!Ef5C+Qe*MYvvIhD;Ekm=&x3QVq~@BX?6=+pt#4|e!;SXqqy$vmJ5Tg`(*lYcE; z%3&OQbp&%h=rbqEs6P}$K1(q9eUZgHYtHyB6EFRA<{S>USKMqsBeca`vNliqF74gfUkC;cCS4WOlxD zn5i6WOF2M5f-);Q!3G3fmr>D}eCvkTj2qf{AKclU96c1~ZDJi~o@?kKe4p-()At%lM6{iDFeYY# z|6q!^Z5_G6WZpgOR!zj+sheg}hCd8AwJB%dzS>_)c}A42@8xk!Y0#r|96WO%b%x4w z)Z(5Yt0D`f_Q!~)_*0I8K^c4}_ac6h;@;vIpHcD{Opo)>IfAc~l~b^o^_kkH_1hS( zkhNIY_hK&YK?0@6(j%FGjXR0RIdZHEf(l0>-#y4nHzw~@`tAuA%uhX1^kMt|C+9A> z@6!l9x! z>3kIi8)ls7Ej4MjJ{}tiq$yA^{MJp~E6w$#fMH4W6+ojL1)wqS zJWpQcg7Z&4*v;c1_|1nWG5KA%+1c}hhVY-awtnrV6O^0<9f&y8!#Tg_O|w!zPu~xT zg~c@C!Fw2uBI{wpbpI`^jgd zIM2J2EpP(9C>UOrLPTDkG$Y6^n@0N;gh}l$(tQY9>mk%r^gB#GK$SK0T{;%8A(Z)c zNeRup%~*GrL>qKg=ff8Oz9d-+pyM|Z2N6(<>kf-hbFXRcqsOTh zC$`K~*)Z#Go@V{au{7EA_)A*BTZVN`81pv-{|6HLO}JCs6u(1_6x`Bw)6ekcMDk4@ z({>4Pub39WsH7bBN_VCT+bkTsY3ItlDBv4YLwdVT6?q}1;d5MZjh$ zdlFQi_dSap`s8i`pZ_6diaRVqam7<;ji2$A&jup~a!=*qZT3Sx)L-~K4E+i)Prw2c z`%00I2wLfAkSnc^>)z;jBr-D{fA&;)tQ3ZcI1)LGH2bcAoFhxU=nCbHO9opw*$(nj zs{>k?4RAlfTv&x(*5q&39-6oCTzcNQqa79c|B=*{K55+#ZVS@Pqq}pn_9N|i13ee zO{qrl#tpY-Kb@Y{sC6q{V~+z)+vVbXLOpjd<2o6Lz2G-Yx8gV7k@lFo=sb_{+l|bK zw89$Wb11753{5*-u6n}xrc%ye95KHZtEhsYR7?>-^@Tq_Dx>f*Np*85WE0i- z4HbFGP`v0Pp1=56LLlkW(-mz*uZiwDR&q9DSkcdL0Snw}N6}+9|05evY^11iyq z#7yZeQ?u%r^gSGrKbj7_}5r5K8ObA@Sm5LpC3e)u(y8N`=r>B#GnWriJ z;HIysAiX?F!DiDgC12Sf73(;;<&xF;axAs)HTj5BmXV511G@Yd#? zXA1Cfj0(2QW+Gdkxx_JELM=a83XcKr*S(Nc zVK`3p=72GFyBj`i4DH0QLwl!s&$rhJ?Stw%@!E_N+7XKH`G9s5l?{RYC4@vvgpMuBUGr6}YzSrks!3a!L$2xrx*_uP>;n*s+_Ry;!?s49t zTB8x`Nm_Ft;{V-SOBMYPF0_Qeaqj4Cte=9@b-pnGO4qvd_{=R(6E8W5tN@Ry(rqH@ zy_7n{=`uwvRQxS!w<61wQv$i^0 zhM=aWEd91!3*7`Uj@6d)Eth)73s233nuGK*)U>LZSMWz2KmQNl)mq9G|M*)-NNhg2 z@LBMLZ&JEDYBXua*Aa;M|1kB{L2)(FmxH?n2<`-zV8IzQKybI%xl zBtW}}HPT%_IbdE7`oaH(I@4&ZT?X1ntU^wS+) zv^{o?MJ4bl#=ActOgJ+E*!0~2ZG(pr>rjmm3z(o-dV-cV7Xe= zpky;fv>w2|X_x|sLU8(V*KaAheaixOGp_qa@-FbtRkC35rrT)l?V-h+k7;yk9Z5$f z-CM4Ez0cd}IxQlMe-Rwa!ow#PedWAfs=Tx`G*jwJ%8-hXNcl}6)X!O8MIOC9|$LXdIlB@VBLf^fht;*ec!*EI#=5hP^0ykz9wW@#5GT@a|PYB%-5f# z_MK6@o4Si;BThK}tZ0@&&Y6?A3{hIw;0P-}X2Lv>{v7ECN1WiiOb0VHIWHS>ws@+( zF~K0tqRW)SYuxSo{MD-1=8S5pf%&I`_THB1r>9SbrYEN=@e`Vu%^HngfN`hc3tO

b$pIeBD-jI~9_zWK>Tmw;h5mr#dc~>T?uowm1xf!1 zmYOz%Bqn}u8F~3%?CMlF9phG9$`548aMtFkO2>e3;hS!^kuQxtV?yM_FD{(H)Bg=( zdAO_4%F$+4ypO1sthT@FAw){ROX&PxF0S!*E}ITb)E6Q#Rk%?Mc@pjTDH1DT(-9I# z7kF%OVP0vkTF0fP95`tqe!-c}fXHcI>3@IUM{osISZC!388>852@MSXj=bqp_;dI4 zqjSZ)%>C5dnMuejpe@AVKQOyAC)2ZBHHMwEG@0t)>o;>({U|@3QcP1MtvVnZ5R00R z(fg_6@s4c^?GbID?j4I3$yClgI-#3-BIz9`*k>N^lsON(W=%CaXnQsW01LQ0{artO zh?fE^>JCLEOikkI1|e*JKka#W`}c^d=ODq@4leIxr55dak0lsSPHZ~7C3Y{HjtMw;l1U5%{6A=W zCkPU)vQkty9gnt>2uTiCJhzTQfy0%ogh$b^Tg@IXQ!~C5=@%`6mb0A4vJ=SMym=`N zkAz&v);qai_ppLOCDG9Hn42*f=BpnJ#V$~omVSNd*Whox!MRGnzcyVB2NMro$l^jFP%5P)(XN0EDCWrEjlxA}+ zD7zG3FG@NHBHs6*8KrSw(Q0qk14+5s#6?EKt9eF_XqG=s0-CosW$&cjjf)xo{`APe zA5j{1FKI%^4MfMT4_s1$Co0}J-o+CV*~K|V13^8sh(&>)2Z%rQq(M^l3$#w#xz0_rqOtp`rloTz70nZfSL@@JbSN75ifUf6lfhaKbo~lFI5A8MtsK)=@ zIifj7kM+p5)`6!4>{5k%FW#8?%zK`-%o4rtKps18Z?Nj;++S=7dIA@)%A=`dHF~g$ z8+c{*1xOdg<|kn97m`P!%zm4pi+pjpbv1sOstOM1wD$|&^=1qF-JRc6#N1*#J3A~` z98hzsn8vN^MAWl{{yq@*y)yyznplKjpcj{ux0U|2Xz$7&qzzlc9cWBw^d=yEZAp$f zBOZTNG98rj9kF4H{`k0tZ+>I@*k#- zgFQv|O~`aC?``sI$~>eC5s1zSQ2$Yn3j3v|&dD$oL{%crABd!%n#5em4>J+{eMIqn zGf9t|VP8#E{SCVVRkfHx-B^tq&e1O42#e4y2D*acZRBli15Lr&=oGo`IUp(q=ku~> z&*J093Bi*P5jpWbi~ktzvr)otKZa_qSFgG{PZJ+BftCs#V2JKy#U%$lP68 zI85uh2ts(d9*q5`_WRF?XqZ1zrY-SAI}uNp$r3$z!8I%?Z6hw^N9L*V(rji856+p*KE; zA*3mQk5f0YwG~~7H7aTjemg70Phn1Fj?r2qo1~zyvvvbP73A^mcIoZSg~y{iFB9~$ zI=+p|dEv*68hO61M~$r!CqyBd&sWSu`ZvwG(>q-{jW%t$cNxtjuouw?tzu&QBb)zW zpcQ!ViWsr8pMr{vK?MXQF1u7W`SoZpIewUXm~P9_~jaX8X`Z=eZxG5$Atb)l;?lTtXFBn z{X(Flo&?S`bT4-<=d06|!^@eTYbOSz@^#T2J(M()1Dq!)16b1t7=~=?3cpN?f}A!0 zOGbD~zm+6|RC-vJnDmb;ox2bjU*CHHB3EyY^YvoSNb=PT3^(n*9riLjPYxx~l7Rem zVB1hoP~cJ?!=B!1mcb^VIN(NbpQ49I!nH`!lu#DO3tJw{f|~sw#&)(ubF~L@{S|YF ztaBz$z~CEzY~JCRxgFNzC3pVTN8jI&$}TWFTPtcv78x^>%gnNRW~00(fR}hoAC4t# z&p@O1?E?|#mNeEDoFyenwhim{{{!FEiz#fz4T?oFlY#yZ0s)4VA4(tAdtdm1XPPWa zNv!{Ll^=cQ>VD50zAzbi#0&E!>!lh}DRu_PUl{M4csW;v+6f!$CE-+Nr+-#CVYQU6 z#gF?TZ0>%dd2LUZNvxHo zLxJ8Y?keuCz#DqLZ++k31t1ASD@5tr1b9+8H;1--|Aw|v_hmJ8SJZi`2rfsXcRen+ zbB3)<#9m6nP+bVn8?37&_lrLmmXqkLc%I>s82;hCqUcEtOC;;A67`M@%0CvN%Xv~U zt1B))swSJ;L_Vja1qX4SJfT_?2OhT1^c5c0hX7!xm&%bIy(^kQfx|T7u`l=8{3Ow{T0K*>ZAh8zH+p5<53!lq#Z9|ffCx@# z2Zm|rpI_*2!NQ*S9SaN9q$Yh5m0eF?DIdU4xYfXc_g`GwP0pm6t~1nY!w7m)1*i2t zE1$N8nQAjQ211vJBVpsvi0&W_8oMqep?6(bdc!k12K226T-AkVmpZwV7_By;8wJbW zjDjQuDN4sdH#kDUu-jI=Myfa;!UNq`yDhxFUTwp`{AnAtP(f_d;(7HY!FyC?&!tZFcnENMr5%Y;)zh){CSS^+w%e?<+EtX1^>KH6h!S z#cJqUA0qmgDZ`4xen8(fYAVcfc0iTnE#_DQkCVEMx=V2tu8s0Xxt&OrBB91z9;~Cz z8a+wfC#LfBZEqHxNmT6+Pw(@~m=#N!8BX*jX~KjR?(cWe!x=n1h;ITQ->$*JQb{VVG9ggcBzCwHD_f+FHWgbi|A@3oHMaS zN==l@7DTtH+Tpx8y~I8YwRWkFec%_@$&K7yuCkY*Jl&Br8`iL^v@o)$cwrQNG04sX zOFd_6`ZzPUlp6D_bZ+veyLrj9;^nEkjxIM{43G9C7O>iG$$mN>6U;LBh+zn|a+kA2 z-=A_9pIE<9+^>CoVk`7K9xD#x)|2+Iu%pXq&d9;K+m*4Xn%Nhaix;(6bn)mi8fzp~ z3q9x3-@D;muZv8mrh6`j(+GE}#*3j*I_S3vf^aLUT?tfA^HpiDGP0 zA}ifJ*Z0XF7E?safQ6rk9G@S`f7EzN(Nl2n7oK-AF9{z$cK?Qf#+eaDA~oQTZm!0= z4oa56Hj#_7YDF@aU7sDBB^i#X1+U|`ALTwhhlfpggn4yE88{#T`M zM~7wppJTljUFE%u_M_&9JwK~;o*)F%dmRg%fBzk3oNLd&D1T9-4x%v~dwhIcdb&7< zo3?h#dGF_IJ)ToBtb4QXm{NJBMitH`1RcT!_D(_wSn=mzpJg1ZBIypLrbIRYnZ^a< zqNL8##rc~)UTx1Buk<3rKB+I?HU9Ni>gd~ucO`ZiJ+x6GfCFjnzLFx8rR@`*qNB*-M)eaHuz#V;uUGqO^X-k>+7uS)> zFpV+yf2DJz8PnKJgi@~~!IZH4RiCde3?Ds94XxdATGiE91(W7qg0j6aITT`k5SpEV zDoI4&71nnN2&4;2!w@wMlnfno{!uvTd%;8?O5)}tT6w;Y#ZgGHP#qMR--ZFFNEla= zl2ie%Ih|(O5Tg|WJnwfA9$@LV@)?=#ZC$H{c=EYej-$*r_6rXIMe z7Z+Q)DBz#MCAx|1Io*Wdg`F?5iI%zoUH|zXhyUm7K3!T(?y**9ywm`K*iL_BfVjgKqL~{112TA7v31>>lz$#}UEoG8@oOLlyT}{^-^DC#u zLz?t(Y8ssf*8JAVBu=U~IEK}%nKa|v$lhYunUxC7jM1}V*YIN{%TyM}z{KXZDyxLL z={(JG`bxrj{`5HwJpl(IL;>_!xAy3IhOjr>kn^O~QQl&G|I^=V>x4+@8Hp0%@DcvGq?AP?%zSLKyi+Lk=8Cvj zrZSx+B`|ENP{$yCIQk^i&ogyI%c-ta@sq1MGkdJ997_9EgPJ34F6l~=bR0Mm*7pLy8s7t5)gOXEnbRrjN)Z@_MU^yQzec`s4pw(jQz9UjS9+Hx+@!Q;3qpJFBe_}z5@AJQ$0b^T7zCWSrS*Slcr^TI@dB|#Ml+iD?79}k|ljXdlI+W2$ zzcJp_KC0)pXT4&z+h%4Hw|dmDJ#Tu{`%1)?L$;sPNI?b{z<%KN2;f>VS-5^ITx7N* z`O0k!mts}DBAZk@Lx<9yu&k@md}UV*`lJLo(x&MD07|E3d>clz7I;2W>g^|k$Mf!3 zwRlT>8#@loB{b8O#H9$dJgv&wutaY7O-}XKZ2`jo!>Q}585!B5)&#_R+0u%x0I_>#vM1HGH|Mz@ zi%$q=f2}zwIK@c#mM(Zvj^A0_O;hPm3+7S^4@J`FD&@w*oj71A^DDC?n<7`rQ{nnC z_E+fm+@x>#(rs9`3J0Yej!)wBgU>$S8JWO)scWRW7WFOOA?ma=iggD|d2w+G2zadM z#*EKzR6ZL`!8C2YNW5ZX1W%vDSWXqia&@?uO-*R(ns`A^5SrG^({Yt~`W;~iXzRko z54Eu$e#s~rOBQIoz`xF>HKVL|-O{VSI@%(}rH#02?A9mBU`fM3C%L?b}H zr=7*Iw!T6ko83$?s>9a|nj_d$LZIXgS}1BGmIFfh;d0;3z>RtQJq*#_k+qeiC+d0& z>uD!H2!bjHnjkebP(Sj_+tAm2)p3qGW|^Bcj;;`-a(4}bj$r@;8$xfxN*HUlG)l$x z$jkf6p&^l5pQFoO33^SFyLYNbP3MfwKWuHAK74miW9)7nI5LD-{6snVN8E0xPSW}I zXJfRf1DLEy=b5EFNAseU&rkkX@(qxEu?^xs``-E>2zixzzH&1v zB`awt2Aa=u2!!&YjUX{tAlo6{GK(6P0oOj5N;cieSH1B-t7S|okKAxxAylz6r=w2N znaBEFX-zVlRhY+PUXfn4>eHmvJX6w4)K-bo{Fm{~@ayo#Pc%CnqnF*>wZkm3w+PD` zvPngGK`dKbY)-AQ#8u4;?O&Rls-AVH7f`C)T`Mfst3=N`h+EnjSfaL25i#q3zwiGm zrWO#m_7iTj+V&v9XSo@$`9R_?cBA-BZ9-Uh^v|e@(_>g>AmGa;2^5uXKgrDG)3vYq z%bN<|F!u}u-l94K1yxJ}mLQ!fo{_t#ln!0nW;{YUz(Vfp`)C5A?S=S~H{1-Q;@=l) zk4mmQR>!mF?-z(`ScEEhnU%MghIl9s(Rk0+f#53bGzDa-N>fxto0tB zS;_IgxxyW$O*bIrQq9)DJfg~>6wDfXuM4Z;0W*!mRzLeA*e_^EIBLvyiLv9>d!C4h z25EW1K3N}PQ);n9S9zBQQhuFyoIgVrZ4g|pI|a@z{+nb4-ejEjOkftA4f~>bk^TFP zYkE8^!G>UM*?=B0V59dtvDAdiTEd4(_hS;0$W1IvXCF@F{z}HUsJ3Pz}NS4_30& zMhg3i9jN0iBk9w~y)=lWYRB>p9>lK?@hT;dXWxe*p<<|dIs7%*^5&UmdJb<>`MD_( zmp6!z2fCL@+B}3WTltufQHQ;>*m-L`PPw!j6d)pOOr;*P_eX9BE*#6dP%)& zi?_CiFjaSky0tA%vP}P{mbM{)6bY}mxvEm)@h3AKROkk)P-<)i;S1i?@Y);_sZd&k z2-#ae6;6C`oTs zuFr`{G43IW@0+bIO`L9bsGTADxUZvzIU_nF>QTf8znwg}Rh8Vl6$5>#H|)8N*h4jA z>n@}TDg91Piaj&J5IZM#?>@a`y{2(WJP7Jas#A4K^*<4a7Zv;+es^fon3M+&Dtx?k z&Hjb4jl-YVw%})!)aa;(_nLT+`~gqLs3NgWBAKtQ4X5Y_F#^v`@l>MaNrs~I%*`+vrI3hQVXk(aW??)JsDMB zBoN*~`-RRV@R*K@n_iTrBx-BW#4zX%B14=T9!{j&DQPt*7_Qp+WWn)Mlz99=ZIC?$3XKC_X%Rs1=R!lW-A=u=nAL&OD0+J7vn!Jo2)&CpnVP9n@@9DVbgMo^=m z*!RHsfa$qEKqcb7DkkGl)i?qf_^=De5 zWB!`g!)Kn?L;a`s^TDT?!%Sp4S-NPlii%`q!rpyRyJMJ=m=RQ)1yaSc*pdJ0rB29t zYzEA~SKe{ba}BrLWbn8{{Jssbh7fVz#?W=SEqtauvp^5@ApZCCI~zfHZd43uNj1na zu+OyWvlf&Sl0{?~z{~P?hh{ZnwC3G?CNZMTAX%rdj#`^a z^OsJf^5$RoUyp6RAn_MO`~|e^@{>F&fu_XGtqE1L8BYXn-O4wxzq}H#ZDPmhwTYL( z#VI=;1W48^nUDCj7R;A~dAH`Q#*O(}38qM(h3B5<=&y8)T;R9w{rvUg)@5$|U{Dum z$}1&a!`L{y=HTCOhUvfl@mF8M2l3lhU51xBHc@%c%f)zDAy2>N(w`7n$CMb)tz@eH zxA#*M#*4!>xT2)b=i=nz?H)3R6I6AcUpe1$8%In6Uoq7ro_VRgZ|yZ75Xw=BSRbSM zhb*RgV6CUQDLj4?B(CkLt_|ru1d)k@dBI37i$I#*Ghx${N8a_Xm9=52lLbRVWSLD` zr-XaFowM#MMryzHCgF|XJHUR(5>W4AAW-;5kPFz!kmeUhJ~a^iNs8QgcZ#g%ZS!2( zMo!Ul1rNX)Pa=)N{EL4WBo<0LD4zeGD{^oz^Z-%Vb&%_|&FswCe7=WMR8 z*lrOuBC&cu^Rvy4OUfl?dDPPpZ{th{O|9Q&mhe@^Ev;4KPCbauc9%69O1-8jrucP+ z_G^QBr36}d|8ji`XU~6qv4wju6yKgJx=O^%x!YAk**Vq*8K1`otM>qT&6%GfeA+_= zAh{ z2{<7mK%++K5e;W zgkWqvru=%f5lZ}to(X~R|Co#Ft#0dE;trhZ*?7RR=eGqh&I#|Pj-FX`)iUr04juf? zTan-JOzsBRt$vFWOVknuZ=T(6mrUULE>PE30H<(ySLL~`qBh+ewe-RL=##7R@FP4( zdrhMB)eqjZ3V!-EBKYUpt&Va8Su2!U7K)d0liqj=if{O#CVfZNvqqbLZci|L2nEbDfysBpSV|} z^BF=M=*GmTQVX^pvQ!Sp5gnamGUkMQRbq)y4sg&@Ln7ogw>{w;s{EB@+zaiyVj!;B z$Kxlre@3IpyQWCEk=7iiD8-8e@@3p721!_1#6PwCPSjX3{q=KtMh(BCBeymG+~HQ+ z^SaGhfto8JwoRN==S=7zmE>aU_S=?OZs$NsC?aWx22Pb{9$1+sYzur54}3b=H0?^6 zCdhcqa*~IB(`ADzYH7iqU_XHSUEO#cN|L9ln!H5?_-CHglm1KUzbQYakeUs5;8tDB z1CxrV5L0&x4ej;n`uDH22MX!XkL(`_&v|JBF#~g*n!PGGPP#14E;jVOI=p>c5{h?P zt6;9~IukpqTV;{2{)dLwcMytZeimTqvNj#L-KkVPBub;)p9qhew=@Jo@S)V?lqpy>h7dujNQ=o-TG_l zNibK<%pREPEygN+b%kPDL(r1w|1b#;{oC-{ED|U}w>bPfBj-MFEjP-X{?q%wIb{M6 z@!n~0MnL5$b&fAc4#gJs4O43qfRB+3Ujq{-+3U!`3-;ECFkxmcq@u3= zC*G+6_$|642Q5-7B=tr{Zf+!{9NV!2*-2Za@Yoh{_K+b4=V!6SPt0^KD3O03chG;) z&A3k}WD_C}ObmBvC~N0-`@45*KGTx5q5_@ng<%+^RcI==4cEJ1qX|YMu1xcrhDgnT z)kJ2|%qOu-0Sn7rh9>62GF!lJ2Q_*U-&hkL!h?R4K^u0gV<}N$Hw+Zcfb=paP&FD@pv8m#VcAsFC*i7=kSN^r`vMXdDp}v+$oVcXZa)Jr_n*#d? z^t)Q~6AqW}mD&cZX~#sACHCV7e7DdqMI?|$>$D2Hp&u|VuHHvaHD!q($mPS#Eg-mw-n8AKBR%B17xQt9Kqe_2nyqZcSv@d zq27V#^qu@lD?zQWN!M^<^hei}Q<>g$Cz`sDZ6E&*P?(`w5td~rn88XFO^JJ=63{ZX0>yioF2VQ#P||;?7l!mdA*bVy7V*pvqDxBRvzftyrwShn zX;lQAlcSi$b~LtJc}o9f;<*@o>F86}6!`Im z3^`--VYZzW5>4I38-@LmX^~qD_swl=9@Ke*L-US>6-fXwgYh9ok{??@&rF7|4uwM!nXF+ z;Izx_yCZ0(?sT4(*6-CEvkV+dspsX*oW#;Jpc=>b;}f^bEf`cz$%T6bvx0wR&1Wn% zAE*RBMbi>}cn8bhZ&?9^sF|q5_MI}yC+;NuF@o@y9Tj81_T^1^fB~t(uwEiiz8eZU ze6bgT36hvKB>Qb`F$Bc_bm|}}(iAK6-Q&g`3PJ#ZYi2NxhY{KrO@2?;S)x^G>9*I) z87TOny`OWED4S(T#~>cXRZYnEOo({T9$6AAYmSv7IjgfSg~`4lud`ohA>gOV&L?S2 zFFG6%v181Z96>0W@`zuoy}a1>!7E0R8Enl!TVBBh}hN&1t zS_VI?yI1I=At_hBms8FDIR@;z3`3;JRixUus1E=URxZ}cnv+r!tdI=_1a!UEf#7fQwD3e2CsWDnZ{Bt87* zs9KOu14IVX`ZIFF+6mLm*6EyAzA-ksp5CZG8%1kwg8HwCjq=SOeyTrr@Givr@q9MP z`=Paevz&Iw9GD@vf_s|akJNNHXR&@oQ_#39q}7~QBA@$hvP#1*TDJduG1Ggq+U@{Y zuY)%CdaF8@(}3=A$Swb(b^(Z~qJ(8VG3L7-x@q`@%i3>A*pa#sJJhh`uYLKV7n$^; zEp~ye_c= zzBrAMv*aROT4*4I$A(9fm^cQ|Q5N?VUz$tEYhnm=mGKBg5SuP1{!6|TrrG`tS&gg@ zcEB6^K)KrZo$cZ8e~vamBtP%B9vg9CZCua~MP8gP!g!Wh`YlS8%OkH$wlc}kM7okflS zNr9dxsCQ6@Tz_%ng|yKKU-O}o!M4@k_P(sH3uPB4)-_B=W*JoJ&!kqP^H_&>P@T&s z^b+8&eTcr;Jl!=bO*+C z{FJiyO6RI5_1US0=H^--HQn(Tt+^mxh4h&COYL~wO6cTEYxA;=mq$}fS~FCce0FmA z?R^K3r*H)_{Ibg-Pnih2diYJxnMcVk%M>#EHlQR0l z%-=Nqudn1SPLulqfC^nuVkj<k$)hx$dQOby9J$6)EuLy~Pnehf&)b@pjK%+guPv`@C&M^3UCREJEQGc43Ku zfo_$)Yn_UG&r7Zx;5^$CZ1oirAhf$S?(*=GXujMj`6QgNeU3)m;B^4ErYnpKDlZMX zBFTwf_gW_qZ}*Zj28;N=2V1VaOpbaV46<%eb&_QJVGdEX3buQI<0d6uF>AUY)aR`i z=1RCCnMq-YV<|WbHY!Z0?}987#fS*GfOvrSu(9r)w8hQdHe1R>&KAqLQ%ZzMl`cZ~n&I<2DRjHsbK@SYA3^8+-ukd`TDwRs`sI1u z?Um5Ca*5Thn-r>H9*Il^K^=0TA zlZ;*XI+51vMBR@hKYJW6AFX#VUoERy=Ds`mWI?S^_`4whva8q_^$#{=*K2?=UAH-hR*VVGTbatd8D9SqK8ZG_( zw%AfeCz-Mzx2sr318!TuFQE*kYBwMy7yNSQgsGEI97FVkkQu=G&rI?toNnfdwr732 zVn^u`^^Ga{CDxoXkicU78&TH}Z0#l~pWi(Ci(ifA#Dp;|);}%0q>YsP(s9+`2z6w9 zVY$+WmDw_mb~yzU2#@2ZmI^PedY*#L3cOuSN?ABo9zC*%6!El~Rmaqm{6O?y)Z#C+yXn0r+O!XH0KQQ+Fsd@wcCT=mXfQ#eTc!<>R`M-xTgkfz z=NM~r+vw3lSK$aM(|lr`%iZjIJPO8PF_x0rGK;kEKm2Nb3eGe(0l#+DN71*6!Q z=f?S{xc-1jlWLyGD0sUSR^&x+n$Qj&vcL?9-I1;vPf3*$**t84%2>@v8`Nx$G<0mN zAL1A-IowFL_(_3I$@e`nN{x8uheO*-WIeu&`7~nwxR$7m_S}VYTF5>>@}L-#nV22$ zBWA!5`(s*&v;)2q^#^>lF@7Y5iC?1^E@AQ}uXQnl+)0${=w@MXBgz-JNy9SCxaOQc%VI z-J6YMm6xz2UMXXXnOdX=>Ky>>GWEk@2gh8Gf^0AIzSH`Kq9RS{ImL>sbtNw_1@90f0tROA-KDK@s`W z+-&mta=IHBT=yK00N^lamwq1lV1&~j>a`hlx6+IP@Ncl=X?H&fWK<2~X+n;ztYIsXny9r__4K@KbfAVJL`OFV9%%OSHx(A(g8LCNK;E2SfCVKrqVVA+35}c|~ zqN^_IhXC(rsw@9+HjR|H=Efl6b&|K+OwEJ+un8k^>^>FZ(0}A)3>wb$SL_CCxV30_ zUuR|Ht(dIpR`EDQdXtQtTr6&F%jd>|nS(WcH}~ZT8i(G47iXbH^8oO|m(VVduld|P zgKH1nuqCV|b|@5h-YSU>(X1^Bl7xxhBFo)nVMkhCNl z;(ft3lZcu--oSU#>y7W?~ zV(RGb2`O)zbp-rH?ykhPRnClH=19ubOlI%Z-I~;@qKJtEErGM z_It40EnyVYy`2s@)OfjHmV9C3#|6^h7@5SC3#!TNPR$1Ym|&TJvd3s~qtVtm)s)bQ z;>fukm`)4bdP(k*Yri~W6CH@7qUX(h;pTU8!x;lVGZvUkE_(?5C+Ps)co* z?NOQC+KFb~=g2|~s6mI{kBz*g1DR#<_v1$HbnQ4Y(dM7GI?l!kD=FP_jgLrkYaLpS8RD>z zA%c?pgI`qBwTCz?UKBR^oKFCOmc+RIRoge8LUE-UeW?p3e@X9p9u_?HzTk8IjPLvV zj1Rg)#55I)9irlv>Q~*>*l=Md()}lJzeA-p%0?S_?^7%v>thpMgw#9pVpnv3v-vd%imAc=#7mKqm;PQIVZt3+SzthW?SdUXB zBcyl_yCv|q)QE&o$8LfG$VJ}cQxp6q6X}-g4n)Q4p+jHQq}ra%WMge@PE+ptfLZ!2 z7e7xVl)300)DpnIViPwB%ZKl3Yr7_}vyp_3H|tqgaF5P#=+ize@x5_?mP_9wR!xP} z5|uY@FDb2~7=D6%Udr+sDG)xDK|WzHgUfIb`Raa@jBuKKCg4)dFXu176;v_-QI2hj zhmn4$kU;0trI`p3bNRe2EhW&Mayhyw!It+))tp)}RdKDPY%L)tNfKnWlDq4Fx1EjQ zm~qbfVQMmh#Sbs38&o(unVd~iq@6d8@80*C{_M`Byp#tALTS7n>^b52WF*>Wob63{6F4oL?EU^-DOiR8%r6l zQ@#|vUFXy0b~XQ^W0?*WYOAT)d(k}a($vh# zq`qZtgL;B^z39GClM1`rm|LAc&6*Rphe5M3zRUBE`XCeBo5{L+1Fv8P&y%K9IFAGk6 z)BW1-LE3&tnhn|}el-6_PK1d91^-Z*Zq~t>Gw8nMQDPL42dq@LP*;-&esFLoud_P- zcGh~BzvOhQebycvWILwGX}fq2&5d71(#7Dva6z zuBR%;l4Eyf3@-++HV^7_tL^F6Q;Nnz$eLI8X_NSe*O-lB&xYnw3Vy5;W{qQ^r$my1U zs218T?FS6xVgL`nSMb=4uek47CpfAG%~9bh-xE|375r}I6$d`Xmu9vWK0d!YQofInzGg1+RuIc>LEECASo zWSGi)?H8d%G;FEv&8=xy=!WLF4YR=s4ZOa1RAAn#PU)9us{ z>Svb7sP$=ZFwi8pcNT=0tIQ`_($W4NiT~2a-7ICb%cRv6N-A8JTi#PgRbR|LBj2Kd zdLL+_WKPgSPi7VA8W02cDCRRuL|KTwWuxxGfvCUKicj^SKR43B zI2FxMq`=x<6OVu66{1Aionbw|9mvWAB(`FOC`zW&uHJ<@&Js@dWza2fC{xRhv-rP| z8mesIP77)QmZP55FJ#Jw;k()+7N)60nC5Hl?|_akmcNR;y`1g0YSf{7AM?zK$s<^wq1Pw zGa&*Cupmp9pYRyP1qw6cR)YT}U1%pw6i2H6C|VMZxi;J16iG!gVZ6(862NpbmGlYy8g%lQRn$4n5~brt z!0An>!<`#_B9AM5RaF51SRDV=@7iYm-3XbEdJClpw{OYkzf}M;SS%lw`W`D2N%*~u zGR&U~1ms;oOQc>NsSguYFPHa8F`g27 zq9>9FK%Y;{MQl6|8(QZQxF#_8J!y&>CfWA-%N#ToRvvLN%Xggd7d5&x`h|>Y7+1ZNdLcD}%qZ>1ph?nwulfA)A~;Lz0pC%gdV zRiqN1lhj2}!o9lGb1i5-ROf%u^_D?xzH#?w@ZwrrON*2iFAjlHN?VE*Ee#Aq}op` z=$p(}E%rW?iUhvQ`v@M6NK_c`+?uV5ha@{q`A^aQC9#l}*1%F_nZp79cEC@##flvS z-R}jCPJLVd7m;T<84`<%4wgW#C1a`JFLF9GGk&;a_tXhCeh#&iF0XGyn-796$8IU^ z7E-t^sqBzVllXru#S#xTZzHNF6O#%^iv2sLV>AzU=@;O}IS^VU;_*w@2AR4Rxq!Y= zdvYsa{@cO`?}KhbNDa79qK<8DMg4Q^1?{zls#sD$d&hAvVo?oH-^kEDA4)rA$JzZ+G1$L*?6RP znDU*cqmcI`bPpBA;tLSlV}(}VZ48!gg6fx|KyAj6iznbmvk&+DA2Y;o++Zewahzca z8Gb6y;ske(SbY%s?x&3E&zCR8HdF8CQ+RN^@9u5A*W&WA0C&;zq#4cbmzl^xNQ!y` zs{s0t6d+HdH0L!`)^N6@bv|Y+ZZV>)b=DUE>E-2SC43X-VRcFw#ujq2OfAU@X0G1x z|5g?IG1~ZxWc;Cb66XBTK}I#9c5?*KwLW9LEB3aitScjLDX&GYe`80#(8y>CxgeFx6e8w+II%cBB{->;zP(=VOFy@7Y?(R_(}Ld5GBtoF zmJvJ6r_PJAAl0L&ZT;KIu%c>T$r06D+z^6bGo8HH!YbTC zipN{^9y4MofMfdS1#PsCS}G{6C&$P(O8(VlK0n9c)|A}M4N3)D^jOTl>CZK`x>WOo z1KlvsggOr&TWSi1el>p@Dtu3%GK%IkbSWu_MI$tPDeTel=at-d@;r?L8ooOM0Z-LO zP&&U87rSpHHS4Fg!a^i3>VLSVtn+v=M0aG*YP@p9E?SXg8?PeQT-Y)z9_l!f-pqhi zgCf32lPUS{2n4?7({A-(44*82yS}K$v3MC$vi}3)oCI1h(X6t?Y~&|sAW(9N%^>o5 zE5*cHHZsgMboYYBdL{5+mt1~*QabRKjp8MgarR9BA}|3f3Ciiw`w5HBCoC|VGT(g(ntU`v=qPL5U~q^{iQ<);a+csO zhYA_%01g#P-fH;9)S;%o^fQJqz@09W-lF0ktXm&Gf{krsN0L{bxGzfQOXnXDHnWW zF{REu;2*>aDbEmsn*u9$c=NUtjG*Ib^AgGS0sRrRdGKzjb|Cv2w!%Xyjh*{1?9Wmm z@T*62>UQ=%&yX)k?zcOv?7)NmUhFE8&nyB@lVp`&zxW;fn<*@3C(rR`YgEa22O^bb z{)*c?0KqUgQJ%m2WxiG4^VF(9EQeJE-dOO0NCXrYx{tzV!VeQ-x_}GG_$S67CwYt< zhFMa>MXROHHvGRuT`dznCf|0$x22(d<;K-zMOOBgUQD@tS7t58Kl*7DBioez=igss z%f}Ms`mUF)YRLbU zd7QlOP+k^e&2#3hRE?A2?y{VS3uZkvSY0VGBCAWJU_pE{rcL&{v6xLE67BMNH@ z2jb4Wx;JrBpW>ulx^2xu|5BZs{TKk*JM|05!}guh)VYuw#M*C$R^wMYS0AO$iBN_p zb>8PSIZ_yOC!-cH<1T7bqhHqC4sT}UocL$ zXiSysJ0&KhLoG{ycLmYfb$n)|C&?AKzU}Y1qA~0vvu+#mM|gO$bJhM4>wRMj>a_}- zZ@c;S(c>T>76%kIRaStGh5as0Z}IdJZ`% z9v+Wb+6kf@X9xD69Ff9iZ&~;$_42=#GfLoFwkJxx8uT;h%t;_K`)$T$dF73;;k!M~Q@SjBYR) z+@46g^^32^ezv509VSH@OhDca_B)L>SH#agW5a!yHH6eZva4YjAx!Z8tbhu96b4*5;ttVjr9N?|1UaBGwDeKW=x?d*d(b{GL9M zxf**q=p7aHOk3x%&>s+6z%{7cglX?m5(;_T8-Y-4nv~159OMY`FpSt1PW|MlTWcv5 zrxVH`Vx1FNrIv<{<1KdUjdp>>wNPZBrY`0JW?3*>W90l}P^&npqn&~IrP?A6pzZS| zi^(r|@=B$&jTvzGuvUC!`dm0Z_SsK$Ye=+-?3dOs(iIX@aASLGV*!C5A<5CKUT@nC z+TB&Ry!{mTC#lgbYnmi(f-S+w6Mcj>cu#m=;e&pk*{4EupBGo}&YuM2iqW&vOX zFvU9Wbnm3*ki$m5eKOaUqoEYlz-E&|8S99D%A~tsE`=RzvS8u*D>w!ydfa~>?zq+ z>68TPUw{4xGkq6=PXv|2J@VoF5O591#;o(9pULg$Z0TjOsscdTKq)edVbZp@%yY4u>vdrd} z12rLTaTEPcLvDjl@fi;-m=1*KG#LE_KLqz?Ay!r?1Fje~@QJE3-<}^cjWt~TTP{Fq^xm&CRCSBMNv!*11*oguMV;^IVt*(k;k>QPaqg@V_4yS0r7z7l^`30vg`s& z5D8B5>fE?H!5uWT)52~;LpgUWL>oE{rY39?YCY@-)qiX`npMz?G$M zvF}#uG*`V8=zi-89F2049ARiEF)=zI3u(}Kad1KYsNi z5m&=u-$%$!j9q24lX@E%yJ?wt_vg>;DM6o*_gu_TO(o!0Y`#6%wJJYg@p@G@=2|l* zLDm2Qgf$dv=sxVcUi$e;do6^%`sW+9*QK!|rqIu2ZYnR6WwTV-FjHN`>2zm)oWr;I zD&6Oa-1nC#r>Ax1{;CW3Bd2Ac5jX(ft0j$x`zuta6@@zdg>l`IuVzUHo;5UR5*#2} zR20rS@^j@AhJa&o8dL2p*RM6`&CmGxUL}bT$cyWHxtG0p=g>lV>)-&X($BwIcvKF% z!t#rImLU?TgX)D2{lh%QXUkW!WWjC|<<6G^WN&+~r2lx8XG$D*%JuKd9>$*g7IHofcGEYNrIs>* z22Jk2UMf?qCW-`7*X5O*&gv()*4htc<1ODjMY2H-ER7`5GBu!C+UDp5TDp{PLd{VV zPzd<)e0LK|O|owKyKH34OT)GfsX;w#{Yp5&mk83PZp-oICqK<~TDGf;_0mvwN_aU; zH^RrfwX9-$WW0ZU9Nv}PkOHTEwK7Xvqm$P&&(oCFr7vb>4`;JKEzs|fn0nBb@8mcK za;eevymxlC@O<1&*D$Bgc=TdrL&5jq62EFKY-RMf*N#AbzwF{aa|7B5UsDsc6M>>r z#Hv>h2w?x=G?QjG=bdWUj@_5pfd5Sob4xJn?30nH&1G%#=wwkjFno_97Znp%5*Sf3 zcd%X;wUdrdRs}K%y+G~z6wdIu?+El$?M8TEDX&7vDxL5KWWB;1ViQ6q|2GRTDI$qO z&vUiHM7n4kTvR{u9kG6hxZMine)4C@g&-~hF=}QMch-gs5s;P0yC1(_6B1pppjDEO2$c{JM7xF|&Fv7P7*KpTS=8EbUgttEv zc@FPNn;;!ckb^Q2oZga9DEvH61Z-6$DZ2lF30~`-eHbS4{1$Hm0PGBzGVPkSZyQ#O z^6d3cd13iWy@LC>jIEhmX&sFU<=7YmoEdULv)p&J-aH}e^jUi9lUcKKA3$Seu9a(@ z{(Xy_F?DpZUOS)yDe(9?#J^u(qJWOQqvz$ET#cjT_r=g=j{N(yWjT~~#r1kRGVSyI zH_zC4IkU~7>-I|3Ql#FK7HR0O$G`R29@mo}Jg|~92WU^M-nzWKduK}!o@GZ~q%fa4 zqV9%2Oz3lnBQ|0uNBFXc$%vV^UkmpriC;rp;A)5YB#^11!1z@pOkKx57gvUlL!aQC z)RX7+8>8EmdOZky86$RsIBlnXdV(zi!%Bs@MoNA~uh$%L7~naB_8;Gvxy>N?bw@%8 z{Tld~b`S1#G`elgr;tvxQ$3pZq;w)m)Ceqy%ZH-@61rG7m?ue zZ4o!xi0*<_4OWZZ9H!I?hkbl;;5#)pi>|I1dZ*q?CAe*vI5=!$*Ss6eQ;O}#*L45s z04F}j<&S@xFmG%+jm_oEafDk68F_c#Fa9k|>v;{P2*T&?;)XA?%GNJ#iLs1zp;ZzR z#*q#l=p*mYk;N9IY`rEEu6lYlaOxSzdVPR?d~x%5vk$t?HpId5E%=yM=zEj;@7*8? ztsVK#lYK`dY8!*GsnQ_1CiiI56Bc17;KzpRw^cbRt>y7^UZdlCQ~&Fq3WW4U5IlbHA>q}Cf26;|K3`^x7iuY2 z;Yj2eHk@6&z7=()1b(n@V_ogc z2Kdg~n1J{I5;Om7>%9(s9j4ZkfiKr?w*t&MHfsM)!`Vk4*_5WNFc>b`c zUXYpz;H?F$6Sw>RE7*R_)#kzy&Sv!e`!To0^0)FQ24~n9QNbs8T)vTZd}EgVK$ipK zLw{%`e^Ya2$^)vP-trC5NOj|8XF3wr2=ejk`3jdYq-*o0C*=gkxTa8IKr7sB6F-Hz zgOHBd(LZPNK+S_zHpaSE{7?Z_`A*N-Ck9faHV(LqcAHeb(QkeF!+8ABf{bs`tlMRr z8v56S1Fh6@7nus8Hw|2jY+KSmdX4S`Pqa};wxJ06)lRkt$g_bhfKNg z6st0s>Gb z9K?=?4KtES^hgLR^m9y(;3ifg{z;f?%u9*@Y0}(MwGjO?GRzSn`n&N%U{8jC{CR5{ z$Lt~5e3p2)7W&bmKovzh0QU15|2S_?Mx;G@|1v`bQ zgev&T;8FFbwzpIR!Aa&2oQyv57}RTuMm!;=+Ha1WPjCzU?Y`8Ly+DS>r}dF5E}wQM zz(QZvk2Ps!npp}XWzlAbUGA1>v-yGSI%R!0pI+?&mnt}h^8Fo&5;5rr7 zh@X6FpYSNcpsg3Rxct881JPZ?Gj_*alY57|JKk|7=4RU5iTOGG@4fk^r&&g2+Q?sR zk`5imcBrrq?<{1ltWc9>Ah#9lm+`lRS8NMvHdj=wKg)m15iHrh!1wes3y93_(v6n; zpd4Yqe0)uDgdx>;1M*KmvOcEomlYp(SPn~4{INz8+4d3>er(zV55p5Tqucw|6+PrQp8ZXnv*~1Q zxa<(|Xv@#Mr<<9X;gAE(u$UEid$1l?{M$j5>aF@Sk;~qS(h7Vg<9K#^$sx`BcODD% z%tunp;X-v2@s)1%HMk$CU*w$L)+ zgtVXded4z;Hi)kBY2C&3oSQr9{oYL;IAq?fEocFY1YqiqtR0bdMZ|8sSWQ(|Eq)$J zZ{@i)lKM*ef@H0HhY`B$f1#>LOC|hy&9kF2Y(13wq@7rO>6^=!n{PB!d=LaH=F14o zG<%+e$faFQT_^lSKbO4_4@nYmfw>6Q3lRPj2~7JK8a3TT)hlV!Z4D@9`$us;=);r- z<=5)-uOifpBNNLN6J)_MEoRbhJ|quXx%*A^A7p^_e?talBd9Zo7juPZ}5wyjlsiukSTbdrjWThjcet2gh!jCoPhg*NMjm)HUznlz{-E3#f9< z+2cff6m#x3<<})>=IK#x|Lb>%j}gc>D*4$5$Haj%%NS$Wl4mGDm|y0(MAgr25iG#A zT3YvlKbj&tcXGS|`QC=vg|-MPNn@iQ@tuVmkSm3m-b$hYV~jF122AmX>fe>_7^Zv5 z61lOyvCYXCYdA*o_`7<2dN=;fH<4|SNP44v=KuZWnAWg);&8Mgrs-)>zJG$ChS`*c|}QER?5 zR|DsPXDads9B=F@xFWQ!d zUkOnCVMAvJQf1B(-xrL0`kFB`V%Q8igr)iaz!mwOyB{VB&Q+uSRaPZigSjrOFWh&! zkxS~K$BO$7JBjb4*XrQIbe5mw=o0e-9#KPcWZNUm1#fIwP%qhKF>UQmR52}>fBwZsLiwXEoQ%kv9vN067bar>Is@Z9(jZXHbwl;ikB;-;EZi=lm}jEvNH6}RY+Z@e=H*^PrD zLg#tQ;{Wph{dzng=f(T860pOamB zczd%!&?pas-RO+Vd_8X9IkOrNY2$7L!}%|7>rg*Un=0fc2A1*!rQa-?<^$eh0zK@3;gtd_kbTe9}@7rf$J0^cYWlofRltFJ^2TmM-%Lo#CHT)&|RWHmx_WJ4t7|p%cx%8^ft* zyN2xSXHyYc&ey-Vvo(0kQdsJ{U6k3v!?=NAp2rJoAz#Sy)fjIIw>-JoW$J;~OTUi* z$whFRAAbyK9^7l*xqm`p#C=*?|LR9fj&nG@Y#8>@{pyQ)n@z?!-`{plb-6GRu$yR; z$9`mn=N$gsNh@Ebj}y^b61GS!btxhisjgjZ*yR8dVq*|lIhw{*Kw7+k`8i}TKSx2A zb$zcVXI*>bFSoPF$}i3<4BQwQ{cIEQj5Btsb2Q$!fjJ*_P314?g$4FJYin3A0P4*euiTI@N1ecMj_r>$tkG3$Lc#NCYCXHAb&!f9fxHQG~~;EYLQ$dU7k#4PlE;8?B6=NBQY%vDGX9?XOr*+%b zSln~IPA?QOJUilmgQo4t?rt*EP$e#)YoWUUyq+J3AtP*FD7!4+(g0gtn;N9vlhBeyws< z0ESy9GwXm%N(LQ06!j8f{hjizaE}G+9H@BOJf4Mvj2Wy?D_;p7xMt8QCv$-HAC(yX zv_Yr+%s3dk{jff#7$K40 z#||uF1}1)7hB!UcK;3xcvF4#PPmgL}E3y=^p&GS-01dazzBRj=B5pOMBrPP$t- zq`K?tMdKR1r+=uf_P-dn1yf^l^W3~rjYoR^JG{Ln3#e=JokK~oq)33%2OA4NfP;~y zU!M&d>$Q;qv7y6WOL~P%?Dqwni@TxgaheD6Y2^m+(_->d`edWz0DNcaMdcqK!bx+E zL;@A@BuIN=4FAfWjip~x4p=es`{P%PsN-jc!}2~06qtoj@;^wt^-dW6LgMw#oKhJa zzY3Hm@PT|JPzzU*f@GCz!-<{<461FL@4pNaS9etPp-T#LgPJ&+0)uEa;$wWmIT0==&3PHb#nG?oI zl7W;+0kHFAw3!v5NBpHCBKk^vEpp zEvj3r;xzeiCa3yv0**7mY=jjh`!2-od)cGC!b>;S)OV7Z6mmGJlTVj@;`Zyb8IK4% zD;^lGBq0c-y$|)Bt8C&@(Sz=?dwcmKMdAghOwB!4a>^PtV`vT{C81vM{aLwkZ z_ZME$w8i?pr~LuSyK(54f;oMO{UY!1QK<*l7X~%-`I+uCn53yo$M`j|?BgA9D}X!0 z6D#?p@xQHH`FMp7N7Cgjx1bldPK3VhhvCCv4&h#=e%RB~N{=|s?tp4th_7Dfk2gnq z_KfR#ZDGy07qHKf)dCGvv&J5j3-zYt>Oj|K&QTpm6Co6GRSPzMvmFcg3V&kv52Ylr zo6UEY&nNI^QOwc#YI}D*kvgX9mPP7MKy#gbeHm+hrU>hxUTOH@%SL{&pl-ywU;rPWpe-waRu0Wi6p-Gaixp6SieZp;G@u;hFwE3u70^8R#d*>rCC7eNt>N%=w#h@n5noO6;$}=bOlt&SayD#{9x$%ca1u^T4Q(A> z_nP()-;5~VIZRoGH0*%rTjtd_eCaDCO(5$EL#7Rn?#1@;0N%&LUM|b34}lBsOGe;2 ztv}@!^{Pbt_`0)1zyT8SSbNI|40@5&s_pO4%dDRV#VWC-LNK)dEt&}4rHy4d63ZJ! zJR_#&lin1M;=0-Rc$5`4HgTZj$ZmZlTw;N~$-qiqx|cv}7F0dyH76oiy!yg*W@(wK zT5?V}eugUs*Lv>yY>udfvMT6ln(IhJD@~6sZCQw&@`oSC&RHT5$q^M}H^MIQgilZ2 z`0s#FpMXI=<|UpvVhdc+Q}&`)PxL*ul&IAo(+~>G_ia^F>(Hp*zmxSkr*q?wd#+mL zZ+i}4$D~|^7@~q>LXYOiExPH%ARbUqxSZ`dWsYTXW|n$m?+lOQtw>@ssp7OfT?e6D z^X)*f_DLRGZ`L{BD|=?xPT$KXiDE$9@t_;Zm$y7Vh@mx3>~ld!LC4l#mu8S}Ut0!w z*+#3+v&@8>B!rx3@w!bYalSG2=TTjggh*1;6XG*L+!zf6lV2x^G4E!-MH@+ova$UA ze?tL6P_|JT?y^U8`5HQmnqg_r%H_zmFZRhsvXkakOUbSOu}YLVb8tYQu^0tiJ}JFJ zriv$_p+58fhX^PTc}P`qt07Ro>x+j`k-l8mx~Ay#C;p&%rV7iS{2wMjQHkflt0JDK zSixJ-ZBbdOb`&r}zCxuzPJ4;f>FY*j-F{4$>HgUrut!`X@6}tn@z%?qOW;rL;3`Wh zF%toSOi2e1#EzRZN@dor#bk>)XX3AnfR;$sMUWZ1#$}VnOw-ji9)JM92 zmW79*hRyei6p!r;QYs2J%XTcFkOp#LFw(fQfVkj`FRs5;Q05GG}2wANAE;Pu{0DIW$S`?0Vf^}@J~ z$`sNHAeXxpW%WDonJTw`^K|2o{V6N>lA#6YA*H6{dU+h&t&+TvtB1KVhNG5dOJ(V# zpu&{?00Mlky5{b$-`t!SSJc(f4ko{tZI;`-j1u&GkR5AHdr$WocN9QtX*Rr2D`B=& ziP#n(>p=fc{zhDJb|gd44T@&Td$HBVX!g+?yIn!&aZ5-?x}@pa55-=Ku|Me4 zS9fkLqT8xQ(&xI&URzn11@^6~YLXkipfO24)S>Ykj&xw|2dz{|=HAytOLu*n66}^qKo+~eOJ@8BkfDM(lzuxOTd&T#{wI!U5dg8q zab~*MWpGRL>N&*B2Ss8FzWUeB&F;Fvt^^QIAPVmfQY21rN$Cj6)qCf`=5#Is*LWy; z6#S*FT}M9=W>$cSgMV8ub9P>T&0m;@RBXOYTPL&i;PiBw5|JseGNj%I54`&cP~xY?ZvNT+n!}Ze`T!= zY=opMcPvmk8bkG0`KYTpz+bX4Vx>)21Mvb?!45>@=zZzn*hEXnVtzJo7 z^?_U8csT$vJijGm#cLGGp$}i*yMYIsyn{UTD^9pod+TJE)hYCvuoEV0q;*;G8D_1& zU&5CNP!6p+X9v5@Sp?eyS>&~fJrSSM?Dff2z-$lUuc^0go;Jg^WZ?~pBKMrbcC87wwXfFsO>E85K=V_;aQ2U&{Q*ftI2sosYyBx0@)YycJ^GIv{R&T}C>Qu(ia9-{?H+4x%> zetVM9CT**;33Ry+hrE*SG%#duqt;tZ9{`VxaOW@$S+;pQk<9OTeH+Vh?@OH!FtJ0k zamrl=)$rbGQ4~?gEX0!%3hwrZtk~t*mUt8psIAZ{|3D z>pA;u1Vkg$zb8za^sLPfJ)g)l^e2w0H(%&jb*z$p4|6%$`D__49G@TE*rW7u>BY)1(^5q;>FK5uB@DLVpqw5?^gd(3(?!K=-QI>S- z!HyUGfcv34DRt7Y9ikkd%{uY8WR1j(-2OUmah@aH$Vpdt9u+JA@DM93e5US<=_RQZ zX#k!5Ld^`kaBCzvn}rt>e(2v)egcbTCtU<-rb$U_|3bMF6n%yJ1>11+{g4ezqtyU&bwB>-MfIJ{s0^Pt+{vjgwH9PW$XwElu4w;!ASHeOQ`S(BC55 z$J@osDX_YpFxj0;ThAG0V_)%+QT~Xsjv z>gjph9GJ8+VWR%hKGtUwHIA+dEylB7Pa;rKFm+EWarhnsEW&w5KsF*}klLr(j0ga* zzq+a7OzH1zp-=5+pkh7V4*iSi8JVfP_w{n}I2H*oWcWc6C_E>8S=E=KB)cg-db)<2 zFKpt=joH&0Vr@WR*lofy5Sx>kB`w2UZl>Rj9~o(wZ>vXk^3+&(k5P@%5mIs~N0`P( zz1rej%BkFP-5TL3tid4L7yk`Gf7JkA{StVA#5?xRy*D5t^g_cA<-JhYfESAvmCie- zjg(u&LyL}%8fB#UxrfA;(h$RhH3Avw)HC5b99YAs{$Y+r@Z$%5i1UPuggE1Vr4X5gA*dowv~QY9iBS^DravA zWK2&kq)8bZ@((R9HQEi{NZ;qZ_%uy>e8t86U8VSp#8$SUBkh)5_(Kbq7e(_T6>l&`2Vfhsd9>g|AKG<=>lV-hfoeUB;xDd9}dAvaC_c`DStr#fpXNY3QN=PDnb5_0{ zqc{^t=ertzP74g&W6@a}m~|2c|X`Tn+DW zalNQPcE9qZv6qh23#>{=8{GKS_L(eJ>f#1hegq-gS!Rvc_}r3F;#{Jxvr>@o58a;I z$CvPhG)vLZbjlwP8{<7)cG7sHp z)WFHD8q-RTU?wMVH~>%d71;Lh6@z(siGuC+Gy@EWX_a?>@yXY(7W86m0To<#4bVn0`PmDa;^iWJUwtrJHcx6n3Tza2qaDZW&|Z`d_J_AT#>ay{MW!& z%~5K7x_ubrSXNHBL@Q?jdS*KO&Y^Pdna#rmXsnbs zGC#COK=iqs{eez92~AE!q9*5l!mlJW=4*i|yHf<@wV_yhsKTKz5lL+OZ^922P+J3_ z{}XFKg!dPO4o>s+u8bbrGDAK|wSY7mE&M7NXCr4Wd2r3EuuNeZpZB`K`oZzjJO4Gy>HEl|N*dH0Q6xgB>1r?=&IRfevXbBW5s=}S@|F%}f zJMgJRLpn=aD1H(f8-6fIzwHR)x7^^j!&~agq&m6H9yRSl(!IYga@2g+70PjRmLh;( zgtmL=VP5DWscB$BWk7k+lTi+XK*yp_(O|4riGGH)n###9C3C9rQ_YkwFJszq~5^NoTZhrdr@ zBD6b!D8(N0L3ZcYPD!Q>OJsOk&ijv*f}x>NYl3)!KL1K`6a)eeIE62@w{>4sAbic zhPeKq8ZL2^TB8$Yfc=)RXc_*y{&Z6`$=Xl*NU6JHzy+{@MQTTl+Rm_R{pvM&+Z$HU9tm;QyYC(W8DCBkB6HmB}>dexgLO~ z5Zs47Jt($B>*qlw@PyB|h;$^M=HXvd)0>Ho^!(N4Hbx2WHsXY5OTXaG%%8xeBdwUN zOu%gMl_4uS67zm$AvDs24`?#_iBWyj4;lu!(^H?;{aI^TR#KQR(8XlJPY(YCh*H6; z9a~`VWP2x6yDXYCsF#M5GJo;c-Jz}em;Cg$MrFVqod-|3_IIh6cFV2T%s5@y4%oE*XJ%&T?2TrR(8MOKi;cOv|z%X4lF#S z=>GKS;R}8eU=02u-JV)SR1Pqc_wO@qr~7=yPo&;&dl9J*ZC68U3%P?=y*{;r$(p>t ztd+o5516$0&0=Is8;<@#AfXv{$!{+{Hnp+yTcc!J-C)zP)wwjkzp#rGNn>&6oZDtX zabc{v-_>e?pIVH76!*Ua&Yu<73p~Bg-WEe;z<6+4t%6dDzT6VCe}`=ioK<@^uP*mp zO@9BoNU28axwxU%>fXM}|7rG+XOa1bzd<0$cR%FP!{*g<^|kzq4SQ}-%TyC5&gI2B zzwO`i9~R}(Wm(r%4ymmv`M!v>}#_G^@< z3Bx^UCI%*KzLb+ZqeCn75)qXiWpY_dX7f>RWg0D3>hjl7Z>^#?mCs`2E=bz7Ks3_n z5v});A|=i%$cR}s1!MLVPqe4>i~2)ie%vo@F=8X06gj`_b;b_U7cP%Qsy&zBhY_wB z)FvR8uY=T$WycbAXYVCyTErf)^|=yf%1dy@Csso8+0n)m zJ+?}g$f%_#ewmR~`XP=1LCO*EUVCLwA zVQ(8Yb%@`eFf{e)p*9M8Az-t+jlWAaXAy7CZ>+Pbw3mrrRReoh=d`+3JBSgAp#Iwn*LFtN=!XM64Tkot$)W9J;EtE4T-C= z2Gql`ck#M)otR+NMg-~FEB&YP$)}HSP3sCAx?R3TU0~5PvtgQaTiV_8Pus6N_dKON z>tluy(aXBvny8n~m7a@Peyo0=7Rd{`WV9S0@vh2<+ZqLqoH2Dd^(c%ejWRm$NdTRb ztntixo<(P3`Oo@O{^@6Ukh&#VTNn8jasP|?+2#DTrh?81X4;GC50W=;fBY?oCkc9~T_NE86s6+pqvNe8Qa768JP39`5uY*P{OS%AkMw;1k=xUXbX%Iy)43 z*MKav)~iGjyC9Ed-0X;>v??JmuF7xrwmm!k;y*4uD5l5D=Gk^LmaNl#wd<|6p^%g*mx4yI+gM48KGsvA>(&WED>(c>ri zeTVI#=Tk;GOPeTxXQZht<&*4E3;Ie%1ic}IO4xR_!6QpH=~mfdkp zZbJ79841A8)DK`84R*@;C*O0Djb6{UEI(0G!1*lLwI1zKO3P^cc#o8h2e9`q=cQZo z&m8gE%7NOBpb_Bvai>S-b@U&JyB@3-qoQvc|JYI)f@8xc&u%CwmJP`Atow+IxwSkK z75ifRVX>K{x7YjG+#uJ$K75>m@Lg2$(S37uKH*;4B!@wYD(wf47%5C%9rOTP@!=?m zD$WqG>i4X9b~cdvRh?{{9Qq1F{hr;^2On-?v1<8g*o7XUZ$-hceV=gfX-WkhaXdU? z`xz~428i&ip*i^pq4V1JAZ_dtP~4(Y(BdW3FvAahx*4_u(a*mo<=%eKmEi|u&hDce z^i{;jgFkH$KWw;cSZjyQ8u1Az?K_tLJk~P;{K3?WSw-|7+#oD{fN=Sg>=)Qz-c+Rd zgk_~}Je``!O|x=Y{3Ks%hdd7_+<)L&Td9Lo(yd7^aL-<4SX`AMGUL4Z6;Vb8*3SNu z+f{*+MTepN6Q>DtX$y^!u_M7^O>y4G8tq8xzCuFnAp`!L4;(q=EgMDiG72JXkX(B( z^gR2~GVbtVBWu<2~&JUsZ~d~7ltgZ_j?8RBlgAgl!v zibSARH|9eM(08vcBSQ$oJFGZ^d56%iAJp)PhqAfm!>MlBLbDSbj_C>srEF*q@*lsa zQ-(S!-|^V#s+y*VC$zTs!lKLcL_ielJqN5!%g=TFHpn$3q4|CS5UnO58|H|g)%H7| zp;7CcDS5!PGPub1#4G6|tulTSRVS`+o92*(b$^Ws!k+ANG{8 z#w+)Ws&uF$7bd)ae3-cQfe`8bO|{Sex2ezjVpI;Xb}8d+JMm=ntMZ+PDn}SYTBa8q zp>@c7y!#Eg&KP4iHd|htuGZUVXc0TH2K*4RE#7hhPFypH_RKz7C)RTuO(J~7XUR7k z7e+O$OHTFB)+!{|_V~Ow%1vE)62;{Tl%t9x3vc z5*JC)MM~V&d)P-3dEX`?52fLNfE^tYo>@$Mk3PsXl7&X~7Y8oKlS1JE+-&exkLYVV zJ%e#0&uw@c?VlqL*x%YWTx|NYZ(=3!plfALn$ae5fJ=pSfrk7u&1@Z>fVY6UpO&O{ik5u!Zp)MFw^d%*0DJ(_ zmG5`|+yo`<#xl2>ZZzwJ8!#A<-wmc$v++B100|>RawdQI-FYF03;)2LRExj^g3eKM z-d7?3%}=S`gEbaw2sbUv`7ok1R^&-3OHG_%$+tIp2bYqEG*t;WuN?iNqcYNyHj{xc zp6m@Gn2M_XsgY%8zJ2zu)Y@p|!a}0FFl~_9%?tW-oqp_JAgYNK>@je4oO|NI13UYg zbv!X>rEpWt28^QC2Z(}|2BuuRUe8oe*yQPrA-Sii?9+cahYfq5<86Rjw!=i7>Ej<5 zF0SC!-)SOKR$;2w)qjg8%1NjXCU#Y0?M9jJI5q1ed@ z=JRJt5*j)q-(>umASpPXqOTwhTDh5tN6W{kLx*@y{cz=E)=XZ z;LY!BXW5;U{{SG%I6mqiAN#ThR_XrN$t>0hdq# z82QX`))S1UEX@;1%j7yhJf*EAFXUVx#`ddE7~-7-WFG#CB93cdX4-82Lg<$oYmB&w zx2c@Irz*PGnP{ZCvvKpzTBL+2t1prdg2bg+2Q+!!^fX21fFv4wC(CCV)KO;zjzR_d z9f5i^?~h zrt0lH-jyLY=a``wBjHVY;3=fwKpZpNTvZ1p)!6MzY|T<=S$Sony_absIH`toOvZt8 z#&+GvcBn!_@xsbWu`&m%h$ZskUF;SARg^)|0^rhy9`?}poy50}+ZhobQ;dZS^O=qB zrD1LTb0xJFBkLH}e%d#-(ZtzP2xE!tBO0;(*b#Mf=Kay8Y0O**(GnX= z02E_?H{uxixwF+cs@FJ0lu+FD_MDdg5rXzlW=}74 zZ?Z&A8J18i@XEgrlgPDtl4;=Un!HC5dQQEz0p3_kyYZVUcs&Bt^|drAfo7Ko!q%D6QO-wJSD*p2-hO}TgFGaHtnD>*z#AF$=|iFa{*EsnYM6@{J$p8vy?h&3fgszwejS> z?Jw6Dn+u5?XcAdpfGzwDk#9C@ZQTKYc)r87&GF#AwSdUmct@LB&d*yG6;Gd~&|PVx z5O|5-41Pc3a(!*+M63uLl5aj{Qb16!p1bD&unCub`Xv4Cs0!%utPkUDHi_nYQMbZy z`?Ok-%!KCYUjvsa1noI>Csa`q7~-G0n%(sNQ|QWW6BJCu?G6u8niBtZTjnEn?^wsa z-PP!7_1Y?Dg0lGJTX~!G1$b?Nc_;eW!2lHLsoR_y{_)+_JI8Uv+m>Gvx0rj=XX6gQ zuz|po;s_{0kfQP6k?Y;b(wjcu65Y7HvNKb|Mj^&W6iRUC$f3_Z(0_kUWWllbWrJhr zonG6ueM_B+@SsIu_PV+71yINWDCi)$YcQSGS>dBaSVMMpfR{U07UXALfTu<9PXYIZ zXEZrxBB{!|V|=vICkEG*tg8OqUGxjd0E$hOdO!5+0VEi_{FSwKxeKz!;IV^*%VRIN z8Z>Z8d_!1+ZMEozEh6lTz|{@eQrlnh!aRg~TrpvYHK-Hal_I_YwGJ-QIV+x*8dV_o zI695_>;liZ!P9-0dnpd8s$Oi8J2hz;6LSU4kkI6(C29}eUwlByr>$aptPrcOSd$2p z+wUTEuMDV9Xr-Phv>ba_krQH7y?2rR3N=84`v7DS0!R|?EayuR`Ewn`-?rrdg!k7E zzFSSkxpP~0!1uuUJM8>4p)cm=cgcrK3EspDoC_M79+FOA4_SSyX_J48`dgByop2n$ zap!{DWS42VZ9~+GApc_4!PPPKSK|M8KQT-#C6_#-Gql(4rCF(@GYvPI7Ae!x7L-gSl>xXD<`9};OygH=EtZw)pu8ycR3ee4^!>%0qX zn&v1AyXTD2G z^nV$aBS+QD7Ot`AcgE|BB4%4-OL$sP{(5aHkoTlP>%IT>0?-1aV5-(v)Szn}r@ z1`dsHHI^}%Cyg&DG=2fD=)D>LQKt8{H=&C{fEjN2w5q7Cd3%T@7EOX9cKDteHJpmh z#@loT7UWHVBj1AIUz`o!jEi^(@5fb8|5W#uLN6_HtSwMauNv7AI#M~DQhHTENnOi& z*w0*eS#_6RA3b6w^i>u9hVF5Ac-H2_>KIsFLSBsQ3pdYi-|y+REXrC;eIMhyBX1<; zN{Ej6h5373V#_q}qlKrocRDsV`1)bkGGgVyZ-&Hr^>TZdbHnSy>`HT`0iCg1+Y)a$ zODba7KLt`kAM@=OWL^(ox8_IR9a&YXw6M7*yR5^Idf=WPeJOWz%A{>t@aO`9e|U`g z5a(pg3*8MdE)AhZPB1x??%Y=)^M=s!zTX6BATmxr#t6#Xjkc+g{H5n_aIdtyB~ft7 z;CgKUO_7Lw{b{L`cX3{bTs}Df8I-3#f=ZM*gG+?|ETvIRA!WdI;FH?OnmBvqDrSN; zZODHPk7n-AlJ^!oU5I=W{zmrhWf(P`wilrxfrtQ3()9E!-&4#|#lS{W8m>*ueCpdq zTvbS77t{f;vS@h|grpkSX0uk=jXD!euM+tZH0r%M6>=(i0b9kB4gk>Qu6s*$FQryn z!><2x zzwI6`SJ&wvO^RS1oF(3@4;jfgVX%sbE&U_Dr;b$D>3MV&hI|a!)*rQb`QnLo!)%)6 zW90sBZ&NRhYEAu{5%{pjmM5wrclQl^=Ux~O6Z{NY-!~~j5rT3S#-eQQS}fkAd~4=z zY56c)))XgioT^61k8wN{UUvF_lDK=!yfh7X*AR!hp~GqrN^6kV5TM6+EnNSxp)fS3 z`X3(q8yV)!RIK4Ky3hpWVJtD>))J>qkv_f0e5fWIJSjtF9a~mZv}QCKr*t zT{rAgfIxEp=8N@8^}L}&4O>vMka*qu`0!CJDfHqBz2QPR)4<8-#p%t?yIQOf0qm%w zdhhYgOEI6H{i0v1#~&Xd>rl^y5eGUVwo*&-J;n!Cu7=Ze_z@s`0z0f3{?Io35puhw zx1|eDH>IYSqb?ipRtlKz_R??vCbPv|a`<}xTIo&c%I%?qC??I%2mB(;z1mKAH5qro zSrrqaip~;SV!mztYl~G3Mx{#VOXD3da1Q)5k@=a{Wk$&DUgIpjp;y!pac|cxz!kK z$9WXalsZ~KA2XAaKX5xrW*k;?tR3NyC@ zOeL(|{#w?U9ExDmV){N~K5GAWW98Wg#_naH!bN5Yx5FiuBCaaGDr~3xs zvs0X`lRme(XHR_SPO#OKKu_~gmTe)*AFvKh0d4_~%WcR;(fwW4Adml(nbQw2_L3SE z%kR2G-t6!W@VG{7va#y6LLQK@-Kl*(w4Cd@Ym@#w6wY-o`f>_XD0LSyo-_COV2L~> z{(^3H>AIkg4jhJj%> zA19;_TiQff(5q0BFt%IkUEXyPxHx_1-q4FTRs~=I0u6g#iW^1Uu%}v%vX47`6cnC0 z!Jc1cx8G{-tCg}9ySRh0{@|~p>QzoI2}v9n?j>LMCZ_|<&>hMmGo}7eAJVIZ-K-Z; z&JOfw&!dkv7)q;*qbN!SYNJhWZTS5DHY(5xm~fj}5Chfextei4LFJP#t|{o$ik;dzk*-n4K0EtdkVb&9KgqM zl;kks5&Nz#GQ)OTmtE9tJ)~1{{aL1lA32VrCjyc#5LsP0@Z*+Q^iW4AFl?2?%a;?* zh{=b_P1O|S&uv@)!;w7LAk}YG;A6-L%>B9E&npQ|HfX8$M$$wCNchx;vq0zz{%d^0 z&UvymP1c!Z$0`dK$EOl{-3uM!Ub12(PQjkI`N-yHqiC2X6=oi$4h-Wn$_ z*PFeO3KUz=3oFiW24a%%Id!R$>`)zU;!scG~Yj8wH)&ukf@s>VzHwT#vYfP z$D{E~=3U;oaGRa52XXJ~I>C1F`QHK3Lv|(`4^HJc@isWEpCQ?T)-hh&bDue&^77{X8)AksWnr zzk#EePI8<5sfc!S4RUl=Tr=7{CltOuB6&#w^`Jwy3v$FNwETm)KDg zeE9vnDitvxv4ykPEa5c?f@FinHcC$EldQNHuA#nz?7&tnaQ`h`Yss)xys?D8k_HJx zL}$}j<$N#-4Z6y8HK)t6cWxp&M4xn1BLWL`kFKz>HeIva@eu~sxrAnce9Kz9ZY4|G zIDkC@u>LBiFD|f=Atl@d@j0JcIjSG}jcU~Xj@tfSn(>O6V7r(YGppCp+N(h$g=qj_ zNPOLFz712rSNp5iErFZqd0uY;su7e6FPMcQM6av=N^z1|ejHCV8QZF-k5O~Pq`^T5 zEw3eN=jh`fmeEjIiFryKPw~a!{3ti+?b6<(m~Y`)&vJk=LL}}DxUltsf$arK>At~i zsUqeFTYw1%#+jI#}1$b`eb3NzY&w|GiQn!p{aDlWPf%04hyg5 zV4!yU7tCQFXSYd~n0I6+dc%T0$3K&b7xUveolc}-rmM4Ui?}yoR&jg1}M0?OIT82f-ujQ3alhHoo=q&YV0NsG;(DA79T&`as4isp`)Bf)@` zNqkTunsjftk|l%xE{VwPBFx@C{lxt&!|*q7{%`7`38P-ZiZl|ACoa0^$|QQsJ&0FH z+{!`|R6sRvh=qXkfMeEvw{?5mox#Lakw*GI8}s)I-i$7?Q4T9UOZOVIZLs<)n z^Q|J4opV>y`r>xUE*b^0WLw`$WdL&HOP^{IexwO6X&pt}!h+cMy(#3b1YQ9Ds z&U?gVnV8}juS4~rjP5AtXu$a1T}Y$QYJF_yoxQr-2!KK2&<+p$D=?zpP4| z(s8Ed#qP0*xLo4ZSMHFtx41`}>iJ9xkI|YrBNVF;T&j`U>Q-nACg-=wy_$sI?6J>! z14v@>Oa02+h2&3zPJ>6k7cIn+*scp`Bs*tTljk@FlbB!c*8jB1tP%|3o|nu^Yh$;jbcbCF!TQfF~Mvrv_!Q)Q0N0B^Z;x zVYiT&P-is7W-{rWAoAvyY-T+0?ZZrigj7BbNqL3plSZ zP;Ys>(0)H-_XUC1*1(sQ#`N*r_u}e!aLOVD>6k-&G(-GbUw0spIqlHGb@tLOH)Zvm zoz))y)QL9l)uL$z3#?gHIZphyRRdm?zZO5mCbx;s$e6Bph5N`YD)t=nrEA#}0^wQGAHYDX( zW+hYk9ipbBFk$p}{R1>NB z3|S(9`hXWso~^fSyZdT2Wt4~5vmfz1H1;`6=edlY&5IqZhP46R58!Q46+w7 zzJxvi#U5)cfM-kvJzeRMX1<<#I{@)b=i543@?L5FiLKg~R$V`B{Wtexu5MjY9Oupntep8B zzEcVY|(%0EO`Sq=nov2BT(ckl?tdg zO%Z*CZ+<6vkLBk-aidya`Vbai^6)B$~v4H|pBZxv-28QBpUKej3XxA3YT* zp(QQeN}r0vwy7q*?U@v)7k_|0{;ZE@Z9n<*?IKgyrBnsA0xo$`u{E}~KZ6Z4Ve$Lj zif)n;L)4P|m7Bwq>{i`i>1o@5TL{U#wfNQY)DPubCMT;?XMQy(8m(v4&;I*#*Fk%danAsr*Lae$hCib75Pe7O zFxB{A7<09Q6mO1ZV@<6+k7X=d3ZT!#%$P5|h#$4}GrVzV-}Z8y_jCPj;!eCD`sr3? z>e}Qcf4j&z*1d@}%A*Z~wY8a^EDzshewMp|XpRxxngw*Rp&S4cE6=8o-I0 z!inclIBza}TKU4i@oNuW<^}4bR{Nv>d0-zc*4?>-o82)9cvu8)fg~m7$hd@&E~xMR zGbQ~SG-`psu|gWu1|i!}0W3Yut%Y^)rzfH_VKjK7FRNECHSmNU2~0BJB{orlVnAFw zu}@|)dhtzTjfQ`8vd1$-W62%hQ;r1yZpmsfs8w{UP8xW(d98E#esqko?(e9P$YI?} z8k{NvQXCC8F;9o&kckwn^9%l%l9{;WpMgRBiWrk;-=5|=JDl6A+B-p)&wFQC?~gcX??i7*ITm+<)o$f;i$l9byg8MwOEDv zV2S#s`F*R8YR(%D&fHhk!j0hasKY$rr>6?tRnbrx<&l*m-uBU9)v$|K$8HM^ zck2n{OcbmPo0Zo)HHbxBz`UykUkxV<0fiTJuv zS9$2029s=G{L@uFx!>P%Z5nHjO_;-4#tDCB7P~{Q&M6!}vS05$KHgO0_J1SmeRYi! zr;tH3y=uI8Z-C}iewenJq-L?NNwK>VNJpymh*RxI}Ob`Lp{k6c8 zJD@a2zbj(lDxWz>wysU*)e8!{aT~_(P-ZrLf9-3|&rNXCn0Khn9shcOlE*GTSe%8w zN=eH(2<~Xb840TWKE&^^+cM1-z4oZ%9rMn=<)6$umy)29hqHg0 zVWV}@*29zJU_?+RnzUFAKK}a_x`i&ux@;y4!q(hK+R5$)CfBU92-mC7A8?ynZmhQ? z?vBa>&gd}3&vOCmH0j%X9p(IZ`p3ad?GqFmtvjc$jt-04UR9xXz3VP)*Ok|Kji3&u z2dHdyfZ5CtfCgQP$A7XBvKk5m%0iYd%wjgRW>%#XDGdEzooF&20UjI^^IkNOv3GrJ z<`XhW0CsGOyHee;QJ>w52c4rCp9jdQzi4-ZskeWJk(r47jOi)`k13P-$&sO8nt#n zlQXY>2GvNl|^XMzcKhcV{7!L}! zNqIxShs*YH?rN{K&F;dd2#gvCs0n))(MXOLQpiDLG9CKNG7kWcIW~t6;Qyo;ewfz3 z7uUmzM7Q#bJEG3kEi5A6k~^$tgS(%WI=ojqdPVMejDb)fCR5SCQ1Z6W6FZ>%BS{W# zdFv%^x!Q>Xq1{9(raj9HUH$_B*;UpElc(|H?~yDnje;?5@F@WD#ogZc-z2KAAk^dQi!*Z+S_aOFMI(vFp*}D3E}4gr;{sP!%hqUWo(gkDmN?L-I^a7dM$n|H)AxFRiNXUvk)78(F>hF7;9GBdB;q zcy?!oZP8IER!YNEZkC&W@ITm0GxUECIH?v406R znK+eKQ&;M6PLqfMi7hf{&GS1h&O>)b$aC9l;NTc$IrF#Ltw-$^nxBr^7k#b9=bR0V zBbj4eMJhRc>9iWHPck2qK0a5FkQauPa<6V|Iew&c1Rgy?lnhQ}HPMja(2&QFqz^G# z(Puk~R;#TY$C zHYWeG{BdB-?%G|HthL$!RYv446dBIUpdr}-1EoI-M?gzRUksS#)G0$X? z3QqvTOH1*FBtIpealcCX`C1zDvbvOC9ETyq&CO_VW+_W`Hcv2zb_S@jnFKiH@afjY8a?z_s|0E0+PCjSCEB_0f`HV!>Fc_mwSnZY=K&` zS|bqLhkwofUTDxTzrcK@xeNglz8=Mk*=x-o=*8IX>l~&a0}PG;-$IVNI81=0{hqbd z`Dp!QcKBRdR~7Ry#si|+9D@2gpMvc7xDNj+rrqJaBBgrnu#a77jt+X`1YVfpFw8DU zRqW#m2Hw1^@eb*}upsF8UMs-m*X3()|MOTo)c`mZ0&zOc>M}bVv3KZ_K_@O5DTpfU zdZ;wz)ow%``kp66k@5bsB%YB?d_7*w2DY{*n!VlLz_Giw+*M`t1Td`!eJ0R0nE^D= ztN+$FfT+5cn3h&9K2_Cz#y$9dAh18Senb*gh7kd7Wp7-4MFD?uuA#88d&sU8emJ&D zjLauy9-H%+tK%_bJffuf9^Tfq#-UZsXIz2fuU5X2=Q1Q?s3DWEmD7Di(s6%v%DVX2 ztH|+!26cP)ANQ4&djKAbKMCLT+6jJ?qiW@EVy5ue=rWhLn8$y60qT{5*n;sjwcV5u zjoR4~$>a{0=9-^0YL@-ynoS%qO;Jj24Zi^XwwE(QO37abm+ogBM}#9r2xFt}O53MH z1UO5w(&7-AvD0r?_>9+fH2np}O>*{?j{E->PcrENF!jkw0uzJ}=Id_HA${MO#@LtP z>*p9zNz-2rMX&T-#s=0!+1D*R_UB(`&ErBH<{FTm9D8xzx;EGh%SjWJvR**4WmAKS zrjIbe9nKBv#`5_D@6@Y|Ze!K=-WBe|B|Q;j9iUr!=U_%&OlB&UGoo_@CQYXrIVUm!Lspeak`0nbwaR z=eM+-N=?Zkjh{Jc?sT^amYn%-4zA!ctUR|Z3z=*OF$wLBBYf_EL%f|RGMhgq(tuKs z(jUMZzf4(2)%XPOtT*|NhFa#<>dntl9ieWAi6hu5RNS~0d*6)XrE9l-wSPuUZ~cAu z^GT*8%NL%7s0NH;0kl*6t$1$(L-45~B9Tjwe23)7eaQO&<(YwWF;0rHLULvYItMKZq?(Y;h{F3HA9^(Bl_o)fD3(F9fk}kMELw3Bi|X(OkJq}`;|S$ zzW2dw0ADX`zv?3w>m3%(y3TczLK>P+T_?XE?S1-E*Lu0s5p6o@mi>)+N6Fx%g2_-l ziF@lW<9rs{54*MM_8g(rAY;w2pKp!&1MkPTE>LQickU9Ks~P&PM`xa$RsMYJmTc@N zgFQHQ+Ie`AkjJQA0@odi(tsbttfdK+id%iNFaHVTZ~^eB^Z>C$Z_*A;b+V4N-!KpF zZv`8bSq3h0V0;4pC@W`b1RQm5+G2a6?-Wu4(NklLI~!TKae^-{Vg7iH(;7Q~?7n(( z8Tgd{qgy=7vq159{lA;VG>xUu!MN@;F_=fRmuR6-evDZFuV;3CTgMP@?gOQn3mYK@ zGwUyi$vAB7r1yV}*Bf~n7Xl8xsRbtdM|D2-{OHOlrCm@N|KwY*M{9PpyGCMX_A)QdspU1fdR}{LGTGMGcYU1E z?T(e0#ygf#vU8l8ktcSu8mPex~&55ZcW zeyRjI%q>N)UzXIT>159mua;3feY`w;);TvaZe=!uXonr-G@KNxhm-_!q{;cG`{F=T zJ?+ObRklA+Rk2fI`o{i^=(wxL+%dnSZ?7A1r@n5f|B+D<+b=YV2TnMX<{tRJ?7R;* z(zO5GQYmzsBZTs9ZSvKE7(346P09v1uuM_2A~*X-M_{PJXO{oO8C${%IIM?(31E2r4+%6xTW>raLi5}zkyLlTiCso9HwF7p=TgF4r zuH%9~Ub8RCS8cTSBqegESVqNIy`Ki_l#FILyg_L2XVN0M_J3-)DoND5ZUg7kqXNjQ z(vZ|Q2!-T_Y9GOukAIP-csy&A^7|hqE8Ui;F4W=a*KT*!rgp%O?}Dt)WSUYHmug>3 zjM{|H4R&^mG)}o|dv~)vdYxu4;%wh1`H_FvEiVgbPRS)%qE22c&Ow7N6e1qXEL0Ce zc%+fRlotemQ1=4RQP#CJTCJXEm2R|{`>}tk2<9aMo%QAwJ|JO!XU!QOSCbEz#L@Uz zaGuIfkob6GwuuurEcyhqu|0{5M_!}5qP-hpSvQmW;q5%xjjp0Mj!N^5!ap!i73X$p z3p(vVQ}`dUgkyii%i)(_mDX@94(-&AEsL$x#aRU%|3vA6Jl=zp7by)${Bv=jtq%&3 zUihSn6-P72AXCQ~hWU-PF4WQC!xR#jub=sT4pD*IUU-<^_bEROeFYr>byT}YQL?11 zE%3?KdscT21b@ssCxT8~b^Dx~SFnosHN8dhJmlL`Dqr}rN}x(%~E z-u)Mdx6#kteS*${hbDS2hRY1v0m!Aj@&IuxvEPwvRW(XETKsMzg82+kz2s?F*L(yER=!!|bGt6;D)F7<$ zKddPQd_8A4pE1oMR+tl%h1*^#{rJurg3ar`Ywz3-|NjLyB?8Zv)Pj;s1C3epAe|%D zWTFM{5?4n#=_AQ)Qd6I7EY`AU$urXs_kq7Z8Jc{ELHPe0YZjk36F>WYGLRl1T^}<3 zOLEef?{!lz8*~Sbv=jKAgyoJM105T6TVQ+S}!n(~BhP>-=`d!sKbjeKo&cfI`#}l~gnLZRwlD+^+^w0Qa#3)xk`N5lEc;g>c zM`>DahwPxJMd!W#CW!F1xU4QkX*z_q)LyjBywhK-QId-@xs;xr-iLp;&3<8w_1DM= z`nl^>os07ZDdv!g+L*aPvGytoJHYP!14i$%bz{_g^plJ85uPl`?Z6zCXi`8qKZW|Oep z|NlG0{BAumP^-+w{hu!D|7XOU{!mHTZ*#$6l<_5_VewQSd1cGtH_HSeabL##Qc=Ua zUqAHk!^*S`#`)06oe%?vgrl*v4b{|TJP4pqY%ZtxEK9;KoR~>PmFqy_?1()!^ETKB zn$F(8*h1XIC|>L0B_7sy%rLO%>?53Rh4a}ONNPuq5FWX0f_UC&PrQbnseoHgFXwHC zj2-re!&+e*-kZ)fDafcMZqQhNPbbW{bL;mT@K3MgsfJrAP>Do|9E$l?nw^euL;rjjFM+7PydZW9vd|;!yTW$ z9xbE!0k%59fL=gimnT6>WfQI)7YFgYm3EH0kbUdu&q39YJ~iz^i}4Q*@pe-fYy9E) zKG_koHx8dkpD3jnpQst()IP<|!`;{EF;Mo-I$S9?`ExD%>C(rSLLh^T=ol2JH&jSX zMi9CHIubzCoY_PC)Od~IQ@_aINDSeOZyyz?eKdV@LKcpk7~!cgFVk=>2wY$LhAa7` zq>2HphjLurlK(8IdYdI0SYVuo`rb~Xz_0G$oHF%%YrW~sFIfdr$JFI6{cm&CHU?dH zrKA#+x|8|z34>epm$!pv0f!-eCK~ow`FqV<$w?QOQs~0}1WI!}Hu`P&yWecZP2QHn zKhHXgwf}8!f1zzga0^DN(W9ADY*xE$!o?WjttJj$A+%@nK${%RoCyBCr*9B`V{Ljp zeBEW+66ySeoN;pN4@B5rDjaT~Jl^dDWrMCK9{0&%>|V0+tcgQDT-SfnC-wwWZarnD z27G>s7!wB8&`hENqpWNMXCx2<-xyIG*?0Mw0I4bb+3m<<=4Nh1xY|(h%<6G`D@AvL zpiV1?^|ct_Cf-TY}OonWq~q31}qKAF@bEiO(2da>{& z?}E^lXXZidhq~s*ZozkWF`u0rpzrL4!o1HbjC5S@0aO)Q9MfD1e-Bzcvt8P6*wLXE z)zekqIflPtvGQ6X{-f^6Xu?)DRrBkhpH=mL2Zf_sJGTEvkF@XK%AehTqTylk8aEjC zDOS0^(?3)7+_U}pVH4o9YL#?y^wwy66m@kO^!p%4u0ymSW~r?gG8ik5%gDjdD}AZWtd;0dAZzMIWKktuWE^LVqOqDOUKP7p4^)GoBMFz?}UR#=Ej< z1UvY`10%sR6Tl7e?;27o3y(JMe)uuNwU*HUQp1)=&PDv(_gVZw(&tM&?YruSXQ(yq z_RciDF#@SEhS+?xRhLJtUD;0_A!WZqX4wlEj&w%!RI%q_z{>!kFNxn{s=3J_rt!{hf1y+FLdHl3X}Q-rETduXG@aUk z1|j^GzWl2Fccfr}2KMZ-h5ymH_Ix`Ja9+TzGrABOAf_1`HuQ?<76*;p8=kqc^nQ20AUP$<`^?0ZNqKHePAMy5B6TjbD)NiF3`OJg3C{N8t6Uq$YixGh1I){mU{Y zZ>vB2+S}tf)BxB5+1e^vEfET1GJXm9aS9m)r*gdclm5iBfY}3k zu4xar#6RA<$m}jTe2qwA0NF}_`G>$Z9=MuM@IG!s4oMltg=S#)1gPUic#IO>Phcis z!=>>@-79IUzoOCz=H7KUG}{yrgl!y9es{?Y`fBGkmD{#H#G21DyMV5lnDyeRt&7;n zCCgd8w2uoNjS4S=Xh8P3aZ-t4F*^24KxP}x@yZg%>~Vlvkw@@;?+%YU>uURGhofU6 z+ww;88x$;wdEA;7nr-EN#p3UB|L?|y9|r)3r?Y1}&F8`gV`0EXI}}>U4Waof3z*Iq zkrTg#hbIp<^v4*^F_Zoz&W#ZqmV|Zx{)JwPZQ>`8c#zy<#QmFuuGxXANcHlfh+l| z&~R%1-kNo5*i$>k|3%rGM??Mp{r|(nBx?yFCaI8RlnMFJ^!1pgo36S`H|Y+9(NktB9Dex@KwA)|dCuc+T5-dH83?JAUBiwXHGih6Rn6yxA-74FVQ3PCF*~X805weh=ez z6uTo6I51dVXtVEBIZ`6lHaN6)}K?@fa#wU`Qdk(9eKW$^*(s#wg&G&KWjLm>E7bo+Q8I?pgOMErSvsY9d&uUs<$IH>!+K6>&5nd1>NvX~dM`L+ z2~<(fPYoeo!rSb-YV*ErXZ)0+hT1HcgDKrWPYjZHJ$s#4<hT(>E=sKv zLtR%qibweN*i~X7p}jpC_N|~tqOAGWCaU&jLu+e7Hmnu6#*^PZdXtJ2=9agJ$oCv$(;lR>TmmcF$!6%?r? zBQ|id_Yi73Vl~0QuocujA~X8|s`tmY!gn=W{fc@Dy>n$YTk_2R*uyps#Xmb9Kbd{! zj9h{4>~fmxGvLgn1Q3P?Yful};wI5-w>Kae(#E1T=gQ}}?v6xXVmKmu7C@ki$o;HR z5UNv?CnZh%5UTN4rD!OAsLckO0_u3qO(_-=>^;oKVGJ1J$InMayBw3;QX4{xq&O4D z#-T}KZ2^L*`Xp(rFV5`AtlsrUDf(8qV`-|WiD17=^1Ms(J{=e?e%#E*?f%HM zu!H7rV-6Gse;2A~TpV)O>wGE3+vPQb(g5SE^gKGi^4L7s80qlPPq zn0)|&#J>VRi`3i=%4kt~kf~?=zn#ubh}EPJODjyE{!!2WvO3q=wBunkc=%=JuoUKW zQ;b*v+R_^*7o0QPJ}Va-CKu%Slei8I_Hi9gs*rx68S@RXzsK^XG+~6P^qV?b)TWkO zzPk{duu-K=N#ebAvUENhzJu_xL~xd~KRHeJy#0WniI&H|L6^Oif}C7Gfc0*<`mrD% z@PR}3)pfbKB-{k3g|u#}M=bre8Br>9RtvvxlNbydoG5Tq;|@l(;8#CxzMV9w<6=D5 zoUtz-Z8A&rV}}no83h&us1Qny>Y39S0Ktf1RJ|5_huw|GHj- z3WCtd^r1cIdPL=J#xp+iPPe13(7rKM71m#~{lH#cZn=JWpYXhHHf|(6uv#q!%dvpp z{DrsVn14PavH_N&_X8b%`N+`25cz{P5Vkkl@4I&l6gPvgo(?wm-oBv(f``LtlNKY} z0gebFKyeQRoZh?lh49_QC!$y^&x@_7S`L|&EEkx#%L>3_g$5?$UdmWRa?&#hVHpvl zP0H>qX=YdyDa}_=iL};MF+V@}!VAD>_Ls?}3VI~Ee9sEWT>QsUMmig);^V|iAgoUR zUAA5e+`MG|vfd<>PQ$eU5hThn`CD8ZS@TeP5MldKXr0<4axn7)Z(t+gQZ>Z=J+Yxos3c@WYVk30q*Q;*PTehpEa1>pXwTrij(u}E6!jefeFD#146}H}&~5%#?m)|~j;Y{%;1D%&*KN!C z9f_WWRN>BSLA$FC)&0x2Ty{OuDy!^kbZv9Ya^yCk$P01M?lgYXI3!s*L`NBd7(H1&)Qw#yX)~B`4jNS_cnHw2^o}A2lz=RxeOg>a97RD4!rXp z1iy-|Y|jW5a$d<`GUCq;8>73RzEibbk-I==%oue6GA~v{F*HPrmCvo6H-jv>;S?D9 zaDvz>6?$X5ads^zbR+%m2_Nb?@$nqL&HgrSJW$9d7b0*)lH19#vnQSSi=achzCFC< zMZHVvvY!mE+!vkY$IwYjXJgH6J_7;P!IMe99Jdw!57hii(009uFhrjyaIrH)pr~4QdeRX9@G6#(4ZVX@|oAH*)nxks7s8zlvm#A%k;rG$HOD93`vNb%5rL_J?FBPP zF{t<7#)9_zz~8{H$7_Ht2CKzNX0{w*&9)*$B;}or>A#ah&QIr3#18t+UEXx&!ykBG zB{y!CFox`JuWVyy5b#hqZQUXoP{ZPvBjlu*SUmQc=*`)iuZi%l(mbjk53UUnWc{?lXbg4gk6uq{$Sx0g z)fRXX<*_DI>nE|0;6OHvRFq0JtPUtE(8&4E>G9Ooz7|(?x&yvSsIRhJ7eN4C?>L?E5_!%syLD8(c_nN z&D|{MtGW%2ar+P1y-TbkLN5qbN%%zGqNBA6WzE6uy#I}?W%<9zT2BZ!Iubb~cIdE= zFHTDOqo9sB;IztceS(VB8b*PFxgNZSHt7O@jC_D@)Vnfga!QbQ8#FSmx z6tw#_1{Z>aRazX^ThDI;A5P!J=$N!hPtA;gfmZgL0DVfJ-zXka@hf0}(*u}F=PZRC z&fYL8zIc56DR^~&CG+wx;Ht9;Yl=DI2~S&DKSJeKAxeG~;6ol|`}3msw8M|~HE>>) z^+`9U6-9KJ^FBJkd}Gd#Y{zteYwcN8hIu1oF&BzKZUf`7nsYP(fBZ?&ErC9*RMw>U zFTu}Ng5M1nA-kZdcNI&6d~VHEt3>Y?1BqU1lQsZNWRp=+{c;Mz;;OPB)$>TY+7a8y zkFlR2#tb{HnSZ*B3hQ-j$CFN5-r$IB&0_3JXYik$uS-W<5$mJkpwTwn)}puQc74Py z6QV-14-i-`3{VZ9fyPX{&FpycP%=E!|<_ud0m|D~KWyPHjqErD|gz8bX{r`0t+7pIW_L}JNT z-@23;iM)BR9Jy&ZU1`}M54*MZN(oE1O)W$6PK3cxXX;b}zD?odY+#r8BRNHcxw6OV z@|WLN=pJ2$Z89F(0Fnf@WfWQlq49YLuDh&pGQ#o`3)p|{d%5ccx49&$o&r19s-ZQ< zPd|$WTF%F=@l1bQ@aj!%QJz4P>~`UwAN=Dv$JuznmNAUB0hg@ntU^f~k)Btc(4ue? zgYmb=O-P-rxs;gb;;$*#{xv=jugHf3zLUyj74joc=HH^{{pqCjvF{Xy8Wxw8cMe6F zcU`u{I)I~zyvsbKuy`dPlJF7IG}mxAv==5FfLMln80f?MsJ<=IdNWODinNv4P+>o8 z0N~!lFGtSm%lEhKq0!a;SA~^n6stx~Tc3UyUkK3EzW(7k*FO=w?=DUyv-SW1NG;l=F)ER$OqBvC6a zCu}dp@!E>jKNTMxwyhW_{Os*IiuU84PF0FPH{o?bC*hgd=#=2zUoVG+XaS3!td{RABP-xPH>9f#3k%b zHAaY!V-UO7NjO{qlt69@;M6UlAcGs9;&DsXzLOoqtoF`f9j4D znwSn&DdlxtHURgOEQZZaxjwG8!}Sj~jELTyH?jtS)BCIu=|onCUn`Fg>xJD3)SFU# z{QxIxFJyO7#}tR<+s|0S0{9&pz?wnu;1j1?DATqvokVLxl^Mul@OQJ)`74y08ZLsa z7mr=?=l{0-u4a^$%8DIZN4b)@=$$4~8Oh+))Rx72^gN(wEZVs0x61HE)4+2I0Hu>n zxt$aX(kXH$s=>kdt(diMGG)taMOlI4rCVpc(DTS?>LsJe8>Wx=E*9B-&l-w(OYrzE zjQkH}Te}R3|MDLmW8HQ&7)(|(Fm&byHS_!bvKU(;_#@-{((f0_)8}jk#km;vU(sCt z>>bv?u#q^U(G{%gJmj6`YJ3DAw&rYew({?(TVJ!i0yL#pM3n9pV;3vTJ2@TdZc`G# zx`$=aMYN#H$*~dtBbQs(_^jdE%}J9-AwvH2T<*%^Clp)05mMyM3Y$>@gIeS_j>+{) zNl-mSr(X--_a9Qepg$NMpp6c;_dpiPht4(>Dr@f7=erS?>h}pY^Ltq|#5cu##@l=E z{${eU6`0YR>)s%+ub??w9jzy1HY~MgZkiwSd?uKrqIlOkVw;{rTIMiIFGeS3RA}Nc zz3(TTg2~j}U9U!e<7_Dp(Jgv`t|IG&?WMy(Q`tNlfQ{Ftuzq|Z;dL6)ZQo`kU<2wB zK@aWGFZfK&?Vx<9hxBo3d|g^%?o6wN!*y+$@D;qdKbCzdTp5@rBKO6Y`JGm`@K$j?(}(NVIpTCh!+qT!ro4ezx{$u{k=z zJK$TB{iB2J2}14vcOJKyP64`oVc5np58;CHjNiKRFUpn0zbRK5lM6vY|7&atjRz}F zaJEdn3q%uLcKUaLGeNmjZ#g5O_mxKml*KRS9k8`jr}E~)HEGI$R|W9Z8js2!c;BMU znTy^bbTsaP8yE7Vf2XO!{hu%{dI~&zhLi4kI6|b*)^9LqjaBt%xjiyue4b z(iFMvXHv)eStgrvSSBt>&ri-tU@=js!2_26sjYCf`ycoClf!F#*Uxaf5FhbY+HQu# zN4xW1;PR&LSV+0~D8sD{@?@X-yCYqu29UjVVR<*~cz|QUWZXv~SafES5pGW_&e&=T zm}u1hnw^$yh+sT|B4eZuklLgke$3W8-{9H;7Z3ut7=L47vG;+zr}SiP$OXa8v?*1G z-66V0wmOOQ*y3ql^xq{Za^oT+e)JNd<>=Ee7(J|OtNT_Ued-o) zPUc;p)(p`Xt@81&^CaEeq~kX=|A2nWyO33v-I-(z#o#t&HaLZ|JMK07GXQUevyY6) zQn4V;>kY@i8=eLocH_U7riFi{KgQiw?tB_>$prg{ulLoU;0^K$?Mz)LefZg1&~A_z z&tmX0m`BGMQ_yuSp#c`BXJSFGQd=2+9`MLLh+W=8Zbk4w0?7Qw&Hc1Mt~sDCPHSgS7u-aF#pbPpW2FB7K=9VY2&Z=Q>-x2%v}4mRdukGhMnx2xqaxr z##gmTXIW}HNX6J%T-g#Uuna2&#ID`0hL%+tV_}UfEm>7>Sf}6mNP@OcRgiCxxF`6d z?KU^r8PI5PpVQtC7b7+K#$(=thh>R(`i@&&-%0Upc-~an#MH~TP@vcUwZc*G{EjQy zsC3Bu+OyVyCP+dW{{cKJ#D!}-8*+!-j01mms7H3g*PL8>P~Fhq^PP(S6YuQFEX(l^ zQ>rS$XRXeWfd{t>;XK; zp~J#7b_QoE%-{ofPl~oh@Nz*tANp_rDg6PqRA7c zaN98YN90BFOZo}3#pI9o@?>fH7`t#Vog3KKPac^BZoQu?c%Q7ih#FEyWW)60{)cu< zt;fJ`KB{K(s_zK%;S@38`IfmZSx;sXbv`B~SzBffc|G zJUG?{v5l$sags91Wc9#uOgE`pj^r;#FAe6QJwMFqo^NkCx_o83sPei!p|!}~hU8n? z`P?fP(v_~35wzF0UyrgOf5|A@WgzdT(E!4f(&YR$^g0NK!((Pp zvB}G+nl;~@F@5T1Dty>j{siaj8>glxxD3$4T*LMOxfKM`4xPW zG)8r_w`>GsE@xPKwQnKcDQIJST}6RzLg*qo_t6pf=4$*R9DZrv_J&HSMp*-CpJE0= zK0(LMK{(Jk2kk=CHj+x4Xm#^t~MD~u9@%^XWp-|e#) z99*wx9lmfbq49*fzwuS$t#pAqom=R$@b}g#qJ$P#BzXs%Dz@qenDg00?4H@N&7o^d zuS+JorRVE$twh4l%(GG%3}kO(RyO?RoP9b&-Q6Qm8vtt8cw~)^h7T|^|9GNxlX5X- zC=u-4+7HOxmEM#c{r3h|!!KJ7PMNU?tEAG=Y#SgL;|_`btNeJd2l9OxrYGYyo=?2l z18TNvN3S)Waq~^q-O3*I7CzWpAwsLeV=SEa6mN&vf9N0FFn)Gu0Aa=WWrB`7Kmgcb zpb^~=twe#-bX|@{Xu8|^UOPVYLzy?NT&%LFeF4Nqm!jFgxuO536#a+Jyu%X7|F11> z2S-}~>$2aXnjEAJ_|Kg%)y?pvnf8HC&$jred`dNqtRGscmfj(X7kt^~ncuteQK1 zCh!NTzi#fVlg&zUbC*k`ZD63!dxkT%fh!)Tdz+F^)L9?&;%%GjlvivLx{5Yb(t^iC zaEWX@ZFBHT4VH>R2o3ZEL;IP>JhCB&hg$^EuuVL#w?)81DpxC{Ir5}g3yeIh177H4 zzP!5{Q?pOblnYX(>cD}=wsGaiU~K74F*l1T{T`eofqvp;D!e=git})1C3_vIL1`JJ zT1d~I49q|}F>U&#Lk6Y0A0Pu~nk}d*bm>F;yHtLMM}L?x@HO;)xIpOSBNqvyt1MSL zyBSx?ka$2pV3{?}qusSv-0#g!?{8VVxFZ$r4#5)p-HT3HB5XK{xY+aCnw_&`w@^5> z7YT5t#?vlh{pJ|Gi8#B3Kja^|c-|m+8R;d)pc+fRS7R@&`%6}c_nguiu%@B=N=Rw+ z?=3C@wGQN=EWq&r3Y&sF)Scfxq7^m3XB+ANm#_WqTQ$PN6$kYq{O0^TX0g!Y zG!hpmfv+%LIKV2{ec|0o%Yw8Zb#V5a;uA0*^TjXCatfd6uB<{>xyxc{VR#YkVjWgu zhj}}6Qur43D&yTSxIv~#ZU80h0xVW3kl7_gFAPKaP%zii@d!Lz1bIB-;U#m1;|Hu@ zUzM_aPoSJ#Lyy+Ty1Xynk8^l(>>0s2-$~-9mfMz~qfHwBmBRbjeA8BR0ojh!%fSx2 zD+GODud<7DuO{@Ik@uMoh;UkwpPUz8d+NEuN?>5}WAJ#%K?j*-g9xa@63VL^!D5>b zZMBOJ3Kv$ks#p1-J5VZ?zA$8Ph0&kQ_%9n_HU7OqDj`r0*L#6q(@e7c-bMZfRUZxQ zUe99au?}P|7VB3~yD;@zE0bmVc3E0u>26NCGx6fE0qM33)CSOO2cJ7yX#xf2YmDbe zX0p^tEm5l*`dRyz*szDxo7eW_ko0}*gve~yIUjKLrP#Rq2r}tQi~HfDyPRtj7|`3J zU1oZibPTkPJgL71?$$*fJ)iGIQl|iO$E-omEyA24B=1E_kr{^(QkjMI=6CnEn!2)_ zXGf0jIsG!|advkLtnbzI&4kGAZNz**b&COxS0ey{8_(xcXjE{!7h@&v=F*e`@WNYU z?Fr-;rS!#d&}32 zyKF{@sL8%wsOV>a{dH@{rEAKg*Z?T-g2dtF$`~c&A(>`dy`Av=X712--f>soDW|Fc zI-n-F9`zqN}r_&2Z0-UcmvZAkjrHo#n)Ne$i&#icLYXHh6@&VYF1D} z(6E%*51-bCyv|gzqI1oX$rdD^DnC4(+5o3q1VU$B#%<`wFxf?+&GY|S)UN;Psl44V z(ka_cefNHy$AjUZ9dCOJix)tLJzCY}GE@A&)WCVGF9sM_SjxUPmY<(ZDKo=dA6ujL z@jR7&j7-Z*raZ$~t3A>`9glkaGq5EDb;3|u42brje-q-M!1qCVxi0zQg~zUh*o9ng zzL!C>*lUMO34BK{!fruZbX{eN9eDo!`g)))7_KhPyq9L(jFu(qQ-o5(l>SJ0f1Jz` z-xA_Ky>sWJ7yRh9XyE98JZHz2j;hw4D$+=R=VRG^y$F<&L4%~Tx|;S3+)^-O%zYrr zyTZ!8+E=uHGP=inz;q4gf-J2XM*Kd~c1;@WjQ{-l_nY9{Os#r38jkqj(79{{$ez<6 z`N`e)O+rH^lw1cRxh3yE(QUra49e=3 zE~I(HN@tX^N?$R~of`Av>NgEC9o5O~8tZirw@$!$O50zm?E0mqcDI zlMCbvas%V)OWq$;{i#@b@f*7}ICI8jax&{r7iMWNFvo$=&RP)vENJLeUNiOUN4x<4 z;?|Ay14kQ%ECjib(l^gzY4+2+DQw?*x-NskH2lb4v*b^Rw{f&0>)iQ_llM>s{HfVN zIkXEgDuei|!;vHl3aaI<+KnCyA>RNfHLZ;P>4;~*>WgM=d4Ixpy=wIxE&CKM4k-d4 zE_HTagX{yv>*D`}y1w%^@)dBc)V6-}($T5}IjbQ;UtGTwgulmMg0&~hWLa)mJszX~ z$>%NhPmW#fOqt!xPwu3>V=5a;p58IM{<0fEb)tF1G)QW-4|4nX zDH;nhDa|~r?gPo#!8U!qG&hdm+PkkS_49o|?~b{U`r)kc$US`X4EkhDTeI@IkY$kQ zFGzB)`om>^gW=BiN$+#SRq=1NUv_(F6!jrxZ~>`3F}xhAGMiTS(@mMDu?E`rw8RcH zSh-VF|Fh&Q$Q10~@IHsts#ec@IVQ!lbfvWYEz=*$OR?9;)XRCHW~NK)z!iEQ;7?Nx z(+MUwm_?ahVH@Za-P}Cy78_9kt0R_p1mqLAe#KK=*DXD$j}zp{^E;xylg@J5`FEJI z%*hC=Bp>M&2CT2Z8xy}1XS^ua(UwkaAza`Uq#bg;Ms7Yh&iav(i_cz`dZN|=*7LNR z07&;QW6?*HsU4qo+e1Jv#(U9(G>CJKFH$csD6vVA#_VoZvXt!(-e;R@+~6u?Q-Q0P zOU&(8#$1#Ba}v;Bl?vH4AxC}{th#;7a-*9!Jx%%f8=AH=j_0L)!g^dnaSMX zY)eBAR$EzrmelyB{}25QVp6SF#aLJtB=fo3v3{C1NTEJ$>>qST=KoL#eBm@am*Q$1 z6Y$SjPN!#v7#0qW(UjXv8am!zsCHFIIKR7Gc#w6WKX*=HlFnl_su70BiS9vX?YN+c zY|md<+JYT+Dgp_yo=-XDSJoSB?-J@^HCIZ5i#$UA!{K}U5jR4D!MioEbbmy10>RG6Dsm8 z^ieogLXJ>NW$|9|JR(m$SvfHCerLC|1s~BD>W{nW8gaJzEp5HZREHBlIi%L6IvH20 zPe1#_TdvEFHtBX3*y)^UkYy>`G55W(Rxxyj+O&8B0*bE}_c=tlLf zBU{ZY=|bFg=>o-lZv2^=@uu^!-A*k46!sM!b2I3Amf|he-Q=wE#Byb^&h*NoxBho_ zOEEJwhi+vF`JLl&2fI<7fE76;&dbGEXX+cfIY_{$+phb0?w_|7fb2Ar{M~y?i;8Sr z1^y2eHNT&AwMv!KI07TNa~ZTh^rzu~iKQo(n15;(knJrL)M%2br+C@=FhAsxnJ3Camj+YOaG%-jK8iwfS89ej+;>;8lBR+=jT2V1p-{pTWE~pRIQKtl>c^_JMFl* z8q^;XuT0GY>}&#{eU+XucQP6 zFJ?b730(5c{asJbd2;9<9I@Bz zzr)lUU620=Hk>*<4b>Xjy=`HtjeDe^I`zt-P7bgoaIzhDBE5Ua^mx_sX~8<+5?dmJ9apFHFSS@~8+<&xX;m<`#@;Y^$nos>b-P&*wJ_@R_Swni~ zb?-wAkt=Y_4$AA?)JZzE5B`W|a3Ui0AYk5hWQh3-N&X-rb*pqRv;QutL? zD^9I(5h;c#X7&5T(6?L}8cZO{V^Ia=4u4-$JsW}Ilc8v3pd->$uQ5J)=<>|(?8AIf zd%;s*n|U?Pec?*rkni|VY%Ox-D15qdIX+Kkr`L4#jd_Y`oA zDWH`%u=&EZ80}lJ5OWthW)Ay;A&{yiJVkq6r#cBmDL?QHD~>u{f#|qXUJ@r)qX2)E zSf9|Z8yP~@ZcL$j(drr2PC?Gns#gWP%0+bM-$8-)=^KB$Uz22Kd8;D)f*xfp?r`)j z2OE1gs?~LLzIgjORe18kUEaOg-_rywxnF-h{-Qh|8@_t;f(b0On_;xF(YT|(nF8UM z$KV*h{Rw^=j*kpkd>DJ6u6xR4$UnRImiKd2A+j1H?iv$6jxOLVNjL2);z9o0JyzA-(JV7# zD+iSYESX(V?k{<&#$37n^(`{$g!GHRy{`ecCroU;4nnNLpESMicjDyUgsNtB*l~(d z9P5?eS91DZ!UHOF2jtRj)z0Ory2FgX5qUnm2dS_!%SqWRY9zO61sCg*b(fY#wZ!hk z>n`ztfEm()7{5oUeABU!{-kqIhxJD=dyecmzvTS^6-nVK1R@8 zLVY@N{*8fzg`-@_U1dq(xj=4TP5FbcY?4q-okig)L~bE^nNi)<|8TB6=yHpC*%fp) zd>xW(YLbhd&{5{bu)X3z-Qqmp;cHT-h06N>6>{j)-nbBvJ>AK>!?J{+E(`Xt9L>&8 zHQoP;AV2yUR(qUvBi-EwtGq0^>YXO$q8W9^?TUG1fBhng_U+&ib~kj>{B_>zswxSk zcc=w`rxy|l%!_j0eBO9RWMys19y8lUWHAx! zKIR20E5`HW)+bjHoLlm!8jYu|zi@hEbC2eD%?oH(qS1}I93^k&ANhMOH%EPc`hnx+ zr75M@&#eZoSRJfHOpEpL1r460tB>B_)etlpMfLxN2AFt%g$D9(*AF3(a|B8G{1>br zLUD}CSPhIUCo#)Ym|nK`?Vi>BzGWWJqDo8B8jb|)AX@v1pxCSr`LB#U=*R80&kmr> z{ZrFyHGH+VpF4-aH|lPcMpJ)A@uWU(65{k#!{e0jJ+t&nyTgJJ+89s5lkXq_j!Inck_8dP~&k-p`Rd ztZDlG-mI6tJ(!Z7zb1TthG)E!b-n<-C5JWgTNQ>p_*xhAn~rzaY{EZh7Kf*vNJn*`6}YatN!`mu49h%G<>9`rpww+xIl}mpcM}1M=CZ+xbG*jHD1zjMtbR)VBWUrV;(Y1Q zvx_Nz@~o;`sx9s|hGAb}ta0}zic-biSo^%X(-ow{q%qOZO>f<8l_UWjzrEb`q?j3V zM2k_%x1;dA{G!ptLQs z6uks88OTt~!hz%RMd(J%`G1g*4Rco%@FEk#KW~oTW|7b5X+RlnBWpHebh(clES=JZ zG{RdlE&{N1!SzuQRh*e}(e?2$@=UNx=_li-m+uRHI)?{k?pM0jZuu!dWbYy6p86lt zlpJOm3c}>-%!yTr`7Z-Ovi=SFES(cG=m{ZAVCmDnQ{{Z~VoENN_2avA%JPE#E*mt$ z<*ftn_QW-1dNCmGxlyeL$VKU|j0=6;d@0LwP-p;8b_}(d&VvSAg)v~c{A*6e#Oij} zoM!*D1Si3}Rt|;GjG)x*o!CF3+xt%!fIj{M@_Yudx`M%6gp-nQ&%9%nHd$3XG~)XR zM%Wpb(3i;bVz8O4!o|*tyXFx(2F*-}JM;(b2s2BFNm1DKKb(q}By$1KeV{ga;c-B; zp19rl{7A`#)}h81zR%m9v*SLJ{Yfdp+D`f~$fmvo3gH{5)F&d)o*kbjnr=j7oa+p^ z)cF$I!<8by{0aZH4aC6|5q$MI>^S@AKvowk$w91r6?gLBLa`}Ut}3(cDOhJ5jZvjJ z5z1xGmAM;uy{f-Y!IjA9@HEP<3AQ&sp-os#pz}E|D6F{p$h|5FevQpx-+Ld!=^8!- zs`BAUXRPpBDQXGW%BkBkye6jE<=Uvf=sp=?%Ncw4(i3HU^uxnysvus2cK#^oF^%)Z zXVYU^+m>qTF9*(Vmf;iLe{ba##QOp#^I_wCma?_Mu>m1>iYg;=pg~tZS_C~Nyd5es zGK_Zn@i&V77Gz{6(S}saaOHVFYo?~S*f?w@=bkbu>!FrJ&<|I?(6Fl`{;=}bXDr!G zDsB7ZfNu2?;}Mn%)s(9r#U6!GO_d@0&o_;KW(kgKovKOzO9}~`rIO%5z|KMngx_vk`^@zm(2r ze9Zd^M;h@ORd^jRY2_Xc!`Ba};(EM4>BxX=yc63ac};+Xum3Drh_ zNQB=4(`M5Ya@n0~z9Ot&`!rP@N8#3mFvJY>D9fTDolRD|=)vYJw7IF6doQB&(PO;T zUtSTZ4qbOEzSPa+f$#cKlZLPQz56rJA6|24+Hr=KFq&dGhU2bixJEeBUrj&Zkii4Y zS(F0BcCL8W0KIumZlCm73eVku16EOWfY53)_$R|YZ`9R;P*>0_3`IOxfMs^cg}Z%hmAgWE0d6&1jIb11YtKXtr5DHQLMUP;MVa z#=D4!73zwa?5s$M<&2#ZZMH-=uZuPtm-ns%AN&7`ymIYj>YVnX=L>kD>yJ-->rtL& z4`6T9e|a}TxlR_@j)pa*yte0B@BWJ8qrY3l0WI5km}<<-G*R+LJN1AhPN_o&81-tu zGSR9)ewfcZ9Iyj_5xTGy@&h_qSG%rODC?^aA8`bX&?={d7knRt`}hq^MRfi?EOwp* zwMq-!nL{R@Boa8Vm$*4Ld+&CGW=EMB#8p}xB{ zaX#`iql&q|&rHH5HT3i|FAZIGD=d2LD@Tc8PLi-Zg$mTqJYE#A+l}=%;+T&AFzcge z<^L013LbFic)|xcU21-xVzut3d8_AzLbh#4m`>XKW$-VUkJ>B4pLjN%`RSyOG7TLT z6^2>%LL0^|XW^eJ@~fsV!+xm>YbT4@UF|YB{#5`s7oO;=qJDFp4OWC*vcA#j58L4E zf_@64T7#m}L#gY0dZrfbwYB$X_ZlvMQ!UDQ7UM?~9EhVC0}m~7;Z_0G4AuUn=;1UT zXy&ZFcEa`Pr%m$Jz^c}yqWJl{n&B(64C%$MlSrXQOnI?PKyCswaE!6r<;!hfg4GuF zIKb!$+lr*n?K)BOX_1TmSHu0R<_U3gD%TDT{0MsW@LG42 ze%<;0ZNMRm^B#w#SQAbNl~}JIaJo8<+sxz3+@B zobXVIQiOiDp$k}1T5a?`lG~2>3O*KZIO;NSeg9GMyAA%8y$EWhH_H#(v1YS)gr?!3Lp%>Ckqy_@!igb!Wn@F4nqDEizSxkAvzpd1tf_ROP+ zyQ#&`94irtql$4 zJWsAWfm&td2V>m^J6~Wg{F6vQyYm{X-JYh6F^Ab(5e}oUFK@4CDBeR2+tai+)K*9= zzSkN?$fdIn-g3S- ziEi<);<6z+wnnRX|66M5zcfzd+`ZLkpKAx^@*!`GzrC|&{`;!c?HjwT#g3_nMAqkR zK8Xp#VDmkwvTA00BzBw|@XC@02e9XR2KzF@gPULX*3UG8|HwR3%SSw8K43KFxW}C0 zEAjR<#WikPMxD;nD;kKuDn1GK6rE^cnTSy{<{~`4{_IqlS4+3`=kMa2a)4g}H~DtC z%W>g0Ke&$se}|Or9~FF_28U7YkX%xITY_5!2knoM-OlHUlY&{Z&axC%*RbaMVf5L> zPN^RNr}{gc4!HMZ9}#$Om&39%Lkj_LFPI@}iCN?Ks_+;Zb&ziXiY7FA5Acft72?w1 zG-FfOwKT%|7?}mO)A~9a8lX!j(jQwOkBP^4H1V%@i_Z~59Fk{Dm~y_*7jHtC9BW_! zlfE>k^!xD0ocys_+!UM*Ln*D~5h66>UnW6=G>g^l22aKKET%SPoJO346zR3!mwZ1j zVz*BzUyvr;t2+`ad&;&d=JB?%;pEho(eV=mfZiHX1-#IJE%4U4~ z_<6yR!hwBMqi~1+^KA2CxEOfUHbnOoO1SNgba71(1FtYKIbj=+yF&l4`1M#OgWe{_ zaB*n}%C3U{#BkDQE(q21lyrq%YfP=`2)OrD1G zMRN>NH(LBYhaIJMGx-7yIPXTwFDd@z{;TnWc75S$%}(RWf;zaCA5IJ7w&n(X(2w4q zW{oBPS!r(whf|h%tG443sBw$l{jp^0aCOM2eTzFuR?F*J7>5Swb5;iIg^9-7mtnbt zSm+CHBWy~Y^R@4mT2sE^tt(Z7J?6IaCevezSMKaam84`kFpRXBwK`3~qeVB}*$(G3 zF`o9_oYTKKXMujJopzsIDn#&pKIh?B78{m$mHGArP7UEf1q7syNRkNHQcm6}iJHw@+(5xl* z6Ael;A2*pvPg0rt^Hakb;O8-cA&cV>36n0q?-C6?F4ffgDYRq`RA>Kz_8l$yt%ia4 zRC3Xw1)CSfx6J*CRhZ7=o0Q+Z?oR{AKA|Ec3s0awAGYVZ^2|PTb;2I@`04 z5R1KTXwaT_YpIG_-~{IbiaJt%7%tf8rtNuhS09{6S9t!vXCKlEC~_3mgY;GO*I+kd zlm0$5h@Y3@b;5xyFF~z=52VGo3|0CAp3IjUOP6@96g78xV-XFEXxb#cQIu1c5I?hH zJ?%e8aXIwiY#cJ*Iis|-#<%z#zF&46{~X+&7}EeoA3%#Ra(zH2>XN3*8oiCIz0X@V zb3eI#u~wMqt+ck8MkoLy1)Ua0mez1`${qu{(=4FqFEoJ7}+ zlB~X`@~)SBK(eh`^FCz5G@rVg1?smT>#=a1`bF3DuuYGP9FEo()XF6U?Ga?Rn4++) z5on-1c8jiwG!CcRK%q$%u?w*Z1Bew!3?_B&2EC}P-IcOFdu$=>CooISge>04Z1YR^ zS~fnO$TJV(%S7DV`BSujm_x9eyRz?muu*0%f-OoO2gAwdXWiE+ggATyfDe3fE)dHJ zk3wX62+vaMK=bAC6roHiJtCCrIS}Jfi_@rEp3x)(zkX~%KMSn?ty;*+4E{wUUH5Od zn0ucDCh67Tt5<+Xcb*2~OgrHV{)D-X)FVic1OqeO2?4I#Tk?wt2t~o%757`A;_iEA z+Op=tSeDl{nYzVib$g4I^T|B9h;w*Jv5#S9$=qqTe$sA^I2ne0j$NKgJC!7z z5oTw>f2YC!7{c_tmri0!qc?@jlTLIV4)GM>sN}-}i1U9$szdyWPtB_tGWaoX0F1_` z`jZMOc10+)?XbY%7G#Few1~i|_Ifo#K>wxqDTUo{x2}ZXiiA@>mji(9l7aj&cZQr3 z^>jVQ()6_lv^_+%Bk&MB`9pA$`sv`SBUzkiIv&TyK2(90zM$w4S4e%@si=e+s%7v} z*{hJV@=SSF;_-^B?maja=^b0AR7V6e^_>Lwq-_E|75zge==>Y9QF*&XeEoBX`J@i= zK@ubTD!OOu`C&-I-jkz=O9hvICMd_r9>lK^K^!V)$lh0o&`$WNrWC~gsjdWU&g1UWiZCpBC%g@e>ycrt`hHE zXyojF*-}NFAQVU9AM-w5W84)ynw;Wo%!V)*PcwCLOxc!cJ+odT zZwq}zMy9q{@Y}&`ojoj1P7>1XpD-2%WbbeIM2Xrjxwti>JkwpkhBB^Kc^K&Bw%yU$ z`dJgB2ofLXd=(+mngckwk8FpaMGF8+O=YYa$?-r@HnGUWOvT=~@@ z^&y1tPw*fcb$U;3TV)|seeq%vx3r<%Wv9}yDzFNhv1($1T+TYREfRJUa99ZPHlY5P zG$}O6S5R2)4mjSG6P5voA*sR`%bAixN}|v&@qXr10Q6`xYYFkFgke84 z?$4W@jHoll?wgPImIwc|r+cr+yv^4aEj{>T^}L&T2$2-TRN^|x;q-=g!=9R&&36ys zwU^F?DfDQ0-g2MKd3#A}yTEr&7MEblUC4c5;@AL^>M;$XLT#A#2GFyfv6$6gz%+@f zLoz>_G+W0uEIKo(_hfNiEM4xwVWku*3_rjib8v8F8T3#4SI|lwEYJrBB19|~qh39& zK8|)6>8iU0YZqhU&(V=1MaCp`$U<)gN0VX~7QM=8k6v@BFWjt=d2dPPDE!bBLI(mT3gN7!hBdCeTis)7+-_83C2gbZ#*fKq- z7p{Uy+!mcQYQy4s!#RjsN5%T>!F9|9$|3!$TeT zDwuZp_td|I*zfvV9BgndbX=`LoR;LAqD>~pc-x>zANOSAY8KLMEl{$=#_wx;ORR{h zyu=d^UG9kw0B>jNvLTFgBHPeH=U+MBR6e`uHH5a8tf|u~l-D}!O3Zh{`7Qs?@- zZsSS3n!MoZL&IJXSD(%Pr2OWGP(e}v&B69R$5>i`@M{Zm3A72%S_GG&@M`*_3bW~$ zZ*OWXs0(akW+F7t!@-F}H5r@6kI=_!6iSV(co(XEM>R-R-=*wOX#=IS$n=|16L~}7 zVPZ1D#56Jby~6f=(ZhU^(&%K3@@t#@&EHl#<9$`}56=-E+t?!!3LW=-(m}tDsAK++ z@9MLro3;$`LzF}R&}G23CjPgEHgN4>_vlH;Uo;D96y$f#)0AgMphIq7l5=0Nn_V20 zb{m5caxcMA_E+26hfcniz3}d4FFCEtF7<=&Zi~S%-@S@j@|J=#)KlX08JGn?>RYu{ zK|#Uxi}(mQ(KxPdaJ~A7S7i@%!|a@^w2gMK{<_n72DD=v413IbHb2x&>$~+<`Z5vF zMT@$yl4jjjbG3%=@id3kZ^pm#-*8rI?wToHB5*dvY6aUSXZ-zhz&Q>=Ce^O!>)uTA zVR&5`t@%pwJuM82iCR#G`}@%5bhPR;Znt!0G^x)G*9&NW`mv(5DB(KSn>SzL(je%V zF*ZNL(=7DmIDIJXpACAJO-!Q(5~(@5Zq2DaDGczQGzjp;F8cdoJg5*rr;bJ#SqQyQ zJtcdAOUEx6-;L4$*mkXq#xlqIwJ)%BNm0h;v`O;vl{na0cB@UpG-)-}{jiI@;|KQb zJu#;L>jj|0m__x9@YHuSAoBKaA_$^pT{; zPzJOszyx{PTYK;44r=RHUs4zn7ippKXvs4Mh!Q_L>m4|DOb_Wv4yu#M^?2Hv5oINNXk>~J#hd_K;=(0*-qzVZpt!wQ z6E?8+vuEvhq3a6+*T<0^rgEE$K@n6Dtoua_wqqd{mw`ugX$B?HQsXI)vpZO{>dG;% zDh7nK%gvxmtblTqA;8rziSWq6=d#-K-c#d}T}J?A`msCmi^eWr_q$shb3dbhTt3(< zjQ$_h*YdKw6EqVr0ye@&$BV91%(h?q!*tA{WnC3wgaS?QcFn37MSIFVj5NCSBKLok z-%;)SuQFmBkb$gwA?e@l2_GbqI!befNi6#6^5L0ukDh+tP3jOZG!QlCiGC=hSy@Na za9VBnoA&A2%kz|`x&=F~?!O>eE$p|jHP5jVEn|6XeRMv{(4+p8Z12?@)&)VtL6u9_ z?v0c9t^Ov;WVjjqIG`39PygutM|_3X5?--DxuE%gTJNfDae!juyvOrlU)H%Qw?XUH z1L3hA?CRIAjRFSo(c#c!{{2nN{YrO@)?%!F#C)`-@Nv(G*E`CfIlFmNTi4u>o6jz_LHQrF7I^fm6VeydzD@~-xtEU-YyLc05Cx$nnx3D(@i zQqY6CqK;yqGi1jFJB;F2e(o>=2maN(kMody2ud>$eoZfY%;4s}{N*V%#?P`37IlAlDiYf2gv2-yh*pDL zv`)Vzz>t;i-b)QE&NE8U9eKiP0?~^{qERS3E0VBni;3M>pk8#JAiesVA}bkri_{`A z8_(p3&(NxTv+4DTd8=+QIY zeO^tS<72R^VAgcq@h?8L8=Nal5XyD^2BJR1hr1$?=qMn`G|HnQzFNPgh+=fRm9V{oN#QXweW^+LmwCAy(%fS z)-t-q4{a$a3h@CP&TTWVI`i{CY-SX!A{xW+f-@k1^RCyC*$i|_p`g^{3jbVqKPGa` zB|T{^44e}wD(5|XFRrO!eq)8I7p8ED3%Li4qEpq*YW@OXb}?zfP^Vs5WtH?apGW!r-sSSk zdbMuu0uJFKtDTXuflT{?Q9Ki)`)b-&U#0eNLb#juHCiwtJvJ8P=ff|z($ugb)&2^G zA2IzMm{*vM9%)$aWhlJ=?}I?9ua=4tmP&L$oB&%St$Gt6{zrsytfi}fyY z{sog>GXpMvVR5EJ%93mRcDs~!UYXo$5#w&%Jd+FLUs#UUGngqFN!FTk{AGDw%E7+B z-JWhxF6yr(e68B~-CvDclo4lo+mxZ7+grX00s{YfdnW_^>|&gzR%@dJ$@{7925k5K z!S_r^eZ5>$^TZR1rMQyZjDWGVOaE5iFw(^}ximaEL2Ftz_I1!-A4H^2DnF5Qelwsh zUh7-uazQ3l`dQD<$8y+lk%z^6sp)j-=99QM{2*t;JtS;yy+_U z9QF4e774IDCk4FKeSPtEpey2sjE&D2*I(rmof0V5lo8Mo>*bxiQ1uU*o)14{_$Xl$12Bc#$_FWj=s)};FFAI_2JWIExrS&1XI zlENRpil|qa?lHXC^&+F_$*h4?0ahUJvSQ^+UT?q4obxfK2?Lp}JbN@`{|%$>(?P^P zrO|Gj6pDUw!P%RpnFm@+_=L+vU%=p-(FB@IVtn4R0OX{*_LP2UC(nnWX+JD)z1p1~ zhoL^)Vk7YR5(@;{J`adRG+`NPe;*X^_! zX%FoY((Vl}Sk9cK*v*z$+_~Xlmv5TJE6K}V@GeBGL7aEaCV5)MLH>=S=xtQRUp)Zl0y=& z>NV)hI>;LEMD9$>JZvSSC8{hMPr6Pl+1@QyhcJcEgm9W+==Ywa_ZfdZkqbQM2GpMm;t~p*gZaExbugq-<=n_X` z%^P;ogj=E^n{=S!?XpR=`zb`G+U<_d)IW=Rt({^5r;SPg>pe-y4gOUyw^uv1&O_2_ zbVRvFotf%spOmrl&8-z4?>v?*ud_|}JP7N9Fod~HcN&HEozL7OtxLCfN6A0;m{;}q z9yN5ONdDkg4@j%=kz178EX!N#wCIsj6n1u~b{ zWwSfp3QyjyI&GDvczXF`ZO;+P1$GhNdZj?lcE+QCyA`FaUx16u$^a=tLP|)s98X<{xkrr_b@W z$-8_13e{RKs=HIF(x~~tG;K#PqT1poaQ3bgw^}RJ^gNry^=yWIzXh99^x3pCs^)D=olAAbVXhws{wv zZnwQ1zmA}mofd=CORqa)a}F_RFL0*kyPJ@cu%Yf|;&S&2ji0?pJ#!N3+!wwu)O=%- za7lfzfJRC3!gZ6w@m4s3ZBt;Hb|8{|o{|H>kdAyj2p(POyE^`eJcIavo0bKJT56iH zrOx7hDstzRCh)%a(xa~z6x~e19H*4*kM~vxoMLR5^&GBrO~Iezka(3tzB0NzR0~aJ zLp)Jys{BCg91CULLk`%s-D^4mt=*pT4mQQ6(18{^z|L%1?A4+a`<-8F+9aaN?n;Lz zt*&zCzy|X&GUrtv$Zkuk-gUxwq^vA`zw5#@1P;+~;ge5z7(1r8YHd`0+n@4qnCH`lD z>S@O89FdqyCEYr+2D;M4y92B}A!W7^PIq#ca>5@t1r1@ozw;+Ax;%~!RXG3`tGG6t z>gBB(rZNE!h|wrs6eo&&h7wv&4!PJ+ISiiN3rLb*vA~@;HLy9#dGRb9oR?ApN!8#4 z+OA0!HIE}%3lk-x7M;aQ2%LT($M%a-NU)XMm4;nx%~=a)?dB-DRgj1mtlg`0JKVC( z2yug4=5E?%&)<~pxQy=4u%2^29>w+cH+{*;%M41ojH7j4-f(IemhfZoDPM^ow7nF$ zqCQQRm~zPCUjN$AvUUgjd?lkT1MX(MUvp=h`;*qy{XP7~Q~Izh3#pdj^%!XpCXg~=Z4+Ev`JF62&{o}S~VodBDJrR}yl0<k*7M#J)(49D1eLefnGBqyJdf(Zw?`L+WZLg?5n^< zuF?}ez@ue%@;b(7Zuz8c)r$(anf9jQ#a-3{goC#5_8j!_HGk1;i}qW>{}^a-#!1AK zXW}bOuI?A6P{gBWmg|e1+SBYKi2~?^2InP(t9gn7`o|}%4Z>xqEx%x^N-#_DxLPVaKmk19OKxUSQkU4XCB~4v+9cG$$2oU=z~Ofk;dc7XrKu2TGyp!l zeNdj)cr)p8ro!d))_$9M=8+omfXny#KJw24>5G5$2kOm-!X}4RaR;QUftW8gg>7k_ zWM?4Fy}~gO+7I8%NMITEr8>VFEz3rZO)5Ot@_4+K9>t#szpDjFk)fqL1eQEF9hC6J zdhH{Mf)tSY_qIu&ER;fAiY;Wo)+>MRj7obD3SJA2b|G6UTpB{FU(A@RV6RxsQUhx0 zB}NN7+Z(Ts#(wZ@ocr^0Q z0r~P9Kn}d0Pz@vS99;Q4+SbpZ?YO0Vm@XN?^Fme<$GmA84lwQCh!Qw5b{kmjs(oR` z3PlV;27V@}uRE>j{}aem=YY81&_YaDm0y!z&JMx!36|cW54Pd4(wT9ilDwaVt~2X$ zNpX00NNU1VSO-^cc_}uP7+u_$L_jwC#(3I%#tZ@K)zN>LOSYT6saSv5Y+L0cgmfES zQMTWG9M-R9vv>n6RVjr{T0s5qyN4YoAb-Yft5J}DCr``w2zA*obK*CrfWAX!8uV7` zdT2c{%Ws0G#U#YU$(Z=Yxtp%#cyJ)|(bX+?A!WzZy0Nu|B?a8& zKWl4#fo=Rv$^M*>Z1G#=hFAjwpnJHc;pWiq^_v7I5tNwO!EwkENcW(@%i@8#$|bc38a5LTP(1E023?fdeZo$N0LX#JN$+VEQ zT33LPbw~PjO84@_XmfE_NXqF&FHLAUNaIPq)T6pMQ>vwa5LpP5Vz;lX&W&iF{B00v5?8NDh>_g+To~ata)OiHTbiFp{P=|LE&R5D zdFwdw-Fb^izP{yQ6Xzs|N|>aapZohFqmz=GDGPH2e-=OcW^zz<@Z*H>iQ(Lh9oJhy z_U_i(uDp{qRR1HMe_y;o_e0a}Q1)a7W#-cXLMi$ef&5h@uek|NI(<2{s1A8|@eOic zYd346sfzV=p3QcSMkdI>g;X#UuJ+d1W))lBd5g}53^Ka>j1D#Q_6wKFDklmoGAMct ziI-O|2u@b8IRN_LVwbTqAvRhWg17Pn%%d(J&=XhaxC=uv+m}|)?oj*gS)ui#oOOYq zZ@T$&u~j$JK1aq?$YZ^a?UcR@!-HmfgHJZF8&i5+Qat+6P8Wy*$OArccB;)W==V`V zcFx=%dVkHGM|@k0cboMu&90J7Gas3qw^-hQ2u{ zp$NMrAzvN9{c4Q-r=W#Cc#HOp)i>Tg6)xwH>$;3kx9A-g?>3#cWrqF%^m&5=e=zxY zrp>J{c$GfYOtM6|CO$e00vLKx_Q&ojJLv2y(5Lq=lkf`DuGEtPx+JU458kD(>vE!Y zZrQH}&Qc&JZeWDcpEq0t9xnX#l@)Wy2O>RZi8Rcy(LJt_CZ zPC5YZnGHQ3o~O5Ke~qEnx|~|b;46uwP2GPY9W|#(8(YLcyDgU?x-lHy|Mh3ZNLvy8< z&2JSmkfRLblF#%D8mE?a+GgL9M3(K!=1(!71gE}%)Gyc_7@kMftctFTI~`ZNZBj?o zl)ue3+_hq(+R84rEwh<%^x+=7*M3(hxffStoQK2(8!HG~F%7M4vpYl9h^$Tg>d>rw?-y{u7d*i*n07O9darhjh;me*$aLRMx=VH$t`%O^9 zTwOC>#8qgjKmOsy7!t7+c%CHdg~h(iT2Bf~Y_ox^y8FCr9BY2A``f!>>HG6x3b(XA z{Ntv-%bWS~Z6&3Te8XQOb+)bRYvuV5YDOHh6J0McQb@zhaM&l}rP13lnU%FPh?9-OfAN!gZis;-5fk)Yt(L ztjkF5&m-9l7$IuuKaZPp27kMK$iZP_M;xjs0Qy??rZy6rbZ2Ne7m4mQwc^qGrzRSOj8E#4z7%BLb{4$vNL>Oo;Cp zhLLrg>1Ur(GgX%GxdiFi-G5hS60M4dS=7TmXfL%)k^e{c1t>OTDvQR=`bxnW6} z)F1K`b@bxu8I|PNhJb>?`)P&3X&)KFyL~9f~K8fT0rH4Oc zoFoxnC+8JFj%c-l_|jikOw^9}Ndpd;T z*#WHv5M!DQ`Q$}0$$;IWU;PS-e_BBOOVB9%pkTje#*Mo&ug;cuGil+^hr1bW)R%QE z;9#9joo$MosNt@!#>*2KO+pQ6Am0L+oimVcMpWSuG2u z-c0!!D=t1c6Lc!q?~f4R==;hA{r=_HL>RTBglF&0jhuSSu_;vd&dca|elCn&nmnFM zPd6#C>5gegQ65JZ%O^TrazHuLW%OUd$$~%pLZ`ePs;+0hki}g{pfHt zd~N!WIi2)}XmB!?xCtkgo*iR@Q_aSBC1C%nw)L?U-O_L_{XbR|{eP^e;IZ}TP}vM5 z_oVUT$#gGe;{R7@dvoVu;p{i@Iz#i3Mf1BSsxr+no$X3JMp*I$1A z{(PpHj(5WjBGf$&W#%DqqU0fYo!#H#BCc*p7z_YM0`4aZCa=2)v(K~i@`SU{DEWqW zH96ldPiKCP&CRiWk+-CAHDw-j^^0oZ2SGr=5j+Bsdvpv7juJZ89paO3{BZM9qE9a1 z*u$`DHN7d+LN*`2jonmI5wsbBmWH&cHpYk?M;36C08K+c%E1e*<0<)dU4dwf z$WsWAU{267PXxnu)QCY@f@|8u=NK$TNrmxrYh%PjhSf{;Nl5fB|D^QTfMYiFY<)h1 zybrh~oRHFi4VvTnc=Mu%B9*fCm|3Uk;A#3#p=v_WTqE{`X*%^HmnzmIQz!c4Mev8k z2Gcywiffxms40Q9AW4E;eLN0)b88!v)%6nyo>ybI>2={+RB_IfOuO-sEq$(nJCy<00FQ7Bf>Z25UCbC*ve?Eh>aR zkpI(29V7TeGxPdQ=@x4BxQL4-!^41LKl#~LF|~bp=jxz^Q<<}J#(~Y}gg_Un8skzn z#uxLs;fpkBFfu98Pp?M0zICkiT3Ro^9jup_WL#W|m$Ur%e(czUy}#kh{>kwRp=jsq zj74&8QJV^^#pt;9%CvipNd4$!2naQK+hmTsfdscXy8a`X^8ME`S~$)~c&J|K{-_&6 z5wix2ka^H@_r4Y_6nh>P6GiYKo%tUsUs4u>i~9SMMvrk}_%0`zw7&a)ak8Oj?KiBr z{$Hf1m_j>$!jvoCt`3ZOH?<*!FD#(ubd2MvA2GSTL}C zrk*tZF8hEL@Yn$GikUmZtM5Eneed&EHl(cC#Od** zg3;WXTnRO;iL<-wPnuxWMd{2${Ln+7+6N12mTp9GSm*VqaD<(#+kRPHm-Qie-5d6^%ce4>U82KyVk7O>r%=8HG7zkcL>iD4=;12n>jtlK$v z^sXKsI(x^gtKEF-@+^<*57`Spl6xa$j{J5X-d#R;hOmenpxlh(LH8x7 zko8EC^@%979o>dF;$6} z^!k&_dt4tX!WPHae;k0XUJc(=r@l-n?Sz_%|yv-!rp6|slhNiqpG-pnP)T^(E6jF-N9Vn;2csm9mXxIehK3d{AX+j!_C z_ObkRO?K%?n+e^UBBY_W08xsfI=pWfal;Y=NpMsR2|yMg|=*s*Nw?5}@&iiV-m4B_8--7i!`VD@<^ zh!hTnXk#A;Q6zN2O&zN(7&>kp)46%vYEXB~5Os8sl9>|STYD*C!X;68kn7^vmb~ns zXxvHwMoBzD2qFh>SQQRM`yiggx3u0a;P5ifVEtgU`9K@^nemb;YDFOWZI3im*s63= zgFf=IXPsg+zkX|t#%I*)tGW+&w^^qQdQ|v4Y$c&}UiSFULf!`X5&BhBv-9oRpaQ@w zv-bYeUSkKjw`FejaP2DNuT6p95hHS6_lb@03zPN9hzt1RA@;$r$!;36;K}{l%0^^> zHr0V@=fMn`Bw7Niqw|&kNsP+@bcKb;dCrg}dhjeN^$H+a)6;X=1t@c5;;nR&qbo;_ zs56@v;p6kLBCB=Y^VZ2Ak5r0#^cqUu*bl9B^Fy zzvQXW(GL=NYA5$^z{ry2{!&YWP3&={xV++r6su!|U^J0Zktmye`Tv=cH<1X{WkZ zNB=81hKd{u&$OFUI!N)Qm@91A0hnvtr;zeTXL!e3y!3)+Q)-P(OMs;D=-xK-QzIH>tPeB2haNDS zuo=&Eb2P9les%gs32rTn5lE)vGd2=-!VN+Tq7xwugGL&iO*-l;RMC^(`I=cYUz=M` zrKTYt#J|f0KXQB&&9oMl%e=);fGXu@;&F#tN-P-zpp$hakG|grkoO!JDEFl zoR1M^2)P4ZE(f9PVdO{uLBif@aglTUI9TN)sjYEuC!8bZNXY7T=>E0LbArQJ=VH;mC% zYxL%+K{^COQl|}sssi~2d9FC8eWTIg+D#khLgGykwZW-?q7Y)TI{Wf>6M^B zi717pL!K6jQR==swsZV5?_)uq!yd!&s*aKoNxKq`%t5$k;EG#&oAjiP4zJ5dX;5q< z#TSxlYIY_ajL(X?BgQzFKHfhH*0;1t~QA$0} z7UFv`N&eUPX8swMBNcMbxT$&c;{5{RbHxBETBTi1LQVD1O5*o z<+lf@BBsGJ&nm#AD1|c=6~7aJ|8n>CKD)>x%8v|V-&{?Y%5I!YP`l231PA^{W0~GA z{|cK}VP=qxw>`9%$m?*@huZ`cmp;FBf>5fC+u+ic@6_b6LmO#Qy;Rn?%EV+>777So z(|{{Bi=OOj*skB}8!j3gb`5n8AU-wYHEisoW{=$2uKOc|Qk>I;v!2lL*f@w+$%>6! zT>Qp+5kH+I#1=$+!Fp}q)f(7Kk?%;2WA)TR0M5IGAYbK)WeQ*D1gDb3kM(0?*+8YooeU1QV_v3!6G zEoIk&e9~NQgk)(7Zf)H#H7Z*?RGrh|wYRvvn9zd{vkyDl);6(+5A~$xJrS0o!X;2n z*!lB)y8WB(2W=*Mf!RX(F!!aCHq*jM^jPfo=8(Pkqh?zX6(7--J}o4>s8;7S1SCNW|A!j|5Hm8($y=Dug2f0jVY7ts(p8UD-lFUXPL@u%>2A>ef6D7hln z>x&~a#6N#^ve-%cFh2IXx|b~i2dHTJ#(5HAb{XmVVf`=dvu}_H$ZF})aURXc90Ta; zKJp*-47TO-TGi9hZPrJ%GBdMGuS~>w&~{-s?eOh`IZ`j5jnvDJ)9jYw+n8yF#Tb?N zp2#J|823BLoO?Geb7;qKa($x@T{haRiHtxyRBF-n<6soLc|HN~z(QbX3UmPTS~C6T zCKeQ+Egh}6&>7b(BsV$mvT?c5Ak$z%v@@wzrRh5Y@cd->%QQI0Gu)MM3qZ%RY_a~# zn~>3NM|9Q)DiEZmrFGhliAw;YH22lG6v^O0QG3``mc=#V>QQ{l;GBCk5Q7-% z`k9EXvT$%DgKcrO%l41gFE?Cwz7qGhm1hKAP92rwR~H8hcv&Ea*&)mP`es4r&$>~e zBi`@xes68p;T1X@7TntOugn`{pmR4Qgnk?dSxbHONvNQ9CC@dun&yg_d{n%lE=F)lq~z< zclpvI#C-#NS_fACpe0?&@hb8qlJdvY3h)E0+J8DG5mZ+0Z+JhyA20!pgN7{@Us)3Q zMy5g2ESmQCe#|V;y3otxg1XO(`>9GMTB70SG+d|2Wj774@vNO!NUl!^VOlxe0yW^D zSp<{Mx;U}l;0L4XIrk}ZRr&y@&dRu}8+q7S)w>c%AxG#jtK>H+2_ zj64o0P+k_1-^xw@cg=aLq@7lQ(#bVse{T;ru2t#a4Slew@TMz=X$VZ4L<-Gef{UMj z?K>DAw*A%^58C>Mrtfp^n(R9IgE$Ek`-bK-J6K(w2YxwAJoTdV8N7ih9(~XBx7x&m z_vSi;nr(STF63IoCS!azALSD*u^V z+I6PJ&8pB>g;f#Ej71;Oz+nFlc~71%2}F0OLe5qU8m~;p$CGpj|0x8~CJ2@RD)?!e zA*Si{uRD7->pQ!skUik9kNKnKRVN|2xR_J#hUGeiLzBOd(=!gq+A2Q&L)V)#2DzkW z`M=d&s$WXmRt@+h$lV4Z*hr%VYO=fb!cjgzXw-ANJ>#NwL*PNCWe0ksFY~F^xd4}r z2j(khYrIb0>QAB$wD+7$QW5p1r3%-G7vxI92l{3b4kP;qk=bzX09`44#OLV&FsvmJ z<7Wr=`&=*ijl{fhls$#8!zyM zrP6Nwg4fgEV;khE=8m@hC6uZu{lx*3))U=V6d*(DHm^!|f*jMkS zn6bjr?S3cd_@1{O=tgZ5`NB~@M`0^&m#OaMgRXg?GXq^OtAzz-SWK*R?NeKr5j?%f zq(@X z1-y9#{A`?#O@Nmj=fDR@KN0Xlc797juxRxq=+U6`Ck*3dqxWdKP=o4)pPYjBZjPCJ zeL;yu#O}NH<@MhR7gKEUlPZhU4{WwNaTL1&yx%FsD42HJiH{e^NjA zZk`M`W`S$u?wRh6&i?GmS);9$e9iT-a;#!^`0Y2I*NyiZAqv(EWC?6!Uyc_u1U^y{ zix}J4dhP&#NW=R5KSO`D3lqbAcTGO{Pf}`)Lf=b$kkWjun8SF!ISAt{H4=%@q`WD? z9N@lD7{p?RhQ)6Z8voiaDgO^|T8SY-bKb)alre6wc zpL%^()F?daSg%d|bxS=={vqni5!p}JjOg6)wLM+ZS1;*voJ#`e&+Vi{wFg} z3P$*G7D=}%shQkB;s|CV7Q^#EQ6AocBgQLHqaMF`?7}! zdsEYss)cd?$KRAV{wz$7zu3CyOCh<4b@+jAwsOSQ*6Tj&#`LeSkE5+gB#^mMV2|H| zyzcHdjA8KadLQ@LVcws+IXsPm=P$%jb zq1^vzKem#R2ST|<=p*6g?FA~nDKQ`i28m-4I&1U+_g5#@TA}jC&>kV^E6HI9)3YD? zPBMYWLd3&`M?=}fVVz86pVPC59Ds?t3j6oq22EMt?A(JplraL%Oe5FFe0?NSUTagx zUf+7q2kp;$+-O=Nm-WhEf8$mAYjSMIJvrNYOI=e(^syEg6v#@WrKYjtCA%e9&Y z0?BeX^D9`Q+2rPsJm!zo9SMia)qMqNe>v9|)4wSVFv}oR7%bxh)V3C};WQwXtd8Mv z$SP2E0b{z<%Cbd$j*G7oz#F8ujJBdw4bPr&>t0?;$#=yUsb^`E^?4knh2u*=mR}%13$`^Z2 z%xHmTgKUzQe&20`b@Rhj1`6K4wgz9p zt>?3Fd$u>^1h7!%5Z^xVI@-x2L>`DbYl9eJScwe@{0o?ic#g-jiP_K}T|^eAlS$S>zV zo|`(z+(o5Qa*SBZgl>^!ZuNqzhcL1l+`=4rkmQ34vboq zRAvbr#w+;v*!bVdq>514jU?gut?w>(^2tocW+|Uckkx2-&w`)2usB4di1Y45UY!jO z;HQ-Q6aQXmO@kjf8UogR^+`@@KerM&8;a5E%)f3)Oq-6c*5pWF^r=4JUugK9v&pSs z3w?idF1|!bq$yldOVx&)utj~njF0}lrS55kKgk>)*` zfU%ewRTZr^(R@^5!bQ%rd+ke~Uk!PuPMpGQWjgOW%A(Q(kZtiL@4dUsPS z^p6|lezPCZ_TS|!9`dU5xHR;6v~qX&bdRi>^Y~Z%K7*`VvuJmb&2X?89YDUdqC=I> z2XE2WjzWAJ$3Mr4PGoMznJ{NprQJFrdJgH!IiiS9QN8?wM zry5a5fsb+w^ygHGk7=0Vhw4}tg8wmX=N>pm!l5v9T+Z?1{GD}29AP-9L!@U5r$DP8 zb0_txRYe$!^(*XlB23!m6k99yyly)QWraM!=~pXO0lw^W@}Yb*G~KC|e@bjlfAHzA zlEf9}QGG+a5OiYl>)v7(cGXEwlJ~HyCXd|3vmDvAtVDXR_|VM+H~=c$=y*gef65f-TU8G+`Q;Fd0<&E0!qpqr*nU2EPAf+8^r z3L3b@6Ez#%g%ROTv_x*msr9pWg8vL3w*C--W9%y!aD3Y}KP(cHGFIh1Gc3Bjmg)L* z+3Rz_?oa4@cc9(Es zECP(({`zhe@)alH&p38w>rHZC7Ex zI2{ezugC~oAzIja%$B8qmNKP}uQm0jS|n^#X+6jRO?>E2n=xkJY4y^(R?7JTeJdKy zBMtgs6;x4&V)$5kkq5_=Zu6NUb4#91$Qw105UDXjCXd{GgR+*l=N_}^my|yf5}mT-t1e&!hu?;vDFKajR%A;zzdN>(iT;wEuY=T3F*uzYe6&HpdaxewY3!Q8Wao>9 z(p@L5tQj-nyNgPBAOEciQh%BqB%)p+xc&JieTtt0nqm(15y#agh*0KOp}$#fHnJ&J zQ|(aP!CggJP1`#q={aI17GORJ^P0sI`n-=GrswZPUb-09S{XzTC9+VkfBuOW%{%FT zJ62a8BQ677i6KvE$F|X-6|+&bW6;a4fPcY|xZ{-0DNXfHW+Dx!Gm7?sOzW)q9ik}q z#T(6j===w-sxWP#RnT|+um5o(+ieH0YF(4+H#&*#?VpzDhcd?B694O##T{yus^6-6 zl0Xg{%)^DLIhC9jJpRI4d$$qxc+M+8^2Lk^|I11p8MnjcwDc1f!nYsR6r%Qha5XLv z&R=u10e+Hyu(SKIA;M04&EG?$=d;8Wc9+TKL-?Cx0zO8hzUkU+n^gEPL1k{~=K06? z?uaiR?U+JWt)k8E{yMCB>Tw_+0pAiRL>c)@PoJcz%8t1QQZ-&Klw<+#afKV7a%uX( zA(ZL06wQKz@aI)`A=U;LejDc}Nqfo@`QzI~XS~1ki!d7LqD}FX(vhc8Z z%Pf2Up5rxDmw`~&$?8B#v{(i5IeK#6nC=VX>p~|R`2Ck_UwST87fawy;6v)ul==l7 zPBB{B#B6uzmq#?7gf1P{f;4sEu3YQj%sHU^@M-0S-!u6y>cC3-lwvLLhyZ zs53cGGupRzj>E~}njhlYhXF51p<&Ye{|BU>d|F(AmP-K^cIj2o zia)WQxc}kN5bytkN4-PNj7Mt&&kkdD9Z|gG*`ciy;s42nAJnSd+)nUfW}N%bV(H@lB>R8&I%?P4J<;kP3(dW7R?ov-%r`vPYdSxrCRw0zrJ3Gc>w<`=tCjdF=;t zR@3A7ImEfUAFZhRDECnS_kLJY%+6%Y{jLDE9rnE6eFgf&5$``;@41hWT0P% zS1=y@CXkh!X+ndNc>L&Q8Iri#c2hd$zmqc6uOk5$-_7CZ7XVErCG;Div(wkB^ipU3 z!=Qf_{==Y!8rHvy0B3RVbO{_w)cDICAE2mMtB~70;9zLFzh=*o#xn#%FQ7KlW-X_3 z@8?MUhirlu@S2Se)^V%|dc*@beujYa0_e(Yey-uBl9x4;6Md7{&-;p$DLj5VdO_J) zx!~M4b98QyIqN<0Uj1$E7ZRbLxYcu^?jyr>&jq{Y`(Vz?UBEzvtmJmYgfti9puPJ< z@aUh?5z3EXXT~Eo+??^W;pKtQOb6Mjr5oj%#&53}U0X&&>TqqQd< z-||Ww>H|@sLd~W|t1HW2Up{41Q~voMGzLQMgLk<(eO-~5z6g07QZ9bWjr*;=D2d}` zmZinyq1XAI5uF=Dn;w&Fn~nQuH9Mi*Kb9Vs%g$y631)blTDIP>q@(rzA6#vta1?I@ zHW&MJRu=BF?4;~hshx6~v)xr}O!xg_`JbP%GH;V2W@C`~$17#Z|K#P(dlc3?MDL6y zT}Q-nusJlpig9FnxI}(1rFGOw*O0Pfv?G z{C!5s@4MWeF_8hZCr}Rn3Ju~@R=4A|<_U+N6BRixyc+Mblo*Oa?uWy*Z`ZxGoBJfl z5IOpiv8@ntc5`maH6+(qBY@`!VXg~4 zW14+FYP6G*V(xDR4MXmVl2KO@7!d}ZV`SIcs$(Dt-5Tke7k^00VR*EHiGh&PKku*T z7v;Qd>JBn`;3M8Ts4pXrc)DO)_z#ji@tUVlFr#QXfn)w1@lmC$EM#G3~~5=-UGg;o2{*)e{}D*b60jK zYUO|7YhSL|Rc-P=@3}P7XzVQn$lxo94!%OXa?zrCPF1e#(AHfIyo!eBYeNY{!(Qcw zb|=%)Dc=W}b7xZ?2S8B&KJ4SI98!%sOPxVIL+=RfoWVyLMgv(X72&nI{78sly0LyOlppA*z@p&85HP!`HjMnw7X5 z`Py>CLY@lXOZZ(PO9+W%^}!j2@fSJGl{@Z^O{sE$?)Vx*vcWI&#Y1Zh4t?^{m5P%J zugE91LeJy=NRo04XbNVRpkB*UjY$-d2J1Obj;Quale%_wA=&d@GFaU1B@@?Kts5Ru z-(VmdOR@1i|4*&vOTDlTgNsu%L#-ciuRES6C{n06ZpKy=z;dM-y+KNdk_UXcB zQ4=E!0K$6ZFH#06xV880XeZBkUaUSL`@?FgW{+LeZvStN{kN%r3p#{awy6nPKD+-N zsqo+~=jl(>RoSx&um6L{ItX8{p_JNU7VC)F^fP6ik`}Q45y=1a6anN<@dpKn6aZmt)li6tx-_v}`Wa@D9+wQAE-WJA^GgE$#5Q6Bc=MQC?P3$UYx>M)#A$=&*Lx^~Zs45FwyrX?r&LlUaMmYqG~X z6ohsJv>~1?du1O-cD@I0O5?B9(J(jD|8!hM4(ywHG#1^*JB^QI*Jx)Pr26l(-n(wx zyWgVdjP<`W-)}9Yz<)j+d8a0OH#P@$t9&QQ#i;4f_kDUjlV>r0?Ca1;`IMZwPfu%` z*JQsnZRB&VD%z&L+Eyr%xYJYpxFl<1eopDg=xuMSZ|!^+z*%Y+4Euxv4mS4siodyh z|Ie2WTfLq_gAWZp|199PXgPQ=rV?@sV{`8ORbD=}asRiuE>#fb4m?+Dp*t_{ZPW5}XUYDqDP35idK*0?-$+L8ScubxDC4I^|B-V>`yZU*L{ zIG)wJn)z{FNi3*ZISwoW&J9}&>p#T36x468OmroRB3?WU@qUHKQ)m}{2bh0NJ0(H0 z_2YsS)Cjz@T@`~}R1eaCeyB6$5=9{Y^7f9u@}^@6b=eg^gXSTi=H-Gjv zFZXV=ViDSz(7L5v$a+Sd;IGiY7vXoVh1_+xUYfMAxG~Og!5HQj z5KA$23cT!1rtn&R;*L2EtNy8aoi$g_m6#e~Z{XWx ztk8$?j3}a$yij8uk@GAAHO#)4IYnEbG?~}WaL>$6FyC5GhqxOiw6`DwDVGeNW1R84 zk~SvH|Fr$4J3e8Y0uGZ2^+GMD&|XovN|0qKK$C%lV)H{FTadG*j!CS>ZEEuIPPmJ~ z;xP2z3skXEhI;5b>?&M?PN)mtl{3ejOSESK=&jl&|1GV>`B2oLS!JbHn*@DX3a4lH zh$Cjlgv-w*1rm9Q*_GU5*_nas|7y0>xpL;Uvmvx!@V#opOdIyz9J(WrdmPG6BbZ;& z?b=Z%ZY0oSFf=1Xf4EYpjaP%X6`Xyuo&;k{O$9QDtq9e?{dndcyfvM>NZ{GL*&g7n zHD^OI;<+q+d^{XIDNp6%DB&dCWl$_XTadQOV;0Ph5#E*hgpjjYj{5SfO5uvkA>LuL ziI7)x4U>2L8SDKo5A1}FQg^FT(#<$g`WW_!StKpM)%)Y_0N+rpZ*`|4&NTD5rEB;< z+QDNe?pWqCW_FRzwV0Ro_?+s4z?LNg=Yt?^wTZ`sanZaNJg4B9;z*)QuDGilJ~FUr zsOGcdm(SZ>k>2P9$|awspUHtLPI_TKC{wQ(1Zs#~J zVPkWJT-L%ROr?vg1{{9bj7P8c8hak8khBbwl;nT(H0Ao?yOPkOf6ho96_k1O^qP>c zpwOjr>0&3(UF-(y<%i~+IT=nqe_TJ}^ow)ptH(_{eWkDZ`ek!C;D!eet+su$HtQ+r zZ(ixV#4Kzrm3%K*ULQj3xpe>?X3u*B`OvttK_KvGbDUcCT-wpDY~tx^MOmkF`8TpP z!D!`Y4+PIOhqf1p!E24Ao%0LBFMSnfq}87?C@;;#)PGaA{?)zb_~Gt3p?)=yR?)i) z5e-Y^M97^vS5-(RIs)T-#>90!3=V#!0|ll%gTcci3b}lW(WZ z@mJFgy~AE!U(n9X*=xREupjZ4?!F}+`y^x#%V{}gy~yz6sG_N$r zrZ6~_qh_D*h$YIj2PGJe=#!GDrw3*yxGSIzqe-dRSPWwXOAe@RIGx4$n%yp5im_v* zf}qmw3)B??@(^dE6dn!_S*Oe-dm#mOnNyT@zdrOiD4m39$%F1jK7B_wZM&&daizxo z#3N<$-D2^Bw^OdbHjH*VdhBU|^hG>IZ}ndJctL&i_1vy4gWVcc356PA`%*Q&j*BDv zOgR17tXh9|Hg~tjXU7j?MF252S}6e|^)8M7G@t?a+ptvQ3h-t>4O1F(UU8N;m&ipLR+Q)yTm-6jToX!EIXVDStQl0ZW!@} zz61P<-nbQiDB5^bKej2L)$FKsv9g5zGlBOL7a*DGwJHR2WWry)i~;xA%KMuGr5yd_tsh5f=Hzf~`{>D={QIZ1P{U!sG0wTJ~DH_b$!RpNLPi? zf+0~oTN$OKmekX1+a43rC$QTSOk^&J2a;rd<}o2qc66QoY@!0IDGQ4hz96@ zw%Jx-vtIAd$}?|hbdKE^Xll!%1m{{VK03ezZCE%D>>jNbYt&+qsb@}A+U-=`P&1EONNanR~VrEwqmRnDl>Gu165=h7|lD)OTFX`5Nze(x(opVBZ zz^HQE_M{m-HBRi?QwP~fqY^Rb`MizIFktobBG=E+xiwhxE=_3tbS){K`$=qh5ZA`y zL!kOUKXF8lU9D?A{+)H7dlj(IdnIinW?L>!YVYtf>Ag$r>+hAf?mtg>d6Z;;E3Cf^VD8qS`AkDL-MX^=qj1BXMONiX|cv3UP4s9)a{sr}n}G4uzmFp`i<` zdEm4@jy&$OqY0HFGDD-A`DU6vc!#nvFQ)$tl)p3KJ0V-q1F0{H$8i z_>aJ_L(<`}*cCg~INJF0+n7!rIbjJ&+%<3_Lh2_Ckg6RJ`xPt3`rIhBI zBM|tUBn_D>!NtZnh2juTMA>r4S`>vdUpJa=O;n!FxZ ztE{xqncYM%SWlvpVW`ubMLb@?+X7Ed*F=b#K}ZP5_5v`xQi&m0RNrAl2$sy^{9b6% zjrOWrxjRF(*g7U zMq5f1ET5P-;3)e7W;nN|y@49)hs?pPkF6y$%0OVe!W~URZ8Mlk?1&*^`KDkWqvu&( zcH9v}+he1!IaH`#;-=^02Qpy4uh=u-)TQ?e1u>VspG%PouY%U+7VFJrt=z#HzY?bx z3Ch;%5vjBp3H@^Ak@C#i-bmD#S|oqcM3>Df>qo$J-T5!Cdmke!{mZ2ZV$tQ3ssR&G zoS>&7V7S5sgm36&Pxa$zrz)14+)1InSM_n@UoRU^LrCf>tzr@Z#JH`~eICc3WFE0r z+d05++Y{YvgX;p|B?#p2`czD<&J1wC}Z_XrjxJ< zXx^iK-h2c7qa)zh5w^vXa>oQmSCUMIn7A+fy9#RY95{X@K<|XrfT!!LxZ~e0#p;|a z+<9X7W6b~c=6$)5ac@d95ZQT7`0BU(EaC5s#Yra)DwOuhoSB{Gxh9}8jh^g5(zp_` z|LVb+yHY!vv`>3WG~|V!Hd5aL;(d;SZ%q;hX^a;}6UWUme!7yMMf&vJXtn-Ww%zKG z95~jX4^_i^wM83$i!@cRxRr6IKeGBT@V4iD;6-TFUfK83LcN>FMW6myz%hU_O)9&T zP#vI?{VdY+5YX?SUW(4)_ewTTG+^#tF>M|izd;Odh_{3kKuEY%;J*CeNoLJd2d!W8 z<7M&*@={gx`7T{HW`;&c!YEIf>PUK(VNNRz*1YLzRasXc3`SN+1D<_WFpD)*aWl&8 zOFDR>?UY;@>?xyD>o(d_xKptF4e$Y)1A7jCF4k8-syvvH|EV@vK{~%i{ply^iEq~x zDiSs5Ci4R-Uk;u$D%l+D`_^)1@9@uiwr`eO3?h$zH@{x`6)<2LYwS_<{>f6_;!W0B z$NRuvxNBZFN)Yg^oAWusSg0N8_wG&htqk3RkanB7xxK!1F9P87CP@7;e(Hy$8cb@))1OU3p|Kj|d zf!yyPY|D!Fx_|We%&H4l0!=-EZ300Va*)|3z^h#)^Pm|gnkIM8ht+7LlpxFDnEKR> zPwZ2Ib|rHwAlRTkEz}9wdhoj+#<;)*{i!2fXr^w>;+MEi)U-u5Ljg){!cPCJ#tBKF z+4t*dcPNej&4)NH6DJZ_!}geN=!k~0?)_IKhd&4-(HC1H*j4+{T;`M*F|agby4)Ob z3_ah4e+4wy46Es}TMu1SJOgr2 zP0N~B9B|K^h|Pm+27xy}V_UXM0}WWz@bzfzP!RifPT5#B0I)ZZ-3;Us@XcCTJA%9# z3~W!I+VNzyaDxQ0cGEGhf28}v^#Q;DB2dMQWnhFSL3?CBQ>w&Yqh6GLdDjSHm6#l4n?}~;_Ve{bNv9Tuyins5o#x-AKQW_ z6YnFOS%wa2!w(T`K-bTk@6RPJe*N z;{6p5<_K)oeq<$To+tZyerli72XEYtLSV2XO(j2Xd`-LP{50bay zUD>4=Kx(O~Pv|*I?Qm5n%-KEQ&W_%twYU$ z!9sG7Iq2p|{#ep}4F3n=prOXd1&SNzl!!>V@{s8Tx~WxnzwQYgYh0QbBS-F#>;@=k z^6i0K}_x4t?c91d9^Wqxyg$=Ry_g;8E!oAVz$dTRiWlKv2s4f>Yz6-v= z3%d2BPpo%kh~cH=z97z<9%5^sQeFFoEHECs_gCrUpeY+NU=e#Kt9r(6v9a4pW>t0D zd~4%uZN5}7*sEIAnI{Py9uqp@`c@~`Wep1mE(>@+U$8(J7k>=P>QwKw+sug>yc_W& zP8zF^(R%N)ue7}Rz>r*{#*YEaZY=DXGjh6x8ygLoaiLBUw=?N&aI{jr0B^>8ty9lf ztNE+$6@^7@Sfo_-MP_ztIEqAL(X15u>H>a0MFC2SF(;b^)`(~L)v(t*6S6}#G+Xqe z0mwxnH3^II-2i}e67SSKq@b(y$<1P#%{EgsrJ~p9l{cKRyv$fawD0Iek(?`D;2RDG@Fi zY#aKFEG|M5O)^FFuGj+uG@@CSGrviEmeV7DF&&fPw8x_ZJL#HqBi1&Yb;8rXMSl7n zW)nakHG#&YV^;3)+J!8R3Vh*mA)_OeOD+V@yk>(rjXpKK>RyQek@O~gTVLvN9Mdzf zxpo09>4jp3(6r2hRi+g!`$$H>z5PntuPb9&Cn*L3;2&T|6Q}t1K`y-D&jjQai!O01 zHQ-cfYvSzhq=2I>k=YoPx`8DLXYo|zY3f_e$hGL)wt^(n_F8Uw1hoF-0_lj!J|8=%~hJ?@rzs z6PkrWB*$N-U7*l`sQ^#+SpmIKPP93vj zGPf*kAJ-c%OOVfH`SwjnB?<#?V$*7{eyF_*dDa#=2swM0(a|N8^TCA|d)_Zh?R4fT zz>-e$sS%&>4xgDbDjDO4fB)1QE+Cp#2;#b(x<135!Bu~6JhLjBy^!s(VVzZvJF-ir z+dt{cnH+lg8UFo*EGEqDml9Eb89c5#;{Ov?2--k$oKe4ELp#1uokB0BmW&dIN5#T}9Lt*Vz2H$Z18hx$uIt|7+@3mL;oc3O)qI(dB^$1HZz0~;C@Ws6h$WC5AF| z5_-FF+Oa!gCk@}6RS?zUcS2*2z!LvfA^W7ax3%@!uO!*Sx-q`j^waxT>YgH~r~0Nu zSM5U#SxtHc^j*v+>R0OOY)wa)#AiG4f_<+MV;7_)kOz;!?C!Drci492M^KBAm zyl>}?h%5{MwIR+qL}H9qn6kEy^%b2c;7wwYv@e&kDbS}o<*hqg8ETj%>VcVg4KYXV zWN(k(0Ez$#nug0)NQUhNN~VzQe|otDkeT?4Y2>^Y^>YNd-$&ntFAwlia2>|;XwKYVd41O77z%Z|BL0ga!zc!cw0`U&TB%)+smJ2LlX4q(4Yzv%go zYqUgNS~+p{#o6wl7y6wDg-*1S69YZBj08hlAxIPCsqtUIyPqw*P@&|=<(8PeH|Zl| zZAX3Xw(?5XLz*7>M5iYCb0Oo$$!Ge!xWsucIiT{|nq>7bchUPydf>*cw=x5x6)rVa z1&tpU&dNPfZ^B9Y=++i`!bz!QDn>{JHd3Q}lJR7-n#}e){wD zMg4+w8vaX3f{U|4E=;cQcEh54kLPKN(a)iM3J7?JkBs!G9e8(YJHLJa@W4F0Dda|iEtGq)c$P7#Z zgKzs5O^XJCmtUi5h7`TxFswYCuf8gYtps*sv=6p!ioXMhfz+XMylSDI%(d#q5aO<3 zhEI`rLQ3iaBu!Z{q@ne6c4YLei5+5`HMeFXN5>t5z`U+p>jAjJ-UKiYni*Vo1Cy4go_ z(r0Fg2ZSAF$~esdCCaVovJ+h^ZzftOJ&X>dT;N;g@4URueOLNAO5dn>i77l$=^+iW zUytxMNx6VmA0ZskRq<72OZo)f%@D>lbO7X!hR8D|Bm_ou_wPC?cIUNCAPw>Ymx6#Q zUwrlW1eF~wUHEpyK1Q|hQgZ^SJVGY$Ux;_loZ>#?VpN5-7HceCB|R3JnMzRV{@UpbH>LOp4;NHi6USX1;6u0 z=zb9)0_Mnf=Z=qBx22tmQbxU@;q?19>r^_l?U{uzF`1NI8-{0bpWGkt8014`%tPsB<6)7pzpV{XDBRQ*_lU~Rq|sTi_UJ6oIH*}rp|e2!P-K`~B8f<7G)G4h?h9tFF3Fg2(^Znc0!3XKv>UJ1LFb z-c_qFG@Rd?>w#sGa&XzN+=^l0!Y7iwFHTN|jV0?!l0NDs zdT+d_Na)Wia~qE9>9hUlomxu;f>z=6kXI{RTHqs zu~uCjY*PFIY>G%N$H`ghs$!y)J{o*zyG!~J+_jxI;zhbGyddlR_PxjZ+16~g@#|w{ z%^I`jk56^TkxpDFu567HyaqPDivJ`0Y4(!oeXp}SZnk2m`>0B~Z$#?M)lP>~k}nr3 z*oNb>jyWHkXTFKNhkjg%UAW0sd#~PW<~*;RDI}T-$rTN_C>aOl{QIw7#VfnzF{Lp> zycL8NW*Y51MQ)YGb{J56tm@a+7N)hb8IY17-c+-E7St4it(%|)@NG06u3{}o)bG+$ zG0dau7-C3M(DZQiFWvv@jxzqu9n8ub!kQ<_)D}T9XY&8DL>kPIr5Mfsw2dk)RsD(2V^_d5K$D-h1~2m){YHY z)f2U1!wdQghL7Hq7a1;RExCMvbK9$DLMTCj|J5-w-R-BWDX;7Vc_Q708ihg2d%lcI zC;dlVx$^;-1HeW+X1S8yEQ`w!UUuh0D@MhyoFy8i0-L2w6!`I3xhYR{(c%+}#>7_u z?n;L@LnhiMe8o;Sux>NZ0Y2Kq%&o2$0|ZZ_%7ndB>!y@6_Yzzj*TQ-<@e0gcO2@Gw z4TEkjZJQgf3D0K{PdNw<()F2X6_%Zt})n zkOD?wMy`Q}U@K`2M8CiyMJfltk=LkSJg)JJ{-h|g<7{3=1n-@aQz03?#VOQ3*_hjU z*)P+yLI*P88|4u}oGF3*`hga#B5eusuXmo^I(|%Dm-&U<%-U1%B0KQV$TyhmU>huG z-b*a+cuY`kMIMY2v7RXOuz7=XXd(nArrDMXZmDjQdSW$W@0rOz(QN0!SJyAAOG|l9 z3Ifd9<$k{N)P;M0{cNCP!jomc5xzmW#!g1f_Mg;(Q4@u^jU{xes(_QhT7M=_k}q9T zgYSp0L5NAPG}#obF%4EztAq8z@rlS^KA&9nx)&g}r%@&2AH0CZUydZY(C;e@-BY7z zwvj)0Y~6N%cAcVm(k?}-)Qr^bI>0XUlmU*Op1P2@Zw20b1L8yQW-L5hm04}3w@PJr zT&I}NKX(j0a=LtWh<)Dp$%H&YqPj;Xh!sc3^T9`<+Lz$Rxe0-nep_7J=yd0-W{!&U zGG^t#G*+~Vh2*IZLtIQqxVd(mx&=Rd?_r&89>Hei5=gzSr_B&l%xtoYyJl<)7M;+P3;*lAOI_h#8Evi3D7)tT%2r<#W@Z;>EUa zgYJ`Bd+Vu)r^s1n zJKROGHR{m9^KHE;$E?|K4NaZ5UjhdtV}d0EoY5-1?<;7vnXeg#|An;s_Ze8EVC_@T z%MI~E8zAiiAu?l|zG;dF{N}fobbBZd4+UQoNw;6DW!YC1;ueA5=MeCyu&U?hlUZHh zq{cH*Vh}^6a!5&caK*UXd6;V3=FN!T?wr|wu%WxH+Zl{>f`2;QUzpmeNPLvCVRVbj zlEn$SaAyeQzop2tB_WeT)SrR%@}+DTH(r%DPA#cZn&AzrZS+wPG*SmQr)UwPCj7zY z6;uNKzlA1+yYsK6ClD;D-0=S(T8}0y!iw7hBSm7UAn*U!GqgCKBag>c_96Muq!?_=J(K?) z0#*u``A@S|m%_fX_k}2wKFESIv0jaGc|^%l)L(96*9b(altJXmdeIlE9mS_*vuL&u z%4(hiSBmK~sBPYwlFeE1E-a!PNV%v%l?mnP-3$;@rBE5o+5vIC>_CXq95ofQ{hYO| zmG%0+rLp(Gby+f&vo%Mr?O=na*i(S%YWuAY`d=4_6b02obRs?nqF1hCBH{o_t@?x@ zAbKt}>-CB~^8ti}=N#~BN@dR#de3r{sXchAAabSG^OZS<$INYxPbF|^Fs@!US6&r3 zM0b>-qVNElbxXkB?;Oe)*I z);Ls$oG)Ry&43+vo%v~i-k~c^)VVZ#vi?H(krBqvKf;!;jUBN)KRb_c%p!drt@6HS z%XVgCmbVG`PWAJz(aBzbBfkJM7m~Fd95Y7|U?K|A! zoglE@d&UQov$h)einK7M8O0q0R%Uy515ZTUXO%9pAIPV7Km9qfT=tJdpU^Gb37_QR z_RWw$7=QrMAch+(OlOSUP8n*}6F;~tDW5z{PXB9iGDdyLpv|%V*u_5!@FK>C&V-UA7{l2MWhntU2LceBf$^tF7 zU2YHi9bJ!!wnSRfj?d#OYvdgZp|kPjvfHG{umfC;;mlL1ORbw1R!Zo{R}fc^GjC5n zkGi|hxT8)A_}kEicF#9(%_ehcP00A>1HS7S*65j_R|qrC-|>pZZ*wA}SKQvSe(V(O z*t+Qc5W3YcYKVF+7tlF!`;6ezz5IDIt)_xg##Cdzg=5C4a@ZE&v5!w}vGpSlv zenk4Fsb_y$R?qv44XP{6Smk_1$BLFFr|RDJZ-0qxuOkG7boN3X}B!9u0geZ){-j4wElv4f|ba|$}w|m?dp&R zio-F&>O1Dz^0`l7M>|WS zLb^+7SrR95Q)`C5*dQ`~Gcu^?#>A74yb5nVkmb%9 z2wtLf{DLJA1phKTynOVaylF^c`NCBL-)oO?4R416kNm97FnL%LkIh%~Db*d*bjqBP zBKQ4?K5MU&J#=OD^w?MEp5IEJ!N-C~omlKqKrr&!m=LA#QEqeKl?+c>l&YFbSsvMG z#+Pl}VY(gF^P&0!S6ucBR~9_j2WClrQ*8VdHv7u)jlE5QNFyG?KbvZKdf<>BZaG!% z%Dqnw;X`k-=d*uw*>(d6h_le`h>P3`z7mtHyD9Jhs_-ATxidQn&&(jRhw~y1pbms5 z`EDJQONHN+*=tn{xix)Pzmb|ch_nSB-aCV~pk-f$8S2^>p#7UB#Wc3b>vtDbXLTm8 z|AomeYIEf`OyVqpZ0;--?R(}cS=6aKmzj>Lw`BXOjr@O1orPPIZ}|2}Q9%%pj-h}w z13`(w01<~Gt$;MBbR*p$9iu~HASEE(-QC@_F}enf81>uteUIPqzJJ1wXU}tA_j#S? z=Y(uFccbv)Xr4CGFlEv!Pu&jyy;8dfvXPViuMb1ruF?4ikB*L?+)6L@lHN9Pa_D`c zbC3+f5=*(=sfOQ=uz4LnduE6a@2Usq-c!#PdYe8uZn{h&Ll=7EE;5^%|?BKQm2JUOSxT>&EGn5~gcG4c|hvXCb z%Y334`VW_`?Qzp>&`b~YoJ+yFv!tx{`|w*1@=VuEunQ!Z*TlS?un()`@M@{50MXQ&)?yCux7UNV~=Dfsie)hC1!e%F$yzs8J1mQjcu; zx0N;{h|Pv*L|u#(=4oCvGs4ZC$H0Y_twe^JbM`8LK^YwR&`lW?w^(0g*w+)(WxzPs z;Yw!86P2y?+=KDKp~@?s+`mp5Pe><$T4fa-jq(-&!i=I`V7>;5!!9)aIbohPz*?b_ z&;hg5@x#k8HT6uH>x28B#(gLAqoQRf$QXiBlTcFG!LC)_8sD|oqi`Gg)7w2@wI`IK z3u5|EG*Yk`h%Im2ZTZk{WH>M$8Xj%6lCS^rsB`>Uf6Wty)(kPCU8u$@UDGwQ!*_`Q zi9+b%zqTCtHK{+tJ+oYW_1@UqPtH<2j5U94RZWqI?IEfYE_tfVFyay1pSmYEE5@ZJ z0`b}~TgI%ExW`B_xz&B6%t-chXlut)Eju~yw<^Hi`;8CpnBJt4bwEb~FSNyq}=Q|&BBez+ux}L0!$`Ak7 zw-c4~8M4B{AfeJ-F3xtiAt*wq4Dv;=1Ze0c{C<@8IdE-5E=yZCpC!=5M*6OSK-Zgj z%z@*VURq2CZ%ZTIS;Q}+NsP2=a}D$K#B0zjfOZPP!;wT2{<;cK3VVUSz%r60<5h%A zqSrbwmnv=UP-0sad_yZlyu@VF4@BdC@*sI)7w9G$%27pHo#B@OO)o>$O$c%J52#st z2%v}s_mEBxmtg;%X0o~!wJ26XX98kcz832%u1p1!Jj2|EO;+JwGVyiO3-8uCF0QDC z5l3x&)Qz@U&mbJKKJ6hzP(y!yne%JXEE8h{J_djF zIsexSFy1h<1V1=!s=;>aEw3toq9M+l`Aqvyns_8qSb0^h%E)zBfD>d^oGxt(lYv4W ztBLU(?ti{0&0RxJ{^{4>v=u4Ic3ukmJ{omCA4Rm{P}q+G{kqP|7cT

uU7wD!1q#kQEHZ(b-(!M?Wr zRHno=ix~eWsflBNNy`=KT0@7MIP>F|2ohosBOBt;&8{PaL{-~-B?F>g@A;trEqS9n zD%?KzPXl`1jk_4QrEtX|;kZfGI5gcs#Vj;sFN8bpeX*CFBbK;~gg0`#+IB%IZ~1e+ z-r>h4Uj30KfhLz0`DzDwr0hO!n6z=qJ6R`hek(tiUpFq>k=f&KJfB`o!(Xq3zEP}q zN1O3V*z)@{Ne}E$4h@vY{L9ckjVlCyw!-qwE+c3NoswX&)Krv{(ho(vMiNrMb{&I>)qY?wU>@mv#3Q` z1`!dOf{KF1_zAiPJ$_>wg4w&sn+4Htr3t0iTc%&>{3k5j4bOJ}Y7QfMx!YJ@ga1CY zZuKj(xd$Q*eK3mCl=xg)TiP^v=*VHeJ4&WL&R(7Wbany_JcA5~ zMtpyJhx7_}zdi}X=u|eLZYHBX`d#2DYrj4gk^B-QYY(w&Xey;{{ku=V94X7kpKxZs z9&P9fbK!Iu`MwB>>P4kdz2Ag=bh5HPYi6ltixsTB5T?za30dvH*1Xbn$RF{16E*#Y z*a2K|Txsu!*(hcLJHFLqyK2_I8C6f6izJ?+n7kQaQg7@m05=nFpA$HqH0R+e>Q`)G3_^v`l2|; zq@L2SV&LC^>Ak*`HdWwNpoW2)%8fbc>oaT4HgDOMZP7QDn%OuGIJ4}w`8OVknxRsL zUhU$rEuVgxl3`@JOeb+>)6zQb&_3abQu_d2@PIk#m@og_D)7ofUx9O#9Lp#xS37=^r+H2@7QZ6?TcXhxtO_*6OuLRL{pqz zraD#-+qbG})X$o-l@i-Ghao!LVu=@A&O$AJj~h=2A@r~LA|S5T!TdO)h&!dUM~vpr z6f6z}ib)J;vUcnKXdDM2s#2;pj_X8EHTnPQ+}i%YT@pWa*&tbSyLDicl9#~BKdoTq zYunP5*590bC;o4=GBoZ&BxWddB1dwqhy28(~~QERJd^D|-5DG!&2{oYbu z3e<^lYBdh=>9GESQ%dOvtwxSnk-4WP&T>rGji^ zrJ7SsaYl2;$FKCW9Xz|)N3!K5y(}e~xkfL64UJc$!R1YOzjVbJH7xSTph<645x@FYQcZeSro1QZVHa#G-}EtG0f+ zHWaBVG>d|&Dwdn-`w>CO)`Yz3T)4O$+4QNVfq3o%Pu3^=6^9?;JGxWPy-7Z-&-i^&WWK@c>Ia|Gm5TRA3naHCg5 zToflO%5tC*Ro8mW{8f7Vw6?~u_ne<;hI`V0(A8qg#fS)%u{O@gClLqXJ|wCQ3koyE zfs9)Dl;yy1t@2m*IWDnU!!YVAJMiP;Zol1mpz0=nyj<9YI>DgJnRdz7U!nH-Xt%XhP zJ2U~~2DiYd;Yf%@l>Z_azitKbGg$$AAm=n>Pt@b#e5nl>gL>gq2~~ad8saYrY^+yn z7xYWBOL^^6RViE(VDER;!`B6&cd4(-7OA?yJ4)=GHII^gzhLZXrQ2TZI#-X`esUjy zy!?KBdc+_C)ck{?&2RAE#8N)H5`Je@ohcS>Kqu0cK_-*LQ;>GHvk6o+W7hZuF695b7iqgG|A_DZ+(vWJZ1EHG@f| z8we^LgyYOjaTX<%pv8oV7guDN);^MQNkVEzc#p|n=B!(Q`6Rzo# zWV`~}SZM#hjP*r$jLARInZq~10gqQ1*x2dKUCz1DEmAv8-tTSQd`NoNcQ{9kwd&HK zsdq-ev+Ysqu57JrSJsxmN0TOQ#n%gTt&XTziGc!yd~Sv$u{ee7hGy>q(K|ssVg>z` zEey3Oj)IcDN_ML@N+cEXdpgag*_UrJvweZ`0Z1D#6ZDvl>{Lo%9=x@?33BthA5aH4 z6HltQ>E|>v0W|FCMt5L|kz_9ppU#+@cM20P1cma!a2YqU@K3bQ--}Hz zmS>KnxxJ~vm+tj#T_P9Dfee#XpW*+;K?UZ&Y#s7afz1<#1-J)p+=$Gejf*xJ&sjO| zg!92~_yAuGUX1n;J@q;-m@g6`l7ms}7ZRy29yKh@5HC6`xwijazPFlFwXX9WCc0t5 z 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

dxKi;{rQ}EUvT@A@VkMXH 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

F9&OrdkPl~HUq3;A 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

;2Q=fIDlf4t~>ap?aw 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

eZjY9FPqz22A7gX|jU%-OF} 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'$#Q?3O;?h?P0fXjI=)_=s%qD{Q9v7 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�-X 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

(igFPPTxkN}kiCKW^8(6I}(&Hw4H%v>X1z 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�*ye5Wmihm+j%O1TyTg}{ix$~%&Bqa=YP!!&x^*6B;ol{MR5m4>vHX~$c5sV>SLLgF`-g7pXYL^ zh3J=VfP8v(Nu<0?dnL)V^B0ihCX_|sHfnlJY8dVFG?LM-BmxckvyF0H-5H$Fq$jJr zJZH$sBr)?wVoiQB_I^QoFgHbW*)VKv5KH3-VNB@-9kS@UAUh;&x?oufa=j|_Jz(7xb?xn@r#5e`*N62BR=QT!w3R5)_-u}_;8nbNnChK?MdhE_N4sb zKVRuRe`(^r3ADs{w~zn)rXLD+S=L=@XBh!fI~y->#aOb31ZPv0~kTFt(ile!EnZ)8i7Wyi7G4&am@PUPu_#?qBamOXeo zSNwJbrN^wYb&VgZr9#>EOSkNvq=i84*q@2dyvWAo&oF)T5Uzjf4a#?{<(+ARi6la( zYc@IEL%>lE)V3id2}sN3@@ubQV&Ql$>Z2^ubsajEn=czoYDmmCg+Yb)^2`m{aJYzB z|1pU>{$wovYA$8aaDFl<1c$e=YD*O-wDQ+h8trjLI$=U&<>adEQAUOR3x(8H?WE!e z5Xm5?i_$h-$K1t|cmBf4IpgVFUB>pqK&MP{x~Bk1bnOx$38;@X5KdL%WQ`b0VPOG< zbA=VJ1J~=`f z5Y8D+VPOFi3q~`jBR~p+E-PTd;55RT$~7tv^hq6(bQ|edU*(zqz7E+8?v1X)%U2h( z-}C`uai|VZyRVXpV?Zd0=#Cg8L>f2{C=8}A}q9wdM=W!l*xrFWm zvI$d1@s<**zcOT=tIE8aCi7^FLzN|pOuC$|_=nONGBA@cF-ktGqI!R|vPhJYPOl85 ztR2tDqo3&v-~(k<)B@p*OnS8kDKUkSQ|GXD)n8aNF^{f2^SS&-xwPByHgg{PJ|his@VNS8T)`puS~kN2PqVxdzT0hqdt0+ouwsIG^ppcMnLM6$)LVU{Nj>o ztf#|*)L6^jD#hN?dS}up1SDsYHz30r&PDDLK&{c=<@8P`40P;f^k)qndt2Ia+3I2r znA$RS#Hwqnm#<;Du4{E1uB~PNp%{=()@fY`OVF-MHiJ(y&HxVQ6tL+1wN!0;k!eFx zkce?27E^YKC#MqWlvLFpsr6)JtiV`?8!XFB^ApyNPm9}&aq zZ~ogX!&q%4rF+ymW<_WRg!_!;saOBP+E?!5ik=}PA^p{+^v!8Er;Se381^_=?ZbLo z`mhx8O!c4jACs8+CuQ+hNx#w>U$Vyka=%bNNuph!u{^a{tzV?t62F}kw#46;a=M{I zuPtTydsZEi>df~GB&uueYLl2pGm2}2nkdeK(K2<+SWB!m zgcWBxdYQEb^bu~OaNT_7uZ-cZV-vKoPhYDR>&i7lR2BjS#DxpkqBDTK8e5L>CNx~Q7vjQ=WE{Ed&W-H7>`1gHk(=#ClRKiunhAwaqaBQ+++BhXRVj(tudsC^oqDj0P9fq$g&c^N!~%*+f_-N_$kmw2k*dVc3ZfXj<|#0193y2enszpwEjrwrvmhMHg1+h;P!Dr z@qT3sW>p;DGk*P0ykGggA?jd1LdEqnennJebt=vTj_uyY>VMWTa%3L2Kk+ENKCL5d z;DroIgxZZ8SpRuBwQsyf#fb5YnKp|B=hxBqNBQIc`!{aplkzg~^8dO7`OWvJ7&D$R z4=rHj_yc6+=Mrux@?yseE?OMW<3dv6f8X^oTe2|qtSDP)ilb0WQnAhd8 zOuXWBhxm1ru3W@xi(g~iPwrymWxrwp`BbzY%;lr934gtWSzmlf#pl&74(id757n*1&?ir(5u`OZrIwzP!HC+2bY6SEk+E1i*JatTw%`Zb&Q^TIzd z|4vgK1{AXNjl0M{yo4LBdYEOk*<3#521aJ2(0yRGa%S@2@l1bcF#C3I=H(aHSjzm4 zQ0DULdft7jh$#c|898+(k0-BS|G)z7zBrT8m!>i9!D;mVi>X49JRW)DMW&ol#@y?F z!K`hWOzAbA^GD=y`xCS1^=YkPBbzp`c1J0-9{HD64;FNIm_>(wJZKv$MVVG?VA+Nn z7vpYh5UT4^|f|pm9apXXZWn1bPIVzVa zkItg&<~q8cHH>bcj%Mm9e}6H5`}Yr-GN6Dbo=IWdfpkV*mQNOCtShagHgYM~Pra3q z9SgZ?+%{@Y%O}4l>|eQrWna{>FX?SwE*i`9`~seum&x`HgSmW23LGop-A!fe`)mcT zZ!Tc^`31bXIG62-Ipp_-+V_|6kAK%8lWvij+)&514?d*yrUG&CH&zz4}IMT`L&lY(M8`2s&XxT#8opFaFs(J(Ou{x^gC5z3WI!P`1)Tyq%dzZ zBd5+{er^d2ypYQWq_BV0623SbL&lo^=R*1|X``abQc&&jB8NU~UytED;@3xd#4kT^ z)U$p&_Lfj=iZAvDUmP&?2Uj`hP~UB=)B2O&F5sPULj2vCs(uV&`rfv3&1uM>58z#Q28-plr*EEe zl}y|ysl6;t*Tifkb$qQ|cj6|Z{wYjU1VZQhgE&hWoVeR~HE?lF0Gq&Syr)JxeLIclds)<;6E6iW|+LPpKPg;Z)&vyoL z{u*h)7WRM6^PzU`yyHHI`ARO_&z=M>*p2&ofP=kwH!v-8-U4nDj`aMkSPivbhc!D1gBU~Gs+*dIL_Y;7nYrykABrNp%y_rGuX)N$5d#b9G39|%H?s#}|H%#xGO7)={rRb7m`nm9v2PxkCFKXI#=k!7Oj6QcD zy%MU}xco&Pc=ROa}ByCv>cg*B_bAjAgrt$sYc1?Iw1tn!RoNa`EuK3^->vBf6LK>~H6@soj~J zf9_EF9$U-9v)`bYGS46wNx~AVdRwG@Zi#7%`N*>@Ep3rdQ9N zoH?WqnN5`x{o@6u{^mv2?NcUS^=>MmJ^d~k&ri>6PsRGBy#CK>8Y0xaopi`t?v3^HMVzFz8H%^*+w}rEA$-yoIetvdDMPq57tJDvLMqNlk<^ z&K%6xODil_?rBJb>T8T;eG zq<_7JCudCOk+*gcjqaoPvpRYX%O}78>73D{J+;M4`1RD^^Tt=lq3Hx=pL|5AgUs*# z+m}Qe>e;pJUsR=^$q&!z%jwTJ9Rqqit3PJ)olHwjPSs- zIe$<#nW>5FU%!xF{^qZ2I@pMmn8wg6#xo|n4HX}}!5g2}P`l@IcGUG`$e>*EvQjwm z$s0VkCBm3t-Dvu9EibOE;q1x3;lT;k{@{!=&t&LX-PyHj3CrI7h>exWoGtWcH$VO^ zyAD;euWes`Y--Er)c#0m%a3{P*~P3qWY@JR^FHLj$$F|vN;uN_Oa>3krGMvowk>&y z4;aRXY$#j%7E3-ZWz*VX_Jz~vby_xOoR)^XuZ#~~pU*vWm$AL3QR%+5pQx|9>!@jWw_+MO?-SXLT>J0M*VOw{klNu@@Ken z`kVZ-rV)um_dX~<`pe$^hz}j^IX6H4E)^%d`>>`?XM5Iv_21XAY3pXTi1z&G3}!6b zMZMfa^^SkC`CvzKEcKhm)ERHEr>yxP~*!-{koZ4$||IpL2Cu zF)#e}6ZW4}cB~yK+sc+By@dWsNx#0yy35UY0ugyLP-<<&n`?c#c0DNfL-p~{#!n?` z`TKDJWx?N%Prp8m>Rmffo{G(9{>q^Kl!aeq_b*5&AJUc8vwUSpxs6qJ6V?*aUM#g0Ab}qZ zJClE3+MDTTXEObqOs1dHgNa$mq@Fm=$A=q~6FeN#bEt?b_X#JS?b{~I#ltcfA)VmU zn#N%HNe=#lvT6JBAJiVo=&RhgghYDhG!7lAB|(xw1#fK7r;x{ZLEYk2edAzuf0fzfpy0p%d&W zF8i?yR7&f0UK};_6178UH9sww8@I1Ndv$oh8s0@*@zu{#;D8yor~vUK{B1ZF`8c9I zcp&jQh}$LiRzSZ8*C2Y>yaj*FebZcY-vzDuHeI~(IaRzRH@KGRamxp2p6F-a%}LPq zhLqT$Xzts%fd{EbD<|icd|&}Py8&nR;gh0IEayZtL9=+jzS)$1@zwvS{z*Gi*PpAF ztnzOLQ72gAh5n2$lVJK=IrCRp_yujBjx09o;@km}%J1q{Wp<$eu^`xGAvhLcV%`jk5NrEflutPp6-5B%}Kls$RK_>Vr`& zy0QQ~VIw_y)^P0K%Q+s4s%b|#Q96f%6?^sl%a(;&hreZ!3kolFyp}%y@d};mX0Ywg zvp8z{XiAXuv_)U9a98~7a*{7C)31x&fApQtVCxp=1l(4-b>4;_4eQU_gWFMFd5{lk zn@H=F%D8TA;Y1C0E#1NVLrvBKJEr4MF|Uf7+S}=Rxch0WxUMHBKKPU?Hyy%6Q+~ z`9D5czme$7HP#CAGj9EV3((pehKKEp-~R#aWp}Ni;HMz_mK5hZY+pgED{=!{GXL2+ z_M{cC+2Re9L6G+OpJZP_?B{>@{i+%L!>Km^MAs33YjM0#2(5jaMnx;f_E2l2COf10 z?I$5w6Dk6ig%xq_JUoAAt&b!dB~ZAUs*Y+0;)a-cfCiCdwKOc zx2*wP8`LGbpdYw!tXv=5iOFiw{kV>D3(=I0Rt`hGow*5(dWqb*-mS%*Zkg`-5if6T z=a+s<%NxIZ;^&(4=8ov6Ppz%T7LK<)IihH%0qonSpRl9Q&meMy2=O?dep8nHy*>JG zpXkoo=XakmlDEd!Me8R}XD4Bt=_@sXEJ-8?3yE%Ao0%{;mT+20Mc(@T)3@uyXAgHS zS@@|(n#slb#mB!%r)f)2|L+PH(a-;T{2u*!M^}GI<&wZf|DfC@|DarSr?NM1Zdt#% zHdL6-_3BpOeniILuJ~k)YxnzzZgCto~(7B4=7B?~6SRk_>vsYES*kvpKa!&l$=t1jRv&nZo&1z>Y{bqjw&55ifaNsPWt_0}k9 z=Z&I6m+l-rx>s5FO-LpAoEPYR?v*4pe$LUa%1B5s&I6V@T}$^%=91Pum4>P}IhGh! z^T0agA*)zlM$N~!v3IY!0IY^h=sbmfH_an?_ig<9^=FACUrY9luaI_h2LF2LSrUG@ zhW_WJa_FNqga%zlN@x#9Hc#WLb#HQ_Axya649>XZZc;ncaO{iaoNQyHEp@zsICSd4n>U`pklkM~>WwPO z+jrp)H|8?#XgOD`P2ib=UgRbKmz=|v?*C%cKdMnad?Oom&{og&x(fcfE?awZGj~FB z9Pzr&O*bbC7tnGBu=@bfNXVzZ6`eK?wR0JK$E_~oS6gw_d!Q_PbJM-DHEu7~yKg`g z=U>(PvpJZZTPtkm)^IJGpAk*bn3oTZ)^xCOHD&hz0=A|z8HR;>wU-vw#GUNK#{JPP zc}MP6N=x=`>kFsOzO;4{zc&}me*B!h#-8)3nmw5W*z$ROA--0!X4;d!zGdO!`j?se zWhh&DV0&r}`)ZCoIoOwHaKT<|+z975obfMJFnbD!nppMQr^q#X5$wku{aYXi*YXnQ z-z{jGZ zWgzY-iQKJ@W?2|A!i5{?n1F${1`X7}-Y%}etmMK~ltg`q7ac?(ipGuWD7kPaee>bk zKY{D|>G%&9{#`)PCW7+T{`sZf((-;2^7LzO4-Jt-F6vh>{S?va?`9u9_T-3Ce2C<5 z-!LNtojf!8KGg{{n3KHGrz7|4zXRO|EHYQyNW7m|Q1U=0oecKVCDM#DeWfPhx-9s+ z@Zcx|LAdO}apYP!cm7SFD03^<+s4N6$}$Ink3nNX{Ngq8dEmv>9|g|4NdMzs?B;7$te(y2cc*#vT9wAOJ~3K~yDoZbrRK zk_Sp6$GO2Be%iRy&V_NSZ9X*U_|-n1b><$ZRY&APb)0#e^F5C9&r%#nT&Rk{+JvT` zKMyiLBXU*tp7S=w{EajBK&;%P#h%`Ss- zci>ueL~gB`%da{1CE2;JJ!y5qa@~=$c&OVV&~3lk8a$s7gt2&IP*Y1Z~H;WGf_KKU281y8{gI) z!m@$bhNu1;Ld7?UFmtCtic3D2A8v%_NApNpFTcng(5VErH<+A*xuJyc#sGew6qe(| zc&ew$#mep9csI~2UCAmBVKD5@apcV(1Z#RD@*rr|9!dYpn!cc4+8aWFxh5{nP82S_ z@%N3O=32x}3TCNb9R7}6#CZLiTRy+~dhl-%-QO4`F8y@xPp!<^Uc69?FYcm(9%Mb1mJG>b4`-e@CqH0OhsQR`idLs_s>Mv{CF`Gb^ z8g&87vP_$$6L^--;2IZSRr(JX?gD&b%`_vvJC5)zH8k{Vi!Ojofq@hccc3E?XsEv@27$zaH z2gzO1II#9MK6!tlQ67_=R1qmJOk!+e)xtUsrL0A^axFrW;1To<2tD%zdS`ZJ^6Bm1 zWF4O#Y-HEoG6u}ssRRjkB=wARrlz$cD`6jNzpCR%b_zf0mc)xv3g@OmdC5UOtq(E2 zUq`w%9Oa=kWz4Q@qIYeW_b>0vxHFRZ;}%o?mIeflM=3o}PmJ~)K2XEjJ@w9?fHn)x z>~9gM+ULaS%xC&)_7)G<;wy6pM(b&J7m-`h>t1J`uQYQn6w;AhxC?5kH#x*8yDtQ8pn85cZg`3wC68%1bqCTJq4=}nSXu(B}siSj3Nz6uD`BqD# zbIHmBIWJXnzATyQXXZ8(#2XAHB*~D7g$vDxD|gEQ7aoVx7ZRKr*bm*Ji~6DoPn|&5 z^h)D8;=+AUiibI|6SptYv~>6JLQ~i7fvXK56a^#OLN=myNRa0+>>i8 zAQvY_TZ-bus%-|Um63q_n{+bv=S$)F)AbBP6;JJ%z}jVz+l%8^Jma!aJxtf##tF?u zzjRw6AH}s%(^Jm;)mPfI=XMz&5opk#T@?Qe+GUTXZDJ~IFZwtAF4EE)O-i@!9NihE zO}kVQh|+lCFii*0;aXUrq8KHzR@Oksri~<+2L=*A4JYgNAWIe9aiI>LXp1>+_eAH&+W6KUzCBN$Bt_+*ZHlJemkK_Mbp? z6I3A7=6SRV>l`yT*DgL?a-aWnnJ+cX%UcmwwBCOl?q`1Y(-t`&0S8^raE-1hqR7=2 zahrb^^zoasFK2thmHRfRHA37EZK4GRwI>Db>o+)Z-}zUBc~yk@Rfk%}XJ792q!lpO z{HTcH1D!{Exnexd+8*NikShQF1EBR98!!F{Z=8C;WRQ2$fS<1IgSd3pGY^0mnSl)0Rr=W0T?`+*sSVhF|3 z{uke03nm_y`=P8nLTG0ICz#IwZq}K=SgvdN#mmk5sx?@A+(88K$}A2S{0v|#|E`|_ z?1x5u;^W^Xr)gbK|L+PH(a-;T{6Bb|QB!j;(k;)f4@7uFBoU zPbF&ki`)U_rY7~7M8fyX-zL)xP5X0ce_A$82cG4?Cu=y_2norf={#Zz?N1*{o3f2G z9Iv5?G}^RFLu#r)3iTi{0U7}L;>yv(Gy;jCR1zd;4D}!}1k@@1jfdan z%NNop?|2@m1Fj=;_!QF5xtYk;O&qM#vp|xK9l%!kS-IK1Wcww z$J@(!va$i>CXO6A%16~FiPDyFXPw66-U%#Tv4vlL9pb+xoXO-iieREgYFN6bo(nQk z8JCny=;&eI*&BnCZP?SY@+4^PYnZ3zw@S8XKX6(yUop`$s_ja+?7;}5cLVLA*9$t(upjOgA_GMbf z(*E~c?+TKE?81XudP`iK_T*__F5Z6gt0ud19L{Lo!Ma@cMHn^;E>-wO3 zd-=CO5U%T=U^iZv=sqG4Fp#r~*80Ye*l<2?8rf2_qL!cY8&l%bl0*GyUi~afwUWyl zX_DkI;8DtEf1}5xxNgPQ$`g2`B_yOL5j5xcozeaR*A^IDxPlIb?xY{$8#jRw7cQXW z!hKNtPkY12%8ho3m%G2xr3u-Gx4QF7+oo`*n8)dSi|;K@*Y^4U?0t8MVx^Go%UpMFM%VUR#5UOnHIAit)^bP2s1Qs{}*k=G& zI1?DszOJS$sXTT{R4j~JJdaiA&*bI8JI6-@Rry04#-?g2?@K8mPl}zGcbkX2q>p`! zK_rIv3a8==Z_3BoKz)HBLscyl*onqTTcINN)a)VfX;wlF)w8!%? zW%@9-{rOv1d-osF=>T%VGK@d;WX#?BWtceWm)NxUN^I+#j;W9PB<2oWhoQ$jt4w|P zCTv``1~c}54dy@fevIGv&zLnAz}B)9oxJ=;1srp$&eo;avIUqv|K*r_*cxox^JGjJ z?~W@-8Y7QhiS=vViFpe@i3O{6!-ko!!SwNY;Lrl>^1@$W|J`oF;%k10jhpVr)@?v% zOa8Smkpbj;l}gbx%wLV7Z5$=G6NKxs+0x5ati!MG9mX(J<^mW5CJtn+FmculynffY zc*!gPTPEYkT_@pp_in-O?p=?y2h71K(}927x)L{U62QnXet*|mJhI;$y#5J$;2-yF z$1z9G#;#j8;4^ox!z05p@sBOQGv?35iHB{+vORXg5lWBfV0gO(Fo1;%=HXu+T8dvU z-kOz5()uaqRehhW5&Bwg%xk*E29Nf@VsOE89m_!JN9bIWz_WoM5rSV_QKajifnwV0 ztBQM2rJLwVKqVuA~9wh#NoJz0M(l1c4uqy5M4PcVzA@n8emSm=uIC`oId0V!qn zz!rnBANI_jkCG*-u!5^JB2ngV8Znst%hH#{HJwNN14VccdAuC;Fv^{26QpG@{`u>M zy#65_ndoXyhDV^){;+uwS6yLk$K>($;o!9}Ri`ob8Eda`+(77DM)E#dNcEGTPjCA) z(B7q8nLaOz>s7ERe~IZss6U7OALKr+e=*|Fdz@uq&|AkCokBytEe+eDHW!Vs5gKxF z3}oz`{44rxAs`15QT@w#k&YnY7H{rfHi7qXIJt_)^X{N9I7m3GaG}Kms&QSaa*Cnw zKK7BKNDS{4PXC3%cjkXpbv;&4KsdR+$l&BcX37(P}O1mFR}QF^RRZ? zQP}OcFJW%ymsqnJ7#NsTEdGL|r(|UHFY%AxoQHK=7GjrYo{RZI*I~`N?B0Qq`?2!s zPvVi43o-xsKg6LgKNq`>yAlsxelFH-)Xw~s+25U9&+7R_YS*O}Pm5;!gI+XR(ITRc zYuD8udI6*awr#^@cPz)Bwv5Azk6D0IXRgO5{&`K=Y2mr(Q z-Mt&|$cO}F2Y3DT9-MgjGOXQwFZ}ll7vRL9HTcZ`-GR^Cw+&dg5}&=|Vf=2}RGfO; z0XVU<3cp?jOdJ@*!~tO0KbGR+`?q4(g$wYh$IZYDr8xV6uT+$(lQIDHqHN-SnP25S zpVa$ChD(!Y{v^uHm!!1;T0L0-CBq%4J%bt?90$WaSTqggFrS@`I0?_sbYl z^8Y~Ma@<5un}Ojhg5mL4bTLMcBlB*9;Zo;}-)d!Sy@gZMZ`3xvv@}u+(jbj2NVkHB zgfxP>u!IOm_mWE^-GY)5f`F`mbT`r=-QCR+yX^AY@AJ$%^LuCBKj1Ta&(7TEzRnfr zAl#gnGSA`rn2$Gn!GiME3Xyjp~7fuO8Mx?R3g`NMAGhahuAd?WKlzg|U~O8&yRc z2DvWyfc^bsNhhVO3(hfSp{3(Io_np8z1F8Npgqbp`K#K!n>_jPI!dd98=ZZusp~V{G6Wgg^V}d-v|y>S;Ks%R!u!NP`iTQ{Y&A zmwgE*{tT0^&cBO4!`0`-zaUcwN-c|_S;*nD!RsE2a>RAM;rJb&jZ(y2%z-xFPSWwt zzqgbXKeUa^Ls9?U@`oHF6@5e z8StuLhgcS-!ZKYrr)~5tqfL9@{>twSoBBTQU&4k>LEFz`8mpU6?=^qQ?Qn0iq|($( zFf4{DZy&w=m|;{sG`m^!Xz}PEhRT{MO8K41Q+e^P2``XL=*6#HsRo7!&@a9Es_O9} z#T+#*M5u}4v`B3rooH=9e&W2^o|;E#=Unb^3d!oTk+yoK_EQFabk8PPDb4`U;S9|C z4#xNWI-vtR{O0s(a$+2wS%Mi&0P^p1ZKO%&qt5-fF{{O- zr%$o5&)|KImY-?rS$L5K`%EK*WPNLPopT%G*45T7&-%}}P2VT0aV75A)kXh)Jl6h?ccTb@pEy;Yt#@6uGi`gh4Cbeq z{8>&{YuI*c5G^X&_i=Z0ynmIB`puzB(;EcEXHbq~s z4pNMPVB@R45?{)i>jR1>AbiHxq-53?+vhCNZi1rlLW%be$vR&YXS^VnDEiWuB;9-7;rq(5Qp-9cKwjq4zeH?X%3t_`q@q=xo zR0?ndg7IMLuj$TLqUWijBJ=Hy%m))Iqc+;1!`Z?4I_L(m0HcjwH;fQOD(5WN+p_cK z>}FObcX03<(BO3d2}MLxTffm+A(iy@E|*I$(Q+^__w>y!(~{%**o`Z6=Dkj*y*89s z(SO>;_4cG9Jh9zx1P2&TlqpltE zp7S(m48dsc0R-*lAgCp$P2WT@C~SDQqnrGvDKLv^yfIh-1f zv~}NlY$cptTIqCu`Sm{Tz^3({1v(;@8{4DF*0H+E-b+rt7QJE`so9EFahR8PC@L7V zqEw_3vw7X;8RNuP5iVaa(2e}v#~Mr8cB3wTD|5decV9!Q7!EPR$lcu(xAo>$ARn6f zuk)K+^+%W7d1T32Kdoq4N7Zjsv{`-lfN$_atM`0M&~;6!H9XU)A+$wjtqgL@>5uYL zBJVxeh>!dq5XJ2prkPx7J*8&hn@y^-GqL#z=XnIw3)qKneM4!S74d$fD%9r8{8ZoW z!*|`z!I%RLyidrK3k+l16V7XY<=8ziyJF^fv=O7J-aGuO z*UG{<_z}GujD5^OI!8)jHIzzWlq>aw_H!Y8ydH&ES|(0yB8uu*!t6jsa|7vHH1Gz( z7S(h9(T>w&gw&BPGjlXE1bepfW6mBoMK;p4RaV2%;rRci67kkg;fqdQyx}D;ehBIDIWV(n z^zPShGp2Li-Zpc3!Eb7wsf|?vs1&9tJvYhGFf?w46qMXZ;SWiwGyY^W?$#TBnZM65 zz`QBb;qj1+v~J%5btC$T7!8xOYP$GmT-N$7wIRm~(zJy|vGGI7#@O;`3+c2f%>@o_ zehVncdLZ>fggVT?PZR;%7O5aQA|->z4k+?Fk$c4M)ALLmvBCZjAGbp`hB7r!># z`rgdxb~VT@B+NK+lb#k7_!U_b<c$#wIm z(R8l)ba^`+F-OkU;UBJuT@=0SOCASL!mSEkWL%GX=8FKe&6){#tF$_8P9wUkZXMYLfv zf1yk7R}zR=%|g7lul;umay!mOVUiR|o90uk!cAa87y(ysVvl+#}q>s0FRlH=i-QB;gNz9lgBxGOsyaM#>z1+z2IoMhOvmcI!EoE~4pm<5eLW}@J}J*2K{J4#Uo z%kDf*tw-8d7*~~0>8&_;r+4f1T>^L> z_7I4{OZuxl()6b;jCd*!hV@JyYe?J8gk(;VJ=^B?Je|*&@fpfJV^W@C<;eM*`0ak1 zui+F7p6u?`-TGe3FBe416&?~}gVd(yOG}n5^1+!vkrigTT)qn$L5NdNR<)N@wk9(0|#sTxry8Fye z&I|U&pCzPqYkcQ%H~~b;J1?Pux$CNw5{X3iFLUT}-BxCS?~FaZ+p+ajVF$0d5*pn) zYMZ%`{8E$V&I``iIcPLth!&TL5vfOg`uhp4M1U+5(E!mS68~(19c#`}z^u?CI?tvw z@Y-zBfu<=6ktw3vB<*hM!14 z>m0J_othDa4v7%KtLJ4ezWGM|2K50kNV@P3*!f3=p7x?KCET>ERgZeNAzBI-pUE^4 zH=>O}`}xr@X_4sFFqwY9mlS4O{K04XmyFcKIB7E}zQUeN&gRFP1YO~O^;$Vz_n;WQr_BP%RnVrfdmVd5 z>406yuu!EGv84E1GgcQO{QazW(blj>%g0=5n3y_|#T-yoKb9mj${n5#`euh9c6r6% z{I&E{D(4aoU8@}Jd}V`wAmz~M1F3&N33?m7a(7A1d>@@sxjt?L2qGOp;s5t+fnB%Q zT;~0jW9O*J|PFsQx~<=jI>GpOHz@ zsZ%T$^Em7Lhq1+n!caQFH|v`Bh}VnmD|pZWQMHZDncN`ajXsOQ$qw!nkeM;%| z-{Cj=1o!b)IcNISM}^%x_ZODskR}QpD)Qq5zzZ|oC#c>K#Y9L!dt-znXTIKJPXFc(E`AEORc#K*}5)5qGng-WtE;otXd&`0L8BTtz_DUKm9q>W&o8 z@*LU00oVlWD$I&EGv1%w!q*bo&>VrMDUh|2F18q%YMZqQwmaHU=zfZb>pH&tA1J?~ z$F$A(p2un0g;H?aGTPh!wroXcXAht4S|@TN^hA!}TIq&rd-!YUa97vOisn7#%r=Ch z3>tF|3W6Z>ch*FS4kLdW@TzE-4}SS2y|W0i`a7`&Jx_`6&4hU4_9n1JV$lp1o>+kc zr`WQ5Z%43r2n{?8^={sJ+>B7LSYx{Aq=_o4P$vKD52 z*GyZt^X!P!HP^?V`Ph&W7Ax>na<4=iOC? zj%CX)+?m%KER(?Bn)!tWK0Xou6DyuOPDSh&sJY#C2%6oTJ^tFh|8&dCHLFJuls*;e zv-E8IX>B%T&=FU^r}P7JKT)EAdAa+iQ1*qdG%U0i@%lR7dM_!XF4zM$sztb_uI=hX z*~l`KRo{dIcRb5^?-@Xwzp zg?CIiu6^2O>2jd_x5nyy2HG4!N##oMjLDu$8WzG%p~&VD)g&udmj0aAMRVrUy22rR zcl{M|A!{5%moM9PjgaMN(zjpm#i^QdhV#%dDMP?0b7=n2tS#Jl9HHVqYc)OkHkRR} zJbAAXJ`YN~dT{pa;(SqD_ZTQnP}%qDV(c!;Z5=X>`A9q3F-%y9*@Cc@b5PlT-o>gK3RyRr*2!jN*6%U zsOkq=KJ!3JuBV(-)KW6Gk~ZlZ#~{qCokLWlMelK?M?Z6(tAD-{2x&A+?I_805qx25 zlqXSDdhk47?m+7e-e9X{^1|@EZOJkfKb4sw!adiKf&P11`(Nvy&faoKQb8ogo#IU+ zq`J*X7B0Wod2~jeRVS1%eTuezwv8Ced{q9tfjm~Tb#ow(Z}f=4NxKbN*IA%zojHJQ zWEE`Rv~m9U0v})k2a?sK4;$UuqB807veZUc8UH*D@@e^^3nRbrobK3EmhsLMceX)s zy?qQ^Q5eT0ALtYn+!xIkts|9Ds-SIc2wd9k# z2Y}NyV0NU9;zq7(kI~HfhD|f@L>_Hbe+2j52=7y*>1$h+sXxtkUbC{viZ*WBYcV<7 z6&T8qpix2}8@n!K!@2?}g?ot<&+YWD%7qW6f7N~LMW%QDSHlk=7bIDCBb4+r#ah`R z8wq~&%eT`h0Duy54t|ykLD757c~VT5zcucD-|RrZqx0>vdJ3=QNY+=A#`SS|Q}eCT zsafmvhW~0+*-W|M`THsl8J^cUpQC7a%#WL8u-()*OFg^Wf-({35r@NClz;iVmg(6c z)0U4 zGd>H$Lb?0{=icy@8wyFM+1)3ZsVs+e=Fa}eJJPdsEL;?XT=_SzNx=CegMO8&uZj|# zB&006$$o*GMCriR@t}XtM!R}e?r;<_YX)cEq*{Q35^@db_@+uT!O(MDz)e>^lgqY2 z?gPNA^GeI<7Cex~7=w}3%8@5-Lrr;~qVG|3BdB#%=-qhaMvb%LFkeI&nDlCi6t1*| zHmUYfsAxTu!@i)AE)$tLT``awaPxK;aBZOMK4VrV!o>zw>5!`1ZDH}KGeC(PB>gho z;4IvDxU9^PTk~I^Gh4#*n)bAT2C*RiFO!rh#>(6rtX%&X`foIW?7x7CUkNI|nz7%heo6vy^w*?yjsth79y?F)vz}KtugrEyKXDjZ%aM+r6O?%nK**HJ4=x^ z?$SlQ$`?_0(ow?8;M6iySG!HGUHRbBhXhqa=)Ay#Ym3bfVfhmkN~*tBN{ZlO0gi;DL8jL2L$k>m$|IF~5X(b{``c2Kg$!n$Z2`n2o_%k~b z&s}ZKD}7MPLZ4kd+Kh#n$ZH4@U2`=(>s#7Bfi21x-P1gldyafd(UDi6G$SN(OTIlz z*TEd(%nY2wTYyCi)euv}%wcD)?*+W9?~Pk5V$JzW6EDkLw-g9`^UI8!BUljLNY5sX zc*4Lyb<<;QyhaWWkZE=O>wVT~l^cF=?Z z$R3U&1rT#^vx1xPb!4_}v)rdqm0m~hv~nd`sy`03cMu&#{(4`xR@=5r&cPiRIA=uF z)<~_!d}cC~CCZYEx>O^{j$@LdAY%Cqn7LcisYlK$0htzshxUs-60gJc*SY(YD5VxX zn2uqqYn+(0wkCSPHx-?5P#a-_DU^K#vx_<%Q_-wKiK9RJGc!pA`g;ZYS6JTPy$Q^v zV#r-l2`TsctLnXp&&awQO}x=-)fEwE(!BZ5fA>$F#l`lMSy)?3CC6{|gJk;(lo-JL zcEG6q8beh1Vb2ZFUOHtjYI7w7X#Z8WLZ_vMYf|%x9OE|W2nbSRGmXOnW`;F!%#k;S ze9*WYA5ac%A-woF+WVYHxP6Fm(iKyzq~FaV<-|-OZ;s>CeCuW7n*DLA5JF4D~s z0$=7|@6{dHiR``A%eeG#&EB#PQ|->ITL23+y2sQx5+2tRbCFVrN(E&XO+P(-^Q?YD zT}`%}uXy8}Cf+XtI^vNVeyXOxaP0KJ zcRR6+&d>YM@=6w03xDi|kT>GtnI;V_eBM^4Wad1m@wh(q5)?!JC-*6pj*O9ah~_oVP!HVLfbN^(FelC=9hzfCi3iF;TsC?2jN+F@8~pC zM4I_3=8`36c=BCpU=J8Q4RsTWD&%pda}3ozgb~zR*~K4EDs4z6#loILn*-i#DufOw zTXr3s|GV?UFRPV`$wK$c!T)N)`bqM9$}ewH)|{u%vvX`2MK0zVN`}jSuf1`8+5`3} z`7cOpA12cl7VoV(oDJh*lfYJF&qlLxvP@~(g8=O8F)qO!9nbHs_LbISDVy>94jY(q zuFH$pVXX+2S6BrWUomh5=-Rh*&7iJu=Bl>2_n`UU39rTZ=3nWHLw6hi5lcNp2B!ar z#@aNDYW9z73WDIH-b?D0#+A>;Kkj3TnL|(RZ_?iiZm!*5WU~Q(xh=4GZ+uxe?*2|n z*_muD=<;ukG_Caa!f})N5|Z4c$&2Mp1vvEfV#o3bi2wxs*WzGc@?lS~)uE&dNWXW~ z`rd04i8!dV?9mv?7At$@yxcqo{cu}=ec~CnhjQM6(*Ylcv#_W@Xex8SE~oW?hDQrq zV1(O^g^>{E>&4=Y|41I~z@5n7UQ52s2dOD8?I8ip2JeW?U0mAh6{`XYSGl;jI^4ci z+7M=Oj4u*z4s#88_-^?lo-BoHU?C!-fJ>uMYiV&#^XsW)$1lGwIQZp?JW@+&G+k7c)WECu7*!r|>(Po?G zt~a9c4>uUW>GrQ#HP2+1quH<&vQZY@~ z`dMw2xhk-iT>a|2KxA@meoL0>yY0;QA@=Lv(d{9``nyl^`acBr z_8@orHkkdhXh`#y@Wxo6xNYmj)htmi1{v|RnM@e@y`v1&)o-EGk87Q$tY>qop$1)T zb;`QcWE%3>c7AJ9IqE=WcA2Znh8<$kHSR~~!aBNs3z1Ft$;~z5`k1W^IhkyroI($g z_DqbD2B^nJW+k#q_^P~$8z$&UM&+~_=n)S-;iAkl1E%Tu#MM5_AaZ+csMKcG!_GHz z!n-v+uSvL22F@jss7p`(yOo7}y)IjCRF()E_p#vNaF3RPeA+r{T$DCrp= zZBn!P3rnbJ&NmnhLm7m!7kg(NqgP&Tj08PE*+>0Ox+0o}>UTZnLQ2hpzGd{CaWWj= z@M?|35%G}FgpXWEis(+_FqoPD6d%BO<^|y3ei2VFdaoy(;S$sxbCXWj-g<&$a_Y4p zrR*&{+u$hdp3J?&U-U(p&bE3oZT3G14CtAHE=7TQgfBjBl&(OCIJlh}wkYJ$e-l6x z(i@j`RtdKk=LFS<^NM~a!E(n#t>>oDF^mcH6cdDx@w#qdPzq$GXY~MtrAlAT>2xs` zx3PHNA1MOb$JLl|Ik@%!6=>4OL4q(COMJlbq=;)Lek_|3 zD@gWO=H_T>X6@MTxbK_if$O4sE(P%_|NWgbpxqJH!la>m@xeDBx8=HQjiyu#t2vmqLSEWI=TmZZyH8?Ykx@|K0wf(~!}cbBDC1^GTj0h^JA4;w z)5W~D;9F{Platx+R{;Pff9Q10*|buIs)SCXH+sp}>UR`aK+;!lrB6cOcz~-}EAK_O zgX~0r*=^O16Jw_MSeP*DP?thIEST~ZZCN&xAJFHwsidb<5j*gVCw{i zG`tR@^Ym4hl~3q>>Ar7yo^MO68(P(pcQj47XgDQlIoBNlUv;^7Nkv9^7pY73e4X@k zv4rVmn#}`h3O9wIpI3bEUaW2B|5qMvVpKDKdmOQEAGT7m6IH?R#sYWVMCAc9ptY}l zRqRU^)6(2zk%)bc*?D3eepz2N;b7DPMu;kYn!+rfDU5E>I0 z6D*N{d$A+u7Ehq7z!2=?!B-FNB$As&{QqnW(ylFoT zb6L1iggc+L8F#Yn@}&o?nY?v+X*51q6tl) zeTB91Wh`}`Jf2Cww}-M9>6X(wHYuVPcan*D>H+l~gMt6+5 zE*Fn>kBv!_QBrOg>;x1ssKM?o2G6qZF}T8*Y07B(Ty*EmX{&eZLrBZ20hV-CaH`+) z5;CjB^*e5m3pylSb%x#BKsW3m!5f&Zuk|OG$kUpbwix5wQ_e+?1(uuHHWymNdO1Y-_x`1_bHkdUK5252>*ib)VBEtPfR>M$)$Lw4RgSq28YK zQMTS%1KM}m&dKF}L)BeJcN86$@c>FqhXTz0rL#u%H-12|HAB@T2HAxW7HSS;3N>n}1V&?;Ky8EwQ0-cLL5h0qr0VibWCG z;k}j#k)vdia_kMqjt0N?nzn=P#b5|v$idgp>jkrfpDDZ>?^jU7n7w`#*R$~ZV8nsc zY7Ppcr&Zy37Pk+Pxu>b$IBwg(`fPZZ+60Q=vo<2e^+XM)~719TEK=~)_s*D zc6N63ZClY(Nz}# zZ-S|`yR2kVU_!;zBycXH!TAlJImQSRpCsj5DmkY z0CKJR@j*=n>rq3Ye{2NuWY8CRR8dm@6(Sn0-VQ_q&(a*Gz``~M$PM55CxFk z_ED40)9WKqAatUG0k$8-u0Rj)llO>A*e~W)LG#C{-3C=~somR4@H||qeVU^nWrK(_ zRT7$X<*JT9G%=Pe)A4bscXeq=#|a_v7P5UsJ-q!fTxNObYa#964iY+a!prz&&}d@Q z3qQmhN|U^7wzf_2$RT)nQ(=w~ygxUIxH?7|zx5wTX`-y?WtWhowLM8_KLU2QHM(zu z`o|1-x^vG4tr-S_@bS@Q#Kbo#lWjK(R@Z)7VSkO>-g%uB{ky~exnXpS)9`H%q(6pO zD@8;2zN~;X?p^cG+1fW7WTM~tVYim2=fCv~g+*3aoB_2Q!NAHXf3XDmntQE=;JeU2 z(H)-NrsI)yog*X!^L2Y9vA#Hsg43UW&PTe{1()W6OM0ia44tg{VflAus^!M5Cg^{T zlsYKFBkZcTPkmO>WNW4a%g=P~=U?1%#z5Szbu_>2!nMmGEWW$X>(`J6Oh5bnYloL$ zO*7@0K@IhZL#k)t5>I68?D$|Lcc0c-xXv_9-<1&(%LRFM0OVYz=T4V#TvD zk#HEoeZ3g322@HkJ$#mV`z7JEe*4W^TcmW6GfY(^~p26A4TH2tl+gLTYn@x)Dh)+%G!k(e*f-y z>9cw0Vz0BU)huHU1a@dPw|z2KZ0RzdHdd$m@8a!erS1QGx(Qk@Ex zf7mNow8ZII#1b@myM5K^2>AJPPgH)Y7FYaZSRZE)#gzIcBH&|pHXeo1YXXd<82SxJ z4}Sd3d(@OBusUSX_v>G#-5=8BN02S@LtpU)MXR4m%-pcjrC|N?HJvA~N_R8-m5|eFSZp)(SG_ROjmtbKvu#Y{0f`PaWW5*2;qnlg+@T_nDq6K5 zc)>vRhyH^=|C`wWrpWLnxD;tu;)gOF}x))&(nf@UWQ>_`kPUAs^hZ$ zODmSHjD6;3BsXcaQ_}q_Qf(Tx-nr1*xD|t)I(KEhU>udgL;-gtj0$kGxoSLGkv!pp z38Yv-^HHb-TxWx zsYy;WJ&9ZMLZ#pD(-~^*bas3#cNSABayp%q$IhdjW z({Nwf_fpQvk%8l7b2&~`hZCO@4(uNPu<5Znp1g3|D(fpy8{6MH@1c3Dz=8kcb#`n+ z({N9-LRD@+;5_Qf>b76)UIi)oR%3^R2xuC0R-6-bbRxr)-Ny_lUjmfB!*gJL8EE2O zn9sHDxq)?!EqQLk0U}l;zZV=n2Ygh)f-%?PoX^327?SqgpDEG`cqThN2%Kjg14%zW zr$d6DwR&V$2{Q#QZ$qScAi6&fCK5_tLxtUim%zlHlEsOS+(}spuLXoyVo0b*ILUYvDBm@%@ zY-xoy%-b8H1q}doW-rly@nE~AWhFLG3=2gRy116xJ5 zeV7H*w*uzI!!vCVMS}X?$c0?iYiqTn_6t%}_=|W?*m&_gNMx>u_!o#FVQ0~w^4Q5- ztq;g7#t8D;H)O7M!M)0o3j5vxz1Y*_Sx^g#GZ}7kf7+JxJ$f__h1n z>Iqp1?n`A`Q=2h_zNUy$Tt@kPIrp+QZP;v#eqZjR5{Nw}EQ~M#u44o%iMHG}(-G46 zpjOfvtUmr0r>rG_g)YUsfZ8CG9>Tejc{S-vCu-`PB%IXerq@s8IbdHTfn2 zA=C;AAb!r}nbJnx&ENGG zfv3T!^@_Ho;w{ZV;2>%uU7EN-XX;jOLH-}hWn}`#|MDx*pyp3zrd@6fLv7`>L8;IG zbE&#<*6BKesVfA=uNd126CRQqwEp`)UVz-n%bqV-?+Lf?^0V=#w`oo#g%vTebZe3# zemH4iP$oC*udX>?E6#qdWNC20acW&7EL#1rv3`(iJ%%73?yWpj)jGy(k&`l+>HM5} zD_yjJ=TXO98MtH%|BOv?9QX&Xgl+@%HuRj~e@H|TWyuyG4NE`nTAhEsm0Ui=vxCK{ za+Mg+J3e(p6@YRnL;fc2TJ9r(0 zA*FlXRr4G;LFnTg>)Us8alnWe)62GY$5+ax z-dS{Bx&Mza6q@(uX{xF@y>Oh%6|XQOMWOrAr@wpkLI`Wh4EGN$W;kX;#(bkYOY|oK zUoNs)kYwf$|1!OlZ7aH^t0l;Z(OaceS@Wc#^T7tyS`wrpFWl+f@NB&S&hwGj{@oSEtF4K`Nw_)7l=5H9T6eh$LJ|Ic^rUq3dvm$)NsJw$`uDl7 z#vkP&EY}>4GH@rT1)G}d{vzG<{(Z0_^dq59^(aizNbi=bo5pV`Vy12OYJglf@oF9E z^(jHpd7zE2_r|!wr)qh9U)zCrW;RA*p={Cl>`Y%8wl2D=^ZcF!mD1R;nS*dk<1$@| zPwu|baA0f9rk)?w0}uEALVUnUd2ce48#cZg!Vol!)$SLgYP#Vrp5ocm1CdYtl6(jr z$36`E@>+k${`keS%n=6p^%emsffhTK-j|8pO>9FL7 z&vD;|zsMUKu<$)WbaE1~`{$}V|0*I_j551t2m zyYO?zO34@f>C6TrJB?&tyFoiQ26swx&j`z~{)?2$qm6is`i>LIwtrdq%3*pw*a)q~ zb5j@pLK&_3Nl6tYqY&~@ST)O*Af-xlir9EmC|z8{@;1~E6y|GG?YoJiED0t29mK$l zwbBx+O$|O)221-4F}6DvJV=d*VXRxw z{W)=B5Z{i(C!BV~j|Pp=!KqG)wIcngJN+f6^V5*<%t-pH5}gNA?O{x$BL6q7>Z!Mv zdoHQBrBh$tpQ(6JM{bxr;4S{$Q|#b)F7Mxst@#^Ps0=f>r>x5$Y{lH;q9eFtky5pl zf;}2aKclg;PUYjV_nxRMA2yG{flQ(vWNXH2@+SBNO*J5M-{hAN(9>!8s2VEMnbZFZ z70>aB^NS1F2?ld_73lF;=+P9k{HX=LQ^*1@eXIk{EZPl2Y|v$`ZTxmaS+j&YcQF@I zEiJy|ZEkX;ZfZ5+Z;lWJ+jnK)lONzl8NTA0Ng;8!mc}K-jx0)g3$k}GICNOy2wU%k zb3Sy`9t%>s9RaWo>=0Y$^!j&ixf<@qbv`&(G$%QFog%LsB|zLs5bGZuY4N2EC3qQt(v#d$brM4XCt zktc4D(&B_#c%}APeCM=;H!IL+A1Ngp;N?-W*9I4!J88C@lW2kvmxFFUU{%1pXPqjq zj*_3l6^s$N4`5oC-aGq=)HuIj>K)L^Wxxld0n^v@n2abzDaDK_M1s^Kr2Xzpf=Iyt zg-BjslF0GiE9#N{{(dhlW+jSDDN3RZFU|GQo8ilUnGiAqvu{B!WW6~u4gwY#brHII z*Ic5_#?onj9u``xMMyki9emGcMyDwGTd2h&;wc#E^K=6BE8HM0A#>*C3pdV=Ibc*f zCSNDVxXI?K*B#mO``d5sC$T^G4MsSmUOSQ4DSG-i1j_LV*fpY#g-88$c0Pjbz%w=^ z{LQlYobUt(03i(cJaTX2_)F$Hl2SjxV+sGESTZapM@MNv_x?bkpzbgV{;QI0(KVT|w6%S|i*OmqjYaGTU{nWm$oQIDwPbqmVWngD za~B|YwI3#sH&^sv*vIJtM&^*P8Wr%DXOC=K6V^+GUFCmr9a6>>iR)$dW{@OnMRdD* zY>GSlT!{oEDWmubZwaH<-#te&)59YLo)o-b<7a4;FKh%>=I-5HmwJJcKrWEV^R}q zCb0b@_ARkuQcXy;>QmR^58g#IK4p=5de9p0x%$IDVJDcjwe3K6q>X{zV+pfrr@;3NyC z-k7_wyz-Mbc*ZpgMfU^u$hyL$?Ne_X35=Z}S%hZ$Iuw_2ERJ&l$1aM&Ox3VSm-Upl zeN!8|GZ5*)IC?8hD@>Ojzzx&?^kh2o!t3{RF6lk-JKf&|mh}UJsCQZ0I{MeV#cVh# zmvId4wU%Y|i@xrQy{}*49}*FH=5`=1mu}~(Mb}I6vtrI%uQCK_FF;aultqZu;Q?odI?%8xbuaVeBJ}XVG8lf-rq9*`m9`9 zC{c#MP|=UiJH>=eX!6JE4d#t|tzPB?z5F0b6Riet15jnhI?vZL((uNIniPbWc@Z*H z%+G9YDT?(q1(!BERUC|Lx*R2(q*7Nk&qle{$w;+ODiC7ft1RdL6sXe&`lkCgB|&ZE zwouu09%EA6r`^>}(q{2KAM4k}!8_VQ^ceHgbzIX2si)`bvP0Y|UV&Waakc~Rd)zS9 zVmW8;#cSBl%5Uvdm?ew1#s~kpV$-o^FAX;>0cUd$Q_oS|D z+8NTUOj4Ag=!qxP>dzHCAGl7I&h7Zc?09d*vH7;vH4wSSr8UQ&5Hw5I=g@TK;WC@> zIA!Z;?3<&Q11t<~^nNjw+$;F4eSdUEeJJ1tHp;xW_K<~pM)8u&dz3oO5x&{)tNpyVXOTe8VoW%1* zZofg3VKIrkUaFmQ1%L9gLU?RNTq<|hHbASewGb-*k-#;V(c$Ny=<}k*SZCKyx{3th zx;o(97b=aX=KSpe?}g~6_@$*fgqs$}@S9$wn}#2P9;V4Yp-^%L81-0omAP&~S~@c; zAnr$NJ&6k9PQ~IZEtwBclnAK>wk6Da7Ij!BLh0QyK^?L>m5@XIDPAp?ac2?H9(2{@ zn0<=;yO~k-i>GklmT$mo1rr-U@n<1t(>e>9t0jBya)vs>g*sGhHa8RP&U8rF%{vo@Xfwq@XzZLO2xWs>|ROvU50 z1c~p~30u}D+@b#BRJx8`?$Y(qI~%W~v%Q(U*T%-EerSIUAp(L1>GO#IvU8$`R4)_njT;evII87r&lg*Xqgs*@!Knp?wugWMj zjN{&7zHbg(n)PnJgMu_7;ys<**cj3mO6Y8~9QvokI8PN#h`xjGTOZtw;0M zg!{xtXL=an@4tR)q*gh7-;=S~To%)MpO=uAs{7ja$l=-aN&yet7d)>HfmAZJemuV$ zwHi#BZO;B#_j%09K*E}sb~i?%G`_L2e%l;y59h5A^jCYv&F_Dr;EkQ9zy;kLPxCR^ zB{(>hU0uV5v!|JypIO_1W&UveAbUrg?`9b9$3weQ$w6C)x8XmlN2{uUyvi84Bd2FWbD}Yodaqn zgQF&1oJVNh44Ko!UA>9sgQkWwTP_f-CA-aIIQ|{+)79YgtV-y9HU19R+kU62-w^eA zvmi+0rC_t(CgQ*u3t^7xiYJy!jT0`29C7I`i(j;bi%Tyk(Kbi?MrV%DNyx;MrvAB? z(13scP#=~gB4-x#*w*-IkRm#WAuJ4I{%jP$s*ALOy7IUP%R(yMB(CQCytQ%_S?p)v zAQE=Xn5*du@+j;`md%zxLYD`F$ig!->UEZm{{;g}s?S~i3|6NUxD-$y9LVxCuQHfw z_W;c#;1#uTLVCGMH&8Nq(w?YA zXw~CeIYLhGmeI`yaKRk-uZpCgHpjt*ZTtE?b1$1DFL$2&)NKCaaa_*%vQAujd-Fvk z^Kk2?=k$U!ETyo%60>zB^-I?5_=}62`h?kK%!>uk2hL=a(L~Lirl7YiS~x>wL+Lr} zQ)in)O!+3{zqjAl`@grpFnO!$!ZHobQT?ctWfoHM*$LE2Ubmo?PX!W48~U7gTcfT^Nm?Z-%9LE5UJH)K{n!;vj*A%}hHV2TYpMO|PF5{5;bwP#aosefZVUOTt>U~B_-sz=n zEXoWxEFew#&jx^{v-sKU@dgQS!mAz(brwBj^&|Y#~R&}u7P{l)^_D?X2-9vR|{X3$j z`ON+oWteW+n??}w00?Fy_ab~wAg#LucYW!=Mz1}>X$q^A#yu%BV)*~q`s%-?1MlmN zZjkN}kyJpy(HkKlA{|PMPyv-T=+T{$(xIe+h|(~+O9Vk`G}18`Y%HFAKHukgy}my@ zf53itZ+qW+&bjBFTV&A^b^omiI&3G622}48Xu|JWr<%4JP+-B67M%r)(?(WrL#t0_ zczc)in-)fsoY&}9Q(;xK!!Cd}zF4X`t=o-Ol}f}w6QeV(F8l#6=e|)stXl?qcX071SzOE}y)$S6=Vi0=&GLBRO}VPTfmkTXmXz5(_yf}m zQc=qy8aPCdzR;Z&NC^DpIIy>^>g>2-l4K6;!5Gj`i)r<=1ybw=Jlf&@$tsMBi z>Z4^YAaS@W-Ix1NQGXlGhtt#WEa!W!dRuoRFoc4 z`{)tOaby!s{yg47AT~k!2Q&MAin<5l&+8pCb1C9_xGs+OjuR46n~xE9F)1%etCgr| zeY|(W`gm*Y6DuTwDp%1lSRF7|;(J^oqg2h+u#?!%og|NioK^qmgi^j~hx z$oXEG<%ZK|@ZWuLgeG%qzrhptquC=)zgu{iFS3mE;c#7}`7c3O;AuF7&MJHMZ3Zb7 zpYi%PuE5HQ;E6C{gHNnZCnlPYg_h+fizAiCtoips7a8hCbTym~%knDwPKrjTKkfIK z;FwYdm05fi;J42wf9>i2@@!jICT$ky;^pjGYH5%S#+cJFdUg}nRPVd5B#!4baq{%M zy@gLiEZy^2u^}oM$#{;wU^nA{mn7ej`pal1I2v>BA#;9GD%BPTEwIoiUnk+Wbo6Yb zwA-421vvB4`%&?S^0wn&+k%c$JvHTO>?ZmWm&3&6^4o^Fp~EbqPSc+kdr_vMTmO z+Mr;ixcgwARdg26`UF0-XFB0Le$m=m$u_?#zDNIaj&qOE-L0osSLs@ewDJ$3e*yNY zziH|`TL|*@?D;R+F-hz8-C{+5rxKO1=SgF%r9)r083<1km`AY*tp+EdwsOkpnbe(kz3ixThFv$vAq(d5g2PyFK%;8vdY#SJUmm79x4713(W8TowGYrf&NZT<5MsII>Y$Ar< z#8h}^pbGi|`FsiHrEK7Mn^Kommb*8sG}=V!QM&#hW9l_o71gBpvY_P^6Vne*;r1RY z#toOBrR}ooR|SVj&7qj@zOewE#uSJBM)&zp(h~HYTJ*`pT+bP=aYQWD=sX&rrryd3R-0H|V?abnz zg|=dHtYJ>+%pL+e92F~z5flcg`YY*n<|r}Toe4Ox_tWiQN41HapI`J{QU|nBl3?oJ zf{nN+JG$bCB~I`z!?_-&>t353qpjGb^v|auN*=`z?F?3il^&r)Su&rZFTBcwZ(hTV zC4FqS4sj%QHUimfSU0ge(Rm)@2ab{G-@^Ut8S#CN8e-sz8mi5(T+4 z-#;;b(yQvsm~XR-(c4Nt%#;(_m<#0f9HRnRU6>uY@-zyIiP8O?G5 zRnYrlwy+-5HZ{^`EcS9X^tlb=v5t*Ze74b{c;0p*!c#y@>-3J~>UCcvcF91of%;>5{-_ z2H&86VW8?<3zx+`P~=_;9g{3u8EL>A+q|0W*rW;XgsSA}+4qky@`x_sS0~>p|vH--r%wwv`PbHUzlGK+EJYq#l zDx*g}B{qccwdXK=d;4SmOAJ-~K>(SA(;wjVq~Q1*7Y&2yNDiiXpQCS+{HBHMNN{E5 z%BpNf!qf3s?Vk)9E%yo{Olz8sN;Vc?Q z+Xv6MOV2ODhO1dWJdz6$mwuXX!ue$n8jF%P#GT+Y=?S5xx_f929$T*_g0&vD>V%}V zQ=rcpc2DW@>NWVWWQW<&D+j|T^w%uQMOzctEiWqO{#!b1N$hEN?zyB!h2KiKTS6{q zeKfyw*TqZlyxib`=Q(-xp6kWdr1_iK$!>*Djm1QAFY!|1!f=bY5Sih0JSm@9jYqeqc7f@7?_|gdG`Ka^pKZ=yy;}q25MOcfJ>?}|D>;#8kfu~*0PE(&jM=RL$dpru z+r`Zp#XM@4=C<+VSP$V~h%^7H)Pz*!En)XLW7XumjmLijTMi$_wb)Ymz|dW`k+isw zG+(zE+MG)s+t5IV3Qn37U5jU>z=YlmCTTW~cdKGIbS@`d^yIA2ajs+bU&L8iwn_fV zS=CyCj_*lW)Sxxh--*{wHi!C@iw^fhWGBq~+w#V&`5uu6zO2nOmaFPgZg6{U3intj zTmLC509sVuuyU8E-mhEc6=3=_H#DE& zwOarbv2Z0cL~v;XUgA{?H!=0O(VwT)=k42dp2CvsUB*db+AI~wb)ow4BF@7DyKdf3 zKP?#_@H+$yxn}*gSS&V3-xeGauw!;htO1? zzs{K`(;s}WjX%gYw7=`FJ7fonaxbI}a5FHc#ZmDPaw3hYLA~6jTdl@#o=FE{O<_@g z<`g38iRwcYJsn7zxoVD}zsE@T-Z6yY+rv8fSj}JLm)Am8eDJ#L z^Y&Av{%%*^3y=bF$Ww#9jYK>B$6as{DJC-;N*7gXUfexMC9#WC#GOm|p#J>>SQFKU zV7D6ohmSrQx6N|oc9C6Mi9EhYs>QogXXxe?3k1w}|KaLd#*us~>?;DkKC{2-$=UI) zyp?(RS)UsHejKgG?1P9`_$AzQtK(Cr$9;p$?bx$5esjS#&5FGWiUszBH8Wl4Q zt64g6!C}yR!UxQp`3U_@{xW&4d&C7`X3wQR$oW&<Tm;B+oXxjoSMzGJQ7uIB@5*zF~Vd|BuViB#iI_CD_7 ze|{__V5raPtG7c!lxvMP9s`YO3>cL}m9oSmsw#Hv7Ib0@zt+ZbSUTnh#PG#@!Ut=(#}AHdyUz!0?IpXAuU9|)M4~Qn zuQEi+gR7gYzHUKB%Dzotf@rtRY`FJQbN;PKhiZsYy||uZfkrWx#mFd?c*K5`E=bMs zv{mB$%%J1e4eFk7O2m-0WqI8#a6X`^3w+Rs4*L?{0U967{qZ%WwyCa{I4$N@>$@nN z-%AdJDEQ|pzq+iG2nKR`j)e!V9+dYj_5vvn60VQXJogzrtFp}cxVk2!y#m+i9OA{; z<()gHET$0x0tP+flw!x^=FBP(-^;+hC&6=9n(N0@db8}KX8kq{rBEyFU;8vKpExC$ zl?0UhQfh4acVD_z?uM)4V8R7pB#^{ptnS@_TSC)rz>hpVA=o+?A(vq7o5CCctrq4-A`)ZAs zSIVg`@~j=(Ezy*@(qEG9e~P2t5Mz~YZ62n#Eq7OgotNgYZT}(MD``hR(O|)UzB?rs z`o!L{F6O#d0xutrpG`Wgp=I7v?;BGSkRCTMr1|B5VfbXX9*O-zZxI1HxVk$-p=sfX z(P=cLv_X8rRP2gAUQ1#Zto6%4($wDXqW-GRt~*z~NKF5;le(-`bKb2wUCL5sNu_9T ziFZz+Og_~#wB04OAWF*{&xZ;FkD?W7tcV-kKgai;CF%`vYi=*!mxiY*5aTza-tW*k zjEqv|uMla>&1w{t&n0cD*)8ImH#NPeJI1>U7QvHchx}HOD*YP25n=k)P@AC0yw`T~|KK#c5U-ti@!ARl_X0GpzbvNN(0a z3m8f`qF&WiqH6pDwZ=V5&xA+(&F?AWSw3`yX3g8HWWg><;U5nz)IFcgE!!$^Y^7D2 zzUqgMU~-mL5IpHP$8mgJEt(q)95*z6P3rC7q!f=~@p$-%hJOvK&>EUdq5nmr!Sq3I z^5Vx$C($n}UJa z3{j8&#cR3CsJi4QRIN_u z*}z%9XEKK&5$sviC&N4-8Eo^7mY&?D)jLl_a2~)MRoTB`xZu^Kar8zzA0z!-74^1S zhuW<*H&pgG`pabD3?5x&%Sk9wVjKvYfk4;7Y|T%dh(!pumTpYd&2Rf69g>Z$OVWat z_Hbgsw~ObjQ@p4-H4^Jz~ka=0j!S91K4MlAY~bUlc!LX3j6#b5>VZ_v~ts_xl^ zrJ+{^vd(0r^AttHA>FsA1qc7UCij|QxEW!tRlB)%RBLc>Mp4FQQYURi$k&}|@~<-8 zVE&@Fx#y9ZAozCel>KgL^*zP|KZoPUE}TsMEp$?*I0G>;yuNnQ8CR|ikF zA#TX@c}=B6ZFkxqIuH55VNw)={&MLW(D?dq?vD5`g!hukr@h$J5<;Rqk*-N1jkcc4 z_DIVQM9pc<(WXP{6F;q2IYl=6s`G5jg}1Dnk^bb+g64a*^XOfaE%f60Zy(lXS}zCR zdoQKPjUJ>&*lI=gbS!H@0)n+P6s)@`sVdf}lc7Ish@Q2-dDAxr7vGrI;+zjO$a=0z z*&DcW*&^Uup7;8SRO3TsC18iT-Y5kS1O)8GYy`_V=+sVC?UiH1? z?-#gR|JVNI=~T_Y0eJOH-7h+utoXys>0o8QnX?xnzLgtBZ$f_4e*HKPpF6KOpmRv2 za4@kMGNrlG{88PiK>l=A@MerMpS};ta_WyWR@(f%BkPz%jZB^`3QK60nG^E%;j14} z`#zkBc54i$pV(YHNmGD{UyCU7rojpMYUiDi*tEc|Pwi)9&6>Uxc_5C~?q`2w%GKJ0 z!p>%bAh~kB5(6nbePI3|#h~)z9OVs;6=|Q$d0w2f*I;5KX0GqF$-><9eKgBMa4Cl3 z{kQ=47nEyFgWE-56p?Nz%CfPPeeF7ma|}sd_u76Emz_P1mGttsKlMhE?Lu$!ISwfu zM0HHBElXJ7n!K{O*XnXo?kj;m;d4~2T>+yowD(l{DB5)Y+XX(;dwBE)cCQ3FZ7k^4 z2mSpJ@GxEh#%?i4>;qqct=S?^geZu_!uaK^XMNVO&RqznIhHEe&-*s6UGN!ld?K_Qd@zivcItZg^rVh22wQE_fu(g2>8y08 z8Xj!XU=w?sw4TY*F6DU1LG1XJp*{eM3&sMjrDwR_9wpZ|^lg$Q_*>Qop9&XK9!e$O zZG=Jt?8DU*osE7n^{uR3(h^NAle?y$2l+bIPjD>*l7FhX7dGtlpw~wo#0~nVQMy*O zZpPk@)IaTCzel`M-L$76rZj4`tGHmRkDL<=PixNeM9|MoN)@hft3ro&C56MBIDJO6fMP$>I>&@fVJ_hg| zqQD(>ZcvI2sr^d-$aQw>)=Ysy4}I|9>3VB`vzAD{FSq?B&wAQB+4o0MW4ZUaE|g>-!ut0AYfFz}i((imBsq|MR=usvQ!o+rmRN1N#H#ZUC)^iKG0v7T# zs)00xmg?2~Flx#2F0`-wOL}IzLXU@RNh%&LA7~9jCGT``4;kt?r}Cuk|ApGE*nCj# z8DNNA9%#MTwR0Q6Yof-TGpXHs$g=ktRdEJVDX&&oues@|GwMbnA^M*}{_|!BU#^fF zWT}O3rPO+y(5413|L=ifAyja=dZhlSK%wi7b4H>3umWZ*KE8~e%U=4r!2F(BBhtP6khB9D#0_Kp0+@q^o1o?Uog7Hyf^J;d)rBb8czc+#|1{ab&z-y0KVK;Dhg{wGI>wCS8>pAC z2%LE_1&jXXlVWav`#1X~7@kQhI`9#0Y96F9aiRISEU^B^f8ahAP!L%n{dlh(Fwew( zsJCdfQAr3Fau;~}K(nL1U@#@0L4L$yJNc-KN^}|t_I}v;+MIzC8Rbot@b1xOJ<57P zYl2w+jjnlY?e-0{*1ftOA_?68cDrY2U*DEC0Po@LNNJNq&z`MOkd5p+k?#&fKev#Y z-Pp0qZd{O_0@Dh8+u?6>+CHypK0a#u=H1&mv_9bOiW&&2A2~4}kUIQ3eu!@zWsChF zK{4P~$suAAW*cbn=&nV<+JOx|wDj+u`L`_P!_TL`DjhP;aicp%hHB7<#p^zA`Cz5U zJb9RF#ZML$nTevCo}f-ZV^0f(qlt|S5acK~YGu@X+uLz`v1OC4FbB53URSIHlvu2f z<$HZhX5M027+LSR)Zz!77MbavJ-pX8ey!QRSOENm-{NuT2;tik;Qj~8$l=i$BQ0iW z6PINHi0qPv1YC^7vJ9jQdbCaSg)&(;29aBSwE;y>0?K1QNxw;8*V_!{GK}Ms4j?+W zw^J0h^CtFQ?RrU99uT2F$NvxduSx$e=szllr8=h8mW3{IO#)VwCOGfHr!IU~(zMn( zz>t$^r1aDbM8puux^}-=t9|Z%yUS!wGBK#Y@%qmlzki)@XFoq*g{bCFsH+-fj}ew{ z6`$kqxAOyHMQe(D*d-GY5`=t7>TypU-CXy&Kk>T$>G<+zbQqf@%rj&|#BH2`odaqPiloE8T6#I-=r=vxi*G+e zP`xCrnl~4b!F5XNfAvuI>tYBQ`_wQW|ki?@%OZPhSKUPzf%>lRhGAXQu%Ol zax^1%n-%T#o?eRUVr?kh@xa&c24a)wKM_*5G*PcNWu-PieIV#U) z=qsn*?>5kb=vI}mu>y0HeQgWWy;i%!yPGX%Z9_D%_o_tbQIRZt!;43hg7rbePG77W zwO_@QTE)6bKlhlu|Hvr;k;p{3iLr^0eCYq+_0RCPG&2dz|76Mr46Yle4o$`pu}bE< z0){ZNX+DB}=8MIe_t=Cg1m~snK3eGo?!&7AYx9<$)7a-!IENTQXhpV&4|XpaOkG(N z`fmB-T}zBV+9LFFTxcpTL4X!V-rN>BKGS5`TS-<4oDnzL_+VSoym>RdPPrR(cb?c4 zLTdyIm}V{)S+DE%1cLbo%`Oo9mi}D{1*yuZ$O>+}o3}^_P_in@R(RD_uQz6|jV8Mk$^L>^EqP{=rBqr~Z#CuHGeojsS_Vk7)$Hr<2CBhhlS9a8nnPi_dfVQ!d0 zUQ$#yD|A-v-&qSCP*JifZLY4H*o_-!-NkqfjPlQKu2DW~U5x|+-`pAxT`OIULdfJh zi7iEqNN2+QO_nRX74o@xzu}b9cn*cblBs;98MFrs9(>L+x9527VW}jL)>S-JyHm-k zU+24~&s%-kihEFVr{qMrr>Op5r{f|)BANalmHD(UPoGL=q>fkee^vFB?6kBSub01H z5E?FT|E)zTw-%!SXZT+U>&ZgZ9H-mhvN5(6pN^y9XmSHGVCijfPZ%FBug$HO#;iYs zu|)(Vfsb%Zz)qfm36q3z*he!^(h5hX7tAXJh-9?Bak)LsXFL{E{5Y2bNiov0(Vsv} zELh|!45hsFujy^)mX?j3e{Ovdmz*fo(g{1V`u2P;)LZ*Z(p!1-{13^icg=Q7@~01! zCj>TlxU0fd6TE& zrVy)I^gExeGCP_->hV5|q1dFYG-23xw;HBNmwz10G6GhreSR&SlGh3|pQB^0kOlL{ z(^l(7k<)4p^&jzdF~tJ@V3N7V)s#)U>u3QMz@99>;rg73Qc*XYgK?p8pAkXPFx;Mw zMSsH5>&$GUhvDA1++r-ypaqjnc#4<95~IxCMgN8ldXJq5G{MTUL(WJI!&kmMXM{88 z(2kv0Rfof+;EDT_8HaDL=Ghofq@>yR8*x)gD;Jw)_5@`FfFiMWm3~IaTr1_b5HZxZ zi#F?zs;sq?eDjhVuTqe4q0c<42k0B)J1wE8o-fScPk2!18ciWgBi?1WO|paVfY*|M z3L2odU8lCViy&dW%>=q-gxd{}E0uK2nEY)7ka+v*P(<1#hyFO4#=Fd1V9-E6=nV}I z8H3?J9%J_G6H2+7yV&q|bF81tNf*z|-Zce9FizTVZlk+skie^qR>jw~G?#A|7iSFLm;EU^s&y zgvh~Vj@%w4Pv?mM8;BKf05ugD4dp_8*YsPhusB}dKvDcyTiEs&cJU2+>Rk}NH(D7q zZQy;Xa~-#v&j;>N%)*qVx|mz(Uo$!0E4=%%s20%AL+PNeGVw3y?4L!s zg%HrJt;rX#qoI?5P13cm%0l)r9at+XC|HCL8M}?GI7oSVDWE&Lley#9x!jkR3bx$D zybA90mv~(b80OqZt|0n?8VJM9CI*h@L;)RkdR@X;8@uU- zEY7JShS1*NId&hwar~awGO+;C>N&l@&1UST8R>WhJ5((e(^`O4~V-qod0Gsr; zmuGj#xqhm&h)AOQt$C;;hj$1TpD^uv8I^u*Ps0>&r_~t#j&c~{= z_`y_DPqKTS=ih(ae*`4|n=NJH5D>?>1KPfW#^3UzqxyF-+Zt0~=!oacL^d6}{Ag4_ zv-Nup8yTq|t(Dx!67X6(V?MS@9o)T zd(~0sy_@Ktt^rnnO1=YTkYP|-GID1}0FOt&D2%=Z#98R^3@IK~BLDV(SkM9|?f?r? zNTMwd@ACeQX_y|6B*Y;*HBfT!5N)4ikZcf^Hs(AeYm+F#wE zCo6sFy^~Thjzy+q8{=h&RoZ1zjr|k8EdeHpK9ig>2{0E>-Uv&#;e&d&h`tRy2$3AF zeP;h4`txB$qgnRK9BdW5%WiHh+<6at*wBD7`9TWkvlw%Hgzuumi2n2cVUfCHH^l0t z-W-tPZ_oky1%?eR)<0U99c1YweUeXJv`bJ-#MD;)x3U)PBmD3dzx~wTqX$oR@fK^p zkswZ!CHl47Xn(bDeb`swyNvR`cemhK0(_x?$pjyXm5JER#UyDO84qPCwMnCpV*RPS zE1{4t-czA+td_(GiY#mZn4j5i^j(el@gXI}Dkc*5+eaJw9BzxIklBWL@NQF@^Du!y zG2J?>K2m?0D1?*3vkh3MP6~mRPEtEpNl_8YsX3Y&5@Ruy_#}rb9X>*M=3r{6J8nld zxZywzRmUn2)||fXuc;1P2q|gTP}y!;m6bXR7fQ@#j7}fF!QU0xX=lP?Kb9BH8|5u) z^iobKL{-vykt`zYfD}dRvz|nIAh31tLte-K8sJ1T-%DI%GnsvGp%)uBtwGRjFYF0mMUv9^yur@G z)P6yK6IAhu7GJ7jl!`IRaaYN?m0b z0mBxY`SL9F%xkbFsrQh1w+dHh?Vmmh{x^tAg&$+0Oq%iW=|u3qI>6fP_Ap?{~T z`@z9HrB2kn!^EBHQ7OQ+xr(;f%g>lLD^&Fb=b^()o&PGysgKQ|d44k=&4EA3vqtF6 zbEA`?-RqOYMFGf5o)Ex1y`tq*kdjc*x{p0~8BXe=i~KpHaw8Z^-VlsGr!;CktN1es zGzuD2B+DxfmH_4_b_@xt>_m#Bk#C+br8FYXSZ%SsC7w-RGi*R)8Tkr+$3 zs#A$E7y||4fkW`Cw+%D=D@kZcg?uwQ0E;X}tsU`pUv^&LLHquLM3JqFGpkYXZ?GM< ziWqJi!Z&z|WP}kAhiP$4Iv*5uR4xXw4=6>`$=q(ya2iZLQPd?glV}4cGwOKRuW$dW zaMu&fy#Kn|@2t;+-Lv!$$hyW~Up@TAUr&fje@q2%Nbg8-QDaK90cbTO`Y5!f=t+=A zMBumLgLU5$JZh~Z}!S27vl?N>RwI_n2}vT9CRL#F(1@aBEHJEtI2Je z&GL-;X`szP$y(lZu$F_*)K~MN<#o`}-8t|*22SA9zzdYkbZ9e0IQkwMF;_5wB<3p z8H1*@{DOXNZ;vg-{G)Y+IEFlDxAg@Kt!Ktbnl6TYyX5JTE*9b;nYv0;M!@ZWUDhl2A+GJR@ztY6@)7M(g1OOckxYdGFN4n%!|n z7OVnC*M%%Xhh=o=&}6oq2MuQgW7^pS-WGvrl-sEE8XB!pH6JP|V|!py$!dG-QBme#vu?oyTVx!N*>U zfV}P(RCw)O18_UAbXn%3rsKkEyn(y?D4y1h1HlX9bq|qmk2<0&Q)dGuN}#1!Fx}(t zPG_PO>ciCHwKzGDdI3-K*01(h`NfNwt(6>;?K_&wK%ZRSmSeQcyv%TS5_LbTq~Yi0 z4nQX#&xToUEqZ29R{MQ8R45c+RCM)Hj-t{}f)4t)b{6WWQ6}0W67l-V9Ges@@>Ewq zPRA_?dx!M`yx9*qWT`$mCLWMsCNcb~7 zFR^J?WO6%Q9n%!F-Ur{XR?!y8`|5f^@YXc>(G#(y%yT+WdcBfa`5Aq@hO`9e*X~?RadBm`bai%n)A^AI;D}<_@bM% z+g|*11vUb+3E60BhbNQld1C{Wk+U1R60!*?;|d#L(1Og!fe7mq?u?Gkv;GHu)o?2 zTRYn@K8YD52BkCXbcX$l80fN9zrE#B6~4$8`%L@HsJ#3vpP8W$#5{t8gZozUX5}qzPO5_#%NM(`Mj4+GNw6091r_#& zF)TpGUi;%^Lkike|4t?XmZ^h&6>H9#mE7W}Pm*Q$3trl6iSh)|9P5cN?g> z_q_kuAQ=VHk!(G-xbZaP4XN$?WH0^ghus7af2Tu;CWbmz*E&v-u5JNre$iwC@AVX$ zRX>?}3L0Ga$b7q4l|YZayW*e*tdB)@I$mv4`=+<&4InS48{2b5R+~0=!~|NfK_pM3 zD&S$(sW2IbQN#*_bJUpRIo~c=9MB>w59@=ftmi>* z1dsF|R~|w*uPJ2i$Y5SLE0%qdh@_0wxF(CA7LZ}Gl9>C>rOPk?T=Pwd<6z_bD~;%! zj8VI}P5hn6$OjM~Ne<|r1;!qoY+je#hXzL^<$wD#`#v-HN%c1uajDZHdEP&;6Y@if zC%5lUZv$=@W1;(`OF^= zwnm@{^5MaBTQ}D4%&HrP$l|`{Hqx90MRy7TcOv#FbF%l-eLDbe4-}u;-)MSDLt=1^ ze53AnC+9}75kv;BhHI+k&pA(`l1h28wePA5*Kk-mn%S``|8r?H33Vp(#@YD$zwB)N zG278ygyu+pktsQ(dzHNxx`e_b%@rp!Rn~#%ik##k^-icf2zJYFJ?#WRLvE2{n>s2B zg0HG;tq&jCS@@C7LF2KlZt&t~XTj)qeAPymo)5avL-&6Mr-t-&g(ace&w(U0E+i6jq z4f4gwN*xdWlFsp9jQ`;Ycz==jD|%aWaKjiFJ#d?jejZ)J0u3RxuHnB^U=kt=ry!Rh zAHjmf{d=c_?i@#lb3l}eb)gEW8k{Yg*NlWP&ZknE{3-VK*T&v~JQbw{Qz+iQ?j6(~~d<|x{oj;;wp*gTnCG@lY7wCbw7=MMI z=Wx;UUQ3Nbo~x^u0YAw0hNPQ|w>&Ao%QEhRGN6I$LTHPf)mODiBZK`Zmy98J%ry-D zAX$_OehOfb=h4fe*7LffqXxM*)xH$1MFe_J1&gi#$SIrm)E&!HAeg4!Pa&`T)A_R( zFg+{>^qD3P?BU)5WdHt*pgmY0_OWNAmnJcJMeKdi|4iS*Ca35sT*%^j34n>E(`~ zpCO)mOhrN6XWbE2Otn?$T7`M_?d~HPm!gzh5ZPsj^Hheqz!72zgC`S28{&VMwHGOE zrqFqg!Fo^1CnEQ1&jsFfZJeFv!MI^jOGV5Kr=&T=Z`t`l9~2Rkmtwhc6s6+>&+;zI z;!kW#KciK48uj!Em5ramOzQ(_knJmg?Yo>h6uFAz!sFPo4zyX&Rk778ue04Q9)K(u zII!T&KVF~W=9e9=-IaIeT)$G@&ysB6<{OyyMZp?l7b#CZm(I1hstHB&*nS-2wQJTd zo{@{1=*D2iORZ38j1wx>NLK;Xx+{Wv1~b`DRS{uO{9NsPp7OWjFWz%-|1lr|)i-Sn zI;b;pn&#fi)y~P5(etKdMjKaqV)-sVkwS887u% z4(oZj7yvVaF|S}+d+)(uO@i~44cO0+0Az%`xK`21{}Kc$O7$aoO)=fMcI(tGuRn_Vn3~LAmV|3Fe>iGW)B((h+MaHAw4R4DpLrh?#u5rc4bPS~` zth`XIl@I)%;Ob@SsBfEQ;p%c2t{rLJj@TWo44t#x7y`XR+%yfXRi7wRG1oU{SNl=Y zH!*lq%tgD1u~+C8#oY?~-iQ`XWr{pH|(_kQH}~z@_WzDcCpu~0)racuXGwOl3`}#V$q_|IPCH*=ruO8HA1+c<5zj>K_7r)ta#Za}gxu^<$foM<*aA6!g2RBtXaB;a`%p-9Q=43=l98S}# z4+L5#X-bfPVPTn(dDyU0+$V|^9rH*Z@QYF^XuwG)#%!j~1)}I>yR3OM)PMHIAI6;Z zb`nbAK%RuMA*+;-1wa1T8;<9;FM|Ny*DqiW&#^id4;30gV!~{+x7O->Lvuxo6Ve=4 zkqW*i}UwQsdO*K_f_9hUfiYbY+PZkjRl-mX}81WP3ozaW=hGM-w# zTT)!Gm>*uE-A{W-aXP>{hTG2Mp&{kJuEBz$zhXJ=Kl_VlSsy|tt<-e>@H{wb5xT7) zUxhyp0=VJZO>B=5p|mcVWmKncN4G#U7pT^DytXo6aMBn&Nk)`p=N({96(3OR8+af@ z`J4aRcj<~SUw{Q(=acM0x&+4(hv~Yc5V%!(q~WyJjPhy5RtB3Yz+eeO!#bHQ*wAxU zri=DxU50n*7_z_?NG%VcGO70yQL!m>j2Sf6bf3U~q15UP{EyDzDEb~*_)VjRvG>8q zfQal>fjz_?rjuW@!*t6N_9P2@eO=)CHVJ;if~`<#tu32y)=T((#wa`oTR!Ros897fu_mNHSGb@}jo=nY}^hK>CSBDfTuwE|{x zMF6s<3}xb3&vC5Q@^dMuZKG4!$=}_>;$=Vb&t;KplU-~lbTp*v$?AW@;XJ=YMm?|` z@5oqMN=rVYV54Lx>d!AfJrR6>_!n%D;@@yzInL}CeVw(;EDa=NqkYvS{UY2eAnJ{onGtUgg3(iT=GBtG$B-v^@Q{@ks}JzC zOh%am?al@?qn~Ey90p|DNsSz=RD%J{@JgO-;P%e=bh|Q&~z#Di= z(v|4dD937O96Fne$+k1esQqzR2X+kH#eDx*x;AC;yy+Zpa+Sa_IkNLhPrbks@Ee*) zt-}KdZjkjGAtR9|eN4s?noGII5U97Md%sO&$}4o6LcQWB6~qHLNI}!lAZ74x#jpC` zXyY>L*PGOUYu7y8y;~oY-_H1wu*^yRY}HzE0Yt&dHJ#C$Yv0s{@J5qG0-imjU5k;{ zws|cd4kSsEJYl6S-0(oatDNW`1Vj5lj7?(?6IPR7O%1}VX&dPW+!faO1EEL1Y}P&5$v_@Swbjm0xpr0Wn+0g6xoHL|63p&z{|?W8rj=SKz<) zo)NB=Ic)2F6bD%9(XuAxF(^~ZwMA9oGL(Yc`e}i5&(%NYqmXk+CviIl3doct@rKj$TK32W=xfbgeZ+@&i7jqqz z;%J|h{!F-FS2>_&%9D*0NBgheK!4l^yI=cG9!-F?)O&&+sr&qo(3#H0i2R7o3J`4O zb|#&gGy|~kSH_IPa4~35Xj3hb$Xh)H_G870IAM3p8Ic@(#{yXFg*4%T%anIJKJ0z0 z2XvJtgnx_Nvkytt_2e6o+<#MFbHJ~dr^_J0A?dF|)$azRjh zEkzF8;OB;o!f4t#`A-xLAs9aca_4s1R7*)6$-UJ?_U=d$=&V(V)4zL5N%wJ=e&{v~ znG|3!+Y|zW|t&+6he2TgO|XYk#_i{U01*_!4G5uqts}+jk9+q3m4mhw)RhD zgU)tuS&Ba!iou)VPKNBaee&{C%9_XBQv0dc{WSgyJ-PsV< z6rlSKXU3-TD{V`jz=~3?AjDah`VuStZY0y&AZR`Odu?g>`}(IcJ0owL`{wIQ1TgJge=)o6i_bGcnSXvt*H5IaFsS;l&K9KvLXB{;-x zfyh9jJpsP7_n(I5IQ;-#vsCGIT}5imixkGMvAA4$j>)k)80$)Ss!bLc&rB`()x=qa zQC`wry(`6Q8?{A@o)T|noZ&-3AuVKS>m_THr#~5gf+{=te{3*}&7Iu(K|Nv`MQ~>p z(c1X9xfadv5?*Wv>EAH42Si<%F{V<>hnPXv*S%m);^Wf20pg>g3&Jlw4ec)JgKSaq z^O+LTJCw`Ok0E!pLWf8wvA^ab@bnJu=&0tJloTz;Z0!Y!A*4DvEqP+ZK8NMXictoR z{OtRhV|zZ!m7w4#5z`Bx;$zVN(V*7wLBu-_rRwJY5?tFlk)AnU%X~s2VAA|Q3^BBT z&-n3gSLqHj?~y@=Kf^8pMx}{Gw^DsvcklQax$V`DphqL%tu5l?{XYF&H`$bTb-PgK z8~C-Qv_CFO#81}gA`Ls=UDMcWF;fT)%?}!iuHa|i;aJ^ih65AH-$GbJ6LMDDOCj7q zJ}Y0~cep^4Y6LEDzdGD8mASu`RwZrUdA@GusVB2fsgcV}h|9JjS{v_TtUH1A zh|udTdF81xxP^KK2z5>UHv~`+@C1GEgN1DpEc8%ynhXLgC`7` zRq8RxKt^Al_ju1BNlgaeOT8U|H}Df0h9dx=a|vP^vmFZQ!5j-K#_l9kM+Kx!f0y4t zEQTu|kjU(o7`_TDU$3KDVRT#%IgfL5e%@ugKr!C&>|Yzs8DII$;errt9Tn4W9yR_m zd;6QHDJACM5p`wnDQkzecz3k9kS;O|&78!(EZWyP0rjYTHUxXak9;SVXKu2LKtlJkI`-TxAbL8DrM0jQ z$t%y!z8wqt+loZ%NVzRNJ{jr5R?DLm+a9+l+g>EU$U8fW0oNX=7I$3geV$e@?&i{4 zg+P7n-4wXsFZEm8E(EJHUU;x3o+@Z3pZ2y=3L>xc@yDjvhz0W{sqrk-2l!2F|7qYu z%QrK5P32-Q92_t=#U4zPYvCasrPWRd*pVbf`S)Xw6q2#2?U&|@hc_Y44QDwKwzBYF zf&Jhj^JF$&ct&By*g2CEiXA{K^~i1uu7WK52LaGV<>Esifr|%-fymQ0Ov0n&iEva$ zu^l0Jk?OP|m$Nd!5=uv#e)fMFQlfD@)0BH&xkjhzkQ~BhIY=DKT`26=?FQ%(gL7Am zI5a!UA));TBlw7(6Dj{UAK`Lw_4{jYlh!QaRxHW-p3r@IEhWQpk1wSfk_B7jjWb`frN{JjxJN!dm|Gc2M;I~ysr3OQjxB%A zlQ=c2fS@V9DSC>nQI;qlj95BPfBz<PisX+3+uzA5H5fJJ35~|*9cNpb)tIV!s zd#goG;a1I+jkL)-w5X>7kX5vUs!nqXHE-j}lO`#8G<10z{+ZU>s4%-k{^*dKm~9$y zc3g-xFkg(UQT&@So~~>sPt9(ujf8lNA9O3qe;3+P-3$1zCNzOr0ay$A+*Isn70Z-^ z%#N3=Rqiss5&&Z(c(OQvHO0D^@mRa~A6N467;8q4;#;$mIk3S$dpor3Kksfs#+NmU zy7MC`SrWGM7=QGGTY>1%WT&r}3)2@NVfd$lMR!OKZ|Fz(Fzz2%suNC})H~F_!i056}9Da$LVKMMB!Szv%cTL_q7MLmG4{Lb>lP(4QV~WeH}ap#oxotVHeoQ_dOzCi1-P|u>D!R zg_e#_J&^=Ug9J>-_@lI&CYv1Q&*(r4x!>aHJh$#eS!q_j!sH9wnvTwz%+`?{ggdz+ zRz(>~8%(j|wgWa!g^|j6n(PeB-8JWy=?dN*>ELY^s>uLTb;@Q(cA5K({0+Qa_zj-) zBcM%d;pm0=N*14N+h6xJb{N0+EIbfLiq9(F#zU)j;5$jF#Qta;p0R{y*bQw|MGP!~ z`b3AXWGKbh@Sf&zE`gOoQJN^mlsJ2g+_=E=75%s~yj8>)4$;%s;znk*yO>t_jsRFH zTLp@@o`2BJ1a{Z!iP%j)Zfm}Z&#c#h{zI8NZ2O#-7NIVxGZS*lV#UQ5WA#s@?FqOQ zq60#N*PLZxwJ_S;<;i36)#T>$LaP@RIL^E!V8Nx+c{5w%-IX`wjpP-q{7in2A0K}@ z;#9>hR|>{&-Tn!=at=|HH^bgaR-$$8C--XlwePbeBJ9oG4hBzn(y{VyTPNe$vgDR# zI{Z0v3RK`{j1=|YTp0T(3e(o_E480*9ZWZ$SWzAh^T%f%J-Y#IZGS07%Guv#T{A}S7bI7lN^L7~#*CVWTR@3< z0k>DCaZ$S2O{mj8pXYoMRXKhX*kQe6UYG<6;7mF&o~~DcK=Ql&oNy|qQsOlp*L%(_ zp@O5-OIhu-uVPO{ci3`=9zEUQHJyujrTn>XSY=)6hqlpIZ|}+tzGbd5_p|3%?}!F- zhE5Uqb#W`L&)jKGVint9bw(YC&iip8-(b&$PVdioH$_YI-+W@kyHLJx-co%K-0Bft zx9XiyF=XkDwoomq1v+u(34Q)!-PBCjrI)_3J3J}Z-ESB~7z4$?s<*MXAGHzqW6&Rz zXNj7}BZ)}PhZfIL3aw)g@9HzDdKm)Ce}?hL9c7RslEEGH6^2|>o%#$3pmPYY@kfFe z$U)@8-=rV}GidE|_N|xjcrNaMf8W<83f{o13FO_;AXA;$`B^Lf5B941+}T9&mhEdR z;m6ayRi?)5!n7echFJ+a46Sz84Pl#@lgKpWIAOcWcd@{3Dh~CV1tb@^b^&VeX9ELP z;-zLye^uQiU7zptiOcV)J4*SK;Qhu@9h@8 zws+b<+}4OkFYkX!gSeyit7UE+2%N{>xO7c^iCvEVNtmeSc^Ne8ke<>1US8qhB5}+$ zqq1buLw6x=d*j*$*x}t4gcNZ0#6)2`Kx_uTlK)ELP3u7z3HgBqfuDxB%CCt{Z!W!azatV*COWF?{IKZttd==3P=5*r z`1MM7=&=rVnIqEcMwy(ZSoUR2^0VI<<852OTW_!lFXf&UG4VsoMB+wb*woAOh>{4& zXw9@MZt*U`jjM#BU)zv%i7KpW9*NgYOIu>rGMz{&Tfs`c7sh?n2Mi8X!sMX`EHCn5 z+|)08&H5D}3L)HH8rfv(qq9QpBXd?RBHVDRJ6r76x;ZI)@<$9t{}gkctCx3FXYZm4 z-E!GmG*#8@_t5F#Pt?Cf|K|k|%h-U8E_DX7%m?Uaw8rGdB5K6Cauu1Z6M(ht*B>#> zz|{ZeB>Q6YTkuT8;x`EEp6PGFv?yj%Za#FwDmGylER!?2)L1LDtPt-`emTeWTp6o_ zJ^PE)rNwPE-1L(`D_36*zi6QP#6{n63&FX-`Jn{sHa73LHYV)nbe*r zLZ!UxoiO*Q{^aNjpT2}t;3t^BH$e76^)yLaD6~n^3ZYJUgiA`Fi$!qpCy02`@SIrjn+@VC8@Dp&Dl?*5fz6;3C6Cmt?PJ z5&})fGs5C5f_egT=FUWd7p-wK*&6ymifkDtIq1a+ns5V`ZqVXilRYk_5sp3uj1j!- z+dKs72mjh+57rh@*;@S|DNf?W31_B8m3!GRdBw#Po8Z-~?ydYaDKJByY!@5!+gSkE)j~ zu>5+NFdX-6Z<4YRi8W+RLS0y!!g&m#b&OhLW%mRAA++yP-LZnt>^yDZ*Xu>0?{{Aw zM}rf*dyBfBHnbD65LlrB{WkdGR@DoxTk}^>4ryR7K$ekr7jTd1DN!J)p`8w^=j=(m z1o02{nm1>kv~_S*l&LQp?;D8mBd{`mV)i*c)3$kP;swNot4wN(Z+%w5DhH&Ql#7M#{VJb^?RsHIP8l~=nv2jL zN5Ty2czg8zV+y4p3dC1bcequM6Dlro9qT54%y{Q#`8p!@o14S%+2}xu!HiBW(DOKL zUjM5*d)~LE)~13OmZi8z(_~O=sH;~~)2*9|6_F&}_&^tMOGA({teu(> z&BX+GooZ)K#A_}4{UmcmVXOq+P^`{(#BamRtWFd_d9q+ZRKJsXw>S!BV*V{j{EQNuUtk6BX% zEgulcOxn`tMgXj(ZeK(;m`jjC=3cUZ;vvV@V}*w3l`-7xRZ!%)U3Tt>D)2Q}U4Kv) z&K!7)@yy$FgK*!mKqH@{Rcuzvku?mz8xJ=m;4tmSN`h~i|9R8IBSDfhLwh{@m1xT} zV(R^Npr{+q3Ms5YQk!p|kXGztG=jCI_=B zr)c+nZ67_&w0CRx`H7~@3qEf{6QN;)DSobubIG|=M@YF0w3qQL6<6bWPS+a)IQ~5& z++=d-*^P%R>#)K9>cvr`U)8SCLx?_dYzbxv=%c6fA!IP<=j8* z3im# zIvlG9XSOL|C%9TjPJj6IA) z93y&GF_CNnEg2e^Mkr|lV%Q=?hzt#2V+{3WI)62&6 z2-yDe9TdRAJs^nb(F=!!!c-Nrq!a9b)5Cxnz}7hUG2bM!DE)gK z0{w7bO%ne03zy?^3s9z-y&Mo#Ttv_EyC6PHTrIExoZxXYqp)X1v;G5d`ReldVgfCI zOp3YHl8u8rS}Z+tnBjGON7JQA$S2npt9pXB-E(+;?hI3x?tucfrb zyU&?F#EAQ$i>BaAiuHsI!flq%6VqwthI&TQ<6nuBIhG&L-KTX`D?V#LK?h4|;h-av z1JS>^FNSz1`8L2aOOGOfiK`2$4X>}!`POGMyyu;-PE$>Gl^+RK-FM#a(_FWO0&_K{ z>s&k8iO{Nnm&VU`s5CANoM!#x>%Ci)>G&nK>k0Pw0+?}bBJrmC3>3bqPc1dJQ+0$8 zMRWtgQ<*1@9pY1X>vdA7636Mj(88!3ZE~FSKEt7}+tuGb&!ihu7iQ{8@Z1DbmvC$i>*lr%Eu|ZGovv0M^e%;0s-f{V6L4i_1{&6(+x ze_6bufQId7p$Wp#7UzU?WF;JW9$!lbkt7F=i-@FgJZ%N{VdnF`p|)fc}4~%XD<&ya?(N2(x$S?yaD;hp$|^hQ{EQua#;XT=lEs_h##zF zV|0z{`<ZFV}rw#fp8xqX&HJnt?Zr#bJmSUt|-$L^x{EfB$&yeSRz zU9@794W(cQ-ozXu3|%=cp_@#Wv^(8Rhv0Apx^bZ+R76lj=_17K2K1`%*RXQW{8MDV#4B4!d;NZ`2Q)hWu_m6UERQZ*H6 zwPulU2aU6p-lnouiTD1Dx!DQP=Sc@6eX(3J;x0HAf!SS2Sp0wi?Xvh^$ls#*As`2( zZ&YX?*FK4FfUvOC9Sz@r;22~2{Y2$fNn5-ozLsKV=_^#`x68Sks(+_!Z^cyAN6Y2&0{0e;cZtW1 zUDE6XP>z3_=j({Qqquqp?KJNZF=WdXlW4MQYmv|)`ab=rfRt`FL*0FGtXO29Xg9Qy z=D|!hA+?D$Xzxt{>tR~ULUjymf)pA^A(5VaKq&v(j1qXOK7MX6&1nIdLtV(&xpp{) zF44z6Ua@~ARCSxDoOYi*&jvBSm|JrlxN>=#aJps3`#Zy8q~A9@C$!zQ2$1~0z|YbS zGZf+WF~VLAYYh8X9@Me9OejQ5mm)xhqkq_QxSX|OM81SG4yLZixouM{FurNl3pwLQ zh-%o)-A-TMH_h%Nh|$&!I^p^(l*NH)z(ao1 zST4y%(+g3z&|mPtbM`3FsyF^_O=MFPzao!VqIc=<2c3Tb;q#MP2R_FMvCub1MLq&Yb^ zt7Z($_TEqh+y)5q3t4E;1VeeZaFsa_5qRB+kT!tA$^U)$fEA0F*;zOMm6PicQQKR& zhGT#GaTQ2WjpdKgY;r#&!C&a@%r%$qUH!}+VIs|;D8^>mF7 z#=~atdnSMBJH@*kIb5tHWb?QNZicYAz63R4QZ{hREa%L>Eiq0h@1(+mcOMTfiCz%O zxYV4su3u;(@9b8}$1PP~YS|r!=lK<*v}$$0Ny{Y$d?1e_%-*2&BAk3T~MBYUPf(_nYA{eM?8v=TVR{ChDb-DCV9zqt^RK`>YQ@g%1@;(ss*xtpkvJIWy zjJK{&&_H=s=hR(BIeD*!^pPUqM(W}^PiVvnA_h1bWjz}KcV;{$dE9hvywP+kuCKQG zl$Ee#%R=9jD=YvwE8v;j&KA8i^pKUtgFkxXXSAkoLg9!DFjZI*D_Th3M_+06oJ`J; zJ+~h}$@yh6-Ph@LM4q?mV~^Wmm-Q~g$CoDL9TsY2@t52`a^tIO$MM08w;InQ>pffT z2J5dLyeIh7B==8#!CW3VQ?%(kjg9N9^(;Iq@Z z@_Q@?T~Ah85V$zKa8FJPb{5B8SsKe2*x&H|)*z(&s2HKa93STkq@{+9$10y%Mr@}l zkyqm={u>Ydp#)_1kP9Bw4HD(IZ3pm@>Y8w3l<&(s(AlQPdzm1u3rj!q6Fm=&rZL*5 z$QOdBNd`0MkFP>9xO*E}4rScSJ=H9BRDZdHT8JcK3 zrt!i1*?sQh1hX>fm%m>~ksM|46zB$-Upp^6h31qW+54$5Ajz)4y%~PWJ1_lNqAqi0 z{Uo|$P#NEi2HH`wk*#yzE5{f)ES*H)pB4zxt+w(TltLRFS8hWWH-D}!l3QBFm_fZq z8{-b{kLll>jR>T(d?EB3jO3?#;Oz!*eeP#bobQ}>rzJFndYNvJmIJr9HKS7Z$3HuT zJos1?%;-Rmb>Y1b$ScsDpZ{IGzQo*qZwhgp_JX8L1capPQ-QiWIiz|Pm zE$B)t6iB%C@FndRbQskh{nd(ojtIZ5P=IDxB#tVxw$B_X#8+AyT{Y(7EIi_5=#YGm zI5qVP^XIeL1^hu<{x=37{-|lq=T(4zO|zw)PUECcq?4TPhCgo8%5$*fLa;-|1>P>} zCs9D4s#Z+2+TllJ%IeB!Zw>}JbiwL=hpvC%vLA9;U08jUD(P)M$j>*N4Axq857p#bA8A5 zOcb8I@SK%$&=HCH1hS*F8k;_N(EskGe%V*>Sa!wAy3q1paas%oxU@cPDVNuu)X6dL zF>|#NkHu1Q@sAPw9ZQi$!^2~D%Ou@~bC|LWW)!*A)5N3&-$mR}A4!91))8#I5 z)u!!4p6WPU>iCdXsnKDf>YAOPl1!oa=WN)&3nd~wp(Z9daEoC~aZDWT&0OpOo^E+a zlf@`>wYDR306$ZDPzCt>i*~0c)QT%5O6qN|*5@IEyv}x}%Pr;FPxw5X&ziLa7hP|; zOS!O@#qtHPNrKjTwk`jJyJc-8dCiP4_+7kWA19J4Mp5JXeR!V^3ceU|{i?EUOD?Y? zzbXC=EQ`h`kKBH8O_e@cdJ*ak(yuY16kn}MDu*iD7qD5Fvq!K6(@Vd-lG-+K>_B8< z^n)ZFJ-z=Erc9E7U)5L%@ndVUn1lV4b!I+dS7S{>bUS(IN9BJy3QU@3VRkX<_greD zaQz4}Zr{^?UNLT1y7zfQpfS5!GfT9~bX6AU$1T?q(Px`8%cqC6n==Q9!qB814i{?E zg13XI+!wTIWP*yMkfEb2!K`IO{+Ebkk*|w)%@4Bpp*5*zA5}OTB2Bl9!9^8B-vs? zK862k3{HDn0i58PaEoL%K{!%FSPK2~sk^#1zp<&2h0AEd#}9BdYTd+;ubc^6aZ`V5 z<5>DWRkKKK0VeyBF_s&aqx`+bzxf`Hfb|ZIwH+c1pj%+ITpr&ALnRmg;|XK8^&3Q( z=FBS_zEk@mLG2W-yd9W7>|5DNbc9EX`y&;^x230f8J+Q$JcIBxTzNW#N3@&jXiE~y z4z;(ckNx6E>f&`~H%9U~t3w364XIgl&k(MafPIHix|Gt;Gyz>Br-7Dq0!f0H18G7oB zURzKd{tUfKAeRK&#a-{uaH_3*hdy&;-SkGPJ`-w^Eo-}CZh&{Uux;@ky_|fgidqcI zdpuiPO^k|iJg}TF@JC8jF1Nm}hXkE^Cj&Kt&T}vGIoZDIcsG_MP304tB8BLUZsT_; zgeB#U$~DO^jK4w_QHdKM3UQPIW^sjcKx>nzUfZMG4Zuta`L8n&$chXl6`{K*27ZLt zHI11G*oj4gjjUzEWItSqh1dkyamb*UHce)WuC2<^Ww$JRnm=$r!swQ1HTxaL7!Zj0oWiFUn~d>3Rp11 zhw!`NGoLU|>1QxQX_w3!Pk!gw;i1wYfTD%OElZr7@9f43Vq0aVebYw19t-x+c_;+^xV|}bBdZkivOO@*eIC{ zDPKv*zJ&FRR6P6cWFTipQ^6xD*kR{UAu=E##mYtgbElf>VFCU!;{+t1z#|zOY@js2-e+jh6TZ~kJ;%VD7GS`cSGw2M&E@YEsZIIhdA`f0B zp5NRxCRuMoz6cFt7zablz0xQ*ZQTk_6IKIO5tr{Q{}7q4x|@B(Glxg$MOfTlacK0q)ooF|XTWFOV;Qk@3&|!ew9& zG!FvT)oxBdJpyKokz~ZV6%2~XG~Xn87=$C6VE}nSlnD$oq*o=(Q%LPYXX5V36;>-Q zL0^PF-OOdBzOPW$?IzuI$)7&&ytA7yh^}8e0xl6>r>@umD=iYZfOk)u@c$B6s7k-M z(bq}+6F@SC$cqJA1~+8IzK=9H?TQBn+LdMTxrcYU%db!o%q z^?LBAq9ZQL=Tl50E5>aFb=A_)9{NC8|Ug3jY3Ve!1@=SDi)qk0kf(=qbKr8fPM7Aof6n%4KR z8`2=4(ud!%{oF!-h5kW@aXHq~46CRiogv_M9I@eLIyH9huy89~4KN+52{wOROMcFq zt5s#$2YP>naC5p zIeR6dB^)j5oY&8^EGJkgLRwIEIG3cQq5Cc4u&IcQX&ZTTB{H=o+9?CS%=XGAIp*^{ zfbkoAV&LXNzxT} z(`7BfM3yGMGJXv0gfUSh4XX``@!lH6cXg+@<=8Y*{{1EZX@(BoE~5N58PQ$TMn&!8 zhx4q-D3^^1A}b0FhY*F>a|S-@=^IAhZ+$(-6KLYz^6sZ;^y5XR@NnUWMtFc6fQ~e^jsQ+0;d3BIlROx))lPx253>)w zD|8Q0uR_*((~EOND?za`h~3riT}Y6UlWR@X=w87>U65??*1JnP&u>C3DBAWw!S9zY=Z@tmaPv-!xll0Y? zWHRM zUoo?DBY)q^Ps5>E{)dq1#2(h~u%ad<;$~@1J2T#&4Jv-3no1$R)!)rpUr?glq;hI1 zr{{Y_&grL~oZ?h3TDbkNgxY^#l{kgv<;_!Rk$w3xL_)=vcC9HJheD}QH2yxbpsSku z>dN&Pr7=@zQ&O+Lo#4_D*Stb^IS!e@kcz|K;s+E6nn2Vte>cvs3Bk0l>8KRWIFg!h zsCYm(tZ+IIP&RprX`g#_4>OF+2cLU!vIHcraWry9#_wc?th0Wrift0DY*o*-(O0!K zVqWi^Y!b&Ef9^KhJc!+AhD~{5O{PdPpGZn>3$BTJ5!Jf)0?)%DY*`%)!O!rT@(L~* zq8lBGnbP)*$=h;7vAq*vFULvUhD=tR@=;Y4>JrEivlNey` z<{x$Q*~*E-8j@`o7Cj%Gvm3m0k`*&VEY=)OA0PWRq9xVqc@x7ZU5nFc>zS0SFt<%Q zxD{DsZ8A{DtE=g~IcWb^@&VRY=Gj8xYdW>*Z`HF|TZ zNuTh=AG}PqfDW~HH@isQc=x0?`zx!A6;Be0r;LnKZMJUroB=2KHdSgJ**~1+Q{~)s zoOJ{~{rP=}!5P>Ac^zr9@AhB9a2$Vx_elzGCDFdr;@_>4+R2=ng?Wq?Y^Kr^AHHpg zVHQJk<+~L^C%x;pm^^scUB0C4Ym83@fMe4aP~PGUgAZC0Z^H14bo*28 zs!ka#W?o5$pZa=S^|nB_ObF+~_$$F0(tRVsF(;s9i+e{Bx6k?ECS)*XLfiE#ECbjF zR(~h{>a{1atrcY1!wJ0(dc1vx^(M1L`V-|U4afSNT!cyPK3;n3?gwvVvml%sCPHWT zvhaC>3z>mYSUZDH(@;sz6IxW{pCBI6B0n?be%q>nJQSG^`+s&>$`vUu zLcC|d8tS$cYX>hz+d2~p{ODoMbNCh=5s_Q9}SJ%CXCRH?Gl zoF3Hlyu+RAF54Ny9Vy?5BUYbP(H)Lbvx0e+DLa^vhouTiymf(YY~E%l=MRj`RB8Ap z1?MaoXjlB77eE>v@XXOHkHCoAin&JH!&1Owz05%Y-$4czT9I+XTSZ zns6nPvjZ3EgN&@Bu4mZRD*I~uXlCVzc+yLjybsE!_YbHZSFZHj;kp41aAktCpUQ?lwOSyFI=XXSER*3TEZ`!Vy3+Ed^4a^h z)HNA(n5;JYl=M{|&EU#dA+^a~F^P|+AoeCYT{Y80nz|1rwbND}tq zq%n8B%eN;1>8S&rdrmWch!&mn5g4MM!DV>Tq`b)pB`_cJQvtVWhfh=12boY7PIxweW^9*eC&Hq<^oXiSHFqi^YjD zctBRRMld$%%m(2$WW&sE53QehRxY7~rnq{)HRq5PAI-5R{27w5l2!b~7vd(iv{Ja&aFt!q?w3vI#cmS@;07RJ+ z5P%K!VSLbc)d}p!m2=I8qR>{gnQ|!}ekteH3Vd`scEUB5Pk#1Ji$#;nI$@%*DK@+v z1q%5v*a$u&!RTu8!r7=w<78|Jn(%YjjYQ06R_U zSr9QHz6O-GjKtQ9hDix@-}@nGxte9z)B(eGGtLQ2C64w=6|Eo1VcKTUW%{SmTj@9c zHMR_Yes7i)2UOTCv8H_$*SnT~bovOmHJ>|&6S0++dv!MO{9EwZ(eAZ5orO4L2FdBr zVz%cq{vHGO)`VA^M2~jfgm2NSaAO1*p;KrN%Ds1~1NVhjn~HvfUZ&c|v(5qu1D^WH*IL2AZvn!Tqj}`u74$-0V|H`@}XrF1+|LE4(pRHxwh3RqL zCNT5k7TfEu1>Q^|HI?!m8mqtViCk-wuHV=_0n+B=@Oz7vDF*7l$KFF;ZFwQS+nJ!! zx+&-D-dtCj#pUPTVr9fWkQkoxk8<2Jnk!H2wcc@6Zeya(4@rwl@Gv&L=Yl;!!}_(A zwz~oW@z4((Ro;J2GXwRV-yU6iTt&Z3e6;R4z@|r0In+b#ML)Y6Lpm7D*8(oH71|^x z0N_>_GnPm-iQjghb zF{nSim??A|<=MO>^&FS8C~?Sc234n@z#e7Za()|g04T_VGst)Hk4}A&v8$GKR)`i4 z#RK`7v4kSsHoxk-^Z&wM@jPRT?KkcS>L4K1v7xmWcL&#njlyCrx|FqkR~4N;_D+r7 zH0pj@``!FY^R1p}s~{txd0f!~Y_1qlb!;~X(isq2?sp7K+6D9pFYdic0vT*-r42m| z{YK=(zqz$gxCkt#%D?vEx3N6#`KP7((07tkKdm%v=M`YBKfMZQ(I7dkQ;b)sI@R() zwe==qfESVlHczg-HDeopEL>J|*;R6-Mc_^hEHfBdaycO$#uL-BC>B)z0ThNa3zZ`563EVN%y z{iIEJMA}nACzb9M(L&}55Q>5_FAe;VH=w;~)5E?WxA0%ln8b{BZ7*T&CRv6dAH5ivqCugcG&YRsdBL~ z>bGK}96e#W-~afivz1(V(6w!SZ}Bhmdz^S4Ei8qbP=gM4yzX87po8Vuo4vaOI!qxO z0jN@rDrG{mI~xM7pP1I{i{X;mXNg(ztCuG69mhM-wJH1TseTimqdM$ZMUj-jA(d=K z2aoP|jh_FEgEOWiNYS6pK_Qq3co9;h%gm9$dZf_bQIkKY#IsB_Z(vvf=5t2OJS*vY z2Xfe_aR<)=FoKGG@#)ExSw#Lf(!)YOX7ow50v`4D?$@usd!pxWEO?vyC(wnXMk-Is zK>oq5Mho&p9NEiO$4R~iG=`|=DErz}wbbY5O6i0u`=?SY542sNCj(Z~W@!&nI3g=0 z=caQ)6@FVXIX$03`-Es6dkTVtli4(}YNf|2k$7m()yncpEs$`&6n>^2#sqZN=eu$g zEm`Wb$effmm)#mw3D}C{0gCOS^h=RDDsml-dd@s8aE(96T30uUI&&P_x*M*nXzD3i z)|s4C`ax2^@T24zuFnq?e-o%bM{7j3xd{Q86zDftD}A411K#T#dxxnmqWqB%w$W#7 zq-WvVy2RxnN(|X#@qp?O5hg$D*>BbytjA0pJ20_`H9jRy()s|xYS?mddY<7eRP_zL z;`}E2nZ_?9I%w)qlP`_s5pU0~H??MocF%alU%_N8I1JL23@cQt7DM+1qSJ0Er~PQu zVqB{qGrRU^-A+HzN6rnicDXD&Fac@r07!#lpcN&B9Oc_UX+6xzB_+qZp=UCT7Sn>6 z7x2d2q!4{tN-fXY6#k9Udr$5zhSQc^oRWbq&? zH|ukA5+bnq3aU3@N9m<@*pG6zgTgD8`gtFy8u+uUgZLNpS7klp!Fh(Wnb#Ystk;u; zQV*eOuJf8xv3GGYmi@5zEneN1uP|;oEKnKCJB8lF+_~TM%63G5SV@Zu^im?<`>e}% z|AHAWxHcd4Pm^s%fz3UmE4D*JMbXdb`q!DJhV@5e#A@d(%u-k%*xm}`35($?l|jlpSBt)8l)NI_ z>UfTW!%C1c|BMj#Sw@rMQOuQv=jS+g8~^E^+ti>28F!pu@am}21ui~qEmN3;H^Z#4 zk6`ZM<%i%Vjr%-Y*Q+rpTqhQZr>7&!0+b=BAV>X|JfWOP0!7~|_xu`k(EzKdS)fmD zsmzYqI6!K~rrbbGghd}zHSz`z(q@;NRHAucf-SbeAhQ3Sk6GU|I&5~3e9Nb zdKV9YC#h@V67y16;e#F)34;Nee8XW|Zf6s)&l&k=?SW4>>ds@*g$A9%b=BZ2f`fG9 zA45S*j&n%?Y(j%Qs`MJyW`jHNUl6Omos{j=37W88{r{=c`JsimhGn+T6do;4AIES| z9_%PngoZ8mR}jqooqdr1j=sHNfzn}Htv^(Z4%5bok69>&}(% zGPYMefzWiA<>4+22Fu?<-{l1>+BAu>9D?NN^IUg(91^%nd0qJ5;vN~F+F$t);ZSVs zm*l~4g{qMlV%aWd6}!5r?bM$(p`}&T9Kz`#pH`zJfyJm(e6Nd6muv00LkA$9q*O{U z*I@i+QHimL=%-FjuJFNQc@mS?oIXmyJ;Pn+CCwedx+(vj@sJ(gl)K)sU3_EzE1j*X z+qg~Qx|cgU=e=(+k5)G1R?UCy7znO&NU+Zm44BkQ7^^kK6&uzB{3QYTrH7Pl{!!6N#uG)FXCUEEp9o26&h zGZ&FL%U<5uhwe4he=E?!WV3s)!nlEm3_C{KfGDJI=K(Xxz%At3=}#IPAKf{F>5cIQ z9{~R@YPi`7%~aE{*Uivr{TmnD`VT3T0cxWGq=Vy5@l&kxDyyV1!!i#S+Pb8)n^BjI zhdaXR)-Y@I?QSmGO;@=AR-X3Nld}k3P9N6a)ir#F{l^9NGAtOaQ4MsD_DUXa4{#?2 z53w4u0)dG43jro~&@>CAjnR+yaSftK8a8G@H?A-}v zHdeV{SqD$wrO^P7fG@Bb9yIwzODP-IM!{~WFiEwdm{PL@rC0nVXcy>NjiGCp=KVsh z{Jw2X%1ACxs<=Btd;Kb4PO_R^3PS{}=hf@cSM$ezpxGRhw^aZxAkmZN>dK2^4?ez==1S6Jwm*N;JqjCWR6P6^KQX7vp-6j<0l}I zl)Iso#Z5gs8i8mXNZbEW_ zs@NXQix>-Ke-L+kgNpHzr|1ghv8~_x*|tYk{$sd@PAj=x)z2mG6}2UG^_A`)YkOB% z&n_+0lr;`Pl|79b*^614Erx&#nGdrb`0T*w;PltViqyNA_HYk@4^qJvj(VpXTGo%k z#f^&+Q=coLdC(>e5$;Q3e=@QBLN*fhQdY2S#^f*j$~*6vgKq*OtP-4|n(wR}IEw=O zLAc6*@a3fpg0y8>aVJ!6;vO}(QTFCF*ea$_V0vnIFj>h<;UT`}6uk7krFoHZksf3` z(b5P4w4RDj;vm=RGL0k*Zel%Zi8XlOpWVd4X3_Y5hxR#Em+iEW+YZnD=)2X>*F}UO zIFq)6nTo4m7cFXtg?yiM04$#;eN@`LJZ%@S?E@YST5JoPZ;Wx{ zORAf9vdbVj9KBXq!6ZCd*vL!@z24yZkkYjK^Hmjm&9xxPApv~$)wy(OGt|4%Fe3Q< zb7;q&2&ApmcM)~<%I*?vjmhj4;OBbxCPB?bb>ZVyB>>G7kyg*Ho)3mSnNf_eQQ&H zj0kG-d2&*_^imA?TycFI=J^Fp%HC{?U9}A%0Z1 z2C7Nv-}R;8UNUXXPvf_8hYl(aqVF$(+d~FJqKc_}?yq24unyeW>$pJe6v0{QCnB-T zaBFU1k`S|TcyZUl(%~QD$AWcXjIE@iws=%WdWnlsm8k8nUXaZ+u=c{}tp!Lk{z-r3 zG`Q8kP7SO3aJ%z3JyCo^EYs7#6!W69Q5D)?_|^?NfZO9{>8be;+4~F(c}Ykq zVytci8$Lw#=wgf9?ljAA(t3A4|n#4FwdwrOEVNMMddGst>|4 zLR0Z=0!rR?1C49)+Z8PGPgFYdoABD+@9xW+`q&HPC&nBmQ9#gF6w_ouhsg#!f{@Z8 zs!by%MAD0-e>GEnZ^~lO_D|r84EDVnym_93iDQQdhITKx^y{k+-Yb8iDeW}&iavdw z$nohWfTmrm;uygb6v);6m<0nZ4Ld1ZOm~LB?D>sSL+qiXh8jWXL&?g*F*uXZ_fB)N@&*#uEB}pnuIpi=R$1;bCB0~oq%^?|P z8#yM2P;_8aaz0dwYHZGOF2^EsnzL+XY_r2}@9*dK`wO<)4v**cdOWY|eo=15T4P!) zDQ9~lG| z`M>GMxH)H`H}zh#^%qR|@vUX*ay@nV<(`~5cS1nibelG&xy`q{on!{elaXAA6FpQ}~vH%{o z?bT^J<-bz%alY3v;wbTYm$rYyMO$M4aa_^p2oy|>qQ?E}wQ zHOyQedIe}em*X-)3lCm@bwId=wFzwJXNYtUJm2wX=S;

4!-_xEu*NG4~cgrVD{) zI=-)VD##fYZgblLxZ|AU{UjF{vju8VWJsePGXN%0Dx$P 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≫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≤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 R7g+!R002ovPDHLkV1m { const pythPolicyId = readRequiredEnv("PYTH_POLICY_ID"); const feedId = ADA_USD_FEED_ID; const queryFeedIds = [ADA_USD_FEED_ID, USDT_USD_FEED_ID]; - const fundingLovelace = 2000_000_000n; + const fundingLovelace = 500_000_000n; const providerConfig = readProviderConfig(); const client = createSigningClientFromEnv(network, providerConfig); const providerClient = createProviderOnlyClient(network, providerConfig); diff --git a/lazer/cardano/our-project/off-chain/scripts/create-validator-utxo.ts b/lazer/cardano/our-project/off-chain/scripts/create-validator-utxo.ts index d1c8bd5d..8d0a2b01 100644 --- a/lazer/cardano/our-project/off-chain/scripts/create-validator-utxo.ts +++ b/lazer/cardano/our-project/off-chain/scripts/create-validator-utxo.ts @@ -23,11 +23,11 @@ const validatorAddressBech32 = Address.toBech32(runtime.validator.address); const defaultDeadline = BigInt(Date.now()) + 24n * 60n * 60n * 1000n; const datum = makeEmptyOsiDatum(defaultDeadline); const payees: readonly [string, bigint][] = [ - ["c0359ebb7d0688d79064bd118c99c8b87b5853e3af59245bb97e84d2", 1_000_000_000n], - ["3f7fc2419347ac70cb5fbcdf3bb8d964727ec1c3e93b364288c22f33", 1_000_000_000n], - ["28f60a6dcb45d06f76081888b6b749dc8829dcfb5e11596b3775220a", 1_000_000_000n], - ["5133ea0bdd0b0d7a3461146d5e777e8b2c013929d956032d6d6e91b4", 1_000_000_000n], - ["05231a2548dc81a3654e857b657960ac892c9e059af3ac4a3ed1d494", 1_000_000_000n], + ["c0359ebb7d0688d79064bd118c99c8b87b5853e3af59245bb97e84d2", 10_000_000n], + ["3f7fc2419347ac70cb5fbcdf3bb8d964727ec1c3e93b364288c22f33", 10_000_000n], + ["28f60a6dcb45d06f76081888b6b749dc8829dcfb5e11596b3775220a", 10_000_000n], + ["5133ea0bdd0b0d7a3461146d5e777e8b2c013929d956032d6d6e91b4", 10_000_000n], + ["05231a2548dc81a3654e857b657960ac892c9e059af3ac4a3ed1d494", 10_000_000n], ]; for (const [pubKey, amount] of payees) { const credential = makeVerificationKeyCredential(pubKey); diff --git a/lazer/cardano/our-project/off-chain/scripts/spend-validator-utxo.ts b/lazer/cardano/our-project/off-chain/scripts/spend-validator-utxo.ts index f118dffd..5f67c72d 100644 --- a/lazer/cardano/our-project/off-chain/scripts/spend-validator-utxo.ts +++ b/lazer/cardano/our-project/off-chain/scripts/spend-validator-utxo.ts @@ -149,8 +149,7 @@ try { : 0n; const txHash = await builder - .build({ - }) + .build({}) .then((built) => built.sign()) .then((signed) => signed.submit()); diff --git a/lazer/cardano/our-project/on-chain/aiken.lock b/lazer/cardano/our-project/on-chain/aiken.lock index e7b6ac2f..2a6a2ea2 100644 --- a/lazer/cardano/our-project/on-chain/aiken.lock +++ b/lazer/cardano/our-project/on-chain/aiken.lock @@ -24,4 +24,4 @@ requirements = [] source = "github" [etags] -"pyth-network/pyth-lazer-cardano@main" = [{ secs_since_epoch = 1774217152, nanos_since_epoch = 885169559 }, "a46dacd97a22eb07feeaf966d48c3116c8249ddc836705656e3135cea285bcfc"] +"pyth-network/pyth-lazer-cardano@main" = [{ secs_since_epoch = 1774221971, nanos_since_epoch = 576433480 }, "a46dacd97a22eb07feeaf966d48c3116c8249ddc836705656e3135cea285bcfc"] diff --git a/lazer/cardano/our-project/web-ui/.env.example b/lazer/cardano/our-project/web-ui/.env.example deleted file mode 100644 index 05391683..00000000 --- a/lazer/cardano/our-project/web-ui/.env.example +++ /dev/null @@ -1,3 +0,0 @@ -NEXT_PUBLIC_VALIDATOR_ADDRESS=addr_test1... -NEXT_PUBLIC_BLOCKFROST_BASE_URL=https://cardano-preprod.blockfrost.io/api/v0 -NEXT_PUBLIC_BLOCKFROST_PROJECT_ID=your_blockfrost_project_id diff --git a/lazer/cardano/our-project/web-ui/.gitignore b/lazer/cardano/our-project/web-ui/.gitignore deleted file mode 100644 index 78338515..00000000 --- a/lazer/cardano/our-project/web-ui/.gitignore +++ /dev/null @@ -1,4 +0,0 @@ -node_modules/ -.next/ -out/ -*.tsbuildinfo diff --git a/lazer/cardano/our-project/web-ui/app/components/osi-panel.tsx b/lazer/cardano/our-project/web-ui/app/components/osi-panel.tsx deleted file mode 100644 index 48a4833b..00000000 --- a/lazer/cardano/our-project/web-ui/app/components/osi-panel.tsx +++ /dev/null @@ -1,59 +0,0 @@ -"use client"; - -import type { OsiRow } from "../types"; - -type OsiPanelProps = { - validatorAddress: string; - osiStatus: string; - osiRows: OsiRow[]; - isWalletConnected: boolean; -}; - -export function OsiPanel({ - validatorAddress, - osiStatus, - osiRows, - isWalletConnected, -}: Readonly) { - const hasRows = osiRows.length > 0; - - return ( -

-
-

OSIs

- -
- -

{osiStatus}

- - {hasRows && ( -
    - {osiRows.map((row) => ( -
  • -
    - {row.outRef} - - Lovelace: {row.lovelace} | Datum: {row.datumKind} - -
    - -
  • - ))} -
- )} -
- ); -} diff --git a/lazer/cardano/our-project/web-ui/app/components/site-header.tsx b/lazer/cardano/our-project/web-ui/app/components/site-header.tsx deleted file mode 100644 index db5a10b7..00000000 --- a/lazer/cardano/our-project/web-ui/app/components/site-header.tsx +++ /dev/null @@ -1,30 +0,0 @@ -"use client"; - -type SiteHeaderProps = { - title: string; - buttonLabel: string; - onConnect: () => void; - isConnecting: boolean; -}; - -export function SiteHeader({ - title, - buttonLabel, - onConnect, - isConnecting, -}: SiteHeaderProps) { - return ( -
-

{title}

- -
- ); -} diff --git a/lazer/cardano/our-project/web-ui/app/globals.css b/lazer/cardano/our-project/web-ui/app/globals.css deleted file mode 100644 index 5686932f..00000000 --- a/lazer/cardano/our-project/web-ui/app/globals.css +++ /dev/null @@ -1,176 +0,0 @@ -:root { - font-family: "Space Grotesk", "Segoe UI", sans-serif; - color: #f6f7f8; - background: radial-gradient( - circle at 15% 10%, - #22436b 0%, - #0d1726 45%, - #070b12 100% - ); -} - -* { - box-sizing: border-box; -} - -html, -body { - margin: 0; - min-height: 100vh; -} - -body { - min-height: 100vh; - padding: 1.25rem; -} - -.page-shell { - width: min(100%, 980px); - margin: 0 auto; - display: grid; - gap: 1rem; -} - -.site-header { - display: flex; - align-items: center; - justify-content: space-between; - gap: 1rem; - padding: 1rem 1.25rem; - border: 1px solid rgba(255, 255, 255, 0.2); - border-radius: 14px; - background: linear-gradient(135deg, rgba(8, 19, 32, 0.9), rgba(13, 33, 54, 0.7)); - backdrop-filter: blur(3px); -} - -.project-name { - margin: 0; - font-size: clamp(1.05rem, 2.2vw, 1.45rem); - letter-spacing: 0.04em; -} - -.connect-button, -.action-button { - border-radius: 10px; - padding: 0.6rem 1rem; - color: #f7fbff; - font-weight: 700; - letter-spacing: 0.02em; - cursor: pointer; - transition: transform 120ms ease, filter 120ms ease, opacity 120ms ease; -} - -.connect-button { - border: 1px solid #ff9f43; - background: linear-gradient(135deg, #ff9f43, #f97316); -} - -.action-button { - border: 1px solid #3fd2ff; - background: linear-gradient(135deg, #2aa7cc, #1674b6); -} - -.connect-button:hover, -.action-button:hover { - transform: translateY(-1px); - filter: brightness(1.06); -} - -.connect-button:disabled, -.action-button:disabled { - opacity: 0.7; - cursor: not-allowed; - transform: none; -} - -.content-area { - display: block; -} - -.osi-panel { - border: 1px solid rgba(255, 255, 255, 0.2); - border-radius: 14px; - background: linear-gradient(135deg, rgba(8, 19, 32, 0.9), rgba(13, 33, 54, 0.7)); - padding: 1rem 1.25rem; -} - -.osi-panel-header { - display: flex; - align-items: center; - justify-content: space-between; - gap: 1rem; - margin-bottom: 0.75rem; -} - -.section-title { - margin: 0; - font-size: 1.05rem; -} - -.validator-line { - margin: 0 0 0.9rem; - color: rgba(247, 251, 255, 0.88); - font-size: 0.92rem; -} - -.validator-value { - font-family: "IBM Plex Mono", "Courier New", monospace; - font-size: 0.8rem; - opacity: 0.92; -} - -.osi-status { - margin: 0 0 0.9rem; - font-size: 0.84rem; - opacity: 0.9; -} - -.osi-list { - list-style: none; - margin: 0; - padding: 0; - display: grid; - gap: 0.75rem; -} - -.osi-item { - display: flex; - align-items: center; - justify-content: space-between; - gap: 1rem; - border: 1px solid rgba(255, 255, 255, 0.16); - border-radius: 12px; - padding: 0.8rem; - background: rgba(10, 24, 40, 0.5); -} - -.osi-item-meta { - display: grid; - gap: 0.3rem; -} - -.osi-id { - font-weight: 700; -} - -.osi-date { - font-size: 0.82rem; - opacity: 0.88; -} - -@media (max-width: 560px) { - .site-header { - padding: 0.9rem; - } - - .connect-button, - .action-button { - padding: 0.5rem 0.8rem; - font-size: 0.85rem; - } - - .osi-item { - align-items: flex-start; - flex-direction: column; - } -} diff --git a/lazer/cardano/our-project/web-ui/app/layout.tsx b/lazer/cardano/our-project/web-ui/app/layout.tsx deleted file mode 100644 index 77972368..00000000 --- a/lazer/cardano/our-project/web-ui/app/layout.tsx +++ /dev/null @@ -1,19 +0,0 @@ -import type { Metadata } from "next"; -import "./globals.css"; - -export const metadata: Metadata = { - title: "Oracle Settled Invoice", - description: "OSI dashboard", -}; - -type RootLayoutProps = { - children: React.ReactNode; -}; - -export default function RootLayout({ children }: RootLayoutProps) { - return ( - - {children} - - ); -} diff --git a/lazer/cardano/our-project/web-ui/app/page.tsx b/lazer/cardano/our-project/web-ui/app/page.tsx deleted file mode 100644 index b5e50129..00000000 --- a/lazer/cardano/our-project/web-ui/app/page.tsx +++ /dev/null @@ -1,187 +0,0 @@ -"use client"; - -import { useCallback, useEffect, useMemo, useState } from "react"; -import { Address, createClient } from "@evolution-sdk/evolution"; -import { OsiPanel } from "./components/osi-panel"; -import { SiteHeader } from "./components/site-header"; -import type { OsiRow } from "./types"; - -type WalletApiLike = { - getUsedAddresses: () => Promise>; - getUnusedAddresses: () => Promise>; - getRewardAddresses: () => Promise>; - getUtxos: () => Promise>; - signTx: (txCborHex: string, partialSign: boolean) => Promise; - signData: (addressHex: string, payload: string) => Promise; - submitTx: (txCborHex: string) => Promise; -}; - -type BrowserWallet = { - enable: () => Promise; - isEnabled?: () => Promise; -}; - -declare global { - interface Window { - cardano?: Record; - } -} - -const shortenAddress = (bech32: string): string => - `${bech32.slice(0, 10)}...${bech32.slice(-6)}`; - -const getWalletKey = (): string => { - const wallets = window.cardano; - if (!wallets) { - throw new Error( - "No Cardano wallet found. Install Eternl, Lace, Nami, or another CIP-30 wallet.", - ); - } - - const preferred = ["eternl", "lace", "nami", "flint"]; - const installed = Object.keys(wallets).filter( - (key) => typeof wallets[key]?.enable === "function", - ); - - if (installed.length === 0) { - throw new Error( - "No compatible CIP-30 wallet was detected in your browser.", - ); - } - - return preferred.find((wallet) => installed.includes(wallet)) ?? installed[0]; -}; - -const mapUtxoToRow = (utxo: any): OsiRow => { - const json = utxo.toJSON(); - const txHash = json.transactionId.hash; - const index = json.index; - const datumKind = json.datumOption?._tag ?? "None"; - - return { - outRef: `${txHash}#${index}`, - lovelace: json.assets.lovelace, - datumKind, - }; -}; - -export default function HomePage() { - const validatorAddress = process.env.NEXT_PUBLIC_VALIDATOR_ADDRESS || ""; - const blockfrostBaseUrl = - process.env.NEXT_PUBLIC_BLOCKFROST_BASE_URL || - "https://cardano-preprod.blockfrost.io/api/v0"; - const blockfrostProjectId = - process.env.NEXT_PUBLIC_BLOCKFROST_PROJECT_ID || ""; - - const [osiRows, setOsiRows] = useState([]); - const [osiStatus, setOsiStatus] = useState("Loading OSIs from chain..."); - const [isWalletConnected, setIsWalletConnected] = useState(false); - const [isConnecting, setIsConnecting] = useState(false); - const [connectedAddressLabel, setConnectedAddressLabel] = - useState("Connect Wallet"); - - const loadOsis = useCallback(async (): Promise => { - if (!validatorAddress) { - setOsiRows([]); - setOsiStatus("Missing NEXT_PUBLIC_VALIDATOR_ADDRESS in .env.local"); - return; - } - - if (!blockfrostProjectId) { - setOsiRows([]); - setOsiStatus("Missing NEXT_PUBLIC_BLOCKFROST_PROJECT_ID in .env.local"); - return; - } - - try { - const providerClient = createClient({ - network: "preprod", - provider: { - type: "blockfrost", - baseUrl: blockfrostBaseUrl, - projectId: blockfrostProjectId, - }, - }); - - const utxos = await providerClient.getUtxos( - Address.fromBech32(validatorAddress), - ); - - const rows = utxos.map(mapUtxoToRow); - setOsiRows(rows); - setOsiStatus( - rows.length === 0 - ? "No OSIs found at this validator address." - : `Found ${rows.length} OSI contract UTxO(s).`, - ); - } catch (error) { - const message = - error instanceof Error - ? error.message - : "Failed to load OSIs from chain"; - console.error(message); - setOsiRows([]); - setOsiStatus(`Failed to query validator UTxOs: ${message}`); - } - }, [blockfrostBaseUrl, blockfrostProjectId, validatorAddress]); - - useEffect(() => { - void loadOsis(); - }, [loadOsis]); - - const connectButtonLabel = useMemo(() => { - if (isConnecting) { - return "Connecting..."; - } - - return connectedAddressLabel; - }, [connectedAddressLabel, isConnecting]); - - const connectWallet = useCallback(async (): Promise => { - setIsConnecting(true); - - try { - const walletKey = getWalletKey(); - const walletApi = await window.cardano![walletKey].enable(); - - const client = createClient({ - network: "preprod", - wallet: { type: "api", api: walletApi as any }, - }); - - const address = Address.toBech32(await client.address()); - setIsWalletConnected(true); - setConnectedAddressLabel(`Connected (${shortenAddress(address)})`); - } catch (error) { - const message = - error instanceof Error ? error.message : "Wallet connection failed"; - console.error(message); - setConnectedAddressLabel("Connect Wallet"); - alert(message); - } finally { - setIsConnecting(false); - } - }, []); - - return ( -
- { - void connectWallet(); - }} - isConnecting={isConnecting} - /> - -
- -
-
- ); -} diff --git a/lazer/cardano/our-project/web-ui/app/types.ts b/lazer/cardano/our-project/web-ui/app/types.ts deleted file mode 100644 index 756239f2..00000000 --- a/lazer/cardano/our-project/web-ui/app/types.ts +++ /dev/null @@ -1,5 +0,0 @@ -export type OsiRow = { - outRef: string; - lovelace: string; - datumKind: string; -}; diff --git a/lazer/cardano/our-project/web-ui/next-env.d.ts b/lazer/cardano/our-project/web-ui/next-env.d.ts deleted file mode 100644 index 830fb594..00000000 --- a/lazer/cardano/our-project/web-ui/next-env.d.ts +++ /dev/null @@ -1,6 +0,0 @@ -/// -/// -/// - -// NOTE: This file should not be edited -// see https://nextjs.org/docs/app/api-reference/config/typescript for more information. diff --git a/lazer/cardano/our-project/web-ui/package.json b/lazer/cardano/our-project/web-ui/package.json deleted file mode 100644 index 1e32d77c..00000000 --- a/lazer/cardano/our-project/web-ui/package.json +++ /dev/null @@ -1,22 +0,0 @@ -{ - "name": "web-ui", - "private": true, - "version": "0.1.0", - "scripts": { - "dev": "next dev", - "build": "next build", - "start": "next start" - }, - "dependencies": { - "@evolution-sdk/evolution": "^0.3.30", - "next": "^15.3.1", - "react": "^19.1.0", - "react-dom": "^19.1.0" - }, - "devDependencies": { - "@types/node": "^24.5.2", - "@types/react": "^19.1.12", - "@types/react-dom": "^19.1.9", - "typescript": "^5.9.2" - } -} diff --git a/lazer/cardano/our-project/web-ui/tsconfig.json b/lazer/cardano/our-project/web-ui/tsconfig.json deleted file mode 100644 index 9f00b441..00000000 --- a/lazer/cardano/our-project/web-ui/tsconfig.json +++ /dev/null @@ -1,20 +0,0 @@ -{ - "compilerOptions": { - "target": "ES2022", - "lib": ["dom", "dom.iterable", "esnext"], - "allowJs": false, - "module": "esnext", - "moduleResolution": "Bundler", - "strict": true, - "noEmit": true, - "esModuleInterop": true, - "skipLibCheck": true, - "resolveJsonModule": true, - "isolatedModules": true, - "jsx": "preserve", - "incremental": true, - "plugins": [{ "name": "next" }] - }, - "include": ["next-env.d.ts", "**/*.ts", "**/*.tsx", ".next/types/**/*.ts"], - "exclude": ["node_modules"] -} From 3dd12cd27c8ab6f0f70149ca01d6bc39bc6f37b2 Mon Sep 17 00:00:00 2001 From: Lola Aimar Date: Sun, 22 Mar 2026 20:33:12 -0300 Subject: [PATCH 21/21] rename project --- lazer/cardano/{our-project => OSI}/README.md | 0 .../cardano/{our-project => OSI}/img/add_funds.png | Bin .../{our-project => OSI}/img/create_escrow.png | Bin lazer/cardano/{our-project => OSI}/img/pay_out.png | Bin lazer/cardano/{our-project => OSI}/img/web.png | Bin .../{our-project => OSI}/off-chain/.gitignore | 0 .../{our-project => OSI}/off-chain/README.md | 0 .../cardano/{our-project => OSI}/off-chain/bun.lock | 0 lazer/cardano/{our-project => OSI}/off-chain/e2e.ts | 0 lazer/cardano/{our-project => OSI}/off-chain/osi.ts | 0 .../{our-project => OSI}/off-chain/package.json | 0 .../off-chain/scripts/add-fund-validator-utxo.ts | 0 .../off-chain/scripts/create-validator-utxo.ts | 0 .../off-chain/scripts/evaluate-ogmios.ts | 0 .../off-chain/scripts/fetch-ada-usdt-update.ts | 0 .../off-chain/scripts/spend-validator-utxo.ts | 0 .../{our-project => OSI}/off-chain/tsconfig.json | 0 .../{our-project => OSI}/on-chain/.gitignore | 0 .../{our-project => OSI}/on-chain/aiken.lock | 0 .../{our-project => OSI}/on-chain/aiken.toml | 0 .../{our-project => OSI}/on-chain/lib/utils.ak | 0 .../{our-project => OSI}/on-chain/plutus.json | 0 .../{our-project => OSI}/on-chain/validators/osi.ak | 0 23 files changed, 0 insertions(+), 0 deletions(-) rename lazer/cardano/{our-project => OSI}/README.md (100%) rename lazer/cardano/{our-project => OSI}/img/add_funds.png (100%) rename lazer/cardano/{our-project => OSI}/img/create_escrow.png (100%) rename lazer/cardano/{our-project => OSI}/img/pay_out.png (100%) rename lazer/cardano/{our-project => OSI}/img/web.png (100%) rename lazer/cardano/{our-project => OSI}/off-chain/.gitignore (100%) rename lazer/cardano/{our-project => OSI}/off-chain/README.md (100%) rename lazer/cardano/{our-project => OSI}/off-chain/bun.lock (100%) rename lazer/cardano/{our-project => OSI}/off-chain/e2e.ts (100%) rename lazer/cardano/{our-project => OSI}/off-chain/osi.ts (100%) rename lazer/cardano/{our-project => OSI}/off-chain/package.json (100%) rename lazer/cardano/{our-project => OSI}/off-chain/scripts/add-fund-validator-utxo.ts (100%) rename lazer/cardano/{our-project => OSI}/off-chain/scripts/create-validator-utxo.ts (100%) rename lazer/cardano/{our-project => OSI}/off-chain/scripts/evaluate-ogmios.ts (100%) rename lazer/cardano/{our-project => OSI}/off-chain/scripts/fetch-ada-usdt-update.ts (100%) rename lazer/cardano/{our-project => OSI}/off-chain/scripts/spend-validator-utxo.ts (100%) rename lazer/cardano/{our-project => OSI}/off-chain/tsconfig.json (100%) rename lazer/cardano/{our-project => OSI}/on-chain/.gitignore (100%) rename lazer/cardano/{our-project => OSI}/on-chain/aiken.lock (100%) rename lazer/cardano/{our-project => OSI}/on-chain/aiken.toml (100%) rename lazer/cardano/{our-project => OSI}/on-chain/lib/utils.ak (100%) rename lazer/cardano/{our-project => OSI}/on-chain/plutus.json (100%) rename lazer/cardano/{our-project => OSI}/on-chain/validators/osi.ak (100%) diff --git a/lazer/cardano/our-project/README.md b/lazer/cardano/OSI/README.md similarity index 100% rename from lazer/cardano/our-project/README.md rename to lazer/cardano/OSI/README.md diff --git a/lazer/cardano/our-project/img/add_funds.png b/lazer/cardano/OSI/img/add_funds.png similarity index 100% rename from lazer/cardano/our-project/img/add_funds.png rename to lazer/cardano/OSI/img/add_funds.png diff --git a/lazer/cardano/our-project/img/create_escrow.png b/lazer/cardano/OSI/img/create_escrow.png similarity index 100% rename from lazer/cardano/our-project/img/create_escrow.png rename to lazer/cardano/OSI/img/create_escrow.png diff --git a/lazer/cardano/our-project/img/pay_out.png b/lazer/cardano/OSI/img/pay_out.png similarity index 100% rename from lazer/cardano/our-project/img/pay_out.png rename to lazer/cardano/OSI/img/pay_out.png diff --git a/lazer/cardano/our-project/img/web.png b/lazer/cardano/OSI/img/web.png similarity index 100% rename from lazer/cardano/our-project/img/web.png rename to lazer/cardano/OSI/img/web.png diff --git a/lazer/cardano/our-project/off-chain/.gitignore b/lazer/cardano/OSI/off-chain/.gitignore similarity index 100% rename from lazer/cardano/our-project/off-chain/.gitignore rename to lazer/cardano/OSI/off-chain/.gitignore diff --git a/lazer/cardano/our-project/off-chain/README.md b/lazer/cardano/OSI/off-chain/README.md similarity index 100% rename from lazer/cardano/our-project/off-chain/README.md rename to lazer/cardano/OSI/off-chain/README.md diff --git a/lazer/cardano/our-project/off-chain/bun.lock b/lazer/cardano/OSI/off-chain/bun.lock similarity index 100% rename from lazer/cardano/our-project/off-chain/bun.lock rename to lazer/cardano/OSI/off-chain/bun.lock diff --git a/lazer/cardano/our-project/off-chain/e2e.ts b/lazer/cardano/OSI/off-chain/e2e.ts similarity index 100% rename from lazer/cardano/our-project/off-chain/e2e.ts rename to lazer/cardano/OSI/off-chain/e2e.ts diff --git a/lazer/cardano/our-project/off-chain/osi.ts b/lazer/cardano/OSI/off-chain/osi.ts similarity index 100% rename from lazer/cardano/our-project/off-chain/osi.ts rename to lazer/cardano/OSI/off-chain/osi.ts diff --git a/lazer/cardano/our-project/off-chain/package.json b/lazer/cardano/OSI/off-chain/package.json similarity index 100% rename from lazer/cardano/our-project/off-chain/package.json rename to lazer/cardano/OSI/off-chain/package.json diff --git a/lazer/cardano/our-project/off-chain/scripts/add-fund-validator-utxo.ts b/lazer/cardano/OSI/off-chain/scripts/add-fund-validator-utxo.ts similarity index 100% rename from lazer/cardano/our-project/off-chain/scripts/add-fund-validator-utxo.ts rename to lazer/cardano/OSI/off-chain/scripts/add-fund-validator-utxo.ts diff --git a/lazer/cardano/our-project/off-chain/scripts/create-validator-utxo.ts b/lazer/cardano/OSI/off-chain/scripts/create-validator-utxo.ts similarity index 100% rename from lazer/cardano/our-project/off-chain/scripts/create-validator-utxo.ts rename to lazer/cardano/OSI/off-chain/scripts/create-validator-utxo.ts diff --git a/lazer/cardano/our-project/off-chain/scripts/evaluate-ogmios.ts b/lazer/cardano/OSI/off-chain/scripts/evaluate-ogmios.ts similarity index 100% rename from lazer/cardano/our-project/off-chain/scripts/evaluate-ogmios.ts rename to lazer/cardano/OSI/off-chain/scripts/evaluate-ogmios.ts diff --git a/lazer/cardano/our-project/off-chain/scripts/fetch-ada-usdt-update.ts b/lazer/cardano/OSI/off-chain/scripts/fetch-ada-usdt-update.ts similarity index 100% rename from lazer/cardano/our-project/off-chain/scripts/fetch-ada-usdt-update.ts rename to lazer/cardano/OSI/off-chain/scripts/fetch-ada-usdt-update.ts diff --git a/lazer/cardano/our-project/off-chain/scripts/spend-validator-utxo.ts b/lazer/cardano/OSI/off-chain/scripts/spend-validator-utxo.ts similarity index 100% rename from lazer/cardano/our-project/off-chain/scripts/spend-validator-utxo.ts rename to lazer/cardano/OSI/off-chain/scripts/spend-validator-utxo.ts diff --git a/lazer/cardano/our-project/off-chain/tsconfig.json b/lazer/cardano/OSI/off-chain/tsconfig.json similarity index 100% rename from lazer/cardano/our-project/off-chain/tsconfig.json rename to lazer/cardano/OSI/off-chain/tsconfig.json diff --git a/lazer/cardano/our-project/on-chain/.gitignore b/lazer/cardano/OSI/on-chain/.gitignore similarity index 100% rename from lazer/cardano/our-project/on-chain/.gitignore rename to lazer/cardano/OSI/on-chain/.gitignore diff --git a/lazer/cardano/our-project/on-chain/aiken.lock b/lazer/cardano/OSI/on-chain/aiken.lock similarity index 100% rename from lazer/cardano/our-project/on-chain/aiken.lock rename to lazer/cardano/OSI/on-chain/aiken.lock diff --git a/lazer/cardano/our-project/on-chain/aiken.toml b/lazer/cardano/OSI/on-chain/aiken.toml similarity index 100% rename from lazer/cardano/our-project/on-chain/aiken.toml rename to lazer/cardano/OSI/on-chain/aiken.toml diff --git a/lazer/cardano/our-project/on-chain/lib/utils.ak b/lazer/cardano/OSI/on-chain/lib/utils.ak similarity index 100% rename from lazer/cardano/our-project/on-chain/lib/utils.ak rename to lazer/cardano/OSI/on-chain/lib/utils.ak diff --git a/lazer/cardano/our-project/on-chain/plutus.json b/lazer/cardano/OSI/on-chain/plutus.json similarity index 100% rename from lazer/cardano/our-project/on-chain/plutus.json rename to lazer/cardano/OSI/on-chain/plutus.json diff --git a/lazer/cardano/our-project/on-chain/validators/osi.ak b/lazer/cardano/OSI/on-chain/validators/osi.ak similarity index 100% rename from lazer/cardano/our-project/on-chain/validators/osi.ak rename to lazer/cardano/OSI/on-chain/validators/osi.ak