UNPKG

@coolwallet/sol

Version:
128 lines (124 loc) 37.1 kB
"use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); Object.defineProperty(exports, "__esModule", { value: true }); exports.VERSION_PREFIX_MASK = exports.TOKEN_PROGRAM_ID = exports.TOKEN_2022_PROGRAM_ID = exports.SYSVAR_STAKE_HISTORY_PUBKEY = exports.SYSVAR_RENT_PUBKEY = exports.SYSVAR_CLOCK_PUBKEY = exports.SYSTEM_PROGRAM_ID = exports.STAKE_PROGRAM_ID = exports.STAKE_CONFIG_ID = exports.SIGNATURE_LENGTH_IN_BYTES = exports.SCRIPT = exports.PUBLIC_KEY_LENGTH = exports.PADDING_PUBLICKEY = exports.PACKET_DATA_SIZE = exports.LAMPORTS_PER_SOL = exports.COMPUTE_BUDGET_PROGRAM_ID = exports.COIN_TYPE = exports.ASSOCIATED_TOKEN_PROGRAM_ID = void 0; var _bs = _interopRequireDefault(require("bs58")); var SCRIPT = exports.SCRIPT = { TRANSFER: { script: "03000002C70700000001F5CAA0C70003CAAC170003CAAC570004CAAC5700241AAC57C044042D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D1507C005CAAC5700441AAC57C064042D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D1507C005CAAC5700641AAC57C084042D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D1507C005CAAC5700841AAC57C0A4042D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D1507C005CAAC5700A4CAAC5700C4CC071001CAAC1700E4CAAC1700E5CAAC1700E6CAAC1700E7CAAC1700E8CAACC700E904CAACC700ED08DC07C003534F4C1AAC17C0E70B00BAAC5F6C040804DDF097001AAC17C0E70B01BAAC5F6C240804DDF09700250F00BAACCECCED08080F10DAE097C009250E00D207CC05065052455353425554546F4E", signature: "304502201feef74de887b6d8513f56371cebf5e9d7f05e2ddbef25eb6dd91cd088910018022100d4afd1ea9d5f9ae142cdab5419e8c0974f10651376af03a141a26e49b08691dc".padStart(144, '0'), get scriptWithSignature() { return this.script + this.signature; } }, TRANSFER_WITH_COMPUTE_BUDGET: { script: "03000002C70700000001F5CAA0C70003CAAC170003CAAC570004CAAC5700241AAC57C044042D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D1507C005CAAC5700441AAC57C064042D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D1507C005CAAC5700641AAC57C084042D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D1507C005CAAC5700841AAC57C0A4042D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D1507C005CAAC5700A4CAAC5700C4CC071003CAAC1700E4CAAC1700E5CAAC1700E6CAAC1700E7CAACC700E808CAAC1700F0CAAC1700F1CAAC1700F2CAAC1700F3CAACC700F404CAAC1700F8CAAC1700F9CAAC1700FACAAC1700FBCAAC1700FCCAACC700FD04CAADC700010108DC07C003534F4C1AAC17C0FB0B00BAAC5F6C040804DDF097001AAC17C0FB0B01BAAC5F6C240804DDF09700250F00BAADCECC010108080F10DAE097C009250E00D207CC05065052455353425554546F4E", signature: "3044022032851d9ca464de5ae92c063f33ada384fa0dee27d6e3d469197a367ef9cc9cbe0220137ffa77407186912ffbb5fd74529b3818c7e8fa1d4eb13d4a924a44cb7caaf9".padStart(144, '0'), get scriptWithSignature() { return this.script + this.signature; } }, SMART_CONTRACT: { script: "03000002C70700000001F5CAA09700DC07C003534F4CD207C005534D415254D207CC05065052455353425554546F4E", signature: "3045022100AFECB6EECB35BA13D924D61C3C6C468017CAE31835E59A6722CCF75E68CF788202207252A4E2777E8B289F8AE7902D0BEF521859A8C6077B2209AB7BD704C3899921".padStart(144, '0'), get scriptWithSignature() { return this.script + this.signature; } }, SPL_TOKEN: { script: "03000002C70700000001F5CAA0C70003CAAC170003CAAC570004CAAC570024CAAC570044CAAC5700641AAC57C084042D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D1507C005CAAC5700841AAC57C0A4042D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D1507C005CAAC5700A4CAAC5700C4CC071001CAAC1700E4CAAC1700E5CAACC700E604CAAC1700EACAAC1700EBCAACC700EC08CAAC1700F4DC07C003534F4C11ACC7CDF52904011E1507C004CC0F104012AC17C0F60401071507C002FF00B5AC1700F6CAACBF00F7DEF09700250F00BAAC5F6C240804DDF09700250F00BAACCECCEC08080F1012AC17C0F50400141507C002FF00B5AC1700F5DAE097B0250E00D207CC05065052455353425554546F4E", signature: "30450221008ca60fc77d2ab62548366000044c4972ae2f6cca5716472bb78483cc5064cb7b022075ad4281dc8cded2139b5cd414305d10c55c2625c9dae47ec0c5a113e8752551".padStart(144, '0'), get scriptWithSignature() { return this.script + this.signature; } }, SPL_TOKEN_WITH_COMPUTE_BUDGET: { script: "03000002C70700000001F5CAA0C70003CAAC170003CAAC570004CAAC570024CAAC570044CAAC5700641AAC57C084042D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D1507C005CAAC5700841AAC57C0A4042D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D1507C005CAAC5700A4CAAC5700C4CC071003CAAC1700E4CAAC1700E5CAAC1700E6CAAC1700E7CAACC700E808CAAC1700F0CAAC1700F1CAAC1700F2CAAC1700F3CAACC700F404CAAC1700F8CAAC1700F9CAACC700FA04CAAC1700FECAAC1700FFCAADC700010008CAAD17000108DC07C003534F4C11ADC7CD0109290401321507C004CC0F104012AD17C0010A0401071507C002FF00B5AD1700010ACAADBF00010BDEF09700250F00BAAC5F6C240804DDF09700250F00BAADCECC010008080F1012AD17C001090400141507C002FF00B5AD17000109DAE097B0250E00D207CC05065052455353425554546F4E", signature: "3046022100f7bcc7b763b598a4aa43ace333e3416b45307190b5e9bcff45c9415d3caf4ee8022100bb990f958b7c12f13bd25b8ad5f5cd1a49cd89d4cae9f45b85adff699f747285".padStart(144, '0'), get scriptWithSignature() { return this.script + this.signature; } }, CREATE_AND_SPL_TOKEN: { script: "03000002C70700000001F5CAA0C70003CAAC170003CAAC570004CAAC570024CAAC570044CAAC570064CAAC570084CAAC5700A4CAAC5700C4CAAC5700E41AAD57C00104042D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D1507C006CAAD57000104CAAD57000124CC071002CAAD17000144CAAD17000145CAADC700014606CAAD1700014CCAAD1700014DCAAD1700014ECAADC700014F04CAAD17000153CAAD17000154CAADC700015508CAAD1700015DDC07C003534F4C11ADC7CD015E290401871507C004CC0F104012AD17C0015F0401071507C002FF00B5AD1700015FCAADBF000160DEF09700250F00BAAC5F6C240804DDF09700250F00BAADCECC015508080F1012AD17C0015E0400141507C002FF00B5AD1700015EDAE097B0250E00D207CC05065052455353425554546F4E", signature: "30460221009d7b2401e110fd30b7db32f60bbc0aefd1d2ff71a75f470c005348f59ce113080221009dd281a9dd7951e93013787694433dc74104a4dd663cf7c5d8c2a6be4335fcdf".padStart(144, '0'), get scriptWithSignature() { return this.script + this.signature; } }, CREATE_AND_SPL_TOKEN_WITH_COMPUTE_BUDGET: { script: "03000002C70700000001F5CAA0C70003CAAC170003CAAC570004CAAC570024CAAC570044CAAC570064CAAC570084CAAC5700A4CAAC5700C4CAAC5700E41AAD57C00104042D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D1507C006CAAD57000104CAAD57000124CC071004CAAD17000144CAAD17000145CAADC700014606CAAD1700014CCAAD1700014DCAAD1700014ECAAD1700014FCAAD17000150CAADC700015108CAAD17000159CAAD1700015ACAAD1700015BCAAD1700015CCAADC700015D04CAAD17000161CAAD17000162CAADC700016304CAAD17000167CAAD17000168CAADC700016908CAAD17000171DC07C003534F4C11ADC7CD01722904019B1507C004CC0F104012AD17C001730401071507C002FF00B5AD17000173CAADBF000174DEF09700250F00BAAC5F6C240804DDF09700250F00BAADCECC016908080F1012AD17C001720400141507C002FF00B5AD17000172DAE097B0250E00D207CC05065052455353425554546F4E", signature: "304402205b763b3e3dc745dadda5f6fbddd2af9990bcc0fd7b32a1ab97d4af14d31ae6230220203177f933a507026a145c796ea8b4b1fe221eda157f0dda28bdb7290da9ee53".padStart(144, '0'), get scriptWithSignature() { return this.script + this.signature; } }, UNDELEGATE: { script: "03000002C70700000001F5CAA0C70003CAAC170003CAAC570004CAAC570024CAAC570044CAAC5700641AAC57C084042D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D1507C005CAAC570084CAAC5700A4CAAC1700C41AAC17C0C704001507C01ACAAC1700C5CAAC1700C6CAAC1700C7CAAC1700C8CAACC700C9081AAC17C0D304001507C01ACAAC1700D1CAAC1700D2CAAC1700D3CAAC1700D4CAACC700D504CAAC1700D9CAAC1700DACAACC700DB03CAAC1700DECAACC700DF04DC07C003534F4CDC07C005556E44656CBAAC5F6C040804DDF09700D207CC05065052455353425554546F4E250F00", signature: "3044022040054884f42bb7257f16c9cc121f15d2466ce8d9efb5e83f7b96973ed29d1f260220328d320b2ce9339123d923e3a2d81ffb6382a3588da19e93d8795d0265dfe561".padStart(144, '0'), get scriptWithSignature() { return this.script + this.signature; } }, DELEGATE_AND_CREATE_ACCOUNT_WITH_SEED: { script: "03000002C70700000001F5CAA0C70003CAAC170003CAAC570004CAAC570024CAAC570044CAAC570064CAAC570084CAAC5700A4CAAC5700C4CAAC5700E4CAAD570001041AAD57C00124042D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D1507C006CAAD57000124CAAD57000144CAAD170001641AAD17C0016704001507C01FCAAD17000165CAAD17000166CAAD17000167CAAD17000168CAADC7000169081AAD17C0017304001507C01FCAAD17000171CAAD17000172CAAD17000173CAAD17000174CAADC700017504CAAD17000179CAAD1700017ACAADC700017B02CAAD1700017DCAADC700017E04CAAD57000182CAADC70001A204CAADC70001A604CAADD70001AAFFE0CAADC70001CA08CAADC70001D208CAAD570001DACAAD170001FACAAD170001FBCAADC70001FC02CAAD170001FECAADC70001FF74CAAD17000273CAAD17000274CAAD17000275CAAD17000276CAADC700027704CAAD1700027BCAADC700027C04DC07C003534F4CDC07C0055354414B45BAAC5F6C640804DDF09700250F00BAADCECC01CA08080F10DAE097C009D207CC05065052455353425554546F4E250F00", signature: "3044022026ea0b1c5ab42fc52fa4542db17b9a0a92b42ffc941a53b82ec8cedd7fa4fd1d02200b2edd468c0d6761add53a597774cdc1c5d1599b186a1ade4b2458c559771411".padStart(144, '0'), get scriptWithSignature() { return this.script + this.signature; } }, STAKING_WITHDRAW: { script: "03000002C70700000001F5CAA0C70003CAAC170003CAAC570004CAAC570024CAAC570044CAAC570064CAAC5700841AAC57C0A4042D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D1507C005CAAC5700A41AAC57C0C4042D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D1507C005CAAC5700C4CAAC5700E4CAAD170001041AAD17C0010704001507C01FCAAD17000105CAAD17000106CAAD17000107CAAD17000108CAADC7000109081AAD17C0011304001507C01FCAAD17000111CAAD17000112CAAD17000113CAAD17000114CAADC700011504CAAD17000119CAAD1700011ACAAD1700011BCAAD1700011CCAADC700011D03CAAD17000120CAADC700012104CAADC700012508DC07C003534F4CDC07C0065265776172641AAD17C0011C0E00BAAC5F6C040804DDF09700250F001AAD17C0011C0E01BAAC5F6C240804DDF09700250F001AAD17C0011C0E02BAAC5F6C440804DDF09700250F00BAADCECC012508080F10DAE097C009250E00D207CC05065052455353425554546F4E", signature: "304402200329a67f8ce88f59b5dc7514488c07434fe0dc05cf9e25f151d964fff052eed102204ef7f0b5ae72bf209f093968bbaa48aeda3216103f04667cc6481fd49d82defc".padStart(144, '0'), get scriptWithSignature() { return this.script + this.signature; } }, SIGN_IN: { script: "03000002C70700000001F5B5A01700CAA1B700CC07C0302077616e747320796f7520746f207369676e20696e207769746820796f757220536f6c616e61206163636f756e743a0a6CADCF00048311BAF0976C0804B5ACC7008102CAACB70083DC07C003534F4CD207C0075349474E20494ED207CC05065052455353425554546F4E", signature: "3045022100ce2624f80ac5234d77415ca9df9ad153fa1c8baea28497d937e619ce63dddb6302205bb1f1d8aa5a47e5c87c615be03cf0a375c40ed3e19746e3279fd74dbddca82a".padStart(144, '0'), get scriptWithSignature() { return this.script + this.signature; } }, SIGN_MESSAGE: { script: "03000002C70700000001F5CAA09700DC07C003534F4CD207C0074D455353414745D207CC05065052455353425554546F4E", signature: "30450220482a5109dd908b886d4b8cd8b4bfb43a56c65232d68e4b30798d3cdbb55e31f3022100ee6e9c3d9468a8ad29ca6ac2b08719c7cbe7e857951a1b7ffa62e3445bc1bb10".padStart(144, '0'), get scriptWithSignature() { return this.script + this.signature; } }, MULTI_SIGN_TX: { script: "", signature: "".padStart(144, '0'), get scriptWithSignature() { return this.script + this.signature; } } }; var COIN_TYPE = exports.COIN_TYPE = '800001f5'; var LAMPORTS_PER_SOL = exports.LAMPORTS_PER_SOL = 1000000000; var SYSTEM_PROGRAM_ID = exports.SYSTEM_PROGRAM_ID = _bs["default"].decode('11111111111111111111111111111111'); // token var TOKEN_PROGRAM_ID = exports.TOKEN_PROGRAM_ID = _bs["default"].decode('TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA'); var TOKEN_2022_PROGRAM_ID = exports.TOKEN_2022_PROGRAM_ID = _bs["default"].decode('TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb'); var ASSOCIATED_TOKEN_PROGRAM_ID = exports.ASSOCIATED_TOKEN_PROGRAM_ID = _bs["default"].decode('ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL'); // stake var STAKE_PROGRAM_ID = exports.STAKE_PROGRAM_ID = _bs["default"].decode('Stake11111111111111111111111111111111111111'); var STAKE_CONFIG_ID = exports.STAKE_CONFIG_ID = _bs["default"].decode('StakeConfig11111111111111111111111111111111'); // sysvar var SYSVAR_RENT_PUBKEY = exports.SYSVAR_RENT_PUBKEY = _bs["default"].decode('SysvarRent111111111111111111111111111111111'); var SYSVAR_CLOCK_PUBKEY = exports.SYSVAR_CLOCK_PUBKEY = _bs["default"].decode('SysvarC1ock11111111111111111111111111111111'); var SYSVAR_STAKE_HISTORY_PUBKEY = exports.SYSVAR_STAKE_HISTORY_PUBKEY = _bs["default"].decode('SysvarStakeHistory1111111111111111111111111'); var COMPUTE_BUDGET_PROGRAM_ID = exports.COMPUTE_BUDGET_PROGRAM_ID = _bs["default"].decode('ComputeBudget111111111111111111111111111111'); var PADDING_PUBLICKEY = exports.PADDING_PUBLICKEY = Buffer.from('--------------------------------', 'ascii').toString('hex'); var PACKET_DATA_SIZE = exports.PACKET_DATA_SIZE = 1280 - 40 - 8; var VERSION_PREFIX_MASK = exports.VERSION_PREFIX_MASK = 0x7f; var SIGNATURE_LENGTH_IN_BYTES = exports.SIGNATURE_LENGTH_IN_BYTES = 64; /** * Size of public key in bytes */ var PUBLIC_KEY_LENGTH = exports.PUBLIC_KEY_LENGTH = 32; //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfYnMiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwicmVxdWlyZSIsIlNDUklQVCIsImV4cG9ydHMiLCJUUkFOU0ZFUiIsInNjcmlwdCIsInNpZ25hdHVyZSIsInBhZFN0YXJ0Iiwic2NyaXB0V2l0aFNpZ25hdHVyZSIsIlRSQU5TRkVSX1dJVEhfQ09NUFVURV9CVURHRVQiLCJTTUFSVF9DT05UUkFDVCIsIlNQTF9UT0tFTiIsIlNQTF9UT0tFTl9XSVRIX0NPTVBVVEVfQlVER0VUIiwiQ1JFQVRFX0FORF9TUExfVE9LRU4iLCJDUkVBVEVfQU5EX1NQTF9UT0tFTl9XSVRIX0NPTVBVVEVfQlVER0VUIiwiVU5ERUxFR0FURSIsIkRFTEVHQVRFX0FORF9DUkVBVEVfQUNDT1VOVF9XSVRIX1NFRUQiLCJTVEFLSU5HX1dJVEhEUkFXIiwiU0lHTl9JTiIsIlNJR05fTUVTU0FHRSIsIk1VTFRJX1NJR05fVFgiLCJDT0lOX1RZUEUiLCJMQU1QT1JUU19QRVJfU09MIiwiU1lTVEVNX1BST0dSQU1fSUQiLCJiYXNlNTgiLCJkZWNvZGUiLCJUT0tFTl9QUk9HUkFNX0lEIiwiVE9LRU5fMjAyMl9QUk9HUkFNX0lEIiwiQVNTT0NJQVRFRF9UT0tFTl9QUk9HUkFNX0lEIiwiU1RBS0VfUFJPR1JBTV9JRCIsIlNUQUtFX0NPTkZJR19JRCIsIlNZU1ZBUl9SRU5UX1BVQktFWSIsIlNZU1ZBUl9DTE9DS19QVUJLRVkiLCJTWVNWQVJfU1RBS0VfSElTVE9SWV9QVUJLRVkiLCJDT01QVVRFX0JVREdFVF9QUk9HUkFNX0lEIiwiUEFERElOR19QVUJMSUNLRVkiLCJCdWZmZXIiLCJmcm9tIiwidG9TdHJpbmciLCJQQUNLRVRfREFUQV9TSVpFIiwiVkVSU0lPTl9QUkVGSVhfTUFTSyIsIlNJR05BVFVSRV9MRU5HVEhfSU5fQllURVMiLCJQVUJMSUNfS0VZX0xFTkdUSCJdLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jb25maWcvcGFyYW1zLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBiYXNlNTggZnJvbSAnYnM1OCc7XG5cbmNvbnN0IFNDUklQVCA9IHtcbiAgVFJBTlNGRVI6IHtcbiAgICBzY3JpcHQ6IGAwMzAwMDAwMkM3MDcwMDAwMDAwMUY1Q0FBMEM3MDAwM0NBQUMxNzAwMDNDQUFDNTcwMDA0Q0FBQzU3MDAyNDFBQUM1N0MwNDQwNDJEMkQyRDJEMkQyRDJEMkQyRDJEMkQyRDJEMkQyRDJEMkQyRDJEMkQyRDJEMkQyRDJEMkQyRDJEMkQyRDJEMkQxNTA3QzAwNUNBQUM1NzAwNDQxQUFDNTdDMDY0MDQyRDJEMkQyRDJEMkQyRDJEMkQyRDJEMkQyRDJEMkQyRDJEMkQyRDJEMkQyRDJEMkQyRDJEMkQyRDJEMkQyRDJEMTUwN0MwMDVDQUFDNTcwMDY0MUFBQzU3QzA4NDA0MkQyRDJEMkQyRDJEMkQyRDJEMkQyRDJEMkQyRDJEMkQyRDJEMkQyRDJEMkQyRDJEMkQyRDJEMkQyRDJEMkQyRDE1MDdDMDA1Q0FBQzU3MDA4NDFBQUM1N0MwQTQwNDJEMkQyRDJEMkQyRDJEMkQyRDJEMkQyRDJEMkQyRDJEMkQyRDJEMkQyRDJEMkQyRDJEMkQyRDJEMkQyRDJEMkQxNTA3QzAwNUNBQUM1NzAwQTRDQUFDNTcwMEM0Q0MwNzEwMDFDQUFDMTcwMEU0Q0FBQzE3MDBFNUNBQUMxNzAwRTZDQUFDMTcwMEU3Q0FBQzE3MDBFOENBQUNDNzAwRTkwNENBQUNDNzAwRUQwOERDMDdDMDAzNTM0RjRDMUFBQzE3QzBFNzBCMDBCQUFDNUY2QzA0MDgwNERERjA5NzAwMUFBQzE3QzBFNzBCMDFCQUFDNUY2QzI0MDgwNERERjA5NzAwMjUwRjAwQkFBQ0NFQ0NFRDA4MDgwRjEwREFFMDk3QzAwOTI1MEUwMEQyMDdDQzA1MDY1MDUyNDU1MzUzNDI1NTU0NTQ2RjRFYCxcbiAgICBzaWduYXR1cmU6XG4gICAgICBgMzA0NTAyMjAxZmVlZjc0ZGU4ODdiNmQ4NTEzZjU2MzcxY2ViZjVlOWQ3ZjA1ZTJkZGJlZjI1ZWI2ZGQ5MWNkMDg4OTEwMDE4MDIyMTAwZDRhZmQxZWE5ZDVmOWFlMTQyY2RhYjU0MTllOGMwOTc0ZjEwNjUxMzc2YWYwM2ExNDFhMjZlNDliMDg2OTFkY2AucGFkU3RhcnQoXG4gICAgICAgIDE0NCxcbiAgICAgICAgJzAnXG4gICAgICApLFxuICAgIGdldCBzY3JpcHRXaXRoU2lnbmF0dXJlKCk6IHN0cmluZyB7XG4gICAgICByZXR1cm4gdGhpcy5zY3JpcHQgKyB0aGlzLnNpZ25hdHVyZTtcbiAgICB9LFxuICB9LFxuICBUUkFOU0ZFUl9XSVRIX0NPTVBVVEVfQlVER0VUOiB7XG4gICAgc2NyaXB0OiBgMDMwMDAwMDJDNzA3MDAwMDAwMDFGNUNBQTBDNzAwMDNDQUFDMTcwMDAzQ0FBQzU3MDAwNENBQUM1NzAwMjQxQUFDNTdDMDQ0MDQyRDJEMkQyRDJEMkQyRDJEMkQyRDJEMkQyRDJEMkQyRDJEMkQyRDJEMkQyRDJEMkQyRDJEMkQyRDJEMkQyRDJEMTUwN0MwMDVDQUFDNTcwMDQ0MUFBQzU3QzA2NDA0MkQyRDJEMkQyRDJEMkQyRDJEMkQyRDJEMkQyRDJEMkQyRDJEMkQyRDJEMkQyRDJEMkQyRDJEMkQyRDJEMkQyRDE1MDdDMDA1Q0FBQzU3MDA2NDFBQUM1N0MwODQwNDJEMkQyRDJEMkQyRDJEMkQyRDJEMkQyRDJEMkQyRDJEMkQyRDJEMkQyRDJEMkQyRDJEMkQyRDJEMkQyRDJEMkQxNTA3QzAwNUNBQUM1NzAwODQxQUFDNTdDMEE0MDQyRDJEMkQyRDJEMkQyRDJEMkQyRDJEMkQyRDJEMkQyRDJEMkQyRDJEMkQyRDJEMkQyRDJEMkQyRDJEMkQyRDJEMTUwN0MwMDVDQUFDNTcwMEE0Q0FBQzU3MDBDNENDMDcxMDAzQ0FBQzE3MDBFNENBQUMxNzAwRTVDQUFDMTcwMEU2Q0FBQzE3MDBFN0NBQUNDNzAwRTgwOENBQUMxNzAwRjBDQUFDMTcwMEYxQ0FBQzE3MDBGMkNBQUMxNzAwRjNDQUFDQzcwMEY0MDRDQUFDMTcwMEY4Q0FBQzE3MDBGOUNBQUMxNzAwRkFDQUFDMTcwMEZCQ0FBQzE3MDBGQ0NBQUNDNzAwRkQwNENBQURDNzAwMDEwMTA4REMwN0MwMDM1MzRGNEMxQUFDMTdDMEZCMEIwMEJBQUM1RjZDMDQwODA0RERGMDk3MDAxQUFDMTdDMEZCMEIwMUJBQUM1RjZDMjQwODA0RERGMDk3MDAyNTBGMDBCQUFEQ0VDQzAxMDEwODA4MEYxMERBRTA5N0MwMDkyNTBFMDBEMjA3Q0MwNTA2NTA1MjQ1NTM1MzQyNTU1NDU0NkY0RWAsXG4gICAgc2lnbmF0dXJlOlxuICAgICAgYDMwNDQwMjIwMzI4NTFkOWNhNDY0ZGU1YWU5MmMwNjNmMzNhZGEzODRmYTBkZWUyN2Q2ZTNkNDY5MTk3YTM2N2VmOWNjOWNiZTAyMjAxMzdmZmE3NzQwNzE4NjkxMmZmYmI1ZmQ3NDUyOWIzODE4YzdlOGZhMWQ0ZWIxM2Q0YTkyNGE0NGNiN2NhYWY5YC5wYWRTdGFydChcbiAgICAgICAgMTQ0LFxuICAgICAgICAnMCdcbiAgICAgICksXG4gICAgZ2V0IHNjcmlwdFdpdGhTaWduYXR1cmUoKTogc3RyaW5nIHtcbiAgICAgIHJldHVybiB0aGlzLnNjcmlwdCArIHRoaXMuc2lnbmF0dXJlO1xuICAgIH0sXG4gIH0sXG4gIFNNQVJUX0NPTlRSQUNUOiB7XG4gICAgc2NyaXB0OiBgMDMwMDAwMDJDNzA3MDAwMDAwMDFGNUNBQTA5NzAwREMwN0MwMDM1MzRGNENEMjA3QzAwNTUzNEQ0MTUyNTREMjA3Q0MwNTA2NTA1MjQ1NTM1MzQyNTU1NDU0NkY0RWAsXG4gICAgc2lnbmF0dXJlOlxuICAgICAgYDMwNDUwMjIxMDBBRkVDQjZFRUNCMzVCQTEzRDkyNEQ2MUMzQzZDNDY4MDE3Q0FFMzE4MzVFNTlBNjcyMkNDRjc1RTY4Q0Y3ODgyMDIyMDcyNTJBNEUyNzc3RThCMjg5RjhBRTc5MDJEMEJFRjUyMTg1OUE4QzYwNzdCMjIwOUFCN0JENzA0QzM4OTk5MjFgLnBhZFN0YXJ0KFxuICAgICAgICAxNDQsXG4gICAgICAgICcwJ1xuICAgICAgKSxcbiAgICBnZXQgc2NyaXB0V2l0aFNpZ25hdHVyZSgpOiBzdHJpbmcge1xuICAgICAgcmV0dXJuIHRoaXMuc2NyaXB0ICsgdGhpcy5zaWduYXR1cmU7XG4gICAgfSxcbiAgfSxcbiAgU1BMX1RPS0VOOiB7XG4gICAgc2NyaXB0OiBgMDMwMDAwMDJDNzA3MDAwMDAwMDFGNUNBQTBDNzAwMDNDQUFDMTcwMDAzQ0FBQzU3MDAwNENBQUM1NzAwMjRDQUFDNTcwMDQ0Q0FBQzU3MDA2NDFBQUM1N0MwODQwNDJEMkQyRDJEMkQyRDJEMkQyRDJEMkQyRDJEMkQyRDJEMkQyRDJEMkQyRDJEMkQyRDJEMkQyRDJEMkQyRDJEMkQxNTA3QzAwNUNBQUM1NzAwODQxQUFDNTdDMEE0MDQyRDJEMkQyRDJEMkQyRDJEMkQyRDJEMkQyRDJEMkQyRDJEMkQyRDJEMkQyRDJEMkQyRDJEMkQyRDJEMkQyRDJEMTUwN0MwMDVDQUFDNTcwMEE0Q0FBQzU3MDBDNENDMDcxMDAxQ0FBQzE3MDBFNENBQUMxNzAwRTVDQUFDQzcwMEU2MDRDQUFDMTcwMEVBQ0FBQzE3MDBFQkNBQUNDNzAwRUMwOENBQUMxNzAwRjREQzA3QzAwMzUzNEY0QzExQUNDN0NERjUyOTA0MDExRTE1MDdDMDA0Q0MwRjEwNDAxMkFDMTdDMEY2MDQwMTA3MTUwN0MwMDJGRjAwQjVBQzE3MDBGNkNBQUNCRjAwRjdERUYwOTcwMDI1MEYwMEJBQUM1RjZDMjQwODA0RERGMDk3MDAyNTBGMDBCQUFDQ0VDQ0VDMDgwODBGMTAxMkFDMTdDMEY1MDQwMDE0MTUwN0MwMDJGRjAwQjVBQzE3MDBGNURBRTA5N0IwMjUwRTAwRDIwN0NDMDUwNjUwNTI0NTUzNTM0MjU1NTQ1NDZGNEVgLFxuICAgIHNpZ25hdHVyZTpcbiAgICAgIGAzMDQ1MDIyMTAwOGNhNjBmYzc3ZDJhYjYyNTQ4MzY2MDAwMDQ0YzQ5NzJhZTJmNmNjYTU3MTY0NzJiYjc4NDgzY2M1MDY0Y2I3YjAyMjA3NWFkNDI4MWRjOGNkZWQyMTM5YjVjZDQxNDMwNWQxMGM1NWMyNjI1YzlkYWU0N2VjMGM1YTExM2U4NzUyNTUxYC5wYWRTdGFydChcbiAgICAgICAgMTQ0LFxuICAgICAgICAnMCdcbiAgICAgICksXG4gICAgZ2V0IHNjcmlwdFdpdGhTaWduYXR1cmUoKTogc3RyaW5nIHtcbiAgICAgIHJldHVybiB0aGlzLnNjcmlwdCArIHRoaXMuc2lnbmF0dXJlO1xuICAgIH0sXG4gIH0sXG4gIFNQTF9UT0tFTl9XSVRIX0NPTVBVVEVfQlVER0VUOiB7XG4gICAgc2NyaXB0OiBgMDMwMDAwMDJDNzA3MDAwMDAwMDFGNUNBQTBDNzAwMDNDQUFDMTcwMDAzQ0FBQzU3MDAwNENBQUM1NzAwMjRDQUFDNTcwMDQ0Q0FBQzU3MDA2NDFBQUM1N0MwODQwNDJEMkQyRDJEMkQyRDJEMkQyRDJEMkQyRDJEMkQyRDJEMkQyRDJEMkQyRDJEMkQyRDJEMkQyRDJEMkQyRDJEMkQxNTA3QzAwNUNBQUM1NzAwODQxQUFDNTdDMEE0MDQyRDJEMkQyRDJEMkQyRDJEMkQyRDJEMkQyRDJEMkQyRDJEMkQyRDJEMkQyRDJEMkQyRDJEMkQyRDJEMkQyRDJEMTUwN0MwMDVDQUFDNTcwMEE0Q0FBQzU3MDBDNENDMDcxMDAzQ0FBQzE3MDBFNENBQUMxNzAwRTVDQUFDMTcwMEU2Q0FBQzE3MDBFN0NBQUNDNzAwRTgwOENBQUMxNzAwRjBDQUFDMTcwMEYxQ0FBQzE3MDBGMkNBQUMxNzAwRjNDQUFDQzcwMEY0MDRDQUFDMTcwMEY4Q0FBQzE3MDBGOUNBQUNDNzAwRkEwNENBQUMxNzAwRkVDQUFDMTcwMEZGQ0FBREM3MDAwMTAwMDhDQUFEMTcwMDAxMDhEQzA3QzAwMzUzNEY0QzExQURDN0NEMDEwOTI5MDQwMTMyMTUwN0MwMDRDQzBGMTA0MDEyQUQxN0MwMDEwQTA0MDEwNzE1MDdDMDAyRkYwMEI1QUQxNzAwMDEwQUNBQURCRjAwMDEwQkRFRjA5NzAwMjUwRjAwQkFBQzVGNkMyNDA4MDREREYwOTcwMDI1MEYwMEJBQURDRUNDMDEwMDA4MDgwRjEwMTJBRDE3QzAwMTA5MDQwMDE0MTUwN0MwMDJGRjAwQjVBRDE3MDAwMTA5REFFMDk3QjAyNTBFMDBEMjA3Q0MwNTA2NTA1MjQ1NTM1MzQyNTU1NDU0NkY0RWAsXG4gICAgc2lnbmF0dXJlOlxuICAgICAgYDMwNDYwMjIxMDBmN2JjYzdiNzYzYjU5OGE0YWE0M2FjZTMzM2UzNDE2YjQ1MzA3MTkwYjVlOWJjZmY0NWM5NDE1ZDNjYWY0ZWU4MDIyMTAwYmI5OTBmOTU4YjdjMTJmMTNiZDI1YjhhZDVmNWNkMWE0OWNkODlkNGNhZTlmNDViODVhZGZmNjk5Zjc0NzI4NWAucGFkU3RhcnQoXG4gICAgICAgIDE0NCxcbiAgICAgICAgJzAnXG4gICAgICApLFxuICAgIGdldCBzY3JpcHRXaXRoU2lnbmF0dXJlKCk6IHN0cmluZyB7XG4gICAgICByZXR1cm4gdGhpcy5zY3JpcHQgKyB0aGlzLnNpZ25hdHVyZTtcbiAgICB9LFxuICB9LFxuICBDUkVBVEVfQU5EX1NQTF9UT0tFTjoge1xuICAgIHNjcmlwdDogYDAzMDAwMDAyQzcwNzAwMDAwMDAxRjVDQUEwQzcwMDAzQ0FBQzE3MDAwM0NBQUM1NzAwMDRDQUFDNTcwMDI0Q0FBQzU3MDA0NENBQUM1NzAwNjRDQUFDNTcwMDg0Q0FBQzU3MDBBNENBQUM1NzAwQzRDQUFDNTcwMEU0MUFBRDU3QzAwMTA0MDQyRDJEMkQyRDJEMkQyRDJEMkQyRDJEMkQyRDJEMkQyRDJEMkQyRDJEMkQyRDJEMkQyRDJEMkQyRDJEMkQyRDJEMTUwN0MwMDZDQUFENTcwMDAxMDRDQUFENTcwMDAxMjRDQzA3MTAwMkNBQUQxNzAwMDE0NENBQUQxNzAwMDE0NUNBQURDNzAwMDE0NjA2Q0FBRDE3MDAwMTRDQ0FBRDE3MDAwMTREQ0FBRDE3MDAwMTRFQ0FBREM3MDAwMTRGMDRDQUFEMTcwMDAxNTNDQUFEMTcwMDAxNTRDQUFEQzcwMDAxNTUwOENBQUQxNzAwMDE1RERDMDdDMDAzNTM0RjRDMTFBREM3Q0QwMTVFMjkwNDAxODcxNTA3QzAwNENDMEYxMDQwMTJBRDE3QzAwMTVGMDQwMTA3MTUwN0MwMDJGRjAwQjVBRDE3MDAwMTVGQ0FBREJGMDAwMTYwREVGMDk3MDAyNTBGMDBCQUFDNUY2QzI0MDgwNERERjA5NzAwMjUwRjAwQkFBRENFQ0MwMTU1MDgwODBGMTAxMkFEMTdDMDAxNUUwNDAwMTQxNTA3QzAwMkZGMDBCNUFEMTcwMDAxNUVEQUUwOTdCMDI1MEUwMEQyMDdDQzA1MDY1MDUyNDU1MzUzNDI1NTU0NTQ2RjRFYCxcbiAgICBzaWduYXR1cmU6XG4gICAgICBgMzA0NjAyMjEwMDlkN2IyNDAxZTExMGZkMzBiN2RiMzJmNjBiYmMwYWVmZDFkMmZmNzFhNzVmNDcwYzAwNTM0OGY1OWNlMTEzMDgwMjIxMDA5ZGQyODFhOWRkNzk1MWU5MzAxMzc4NzY5NDQzM2RjNzQxMDRhNGRkNjYzY2Y3YzVkOGMyYTZiZTQzMzVmY2RmYC5wYWRTdGFydChcbiAgICAgICAgMTQ0LFxuICAgICAgICAnMCdcbiAgICAgICksXG4gICAgZ2V0IHNjcmlwdFdpdGhTaWduYXR1cmUoKTogc3RyaW5nIHtcbiAgICAgIHJldHVybiB0aGlzLnNjcmlwdCArIHRoaXMuc2lnbmF0dXJlO1xuICAgIH0sXG4gIH0sXG4gIENSRUFURV9BTkRfU1BMX1RPS0VOX1dJVEhfQ09NUFVURV9CVURHRVQ6IHtcbiAgICBzY3JpcHQ6IGAwMzAwMDAwMkM3MDcwMDAwMDAwMUY1Q0FBMEM3MDAwM0NBQUMxNzAwMDNDQUFDNTcwMDA0Q0FBQzU3MDAyNENBQUM1NzAwNDRDQUFDNTcwMDY0Q0FBQzU3MDA4NENBQUM1NzAwQTRDQUFDNTcwMEM0Q0FBQzU3MDBFNDFBQUQ1N0MwMDEwNDA0MkQyRDJEMkQyRDJEMkQyRDJEMkQyRDJEMkQyRDJEMkQyRDJEMkQyRDJEMkQyRDJEMkQyRDJEMkQyRDJEMkQyRDE1MDdDMDA2Q0FBRDU3MDAwMTA0Q0FBRDU3MDAwMTI0Q0MwNzEwMDRDQUFEMTcwMDAxNDRDQUFEMTcwMDAxNDVDQUFEQzcwMDAxNDYwNkNBQUQxNzAwMDE0Q0NBQUQxNzAwMDE0RENBQUQxNzAwMDE0RUNBQUQxNzAwMDE0RkNBQUQxNzAwMDE1MENBQURDNzAwMDE1MTA4Q0FBRDE3MDAwMTU5Q0FBRDE3MDAwMTVBQ0FBRDE3MDAwMTVCQ0FBRDE3MDAwMTVDQ0FBREM3MDAwMTVEMDRDQUFEMTcwMDAxNjFDQUFEMTcwMDAxNjJDQUFEQzcwMDAxNjMwNENBQUQxNzAwMDE2N0NBQUQxNzAwMDE2OENBQURDNzAwMDE2OTA4Q0FBRDE3MDAwMTcxREMwN0MwMDM1MzRGNEMxMUFEQzdDRDAxNzIyOTA0MDE5QjE1MDdDMDA0Q0MwRjEwNDAxMkFEMTdDMDAxNzMwNDAxMDcxNTA3QzAwMkZGMDBCNUFEMTcwMDAxNzNDQUFEQkYwMDAxNzRERUYwOTcwMDI1MEYwMEJBQUM1RjZDMjQwODA0RERGMDk3MDAyNTBGMDBCQUFEQ0VDQzAxNjkwODA4MEYxMDEyQUQxN0MwMDE3MjA0MDAxNDE1MDdDMDAyRkYwMEI1QUQxNzAwMDE3MkRBRTA5N0IwMjUwRTAwRDIwN0NDMDUwNjUwNTI0NTUzNTM0MjU1NTQ1NDZGNEVgLFxuICAgIHNpZ25hdHVyZTpcbiAgICAgIGAzMDQ0MDIyMDViNzYzYjNlM2RjNzQ1ZGFkZGE1ZjZmYmRkZDJhZjk5OTBiY2MwZmQ3YjMyYTFhYjk3ZDRhZjE0ZDMxYWU2MjMwMjIwMjAzMTc3ZjkzM2E1MDcwMjZhMTQ1Yzc5NmVhOGI0YjFmZTIyMWVkYTE1N2YwZGRhMjhiZGI3MjkwZGE5ZWU1M2AucGFkU3RhcnQoXG4gICAgICAgIDE0NCxcbiAgICAgICAgJzAnXG4gICAgICApLFxuICAgIGdldCBzY3JpcHRXaXRoU2lnbmF0dXJlKCk6IHN0cmluZyB7XG4gICAgICByZXR1cm4gdGhpcy5zY3JpcHQgKyB0aGlzLnNpZ25hdHVyZTtcbiAgICB9LFxuICB9LFxuICBVTkRFTEVHQVRFOiB7XG4gICAgc2NyaXB0OiBgMDMwMDAwMDJDNzA3MDAwMDAwMDFGNUNBQTBDNzAwMDNDQUFDMTcwMDAzQ0FBQzU3MDAwNENBQUM1NzAwMjRDQUFDNTcwMDQ0Q0FBQzU3MDA2NDFBQUM1N0MwODQwNDJEMkQyRDJEMkQyRDJEMkQyRDJEMkQyRDJEMkQyRDJEMkQyRDJEMkQyRDJEMkQyRDJEMkQyRDJEMkQyRDJEMkQxNTA3QzAwNUNBQUM1NzAwODRDQUFDNTcwMEE0Q0FBQzE3MDBDNDFBQUMxN0MwQzcwNDAwMTUwN0MwMUFDQUFDMTcwMEM1Q0FBQzE3MDBDNkNBQUMxNzAwQzdDQUFDMTcwMEM4Q0FBQ0M3MDBDOTA4MUFBQzE3QzBEMzA0MDAxNTA3QzAxQUNBQUMxNzAwRDFDQUFDMTcwMEQyQ0FBQzE3MDBEM0NBQUMxNzAwRDRDQUFDQzcwMEQ1MDRDQUFDMTcwMEQ5Q0FBQzE3MDBEQUNBQUNDNzAwREIwM0NBQUMxNzAwREVDQUFDQzcwMERGMDREQzA3QzAwMzUzNEY0Q0RDMDdDMDA1NTU2RTQ0NjU2Q0JBQUM1RjZDMDQwODA0RERGMDk3MDBEMjA3Q0MwNTA2NTA1MjQ1NTM1MzQyNTU1NDU0NkY0RTI1MEYwMGAsXG4gICAgc2lnbmF0dXJlOlxuICAgICAgYDMwNDQwMjIwNDAwNTQ4ODRmNDJiYjcyNTdmMTZjOWNjMTIxZjE1ZDI0NjZjZThkOWVmYjVlODNmN2I5Njk3M2VkMjlkMWYyNjAyMjAzMjhkMzIwYjJjZTkzMzkxMjNkOTIzZTNhMmQ4MWZmYjYzODJhMzU4OGRhMTllOTNkODc5NWQwMjY1ZGZlNTYxYC5wYWRTdGFydChcbiAgICAgICAgMTQ0LFxuICAgICAgICAnMCdcbiAgICAgICksXG4gICAgZ2V0IHNjcmlwdFdpdGhTaWduYXR1cmUoKTogc3RyaW5nIHtcbiAgICAgIHJldHVybiB0aGlzLnNjcmlwdCArIHRoaXMuc2lnbmF0dXJlO1xuICAgIH0sXG4gIH0sXG4gIERFTEVHQVRFX0FORF9DUkVBVEVfQUNDT1VOVF9XSVRIX1NFRUQ6IHtcbiAgICBzY3JpcHQ6IGAwMzAwMDAwMkM3MDcwMDAwMDAwMUY1Q0FBMEM3MDAwM0NBQUMxNzAwMDNDQUFDNTcwMDA0Q0FBQzU3MDAyNENBQUM1NzAwNDRDQUFDNTcwMDY0Q0FBQzU3MDA4NENBQUM1NzAwQTRDQUFDNTcwMEM0Q0FBQzU3MDBFNENBQUQ1NzAwMDEwNDFBQUQ1N0MwMDEyNDA0MkQyRDJEMkQyRDJEMkQyRDJEMkQyRDJEMkQyRDJEMkQyRDJEMkQyRDJEMkQyRDJEMkQyRDJEMkQyRDJEMkQyRDE1MDdDMDA2Q0FBRDU3MDAwMTI0Q0FBRDU3MDAwMTQ0Q0FBRDE3MDAwMTY0MUFBRDE3QzAwMTY3MDQwMDE1MDdDMDFGQ0FBRDE3MDAwMTY1Q0FBRDE3MDAwMTY2Q0FBRDE3MDAwMTY3Q0FBRDE3MDAwMTY4Q0FBREM3MDAwMTY5MDgxQUFEMTdDMDAxNzMwNDAwMTUwN0MwMUZDQUFEMTcwMDAxNzFDQUFEMTcwMDAxNzJDQUFEMTcwMDAxNzNDQUFEMTcwMDAxNzRDQUFEQzcwMDAxNzUwNENBQUQxNzAwMDE3OUNBQUQxNzAwMDE3QUNBQURDNzAwMDE3QjAyQ0FBRDE3MDAwMTdEQ0FBREM3MDAwMTdFMDRDQUFENTcwMDAxODJDQUFEQzcwMDAxQTIwNENBQURDNzAwMDFBNjA0Q0FBREQ3MDAwMUFBRkZFMENBQURDNzAwMDFDQTA4Q0FBREM3MDAwMUQyMDhDQUFENTcwMDAxREFDQUFEMTcwMDAxRkFDQUFEMTcwMDAxRkJDQUFEQzcwMDAxRkMwMkNBQUQxNzAwMDFGRUNBQURDNzAwMDFGRjc0Q0FBRDE3MDAwMjczQ0FBRDE3MDAwMjc0Q0FBRDE3MDAwMjc1Q0FBRDE3MDAwMjc2Q0FBREM3MDAwMjc3MDRDQUFEMTcwMDAyN0JDQUFEQzcwMDAyN0MwNERDMDdDMDAzNTM0RjRDREMwN0MwMDU1MzU0NDE0QjQ1QkFBQzVGNkM2NDA4MDREREYwOTcwMDI1MEYwMEJBQURDRUNDMDFDQTA4MDgwRjEwREFFMDk3QzAwOUQyMDdDQzA1MDY1MDUyNDU1MzUzNDI1NTU0NTQ2RjRFMjUwRjAwYCxcbiAgICBzaWduYXR1cmU6XG4gICAgICBgMzA0NDAyMjAyNmVhMGIxYzVhYjQyZmM1MmZhNDU0MmRiMTdiOWEwYTkyYjQyZmZjOTQxYTUzYjgyZWM4Y2VkZDdmYTRmZDFkMDIyMDBiMmVkZDQ2OGMwZDY3NjFhZGQ1M2E1OTc3NzRjZGMxYzVkMTU5OWIxODZhMWFkZTRiMjQ1OGM1NTk3NzE0MTFgLnBhZFN0YXJ0KFxuICAgICAgICAxNDQsXG4gICAgICAgICcwJ1xuICAgICAgKSxcbiAgICBnZXQgc2NyaXB0V2l0aFNpZ25hdHVyZSgpOiBzdHJpbmcge1xuICAgICAgcmV0dXJuIHRoaXMuc2NyaXB0ICsgdGhpcy5zaWduYXR1cmU7XG4gICAgfSxcbiAgfSxcbiAgU1RBS0lOR19XSVRIRFJBVzoge1xuICAgIHNjcmlwdDogYDAzMDAwMDAyQzcwNzAwMDAwMDAxRjVDQUEwQzcwMDAzQ0FBQzE3MDAwM0NBQUM1NzAwMDRDQUFDNTcwMDI0Q0FBQzU3MDA0NENBQUM1NzAwNjRDQUFDNTcwMDg0MUFBQzU3QzBBNDA0MkQyRDJEMkQyRDJEMkQyRDJEMkQyRDJEMkQyRDJEMkQyRDJEMkQyRDJEMkQyRDJEMkQyRDJEMkQyRDJEMkQyRDE1MDdDMDA1Q0FBQzU3MDBBNDFBQUM1N0MwQzQwNDJEMkQyRDJEMkQyRDJEMkQyRDJEMkQyRDJEMkQyRDJEMkQyRDJEMkQyRDJEMkQyRDJEMkQyRDJEMkQyRDJEMkQxNTA3QzAwNUNBQUM1NzAwQzRDQUFDNTcwMEU0Q0FBRDE3MDAwMTA0MUFBRDE3QzAwMTA3MDQwMDE1MDdDMDFGQ0FBRDE3MDAwMTA1Q0FBRDE3MDAwMTA2Q0FBRDE3MDAwMTA3Q0FBRDE3MDAwMTA4Q0FBREM3MDAwMTA5MDgxQUFEMTdDMDAxMTMwNDAwMTUwN0MwMUZDQUFEMTcwMDAxMTFDQUFEMTcwMDAxMTJDQUFEMTcwMDAxMTNDQUFEMTcwMDAxMTRDQUFEQzcwMDAxMTUwNENBQUQxNzAwMDExOUNBQUQxNzAwMDExQUNBQUQxNzAwMDExQkNBQUQxNzAwMDExQ0NBQURDNzAwMDExRDAzQ0FBRDE3MDAwMTIwQ0FBREM3MDAwMTIxMDRDQUFEQzcwMDAxMjUwOERDMDdDMDAzNTM0RjRDREMwN0MwMDY1MjY1Nzc2MTcyNjQxQUFEMTdDMDAxMUMwRTAwQkFBQzVGNkMwNDA4MDREREYwOTcwMDI1MEYwMDFBQUQxN0MwMDExQzBFMDFCQUFDNUY2QzI0MDgwNERERjA5NzAwMjUwRjAwMUFBRDE3QzAwMTFDMEUwMkJBQUM1RjZDNDQwODA0RERGMDk3MDAyNTBGMDBCQUFEQ0VDQzAxMjUwODA4MEYxMERBRTA5N0MwMDkyNTBFMDBEMjA3Q0MwNTA2NTA1MjQ1NTM1MzQyNTU1NDU0NkY0RWAsXG4gICAgc2lnbmF0dXJlOlxuICAgICAgYDMwNDQwMjIwMDMyOWE2N2Y4Y2U4OGY1OWI1ZGM3NTE0NDg4YzA3NDM0ZmUwZGMwNWNmOWUyNWYxNTFkOTY0ZmZmMDUyZWVkMTAyMjA0ZWY3ZjBiNWFlNzJiZjIwOWYwOTM5NjhiYmFhNDhhZWRhMzIxNjEwM2YwNDY2N2NjNjQ4MWZkNDlkODJkZWZjYC5wYWRTdGFydChcbiAgICAgICAgMTQ0LFxuICAgICAgICAnMCdcbiAgICAgICksXG4gICAgZ2V0IHNjcmlwdFdpdGhTaWduYXR1cmUoKTogc3RyaW5nIHtcbiAgICAgIHJldHVybiB0aGlzLnNjcmlwdCArIHRoaXMuc2lnbmF0dXJlO1xuICAgIH0sXG4gIH0sXG4gIFNJR05fSU46IHtcbiAgICBzY3JpcHQ6IGAwMzAwMDAwMkM3MDcwMDAwMDAwMUY1QjVBMDE3MDBDQUExQjcwMENDMDdDMDMwMjA3NzYxNmU3NDczMjA3OTZmNzUyMDc0NmYyMDczNjk2NzZlMjA2OTZlMjA3NzY5NzQ2ODIwNzk2Zjc1NzIyMDUzNmY2YzYxNmU2MTIwNjE2MzYzNmY3NTZlNzQzYTBhNkNBRENGMDAwNDgzMTFCQUYwOTc2QzA4MDRCNUFDQzcwMDgxMDJDQUFDQjcwMDgzREMwN0MwMDM1MzRGNENEMjA3QzAwNzUzNDk0NzRFMjA0OTRFRDIwN0NDMDUwNjUwNTI0NTUzNTM0MjU1NTQ1NDZGNEVgLFxuICAgIHNpZ25hdHVyZTpcbiAgICAgIGAzMDQ1MDIyMTAwY2UyNjI0ZjgwYWM1MjM0ZDc3NDE1Y2E5ZGY5YWQxNTNmYTFjOGJhZWEyODQ5N2Q5MzdlNjE5Y2U2M2RkZGI2MzAyMjA1YmIxZjFkOGFhNWE0N2U1Yzg3YzYxNWJlMDNjZjBhMzc1YzQwZWQzZTE5NzQ2ZTMyNzlmZDc0ZGJkZGNhODJhYC5wYWRTdGFydChcbiAgICAgICAgMTQ0LFxuICAgICAgICAnMCdcbiAgICAgICksXG4gICAgZ2V0IHNjcmlwdFdpdGhTaWduYXR1cmUoKTogc3RyaW5nIHtcbiAgICAgIHJldHVybiB0aGlzLnNjcmlwdCArIHRoaXMuc2lnbmF0dXJlO1xuICAgIH0sXG4gIH0sXG4gIFNJR05fTUVTU0FHRToge1xuICAgIHNjcmlwdDogYDAzMDAwMDAyQzcwNzAwMDAwMDAxRjVDQUEwOTcwMERDMDdDMDAzNTM0RjRDRDIwN0MwMDc0RDQ1NTM1MzQxNDc0NUQyMDdDQzA1MDY1MDUyNDU1MzUzNDI1NTU0NTQ2RjRFYCxcbiAgICBzaWduYXR1cmU6XG4gICAgICBgMzA0NTAyMjA0ODJhNTEwOWRkOTA4Yjg4NmQ0YjhjZDhiNGJmYjQzYTU2YzY1MjMyZDY4ZTRiMzA3OThkM2NkYmI1NWUzMWYzMDIyMTAwZWU2ZTljM2Q5NDY4YThhZDI5Y2E2YWMyYjA4NzE5YzdjYmU3ZTg1Nzk1MWExYjdmZmE2MmUzNDQ1YmMxYmIxMGAucGFkU3RhcnQoXG4gICAgICAgIDE0NCxcbiAgICAgICAgJzAnXG4gICAgICApLFxuICAgIGdldCBzY3JpcHRXaXRoU2lnbmF0dXJlKCk6IHN0cmluZyB7XG4gICAgICByZXR1cm4gdGhpcy5zY3JpcHQgKyB0aGlzLnNpZ25hdHVyZTtcbiAgICB9LFxuICB9LFxuICBNVUxUSV9TSUdOX1RYOiB7XG4gICAgc2NyaXB0OiBgYCxcbiAgICBzaWduYXR1cmU6IGBgLnBhZFN0YXJ0KDE0NCwgJzAnKSxcbiAgICBnZXQgc2NyaXB0V2l0aFNpZ25hdHVyZSgpOiBzdHJpbmcge1xuICAgICAgcmV0dXJuIHRoaXMuc2NyaXB0ICsgdGhpcy5zaWduYXR1cmU7XG4gICAgfSxcbiAgfSxcbn07XG5cbmNvbnN0IENPSU5fVFlQRSA9ICc4MDAwMDFmNSc7XG5jb25zdCBMQU1QT1JUU19QRVJfU09MID0gMTAwMDAwMDAwMDtcbmNvbnN0IFNZU1RFTV9QUk9HUkFNX0lEID0gYmFzZTU4LmRlY29kZSgnMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTEnKTtcbi8vIHRva2VuXG5jb25zdCBUT0tFTl9QUk9HUkFNX0lEID0gYmFzZTU4LmRlY29kZSgnVG9rZW5rZWdRZmVaeWlOd0FKYk5iR0tQRlhDV3VCdmY5U3M2MjNWUTVEQScpO1xuY29uc3QgVE9LRU5fMjAyMl9QUk9HUkFNX0lEID0gYmFzZTU4LmRlY29kZSgnVG9rZW56UWRCTmJMcVA1VkVoZGtBUzZFUEZMQzFQSG5CcUNYRXBQeHVFYicpO1xuY29uc3QgQVNTT0NJQVRFRF9UT0tFTl9QUk9HUkFNX0lEID0gYmFzZTU4LmRlY29kZSgnQVRva2VuR1B2YmRHVnhyMWIyaHZaYnNpcVc1eFdIMjVlZlROc0xKQThrbkwnKTtcblxuLy8gc3Rha2VcbmNvbnN0IFNUQUtFX1BST0dSQU1fSUQgPSBiYXNlNTguZGVjb2RlKCdTdGFrZTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExJyk7XG5jb25zdCBTVEFLRV9DT05GSUdfSUQgPSBiYXNlNTguZGVjb2RlKCdTdGFrZUNvbmZpZzExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExJyk7XG5cbi8vIHN5c3ZhclxuY29uc3QgU1lTVkFSX1JFTlRfUFVCS0VZID0gYmFzZTU4LmRlY29kZSgnU3lzdmFyUmVudDExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMScpO1xuY29uc3QgU1lTVkFSX0NMT0NLX1BVQktFWSA9IGJhc2U1OC5kZWNvZGUoJ1N5c3ZhckMxb2NrMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTEnKTtcbmNvbnN0IFNZU1ZBUl9TVEFLRV9ISVNUT1JZX1BVQktFWSA9IGJhc2U1OC5kZWNvZGUoJ1N5c3ZhclN0YWtlSGlzdG9yeTExMTExMTExMTExMTExMTExMTExMTExMTEnKTtcblxuY29uc3QgQ09NUFVURV9CVURHRVRfUFJPR1JBTV9JRCA9IGJhc2U1OC5kZWNvZGUoJ0NvbXB1dGVCdWRnZXQxMTExMTExMTExMTExMTExMTExMTExMTExMTExMTEnKTtcblxuY29uc3QgUEFERElOR19QVUJMSUNLRVkgPSBCdWZmZXIuZnJvbSgnLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0nLCAnYXNjaWknKS50b1N0cmluZygnaGV4Jyk7XG5cbmNvbnN0IFBBQ0tFVF9EQVRBX1NJWkUgPSAxMjgwIC0gNDAgLSA4O1xuXG5jb25zdCBWRVJTSU9OX1BSRUZJWF9NQVNLID0gMHg3ZjtcblxuZXhwb3J0IGNvbnN0IFNJR05BVFVSRV9MRU5HVEhfSU5fQllURVMgPSA2NDtcblxuLyoqXG4gKiBTaXplIG9mIHB1YmxpYyBrZXkgaW4gYnl0ZXNcbiAqL1xuY29uc3QgUFVCTElDX0tFWV9MRU5HVEggPSAzMjtcblxuZXhwb3J0IHtcbiAgU0NSSVBULFxuICBDT0lOX1RZUEUsXG4gIExBTVBPUlRTX1BFUl9TT0wsXG4gIFNZU1RFTV9QUk9HUkFNX0lELFxuICBUT0tFTl9QUk9HUkFNX0lELFxuICBUT0tFTl8yMDIyX1BST0dSQU1fSUQsXG4gIFNUQUtFX1BST0dSQU1fSUQsXG4gIFNUQUtFX0NPTkZJR19JRCxcbiAgQVNTT0NJQVRFRF9UT0tFTl9QUk9HUkFNX0lELFxuICBTWVNWQVJfUkVOVF9QVUJLRVksXG4gIFNZU1ZBUl9DTE9DS19QVUJLRVksXG4gIFNZU1ZBUl9TVEFLRV9ISVNUT1JZX1BVQktFWSxcbiAgQ09NUFVURV9CVURHRVRfUFJPR1JBTV9JRCxcbiAgUEFERElOR19QVUJMSUNLRVksXG4gIFBBQ0tFVF9EQVRBX1NJWkUsXG4gIFZFUlNJT05fUFJFRklYX01BU0ssXG4gIFBVQkxJQ19LRVlfTEVOR1RILFxufTtcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQUFBLElBQUFBLEdBQUEsR0FBQUMsc0JBQUEsQ0FBQUMsT0FBQTtBQUVBLElBQU1DLE1BQU0sR0FBQUMsT0FBQSxDQUFBRCxNQUFBLEdBQUc7RUFDYkUsUUFBUSxFQUFFO0lBQ1JDLE1BQU0sb3JCQUFvckI7SUFDMXJCQyxTQUFTLEVBQ1AsaUpBQWlKQyxRQUFRLENBQ3ZKLEdBQUcsRUFDSCxHQUNGLENBQUM7SUFDSCxJQUFJQyxtQkFBbUJBLENBQUEsRUFBVztNQUNoQyxPQUFPLElBQUksQ0FBQ0gsTUFBTSxHQUFHLElBQUksQ0FBQ0MsU0FBUztJQUNyQztFQUNGLENBQUM7RUFDREcsNEJBQTRCLEVBQUU7SUFDNUJKLE1BQU0sZ3lCQUFneUI7SUFDdHlCQyxTQUFTLEVBQ1AsK0lBQStJQyxRQUFRLENBQ3JKLEdBQUcsRUFDSCxHQUNGLENBQUM7SUFDSCxJQUFJQyxtQkFBbUJBLENBQUEsRUFBVztNQUNoQyxPQUFPLElBQUksQ0FBQ0gsTUFBTSxHQUFHLElBQUksQ0FB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