UNPKG

@jup-ag/goosefx-ssl-sdk

Version:

SDK for interacting with GooseFX Single-sided Liquidity pools

568 lines (540 loc) 667 kB
"use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { newObj[key] = obj[key]; } } } newObj.default = obj; return newObj; } }var __defProp = Object.defineProperty; var __export = (target, all) => { for (var name3 in all) __defProp(target, name3, { get: all[name3], enumerable: true }); }; // src/layouts/controller.ts var _bufferlayout = require('@solana/buffer-layout'); var lo = _interopRequireWildcard(_bufferlayout); var lo2 = _interopRequireWildcard(_bufferlayout); var lo3 = _interopRequireWildcard(_bufferlayout); var lo4 = _interopRequireWildcard(_bufferlayout); var lo5 = _interopRequireWildcard(_bufferlayout); var _bufferlayoututils = require('@solana/buffer-layout-utils'); var CONTROLLER_LAYOUT = lo.struct([ lo.blob(8, "sighash"), lo.blob(32, "seed"), lo.u8("bump"), _bufferlayoututils.publicKey.call(void 0, "admin"), lo.u8("suspended"), lo.u8("decimals"), _bufferlayoututils.publicKey.call(void 0, "mint"), lo.blob(5, "padding"), _bufferlayoututils.u64.call(void 0, "dailyReward"), _bufferlayoututils.u64.call(void 0, "totalStakingShare"), _bufferlayoututils.u64.call(void 0, "stakingBalance"), _bufferlayoututils.u64.call(void 0, "lastDistributionTime"), lo.u16("withdrawFee"), lo.blob(254, "padding") ]); if (CONTROLLER_LAYOUT.span != 392 + 8) { throw new Error("CONTROLLER LAYOUT SIZE MISMATCH"); } // src/layouts/liquidityAccount.ts var LIQUIDITY_ACCOUNT_LAYOUT = lo2.struct([ lo2.blob(8, "sighash"), _bufferlayoututils.publicKey.call(void 0, "mint"), lo2.u8("bump"), lo2.blob(7), _bufferlayoututils.u64.call(void 0, "share"), _bufferlayoututils.u64.call(void 0, "ptMinted"), _bufferlayoututils.u64.call(void 0, "amountDeposited"), lo2.blob(248, "padding") ]); if (LIQUIDITY_ACCOUNT_LAYOUT.span != 312 + 8) { throw new Error("LIQUIDITY_ACCOUNT LAYOUT SIZE MISMATCH"); } // src/layouts/pair.ts var ORACLE_ELEMENT_LAYOUT = lo3.struct([ _bufferlayoututils.publicKey.call(void 0, "address"), _bufferlayoututils.bool.call(void 0, "inverse") ]); var ORACLE_LAYOUT = lo3.struct([ lo3.seq(ORACLE_ELEMENT_LAYOUT, 4, "elements"), lo3.blob(4, "padding"), _bufferlayoututils.u64.call(void 0, "n"), lo3.blob(8 * 8) ]); var PAIR_LAYOUT = lo3.struct([ lo3.blob(8, "sighash"), _bufferlayoututils.publicKey.call(void 0, "controller"), lo3.seq(_bufferlayoututils.publicKey.call(void 0, "mint"), 2, "mints"), lo3.blob(8), lo3.seq(ORACLE_LAYOUT, 5, "oracles"), _bufferlayoututils.u64.call(void 0, "nOracle"), lo3.u8("A"), lo3.seq(lo3.u8(), 2, "feeRates"), lo3.blob(5), _bufferlayoututils.u64.call(void 0, "maxDelay"), _bufferlayoututils.u64.call(void 0, "confidence"), _bufferlayoututils.publicKey.call(void 0, "balancer"), lo3.u16("excessiveConfiscateRate"), _bufferlayoututils.publicKey.call(void 0, "feeCollector"), lo3.seq(lo3.u16(), 2, "platformFeeRate"), lo3.blob(18), lo3.seq(_bufferlayoututils.u128.call(void 0, "volumes"), 2, "volumes"), lo3.blob(80), _bufferlayoututils.bool.call(void 0, "enableRebalanceSwap"), lo3.blob(151, "padding") ]); if (PAIR_LAYOUT.span != 1528 + 8) { throw new Error("PAIR LAYOUT SIZE MISMATCH"); } // src/layouts/ssl.ts var SSL_LAYOUT = lo4.struct([ lo4.blob(8, "sighash"), _bufferlayoututils.publicKey.call(void 0, "controller"), _bufferlayoututils.publicKey.call(void 0, "mint"), lo4.u8("decimals"), lo4.u8("bump"), lo4.u8("ptBump"), _bufferlayoututils.bool.call(void 0, "suspended"), _bufferlayoututils.publicKey.call(void 0, "cranker"), lo4.blob(4), _bufferlayoututils.u64.call(void 0, "weight"), lo4.blob(8), _bufferlayoututils.u64.call(void 0, "swappedLiabilityNative"), _bufferlayoututils.u64.call(void 0, "totalShare"), lo4.blob(256, "padding") ]); if (SSL_LAYOUT.span != 392 + 8) { throw new Error(`SSL LAYOUT SIZE MISMATCH", ${SSL_LAYOUT.span}, ${SSL_LAYOUT.span - 8}`); } // src/layouts/stakingAccount.ts var STAKING_ACCOUNT_LAYOUT = lo5.struct([ lo5.blob(8, "sighash"), _bufferlayoututils.publicKey.call(void 0, "controller"), lo5.u8("bump"), lo5.blob(7), _bufferlayoututils.u64.call(void 0, "share"), _bufferlayoututils.u64.call(void 0, "amountStaked"), lo5.blob(256, "padding") ]); if (STAKING_ACCOUNT_LAYOUT.span != 312 + 8) { throw new Error("STAKING_ACCOUNT LAYOUT SIZE MISMATCH"); } // src/public/swap.ts var _anchor = require('@project-serum/anchor'); var _spltoken = require('@solana/spl-token'); var _web3js = require('@solana/web3.js'); var _buffer = require('buffer'); // src/constants/swap.ts var ADDRESSES = { MAINNET: { CONTROLLER_PROGRAM_ID: new (0, _web3js.PublicKey)("8KJx48PYGHVC9fxzRRtYp4x4CM2HyYCm2EjVuAP4vvrx"), SSL_PROGRAM_ID: new (0, _web3js.PublicKey)("7WduLbRfYhTJktjLw5FDEyrqoEv61aTTCuGAetgLjzN5"), GFX_CONTROLLER: new (0, _web3js.PublicKey)("8CxKnuJeoeQXFwiG6XiGY2akBjvJA5k3bE52BfnuEmNQ") }, DEVNET: { CONTROLLER_PROGRAM_ID: new (0, _web3js.PublicKey)("3Gwyhoudx8XgYry8dzKQ2GGsofkUdm7VZUvddHxchL3x"), SSL_PROGRAM_ID: new (0, _web3js.PublicKey)("JYe7AcuQ7CqhkGvchJGvSKF8ei41FuDKb1h47qkbFNf"), GFX_CONTROLLER: new (0, _web3js.PublicKey)("ApkmzBaTPUAeVj3QuqDcz6iLE6xZSLd29nke4McqrKw5") } }; // src/idl/gfx_ssl_idl.json var gfx_ssl_idl_exports = {}; __export(gfx_ssl_idl_exports, { accounts: () => accounts, default: () => gfx_ssl_idl_default, errors: () => errors, instructions: () => instructions, name: () => name, version: () => version }); var version = "0.1.0"; var name = "contract"; var instructions = [ { name: "createLiquidityAccount", accounts: [ { name: "controller", isMut: false, isSigner: false }, { name: "ssl", isMut: true, isSigner: false }, { name: "liquidityAccount", isMut: true, isSigner: false }, { name: "userWallet", isMut: true, isSigner: true }, { name: "systemProgram", isMut: false, isSigner: false }, { name: "rent", isMut: false, isSigner: false } ], args: [] }, { name: "deposit", accounts: [ { name: "controller", isMut: false, isSigner: false }, { name: "ssl", isMut: true, isSigner: false }, { name: "liquidityAccount", isMut: true, isSigner: false }, { name: "rtVault", isMut: true, isSigner: false }, { name: "userRtAta", isMut: true, isSigner: false }, { name: "userWallet", isMut: false, isSigner: true }, { name: "tokenProgram", isMut: false, isSigner: false } ], args: [ { name: "amount", type: "u64" } ] }, { name: "withdraw", accounts: [ { name: "controller", isMut: false, isSigner: false }, { name: "ssl", isMut: true, isSigner: false }, { name: "liquidityAccount", isMut: true, isSigner: false }, { name: "rtVault", isMut: true, isSigner: false }, { name: "userRtAta", isMut: true, isSigner: false }, { name: "userWallet", isMut: false, isSigner: true }, { name: "tokenProgram", isMut: false, isSigner: false } ], args: [ { name: "withdrawPercent", type: "u64" } ] }, { name: "mintPt", accounts: [ { name: "controller", isMut: false, isSigner: false }, { name: "ssl", isMut: true, isSigner: false }, { name: "rtVault", isMut: true, isSigner: false }, { name: "liquidityAccount", isMut: true, isSigner: false }, { name: "ptMint", isMut: true, isSigner: false }, { name: "userPtAta", isMut: true, isSigner: false }, { name: "userWallet", isMut: false, isSigner: true }, { name: "tokenProgram", isMut: false, isSigner: false } ], args: [ { name: "amountToMint", type: "u64" } ] }, { name: "burnPt", accounts: [ { name: "controller", isMut: false, isSigner: false }, { name: "ssl", isMut: true, isSigner: false }, { name: "liquidityAccount", isMut: true, isSigner: false }, { name: "ptMint", isMut: true, isSigner: false }, { name: "userPtAta", isMut: true, isSigner: false }, { name: "userWallet", isMut: false, isSigner: true }, { name: "tokenProgram", isMut: false, isSigner: false } ], args: [ { name: "amountToBurn", type: "u64" } ] }, { name: "swap", accounts: [ { name: "controller", isMut: false, isSigner: false }, { name: "pair", isMut: true, isSigner: false }, { name: "sslIn", isMut: true, isSigner: false }, { name: "sslOut", isMut: true, isSigner: false }, { name: "liabilityVaultIn", isMut: true, isSigner: false }, { name: "swappedLiabilityVaultIn", isMut: true, isSigner: false }, { name: "liabilityVaultOut", isMut: true, isSigner: false }, { name: "swappedLiabilityVaultOut", isMut: true, isSigner: false }, { name: "userInAta", isMut: true, isSigner: false }, { name: "userOutAta", isMut: true, isSigner: false }, { name: "feeCollectorAta", isMut: true, isSigner: false }, { name: "userWallet", isMut: false, isSigner: true }, { name: "feeCollector", isMut: false, isSigner: false }, { name: "tokenProgram", isMut: false, isSigner: false } ], args: [ { name: "amountIn", type: "u64" }, { name: "minOut", type: "u64" } ] } ]; var accounts = []; var errors = [ { code: 6e3, name: "Suspended", msg: "[G100] The pool is suspended" }, { code: 6001, name: "NotAdmin", msg: "[G101] Not admin" }, { code: 6002, name: "MintsNotSorted", msg: "[G102] Mints are not sorted" }, { code: 6003, name: "WrongRTMint", msg: "[G103] The risk token mint is wrong" }, { code: 6004, name: "OracleNotPresent", msg: "[G104] The required oracle is not present" }, { code: 6005, name: "OracleNotHealthyStatus", msg: "[G105] The oracle is not in a healthy state (status)" }, { code: 6006, name: "OracleNotHealthyDelay", msg: "[G106] The oracle is not in a healthy state (delay)" }, { code: 6007, name: "OracleNotHealthyConfidence", msg: "[G107] The oracle is not in a healthy state (confidence)" }, { code: 6008, name: "SlippageTooLarge", msg: "[G108] SlippageTooLarge" }, { code: 6009, name: "PercentageOutOfRange", msg: "[G109] Percentage out of range" }, { code: 6010, name: "SwapIXNotInOrder", msg: "[G110] Swap instruction is not executed in order" }, { code: 6011, name: "MintNotMatchPair", msg: "[G111] Mint does not match the pair" }, { code: 6012, name: "FeeCollectorIncorrect", msg: "[G112] Fee collector account incorrect" } ]; var gfx_ssl_idl_default = { version, name, instructions, accounts, errors }; // src/public/utils.ts function findAssociatedTokenAddress(walletAddress, tokenMintAddress) { return _web3js.PublicKey.findProgramAddressSync( [ walletAddress.toBuffer(), _spltoken.TOKEN_PROGRAM_ID.toBuffer(), tokenMintAddress.toBuffer() ], _spltoken.ASSOCIATED_TOKEN_PROGRAM_ID )[0]; } // src/wasm/gfx_ssl_wasm_data.js var data = "AGFzbQEAAAABx4OAgAA6YAAAYAABf2ABfwBgAX8Bf2ABfwF+YAF/AXxgAn9/AGACf38Bf2ADf39/AGADf39/AX9gBH9/f38AYAR/f39/AX9gBX9/f39/AGAFf39/f38Bf2AGf39/f39/AGAGf39/f39/AX9gB39/f39/f38AYAd/f39/f39/AX9gDn9/f39/f39+fn5+f35/AGAHf39/f39/fgBgB39/f39/f34Bf2AJf39/f39/fn5/AGAJf39/f39/fn5+AGAHf39/f39+fwBgCH9/f39/fn5/AX9gBX9/f39+AGAGf39/f35/AX9gC39/f39+fn5+f35/AGAEf39/fgBgBH9/f34Bf2AGf39/fn5/AGADf39+AGADf39+AX9gBX9/fn5/AX9gBX9/fX9/AGAFf398f38AYAJ/fgBgAn9+AX9gA39+fwBgCH9+f35/f39/AGAJf35/fn9/f39/AGADf35+AGAEf35+fwBgBH9+fn4AYAV/fn5+fgBgBH99f38AYAJ/fABgAn98AX9gBH98f38AYAR/fH9/AX9gCX98fHx8fHx8fwBgA35/fwF/YAJ+fgF+YAJ+fgF8YAF8AX9gAXwBfGACfH8BfGACfHwBfAKdjYCAADEDd2JnFV9fd2JpbmRnZW5fc3RyaW5nX25ldwAHA3diZxVfX3diZ19pbnN0cnVjdGlvbl9uZXcAAwN3YmcVX193YmluZGdlbl9udW1iZXJfbmV3ADYDd2JnGl9fd2JpbmRnZW5fb2JqZWN0X2Ryb3BfcmVmAAIDd2JnFV9fd2JpbmRnZW5fc3RyaW5nX2dldAAGA3diZxdfX3diaW5kZ2VuX2lzX3VuZGVmaW5lZAADA3diZxVfX3diaW5kZ2VuX251bWJlcl9nZXQABgN3YmcQX193YmdfcHVia2V5X25ldwADA3diZxxfX3diZ19kZWJ1Z183MzM5NWNhNTY2OTEyMGFlAAIDd2JnHF9fd2JnX2Vycm9yXzExODliNWRlNmRkMWI4MDgAAgN3YmcbX193YmdfaW5mb18zZjFkODYzNmJhNTgxMjhmAAIDd2JnGl9fd2JnX2xvZ18xOGZmZGZlNWE0MWJkNzgxAAIDd2JnG19fd2JnX3dhcm5fZGZmYTc0Y2FiNzhkMzUzMQACA3diZxpfX3diZ19uZXdfYWJkYTc2ZTg4M2JhOGE1ZgABA3diZxxfX3diZ19zdGFja182NTgyNzlmZTQ0NTQxY2Y2AAYDd2JnHF9fd2JnX2Vycm9yX2Y4NTE2NjdhZjcxYmNmYzYABgN3YmcbX193Ymdfc2VsZl83ZWVkZTFmNDQ4OGJmMzQ2AAEDd2JnHV9fd2JnX2NyeXB0b19jOTA5ZmI0MjhkY2JkZGI2AAMDd2JnH19fd2JnX21zQ3J5cHRvXzUxMWVlZmVmYmZjNzBhZTQAAwN3YmctX193Ymdfc3RhdGljX2FjY2Vzc29yX01PRFVMRV9lZjNhYTJlYjI1MTE1OGE1AAEDd2JnHl9fd2JnX3JlcXVpcmVfOTAwZDVjMzk4NGZlNzcwMwAJA3diZyZfX3diZ19nZXRSYW5kb21WYWx1ZXNfMzA3MDQ5MzQ1ZDBiZDg4YwADA3diZyZfX3diZ19nZXRSYW5kb21WYWx1ZXNfY2QxNzU5MTU1MTFmNzA1ZQAGA3diZyVfX3diZ19yYW5kb21GaWxsU3luY184NWIzZjRjNTJjNTZjMzEzAAgDd2JnGl9fd2JnX25ld19iMzNlMWNlNjM5MDAwNjhmAAEDd2JnFl9fd2JpbmRnZW5faXNfZnVuY3Rpb24AAwN3YmcUX193YmluZGdlbl9pc19vYmplY3QAAwN3YmcbX193YmdfbmV4dF8wYjk1ODUyZGIzYTBmNTY4AAMDd2JnG19fd2JnX25leHRfMzJjZTQ2MDNlMTlhOWFkOAADA3diZxtfX3diZ19kb25lX2IyYjIzYWRjYWZkNmQzNzIAAwN3YmccX193YmdfdmFsdWVfOWJjMzI3MWYyNTU2YTYyMQADA3diZx9fX3diZ19pdGVyYXRvcl83ZTBhYzY5N2ZhYTg3MmYzAAEDd2JnGl9fd2JnX2dldF8wMjk5OWJiMmNhZWVmZjYxAAcDd2JnG19fd2JnX2NhbGxfODc1ZDRlYTlhYmJlYzg4ZgAHA3diZyRfX3diZ19uZXd3aXRobGVuZ3RoXzhmZjY5MTE4YWIyMzMxOWIAAwN3YmcaX193Ymdfc2V0XzVlYWNkZjU0YzlhYWZiZGYACAN3YmceX193YmdfaXNBcnJheV9jZjY4MjliMWYyNWJhMGYxAAMDd2JnG19fd2JnX3B1c2hfMDllYmNiYmQ2ZmIyN2FlMQAHA3diZx1fX3diZ192YWx1ZXNfYTI2NzU3NWZhN2I5OTA3NQADA3diZx1fX3diZ19idWZmZXJfOGRhYmMzYTRjY2E3ZTA2NQADA3diZxpfX3diZ19uZXdfODFiZGRkYmUyM2E0Yzk5MAADA3diZxpfX3diZ19zZXRfNTc3OGIxNTJhN2VjMjU4YwAIA3diZx1fX3diZ19sZW5ndGhfNjFmMTk0OWFhN2Y2ZmQzOQADA3diZyxfX3diZ19pbnN0YW5jZW9mX1VpbnQ4QXJyYXlfOGE4NTM3ZjQ2ZTA1NjQ3NAADA3diZyRfX3diZ19uZXd3aXRobGVuZ3RoXzZiMmIzMmVmNWJmYzlhNTUAAwN3YmcfX193Ymdfc3ViYXJyYXlfMjQ3MDkyZTU5YjU2MzM5YQAJA3diZxdfX3diaW5kZ2VuX2RlYnVnX3N0cmluZwAGA3diZxBfX3diaW5kZ2VuX3Rocm93AAYDd2JnEV9fd2JpbmRnZW5fbWVtb3J5AAEDuYaAgAC3BggICgwbEggIBwYDCAgIBgcHDAoKCg4oBgcICAgGCAYICgYKBgcKCAwHAgwKCAYGBgYICgcIBggICAoJCTIxDwYGDCwGCwgIBgcOBgoKCg4GCQ4xCQYNLwcIGQgnCAcMChUMCQoDDgcHCAgAFwcGBjcZAwYGDggGDBMGBwMOBwYCAwceBgYHBhYIAwoGCgcIAgoKDQcCBgoHBhA1CBwJCQkJCQcUBxgQBgcRCA0HCAoICAYGAzUOBwkHCQcCBwcHBwkHBwcJBwYHBgYHBgcJBhoIDR8zBwcGBzcIIQkGHQgJKQYGCAYGAgcIAgYGAQYGCAYHByAHBwcGBwcGCQcDBgcCCQYHCAgdCgYDKQgIBiUGCAYIBwcGDAcHBgIIBwcGBi4ICAMHBgcGHwYBAwICBwMGBggGBggKCAYIBgYIAioJBwYGBgMHBgYGAwcIBwYHBgYKCgoKCg4KBwcDBwcHBgkMBgICBgcCCAYGAwgGCAgKAggsBgkJCQcHAyYMAwYHBysIBgIGBwYIKwc4AgcICAgGBgYIBwcIBgwGCAgHBwcGBwcHBwcHKioHBgYGCAcHBgMCBgYCCQkICQkCCQgsCQklCQkHLAkJCQcsCwYIKwoABggGBgcGBwYHBwgsBwIIAAYDAgIDNAcHBwcIBwcHBwcHCgcHJCQuLi4uBgYGAgIIAgIDAiQIDAgKBiQEBAUFBQUDBgcHBwYCAwcBBAgBCAIGBwgJAQgPBwwjDQwNDCIGAgICAgoCBwICBgYJBgMDOQYDBgIHCQc3BwcDBwcHAgsHBwMHBgcHAgcHAgMHBgcHAgcHBwcHBgcGBwMHCAcHAiQHBwcHBwYDAgMKBwMDAwYHBgcIBwoIAwcDCQgICAkDAwYDBwcHCAkJBwcDBwcHBwYHBwcHCAcIBwcHBwcGAAAHBwcDAwMDBwYGBgYGBgYGCAgIBgYGCQcHBwcJCQkJBwcHBwcHBwcHAgICAgIGBgMHBwcHBwMDAgYGBgYBBgYGAwMABAgDAwMDAzc3BAMDBAMBBwEEBAQAAwEBAw0LCQcDAwQEAwICAgICAgICAgICAgICAgIGAgACAgICAgICAgICAgICAgIEh4CAgAABcAH2AfYBBYOAgIAAAQASBomAgIAAAX8BQYCAwAALB56QgIAASwZtZW1vcnkCABlfX3diZ19vcmFjbGVyZWdpc3RyeV9mcmVlAOUDEm9yYWNsZXJlZ2lzdHJ5X25ldwDLBBlvcmFjbGVyZWdpc3RyeV9hZGRfb3JhY2xlAJYBFV9fd2JnX3N3YXByZXN1bHRfZnJlZQCvBB5fX3diZ19nZXRfc3dhcHJlc3VsdF9hbW91bnRfaW4AzAQeX193Ymdfc2V0X3N3YXByZXN1bHRfYW1vdW50X2luALsEHV9fd2JnX2dldF9zd2FwcmVzdWx0X2ZlZV9wYWlkALwEHV9fd2JnX3NldF9zd2FwcmVzdWx0X2ZlZV9wYWlkAKUEH19fd2JnX2dldF9zd2FwcmVzdWx0X2Ftb3VudF9vdXQAvQQfX193Ymdfc2V0X3N3YXByZXN1bHRfYW1vdW50X291dACmBCFfX3diZ19nZXRfc3dhcHJlc3VsdF9wcmljZV9pbXBhY3QAvgQhX193Ymdfc2V0X3N3YXByZXN1bHRfcHJpY2VfaW1wYWN0AKcEH19fd2JnX2dldF9zd2FwcmVzdWx0X3N3YXBfcHJpY2UAvwQfX193Ymdfc2V0X3N3YXByZXN1bHRfc3dhcF9wcmljZQCoBCBfX3diZ19nZXRfc3dhcHJlc3VsdF9pbnN0YV9wcmljZQDABCBfX3diZ19zZXRfc3dhcHJlc3VsdF9pbnN0YV9wcmljZQCpBCFfX3diZ19nZXRfc3dhcHJlc3VsdF9vcmFjbGVfcHJpY2UAwQQhX193Ymdfc2V0X3N3YXByZXN1bHRfb3JhY2xlX3ByaWNlAKoEGV9fd2JnX2dldF9zd2FwcmVzdWx0X2l0ZXIAwgQZX193Ymdfc2V0X3N3YXByZXN1bHRfaXRlcgCrBARzd2FwADYWX193YmdfdHJhbnNhY3Rpb25fZnJlZQCxAhd0cmFuc2FjdGlvbl9jb25zdHJ1Y3RvcgClAhN0cmFuc2FjdGlvbl9tZXNzYWdlALEBF3RyYW5zYWN0aW9uX21lc3NhZ2VEYXRhAPcCEnRyYW5zYWN0aW9uX3ZlcmlmeQDzAhd0cmFuc2FjdGlvbl9wYXJ0aWFsU2lnbgDhARR0cmFuc2FjdGlvbl9pc1NpZ25lZAC6AhN0cmFuc2FjdGlvbl90b0J5dGVzAMgDFXRyYW5zYWN0aW9uX2Zyb21CeXRlcwDSAhJfX3diZ19rZXlwYWlyX2ZyZWUAvAMTa2V5cGFpcl9jb25zdHJ1Y3RvcgDbAg9rZXlwYWlyX3RvQnl0ZXMAuQIRa2V5cGFpcl9mcm9tQnl0ZXMAwwIOa2V5cGFpcl9wdWJrZXkA3AIWX193YmdfaW5zdHJ1Y3Rpb25fZnJlZQC0Ax9zeXN0ZW1pbnN0cnVjdGlvbl9jcmVhdGVBY2NvdW50AIsCJ3N5c3RlbWluc3RydWN0aW9uX2NyZWF0ZUFjY291bnRXaXRoU2VlZADWARhzeXN0ZW1pbnN0cnVjdGlvbl9hc3NpZ24ApgIgc3lzdGVtaW5zdHJ1Y3Rpb25fYXNzaWduV2l0aFNlZWQAggIac3lzdGVtaW5zdHJ1Y3Rpb25fdHJhbnNmZXIApAIic3lzdGVtaW5zdHJ1Y3Rpb25fdHJhbnNmZXJXaXRoU2VlZADUARpzeXN0ZW1pbnN0cnVjdGlvbl9hbGxvY2F0ZQC/AiJzeXN0ZW1pbnN0cnVjdGlvbl9hbGxvY2F0ZVdpdGhTZWVkAIACJHN5c3RlbWluc3RydWN0aW9uX2NyZWF0ZU5vbmNlQWNjb3VudAC3AiVzeXN0ZW1pbnN0cnVjdGlvbl9hZHZhbmNlTm9uY2VBY2NvdW50AKcCJnN5c3RlbWluc3RydWN0aW9uX3dpdGhkcmF3Tm9uY2VBY2NvdW50AI4CJ3N5c3RlbWluc3RydWN0aW9uX2F1dGhvcml6ZU5vbmNlQWNjb3VudACQAhJfX3diZ19tZXNzYWdlX2ZyZWUAywIiX193YmdfZ2V0X21lc3NhZ2VfcmVjZW50X2Jsb2NraGFzaADgAiJfX3diZ19zZXRfbWVzc2FnZV9yZWNlbnRfYmxvY2toYXNoAJsCEV9fd2JnX3B1YmtleV9mcmVlALEEEnB1YmtleV9jb25zdHJ1Y3RvcgCVAg9wdWJrZXlfdG9TdHJpbmcA8gIQcHVia2V5X2lzT25DdXJ2ZQCqAw1wdWJrZXlfZXF1YWxzAK8DDnB1YmtleV90b0J5dGVzAMoCFXB1YmtleV9jcmVhdGVXaXRoU2VlZACoARtwdWJrZXlfY3JlYXRlUHJvZ3JhbUFkZHJlc3MA3wEZcHVia2V5X2ZpbmRQcm9ncmFtQWRkcmVzcwCgAxNzb2xhbmFfcHJvZ3JhbV9pbml0AIAEEGhhc2hfY29uc3RydWN0b3IAlgINaGFzaF90b1N0cmluZwD0AgtoYXNoX2VxdWFscwCwAwxoYXNoX3RvQnl0ZXMAkgMXX193YmdfaW5zdHJ1Y3Rpb25zX2ZyZWUA7gIYaW5zdHJ1Y3Rpb25zX2NvbnN0cnVjdG9yAM4EEWluc3RydWN0aW9uc19wdXNoAKoBD19fd2JnX2hhc2hfZnJlZQCyBBFfX3diaW5kZ2VuX21hbGxvYwCSBBJfX3diaW5kZ2VuX3JlYWxsb2MA1AQfX193YmluZGdlbl9hZGRfdG9fc3RhY2tfcG9pbnRlcgDMBQ9fX3diaW5kZ2VuX2ZyZWUAhQUUX193YmluZGdlbl9leG5fc3RvcmUAoAUJ8IOAgAABAEEBC/UBxgbNAqsBxwacBpsGmgatBKwErQbPBc0F0AXOBcgG4wPqBJAFkwPTBcUD1AWCBeEE7wPuAdQDyQb3BJQDgQWXBJYFjAPiBPAD7wHKBuYD5wHNA84C3gPLBtcFmAXMBtwD2wPjBPID8AGHBKAGnwaeBtUFzQa1BeQCzgaKBo0GiwaMBokGzwbnA+kBzgPkBPMD8gHVA9AG9APRBsUCxAKPBrAGsQaZBY4GkgXuBMoExgXSBsUEmgXEBNMGngT1BN0EhwPZBNsE1wTsBOUE3gTcBN8E2gTUBpgE1QazBtYG1wbZBdsF3QWcBcoF2QaEBZkEmgTcBdoFjQSeBYoEnwW0BN8C2gb9AdsG5APt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