{ "name": "ValidatorRegistry", "desc": "", "methods": [ { "name": "createApplication", "args": [], "returns": { "type": "void" }, "actions": { "create": [ "NoOp" ], "call": [] } }, { "name": "initStakingContract", "args": [ { "name": "approvalProgramSize", "type": "uint64" } ], "returns": { "type": "void" }, "actions": { "create": [], "call": [ "NoOp" ] } }, { "name": "loadStakingContractData", "args": [ { "name": "offset", "type": "uint64" }, { "name": "data", "type": "byte[]" } ], "returns": { "type": "void" }, "actions": { "create": [], "call": [ "NoOp" ] } }, { "name": "finalizeStakingContract", "args": [], "returns": { "type": "void" }, "actions": { "create": [], "call": [ "NoOp" ] } }, { "name": "gas", "desc": "gas is a dummy no-op call that can be used to pool-up resource references and opcode cost", "args": [], "returns": { "type": "void" }, "actions": { "create": [], "call": [ "NoOp" ] } }, { "name": "getMbrAmounts", "desc": "Returns the MBR amounts needed for various actions:\n[\n addValidatorMbr: uint64 - mbr needed to add a new validator - paid to validator contract\n addPoolMbr: uint64 - mbr needed to add a new pool - paid to validator\n poolInitMbr: uint64 - mbr needed to initStorage() of pool - paid to pool itself\n addStakerMbr: uint64 - mbr staker needs to add to first staking payment (stays w/ validator)\n]", "readonly": true, "args": [], "returns": { "type": "(uint64,uint64,uint64,uint64)", "struct": "MbrAmounts" }, "actions": { "create": [], "call": [ "NoOp" ] } }, { "name": "getProtocolConstraints", "desc": "Returns the protocol constraints so that UIs can limit what users specify for validator configuration parameters.", "readonly": true, "args": [], "returns": { "type": "(uint64,uint64,uint64,uint64,uint64,uint64,uint64,uint64,uint64,uint64,uint64)", "struct": "Constraints" }, "actions": { "create": [], "call": [ "NoOp" ] } }, { "name": "getNumValidators", "desc": "Returns the current number of validators", "readonly": true, "args": [], "returns": { "type": "uint64" }, "actions": { "create": [], "call": [ "NoOp" ] } }, { "name": "getValidatorConfig", "readonly": true, "args": [ { "name": "validatorId", "type": "uint64" } ], "returns": { "type": "(uint64,address,address,uint64,uint8,address,uint64[4],uint64,uint64,uint64,uint32,uint32,address,uint64,uint64,uint8,uint64,uint64)", "struct": "ValidatorConfig" }, "actions": { "create": [], "call": [ "NoOp" ] } }, { "name": "getValidatorState", "readonly": true, "args": [ { "name": "validatorId", "type": "uint64" } ], "returns": { "type": "(uint16,uint64,uint64,uint64)", "struct": "ValidatorCurState" }, "actions": { "create": [], "call": [ "NoOp" ] } }, { "name": "getValidatorOwnerAndManager", "readonly": true, "args": [ { "name": "validatorId", "type": "uint64" } ], "returns": { "type": "(address,address)" }, "actions": { "create": [], "call": [ "NoOp" ] } }, { "name": "getPools", "desc": "Return list of all pools for this validator.", "readonly": true, "args": [ { "name": "validatorId", "type": "uint64", "desc": "PoolInfo[] - array of pools\nNot callable from other contracts because 1K return but can be called w/ simulate which bumps log returns" } ], "returns": { "type": "(uint64,uint16,uint64)[]" }, "actions": { "create": [], "call": [ "NoOp" ] } }, { "name": "getPoolAppId", "desc": "getPoolAppId is useful for callers to determine app to call for removing stake if they don't have staking or\nwant to get staker list for an account. The staking pool also uses it to get the app id of staking pool 1\n(which contains reward tokens if being used) so that the amount available can be determined.", "readonly": true, "args": [ { "name": "validatorId", "type": "uint64" }, { "name": "poolId", "type": "uint64" } ], "returns": { "type": "uint64" }, "actions": { "create": [], "call": [ "NoOp" ] } }, { "name": "getPoolInfo", "readonly": true, "args": [ { "name": "poolKey", "type": "(uint64,uint64,uint64)", "struct": "ValidatorPoolKey" } ], "returns": { "type": "(uint64,uint16,uint64)", "struct": "PoolInfo" }, "actions": { "create": [], "call": [ "NoOp" ] } }, { "name": "getCurMaxStakePerPool", "desc": "Calculate the maximum stake per pool for a given validator.\nNormally this would be maxAlgoPerPool, but it should also never go above MaxAllowedStake / numPools so\nas pools are added the max allowed per pool can reduce.", "readonly": true, "args": [ { "name": "validatorId", "type": "uint64", "desc": "The id of the validator." } ], "returns": { "type": "uint64" }, "actions": { "create": [], "call": [ "NoOp" ] } }, { "name": "doesStakerNeedToPayMBR", "desc": "Helper callers can call w/ simulate to determine if 'AddStaker' MBR should be included w/ staking amount", "readonly": true, "args": [ { "name": "staker", "type": "address" } ], "returns": { "type": "bool" }, "actions": { "create": [], "call": [ "NoOp" ] } }, { "name": "getStakedPoolsForAccount", "desc": "Retrieves the staked pools for an account.", "readonly": true, "args": [ { "name": "staker", "type": "address", "desc": "The account to retrieve staked pools for.\n ValidatorPoolKey[] - The array of staked pools for the account." } ], "returns": { "type": "(uint64,uint64,uint64)[]" }, "actions": { "create": [], "call": [ "NoOp" ] } }, { "name": "getTokenPayoutRatio", "desc": "Retrieves the token payout ratio for a given validator - returning the pool ratios of whole so that token\npayouts across pools can be based on a stable snaphost of stake.", "readonly": true, "args": [ { "name": "validatorId", "type": "uint64", "desc": "The id of the validator.\n PoolTokenPayoutRatio - The token payout ratio for the validator." } ], "returns": { "type": "(uint64[24],uint64)", "struct": "PoolTokenPayoutRatio" }, "actions": { "create": [], "call": [ "NoOp" ] } }, { "name": "getNodePoolAssignments", "readonly": true, "args": [ { "name": "validatorId", "type": "uint64" } ], "returns": { "type": "((uint64[3])[8])", "struct": "NodePoolAssignmentConfig" }, "actions": { "create": [], "call": [ "NoOp" ] } }, { "name": "getNFDRegistryID", "readonly": true, "args": [], "returns": { "type": "uint64" }, "actions": { "create": [], "call": [ "NoOp" ] } }, { "name": "addValidator", "desc": "Adds a new validator\nRequires at least 10 ALGO as the 'fee' for the transaction to help dissuade spammed validator adds.", "args": [ { "name": "mbrPayment", "type": "pay", "desc": "payment from caller which covers mbr increase of new validator storage" }, { "name": "nfdName", "type": "string", "desc": "(Optional) Name of nfd (used as double-check against id specified in config)" }, { "name": "config", "type": "(uint64,address,address,uint64,uint8,address,uint64[4],uint64,uint64,uint64,uint32,uint32,address,uint64,uint64,uint8,uint64,uint64)", "desc": "ValidatorConfig struct", "struct": "ValidatorConfig" } ], "returns": { "type": "uint64", "desc": "uint64 validator id" }, "events": [ { "name": "retiOP_addedValidator", "args": [ { "name": "id", "type": "uint64" }, { "name": "owner", "type": "address" }, { "name": "manager", "type": "address" } ], "desc": "Logs the addition of a new validator to the system, its initial owner and manager" } ], "actions": { "create": [], "call": [ "NoOp" ] } }, { "name": "changeValidatorManager", "desc": "Changes the Validator manager for a specific Validator id.\n[ ONLY OWNER CAN CHANGE ]", "args": [ { "name": "validatorId", "type": "uint64", "desc": "The id of the validator to change the manager for." }, { "name": "manager", "type": "address", "desc": "The new manager address." } ], "returns": { "type": "void" }, "actions": { "create": [], "call": [ "NoOp" ] } }, { "name": "changeValidatorSunsetInfo", "desc": "Updates the sunset information for a given validator.\n[ ONLY OWNER CAN CHANGE ]", "args": [ { "name": "validatorId", "type": "uint64", "desc": "The id of the validator to update." }, { "name": "sunsettingOn", "type": "uint64", "desc": "The new sunset timestamp." }, { "name": "sunsettingTo", "type": "uint64", "desc": "The new sunset to validator id." } ], "returns": { "type": "void" }, "actions": { "create": [], "call": [ "NoOp" ] } }, { "name": "changeValidatorNFD", "desc": "Changes the NFD for a validator in the validatorList contract.\n[ ONLY OWNER CAN CHANGE ]", "args": [ { "name": "validatorId", "type": "uint64", "desc": "The id of the validator to update." }, { "name": "nfdAppID", "type": "uint64", "desc": "The application id of the NFD to assign to the validator." }, { "name": "nfdName", "type": "string", "desc": "The name of the NFD (which must match)" } ], "returns": { "type": "void" }, "actions": { "create": [], "call": [ "NoOp" ] } }, { "name": "changeValidatorCommissionAddress", "desc": "Change the commission address that validator rewards are sent to.\n [ ONLY OWNER CAN CHANGE ]", "args": [ { "name": "validatorId", "type": "uint64" }, { "name": "commissionAddress", "type": "address" } ], "returns": { "type": "void" }, "actions": { "create": [], "call": [ "NoOp" ] } }, { "name": "changeValidatorRewardInfo", "desc": "Allow the additional rewards (gating entry, additional token rewards) information be changed at will.\n[ ONLY OWNER CAN CHANGE ]", "args": [ { "name": "validatorId", "type": "uint64" }, { "name": "EntryGatingType", "type": "uint8" }, { "name": "EntryGatingAddress", "type": "address" }, { "name": "EntryGatingAssets", "type": "uint64[4]" }, { "name": "GatingAssetMinBalance", "type": "uint64" }, { "name": "RewardPerPayout", "type": "uint64" } ], "returns": { "type": "void" }, "actions": { "create": [], "call": [ "NoOp" ] } }, { "name": "addPool", "desc": "Adds a new pool to a validator's pool set, returning the 'key' to reference the pool in the future for staking, etc.\nThe caller must pay the cost of the validators MBR increase as well as the MBR that will be needed for the pool itself.\n\n\n[ ONLY OWNER OR MANAGER CAN call ]", "args": [ { "name": "mbrPayment", "type": "pay", "desc": "payment from caller which covers mbr increase of adding a new pool" }, { "name": "validatorId", "type": "uint64", "desc": "is id of validator to pool to (must be owner or manager)" }, { "name": "nodeNum", "type": "uint64", "desc": "is node number to add to" } ], "returns": { "type": "(uint64,uint64,uint64)", "desc": "ValidatorPoolKey pool key to created pool", "struct": "ValidatorPoolKey" }, "events": [ { "name": "retiOP_validatorAddedPool", "args": [ { "name": "id", "type": "uint64" }, { "name": "num", "type": "uint16" }, { "name": "poolAppId", "type": "uint64" } ], "desc": "Logs the addition of a new pool to a particular validator ID" } ], "actions": { "create": [], "call": [ "NoOp" ] } }, { "name": "addStake", "desc": "Adds stake to a validator pool.", "args": [ { "name": "stakedAmountPayment", "type": "pay", "desc": "payment coming from staker to place into a pool" }, { "name": "validatorId", "type": "uint64", "desc": "The id of the validator." }, { "name": "valueToVerify", "type": "uint64", "desc": "only if validator has gating to enter - this is asset id or nfd id that corresponds to gating.\nTxn sender is factored in as well if that is part of gating.\n*" } ], "returns": { "type": "(uint64,uint64,uint64)", "desc": "ValidatorPoolKey - The key of the validator pool.", "struct": "ValidatorPoolKey" }, "events": [ { "name": "retiOP_stakeAdded", "args": [ { "name": "id", "type": "uint64" }, { "name": "poolNum", "type": "uint16" }, { "name": "poolAppId", "type": "uint64" }, { "name": "staker", "type": "address" }, { "name": "amountStaked", "type": "uint64" } ], "desc": "Logs how much stake was added by a staker to a particular staking pool" } ], "actions": { "create": [], "call": [ "NoOp" ] } }, { "name": "setTokenPayoutRatio", "desc": "setTokenPayoutRatio is called by Staking Pool # 1 (ONLY) to ask the validator (us) to calculate the ratios\nof stake in the pools for subsequent token payouts (ie: 2 pools, '100' algo total staked, 60 in pool 1, and 40\nin pool 2) This is done so we have a stable snapshot of stake - taken once per epoch - only triggered by\npool 1 doing payout. pools other than 1 doing payout call pool 1 to ask it do it first.\nIt would be 60/40% in the poolPctOfWhole values. The token reward payouts then use these values instead of\ntheir 'current' stake which changes as part of the payouts themselves (and people could be changing stake\nduring the epoch updates across pools)\n\n\nMultiple pools will call us via pool 1 (pool2-pool1-validator, etc.) so don't assert on pool1 calling multiple\ntimes in same epoch. Just return.", "args": [ { "name": "validatorId", "type": "uint64", "desc": "validator id (and thus pool) calling us. Verified so that sender MUST be pool 1 of this validator." } ], "returns": { "type": "(uint64[24],uint64)", "desc": "PoolTokenPayoutRatio - the finished ratio data", "struct": "PoolTokenPayoutRatio" }, "actions": { "create": [], "call": [ "NoOp" ] } }, { "name": "stakeUpdatedViaRewards", "desc": "stakeUpdatedViaRewards is called by Staking pools to inform the validator (us) that a particular amount of total\nstake has been added to the specified pool. This is used to update the stats we have in our PoolInfo storage.\nThe calling App id is validated against our pool list as well.", "args": [ { "name": "poolKey", "type": "(uint64,uint64,uint64)", "desc": "ValidatorPoolKey type", "struct": "ValidatorPoolKey" }, { "name": "algoToAdd", "type": "uint64", "desc": "amount this validator's total stake increased via rewards" }, { "name": "rewardTokenAmountReserved", "type": "uint64", "desc": "amount this validator's total stake increased via rewards (that should be" }, { "name": "validatorCommission", "type": "uint64", "desc": "the commission amount the validator was paid, if any" }, { "name": "saturatedBurnToFeeSink", "type": "uint64", "desc": "if the pool was in saturated state, the amount sent back to the fee sink.\nseen as 'accounted for/pending spent')" } ], "returns": { "type": "void" }, "events": [ { "name": "retiOP_epochRewardUpdate", "args": [ { "name": "id", "type": "uint64" }, { "name": "poolNum", "type": "uint16" }, { "name": "poolAppId", "type": "uint64" }, { "name": "validatorCommission", "type": "uint64" }, { "name": "saturatedBurnToFeeSink", "type": "uint64" }, { "name": "algoAdded", "type": "uint64" }, { "name": "rewardTokenHeldBack", "type": "uint64" } ], "desc": "Logs how much algo was detected as being added to a staking pool as part of epoch reward calculations.\nCommission amount to validator, excess burned if pool is saturated, and the amount of tokens held back are logged as well." } ], "actions": { "create": [], "call": [ "NoOp" ] } }, { "name": "stakeRemoved", "desc": "stakeRemoved is called by Staking pools to inform the validator (us) that a particular amount of total stake has been removed\nfrom the specified pool. This is used to update the stats we have in our PoolInfo storage.\nIf any amount of rewardRemoved is specified, then that amount of reward is sent to the use\nThe calling App id is validated against our pool list as well.", "args": [ { "name": "poolKey", "type": "(uint64,uint64,uint64)", "desc": "calling us from which stake was removed", "struct": "ValidatorPoolKey" }, { "name": "staker", "type": "address" }, { "name": "amountRemoved", "type": "uint64", "desc": "algo amount removed" }, { "name": "rewardRemoved", "type": "uint64", "desc": "if applicable, amount of token reward removed (by pool 1 caller) or TO remove and pay out (via pool 1 from different pool caller)" }, { "name": "stakerRemoved", "type": "bool" } ], "returns": { "type": "void" }, "events": [ { "name": "retiOP_stakeRemoved", "args": [ { "name": "id", "type": "uint64" }, { "name": "poolNum", "type": "uint16" }, { "name": "poolAppId", "type": "uint64" }, { "name": "staker", "type": "address" }, { "name": "amountUnstaked", "type": "uint64" }, { "name": "rewardTokensReceived", "type": "uint64" }, { "name": "rewardTokenAssetId", "type": "uint64" } ], "desc": "Logs how much stake was removed by a staker from a particular staking pool" } ], "actions": { "create": [], "call": [ "NoOp" ] } }, { "name": "findPoolForStaker", "desc": "Finds the pool for a staker based on the provided validator id, staker address, and amount to stake.\nFirst checks the stakers 'already staked list' for the validator preferring those (adding if possible) then adds\nto new pool if necessary.", "readonly": true, "args": [ { "name": "validatorId", "type": "uint64", "desc": "The id of the validator." }, { "name": "staker", "type": "address", "desc": "The address of the staker." }, { "name": "amountToStake", "type": "uint64", "desc": "The amount to stake." } ], "returns": { "type": "((uint64,uint64,uint64),bool,bool)", "desc": "ValidatorPoolKey, boolean, boolean - The pool for the staker, true/false on whether the staker is 'new'\nto this VALIDATOR, and true/false if staker is new to the protocol." }, "actions": { "create": [], "call": [ "NoOp" ] } }, { "name": "movePoolToNode", "desc": "Find the specified pool (in any node number) and move it to the specified node.\nThe pool account is forced offline if moved so prior node will still run for 320 rounds but\nnew key goes online on new node soon after (320 rounds after it goes online)\nNo-op if success, asserts if not found or can't move (no space in target)\n[ ONLY OWNER OR MANAGER CAN CHANGE ]", "args": [ { "name": "validatorId", "type": "uint64", "desc": "The id of the validator." }, { "name": "poolAppId", "type": "uint64" }, { "name": "nodeNum", "type": "uint64" } ], "returns": { "type": "void" }, "actions": { "create": [], "call": [ "NoOp" ] } }, { "name": "emptyTokenRewards", "desc": "Sends the reward tokens held in pool 1 to specified receiver.\nThis is intended to be used by the owner when they want to get reward tokens 'back' which they sent to\nthe first pool (likely because validator is sunsetting. Any tokens currently 'reserved' for stakers to claim will\nNOT be sent as they must be held back for stakers to later claim.\n[ ONLY OWNER CAN CALL]", "args": [ { "name": "validatorId", "type": "uint64", "desc": "The id of the validator." }, { "name": "receiver", "type": "address", "desc": "the account to send the tokens to (must already be opted-in to the reward token)" } ], "returns": { "type": "uint64", "desc": "uint64 the amount of reward token sent" }, "actions": { "create": [], "call": [ "NoOp" ] } } ], "events": [ { "name": "retiOP_addedValidator", "args": [ { "name": "id", "type": "uint64" }, { "name": "owner", "type": "address" }, { "name": "manager", "type": "address" } ], "desc": "Logs the addition of a new validator to the system, its initial owner and manager" }, { "name": "retiOP_validatorAddedPool", "args": [ { "name": "id", "type": "uint64" }, { "name": "num", "type": "uint16" }, { "name": "poolAppId", "type": "uint64" } ], "desc": "Logs the addition of a new pool to a particular validator ID" }, { "name": "retiOP_stakeAdded", "args": [ { "name": "id", "type": "uint64" }, { "name": "poolNum", "type": "uint16" }, { "name": "poolAppId", "type": "uint64" }, { "name": "staker", "type": "address" }, { "name": "amountStaked", "type": "uint64" } ], "desc": "Logs how much stake was added by a staker to a particular staking pool" }, { "name": "retiOP_epochRewardUpdate", "args": [ { "name": "id", "type": "uint64" }, { "name": "poolNum", "type": "uint16" }, { "name": "poolAppId", "type": "uint64" }, { "name": "validatorCommission", "type": "uint64" }, { "name": "saturatedBurnToFeeSink", "type": "uint64" }, { "name": "algoAdded", "type": "uint64" }, { "name": "rewardTokenHeldBack", "type": "uint64" } ], "desc": "Logs how much algo was detected as being added to a staking pool as part of epoch reward calculations.\nCommission amount to validator, excess burned if pool is saturated, and the amount of tokens held back are logged as well." }, { "name": "retiOP_stakeRemoved", "args": [ { "name": "id", "type": "uint64" }, { "name": "poolNum", "type": "uint16" }, { "name": "poolAppId", "type": "uint64" }, { "name": "staker", "type": "address" }, { "name": "amountUnstaked", "type": "uint64" }, { "name": "rewardTokensReceived", "type": "uint64" }, { "name": "rewardTokenAssetId", "type": "uint64" } ], "desc": "Logs how much stake was removed by a staker from a particular staking pool" } ], "arcs": [ 4, 56 ], "structs": { "ValidatorInfo": [ { "name": "config", "type": [ { "name": "id", "type": "uint64" }, { "name": "owner", "type": "address" }, { "name": "manager", "type": "address" }, { "name": "nfdForInfo", "type": "uint64" }, { "name": "entryGatingType", "type": "uint8" }, { "name": "entryGatingAddress", "type": "address" }, { "name": "entryGatingAssets", "type": "uint64[4]" }, { "name": "gatingAssetMinBalance", "type": "uint64" }, { "name": "rewardTokenId", "type": "uint64" }, { "name": "rewardPerPayout", "type": "uint64" }, { "name": "epochRoundLength", "type": "uint32" }, { "name": "percentToValidator", "type": "uint32" }, { "name": "validatorCommissionAddress", "type": "address" }, { "name": "minEntryStake", "type": "uint64" }, { "name": "maxAlgoPerPool", "type": "uint64" }, { "name": "poolsPerNode", "type": "uint8" }, { "name": "sunsettingOn", "type": "uint64" }, { "name": "sunsettingTo", "type": "uint64" } ] }, { "name": "state", "type": [ { "name": "numPools", "type": "uint16" }, { "name": "totalStakers", "type": "uint64" }, { "name": "totalAlgoStaked", "type": "uint64" }, { "name": "rewardTokenHeldBack", "type": "uint64" } ] }, { "name": "pools", "type": "(uint64,uint16,uint64)[24]" }, { "name": "tokenPayoutRatio", "type": [ { "name": "poolPctOfWhole", "type": "uint64[24]" }, { "name": "updatedForPayout", "type": "uint64" } ] }, { "name": "nodePoolAssignments", "type": [ { "name": "nodes", "type": "(uint64[3])[8]" } ] } ], "MbrAmounts": [ { "name": "addValidatorMbr", "type": "uint64" }, { "name": "addPoolMbr", "type": "uint64" }, { "name": "poolInitMbr", "type": "uint64" }, { "name": "addStakerMbr", "type": "uint64" } ], "Constraints": [ { "name": "epochPayoutRoundsMin", "type": "uint64" }, { "name": "epochPayoutRoundsMax", "type": "uint64" }, { "name": "minPctToValidatorWFourDecimals", "type": "uint64" }, { "name": "maxPctToValidatorWFourDecimals", "type": "uint64" }, { "name": "minEntryStake", "type": "uint64" }, { "name": "maxAlgoPerPool", "type": "uint64" }, { "name": "maxAlgoPerValidator", "type": "uint64" }, { "name": "amtConsideredSaturated", "type": "uint64" }, { "name": "maxNodes", "type": "uint64" }, { "name": "maxPoolsPerNode", "type": "uint64" }, { "name": "maxStakersPerPool", "type": "uint64" } ], "ValidatorConfig": [ { "name": "id", "type": "uint64" }, { "name": "owner", "type": "address" }, { "name": "manager", "type": "address" }, { "name": "nfdForInfo", "type": "uint64" }, { "name": "entryGatingType", "type": "uint8" }, { "name": "entryGatingAddress", "type": "address" }, { "name": "entryGatingAssets", "type": "uint64[4]" }, { "name": "gatingAssetMinBalance", "type": "uint64" }, { "name": "rewardTokenId", "type": "uint64" }, { "name": "rewardPerPayout", "type": "uint64" }, { "name": "epochRoundLength", "type": "uint32" }, { "name": "percentToValidator", "type": "uint32" }, { "name": "validatorCommissionAddress", "type": "address" }, { "name": "minEntryStake", "type": "uint64" }, { "name": "maxAlgoPerPool", "type": "uint64" }, { "name": "poolsPerNode", "type": "uint8" }, { "name": "sunsettingOn", "type": "uint64" }, { "name": "sunsettingTo", "type": "uint64" } ], "ValidatorCurState": [ { "name": "numPools", "type": "uint16" }, { "name": "totalStakers", "type": "uint64" }, { "name": "totalAlgoStaked", "type": "uint64" }, { "name": "rewardTokenHeldBack", "type": "uint64" } ], "PoolInfo": [ { "name": "poolAppId", "type": "uint64" }, { "name": "totalStakers", "type": "uint16" }, { "name": "totalAlgoStaked", "type": "uint64" } ], "ValidatorPoolKey": [ { "name": "id", "type": "uint64" }, { "name": "poolId", "type": "uint64" }, { "name": "poolAppId", "type": "uint64" } ], "PoolTokenPayoutRatio": [ { "name": "poolPctOfWhole", "type": "uint64[24]" }, { "name": "updatedForPayout", "type": "uint64" } ], "NodePoolAssignmentConfig": [ { "name": "nodes", "type": "(uint64[3])[8]" } ] }, "state": { "schema": { "global": { "bytes": 1, "ints": 3 }, "local": { "bytes": 0, "ints": 0 } }, "keys": { "global": { "stakingPoolInitialized": { "key": "aW5pdA==", "keyType": "AVMBytes", "valueType": "bool" }, "numValidators": { "key": "bnVtVg==", "keyType": "AVMBytes", "valueType": "uint64" }, "numStakers": { "key": "bnVtU3Rha2Vycw==", "keyType": "AVMBytes", "valueType": "uint64" }, "totalAlgoStaked": { "key": "c3Rha2Vk", "keyType": "AVMBytes", "valueType": "uint64" } }, "local": {}, "box": { "stakingPoolApprovalProgram": { "key": "cG9vbFRlbXBsYXRlQXBwcm92YWxCeXRlcw==", "keyType": "AVMBytes", "valueType": "AVMBytes" } } }, "maps": { "global": {}, "local": {}, "box": { "validatorList": { "keyType": "uint64", "valueType": "ValidatorInfo", "prefix": "dg==" }, "stakerPoolSet": { "keyType": "address", "valueType": "(uint64,uint64,uint64)[6]", "prefix": "c3Bz" } } } }, "bareActions": { "create": [], "call": [] }, "sourceInfo": { "approval": { "sourceInfo": [ { "teal": 15, "source": "contracts/validatorRegistry.algo.ts:50", "pc": [ 1, 2 ] }, { "teal": 16, "source": "contracts/validatorRegistry.algo.ts:50", "pc": [ 3 ] }, { "teal": 17, "source": "contracts/validatorRegistry.algo.ts:50", "pc": [ 4, 5 ] }, { "teal": 18, "source": "contracts/validatorRegistry.algo.ts:50", "pc": [ 6 ] }, { "teal": 19, "source": "contracts/validatorRegistry.algo.ts:50", "pc": [ 7, 8 ] }, { "teal": 20, "source": "contracts/validatorRegistry.algo.ts:50", "pc": [ 9 ] }, { "teal": 21, "source": "contracts/validatorRegistry.algo.ts:50", "pc": [ 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35 ] }, { "teal": 25, "source": "contracts/validatorRegistry.algo.ts:50", "errorMessage": "The requested action is not implemented in this contract. Are you using the correct OnComplete? Did you set your app ID?", "pc": [ 36 ] }, { "teal": 30, "source": "contracts/validatorRegistry.algo.ts:81", "pc": [ 37, 38, 39 ] }, { "teal": 31, "source": "contracts/validatorRegistry.algo.ts:81", "pc": [ 40 ] }, { "teal": 32, "source": "contracts/validatorRegistry.algo.ts:81", "pc": [ 41 ] }, { "teal": 36, "source": "contracts/validatorRegistry.algo.ts:81", "pc": [ 42, 43, 44 ] }, { "teal": 40, "source": "contracts/validatorRegistry.algo.ts:82", "pc": [ 45, 46 ] }, { "teal": 41, "source": "contracts/validatorRegistry.algo.ts:82", "pc": [ 47 ] }, { "teal": 42, "source": "contracts/validatorRegistry.algo.ts:82", "pc": [ 48, 49 ] }, { "teal": 43, "source": "contracts/validatorRegistry.algo.ts:82", "pc": [ 50 ] }, { "teal": 44, "source": "contracts/validatorRegistry.algo.ts:82", "pc": [ 51, 52 ] }, { "teal": 45, "source": "contracts/validatorRegistry.algo.ts:82", "pc": [ 53 ] }, { "teal": 46, "source": "contracts/validatorRegistry.algo.ts:82", "pc": [ 54 ] }, { "teal": 50, "source": "contracts/validatorRegistry.algo.ts:83", "pc": [ 55, 56 ] }, { "teal": 51, "source": "contracts/validatorRegistry.algo.ts:83", "pc": [ 57 ] }, { "teal": 52, "source": "contracts/validatorRegistry.algo.ts:83", "pc": [ 58 ] }, { "teal": 56, "source": "contracts/validatorRegistry.algo.ts:84", "pc": [ 59, 60 ] }, { "teal": 57, "source": "contracts/validatorRegistry.algo.ts:84", "pc": [ 61 ] }, { "teal": 58, "source": "contracts/validatorRegistry.algo.ts:84", "pc": [ 62 ] }, { "teal": 62, "source": "contracts/validatorRegistry.algo.ts:85", "pc": [ 63, 64 ] }, { "teal": 63, "source": "contracts/validatorRegistry.algo.ts:85", "pc": [ 65 ] }, { "teal": 64, "source": "contracts/validatorRegistry.algo.ts:85", "pc": [ 66 ] }, { "teal": 65, "source": "contracts/validatorRegistry.algo.ts:81", "pc": [ 67 ] }, { "teal": 70, "source": "contracts/validatorRegistry.algo.ts:88", "pc": [ 68, 69, 70 ] }, { "teal": 71, "source": "contracts/validatorRegistry.algo.ts:88", "pc": [ 71 ] }, { "teal": 74, "source": "contracts/validatorRegistry.algo.ts:88", "pc": [ 72, 73, 74 ] }, { "teal": 75, "source": "contracts/validatorRegistry.algo.ts:88", "pc": [ 75 ] }, { "teal": 76, "source": "contracts/validatorRegistry.algo.ts:88", "pc": [ 76 ] }, { "teal": 80, "source": "contracts/validatorRegistry.algo.ts:88", "pc": [ 77, 78, 79 ] }, { "teal": 84, "source": "contracts/validatorRegistry.algo.ts:90", "pc": [ 80, 81 ] }, { "teal": 85, "source": "contracts/validatorRegistry.algo.ts:90", "pc": [ 82, 83 ] }, { "teal": 86, "source": "contracts/validatorRegistry.algo.ts:90", "pc": [ 84 ] }, { "teal": 87, "source": "contracts/validatorRegistry.algo.ts:90", "pc": [ 85 ] }, { "teal": 88, "source": "contracts/validatorRegistry.algo.ts:88", "pc": [ 86 ] }, { "teal": 93, "source": "contracts/validatorRegistry.algo.ts:93", "pc": [ 87, 88, 89 ] }, { "teal": 94, "source": "contracts/validatorRegistry.algo.ts:93", "pc": [ 90, 91, 92 ] }, { "teal": 97, "source": "contracts/validatorRegistry.algo.ts:93", "pc": [ 93, 94, 95 ] }, { "teal": 98, "source": "contracts/validatorRegistry.algo.ts:93", "pc": [ 96 ] }, { "teal": 101, "source": "contracts/validatorRegistry.algo.ts:93", "pc": [ 97, 98, 99 ] }, { "teal": 102, "source": "contracts/validatorRegistry.algo.ts:93", "pc": [ 100 ] }, { "teal": 103, "source": "contracts/validatorRegistry.algo.ts:93", "pc": [ 101 ] }, { "teal": 107, "source": "contracts/validatorRegistry.algo.ts:93", "pc": [ 102, 103, 104 ] }, { "teal": 111, "source": "contracts/validatorRegistry.algo.ts:94", "pc": [ 105, 106 ] }, { "teal": 112, "source": "contracts/validatorRegistry.algo.ts:94", "pc": [ 107 ] }, { "teal": 113, "source": "contracts/validatorRegistry.algo.ts:94", "pc": [ 108 ] }, { "teal": 114, "source": "contracts/validatorRegistry.algo.ts:94", "pc": [ 109 ] }, { "teal": 115, "source": "contracts/validatorRegistry.algo.ts:94", "pc": [ 110 ] }, { "teal": 116, "source": "contracts/validatorRegistry.algo.ts:94", "pc": [ 111 ] }, { "teal": 120, "source": "contracts/validatorRegistry.algo.ts:95", "pc": [ 112, 113 ] }, { "teal": 121, "source": "contracts/validatorRegistry.algo.ts:95", "pc": [ 114, 115 ] }, { "teal": 122, "source": "contracts/validatorRegistry.algo.ts:95", "pc": [ 116, 117 ] }, { "teal": 123, "source": "contracts/validatorRegistry.algo.ts:95", "pc": [ 118 ] }, { "teal": 124, "source": "contracts/validatorRegistry.algo.ts:93", "pc": [ 119 ] }, { "teal": 129, "source": "contracts/validatorRegistry.algo.ts:98", "pc": [ 120, 121, 122 ] }, { "teal": 130, "source": "contracts/validatorRegistry.algo.ts:98", "pc": [ 123 ] }, { "teal": 131, "source": "contracts/validatorRegistry.algo.ts:98", "pc": [ 124 ] }, { "teal": 135, "source": "contracts/validatorRegistry.algo.ts:98", "pc": [ 125, 126, 127 ] }, { "teal": 139, "source": "contracts/validatorRegistry.algo.ts:99", "pc": [ 128, 129 ] }, { "teal": 140, "source": "contracts/validatorRegistry.algo.ts:99", "pc": [ 130 ] }, { "teal": 141, "source": "contracts/validatorRegistry.algo.ts:99", "pc": [ 131, 132 ] }, { "teal": 142, "source": "contracts/validatorRegistry.algo.ts:99", "pc": [ 133 ] }, { "teal": 143, "source": "contracts/validatorRegistry.algo.ts:99", "pc": [ 134, 135 ] }, { "teal": 144, "source": "contracts/validatorRegistry.algo.ts:99", "pc": [ 136 ] }, { "teal": 145, "source": "contracts/validatorRegistry.algo.ts:99", "pc": [ 137 ] }, { "teal": 146, "source": "contracts/validatorRegistry.algo.ts:98", "pc": [ 138 ] }, { "teal": 151, "source": "contracts/validatorRegistry.algo.ts:105", "pc": [ 139, 140, 141 ] }, { "teal": 152, "source": "contracts/validatorRegistry.algo.ts:105", "pc": [ 142 ] }, { "teal": 153, "source": "contracts/validatorRegistry.algo.ts:105", "pc": [ 143 ] }, { "teal": 159, "source": "contracts/validatorRegistry.algo.ts:105", "pc": [ 144, 145, 146 ] }, { "teal": 160, "source": "contracts/validatorRegistry.algo.ts:105", "pc": [ 147 ] }, { "teal": 165, "source": "contracts/validatorRegistry.algo.ts:116", "pc": [ 148 ] }, { "teal": 168, "source": "contracts/validatorRegistry.algo.ts:116", "pc": [ 149, 150, 151 ] }, { "teal": 169, "source": "contracts/validatorRegistry.algo.ts:116", "pc": [ 152 ] }, { "teal": 170, "source": "contracts/validatorRegistry.algo.ts:116", "pc": [ 153 ] }, { "teal": 171, "source": "contracts/validatorRegistry.algo.ts:116", "pc": [ 154 ] }, { "teal": 172, "source": "contracts/validatorRegistry.algo.ts:116", "pc": [ 155 ] }, { "teal": 184, "source": "contracts/validatorRegistry.algo.ts:116", "pc": [ 156, 157, 158 ] }, { "teal": 209, "source": "contracts/validatorRegistry.algo.ts:121", "pc": [ 159, 160, 161 ] }, { "teal": 210, "source": "contracts/validatorRegistry.algo.ts:121", "pc": [ 162, 163, 164 ] }, { "teal": 211, "source": "contracts/validatorRegistry.algo.ts:121", "pc": [ 165 ] }, { "teal": 212, "source": "contracts/validatorRegistry.algo.ts:131", "pc": [ 166, 167 ] }, { "teal": 213, "source": "contracts/validatorRegistry.algo.ts:130", "pc": [ 168, 169 ] }, { "teal": 214, "source": "contracts/validatorRegistry.algo.ts:129", "pc": [ 170 ] }, { "teal": 215, "source": "contracts/validatorRegistry.algo.ts:129", "pc": [ 171, 172 ] }, { "teal": 216, "source": "contracts/validatorRegistry.algo.ts:126", "pc": [ 173, 174 ] }, { "teal": 217, "source": "contracts/validatorRegistry.algo.ts:123", "pc": [ 175 ] }, { "teal": 218, "source": "contracts/validatorRegistry.algo.ts:122", "pc": [ 176, 177, 178 ] }, { "teal": 219, "source": "contracts/validatorRegistry.algo.ts:122", "pc": [ 179 ] }, { "teal": 220, "source": "contracts/validatorRegistry.algo.ts:122", "pc": [ 180 ] }, { "teal": 221, "source": "contracts/validatorRegistry.algo.ts:134", "pc": [ 181, 182 ] }, { "teal": 222, "source": "contracts/validatorRegistry.algo.ts:135", "pc": [ 183, 184, 185 ] }, { "teal": 223, "source": "contracts/validatorRegistry.algo.ts:135", "pc": [ 186, 187, 188 ] }, { "teal": 224, "source": "contracts/validatorRegistry.algo.ts:134", "pc": [ 189 ] }, { "teal": 225, "source": "contracts/validatorRegistry.algo.ts:134", "pc": [ 190 ] }, { "teal": 226, "source": "contracts/validatorRegistry.algo.ts:134", "pc": [ 191 ] }, { "teal": 227, "source": "contracts/validatorRegistry.algo.ts:139", "pc": [ 192, 193, 194 ] }, { "teal": 228, "source": "contracts/validatorRegistry.algo.ts:138", "pc": [ 195, 196, 197 ] }, { "teal": 229, "source": "contracts/validatorRegistry.algo.ts:138", "pc": [ 198 ] }, { "teal": 230, "source": "contracts/validatorRegistry.algo.ts:138", "pc": [ 199 ] }, { "teal": 231, "source": "contracts/validatorRegistry.algo.ts:116", "pc": [ 200 ] }, { "teal": 236, "source": "contracts/validatorRegistry.algo.ts:147", "pc": [ 201 ] }, { "teal": 239, "source": "contracts/validatorRegistry.algo.ts:147", "pc": [ 202, 203, 204 ] }, { "teal": 240, "source": "contracts/validatorRegistry.algo.ts:147", "pc": [ 205 ] }, { "teal": 241, "source": "contracts/validatorRegistry.algo.ts:147", "pc": [ 206 ] }, { "teal": 242, "source": "contracts/validatorRegistry.algo.ts:147", "pc": [ 207 ] }, { "teal": 243, "source": "contracts/validatorRegistry.algo.ts:147", "pc": [ 208 ] }, { "teal": 249, "source": "contracts/validatorRegistry.algo.ts:147", "pc": [ 209, 210, 211 ] }, { "teal": 265, "source": "contracts/validatorRegistry.algo.ts:154", "pc": [ 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253 ] }, { "teal": 266, "source": "contracts/validatorRegistry.algo.ts:155", "pc": [ 254, 255, 256 ] }, { "teal": 267, "source": "contracts/validatorRegistry.algo.ts:155", "pc": [ 257 ] }, { "teal": 268, "source": "contracts/validatorRegistry.algo.ts:155", "pc": [ 258 ] }, { "teal": 269, "source": "contracts/validatorRegistry.algo.ts:156", "pc": [ 259, 260, 261 ] }, { "teal": 270, "source": "contracts/validatorRegistry.algo.ts:156", "pc": [ 262 ] }, { "teal": 271, "source": "contracts/validatorRegistry.algo.ts:156", "pc": [ 263 ] }, { "teal": 272, "source": "contracts/validatorRegistry.algo.ts:157", "pc": [ 264, 265, 266 ] }, { "teal": 273, "source": "contracts/validatorRegistry.algo.ts:157", "pc": [ 267 ] }, { "teal": 274, "source": "contracts/validatorRegistry.algo.ts:157", "pc": [ 268 ] }, { "teal": 275, "source": "contracts/validatorRegistry.algo.ts:158", "pc": [ 269, 270, 271, 272, 273, 274, 275, 276, 277, 278 ] }, { "teal": 276, "source": "contracts/validatorRegistry.algo.ts:158", "pc": [ 279 ] }, { "teal": 277, "source": "contracts/validatorRegistry.algo.ts:159", "pc": [ 280, 281, 282, 283, 284, 285, 286, 287, 288, 289 ] }, { "teal": 278, "source": "contracts/validatorRegistry.algo.ts:159", "pc": [ 290 ] }, { "teal": 279, "source": "contracts/validatorRegistry.algo.ts:160", "pc": [ 291, 292, 293, 294, 295, 296, 297, 298, 299, 300 ] }, { "teal": 280, "source": "contracts/validatorRegistry.algo.ts:160", "pc": [ 301 ] }, { "teal": 281, "source": "contracts/validatorRegistry.algo.ts:147", "pc": [ 302 ] }, { "teal": 286, "source": "contracts/validatorRegistry.algo.ts:167", "pc": [ 303 ] }, { "teal": 289, "source": "contracts/validatorRegistry.algo.ts:167", "pc": [ 304, 305, 306 ] }, { "teal": 290, "source": "contracts/validatorRegistry.algo.ts:167", "pc": [ 307 ] }, { "teal": 291, "source": "contracts/validatorRegistry.algo.ts:167", "pc": [ 308 ] }, { "teal": 292, "source": "contracts/validatorRegistry.algo.ts:167", "pc": [ 309 ] }, { "teal": 293, "source": "contracts/validatorRegistry.algo.ts:167", "pc": [ 310 ] }, { "teal": 294, "source": "contracts/validatorRegistry.algo.ts:167", "pc": [ 311 ] }, { "teal": 300, "source": "contracts/validatorRegistry.algo.ts:167", "pc": [ 312, 313, 314 ] }, { "teal": 304, "source": "contracts/validatorRegistry.algo.ts:169", "pc": [ 315, 316 ] }, { "teal": 305, "source": "contracts/validatorRegistry.algo.ts:169", "pc": [ 317 ] }, { "teal": 306, "source": "contracts/validatorRegistry.algo.ts:167", "pc": [ 318 ] }, { "teal": 311, "source": "contracts/validatorRegistry.algo.ts:172", "pc": [ 319 ] }, { "teal": 314, "source": "contracts/validatorRegistry.algo.ts:173", "pc": [ 320, 321, 322 ] }, { "teal": 315, "source": "contracts/validatorRegistry.algo.ts:173", "pc": [ 323 ] }, { "teal": 318, "source": "contracts/validatorRegistry.algo.ts:172", "pc": [ 324, 325, 326 ] }, { "teal": 319, "source": "contracts/validatorRegistry.algo.ts:172", "pc": [ 327 ] }, { "teal": 320, "source": "contracts/validatorRegistry.algo.ts:172", "pc": [ 328 ] }, { "teal": 321, "source": "contracts/validatorRegistry.algo.ts:172", "pc": [ 329 ] }, { "teal": 322, "source": "contracts/validatorRegistry.algo.ts:172", "pc": [ 330 ] }, { "teal": 326, "source": "contracts/validatorRegistry.algo.ts:172", "pc": [ 331, 332, 333 ] }, { "teal": 330, "source": "contracts/validatorRegistry.algo.ts:174", "pc": [ 334 ] }, { "teal": 331, "source": "contracts/validatorRegistry.algo.ts:174", "pc": [ 335, 336 ] }, { "teal": 332, "source": "contracts/validatorRegistry.algo.ts:174", "pc": [ 337 ] }, { "teal": 333, "source": "contracts/validatorRegistry.algo.ts:174", "pc": [ 338, 339 ] }, { "teal": 334, "source": "contracts/validatorRegistry.algo.ts:174", "pc": [ 340 ] }, { "teal": 335, "source": "contracts/validatorRegistry.algo.ts:174", "pc": [ 341 ] }, { "teal": 336, "source": "contracts/validatorRegistry.algo.ts:174", "pc": [ 342, 343 ] }, { "teal": 337, "source": "contracts/validatorRegistry.algo.ts:174", "pc": [ 344 ] }, { "teal": 338, "source": "contracts/validatorRegistry.algo.ts:172", "pc": [ 345 ] }, { "teal": 343, "source": "contracts/validatorRegistry.algo.ts:177", "pc": [ 346 ] }, { "teal": 346, "source": "contracts/validatorRegistry.algo.ts:178", "pc": [ 347, 348, 349 ] }, { "teal": 347, "source": "contracts/validatorRegistry.algo.ts:178", "pc": [ 350 ] }, { "teal": 350, "source": "contracts/validatorRegistry.algo.ts:177", "pc": [ 351, 352, 353 ] }, { "teal": 351, "source": "contracts/validatorRegistry.algo.ts:177", "pc": [ 354 ] }, { "teal": 352, "source": "contracts/validatorRegistry.algo.ts:177", "pc": [ 355 ] }, { "teal": 353, "source": "contracts/validatorRegistry.algo.ts:177", "pc": [ 356 ] }, { "teal": 354, "source": "contracts/validatorRegistry.algo.ts:177", "pc": [ 357 ] }, { "teal": 358, "source": "contracts/validatorRegistry.algo.ts:177", "pc": [ 358, 359, 360 ] }, { "teal": 362, "source": "contracts/validatorRegistry.algo.ts:179", "pc": [ 361, 362 ] }, { "teal": 363, "source": "contracts/validatorRegistry.algo.ts:179", "pc": [ 363, 364 ] }, { "teal": 364, "source": "contracts/validatorRegistry.algo.ts:179", "pc": [ 365 ] }, { "teal": 365, "source": "contracts/validatorRegistry.algo.ts:179", "pc": [ 366, 367 ] }, { "teal": 366, "source": "contracts/validatorRegistry.algo.ts:179", "pc": [ 368 ] }, { "teal": 367, "source": "contracts/validatorRegistry.algo.ts:179", "pc": [ 369 ] }, { "teal": 368, "source": "contracts/validatorRegistry.algo.ts:179", "pc": [ 370, 371 ] }, { "teal": 369, "source": "contracts/validatorRegistry.algo.ts:179", "pc": [ 372 ] }, { "teal": 370, "source": "contracts/validatorRegistry.algo.ts:177", "pc": [ 373 ] }, { "teal": 375, "source": "contracts/validatorRegistry.algo.ts:182", "pc": [ 374 ] }, { "teal": 378, "source": "contracts/validatorRegistry.algo.ts:183", "pc": [ 375, 376, 377 ] }, { "teal": 379, "source": "contracts/validatorRegistry.algo.ts:183", "pc": [ 378 ] }, { "teal": 382, "source": "contracts/validatorRegistry.algo.ts:182", "pc": [ 379, 380, 381 ] }, { "teal": 383, "source": "contracts/validatorRegistry.algo.ts:182", "pc": [ 382 ] }, { "teal": 384, "source": "contracts/validatorRegistry.algo.ts:182", "pc": [ 383 ] }, { "teal": 385, "source": "contracts/validatorRegistry.algo.ts:182", "pc": [ 384 ] }, { "teal": 386, "source": "contracts/validatorRegistry.algo.ts:182", "pc": [ 385 ] }, { "teal": 390, "source": "contracts/validatorRegistry.algo.ts:182", "pc": [ 386, 387, 388 ] }, { "teal": 397, "source": "contracts/validatorRegistry.algo.ts:185", "pc": [ 389 ] }, { "teal": 398, "source": "contracts/validatorRegistry.algo.ts:185", "pc": [ 390, 391 ] }, { "teal": 399, "source": "contracts/validatorRegistry.algo.ts:185", "pc": [ 392 ] }, { "teal": 400, "source": "contracts/validatorRegistry.algo.ts:185", "pc": [ 393, 394 ] }, { "teal": 401, "source": "contracts/validatorRegistry.algo.ts:185", "pc": [ 395 ] }, { "teal": 402, "source": "contracts/validatorRegistry.algo.ts:185", "pc": [ 396 ] }, { "teal": 403, "source": "contracts/validatorRegistry.algo.ts:185", "pc": [ 397, 398 ] }, { "teal": 404, "source": "contracts/validatorRegistry.algo.ts:185", "pc": [ 399 ] }, { "teal": 405, "source": "contracts/validatorRegistry.algo.ts:186", "pc": [ 400, 401 ] }, { "teal": 406, "source": "contracts/validatorRegistry.algo.ts:186", "pc": [ 402, 403 ] }, { "teal": 407, "source": "contracts/validatorRegistry.algo.ts:186", "pc": [ 404 ] }, { "teal": 408, "source": "contracts/validatorRegistry.algo.ts:186", "pc": [ 405, 406 ] }, { "teal": 409, "source": "contracts/validatorRegistry.algo.ts:186", "pc": [ 407 ] }, { "teal": 410, "source": "contracts/validatorRegistry.algo.ts:186", "pc": [ 408 ] }, { "teal": 411, "source": "contracts/validatorRegistry.algo.ts:186", "pc": [ 409, 410 ] }, { "teal": 412, "source": "contracts/validatorRegistry.algo.ts:186", "pc": [ 411 ] }, { "teal": 413, "source": "contracts/validatorRegistry.algo.ts:186", "pc": [ 412 ] }, { "teal": 414, "source": "contracts/validatorRegistry.algo.ts:182", "pc": [ 413 ] }, { "teal": 419, "source": "contracts/validatorRegistry.algo.ts:196", "pc": [ 414 ] }, { "teal": 422, "source": "contracts/validatorRegistry.algo.ts:197", "pc": [ 415, 416, 417 ] }, { "teal": 423, "source": "contracts/validatorRegistry.algo.ts:197", "pc": [ 418 ] }, { "teal": 426, "source": "contracts/validatorRegistry.algo.ts:196", "pc": [ 419, 420, 421 ] }, { "teal": 427, "source": "contracts/validatorRegistry.algo.ts:196", "pc": [ 422 ] }, { "teal": 428, "source": "contracts/validatorRegistry.algo.ts:196", "pc": [ 423 ] }, { "teal": 429, "source": "contracts/validatorRegistry.algo.ts:196", "pc": [ 424, 425 ] }, { "teal": 430, "source": "contracts/validatorRegistry.algo.ts:196", "pc": [ 426 ] }, { "teal": 431, "source": "contracts/validatorRegistry.algo.ts:196", "pc": [ 427 ] }, { "teal": 432, "source": "contracts/validatorRegistry.algo.ts:196", "pc": [ 428, 429, 430 ] }, { "teal": 433, "source": "contracts/validatorRegistry.algo.ts:196", "pc": [ 431 ] }, { "teal": 434, "source": "contracts/validatorRegistry.algo.ts:196", "pc": [ 432 ] }, { "teal": 435, "source": "contracts/validatorRegistry.algo.ts:196", "pc": [ 433 ] }, { "teal": 436, "source": "contracts/validatorRegistry.algo.ts:196", "pc": [ 434 ] }, { "teal": 437, "source": "contracts/validatorRegistry.algo.ts:196", "pc": [ 435 ] }, { "teal": 438, "source": "contracts/validatorRegistry.algo.ts:196", "pc": [ 436 ] }, { "teal": 447, "source": "contracts/validatorRegistry.algo.ts:196", "pc": [ 437, 438, 439 ] }, { "teal": 450, "source": "contracts/validatorRegistry.algo.ts:196", "pc": [ 440 ] }, { "teal": 451, "source": "contracts/validatorRegistry.algo.ts:196", "pc": [ 441, 442 ] }, { "teal": 455, "source": "contracts/validatorRegistry.algo.ts:198", "pc": [ 443 ] }, { "teal": 456, "source": "contracts/validatorRegistry.algo.ts:198", "pc": [ 444, 445 ] }, { "teal": 460, "source": "contracts/validatorRegistry.algo.ts:199", "pc": [ 446, 447 ] }, { "teal": 461, "source": "contracts/validatorRegistry.algo.ts:199", "pc": [ 448, 449 ] }, { "teal": 462, "source": "contracts/validatorRegistry.algo.ts:199", "pc": [ 450 ] }, { "teal": 463, "source": "contracts/validatorRegistry.algo.ts:199", "pc": [ 451, 452 ] }, { "teal": 464, "source": "contracts/validatorRegistry.algo.ts:199", "pc": [ 453 ] }, { "teal": 465, "source": "contracts/validatorRegistry.algo.ts:199", "pc": [ 454 ] }, { "teal": 466, "source": "contracts/validatorRegistry.algo.ts:199", "pc": [ 455, 456 ] }, { "teal": 467, "source": "contracts/validatorRegistry.algo.ts:199", "pc": [ 457 ] }, { "teal": 468, "source": "contracts/validatorRegistry.algo.ts:199", "pc": [ 458, 459 ] }, { "teal": 472, "source": "contracts/validatorRegistry.algo.ts:200", "pc": [ 460 ] }, { "teal": 473, "source": "contracts/validatorRegistry.algo.ts:200", "pc": [ 461, 462 ] }, { "teal": 478, "source": "contracts/validatorRegistry.algo.ts:200", "pc": [ 463, 464 ] }, { "teal": 479, "source": "contracts/validatorRegistry.algo.ts:200", "pc": [ 465 ] }, { "teal": 480, "source": "contracts/validatorRegistry.algo.ts:200", "pc": [ 466 ] }, { "teal": 481, "source": "contracts/validatorRegistry.algo.ts:200", "pc": [ 467, 468, 469 ] }, { "teal": 486, "source": "contracts/validatorRegistry.algo.ts:201", "pc": [ 470, 471 ] }, { "teal": 487, "source": "contracts/validatorRegistry.algo.ts:201", "pc": [ 472, 473 ] }, { "teal": 488, "source": "contracts/validatorRegistry.algo.ts:201", "pc": [ 474, 475 ] }, { "teal": 489, "source": "contracts/validatorRegistry.algo.ts:201", "pc": [ 476 ] }, { "teal": 490, "source": "contracts/validatorRegistry.algo.ts:201", "pc": [ 477 ] }, { "teal": 491, "source": "contracts/validatorRegistry.algo.ts:201", "pc": [ 478 ] }, { "teal": 492, "source": "contracts/validatorRegistry.algo.ts:201", "pc": [ 479 ] }, { "teal": 493, "source": "contracts/validatorRegistry.algo.ts:201", "pc": [ 480 ] }, { "teal": 494, "source": "contracts/validatorRegistry.algo.ts:201", "pc": [ 481 ] }, { "teal": 495, "source": "contracts/validatorRegistry.algo.ts:201", "pc": [ 482 ] }, { "teal": 496, "source": "contracts/validatorRegistry.algo.ts:201", "pc": [ 483 ] }, { "teal": 497, "source": "contracts/validatorRegistry.algo.ts:201", "pc": [ 484, 485, 486 ] }, { "teal": 500, "source": "contracts/validatorRegistry.algo.ts:203", "pc": [ 487, 488, 489 ] }, { "teal": 505, "source": "contracts/validatorRegistry.algo.ts:205", "pc": [ 490, 491 ] }, { "teal": 506, "source": "contracts/validatorRegistry.algo.ts:205", "pc": [ 492, 493 ] }, { "teal": 507, "source": "contracts/validatorRegistry.algo.ts:205", "pc": [ 494, 495 ] }, { "teal": 508, "source": "contracts/validatorRegistry.algo.ts:205", "pc": [ 496, 497 ] }, { "teal": 509, "source": "contracts/validatorRegistry.algo.ts:205", "pc": [ 498 ] }, { "teal": 510, "source": "contracts/validatorRegistry.algo.ts:205", "pc": [ 499, 500 ] }, { "teal": 511, "source": "contracts/validatorRegistry.algo.ts:205", "pc": [ 501 ] }, { "teal": 512, "source": "contracts/validatorRegistry.algo.ts:205", "pc": [ 502 ] }, { "teal": 513, "source": "contracts/validatorRegistry.algo.ts:205", "pc": [ 503, 504 ] }, { "teal": 518, "source": "contracts/validatorRegistry.algo.ts:200", "pc": [ 505, 506 ] }, { "teal": 519, "source": "contracts/validatorRegistry.algo.ts:200", "pc": [ 507 ] }, { "teal": 520, "source": "contracts/validatorRegistry.algo.ts:200", "pc": [ 508 ] }, { "teal": 521, "source": "contracts/validatorRegistry.algo.ts:200", "pc": [ 509, 510 ] }, { "teal": 522, "source": "contracts/validatorRegistry.algo.ts:200", "pc": [ 511, 512, 513 ] }, { "teal": 527, "source": "contracts/validatorRegistry.algo.ts:207", "pc": [ 514, 515 ] }, { "teal": 530, "source": "contracts/validatorRegistry.algo.ts:196", "pc": [ 516, 517 ] }, { "teal": 533, "source": "contracts/validatorRegistry.algo.ts:196", "pc": [ 518, 519 ] }, { "teal": 534, "source": "contracts/validatorRegistry.algo.ts:196", "pc": [ 520 ] }, { "teal": 539, "source": "contracts/validatorRegistry.algo.ts:215", "pc": [ 521 ] }, { "teal": 542, "source": "contracts/validatorRegistry.algo.ts:216", "pc": [ 522, 523, 524 ] }, { "teal": 543, "source": "contracts/validatorRegistry.algo.ts:216", "pc": [ 525 ] }, { "teal": 546, "source": "contracts/validatorRegistry.algo.ts:216", "pc": [ 526, 527, 528 ] }, { "teal": 547, "source": "contracts/validatorRegistry.algo.ts:216", "pc": [ 529 ] }, { "teal": 550, "source": "contracts/validatorRegistry.algo.ts:215", "pc": [ 530, 531, 532 ] }, { "teal": 551, "source": "contracts/validatorRegistry.algo.ts:215", "pc": [ 533 ] }, { "teal": 552, "source": "contracts/validatorRegistry.algo.ts:215", "pc": [ 534 ] }, { "teal": 553, "source": "contracts/validatorRegistry.algo.ts:215", "pc": [ 535 ] }, { "teal": 554, "source": "contracts/validatorRegistry.algo.ts:215", "pc": [ 536 ] }, { "teal": 555, "source": "contracts/validatorRegistry.algo.ts:215", "pc": [ 537 ] }, { "teal": 563, "source": "contracts/validatorRegistry.algo.ts:215", "pc": [ 538, 539, 540 ] }, { "teal": 570, "source": "contracts/validatorRegistry.algo.ts:218", "pc": [ 541, 542 ] }, { "teal": 571, "source": "contracts/validatorRegistry.algo.ts:218", "pc": [ 543 ] }, { "teal": 572, "source": "contracts/validatorRegistry.algo.ts:218", "pc": [ 544 ] }, { "teal": 573, "source": "contracts/validatorRegistry.algo.ts:218", "pc": [ 545 ] }, { "teal": 574, "source": "contracts/validatorRegistry.algo.ts:218", "pc": [ 546, 547, 548 ] }, { "teal": 575, "source": "contracts/validatorRegistry.algo.ts:218", "pc": [ 549, 550 ] }, { "teal": 576, "source": "contracts/validatorRegistry.algo.ts:218", "pc": [ 551 ] }, { "teal": 577, "source": "contracts/validatorRegistry.algo.ts:218", "pc": [ 552 ] }, { "teal": 578, "source": "contracts/validatorRegistry.algo.ts:218", "pc": [ 553 ] }, { "teal": 582, "source": "contracts/validatorRegistry.algo.ts:217", "errorMessage": "pool id must be between 1 and number of pools for this validator", "pc": [ 554 ] }, { "teal": 586, "source": "contracts/validatorRegistry.algo.ts:221", "pc": [ 555, 556 ] }, { "teal": 587, "source": "contracts/validatorRegistry.algo.ts:221", "pc": [ 557, 558 ] }, { "teal": 588, "source": "contracts/validatorRegistry.algo.ts:221", "pc": [ 559 ] }, { "teal": 589, "source": "contracts/validatorRegistry.algo.ts:221", "pc": [ 560 ] }, { "teal": 590, "source": "contracts/validatorRegistry.algo.ts:221", "pc": [ 561, 562 ] }, { "teal": 591, "source": "contracts/validatorRegistry.algo.ts:221", "pc": [ 563 ] }, { "teal": 592, "source": "contracts/validatorRegistry.algo.ts:221", "pc": [ 564 ] }, { "teal": 593, "source": "contracts/validatorRegistry.algo.ts:221", "pc": [ 565 ] }, { "teal": 594, "source": "contracts/validatorRegistry.algo.ts:221", "pc": [ 566 ] }, { "teal": 595, "source": "contracts/validatorRegistry.algo.ts:221", "pc": [ 567 ] }, { "teal": 596, "source": "contracts/validatorRegistry.algo.ts:221", "pc": [ 568 ] }, { "teal": 597, "source": "contracts/validatorRegistry.algo.ts:221", "pc": [ 569, 570 ] }, { "teal": 598, "source": "contracts/validatorRegistry.algo.ts:221", "pc": [ 571 ] }, { "teal": 599, "source": "contracts/validatorRegistry.algo.ts:221", "pc": [ 572 ] }, { "teal": 600, "source": "contracts/validatorRegistry.algo.ts:221", "pc": [ 573, 574 ] }, { "teal": 601, "source": "contracts/validatorRegistry.algo.ts:221", "pc": [ 575 ] }, { "teal": 602, "source": "contracts/validatorRegistry.algo.ts:221", "pc": [ 576 ] }, { "teal": 603, "source": "contracts/validatorRegistry.algo.ts:215", "pc": [ 577 ] }, { "teal": 608, "source": "contracts/validatorRegistry.algo.ts:224", "pc": [ 578 ] }, { "teal": 611, "source": "contracts/validatorRegistry.algo.ts:225", "pc": [ 579, 580, 581 ] }, { "teal": 612, "source": "contracts/validatorRegistry.algo.ts:225", "pc": [ 582 ] }, { "teal": 613, "source": "contracts/validatorRegistry.algo.ts:225", "pc": [ 583 ] }, { "teal": 614, "source": "contracts/validatorRegistry.algo.ts:225", "pc": [ 584 ] }, { "teal": 615, "source": "contracts/validatorRegistry.algo.ts:225", "pc": [ 585 ] }, { "teal": 618, "source": "contracts/validatorRegistry.algo.ts:225", "errorMessage": "argument 0 (poolKey) for getPoolInfo must be a (uint64,uint64,uint64)", "pc": [ 586 ] }, { "teal": 621, "source": "contracts/validatorRegistry.algo.ts:224", "pc": [ 587, 588, 589 ] }, { "teal": 622, "source": "contracts/validatorRegistry.algo.ts:224", "pc": [ 590 ] }, { "teal": 623, "source": "contracts/validatorRegistry.algo.ts:224", "pc": [ 591 ] }, { "teal": 624, "source": "contracts/validatorRegistry.algo.ts:224", "pc": [ 592 ] }, { "teal": 625, "source": "contracts/validatorRegistry.algo.ts:224", "pc": [ 593 ] }, { "teal": 629, "source": "contracts/validatorRegistry.algo.ts:224", "pc": [ 594, 595, 596 ] }, { "teal": 633, "source": "contracts/validatorRegistry.algo.ts:226", "pc": [ 597, 598 ] }, { "teal": 634, "source": "contracts/validatorRegistry.algo.ts:226", "pc": [ 599, 600 ] }, { "teal": 635, "source": "contracts/validatorRegistry.algo.ts:226", "pc": [ 601, 602, 603 ] }, { "teal": 636, "source": "contracts/validatorRegistry.algo.ts:226", "pc": [ 604 ] }, { "teal": 637, "source": "contracts/validatorRegistry.algo.ts:226", "pc": [ 605 ] }, { "teal": 638, "source": "contracts/validatorRegistry.algo.ts:226", "pc": [ 606 ] }, { "teal": 639, "source": "contracts/validatorRegistry.algo.ts:226", "pc": [ 607, 608 ] }, { "teal": 640, "source": "contracts/validatorRegistry.algo.ts:226", "pc": [ 609 ] }, { "teal": 641, "source": "contracts/validatorRegistry.algo.ts:226", "pc": [ 610 ] }, { "teal": 642, "source": "contracts/validatorRegistry.algo.ts:226", "pc": [ 611, 612 ] }, { "teal": 643, "source": "contracts/validatorRegistry.algo.ts:226", "pc": [ 613 ] }, { "teal": 644, "source": "contracts/validatorRegistry.algo.ts:226", "pc": [ 614, 615 ] }, { "teal": 645, "source": "contracts/validatorRegistry.algo.ts:226", "pc": [ 616, 617, 618 ] }, { "teal": 646, "source": "contracts/validatorRegistry.algo.ts:226", "pc": [ 619 ] }, { "teal": 647, "source": "contracts/validatorRegistry.algo.ts:226", "pc": [ 620 ] }, { "teal": 648, "source": "contracts/validatorRegistry.algo.ts:226", "pc": [ 621 ] }, { "teal": 649, "source": "contracts/validatorRegistry.algo.ts:226", "pc": [ 622, 623 ] }, { "teal": 650, "source": "contracts/validatorRegistry.algo.ts:226", "pc": [ 624 ] }, { "teal": 651, "source": "contracts/validatorRegistry.algo.ts:224", "pc": [ 625 ] }, { "teal": 656, "source": "contracts/validatorRegistry.algo.ts:236", "pc": [ 626 ] }, { "teal": 659, "source": "contracts/validatorRegistry.algo.ts:237", "pc": [ 627, 628, 629 ] }, { "teal": 660, "source": "contracts/validatorRegistry.algo.ts:237", "pc": [ 630 ] }, { "teal": 663, "source": "contracts/validatorRegistry.algo.ts:236", "pc": [ 631, 632, 633 ] }, { "teal": 664, "source": "contracts/validatorRegistry.algo.ts:236", "pc": [ 634 ] }, { "teal": 665, "source": "contracts/validatorRegistry.algo.ts:236", "pc": [ 635 ] }, { "teal": 666, "source": "contracts/validatorRegistry.algo.ts:236", "pc": [ 636 ] }, { "teal": 667, "source": "contracts/validatorRegistry.algo.ts:236", "pc": [ 637 ] }, { "teal": 668, "source": "contracts/validatorRegistry.algo.ts:236", "pc": [ 638 ] }, { "teal": 678, "source": "contracts/validatorRegistry.algo.ts:236", "pc": [ 639, 640, 641 ] }, { "teal": 681, "source": "contracts/validatorRegistry.algo.ts:236", "pc": [ 642 ] }, { "teal": 682, "source": "contracts/validatorRegistry.algo.ts:236", "pc": [ 643, 644 ] }, { "teal": 686, "source": "contracts/validatorRegistry.algo.ts:238", "pc": [ 645, 646 ] }, { "teal": 687, "source": "contracts/validatorRegistry.algo.ts:238", "pc": [ 647, 648 ] }, { "teal": 688, "source": "contracts/validatorRegistry.algo.ts:238", "pc": [ 649 ] }, { "teal": 689, "source": "contracts/validatorRegistry.algo.ts:238", "pc": [ 650, 651 ] }, { "teal": 690, "source": "contracts/validatorRegistry.algo.ts:238", "pc": [ 652 ] }, { "teal": 691, "source": "contracts/validatorRegistry.algo.ts:238", "pc": [ 653 ] }, { "teal": 692, "source": "contracts/validatorRegistry.algo.ts:238", "pc": [ 654, 655 ] }, { "teal": 693, "source": "contracts/validatorRegistry.algo.ts:238", "pc": [ 656 ] }, { "teal": 694, "source": "contracts/validatorRegistry.algo.ts:238", "pc": [ 657 ] }, { "teal": 695, "source": "contracts/validatorRegistry.algo.ts:238", "pc": [ 658, 659 ] }, { "teal": 699, "source": "contracts/validatorRegistry.algo.ts:239", "pc": [ 660, 661, 662 ] }, { "teal": 700, "source": "contracts/validatorRegistry.algo.ts:239", "pc": [ 663, 664 ] }, { "teal": 701, "source": "contracts/validatorRegistry.algo.ts:239", "pc": [ 665 ] }, { "teal": 702, "source": "contracts/validatorRegistry.algo.ts:239", "pc": [ 666, 667 ] }, { "teal": 706, "source": "contracts/validatorRegistry.algo.ts:240", "pc": [ 668, 669, 670 ] }, { "teal": 707, "source": "contracts/validatorRegistry.algo.ts:240", "pc": [ 671 ] }, { "teal": 708, "source": "contracts/validatorRegistry.algo.ts:240", "pc": [ 672 ] }, { "teal": 709, "source": "contracts/validatorRegistry.algo.ts:240", "pc": [ 673, 674 ] }, { "teal": 710, "source": "contracts/validatorRegistry.algo.ts:240", "pc": [ 675 ] }, { "teal": 711, "source": "contracts/validatorRegistry.algo.ts:240", "pc": [ 676 ] }, { "teal": 712, "source": "contracts/validatorRegistry.algo.ts:240", "pc": [ 677, 678 ] }, { "teal": 713, "source": "contracts/validatorRegistry.algo.ts:240", "pc": [ 679 ] }, { "teal": 714, "source": "contracts/validatorRegistry.algo.ts:240", "pc": [ 680 ] }, { "teal": 715, "source": "contracts/validatorRegistry.algo.ts:240", "pc": [ 681, 682 ] }, { "teal": 720, "source": "contracts/validatorRegistry.algo.ts:241", "pc": [ 683, 684 ] }, { "teal": 721, "source": "contracts/validatorRegistry.algo.ts:241", "pc": [ 685 ] }, { "teal": 722, "source": "contracts/validatorRegistry.algo.ts:241", "pc": [ 686 ] }, { "teal": 723, "source": "contracts/validatorRegistry.algo.ts:241", "pc": [ 687, 688, 689 ] }, { "teal": 728, "source": "contracts/validatorRegistry.algo.ts:242", "pc": [ 690, 691, 692 ] }, { "teal": 729, "source": "contracts/validatorRegistry.algo.ts:242", "pc": [ 693, 694 ] }, { "teal": 735, "source": "contracts/validatorRegistry.algo.ts:244", "pc": [ 695, 696 ] }, { "teal": 736, "source": "contracts/validatorRegistry.algo.ts:244", "pc": [ 697, 698 ] }, { "teal": 737, "source": "contracts/validatorRegistry.algo.ts:244", "pc": [ 699 ] }, { "teal": 738, "source": "contracts/validatorRegistry.algo.ts:244", "pc": [ 700, 701, 702 ] }, { "teal": 743, "source": "contracts/validatorRegistry.algo.ts:245", "pc": [ 703, 704 ] }, { "teal": 744, "source": "contracts/validatorRegistry.algo.ts:245", "pc": [ 705, 706 ] }, { "teal": 749, "source": "contracts/validatorRegistry.algo.ts:247", "pc": [ 707, 708 ] }, { "teal": 752, "source": "contracts/validatorRegistry.algo.ts:236", "pc": [ 709, 710 ] }, { "teal": 755, "source": "contracts/validatorRegistry.algo.ts:236", "pc": [ 711, 712 ] }, { "teal": 756, "source": "contracts/validatorRegistry.algo.ts:236", "pc": [ 713 ] }, { "teal": 761, "source": "contracts/validatorRegistry.algo.ts:254", "pc": [ 714 ] }, { "teal": 764, "source": "contracts/validatorRegistry.algo.ts:255", "pc": [ 715, 716, 717 ] }, { "teal": 765, "source": "contracts/validatorRegistry.algo.ts:255", "pc": [ 718 ] }, { "teal": 766, "source": "contracts/validatorRegistry.algo.ts:255", "pc": [ 719 ] }, { "teal": 767, "source": "contracts/validatorRegistry.algo.ts:255", "pc": [ 720, 721 ] }, { "teal": 768, "source": "contracts/validatorRegistry.algo.ts:255", "pc": [ 722 ] }, { "teal": 771, "source": "contracts/validatorRegistry.algo.ts:255", "errorMessage": "argument 0 (staker) for doesStakerNeedToPayMBR must be a address", "pc": [ 723 ] }, { "teal": 774, "source": "contracts/validatorRegistry.algo.ts:254", "pc": [ 724, 725, 726 ] }, { "teal": 775, "source": "contracts/validatorRegistry.algo.ts:254", "pc": [ 727, 728 ] }, { "teal": 776, "source": "contracts/validatorRegistry.algo.ts:254", "pc": [ 729 ] }, { "teal": 777, "source": "contracts/validatorRegistry.algo.ts:254", "pc": [ 730, 731 ] }, { "teal": 778, "source": "contracts/validatorRegistry.algo.ts:254", "pc": [ 732 ] }, { "teal": 779, "source": "contracts/validatorRegistry.algo.ts:254", "pc": [ 733 ] }, { "teal": 780, "source": "contracts/validatorRegistry.algo.ts:254", "pc": [ 734 ] }, { "teal": 781, "source": "contracts/validatorRegistry.algo.ts:254", "pc": [ 735 ] }, { "teal": 782, "source": "contracts/validatorRegistry.algo.ts:254", "pc": [ 736 ] }, { "teal": 789, "source": "contracts/validatorRegistry.algo.ts:254", "pc": [ 737, 738, 739 ] }, { "teal": 793, "source": "contracts/validatorRegistry.algo.ts:256", "pc": [ 740 ] }, { "teal": 794, "source": "contracts/validatorRegistry.algo.ts:256", "pc": [ 741, 742 ] }, { "teal": 795, "source": "contracts/validatorRegistry.algo.ts:256", "pc": [ 743 ] }, { "teal": 796, "source": "contracts/validatorRegistry.algo.ts:256", "pc": [ 744 ] }, { "teal": 797, "source": "contracts/validatorRegistry.algo.ts:256", "pc": [ 745 ] }, { "teal": 798, "source": "contracts/validatorRegistry.algo.ts:256", "pc": [ 746 ] }, { "teal": 799, "source": "contracts/validatorRegistry.algo.ts:256", "pc": [ 747 ] }, { "teal": 800, "source": "contracts/validatorRegistry.algo.ts:254", "pc": [ 748 ] }, { "teal": 805, "source": "contracts/validatorRegistry.algo.ts:265", "pc": [ 749 ] }, { "teal": 808, "source": "contracts/validatorRegistry.algo.ts:266", "pc": [ 750, 751, 752 ] }, { "teal": 809, "source": "contracts/validatorRegistry.algo.ts:266", "pc": [ 753 ] }, { "teal": 810, "source": "contracts/validatorRegistry.algo.ts:266", "pc": [ 754 ] }, { "teal": 811, "source": "contracts/validatorRegistry.algo.ts:266", "pc": [ 755, 756 ] }, { "teal": 812, "source": "contracts/validatorRegistry.algo.ts:266", "pc": [ 757 ] }, { "teal": 815, "source": "contracts/validatorRegistry.algo.ts:266", "errorMessage": "argument 0 (staker) for getStakedPoolsForAccount must be a address", "pc": [ 758 ] }, { "teal": 818, "source": "contracts/validatorRegistry.algo.ts:265", "pc": [ 759, 760, 761 ] }, { "teal": 819, "source": "contracts/validatorRegistry.algo.ts:265", "pc": [ 762 ] }, { "teal": 820, "source": "contracts/validatorRegistry.algo.ts:265", "pc": [ 763 ] }, { "teal": 821, "source": "contracts/validatorRegistry.algo.ts:265", "pc": [ 764 ] }, { "teal": 822, "source": "contracts/validatorRegistry.algo.ts:265", "pc": [ 765 ] }, { "teal": 823, "source": "contracts/validatorRegistry.algo.ts:265", "pc": [ 766 ] }, { "teal": 824, "source": "contracts/validatorRegistry.algo.ts:265", "pc": [ 767, 768, 769 ] }, { "teal": 825, "source": "contracts/validatorRegistry.algo.ts:265", "pc": [ 770 ] }, { "teal": 826, "source": "contracts/validatorRegistry.algo.ts:265", "pc": [ 771 ] }, { "teal": 827, "source": "contracts/validatorRegistry.algo.ts:265", "pc": [ 772 ] }, { "teal": 828, "source": "contracts/validatorRegistry.algo.ts:265", "pc": [ 773 ] }, { "teal": 829, "source": "contracts/validatorRegistry.algo.ts:265", "pc": [ 774 ] }, { "teal": 830, "source": "contracts/validatorRegistry.algo.ts:265", "pc": [ 775 ] }, { "teal": 839, "source": "contracts/validatorRegistry.algo.ts:265", "pc": [ 776, 777, 778 ] }, { "teal": 842, "source": "contracts/validatorRegistry.algo.ts:265", "pc": [ 779 ] }, { "teal": 843, "source": "contracts/validatorRegistry.algo.ts:265", "pc": [ 780, 781 ] }, { "teal": 848, "source": "contracts/validatorRegistry.algo.ts:267", "pc": [ 782 ] }, { "teal": 849, "source": "contracts/validatorRegistry.algo.ts:267", "pc": [ 783, 784 ] }, { "teal": 850, "source": "contracts/validatorRegistry.algo.ts:267", "pc": [ 785 ] }, { "teal": 851, "source": "contracts/validatorRegistry.algo.ts:267", "pc": [ 786 ] }, { "teal": 852, "source": "contracts/validatorRegistry.algo.ts:267", "pc": [ 787 ] }, { "teal": 853, "source": "contracts/validatorRegistry.algo.ts:267", "pc": [ 788 ] }, { "teal": 854, "source": "contracts/validatorRegistry.algo.ts:267", "pc": [ 789 ] }, { "teal": 855, "source": "contracts/validatorRegistry.algo.ts:267", "pc": [ 790, 791, 792 ] }, { "teal": 860, "source": "contracts/validatorRegistry.algo.ts:268", "pc": [ 793 ] }, { "teal": 861, "source": "contracts/validatorRegistry.algo.ts:268", "pc": [ 794, 795, 796 ] }, { "teal": 866, "source": "contracts/validatorRegistry.algo.ts:270", "pc": [ 797 ] }, { "teal": 867, "source": "contracts/validatorRegistry.algo.ts:270", "pc": [ 798, 799 ] }, { "teal": 871, "source": "contracts/validatorRegistry.algo.ts:271", "pc": [ 800 ] }, { "teal": 872, "source": "contracts/validatorRegistry.algo.ts:271", "pc": [ 801, 802 ] }, { "teal": 873, "source": "contracts/validatorRegistry.algo.ts:271", "pc": [ 803 ] }, { "teal": 874, "source": "contracts/validatorRegistry.algo.ts:271", "pc": [ 804 ] }, { "teal": 877, "source": "contracts/validatorRegistry.algo.ts:271", "errorMessage": "box value does not exist: this.stakerPoolSet(staker).value", "pc": [ 805 ] }, { "teal": 878, "source": "contracts/validatorRegistry.algo.ts:271", "pc": [ 806, 807 ] }, { "teal": 882, "source": "contracts/validatorRegistry.algo.ts:272", "pc": [ 808 ] }, { "teal": 883, "source": "contracts/validatorRegistry.algo.ts:272", "pc": [ 809, 810 ] }, { "teal": 888, "source": "contracts/validatorRegistry.algo.ts:272", "pc": [ 811, 812 ] }, { "teal": 889, "source": "contracts/validatorRegistry.algo.ts:272", "pc": [ 813, 814 ] }, { "teal": 890, "source": "contracts/validatorRegistry.algo.ts:272", "pc": [ 815 ] }, { "teal": 891, "source": "contracts/validatorRegistry.algo.ts:272", "pc": [ 816, 817, 818 ] }, { "teal": 896, "source": "contracts/validatorRegistry.algo.ts:273", "pc": [ 819, 820 ] }, { "teal": 897, "source": "contracts/validatorRegistry.algo.ts:273", "pc": [ 821, 822 ] }, { "teal": 898, "source": "contracts/validatorRegistry.algo.ts:273", "pc": [ 823 ] }, { "teal": 899, "source": "contracts/validatorRegistry.algo.ts:273", "pc": [ 824 ] }, { "teal": 900, "source": "contracts/validatorRegistry.algo.ts:273", "pc": [ 825 ] }, { "teal": 901, "source": "contracts/validatorRegistry.algo.ts:273", "pc": [ 826 ] }, { "teal": 902, "source": "contracts/validatorRegistry.algo.ts:273", "pc": [ 827 ] }, { "teal": 903, "source": "contracts/validatorRegistry.algo.ts:273", "pc": [ 828 ] }, { "teal": 904, "source": "contracts/validatorRegistry.algo.ts:273", "pc": [ 829 ] }, { "teal": 905, "source": "contracts/validatorRegistry.algo.ts:273", "pc": [ 830 ] }, { "teal": 906, "source": "contracts/validatorRegistry.algo.ts:273", "pc": [ 831 ] }, { "teal": 907, "source": "contracts/validatorRegistry.algo.ts:273", "pc": [ 832, 833, 834 ] }, { "teal": 912, "source": "contracts/validatorRegistry.algo.ts:274", "pc": [ 835, 836 ] }, { "teal": 913, "source": "contracts/validatorRegistry.algo.ts:274", "pc": [ 837, 838 ] }, { "teal": 914, "source": "contracts/validatorRegistry.algo.ts:274", "pc": [ 839, 840 ] }, { "teal": 915, "source": "contracts/validatorRegistry.algo.ts:274", "pc": [ 841 ] }, { "teal": 916, "source": "contracts/validatorRegistry.algo.ts:274", "pc": [ 842 ] }, { "teal": 917, "source": "contracts/validatorRegistry.algo.ts:274", "pc": [ 843 ] }, { "teal": 918, "source": "contracts/validatorRegistry.algo.ts:274", "pc": [ 844 ] }, { "teal": 919, "source": "contracts/validatorRegistry.algo.ts:274", "pc": [ 845 ] }, { "teal": 920, "source": "contracts/validatorRegistry.algo.ts:274", "pc": [ 846, 847 ] }, { "teal": 927, "source": "contracts/validatorRegistry.algo.ts:272", "pc": [ 848, 849 ] }, { "teal": 928, "source": "contracts/validatorRegistry.algo.ts:272", "pc": [ 850 ] }, { "teal": 929, "source": "contracts/validatorRegistry.algo.ts:272", "pc": [ 851 ] }, { "teal": 930, "source": "contracts/validatorRegistry.algo.ts:272", "pc": [ 852, 853 ] }, { "teal": 931, "source": "contracts/validatorRegistry.algo.ts:272", "pc": [ 854, 855, 856 ] }, { "teal": 936, "source": "contracts/validatorRegistry.algo.ts:277", "pc": [ 857, 858 ] }, { "teal": 940, "source": "contracts/validatorRegistry.algo.ts:265", "pc": [ 859, 860 ] }, { "teal": 943, "source": "contracts/validatorRegistry.algo.ts:265", "pc": [ 861, 862 ] }, { "teal": 944, "source": "contracts/validatorRegistry.algo.ts:265", "pc": [ 863 ] }, { "teal": 949, "source": "contracts/validatorRegistry.algo.ts:287", "pc": [ 864 ] }, { "teal": 952, "source": "contracts/validatorRegistry.algo.ts:288", "pc": [ 865, 866, 867 ] }, { "teal": 953, "source": "contracts/validatorRegistry.algo.ts:288", "pc": [ 868 ] }, { "teal": 956, "source": "contracts/validatorRegistry.algo.ts:287", "pc": [ 869, 870, 871 ] }, { "teal": 957, "source": "contracts/validatorRegistry.algo.ts:287", "pc": [ 872 ] }, { "teal": 958, "source": "contracts/validatorRegistry.algo.ts:287", "pc": [ 873 ] }, { "teal": 959, "source": "contracts/validatorRegistry.algo.ts:287", "pc": [ 874 ] }, { "teal": 960, "source": "contracts/validatorRegistry.algo.ts:287", "pc": [ 875 ] }, { "teal": 970, "source": "contracts/validatorRegistry.algo.ts:287", "pc": [ 876, 877, 878 ] }, { "teal": 974, "source": "contracts/validatorRegistry.algo.ts:289", "pc": [ 879, 880 ] }, { "teal": 975, "source": "contracts/validatorRegistry.algo.ts:289", "pc": [ 881, 882 ] }, { "teal": 976, "source": "contracts/validatorRegistry.algo.ts:289", "pc": [ 883 ] }, { "teal": 977, "source": "contracts/validatorRegistry.algo.ts:289", "pc": [ 884, 885 ] }, { "teal": 978, "source": "contracts/validatorRegistry.algo.ts:289", "pc": [ 886 ] }, { "teal": 979, "source": "contracts/validatorRegistry.algo.ts:289", "pc": [ 887 ] }, { "teal": 980, "source": "contracts/validatorRegistry.algo.ts:289", "pc": [ 888, 889 ] }, { "teal": 981, "source": "contracts/validatorRegistry.algo.ts:289", "pc": [ 890 ] }, { "teal": 982, "source": "contracts/validatorRegistry.algo.ts:287", "pc": [ 891 ] }, { "teal": 987, "source": "contracts/validatorRegistry.algo.ts:292", "pc": [ 892 ] }, { "teal": 990, "source": "contracts/validatorRegistry.algo.ts:293", "pc": [ 893, 894, 895 ] }, { "teal": 991, "source": "contracts/validatorRegistry.algo.ts:293", "pc": [ 896 ] }, { "teal": 994, "source": "contracts/validatorRegistry.algo.ts:292", "pc": [ 897, 898, 899 ] }, { "teal": 995, "source": "contracts/validatorRegistry.algo.ts:292", "pc": [ 900 ] }, { "teal": 996, "source": "contracts/validatorRegistry.algo.ts:292", "pc": [ 901 ] }, { "teal": 997, "source": "contracts/validatorRegistry.algo.ts:292", "pc": [ 902 ] }, { "teal": 998, "source": "contracts/validatorRegistry.algo.ts:292", "pc": [ 903 ] }, { "teal": 1002, "source": "contracts/validatorRegistry.algo.ts:292", "pc": [ 904, 905, 906 ] }, { "teal": 1006, "source": "contracts/validatorRegistry.algo.ts:294", "pc": [ 907 ] }, { "teal": 1007, "source": "contracts/validatorRegistry.algo.ts:294", "pc": [ 908, 909 ] }, { "teal": 1008, "source": "contracts/validatorRegistry.algo.ts:294", "pc": [ 910 ] }, { "teal": 1009, "source": "contracts/validatorRegistry.algo.ts:294", "pc": [ 911 ] }, { "teal": 1010, "source": "contracts/validatorRegistry.algo.ts:294", "pc": [ 912 ] }, { "teal": 1011, "source": "contracts/validatorRegistry.algo.ts:294", "pc": [ 913 ] }, { "teal": 1012, "source": "contracts/validatorRegistry.algo.ts:294", "pc": [ 914 ] }, { "teal": 1015, "source": "contracts/validatorRegistry.algo.ts:294", "errorMessage": "the specified validator id doesn't exist", "pc": [ 915 ] }, { "teal": 1019, "source": "contracts/validatorRegistry.algo.ts:296", "pc": [ 916, 917 ] }, { "teal": 1020, "source": "contracts/validatorRegistry.algo.ts:296", "pc": [ 918, 919 ] }, { "teal": 1021, "source": "contracts/validatorRegistry.algo.ts:296", "pc": [ 920 ] }, { "teal": 1022, "source": "contracts/validatorRegistry.algo.ts:296", "pc": [ 921, 922 ] }, { "teal": 1023, "source": "contracts/validatorRegistry.algo.ts:296", "pc": [ 923 ] }, { "teal": 1024, "source": "contracts/validatorRegistry.algo.ts:296", "pc": [ 924 ] }, { "teal": 1025, "source": "contracts/validatorRegistry.algo.ts:296", "pc": [ 925, 926 ] }, { "teal": 1026, "source": "contracts/validatorRegistry.algo.ts:296", "pc": [ 927 ] }, { "teal": 1027, "source": "contracts/validatorRegistry.algo.ts:292", "pc": [ 928 ] }, { "teal": 1032, "source": "contracts/validatorRegistry.algo.ts:299", "pc": [ 929 ] }, { "teal": 1035, "source": "contracts/validatorRegistry.algo.ts:299", "pc": [ 930, 931, 932 ] }, { "teal": 1036, "source": "contracts/validatorRegistry.algo.ts:299", "pc": [ 933 ] }, { "teal": 1037, "source": "contracts/validatorRegistry.algo.ts:299", "pc": [ 934 ] }, { "teal": 1038, "source": "contracts/validatorRegistry.algo.ts:299", "pc": [ 935 ] }, { "teal": 1039, "source": "contracts/validatorRegistry.algo.ts:299", "pc": [ 936 ] }, { "teal": 1040, "source": "contracts/validatorRegistry.algo.ts:299", "pc": [ 937 ] }, { "teal": 1044, "source": "contracts/validatorRegistry.algo.ts:299", "pc": [ 938, 939, 940 ] }, { "teal": 1048, "source": "contracts/validatorRegistry.algo.ts:301", "pc": [ 941, 942 ] }, { "teal": 1049, "source": "contracts/validatorRegistry.algo.ts:299", "pc": [ 943 ] }, { "teal": 1054, "source": "contracts/validatorRegistry.algo.ts:312", "pc": [ 944 ] }, { "teal": 1057, "source": "contracts/validatorRegistry.algo.ts:312", "pc": [ 945, 946, 947 ] }, { "teal": 1058, "source": "contracts/validatorRegistry.algo.ts:312", "pc": [ 948 ] }, { "teal": 1059, "source": "contracts/validatorRegistry.algo.ts:312", "pc": [ 949 ] }, { "teal": 1060, "source": "contracts/validatorRegistry.algo.ts:312", "pc": [ 950, 951 ] }, { "teal": 1061, "source": "contracts/validatorRegistry.algo.ts:312", "pc": [ 952 ] }, { "teal": 1064, "source": "contracts/validatorRegistry.algo.ts:312", "errorMessage": "argument 0 (config) for addValidator must be a (uint64,address,address,uint64,uint8,address,uint64[4],uint64,uint64,uint64,uint32,uint32,address,uint64,uint64,uint8,uint64,uint64)", "pc": [ 953 ] }, { "teal": 1067, "source": "contracts/validatorRegistry.algo.ts:312", "pc": [ 954, 955, 956 ] }, { "teal": 1068, "source": "contracts/validatorRegistry.algo.ts:312", "pc": [ 957, 958, 959 ] }, { "teal": 1071, "source": "contracts/validatorRegistry.algo.ts:312", "pc": [ 960, 961 ] }, { "teal": 1072, "source": "contracts/validatorRegistry.algo.ts:312", "pc": [ 962 ] }, { "teal": 1073, "source": "contracts/validatorRegistry.algo.ts:312", "pc": [ 963 ] }, { "teal": 1074, "source": "contracts/validatorRegistry.algo.ts:312", "pc": [ 964 ] }, { "teal": 1075, "source": "contracts/validatorRegistry.algo.ts:312", "pc": [ 965, 966 ] }, { "teal": 1076, "source": "contracts/validatorRegistry.algo.ts:312", "pc": [ 967 ] }, { "teal": 1077, "source": "contracts/validatorRegistry.algo.ts:312", "pc": [ 968 ] }, { "teal": 1080, "source": "contracts/validatorRegistry.algo.ts:312", "errorMessage": "argument 2 (mbrPayment) for addValidator must be a pay transaction", "pc": [ 969 ] }, { "teal": 1083, "source": "contracts/validatorRegistry.algo.ts:312", "pc": [ 970, 971, 972 ] }, { "teal": 1084, "source": "contracts/validatorRegistry.algo.ts:312", "pc": [ 973 ] }, { "teal": 1085, "source": "contracts/validatorRegistry.algo.ts:312", "pc": [ 974 ] }, { "teal": 1086, "source": "contracts/validatorRegistry.algo.ts:312", "pc": [ 975 ] }, { "teal": 1087, "source": "contracts/validatorRegistry.algo.ts:312", "pc": [ 976 ] }, { "teal": 1088, "source": "contracts/validatorRegistry.algo.ts:312", "pc": [ 977 ] }, { "teal": 1100, "source": "contracts/validatorRegistry.algo.ts:312", "pc": [ 978, 979, 980 ] }, { "teal": 1103, "source": "contracts/validatorRegistry.algo.ts:312", "pc": [ 981 ] }, { "teal": 1107, "source": "contracts/validatorRegistry.algo.ts:313", "pc": [ 982, 983 ] }, { "teal": 1108, "source": "contracts/validatorRegistry.algo.ts:313", "pc": [ 984, 985, 986 ] }, { "teal": 1113, "source": "contracts/validatorRegistry.algo.ts:315", "pc": [ 987, 988 ] }, { "teal": 1114, "source": "contracts/validatorRegistry.algo.ts:315", "pc": [ 989, 990 ] }, { "teal": 1115, "source": "contracts/validatorRegistry.algo.ts:315", "pc": [ 991, 992 ] }, { "teal": 1116, "source": "contracts/validatorRegistry.algo.ts:315", "pc": [ 993 ] }, { "teal": 1119, "source": "contracts/validatorRegistry.algo.ts:315", "errorMessage": "transaction verification failed: {\"txn\":\"mbrPayment\",\"field\":\"receiver\",\"expected\":\"this.app.address\"}", "pc": [ 994 ] }, { "teal": 1122, "source": "contracts/validatorRegistry.algo.ts:315", "pc": [ 995, 996 ] }, { "teal": 1123, "source": "contracts/validatorRegistry.algo.ts:315", "pc": [ 997, 998 ] }, { "teal": 1124, "source": "contracts/validatorRegistry.algo.ts:315", "pc": [ 999, 1000, 1001 ] }, { "teal": 1125, "source": "contracts/validatorRegistry.algo.ts:315", "pc": [ 1002, 1003, 1004 ] }, { "teal": 1126, "source": "contracts/validatorRegistry.algo.ts:315", "pc": [ 1005 ] }, { "teal": 1127, "source": "contracts/validatorRegistry.algo.ts:315", "pc": [ 1006 ] }, { "teal": 1130, "source": "contracts/validatorRegistry.algo.ts:315", "errorMessage": "transaction verification failed: {\"txn\":\"mbrPayment\",\"field\":\"amount\",\"expected\":\"this.getMbrAmounts().addValidatorMbr\"}", "pc": [ 1007 ] }, { "teal": 1134, "source": "contracts/validatorRegistry.algo.ts:317", "pc": [ 1008, 1009 ] }, { "teal": 1135, "source": "contracts/validatorRegistry.algo.ts:317", "pc": [ 1010, 1011 ] }, { "teal": 1136, "source": "contracts/validatorRegistry.algo.ts:317", "pc": [ 1012, 1013, 1014, 1015, 1016 ] }, { "teal": 1137, "source": "contracts/validatorRegistry.algo.ts:317", "pc": [ 1017 ] }, { "teal": 1140, "source": "contracts/validatorRegistry.algo.ts:317", "errorMessage": "fee must be 10 ALGO or more to prevent spamming of validators", "pc": [ 1018 ] }, { "teal": 1144, "source": "contracts/validatorRegistry.algo.ts:320", "pc": [ 1019, 1020 ] }, { "teal": 1145, "source": "contracts/validatorRegistry.algo.ts:320", "pc": [ 1021 ] }, { "teal": 1146, "source": "contracts/validatorRegistry.algo.ts:320", "pc": [ 1022 ] }, { "teal": 1147, "source": "contracts/validatorRegistry.algo.ts:320", "pc": [ 1023 ] }, { "teal": 1148, "source": "contracts/validatorRegistry.algo.ts:320", "pc": [ 1024, 1025 ] }, { "teal": 1152, "source": "contracts/validatorRegistry.algo.ts:321", "pc": [ 1026, 1027 ] }, { "teal": 1153, "source": "contracts/validatorRegistry.algo.ts:321", "pc": [ 1028, 1029 ] }, { "teal": 1154, "source": "contracts/validatorRegistry.algo.ts:321", "pc": [ 1030 ] }, { "teal": 1158, "source": "contracts/validatorRegistry.algo.ts:323", "pc": [ 1031 ] }, { "teal": 1159, "source": "contracts/validatorRegistry.algo.ts:323", "pc": [ 1032, 1033 ] }, { "teal": 1160, "source": "contracts/validatorRegistry.algo.ts:323", "pc": [ 1034 ] }, { "teal": 1161, "source": "contracts/validatorRegistry.algo.ts:323", "pc": [ 1035 ] }, { "teal": 1162, "source": "contracts/validatorRegistry.algo.ts:323", "pc": [ 1036, 1037, 1038 ] }, { "teal": 1163, "source": "contracts/validatorRegistry.algo.ts:323", "pc": [ 1039 ] }, { "teal": 1164, "source": "contracts/validatorRegistry.algo.ts:323", "pc": [ 1040 ] }, { "teal": 1168, "source": "contracts/validatorRegistry.algo.ts:324", "pc": [ 1041 ] }, { "teal": 1169, "source": "contracts/validatorRegistry.algo.ts:324", "pc": [ 1042, 1043 ] }, { "teal": 1170, "source": "contracts/validatorRegistry.algo.ts:324", "pc": [ 1044 ] }, { "teal": 1171, "source": "contracts/validatorRegistry.algo.ts:324", "pc": [ 1045, 1046 ] }, { "teal": 1172, "source": "contracts/validatorRegistry.algo.ts:324", "pc": [ 1047 ] }, { "teal": 1173, "source": "contracts/validatorRegistry.algo.ts:324", "pc": [ 1048 ] }, { "teal": 1174, "source": "contracts/validatorRegistry.algo.ts:324", "pc": [ 1049, 1050 ] }, { "teal": 1175, "source": "contracts/validatorRegistry.algo.ts:324", "pc": [ 1051 ] }, { "teal": 1179, "source": "contracts/validatorRegistry.algo.ts:325", "pc": [ 1052 ] }, { "teal": 1180, "source": "contracts/validatorRegistry.algo.ts:325", "pc": [ 1053, 1054 ] }, { "teal": 1181, "source": "contracts/validatorRegistry.algo.ts:325", "pc": [ 1055 ] }, { "teal": 1182, "source": "contracts/validatorRegistry.algo.ts:325", "pc": [ 1056 ] }, { "teal": 1183, "source": "contracts/validatorRegistry.algo.ts:325", "pc": [ 1057, 1058 ] }, { "teal": 1184, "source": "contracts/validatorRegistry.algo.ts:325", "pc": [ 1059 ] }, { "teal": 1185, "source": "contracts/validatorRegistry.algo.ts:325", "pc": [ 1060 ] }, { "teal": 1186, "source": "contracts/validatorRegistry.algo.ts:325", "pc": [ 1061, 1062 ] }, { "teal": 1187, "source": "contracts/validatorRegistry.algo.ts:325", "pc": [ 1063 ] }, { "teal": 1192, "source": "contracts/validatorRegistry.algo.ts:328", "pc": [ 1064, 1065 ] }, { "teal": 1193, "source": "contracts/validatorRegistry.algo.ts:328", "pc": [ 1066, 1067, 1068 ] }, { "teal": 1194, "source": "contracts/validatorRegistry.algo.ts:328", "pc": [ 1069 ] }, { "teal": 1195, "source": "contracts/validatorRegistry.algo.ts:328", "pc": [ 1070 ] }, { "teal": 1196, "source": "contracts/validatorRegistry.algo.ts:328", "pc": [ 1071 ] }, { "teal": 1197, "source": "contracts/validatorRegistry.algo.ts:328", "pc": [ 1072, 1073, 1074 ] }, { "teal": 1202, "source": "contracts/validatorRegistry.algo.ts:330", "pc": [ 1075, 1076 ] }, { "teal": 1203, "source": "contracts/validatorRegistry.algo.ts:330", "pc": [ 1077, 1078, 1079 ] }, { "teal": 1204, "source": "contracts/validatorRegistry.algo.ts:330", "pc": [ 1080 ] }, { "teal": 1205, "source": "contracts/validatorRegistry.algo.ts:330", "pc": [ 1081, 1082, 1083 ] }, { "teal": 1208, "source": "contracts/validatorRegistry.algo.ts:330", "errorMessage": "provided NFD must be valid", "pc": [ 1084 ] }, { "teal": 1215, "source": "contracts/validatorRegistry.algo.ts:333", "pc": [ 1085, 1086 ] }, { "teal": 1216, "source": "contracts/validatorRegistry.algo.ts:333", "pc": [ 1087, 1088 ] }, { "teal": 1217, "source": "contracts/validatorRegistry.algo.ts:333", "pc": [ 1089, 1090, 1091 ] }, { "teal": 1218, "source": "contracts/validatorRegistry.algo.ts:333", "pc": [ 1092 ] }, { "teal": 1219, "source": "contracts/validatorRegistry.algo.ts:333", "pc": [ 1093, 1094 ] }, { "teal": 1220, "source": "contracts/validatorRegistry.algo.ts:333", "pc": [ 1095 ] }, { "teal": 1223, "source": "contracts/validatorRegistry.algo.ts:333", "errorMessage": "global state value does not exist: AppID.fromUint64(config.nfdForInfo).globalState('i.owner.a')", "pc": [ 1096 ] }, { "teal": 1224, "source": "contracts/validatorRegistry.algo.ts:333", "pc": [ 1097 ] }, { "teal": 1227, "source": "contracts/validatorRegistry.algo.ts:332", "errorMessage": "If specifying NFD, account adding validator must be owner", "pc": [ 1098 ] }, { "teal": 1234, "source": "contracts/validatorRegistry.algo.ts:338", "pc": [ 1099, 1100 ] }, { "teal": 1235, "source": "contracts/validatorRegistry.algo.ts:338", "pc": [ 1101, 1102, 1103 ] }, { "teal": 1236, "source": "contracts/validatorRegistry.algo.ts:338", "pc": [ 1104 ] }, { "teal": 1237, "source": "contracts/validatorRegistry.algo.ts:338", "pc": [ 1105, 1106 ] }, { "teal": 1238, "source": "contracts/validatorRegistry.algo.ts:338", "pc": [ 1107 ] }, { "teal": 1239, "source": "contracts/validatorRegistry.algo.ts:338", "pc": [ 1108 ] }, { "teal": 1240, "source": "contracts/validatorRegistry.algo.ts:338", "pc": [ 1109, 1110, 1111 ] }, { "teal": 1241, "source": "contracts/validatorRegistry.algo.ts:339", "pc": [ 1112, 1113 ] }, { "teal": 1242, "source": "contracts/validatorRegistry.algo.ts:339", "pc": [ 1114, 1115, 1116 ] }, { "teal": 1243, "source": "contracts/validatorRegistry.algo.ts:339", "pc": [ 1117 ] }, { "teal": 1244, "source": "contracts/validatorRegistry.algo.ts:339", "pc": [ 1118, 1119 ] }, { "teal": 1245, "source": "contracts/validatorRegistry.algo.ts:339", "pc": [ 1120 ] }, { "teal": 1246, "source": "contracts/validatorRegistry.algo.ts:338", "pc": [ 1121 ] }, { "teal": 1249, "source": "contracts/validatorRegistry.algo.ts:337", "pc": [ 1122, 1123, 1124 ] }, { "teal": 1257, "source": "contracts/validatorRegistry.algo.ts:343", "pc": [ 1125, 1126 ] }, { "teal": 1258, "source": "contracts/validatorRegistry.algo.ts:343", "pc": [ 1127, 1128, 1129 ] }, { "teal": 1259, "source": "contracts/validatorRegistry.algo.ts:343", "pc": [ 1130 ] }, { "teal": 1260, "source": "contracts/validatorRegistry.algo.ts:343", "pc": [ 1131, 1132, 1133 ] }, { "teal": 1263, "source": "contracts/validatorRegistry.algo.ts:342", "errorMessage": "provided NFD App id for gating must be valid NFD", "pc": [ 1134 ] }, { "teal": 1268, "source": "contracts/validatorRegistry.algo.ts:347", "pc": [ 1135, 1136, 1137, 1138, 1139, 1140 ] }, { "teal": 1269, "source": "contracts/validatorRegistry.algo.ts:347", "pc": [ 1141, 1142 ] }, { "teal": 1270, "source": "contracts/validatorRegistry.algo.ts:347", "pc": [ 1143 ] }, { "teal": 1271, "source": "contracts/validatorRegistry.algo.ts:347", "pc": [ 1144, 1145 ] }, { "teal": 1272, "source": "contracts/validatorRegistry.algo.ts:347", "pc": [ 1146, 1147, 1148 ] }, { "teal": 1273, "source": "contracts/validatorRegistry.algo.ts:347", "pc": [ 1149 ] }, { "teal": 1274, "source": "contracts/validatorRegistry.algo.ts:347", "pc": [ 1150, 1151 ] }, { "teal": 1275, "source": "contracts/validatorRegistry.algo.ts:347", "pc": [ 1152, 1153, 1154 ] }, { "teal": 1276, "source": "contracts/validatorRegistry.algo.ts:347", "pc": [ 1155 ] }, { "teal": 1277, "source": "contracts/validatorRegistry.algo.ts:347", "pc": [ 1156 ] }, { "teal": 1278, "source": "contracts/validatorRegistry.algo.ts:347", "pc": [ 1157 ] }, { "teal": 1282, "source": "contracts/validatorRegistry.algo.ts:348", "pc": [ 1158, 1159 ] }, { "teal": 1285, "source": "contracts/validatorRegistry.algo.ts:312", "pc": [ 1160, 1161 ] }, { "teal": 1286, "source": "contracts/validatorRegistry.algo.ts:312", "pc": [ 1162 ] }, { "teal": 1291, "source": "contracts/validatorRegistry.algo.ts:358", "pc": [ 1163, 1164, 1165 ] }, { "teal": 1292, "source": "contracts/validatorRegistry.algo.ts:358", "pc": [ 1166 ] }, { "teal": 1293, "source": "contracts/validatorRegistry.algo.ts:358", "pc": [ 1167 ] }, { "teal": 1294, "source": "contracts/validatorRegistry.algo.ts:358", "pc": [ 1168, 1169 ] }, { "teal": 1295, "source": "contracts/validatorRegistry.algo.ts:358", "pc": [ 1170 ] }, { "teal": 1298, "source": "contracts/validatorRegistry.algo.ts:358", "errorMessage": "argument 0 (manager) for changeValidatorManager must be a address", "pc": [ 1171 ] }, { "teal": 1301, "source": "contracts/validatorRegistry.algo.ts:358", "pc": [ 1172, 1173, 1174 ] }, { "teal": 1302, "source": "contracts/validatorRegistry.algo.ts:358", "pc": [ 1175 ] }, { "teal": 1305, "source": "contracts/validatorRegistry.algo.ts:358", "pc": [ 1176, 1177, 1178 ] }, { "teal": 1306, "source": "contracts/validatorRegistry.algo.ts:358", "pc": [ 1179 ] }, { "teal": 1307, "source": "contracts/validatorRegistry.algo.ts:358", "pc": [ 1180 ] }, { "teal": 1317, "source": "contracts/validatorRegistry.algo.ts:358", "pc": [ 1181, 1182, 1183 ] }, { "teal": 1321, "source": "contracts/validatorRegistry.algo.ts:359", "pc": [ 1184, 1185 ] }, { "teal": 1322, "source": "contracts/validatorRegistry.algo.ts:359", "pc": [ 1186, 1187, 1188 ] }, { "teal": 1326, "source": "contracts/validatorRegistry.algo.ts:360", "pc": [ 1189, 1190 ] }, { "teal": 1327, "source": "contracts/validatorRegistry.algo.ts:360", "pc": [ 1191, 1192 ] }, { "teal": 1328, "source": "contracts/validatorRegistry.algo.ts:360", "pc": [ 1193 ] }, { "teal": 1331, "source": "contracts/validatorRegistry.algo.ts:360", "errorMessage": "needs to at least be valid address", "pc": [ 1194 ] }, { "teal": 1335, "source": "contracts/validatorRegistry.algo.ts:361", "pc": [ 1195, 1196 ] }, { "teal": 1336, "source": "contracts/validatorRegistry.algo.ts:361", "pc": [ 1197, 1198 ] }, { "teal": 1337, "source": "contracts/validatorRegistry.algo.ts:361", "pc": [ 1199 ] }, { "teal": 1338, "source": "contracts/validatorRegistry.algo.ts:361", "pc": [ 1200, 1201 ] }, { "teal": 1339, "source": "contracts/validatorRegistry.algo.ts:361", "pc": [ 1202 ] }, { "teal": 1340, "source": "contracts/validatorRegistry.algo.ts:361", "pc": [ 1203 ] }, { "teal": 1341, "source": "contracts/validatorRegistry.algo.ts:361", "pc": [ 1204, 1205 ] }, { "teal": 1342, "source": "contracts/validatorRegistry.algo.ts:361", "pc": [ 1206 ] }, { "teal": 1343, "source": "contracts/validatorRegistry.algo.ts:358", "pc": [ 1207 ] }, { "teal": 1348, "source": "contracts/validatorRegistry.algo.ts:372", "pc": [ 1208, 1209, 1210 ] }, { "teal": 1349, "source": "contracts/validatorRegistry.algo.ts:372", "pc": [ 1211 ] }, { "teal": 1352, "source": "contracts/validatorRegistry.algo.ts:372", "pc": [ 1212, 1213, 1214 ] }, { "teal": 1353, "source": "contracts/validatorRegistry.algo.ts:372", "pc": [ 1215 ] }, { "teal": 1356, "source": "contracts/validatorRegistry.algo.ts:372", "pc": [ 1216, 1217, 1218 ] }, { "teal": 1357, "source": "contracts/validatorRegistry.algo.ts:372", "pc": [ 1219 ] }, { "teal": 1360, "source": "contracts/validatorRegistry.algo.ts:372", "pc": [ 1220, 1221, 1222 ] }, { "teal": 1361, "source": "contracts/validatorRegistry.algo.ts:372", "pc": [ 1223 ] }, { "teal": 1362, "source": "contracts/validatorRegistry.algo.ts:372", "pc": [ 1224 ] }, { "teal": 1373, "source": "contracts/validatorRegistry.algo.ts:372", "pc": [ 1225, 1226, 1227 ] }, { "teal": 1377, "source": "contracts/validatorRegistry.algo.ts:373", "pc": [ 1228, 1229 ] }, { "teal": 1378, "source": "contracts/validatorRegistry.algo.ts:373", "pc": [ 1230, 1231, 1232 ] }, { "teal": 1382, "source": "contracts/validatorRegistry.algo.ts:374", "pc": [ 1233, 1234 ] }, { "teal": 1383, "source": "contracts/validatorRegistry.algo.ts:374", "pc": [ 1235, 1236 ] }, { "teal": 1384, "source": "contracts/validatorRegistry.algo.ts:374", "pc": [ 1237 ] }, { "teal": 1385, "source": "contracts/validatorRegistry.algo.ts:374", "pc": [ 1238 ] }, { "teal": 1386, "source": "contracts/validatorRegistry.algo.ts:374", "pc": [ 1239, 1240 ] }, { "teal": 1387, "source": "contracts/validatorRegistry.algo.ts:374", "pc": [ 1241 ] }, { "teal": 1388, "source": "contracts/validatorRegistry.algo.ts:374", "pc": [ 1242 ] }, { "teal": 1389, "source": "contracts/validatorRegistry.algo.ts:374", "pc": [ 1243, 1244 ] }, { "teal": 1390, "source": "contracts/validatorRegistry.algo.ts:374", "pc": [ 1245 ] }, { "teal": 1394, "source": "contracts/validatorRegistry.algo.ts:375", "pc": [ 1246, 1247, 1248 ] }, { "teal": 1395, "source": "contracts/validatorRegistry.algo.ts:375", "pc": [ 1249, 1250 ] }, { "teal": 1396, "source": "contracts/validatorRegistry.algo.ts:375", "pc": [ 1251 ] }, { "teal": 1397, "source": "contracts/validatorRegistry.algo.ts:375", "pc": [ 1252 ] }, { "teal": 1398, "source": "contracts/validatorRegistry.algo.ts:375", "pc": [ 1253, 1254 ] }, { "teal": 1399, "source": "contracts/validatorRegistry.algo.ts:375", "pc": [ 1255 ] }, { "teal": 1400, "source": "contracts/validatorRegistry.algo.ts:375", "pc": [ 1256 ] }, { "teal": 1401, "source": "contracts/validatorRegistry.algo.ts:375", "pc": [ 1257, 1258 ] }, { "teal": 1402, "source": "contracts/validatorRegistry.algo.ts:375", "pc": [ 1259 ] }, { "teal": 1403, "source": "contracts/validatorRegistry.algo.ts:372", "pc": [ 1260 ] }, { "teal": 1408, "source": "contracts/validatorRegistry.algo.ts:386", "pc": [ 1261, 1262, 1263 ] }, { "teal": 1409, "source": "contracts/validatorRegistry.algo.ts:386", "pc": [ 1264, 1265, 1266 ] }, { "teal": 1412, "source": "contracts/validatorRegistry.algo.ts:386", "pc": [ 1267, 1268, 1269 ] }, { "teal": 1413, "source": "contracts/validatorRegistry.algo.ts:386", "pc": [ 1270 ] }, { "teal": 1416, "source": "contracts/validatorRegistry.algo.ts:386", "pc": [ 1271, 1272, 1273 ] }, { "teal": 1417, "source": "contracts/validatorRegistry.algo.ts:386", "pc": [ 1274 ] }, { "teal": 1420, "source": "contracts/validatorRegistry.algo.ts:386", "pc": [ 1275, 1276, 1277 ] }, { "teal": 1421, "source": "contracts/validatorRegistry.algo.ts:386", "pc": [ 1278 ] }, { "teal": 1422, "source": "contracts/validatorRegistry.algo.ts:386", "pc": [ 1279 ] }, { "teal": 1433, "source": "contracts/validatorRegistry.algo.ts:386", "pc": [ 1280, 1281, 1282 ] }, { "teal": 1437, "source": "contracts/validatorRegistry.algo.ts:387", "pc": [ 1283, 1284 ] }, { "teal": 1438, "source": "contracts/validatorRegistry.algo.ts:387", "pc": [ 1285, 1286, 1287 ] }, { "teal": 1442, "source": "contracts/validatorRegistry.algo.ts:389", "pc": [ 1288, 1289 ] }, { "teal": 1443, "source": "contracts/validatorRegistry.algo.ts:389", "pc": [ 1290, 1291, 1292 ] }, { "teal": 1446, "source": "contracts/validatorRegistry.algo.ts:389", "errorMessage": "provided NFD must be valid", "pc": [ 1293 ] }, { "teal": 1453, "source": "contracts/validatorRegistry.algo.ts:392", "pc": [ 1294, 1295 ] }, { "teal": 1454, "source": "contracts/validatorRegistry.algo.ts:392", "pc": [ 1296, 1297 ] }, { "teal": 1455, "source": "contracts/validatorRegistry.algo.ts:392", "pc": [ 1298, 1299 ] }, { "teal": 1456, "source": "contracts/validatorRegistry.algo.ts:392", "pc": [ 1300 ] }, { "teal": 1459, "source": "contracts/validatorRegistry.algo.ts:392", "errorMessage": "global state value does not exist: AppID.fromUint64(nfdAppID).globalState('i.owner.a')", "pc": [ 1301 ] }, { "teal": 1460, "source": "contracts/validatorRegistry.algo.ts:392", "pc": [ 1302 ] }, { "teal": 1463, "source": "contracts/validatorRegistry.algo.ts:391", "errorMessage": "If specifying NFD, account adding validator must be owner", "pc": [ 1303 ] }, { "teal": 1467, "source": "contracts/validatorRegistry.algo.ts:395", "pc": [ 1304, 1305 ] }, { "teal": 1468, "source": "contracts/validatorRegistry.algo.ts:395", "pc": [ 1306, 1307 ] }, { "teal": 1469, "source": "contracts/validatorRegistry.algo.ts:395", "pc": [ 1308 ] }, { "teal": 1470, "source": "contracts/validatorRegistry.algo.ts:395", "pc": [ 1309 ] }, { "teal": 1471, "source": "contracts/validatorRegistry.algo.ts:395", "pc": [ 1310, 1311 ] }, { "teal": 1472, "source": "contracts/validatorRegistry.algo.ts:395", "pc": [ 1312 ] }, { "teal": 1473, "source": "contracts/validatorRegistry.algo.ts:395", "pc": [ 1313 ] }, { "teal": 1474, "source": "contracts/validatorRegistry.algo.ts:395", "pc": [ 1314, 1315 ] }, { "teal": 1475, "source": "contracts/validatorRegistry.algo.ts:395", "pc": [ 1316 ] }, { "teal": 1476, "source": "contracts/validatorRegistry.algo.ts:386", "pc": [ 1317 ] }, { "teal": 1481, "source": "contracts/validatorRegistry.algo.ts:402", "pc": [ 1318, 1319, 1320 ] }, { "teal": 1482, "source": "contracts/validatorRegistry.algo.ts:402", "pc": [ 1321 ] }, { "teal": 1483, "source": "contracts/validatorRegistry.algo.ts:402", "pc": [ 1322 ] }, { "teal": 1484, "source": "contracts/validatorRegistry.algo.ts:402", "pc": [ 1323, 1324 ] }, { "teal": 1485, "source": "contracts/validatorRegistry.algo.ts:402", "pc": [ 1325 ] }, { "teal": 1488, "source": "contracts/validatorRegistry.algo.ts:402", "errorMessage": "argument 0 (commissionAddress) for changeValidatorCommissionAddress must be a address", "pc": [ 1326 ] }, { "teal": 1491, "source": "contracts/validatorRegistry.algo.ts:402", "pc": [ 1327, 1328, 1329 ] }, { "teal": 1492, "source": "contracts/validatorRegistry.algo.ts:402", "pc": [ 1330 ] }, { "teal": 1495, "source": "contracts/validatorRegistry.algo.ts:402", "pc": [ 1331, 1332, 1333 ] }, { "teal": 1496, "source": "contracts/validatorRegistry.algo.ts:402", "pc": [ 1334 ] }, { "teal": 1497, "source": "contracts/validatorRegistry.algo.ts:402", "pc": [ 1335 ] }, { "teal": 1504, "source": "contracts/validatorRegistry.algo.ts:402", "pc": [ 1336, 1337, 1338 ] }, { "teal": 1508, "source": "contracts/validatorRegistry.algo.ts:403", "pc": [ 1339, 1340 ] }, { "teal": 1509, "source": "contracts/validatorRegistry.algo.ts:403", "pc": [ 1341, 1342, 1343 ] }, { "teal": 1513, "source": "contracts/validatorRegistry.algo.ts:404", "pc": [ 1344, 1345 ] }, { "teal": 1514, "source": "contracts/validatorRegistry.algo.ts:404", "pc": [ 1346, 1347 ] }, { "teal": 1515, "source": "contracts/validatorRegistry.algo.ts:404", "pc": [ 1348 ] }, { "teal": 1516, "source": "contracts/validatorRegistry.algo.ts:404", "pc": [ 1349 ] }, { "teal": 1520, "source": "contracts/validatorRegistry.algo.ts:405", "pc": [ 1350, 1351, 1352 ] }, { "teal": 1521, "source": "contracts/validatorRegistry.algo.ts:405", "pc": [ 1353, 1354 ] }, { "teal": 1522, "source": "contracts/validatorRegistry.algo.ts:405", "pc": [ 1355 ] }, { "teal": 1523, "source": "contracts/validatorRegistry.algo.ts:405", "pc": [ 1356, 1357 ] }, { "teal": 1524, "source": "contracts/validatorRegistry.algo.ts:405", "pc": [ 1358 ] }, { "teal": 1525, "source": "contracts/validatorRegistry.algo.ts:405", "pc": [ 1359 ] }, { "teal": 1526, "source": "contracts/validatorRegistry.algo.ts:405", "pc": [ 1360, 1361 ] }, { "teal": 1527, "source": "contracts/validatorRegistry.algo.ts:405", "pc": [ 1362 ] }, { "teal": 1528, "source": "contracts/validatorRegistry.algo.ts:402", "pc": [ 1363 ] }, { "teal": 1533, "source": "contracts/validatorRegistry.algo.ts:418", "pc": [ 1364, 1365, 1366 ] }, { "teal": 1534, "source": "contracts/validatorRegistry.algo.ts:418", "pc": [ 1367 ] }, { "teal": 1537, "source": "contracts/validatorRegistry.algo.ts:417", "pc": [ 1368, 1369, 1370 ] }, { "teal": 1538, "source": "contracts/validatorRegistry.algo.ts:417", "pc": [ 1371 ] }, { "teal": 1541, "source": "contracts/validatorRegistry.algo.ts:416", "pc": [ 1372, 1373, 1374 ] }, { "teal": 1542, "source": "contracts/validatorRegistry.algo.ts:416", "pc": [ 1375 ] }, { "teal": 1543, "source": "contracts/validatorRegistry.algo.ts:416", "pc": [ 1376 ] }, { "teal": 1544, "source": "contracts/validatorRegistry.algo.ts:416", "pc": [ 1377, 1378 ] }, { "teal": 1545, "source": "contracts/validatorRegistry.algo.ts:416", "pc": [ 1379 ] }, { "teal": 1548, "source": "contracts/validatorRegistry.algo.ts:416", "errorMessage": "argument 2 (EntryGatingAssets) for changeValidatorRewardInfo must be a uint64[4]", "pc": [ 1380 ] }, { "teal": 1551, "source": "contracts/validatorRegistry.algo.ts:415", "pc": [ 1381, 1382, 1383 ] }, { "teal": 1552, "source": "contracts/validatorRegistry.algo.ts:415", "pc": [ 1384 ] }, { "teal": 1553, "source": "contracts/validatorRegistry.algo.ts:415", "pc": [ 1385 ] }, { "teal": 1554, "source": "contracts/validatorRegistry.algo.ts:415", "pc": [ 1386, 1387 ] }, { "teal": 1555, "source": "contracts/validatorRegistry.algo.ts:415", "pc": [ 1388 ] }, { "teal": 1558, "source": "contracts/validatorRegistry.algo.ts:415", "errorMessage": "argument 3 (EntryGatingAddress) for changeValidatorRewardInfo must be a address", "pc": [ 1389 ] }, { "teal": 1561, "source": "contracts/validatorRegistry.algo.ts:414", "pc": [ 1390, 1391, 1392 ] }, { "teal": 1562, "source": "contracts/validatorRegistry.algo.ts:414", "pc": [ 1393 ] }, { "teal": 1563, "source": "contracts/validatorRegistry.algo.ts:414", "pc": [ 1394 ] }, { "teal": 1564, "source": "contracts/validatorRegistry.algo.ts:414", "pc": [ 1395 ] }, { "teal": 1565, "source": "contracts/validatorRegistry.algo.ts:414", "pc": [ 1396 ] }, { "teal": 1568, "source": "contracts/validatorRegistry.algo.ts:414", "errorMessage": "argument 4 (EntryGatingType) for changeValidatorRewardInfo must be a uint8", "pc": [ 1397 ] }, { "teal": 1569, "source": "contracts/validatorRegistry.algo.ts:414", "pc": [ 1398 ] }, { "teal": 1572, "source": "contracts/validatorRegistry.algo.ts:413", "pc": [ 1399, 1400, 1401 ] }, { "teal": 1573, "source": "contracts/validatorRegistry.algo.ts:413", "pc": [ 1402 ] }, { "teal": 1576, "source": "contracts/validatorRegistry.algo.ts:412", "pc": [ 1403, 1404, 1405 ] }, { "teal": 1577, "source": "contracts/validatorRegistry.algo.ts:412", "pc": [ 1406 ] }, { "teal": 1578, "source": "contracts/validatorRegistry.algo.ts:412", "pc": [ 1407 ] }, { "teal": 1585, "source": "contracts/validatorRegistry.algo.ts:412", "pc": [ 1408, 1409, 1410 ] }, { "teal": 1589, "source": "contracts/validatorRegistry.algo.ts:420", "pc": [ 1411, 1412 ] }, { "teal": 1590, "source": "contracts/validatorRegistry.algo.ts:420", "pc": [ 1413, 1414, 1415 ] }, { "teal": 1597, "source": "contracts/validatorRegistry.algo.ts:423", "pc": [ 1416, 1417 ] }, { "teal": 1598, "source": "contracts/validatorRegistry.algo.ts:423", "pc": [ 1418 ] }, { "teal": 1599, "source": "contracts/validatorRegistry.algo.ts:423", "pc": [ 1419 ] }, { "teal": 1600, "source": "contracts/validatorRegistry.algo.ts:423", "pc": [ 1420 ] }, { "teal": 1601, "source": "contracts/validatorRegistry.algo.ts:423", "pc": [ 1421, 1422, 1423 ] }, { "teal": 1602, "source": "contracts/validatorRegistry.algo.ts:423", "pc": [ 1424, 1425 ] }, { "teal": 1603, "source": "contracts/validatorRegistry.algo.ts:423", "pc": [ 1426, 1427 ] }, { "teal": 1604, "source": "contracts/validatorRegistry.algo.ts:423", "pc": [ 1428 ] }, { "teal": 1605, "source": "contracts/validatorRegistry.algo.ts:423", "pc": [ 1429 ] }, { "teal": 1609, "source": "contracts/validatorRegistry.algo.ts:422", "errorMessage": "invalid Entry gating type", "pc": [ 1430 ] }, { "teal": 1614, "source": "contracts/validatorRegistry.algo.ts:426", "pc": [ 1431, 1432 ] }, { "teal": 1615, "source": "contracts/validatorRegistry.algo.ts:426", "pc": [ 1433 ] }, { "teal": 1616, "source": "contracts/validatorRegistry.algo.ts:426", "pc": [ 1434 ] }, { "teal": 1617, "source": "contracts/validatorRegistry.algo.ts:426", "pc": [ 1435, 1436, 1437 ] }, { "teal": 1622, "source": "contracts/validatorRegistry.algo.ts:427", "pc": [ 1438, 1439 ] }, { "teal": 1623, "source": "contracts/validatorRegistry.algo.ts:427", "pc": [ 1440, 1441 ] }, { "teal": 1624, "source": "contracts/validatorRegistry.algo.ts:427", "pc": [ 1442 ] }, { "teal": 1625, "source": "contracts/validatorRegistry.algo.ts:427", "pc": [ 1443 ] }, { "teal": 1632, "source": "contracts/validatorRegistry.algo.ts:430", "pc": [ 1444, 1445 ] }, { "teal": 1633, "source": "contracts/validatorRegistry.algo.ts:430", "pc": [ 1446, 1447 ] }, { "teal": 1634, "source": "contracts/validatorRegistry.algo.ts:430", "pc": [ 1448 ] }, { "teal": 1635, "source": "contracts/validatorRegistry.algo.ts:430", "pc": [ 1449 ] }, { "teal": 1636, "source": "contracts/validatorRegistry.algo.ts:430", "pc": [ 1450, 1451, 1452 ] }, { "teal": 1637, "source": "contracts/validatorRegistry.algo.ts:431", "pc": [ 1453, 1454 ] }, { "teal": 1638, "source": "contracts/validatorRegistry.algo.ts:431", "pc": [ 1455, 1456 ] }, { "teal": 1639, "source": "contracts/validatorRegistry.algo.ts:431", "pc": [ 1457 ] }, { "teal": 1640, "source": "contracts/validatorRegistry.algo.ts:430", "pc": [ 1458 ] }, { "teal": 1643, "source": "contracts/validatorRegistry.algo.ts:429", "pc": [ 1459, 1460, 1461 ] }, { "teal": 1648, "source": "contracts/validatorRegistry.algo.ts:433", "pc": [ 1462, 1463 ] }, { "teal": 1649, "source": "contracts/validatorRegistry.algo.ts:433", "pc": [ 1464, 1465, 1466 ] }, { "teal": 1650, "source": "contracts/validatorRegistry.algo.ts:433", "pc": [ 1467 ] }, { "teal": 1651, "source": "contracts/validatorRegistry.algo.ts:433", "pc": [ 1468, 1469, 1470 ] }, { "teal": 1654, "source": "contracts/validatorRegistry.algo.ts:433", "errorMessage": "provided NFD App id for gating must be valid NFD", "pc": [ 1471 ] }, { "teal": 1659, "source": "contracts/validatorRegistry.algo.ts:435", "pc": [ 1472, 1473 ] }, { "teal": 1660, "source": "contracts/validatorRegistry.algo.ts:435", "pc": [ 1474, 1475 ] }, { "teal": 1661, "source": "contracts/validatorRegistry.algo.ts:435", "pc": [ 1476 ] }, { "teal": 1662, "source": "contracts/validatorRegistry.algo.ts:435", "pc": [ 1477, 1478, 1479 ] }, { "teal": 1663, "source": "contracts/validatorRegistry.algo.ts:435", "pc": [ 1480 ] }, { "teal": 1664, "source": "contracts/validatorRegistry.algo.ts:435", "pc": [ 1481, 1482 ] }, { "teal": 1665, "source": "contracts/validatorRegistry.algo.ts:435", "pc": [ 1483 ] }, { "teal": 1666, "source": "contracts/validatorRegistry.algo.ts:435", "pc": [ 1484 ] }, { "teal": 1667, "source": "contracts/validatorRegistry.algo.ts:435", "pc": [ 1485, 1486 ] }, { "teal": 1668, "source": "contracts/validatorRegistry.algo.ts:435", "pc": [ 1487 ] }, { "teal": 1672, "source": "contracts/validatorRegistry.algo.ts:436", "pc": [ 1488, 1489 ] }, { "teal": 1673, "source": "contracts/validatorRegistry.algo.ts:436", "pc": [ 1490, 1491 ] }, { "teal": 1674, "source": "contracts/validatorRegistry.algo.ts:436", "pc": [ 1492 ] }, { "teal": 1675, "source": "contracts/validatorRegistry.algo.ts:436", "pc": [ 1493, 1494 ] }, { "teal": 1676, "source": "contracts/validatorRegistry.algo.ts:436", "pc": [ 1495 ] }, { "teal": 1677, "source": "contracts/validatorRegistry.algo.ts:436", "pc": [ 1496 ] }, { "teal": 1678, "source": "contracts/validatorRegistry.algo.ts:436", "pc": [ 1497, 1498 ] }, { "teal": 1679, "source": "contracts/validatorRegistry.algo.ts:436", "pc": [ 1499 ] }, { "teal": 1683, "source": "contracts/validatorRegistry.algo.ts:437", "pc": [ 1500, 1501 ] }, { "teal": 1684, "source": "contracts/validatorRegistry.algo.ts:437", "pc": [ 1502, 1503 ] }, { "teal": 1685, "source": "contracts/validatorRegistry.algo.ts:437", "pc": [ 1504 ] }, { "teal": 1686, "source": "contracts/validatorRegistry.algo.ts:437", "pc": [ 1505, 1506 ] }, { "teal": 1687, "source": "contracts/validatorRegistry.algo.ts:437", "pc": [ 1507 ] }, { "teal": 1688, "source": "contracts/validatorRegistry.algo.ts:437", "pc": [ 1508 ] }, { "teal": 1689, "source": "contracts/validatorRegistry.algo.ts:437", "pc": [ 1509, 1510 ] }, { "teal": 1690, "source": "contracts/validatorRegistry.algo.ts:437", "pc": [ 1511 ] }, { "teal": 1694, "source": "contracts/validatorRegistry.algo.ts:438", "pc": [ 1512, 1513 ] }, { "teal": 1695, "source": "contracts/validatorRegistry.algo.ts:438", "pc": [ 1514, 1515 ] }, { "teal": 1696, "source": "contracts/validatorRegistry.algo.ts:438", "pc": [ 1516 ] }, { "teal": 1697, "source": "contracts/validatorRegistry.algo.ts:438", "pc": [ 1517 ] }, { "teal": 1698, "source": "contracts/validatorRegistry.algo.ts:438", "pc": [ 1518, 1519 ] }, { "teal": 1699, "source": "contracts/validatorRegistry.algo.ts:438", "pc": [ 1520 ] }, { "teal": 1700, "source": "contracts/validatorRegistry.algo.ts:438", "pc": [ 1521 ] }, { "teal": 1701, "source": "contracts/validatorRegistry.algo.ts:438", "pc": [ 1522, 1523 ] }, { "teal": 1702, "source": "contracts/validatorRegistry.algo.ts:438", "pc": [ 1524 ] }, { "teal": 1706, "source": "contracts/validatorRegistry.algo.ts:439", "pc": [ 1525, 1526, 1527 ] }, { "teal": 1707, "source": "contracts/validatorRegistry.algo.ts:439", "pc": [ 1528, 1529 ] }, { "teal": 1708, "source": "contracts/validatorRegistry.algo.ts:439", "pc": [ 1530 ] }, { "teal": 1709, "source": "contracts/validatorRegistry.algo.ts:439", "pc": [ 1531 ] }, { "teal": 1710, "source": "contracts/validatorRegistry.algo.ts:439", "pc": [ 1532, 1533 ] }, { "teal": 1711, "source": "contracts/validatorRegistry.algo.ts:439", "pc": [ 1534 ] }, { "teal": 1712, "source": "contracts/validatorRegistry.algo.ts:439", "pc": [ 1535 ] }, { "teal": 1713, "source": "contracts/validatorRegistry.algo.ts:439", "pc": [ 1536, 1537 ] }, { "teal": 1714, "source": "contracts/validatorRegistry.algo.ts:439", "pc": [ 1538 ] }, { "teal": 1715, "source": "contracts/validatorRegistry.algo.ts:412", "pc": [ 1539 ] }, { "teal": 1720, "source": "contracts/validatorRegistry.algo.ts:453", "pc": [ 1540 ] }, { "teal": 1723, "source": "contracts/validatorRegistry.algo.ts:453", "pc": [ 1541, 1542, 1543 ] }, { "teal": 1724, "source": "contracts/validatorRegistry.algo.ts:453", "pc": [ 1544 ] }, { "teal": 1727, "source": "contracts/validatorRegistry.algo.ts:453", "pc": [ 1545, 1546, 1547 ] }, { "teal": 1728, "source": "contracts/validatorRegistry.algo.ts:453", "pc": [ 1548 ] }, { "teal": 1731, "source": "contracts/validatorRegistry.algo.ts:453", "pc": [ 1549, 1550 ] }, { "teal": 1732, "source": "contracts/validatorRegistry.algo.ts:453", "pc": [ 1551 ] }, { "teal": 1733, "source": "contracts/validatorRegistry.algo.ts:453", "pc": [ 1552 ] }, { "teal": 1734, "source": "contracts/validatorRegistry.algo.ts:453", "pc": [ 1553 ] }, { "teal": 1735, "source": "contracts/validatorRegistry.algo.ts:453", "pc": [ 1554, 1555 ] }, { "teal": 1736, "source": "contracts/validatorRegistry.algo.ts:453", "pc": [ 1556 ] }, { "teal": 1737, "source": "contracts/validatorRegistry.algo.ts:453", "pc": [ 1557 ] }, { "teal": 1740, "source": "contracts/validatorRegistry.algo.ts:453", "errorMessage": "argument 2 (mbrPayment) for addPool must be a pay transaction", "pc": [ 1558 ] }, { "teal": 1743, "source": "contracts/validatorRegistry.algo.ts:453", "pc": [ 1559, 1560, 1561 ] }, { "teal": 1744, "source": "contracts/validatorRegistry.algo.ts:453", "pc": [ 1562 ] }, { "teal": 1745, "source": "contracts/validatorRegistry.algo.ts:453", "pc": [ 1563 ] }, { "teal": 1746, "source": "contracts/validatorRegistry.algo.ts:453", "pc": [ 1564 ] }, { "teal": 1747, "source": "contracts/validatorRegistry.algo.ts:453", "pc": [ 1565 ] }, { "teal": 1760, "source": "contracts/validatorRegistry.algo.ts:453", "pc": [ 1566, 1567, 1568 ] }, { "teal": 1763, "source": "contracts/validatorRegistry.algo.ts:453", "pc": [ 1569 ] }, { "teal": 1764, "source": "contracts/validatorRegistry.algo.ts:453", "pc": [ 1570 ] }, { "teal": 1768, "source": "contracts/validatorRegistry.algo.ts:454", "pc": [ 1571, 1572 ] }, { "teal": 1769, "source": "contracts/validatorRegistry.algo.ts:454", "pc": [ 1573, 1574, 1575 ] }, { "teal": 1774, "source": "contracts/validatorRegistry.algo.ts:457", "pc": [ 1576, 1577 ] }, { "teal": 1775, "source": "contracts/validatorRegistry.algo.ts:457", "pc": [ 1578, 1579 ] }, { "teal": 1776, "source": "contracts/validatorRegistry.algo.ts:457", "pc": [ 1580, 1581 ] }, { "teal": 1777, "source": "contracts/validatorRegistry.algo.ts:457", "pc": [ 1582 ] }, { "teal": 1780, "source": "contracts/validatorRegistry.algo.ts:457", "errorMessage": "transaction verification failed: {\"txn\":\"mbrPayment\",\"field\":\"receiver\",\"expected\":\"this.app.address\"}", "pc": [ 1583 ] }, { "teal": 1783, "source": "contracts/validatorRegistry.algo.ts:457", "pc": [ 1584, 1585 ] }, { "teal": 1784, "source": "contracts/validatorRegistry.algo.ts:457", "pc": [ 1586, 1587 ] }, { "teal": 1785, "source": "contracts/validatorRegistry.algo.ts:457", "pc": [ 1588, 1589, 1590 ] }, { "teal": 1786, "source": "contracts/validatorRegistry.algo.ts:457", "pc": [ 1591, 1592, 1593 ] }, { "teal": 1787, "source": "contracts/validatorRegistry.algo.ts:457", "pc": [ 1594 ] }, { "teal": 1788, "source": "contracts/validatorRegistry.algo.ts:457", "pc": [ 1595 ] }, { "teal": 1791, "source": "contracts/validatorRegistry.algo.ts:457", "errorMessage": "transaction verification failed: {\"txn\":\"mbrPayment\",\"field\":\"amount\",\"expected\":\"this.getMbrAmounts().addPoolMbr\"}", "pc": [ 1596 ] }, { "teal": 1795, "source": "contracts/validatorRegistry.algo.ts:459", "pc": [ 1597 ] }, { "teal": 1796, "source": "contracts/validatorRegistry.algo.ts:459", "pc": [ 1598, 1599 ] }, { "teal": 1797, "source": "contracts/validatorRegistry.algo.ts:459", "pc": [ 1600 ] }, { "teal": 1798, "source": "contracts/validatorRegistry.algo.ts:459", "pc": [ 1601 ] }, { "teal": 1799, "source": "contracts/validatorRegistry.algo.ts:459", "pc": [ 1602 ] }, { "teal": 1800, "source": "contracts/validatorRegistry.algo.ts:459", "pc": [ 1603 ] }, { "teal": 1801, "source": "contracts/validatorRegistry.algo.ts:459", "pc": [ 1604 ] }, { "teal": 1804, "source": "contracts/validatorRegistry.algo.ts:459", "errorMessage": "specified validator id isn't valid", "pc": [ 1605 ] }, { "teal": 1808, "source": "contracts/validatorRegistry.algo.ts:461", "pc": [ 1606, 1607 ] }, { "teal": 1809, "source": "contracts/validatorRegistry.algo.ts:461", "pc": [ 1608, 1609 ] }, { "teal": 1810, "source": "contracts/validatorRegistry.algo.ts:461", "pc": [ 1610 ] }, { "teal": 1811, "source": "contracts/validatorRegistry.algo.ts:461", "pc": [ 1611, 1612 ] }, { "teal": 1812, "source": "contracts/validatorRegistry.algo.ts:461", "pc": [ 1613 ] }, { "teal": 1813, "source": "contracts/validatorRegistry.algo.ts:461", "pc": [ 1614 ] }, { "teal": 1814, "source": "contracts/validatorRegistry.algo.ts:461", "pc": [ 1615, 1616 ] }, { "teal": 1815, "source": "contracts/validatorRegistry.algo.ts:461", "pc": [ 1617 ] }, { "teal": 1816, "source": "contracts/validatorRegistry.algo.ts:461", "pc": [ 1618 ] }, { "teal": 1817, "source": "contracts/validatorRegistry.algo.ts:461", "pc": [ 1619, 1620 ] }, { "teal": 1822, "source": "contracts/validatorRegistry.algo.ts:462", "pc": [ 1621, 1622 ] }, { "teal": 1823, "source": "contracts/constants.algo.ts:30", "pc": [ 1623 ] }, { "teal": 1824, "source": "contracts/validatorRegistry.algo.ts:462", "pc": [ 1624 ] }, { "teal": 1825, "source": "contracts/validatorRegistry.algo.ts:462", "pc": [ 1625, 1626, 1627 ] }, { "teal": 1829, "source": "contracts/validatorRegistry.algo.ts:463", "errorMessage": "already at max pool size", "pc": [ 1628 ] }, { "teal": 1834, "source": "contracts/validatorRegistry.algo.ts:465", "pc": [ 1629, 1630 ] }, { "teal": 1835, "source": "contracts/validatorRegistry.algo.ts:465", "pc": [ 1631 ] }, { "teal": 1836, "source": "contracts/validatorRegistry.algo.ts:465", "pc": [ 1632 ] }, { "teal": 1837, "source": "contracts/validatorRegistry.algo.ts:465", "pc": [ 1633, 1634 ] }, { "teal": 1859, "source": "contracts/validatorRegistry.algo.ts:468", "pc": [ 1635 ] }, { "teal": 1860, "source": "contracts/validatorRegistry.algo.ts:468", "pc": [ 1636, 1637 ] }, { "teal": 1861, "source": "contracts/validatorRegistry.algo.ts:468", "pc": [ 1638, 1639 ] }, { "teal": 1865, "source": "contracts/validatorRegistry.algo.ts:469", "pc": [ 1640 ] }, { "teal": 1866, "source": "contracts/validatorRegistry.algo.ts:469", "pc": [ 1641, 1642 ] }, { "teal": 1873, "source": "contracts/validatorRegistry.algo.ts:471", "pc": [ 1643, 1644 ] }, { "teal": 1874, "source": "contracts/validatorRegistry.algo.ts:471", "pc": [ 1645 ] }, { "teal": 1875, "source": "contracts/validatorRegistry.algo.ts:471", "pc": [ 1646, 1647 ] }, { "teal": 1876, "source": "contracts/validatorRegistry.algo.ts:471", "pc": [ 1648 ] }, { "teal": 1877, "source": "contracts/validatorRegistry.algo.ts:471", "pc": [ 1649, 1650 ] }, { "teal": 1878, "source": "contracts/validatorRegistry.algo.ts:472", "pc": [ 1651, 1652 ] }, { "teal": 1879, "source": "contracts/validatorRegistry.algo.ts:472", "pc": [ 1653, 1654 ] }, { "teal": 1880, "source": "contracts/validatorRegistry.algo.ts:472", "pc": [ 1655, 1656 ] }, { "teal": 1881, "source": "contracts/validatorRegistry.algo.ts:472", "pc": [ 1657 ] }, { "teal": 1884, "source": "contracts/validatorRegistry.algo.ts:472", "errorMessage": "box value does not exist: this.stakingPoolApprovalProgram.size", "pc": [ 1658 ] }, { "teal": 1885, "source": "contracts/validatorRegistry.algo.ts:472", "pc": [ 1659, 1660 ] }, { "teal": 1886, "source": "contracts/validatorRegistry.algo.ts:472", "pc": [ 1661 ] }, { "teal": 1887, "source": "contracts/validatorRegistry.algo.ts:472", "pc": [ 1662 ] }, { "teal": 1888, "source": "contracts/validatorRegistry.algo.ts:472", "pc": [ 1663, 1664 ] }, { "teal": 1892, "source": "contracts/validatorRegistry.algo.ts:474", "pc": [ 1665, 1666, 1667 ] }, { "teal": 1893, "source": "contracts/validatorRegistry.algo.ts:474", "pc": [ 1668, 1669 ] }, { "teal": 1897, "source": "contracts/validatorRegistry.algo.ts:475", "pc": [ 1670, 1671 ] }, { "teal": 1898, "source": "contracts/validatorRegistry.algo.ts:475", "pc": [ 1672, 1673 ] }, { "teal": 1902, "source": "contracts/validatorRegistry.algo.ts:476", "pc": [ 1674, 1675 ] }, { "teal": 1903, "source": "contracts/validatorRegistry.algo.ts:476", "pc": [ 1676, 1677 ] }, { "teal": 1907, "source": "contracts/validatorRegistry.algo.ts:477", "pc": [ 1678, 1679 ] }, { "teal": 1908, "source": "contracts/validatorRegistry.algo.ts:477", "pc": [ 1680, 1681 ] }, { "teal": 1919, "source": "contracts/validatorRegistry.algo.ts:480", "pc": [ 1682, 1683, 1684, 1685, 1686, 1687 ] }, { "teal": 1920, "source": "contracts/validatorRegistry.algo.ts:480", "pc": [ 1688, 1689 ] }, { "teal": 1921, "source": "contracts/validatorRegistry.algo.ts:481", "pc": [ 1690, 1691, 1692 ] }, { "teal": 1922, "source": "contracts/validatorRegistry.algo.ts:481", "pc": [ 1693 ] }, { "teal": 1923, "source": "contracts/validatorRegistry.algo.ts:481", "pc": [ 1694, 1695 ] }, { "teal": 1924, "source": "contracts/validatorRegistry.algo.ts:482", "pc": [ 1696, 1697 ] }, { "teal": 1925, "source": "contracts/validatorRegistry.algo.ts:482", "pc": [ 1698 ] }, { "teal": 1926, "source": "contracts/validatorRegistry.algo.ts:482", "pc": [ 1699, 1700 ] }, { "teal": 1927, "source": "contracts/validatorRegistry.algo.ts:483", "pc": [ 1701, 1702 ] }, { "teal": 1928, "source": "contracts/validatorRegistry.algo.ts:483", "pc": [ 1703 ] }, { "teal": 1929, "source": "contracts/validatorRegistry.algo.ts:483", "pc": [ 1704, 1705 ] }, { "teal": 1930, "source": "contracts/validatorRegistry.algo.ts:484", "pc": [ 1706, 1707 ] }, { "teal": 1931, "source": "contracts/validatorRegistry.algo.ts:484", "pc": [ 1708 ] }, { "teal": 1932, "source": "contracts/validatorRegistry.algo.ts:484", "pc": [ 1709 ] }, { "teal": 1933, "source": "contracts/validatorRegistry.algo.ts:484", "pc": [ 1710, 1711 ] }, { "teal": 1934, "source": "contracts/validatorRegistry.algo.ts:484", "pc": [ 1712 ] }, { "teal": 1935, "source": "contracts/validatorRegistry.algo.ts:484", "pc": [ 1713 ] }, { "teal": 1936, "source": "contracts/validatorRegistry.algo.ts:484", "pc": [ 1714, 1715 ] }, { "teal": 1937, "source": "contracts/validatorRegistry.algo.ts:484", "pc": [ 1716 ] }, { "teal": 1938, "source": "contracts/validatorRegistry.algo.ts:484", "pc": [ 1717 ] }, { "teal": 1939, "source": "contracts/validatorRegistry.algo.ts:484", "pc": [ 1718 ] }, { "teal": 1940, "source": "contracts/validatorRegistry.algo.ts:484", "pc": [ 1719, 1720 ] }, { "teal": 1943, "source": "contracts/validatorRegistry.algo.ts:468", "pc": [ 1721 ] }, { "teal": 1944, "source": "contracts/validatorRegistry.algo.ts:468", "pc": [ 1722, 1723 ] }, { "teal": 1947, "source": "contracts/validatorRegistry.algo.ts:468", "pc": [ 1724 ] }, { "teal": 1951, "source": "contracts/validatorRegistry.algo.ts:488", "pc": [ 1725, 1726 ] }, { "teal": 1952, "source": "contracts/validatorRegistry.algo.ts:488", "pc": [ 1727, 1728 ] }, { "teal": 1953, "source": "contracts/validatorRegistry.algo.ts:488", "pc": [ 1729 ] }, { "teal": 1954, "source": "contracts/validatorRegistry.algo.ts:488", "pc": [ 1730, 1731, 1732 ] }, { "teal": 1955, "source": "contracts/validatorRegistry.algo.ts:488", "pc": [ 1733 ] }, { "teal": 1956, "source": "contracts/validatorRegistry.algo.ts:488", "pc": [ 1734, 1735 ] }, { "teal": 1957, "source": "contracts/validatorRegistry.algo.ts:488", "pc": [ 1736 ] }, { "teal": 1958, "source": "contracts/validatorRegistry.algo.ts:488", "pc": [ 1737 ] }, { "teal": 1959, "source": "contracts/validatorRegistry.algo.ts:488", "pc": [ 1738, 1739 ] }, { "teal": 1960, "source": "contracts/validatorRegistry.algo.ts:488", "pc": [ 1740 ] }, { "teal": 1964, "source": "contracts/validatorRegistry.algo.ts:491", "pc": [ 1741, 1742 ] }, { "teal": 1965, "source": "contracts/validatorRegistry.algo.ts:491", "pc": [ 1743, 1744 ] }, { "teal": 1969, "source": "contracts/validatorRegistry.algo.ts:492", "pc": [ 1745, 1746 ] }, { "teal": 1970, "source": "contracts/validatorRegistry.algo.ts:492", "pc": [ 1747, 1748 ] }, { "teal": 1971, "source": "contracts/validatorRegistry.algo.ts:492", "pc": [ 1749 ] }, { "teal": 1972, "source": "contracts/validatorRegistry.algo.ts:492", "pc": [ 1750 ] }, { "teal": 1973, "source": "contracts/validatorRegistry.algo.ts:492", "pc": [ 1751, 1752 ] }, { "teal": 1974, "source": "contracts/validatorRegistry.algo.ts:492", "pc": [ 1753 ] }, { "teal": 1975, "source": "contracts/validatorRegistry.algo.ts:492", "pc": [ 1754 ] }, { "teal": 1976, "source": "contracts/validatorRegistry.algo.ts:492", "pc": [ 1755 ] }, { "teal": 1977, "source": "contracts/validatorRegistry.algo.ts:492", "pc": [ 1756 ] }, { "teal": 1978, "source": "contracts/validatorRegistry.algo.ts:492", "pc": [ 1757, 1758 ] }, { "teal": 1979, "source": "contracts/validatorRegistry.algo.ts:492", "pc": [ 1759 ] }, { "teal": 1980, "source": "contracts/validatorRegistry.algo.ts:492", "pc": [ 1760 ] }, { "teal": 1981, "source": "contracts/validatorRegistry.algo.ts:492", "pc": [ 1761, 1762 ] }, { "teal": 1982, "source": "contracts/validatorRegistry.algo.ts:492", "pc": [ 1763 ] }, { "teal": 1983, "source": "contracts/validatorRegistry.algo.ts:492", "pc": [ 1764 ] }, { "teal": 1984, "source": "contracts/validatorRegistry.algo.ts:492", "pc": [ 1765, 1766 ] }, { "teal": 1985, "source": "contracts/validatorRegistry.algo.ts:492", "pc": [ 1767 ] }, { "teal": 1989, "source": "contracts/validatorRegistry.algo.ts:493", "pc": [ 1768, 1769 ] }, { "teal": 1990, "source": "contracts/validatorRegistry.algo.ts:493", "pc": [ 1770, 1771 ] }, { "teal": 1991, "source": "contracts/validatorRegistry.algo.ts:493", "pc": [ 1772, 1773 ] }, { "teal": 1992, "source": "contracts/validatorRegistry.algo.ts:493", "pc": [ 1774, 1775, 1776 ] }, { "teal": 2000, "source": "contracts/validatorRegistry.algo.ts:495", "pc": [ 1777, 1778, 1779, 1780, 1781, 1782 ] }, { "teal": 2001, "source": "contracts/validatorRegistry.algo.ts:496", "pc": [ 1783, 1784 ] }, { "teal": 2002, "source": "contracts/validatorRegistry.algo.ts:496", "pc": [ 1785 ] }, { "teal": 2003, "source": "contracts/validatorRegistry.algo.ts:497", "pc": [ 1786, 1787 ] }, { "teal": 2004, "source": "contracts/validatorRegistry.algo.ts:497", "pc": [ 1788 ] }, { "teal": 2005, "source": "contracts/validatorRegistry.algo.ts:497", "pc": [ 1789 ] }, { "teal": 2006, "source": "contracts/validatorRegistry.algo.ts:497", "pc": [ 1790 ] }, { "teal": 2007, "source": "contracts/validatorRegistry.algo.ts:497", "pc": [ 1791, 1792 ] }, { "teal": 2008, "source": "contracts/validatorRegistry.algo.ts:497", "pc": [ 1793 ] }, { "teal": 2011, "source": "contracts/validatorRegistry.algo.ts:497", "errorMessage": "numPools as uint16 overflowed 16 bits", "pc": [ 1794 ] }, { "teal": 2012, "source": "contracts/validatorRegistry.algo.ts:497", "pc": [ 1795, 1796, 1797 ] }, { "teal": 2013, "source": "contracts/validatorRegistry.algo.ts:497", "pc": [ 1798 ] }, { "teal": 2014, "source": "contracts/validatorRegistry.algo.ts:498", "pc": [ 1799, 1800 ] }, { "teal": 2015, "source": "contracts/validatorRegistry.algo.ts:498", "pc": [ 1801 ] }, { "teal": 2016, "source": "contracts/validatorRegistry.algo.ts:498", "pc": [ 1802 ] }, { "teal": 2017, "source": "contracts/validatorRegistry.algo.ts:495", "pc": [ 1803 ] }, { "teal": 2018, "source": "contracts/validatorRegistry.algo.ts:495", "pc": [ 1804 ] }, { "teal": 2022, "source": "contracts/validatorRegistry.algo.ts:501", "pc": [ 1805, 1806 ] }, { "teal": 2023, "source": "contracts/validatorRegistry.algo.ts:501", "pc": [ 1807 ] }, { "teal": 2024, "source": "contracts/validatorRegistry.algo.ts:501", "pc": [ 1808, 1809 ] }, { "teal": 2025, "source": "contracts/validatorRegistry.algo.ts:501", "pc": [ 1810 ] }, { "teal": 2026, "source": "contracts/validatorRegistry.algo.ts:501", "pc": [ 1811 ] }, { "teal": 2027, "source": "contracts/validatorRegistry.algo.ts:501", "pc": [ 1812, 1813 ] }, { "teal": 2028, "source": "contracts/validatorRegistry.algo.ts:501", "pc": [ 1814 ] }, { "teal": 2029, "source": "contracts/validatorRegistry.algo.ts:501", "pc": [ 1815 ] }, { "teal": 2032, "source": "contracts/validatorRegistry.algo.ts:453", "pc": [ 1816, 1817 ] }, { "teal": 2035, "source": "contracts/validatorRegistry.algo.ts:453", "pc": [ 1818, 1819 ] }, { "teal": 2036, "source": "contracts/validatorRegistry.algo.ts:453", "pc": [ 1820 ] }, { "teal": 2041, "source": "contracts/validatorRegistry.algo.ts:513", "pc": [ 1821 ] }, { "teal": 2044, "source": "contracts/validatorRegistry.algo.ts:513", "pc": [ 1822, 1823, 1824 ] }, { "teal": 2045, "source": "contracts/validatorRegistry.algo.ts:513", "pc": [ 1825 ] }, { "teal": 2048, "source": "contracts/validatorRegistry.algo.ts:513", "pc": [ 1826, 1827, 1828 ] }, { "teal": 2049, "source": "contracts/validatorRegistry.algo.ts:513", "pc": [ 1829 ] }, { "teal": 2052, "source": "contracts/validatorRegistry.algo.ts:513", "pc": [ 1830, 1831 ] }, { "teal": 2053, "source": "contracts/validatorRegistry.algo.ts:513", "pc": [ 1832 ] }, { "teal": 2054, "source": "contracts/validatorRegistry.algo.ts:513", "pc": [ 1833 ] }, { "teal": 2055, "source": "contracts/validatorRegistry.algo.ts:513", "pc": [ 1834 ] }, { "teal": 2056, "source": "contracts/validatorRegistry.algo.ts:513", "pc": [ 1835, 1836 ] }, { "teal": 2057, "source": "contracts/validatorRegistry.algo.ts:513", "pc": [ 1837 ] }, { "teal": 2058, "source": "contracts/validatorRegistry.algo.ts:513", "pc": [ 1838 ] }, { "teal": 2061, "source": "contracts/validatorRegistry.algo.ts:513", "errorMessage": "argument 2 (stakedAmountPayment) for addStake must be a pay transaction", "pc": [ 1839 ] }, { "teal": 2064, "source": "contracts/validatorRegistry.algo.ts:513", "pc": [ 1840, 1841, 1842 ] }, { "teal": 2065, "source": "contracts/validatorRegistry.algo.ts:513", "pc": [ 1843 ] }, { "teal": 2066, "source": "contracts/validatorRegistry.algo.ts:513", "pc": [ 1844 ] }, { "teal": 2067, "source": "contracts/validatorRegistry.algo.ts:513", "pc": [ 1845 ] }, { "teal": 2068, "source": "contracts/validatorRegistry.algo.ts:513", "pc": [ 1846 ] }, { "teal": 2080, "source": "contracts/validatorRegistry.algo.ts:513", "pc": [ 1847, 1848, 1849 ] }, { "teal": 2083, "source": "contracts/validatorRegistry.algo.ts:513", "pc": [ 1850 ] }, { "teal": 2084, "source": "contracts/validatorRegistry.algo.ts:513", "pc": [ 1851, 1852 ] }, { "teal": 2088, "source": "contracts/validatorRegistry.algo.ts:514", "pc": [ 1853 ] }, { "teal": 2089, "source": "contracts/validatorRegistry.algo.ts:514", "pc": [ 1854, 1855 ] }, { "teal": 2090, "source": "contracts/validatorRegistry.algo.ts:514", "pc": [ 1856 ] }, { "teal": 2091, "source": "contracts/validatorRegistry.algo.ts:514", "pc": [ 1857 ] }, { "teal": 2092, "source": "contracts/validatorRegistry.algo.ts:514", "pc": [ 1858 ] }, { "teal": 2093, "source": "contracts/validatorRegistry.algo.ts:514", "pc": [ 1859 ] }, { "teal": 2094, "source": "contracts/validatorRegistry.algo.ts:514", "pc": [ 1860 ] }, { "teal": 2097, "source": "contracts/validatorRegistry.algo.ts:514", "errorMessage": "specified validator id isn't valid", "pc": [ 1861 ] }, { "teal": 2102, "source": "contracts/validatorRegistry.algo.ts:517", "pc": [ 1862, 1863 ] }, { "teal": 2103, "source": "contracts/validatorRegistry.algo.ts:517", "pc": [ 1864 ] }, { "teal": 2104, "source": "contracts/validatorRegistry.algo.ts:517", "pc": [ 1865 ] }, { "teal": 2105, "source": "contracts/validatorRegistry.algo.ts:517", "pc": [ 1866, 1867 ] }, { "teal": 2106, "source": "contracts/validatorRegistry.algo.ts:517", "pc": [ 1868 ] }, { "teal": 2107, "source": "contracts/validatorRegistry.algo.ts:517", "pc": [ 1869 ] }, { "teal": 2108, "source": "contracts/validatorRegistry.algo.ts:517", "pc": [ 1870, 1871 ] }, { "teal": 2109, "source": "contracts/validatorRegistry.algo.ts:517", "pc": [ 1872 ] }, { "teal": 2110, "source": "contracts/validatorRegistry.algo.ts:517", "pc": [ 1873 ] }, { "teal": 2111, "source": "contracts/validatorRegistry.algo.ts:517", "pc": [ 1874 ] }, { "teal": 2112, "source": "contracts/validatorRegistry.algo.ts:517", "pc": [ 1875 ] }, { "teal": 2113, "source": "contracts/validatorRegistry.algo.ts:517", "pc": [ 1876, 1877, 1878 ] }, { "teal": 2121, "source": "contracts/validatorRegistry.algo.ts:520", "pc": [ 1879, 1880 ] }, { "teal": 2122, "source": "contracts/validatorRegistry.algo.ts:520", "pc": [ 1881 ] }, { "teal": 2123, "source": "contracts/validatorRegistry.algo.ts:520", "pc": [ 1882 ] }, { "teal": 2124, "source": "contracts/validatorRegistry.algo.ts:520", "pc": [ 1883, 1884 ] }, { "teal": 2125, "source": "contracts/validatorRegistry.algo.ts:520", "pc": [ 1885 ] }, { "teal": 2126, "source": "contracts/validatorRegistry.algo.ts:520", "pc": [ 1886 ] }, { "teal": 2127, "source": "contracts/validatorRegistry.algo.ts:520", "pc": [ 1887, 1888 ] }, { "teal": 2128, "source": "contracts/validatorRegistry.algo.ts:520", "pc": [ 1889 ] }, { "teal": 2129, "source": "contracts/validatorRegistry.algo.ts:520", "pc": [ 1890 ] }, { "teal": 2130, "source": "contracts/validatorRegistry.algo.ts:520", "pc": [ 1891, 1892 ] }, { "teal": 2131, "source": "contracts/validatorRegistry.algo.ts:520", "pc": [ 1893 ] }, { "teal": 2134, "source": "contracts/validatorRegistry.algo.ts:519", "errorMessage": "can't stake with a validator that is past its sunsetting time", "pc": [ 1894 ] }, { "teal": 2139, "source": "contracts/validatorRegistry.algo.ts:525", "pc": [ 1895, 1896 ] }, { "teal": 2140, "source": "contracts/validatorRegistry.algo.ts:525", "pc": [ 1897, 1898 ] }, { "teal": 2148, "source": "contracts/validatorRegistry.algo.ts:529", "pc": [ 1899, 1900 ] }, { "teal": 2149, "source": "contracts/validatorRegistry.algo.ts:530", "pc": [ 1901, 1902 ] }, { "teal": 2150, "source": "contracts/validatorRegistry.algo.ts:530", "pc": [ 1903, 1904 ] }, { "teal": 2151, "source": "contracts/validatorRegistry.algo.ts:530", "pc": [ 1905 ] }, { "teal": 2154, "source": "contracts/validatorRegistry.algo.ts:530", "errorMessage": "transaction verification failed: {\"txn\":\"stakedAmountPayment\",\"field\":\"sender\",\"expected\":\"staker\"}", "pc": [ 1906 ] }, { "teal": 2157, "source": "contracts/validatorRegistry.algo.ts:529", "pc": [ 1907, 1908 ] }, { "teal": 2158, "source": "contracts/validatorRegistry.algo.ts:531", "pc": [ 1909, 1910 ] }, { "teal": 2159, "source": "contracts/validatorRegistry.algo.ts:531", "pc": [ 1911, 1912 ] }, { "teal": 2160, "source": "contracts/validatorRegistry.algo.ts:531", "pc": [ 1913 ] }, { "teal": 2163, "source": "contracts/validatorRegistry.algo.ts:531", "errorMessage": "transaction verification failed: {\"txn\":\"stakedAmountPayment\",\"field\":\"receiver\",\"expected\":\"this.app.address\"}", "pc": [ 1914 ] }, { "teal": 2167, "source": "contracts/validatorRegistry.algo.ts:537", "pc": [ 1915, 1916 ] }, { "teal": 2168, "source": "contracts/validatorRegistry.algo.ts:537", "pc": [ 1917, 1918 ] }, { "teal": 2169, "source": "contracts/validatorRegistry.algo.ts:537", "pc": [ 1919, 1920, 1921 ] }, { "teal": 2173, "source": "contracts/validatorRegistry.algo.ts:539", "pc": [ 1922, 1923 ] }, { "teal": 2174, "source": "contracts/validatorRegistry.algo.ts:539", "pc": [ 1924, 1925 ] }, { "teal": 2175, "source": "contracts/validatorRegistry.algo.ts:539", "pc": [ 1926, 1927 ] }, { "teal": 2179, "source": "contracts/validatorRegistry.algo.ts:540", "pc": [ 1928 ] }, { "teal": 2180, "source": "contracts/validatorRegistry.algo.ts:540", "pc": [ 1929, 1930 ] }, { "teal": 2185, "source": "contracts/validatorRegistry.algo.ts:542", "pc": [ 1931, 1932 ] }, { "teal": 2186, "source": "contracts/validatorRegistry.algo.ts:542", "pc": [ 1933, 1934, 1935 ] }, { "teal": 2187, "source": "contracts/validatorRegistry.algo.ts:542", "pc": [ 1936, 1937, 1938 ] }, { "teal": 2192, "source": "contracts/validatorRegistry.algo.ts:545", "pc": [ 1939, 1940, 1941 ] }, { "teal": 2193, "source": "contracts/validatorRegistry.algo.ts:545", "pc": [ 1942, 1943, 1944 ] }, { "teal": 2194, "source": "contracts/validatorRegistry.algo.ts:545", "pc": [ 1945 ] }, { "teal": 2195, "source": "contracts/validatorRegistry.algo.ts:545", "pc": [ 1946, 1947 ] }, { "teal": 2199, "source": "contracts/validatorRegistry.algo.ts:546", "pc": [ 1948, 1949 ] }, { "teal": 2200, "source": "contracts/validatorRegistry.algo.ts:546", "pc": [ 1950, 1951 ] }, { "teal": 2201, "source": "contracts/validatorRegistry.algo.ts:546", "pc": [ 1952 ] }, { "teal": 2202, "source": "contracts/validatorRegistry.algo.ts:546", "pc": [ 1953, 1954 ] }, { "teal": 2206, "source": "contracts/validatorRegistry.algo.ts:547", "pc": [ 1955 ] }, { "teal": 2207, "source": "contracts/validatorRegistry.algo.ts:547", "pc": [ 1956, 1957 ] }, { "teal": 2208, "source": "contracts/validatorRegistry.algo.ts:547", "pc": [ 1958 ] }, { "teal": 2209, "source": "contracts/validatorRegistry.algo.ts:547", "pc": [ 1959, 1960, 1961 ] }, { "teal": 2210, "source": "contracts/validatorRegistry.algo.ts:547", "pc": [ 1962 ] }, { "teal": 2211, "source": "contracts/validatorRegistry.algo.ts:547", "pc": [ 1963 ] }, { "teal": 2219, "source": "contracts/validatorRegistry.algo.ts:552", "pc": [ 1964, 1965 ] }, { "teal": 2220, "source": "contracts/validatorRegistry.algo.ts:552", "pc": [ 1966 ] }, { "teal": 2221, "source": "contracts/validatorRegistry.algo.ts:552", "pc": [ 1967 ] }, { "teal": 2222, "source": "contracts/validatorRegistry.algo.ts:552", "pc": [ 1968, 1969 ] }, { "teal": 2223, "source": "contracts/validatorRegistry.algo.ts:552", "pc": [ 1970 ] }, { "teal": 2224, "source": "contracts/validatorRegistry.algo.ts:552", "pc": [ 1971 ] }, { "teal": 2225, "source": "contracts/validatorRegistry.algo.ts:552", "pc": [ 1972, 1973 ] }, { "teal": 2226, "source": "contracts/validatorRegistry.algo.ts:552", "pc": [ 1974 ] }, { "teal": 2227, "source": "contracts/validatorRegistry.algo.ts:552", "pc": [ 1975 ] }, { "teal": 2228, "source": "contracts/validatorRegistry.algo.ts:552", "pc": [ 1976, 1977 ] }, { "teal": 2229, "source": "contracts/validatorRegistry.algo.ts:552", "pc": [ 1978 ] }, { "teal": 2230, "source": "contracts/validatorRegistry.algo.ts:552", "pc": [ 1979, 1980, 1981 ] }, { "teal": 2231, "source": "contracts/validatorRegistry.algo.ts:552", "pc": [ 1982 ] }, { "teal": 2234, "source": "contracts/validatorRegistry.algo.ts:551", "errorMessage": "total staked for all of a validators pools may not exceed hard cap", "pc": [ 1983 ] }, { "teal": 2238, "source": "contracts/validatorRegistry.algo.ts:558", "pc": [ 1984, 1985 ] }, { "teal": 2239, "source": "contracts/validatorRegistry.algo.ts:558", "pc": [ 1986, 1987 ] }, { "teal": 2240, "source": "contracts/validatorRegistry.algo.ts:558", "pc": [ 1988, 1989 ] }, { "teal": 2241, "source": "contracts/validatorRegistry.algo.ts:558", "pc": [ 1990, 1991, 1992 ] }, { "teal": 2242, "source": "contracts/validatorRegistry.algo.ts:558", "pc": [ 1993, 1994 ] }, { "teal": 2248, "source": "contracts/validatorRegistry.algo.ts:560", "pc": [ 1995, 1996 ] }, { "teal": 2249, "source": "contracts/validatorRegistry.algo.ts:560", "pc": [ 1997, 1998 ] }, { "teal": 2250, "source": "contracts/validatorRegistry.algo.ts:560", "pc": [ 1999, 2000 ] }, { "teal": 2251, "source": "contracts/validatorRegistry.algo.ts:560", "pc": [ 2001, 2002 ] }, { "teal": 2252, "source": "contracts/validatorRegistry.algo.ts:560", "pc": [ 2003 ] }, { "teal": 2253, "source": "contracts/validatorRegistry.algo.ts:560", "pc": [ 2004, 2005 ] }, { "teal": 2257, "source": "contracts/validatorRegistry.algo.ts:561", "pc": [ 2006, 2007 ] }, { "teal": 2258, "source": "contracts/validatorRegistry.algo.ts:561", "pc": [ 2008, 2009 ] }, { "teal": 2259, "source": "contracts/validatorRegistry.algo.ts:561", "pc": [ 2010, 2011 ] }, { "teal": 2260, "source": "contracts/validatorRegistry.algo.ts:561", "pc": [ 2012, 2013, 2014 ] }, { "teal": 2261, "source": "contracts/validatorRegistry.algo.ts:561", "pc": [ 2015 ] }, { "teal": 2262, "source": "contracts/validatorRegistry.algo.ts:561", "pc": [ 2016, 2017 ] }, { "teal": 2267, "source": "contracts/validatorRegistry.algo.ts:562", "pc": [ 2018, 2019 ] }, { "teal": 2268, "source": "contracts/validatorRegistry.algo.ts:562", "pc": [ 2020, 2021 ] }, { "teal": 2269, "source": "contracts/validatorRegistry.algo.ts:562", "pc": [ 2022, 2023 ] }, { "teal": 2270, "source": "contracts/validatorRegistry.algo.ts:562", "pc": [ 2024, 2025, 2026 ] }, { "teal": 2271, "source": "contracts/validatorRegistry.algo.ts:562", "pc": [ 2027 ] }, { "teal": 2272, "source": "contracts/validatorRegistry.algo.ts:562", "pc": [ 2028 ] }, { "teal": 2273, "source": "contracts/validatorRegistry.algo.ts:562", "pc": [ 2029 ] }, { "teal": 2274, "source": "contracts/validatorRegistry.algo.ts:562", "pc": [ 2030, 2031, 2032 ] }, { "teal": 2278, "source": "contracts/validatorRegistry.algo.ts:563", "errorMessage": "No pool available with free stake. Validator needs to add another pool", "pc": [ 2033 ] }, { "teal": 2283, "source": "contracts/validatorRegistry.algo.ts:567", "pc": [ 2034, 2035 ] }, { "teal": 2284, "source": "contracts/validatorRegistry.algo.ts:567", "pc": [ 2036, 2037 ] }, { "teal": 2285, "source": "contracts/validatorRegistry.algo.ts:567", "pc": [ 2038, 2039 ] }, { "teal": 2286, "source": "contracts/validatorRegistry.algo.ts:567", "pc": [ 2040, 2041, 2042 ] }, { "teal": 2287, "source": "contracts/validatorRegistry.algo.ts:567", "pc": [ 2043, 2044 ] }, { "teal": 2288, "source": "contracts/validatorRegistry.algo.ts:567", "pc": [ 2045, 2046, 2047 ] }, { "teal": 2298, "source": "contracts/validatorRegistry.algo.ts:575", "pc": [ 2048, 2049 ] }, { "teal": 2299, "source": "contracts/validatorRegistry.algo.ts:574", "pc": [ 2050, 2051 ] }, { "teal": 2300, "source": "contracts/validatorRegistry.algo.ts:573", "pc": [ 2052, 2053 ] }, { "teal": 2301, "source": "contracts/validatorRegistry.algo.ts:572", "pc": [ 2054, 2055 ] }, { "teal": 2302, "source": "contracts/validatorRegistry.algo.ts:572", "pc": [ 2056, 2057 ] }, { "teal": 2303, "source": "contracts/validatorRegistry.algo.ts:572", "pc": [ 2058, 2059 ] }, { "teal": 2304, "source": "contracts/validatorRegistry.algo.ts:572", "pc": [ 2060, 2061, 2062 ] }, { "teal": 2305, "source": "contracts/validatorRegistry.algo.ts:571", "pc": [ 2063, 2064 ] }, { "teal": 2306, "source": "contracts/validatorRegistry.algo.ts:570", "pc": [ 2065, 2066, 2067 ] }, { "teal": 2316, "source": "contracts/validatorRegistry.algo.ts:577", "pc": [ 2068, 2069, 2070, 2071, 2072, 2073 ] }, { "teal": 2317, "source": "contracts/validatorRegistry.algo.ts:578", "pc": [ 2074, 2075 ] }, { "teal": 2318, "source": "contracts/validatorRegistry.algo.ts:578", "pc": [ 2076 ] }, { "teal": 2319, "source": "contracts/validatorRegistry.algo.ts:579", "pc": [ 2077, 2078 ] }, { "teal": 2320, "source": "contracts/validatorRegistry.algo.ts:579", "pc": [ 2079, 2080 ] }, { "teal": 2321, "source": "contracts/validatorRegistry.algo.ts:579", "pc": [ 2081, 2082 ] }, { "teal": 2322, "source": "contracts/validatorRegistry.algo.ts:579", "pc": [ 2083, 2084, 2085 ] }, { "teal": 2323, "source": "contracts/validatorRegistry.algo.ts:579", "pc": [ 2086 ] }, { "teal": 2324, "source": "contracts/validatorRegistry.algo.ts:579", "pc": [ 2087 ] }, { "teal": 2325, "source": "contracts/validatorRegistry.algo.ts:579", "pc": [ 2088 ] }, { "teal": 2326, "source": "contracts/validatorRegistry.algo.ts:579", "pc": [ 2089 ] }, { "teal": 2327, "source": "contracts/validatorRegistry.algo.ts:579", "pc": [ 2090, 2091 ] }, { "teal": 2328, "source": "contracts/validatorRegistry.algo.ts:579", "pc": [ 2092 ] }, { "teal": 2331, "source": "contracts/validatorRegistry.algo.ts:579", "errorMessage": "poolKey.poolId as uint16 overflowed 16 bits", "pc": [ 2093 ] }, { "teal": 2332, "source": "contracts/validatorRegistry.algo.ts:579", "pc": [ 2094, 2095, 2096 ] }, { "teal": 2333, "source": "contracts/validatorRegistry.algo.ts:579", "pc": [ 2097 ] }, { "teal": 2334, "source": "contracts/validatorRegistry.algo.ts:580", "pc": [ 2098, 2099 ] }, { "teal": 2335, "source": "contracts/validatorRegistry.algo.ts:580", "pc": [ 2100, 2101 ] }, { "teal": 2336, "source": "contracts/validatorRegistry.algo.ts:580", "pc": [ 2102, 2103 ] }, { "teal": 2337, "source": "contracts/validatorRegistry.algo.ts:580", "pc": [ 2104, 2105, 2106 ] }, { "teal": 2338, "source": "contracts/validatorRegistry.algo.ts:580", "pc": [ 2107 ] }, { "teal": 2339, "source": "contracts/validatorRegistry.algo.ts:580", "pc": [ 2108 ] }, { "teal": 2340, "source": "contracts/validatorRegistry.algo.ts:580", "pc": [ 2109 ] }, { "teal": 2341, "source": "contracts/validatorRegistry.algo.ts:582", "pc": [ 2110, 2111 ] }, { "teal": 2342, "source": "contracts/validatorRegistry.algo.ts:582", "pc": [ 2112 ] }, { "teal": 2343, "source": "contracts/validatorRegistry.algo.ts:581", "pc": [ 2113, 2114 ] }, { "teal": 2344, "source": "contracts/validatorRegistry.algo.ts:581", "pc": [ 2115 ] }, { "teal": 2345, "source": "contracts/validatorRegistry.algo.ts:581", "pc": [ 2116 ] }, { "teal": 2346, "source": "contracts/validatorRegistry.algo.ts:577", "pc": [ 2117 ] }, { "teal": 2347, "source": "contracts/validatorRegistry.algo.ts:577", "pc": [ 2118 ] }, { "teal": 2351, "source": "contracts/validatorRegistry.algo.ts:585", "pc": [ 2119, 2120 ] }, { "teal": 2352, "source": "contracts/validatorRegistry.algo.ts:585", "pc": [ 2121, 2122 ] }, { "teal": 2353, "source": "contracts/validatorRegistry.algo.ts:585", "pc": [ 2123, 2124 ] }, { "teal": 2354, "source": "contracts/validatorRegistry.algo.ts:585", "pc": [ 2125, 2126, 2127 ] }, { "teal": 2357, "source": "contracts/validatorRegistry.algo.ts:513", "pc": [ 2128, 2129 ] }, { "teal": 2360, "source": "contracts/validatorRegistry.algo.ts:513", "pc": [ 2130, 2131 ] }, { "teal": 2361, "source": "contracts/validatorRegistry.algo.ts:513", "pc": [ 2132 ] }, { "teal": 2366, "source": "contracts/validatorRegistry.algo.ts:603", "pc": [ 2133 ] }, { "teal": 2369, "source": "contracts/validatorRegistry.algo.ts:603", "pc": [ 2134, 2135, 2136 ] }, { "teal": 2370, "source": "contracts/validatorRegistry.algo.ts:603", "pc": [ 2137 ] }, { "teal": 2373, "source": "contracts/validatorRegistry.algo.ts:603", "pc": [ 2138, 2139, 2140 ] }, { "teal": 2374, "source": "contracts/validatorRegistry.algo.ts:603", "pc": [ 2141 ] }, { "teal": 2375, "source": "contracts/validatorRegistry.algo.ts:603", "pc": [ 2142 ] }, { "teal": 2376, "source": "contracts/validatorRegistry.algo.ts:603", "pc": [ 2143 ] }, { "teal": 2377, "source": "contracts/validatorRegistry.algo.ts:603", "pc": [ 2144 ] }, { "teal": 2395, "source": "contracts/validatorRegistry.algo.ts:603", "pc": [ 2145, 2146, 2147 ] }, { "teal": 2398, "source": "contracts/validatorRegistry.algo.ts:603", "pc": [ 2148 ] }, { "teal": 2399, "source": "contracts/validatorRegistry.algo.ts:603", "pc": [ 2149, 2150 ] }, { "teal": 2403, "source": "contracts/validatorRegistry.algo.ts:605", "pc": [ 2151, 2152 ] }, { "teal": 2404, "source": "contracts/validatorRegistry.algo.ts:605", "pc": [ 2153 ] }, { "teal": 2405, "source": "contracts/validatorRegistry.algo.ts:605", "pc": [ 2154 ] }, { "teal": 2406, "source": "contracts/validatorRegistry.algo.ts:605", "pc": [ 2155, 2156 ] }, { "teal": 2407, "source": "contracts/validatorRegistry.algo.ts:605", "pc": [ 2157 ] }, { "teal": 2408, "source": "contracts/validatorRegistry.algo.ts:605", "pc": [ 2158 ] }, { "teal": 2409, "source": "contracts/validatorRegistry.algo.ts:605", "pc": [ 2159, 2160 ] }, { "teal": 2410, "source": "contracts/validatorRegistry.algo.ts:605", "pc": [ 2161 ] }, { "teal": 2411, "source": "contracts/validatorRegistry.algo.ts:605", "pc": [ 2162 ] }, { "teal": 2412, "source": "contracts/validatorRegistry.algo.ts:605", "pc": [ 2163, 2164 ] }, { "teal": 2416, "source": "contracts/validatorRegistry.algo.ts:606", "pc": [ 2165, 2166 ] }, { "teal": 2417, "source": "contracts/validatorRegistry.algo.ts:606", "pc": [ 2167 ] }, { "teal": 2418, "source": "contracts/validatorRegistry.algo.ts:606", "pc": [ 2168 ] }, { "teal": 2419, "source": "contracts/validatorRegistry.algo.ts:606", "pc": [ 2169 ] }, { "teal": 2424, "source": "contracts/validatorRegistry.algo.ts:608", "pc": [ 2170, 2171 ] }, { "teal": 2425, "source": "contracts/validatorRegistry.algo.ts:608", "pc": [ 2172, 2173 ] }, { "teal": 2426, "source": "contracts/validatorRegistry.algo.ts:608", "pc": [ 2174, 2175 ] }, { "teal": 2427, "source": "contracts/validatorRegistry.algo.ts:608", "pc": [ 2176 ] }, { "teal": 2428, "source": "contracts/validatorRegistry.algo.ts:608", "pc": [ 2177 ] }, { "teal": 2429, "source": "contracts/validatorRegistry.algo.ts:608", "pc": [ 2178, 2179, 2180 ] }, { "teal": 2434, "source": "contracts/validatorRegistry.algo.ts:609", "pc": [ 2181, 2182 ] }, { "teal": 2435, "source": "contracts/validatorRegistry.algo.ts:609", "pc": [ 2183, 2184 ] }, { "teal": 2436, "source": "contracts/validatorRegistry.algo.ts:609", "pc": [ 2185 ] }, { "teal": 2437, "source": "contracts/validatorRegistry.algo.ts:609", "pc": [ 2186, 2187 ] }, { "teal": 2438, "source": "contracts/validatorRegistry.algo.ts:609", "pc": [ 2188 ] }, { "teal": 2439, "source": "contracts/validatorRegistry.algo.ts:609", "pc": [ 2189 ] }, { "teal": 2440, "source": "contracts/validatorRegistry.algo.ts:609", "pc": [ 2190, 2191 ] }, { "teal": 2441, "source": "contracts/validatorRegistry.algo.ts:609", "pc": [ 2192 ] }, { "teal": 2442, "source": "contracts/validatorRegistry.algo.ts:609", "pc": [ 2193, 2194, 2195 ] }, { "teal": 2447, "source": "contracts/validatorRegistry.algo.ts:615", "pc": [ 2196, 2197 ] }, { "teal": 2448, "source": "contracts/validatorRegistry.algo.ts:615", "pc": [ 2198, 2199 ] }, { "teal": 2452, "source": "contracts/validatorRegistry.algo.ts:616", "pc": [ 2200, 2201 ] }, { "teal": 2453, "source": "contracts/validatorRegistry.algo.ts:616", "pc": [ 2202 ] }, { "teal": 2454, "source": "contracts/validatorRegistry.algo.ts:616", "pc": [ 2203 ] }, { "teal": 2455, "source": "contracts/validatorRegistry.algo.ts:616", "pc": [ 2204, 2205 ] }, { "teal": 2456, "source": "contracts/validatorRegistry.algo.ts:616", "pc": [ 2206 ] }, { "teal": 2457, "source": "contracts/validatorRegistry.algo.ts:616", "pc": [ 2207 ] }, { "teal": 2458, "source": "contracts/validatorRegistry.algo.ts:616", "pc": [ 2208, 2209 ] }, { "teal": 2459, "source": "contracts/validatorRegistry.algo.ts:616", "pc": [ 2210 ] }, { "teal": 2460, "source": "contracts/validatorRegistry.algo.ts:616", "pc": [ 2211 ] }, { "teal": 2461, "source": "contracts/validatorRegistry.algo.ts:616", "pc": [ 2212, 2213 ] }, { "teal": 2466, "source": "contracts/validatorRegistry.algo.ts:617", "pc": [ 2214, 2215 ] }, { "teal": 2467, "source": "contracts/validatorRegistry.algo.ts:617", "pc": [ 2216 ] }, { "teal": 2468, "source": "contracts/validatorRegistry.algo.ts:617", "pc": [ 2217 ] }, { "teal": 2469, "source": "contracts/validatorRegistry.algo.ts:617", "pc": [ 2218, 2219, 2220 ] }, { "teal": 2475, "source": "contracts/validatorRegistry.algo.ts:619", "pc": [ 2221, 2222 ] }, { "teal": 2476, "source": "contracts/validatorRegistry.algo.ts:619", "pc": [ 2223, 2224, 2225, 2226, 2227, 2228, 2229, 2230, 2231, 2232, 2233, 2234 ] }, { "teal": 2477, "source": "contracts/validatorRegistry.algo.ts:619", "pc": [ 2235 ] }, { "teal": 2480, "source": "contracts/validatorRegistry.algo.ts:619", "errorMessage": "global state value does not exist: AppID.fromUint64(pool1AppID).globalState('lastPayout')", "pc": [ 2236 ] }, { "teal": 2481, "source": "contracts/validatorRegistry.algo.ts:619", "pc": [ 2237, 2238 ] }, { "teal": 2482, "source": "contracts/validatorRegistry.algo.ts:619", "pc": [ 2239 ] }, { "teal": 2483, "source": "contracts/validatorRegistry.algo.ts:619", "pc": [ 2240, 2241, 2242 ] }, { "teal": 2488, "source": "contracts/validatorRegistry.algo.ts:620", "pc": [ 2243, 2244 ] }, { "teal": 2489, "source": "contracts/validatorRegistry.algo.ts:620", "pc": [ 2245, 2246 ] }, { "teal": 2490, "source": "contracts/validatorRegistry.algo.ts:620", "pc": [ 2247 ] }, { "teal": 2491, "source": "contracts/validatorRegistry.algo.ts:620", "pc": [ 2248, 2249 ] }, { "teal": 2492, "source": "contracts/validatorRegistry.algo.ts:620", "pc": [ 2250 ] }, { "teal": 2493, "source": "contracts/validatorRegistry.algo.ts:620", "pc": [ 2251 ] }, { "teal": 2494, "source": "contracts/validatorRegistry.algo.ts:620", "pc": [ 2252, 2253 ] }, { "teal": 2495, "source": "contracts/validatorRegistry.algo.ts:620", "pc": [ 2254 ] }, { "teal": 2496, "source": "contracts/validatorRegistry.algo.ts:620", "pc": [ 2255, 2256, 2257 ] }, { "teal": 2501, "source": "contracts/validatorRegistry.algo.ts:622", "pc": [ 2258, 2259, 2260 ] }, { "teal": 2502, "source": "contracts/validatorRegistry.algo.ts:622", "pc": [ 2261, 2262 ] }, { "teal": 2503, "source": "contracts/validatorRegistry.algo.ts:622", "pc": [ 2263 ] }, { "teal": 2504, "source": "contracts/validatorRegistry.algo.ts:622", "pc": [ 2264, 2265 ] }, { "teal": 2505, "source": "contracts/validatorRegistry.algo.ts:622", "pc": [ 2266 ] }, { "teal": 2506, "source": "contracts/validatorRegistry.algo.ts:622", "pc": [ 2267 ] }, { "teal": 2507, "source": "contracts/validatorRegistry.algo.ts:622", "pc": [ 2268, 2269 ] }, { "teal": 2508, "source": "contracts/validatorRegistry.algo.ts:622", "pc": [ 2270 ] }, { "teal": 2509, "source": "contracts/validatorRegistry.algo.ts:622", "pc": [ 2271 ] }, { "teal": 2510, "source": "contracts/validatorRegistry.algo.ts:622", "pc": [ 2272, 2273 ] }, { "teal": 2514, "source": "contracts/validatorRegistry.algo.ts:623", "pc": [ 2274, 2275 ] }, { "teal": 2515, "source": "contracts/validatorRegistry.algo.ts:623", "pc": [ 2276, 2277 ] }, { "teal": 2516, "source": "contracts/validatorRegistry.algo.ts:623", "pc": [ 2278, 2279 ] }, { "teal": 2517, "source": "contracts/validatorRegistry.algo.ts:623", "pc": [ 2280 ] }, { "teal": 2518, "source": "contracts/validatorRegistry.algo.ts:623", "pc": [ 2281 ] }, { "teal": 2519, "source": "contracts/validatorRegistry.algo.ts:623", "pc": [ 2282, 2283 ] }, { "teal": 2524, "source": "contracts/validatorRegistry.algo.ts:625", "pc": [ 2284, 2285 ] }, { "teal": 2525, "source": "contracts/validatorRegistry.algo.ts:625", "pc": [ 2286, 2287 ] }, { "teal": 2526, "source": "contracts/validatorRegistry.algo.ts:625", "pc": [ 2288, 2289 ] }, { "teal": 2527, "source": "contracts/validatorRegistry.algo.ts:625", "pc": [ 2290 ] }, { "teal": 2528, "source": "contracts/validatorRegistry.algo.ts:625", "pc": [ 2291 ] }, { "teal": 2529, "source": "contracts/validatorRegistry.algo.ts:625", "pc": [ 2292, 2293 ] }, { "teal": 2530, "source": "contracts/validatorRegistry.algo.ts:625", "pc": [ 2294 ] }, { "teal": 2531, "source": "contracts/validatorRegistry.algo.ts:625", "pc": [ 2295, 2296, 2297 ] }, { "teal": 2536, "source": "contracts/validatorRegistry.algo.ts:626", "pc": [ 2298, 2299 ] }, { "teal": 2537, "source": "contracts/validatorRegistry.algo.ts:626", "pc": [ 2300, 2301 ] }, { "teal": 2538, "source": "contracts/validatorRegistry.algo.ts:626", "pc": [ 2302 ] }, { "teal": 2539, "source": "contracts/validatorRegistry.algo.ts:626", "pc": [ 2303, 2304 ] }, { "teal": 2540, "source": "contracts/validatorRegistry.algo.ts:626", "pc": [ 2305 ] }, { "teal": 2541, "source": "contracts/validatorRegistry.algo.ts:626", "pc": [ 2306 ] }, { "teal": 2542, "source": "contracts/validatorRegistry.algo.ts:626", "pc": [ 2307, 2308 ] }, { "teal": 2543, "source": "contracts/validatorRegistry.algo.ts:626", "pc": [ 2309 ] }, { "teal": 2544, "source": "contracts/validatorRegistry.algo.ts:626", "pc": [ 2310, 2311, 2312 ] }, { "teal": 2551, "source": "contracts/validatorRegistry.algo.ts:629", "pc": [ 2313, 2314 ] }, { "teal": 2552, "source": "contracts/validatorRegistry.algo.ts:629", "pc": [ 2315, 2316 ] }, { "teal": 2553, "source": "contracts/validatorRegistry.algo.ts:629", "pc": [ 2317 ] }, { "teal": 2554, "source": "contracts/validatorRegistry.algo.ts:629", "pc": [ 2318 ] }, { "teal": 2555, "source": "contracts/validatorRegistry.algo.ts:629", "pc": [ 2319, 2320 ] }, { "teal": 2556, "source": "contracts/validatorRegistry.algo.ts:629", "pc": [ 2321 ] }, { "teal": 2557, "source": "contracts/validatorRegistry.algo.ts:629", "pc": [ 2322 ] }, { "teal": 2558, "source": "contracts/validatorRegistry.algo.ts:629", "pc": [ 2323, 2324 ] }, { "teal": 2559, "source": "contracts/validatorRegistry.algo.ts:629", "pc": [ 2325 ] }, { "teal": 2563, "source": "contracts/validatorRegistry.algo.ts:631", "pc": [ 2326, 2327 ] }, { "teal": 2564, "source": "contracts/validatorRegistry.algo.ts:631", "pc": [ 2328, 2329 ] }, { "teal": 2565, "source": "contracts/validatorRegistry.algo.ts:631", "pc": [ 2330 ] }, { "teal": 2566, "source": "contracts/validatorRegistry.algo.ts:631", "pc": [ 2331, 2332 ] }, { "teal": 2567, "source": "contracts/validatorRegistry.algo.ts:631", "pc": [ 2333 ] }, { "teal": 2568, "source": "contracts/validatorRegistry.algo.ts:631", "pc": [ 2334 ] }, { "teal": 2569, "source": "contracts/validatorRegistry.algo.ts:631", "pc": [ 2335, 2336 ] }, { "teal": 2570, "source": "contracts/validatorRegistry.algo.ts:631", "pc": [ 2337 ] }, { "teal": 2571, "source": "contracts/validatorRegistry.algo.ts:631", "pc": [ 2338 ] }, { "teal": 2572, "source": "contracts/validatorRegistry.algo.ts:631", "pc": [ 2339, 2340 ] }, { "teal": 2576, "source": "contracts/validatorRegistry.algo.ts:632", "pc": [ 2341, 2342 ] }, { "teal": 2577, "source": "contracts/validatorRegistry.algo.ts:632", "pc": [ 2343 ] }, { "teal": 2578, "source": "contracts/validatorRegistry.algo.ts:632", "pc": [ 2344 ] }, { "teal": 2579, "source": "contracts/validatorRegistry.algo.ts:632", "pc": [ 2345, 2346 ] }, { "teal": 2580, "source": "contracts/validatorRegistry.algo.ts:632", "pc": [ 2347 ] }, { "teal": 2581, "source": "contracts/validatorRegistry.algo.ts:632", "pc": [ 2348 ] }, { "teal": 2582, "source": "contracts/validatorRegistry.algo.ts:632", "pc": [ 2349, 2350 ] }, { "teal": 2583, "source": "contracts/validatorRegistry.algo.ts:632", "pc": [ 2351 ] }, { "teal": 2584, "source": "contracts/validatorRegistry.algo.ts:632", "pc": [ 2352 ] }, { "teal": 2585, "source": "contracts/validatorRegistry.algo.ts:632", "pc": [ 2353, 2354 ] }, { "teal": 2589, "source": "contracts/validatorRegistry.algo.ts:633", "pc": [ 2355 ] }, { "teal": 2590, "source": "contracts/validatorRegistry.algo.ts:633", "pc": [ 2356, 2357 ] }, { "teal": 2595, "source": "contracts/validatorRegistry.algo.ts:633", "pc": [ 2358, 2359 ] }, { "teal": 2596, "source": "contracts/validatorRegistry.algo.ts:633", "pc": [ 2360, 2361 ] }, { "teal": 2597, "source": "contracts/validatorRegistry.algo.ts:633", "pc": [ 2362 ] }, { "teal": 2598, "source": "contracts/validatorRegistry.algo.ts:633", "pc": [ 2363, 2364, 2365 ] }, { "teal": 2605, "source": "contracts/validatorRegistry.algo.ts:639", "pc": [ 2366, 2367 ] }, { "teal": 2606, "source": "contracts/validatorRegistry.algo.ts:639", "pc": [ 2368, 2369 ] }, { "teal": 2607, "source": "contracts/validatorRegistry.algo.ts:639", "pc": [ 2370, 2371 ] }, { "teal": 2608, "source": "contracts/validatorRegistry.algo.ts:639", "pc": [ 2372 ] }, { "teal": 2609, "source": "contracts/validatorRegistry.algo.ts:639", "pc": [ 2373 ] }, { "teal": 2610, "source": "contracts/validatorRegistry.algo.ts:639", "pc": [ 2374, 2375 ] }, { "teal": 2611, "source": "contracts/validatorRegistry.algo.ts:639", "pc": [ 2376 ] }, { "teal": 2612, "source": "contracts/validatorRegistry.algo.ts:639", "pc": [ 2377 ] }, { "teal": 2613, "source": "contracts/validatorRegistry.algo.ts:639", "pc": [ 2378 ] }, { "teal": 2614, "source": "contracts/validatorRegistry.algo.ts:639", "pc": [ 2379, 2380 ] }, { "teal": 2615, "source": "contracts/validatorRegistry.algo.ts:639", "pc": [ 2381 ] }, { "teal": 2616, "source": "contracts/validatorRegistry.algo.ts:639", "pc": [ 2382 ] }, { "teal": 2617, "source": "contracts/validatorRegistry.algo.ts:639", "pc": [ 2383, 2384 ] }, { "teal": 2618, "source": "contracts/validatorRegistry.algo.ts:639", "pc": [ 2385 ] }, { "teal": 2619, "source": "contracts/validatorRegistry.algo.ts:639", "pc": [ 2386 ] }, { "teal": 2620, "source": "contracts/validatorRegistry.algo.ts:639", "pc": [ 2387, 2388, 2389, 2390 ] }, { "teal": 2621, "source": "contracts/validatorRegistry.algo.ts:638", "pc": [ 2391 ] }, { "teal": 2622, "source": "contracts/validatorRegistry.algo.ts:638", "pc": [ 2392 ] }, { "teal": 2623, "source": "contracts/validatorRegistry.algo.ts:640", "pc": [ 2393, 2394 ] }, { "teal": 2624, "source": "contracts/validatorRegistry.algo.ts:638", "pc": [ 2395 ] }, { "teal": 2625, "source": "contracts/validatorRegistry.algo.ts:638", "pc": [ 2396 ] }, { "teal": 2626, "source": "contracts/validatorRegistry.algo.ts:638", "pc": [ 2397 ] }, { "teal": 2627, "source": "contracts/validatorRegistry.algo.ts:638", "pc": [ 2398 ] }, { "teal": 2628, "source": "contracts/validatorRegistry.algo.ts:638", "pc": [ 2399 ] }, { "teal": 2631, "source": "contracts/validatorRegistry.algo.ts:638", "errorMessage": "wideRatio failed", "pc": [ 2400 ] }, { "teal": 2632, "source": "contracts/validatorRegistry.algo.ts:638", "pc": [ 2401, 2402 ] }, { "teal": 2636, "source": "contracts/validatorRegistry.algo.ts:642", "pc": [ 2403, 2404 ] }, { "teal": 2637, "source": "contracts/validatorRegistry.algo.ts:642", "pc": [ 2405, 2406 ] }, { "teal": 2638, "source": "contracts/validatorRegistry.algo.ts:642", "pc": [ 2407 ] }, { "teal": 2639, "source": "contracts/validatorRegistry.algo.ts:642", "pc": [ 2408 ] }, { "teal": 2640, "source": "contracts/validatorRegistry.algo.ts:642", "pc": [ 2409 ] }, { "teal": 2641, "source": "contracts/validatorRegistry.algo.ts:642", "pc": [ 2410, 2411 ] }, { "teal": 2642, "source": "contracts/validatorRegistry.algo.ts:642", "pc": [ 2412 ] }, { "teal": 2643, "source": "contracts/validatorRegistry.algo.ts:642", "pc": [ 2413 ] }, { "teal": 2644, "source": "contracts/validatorRegistry.algo.ts:642", "pc": [ 2414, 2415 ] }, { "teal": 2645, "source": "contracts/validatorRegistry.algo.ts:642", "pc": [ 2416 ] }, { "teal": 2646, "source": "contracts/validatorRegistry.algo.ts:642", "pc": [ 2417 ] }, { "teal": 2647, "source": "contracts/validatorRegistry.algo.ts:642", "pc": [ 2418, 2419 ] }, { "teal": 2648, "source": "contracts/validatorRegistry.algo.ts:642", "pc": [ 2420 ] }, { "teal": 2653, "source": "contracts/validatorRegistry.algo.ts:633", "pc": [ 2421, 2422 ] }, { "teal": 2654, "source": "contracts/validatorRegistry.algo.ts:633", "pc": [ 2423 ] }, { "teal": 2655, "source": "contracts/validatorRegistry.algo.ts:633", "pc": [ 2424 ] }, { "teal": 2656, "source": "contracts/validatorRegistry.algo.ts:633", "pc": [ 2425, 2426 ] }, { "teal": 2657, "source": "contracts/validatorRegistry.algo.ts:633", "pc": [ 2427, 2428, 2429 ] }, { "teal": 2662, "source": "contracts/validatorRegistry.algo.ts:644", "pc": [ 2430, 2431 ] }, { "teal": 2663, "source": "contracts/validatorRegistry.algo.ts:644", "pc": [ 2432, 2433 ] }, { "teal": 2664, "source": "contracts/validatorRegistry.algo.ts:644", "pc": [ 2434 ] }, { "teal": 2665, "source": "contracts/validatorRegistry.algo.ts:644", "pc": [ 2435, 2436 ] }, { "teal": 2666, "source": "contracts/validatorRegistry.algo.ts:644", "pc": [ 2437 ] }, { "teal": 2667, "source": "contracts/validatorRegistry.algo.ts:644", "pc": [ 2438 ] }, { "teal": 2668, "source": "contracts/validatorRegistry.algo.ts:644", "pc": [ 2439, 2440 ] }, { "teal": 2669, "source": "contracts/validatorRegistry.algo.ts:644", "pc": [ 2441 ] }, { "teal": 2673, "source": "contracts/validatorRegistry.algo.ts:603", "pc": [ 2442, 2443 ] }, { "teal": 2676, "source": "contracts/validatorRegistry.algo.ts:603", "pc": [ 2444, 2445 ] }, { "teal": 2677, "source": "contracts/validatorRegistry.algo.ts:603", "pc": [ 2446 ] }, { "teal": 2682, "source": "contracts/validatorRegistry.algo.ts:663", "pc": [ 2447, 2448, 2449 ] }, { "teal": 2683, "source": "contracts/validatorRegistry.algo.ts:663", "pc": [ 2450 ] }, { "teal": 2686, "source": "contracts/validatorRegistry.algo.ts:662", "pc": [ 2451, 2452, 2453 ] }, { "teal": 2687, "source": "contracts/validatorRegistry.algo.ts:662", "pc": [ 2454 ] }, { "teal": 2690, "source": "contracts/validatorRegistry.algo.ts:661", "pc": [ 2455, 2456, 2457 ] }, { "teal": 2691, "source": "contracts/validatorRegistry.algo.ts:661", "pc": [ 2458 ] }, { "teal": 2694, "source": "contracts/validatorRegistry.algo.ts:660", "pc": [ 2459, 2460, 2461 ] }, { "teal": 2695, "source": "contracts/validatorRegistry.algo.ts:660", "pc": [ 2462 ] }, { "teal": 2698, "source": "contracts/validatorRegistry.algo.ts:659", "pc": [ 2463, 2464, 2465 ] }, { "teal": 2699, "source": "contracts/validatorRegistry.algo.ts:659", "pc": [ 2466 ] }, { "teal": 2700, "source": "contracts/validatorRegistry.algo.ts:659", "pc": [ 2467 ] }, { "teal": 2701, "source": "contracts/validatorRegistry.algo.ts:659", "pc": [ 2468 ] }, { "teal": 2702, "source": "contracts/validatorRegistry.algo.ts:659", "pc": [ 2469 ] }, { "teal": 2705, "source": "contracts/validatorRegistry.algo.ts:659", "errorMessage": "argument 4 (poolKey) for stakeUpdatedViaRewards must be a (uint64,uint64,uint64)", "pc": [ 2470 ] }, { "teal": 2708, "source": "contracts/validatorRegistry.algo.ts:658", "pc": [ 2471, 2472, 2473 ] }, { "teal": 2709, "source": "contracts/validatorRegistry.algo.ts:658", "pc": [ 2474 ] }, { "teal": 2710, "source": "contracts/validatorRegistry.algo.ts:658", "pc": [ 2475 ] }, { "teal": 2724, "source": "contracts/validatorRegistry.algo.ts:658", "pc": [ 2476, 2477, 2478 ] }, { "teal": 2728, "source": "contracts/validatorRegistry.algo.ts:665", "pc": [ 2479, 2480 ] }, { "teal": 2729, "source": "contracts/validatorRegistry.algo.ts:665", "pc": [ 2481, 2482, 2483 ] }, { "teal": 2733, "source": "contracts/validatorRegistry.algo.ts:668", "pc": [ 2484, 2485 ] }, { "teal": 2734, "source": "contracts/validatorRegistry.algo.ts:668", "pc": [ 2486, 2487 ] }, { "teal": 2735, "source": "contracts/validatorRegistry.algo.ts:668", "pc": [ 2488, 2489, 2490 ] }, { "teal": 2736, "source": "contracts/validatorRegistry.algo.ts:668", "pc": [ 2491 ] }, { "teal": 2737, "source": "contracts/validatorRegistry.algo.ts:668", "pc": [ 2492 ] }, { "teal": 2738, "source": "contracts/validatorRegistry.algo.ts:668", "pc": [ 2493 ] }, { "teal": 2739, "source": "contracts/validatorRegistry.algo.ts:668", "pc": [ 2494, 2495 ] }, { "teal": 2740, "source": "contracts/validatorRegistry.algo.ts:668", "pc": [ 2496 ] }, { "teal": 2741, "source": "contracts/validatorRegistry.algo.ts:668", "pc": [ 2497 ] }, { "teal": 2742, "source": "contracts/validatorRegistry.algo.ts:668", "pc": [ 2498, 2499 ] }, { "teal": 2743, "source": "contracts/validatorRegistry.algo.ts:668", "pc": [ 2500 ] }, { "teal": 2744, "source": "contracts/validatorRegistry.algo.ts:668", "pc": [ 2501, 2502 ] }, { "teal": 2745, "source": "contracts/validatorRegistry.algo.ts:668", "pc": [ 2503, 2504 ] }, { "teal": 2746, "source": "contracts/validatorRegistry.algo.ts:668", "pc": [ 2505, 2506, 2507 ] }, { "teal": 2747, "source": "contracts/validatorRegistry.algo.ts:668", "pc": [ 2508 ] }, { "teal": 2748, "source": "contracts/validatorRegistry.algo.ts:668", "pc": [ 2509 ] }, { "teal": 2749, "source": "contracts/validatorRegistry.algo.ts:668", "pc": [ 2510 ] }, { "teal": 2750, "source": "contracts/validatorRegistry.algo.ts:668", "pc": [ 2511, 2512 ] }, { "teal": 2751, "source": "contracts/validatorRegistry.algo.ts:668", "pc": [ 2513 ] }, { "teal": 2752, "source": "contracts/validatorRegistry.algo.ts:668", "pc": [ 2514 ] }, { "teal": 2753, "source": "contracts/validatorRegistry.algo.ts:668", "pc": [ 2515, 2516 ] }, { "teal": 2754, "source": "contracts/validatorRegistry.algo.ts:668", "pc": [ 2517 ] }, { "teal": 2755, "source": "contracts/validatorRegistry.algo.ts:668", "pc": [ 2518 ] }, { "teal": 2756, "source": "contracts/validatorRegistry.algo.ts:668", "pc": [ 2519 ] }, { "teal": 2757, "source": "contracts/validatorRegistry.algo.ts:668", "pc": [ 2520, 2521 ] }, { "teal": 2758, "source": "contracts/validatorRegistry.algo.ts:668", "pc": [ 2522, 2523, 2524 ] }, { "teal": 2759, "source": "contracts/validatorRegistry.algo.ts:668", "pc": [ 2525 ] }, { "teal": 2760, "source": "contracts/validatorRegistry.algo.ts:668", "pc": [ 2526 ] }, { "teal": 2761, "source": "contracts/validatorRegistry.algo.ts:668", "pc": [ 2527 ] }, { "teal": 2762, "source": "contracts/validatorRegistry.algo.ts:668", "pc": [ 2528, 2529 ] }, { "teal": 2763, "source": "contracts/validatorRegistry.algo.ts:668", "pc": [ 2530 ] }, { "teal": 2764, "source": "contracts/validatorRegistry.algo.ts:668", "pc": [ 2531 ] }, { "teal": 2765, "source": "contracts/validatorRegistry.algo.ts:668", "pc": [ 2532, 2533 ] }, { "teal": 2766, "source": "contracts/validatorRegistry.algo.ts:668", "pc": [ 2534 ] }, { "teal": 2767, "source": "contracts/validatorRegistry.algo.ts:668", "pc": [ 2535 ] }, { "teal": 2768, "source": "contracts/validatorRegistry.algo.ts:668", "pc": [ 2536 ] }, { "teal": 2769, "source": "contracts/validatorRegistry.algo.ts:668", "pc": [ 2537, 2538 ] }, { "teal": 2770, "source": "contracts/validatorRegistry.algo.ts:668", "pc": [ 2539, 2540, 2541 ] }, { "teal": 2771, "source": "contracts/validatorRegistry.algo.ts:668", "pc": [ 2542 ] }, { "teal": 2772, "source": "contracts/validatorRegistry.algo.ts:668", "pc": [ 2543 ] }, { "teal": 2773, "source": "contracts/validatorRegistry.algo.ts:668", "pc": [ 2544 ] }, { "teal": 2774, "source": "contracts/validatorRegistry.algo.ts:668", "pc": [ 2545, 2546 ] }, { "teal": 2775, "source": "contracts/validatorRegistry.algo.ts:668", "pc": [ 2547 ] }, { "teal": 2779, "source": "contracts/validatorRegistry.algo.ts:669", "pc": [ 2548, 2549 ] }, { "teal": 2780, "source": "contracts/validatorRegistry.algo.ts:669", "pc": [ 2550 ] }, { "teal": 2781, "source": "contracts/validatorRegistry.algo.ts:669", "pc": [ 2551 ] }, { "teal": 2782, "source": "contracts/validatorRegistry.algo.ts:669", "pc": [ 2552 ] }, { "teal": 2783, "source": "contracts/validatorRegistry.algo.ts:669", "pc": [ 2553, 2554 ] }, { "teal": 2784, "source": "contracts/validatorRegistry.algo.ts:669", "pc": [ 2555, 2556, 2557 ] }, { "teal": 2785, "source": "contracts/validatorRegistry.algo.ts:669", "pc": [ 2558 ] }, { "teal": 2786, "source": "contracts/validatorRegistry.algo.ts:669", "pc": [ 2559 ] }, { "teal": 2787, "source": "contracts/validatorRegistry.algo.ts:669", "pc": [ 2560 ] }, { "teal": 2788, "source": "contracts/validatorRegistry.algo.ts:669", "pc": [ 2561, 2562 ] }, { "teal": 2789, "source": "contracts/validatorRegistry.algo.ts:669", "pc": [ 2563 ] }, { "teal": 2790, "source": "contracts/validatorRegistry.algo.ts:669", "pc": [ 2564 ] }, { "teal": 2791, "source": "contracts/validatorRegistry.algo.ts:669", "pc": [ 2565, 2566 ] }, { "teal": 2792, "source": "contracts/validatorRegistry.algo.ts:669", "pc": [ 2567 ] }, { "teal": 2793, "source": "contracts/validatorRegistry.algo.ts:669", "pc": [ 2568 ] }, { "teal": 2794, "source": "contracts/validatorRegistry.algo.ts:669", "pc": [ 2569 ] }, { "teal": 2795, "source": "contracts/validatorRegistry.algo.ts:669", "pc": [ 2570, 2571 ] }, { "teal": 2796, "source": "contracts/validatorRegistry.algo.ts:669", "pc": [ 2572, 2573, 2574 ] }, { "teal": 2797, "source": "contracts/validatorRegistry.algo.ts:669", "pc": [ 2575 ] }, { "teal": 2798, "source": "contracts/validatorRegistry.algo.ts:669", "pc": [ 2576 ] }, { "teal": 2799, "source": "contracts/validatorRegistry.algo.ts:669", "pc": [ 2577 ] }, { "teal": 2800, "source": "contracts/validatorRegistry.algo.ts:669", "pc": [ 2578, 2579 ] }, { "teal": 2801, "source": "contracts/validatorRegistry.algo.ts:669", "pc": [ 2580 ] }, { "teal": 2805, "source": "contracts/validatorRegistry.algo.ts:670", "pc": [ 2581, 2582 ] }, { "teal": 2806, "source": "contracts/validatorRegistry.algo.ts:670", "pc": [ 2583 ] }, { "teal": 2807, "source": "contracts/validatorRegistry.algo.ts:670", "pc": [ 2584 ] }, { "teal": 2808, "source": "contracts/validatorRegistry.algo.ts:670", "pc": [ 2585 ] }, { "teal": 2809, "source": "contracts/validatorRegistry.algo.ts:670", "pc": [ 2586, 2587 ] }, { "teal": 2810, "source": "contracts/validatorRegistry.algo.ts:670", "pc": [ 2588, 2589, 2590 ] }, { "teal": 2811, "source": "contracts/validatorRegistry.algo.ts:670", "pc": [ 2591 ] }, { "teal": 2812, "source": "contracts/validatorRegistry.algo.ts:670", "pc": [ 2592 ] }, { "teal": 2813, "source": "contracts/validatorRegistry.algo.ts:670", "pc": [ 2593 ] }, { "teal": 2814, "source": "contracts/validatorRegistry.algo.ts:670", "pc": [ 2594, 2595 ] }, { "teal": 2815, "source": "contracts/validatorRegistry.algo.ts:670", "pc": [ 2596 ] }, { "teal": 2816, "source": "contracts/validatorRegistry.algo.ts:670", "pc": [ 2597 ] }, { "teal": 2817, "source": "contracts/validatorRegistry.algo.ts:670", "pc": [ 2598, 2599 ] }, { "teal": 2818, "source": "contracts/validatorRegistry.algo.ts:670", "pc": [ 2600 ] }, { "teal": 2819, "source": "contracts/validatorRegistry.algo.ts:670", "pc": [ 2601 ] }, { "teal": 2820, "source": "contracts/validatorRegistry.algo.ts:670", "pc": [ 2602 ] }, { "teal": 2821, "source": "contracts/validatorRegistry.algo.ts:670", "pc": [ 2603, 2604 ] }, { "teal": 2822, "source": "contracts/validatorRegistry.algo.ts:670", "pc": [ 2605, 2606, 2607 ] }, { "teal": 2823, "source": "contracts/validatorRegistry.algo.ts:670", "pc": [ 2608 ] }, { "teal": 2824, "source": "contracts/validatorRegistry.algo.ts:670", "pc": [ 2609 ] }, { "teal": 2825, "source": "contracts/validatorRegistry.algo.ts:670", "pc": [ 2610 ] }, { "teal": 2826, "source": "contracts/validatorRegistry.algo.ts:670", "pc": [ 2611, 2612 ] }, { "teal": 2827, "source": "contracts/validatorRegistry.algo.ts:670", "pc": [ 2613 ] }, { "teal": 2831, "source": "contracts/validatorRegistry.algo.ts:672", "pc": [ 2614, 2615 ] }, { "teal": 2832, "source": "contracts/validatorRegistry.algo.ts:672", "pc": [ 2616 ] }, { "teal": 2833, "source": "contracts/validatorRegistry.algo.ts:672", "pc": [ 2617, 2618 ] }, { "teal": 2834, "source": "contracts/validatorRegistry.algo.ts:672", "pc": [ 2619 ] }, { "teal": 2835, "source": "contracts/validatorRegistry.algo.ts:672", "pc": [ 2620, 2621 ] }, { "teal": 2836, "source": "contracts/validatorRegistry.algo.ts:672", "pc": [ 2622 ] }, { "teal": 2837, "source": "contracts/validatorRegistry.algo.ts:672", "pc": [ 2623 ] }, { "teal": 2841, "source": "contracts/validatorRegistry.algo.ts:675", "pc": [ 2624, 2625 ] }, { "teal": 2842, "source": "contracts/validatorRegistry.algo.ts:675", "pc": [ 2626, 2627, 2628 ] }, { "teal": 2843, "source": "contracts/validatorRegistry.algo.ts:675", "pc": [ 2629 ] }, { "teal": 2844, "source": "contracts/validatorRegistry.algo.ts:675", "pc": [ 2630, 2631, 2632 ] }, { "teal": 2856, "source": "contracts/validatorRegistry.algo.ts:677", "pc": [ 2633, 2634, 2635, 2636, 2637, 2638 ] }, { "teal": 2857, "source": "contracts/validatorRegistry.algo.ts:678", "pc": [ 2639, 2640 ] }, { "teal": 2858, "source": "contracts/validatorRegistry.algo.ts:678", "pc": [ 2641, 2642, 2643 ] }, { "teal": 2859, "source": "contracts/validatorRegistry.algo.ts:678", "pc": [ 2644 ] }, { "teal": 2860, "source": "contracts/validatorRegistry.algo.ts:678", "pc": [ 2645 ] }, { "teal": 2861, "source": "contracts/validatorRegistry.algo.ts:679", "pc": [ 2646, 2647 ] }, { "teal": 2862, "source": "contracts/validatorRegistry.algo.ts:679", "pc": [ 2648, 2649, 2650 ] }, { "teal": 2863, "source": "contracts/validatorRegistry.algo.ts:679", "pc": [ 2651 ] }, { "teal": 2864, "source": "contracts/validatorRegistry.algo.ts:679", "pc": [ 2652 ] }, { "teal": 2865, "source": "contracts/validatorRegistry.algo.ts:679", "pc": [ 2653 ] }, { "teal": 2866, "source": "contracts/validatorRegistry.algo.ts:679", "pc": [ 2654 ] }, { "teal": 2867, "source": "contracts/validatorRegistry.algo.ts:679", "pc": [ 2655, 2656 ] }, { "teal": 2868, "source": "contracts/validatorRegistry.algo.ts:679", "pc": [ 2657 ] }, { "teal": 2871, "source": "contracts/validatorRegistry.algo.ts:679", "errorMessage": "poolKey.poolId as uint16 overflowed 16 bits", "pc": [ 2658 ] }, { "teal": 2872, "source": "contracts/validatorRegistry.algo.ts:679", "pc": [ 2659, 2660, 2661 ] }, { "teal": 2873, "source": "contracts/validatorRegistry.algo.ts:679", "pc": [ 2662 ] }, { "teal": 2874, "source": "contracts/validatorRegistry.algo.ts:680", "pc": [ 2663, 2664 ] }, { "teal": 2875, "source": "contracts/validatorRegistry.algo.ts:680", "pc": [ 2665, 2666, 2667 ] }, { "teal": 2876, "source": "contracts/validatorRegistry.algo.ts:680", "pc": [ 2668 ] }, { "teal": 2877, "source": "contracts/validatorRegistry.algo.ts:680", "pc": [ 2669 ] }, { "teal": 2878, "source": "contracts/validatorRegistry.algo.ts:680", "pc": [ 2670 ] }, { "teal": 2879, "source": "contracts/validatorRegistry.algo.ts:684", "pc": [ 2671, 2672 ] }, { "teal": 2880, "source": "contracts/validatorRegistry.algo.ts:684", "pc": [ 2673 ] }, { "teal": 2881, "source": "contracts/validatorRegistry.algo.ts:684", "pc": [ 2674 ] }, { "teal": 2882, "source": "contracts/validatorRegistry.algo.ts:683", "pc": [ 2675, 2676 ] }, { "teal": 2883, "source": "contracts/validatorRegistry.algo.ts:683", "pc": [ 2677 ] }, { "teal": 2884, "source": "contracts/validatorRegistry.algo.ts:683", "pc": [ 2678 ] }, { "teal": 2885, "source": "contracts/validatorRegistry.algo.ts:681", "pc": [ 2679, 2680 ] }, { "teal": 2886, "source": "contracts/validatorRegistry.algo.ts:681", "pc": [ 2681 ] }, { "teal": 2887, "source": "contracts/validatorRegistry.algo.ts:681", "pc": [ 2682 ] }, { "teal": 2888, "source": "contracts/validatorRegistry.algo.ts:682", "pc": [ 2683, 2684 ] }, { "teal": 2889, "source": "contracts/validatorRegistry.algo.ts:682", "pc": [ 2685 ] }, { "teal": 2890, "source": "contracts/validatorRegistry.algo.ts:682", "pc": [ 2686 ] }, { "teal": 2891, "source": "contracts/validatorRegistry.algo.ts:677", "pc": [ 2687 ] }, { "teal": 2892, "source": "contracts/validatorRegistry.algo.ts:677", "pc": [ 2688 ] }, { "teal": 2893, "source": "contracts/validatorRegistry.algo.ts:658", "pc": [ 2689 ] }, { "teal": 2898, "source": "contracts/validatorRegistry.algo.ts:705", "pc": [ 2690, 2691, 2692 ] }, { "teal": 2899, "source": "contracts/validatorRegistry.algo.ts:705", "pc": [ 2693 ] }, { "teal": 2900, "source": "contracts/validatorRegistry.algo.ts:705", "pc": [ 2694 ] }, { "teal": 2901, "source": "contracts/validatorRegistry.algo.ts:705", "pc": [ 2695 ] }, { "teal": 2902, "source": "contracts/validatorRegistry.algo.ts:705", "pc": [ 2696 ] }, { "teal": 2905, "source": "contracts/validatorRegistry.algo.ts:705", "errorMessage": "argument 0 (stakerRemoved) for stakeRemoved must be a bool", "pc": [ 2697 ] }, { "teal": 2906, "source": "contracts/validatorRegistry.algo.ts:705", "pc": [ 2698 ] }, { "teal": 2907, "source": "contracts/validatorRegistry.algo.ts:705", "pc": [ 2699 ] }, { "teal": 2910, "source": "contracts/validatorRegistry.algo.ts:704", "pc": [ 2700, 2701, 2702 ] }, { "teal": 2911, "source": "contracts/validatorRegistry.algo.ts:704", "pc": [ 2703 ] }, { "teal": 2914, "source": "contracts/validatorRegistry.algo.ts:703", "pc": [ 2704, 2705, 2706 ] }, { "teal": 2915, "source": "contracts/validatorRegistry.algo.ts:703", "pc": [ 2707 ] }, { "teal": 2918, "source": "contracts/validatorRegistry.algo.ts:702", "pc": [ 2708, 2709, 2710 ] }, { "teal": 2919, "source": "contracts/validatorRegistry.algo.ts:702", "pc": [ 2711 ] }, { "teal": 2920, "source": "contracts/validatorRegistry.algo.ts:702", "pc": [ 2712 ] }, { "teal": 2921, "source": "contracts/validatorRegistry.algo.ts:702", "pc": [ 2713, 2714 ] }, { "teal": 2922, "source": "contracts/validatorRegistry.algo.ts:702", "pc": [ 2715 ] }, { "teal": 2925, "source": "contracts/validatorRegistry.algo.ts:702", "errorMessage": "argument 3 (staker) for stakeRemoved must be a address", "pc": [ 2716 ] }, { "teal": 2928, "source": "contracts/validatorRegistry.algo.ts:701", "pc": [ 2717, 2718, 2719 ] }, { "teal": 2929, "source": "contracts/validatorRegistry.algo.ts:701", "pc": [ 2720 ] }, { "teal": 2930, "source": "contracts/validatorRegistry.algo.ts:701", "pc": [ 2721 ] }, { "teal": 2931, "source": "contracts/validatorRegistry.algo.ts:701", "pc": [ 2722 ] }, { "teal": 2932, "source": "contracts/validatorRegistry.algo.ts:701", "pc": [ 2723 ] }, { "teal": 2935, "source": "contracts/validatorRegistry.algo.ts:701", "errorMessage": "argument 4 (poolKey) for stakeRemoved must be a (uint64,uint64,uint64)", "pc": [ 2724 ] }, { "teal": 2938, "source": "contracts/validatorRegistry.algo.ts:700", "pc": [ 2725, 2726, 2727 ] }, { "teal": 2939, "source": "contracts/validatorRegistry.algo.ts:700", "pc": [ 2728 ] }, { "teal": 2940, "source": "contracts/validatorRegistry.algo.ts:700", "pc": [ 2729 ] }, { "teal": 2955, "source": "contracts/validatorRegistry.algo.ts:700", "pc": [ 2730, 2731, 2732 ] }, { "teal": 2958, "source": "contracts/validatorRegistry.algo.ts:700", "pc": [ 2733 ] }, { "teal": 2959, "source": "contracts/validatorRegistry.algo.ts:700", "pc": [ 2734, 2735 ] }, { "teal": 2964, "source": "contracts/validatorRegistry.algo.ts:707", "pc": [ 2736, 2737 ] }, { "teal": 2965, "source": "contracts/validatorRegistry.algo.ts:707", "pc": [ 2738, 2739 ] }, { "teal": 2966, "source": "contracts/validatorRegistry.algo.ts:707", "pc": [ 2740 ] }, { "teal": 2967, "source": "contracts/validatorRegistry.algo.ts:707", "pc": [ 2741, 2742, 2743 ] }, { "teal": 2972, "source": "contracts/validatorRegistry.algo.ts:708", "pc": [ 2744 ] }, { "teal": 2973, "source": "contracts/validatorRegistry.algo.ts:708", "pc": [ 2745, 2746 ] }, { "teal": 2974, "source": "contracts/validatorRegistry.algo.ts:708", "pc": [ 2747, 2748 ] }, { "teal": 2975, "source": "contracts/validatorRegistry.algo.ts:708", "pc": [ 2749 ] }, { "teal": 2976, "source": "contracts/validatorRegistry.algo.ts:708", "pc": [ 2750, 2751 ] }, { "teal": 2977, "source": "contracts/validatorRegistry.algo.ts:708", "pc": [ 2752, 2753 ] }, { "teal": 2978, "source": "contracts/validatorRegistry.algo.ts:708", "pc": [ 2754 ] }, { "teal": 2979, "source": "contracts/validatorRegistry.algo.ts:708", "pc": [ 2755, 2756 ] }, { "teal": 2980, "source": "contracts/validatorRegistry.algo.ts:708", "pc": [ 2757, 2758 ] }, { "teal": 2981, "source": "contracts/validatorRegistry.algo.ts:708", "pc": [ 2759, 2760 ] }, { "teal": 2982, "source": "contracts/validatorRegistry.algo.ts:708", "pc": [ 2761, 2762 ] }, { "teal": 2983, "source": "contracts/validatorRegistry.algo.ts:708", "pc": [ 2763 ] }, { "teal": 2988, "source": "contracts/validatorRegistry.algo.ts:710", "pc": [ 2764, 2765 ] }, { "teal": 2989, "source": "contracts/validatorRegistry.algo.ts:710", "pc": [ 2766, 2767, 2768 ] }, { "teal": 2993, "source": "contracts/validatorRegistry.algo.ts:714", "pc": [ 2769, 2770 ] }, { "teal": 2994, "source": "contracts/validatorRegistry.algo.ts:714", "pc": [ 2771 ] }, { "teal": 2995, "source": "contracts/validatorRegistry.algo.ts:714", "pc": [ 2772 ] }, { "teal": 2996, "source": "contracts/validatorRegistry.algo.ts:714", "pc": [ 2773 ] }, { "teal": 2997, "source": "contracts/validatorRegistry.algo.ts:714", "pc": [ 2774, 2775, 2776 ] }, { "teal": 2998, "source": "contracts/validatorRegistry.algo.ts:714", "pc": [ 2777, 2778 ] }, { "teal": 2999, "source": "contracts/validatorRegistry.algo.ts:714", "pc": [ 2779 ] }, { "teal": 3000, "source": "contracts/validatorRegistry.algo.ts:714", "pc": [ 2780 ] }, { "teal": 3001, "source": "contracts/validatorRegistry.algo.ts:714", "pc": [ 2781 ] }, { "teal": 3005, "source": "contracts/validatorRegistry.algo.ts:714", "errorMessage": "should only be called if algo or reward was removed", "pc": [ 2782 ] }, { "teal": 3009, "source": "contracts/validatorRegistry.algo.ts:717", "pc": [ 2783, 2784 ] }, { "teal": 3010, "source": "contracts/validatorRegistry.algo.ts:717", "pc": [ 2785, 2786 ] }, { "teal": 3011, "source": "contracts/validatorRegistry.algo.ts:717", "pc": [ 2787, 2788, 2789 ] }, { "teal": 3012, "source": "contracts/validatorRegistry.algo.ts:717", "pc": [ 2790 ] }, { "teal": 3013, "source": "contracts/validatorRegistry.algo.ts:717", "pc": [ 2791 ] }, { "teal": 3014, "source": "contracts/validatorRegistry.algo.ts:717", "pc": [ 2792 ] }, { "teal": 3015, "source": "contracts/validatorRegistry.algo.ts:717", "pc": [ 2793, 2794 ] }, { "teal": 3016, "source": "contracts/validatorRegistry.algo.ts:717", "pc": [ 2795 ] }, { "teal": 3017, "source": "contracts/validatorRegistry.algo.ts:717", "pc": [ 2796 ] }, { "teal": 3018, "source": "contracts/validatorRegistry.algo.ts:717", "pc": [ 2797, 2798 ] }, { "teal": 3019, "source": "contracts/validatorRegistry.algo.ts:717", "pc": [ 2799 ] }, { "teal": 3020, "source": "contracts/validatorRegistry.algo.ts:717", "pc": [ 2800, 2801 ] }, { "teal": 3021, "source": "contracts/validatorRegistry.algo.ts:717", "pc": [ 2802, 2803 ] }, { "teal": 3022, "source": "contracts/validatorRegistry.algo.ts:717", "pc": [ 2804, 2805, 2806 ] }, { "teal": 3023, "source": "contracts/validatorRegistry.algo.ts:717", "pc": [ 2807 ] }, { "teal": 3024, "source": "contracts/validatorRegistry.algo.ts:717", "pc": [ 2808 ] }, { "teal": 3025, "source": "contracts/validatorRegistry.algo.ts:717", "pc": [ 2809 ] }, { "teal": 3026, "source": "contracts/validatorRegistry.algo.ts:717", "pc": [ 2810, 2811 ] }, { "teal": 3027, "source": "contracts/validatorRegistry.algo.ts:717", "pc": [ 2812 ] }, { "teal": 3028, "source": "contracts/validatorRegistry.algo.ts:717", "pc": [ 2813 ] }, { "teal": 3029, "source": "contracts/validatorRegistry.algo.ts:717", "pc": [ 2814, 2815 ] }, { "teal": 3030, "source": "contracts/validatorRegistry.algo.ts:717", "pc": [ 2816 ] }, { "teal": 3031, "source": "contracts/validatorRegistry.algo.ts:717", "pc": [ 2817 ] }, { "teal": 3032, "source": "contracts/validatorRegistry.algo.ts:717", "pc": [ 2818 ] }, { "teal": 3033, "source": "contracts/validatorRegistry.algo.ts:717", "pc": [ 2819, 2820 ] }, { "teal": 3034, "source": "contracts/validatorRegistry.algo.ts:717", "pc": [ 2821, 2822, 2823 ] }, { "teal": 3035, "source": "contracts/validatorRegistry.algo.ts:717", "pc": [ 2824 ] }, { "teal": 3036, "source": "contracts/validatorRegistry.algo.ts:717", "pc": [ 2825 ] }, { "teal": 3037, "source": "contracts/validatorRegistry.algo.ts:717", "pc": [ 2826 ] }, { "teal": 3038, "source": "contracts/validatorRegistry.algo.ts:717", "pc": [ 2827, 2828 ] }, { "teal": 3039, "source": "contracts/validatorRegistry.algo.ts:717", "pc": [ 2829 ] }, { "teal": 3040, "source": "contracts/validatorRegistry.algo.ts:717", "pc": [ 2830 ] }, { "teal": 3041, "source": "contracts/validatorRegistry.algo.ts:717", "pc": [ 2831, 2832 ] }, { "teal": 3042, "source": "contracts/validatorRegistry.algo.ts:717", "pc": [ 2833 ] }, { "teal": 3043, "source": "contracts/validatorRegistry.algo.ts:717", "pc": [ 2834 ] }, { "teal": 3044, "source": "contracts/validatorRegistry.algo.ts:717", "pc": [ 2835 ] }, { "teal": 3045, "source": "contracts/validatorRegistry.algo.ts:717", "pc": [ 2836, 2837 ] }, { "teal": 3046, "source": "contracts/validatorRegistry.algo.ts:717", "pc": [ 2838, 2839, 2840 ] }, { "teal": 3047, "source": "contracts/validatorRegistry.algo.ts:717", "pc": [ 2841 ] }, { "teal": 3048, "source": "contracts/validatorRegistry.algo.ts:717", "pc": [ 2842 ] }, { "teal": 3049, "source": "contracts/validatorRegistry.algo.ts:717", "pc": [ 2843 ] }, { "teal": 3050, "source": "contracts/validatorRegistry.algo.ts:717", "pc": [ 2844, 2845 ] }, { "teal": 3051, "source": "contracts/validatorRegistry.algo.ts:717", "pc": [ 2846 ] }, { "teal": 3055, "source": "contracts/validatorRegistry.algo.ts:718", "pc": [ 2847, 2848 ] }, { "teal": 3056, "source": "contracts/validatorRegistry.algo.ts:718", "pc": [ 2849 ] }, { "teal": 3057, "source": "contracts/validatorRegistry.algo.ts:718", "pc": [ 2850 ] }, { "teal": 3058, "source": "contracts/validatorRegistry.algo.ts:718", "pc": [ 2851 ] }, { "teal": 3059, "source": "contracts/validatorRegistry.algo.ts:718", "pc": [ 2852, 2853 ] }, { "teal": 3060, "source": "contracts/validatorRegistry.algo.ts:718", "pc": [ 2854, 2855, 2856 ] }, { "teal": 3061, "source": "contracts/validatorRegistry.algo.ts:718", "pc": [ 2857 ] }, { "teal": 3062, "source": "contracts/validatorRegistry.algo.ts:718", "pc": [ 2858 ] }, { "teal": 3063, "source": "contracts/validatorRegistry.algo.ts:718", "pc": [ 2859 ] }, { "teal": 3064, "source": "contracts/validatorRegistry.algo.ts:718", "pc": [ 2860, 2861 ] }, { "teal": 3065, "source": "contracts/validatorRegistry.algo.ts:718", "pc": [ 2862 ] }, { "teal": 3066, "source": "contracts/validatorRegistry.algo.ts:718", "pc": [ 2863 ] }, { "teal": 3067, "source": "contracts/validatorRegistry.algo.ts:718", "pc": [ 2864, 2865 ] }, { "teal": 3068, "source": "contracts/validatorRegistry.algo.ts:718", "pc": [ 2866 ] }, { "teal": 3069, "source": "contracts/validatorRegistry.algo.ts:718", "pc": [ 2867 ] }, { "teal": 3070, "source": "contracts/validatorRegistry.algo.ts:718", "pc": [ 2868 ] }, { "teal": 3071, "source": "contracts/validatorRegistry.algo.ts:718", "pc": [ 2869, 2870 ] }, { "teal": 3072, "source": "contracts/validatorRegistry.algo.ts:718", "pc": [ 2871, 2872, 2873 ] }, { "teal": 3073, "source": "contracts/validatorRegistry.algo.ts:718", "pc": [ 2874 ] }, { "teal": 3074, "source": "contracts/validatorRegistry.algo.ts:718", "pc": [ 2875 ] }, { "teal": 3075, "source": "contracts/validatorRegistry.algo.ts:718", "pc": [ 2876 ] }, { "teal": 3076, "source": "contracts/validatorRegistry.algo.ts:718", "pc": [ 2877, 2878 ] }, { "teal": 3077, "source": "contracts/validatorRegistry.algo.ts:718", "pc": [ 2879 ] }, { "teal": 3081, "source": "contracts/validatorRegistry.algo.ts:719", "pc": [ 2880, 2881 ] }, { "teal": 3082, "source": "contracts/validatorRegistry.algo.ts:719", "pc": [ 2882 ] }, { "teal": 3083, "source": "contracts/validatorRegistry.algo.ts:719", "pc": [ 2883, 2884 ] }, { "teal": 3084, "source": "contracts/validatorRegistry.algo.ts:719", "pc": [ 2885 ] }, { "teal": 3085, "source": "contracts/validatorRegistry.algo.ts:719", "pc": [ 2886, 2887 ] }, { "teal": 3086, "source": "contracts/validatorRegistry.algo.ts:719", "pc": [ 2888 ] }, { "teal": 3087, "source": "contracts/validatorRegistry.algo.ts:719", "pc": [ 2889 ] }, { "teal": 3092, "source": "contracts/validatorRegistry.algo.ts:721", "pc": [ 2890, 2891 ] }, { "teal": 3093, "source": "contracts/validatorRegistry.algo.ts:721", "pc": [ 2892 ] }, { "teal": 3094, "source": "contracts/validatorRegistry.algo.ts:721", "pc": [ 2893 ] }, { "teal": 3095, "source": "contracts/validatorRegistry.algo.ts:721", "pc": [ 2894, 2895, 2896 ] }, { "teal": 3100, "source": "contracts/validatorRegistry.algo.ts:722", "pc": [ 2897, 2898 ] }, { "teal": 3101, "source": "contracts/validatorRegistry.algo.ts:722", "pc": [ 2899 ] }, { "teal": 3102, "source": "contracts/validatorRegistry.algo.ts:722", "pc": [ 2900 ] }, { "teal": 3103, "source": "contracts/validatorRegistry.algo.ts:722", "pc": [ 2901, 2902 ] }, { "teal": 3104, "source": "contracts/validatorRegistry.algo.ts:722", "pc": [ 2903, 2904, 2905 ] }, { "teal": 3105, "source": "contracts/validatorRegistry.algo.ts:722", "pc": [ 2906 ] }, { "teal": 3106, "source": "contracts/validatorRegistry.algo.ts:722", "pc": [ 2907 ] }, { "teal": 3107, "source": "contracts/validatorRegistry.algo.ts:722", "pc": [ 2908 ] }, { "teal": 3108, "source": "contracts/validatorRegistry.algo.ts:722", "pc": [ 2909, 2910 ] }, { "teal": 3109, "source": "contracts/validatorRegistry.algo.ts:722", "pc": [ 2911 ] }, { "teal": 3110, "source": "contracts/validatorRegistry.algo.ts:722", "pc": [ 2912 ] }, { "teal": 3111, "source": "contracts/validatorRegistry.algo.ts:722", "pc": [ 2913, 2914 ] }, { "teal": 3115, "source": "contracts/validatorRegistry.algo.ts:723", "pc": [ 2915, 2916 ] }, { "teal": 3116, "source": "contracts/validatorRegistry.algo.ts:723", "pc": [ 2917 ] }, { "teal": 3117, "source": "contracts/validatorRegistry.algo.ts:723", "pc": [ 2918 ] }, { "teal": 3120, "source": "contracts/validatorRegistry.algo.ts:723", "errorMessage": "rewardRemoved can't be set if validator doesn't have reward token!", "pc": [ 2919 ] }, { "teal": 3127, "source": "contracts/validatorRegistry.algo.ts:725", "pc": [ 2920, 2921 ] }, { "teal": 3128, "source": "contracts/validatorRegistry.algo.ts:725", "pc": [ 2922 ] }, { "teal": 3129, "source": "contracts/validatorRegistry.algo.ts:725", "pc": [ 2923 ] }, { "teal": 3130, "source": "contracts/validatorRegistry.algo.ts:725", "pc": [ 2924, 2925 ] }, { "teal": 3131, "source": "contracts/validatorRegistry.algo.ts:725", "pc": [ 2926, 2927, 2928 ] }, { "teal": 3132, "source": "contracts/validatorRegistry.algo.ts:725", "pc": [ 2929 ] }, { "teal": 3133, "source": "contracts/validatorRegistry.algo.ts:725", "pc": [ 2930 ] }, { "teal": 3134, "source": "contracts/validatorRegistry.algo.ts:725", "pc": [ 2931 ] }, { "teal": 3135, "source": "contracts/validatorRegistry.algo.ts:725", "pc": [ 2932, 2933 ] }, { "teal": 3136, "source": "contracts/validatorRegistry.algo.ts:725", "pc": [ 2934 ] }, { "teal": 3137, "source": "contracts/validatorRegistry.algo.ts:725", "pc": [ 2935 ] }, { "teal": 3138, "source": "contracts/validatorRegistry.algo.ts:725", "pc": [ 2936, 2937 ] }, { "teal": 3139, "source": "contracts/validatorRegistry.algo.ts:725", "pc": [ 2938 ] }, { "teal": 3142, "source": "contracts/validatorRegistry.algo.ts:724", "errorMessage": "reward being removed must be covered by hold back amount", "pc": [ 2939 ] }, { "teal": 3146, "source": "contracts/validatorRegistry.algo.ts:730", "pc": [ 2940, 2941 ] }, { "teal": 3147, "source": "contracts/validatorRegistry.algo.ts:730", "pc": [ 2942 ] }, { "teal": 3148, "source": "contracts/validatorRegistry.algo.ts:730", "pc": [ 2943 ] }, { "teal": 3149, "source": "contracts/validatorRegistry.algo.ts:730", "pc": [ 2944 ] }, { "teal": 3150, "source": "contracts/validatorRegistry.algo.ts:730", "pc": [ 2945, 2946 ] }, { "teal": 3151, "source": "contracts/validatorRegistry.algo.ts:730", "pc": [ 2947, 2948, 2949 ] }, { "teal": 3152, "source": "contracts/validatorRegistry.algo.ts:730", "pc": [ 2950 ] }, { "teal": 3153, "source": "contracts/validatorRegistry.algo.ts:730", "pc": [ 2951 ] }, { "teal": 3154, "source": "contracts/validatorRegistry.algo.ts:730", "pc": [ 2952 ] }, { "teal": 3155, "source": "contracts/validatorRegistry.algo.ts:730", "pc": [ 2953, 2954 ] }, { "teal": 3156, "source": "contracts/validatorRegistry.algo.ts:730", "pc": [ 2955 ] }, { "teal": 3157, "source": "contracts/validatorRegistry.algo.ts:730", "pc": [ 2956 ] }, { "teal": 3158, "source": "contracts/validatorRegistry.algo.ts:730", "pc": [ 2957, 2958 ] }, { "teal": 3159, "source": "contracts/validatorRegistry.algo.ts:730", "pc": [ 2959 ] }, { "teal": 3160, "source": "contracts/validatorRegistry.algo.ts:730", "pc": [ 2960 ] }, { "teal": 3161, "source": "contracts/validatorRegistry.algo.ts:730", "pc": [ 2961 ] }, { "teal": 3162, "source": "contracts/validatorRegistry.algo.ts:730", "pc": [ 2962, 2963 ] }, { "teal": 3163, "source": "contracts/validatorRegistry.algo.ts:730", "pc": [ 2964, 2965, 2966 ] }, { "teal": 3164, "source": "contracts/validatorRegistry.algo.ts:730", "pc": [ 2967 ] }, { "teal": 3165, "source": "contracts/validatorRegistry.algo.ts:730", "pc": [ 2968 ] }, { "teal": 3166, "source": "contracts/validatorRegistry.algo.ts:730", "pc": [ 2969 ] }, { "teal": 3167, "source": "contracts/validatorRegistry.algo.ts:730", "pc": [ 2970, 2971 ] }, { "teal": 3168, "source": "contracts/validatorRegistry.algo.ts:730", "pc": [ 2972 ] }, { "teal": 3173, "source": "contracts/validatorRegistry.algo.ts:735", "pc": [ 2973, 2974 ] }, { "teal": 3174, "source": "contracts/validatorRegistry.algo.ts:735", "pc": [ 2975, 2976, 2977 ] }, { "teal": 3175, "source": "contracts/validatorRegistry.algo.ts:735", "pc": [ 2978 ] }, { "teal": 3176, "source": "contracts/validatorRegistry.algo.ts:735", "pc": [ 2979 ] }, { "teal": 3177, "source": "contracts/validatorRegistry.algo.ts:735", "pc": [ 2980 ] }, { "teal": 3178, "source": "contracts/validatorRegistry.algo.ts:735", "pc": [ 2981, 2982, 2983 ] }, { "teal": 3186, "source": "contracts/validatorRegistry.algo.ts:736", "pc": [ 2984 ] }, { "teal": 3187, "source": "contracts/validatorRegistry.algo.ts:736", "pc": [ 2985, 2986 ] }, { "teal": 3188, "source": "contracts/validatorRegistry.algo.ts:736", "pc": [ 2987, 2988 ] }, { "teal": 3189, "source": "contracts/validatorRegistry.algo.ts:736", "pc": [ 2989, 2990 ] }, { "teal": 3190, "source": "contracts/validatorRegistry.algo.ts:736", "pc": [ 2991, 2992 ] }, { "teal": 3194, "source": "contracts/validatorRegistry.algo.ts:737", "pc": [ 2993, 2994 ] }, { "teal": 3195, "source": "contracts/validatorRegistry.algo.ts:737", "pc": [ 2995 ] }, { "teal": 3196, "source": "contracts/validatorRegistry.algo.ts:737", "pc": [ 2996 ] }, { "teal": 3197, "source": "contracts/validatorRegistry.algo.ts:737", "pc": [ 2997, 2998 ] }, { "teal": 3198, "source": "contracts/validatorRegistry.algo.ts:737", "pc": [ 2999, 3000, 3001 ] }, { "teal": 3199, "source": "contracts/validatorRegistry.algo.ts:737", "pc": [ 3002 ] }, { "teal": 3200, "source": "contracts/validatorRegistry.algo.ts:737", "pc": [ 3003 ] }, { "teal": 3201, "source": "contracts/validatorRegistry.algo.ts:737", "pc": [ 3004 ] }, { "teal": 3202, "source": "contracts/validatorRegistry.algo.ts:737", "pc": [ 3005, 3006 ] }, { "teal": 3203, "source": "contracts/validatorRegistry.algo.ts:737", "pc": [ 3007 ] }, { "teal": 3204, "source": "contracts/validatorRegistry.algo.ts:737", "pc": [ 3008 ] }, { "teal": 3205, "source": "contracts/validatorRegistry.algo.ts:737", "pc": [ 3009, 3010 ] }, { "teal": 3209, "source": "contracts/validatorRegistry.algo.ts:738", "pc": [ 3011, 3012 ] }, { "teal": 3210, "source": "contracts/validatorRegistry.algo.ts:738", "pc": [ 3013, 3014 ] }, { "teal": 3211, "source": "contracts/validatorRegistry.algo.ts:738", "pc": [ 3015, 3016 ] }, { "teal": 3212, "source": "contracts/validatorRegistry.algo.ts:738", "pc": [ 3017 ] }, { "teal": 3213, "source": "contracts/validatorRegistry.algo.ts:738", "pc": [ 3018, 3019 ] }, { "teal": 3214, "source": "contracts/validatorRegistry.algo.ts:738", "pc": [ 3020, 3021 ] }, { "teal": 3215, "source": "contracts/validatorRegistry.algo.ts:738", "pc": [ 3022 ] }, { "teal": 3216, "source": "contracts/validatorRegistry.algo.ts:738", "pc": [ 3023, 3024 ] }, { "teal": 3219, "source": "contracts/validatorRegistry.algo.ts:736", "pc": [ 3025 ] }, { "teal": 3220, "source": "contracts/validatorRegistry.algo.ts:736", "pc": [ 3026, 3027 ] }, { "teal": 3223, "source": "contracts/validatorRegistry.algo.ts:736", "pc": [ 3028 ] }, { "teal": 3236, "source": "contracts/validatorRegistry.algo.ts:741", "pc": [ 3029, 3030 ] }, { "teal": 3237, "source": "contracts/validatorRegistry.algo.ts:742", "pc": [ 3031, 3032 ] }, { "teal": 3238, "source": "contracts/validatorRegistry.algo.ts:742", "pc": [ 3033, 3034, 3035 ] }, { "teal": 3239, "source": "contracts/validatorRegistry.algo.ts:742", "pc": [ 3036 ] }, { "teal": 3240, "source": "contracts/validatorRegistry.algo.ts:742", "pc": [ 3037 ] }, { "teal": 3241, "source": "contracts/validatorRegistry.algo.ts:743", "pc": [ 3038, 3039 ] }, { "teal": 3242, "source": "contracts/validatorRegistry.algo.ts:743", "pc": [ 3040, 3041, 3042 ] }, { "teal": 3243, "source": "contracts/validatorRegistry.algo.ts:743", "pc": [ 3043 ] }, { "teal": 3244, "source": "contracts/validatorRegistry.algo.ts:743", "pc": [ 3044 ] }, { "teal": 3245, "source": "contracts/validatorRegistry.algo.ts:743", "pc": [ 3045 ] }, { "teal": 3246, "source": "contracts/validatorRegistry.algo.ts:743", "pc": [ 3046 ] }, { "teal": 3247, "source": "contracts/validatorRegistry.algo.ts:743", "pc": [ 3047, 3048 ] }, { "teal": 3248, "source": "contracts/validatorRegistry.algo.ts:743", "pc": [ 3049 ] }, { "teal": 3251, "source": "contracts/validatorRegistry.algo.ts:743", "errorMessage": "poolKey.poolId as uint16 overflowed 16 bits", "pc": [ 3050 ] }, { "teal": 3252, "source": "contracts/validatorRegistry.algo.ts:743", "pc": [ 3051, 3052, 3053 ] }, { "teal": 3253, "source": "contracts/validatorRegistry.algo.ts:743", "pc": [ 3054 ] }, { "teal": 3254, "source": "contracts/validatorRegistry.algo.ts:744", "pc": [ 3055, 3056 ] }, { "teal": 3255, "source": "contracts/validatorRegistry.algo.ts:744", "pc": [ 3057, 3058, 3059 ] }, { "teal": 3256, "source": "contracts/validatorRegistry.algo.ts:744", "pc": [ 3060 ] }, { "teal": 3257, "source": "contracts/validatorRegistry.algo.ts:744", "pc": [ 3061 ] }, { "teal": 3258, "source": "contracts/validatorRegistry.algo.ts:744", "pc": [ 3062 ] }, { "teal": 3259, "source": "contracts/validatorRegistry.algo.ts:745", "pc": [ 3063, 3064 ] }, { "teal": 3260, "source": "contracts/validatorRegistry.algo.ts:745", "pc": [ 3065 ] }, { "teal": 3261, "source": "contracts/validatorRegistry.algo.ts:746", "pc": [ 3066, 3067 ] }, { "teal": 3262, "source": "contracts/validatorRegistry.algo.ts:746", "pc": [ 3068 ] }, { "teal": 3263, "source": "contracts/validatorRegistry.algo.ts:746", "pc": [ 3069 ] }, { "teal": 3264, "source": "contracts/validatorRegistry.algo.ts:748", "pc": [ 3070, 3071 ] }, { "teal": 3265, "source": "contracts/validatorRegistry.algo.ts:748", "pc": [ 3072 ] }, { "teal": 3266, "source": "contracts/validatorRegistry.algo.ts:748", "pc": [ 3073 ] }, { "teal": 3267, "source": "contracts/validatorRegistry.algo.ts:747", "pc": [ 3074, 3075 ] }, { "teal": 3268, "source": "contracts/validatorRegistry.algo.ts:747", "pc": [ 3076 ] }, { "teal": 3269, "source": "contracts/validatorRegistry.algo.ts:747", "pc": [ 3077 ] }, { "teal": 3270, "source": "contracts/validatorRegistry.algo.ts:741", "pc": [ 3078 ] }, { "teal": 3271, "source": "contracts/validatorRegistry.algo.ts:741", "pc": [ 3079 ] }, { "teal": 3272, "source": "contracts/validatorRegistry.algo.ts:721", "pc": [ 3080, 3081, 3082 ] }, { "teal": 3286, "source": "contracts/validatorRegistry.algo.ts:751", "pc": [ 3083, 3084 ] }, { "teal": 3287, "source": "contracts/validatorRegistry.algo.ts:752", "pc": [ 3085, 3086 ] }, { "teal": 3288, "source": "contracts/validatorRegistry.algo.ts:752", "pc": [ 3087, 3088, 3089 ] }, { "teal": 3289, "source": "contracts/validatorRegistry.algo.ts:752", "pc": [ 3090 ] }, { "teal": 3290, "source": "contracts/validatorRegistry.algo.ts:752", "pc": [ 3091 ] }, { "teal": 3291, "source": "contracts/validatorRegistry.algo.ts:753", "pc": [ 3092, 3093 ] }, { "teal": 3292, "source": "contracts/validatorRegistry.algo.ts:753", "pc": [ 3094, 3095, 3096 ] }, { "teal": 3293, "source": "contracts/validatorRegistry.algo.ts:753", "pc": [ 3097 ] }, { "teal": 3294, "source": "contracts/validatorRegistry.algo.ts:753", "pc": [ 3098 ] }, { "teal": 3295, "source": "contracts/validatorRegistry.algo.ts:753", "pc": [ 3099 ] }, { "teal": 3296, "source": "contracts/validatorRegistry.algo.ts:753", "pc": [ 3100 ] }, { "teal": 3297, "source": "contracts/validatorRegistry.algo.ts:753", "pc": [ 3101, 3102 ] }, { "teal": 3298, "source": "contracts/validatorRegistry.algo.ts:753", "pc": [ 3103 ] }, { "teal": 3301, "source": "contracts/validatorRegistry.algo.ts:753", "errorMessage": "poolKey.poolId as uint16 overflowed 16 bits", "pc": [ 3104 ] }, { "teal": 3302, "source": "contracts/validatorRegistry.algo.ts:753", "pc": [ 3105, 3106, 3107 ] }, { "teal": 3303, "source": "contracts/validatorRegistry.algo.ts:753", "pc": [ 3108 ] }, { "teal": 3304, "source": "contracts/validatorRegistry.algo.ts:754", "pc": [ 3109, 3110 ] }, { "teal": 3305, "source": "contracts/validatorRegistry.algo.ts:754", "pc": [ 3111, 3112, 3113 ] }, { "teal": 3306, "source": "contracts/validatorRegistry.algo.ts:754", "pc": [ 3114 ] }, { "teal": 3307, "source": "contracts/validatorRegistry.algo.ts:754", "pc": [ 3115 ] }, { "teal": 3308, "source": "contracts/validatorRegistry.algo.ts:754", "pc": [ 3116 ] }, { "teal": 3309, "source": "contracts/validatorRegistry.algo.ts:755", "pc": [ 3117, 3118 ] }, { "teal": 3310, "source": "contracts/validatorRegistry.algo.ts:755", "pc": [ 3119 ] }, { "teal": 3311, "source": "contracts/validatorRegistry.algo.ts:756", "pc": [ 3120, 3121 ] }, { "teal": 3312, "source": "contracts/validatorRegistry.algo.ts:756", "pc": [ 3122 ] }, { "teal": 3313, "source": "contracts/validatorRegistry.algo.ts:756", "pc": [ 3123 ] }, { "teal": 3314, "source": "contracts/validatorRegistry.algo.ts:759", "pc": [ 3124, 3125 ] }, { "teal": 3315, "source": "contracts/validatorRegistry.algo.ts:759", "pc": [ 3126 ] }, { "teal": 3316, "source": "contracts/validatorRegistry.algo.ts:758", "pc": [ 3127, 3128 ] }, { "teal": 3317, "source": "contracts/validatorRegistry.algo.ts:758", "pc": [ 3129 ] }, { "teal": 3318, "source": "contracts/validatorRegistry.algo.ts:751", "pc": [ 3130 ] }, { "teal": 3319, "source": "contracts/validatorRegistry.algo.ts:751", "pc": [ 3131 ] }, { "teal": 3325, "source": "contracts/validatorRegistry.algo.ts:763", "pc": [ 3132, 3133 ] }, { "teal": 3326, "source": "contracts/validatorRegistry.algo.ts:763", "pc": [ 3134, 3135, 3136 ] }, { "teal": 3331, "source": "contracts/validatorRegistry.algo.ts:765", "pc": [ 3137, 3138 ] }, { "teal": 3332, "source": "contracts/validatorRegistry.algo.ts:765", "pc": [ 3139, 3140 ] }, { "teal": 3333, "source": "contracts/validatorRegistry.algo.ts:765", "pc": [ 3141, 3142, 3143 ] }, { "teal": 3334, "source": "contracts/validatorRegistry.algo.ts:765", "pc": [ 3144 ] }, { "teal": 3335, "source": "contracts/validatorRegistry.algo.ts:765", "pc": [ 3145 ] }, { "teal": 3336, "source": "contracts/validatorRegistry.algo.ts:765", "pc": [ 3146 ] }, { "teal": 3337, "source": "contracts/validatorRegistry.algo.ts:765", "pc": [ 3147, 3148 ] }, { "teal": 3338, "source": "contracts/validatorRegistry.algo.ts:765", "pc": [ 3149 ] }, { "teal": 3339, "source": "contracts/validatorRegistry.algo.ts:765", "pc": [ 3150 ] }, { "teal": 3340, "source": "contracts/validatorRegistry.algo.ts:765", "pc": [ 3151 ] }, { "teal": 3341, "source": "contracts/validatorRegistry.algo.ts:765", "pc": [ 3152 ] }, { "teal": 3342, "source": "contracts/validatorRegistry.algo.ts:765", "pc": [ 3153, 3154 ] }, { "teal": 3343, "source": "contracts/validatorRegistry.algo.ts:765", "pc": [ 3155, 3156 ] }, { "teal": 3344, "source": "contracts/validatorRegistry.algo.ts:765", "pc": [ 3157, 3158, 3159 ] }, { "teal": 3345, "source": "contracts/validatorRegistry.algo.ts:765", "pc": [ 3160 ] }, { "teal": 3346, "source": "contracts/validatorRegistry.algo.ts:765", "pc": [ 3161 ] }, { "teal": 3347, "source": "contracts/validatorRegistry.algo.ts:765", "pc": [ 3162 ] }, { "teal": 3348, "source": "contracts/validatorRegistry.algo.ts:765", "pc": [ 3163, 3164 ] }, { "teal": 3349, "source": "contracts/validatorRegistry.algo.ts:765", "pc": [ 3165 ] }, { "teal": 3350, "source": "contracts/validatorRegistry.algo.ts:765", "pc": [ 3166 ] }, { "teal": 3351, "source": "contracts/validatorRegistry.algo.ts:765", "pc": [ 3167 ] }, { "teal": 3352, "source": "contracts/validatorRegistry.algo.ts:765", "pc": [ 3168 ] }, { "teal": 3353, "source": "contracts/validatorRegistry.algo.ts:765", "pc": [ 3169, 3170 ] }, { "teal": 3354, "source": "contracts/validatorRegistry.algo.ts:765", "pc": [ 3171 ] }, { "teal": 3355, "source": "contracts/validatorRegistry.algo.ts:765", "pc": [ 3172, 3173 ] }, { "teal": 3356, "source": "contracts/validatorRegistry.algo.ts:765", "pc": [ 3174, 3175, 3176 ] }, { "teal": 3357, "source": "contracts/validatorRegistry.algo.ts:765", "pc": [ 3177 ] }, { "teal": 3358, "source": "contracts/validatorRegistry.algo.ts:765", "pc": [ 3178 ] }, { "teal": 3359, "source": "contracts/validatorRegistry.algo.ts:765", "pc": [ 3179 ] }, { "teal": 3360, "source": "contracts/validatorRegistry.algo.ts:765", "pc": [ 3180, 3181 ] }, { "teal": 3361, "source": "contracts/validatorRegistry.algo.ts:765", "pc": [ 3182 ] }, { "teal": 3362, "source": "contracts/validatorRegistry.algo.ts:765", "pc": [ 3183 ] }, { "teal": 3363, "source": "contracts/validatorRegistry.algo.ts:765", "pc": [ 3184 ] }, { "teal": 3364, "source": "contracts/validatorRegistry.algo.ts:765", "pc": [ 3185 ] }, { "teal": 3365, "source": "contracts/validatorRegistry.algo.ts:765", "pc": [ 3186 ] }, { "teal": 3366, "source": "contracts/validatorRegistry.algo.ts:765", "pc": [ 3187, 3188, 3189 ] }, { "teal": 3367, "source": "contracts/validatorRegistry.algo.ts:765", "pc": [ 3190 ] }, { "teal": 3368, "source": "contracts/validatorRegistry.algo.ts:765", "pc": [ 3191, 3192 ] }, { "teal": 3369, "source": "contracts/validatorRegistry.algo.ts:765", "pc": [ 3193, 3194, 3195 ] }, { "teal": 3370, "source": "contracts/validatorRegistry.algo.ts:765", "pc": [ 3196 ] }, { "teal": 3371, "source": "contracts/validatorRegistry.algo.ts:765", "pc": [ 3197 ] }, { "teal": 3372, "source": "contracts/validatorRegistry.algo.ts:765", "pc": [ 3198 ] }, { "teal": 3373, "source": "contracts/validatorRegistry.algo.ts:765", "pc": [ 3199, 3200 ] }, { "teal": 3374, "source": "contracts/validatorRegistry.algo.ts:765", "pc": [ 3201 ] }, { "teal": 3382, "source": "contracts/validatorRegistry.algo.ts:768", "pc": [ 3202, 3203 ] }, { "teal": 3383, "source": "contracts/validatorRegistry.algo.ts:768", "pc": [ 3204, 3205, 3206 ] }, { "teal": 3384, "source": "contracts/validatorRegistry.algo.ts:768", "pc": [ 3207 ] }, { "teal": 3385, "source": "contracts/validatorRegistry.algo.ts:768", "pc": [ 3208 ] }, { "teal": 3386, "source": "contracts/validatorRegistry.algo.ts:769", "pc": [ 3209, 3210 ] }, { "teal": 3387, "source": "contracts/validatorRegistry.algo.ts:769", "pc": [ 3211, 3212, 3213 ] }, { "teal": 3388, "source": "contracts/validatorRegistry.algo.ts:769", "pc": [ 3214 ] }, { "teal": 3389, "source": "contracts/validatorRegistry.algo.ts:769", "pc": [ 3215 ] }, { "teal": 3390, "source": "contracts/validatorRegistry.algo.ts:769", "pc": [ 3216 ] }, { "teal": 3391, "source": "contracts/validatorRegistry.algo.ts:770", "pc": [ 3217, 3218 ] }, { "teal": 3392, "source": "contracts/validatorRegistry.algo.ts:770", "pc": [ 3219, 3220, 3221 ] }, { "teal": 3393, "source": "contracts/validatorRegistry.algo.ts:770", "pc": [ 3222 ] }, { "teal": 3394, "source": "contracts/validatorRegistry.algo.ts:770", "pc": [ 3223 ] }, { "teal": 3395, "source": "contracts/validatorRegistry.algo.ts:770", "pc": [ 3224 ] }, { "teal": 3396, "source": "contracts/validatorRegistry.algo.ts:767", "pc": [ 3225, 3226 ] }, { "teal": 3397, "source": "contracts/validatorRegistry.algo.ts:767", "pc": [ 3227, 3228, 3229 ] }, { "teal": 3398, "source": "contracts/validatorRegistry.algo.ts:767", "pc": [ 3230, 3231 ] }, { "teal": 3402, "source": "contracts/validatorRegistry.algo.ts:772", "pc": [ 3232, 3233 ] }, { "teal": 3403, "source": "contracts/validatorRegistry.algo.ts:772", "pc": [ 3234, 3235 ] }, { "teal": 3404, "source": "contracts/validatorRegistry.algo.ts:772", "pc": [ 3236, 3237 ] }, { "teal": 3405, "source": "contracts/validatorRegistry.algo.ts:772", "pc": [ 3238 ] }, { "teal": 3406, "source": "contracts/validatorRegistry.algo.ts:772", "pc": [ 3239 ] }, { "teal": 3407, "source": "contracts/validatorRegistry.algo.ts:772", "pc": [ 3240, 3241 ] }, { "teal": 3411, "source": "contracts/validatorRegistry.algo.ts:773", "pc": [ 3242, 3243 ] }, { "teal": 3412, "source": "contracts/validatorRegistry.algo.ts:773", "pc": [ 3244, 3245 ] }, { "teal": 3413, "source": "contracts/validatorRegistry.algo.ts:773", "pc": [ 3246, 3247 ] }, { "teal": 3414, "source": "contracts/validatorRegistry.algo.ts:773", "pc": [ 3248 ] }, { "teal": 3415, "source": "contracts/validatorRegistry.algo.ts:773", "pc": [ 3249 ] }, { "teal": 3416, "source": "contracts/validatorRegistry.algo.ts:773", "pc": [ 3250, 3251 ] }, { "teal": 3421, "source": "contracts/validatorRegistry.algo.ts:775", "pc": [ 3252, 3253 ] }, { "teal": 3422, "source": "contracts/validatorRegistry.algo.ts:775", "pc": [ 3254, 3255, 3256 ] }, { "teal": 3427, "source": "contracts/validatorRegistry.algo.ts:776", "pc": [ 3257, 3258 ] }, { "teal": 3428, "source": "contracts/validatorRegistry.algo.ts:776", "pc": [ 3259 ] }, { "teal": 3429, "source": "contracts/validatorRegistry.algo.ts:776", "pc": [ 3260 ] }, { "teal": 3430, "source": "contracts/validatorRegistry.algo.ts:776", "pc": [ 3261 ] }, { "teal": 3431, "source": "contracts/validatorRegistry.algo.ts:776", "pc": [ 3262, 3263 ] }, { "teal": 3432, "source": "contracts/validatorRegistry.algo.ts:776", "pc": [ 3264, 3265, 3266 ] }, { "teal": 3433, "source": "contracts/validatorRegistry.algo.ts:776", "pc": [ 3267 ] }, { "teal": 3434, "source": "contracts/validatorRegistry.algo.ts:776", "pc": [ 3268 ] }, { "teal": 3435, "source": "contracts/validatorRegistry.algo.ts:776", "pc": [ 3269 ] }, { "teal": 3436, "source": "contracts/validatorRegistry.algo.ts:776", "pc": [ 3270, 3271 ] }, { "teal": 3437, "source": "contracts/validatorRegistry.algo.ts:776", "pc": [ 3272 ] }, { "teal": 3438, "source": "contracts/validatorRegistry.algo.ts:776", "pc": [ 3273 ] }, { "teal": 3439, "source": "contracts/validatorRegistry.algo.ts:776", "pc": [ 3274 ] }, { "teal": 3440, "source": "contracts/validatorRegistry.algo.ts:776", "pc": [ 3275 ] }, { "teal": 3441, "source": "contracts/validatorRegistry.algo.ts:776", "pc": [ 3276 ] }, { "teal": 3442, "source": "contracts/validatorRegistry.algo.ts:776", "pc": [ 3277 ] }, { "teal": 3443, "source": "contracts/validatorRegistry.algo.ts:776", "pc": [ 3278, 3279 ] }, { "teal": 3444, "source": "contracts/validatorRegistry.algo.ts:776", "pc": [ 3280, 3281, 3282 ] }, { "teal": 3445, "source": "contracts/validatorRegistry.algo.ts:776", "pc": [ 3283 ] }, { "teal": 3446, "source": "contracts/validatorRegistry.algo.ts:776", "pc": [ 3284 ] }, { "teal": 3447, "source": "contracts/validatorRegistry.algo.ts:776", "pc": [ 3285 ] }, { "teal": 3448, "source": "contracts/validatorRegistry.algo.ts:776", "pc": [ 3286, 3287 ] }, { "teal": 3449, "source": "contracts/validatorRegistry.algo.ts:776", "pc": [ 3288 ] }, { "teal": 3455, "source": "contracts/validatorRegistry.algo.ts:779", "pc": [ 3289, 3290 ] }, { "teal": 3456, "source": "contracts/validatorRegistry.algo.ts:779", "pc": [ 3291, 3292, 3293 ] }, { "teal": 3461, "source": "contracts/validatorRegistry.algo.ts:780", "pc": [ 3294, 3295 ] }, { "teal": 3462, "source": "contracts/validatorRegistry.algo.ts:780", "pc": [ 3296 ] }, { "teal": 3463, "source": "contracts/validatorRegistry.algo.ts:780", "pc": [ 3297 ] }, { "teal": 3464, "source": "contracts/validatorRegistry.algo.ts:780", "pc": [ 3298 ] }, { "teal": 3465, "source": "contracts/validatorRegistry.algo.ts:780", "pc": [ 3299, 3300 ] }, { "teal": 3466, "source": "contracts/validatorRegistry.algo.ts:780", "pc": [ 3301 ] }, { "teal": 3467, "source": "contracts/validatorRegistry.algo.ts:780", "pc": [ 3302 ] }, { "teal": 3472, "source": "contracts/validatorRegistry.algo.ts:700", "pc": [ 3303 ] }, { "teal": 3477, "source": "contracts/validatorRegistry.algo.ts:796", "pc": [ 3304 ] }, { "teal": 3480, "source": "contracts/validatorRegistry.algo.ts:800", "pc": [ 3305, 3306, 3307 ] }, { "teal": 3481, "source": "contracts/validatorRegistry.algo.ts:800", "pc": [ 3308 ] }, { "teal": 3484, "source": "contracts/validatorRegistry.algo.ts:799", "pc": [ 3309, 3310, 3311 ] }, { "teal": 3485, "source": "contracts/validatorRegistry.algo.ts:799", "pc": [ 3312 ] }, { "teal": 3486, "source": "contracts/validatorRegistry.algo.ts:799", "pc": [ 3313 ] }, { "teal": 3487, "source": "contracts/validatorRegistry.algo.ts:799", "pc": [ 3314, 3315 ] }, { "teal": 3488, "source": "contracts/validatorRegistry.algo.ts:799", "pc": [ 3316 ] }, { "teal": 3491, "source": "contracts/validatorRegistry.algo.ts:799", "errorMessage": "argument 1 (staker) for findPoolForStaker must be a address", "pc": [ 3317 ] }, { "teal": 3494, "source": "contracts/validatorRegistry.algo.ts:798", "pc": [ 3318, 3319, 3320 ] }, { "teal": 3495, "source": "contracts/validatorRegistry.algo.ts:798", "pc": [ 3321 ] }, { "teal": 3498, "source": "contracts/validatorRegistry.algo.ts:796", "pc": [ 3322, 3323, 3324 ] }, { "teal": 3499, "source": "contracts/validatorRegistry.algo.ts:796", "pc": [ 3325 ] }, { "teal": 3500, "source": "contracts/validatorRegistry.algo.ts:796", "pc": [ 3326 ] }, { "teal": 3501, "source": "contracts/validatorRegistry.algo.ts:796", "pc": [ 3327 ] }, { "teal": 3502, "source": "contracts/validatorRegistry.algo.ts:796", "pc": [ 3328 ] }, { "teal": 3516, "source": "contracts/validatorRegistry.algo.ts:796", "pc": [ 3329, 3330, 3331 ] }, { "teal": 3519, "source": "contracts/validatorRegistry.algo.ts:796", "pc": [ 3332 ] }, { "teal": 3520, "source": "contracts/validatorRegistry.algo.ts:796", "pc": [ 3333, 3334 ] }, { "teal": 3524, "source": "contracts/validatorRegistry.algo.ts:802", "pc": [ 3335 ] }, { "teal": 3525, "source": "contracts/validatorRegistry.algo.ts:802", "pc": [ 3336, 3337 ] }, { "teal": 3529, "source": "contracts/validatorRegistry.algo.ts:803", "pc": [ 3338 ] }, { "teal": 3530, "source": "contracts/validatorRegistry.algo.ts:803", "pc": [ 3339, 3340 ] }, { "teal": 3534, "source": "contracts/validatorRegistry.algo.ts:811", "pc": [ 3341, 3342 ] }, { "teal": 3535, "source": "contracts/validatorRegistry.algo.ts:811", "pc": [ 3343, 3344, 3345 ] }, { "teal": 3536, "source": "contracts/validatorRegistry.algo.ts:811", "pc": [ 3346, 3347 ] }, { "teal": 3541, "source": "contracts/validatorRegistry.algo.ts:814", "pc": [ 3348 ] }, { "teal": 3542, "source": "contracts/validatorRegistry.algo.ts:814", "pc": [ 3349, 3350 ] }, { "teal": 3543, "source": "contracts/validatorRegistry.algo.ts:814", "pc": [ 3351 ] }, { "teal": 3544, "source": "contracts/validatorRegistry.algo.ts:814", "pc": [ 3352 ] }, { "teal": 3545, "source": "contracts/validatorRegistry.algo.ts:814", "pc": [ 3353 ] }, { "teal": 3546, "source": "contracts/validatorRegistry.algo.ts:814", "pc": [ 3354 ] }, { "teal": 3547, "source": "contracts/validatorRegistry.algo.ts:814", "pc": [ 3355, 3356, 3357 ] }, { "teal": 3552, "source": "contracts/validatorRegistry.algo.ts:815", "pc": [ 3358 ] }, { "teal": 3553, "source": "contracts/validatorRegistry.algo.ts:815", "pc": [ 3359, 3360 ] }, { "teal": 3554, "source": "contracts/validatorRegistry.algo.ts:815", "pc": [ 3361 ] }, { "teal": 3555, "source": "contracts/validatorRegistry.algo.ts:815", "pc": [ 3362 ] }, { "teal": 3558, "source": "contracts/validatorRegistry.algo.ts:815", "errorMessage": "box value does not exist: this.stakerPoolSet(staker).value", "pc": [ 3363 ] }, { "teal": 3559, "source": "contracts/validatorRegistry.algo.ts:815", "pc": [ 3364, 3365 ] }, { "teal": 3563, "source": "contracts/validatorRegistry.algo.ts:816", "pc": [ 3366, 3367 ] }, { "teal": 3564, "source": "contracts/validatorRegistry.algo.ts:816", "pc": [ 3368 ] }, { "teal": 3565, "source": "contracts/validatorRegistry.algo.ts:816", "pc": [ 3369 ] }, { "teal": 3566, "source": "contracts/validatorRegistry.algo.ts:816", "pc": [ 3370 ] }, { "teal": 3570, "source": "contracts/validatorRegistry.algo.ts:817", "pc": [ 3371 ] }, { "teal": 3571, "source": "contracts/validatorRegistry.algo.ts:817", "pc": [ 3372, 3373 ] }, { "teal": 3576, "source": "contracts/validatorRegistry.algo.ts:817", "pc": [ 3374, 3375 ] }, { "teal": 3577, "source": "contracts/validatorRegistry.algo.ts:817", "pc": [ 3376, 3377 ] }, { "teal": 3578, "source": "contracts/validatorRegistry.algo.ts:817", "pc": [ 3378 ] }, { "teal": 3579, "source": "contracts/validatorRegistry.algo.ts:817", "pc": [ 3379, 3380, 3381 ] }, { "teal": 3584, "source": "contracts/validatorRegistry.algo.ts:818", "pc": [ 3382, 3383 ] }, { "teal": 3585, "source": "contracts/validatorRegistry.algo.ts:818", "pc": [ 3384, 3385 ] }, { "teal": 3586, "source": "contracts/validatorRegistry.algo.ts:818", "pc": [ 3386 ] }, { "teal": 3587, "source": "contracts/validatorRegistry.algo.ts:818", "pc": [ 3387, 3388, 3389 ] }, { "teal": 3592, "source": "contracts/validatorRegistry.algo.ts:819", "pc": [ 3390 ] }, { "teal": 3593, "source": "contracts/validatorRegistry.algo.ts:819", "pc": [ 3391, 3392 ] }, { "teal": 3594, "source": "contracts/validatorRegistry.algo.ts:819", "pc": [ 3393, 3394 ] }, { "teal": 3595, "source": "contracts/validatorRegistry.algo.ts:819", "pc": [ 3395 ] }, { "teal": 3596, "source": "contracts/validatorRegistry.algo.ts:819", "pc": [ 3396, 3397 ] }, { "teal": 3597, "source": "contracts/validatorRegistry.algo.ts:819", "pc": [ 3398, 3399 ] }, { "teal": 3598, "source": "contracts/validatorRegistry.algo.ts:819", "pc": [ 3400 ] }, { "teal": 3599, "source": "contracts/validatorRegistry.algo.ts:819", "pc": [ 3401, 3402 ] }, { "teal": 3600, "source": "contracts/validatorRegistry.algo.ts:819", "pc": [ 3403, 3404 ] }, { "teal": 3601, "source": "contracts/validatorRegistry.algo.ts:819", "pc": [ 3405, 3406 ] }, { "teal": 3602, "source": "contracts/validatorRegistry.algo.ts:819", "pc": [ 3407, 3408 ] }, { "teal": 3603, "source": "contracts/validatorRegistry.algo.ts:819", "pc": [ 3409 ] }, { "teal": 3609, "source": "contracts/validatorRegistry.algo.ts:821", "pc": [ 3410, 3411 ] }, { "teal": 3610, "source": "contracts/validatorRegistry.algo.ts:821", "pc": [ 3412, 3413 ] }, { "teal": 3611, "source": "contracts/validatorRegistry.algo.ts:821", "pc": [ 3414 ] }, { "teal": 3612, "source": "contracts/validatorRegistry.algo.ts:821", "pc": [ 3415 ] }, { "teal": 3613, "source": "contracts/validatorRegistry.algo.ts:821", "pc": [ 3416 ] }, { "teal": 3614, "source": "contracts/validatorRegistry.algo.ts:821", "pc": [ 3417 ] }, { "teal": 3615, "source": "contracts/validatorRegistry.algo.ts:821", "pc": [ 3418 ] }, { "teal": 3616, "source": "contracts/validatorRegistry.algo.ts:821", "pc": [ 3419 ] }, { "teal": 3617, "source": "contracts/validatorRegistry.algo.ts:821", "pc": [ 3420 ] }, { "teal": 3618, "source": "contracts/validatorRegistry.algo.ts:821", "pc": [ 3421 ] }, { "teal": 3619, "source": "contracts/validatorRegistry.algo.ts:821", "pc": [ 3422 ] }, { "teal": 3620, "source": "contracts/validatorRegistry.algo.ts:821", "pc": [ 3423, 3424, 3425 ] }, { "teal": 3623, "source": "contracts/validatorRegistry.algo.ts:822", "pc": [ 3426, 3427, 3428 ] }, { "teal": 3628, "source": "contracts/validatorRegistry.algo.ts:824", "pc": [ 3429 ] }, { "teal": 3629, "source": "contracts/validatorRegistry.algo.ts:824", "pc": [ 3430, 3431 ] }, { "teal": 3634, "source": "contracts/validatorRegistry.algo.ts:825", "pc": [ 3432, 3433 ] }, { "teal": 3635, "source": "contracts/validatorRegistry.algo.ts:825", "pc": [ 3434, 3435 ] }, { "teal": 3636, "source": "contracts/validatorRegistry.algo.ts:825", "pc": [ 3436 ] }, { "teal": 3637, "source": "contracts/validatorRegistry.algo.ts:825", "pc": [ 3437 ] }, { "teal": 3638, "source": "contracts/validatorRegistry.algo.ts:825", "pc": [ 3438 ] }, { "teal": 3639, "source": "contracts/validatorRegistry.algo.ts:825", "pc": [ 3439 ] }, { "teal": 3640, "source": "contracts/validatorRegistry.algo.ts:825", "pc": [ 3440 ] }, { "teal": 3641, "source": "contracts/validatorRegistry.algo.ts:825", "pc": [ 3441 ] }, { "teal": 3642, "source": "contracts/validatorRegistry.algo.ts:825", "pc": [ 3442 ] }, { "teal": 3643, "source": "contracts/validatorRegistry.algo.ts:825", "pc": [ 3443, 3444 ] }, { "teal": 3644, "source": "contracts/validatorRegistry.algo.ts:825", "pc": [ 3445 ] }, { "teal": 3645, "source": "contracts/validatorRegistry.algo.ts:825", "pc": [ 3446, 3447, 3448 ] }, { "teal": 3650, "source": "contracts/validatorRegistry.algo.ts:827", "pc": [ 3449 ] }, { "teal": 3651, "source": "contracts/validatorRegistry.algo.ts:827", "pc": [ 3450, 3451 ] }, { "teal": 3658, "source": "contracts/validatorRegistry.algo.ts:829", "pc": [ 3452, 3453 ] }, { "teal": 3659, "source": "contracts/validatorRegistry.algo.ts:829", "pc": [ 3454, 3455 ] }, { "teal": 3660, "source": "contracts/validatorRegistry.algo.ts:829", "pc": [ 3456, 3457 ] }, { "teal": 3661, "source": "contracts/validatorRegistry.algo.ts:829", "pc": [ 3458 ] }, { "teal": 3662, "source": "contracts/validatorRegistry.algo.ts:829", "pc": [ 3459 ] }, { "teal": 3663, "source": "contracts/validatorRegistry.algo.ts:829", "pc": [ 3460 ] }, { "teal": 3664, "source": "contracts/validatorRegistry.algo.ts:829", "pc": [ 3461 ] }, { "teal": 3665, "source": "contracts/validatorRegistry.algo.ts:829", "pc": [ 3462 ] }, { "teal": 3666, "source": "contracts/validatorRegistry.algo.ts:829", "pc": [ 3463 ] }, { "teal": 3667, "source": "contracts/validatorRegistry.algo.ts:829", "pc": [ 3464 ] }, { "teal": 3668, "source": "contracts/validatorRegistry.algo.ts:829", "pc": [ 3465 ] }, { "teal": 3669, "source": "contracts/validatorRegistry.algo.ts:829", "pc": [ 3466 ] }, { "teal": 3670, "source": "contracts/validatorRegistry.algo.ts:829", "pc": [ 3467, 3468 ] }, { "teal": 3671, "source": "contracts/validatorRegistry.algo.ts:829", "pc": [ 3469 ] }, { "teal": 3672, "source": "contracts/validatorRegistry.algo.ts:829", "pc": [ 3470 ] }, { "teal": 3673, "source": "contracts/validatorRegistry.algo.ts:829", "pc": [ 3471, 3472 ] }, { "teal": 3674, "source": "contracts/validatorRegistry.algo.ts:829", "pc": [ 3473 ] }, { "teal": 3675, "source": "contracts/validatorRegistry.algo.ts:829", "pc": [ 3474 ] }, { "teal": 3676, "source": "contracts/validatorRegistry.algo.ts:829", "pc": [ 3475 ] }, { "teal": 3677, "source": "contracts/validatorRegistry.algo.ts:829", "pc": [ 3476, 3477 ] }, { "teal": 3678, "source": "contracts/validatorRegistry.algo.ts:829", "pc": [ 3478 ] }, { "teal": 3679, "source": "contracts/validatorRegistry.algo.ts:829", "pc": [ 3479 ] }, { "teal": 3680, "source": "contracts/validatorRegistry.algo.ts:829", "pc": [ 3480, 3481 ] }, { "teal": 3681, "source": "contracts/validatorRegistry.algo.ts:829", "pc": [ 3482 ] }, { "teal": 3682, "source": "contracts/validatorRegistry.algo.ts:829", "pc": [ 3483 ] }, { "teal": 3683, "source": "contracts/validatorRegistry.algo.ts:830", "pc": [ 3484, 3485 ] }, { "teal": 3684, "source": "contracts/validatorRegistry.algo.ts:829", "pc": [ 3486 ] }, { "teal": 3685, "source": "contracts/validatorRegistry.algo.ts:831", "pc": [ 3487, 3488 ] }, { "teal": 3686, "source": "contracts/validatorRegistry.algo.ts:830", "pc": [ 3489 ] }, { "teal": 3687, "source": "contracts/validatorRegistry.algo.ts:828", "pc": [ 3490, 3491, 3492 ] }, { "teal": 3692, "source": "contracts/validatorRegistry.algo.ts:833", "pc": [ 3493, 3494 ] }, { "teal": 3693, "source": "contracts/validatorRegistry.algo.ts:833", "pc": [ 3495, 3496 ] }, { "teal": 3694, "source": "contracts/validatorRegistry.algo.ts:833", "pc": [ 3497 ] }, { "teal": 3695, "source": "contracts/validatorRegistry.algo.ts:833", "pc": [ 3498 ] }, { "teal": 3696, "source": "contracts/validatorRegistry.algo.ts:833", "pc": [ 3499 ] }, { "teal": 3697, "source": "contracts/validatorRegistry.algo.ts:833", "pc": [ 3500 ] }, { "teal": 3698, "source": "contracts/validatorRegistry.algo.ts:833", "pc": [ 3501, 3502 ] }, { "teal": 3699, "source": "contracts/validatorRegistry.algo.ts:833", "pc": [ 3503 ] }, { "teal": 3700, "source": "contracts/validatorRegistry.algo.ts:833", "pc": [ 3504, 3505 ] }, { "teal": 3701, "source": "contracts/validatorRegistry.algo.ts:833", "pc": [ 3506 ] }, { "teal": 3702, "source": "contracts/validatorRegistry.algo.ts:833", "pc": [ 3507 ] }, { "teal": 3703, "source": "contracts/validatorRegistry.algo.ts:833", "pc": [ 3508, 3509 ] }, { "teal": 3704, "source": "contracts/validatorRegistry.algo.ts:833", "pc": [ 3510 ] }, { "teal": 3705, "source": "contracts/validatorRegistry.algo.ts:833", "pc": [ 3511 ] }, { "teal": 3706, "source": "contracts/validatorRegistry.algo.ts:833", "pc": [ 3512, 3513, 3514 ] }, { "teal": 3715, "source": "contracts/validatorRegistry.algo.ts:817", "pc": [ 3515, 3516 ] }, { "teal": 3716, "source": "contracts/validatorRegistry.algo.ts:817", "pc": [ 3517 ] }, { "teal": 3717, "source": "contracts/validatorRegistry.algo.ts:817", "pc": [ 3518 ] }, { "teal": 3718, "source": "contracts/validatorRegistry.algo.ts:817", "pc": [ 3519, 3520 ] }, { "teal": 3719, "source": "contracts/validatorRegistry.algo.ts:817", "pc": [ 3521, 3522, 3523 ] }, { "teal": 3729, "source": "contracts/validatorRegistry.algo.ts:841", "pc": [ 3524, 3525 ] }, { "teal": 3730, "source": "contracts/validatorRegistry.algo.ts:841", "pc": [ 3526, 3527 ] }, { "teal": 3731, "source": "contracts/validatorRegistry.algo.ts:841", "pc": [ 3528 ] }, { "teal": 3732, "source": "contracts/validatorRegistry.algo.ts:841", "pc": [ 3529 ] }, { "teal": 3733, "source": "contracts/validatorRegistry.algo.ts:841", "pc": [ 3530, 3531 ] }, { "teal": 3734, "source": "contracts/validatorRegistry.algo.ts:841", "pc": [ 3532 ] }, { "teal": 3735, "source": "contracts/validatorRegistry.algo.ts:841", "pc": [ 3533 ] }, { "teal": 3736, "source": "contracts/validatorRegistry.algo.ts:841", "pc": [ 3534, 3535 ] }, { "teal": 3737, "source": "contracts/validatorRegistry.algo.ts:841", "pc": [ 3536 ] }, { "teal": 3738, "source": "contracts/validatorRegistry.algo.ts:841", "pc": [ 3537 ] }, { "teal": 3739, "source": "contracts/validatorRegistry.algo.ts:841", "pc": [ 3538 ] }, { "teal": 3742, "source": "contracts/validatorRegistry.algo.ts:840", "errorMessage": "must stake at least the minimum for this pool", "pc": [ 3539 ] }, { "teal": 3746, "source": "contracts/validatorRegistry.algo.ts:846", "pc": [ 3540, 3541 ] }, { "teal": 3747, "source": "contracts/validatorRegistry.algo.ts:846", "pc": [ 3542, 3543 ] }, { "teal": 3748, "source": "contracts/validatorRegistry.algo.ts:846", "pc": [ 3544 ] }, { "teal": 3749, "source": "contracts/validatorRegistry.algo.ts:846", "pc": [ 3545, 3546 ] }, { "teal": 3750, "source": "contracts/validatorRegistry.algo.ts:846", "pc": [ 3547 ] }, { "teal": 3751, "source": "contracts/validatorRegistry.algo.ts:846", "pc": [ 3548 ] }, { "teal": 3752, "source": "contracts/validatorRegistry.algo.ts:846", "pc": [ 3549, 3550 ] }, { "teal": 3753, "source": "contracts/validatorRegistry.algo.ts:846", "pc": [ 3551 ] }, { "teal": 3754, "source": "contracts/validatorRegistry.algo.ts:846", "pc": [ 3552, 3553 ] }, { "teal": 3758, "source": "contracts/validatorRegistry.algo.ts:847", "pc": [ 3554, 3555 ] }, { "teal": 3759, "source": "contracts/validatorRegistry.algo.ts:847", "pc": [ 3556, 3557 ] }, { "teal": 3760, "source": "contracts/validatorRegistry.algo.ts:847", "pc": [ 3558 ] }, { "teal": 3761, "source": "contracts/validatorRegistry.algo.ts:847", "pc": [ 3559, 3560 ] }, { "teal": 3762, "source": "contracts/validatorRegistry.algo.ts:847", "pc": [ 3561 ] }, { "teal": 3763, "source": "contracts/validatorRegistry.algo.ts:847", "pc": [ 3562 ] }, { "teal": 3764, "source": "contracts/validatorRegistry.algo.ts:847", "pc": [ 3563, 3564 ] }, { "teal": 3765, "source": "contracts/validatorRegistry.algo.ts:847", "pc": [ 3565 ] }, { "teal": 3766, "source": "contracts/validatorRegistry.algo.ts:847", "pc": [ 3566 ] }, { "teal": 3767, "source": "contracts/validatorRegistry.algo.ts:847", "pc": [ 3567, 3568 ] }, { "teal": 3771, "source": "contracts/validatorRegistry.algo.ts:848", "pc": [ 3569 ] }, { "teal": 3772, "source": "contracts/validatorRegistry.algo.ts:848", "pc": [ 3570, 3571 ] }, { "teal": 3777, "source": "contracts/validatorRegistry.algo.ts:848", "pc": [ 3572, 3573 ] }, { "teal": 3778, "source": "contracts/validatorRegistry.algo.ts:848", "pc": [ 3574, 3575 ] }, { "teal": 3779, "source": "contracts/validatorRegistry.algo.ts:848", "pc": [ 3576 ] }, { "teal": 3780, "source": "contracts/validatorRegistry.algo.ts:848", "pc": [ 3577, 3578, 3579 ] }, { "teal": 3785, "source": "contracts/validatorRegistry.algo.ts:849", "pc": [ 3580, 3581 ] }, { "teal": 3786, "source": "contracts/validatorRegistry.algo.ts:849", "pc": [ 3582, 3583 ] }, { "teal": 3787, "source": "contracts/validatorRegistry.algo.ts:849", "pc": [ 3584, 3585 ] }, { "teal": 3788, "source": "contracts/validatorRegistry.algo.ts:849", "pc": [ 3586 ] }, { "teal": 3789, "source": "contracts/validatorRegistry.algo.ts:849", "pc": [ 3587, 3588 ] }, { "teal": 3790, "source": "contracts/validatorRegistry.algo.ts:849", "pc": [ 3589 ] }, { "teal": 3791, "source": "contracts/validatorRegistry.algo.ts:849", "pc": [ 3590 ] }, { "teal": 3792, "source": "contracts/validatorRegistry.algo.ts:849", "pc": [ 3591 ] }, { "teal": 3793, "source": "contracts/validatorRegistry.algo.ts:849", "pc": [ 3592 ] }, { "teal": 3794, "source": "contracts/validatorRegistry.algo.ts:849", "pc": [ 3593, 3594 ] }, { "teal": 3795, "source": "contracts/validatorRegistry.algo.ts:849", "pc": [ 3595 ] }, { "teal": 3796, "source": "contracts/validatorRegistry.algo.ts:849", "pc": [ 3596, 3597 ] }, { "teal": 3797, "source": "contracts/validatorRegistry.algo.ts:849", "pc": [ 3598 ] }, { "teal": 3798, "source": "contracts/validatorRegistry.algo.ts:849", "pc": [ 3599, 3600, 3601 ] }, { "teal": 3807, "source": "contracts/validatorRegistry.algo.ts:851", "pc": [ 3602, 3603 ] }, { "teal": 3808, "source": "contracts/validatorRegistry.algo.ts:851", "pc": [ 3604 ] }, { "teal": 3809, "source": "contracts/validatorRegistry.algo.ts:851", "pc": [ 3605, 3606 ] }, { "teal": 3810, "source": "contracts/validatorRegistry.algo.ts:851", "pc": [ 3607 ] }, { "teal": 3811, "source": "contracts/validatorRegistry.algo.ts:851", "pc": [ 3608 ] }, { "teal": 3812, "source": "contracts/validatorRegistry.algo.ts:851", "pc": [ 3609 ] }, { "teal": 3813, "source": "contracts/validatorRegistry.algo.ts:851", "pc": [ 3610 ] }, { "teal": 3814, "source": "contracts/validatorRegistry.algo.ts:851", "pc": [ 3611, 3612 ] }, { "teal": 3815, "source": "contracts/validatorRegistry.algo.ts:851", "pc": [ 3613, 3614 ] }, { "teal": 3816, "source": "contracts/validatorRegistry.algo.ts:851", "pc": [ 3615, 3616 ] }, { "teal": 3817, "source": "contracts/validatorRegistry.algo.ts:851", "pc": [ 3617 ] }, { "teal": 3818, "source": "contracts/validatorRegistry.algo.ts:851", "pc": [ 3618 ] }, { "teal": 3819, "source": "contracts/validatorRegistry.algo.ts:851", "pc": [ 3619 ] }, { "teal": 3820, "source": "contracts/validatorRegistry.algo.ts:851", "pc": [ 3620 ] }, { "teal": 3821, "source": "contracts/validatorRegistry.algo.ts:851", "pc": [ 3621 ] }, { "teal": 3822, "source": "contracts/validatorRegistry.algo.ts:851", "pc": [ 3622 ] }, { "teal": 3823, "source": "contracts/validatorRegistry.algo.ts:851", "pc": [ 3623 ] }, { "teal": 3824, "source": "contracts/validatorRegistry.algo.ts:851", "pc": [ 3624 ] }, { "teal": 3825, "source": "contracts/validatorRegistry.algo.ts:852", "pc": [ 3625, 3626 ] }, { "teal": 3826, "source": "contracts/validatorRegistry.algo.ts:852", "pc": [ 3627 ] }, { "teal": 3827, "source": "contracts/validatorRegistry.algo.ts:852", "pc": [ 3628, 3629 ] }, { "teal": 3828, "source": "contracts/validatorRegistry.algo.ts:852", "pc": [ 3630 ] }, { "teal": 3829, "source": "contracts/validatorRegistry.algo.ts:853", "pc": [ 3631 ] }, { "teal": 3830, "source": "contracts/validatorRegistry.algo.ts:853", "pc": [ 3632, 3633 ] }, { "teal": 3831, "source": "contracts/validatorRegistry.algo.ts:853", "pc": [ 3634 ] }, { "teal": 3832, "source": "contracts/validatorRegistry.algo.ts:850", "pc": [ 3635 ] }, { "teal": 3833, "source": "contracts/validatorRegistry.algo.ts:850", "pc": [ 3636, 3637, 3638 ] }, { "teal": 3840, "source": "contracts/validatorRegistry.algo.ts:848", "pc": [ 3639, 3640 ] }, { "teal": 3841, "source": "contracts/validatorRegistry.algo.ts:848", "pc": [ 3641 ] }, { "teal": 3842, "source": "contracts/validatorRegistry.algo.ts:848", "pc": [ 3642 ] }, { "teal": 3843, "source": "contracts/validatorRegistry.algo.ts:848", "pc": [ 3643, 3644 ] }, { "teal": 3844, "source": "contracts/validatorRegistry.algo.ts:848", "pc": [ 3645, 3646, 3647 ] }, { "teal": 3849, "source": "contracts/validatorRegistry.algo.ts:858", "pc": [ 3648, 3649 ] }, { "teal": 3850, "source": "contracts/validatorRegistry.algo.ts:858", "pc": [ 3650 ] }, { "teal": 3851, "source": "contracts/validatorRegistry.algo.ts:858", "pc": [ 3651, 3652 ] }, { "teal": 3852, "source": "contracts/validatorRegistry.algo.ts:858", "pc": [ 3653 ] }, { "teal": 3853, "source": "contracts/validatorRegistry.algo.ts:858", "pc": [ 3654, 3655 ] }, { "teal": 3854, "source": "contracts/validatorRegistry.algo.ts:858", "pc": [ 3656 ] }, { "teal": 3855, "source": "contracts/validatorRegistry.algo.ts:858", "pc": [ 3657, 3658 ] }, { "teal": 3856, "source": "contracts/validatorRegistry.algo.ts:858", "pc": [ 3659 ] }, { "teal": 3857, "source": "contracts/validatorRegistry.algo.ts:858", "pc": [ 3660, 3661 ] }, { "teal": 3858, "source": "contracts/validatorRegistry.algo.ts:858", "pc": [ 3662 ] }, { "teal": 3859, "source": "contracts/validatorRegistry.algo.ts:858", "pc": [ 3663 ] }, { "teal": 3860, "source": "contracts/validatorRegistry.algo.ts:858", "pc": [ 3664, 3665 ] }, { "teal": 3861, "source": "contracts/validatorRegistry.algo.ts:858", "pc": [ 3666 ] }, { "teal": 3862, "source": "contracts/validatorRegistry.algo.ts:858", "pc": [ 3667 ] }, { "teal": 3866, "source": "contracts/validatorRegistry.algo.ts:796", "pc": [ 3668, 3669 ] }, { "teal": 3869, "source": "contracts/validatorRegistry.algo.ts:796", "pc": [ 3670, 3671 ] }, { "teal": 3870, "source": "contracts/validatorRegistry.algo.ts:796", "pc": [ 3672 ] }, { "teal": 3875, "source": "contracts/validatorRegistry.algo.ts:872", "pc": [ 3673, 3674, 3675 ] }, { "teal": 3876, "source": "contracts/validatorRegistry.algo.ts:872", "pc": [ 3676 ] }, { "teal": 3879, "source": "contracts/validatorRegistry.algo.ts:872", "pc": [ 3677, 3678, 3679 ] }, { "teal": 3880, "source": "contracts/validatorRegistry.algo.ts:872", "pc": [ 3680 ] }, { "teal": 3883, "source": "contracts/validatorRegistry.algo.ts:872", "pc": [ 3681, 3682, 3683 ] }, { "teal": 3884, "source": "contracts/validatorRegistry.algo.ts:872", "pc": [ 3684 ] }, { "teal": 3887, "source": "contracts/validatorRegistry.algo.ts:872", "pc": [ 3685, 3686, 3687 ] }, { "teal": 3888, "source": "contracts/validatorRegistry.algo.ts:872", "pc": [ 3688 ] }, { "teal": 3889, "source": "contracts/validatorRegistry.algo.ts:872", "pc": [ 3689 ] }, { "teal": 3903, "source": "contracts/validatorRegistry.algo.ts:872", "pc": [ 3690, 3691, 3692 ] }, { "teal": 3906, "source": "contracts/validatorRegistry.algo.ts:872", "pc": [ 3693 ] }, { "teal": 3907, "source": "contracts/validatorRegistry.algo.ts:872", "pc": [ 3694, 3695 ] }, { "teal": 3911, "source": "contracts/validatorRegistry.algo.ts:873", "pc": [ 3696, 3697 ] }, { "teal": 3912, "source": "contracts/validatorRegistry.algo.ts:873", "pc": [ 3698, 3699, 3700 ] }, { "teal": 3916, "source": "contracts/validatorRegistry.algo.ts:875", "pc": [ 3701, 3702 ] }, { "teal": 3917, "source": "contracts/validatorRegistry.algo.ts:875", "pc": [ 3703, 3704 ] }, { "teal": 3918, "source": "contracts/validatorRegistry.algo.ts:875", "pc": [ 3705 ] }, { "teal": 3919, "source": "contracts/validatorRegistry.algo.ts:875", "pc": [ 3706, 3707 ] }, { "teal": 3920, "source": "contracts/validatorRegistry.algo.ts:875", "pc": [ 3708 ] }, { "teal": 3921, "source": "contracts/validatorRegistry.algo.ts:875", "pc": [ 3709 ] }, { "teal": 3922, "source": "contracts/validatorRegistry.algo.ts:875", "pc": [ 3710, 3711 ] }, { "teal": 3923, "source": "contracts/validatorRegistry.algo.ts:875", "pc": [ 3712 ] }, { "teal": 3924, "source": "contracts/validatorRegistry.algo.ts:875", "pc": [ 3713, 3714 ] }, { "teal": 3928, "source": "contracts/validatorRegistry.algo.ts:876", "pc": [ 3715, 3716 ] }, { "teal": 3929, "source": "contracts/validatorRegistry.algo.ts:876", "pc": [ 3717 ] }, { "teal": 3930, "source": "contracts/validatorRegistry.algo.ts:876", "pc": [ 3718 ] }, { "teal": 3931, "source": "contracts/validatorRegistry.algo.ts:876", "pc": [ 3719 ] }, { "teal": 3932, "source": "contracts/validatorRegistry.algo.ts:876", "pc": [ 3720, 3721, 3722 ] }, { "teal": 3933, "source": "contracts/validatorRegistry.algo.ts:876", "pc": [ 3723, 3724 ] }, { "teal": 3934, "source": "contracts/validatorRegistry.algo.ts:876", "pc": [ 3725 ] }, { "teal": 3935, "source": "contracts/validatorRegistry.algo.ts:876", "pc": [ 3726 ] }, { "teal": 3936, "source": "contracts/validatorRegistry.algo.ts:876", "pc": [ 3727 ] }, { "teal": 3940, "source": "contracts/validatorRegistry.algo.ts:876", "errorMessage": "node number out of allowable range", "pc": [ 3728 ] }, { "teal": 3944, "source": "contracts/validatorRegistry.algo.ts:878", "pc": [ 3729 ] }, { "teal": 3945, "source": "contracts/validatorRegistry.algo.ts:878", "pc": [ 3730, 3731 ] }, { "teal": 3950, "source": "contracts/validatorRegistry.algo.ts:878", "pc": [ 3732, 3733 ] }, { "teal": 3951, "source": "contracts/validatorRegistry.algo.ts:878", "pc": [ 3734 ] }, { "teal": 3952, "source": "contracts/validatorRegistry.algo.ts:878", "pc": [ 3735 ] }, { "teal": 3953, "source": "contracts/validatorRegistry.algo.ts:878", "pc": [ 3736, 3737, 3738 ] }, { "teal": 3957, "source": "contracts/validatorRegistry.algo.ts:879", "pc": [ 3739 ] }, { "teal": 3958, "source": "contracts/validatorRegistry.algo.ts:879", "pc": [ 3740, 3741 ] }, { "teal": 3963, "source": "contracts/validatorRegistry.algo.ts:879", "pc": [ 3742, 3743 ] }, { "teal": 3964, "source": "contracts/validatorRegistry.algo.ts:879", "pc": [ 3744, 3745 ] }, { "teal": 3965, "source": "contracts/validatorRegistry.algo.ts:879", "pc": [ 3746 ] }, { "teal": 3966, "source": "contracts/validatorRegistry.algo.ts:879", "pc": [ 3747, 3748, 3749 ] }, { "teal": 3971, "source": "contracts/validatorRegistry.algo.ts:880", "pc": [ 3750, 3751 ] }, { "teal": 3972, "source": "contracts/validatorRegistry.algo.ts:880", "pc": [ 3752 ] }, { "teal": 3973, "source": "contracts/validatorRegistry.algo.ts:880", "pc": [ 3753, 3754 ] }, { "teal": 3974, "source": "contracts/validatorRegistry.algo.ts:880", "pc": [ 3755 ] }, { "teal": 3975, "source": "contracts/validatorRegistry.algo.ts:880", "pc": [ 3756 ] }, { "teal": 3976, "source": "contracts/validatorRegistry.algo.ts:880", "pc": [ 3757 ] }, { "teal": 3977, "source": "contracts/validatorRegistry.algo.ts:880", "pc": [ 3758 ] }, { "teal": 3978, "source": "contracts/validatorRegistry.algo.ts:880", "pc": [ 3759 ] }, { "teal": 3979, "source": "contracts/validatorRegistry.algo.ts:880", "pc": [ 3760, 3761 ] }, { "teal": 3980, "source": "contracts/validatorRegistry.algo.ts:880", "pc": [ 3762 ] }, { "teal": 3981, "source": "contracts/validatorRegistry.algo.ts:880", "pc": [ 3763 ] }, { "teal": 3982, "source": "contracts/validatorRegistry.algo.ts:880", "pc": [ 3764 ] }, { "teal": 3983, "source": "contracts/validatorRegistry.algo.ts:880", "pc": [ 3765 ] }, { "teal": 3984, "source": "contracts/validatorRegistry.algo.ts:880", "pc": [ 3766 ] }, { "teal": 3985, "source": "contracts/validatorRegistry.algo.ts:880", "pc": [ 3767 ] }, { "teal": 3986, "source": "contracts/validatorRegistry.algo.ts:880", "pc": [ 3768, 3769 ] }, { "teal": 3987, "source": "contracts/validatorRegistry.algo.ts:880", "pc": [ 3770 ] }, { "teal": 3988, "source": "contracts/validatorRegistry.algo.ts:880", "pc": [ 3771, 3772, 3773 ] }, { "teal": 3993, "source": "contracts/validatorRegistry.algo.ts:881", "pc": [ 3774, 3775 ] }, { "teal": 3994, "source": "contracts/validatorRegistry.algo.ts:881", "pc": [ 3776 ] }, { "teal": 3995, "source": "contracts/validatorRegistry.algo.ts:881", "pc": [ 3777 ] }, { "teal": 3996, "source": "contracts/validatorRegistry.algo.ts:881", "pc": [ 3778, 3779 ] }, { "teal": 3997, "source": "contracts/validatorRegistry.algo.ts:881", "pc": [ 3780 ] }, { "teal": 4000, "source": "contracts/validatorRegistry.algo.ts:881", "errorMessage": "can't move to same node", "pc": [ 3781 ] }, { "teal": 4004, "source": "contracts/validatorRegistry.algo.ts:883", "pc": [ 3782, 3783 ] }, { "teal": 4005, "source": "contracts/validatorRegistry.algo.ts:883", "pc": [ 3784, 3785 ] }, { "teal": 4006, "source": "contracts/validatorRegistry.algo.ts:883", "pc": [ 3786 ] }, { "teal": 4007, "source": "contracts/validatorRegistry.algo.ts:883", "pc": [ 3787 ] }, { "teal": 4008, "source": "contracts/validatorRegistry.algo.ts:883", "pc": [ 3788 ] }, { "teal": 4009, "source": "contracts/validatorRegistry.algo.ts:883", "pc": [ 3789 ] }, { "teal": 4010, "source": "contracts/validatorRegistry.algo.ts:883", "pc": [ 3790 ] }, { "teal": 4011, "source": "contracts/validatorRegistry.algo.ts:883", "pc": [ 3791, 3792 ] }, { "teal": 4012, "source": "contracts/validatorRegistry.algo.ts:883", "pc": [ 3793 ] }, { "teal": 4013, "source": "contracts/validatorRegistry.algo.ts:883", "pc": [ 3794 ] }, { "teal": 4014, "source": "contracts/validatorRegistry.algo.ts:883", "pc": [ 3795 ] }, { "teal": 4015, "source": "contracts/validatorRegistry.algo.ts:883", "pc": [ 3796, 3797 ] }, { "teal": 4016, "source": "contracts/validatorRegistry.algo.ts:883", "pc": [ 3798 ] }, { "teal": 4017, "source": "contracts/validatorRegistry.algo.ts:883", "pc": [ 3799, 3800 ] }, { "teal": 4018, "source": "contracts/validatorRegistry.algo.ts:883", "pc": [ 3801 ] }, { "teal": 4019, "source": "contracts/validatorRegistry.algo.ts:883", "pc": [ 3802 ] }, { "teal": 4020, "source": "contracts/validatorRegistry.algo.ts:883", "pc": [ 3803, 3804 ] }, { "teal": 4021, "source": "contracts/validatorRegistry.algo.ts:883", "pc": [ 3805 ] }, { "teal": 4027, "source": "contracts/validatorRegistry.algo.ts:886", "pc": [ 3806 ] }, { "teal": 4028, "source": "contracts/validatorRegistry.algo.ts:886", "pc": [ 3807, 3808 ] }, { "teal": 4029, "source": "contracts/validatorRegistry.algo.ts:886", "pc": [ 3809, 3810 ] }, { "teal": 4030, "source": "contracts/validatorRegistry.algo.ts:886", "pc": [ 3811, 3812, 3813, 3814, 3815, 3816 ] }, { "teal": 4031, "source": "contracts/validatorRegistry.algo.ts:886", "pc": [ 3817, 3818 ] }, { "teal": 4035, "source": "contracts/validatorRegistry.algo.ts:887", "pc": [ 3819, 3820 ] }, { "teal": 4036, "source": "contracts/validatorRegistry.algo.ts:887", "pc": [ 3821, 3822 ] }, { "teal": 4039, "source": "contracts/validatorRegistry.algo.ts:886", "pc": [ 3823 ] }, { "teal": 4040, "source": "contracts/validatorRegistry.algo.ts:886", "pc": [ 3824, 3825 ] }, { "teal": 4043, "source": "contracts/validatorRegistry.algo.ts:886", "pc": [ 3826 ] }, { "teal": 4047, "source": "contracts/validatorRegistry.algo.ts:891", "pc": [ 3827, 3828 ] }, { "teal": 4048, "source": "contracts/validatorRegistry.algo.ts:891", "pc": [ 3829, 3830 ] }, { "teal": 4049, "source": "contracts/validatorRegistry.algo.ts:891", "pc": [ 3831, 3832 ] }, { "teal": 4050, "source": "contracts/validatorRegistry.algo.ts:891", "pc": [ 3833, 3834, 3835 ] }, { "teal": 4054, "source": "contracts/validatorRegistry.algo.ts:892", "pc": [ 3836 ] }, { "teal": 4061, "source": "contracts/validatorRegistry.algo.ts:879", "pc": [ 3837, 3838 ] }, { "teal": 4062, "source": "contracts/validatorRegistry.algo.ts:879", "pc": [ 3839 ] }, { "teal": 4063, "source": "contracts/validatorRegistry.algo.ts:879", "pc": [ 3840 ] }, { "teal": 4064, "source": "contracts/validatorRegistry.algo.ts:879", "pc": [ 3841, 3842 ] }, { "teal": 4065, "source": "contracts/validatorRegistry.algo.ts:879", "pc": [ 3843, 3844, 3845 ] }, { "teal": 4072, "source": "contracts/validatorRegistry.algo.ts:878", "pc": [ 3846, 3847 ] }, { "teal": 4073, "source": "contracts/validatorRegistry.algo.ts:878", "pc": [ 3848 ] }, { "teal": 4074, "source": "contracts/validatorRegistry.algo.ts:878", "pc": [ 3849 ] }, { "teal": 4075, "source": "contracts/validatorRegistry.algo.ts:878", "pc": [ 3850, 3851 ] }, { "teal": 4076, "source": "contracts/validatorRegistry.algo.ts:878", "pc": [ 3852, 3853, 3854 ] }, { "teal": 4080, "source": "contracts/validatorRegistry.algo.ts:896", "errorMessage": "couldn't find pool app id in nodes to move", "pc": [ 3855 ] }, { "teal": 4081, "source": "contracts/validatorRegistry.algo.ts:872", "pc": [ 3856 ] }, { "teal": 4086, "source": "contracts/validatorRegistry.algo.ts:910", "pc": [ 3857 ] }, { "teal": 4089, "source": "contracts/validatorRegistry.algo.ts:910", "pc": [ 3858, 3859, 3860 ] }, { "teal": 4090, "source": "contracts/validatorRegistry.algo.ts:910", "pc": [ 3861 ] }, { "teal": 4091, "source": "contracts/validatorRegistry.algo.ts:910", "pc": [ 3862 ] }, { "teal": 4092, "source": "contracts/validatorRegistry.algo.ts:910", "pc": [ 3863, 3864 ] }, { "teal": 4093, "source": "contracts/validatorRegistry.algo.ts:910", "pc": [ 3865 ] }, { "teal": 4096, "source": "contracts/validatorRegistry.algo.ts:910", "errorMessage": "argument 0 (receiver) for emptyTokenRewards must be a address", "pc": [ 3866 ] }, { "teal": 4099, "source": "contracts/validatorRegistry.algo.ts:910", "pc": [ 3867, 3868, 3869 ] }, { "teal": 4100, "source": "contracts/validatorRegistry.algo.ts:910", "pc": [ 3870 ] }, { "teal": 4103, "source": "contracts/validatorRegistry.algo.ts:910", "pc": [ 3871, 3872, 3873 ] }, { "teal": 4104, "source": "contracts/validatorRegistry.algo.ts:910", "pc": [ 3874 ] }, { "teal": 4105, "source": "contracts/validatorRegistry.algo.ts:910", "pc": [ 3875 ] }, { "teal": 4106, "source": "contracts/validatorRegistry.algo.ts:910", "pc": [ 3876 ] }, { "teal": 4107, "source": "contracts/validatorRegistry.algo.ts:910", "pc": [ 3877 ] }, { "teal": 4108, "source": "contracts/validatorRegistry.algo.ts:910", "pc": [ 3878 ] }, { "teal": 4122, "source": "contracts/validatorRegistry.algo.ts:910", "pc": [ 3879, 3880, 3881 ] }, { "teal": 4125, "source": "contracts/validatorRegistry.algo.ts:910", "pc": [ 3882 ] }, { "teal": 4126, "source": "contracts/validatorRegistry.algo.ts:910", "pc": [ 3883, 3884 ] }, { "teal": 4130, "source": "contracts/validatorRegistry.algo.ts:911", "pc": [ 3885, 3886 ] }, { "teal": 4131, "source": "contracts/validatorRegistry.algo.ts:911", "pc": [ 3887, 3888, 3889 ] }, { "teal": 4135, "source": "contracts/validatorRegistry.algo.ts:912", "pc": [ 3890, 3891 ] }, { "teal": 4136, "source": "contracts/validatorRegistry.algo.ts:912", "pc": [ 3892 ] }, { "teal": 4137, "source": "contracts/validatorRegistry.algo.ts:912", "pc": [ 3893 ] }, { "teal": 4138, "source": "contracts/validatorRegistry.algo.ts:912", "pc": [ 3894, 3895 ] }, { "teal": 4139, "source": "contracts/validatorRegistry.algo.ts:912", "pc": [ 3896 ] }, { "teal": 4140, "source": "contracts/validatorRegistry.algo.ts:912", "pc": [ 3897 ] }, { "teal": 4141, "source": "contracts/validatorRegistry.algo.ts:912", "pc": [ 3898, 3899 ] }, { "teal": 4142, "source": "contracts/validatorRegistry.algo.ts:912", "pc": [ 3900 ] }, { "teal": 4143, "source": "contracts/validatorRegistry.algo.ts:912", "pc": [ 3901 ] }, { "teal": 4144, "source": "contracts/validatorRegistry.algo.ts:912", "pc": [ 3902, 3903 ] }, { "teal": 4148, "source": "contracts/validatorRegistry.algo.ts:913", "pc": [ 3904, 3905 ] }, { "teal": 4149, "source": "contracts/validatorRegistry.algo.ts:913", "pc": [ 3906 ] }, { "teal": 4150, "source": "contracts/validatorRegistry.algo.ts:913", "pc": [ 3907 ] }, { "teal": 4151, "source": "contracts/validatorRegistry.algo.ts:913", "pc": [ 3908, 3909 ] }, { "teal": 4152, "source": "contracts/validatorRegistry.algo.ts:913", "pc": [ 3910 ] }, { "teal": 4153, "source": "contracts/validatorRegistry.algo.ts:913", "pc": [ 3911 ] }, { "teal": 4154, "source": "contracts/validatorRegistry.algo.ts:913", "pc": [ 3912, 3913 ] }, { "teal": 4155, "source": "contracts/validatorRegistry.algo.ts:913", "pc": [ 3914 ] }, { "teal": 4156, "source": "contracts/validatorRegistry.algo.ts:913", "pc": [ 3915 ] }, { "teal": 4157, "source": "contracts/validatorRegistry.algo.ts:913", "pc": [ 3916, 3917 ] }, { "teal": 4161, "source": "contracts/validatorRegistry.algo.ts:914", "pc": [ 3918, 3919 ] }, { "teal": 4162, "source": "contracts/validatorRegistry.algo.ts:914", "pc": [ 3920 ] }, { "teal": 4163, "source": "contracts/validatorRegistry.algo.ts:914", "pc": [ 3921 ] }, { "teal": 4166, "source": "contracts/validatorRegistry.algo.ts:914", "errorMessage": "this validator doesn't have a reward token defined", "pc": [ 3922 ] }, { "teal": 4170, "source": "contracts/validatorRegistry.algo.ts:915", "pc": [ 3923, 3924 ] }, { "teal": 4171, "source": "contracts/validatorRegistry.algo.ts:915", "pc": [ 3925 ] }, { "teal": 4172, "source": "contracts/validatorRegistry.algo.ts:915", "pc": [ 3926 ] }, { "teal": 4173, "source": "contracts/validatorRegistry.algo.ts:915", "pc": [ 3927, 3928 ] }, { "teal": 4174, "source": "contracts/validatorRegistry.algo.ts:915", "pc": [ 3929 ] }, { "teal": 4175, "source": "contracts/validatorRegistry.algo.ts:915", "pc": [ 3930 ] }, { "teal": 4176, "source": "contracts/validatorRegistry.algo.ts:915", "pc": [ 3931, 3932 ] }, { "teal": 4177, "source": "contracts/validatorRegistry.algo.ts:915", "pc": [ 3933 ] }, { "teal": 4178, "source": "contracts/validatorRegistry.algo.ts:915", "pc": [ 3934 ] }, { "teal": 4179, "source": "contracts/validatorRegistry.algo.ts:915", "pc": [ 3935, 3936 ] }, { "teal": 4184, "source": "contracts/validatorRegistry.algo.ts:918", "pc": [ 3937, 3938 ] }, { "teal": 4185, "source": "contracts/validatorRegistry.algo.ts:918", "pc": [ 3939, 3940 ] }, { "teal": 4186, "source": "contracts/validatorRegistry.algo.ts:918", "pc": [ 3941 ] }, { "teal": 4187, "source": "contracts/validatorRegistry.algo.ts:918", "pc": [ 3942, 3943 ] }, { "teal": 4188, "source": "contracts/validatorRegistry.algo.ts:918", "pc": [ 3944, 3945 ] }, { "teal": 4189, "source": "contracts/validatorRegistry.algo.ts:918", "pc": [ 3946 ] }, { "teal": 4190, "source": "contracts/validatorRegistry.algo.ts:918", "pc": [ 3947, 3948 ] }, { "teal": 4191, "source": "contracts/validatorRegistry.algo.ts:918", "pc": [ 3949 ] }, { "teal": 4192, "source": "contracts/validatorRegistry.algo.ts:917", "pc": [ 3950, 3951 ] }, { "teal": 4199, "source": "contracts/validatorRegistry.algo.ts:921", "pc": [ 3952 ] }, { "teal": 4200, "source": "contracts/validatorRegistry.algo.ts:921", "pc": [ 3953, 3954 ] }, { "teal": 4201, "source": "contracts/validatorRegistry.algo.ts:921", "pc": [ 3955, 3956 ] }, { "teal": 4202, "source": "contracts/validatorRegistry.algo.ts:921", "pc": [ 3957, 3958 ] }, { "teal": 4203, "source": "contracts/validatorRegistry.algo.ts:921", "pc": [ 3959, 3960 ] }, { "teal": 4207, "source": "contracts/validatorRegistry.algo.ts:922", "pc": [ 3961, 3962 ] }, { "teal": 4208, "source": "contracts/validatorRegistry.algo.ts:922", "pc": [ 3963, 3964 ] }, { "teal": 4212, "source": "contracts/validatorRegistry.algo.ts:923", "pc": [ 3965, 3966 ] }, { "teal": 4213, "source": "contracts/validatorRegistry.algo.ts:923", "pc": [ 3967, 3968 ] }, { "teal": 4214, "source": "contracts/validatorRegistry.algo.ts:923", "pc": [ 3969, 3970 ] }, { "teal": 4215, "source": "contracts/validatorRegistry.algo.ts:923", "pc": [ 3971 ] }, { "teal": 4216, "source": "contracts/validatorRegistry.algo.ts:923", "pc": [ 3972, 3973 ] }, { "teal": 4217, "source": "contracts/validatorRegistry.algo.ts:923", "pc": [ 3974, 3975 ] }, { "teal": 4218, "source": "contracts/validatorRegistry.algo.ts:923", "pc": [ 3976 ] }, { "teal": 4219, "source": "contracts/validatorRegistry.algo.ts:923", "pc": [ 3977, 3978 ] }, { "teal": 4222, "source": "contracts/validatorRegistry.algo.ts:921", "pc": [ 3979 ] }, { "teal": 4223, "source": "contracts/validatorRegistry.algo.ts:921", "pc": [ 3980, 3981 ] }, { "teal": 4226, "source": "contracts/validatorRegistry.algo.ts:921", "pc": [ 3982 ] }, { "teal": 4233, "source": "contracts/validatorRegistry.algo.ts:926", "pc": [ 3983, 3984 ] }, { "teal": 4234, "source": "contracts/validatorRegistry.algo.ts:926", "pc": [ 3985, 3986 ] }, { "teal": 4235, "source": "contracts/validatorRegistry.algo.ts:926", "pc": [ 3987 ] }, { "teal": 4236, "source": "contracts/validatorRegistry.algo.ts:926", "pc": [ 3988, 3989 ] }, { "teal": 4237, "source": "contracts/validatorRegistry.algo.ts:926", "pc": [ 3990, 3991 ] }, { "teal": 4238, "source": "contracts/validatorRegistry.algo.ts:926", "pc": [ 3992 ] }, { "teal": 4239, "source": "contracts/validatorRegistry.algo.ts:926", "pc": [ 3993, 3994 ] }, { "teal": 4240, "source": "contracts/validatorRegistry.algo.ts:926", "pc": [ 3995 ] }, { "teal": 4243, "source": "contracts/validatorRegistry.algo.ts:925", "errorMessage": "balance of remaining reward tokens should match the held back amount", "pc": [ 3996 ] }, { "teal": 4247, "source": "contracts/validatorRegistry.algo.ts:929", "pc": [ 3997, 3998 ] }, { "teal": 4250, "source": "contracts/validatorRegistry.algo.ts:910", "pc": [ 3999, 4000 ] }, { "teal": 4253, "source": "contracts/validatorRegistry.algo.ts:910", "pc": [ 4001, 4002 ] }, { "teal": 4254, "source": "contracts/validatorRegistry.algo.ts:910", "pc": [ 4003 ] }, { "teal": 4258, "source": "contracts/validatorRegistry.algo.ts:1021", "pc": [ 4004, 4005, 4006 ] }, { "teal": 4265, "source": "contracts/validatorRegistry.algo.ts:1023", "pc": [ 4007, 4008 ] }, { "teal": 4266, "source": "contracts/validatorRegistry.algo.ts:1023", "pc": [ 4009 ] }, { "teal": 4267, "source": "contracts/validatorRegistry.algo.ts:1023", "pc": [ 4010, 4011 ] }, { "teal": 4268, "source": "contracts/validatorRegistry.algo.ts:1023", "pc": [ 4012 ] }, { "teal": 4269, "source": "contracts/validatorRegistry.algo.ts:1023", "pc": [ 4013, 4014 ] }, { "teal": 4270, "source": "contracts/validatorRegistry.algo.ts:1023", "pc": [ 4015 ] }, { "teal": 4271, "source": "contracts/validatorRegistry.algo.ts:1023", "pc": [ 4016 ] }, { "teal": 4272, "source": "contracts/validatorRegistry.algo.ts:1023", "pc": [ 4017, 4018 ] }, { "teal": 4273, "source": "contracts/validatorRegistry.algo.ts:1023", "pc": [ 4019 ] }, { "teal": 4274, "source": "contracts/validatorRegistry.algo.ts:1023", "pc": [ 4020 ] }, { "teal": 4277, "source": "contracts/validatorRegistry.algo.ts:1022", "errorMessage": "can only be called by validator owner", "pc": [ 4021 ] }, { "teal": 4278, "source": "contracts/validatorRegistry.algo.ts:1021", "pc": [ 4022 ] }, { "teal": 4282, "source": "contracts/validatorRegistry.algo.ts:1028", "pc": [ 4023, 4024, 4025 ] }, { "teal": 4290, "source": "contracts/validatorRegistry.algo.ts:1030", "pc": [ 4026, 4027 ] }, { "teal": 4291, "source": "contracts/validatorRegistry.algo.ts:1030", "pc": [ 4028 ] }, { "teal": 4292, "source": "contracts/validatorRegistry.algo.ts:1030", "pc": [ 4029, 4030 ] }, { "teal": 4293, "source": "contracts/validatorRegistry.algo.ts:1030", "pc": [ 4031 ] }, { "teal": 4294, "source": "contracts/validatorRegistry.algo.ts:1030", "pc": [ 4032, 4033 ] }, { "teal": 4295, "source": "contracts/validatorRegistry.algo.ts:1030", "pc": [ 4034 ] }, { "teal": 4296, "source": "contracts/validatorRegistry.algo.ts:1030", "pc": [ 4035 ] }, { "teal": 4297, "source": "contracts/validatorRegistry.algo.ts:1030", "pc": [ 4036, 4037 ] }, { "teal": 4298, "source": "contracts/validatorRegistry.algo.ts:1030", "pc": [ 4038 ] }, { "teal": 4299, "source": "contracts/validatorRegistry.algo.ts:1030", "pc": [ 4039 ] }, { "teal": 4300, "source": "contracts/validatorRegistry.algo.ts:1030", "pc": [ 4040 ] }, { "teal": 4301, "source": "contracts/validatorRegistry.algo.ts:1030", "pc": [ 4041, 4042, 4043 ] }, { "teal": 4302, "source": "contracts/validatorRegistry.algo.ts:1031", "pc": [ 4044, 4045 ] }, { "teal": 4303, "source": "contracts/validatorRegistry.algo.ts:1031", "pc": [ 4046, 4047 ] }, { "teal": 4304, "source": "contracts/validatorRegistry.algo.ts:1031", "pc": [ 4048, 4049 ] }, { "teal": 4305, "source": "contracts/validatorRegistry.algo.ts:1031", "pc": [ 4050 ] }, { "teal": 4306, "source": "contracts/validatorRegistry.algo.ts:1031", "pc": [ 4051, 4052 ] }, { "teal": 4307, "source": "contracts/validatorRegistry.algo.ts:1031", "pc": [ 4053 ] }, { "teal": 4308, "source": "contracts/validatorRegistry.algo.ts:1031", "pc": [ 4054 ] }, { "teal": 4309, "source": "contracts/validatorRegistry.algo.ts:1031", "pc": [ 4055, 4056 ] }, { "teal": 4310, "source": "contracts/validatorRegistry.algo.ts:1031", "pc": [ 4057 ] }, { "teal": 4311, "source": "contracts/validatorRegistry.algo.ts:1031", "pc": [ 4058 ] }, { "teal": 4312, "source": "contracts/validatorRegistry.algo.ts:1030", "pc": [ 4059 ] }, { "teal": 4316, "source": "contracts/validatorRegistry.algo.ts:1029", "errorMessage": "can only be called by owner or manager of validator", "pc": [ 4060 ] }, { "teal": 4317, "source": "contracts/validatorRegistry.algo.ts:1028", "pc": [ 4061 ] }, { "teal": 4325, "source": "contracts/validatorRegistry.algo.ts:1041", "pc": [ 4062, 4063, 4064 ] }, { "teal": 4329, "source": "contracts/validatorRegistry.algo.ts:1042", "pc": [ 4065 ] }, { "teal": 4330, "source": "contracts/validatorRegistry.algo.ts:1042", "pc": [ 4066, 4067 ] }, { "teal": 4331, "source": "contracts/validatorRegistry.algo.ts:1042", "pc": [ 4068, 4069, 4070 ] }, { "teal": 4332, "source": "contracts/validatorRegistry.algo.ts:1042", "pc": [ 4071 ] }, { "teal": 4333, "source": "contracts/validatorRegistry.algo.ts:1042", "pc": [ 4072 ] }, { "teal": 4334, "source": "contracts/validatorRegistry.algo.ts:1042", "pc": [ 4073 ] }, { "teal": 4335, "source": "contracts/validatorRegistry.algo.ts:1042", "pc": [ 4074 ] }, { "teal": 4336, "source": "contracts/validatorRegistry.algo.ts:1042", "pc": [ 4075 ] }, { "teal": 4337, "source": "contracts/validatorRegistry.algo.ts:1042", "pc": [ 4076 ] }, { "teal": 4340, "source": "contracts/validatorRegistry.algo.ts:1042", "errorMessage": "the specified validator id isn't valid", "pc": [ 4077 ] }, { "teal": 4344, "source": "contracts/validatorRegistry.algo.ts:1043", "pc": [ 4078, 4079 ] }, { "teal": 4345, "source": "contracts/validatorRegistry.algo.ts:1043", "pc": [ 4080, 4081, 4082 ] }, { "teal": 4346, "source": "contracts/validatorRegistry.algo.ts:1043", "pc": [ 4083 ] }, { "teal": 4347, "source": "contracts/constants.algo.ts:30", "pc": [ 4084 ] }, { "teal": 4348, "source": "contracts/validatorRegistry.algo.ts:1043", "pc": [ 4085 ] }, { "teal": 4351, "source": "contracts/validatorRegistry.algo.ts:1043", "errorMessage": "pool id not in valid range", "pc": [ 4086 ] }, { "teal": 4358, "source": "contracts/validatorRegistry.algo.ts:1045", "pc": [ 4087, 4088 ] }, { "teal": 4359, "source": "contracts/validatorRegistry.algo.ts:1045", "pc": [ 4089, 4090, 4091 ] }, { "teal": 4360, "source": "contracts/validatorRegistry.algo.ts:1045", "pc": [ 4092 ] }, { "teal": 4361, "source": "contracts/validatorRegistry.algo.ts:1045", "pc": [ 4093 ] }, { "teal": 4362, "source": "contracts/validatorRegistry.algo.ts:1045", "pc": [ 4094 ] }, { "teal": 4363, "source": "contracts/validatorRegistry.algo.ts:1045", "pc": [ 4095 ] }, { "teal": 4364, "source": "contracts/validatorRegistry.algo.ts:1045", "pc": [ 4096, 4097, 4098 ] }, { "teal": 4365, "source": "contracts/validatorRegistry.algo.ts:1045", "pc": [ 4099, 4100 ] }, { "teal": 4366, "source": "contracts/validatorRegistry.algo.ts:1045", "pc": [ 4101, 4102, 4103 ] }, { "teal": 4367, "source": "contracts/validatorRegistry.algo.ts:1045", "pc": [ 4104 ] }, { "teal": 4368, "source": "contracts/validatorRegistry.algo.ts:1045", "pc": [ 4105, 4106 ] }, { "teal": 4369, "source": "contracts/validatorRegistry.algo.ts:1045", "pc": [ 4107, 4108 ] }, { "teal": 4370, "source": "contracts/validatorRegistry.algo.ts:1045", "pc": [ 4109 ] }, { "teal": 4371, "source": "contracts/validatorRegistry.algo.ts:1045", "pc": [ 4110, 4111 ] }, { "teal": 4372, "source": "contracts/validatorRegistry.algo.ts:1045", "pc": [ 4112, 4113, 4114 ] }, { "teal": 4373, "source": "contracts/validatorRegistry.algo.ts:1045", "pc": [ 4115 ] }, { "teal": 4374, "source": "contracts/validatorRegistry.algo.ts:1045", "pc": [ 4116 ] }, { "teal": 4375, "source": "contracts/validatorRegistry.algo.ts:1045", "pc": [ 4117 ] }, { "teal": 4376, "source": "contracts/validatorRegistry.algo.ts:1045", "pc": [ 4118, 4119 ] }, { "teal": 4377, "source": "contracts/validatorRegistry.algo.ts:1045", "pc": [ 4120 ] }, { "teal": 4378, "source": "contracts/validatorRegistry.algo.ts:1045", "pc": [ 4121 ] }, { "teal": 4379, "source": "contracts/validatorRegistry.algo.ts:1045", "pc": [ 4122 ] }, { "teal": 4380, "source": "contracts/validatorRegistry.algo.ts:1045", "pc": [ 4123 ] }, { "teal": 4384, "source": "contracts/validatorRegistry.algo.ts:1044", "errorMessage": "pool id outside of range of pools created for this validator", "pc": [ 4124 ] }, { "teal": 4391, "source": "contracts/validatorRegistry.algo.ts:1051", "pc": [ 4125, 4126 ] }, { "teal": 4392, "source": "contracts/validatorRegistry.algo.ts:1051", "pc": [ 4127, 4128, 4129 ] }, { "teal": 4393, "source": "contracts/validatorRegistry.algo.ts:1051", "pc": [ 4130 ] }, { "teal": 4394, "source": "contracts/validatorRegistry.algo.ts:1051", "pc": [ 4131, 4132 ] }, { "teal": 4395, "source": "contracts/validatorRegistry.algo.ts:1051", "pc": [ 4133, 4134 ] }, { "teal": 4396, "source": "contracts/validatorRegistry.algo.ts:1051", "pc": [ 4135, 4136, 4137 ] }, { "teal": 4397, "source": "contracts/validatorRegistry.algo.ts:1051", "pc": [ 4138 ] }, { "teal": 4398, "source": "contracts/validatorRegistry.algo.ts:1051", "pc": [ 4139 ] }, { "teal": 4399, "source": "contracts/validatorRegistry.algo.ts:1051", "pc": [ 4140 ] }, { "teal": 4400, "source": "contracts/validatorRegistry.algo.ts:1051", "pc": [ 4141, 4142 ] }, { "teal": 4401, "source": "contracts/validatorRegistry.algo.ts:1051", "pc": [ 4143 ] }, { "teal": 4402, "source": "contracts/validatorRegistry.algo.ts:1051", "pc": [ 4144 ] }, { "teal": 4403, "source": "contracts/validatorRegistry.algo.ts:1051", "pc": [ 4145 ] }, { "teal": 4404, "source": "contracts/validatorRegistry.algo.ts:1051", "pc": [ 4146 ] }, { "teal": 4405, "source": "contracts/validatorRegistry.algo.ts:1051", "pc": [ 4147 ] }, { "teal": 4406, "source": "contracts/validatorRegistry.algo.ts:1051", "pc": [ 4148 ] }, { "teal": 4407, "source": "contracts/validatorRegistry.algo.ts:1051", "pc": [ 4149, 4150 ] }, { "teal": 4408, "source": "contracts/validatorRegistry.algo.ts:1051", "pc": [ 4151, 4152, 4153 ] }, { "teal": 4409, "source": "contracts/validatorRegistry.algo.ts:1051", "pc": [ 4154 ] }, { "teal": 4410, "source": "contracts/validatorRegistry.algo.ts:1051", "pc": [ 4155 ] }, { "teal": 4411, "source": "contracts/validatorRegistry.algo.ts:1051", "pc": [ 4156 ] }, { "teal": 4412, "source": "contracts/validatorRegistry.algo.ts:1051", "pc": [ 4157, 4158 ] }, { "teal": 4413, "source": "contracts/validatorRegistry.algo.ts:1051", "pc": [ 4159 ] }, { "teal": 4414, "source": "contracts/validatorRegistry.algo.ts:1051", "pc": [ 4160 ] }, { "teal": 4415, "source": "contracts/validatorRegistry.algo.ts:1051", "pc": [ 4161 ] }, { "teal": 4418, "source": "contracts/validatorRegistry.algo.ts:1050", "errorMessage": "The passed in app id doesn't match the passed in ids", "pc": [ 4162 ] }, { "teal": 4422, "source": "contracts/validatorRegistry.algo.ts:1055", "pc": [ 4163, 4164 ] }, { "teal": 4423, "source": "contracts/validatorRegistry.algo.ts:1055", "pc": [ 4165, 4166 ] }, { "teal": 4424, "source": "contracts/validatorRegistry.algo.ts:1055", "pc": [ 4167, 4168, 4169 ] }, { "teal": 4425, "source": "contracts/validatorRegistry.algo.ts:1055", "pc": [ 4170 ] }, { "teal": 4426, "source": "contracts/validatorRegistry.algo.ts:1055", "pc": [ 4171, 4172 ] }, { "teal": 4427, "source": "contracts/validatorRegistry.algo.ts:1055", "pc": [ 4173 ] }, { "teal": 4428, "source": "contracts/validatorRegistry.algo.ts:1055", "pc": [ 4174 ] }, { "teal": 4429, "source": "contracts/validatorRegistry.algo.ts:1055", "pc": [ 4175 ] }, { "teal": 4433, "source": "contracts/validatorRegistry.algo.ts:1057", "pc": [ 4176, 4177 ] }, { "teal": 4434, "source": "contracts/validatorRegistry.algo.ts:1057", "pc": [ 4178, 4179, 4180 ] }, { "teal": 4435, "source": "contracts/validatorRegistry.algo.ts:1057", "pc": [ 4181 ] }, { "teal": 4436, "source": "contracts/validatorRegistry.algo.ts:1057", "pc": [ 4182, 4183 ] }, { "teal": 4437, "source": "contracts/validatorRegistry.algo.ts:1057", "pc": [ 4184, 4185, 4186 ] }, { "teal": 4438, "source": "contracts/validatorRegistry.algo.ts:1057", "pc": [ 4187 ] }, { "teal": 4439, "source": "contracts/validatorRegistry.algo.ts:1057", "pc": [ 4188, 4189, 4190, 4191, 4192, 4193, 4194, 4195, 4196, 4197, 4198, 4199, 4200 ] }, { "teal": 4440, "source": "contracts/validatorRegistry.algo.ts:1057", "pc": [ 4201 ] }, { "teal": 4443, "source": "contracts/validatorRegistry.algo.ts:1057", "errorMessage": "global state value does not exist: AppID.fromUint64(poolKey.poolAppId).globalState('validatorId')", "pc": [ 4202 ] }, { "teal": 4444, "source": "contracts/validatorRegistry.algo.ts:1057", "pc": [ 4203 ] }, { "teal": 4445, "source": "contracts/validatorRegistry.algo.ts:1057", "pc": [ 4204 ] }, { "teal": 4449, "source": "contracts/validatorRegistry.algo.ts:1058", "pc": [ 4205, 4206 ] }, { "teal": 4450, "source": "contracts/validatorRegistry.algo.ts:1058", "pc": [ 4207, 4208, 4209 ] }, { "teal": 4451, "source": "contracts/validatorRegistry.algo.ts:1058", "pc": [ 4210 ] }, { "teal": 4452, "source": "contracts/validatorRegistry.algo.ts:1058", "pc": [ 4211, 4212 ] }, { "teal": 4453, "source": "contracts/validatorRegistry.algo.ts:1058", "pc": [ 4213, 4214, 4215 ] }, { "teal": 4454, "source": "contracts/validatorRegistry.algo.ts:1058", "pc": [ 4216 ] }, { "teal": 4455, "source": "contracts/validatorRegistry.algo.ts:1058", "pc": [ 4217, 4218, 4219, 4220, 4221, 4222, 4223, 4224 ] }, { "teal": 4456, "source": "contracts/validatorRegistry.algo.ts:1058", "pc": [ 4225 ] }, { "teal": 4459, "source": "contracts/validatorRegistry.algo.ts:1058", "errorMessage": "global state value does not exist: AppID.fromUint64(poolKey.poolAppId).globalState('poolId')", "pc": [ 4226 ] }, { "teal": 4460, "source": "contracts/validatorRegistry.algo.ts:1058", "pc": [ 4227 ] }, { "teal": 4461, "source": "contracts/validatorRegistry.algo.ts:1058", "pc": [ 4228 ] }, { "teal": 4462, "source": "contracts/validatorRegistry.algo.ts:1041", "pc": [ 4229 ] }, { "teal": 4471, "source": "contracts/validatorRegistry.algo.ts:1067", "pc": [ 4230, 4231, 4232 ] }, { "teal": 4474, "source": "contracts/validatorRegistry.algo.ts:1067", "pc": [ 4233 ] }, { "teal": 4475, "source": "contracts/validatorRegistry.algo.ts:1067", "pc": [ 4234 ] }, { "teal": 4479, "source": "contracts/validatorRegistry.algo.ts:1068", "pc": [ 4235 ] }, { "teal": 4480, "source": "contracts/validatorRegistry.algo.ts:1068", "pc": [ 4236, 4237 ] }, { "teal": 4481, "source": "contracts/validatorRegistry.algo.ts:1068", "pc": [ 4238 ] }, { "teal": 4482, "source": "contracts/validatorRegistry.algo.ts:1068", "pc": [ 4239 ] }, { "teal": 4483, "source": "contracts/validatorRegistry.algo.ts:1068", "pc": [ 4240, 4241 ] }, { "teal": 4488, "source": "contracts/validatorRegistry.algo.ts:1069", "pc": [ 4242, 4243 ] }, { "teal": 4489, "source": "contracts/validatorRegistry.algo.ts:1069", "pc": [ 4244 ] }, { "teal": 4490, "source": "contracts/validatorRegistry.algo.ts:1068", "pc": [ 4245 ] }, { "teal": 4491, "source": "contracts/validatorRegistry.algo.ts:1068", "pc": [ 4246, 4247 ] }, { "teal": 4492, "source": "contracts/validatorRegistry.algo.ts:1068", "pc": [ 4248 ] }, { "teal": 4493, "source": "contracts/validatorRegistry.algo.ts:1068", "pc": [ 4249 ] }, { "teal": 4494, "source": "contracts/validatorRegistry.algo.ts:1068", "pc": [ 4250, 4251 ] }, { "teal": 4495, "source": "contracts/validatorRegistry.algo.ts:1068", "pc": [ 4252 ] }, { "teal": 4496, "source": "contracts/validatorRegistry.algo.ts:1069", "pc": [ 4253 ] }, { "teal": 4497, "source": "contracts/validatorRegistry.algo.ts:1069", "pc": [ 4254 ] }, { "teal": 4498, "source": "contracts/validatorRegistry.algo.ts:1069", "pc": [ 4255 ] }, { "teal": 4499, "source": "contracts/validatorRegistry.algo.ts:1069", "pc": [ 4256, 4257, 4258 ] }, { "teal": 4504, "source": "contracts/validatorRegistry.algo.ts:1072", "pc": [ 4259, 4260 ] }, { "teal": 4505, "source": "contracts/validatorRegistry.algo.ts:1072", "pc": [ 4261 ] }, { "teal": 4506, "source": "contracts/validatorRegistry.algo.ts:1068", "pc": [ 4262 ] }, { "teal": 4507, "source": "contracts/validatorRegistry.algo.ts:1068", "pc": [ 4263, 4264 ] }, { "teal": 4508, "source": "contracts/validatorRegistry.algo.ts:1068", "pc": [ 4265 ] }, { "teal": 4509, "source": "contracts/validatorRegistry.algo.ts:1068", "pc": [ 4266 ] }, { "teal": 4510, "source": "contracts/validatorRegistry.algo.ts:1068", "pc": [ 4267, 4268 ] }, { "teal": 4511, "source": "contracts/validatorRegistry.algo.ts:1068", "pc": [ 4269 ] }, { "teal": 4512, "source": "contracts/validatorRegistry.algo.ts:1072", "pc": [ 4270 ] }, { "teal": 4513, "source": "contracts/validatorRegistry.algo.ts:1072", "pc": [ 4271, 4272 ] }, { "teal": 4514, "source": "contracts/validatorRegistry.algo.ts:1072", "pc": [ 4273 ] }, { "teal": 4517, "source": "contracts/validatorRegistry.algo.ts:1072", "errorMessage": "global state value does not exist: AppID.fromUint64(validatorConfig.nfdForInfo).globalState('i.owner.a')", "pc": [ 4274 ] }, { "teal": 4518, "source": "contracts/validatorRegistry.algo.ts:1072", "pc": [ 4275, 4276 ] }, { "teal": 4523, "source": "contracts/validatorRegistry.algo.ts:1074", "pc": [ 4277 ] }, { "teal": 4524, "source": "contracts/validatorRegistry.algo.ts:1074", "pc": [ 4278, 4279 ] }, { "teal": 4525, "source": "contracts/validatorRegistry.algo.ts:1068", "pc": [ 4280 ] }, { "teal": 4526, "source": "contracts/validatorRegistry.algo.ts:1068", "pc": [ 4281, 4282 ] }, { "teal": 4527, "source": "contracts/validatorRegistry.algo.ts:1068", "pc": [ 4283 ] }, { "teal": 4528, "source": "contracts/validatorRegistry.algo.ts:1068", "pc": [ 4284 ] }, { "teal": 4529, "source": "contracts/validatorRegistry.algo.ts:1068", "pc": [ 4285, 4286 ] }, { "teal": 4530, "source": "contracts/validatorRegistry.algo.ts:1068", "pc": [ 4287 ] }, { "teal": 4531, "source": "contracts/validatorRegistry.algo.ts:1074", "pc": [ 4288, 4289 ] }, { "teal": 4532, "source": "contracts/validatorRegistry.algo.ts:1074", "pc": [ 4290 ] }, { "teal": 4533, "source": "contracts/validatorRegistry.algo.ts:1074", "pc": [ 4291 ] }, { "teal": 4534, "source": "contracts/validatorRegistry.algo.ts:1074", "pc": [ 4292, 4293, 4294 ] }, { "teal": 4535, "source": "contracts/validatorRegistry.algo.ts:1074", "pc": [ 4295, 4296 ] }, { "teal": 4536, "source": "contracts/validatorRegistry.algo.ts:1074", "pc": [ 4297, 4298 ] }, { "teal": 4537, "source": "contracts/validatorRegistry.algo.ts:1068", "pc": [ 4299 ] }, { "teal": 4538, "source": "contracts/validatorRegistry.algo.ts:1068", "pc": [ 4300, 4301 ] }, { "teal": 4539, "source": "contracts/validatorRegistry.algo.ts:1068", "pc": [ 4302 ] }, { "teal": 4540, "source": "contracts/validatorRegistry.algo.ts:1068", "pc": [ 4303 ] }, { "teal": 4541, "source": "contracts/validatorRegistry.algo.ts:1068", "pc": [ 4304, 4305 ] }, { "teal": 4542, "source": "contracts/validatorRegistry.algo.ts:1068", "pc": [ 4306 ] }, { "teal": 4543, "source": "contracts/validatorRegistry.algo.ts:1074", "pc": [ 4307, 4308 ] }, { "teal": 4544, "source": "contracts/validatorRegistry.algo.ts:1074", "pc": [ 4309 ] }, { "teal": 4545, "source": "contracts/validatorRegistry.algo.ts:1074", "pc": [ 4310 ] }, { "teal": 4548, "source": "contracts/validatorRegistry.algo.ts:1074", "pc": [ 4311, 4312, 4313 ] }, { "teal": 4553, "source": "contracts/validatorRegistry.algo.ts:1076", "pc": [ 4314, 4315 ] }, { "teal": 4554, "source": "contracts/validatorRegistry.algo.ts:1076", "pc": [ 4316, 4317 ] }, { "teal": 4555, "source": "contracts/validatorRegistry.algo.ts:1076", "pc": [ 4318 ] }, { "teal": 4556, "source": "contracts/validatorRegistry.algo.ts:1076", "pc": [ 4319, 4320 ] }, { "teal": 4557, "source": "contracts/validatorRegistry.algo.ts:1076", "pc": [ 4321 ] }, { "teal": 4558, "source": "contracts/validatorRegistry.algo.ts:1076", "pc": [ 4322 ] }, { "teal": 4559, "source": "contracts/validatorRegistry.algo.ts:1076", "pc": [ 4323, 4324 ] }, { "teal": 4560, "source": "contracts/validatorRegistry.algo.ts:1076", "pc": [ 4325 ] }, { "teal": 4565, "source": "contracts/validatorRegistry.algo.ts:1067", "pc": [ 4326 ] }, { "teal": 4569, "source": "contracts/validatorRegistry.algo.ts:1081", "pc": [ 4327, 4328, 4329 ] }, { "teal": 4573, "source": "contracts/validatorRegistry.algo.ts:1083", "pc": [ 4330, 4331 ] }, { "teal": 4574, "source": "contracts/validatorRegistry.algo.ts:1083", "pc": [ 4332, 4333, 4334 ] }, { "teal": 4575, "source": "contracts/validatorRegistry.algo.ts:1083", "pc": [ 4335, 4336 ] }, { "teal": 4576, "source": "contracts/validatorRegistry.algo.ts:1083", "pc": [ 4337 ] }, { "teal": 4577, "source": "contracts/validatorRegistry.algo.ts:1083", "pc": [ 4338 ] }, { "teal": 4581, "source": "contracts/validatorRegistry.algo.ts:1084", "pc": [ 4339, 4340 ] }, { "teal": 4582, "source": "contracts/validatorRegistry.algo.ts:1084", "pc": [ 4341, 4342, 4343 ] }, { "teal": 4583, "source": "contracts/validatorRegistry.algo.ts:1084", "pc": [ 4344, 4345 ] }, { "teal": 4584, "source": "contracts/validatorRegistry.algo.ts:1084", "pc": [ 4346 ] }, { "teal": 4585, "source": "contracts/validatorRegistry.algo.ts:1084", "pc": [ 4347 ] }, { "teal": 4589, "source": "contracts/validatorRegistry.algo.ts:1085", "pc": [ 4348, 4349 ] }, { "teal": 4590, "source": "contracts/validatorRegistry.algo.ts:1085", "pc": [ 4350, 4351 ] }, { "teal": 4591, "source": "contracts/validatorRegistry.algo.ts:1085", "pc": [ 4352, 4353, 4354 ] }, { "teal": 4592, "source": "contracts/validatorRegistry.algo.ts:1085", "pc": [ 4355 ] }, { "teal": 4595, "source": "contracts/validatorRegistry.algo.ts:1085", "errorMessage": "sender must be owner to add new validator", "pc": [ 4356 ] }, { "teal": 4602, "source": "contracts/validatorRegistry.algo.ts:1088", "pc": [ 4357, 4358 ] }, { "teal": 4603, "source": "contracts/validatorRegistry.algo.ts:1088", "pc": [ 4359, 4360, 4361 ] }, { "teal": 4604, "source": "contracts/validatorRegistry.algo.ts:1088", "pc": [ 4362 ] }, { "teal": 4605, "source": "contracts/validatorRegistry.algo.ts:1088", "pc": [ 4363 ] }, { "teal": 4606, "source": "contracts/validatorRegistry.algo.ts:1088", "pc": [ 4364 ] }, { "teal": 4607, "source": "contracts/validatorRegistry.algo.ts:1088", "pc": [ 4365 ] }, { "teal": 4608, "source": "contracts/validatorRegistry.algo.ts:1088", "pc": [ 4366, 4367, 4368 ] }, { "teal": 4609, "source": "contracts/validatorRegistry.algo.ts:1088", "pc": [ 4369, 4370 ] }, { "teal": 4610, "source": "contracts/validatorRegistry.algo.ts:1088", "pc": [ 4371, 4372, 4373 ] }, { "teal": 4611, "source": "contracts/validatorRegistry.algo.ts:1088", "pc": [ 4374 ] }, { "teal": 4612, "source": "contracts/validatorRegistry.algo.ts:1088", "pc": [ 4375, 4376 ] }, { "teal": 4613, "source": "contracts/validatorRegistry.algo.ts:1088", "pc": [ 4377 ] }, { "teal": 4614, "source": "contracts/validatorRegistry.algo.ts:1088", "pc": [ 4378 ] }, { "teal": 4618, "source": "contracts/validatorRegistry.algo.ts:1087", "errorMessage": "gating type not valid", "pc": [ 4379 ] }, { "teal": 4625, "source": "contracts/validatorRegistry.algo.ts:1092", "pc": [ 4380, 4381 ] }, { "teal": 4626, "source": "contracts/validatorRegistry.algo.ts:1092", "pc": [ 4382, 4383, 4384 ] }, { "teal": 4627, "source": "contracts/validatorRegistry.algo.ts:1092", "pc": [ 4385 ] }, { "teal": 4628, "source": "contracts/validatorRegistry.algo.ts:1092", "pc": [ 4386 ] }, { "teal": 4629, "source": "contracts/validatorRegistry.algo.ts:1092", "pc": [ 4387 ] }, { "teal": 4630, "source": "contracts/validatorRegistry.algo.ts:1092", "pc": [ 4388 ] }, { "teal": 4631, "source": "contracts/validatorRegistry.algo.ts:1092", "pc": [ 4389, 4390, 4391 ] }, { "teal": 4632, "source": "contracts/validatorRegistry.algo.ts:1092", "pc": [ 4392, 4393 ] }, { "teal": 4633, "source": "contracts/validatorRegistry.algo.ts:1092", "pc": [ 4394, 4395, 4396 ] }, { "teal": 4634, "source": "contracts/validatorRegistry.algo.ts:1092", "pc": [ 4397 ] }, { "teal": 4635, "source": "contracts/validatorRegistry.algo.ts:1092", "pc": [ 4398, 4399 ] }, { "teal": 4636, "source": "contracts/validatorRegistry.algo.ts:1092", "pc": [ 4400 ] }, { "teal": 4637, "source": "contracts/validatorRegistry.algo.ts:1092", "pc": [ 4401 ] }, { "teal": 4641, "source": "contracts/validatorRegistry.algo.ts:1091", "errorMessage": "epoch length not in allowable range", "pc": [ 4402 ] }, { "teal": 4648, "source": "contracts/validatorRegistry.algo.ts:1096", "pc": [ 4403, 4404 ] }, { "teal": 4649, "source": "contracts/validatorRegistry.algo.ts:1096", "pc": [ 4405, 4406, 4407 ] }, { "teal": 4650, "source": "contracts/validatorRegistry.algo.ts:1096", "pc": [ 4408 ] }, { "teal": 4651, "source": "contracts/validatorRegistry.algo.ts:1096", "pc": [ 4409 ] }, { "teal": 4652, "source": "contracts/validatorRegistry.algo.ts:1096", "pc": [ 4410 ] }, { "teal": 4653, "source": "contracts/validatorRegistry.algo.ts:1096", "pc": [ 4411 ] }, { "teal": 4654, "source": "contracts/validatorRegistry.algo.ts:1096", "pc": [ 4412, 4413, 4414 ] }, { "teal": 4655, "source": "contracts/validatorRegistry.algo.ts:1096", "pc": [ 4415, 4416 ] }, { "teal": 4656, "source": "contracts/validatorRegistry.algo.ts:1096", "pc": [ 4417, 4418, 4419 ] }, { "teal": 4657, "source": "contracts/validatorRegistry.algo.ts:1096", "pc": [ 4420 ] }, { "teal": 4658, "source": "contracts/validatorRegistry.algo.ts:1096", "pc": [ 4421, 4422 ] }, { "teal": 4659, "source": "contracts/validatorRegistry.algo.ts:1096", "pc": [ 4423 ] }, { "teal": 4660, "source": "contracts/validatorRegistry.algo.ts:1096", "pc": [ 4424 ] }, { "teal": 4664, "source": "contracts/validatorRegistry.algo.ts:1095", "errorMessage": "commission percentage not valid", "pc": [ 4425 ] }, { "teal": 4669, "source": "contracts/validatorRegistry.algo.ts:1099", "pc": [ 4426, 4427 ] }, { "teal": 4670, "source": "contracts/validatorRegistry.algo.ts:1099", "pc": [ 4428, 4429, 4430 ] }, { "teal": 4671, "source": "contracts/validatorRegistry.algo.ts:1099", "pc": [ 4431 ] }, { "teal": 4672, "source": "contracts/validatorRegistry.algo.ts:1099", "pc": [ 4432 ] }, { "teal": 4673, "source": "contracts/validatorRegistry.algo.ts:1099", "pc": [ 4433 ] }, { "teal": 4674, "source": "contracts/validatorRegistry.algo.ts:1099", "pc": [ 4434, 4435, 4436 ] }, { "teal": 4682, "source": "contracts/validatorRegistry.algo.ts:1101", "pc": [ 4437, 4438 ] }, { "teal": 4683, "source": "contracts/validatorRegistry.algo.ts:1101", "pc": [ 4439, 4440, 4441 ] }, { "teal": 4684, "source": "contracts/validatorRegistry.algo.ts:1101", "pc": [ 4442, 4443 ] }, { "teal": 4685, "source": "contracts/validatorRegistry.algo.ts:1101", "pc": [ 4444 ] }, { "teal": 4688, "source": "contracts/validatorRegistry.algo.ts:1100", "errorMessage": "validatorCommissionAddress must be set if percent to validator is not 0", "pc": [ 4445 ] }, { "teal": 4693, "source": "contracts/validatorRegistry.algo.ts:1105", "pc": [ 4446, 4447 ] }, { "teal": 4694, "source": "contracts/validatorRegistry.algo.ts:1105", "pc": [ 4448, 4449, 4450 ] }, { "teal": 4695, "source": "contracts/validatorRegistry.algo.ts:1105", "pc": [ 4451 ] }, { "teal": 4696, "source": "contracts/validatorRegistry.algo.ts:1105", "pc": [ 4452, 4453 ] }, { "teal": 4697, "source": "contracts/validatorRegistry.algo.ts:1105", "pc": [ 4454 ] }, { "teal": 4700, "source": "contracts/validatorRegistry.algo.ts:1105", "errorMessage": "staking pool must have minimum entry of 1 algo", "pc": [ 4455 ] }, { "teal": 4707, "source": "contracts/validatorRegistry.algo.ts:1108", "pc": [ 4456, 4457 ] }, { "teal": 4708, "source": "contracts/validatorRegistry.algo.ts:1108", "pc": [ 4458, 4459, 4460 ] }, { "teal": 4709, "source": "contracts/validatorRegistry.algo.ts:1108", "pc": [ 4461 ] }, { "teal": 4710, "source": "contracts/validatorRegistry.algo.ts:1108", "pc": [ 4462 ] }, { "teal": 4711, "source": "contracts/validatorRegistry.algo.ts:1108", "pc": [ 4463 ] }, { "teal": 4712, "source": "contracts/validatorRegistry.algo.ts:1108", "pc": [ 4464 ] }, { "teal": 4713, "source": "contracts/validatorRegistry.algo.ts:1108", "pc": [ 4465, 4466, 4467 ] }, { "teal": 4714, "source": "contracts/validatorRegistry.algo.ts:1108", "pc": [ 4468, 4469 ] }, { "teal": 4715, "source": "contracts/validatorRegistry.algo.ts:1108", "pc": [ 4470, 4471, 4472 ] }, { "teal": 4716, "source": "contracts/validatorRegistry.algo.ts:1108", "pc": [ 4473 ] }, { "teal": 4717, "source": "contracts/validatorRegistry.algo.ts:1108", "pc": [ 4474, 4475 ] }, { "teal": 4718, "source": "contracts/validatorRegistry.algo.ts:1108", "pc": [ 4476 ] }, { "teal": 4719, "source": "contracts/validatorRegistry.algo.ts:1108", "pc": [ 4477 ] }, { "teal": 4723, "source": "contracts/validatorRegistry.algo.ts:1107", "errorMessage": "number of pools per node must be be between 1 and the maximum allowed number", "pc": [ 4478 ] }, { "teal": 4728, "source": "contracts/validatorRegistry.algo.ts:1111", "pc": [ 4479, 4480 ] }, { "teal": 4729, "source": "contracts/validatorRegistry.algo.ts:1111", "pc": [ 4481, 4482, 4483 ] }, { "teal": 4730, "source": "contracts/validatorRegistry.algo.ts:1111", "pc": [ 4484 ] }, { "teal": 4731, "source": "contracts/validatorRegistry.algo.ts:1111", "pc": [ 4485 ] }, { "teal": 4732, "source": "contracts/validatorRegistry.algo.ts:1111", "pc": [ 4486 ] }, { "teal": 4733, "source": "contracts/validatorRegistry.algo.ts:1111", "pc": [ 4487, 4488, 4489 ] }, { "teal": 4738, "source": "contracts/validatorRegistry.algo.ts:1112", "pc": [ 4490, 4491 ] }, { "teal": 4739, "source": "contracts/validatorRegistry.algo.ts:1112", "pc": [ 4492, 4493, 4494 ] }, { "teal": 4740, "source": "contracts/validatorRegistry.algo.ts:1112", "pc": [ 4495 ] }, { "teal": 4741, "source": "contracts/validatorRegistry.algo.ts:1112", "pc": [ 4496, 4497 ] }, { "teal": 4742, "source": "contracts/validatorRegistry.algo.ts:1112", "pc": [ 4498 ] }, { "teal": 4745, "source": "contracts/validatorRegistry.algo.ts:1112", "errorMessage": "sunsettingOn must be later than now if set", "pc": [ 4499 ] }, { "teal": 4748, "source": "contracts/validatorRegistry.algo.ts:1081", "pc": [ 4500 ] }, { "teal": 4762, "source": "contracts/validatorRegistry.algo.ts:1127", "pc": [ 4501, 4502, 4503 ] }, { "teal": 4765, "source": "contracts/validatorRegistry.algo.ts:1127", "pc": [ 4504 ] }, { "teal": 4766, "source": "contracts/validatorRegistry.algo.ts:1127", "pc": [ 4505, 4506 ] }, { "teal": 4770, "source": "contracts/validatorRegistry.algo.ts:1134", "pc": [ 4507, 4508 ] }, { "teal": 4771, "source": "contracts/validatorRegistry.algo.ts:1134", "pc": [ 4509, 4510 ] }, { "teal": 4772, "source": "contracts/validatorRegistry.algo.ts:1134", "pc": [ 4511, 4512, 4513 ] }, { "teal": 4773, "source": "contracts/validatorRegistry.algo.ts:1134", "pc": [ 4514 ] }, { "teal": 4774, "source": "contracts/validatorRegistry.algo.ts:1134", "pc": [ 4515 ] }, { "teal": 4775, "source": "contracts/validatorRegistry.algo.ts:1134", "pc": [ 4516 ] }, { "teal": 4776, "source": "contracts/validatorRegistry.algo.ts:1134", "pc": [ 4517, 4518 ] }, { "teal": 4777, "source": "contracts/validatorRegistry.algo.ts:1134", "pc": [ 4519 ] }, { "teal": 4778, "source": "contracts/validatorRegistry.algo.ts:1134", "pc": [ 4520 ] }, { "teal": 4779, "source": "contracts/validatorRegistry.algo.ts:1134", "pc": [ 4521 ] }, { "teal": 4780, "source": "contracts/validatorRegistry.algo.ts:1134", "pc": [ 4522 ] }, { "teal": 4781, "source": "contracts/validatorRegistry.algo.ts:1134", "pc": [ 4523 ] }, { "teal": 4782, "source": "contracts/validatorRegistry.algo.ts:1134", "pc": [ 4524 ] }, { "teal": 4783, "source": "contracts/validatorRegistry.algo.ts:1134", "pc": [ 4525, 4526 ] }, { "teal": 4784, "source": "contracts/validatorRegistry.algo.ts:1134", "pc": [ 4527, 4528, 4529 ] }, { "teal": 4785, "source": "contracts/validatorRegistry.algo.ts:1134", "pc": [ 4530 ] }, { "teal": 4786, "source": "contracts/validatorRegistry.algo.ts:1134", "pc": [ 4531 ] }, { "teal": 4787, "source": "contracts/validatorRegistry.algo.ts:1134", "pc": [ 4532 ] }, { "teal": 4788, "source": "contracts/validatorRegistry.algo.ts:1134", "pc": [ 4533, 4534 ] }, { "teal": 4789, "source": "contracts/validatorRegistry.algo.ts:1134", "pc": [ 4535 ] }, { "teal": 4790, "source": "contracts/validatorRegistry.algo.ts:1134", "pc": [ 4536 ] }, { "teal": 4791, "source": "contracts/validatorRegistry.algo.ts:1134", "pc": [ 4537, 4538 ] }, { "teal": 4804, "source": "contracts/validatorRegistry.algo.ts:1143", "pc": [ 4539 ] }, { "teal": 4805, "source": "contracts/validatorRegistry.algo.ts:1143", "pc": [ 4540 ] }, { "teal": 4806, "source": "contracts/validatorRegistry.algo.ts:1143", "pc": [ 4541, 4542 ] }, { "teal": 4810, "source": "contracts/validatorRegistry.algo.ts:1143", "pc": [ 4543, 4544 ] }, { "teal": 4811, "source": "contracts/validatorRegistry.algo.ts:1143", "pc": [ 4545, 4546 ] }, { "teal": 4812, "source": "contracts/validatorRegistry.algo.ts:1143", "pc": [ 4547, 4548 ] }, { "teal": 4813, "source": "contracts/validatorRegistry.algo.ts:1143", "pc": [ 4549 ] }, { "teal": 4814, "source": "contracts/validatorRegistry.algo.ts:1143", "pc": [ 4550, 4551 ] }, { "teal": 4818, "source": "contracts/validatorRegistry.algo.ts:1143", "pc": [ 4552, 4553 ] }, { "teal": 4819, "source": "contracts/validatorRegistry.algo.ts:1143", "pc": [ 4554, 4555 ] }, { "teal": 4820, "source": "contracts/validatorRegistry.algo.ts:1143", "pc": [ 4556 ] }, { "teal": 4821, "source": "contracts/validatorRegistry.algo.ts:1143", "pc": [ 4557, 4558 ] }, { "teal": 4824, "source": "contracts/validatorRegistry.algo.ts:1143", "pc": [ 4559 ] }, { "teal": 4825, "source": "contracts/validatorRegistry.algo.ts:1143", "pc": [ 4560, 4561 ] }, { "teal": 4826, "source": "contracts/validatorRegistry.algo.ts:1138", "pc": [ 4562 ] }, { "teal": 4827, "source": "contracts/validatorRegistry.algo.ts:1138", "pc": [ 4563, 4564 ] }, { "teal": 4828, "source": "contracts/validatorRegistry.algo.ts:1138", "pc": [ 4565, 4566 ] }, { "teal": 4829, "source": "contracts/validatorRegistry.algo.ts:1138", "pc": [ 4567, 4568, 4569, 4570, 4571, 4572 ] }, { "teal": 4830, "source": "contracts/validatorRegistry.algo.ts:1138", "pc": [ 4573, 4574 ] }, { "teal": 4834, "source": "contracts/validatorRegistry.algo.ts:1139", "pc": [ 4575, 4576 ] }, { "teal": 4835, "source": "contracts/validatorRegistry.algo.ts:1139", "pc": [ 4577, 4578 ] }, { "teal": 4845, "source": "contracts/validatorRegistry.algo.ts:1145", "pc": [ 4579, 4580 ] }, { "teal": 4846, "source": "contracts/validatorRegistry.algo.ts:1145", "pc": [ 4581, 4582 ] }, { "teal": 4847, "source": "contracts/validatorRegistry.algo.ts:1145", "pc": [ 4583, 4584 ] }, { "teal": 4850, "source": "contracts/validatorRegistry.algo.ts:1138", "pc": [ 4585 ] }, { "teal": 4851, "source": "contracts/validatorRegistry.algo.ts:1138", "pc": [ 4586, 4587 ] }, { "teal": 4854, "source": "contracts/validatorRegistry.algo.ts:1138", "pc": [ 4588 ] }, { "teal": 4855, "source": "contracts/validatorRegistry.algo.ts:1138", "pc": [ 4589, 4590 ] }, { "teal": 4856, "source": "contracts/validatorRegistry.algo.ts:1138", "pc": [ 4591 ] }, { "teal": 4857, "source": "contracts/validatorRegistry.algo.ts:1138", "pc": [ 4592 ] }, { "teal": 4858, "source": "contracts/validatorRegistry.algo.ts:1138", "pc": [ 4593, 4594 ] }, { "teal": 4859, "source": "contracts/validatorRegistry.algo.ts:1138", "pc": [ 4595, 4596, 4597 ] }, { "teal": 4860, "source": "contracts/validatorRegistry.algo.ts:1138", "pc": [ 4598 ] }, { "teal": 4865, "source": "contracts/validatorRegistry.algo.ts:1148", "pc": [ 4599, 4600 ] }, { "teal": 4866, "source": "contracts/validatorRegistry.algo.ts:1148", "pc": [ 4601, 4602, 4603 ] }, { "teal": 4867, "source": "contracts/validatorRegistry.algo.ts:1148", "pc": [ 4604 ] }, { "teal": 4868, "source": "contracts/validatorRegistry.algo.ts:1148", "pc": [ 4605, 4606, 4607 ] }, { "teal": 4873, "source": "contracts/validatorRegistry.algo.ts:1149", "pc": [ 4608 ] }, { "teal": 4874, "source": "contracts/validatorRegistry.algo.ts:1149", "pc": [ 4609, 4610 ] }, { "teal": 4875, "source": "contracts/validatorRegistry.algo.ts:1149", "pc": [ 4611, 4612 ] }, { "teal": 4876, "source": "contracts/validatorRegistry.algo.ts:1149", "pc": [ 4613 ] }, { "teal": 4877, "source": "contracts/validatorRegistry.algo.ts:1149", "pc": [ 4614, 4615 ] }, { "teal": 4878, "source": "contracts/validatorRegistry.algo.ts:1149", "pc": [ 4616, 4617 ] }, { "teal": 4879, "source": "contracts/validatorRegistry.algo.ts:1149", "pc": [ 4618 ] }, { "teal": 4880, "source": "contracts/validatorRegistry.algo.ts:1149", "pc": [ 4619, 4620 ] }, { "teal": 4881, "source": "contracts/validatorRegistry.algo.ts:1149", "pc": [ 4621, 4622 ] }, { "teal": 4882, "source": "contracts/validatorRegistry.algo.ts:1149", "pc": [ 4623, 4624 ] }, { "teal": 4883, "source": "contracts/validatorRegistry.algo.ts:1149", "pc": [ 4625, 4626 ] }, { "teal": 4884, "source": "contracts/validatorRegistry.algo.ts:1149", "pc": [ 4627 ] }, { "teal": 4889, "source": "contracts/validatorRegistry.algo.ts:1153", "pc": [ 4628, 4629 ] }, { "teal": 4890, "source": "contracts/validatorRegistry.algo.ts:1153", "pc": [ 4630, 4631 ] }, { "teal": 4891, "source": "contracts/validatorRegistry.algo.ts:1153", "pc": [ 4632 ] }, { "teal": 4894, "source": "contracts/validatorRegistry.algo.ts:1153", "errorMessage": "global state value does not exist: AppID.fromUint64(poolAppId).globalState('numStakers')", "pc": [ 4633 ] }, { "teal": 4895, "source": "contracts/validatorRegistry.algo.ts:1153", "pc": [ 4634, 4635 ] }, { "teal": 4899, "source": "contracts/validatorRegistry.algo.ts:1154", "pc": [ 4636, 4637 ] }, { "teal": 4900, "source": "contracts/validatorRegistry.algo.ts:1154", "pc": [ 4638, 4639 ] }, { "teal": 4901, "source": "contracts/validatorRegistry.algo.ts:1154", "pc": [ 4640 ] }, { "teal": 4904, "source": "contracts/validatorRegistry.algo.ts:1154", "errorMessage": "global state value does not exist: AppID.fromUint64(poolAppId).globalState('staked')", "pc": [ 4641 ] }, { "teal": 4905, "source": "contracts/validatorRegistry.algo.ts:1154", "pc": [ 4642, 4643 ] }, { "teal": 4909, "source": "contracts/validatorRegistry.algo.ts:1155", "pc": [ 4644, 4645 ] }, { "teal": 4910, "source": "contracts/validatorRegistry.algo.ts:1155", "pc": [ 4646, 4647 ] }, { "teal": 4911, "source": "contracts/validatorRegistry.algo.ts:1155", "pc": [ 4648, 4649, 4650 ] }, { "teal": 4912, "source": "contracts/validatorRegistry.algo.ts:1155", "pc": [ 4651 ] }, { "teal": 4913, "source": "contracts/validatorRegistry.algo.ts:1155", "pc": [ 4652 ] }, { "teal": 4914, "source": "contracts/validatorRegistry.algo.ts:1155", "pc": [ 4653 ] }, { "teal": 4915, "source": "contracts/validatorRegistry.algo.ts:1155", "pc": [ 4654, 4655 ] }, { "teal": 4916, "source": "contracts/validatorRegistry.algo.ts:1155", "pc": [ 4656 ] }, { "teal": 4917, "source": "contracts/validatorRegistry.algo.ts:1155", "pc": [ 4657 ] }, { "teal": 4918, "source": "contracts/validatorRegistry.algo.ts:1155", "pc": [ 4658 ] }, { "teal": 4919, "source": "contracts/validatorRegistry.algo.ts:1155", "pc": [ 4659 ] }, { "teal": 4920, "source": "contracts/validatorRegistry.algo.ts:1155", "pc": [ 4660, 4661 ] }, { "teal": 4921, "source": "contracts/validatorRegistry.algo.ts:1155", "pc": [ 4662 ] }, { "teal": 4922, "source": "contracts/validatorRegistry.algo.ts:1155", "pc": [ 4663, 4664, 4665 ] }, { "teal": 4923, "source": "contracts/validatorRegistry.algo.ts:1155", "pc": [ 4666 ] }, { "teal": 4924, "source": "contracts/validatorRegistry.algo.ts:1155", "pc": [ 4667, 4668 ] }, { "teal": 4925, "source": "contracts/validatorRegistry.algo.ts:1155", "pc": [ 4669, 4670, 4671 ] }, { "teal": 4926, "source": "contracts/validatorRegistry.algo.ts:1155", "pc": [ 4672 ] }, { "teal": 4927, "source": "contracts/validatorRegistry.algo.ts:1155", "pc": [ 4673 ] }, { "teal": 4928, "source": "contracts/validatorRegistry.algo.ts:1155", "pc": [ 4674 ] }, { "teal": 4929, "source": "contracts/validatorRegistry.algo.ts:1155", "pc": [ 4675, 4676 ] }, { "teal": 4930, "source": "contracts/validatorRegistry.algo.ts:1155", "pc": [ 4677 ] }, { "teal": 4934, "source": "contracts/validatorRegistry.algo.ts:1156", "pc": [ 4678, 4679 ] }, { "teal": 4935, "source": "contracts/validatorRegistry.algo.ts:1156", "pc": [ 4680, 4681 ] }, { "teal": 4936, "source": "contracts/validatorRegistry.algo.ts:1156", "pc": [ 4682, 4683, 4684 ] }, { "teal": 4937, "source": "contracts/validatorRegistry.algo.ts:1156", "pc": [ 4685 ] }, { "teal": 4938, "source": "contracts/validatorRegistry.algo.ts:1156", "pc": [ 4686 ] }, { "teal": 4939, "source": "contracts/validatorRegistry.algo.ts:1156", "pc": [ 4687 ] }, { "teal": 4940, "source": "contracts/validatorRegistry.algo.ts:1156", "pc": [ 4688, 4689 ] }, { "teal": 4941, "source": "contracts/validatorRegistry.algo.ts:1156", "pc": [ 4690 ] }, { "teal": 4942, "source": "contracts/validatorRegistry.algo.ts:1156", "pc": [ 4691 ] }, { "teal": 4943, "source": "contracts/validatorRegistry.algo.ts:1156", "pc": [ 4692, 4693 ] }, { "teal": 4944, "source": "contracts/validatorRegistry.algo.ts:1156", "pc": [ 4694 ] }, { "teal": 4945, "source": "contracts/validatorRegistry.algo.ts:1156", "pc": [ 4695, 4696 ] }, { "teal": 4946, "source": "contracts/validatorRegistry.algo.ts:1156", "pc": [ 4697 ] }, { "teal": 4947, "source": "contracts/validatorRegistry.algo.ts:1156", "pc": [ 4698 ] }, { "teal": 4948, "source": "contracts/validatorRegistry.algo.ts:1156", "pc": [ 4699, 4700 ] }, { "teal": 4949, "source": "contracts/validatorRegistry.algo.ts:1156", "pc": [ 4701, 4702, 4703 ] }, { "teal": 4950, "source": "contracts/validatorRegistry.algo.ts:1156", "pc": [ 4704 ] }, { "teal": 4951, "source": "contracts/validatorRegistry.algo.ts:1156", "pc": [ 4705 ] }, { "teal": 4952, "source": "contracts/validatorRegistry.algo.ts:1156", "pc": [ 4706 ] }, { "teal": 4953, "source": "contracts/validatorRegistry.algo.ts:1156", "pc": [ 4707, 4708 ] }, { "teal": 4954, "source": "contracts/validatorRegistry.algo.ts:1156", "pc": [ 4709 ] }, { "teal": 4959, "source": "contracts/validatorRegistry.algo.ts:1159", "pc": [ 4710, 4711 ] }, { "teal": 4960, "source": "contracts/validatorRegistry.algo.ts:1159", "pc": [ 4712, 4713, 4714 ] }, { "teal": 4965, "source": "contracts/validatorRegistry.algo.ts:1160", "pc": [ 4715, 4716 ] }, { "teal": 4966, "source": "contracts/validatorRegistry.algo.ts:1160", "pc": [ 4717 ] }, { "teal": 4967, "source": "contracts/validatorRegistry.algo.ts:1160", "pc": [ 4718 ] }, { "teal": 4968, "source": "contracts/validatorRegistry.algo.ts:1160", "pc": [ 4719 ] }, { "teal": 4969, "source": "contracts/validatorRegistry.algo.ts:1160", "pc": [ 4720, 4721 ] }, { "teal": 4970, "source": "contracts/validatorRegistry.algo.ts:1160", "pc": [ 4722, 4723, 4724 ] }, { "teal": 4971, "source": "contracts/validatorRegistry.algo.ts:1160", "pc": [ 4725 ] }, { "teal": 4972, "source": "contracts/validatorRegistry.algo.ts:1160", "pc": [ 4726 ] }, { "teal": 4973, "source": "contracts/validatorRegistry.algo.ts:1160", "pc": [ 4727 ] }, { "teal": 4974, "source": "contracts/validatorRegistry.algo.ts:1160", "pc": [ 4728, 4729 ] }, { "teal": 4975, "source": "contracts/validatorRegistry.algo.ts:1160", "pc": [ 4730 ] }, { "teal": 4976, "source": "contracts/validatorRegistry.algo.ts:1160", "pc": [ 4731 ] }, { "teal": 4977, "source": "contracts/validatorRegistry.algo.ts:1160", "pc": [ 4732 ] }, { "teal": 4978, "source": "contracts/validatorRegistry.algo.ts:1160", "pc": [ 4733 ] }, { "teal": 4979, "source": "contracts/validatorRegistry.algo.ts:1160", "pc": [ 4734 ] }, { "teal": 4980, "source": "contracts/validatorRegistry.algo.ts:1160", "pc": [ 4735 ] }, { "teal": 4981, "source": "contracts/validatorRegistry.algo.ts:1160", "pc": [ 4736, 4737 ] }, { "teal": 4982, "source": "contracts/validatorRegistry.algo.ts:1160", "pc": [ 4738, 4739, 4740 ] }, { "teal": 4983, "source": "contracts/validatorRegistry.algo.ts:1160", "pc": [ 4741 ] }, { "teal": 4984, "source": "contracts/validatorRegistry.algo.ts:1160", "pc": [ 4742 ] }, { "teal": 4985, "source": "contracts/validatorRegistry.algo.ts:1160", "pc": [ 4743 ] }, { "teal": 4986, "source": "contracts/validatorRegistry.algo.ts:1160", "pc": [ 4744, 4745 ] }, { "teal": 4987, "source": "contracts/validatorRegistry.algo.ts:1160", "pc": [ 4746 ] }, { "teal": 4993, "source": "contracts/validatorRegistry.algo.ts:1162", "pc": [ 4747, 4748 ] }, { "teal": 4994, "source": "contracts/validatorRegistry.algo.ts:1162", "pc": [ 4749, 4750, 4751 ] }, { "teal": 4999, "source": "contracts/validatorRegistry.algo.ts:1163", "pc": [ 4752, 4753 ] }, { "teal": 5000, "source": "contracts/validatorRegistry.algo.ts:1163", "pc": [ 4754 ] }, { "teal": 5001, "source": "contracts/validatorRegistry.algo.ts:1163", "pc": [ 4755 ] }, { "teal": 5002, "source": "contracts/validatorRegistry.algo.ts:1163", "pc": [ 4756 ] }, { "teal": 5003, "source": "contracts/validatorRegistry.algo.ts:1163", "pc": [ 4757, 4758 ] }, { "teal": 5004, "source": "contracts/validatorRegistry.algo.ts:1163", "pc": [ 4759 ] }, { "teal": 5005, "source": "contracts/validatorRegistry.algo.ts:1163", "pc": [ 4760 ] }, { "teal": 5010, "source": "contracts/validatorRegistry.algo.ts:1165", "pc": [ 4761, 4762 ] }, { "teal": 5011, "source": "contracts/validatorRegistry.algo.ts:1165", "pc": [ 4763 ] }, { "teal": 5012, "source": "contracts/validatorRegistry.algo.ts:1165", "pc": [ 4764 ] }, { "teal": 5013, "source": "contracts/validatorRegistry.algo.ts:1165", "pc": [ 4765 ] }, { "teal": 5014, "source": "contracts/validatorRegistry.algo.ts:1165", "pc": [ 4766, 4767 ] }, { "teal": 5015, "source": "contracts/validatorRegistry.algo.ts:1165", "pc": [ 4768, 4769, 4770 ] }, { "teal": 5016, "source": "contracts/validatorRegistry.algo.ts:1165", "pc": [ 4771 ] }, { "teal": 5017, "source": "contracts/validatorRegistry.algo.ts:1165", "pc": [ 4772 ] }, { "teal": 5018, "source": "contracts/validatorRegistry.algo.ts:1165", "pc": [ 4773 ] }, { "teal": 5019, "source": "contracts/validatorRegistry.algo.ts:1165", "pc": [ 4774, 4775 ] }, { "teal": 5020, "source": "contracts/validatorRegistry.algo.ts:1165", "pc": [ 4776 ] }, { "teal": 5021, "source": "contracts/validatorRegistry.algo.ts:1165", "pc": [ 4777 ] }, { "teal": 5022, "source": "contracts/validatorRegistry.algo.ts:1165", "pc": [ 4778, 4779 ] }, { "teal": 5023, "source": "contracts/validatorRegistry.algo.ts:1165", "pc": [ 4780, 4781 ] }, { "teal": 5024, "source": "contracts/validatorRegistry.algo.ts:1165", "pc": [ 4782, 4783 ] }, { "teal": 5025, "source": "contracts/validatorRegistry.algo.ts:1165", "pc": [ 4784 ] }, { "teal": 5026, "source": "contracts/validatorRegistry.algo.ts:1165", "pc": [ 4785 ] }, { "teal": 5027, "source": "contracts/validatorRegistry.algo.ts:1165", "pc": [ 4786 ] }, { "teal": 5028, "source": "contracts/validatorRegistry.algo.ts:1165", "pc": [ 4787 ] }, { "teal": 5029, "source": "contracts/validatorRegistry.algo.ts:1165", "pc": [ 4788, 4789 ] }, { "teal": 5030, "source": "contracts/validatorRegistry.algo.ts:1165", "pc": [ 4790, 4791, 4792 ] }, { "teal": 5031, "source": "contracts/validatorRegistry.algo.ts:1165", "pc": [ 4793 ] }, { "teal": 5032, "source": "contracts/validatorRegistry.algo.ts:1165", "pc": [ 4794 ] }, { "teal": 5033, "source": "contracts/validatorRegistry.algo.ts:1165", "pc": [ 4795 ] }, { "teal": 5034, "source": "contracts/validatorRegistry.algo.ts:1165", "pc": [ 4796, 4797 ] }, { "teal": 5035, "source": "contracts/validatorRegistry.algo.ts:1165", "pc": [ 4798 ] }, { "teal": 5039, "source": "contracts/validatorRegistry.algo.ts:1166", "pc": [ 4799, 4800 ] }, { "teal": 5040, "source": "contracts/validatorRegistry.algo.ts:1166", "pc": [ 4801 ] }, { "teal": 5041, "source": "contracts/validatorRegistry.algo.ts:1166", "pc": [ 4802, 4803 ] }, { "teal": 5042, "source": "contracts/validatorRegistry.algo.ts:1166", "pc": [ 4804, 4805 ] }, { "teal": 5043, "source": "contracts/validatorRegistry.algo.ts:1166", "pc": [ 4806, 4807 ] }, { "teal": 5044, "source": "contracts/validatorRegistry.algo.ts:1166", "pc": [ 4808 ] }, { "teal": 5045, "source": "contracts/validatorRegistry.algo.ts:1166", "pc": [ 4809 ] }, { "teal": 5046, "source": "contracts/validatorRegistry.algo.ts:1166", "pc": [ 4810, 4811 ] }, { "teal": 5047, "source": "contracts/validatorRegistry.algo.ts:1166", "pc": [ 4812 ] }, { "teal": 5048, "source": "contracts/validatorRegistry.algo.ts:1166", "pc": [ 4813 ] }, { "teal": 5049, "source": "contracts/validatorRegistry.algo.ts:1127", "pc": [ 4814 ] }, { "teal": 5053, "source": "contracts/validatorRegistry.algo.ts:1169", "pc": [ 4815, 4816, 4817 ] }, { "teal": 5056, "source": "contracts/validatorRegistry.algo.ts:1169", "pc": [ 4818 ] }, { "teal": 5057, "source": "contracts/validatorRegistry.algo.ts:1169", "pc": [ 4819, 4820 ] }, { "teal": 5061, "source": "contracts/validatorRegistry.algo.ts:1170", "pc": [ 4821 ] }, { "teal": 5062, "source": "contracts/validatorRegistry.algo.ts:1170", "pc": [ 4822, 4823 ] }, { "teal": 5063, "source": "contracts/validatorRegistry.algo.ts:1170", "pc": [ 4824 ] }, { "teal": 5064, "source": "contracts/validatorRegistry.algo.ts:1170", "pc": [ 4825 ] }, { "teal": 5065, "source": "contracts/validatorRegistry.algo.ts:1170", "pc": [ 4826 ] }, { "teal": 5066, "source": "contracts/validatorRegistry.algo.ts:1170", "pc": [ 4827 ] }, { "teal": 5067, "source": "contracts/validatorRegistry.algo.ts:1170", "pc": [ 4828 ] }, { "teal": 5071, "source": "contracts/validatorRegistry.algo.ts:1172", "pc": [ 4829 ] }, { "teal": 5072, "source": "contracts/validatorRegistry.algo.ts:1172", "pc": [ 4830, 4831 ] }, { "teal": 5073, "source": "contracts/validatorRegistry.algo.ts:1172", "pc": [ 4832 ] }, { "teal": 5074, "source": "contracts/validatorRegistry.algo.ts:1172", "pc": [ 4833 ] }, { "teal": 5077, "source": "contracts/validatorRegistry.algo.ts:1172", "errorMessage": "box value does not exist: this.stakerPoolSet(staker).value", "pc": [ 4834 ] }, { "teal": 5078, "source": "contracts/validatorRegistry.algo.ts:1172", "pc": [ 4835, 4836 ] }, { "teal": 5082, "source": "contracts/validatorRegistry.algo.ts:1173", "pc": [ 4837 ] }, { "teal": 5083, "source": "contracts/validatorRegistry.algo.ts:1173", "pc": [ 4838, 4839 ] }, { "teal": 5087, "source": "contracts/validatorRegistry.algo.ts:1174", "pc": [ 4840 ] }, { "teal": 5088, "source": "contracts/validatorRegistry.algo.ts:1174", "pc": [ 4841, 4842 ] }, { "teal": 5093, "source": "contracts/validatorRegistry.algo.ts:1174", "pc": [ 4843, 4844 ] }, { "teal": 5094, "source": "contracts/validatorRegistry.algo.ts:1174", "pc": [ 4845, 4846 ] }, { "teal": 5095, "source": "contracts/validatorRegistry.algo.ts:1174", "pc": [ 4847 ] }, { "teal": 5096, "source": "contracts/validatorRegistry.algo.ts:1174", "pc": [ 4848, 4849, 4850 ] }, { "teal": 5101, "source": "contracts/validatorRegistry.algo.ts:1175", "pc": [ 4851, 4852 ] }, { "teal": 5102, "source": "contracts/validatorRegistry.algo.ts:1175", "pc": [ 4853, 4854 ] }, { "teal": 5103, "source": "contracts/validatorRegistry.algo.ts:1175", "pc": [ 4855 ] }, { "teal": 5104, "source": "contracts/validatorRegistry.algo.ts:1175", "pc": [ 4856 ] }, { "teal": 5105, "source": "contracts/validatorRegistry.algo.ts:1175", "pc": [ 4857 ] }, { "teal": 5106, "source": "contracts/validatorRegistry.algo.ts:1175", "pc": [ 4858 ] }, { "teal": 5107, "source": "contracts/validatorRegistry.algo.ts:1175", "pc": [ 4859, 4860 ] }, { "teal": 5108, "source": "contracts/validatorRegistry.algo.ts:1175", "pc": [ 4861 ] }, { "teal": 5109, "source": "contracts/validatorRegistry.algo.ts:1175", "pc": [ 4862, 4863, 4864 ] }, { "teal": 5114, "source": "contracts/validatorRegistry.algo.ts:1177", "pc": [ 4865 ] }, { "teal": 5120, "source": "contracts/validatorRegistry.algo.ts:1179", "pc": [ 4866, 4867 ] }, { "teal": 5121, "source": "contracts/validatorRegistry.algo.ts:1179", "pc": [ 4868 ] }, { "teal": 5122, "source": "contracts/validatorRegistry.algo.ts:1179", "pc": [ 4869 ] }, { "teal": 5123, "source": "contracts/validatorRegistry.algo.ts:1179", "pc": [ 4870 ] }, { "teal": 5124, "source": "contracts/validatorRegistry.algo.ts:1179", "pc": [ 4871, 4872, 4873 ] }, { "teal": 5125, "source": "contracts/validatorRegistry.algo.ts:1179", "pc": [ 4874, 4875 ] }, { "teal": 5126, "source": "contracts/validatorRegistry.algo.ts:1179", "pc": [ 4876, 4877 ] }, { "teal": 5127, "source": "contracts/validatorRegistry.algo.ts:1179", "pc": [ 4878 ] }, { "teal": 5128, "source": "contracts/validatorRegistry.algo.ts:1179", "pc": [ 4879 ] }, { "teal": 5129, "source": "contracts/validatorRegistry.algo.ts:1179", "pc": [ 4880 ] }, { "teal": 5130, "source": "contracts/validatorRegistry.algo.ts:1179", "pc": [ 4881 ] }, { "teal": 5131, "source": "contracts/validatorRegistry.algo.ts:1179", "pc": [ 4882 ] }, { "teal": 5132, "source": "contracts/validatorRegistry.algo.ts:1179", "pc": [ 4883 ] }, { "teal": 5133, "source": "contracts/validatorRegistry.algo.ts:1179", "pc": [ 4884 ] }, { "teal": 5134, "source": "contracts/validatorRegistry.algo.ts:1179", "pc": [ 4885 ] }, { "teal": 5135, "source": "contracts/validatorRegistry.algo.ts:1179", "pc": [ 4886 ] }, { "teal": 5136, "source": "contracts/validatorRegistry.algo.ts:1179", "pc": [ 4887 ] }, { "teal": 5139, "source": "contracts/validatorRegistry.algo.ts:1179", "pc": [ 4888, 4889, 4890 ] }, { "teal": 5144, "source": "contracts/validatorRegistry.algo.ts:1180", "pc": [ 4891, 4892 ] }, { "teal": 5145, "source": "contracts/validatorRegistry.algo.ts:1180", "pc": [ 4893 ] }, { "teal": 5146, "source": "contracts/validatorRegistry.algo.ts:1180", "pc": [ 4894 ] }, { "teal": 5147, "source": "contracts/validatorRegistry.algo.ts:1180", "pc": [ 4895, 4896 ] }, { "teal": 5154, "source": "contracts/validatorRegistry.algo.ts:1174", "pc": [ 4897, 4898 ] }, { "teal": 5155, "source": "contracts/validatorRegistry.algo.ts:1174", "pc": [ 4899 ] }, { "teal": 5156, "source": "contracts/validatorRegistry.algo.ts:1174", "pc": [ 4900 ] }, { "teal": 5157, "source": "contracts/validatorRegistry.algo.ts:1174", "pc": [ 4901, 4902 ] }, { "teal": 5158, "source": "contracts/validatorRegistry.algo.ts:1174", "pc": [ 4903, 4904, 4905 ] }, { "teal": 5164, "source": "contracts/validatorRegistry.algo.ts:1183", "pc": [ 4906, 4907 ] }, { "teal": 5165, "source": "contracts/validatorRegistry.algo.ts:1183", "pc": [ 4908 ] }, { "teal": 5166, "source": "contracts/validatorRegistry.algo.ts:1183", "pc": [ 4909 ] }, { "teal": 5167, "source": "contracts/validatorRegistry.algo.ts:1183", "pc": [ 4910, 4911, 4912 ] }, { "teal": 5171, "source": "contracts/validatorRegistry.algo.ts:1184", "errorMessage": "No empty slot available in the staker pool set", "pc": [ 4913 ] }, { "teal": 5176, "source": "contracts/validatorRegistry.algo.ts:1186", "pc": [ 4914, 4915 ] }, { "teal": 5177, "source": "contracts/validatorRegistry.algo.ts:1186", "pc": [ 4916 ] }, { "teal": 5178, "source": "contracts/validatorRegistry.algo.ts:1186", "pc": [ 4917 ] }, { "teal": 5179, "source": "contracts/validatorRegistry.algo.ts:1186", "pc": [ 4918 ] }, { "teal": 5180, "source": "contracts/validatorRegistry.algo.ts:1186", "pc": [ 4919 ] }, { "teal": 5181, "source": "contracts/validatorRegistry.algo.ts:1186", "pc": [ 4920, 4921 ] }, { "teal": 5182, "source": "contracts/validatorRegistry.algo.ts:1186", "pc": [ 4922 ] }, { "teal": 5183, "source": "contracts/validatorRegistry.algo.ts:1186", "pc": [ 4923, 4924 ] }, { "teal": 5184, "source": "contracts/validatorRegistry.algo.ts:1186", "pc": [ 4925 ] }, { "teal": 5185, "source": "contracts/validatorRegistry.algo.ts:1186", "pc": [ 4926, 4927 ] }, { "teal": 5186, "source": "contracts/validatorRegistry.algo.ts:1186", "pc": [ 4928 ] }, { "teal": 5187, "source": "contracts/validatorRegistry.algo.ts:1169", "pc": [ 4929 ] }, { "teal": 5198, "source": "contracts/validatorRegistry.algo.ts:1197", "pc": [ 4930, 4931, 4932 ] }, { "teal": 5201, "source": "contracts/validatorRegistry.algo.ts:1197", "pc": [ 4933 ] }, { "teal": 5202, "source": "contracts/validatorRegistry.algo.ts:1197", "pc": [ 4934, 4935 ] }, { "teal": 5206, "source": "contracts/validatorRegistry.algo.ts:1199", "pc": [ 4936 ] }, { "teal": 5207, "source": "contracts/validatorRegistry.algo.ts:1199", "pc": [ 4937, 4938 ] }, { "teal": 5211, "source": "contracts/validatorRegistry.algo.ts:1200", "pc": [ 4939 ] }, { "teal": 5212, "source": "contracts/validatorRegistry.algo.ts:1200", "pc": [ 4940, 4941 ] }, { "teal": 5216, "source": "contracts/validatorRegistry.algo.ts:1201", "pc": [ 4942 ] }, { "teal": 5217, "source": "contracts/validatorRegistry.algo.ts:1201", "pc": [ 4943, 4944 ] }, { "teal": 5221, "source": "contracts/validatorRegistry.algo.ts:1203", "pc": [ 4945 ] }, { "teal": 5222, "source": "contracts/validatorRegistry.algo.ts:1203", "pc": [ 4946, 4947 ] }, { "teal": 5223, "source": "contracts/validatorRegistry.algo.ts:1203", "pc": [ 4948 ] }, { "teal": 5224, "source": "contracts/validatorRegistry.algo.ts:1203", "pc": [ 4949 ] }, { "teal": 5227, "source": "contracts/validatorRegistry.algo.ts:1203", "errorMessage": "box value does not exist: this.stakerPoolSet(staker).value", "pc": [ 4950 ] }, { "teal": 5228, "source": "contracts/validatorRegistry.algo.ts:1203", "pc": [ 4951, 4952 ] }, { "teal": 5232, "source": "contracts/validatorRegistry.algo.ts:1204", "pc": [ 4953 ] }, { "teal": 5233, "source": "contracts/validatorRegistry.algo.ts:1204", "pc": [ 4954, 4955 ] }, { "teal": 5238, "source": "contracts/validatorRegistry.algo.ts:1204", "pc": [ 4956, 4957 ] }, { "teal": 5239, "source": "contracts/validatorRegistry.algo.ts:1204", "pc": [ 4958, 4959 ] }, { "teal": 5240, "source": "contracts/validatorRegistry.algo.ts:1204", "pc": [ 4960 ] }, { "teal": 5241, "source": "contracts/validatorRegistry.algo.ts:1204", "pc": [ 4961, 4962, 4963 ] }, { "teal": 5246, "source": "contracts/validatorRegistry.algo.ts:1205", "pc": [ 4964, 4965 ] }, { "teal": 5247, "source": "contracts/validatorRegistry.algo.ts:1205", "pc": [ 4966, 4967 ] }, { "teal": 5248, "source": "contracts/validatorRegistry.algo.ts:1205", "pc": [ 4968 ] }, { "teal": 5249, "source": "contracts/validatorRegistry.algo.ts:1205", "pc": [ 4969 ] }, { "teal": 5250, "source": "contracts/validatorRegistry.algo.ts:1205", "pc": [ 4970 ] }, { "teal": 5251, "source": "contracts/validatorRegistry.algo.ts:1205", "pc": [ 4971 ] }, { "teal": 5252, "source": "contracts/validatorRegistry.algo.ts:1205", "pc": [ 4972 ] }, { "teal": 5253, "source": "contracts/validatorRegistry.algo.ts:1205", "pc": [ 4973 ] }, { "teal": 5254, "source": "contracts/validatorRegistry.algo.ts:1205", "pc": [ 4974 ] }, { "teal": 5255, "source": "contracts/validatorRegistry.algo.ts:1205", "pc": [ 4975 ] }, { "teal": 5256, "source": "contracts/validatorRegistry.algo.ts:1205", "pc": [ 4976 ] }, { "teal": 5257, "source": "contracts/validatorRegistry.algo.ts:1205", "pc": [ 4977, 4978, 4979 ] }, { "teal": 5260, "source": "contracts/validatorRegistry.algo.ts:1206", "pc": [ 4980, 4981, 4982 ] }, { "teal": 5265, "source": "contracts/validatorRegistry.algo.ts:1208", "pc": [ 4983, 4984 ] }, { "teal": 5266, "source": "contracts/validatorRegistry.algo.ts:1208", "pc": [ 4985 ] }, { "teal": 5267, "source": "contracts/validatorRegistry.algo.ts:1208", "pc": [ 4986 ] }, { "teal": 5268, "source": "contracts/validatorRegistry.algo.ts:1208", "pc": [ 4987, 4988 ] }, { "teal": 5273, "source": "contracts/validatorRegistry.algo.ts:1209", "pc": [ 4989, 4990 ] }, { "teal": 5274, "source": "contracts/validatorRegistry.algo.ts:1209", "pc": [ 4991, 4992 ] }, { "teal": 5275, "source": "contracts/validatorRegistry.algo.ts:1209", "pc": [ 4993 ] }, { "teal": 5276, "source": "contracts/validatorRegistry.algo.ts:1209", "pc": [ 4994 ] }, { "teal": 5277, "source": "contracts/validatorRegistry.algo.ts:1209", "pc": [ 4995 ] }, { "teal": 5278, "source": "contracts/validatorRegistry.algo.ts:1209", "pc": [ 4996 ] }, { "teal": 5279, "source": "contracts/validatorRegistry.algo.ts:1209", "pc": [ 4997 ] }, { "teal": 5280, "source": "contracts/validatorRegistry.algo.ts:1209", "pc": [ 4998 ] }, { "teal": 5281, "source": "contracts/validatorRegistry.algo.ts:1209", "pc": [ 4999 ] }, { "teal": 5282, "source": "contracts/validatorRegistry.algo.ts:1209", "pc": [ 5000, 5001 ] }, { "teal": 5283, "source": "contracts/validatorRegistry.algo.ts:1209", "pc": [ 5002, 5003, 5004 ] }, { "teal": 5284, "source": "contracts/validatorRegistry.algo.ts:1209", "pc": [ 5005 ] }, { "teal": 5285, "source": "contracts/validatorRegistry.algo.ts:1209", "pc": [ 5006 ] }, { "teal": 5286, "source": "contracts/validatorRegistry.algo.ts:1209", "pc": [ 5007, 5008, 5009 ] }, { "teal": 5292, "source": "contracts/validatorRegistry.algo.ts:1210", "pc": [ 5010, 5011 ] }, { "teal": 5293, "source": "contracts/validatorRegistry.algo.ts:1210", "pc": [ 5012, 5013 ] }, { "teal": 5294, "source": "contracts/validatorRegistry.algo.ts:1210", "pc": [ 5014 ] }, { "teal": 5295, "source": "contracts/validatorRegistry.algo.ts:1210", "pc": [ 5015 ] }, { "teal": 5296, "source": "contracts/validatorRegistry.algo.ts:1210", "pc": [ 5016 ] }, { "teal": 5297, "source": "contracts/validatorRegistry.algo.ts:1210", "pc": [ 5017 ] }, { "teal": 5298, "source": "contracts/validatorRegistry.algo.ts:1210", "pc": [ 5018, 5019 ] }, { "teal": 5299, "source": "contracts/validatorRegistry.algo.ts:1210", "pc": [ 5020 ] }, { "teal": 5300, "source": "contracts/validatorRegistry.algo.ts:1210", "pc": [ 5021, 5022, 5023 ] }, { "teal": 5305, "source": "contracts/validatorRegistry.algo.ts:1211", "pc": [ 5024 ] }, { "teal": 5306, "source": "contracts/validatorRegistry.algo.ts:1211", "pc": [ 5025, 5026 ] }, { "teal": 5310, "source": "contracts/validatorRegistry.algo.ts:1213", "pc": [ 5027, 5028 ] }, { "teal": 5311, "source": "contracts/validatorRegistry.algo.ts:1213", "pc": [ 5029 ] }, { "teal": 5312, "source": "contracts/validatorRegistry.algo.ts:1213", "pc": [ 5030 ] }, { "teal": 5313, "source": "contracts/validatorRegistry.algo.ts:1213", "pc": [ 5031, 5032, 5033, 5034, 5035, 5036, 5037, 5038, 5039, 5040, 5041, 5042, 5043, 5044, 5045, 5046, 5047, 5048, 5049, 5050, 5051, 5052, 5053, 5054, 5055, 5056 ] }, { "teal": 5314, "source": "contracts/validatorRegistry.algo.ts:1213", "pc": [ 5057 ] }, { "teal": 5315, "source": "contracts/validatorRegistry.algo.ts:1213", "pc": [ 5058, 5059 ] }, { "teal": 5316, "source": "contracts/validatorRegistry.algo.ts:1213", "pc": [ 5060 ] }, { "teal": 5317, "source": "contracts/validatorRegistry.algo.ts:1213", "pc": [ 5061, 5062 ] }, { "teal": 5318, "source": "contracts/validatorRegistry.algo.ts:1213", "pc": [ 5063 ] }, { "teal": 5319, "source": "contracts/validatorRegistry.algo.ts:1210", "pc": [ 5064, 5065, 5066 ] }, { "teal": 5324, "source": "contracts/validatorRegistry.algo.ts:1215", "pc": [ 5067, 5068 ] }, { "teal": 5325, "source": "contracts/validatorRegistry.algo.ts:1215", "pc": [ 5069 ] }, { "teal": 5326, "source": "contracts/validatorRegistry.algo.ts:1215", "pc": [ 5070 ] }, { "teal": 5327, "source": "contracts/validatorRegistry.algo.ts:1215", "pc": [ 5071, 5072 ] }, { "teal": 5336, "source": "contracts/validatorRegistry.algo.ts:1204", "pc": [ 5073, 5074 ] }, { "teal": 5337, "source": "contracts/validatorRegistry.algo.ts:1204", "pc": [ 5075 ] }, { "teal": 5338, "source": "contracts/validatorRegistry.algo.ts:1204", "pc": [ 5076 ] }, { "teal": 5339, "source": "contracts/validatorRegistry.algo.ts:1204", "pc": [ 5077, 5078 ] }, { "teal": 5340, "source": "contracts/validatorRegistry.algo.ts:1204", "pc": [ 5079, 5080, 5081 ] }, { "teal": 5346, "source": "contracts/validatorRegistry.algo.ts:1219", "pc": [ 5082, 5083 ] }, { "teal": 5347, "source": "contracts/validatorRegistry.algo.ts:1219", "pc": [ 5084 ] }, { "teal": 5348, "source": "contracts/validatorRegistry.algo.ts:1219", "pc": [ 5085, 5086, 5087 ] }, { "teal": 5352, "source": "contracts/validatorRegistry.algo.ts:1220", "errorMessage": "No matching slot found when told to remove a pool from the stakers set", "pc": [ 5088 ] }, { "teal": 5357, "source": "contracts/validatorRegistry.algo.ts:1223", "pc": [ 5089, 5090 ] }, { "teal": 5358, "source": "contracts/validatorRegistry.algo.ts:1223", "pc": [ 5091 ] }, { "teal": 5359, "source": "contracts/validatorRegistry.algo.ts:1223", "pc": [ 5092, 5093 ] }, { "teal": 5360, "source": "contracts/validatorRegistry.algo.ts:1223", "pc": [ 5094 ] }, { "teal": 5361, "source": "contracts/validatorRegistry.algo.ts:1223", "pc": [ 5095 ] }, { "teal": 5362, "source": "contracts/validatorRegistry.algo.ts:1223", "pc": [ 5096 ] }, { "teal": 5363, "source": "contracts/validatorRegistry.algo.ts:1223", "pc": [ 5097 ] }, { "teal": 5364, "source": "contracts/validatorRegistry.algo.ts:1223", "pc": [ 5098, 5099 ] }, { "teal": 5365, "source": "contracts/validatorRegistry.algo.ts:1223", "pc": [ 5100 ] }, { "teal": 5366, "source": "contracts/validatorRegistry.algo.ts:1223", "pc": [ 5101 ] }, { "teal": 5367, "source": "contracts/validatorRegistry.algo.ts:1223", "pc": [ 5102 ] }, { "teal": 5370, "source": "contracts/validatorRegistry.algo.ts:1197", "pc": [ 5103, 5104 ] }, { "teal": 5373, "source": "contracts/validatorRegistry.algo.ts:1197", "pc": [ 5105, 5106 ] }, { "teal": 5374, "source": "contracts/validatorRegistry.algo.ts:1197", "pc": [ 5107 ] }, { "teal": 5378, "source": "contracts/validatorRegistry.algo.ts:1226", "pc": [ 5108, 5109, 5110 ] }, { "teal": 5381, "source": "contracts/validatorRegistry.algo.ts:1226", "pc": [ 5111 ] }, { "teal": 5382, "source": "contracts/validatorRegistry.algo.ts:1226", "pc": [ 5112, 5113 ] }, { "teal": 5386, "source": "contracts/validatorRegistry.algo.ts:1227", "pc": [ 5114, 5115 ] }, { "teal": 5387, "source": "contracts/validatorRegistry.algo.ts:1227", "pc": [ 5116, 5117 ] }, { "teal": 5388, "source": "contracts/validatorRegistry.algo.ts:1227", "pc": [ 5118 ] }, { "teal": 5389, "source": "contracts/validatorRegistry.algo.ts:1227", "pc": [ 5119, 5120 ] }, { "teal": 5390, "source": "contracts/validatorRegistry.algo.ts:1227", "pc": [ 5121 ] }, { "teal": 5391, "source": "contracts/validatorRegistry.algo.ts:1227", "pc": [ 5122 ] }, { "teal": 5392, "source": "contracts/validatorRegistry.algo.ts:1227", "pc": [ 5123, 5124 ] }, { "teal": 5393, "source": "contracts/validatorRegistry.algo.ts:1227", "pc": [ 5125 ] }, { "teal": 5394, "source": "contracts/validatorRegistry.algo.ts:1227", "pc": [ 5126, 5127 ] }, { "teal": 5398, "source": "contracts/validatorRegistry.algo.ts:1228", "pc": [ 5128, 5129, 5130 ] }, { "teal": 5399, "source": "contracts/validatorRegistry.algo.ts:1228", "pc": [ 5131 ] }, { "teal": 5400, "source": "contracts/validatorRegistry.algo.ts:1228", "pc": [ 5132 ] }, { "teal": 5401, "source": "contracts/validatorRegistry.algo.ts:1228", "pc": [ 5133, 5134 ] }, { "teal": 5402, "source": "contracts/validatorRegistry.algo.ts:1228", "pc": [ 5135 ] }, { "teal": 5403, "source": "contracts/validatorRegistry.algo.ts:1228", "pc": [ 5136 ] }, { "teal": 5404, "source": "contracts/validatorRegistry.algo.ts:1228", "pc": [ 5137, 5138 ] }, { "teal": 5405, "source": "contracts/validatorRegistry.algo.ts:1228", "pc": [ 5139 ] }, { "teal": 5406, "source": "contracts/validatorRegistry.algo.ts:1228", "pc": [ 5140 ] }, { "teal": 5407, "source": "contracts/validatorRegistry.algo.ts:1228", "pc": [ 5141, 5142 ] }, { "teal": 5411, "source": "contracts/validatorRegistry.algo.ts:1230", "pc": [ 5143, 5144 ] }, { "teal": 5412, "source": "contracts/validatorRegistry.algo.ts:1230", "pc": [ 5145 ] }, { "teal": 5413, "source": "contracts/validatorRegistry.algo.ts:1230", "pc": [ 5146 ] }, { "teal": 5414, "source": "contracts/validatorRegistry.algo.ts:1230", "pc": [ 5147 ] }, { "teal": 5415, "source": "contracts/validatorRegistry.algo.ts:1230", "pc": [ 5148, 5149, 5150 ] }, { "teal": 5416, "source": "contracts/validatorRegistry.algo.ts:1230", "pc": [ 5151, 5152 ] }, { "teal": 5417, "source": "contracts/validatorRegistry.algo.ts:1230", "pc": [ 5153 ] }, { "teal": 5418, "source": "contracts/validatorRegistry.algo.ts:1230", "pc": [ 5154 ] }, { "teal": 5419, "source": "contracts/validatorRegistry.algo.ts:1230", "pc": [ 5155 ] }, { "teal": 5423, "source": "contracts/validatorRegistry.algo.ts:1230", "errorMessage": "node number not in valid range", "pc": [ 5156 ] }, { "teal": 5427, "source": "contracts/validatorRegistry.algo.ts:1232", "pc": [ 5157 ] }, { "teal": 5428, "source": "contracts/validatorRegistry.algo.ts:1232", "pc": [ 5158, 5159 ] }, { "teal": 5433, "source": "contracts/validatorRegistry.algo.ts:1232", "pc": [ 5160, 5161 ] }, { "teal": 5434, "source": "contracts/validatorRegistry.algo.ts:1232", "pc": [ 5162, 5163 ] }, { "teal": 5435, "source": "contracts/validatorRegistry.algo.ts:1232", "pc": [ 5164 ] }, { "teal": 5436, "source": "contracts/validatorRegistry.algo.ts:1232", "pc": [ 5165, 5166, 5167 ] }, { "teal": 5441, "source": "contracts/validatorRegistry.algo.ts:1233", "pc": [ 5168, 5169 ] }, { "teal": 5442, "source": "contracts/validatorRegistry.algo.ts:1233", "pc": [ 5170 ] }, { "teal": 5443, "source": "contracts/validatorRegistry.algo.ts:1233", "pc": [ 5171, 5172 ] }, { "teal": 5444, "source": "contracts/validatorRegistry.algo.ts:1233", "pc": [ 5173 ] }, { "teal": 5445, "source": "contracts/validatorRegistry.algo.ts:1233", "pc": [ 5174 ] }, { "teal": 5446, "source": "contracts/validatorRegistry.algo.ts:1233", "pc": [ 5175 ] }, { "teal": 5447, "source": "contracts/validatorRegistry.algo.ts:1233", "pc": [ 5176 ] }, { "teal": 5448, "source": "contracts/validatorRegistry.algo.ts:1233", "pc": [ 5177 ] }, { "teal": 5449, "source": "contracts/validatorRegistry.algo.ts:1233", "pc": [ 5178 ] }, { "teal": 5450, "source": "contracts/validatorRegistry.algo.ts:1233", "pc": [ 5179 ] }, { "teal": 5451, "source": "contracts/validatorRegistry.algo.ts:1233", "pc": [ 5180, 5181 ] }, { "teal": 5452, "source": "contracts/validatorRegistry.algo.ts:1233", "pc": [ 5182 ] }, { "teal": 5453, "source": "contracts/validatorRegistry.algo.ts:1233", "pc": [ 5183 ] }, { "teal": 5454, "source": "contracts/validatorRegistry.algo.ts:1233", "pc": [ 5184 ] }, { "teal": 5455, "source": "contracts/validatorRegistry.algo.ts:1233", "pc": [ 5185 ] }, { "teal": 5456, "source": "contracts/validatorRegistry.algo.ts:1233", "pc": [ 5186 ] }, { "teal": 5457, "source": "contracts/validatorRegistry.algo.ts:1233", "pc": [ 5187 ] }, { "teal": 5458, "source": "contracts/validatorRegistry.algo.ts:1233", "pc": [ 5188 ] }, { "teal": 5459, "source": "contracts/validatorRegistry.algo.ts:1233", "pc": [ 5189 ] }, { "teal": 5460, "source": "contracts/validatorRegistry.algo.ts:1233", "pc": [ 5190, 5191, 5192 ] }, { "teal": 5465, "source": "contracts/validatorRegistry.algo.ts:1235", "pc": [ 5193, 5194 ] }, { "teal": 5466, "source": "contracts/validatorRegistry.algo.ts:1235", "pc": [ 5195, 5196 ] }, { "teal": 5467, "source": "contracts/validatorRegistry.algo.ts:1235", "pc": [ 5197 ] }, { "teal": 5468, "source": "contracts/validatorRegistry.algo.ts:1235", "pc": [ 5198 ] }, { "teal": 5469, "source": "contracts/validatorRegistry.algo.ts:1235", "pc": [ 5199 ] }, { "teal": 5470, "source": "contracts/validatorRegistry.algo.ts:1235", "pc": [ 5200 ] }, { "teal": 5471, "source": "contracts/validatorRegistry.algo.ts:1235", "pc": [ 5201 ] }, { "teal": 5472, "source": "contracts/validatorRegistry.algo.ts:1235", "pc": [ 5202 ] }, { "teal": 5473, "source": "contracts/validatorRegistry.algo.ts:1235", "pc": [ 5203 ] }, { "teal": 5474, "source": "contracts/validatorRegistry.algo.ts:1235", "pc": [ 5204, 5205 ] }, { "teal": 5475, "source": "contracts/validatorRegistry.algo.ts:1235", "pc": [ 5206 ] }, { "teal": 5476, "source": "contracts/validatorRegistry.algo.ts:1235", "pc": [ 5207 ] }, { "teal": 5477, "source": "contracts/validatorRegistry.algo.ts:1235", "pc": [ 5208 ] }, { "teal": 5478, "source": "contracts/validatorRegistry.algo.ts:1235", "pc": [ 5209, 5210 ] }, { "teal": 5479, "source": "contracts/validatorRegistry.algo.ts:1235", "pc": [ 5211 ] }, { "teal": 5480, "source": "contracts/validatorRegistry.algo.ts:1235", "pc": [ 5212 ] }, { "teal": 5481, "source": "contracts/validatorRegistry.algo.ts:1235", "pc": [ 5213, 5214 ] }, { "teal": 5482, "source": "contracts/validatorRegistry.algo.ts:1235", "pc": [ 5215 ] }, { "teal": 5483, "source": "contracts/validatorRegistry.algo.ts:1235", "pc": [ 5216 ] }, { "teal": 5484, "source": "contracts/validatorRegistry.algo.ts:1235", "pc": [ 5217, 5218 ] }, { "teal": 5485, "source": "contracts/validatorRegistry.algo.ts:1235", "pc": [ 5219 ] }, { "teal": 5489, "source": "contracts/validatorRegistry.algo.ts:1236", "pc": [ 5220 ] }, { "teal": 5496, "source": "contracts/validatorRegistry.algo.ts:1232", "pc": [ 5221, 5222 ] }, { "teal": 5497, "source": "contracts/validatorRegistry.algo.ts:1232", "pc": [ 5223 ] }, { "teal": 5498, "source": "contracts/validatorRegistry.algo.ts:1232", "pc": [ 5224 ] }, { "teal": 5499, "source": "contracts/validatorRegistry.algo.ts:1232", "pc": [ 5225, 5226 ] }, { "teal": 5500, "source": "contracts/validatorRegistry.algo.ts:1232", "pc": [ 5227, 5228, 5229 ] }, { "teal": 5504, "source": "contracts/validatorRegistry.algo.ts:1239", "errorMessage": "no available space in specified node for this pool", "pc": [ 5230 ] }, { "teal": 5505, "source": "contracts/validatorRegistry.algo.ts:1226", "pc": [ 5231 ] }, { "teal": 5515, "source": "contracts/validatorRegistry.algo.ts:1249", "pc": [ 5232, 5233, 5234 ] }, { "teal": 5518, "source": "contracts/validatorRegistry.algo.ts:1249", "pc": [ 5235 ] }, { "teal": 5519, "source": "contracts/validatorRegistry.algo.ts:1249", "pc": [ 5236, 5237 ] }, { "teal": 5523, "source": "contracts/validatorRegistry.algo.ts:1250", "pc": [ 5238, 5239 ] }, { "teal": 5524, "source": "contracts/validatorRegistry.algo.ts:1250", "pc": [ 5240 ] }, { "teal": 5525, "source": "contracts/validatorRegistry.algo.ts:1250", "pc": [ 5241 ] }, { "teal": 5526, "source": "contracts/validatorRegistry.algo.ts:1250", "pc": [ 5242, 5243 ] }, { "teal": 5527, "source": "contracts/validatorRegistry.algo.ts:1250", "pc": [ 5244 ] }, { "teal": 5528, "source": "contracts/validatorRegistry.algo.ts:1250", "pc": [ 5245 ] }, { "teal": 5529, "source": "contracts/validatorRegistry.algo.ts:1250", "pc": [ 5246, 5247 ] }, { "teal": 5530, "source": "contracts/validatorRegistry.algo.ts:1250", "pc": [ 5248 ] }, { "teal": 5531, "source": "contracts/validatorRegistry.algo.ts:1250", "pc": [ 5249 ] }, { "teal": 5532, "source": "contracts/validatorRegistry.algo.ts:1250", "pc": [ 5250, 5251 ] }, { "teal": 5537, "source": "contracts/validatorRegistry.algo.ts:1251", "pc": [ 5252, 5253 ] }, { "teal": 5538, "source": "contracts/validatorRegistry.algo.ts:1251", "pc": [ 5254 ] }, { "teal": 5539, "source": "contracts/validatorRegistry.algo.ts:1251", "pc": [ 5255 ] }, { "teal": 5540, "source": "contracts/validatorRegistry.algo.ts:1251", "pc": [ 5256, 5257, 5258 ] }, { "teal": 5545, "source": "contracts/validatorRegistry.algo.ts:1252", "pc": [ 5259 ] }, { "teal": 5550, "source": "contracts/validatorRegistry.algo.ts:1254", "pc": [ 5260, 5261 ] }, { "teal": 5551, "source": "contracts/validatorRegistry.algo.ts:1254", "pc": [ 5262, 5263 ] }, { "teal": 5555, "source": "contracts/validatorRegistry.algo.ts:1255", "pc": [ 5264 ] }, { "teal": 5556, "source": "contracts/validatorRegistry.algo.ts:1255", "pc": [ 5265, 5266 ] }, { "teal": 5557, "source": "contracts/validatorRegistry.algo.ts:1255", "pc": [ 5267 ] }, { "teal": 5558, "source": "contracts/validatorRegistry.algo.ts:1255", "pc": [ 5268, 5269 ] }, { "teal": 5559, "source": "contracts/validatorRegistry.algo.ts:1255", "pc": [ 5270 ] }, { "teal": 5560, "source": "contracts/validatorRegistry.algo.ts:1255", "pc": [ 5271 ] }, { "teal": 5561, "source": "contracts/validatorRegistry.algo.ts:1255", "pc": [ 5272, 5273 ] }, { "teal": 5562, "source": "contracts/validatorRegistry.algo.ts:1255", "pc": [ 5274 ] }, { "teal": 5563, "source": "contracts/validatorRegistry.algo.ts:1255", "pc": [ 5275, 5276 ] }, { "teal": 5570, "source": "contracts/validatorRegistry.algo.ts:1259", "pc": [ 5277, 5278 ] }, { "teal": 5571, "source": "contracts/validatorRegistry.algo.ts:1259", "pc": [ 5279 ] }, { "teal": 5572, "source": "contracts/validatorRegistry.algo.ts:1259", "pc": [ 5280 ] }, { "teal": 5573, "source": "contracts/validatorRegistry.algo.ts:1259", "pc": [ 5281 ] }, { "teal": 5574, "source": "contracts/validatorRegistry.algo.ts:1259", "pc": [ 5282, 5283, 5284 ] }, { "teal": 5575, "source": "contracts/validatorRegistry.algo.ts:1260", "pc": [ 5285, 5286 ] }, { "teal": 5576, "source": "contracts/validatorRegistry.algo.ts:1260", "pc": [ 5287, 5288 ] }, { "teal": 5577, "source": "contracts/validatorRegistry.algo.ts:1260", "pc": [ 5289 ] }, { "teal": 5578, "source": "contracts/validatorRegistry.algo.ts:1259", "pc": [ 5290 ] }, { "teal": 5581, "source": "contracts/validatorRegistry.algo.ts:1260", "pc": [ 5291 ] }, { "teal": 5582, "source": "contracts/validatorRegistry.algo.ts:1260", "pc": [ 5292, 5293, 5294 ] }, { "teal": 5583, "source": "contracts/validatorRegistry.algo.ts:1261", "pc": [ 5295, 5296 ] }, { "teal": 5584, "source": "contracts/validatorRegistry.algo.ts:1261", "pc": [ 5297, 5298 ] }, { "teal": 5585, "source": "contracts/validatorRegistry.algo.ts:1261", "pc": [ 5299 ] }, { "teal": 5586, "source": "contracts/validatorRegistry.algo.ts:1260", "pc": [ 5300 ] }, { "teal": 5589, "source": "contracts/validatorRegistry.algo.ts:1258", "pc": [ 5301, 5302, 5303 ] }, { "teal": 5594, "source": "contracts/validatorRegistry.algo.ts:1263", "pc": [ 5304, 5305 ] }, { "teal": 5595, "source": "contracts/validatorRegistry.algo.ts:1263", "pc": [ 5306 ] }, { "teal": 5596, "source": "contracts/validatorRegistry.algo.ts:1263", "pc": [ 5307 ] }, { "teal": 5597, "source": "contracts/validatorRegistry.algo.ts:1263", "pc": [ 5308 ] }, { "teal": 5601, "source": "contracts/validatorRegistry.algo.ts:1264", "pc": [ 5309, 5310 ] }, { "teal": 5602, "source": "contracts/validatorRegistry.algo.ts:1264", "pc": [ 5311 ] }, { "teal": 5603, "source": "contracts/validatorRegistry.algo.ts:1264", "pc": [ 5312 ] }, { "teal": 5604, "source": "contracts/validatorRegistry.algo.ts:1264", "pc": [ 5313, 5314 ] }, { "teal": 5605, "source": "contracts/validatorRegistry.algo.ts:1264", "pc": [ 5315 ] }, { "teal": 5606, "source": "contracts/validatorRegistry.algo.ts:1264", "pc": [ 5316 ] }, { "teal": 5607, "source": "contracts/validatorRegistry.algo.ts:1264", "pc": [ 5317, 5318 ] }, { "teal": 5608, "source": "contracts/validatorRegistry.algo.ts:1264", "pc": [ 5319 ] }, { "teal": 5609, "source": "contracts/validatorRegistry.algo.ts:1264", "pc": [ 5320 ] }, { "teal": 5610, "source": "contracts/validatorRegistry.algo.ts:1264", "pc": [ 5321, 5322 ] }, { "teal": 5615, "source": "contracts/validatorRegistry.algo.ts:1265", "pc": [ 5323, 5324 ] }, { "teal": 5616, "source": "contracts/validatorRegistry.algo.ts:1265", "pc": [ 5325 ] }, { "teal": 5617, "source": "contracts/validatorRegistry.algo.ts:1265", "pc": [ 5326 ] }, { "teal": 5618, "source": "contracts/validatorRegistry.algo.ts:1265", "pc": [ 5327, 5328, 5329 ] }, { "teal": 5623, "source": "contracts/validatorRegistry.algo.ts:1266", "pc": [ 5330 ] }, { "teal": 5624, "source": "contracts/validatorRegistry.algo.ts:1266", "pc": [ 5331, 5332 ] }, { "teal": 5632, "source": "contracts/validatorRegistry.algo.ts:1269", "pc": [ 5333, 5334 ] }, { "teal": 5633, "source": "contracts/validatorRegistry.algo.ts:1269", "pc": [ 5335, 5336 ] }, { "teal": 5634, "source": "contracts/validatorRegistry.algo.ts:1269", "pc": [ 5337, 5338 ] }, { "teal": 5635, "source": "contracts/validatorRegistry.algo.ts:1269", "pc": [ 5339 ] }, { "teal": 5636, "source": "contracts/validatorRegistry.algo.ts:1269", "pc": [ 5340, 5341 ] }, { "teal": 5637, "source": "contracts/validatorRegistry.algo.ts:1269", "pc": [ 5342 ] }, { "teal": 5640, "source": "contracts/validatorRegistry.algo.ts:1268", "errorMessage": "must have required minimum balance of validator defined token to add stake", "pc": [ 5343 ] }, { "teal": 5646, "source": "contracts/validatorRegistry.algo.ts:1273", "pc": [ 5344, 5345 ] }, { "teal": 5647, "source": "contracts/validatorRegistry.algo.ts:1273", "pc": [ 5346 ] }, { "teal": 5648, "source": "contracts/validatorRegistry.algo.ts:1273", "pc": [ 5347 ] }, { "teal": 5649, "source": "contracts/validatorRegistry.algo.ts:1273", "pc": [ 5348, 5349, 5350 ] }, { "teal": 5657, "source": "contracts/validatorRegistry.algo.ts:1275", "pc": [ 5351, 5352 ] }, { "teal": 5658, "source": "contracts/validatorRegistry.algo.ts:1275", "pc": [ 5353, 5354 ] }, { "teal": 5659, "source": "contracts/validatorRegistry.algo.ts:1275", "pc": [ 5355 ] }, { "teal": 5660, "source": "contracts/validatorRegistry.algo.ts:1275", "pc": [ 5356, 5357 ] }, { "teal": 5661, "source": "contracts/validatorRegistry.algo.ts:1275", "pc": [ 5358, 5359, 5360 ] }, { "teal": 5662, "source": "contracts/validatorRegistry.algo.ts:1275", "pc": [ 5361 ] }, { "teal": 5665, "source": "contracts/validatorRegistry.algo.ts:1274", "errorMessage": "specified asset must be created by creator that the validator defined as a requirement to stake", "pc": [ 5362 ] }, { "teal": 5671, "source": "contracts/validatorRegistry.algo.ts:1279", "pc": [ 5363, 5364 ] }, { "teal": 5672, "source": "contracts/validatorRegistry.algo.ts:1279", "pc": [ 5365, 5366 ] }, { "teal": 5673, "source": "contracts/validatorRegistry.algo.ts:1279", "pc": [ 5367 ] }, { "teal": 5674, "source": "contracts/validatorRegistry.algo.ts:1279", "pc": [ 5368, 5369, 5370 ] }, { "teal": 5679, "source": "contracts/validatorRegistry.algo.ts:1280", "pc": [ 5371 ] }, { "teal": 5680, "source": "contracts/validatorRegistry.algo.ts:1280", "pc": [ 5372, 5373 ] }, { "teal": 5684, "source": "contracts/validatorRegistry.algo.ts:1281", "pc": [ 5374, 5375 ] }, { "teal": 5685, "source": "contracts/validatorRegistry.algo.ts:1281", "pc": [ 5376, 5377, 5378 ] }, { "teal": 5686, "source": "contracts/validatorRegistry.algo.ts:1281", "pc": [ 5379 ] }, { "teal": 5687, "source": "contracts/validatorRegistry.algo.ts:1281", "pc": [ 5380, 5381 ] }, { "teal": 5688, "source": "contracts/validatorRegistry.algo.ts:1281", "pc": [ 5382, 5383, 5384 ] }, { "teal": 5689, "source": "contracts/validatorRegistry.algo.ts:1281", "pc": [ 5385 ] }, { "teal": 5690, "source": "contracts/validatorRegistry.algo.ts:1281", "pc": [ 5386, 5387 ] }, { "teal": 5691, "source": "contracts/validatorRegistry.algo.ts:1281", "pc": [ 5388 ] }, { "teal": 5692, "source": "contracts/validatorRegistry.algo.ts:1281", "pc": [ 5389, 5390 ] }, { "teal": 5698, "source": "contracts/validatorRegistry.algo.ts:1282", "pc": [ 5391, 5392 ] }, { "teal": 5699, "source": "contracts/validatorRegistry.algo.ts:1282", "pc": [ 5393, 5394 ] }, { "teal": 5700, "source": "contracts/validatorRegistry.algo.ts:1282", "pc": [ 5395 ] }, { "teal": 5701, "source": "contracts/validatorRegistry.algo.ts:1282", "pc": [ 5396, 5397, 5398 ] }, { "teal": 5706, "source": "contracts/validatorRegistry.algo.ts:1283", "pc": [ 5399 ] }, { "teal": 5707, "source": "contracts/validatorRegistry.algo.ts:1283", "pc": [ 5400, 5401 ] }, { "teal": 5708, "source": "contracts/validatorRegistry.algo.ts:1284", "pc": [ 5402, 5403, 5404 ] }, { "teal": 5714, "source": "contracts/validatorRegistry.algo.ts:1281", "pc": [ 5405, 5406 ] }, { "teal": 5715, "source": "contracts/validatorRegistry.algo.ts:1281", "pc": [ 5407 ] }, { "teal": 5716, "source": "contracts/validatorRegistry.algo.ts:1281", "pc": [ 5408 ] }, { "teal": 5717, "source": "contracts/validatorRegistry.algo.ts:1281", "pc": [ 5409 ] }, { "teal": 5718, "source": "contracts/validatorRegistry.algo.ts:1281", "pc": [ 5410, 5411 ] }, { "teal": 5719, "source": "contracts/validatorRegistry.algo.ts:1281", "pc": [ 5412 ] }, { "teal": 5720, "source": "contracts/validatorRegistry.algo.ts:1281", "pc": [ 5413, 5414, 5415 ] }, { "teal": 5721, "source": "contracts/validatorRegistry.algo.ts:1281", "pc": [ 5416, 5417 ] }, { "teal": 5722, "source": "contracts/validatorRegistry.algo.ts:1281", "pc": [ 5418, 5419 ] }, { "teal": 5723, "source": "contracts/validatorRegistry.algo.ts:1281", "pc": [ 5420, 5421 ] }, { "teal": 5724, "source": "contracts/validatorRegistry.algo.ts:1281", "pc": [ 5422 ] }, { "teal": 5725, "source": "contracts/validatorRegistry.algo.ts:1281", "pc": [ 5423 ] }, { "teal": 5726, "source": "contracts/validatorRegistry.algo.ts:1281", "pc": [ 5424 ] }, { "teal": 5727, "source": "contracts/validatorRegistry.algo.ts:1281", "pc": [ 5425, 5426 ] }, { "teal": 5728, "source": "contracts/validatorRegistry.algo.ts:1281", "pc": [ 5427, 5428, 5429 ] }, { "teal": 5733, "source": "contracts/validatorRegistry.algo.ts:1287", "pc": [ 5430, 5431 ] }, { "teal": 5736, "source": "contracts/validatorRegistry.algo.ts:1287", "errorMessage": "specified asset must be identical to the asset id defined as a requirement to stake", "pc": [ 5432 ] }, { "teal": 5742, "source": "contracts/validatorRegistry.algo.ts:1289", "pc": [ 5433, 5434 ] }, { "teal": 5743, "source": "contracts/validatorRegistry.algo.ts:1289", "pc": [ 5435, 5436 ] }, { "teal": 5744, "source": "contracts/validatorRegistry.algo.ts:1289", "pc": [ 5437 ] }, { "teal": 5745, "source": "contracts/validatorRegistry.algo.ts:1289", "pc": [ 5438, 5439, 5440 ] }, { "teal": 5753, "source": "contracts/validatorRegistry.algo.ts:1293", "pc": [ 5441, 5442 ] }, { "teal": 5754, "source": "contracts/validatorRegistry.algo.ts:1293", "pc": [ 5443, 5444 ] }, { "teal": 5755, "source": "contracts/validatorRegistry.algo.ts:1293", "pc": [ 5445 ] }, { "teal": 5756, "source": "contracts/validatorRegistry.algo.ts:1293", "pc": [ 5446, 5447 ] }, { "teal": 5757, "source": "contracts/validatorRegistry.algo.ts:1293", "pc": [ 5448, 5449, 5450 ] }, { "teal": 5758, "source": "contracts/validatorRegistry.algo.ts:1293", "pc": [ 5451 ] }, { "teal": 5759, "source": "contracts/validatorRegistry.algo.ts:1293", "pc": [ 5452, 5453, 5454 ] }, { "teal": 5762, "source": "contracts/validatorRegistry.algo.ts:1292", "errorMessage": "specified asset must be created by creator that is one of the linked addresses in an nfd", "pc": [ 5455 ] }, { "teal": 5768, "source": "contracts/validatorRegistry.algo.ts:1297", "pc": [ 5456, 5457 ] }, { "teal": 5769, "source": "contracts/validatorRegistry.algo.ts:1297", "pc": [ 5458, 5459 ] }, { "teal": 5770, "source": "contracts/validatorRegistry.algo.ts:1297", "pc": [ 5460 ] }, { "teal": 5771, "source": "contracts/validatorRegistry.algo.ts:1297", "pc": [ 5461, 5462, 5463 ] }, { "teal": 5776, "source": "contracts/validatorRegistry.algo.ts:1299", "pc": [ 5464, 5465 ] }, { "teal": 5777, "source": "contracts/validatorRegistry.algo.ts:1299", "pc": [ 5466, 5467 ] }, { "teal": 5781, "source": "contracts/validatorRegistry.algo.ts:1300", "pc": [ 5468, 5469 ] }, { "teal": 5782, "source": "contracts/validatorRegistry.algo.ts:1300", "pc": [ 5470, 5471, 5472 ] }, { "teal": 5785, "source": "contracts/validatorRegistry.algo.ts:1300", "errorMessage": "provided NFD must be valid", "pc": [ 5473 ] }, { "teal": 5793, "source": "contracts/validatorRegistry.algo.ts:1304", "pc": [ 5474, 5475 ] }, { "teal": 5794, "source": "contracts/validatorRegistry.algo.ts:1304", "pc": [ 5476, 5477 ] }, { "teal": 5795, "source": "contracts/validatorRegistry.algo.ts:1304", "pc": [ 5478 ] }, { "teal": 5798, "source": "contracts/validatorRegistry.algo.ts:1304", "errorMessage": "global state value does not exist: AppID.fromUint64(userOfferedNFDAppID).globalState('i.owner.a')", "pc": [ 5479 ] }, { "teal": 5799, "source": "contracts/validatorRegistry.algo.ts:1305", "pc": [ 5480, 5481 ] }, { "teal": 5800, "source": "contracts/validatorRegistry.algo.ts:1304", "pc": [ 5482 ] }, { "teal": 5801, "source": "contracts/validatorRegistry.algo.ts:1305", "pc": [ 5483 ] }, { "teal": 5802, "source": "contracts/validatorRegistry.algo.ts:1305", "pc": [ 5484, 5485, 5486 ] }, { "teal": 5803, "source": "contracts/validatorRegistry.algo.ts:1305", "pc": [ 5487, 5488 ] }, { "teal": 5804, "source": "contracts/validatorRegistry.algo.ts:1305", "pc": [ 5489, 5490 ] }, { "teal": 5805, "source": "contracts/validatorRegistry.algo.ts:1305", "pc": [ 5491, 5492, 5493 ] }, { "teal": 5806, "source": "contracts/validatorRegistry.algo.ts:1305", "pc": [ 5494 ] }, { "teal": 5810, "source": "contracts/validatorRegistry.algo.ts:1303", "errorMessage": "provided nfd for entry isn't owned or linked to the staker", "pc": [ 5495 ] }, { "teal": 5818, "source": "contracts/validatorRegistry.algo.ts:1311", "pc": [ 5496, 5497 ] }, { "teal": 5819, "source": "contracts/validatorRegistry.algo.ts:1311", "pc": [ 5498, 5499, 5500, 5501, 5502, 5503, 5504, 5505, 5506, 5507, 5508, 5509, 5510, 5511, 5512 ] }, { "teal": 5820, "source": "contracts/validatorRegistry.algo.ts:1311", "pc": [ 5513 ] }, { "teal": 5823, "source": "contracts/validatorRegistry.algo.ts:1311", "errorMessage": "global state value does not exist: AppID.fromUint64(userOfferedNFDAppID).globalState('i.parentAppID')", "pc": [ 5514 ] }, { "teal": 5824, "source": "contracts/validatorRegistry.algo.ts:1311", "pc": [ 5515 ] }, { "teal": 5825, "source": "contracts/validatorRegistry.algo.ts:1312", "pc": [ 5516, 5517 ] }, { "teal": 5826, "source": "contracts/validatorRegistry.algo.ts:1312", "pc": [ 5518, 5519, 5520 ] }, { "teal": 5827, "source": "contracts/validatorRegistry.algo.ts:1312", "pc": [ 5521 ] }, { "teal": 5828, "source": "contracts/validatorRegistry.algo.ts:1311", "pc": [ 5522 ] }, { "teal": 5831, "source": "contracts/validatorRegistry.algo.ts:1310", "errorMessage": "specified nfd must be a segment of the nfd the validator specified as a requirement", "pc": [ 5523 ] }, { "teal": 5834, "source": "contracts/validatorRegistry.algo.ts:1249", "pc": [ 5524 ] }, { "teal": 5846, "source": "contracts/validatorRegistry.algo.ts:1327", "pc": [ 5525, 5526, 5527 ] }, { "teal": 5849, "source": "contracts/validatorRegistry.algo.ts:1327", "pc": [ 5528 ] }, { "teal": 5853, "source": "contracts/validatorRegistry.algo.ts:1329", "pc": [ 5529, 5530 ] }, { "teal": 5854, "source": "contracts/validatorRegistry.algo.ts:1329", "pc": [ 5531, 5532, 5533, 5534, 5535, 5536, 5537, 5538 ] }, { "teal": 5855, "source": "contracts/validatorRegistry.algo.ts:1329", "pc": [ 5539 ] }, { "teal": 5858, "source": "contracts/validatorRegistry.algo.ts:1329", "errorMessage": "global state value does not exist: AppID.fromUint64(nfdAppID).globalState('i.name')", "pc": [ 5540 ] }, { "teal": 5859, "source": "contracts/validatorRegistry.algo.ts:1329", "pc": [ 5541, 5542 ] }, { "teal": 5867, "source": "contracts/validatorRegistry.algo.ts:1331", "pc": [ 5543 ] }, { "teal": 5868, "source": "contracts/validatorRegistry.algo.ts:1331", "pc": [ 5544, 5545 ] }, { "teal": 5869, "source": "contracts/validatorRegistry.algo.ts:1331", "pc": [ 5546, 5547 ] }, { "teal": 5870, "source": "contracts/validatorRegistry.algo.ts:1333", "pc": [ 5548, 5549, 5550, 5551, 5552, 5553 ] }, { "teal": 5871, "source": "contracts/validatorRegistry.algo.ts:1333", "pc": [ 5554, 5555 ] }, { "teal": 5875, "source": "contracts/validatorRegistry.algo.ts:1332", "pc": [ 5556, 5557 ] }, { "teal": 5876, "source": "contracts/validatorRegistry.algo.ts:1332", "pc": [ 5558, 5559 ] }, { "teal": 5880, "source": "contracts/validatorRegistry.algo.ts:1334", "pc": [ 5560, 5561 ] }, { "teal": 5881, "source": "contracts/validatorRegistry.algo.ts:1334", "pc": [ 5562 ] }, { "teal": 5882, "source": "contracts/validatorRegistry.algo.ts:1334", "pc": [ 5563 ] }, { "teal": 5883, "source": "contracts/validatorRegistry.algo.ts:1334", "pc": [ 5564 ] }, { "teal": 5884, "source": "contracts/validatorRegistry.algo.ts:1334", "pc": [ 5565, 5566, 5567 ] }, { "teal": 5885, "source": "contracts/validatorRegistry.algo.ts:1334", "pc": [ 5568 ] }, { "teal": 5886, "source": "contracts/validatorRegistry.algo.ts:1334", "pc": [ 5569 ] }, { "teal": 5887, "source": "contracts/validatorRegistry.algo.ts:1334", "pc": [ 5570, 5571 ] }, { "teal": 5888, "source": "contracts/validatorRegistry.algo.ts:1334", "pc": [ 5572, 5573 ] }, { "teal": 5889, "source": "contracts/validatorRegistry.algo.ts:1334", "pc": [ 5574 ] }, { "teal": 5890, "source": "contracts/validatorRegistry.algo.ts:1334", "pc": [ 5575, 5576 ] }, { "teal": 5893, "source": "contracts/validatorRegistry.algo.ts:1331", "pc": [ 5577 ] }, { "teal": 5894, "source": "contracts/validatorRegistry.algo.ts:1331", "pc": [ 5578, 5579 ] }, { "teal": 5897, "source": "contracts/validatorRegistry.algo.ts:1331", "pc": [ 5580 ] }, { "teal": 5898, "source": "contracts/validatorRegistry.algo.ts:1331", "pc": [ 5581, 5582 ] }, { "teal": 5899, "source": "contracts/validatorRegistry.algo.ts:1331", "pc": [ 5583 ] }, { "teal": 5900, "source": "contracts/validatorRegistry.algo.ts:1331", "pc": [ 5584 ] }, { "teal": 5901, "source": "contracts/validatorRegistry.algo.ts:1331", "pc": [ 5585, 5586 ] }, { "teal": 5902, "source": "contracts/validatorRegistry.algo.ts:1331", "pc": [ 5587, 5588, 5589 ] }, { "teal": 5903, "source": "contracts/validatorRegistry.algo.ts:1331", "pc": [ 5590 ] }, { "teal": 5904, "source": "contracts/validatorRegistry.algo.ts:1331", "pc": [ 5591 ] }, { "teal": 5907, "source": "contracts/validatorRegistry.algo.ts:1327", "pc": [ 5592, 5593 ] }, { "teal": 5908, "source": "contracts/validatorRegistry.algo.ts:1327", "pc": [ 5594 ] }, { "teal": 5919, "source": "contracts/validatorRegistry.algo.ts:1346", "pc": [ 5595, 5596, 5597 ] }, { "teal": 5922, "source": "contracts/validatorRegistry.algo.ts:1346", "pc": [ 5598 ] }, { "teal": 5923, "source": "contracts/validatorRegistry.algo.ts:1346", "pc": [ 5599, 5600 ] }, { "teal": 5930, "source": "contracts/validatorRegistry.algo.ts:1347", "pc": [ 5601 ] }, { "teal": 5931, "source": "contracts/validatorRegistry.algo.ts:1347", "pc": [ 5602, 5603 ] }, { "teal": 5932, "source": "contracts/validatorRegistry.algo.ts:1347", "pc": [ 5604, 5605 ] }, { "teal": 5936, "source": "contracts/validatorRegistry.algo.ts:1348", "pc": [ 5606, 5607 ] }, { "teal": 5937, "source": "contracts/validatorRegistry.algo.ts:1348", "pc": [ 5608, 5609 ] }, { "teal": 5941, "source": "contracts/validatorRegistry.algo.ts:1349", "pc": [ 5610, 5611, 5612, 5613, 5614, 5615, 5616, 5617, 5618, 5619, 5620, 5621, 5622, 5623, 5624 ] }, { "teal": 5942, "source": "contracts/validatorRegistry.algo.ts:1349", "pc": [ 5625, 5626 ] }, { "teal": 5943, "source": "contracts/validatorRegistry.algo.ts:1349", "pc": [ 5627, 5628, 5629, 5630, 5631, 5632, 5633, 5634, 5635, 5636, 5637, 5638, 5639, 5640, 5641 ] }, { "teal": 5944, "source": "contracts/validatorRegistry.algo.ts:1349", "pc": [ 5642, 5643 ] }, { "teal": 5947, "source": "contracts/validatorRegistry.algo.ts:1347", "pc": [ 5644 ] }, { "teal": 5948, "source": "contracts/validatorRegistry.algo.ts:1347", "pc": [ 5645, 5646 ] }, { "teal": 5951, "source": "contracts/validatorRegistry.algo.ts:1347", "pc": [ 5647 ] }, { "teal": 5955, "source": "contracts/validatorRegistry.algo.ts:1351", "pc": [ 5648, 5649 ] }, { "teal": 5956, "source": "contracts/validatorRegistry.algo.ts:1351", "pc": [ 5650, 5651 ] }, { "teal": 5960, "source": "contracts/validatorRegistry.algo.ts:1352", "pc": [ 5652 ] }, { "teal": 5961, "source": "contracts/validatorRegistry.algo.ts:1352", "pc": [ 5653, 5654 ] }, { "teal": 5966, "source": "contracts/validatorRegistry.algo.ts:1352", "pc": [ 5655, 5656 ] }, { "teal": 5967, "source": "contracts/validatorRegistry.algo.ts:1352", "pc": [ 5657, 5658 ] }, { "teal": 5968, "source": "contracts/validatorRegistry.algo.ts:1352", "pc": [ 5659 ] }, { "teal": 5969, "source": "contracts/validatorRegistry.algo.ts:1352", "pc": [ 5660 ] }, { "teal": 5970, "source": "contracts/validatorRegistry.algo.ts:1352", "pc": [ 5661, 5662, 5663 ] }, { "teal": 5974, "source": "contracts/validatorRegistry.algo.ts:1353", "pc": [ 5664, 5665 ] }, { "teal": 5975, "source": "contracts/validatorRegistry.algo.ts:1353", "pc": [ 5666, 5667 ] }, { "teal": 5976, "source": "contracts/validatorRegistry.algo.ts:1353", "pc": [ 5668, 5669 ] }, { "teal": 5977, "source": "contracts/validatorRegistry.algo.ts:1353", "pc": [ 5670 ] }, { "teal": 5978, "source": "contracts/validatorRegistry.algo.ts:1353", "pc": [ 5671, 5672 ] }, { "teal": 5983, "source": "contracts/validatorRegistry.algo.ts:1354", "pc": [ 5673, 5674 ] }, { "teal": 5984, "source": "contracts/validatorRegistry.algo.ts:1354", "pc": [ 5675, 5676 ] }, { "teal": 5985, "source": "contracts/validatorRegistry.algo.ts:1354", "pc": [ 5677 ] }, { "teal": 5986, "source": "contracts/validatorRegistry.algo.ts:1354", "pc": [ 5678 ] }, { "teal": 5987, "source": "contracts/validatorRegistry.algo.ts:1354", "pc": [ 5679, 5680, 5681 ] }, { "teal": 5988, "source": "contracts/validatorRegistry.algo.ts:1354", "pc": [ 5682, 5683 ] }, { "teal": 5989, "source": "contracts/validatorRegistry.algo.ts:1354", "pc": [ 5684, 5685 ] }, { "teal": 5990, "source": "contracts/validatorRegistry.algo.ts:1354", "pc": [ 5686 ] }, { "teal": 5991, "source": "contracts/validatorRegistry.algo.ts:1354", "pc": [ 5687 ] }, { "teal": 5994, "source": "contracts/validatorRegistry.algo.ts:1354", "pc": [ 5688, 5689, 5690 ] }, { "teal": 5999, "source": "contracts/validatorRegistry.algo.ts:1355", "pc": [ 5691 ] }, { "teal": 6000, "source": "contracts/validatorRegistry.algo.ts:1355", "pc": [ 5692, 5693, 5694 ] }, { "teal": 6007, "source": "contracts/validatorRegistry.algo.ts:1352", "pc": [ 5695, 5696 ] }, { "teal": 6008, "source": "contracts/validatorRegistry.algo.ts:1352", "pc": [ 5697, 5698 ] }, { "teal": 6009, "source": "contracts/validatorRegistry.algo.ts:1352", "pc": [ 5699 ] }, { "teal": 6010, "source": "contracts/validatorRegistry.algo.ts:1352", "pc": [ 5700, 5701 ] }, { "teal": 6011, "source": "contracts/validatorRegistry.algo.ts:1352", "pc": [ 5702, 5703, 5704 ] }, { "teal": 6016, "source": "contracts/validatorRegistry.algo.ts:1358", "pc": [ 5705 ] }, { "teal": 6020, "source": "contracts/validatorRegistry.algo.ts:1346", "pc": [ 5706, 5707 ] }, { "teal": 6023, "source": "contracts/validatorRegistry.algo.ts:1346", "pc": [ 5708, 5709 ] }, { "teal": 6024, "source": "contracts/validatorRegistry.algo.ts:1346", "pc": [ 5710 ] }, { "teal": 6032, "source": "contracts/validatorRegistry.algo.ts:1366", "pc": [ 5711, 5712, 5713 ] }, { "teal": 6035, "source": "contracts/validatorRegistry.algo.ts:1366", "pc": [ 5714 ] }, { "teal": 6039, "source": "contracts/validatorRegistry.algo.ts:1367", "pc": [ 5715, 5716, 5717 ] }, { "teal": 6040, "source": "contracts/validatorRegistry.algo.ts:1367", "pc": [ 5718, 5719 ] }, { "teal": 6044, "source": "contracts/validatorRegistry.algo.ts:1369", "pc": [ 5720, 5721 ] }, { "teal": 6045, "source": "contracts/validatorRegistry.algo.ts:1369", "pc": [ 5722, 5723 ] }, { "teal": 6046, "source": "contracts/validatorRegistry.algo.ts:1369", "pc": [ 5724 ] }, { "teal": 6047, "source": "contracts/validatorRegistry.algo.ts:1369", "pc": [ 5725 ] }, { "teal": 6048, "source": "contracts/validatorRegistry.algo.ts:1369", "pc": [ 5726, 5727 ] }, { "teal": 6049, "source": "contracts/validatorRegistry.algo.ts:1369", "pc": [ 5728 ] }, { "teal": 6050, "source": "contracts/validatorRegistry.algo.ts:1369", "pc": [ 5729 ] }, { "teal": 6051, "source": "contracts/validatorRegistry.algo.ts:1369", "pc": [ 5730 ] }, { "teal": 6052, "source": "contracts/validatorRegistry.algo.ts:1369", "pc": [ 5731 ] }, { "teal": 6053, "source": "contracts/validatorRegistry.algo.ts:1369", "pc": [ 5732 ] }, { "teal": 6056, "source": "contracts/validatorRegistry.algo.ts:1369", "errorMessage": "wideRatio failed", "pc": [ 5733 ] }, { "teal": 6059, "source": "contracts/validatorRegistry.algo.ts:1366", "pc": [ 5734, 5735 ] }, { "teal": 6060, "source": "contracts/validatorRegistry.algo.ts:1366", "pc": [ 5736 ] }, { "teal": 6067, "source": "contracts/validatorRegistry.algo.ts:1376", "pc": [ 5737, 5738, 5739 ] }, { "teal": 6070, "source": "contracts/validatorRegistry.algo.ts:1376", "pc": [ 5740 ] }, { "teal": 6074, "source": "contracts/validatorRegistry.algo.ts:1377", "pc": [ 5741, 5742, 5743 ] }, { "teal": 6075, "source": "contracts/validatorRegistry.algo.ts:1377", "pc": [ 5744, 5745 ] }, { "teal": 6079, "source": "contracts/validatorRegistry.algo.ts:1379", "pc": [ 5746, 5747 ] }, { "teal": 6080, "source": "contracts/validatorRegistry.algo.ts:1379", "pc": [ 5748, 5749, 5750 ] }, { "teal": 6081, "source": "contracts/validatorRegistry.algo.ts:1379", "pc": [ 5751 ] }, { "teal": 6082, "source": "contracts/validatorRegistry.algo.ts:1379", "pc": [ 5752 ] }, { "teal": 6083, "source": "contracts/validatorRegistry.algo.ts:1379", "pc": [ 5753, 5754 ] }, { "teal": 6084, "source": "contracts/validatorRegistry.algo.ts:1379", "pc": [ 5755 ] }, { "teal": 6085, "source": "contracts/validatorRegistry.algo.ts:1379", "pc": [ 5756 ] }, { "teal": 6086, "source": "contracts/validatorRegistry.algo.ts:1379", "pc": [ 5757 ] }, { "teal": 6087, "source": "contracts/validatorRegistry.algo.ts:1379", "pc": [ 5758 ] }, { "teal": 6088, "source": "contracts/validatorRegistry.algo.ts:1379", "pc": [ 5759 ] }, { "teal": 6091, "source": "contracts/validatorRegistry.algo.ts:1379", "errorMessage": "wideRatio failed", "pc": [ 5760 ] }, { "teal": 6094, "source": "contracts/validatorRegistry.algo.ts:1376", "pc": [ 5761, 5762 ] }, { "teal": 6095, "source": "contracts/validatorRegistry.algo.ts:1376", "pc": [ 5763 ] }, { "teal": 6101, "source": "contracts/validatorRegistry.algo.ts:1385", "pc": [ 5764, 5765, 5766 ] }, { "teal": 6105, "source": "contracts/validatorRegistry.algo.ts:1386", "pc": [ 5767, 5768 ] }, { "teal": 6106, "source": "contracts/validatorRegistry.algo.ts:1385", "pc": [ 5769 ] }, { "teal": 6110, "source": "contracts/validatorRegistry.algo.ts:1389", "pc": [ 5770, 5771, 5772 ] }, { "teal": 6114, "source": "contracts/validatorRegistry.algo.ts:1390", "pc": [ 5773 ] }, { "teal": 6115, "source": "contracts/validatorRegistry.algo.ts:1389", "pc": [ 5774 ] }, { "teal": 6119, "source": "contracts/validatorRegistry.algo.ts:1393", "pc": [ 5775, 5776, 5777 ] }, { "teal": 6122, "source": "contracts/validatorRegistry.algo.ts:1393", "pc": [ 5778 ] }, { "teal": 6126, "source": "contracts/validatorRegistry.algo.ts:1402", "pc": [ 5779, 5780 ] }, { "teal": 6127, "source": "contracts/validatorRegistry.algo.ts:1402", "pc": [ 5781, 5782 ] }, { "teal": 6131, "source": "contracts/validatorRegistry.algo.ts:1403", "pc": [ 5783, 5784 ] }, { "teal": 6132, "source": "contracts/validatorRegistry.algo.ts:1403", "pc": [ 5785, 5786 ] }, { "teal": 6133, "source": "contracts/validatorRegistry.algo.ts:1403", "pc": [ 5787, 5788 ] }, { "teal": 6134, "source": "contracts/validatorRegistry.algo.ts:1403", "pc": [ 5789 ] }, { "teal": 6135, "source": "contracts/validatorRegistry.algo.ts:1403", "pc": [ 5790 ] }, { "teal": 6136, "source": "contracts/validatorRegistry.algo.ts:1403", "pc": [ 5791, 5792 ] }, { "teal": 6140, "source": "contracts/validatorRegistry.algo.ts:1404", "pc": [ 5793, 5794 ] }, { "teal": 6141, "source": "contracts/validatorRegistry.algo.ts:1404", "pc": [ 5795, 5796 ] }, { "teal": 6142, "source": "contracts/validatorRegistry.algo.ts:1404", "pc": [ 5797, 5798 ] }, { "teal": 6143, "source": "contracts/validatorRegistry.algo.ts:1404", "pc": [ 5799 ] }, { "teal": 6144, "source": "contracts/validatorRegistry.algo.ts:1404", "pc": [ 5800 ] }, { "teal": 6145, "source": "contracts/validatorRegistry.algo.ts:1404", "pc": [ 5801, 5802 ] }, { "teal": 6149, "source": "contracts/validatorRegistry.algo.ts:1405", "pc": [ 5803, 5804 ] }, { "teal": 6150, "source": "contracts/validatorRegistry.algo.ts:1405", "pc": [ 5805, 5806 ] }, { "teal": 6151, "source": "contracts/validatorRegistry.algo.ts:1405", "pc": [ 5807, 5808 ] }, { "teal": 6152, "source": "contracts/validatorRegistry.algo.ts:1405", "pc": [ 5809 ] }, { "teal": 6153, "source": "contracts/validatorRegistry.algo.ts:1405", "pc": [ 5810 ] }, { "teal": 6154, "source": "contracts/validatorRegistry.algo.ts:1405", "pc": [ 5811, 5812 ] }, { "teal": 6158, "source": "contracts/validatorRegistry.algo.ts:1406", "pc": [ 5813, 5814 ] }, { "teal": 6159, "source": "contracts/validatorRegistry.algo.ts:1406", "pc": [ 5815, 5816 ] }, { "teal": 6160, "source": "contracts/validatorRegistry.algo.ts:1406", "pc": [ 5817, 5818 ] }, { "teal": 6161, "source": "contracts/validatorRegistry.algo.ts:1406", "pc": [ 5819 ] }, { "teal": 6162, "source": "contracts/validatorRegistry.algo.ts:1406", "pc": [ 5820 ] }, { "teal": 6163, "source": "contracts/validatorRegistry.algo.ts:1406", "pc": [ 5821, 5822 ] }, { "teal": 6167, "source": "contracts/validatorRegistry.algo.ts:1407", "pc": [ 5823, 5824 ] }, { "teal": 6168, "source": "contracts/validatorRegistry.algo.ts:1407", "pc": [ 5825, 5826 ] }, { "teal": 6169, "source": "contracts/validatorRegistry.algo.ts:1407", "pc": [ 5827, 5828 ] }, { "teal": 6170, "source": "contracts/validatorRegistry.algo.ts:1407", "pc": [ 5829 ] }, { "teal": 6171, "source": "contracts/validatorRegistry.algo.ts:1407", "pc": [ 5830 ] }, { "teal": 6172, "source": "contracts/validatorRegistry.algo.ts:1407", "pc": [ 5831, 5832 ] }, { "teal": 6176, "source": "contracts/validatorRegistry.algo.ts:1408", "pc": [ 5833, 5834 ] }, { "teal": 6177, "source": "contracts/validatorRegistry.algo.ts:1408", "pc": [ 5835, 5836 ] }, { "teal": 6178, "source": "contracts/validatorRegistry.algo.ts:1408", "pc": [ 5837, 5838 ] }, { "teal": 6179, "source": "contracts/validatorRegistry.algo.ts:1408", "pc": [ 5839 ] }, { "teal": 6180, "source": "contracts/validatorRegistry.algo.ts:1408", "pc": [ 5840 ] }, { "teal": 6181, "source": "contracts/validatorRegistry.algo.ts:1408", "pc": [ 5841, 5842 ] }, { "teal": 6185, "source": "contracts/validatorRegistry.algo.ts:1409", "pc": [ 5843, 5844 ] }, { "teal": 6186, "source": "contracts/validatorRegistry.algo.ts:1409", "pc": [ 5845, 5846 ] }, { "teal": 6187, "source": "contracts/validatorRegistry.algo.ts:1409", "pc": [ 5847, 5848 ] }, { "teal": 6188, "source": "contracts/validatorRegistry.algo.ts:1409", "pc": [ 5849 ] }, { "teal": 6189, "source": "contracts/validatorRegistry.algo.ts:1409", "pc": [ 5850 ] }, { "teal": 6190, "source": "contracts/validatorRegistry.algo.ts:1409", "pc": [ 5851, 5852 ] }, { "teal": 6194, "source": "contracts/validatorRegistry.algo.ts:1410", "pc": [ 5853, 5854 ] }, { "teal": 6197, "source": "contracts/validatorRegistry.algo.ts:1393", "pc": [ 5855, 5856 ] }, { "teal": 6198, "source": "contracts/validatorRegistry.algo.ts:1393", "pc": [ 5857 ] }, { "teal": 6202, "source": "contracts/validatorRegistry.algo.ts:1413", "pc": [ 5858, 5859, 5860 ] }, { "teal": 6206, "source": "contracts/validatorRegistry.algo.ts:1417", "pc": [ 5861, 5862, 5863 ] }, { "teal": 6207, "source": "contracts/validatorRegistry.algo.ts:1417", "pc": [ 5864, 5865 ] }, { "teal": 6208, "source": "contracts/validatorRegistry.algo.ts:1417", "pc": [ 5866, 5867, 5868 ] }, { "teal": 6209, "source": "contracts/validatorRegistry.algo.ts:1417", "pc": [ 5869 ] }, { "teal": 6210, "source": "contracts/validatorRegistry.algo.ts:1417", "pc": [ 5870 ] }, { "teal": 6211, "source": "contracts/validatorRegistry.algo.ts:1413", "pc": [ 5871 ] }, { "teal": 6214, "source": "contracts/validatorRegistry.algo.ts:50", "pc": [ 5872, 5873, 5874, 5875, 5876, 5877 ] }, { "teal": 6215, "source": "contracts/validatorRegistry.algo.ts:50", "pc": [ 5878, 5879, 5880 ] }, { "teal": 6216, "source": "contracts/validatorRegistry.algo.ts:50", "pc": [ 5881, 5882, 5883, 5884 ] }, { "teal": 6219, "source": "contracts/validatorRegistry.algo.ts:50", "errorMessage": "this contract does not implement the given ABI method for create NoOp", "pc": [ 5885 ] }, { "teal": 6222, "source": "contracts/validatorRegistry.algo.ts:50", "pc": [ 5886, 5887, 5888, 5889, 5890, 5891 ] }, { "teal": 6223, "source": "contracts/validatorRegistry.algo.ts:50", "pc": [ 5892, 5893, 5894, 5895, 5896, 5897 ] }, { "teal": 6224, "source": "contracts/validatorRegistry.algo.ts:50", "pc": [ 5898, 5899, 5900, 5901, 5902, 5903 ] }, { "teal": 6225, "source": "contracts/validatorRegistry.algo.ts:50", "pc": [ 5904, 5905, 5906, 5907, 5908, 5909 ] }, { "teal": 6226, "source": "contracts/validatorRegistry.algo.ts:50", "pc": [ 5910, 5911, 5912, 5913, 5914, 5915 ] }, { "teal": 6227, "source": "contracts/validatorRegistry.algo.ts:50", "pc": [ 5916, 5917, 5918, 5919, 5920, 5921 ] }, { "teal": 6228, "source": "contracts/validatorRegistry.algo.ts:50", "pc": [ 5922, 5923, 5924, 5925, 5926, 5927 ] }, { "teal": 6229, "source": "contracts/validatorRegistry.algo.ts:50", "pc": [ 5928, 5929, 5930, 5931, 5932, 5933 ] }, { "teal": 6230, "source": "contracts/validatorRegistry.algo.ts:50", "pc": [ 5934, 5935, 5936, 5937, 5938, 5939 ] }, { "teal": 6231, "source": "contracts/validatorRegistry.algo.ts:50", "pc": [ 5940, 5941, 5942, 5943, 5944, 5945 ] }, { "teal": 6232, "source": "contracts/validatorRegistry.algo.ts:50", "pc": [ 5946, 5947, 5948, 5949, 5950, 5951 ] }, { "teal": 6233, "source": "contracts/validatorRegistry.algo.ts:50", "pc": [ 5952, 5953, 5954, 5955, 5956, 5957 ] }, { "teal": 6234, "source": "contracts/validatorRegistry.algo.ts:50", "pc": [ 5958, 5959, 5960, 5961, 5962, 5963 ] }, { "teal": 6235, "source": "contracts/validatorRegistry.algo.ts:50", "pc": [ 5964, 5965, 5966, 5967, 5968, 5969 ] }, { "teal": 6236, "source": "contracts/validatorRegistry.algo.ts:50", "pc": [ 5970, 5971, 5972, 5973, 5974, 5975 ] }, { "teal": 6237, "source": "contracts/validatorRegistry.algo.ts:50", "pc": [ 5976, 5977, 5978, 5979, 5980, 5981 ] }, { "teal": 6238, "source": "contracts/validatorRegistry.algo.ts:50", "pc": [ 5982, 5983, 5984, 5985, 5986, 5987 ] }, { "teal": 6239, "source": "contracts/validatorRegistry.algo.ts:50", "pc": [ 5988, 5989, 5990, 5991, 5992, 5993 ] }, { "teal": 6240, "source": "contracts/validatorRegistry.algo.ts:50", "pc": [ 5994, 5995, 5996, 5997, 5998, 5999 ] }, { "teal": 6241, "source": "contracts/validatorRegistry.algo.ts:50", "pc": [ 6000, 6001, 6002, 6003, 6004, 6005 ] }, { "teal": 6242, "source": "contracts/validatorRegistry.algo.ts:50", "pc": [ 6006, 6007, 6008, 6009, 6010, 6011 ] }, { "teal": 6243, "source": "contracts/validatorRegistry.algo.ts:50", "pc": [ 6012, 6013, 6014, 6015, 6016, 6017 ] }, { "teal": 6244, "source": "contracts/validatorRegistry.algo.ts:50", "pc": [ 6018, 6019, 6020, 6021, 6022, 6023 ] }, { "teal": 6245, "source": "contracts/validatorRegistry.algo.ts:50", "pc": [ 6024, 6025, 6026, 6027, 6028, 6029 ] }, { "teal": 6246, "source": "contracts/validatorRegistry.algo.ts:50", "pc": [ 6030, 6031, 6032, 6033, 6034, 6035 ] }, { "teal": 6247, "source": "contracts/validatorRegistry.algo.ts:50", "pc": [ 6036, 6037, 6038, 6039, 6040, 6041 ] }, { "teal": 6248, "source": "contracts/validatorRegistry.algo.ts:50", "pc": [ 6042, 6043, 6044, 6045, 6046, 6047 ] }, { "teal": 6249, "source": "contracts/validatorRegistry.algo.ts:50", "pc": [ 6048, 6049, 6050, 6051, 6052, 6053 ] }, { "teal": 6250, "source": "contracts/validatorRegistry.algo.ts:50", "pc": [ 6054, 6055, 6056, 6057, 6058, 6059 ] }, { "teal": 6251, "source": "contracts/validatorRegistry.algo.ts:50", "pc": [ 6060, 6061, 6062, 6063, 6064, 6065 ] }, { "teal": 6252, "source": "contracts/validatorRegistry.algo.ts:50", "pc": [ 6066, 6067, 6068, 6069, 6070, 6071 ] }, { "teal": 6253, "source": "contracts/validatorRegistry.algo.ts:50", "pc": [ 6072, 6073, 6074, 6075, 6076, 6077 ] }, { "teal": 6254, "source": "contracts/validatorRegistry.algo.ts:50", "pc": [ 6078, 6079, 6080, 6081, 6082, 6083 ] }, { "teal": 6255, "source": "contracts/validatorRegistry.algo.ts:50", "pc": [ 6084, 6085, 6086 ] }, { "teal": 6256, "source": "contracts/validatorRegistry.algo.ts:50", "pc": [ 6087, 6088, 6089, 6090, 6091, 6092, 6093, 6094, 6095, 6096, 6097, 6098, 6099, 6100, 6101, 6102, 6103, 6104, 6105, 6106, 6107, 6108, 6109, 6110, 6111, 6112, 6113, 6114, 6115, 6116, 6117, 6118, 6119, 6120, 6121, 6122, 6123, 6124, 6125, 6126, 6127, 6128, 6129, 6130, 6131, 6132, 6133, 6134, 6135, 6136, 6137, 6138, 6139, 6140, 6141, 6142, 6143, 6144, 6145, 6146, 6147, 6148, 6149, 6150, 6151, 6152, 6153, 6154 ] }, { "teal": 6259, "source": "contracts/validatorRegistry.algo.ts:50", "errorMessage": "this contract does not implement the given ABI method for call NoOp", "pc": [ 6155 ] } ], "pcOffsetMethod": "cblocks" }, "clear": { "sourceInfo": [], "pcOffsetMethod": "none" } }, "source": { "approval": "I3ByYWdtYSB2ZXJzaW9uIDExCmludGNibG9jayAwIDEgOCAyNCAxOCAyNjggMzIgNiAzIDI0MiAyIDEwIDI1MiAyNjAgNzAwIDQgMTAwMDAwIDkwMCAxNiAyMDAgNDAgNzIgMTkyIDI0NCAxMDAwMDAwIDQwOTYgNSAyMjYgVE1QTF9uZmRSZWdpc3RyeUFwcElkIDMwMCA0MzIgODkyIDEwMDAgMjg1MDAgNTAwMDAgMTEgODAgMTQ1IDE1MyAyMDkKYnl0ZWNibG9jayAweDc2IDB4IDB4MTUxZjdjNzUgMHg3MzcwNzMgMHg3Mzc0NjE2YjY1NjQgMHgwMCAweDZlNzU2ZDUzNzQ2MTZiNjU3MjczIDB4MDAwMDAwMDAwMDAwMDAwMCAweDBhODEwMSAweDcwNmY2ZjZjNTQ2NTZkNzA2YzYxNzQ2NTQxNzA3MDcyNmY3NjYxNmM0Mjc5NzQ2NTczIDB4NjkyZTZmNzc2ZTY1NzIyZTYxIDB4NmU3NTZkNTYgMHg2OTZlNjk3NCAweDYzZjNmMjhiIDB4MTJmNGJkNGIKCi8vIFRoaXMgVEVBTCB3YXMgZ2VuZXJhdGVkIGJ5IFRFQUxTY3JpcHQgdjAuMTA1LjQKLy8gaHR0cHM6Ly9naXRodWIuY29tL2FsZ29yYW5kZm91bmRhdGlvbi9URUFMU2NyaXB0CgovLyBUaGlzIGNvbnRyYWN0IGlzIGNvbXBsaWFudCB3aXRoIGFuZC9vciBpbXBsZW1lbnRzIHRoZSBmb2xsb3dpbmcgQVJDczogWyBBUkM0IF0KCi8vIFRoZSBmb2xsb3dpbmcgdGVuIGxpbmVzIG9mIFRFQUwgaGFuZGxlIGluaXRpYWwgcHJvZ3JhbSBmbG93Ci8vIFRoaXMgcGF0dGVybiBpcyB1c2VkIHRvIG1ha2UgaXQgZWFzeSBmb3IgYW55b25lIHRvIHBhcnNlIHRoZSBzdGFydCBvZiB0aGUgcHJvZ3JhbSBhbmQgZGV0ZXJtaW5lIGlmIGEgc3BlY2lmaWMgYWN0aW9uIGlzIGFsbG93ZWQKLy8gSGVyZSwgYWN0aW9uIHJlZmVycyB0byB0aGUgT25Db21wbGV0ZSBpbiBjb21iaW5hdGlvbiB3aXRoIHdoZXRoZXIgdGhlIGFwcCBpcyBiZWluZyBjcmVhdGVkIG9yIGNhbGxlZAovLyBFdmVyeSBwb3NzaWJsZSBhY3Rpb24gZm9yIHRoaXMgY29udHJhY3QgaXMgcmVwcmVzZW50ZWQgaW4gdGhlIHN3aXRjaCBzdGF0ZW1lbnQKLy8gSWYgdGhlIGFjdGlvbiBpcyBub3QgaW1wbGVtZW50ZWQgaW4gdGhlIGNvbnRyYWN0LCBpdHMgcmVzcGVjdGl2ZSBicmFuY2ggd2lsbCBiZSAiKk5PVF9JTVBMRU1FTlRFRCIgd2hpY2gganVzdCBjb250YWlucyAiZXJyIgp0eG4gQXBwbGljYXRpb25JRAohCmludGMgNyAvLyA2CioKdHhuIE9uQ29tcGxldGlvbgorCnN3aXRjaCAqY2FsbF9Ob09wICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqY3JlYXRlX05vT3AgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVEICpOT1RfSU1QTEVNRU5URUQgKk5PVF9JTVBMRU1FTlRFRCAqTk9UX0lNUExFTUVOVEVECgoqTk9UX0lNUExFTUVOVEVEOgoJLy8gVGhlIHJlcXVlc3RlZCBhY3Rpb24gaXMgbm90IGltcGxlbWVudGVkIGluIHRoaXMgY29udHJhY3QuIEFyZSB5b3UgdXNpbmcgdGhlIGNvcnJlY3QgT25Db21wbGV0ZT8gRGlkIHlvdSBzZXQgeW91ciBhcHAgSUQ/CgllcnIKCi8vIGNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkCiphYmlfcm91dGVfY3JlYXRlQXBwbGljYXRpb246CgkvLyBleGVjdXRlIGNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkCgljYWxsc3ViIGNyZWF0ZUFwcGxpY2F0aW9uCglpbnRjIDEgLy8gMQoJcmV0dXJuCgovLyBjcmVhdGVBcHBsaWNhdGlvbigpOiB2b2lkCmNyZWF0ZUFwcGxpY2F0aW9uOgoJcHJvdG8gMCAwCgoJLy8gY29udHJhY3RzL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6ODIKCS8vIHRoaXMuc3Rha2luZ1Bvb2xJbml0aWFsaXplZC52YWx1ZSA9IGZhbHNlCglieXRlYyAxMiAvLyAgImluaXQiCglpbnRjIDAgLy8gMAoJYnl0ZWMgNSAvLyAweDAwCglpbnRjIDAgLy8gMAoJdW5jb3ZlciAyCglzZXRiaXQKCWFwcF9nbG9iYWxfcHV0CgoJLy8gY29udHJhY3RzL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6ODMKCS8vIHRoaXMubnVtVmFsaWRhdG9ycy52YWx1ZSA9IDAKCWJ5dGVjIDExIC8vICAibnVtViIKCWludGMgMCAvLyAwCglhcHBfZ2xvYmFsX3B1dAoKCS8vIGNvbnRyYWN0cy92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjg0CgkvLyB0aGlzLm51bVN0YWtlcnMudmFsdWUgPSAwCglieXRlYyA2IC8vICAibnVtU3Rha2VycyIKCWludGMgMCAvLyAwCglhcHBfZ2xvYmFsX3B1dAoKCS8vIGNvbnRyYWN0cy92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjg1CgkvLyB0aGlzLnRvdGFsQWxnb1N0YWtlZC52YWx1ZSA9IDAKCWJ5dGVjIDQgLy8gICJzdGFrZWQiCglpbnRjIDAgLy8gMAoJYXBwX2dsb2JhbF9wdXQKCXJldHN1YgoKLy8gaW5pdFN0YWtpbmdDb250cmFjdCh1aW50NjQpdm9pZAoqYWJpX3JvdXRlX2luaXRTdGFraW5nQ29udHJhY3Q6CgkvLyBhcHByb3ZhbFByb2dyYW1TaXplOiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWJ0b2kKCgkvLyBleGVjdXRlIGluaXRTdGFraW5nQ29udHJhY3QodWludDY0KXZvaWQKCWNhbGxzdWIgaW5pdFN0YWtpbmdDb250cmFjdAoJaW50YyAxIC8vIDEKCXJldHVybgoKLy8gaW5pdFN0YWtpbmdDb250cmFjdChhcHByb3ZhbFByb2dyYW1TaXplOiB1aW50NjQpOiB2b2lkCmluaXRTdGFraW5nQ29udHJhY3Q6Cglwcm90byAxIDAKCgkvLyBjb250cmFjdHMvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo5MAoJLy8gdGhpcy5zdGFraW5nUG9vbEFwcHJvdmFsUHJvZ3JhbS5jcmVhdGUoYXBwcm92YWxQcm9ncmFtU2l6ZSkKCWJ5dGVjIDkgLy8gICJwb29sVGVtcGxhdGVBcHByb3ZhbEJ5dGVzIgoJZnJhbWVfZGlnIC0xIC8vIGFwcHJvdmFsUHJvZ3JhbVNpemU6IHVpbnQ2NAoJYm94X2NyZWF0ZQoJcG9wCglyZXRzdWIKCi8vIGxvYWRTdGFraW5nQ29udHJhY3REYXRhKHVpbnQ2NCxieXRlW10pdm9pZAoqYWJpX3JvdXRlX2xvYWRTdGFraW5nQ29udHJhY3REYXRhOgoJLy8gZGF0YTogYnl0ZVtdCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAyCglleHRyYWN0IDIgMAoKCS8vIG9mZnNldDogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglidG9pCgoJLy8gZXhlY3V0ZSBsb2FkU3Rha2luZ0NvbnRyYWN0RGF0YSh1aW50NjQsYnl0ZVtdKXZvaWQKCWNhbGxzdWIgbG9hZFN0YWtpbmdDb250cmFjdERhdGEKCWludGMgMSAvLyAxCglyZXR1cm4KCi8vIGxvYWRTdGFraW5nQ29udHJhY3REYXRhKG9mZnNldDogdWludDY0LCBkYXRhOiBieXRlcyk6IHZvaWQKbG9hZFN0YWtpbmdDb250cmFjdERhdGE6Cglwcm90byAyIDAKCgkvLyBjb250cmFjdHMvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo5NAoJLy8gYXNzZXJ0KCF0aGlzLnN0YWtpbmdQb29sSW5pdGlhbGl6ZWQudmFsdWUpCglieXRlYyAxMiAvLyAgImluaXQiCglhcHBfZ2xvYmFsX2dldAoJaW50YyAwIC8vIDAKCWdldGJpdAoJIQoJYXNzZXJ0CgoJLy8gY29udHJhY3RzL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6OTUKCS8vIHRoaXMuc3Rha2luZ1Bvb2xBcHByb3ZhbFByb2dyYW0ucmVwbGFjZShvZmZzZXQsIGRhdGEpCglieXRlYyA5IC8vICAicG9vbFRlbXBsYXRlQXBwcm92YWxCeXRlcyIKCWZyYW1lX2RpZyAtMSAvLyBvZmZzZXQ6IHVpbnQ2NAoJZnJhbWVfZGlnIC0yIC8vIGRhdGE6IGJ5dGVzCglib3hfcmVwbGFjZQoJcmV0c3ViCgovLyBmaW5hbGl6ZVN0YWtpbmdDb250cmFjdCgpdm9pZAoqYWJpX3JvdXRlX2ZpbmFsaXplU3Rha2luZ0NvbnRyYWN0OgoJLy8gZXhlY3V0ZSBmaW5hbGl6ZVN0YWtpbmdDb250cmFjdCgpdm9pZAoJY2FsbHN1YiBmaW5hbGl6ZVN0YWtpbmdDb250cmFjdAoJaW50YyAxIC8vIDEKCXJldHVybgoKLy8gZmluYWxpemVTdGFraW5nQ29udHJhY3QoKTogdm9pZApmaW5hbGl6ZVN0YWtpbmdDb250cmFjdDoKCXByb3RvIDAgMAoKCS8vIGNvbnRyYWN0cy92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjk5CgkvLyB0aGlzLnN0YWtpbmdQb29sSW5pdGlhbGl6ZWQudmFsdWUgPSB0cnVlCglieXRlYyAxMiAvLyAgImluaXQiCglpbnRjIDEgLy8gMQoJYnl0ZWMgNSAvLyAweDAwCglpbnRjIDAgLy8gMAoJdW5jb3ZlciAyCglzZXRiaXQKCWFwcF9nbG9iYWxfcHV0CglyZXRzdWIKCi8vIGdhcygpdm9pZAoqYWJpX3JvdXRlX2dhczoKCS8vIGV4ZWN1dGUgZ2FzKCl2b2lkCgljYWxsc3ViIGdhcwoJaW50YyAxIC8vIDEKCXJldHVybgoKLy8gZ2FzKCk6IHZvaWQKLy8KLy8gZ2FzIGlzIGEgZHVtbXkgbm8tb3AgY2FsbCB0aGF0IGNhbiBiZSB1c2VkIHRvIHBvb2wtdXAgcmVzb3VyY2UgcmVmZXJlbmNlcyBhbmQgb3Bjb2RlIGNvc3QKZ2FzOgoJcHJvdG8gMCAwCglyZXRzdWIKCi8vIGdldE1ickFtb3VudHMoKSh1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50NjQpCiphYmlfcm91dGVfZ2V0TWJyQW1vdW50czoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZWMgMiAvLyAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBnZXRNYnJBbW91bnRzKCkodWludDY0LHVpbnQ2NCx1aW50NjQsdWludDY0KQoJY2FsbHN1YiBnZXRNYnJBbW91bnRzCgljb25jYXQKCWxvZwoJaW50YyAxIC8vIDEKCXJldHVybgoKLy8gZ2V0TWJyQW1vdW50cygpOiBNYnJBbW91bnRzCi8vCi8vIFJldHVybnMgdGhlIE1CUiBhbW91bnRzIG5lZWRlZCBmb3IgdmFyaW91cyBhY3Rpb25zOgovLyBbCi8vIGFkZFZhbGlkYXRvck1icjogdWludDY0IC0gbWJyIG5lZWRlZCB0byBhZGQgYSBuZXcgdmFsaWRhdG9yIC0gcGFpZCB0byB2YWxpZGF0b3IgY29udHJhY3QKLy8gYWRkUG9vbE1icjogdWludDY0IC0gbWJyIG5lZWRlZCB0byBhZGQgYSBuZXcgcG9vbCAtIHBhaWQgdG8gdmFsaWRhdG9yCi8vIHBvb2xJbml0TWJyOiB1aW50NjQgLSBtYnIgbmVlZGVkIHRvIGluaXRTdG9yYWdlKCkgb2YgcG9vbCAtIHBhaWQgdG8gcG9vbCBpdHNlbGYKLy8gYWRkU3Rha2VyTWJyOiB1aW50NjQgLSBtYnIgc3Rha2VyIG5lZWRzIHRvIGFkZCB0byBmaXJzdCBzdGFraW5nIHBheW1lbnQgKHN0YXlzIHcvIHZhbGlkYXRvcikKLy8gXQpnZXRNYnJBbW91bnRzOgoJcHJvdG8gMCAxCgoJLy8gY29udHJhY3RzL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTIwCgkvLyByZXR1cm4gewoJLy8gICAgICAgICAgICAgYWRkVmFsaWRhdG9yTWJyOiB0aGlzLmNvc3RGb3JCb3hTdG9yYWdlKDEgLyogdiBwcmVmaXggKi8gKyBsZW48VmFsaWRhdG9ySWRUeXBlPigpICsgbGVuPFZhbGlkYXRvckluZm8+KCkpLAoJLy8gICAgICAgICAgICAgYWRkUG9vbE1icjogdGhpcy5taW5CYWxhbmNlRm9yQWNjb3VudCgKCS8vICAgICAgICAgICAgICAgICAxLAoJLy8gICAgICAgICAgICAgICAgIC8vIHdlIGNvdWxkIGNhbGN1bGF0ZSB0aGlzIGRpcmVjdGx5IGJ5IHJlZmVyZW5jaW5nIHRoZSBzaXplIG9mIHN0YWtpbmdQb29sQXBwcm92YWxQcm9ncmFtIGJ1dCBpdCB3b3VsZAoJLy8gICAgICAgICAgICAgICAgIC8vIG1lYW4gb3VyIGNhbGxlcnMgd291bGQgaGF2ZSB0byByZWZlcmVuY2UgdGhlIGJveCBBTkQgYnV5IHVwIGkvbyAtIHNvIGp1c3QgZ28gbWF4IG9uIGV4dHJhIHBhZ2VzCgkvLyAgICAgICAgICAgICAgICAgMywKCS8vICAgICAgICAgICAgICAgICAwLAoJLy8gICAgICAgICAgICAgICAgIDAsCgkvLyAgICAgICAgICAgICAgICAgMCwKCS8vICAgICAgICAgICAgICAgICBTdGFraW5nUG9vbC5zY2hlbWEuZ2xvYmFsLm51bVVpbnQsCgkvLyAgICAgICAgICAgICAgICAgU3Rha2luZ1Bvb2wuc2NoZW1hLmdsb2JhbC5udW1CeXRlU2xpY2UsCgkvLyAgICAgICAgICAgICApLAoJLy8gICAgICAgICAgICAgcG9vbEluaXRNYnI6CgkvLyAgICAgICAgICAgICAgICAgQUxHT1JBTkRfQUNDT1VOVF9NSU5fQkFMQU5DRSArCgkvLyAgICAgICAgICAgICAgICAgdGhpcy5jb3N0Rm9yQm94U3RvcmFnZSg3IC8qICdzdGFrZXJzJyBuYW1lICovICsgbGVuPFN0YWtlZEluZm8+KCkgKiBNQVhfU1RBS0VSU19QRVJfUE9PTCksCgkvLyAgICAgICAgICAgICBhZGRTdGFrZXJNYnI6CgkvLyAgICAgICAgICAgICAgICAgLy8gaG93IG11Y2ggdG8gY2hhcmdlIGZvciBmaXJzdCB0aW1lIGEgc3Rha2VyIGFkZHMgc3Rha2UgLSBzaW5jZSB3ZSBhZGQgYSB0cmFja2luZyBib3ggcGVyIHN0YWtlcgoJLy8gICAgICAgICAgICAgICAgIHRoaXMuY29zdEZvckJveFN0b3JhZ2UoCgkvLyAgICAgICAgICAgICAgICAgICAgIDMgLyogJ3NwcycgcHJlZml4ICovICsgbGVuPEFkZHJlc3M+KCkgKyBsZW48VmFsaWRhdG9yUG9vbEtleT4oKSAqIE1BWF9QT09MU19QRVJfU1RBS0VSLAoJLy8gICAgICAgICAgICAgICAgICksIC8vIHNpemUgb2Yga2V5ICsgYWxsIHZhbHVlcwoJLy8gICAgICAgICB9CglwdXNoaW50IDExMDEKCWNhbGxzdWIgY29zdEZvckJveFN0b3JhZ2UKCWl0b2IKCWludGMgOCAvLyAzCglpbnRjIDM1IC8vIDExCglpbnRjIDAgLy8gMAoJZHVwbiAyCglpbnRjIDggLy8gMwoJaW50YyAxIC8vIDEKCWNhbGxzdWIgbWluQmFsYW5jZUZvckFjY291bnQKCWl0b2IKCWNvbmNhdAoJaW50YyAxNiAvLyAxMDAwMDAKCXB1c2hpbnQgMTI4MDcKCWNhbGxzdWIgY29zdEZvckJveFN0b3JhZ2UKCSsKCWl0b2IKCWNvbmNhdAoJcHVzaGludCAxNzkKCWNhbGxzdWIgY29zdEZvckJveFN0b3JhZ2UKCWl0b2IKCWNvbmNhdAoJcmV0c3ViCgovLyBnZXRQcm90b2NvbENvbnN0cmFpbnRzKCkodWludDY0LHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCkKKmFiaV9yb3V0ZV9nZXRQcm90b2NvbENvbnN0cmFpbnRzOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlYyAyIC8vIDB4MTUxZjdjNzUKCgkvLyBleGVjdXRlIGdldFByb3RvY29sQ29uc3RyYWludHMoKSh1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDY0KQoJY2FsbHN1YiBnZXRQcm90b2NvbENvbnN0cmFpbnRzCgljb25jYXQKCWxvZwoJaW50YyAxIC8vIDEKCXJldHVybgoKLy8gZ2V0UHJvdG9jb2xDb25zdHJhaW50cygpOiBDb25zdHJhaW50cwovLwovLyBSZXR1cm5zIHRoZSBwcm90b2NvbCBjb25zdHJhaW50cyBzbyB0aGF0IFVJcyBjYW4gbGltaXQgd2hhdCB1c2VycyBzcGVjaWZ5IGZvciB2YWxpZGF0b3IgY29uZmlndXJhdGlvbiBwYXJhbWV0ZXJzLgpnZXRQcm90b2NvbENvbnN0cmFpbnRzOgoJcHJvdG8gMCAxCgoJLy8gY29udHJhY3RzL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTQ5CgkvLyByZXR1cm4gewoJLy8gICAgICAgICAgICAgZXBvY2hQYXlvdXRSb3VuZHNNaW46IE1JTl9FUE9DSF9MRU5HVEgsCgkvLyAgICAgICAgICAgICBlcG9jaFBheW91dFJvdW5kc01heDogTUFYX0VQT0NIX0xFTkdUSCwKCS8vICAgICAgICAgICAgIG1pblBjdFRvVmFsaWRhdG9yV0ZvdXJEZWNpbWFsczogTUlOX1BDVF9UT19WQUxJREFUT1IsCgkvLyAgICAgICAgICAgICBtYXhQY3RUb1ZhbGlkYXRvcldGb3VyRGVjaW1hbHM6IE1BWF9QQ1RfVE9fVkFMSURBVE9SLAoJLy8gICAgICAgICAgICAgbWluRW50cnlTdGFrZTogTUlOX0FMR09fU1RBS0VfUEVSX1BPT0wsCgkvLyAgICAgICAgICAgICBtYXhBbGdvUGVyUG9vbDogdGhpcy5tYXhBbGdvQWxsb3dlZFBlclBvb2woKSwKCS8vICAgICAgICAgICAgIG1heEFsZ29QZXJWYWxpZGF0b3I6IHRoaXMubWF4QWxsb3dlZFN0YWtlKCksCgkvLyAgICAgICAgICAgICBhbXRDb25zaWRlcmVkU2F0dXJhdGVkOiB0aGlzLmFsZ29TYXR1cmF0aW9uTGV2ZWwoKSwKCS8vICAgICAgICAgICAgIG1heE5vZGVzOiBNQVhfTk9ERVMsCgkvLyAgICAgICAgICAgICBtYXhQb29sc1Blck5vZGU6IE1BWF9QT09MU19QRVJfTk9ERSwKCS8vICAgICAgICAgICAgIG1heFN0YWtlcnNQZXJQb29sOiBNQVhfU1RBS0VSU19QRVJfUE9PTCwKCS8vICAgICAgICAgfQoJcHVzaGJ5dGVzIDB4MDAwMDAwMDAwMDAwMDAwMTAwMDAwMDAwMDAwZjQyNDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDBmNDI0MDAwMDAwMDAwMDAwZjQyNDAKCWNhbGxzdWIgbWF4QWxnb0FsbG93ZWRQZXJQb29sCglpdG9iCgljb25jYXQKCWNhbGxzdWIgbWF4QWxsb3dlZFN0YWtlCglpdG9iCgljb25jYXQKCWNhbGxzdWIgYWxnb1NhdHVyYXRpb25MZXZlbAoJaXRvYgoJY29uY2F0CglwdXNoYnl0ZXMgMHgwMDAwMDAwMDAwMDAwMDA4Cgljb25jYXQKCXB1c2hieXRlcyAweDAwMDAwMDAwMDAwMDAwMDMKCWNvbmNhdAoJcHVzaGJ5dGVzIDB4MDAwMDAwMDAwMDAwMDBjOAoJY29uY2F0CglyZXRzdWIKCi8vIGdldE51bVZhbGlkYXRvcnMoKXVpbnQ2NAoqYWJpX3JvdXRlX2dldE51bVZhbGlkYXRvcnM6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGVjIDIgLy8gMHgxNTFmN2M3NQoKCS8vIGV4ZWN1dGUgZ2V0TnVtVmFsaWRhdG9ycygpdWludDY0CgljYWxsc3ViIGdldE51bVZhbGlkYXRvcnMKCWl0b2IKCWNvbmNhdAoJbG9nCglpbnRjIDEgLy8gMQoJcmV0dXJuCgovLyBnZXROdW1WYWxpZGF0b3JzKCk6IHVpbnQ2NAovLwovLyBSZXR1cm5zIHRoZSBjdXJyZW50IG51bWJlciBvZiB2YWxpZGF0b3JzCmdldE51bVZhbGlkYXRvcnM6Cglwcm90byAwIDEKCgkvLyBjb250cmFjdHMvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxNjkKCS8vIHJldHVybiB0aGlzLm51bVZhbGlkYXRvcnMudmFsdWUKCWJ5dGVjIDExIC8vICAibnVtViIKCWFwcF9nbG9iYWxfZ2V0CglyZXRzdWIKCi8vIGdldFZhbGlkYXRvckNvbmZpZyh1aW50NjQpKHVpbnQ2NCxhZGRyZXNzLGFkZHJlc3MsdWludDY0LHVpbnQ4LGFkZHJlc3MsdWludDY0WzRdLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQzMix1aW50MzIsYWRkcmVzcyx1aW50NjQsdWludDY0LHVpbnQ4LHVpbnQ2NCx1aW50NjQpCiphYmlfcm91dGVfZ2V0VmFsaWRhdG9yQ29uZmlnOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlYyAyIC8vIDB4MTUxZjdjNzUKCgkvLyB2YWxpZGF0b3JJZDogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglidG9pCgoJLy8gZXhlY3V0ZSBnZXRWYWxpZGF0b3JDb25maWcodWludDY0KSh1aW50NjQsYWRkcmVzcyxhZGRyZXNzLHVpbnQ2NCx1aW50OCxhZGRyZXNzLHVpbnQ2NFs0XSx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50MzIsdWludDMyLGFkZHJlc3MsdWludDY0LHVpbnQ2NCx1aW50OCx1aW50NjQsdWludDY0KQoJY2FsbHN1YiBnZXRWYWxpZGF0b3JDb25maWcKCWNvbmNhdAoJbG9nCglpbnRjIDEgLy8gMQoJcmV0dXJuCgovLyBnZXRWYWxpZGF0b3JDb25maWcodmFsaWRhdG9ySWQ6IFZhbGlkYXRvcklkVHlwZSk6IFZhbGlkYXRvckNvbmZpZwpnZXRWYWxpZGF0b3JDb25maWc6Cglwcm90byAxIDEKCgkvLyBjb250cmFjdHMvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxNzQKCS8vIHJldHVybiB0aGlzLnZhbGlkYXRvckxpc3QodmFsaWRhdG9ySWQpLnZhbHVlLmNvbmZpZwoJaW50YyAwIC8vIDAKCWludGMgOSAvLyAyNDIKCWJ5dGVjIDAgLy8gICJ2IgoJZnJhbWVfZGlnIC0xIC8vIHZhbGlkYXRvcklkOiBWYWxpZGF0b3JJZFR5cGUKCWl0b2IKCWNvbmNhdAoJY292ZXIgMgoJYm94X2V4dHJhY3QKCXJldHN1YgoKLy8gZ2V0VmFsaWRhdG9yU3RhdGUodWludDY0KSh1aW50MTYsdWludDY0LHVpbnQ2NCx1aW50NjQpCiphYmlfcm91dGVfZ2V0VmFsaWRhdG9yU3RhdGU6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGVjIDIgLy8gMHgxNTFmN2M3NQoKCS8vIHZhbGlkYXRvcklkOiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWJ0b2kKCgkvLyBleGVjdXRlIGdldFZhbGlkYXRvclN0YXRlKHVpbnQ2NCkodWludDE2LHVpbnQ2NCx1aW50NjQsdWludDY0KQoJY2FsbHN1YiBnZXRWYWxpZGF0b3JTdGF0ZQoJY29uY2F0Cglsb2cKCWludGMgMSAvLyAxCglyZXR1cm4KCi8vIGdldFZhbGlkYXRvclN0YXRlKHZhbGlkYXRvcklkOiBWYWxpZGF0b3JJZFR5cGUpOiBWYWxpZGF0b3JDdXJTdGF0ZQpnZXRWYWxpZGF0b3JTdGF0ZToKCXByb3RvIDEgMQoKCS8vIGNvbnRyYWN0cy92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjE3OQoJLy8gcmV0dXJuIHRoaXMudmFsaWRhdG9yTGlzdCh2YWxpZGF0b3JJZCkudmFsdWUuc3RhdGUKCWludGMgOSAvLyAgaGVhZE9mZnNldAoJcHVzaGludCAyNgoJYnl0ZWMgMCAvLyAgInYiCglmcmFtZV9kaWcgLTEgLy8gdmFsaWRhdG9ySWQ6IFZhbGlkYXRvcklkVHlwZQoJaXRvYgoJY29uY2F0Cgljb3ZlciAyCglib3hfZXh0cmFjdAoJcmV0c3ViCgovLyBnZXRWYWxpZGF0b3JPd25lckFuZE1hbmFnZXIodWludDY0KShhZGRyZXNzLGFkZHJlc3MpCiphYmlfcm91dGVfZ2V0VmFsaWRhdG9yT3duZXJBbmRNYW5hZ2VyOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlYyAyIC8vIDB4MTUxZjdjNzUKCgkvLyB2YWxpZGF0b3JJZDogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglidG9pCgoJLy8gZXhlY3V0ZSBnZXRWYWxpZGF0b3JPd25lckFuZE1hbmFnZXIodWludDY0KShhZGRyZXNzLGFkZHJlc3MpCgljYWxsc3ViIGdldFZhbGlkYXRvck93bmVyQW5kTWFuYWdlcgoJY29uY2F0Cglsb2cKCWludGMgMSAvLyAxCglyZXR1cm4KCi8vIGdldFZhbGlkYXRvck93bmVyQW5kTWFuYWdlcih2YWxpZGF0b3JJZDogVmFsaWRhdG9ySWRUeXBlKTogW0FkZHJlc3MsIEFkZHJlc3NdCmdldFZhbGlkYXRvck93bmVyQW5kTWFuYWdlcjoKCXByb3RvIDEgMQoKCS8vIGNvbnRyYWN0cy92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjE4NAoJLy8gcmV0dXJuIFsKCS8vICAgICAgICAgICAgIHRoaXMudmFsaWRhdG9yTGlzdCh2YWxpZGF0b3JJZCkudmFsdWUuY29uZmlnLm93bmVyLAoJLy8gICAgICAgICAgICAgdGhpcy52YWxpZGF0b3JMaXN0KHZhbGlkYXRvcklkKS52YWx1ZS5jb25maWcubWFuYWdlciwKCS8vICAgICAgICAgXQoJaW50YyAyIC8vIDgKCWludGMgNiAvLyAzMgoJYnl0ZWMgMCAvLyAgInYiCglmcmFtZV9kaWcgLTEgLy8gdmFsaWRhdG9ySWQ6IFZhbGlkYXRvcklkVHlwZQoJaXRvYgoJY29uY2F0Cgljb3ZlciAyCglib3hfZXh0cmFjdAoJaW50YyAyMCAvLyA0MAoJaW50YyA2IC8vIDMyCglieXRlYyAwIC8vICAidiIKCWZyYW1lX2RpZyAtMSAvLyB2YWxpZGF0b3JJZDogVmFsaWRhdG9ySWRUeXBlCglpdG9iCgljb25jYXQKCWNvdmVyIDIKCWJveF9leHRyYWN0Cgljb25jYXQKCXJldHN1YgoKLy8gZ2V0UG9vbHModWludDY0KSh1aW50NjQsdWludDE2LHVpbnQ2NClbXQoqYWJpX3JvdXRlX2dldFBvb2xzOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlYyAyIC8vIDB4MTUxZjdjNzUKCgkvLyB2YWxpZGF0b3JJZDogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglidG9pCgoJLy8gZXhlY3V0ZSBnZXRQb29scyh1aW50NjQpKHVpbnQ2NCx1aW50MTYsdWludDY0KVtdCgljYWxsc3ViIGdldFBvb2xzCglkdXAKCWxlbgoJaW50YyA0IC8vIDE4CgkvCglpdG9iCglleHRyYWN0IDYgMgoJc3dhcAoJY29uY2F0Cgljb25jYXQKCWxvZwoJaW50YyAxIC8vIDEKCXJldHVybgoKLy8gZ2V0UG9vbHModmFsaWRhdG9ySWQ6IFZhbGlkYXRvcklkVHlwZSk6IFBvb2xJbmZvW10KLy8KLy8gUmV0dXJuIGxpc3Qgb2YgYWxsIHBvb2xzIGZvciB0aGlzIHZhbGlkYXRvci4KLy8gQHBhcmFtIHt1aW50NjR9IHZhbGlkYXRvcklkCi8vIEByZXR1cm4ge1Bvb2xJbmZvW119IC0gYXJyYXkgb2YgcG9vbHMKLy8gTm90IGNhbGxhYmxlIGZyb20gb3RoZXIgY29udHJhY3RzIGJlY2F1c2UgPjFLIHJldHVybiBidXQgY2FuIGJlIGNhbGxlZCB3LyBzaW11bGF0ZSB3aGljaCBidW1wcyBsb2cgcmV0dXJucwpnZXRQb29sczoKCXByb3RvIDEgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlYyAxIC8vIDB4CglkdXBuIDIKCgkvLyBjb250cmFjdHMvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxOTgKCS8vIHJldERhdGE6IFBvb2xJbmZvW10gPSBbXQoJYnl0ZWMgMSAvLyAweAoJZnJhbWVfYnVyeSAwIC8vIHJldERhdGE6IFBvb2xJbmZvW10KCgkvLyBjb250cmFjdHMvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxOTkKCS8vIHBvb2xTZXQgPSBjbG9uZSh0aGlzLnZhbGlkYXRvckxpc3QodmFsaWRhdG9ySWQpLnZhbHVlLnBvb2xzKQoJaW50YyA1IC8vICBoZWFkT2Zmc2V0CglpbnRjIDMwIC8vIDQzMgoJYnl0ZWMgMCAvLyAgInYiCglmcmFtZV9kaWcgLTEgLy8gdmFsaWRhdG9ySWQ6IFZhbGlkYXRvcklkVHlwZQoJaXRvYgoJY29uY2F0Cgljb3ZlciAyCglib3hfZXh0cmFjdAoJZnJhbWVfYnVyeSAxIC8vIHBvb2xTZXQ6ICh1aW50NjQsdWludDE2LHVpbnQ2NClbMjRdCgoJLy8gY29udHJhY3RzL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MjAwCgkvLyBmb3IgKGxldCBpID0gMDsgaSA8IHBvb2xTZXQubGVuZ3RoOyBpICs9IDEpCglpbnRjIDAgLy8gMAoJZnJhbWVfYnVyeSAyIC8vIGk6IHVpbnQ2NAoKKmZvcl8wOgoJLy8gY29udHJhY3RzL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MjAwCgkvLyBpIDwgcG9vbFNldC5sZW5ndGgKCWZyYW1lX2RpZyAyIC8vIGk6IHVpbnQ2NAoJaW50YyAzIC8vIDI0Cgk8CglieiAqZm9yXzBfZW5kCgoJLy8gKmlmMF9jb25kaXRpb24KCS8vIGNvbnRyYWN0cy92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjIwMQoJLy8gcG9vbFNldFtpXS5wb29sQXBwSWQgPT09IDAKCWZyYW1lX2RpZyAxIC8vIHBvb2xTZXQ6ICh1aW50NjQsdWludDE2LHVpbnQ2NClbMjRdCglmcmFtZV9kaWcgMiAvLyBpOiB1aW50NjQKCWludGMgNCAvLyAxOAoJKiAvLyBhY2MgKiB0eXBlTGVuZ3RoCglpbnRjIDAgLy8gMAoJKwoJaW50YyAyIC8vIDgKCWV4dHJhY3QzCglidG9pCglpbnRjIDAgLy8gMAoJPT0KCWJ6ICppZjBfZW5kCgoJLy8gKmlmMF9jb25zZXF1ZW50CgliICpmb3JfMF9lbmQKCippZjBfZW5kOgoJLy8gY29udHJhY3RzL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MjA1CgkvLyByZXREYXRhLnB1c2gocG9vbFNldFtpXSkKCWZyYW1lX2RpZyAwIC8vIHJldERhdGE6IFBvb2xJbmZvW10KCWZyYW1lX2RpZyAxIC8vIHBvb2xTZXQ6ICh1aW50NjQsdWludDE2LHVpbnQ2NClbMjRdCglmcmFtZV9kaWcgMiAvLyBpOiB1aW50NjQKCWludGMgNCAvLyAxOAoJKiAvLyBhY2MgKiB0eXBlTGVuZ3RoCglpbnRjIDQgLy8gMTgKCWV4dHJhY3QzCgljb25jYXQKCWZyYW1lX2J1cnkgMCAvLyByZXREYXRhOiBQb29sSW5mb1tdCgoqZm9yXzBfY29udGludWU6CgkvLyBjb250cmFjdHMvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoyMDAKCS8vIGkgKz0gMQoJZnJhbWVfZGlnIDIgLy8gaTogdWludDY0CglpbnRjIDEgLy8gMQoJKwoJZnJhbWVfYnVyeSAyIC8vIGk6IHVpbnQ2NAoJYiAqZm9yXzAKCipmb3JfMF9lbmQ6CgkvLyBjb250cmFjdHMvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoyMDcKCS8vIHJldHVybiByZXREYXRhCglmcmFtZV9kaWcgMCAvLyByZXREYXRhOiBQb29sSW5mb1tdCgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCgoJLy8gcG9wIGFsbCBsb2NhbCB2YXJpYWJsZXMgZnJvbSB0aGUgc3RhY2sKCXBvcG4gMgoJcmV0c3ViCgovLyBnZXRQb29sQXBwSWQodWludDY0LHVpbnQ2NCl1aW50NjQKKmFiaV9yb3V0ZV9nZXRQb29sQXBwSWQ6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGVjIDIgLy8gMHgxNTFmN2M3NQoKCS8vIHBvb2xJZDogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAyCglidG9pCgoJLy8gdmFsaWRhdG9ySWQ6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJYnRvaQoKCS8vIGV4ZWN1dGUgZ2V0UG9vbEFwcElkKHVpbnQ2NCx1aW50NjQpdWludDY0CgljYWxsc3ViIGdldFBvb2xBcHBJZAoJaXRvYgoJY29uY2F0Cglsb2cKCWludGMgMSAvLyAxCglyZXR1cm4KCi8vIGdldFBvb2xBcHBJZCh2YWxpZGF0b3JJZDogdWludDY0LCBwb29sSWQ6IHVpbnQ2NCk6IHVpbnQ2NAovLwovLyBnZXRQb29sQXBwSWQgaXMgdXNlZnVsIGZvciBjYWxsZXJzIHRvIGRldGVybWluZSBhcHAgdG8gY2FsbCBmb3IgcmVtb3Zpbmcgc3Rha2UgaWYgdGhleSBkb24ndCBoYXZlIHN0YWtpbmcgb3IKLy8gd2FudCB0byBnZXQgc3Rha2VyIGxpc3QgZm9yIGFuIGFjY291bnQuICBUaGUgc3Rha2luZyBwb29sIGFsc28gdXNlcyBpdCB0byBnZXQgdGhlIGFwcCBpZCBvZiBzdGFraW5nIHBvb2wgMQovLyAod2hpY2ggY29udGFpbnMgcmV3YXJkIHRva2VucyBpZiBiZWluZyB1c2VkKSBzbyB0aGF0IHRoZSBhbW91bnQgYXZhaWxhYmxlIGNhbiBiZSBkZXRlcm1pbmVkLgpnZXRQb29sQXBwSWQ6Cglwcm90byAyIDEKCgkvLyBjb250cmFjdHMvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoyMTcKCS8vIGFzc2VydCgKCS8vICAgICAgICAgICAgIHBvb2xJZCAhPT0gMCAmJiBwb29sSWQgPD0gdGhpcy52YWxpZGF0b3JMaXN0KHZhbGlkYXRvcklkKS52YWx1ZS5wb29scy5sZW5ndGgsCgkvLyAgICAgICAgICAgICAncG9vbCBpZCBtdXN0IGJlIGJldHdlZW4gMSBhbmQgbnVtYmVyIG9mIHBvb2xzIGZvciB0aGlzIHZhbGlkYXRvcicsCgkvLyAgICAgICAgICkKCWZyYW1lX2RpZyAtMiAvLyBwb29sSWQ6IHVpbnQ2NAoJaW50YyAwIC8vIDAKCSE9CglkdXAKCWJ6ICpza2lwX2FuZDAKCWZyYW1lX2RpZyAtMiAvLyBwb29sSWQ6IHVpbnQ2NAoJaW50YyAzIC8vIDI0Cgk8PQoJJiYKCipza2lwX2FuZDA6CgkvLyBwb29sIGlkIG11c3QgYmUgYmV0d2VlbiAxIGFuZCBudW1iZXIgb2YgcG9vbHMgZm9yIHRoaXMgdmFsaWRhdG9yCglhc3NlcnQKCgkvLyBjb250cmFjdHMvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoyMjEKCS8vIHJldHVybiB0aGlzLnZhbGlkYXRvckxpc3QodmFsaWRhdG9ySWQpLnZhbHVlLnBvb2xzW3Bvb2xJZCAtIDFdLnBvb2xBcHBJZAoJaW50YyA1IC8vICBoZWFkT2Zmc2V0CglmcmFtZV9kaWcgLTIgLy8gcG9vbElkOiB1aW50NjQKCWludGMgMSAvLyAxCgktCglpbnRjIDQgLy8gMTgKCSogLy8gYWNjICogdHlwZUxlbmd0aAoJKwoJaW50YyAwIC8vIDAKCSsKCWludGMgMiAvLyA4CglieXRlYyAwIC8vICAidiIKCWZyYW1lX2RpZyAtMSAvLyB2YWxpZGF0b3JJZDogdWludDY0CglpdG9iCgljb25jYXQKCWNvdmVyIDIKCWJveF9leHRyYWN0CglidG9pCglyZXRzdWIKCi8vIGdldFBvb2xJbmZvKCh1aW50NjQsdWludDY0LHVpbnQ2NCkpKHVpbnQ2NCx1aW50MTYsdWludDY0KQoqYWJpX3JvdXRlX2dldFBvb2xJbmZvOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlYyAyIC8vIDB4MTUxZjdjNzUKCgkvLyBwb29sS2V5OiAodWludDY0LHVpbnQ2NCx1aW50NjQpCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglkdXAKCWxlbgoJaW50YyAzIC8vIDI0Cgk9PQoKCS8vIGFyZ3VtZW50IDAgKHBvb2xLZXkpIGZvciBnZXRQb29sSW5mbyBtdXN0IGJlIGEgKHVpbnQ2NCx1aW50NjQsdWludDY0KQoJYXNzZXJ0CgoJLy8gZXhlY3V0ZSBnZXRQb29sSW5mbygodWludDY0LHVpbnQ2NCx1aW50NjQpKSh1aW50NjQsdWludDE2LHVpbnQ2NCkKCWNhbGxzdWIgZ2V0UG9vbEluZm8KCWNvbmNhdAoJbG9nCglpbnRjIDEgLy8gMQoJcmV0dXJuCgovLyBnZXRQb29sSW5mbyhwb29sS2V5OiBWYWxpZGF0b3JQb29sS2V5KTogUG9vbEluZm8KZ2V0UG9vbEluZm86Cglwcm90byAxIDEKCgkvLyBjb250cmFjdHMvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoyMjYKCS8vIHJldHVybiB0aGlzLnZhbGlkYXRvckxpc3QocG9vbEtleS5pZCkudmFsdWUucG9vbHNbcG9vbEtleS5wb29sSWQgLSAxXQoJaW50YyA1IC8vICBoZWFkT2Zmc2V0CglmcmFtZV9kaWcgLTEgLy8gcG9vbEtleTogVmFsaWRhdG9yUG9vbEtleQoJZXh0cmFjdCA4IDgKCWJ0b2kKCWludGMgMSAvLyAxCgktCglpbnRjIDQgLy8gMTgKCSogLy8gYWNjICogdHlwZUxlbmd0aAoJKwoJaW50YyA0IC8vIDE4CglieXRlYyAwIC8vICAidiIKCWZyYW1lX2RpZyAtMSAvLyBwb29sS2V5OiBWYWxpZGF0b3JQb29sS2V5CglleHRyYWN0IDAgOAoJYnRvaQoJaXRvYgoJY29uY2F0Cgljb3ZlciAyCglib3hfZXh0cmFjdAoJcmV0c3ViCgovLyBnZXRDdXJNYXhTdGFrZVBlclBvb2wodWludDY0KXVpbnQ2NAoqYWJpX3JvdXRlX2dldEN1ck1heFN0YWtlUGVyUG9vbDoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZWMgMiAvLyAweDE1MWY3Yzc1CgoJLy8gdmFsaWRhdG9ySWQ6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJYnRvaQoKCS8vIGV4ZWN1dGUgZ2V0Q3VyTWF4U3Rha2VQZXJQb29sKHVpbnQ2NCl1aW50NjQKCWNhbGxzdWIgZ2V0Q3VyTWF4U3Rha2VQZXJQb29sCglpdG9iCgljb25jYXQKCWxvZwoJaW50YyAxIC8vIDEKCXJldHVybgoKLy8gZ2V0Q3VyTWF4U3Rha2VQZXJQb29sKHZhbGlkYXRvcklkOiBWYWxpZGF0b3JJZFR5cGUpOiB1aW50NjQKLy8KLy8gQ2FsY3VsYXRlIHRoZSBtYXhpbXVtIHN0YWtlIHBlciBwb29sIGZvciBhIGdpdmVuIHZhbGlkYXRvci4KLy8gTm9ybWFsbHkgdGhpcyB3b3VsZCBiZSBtYXhBbGdvUGVyUG9vbCwgYnV0IGl0IHNob3VsZCBhbHNvIG5ldmVyIGdvIGFib3ZlIE1heEFsbG93ZWRTdGFrZSAvIG51bVBvb2xzIHNvCi8vIGFzIHBvb2xzIGFyZSBhZGRlZCB0aGUgbWF4IGFsbG93ZWQgcGVyIHBvb2wgY2FuIHJlZHVjZS4KLy8KLy8gQHBhcmFtIHtWYWxpZGF0b3JJZFR5cGV9IHZhbGlkYXRvcklkIC0gVGhlIGlkIG9mIHRoZSB2YWxpZGF0b3IuCmdldEN1ck1heFN0YWtlUGVyUG9vbDoKCXByb3RvIDEgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlYyAxIC8vIDB4CglkdXBuIDIKCgkvLyBjb250cmFjdHMvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoyMzgKCS8vIG51bVBvb2xzID0gdGhpcy52YWxpZGF0b3JMaXN0KHZhbGlkYXRvcklkKS52YWx1ZS5zdGF0ZS5udW1Qb29scyBhcyB1aW50NjQKCWludGMgOSAvLyAyNDIKCWludGMgMTAgLy8gMgoJYnl0ZWMgMCAvLyAgInYiCglmcmFtZV9kaWcgLTEgLy8gdmFsaWRhdG9ySWQ6IFZhbGlkYXRvcklkVHlwZQoJaXRvYgoJY29uY2F0Cgljb3ZlciAyCglib3hfZXh0cmFjdAoJYnRvaQoJZnJhbWVfYnVyeSAwIC8vIG51bVBvb2xzOiB1aW50NjQKCgkvLyBjb250cmFjdHMvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoyMzkKCS8vIGhhcmRNYXhEaXZpZGVkQmV0d2VlblBvb2xzID0gdGhpcy5tYXhBbGxvd2VkU3Rha2UoKSAvIG51bVBvb2xzCgljYWxsc3ViIG1heEFsbG93ZWRTdGFrZQoJZnJhbWVfZGlnIDAgLy8gbnVtUG9vbHM6IHVpbnQ2NAoJLwoJZnJhbWVfYnVyeSAxIC8vIGhhcmRNYXhEaXZpZGVkQmV0d2VlblBvb2xzOiB1aW50NjQKCgkvLyBjb250cmFjdHMvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoyNDAKCS8vIG1heFBlclBvb2w6IHVpbnQ2NCA9IHRoaXMudmFsaWRhdG9yTGlzdCh2YWxpZGF0b3JJZCkudmFsdWUuY29uZmlnLm1heEFsZ29QZXJQb29sCglwdXNoaW50IDIxNwoJaW50YyAyIC8vIDgKCWJ5dGVjIDAgLy8gICJ2IgoJZnJhbWVfZGlnIC0xIC8vIHZhbGlkYXRvcklkOiBWYWxpZGF0b3JJZFR5cGUKCWl0b2IKCWNvbmNhdAoJY292ZXIgMgoJYm94X2V4dHJhY3QKCWJ0b2kKCWZyYW1lX2J1cnkgMiAvLyBtYXhQZXJQb29sOiB1aW50NjQKCgkvLyAqaWYxX2NvbmRpdGlvbgoJLy8gY29udHJhY3RzL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MjQxCgkvLyBtYXhQZXJQb29sID09PSAwCglmcmFtZV9kaWcgMiAvLyBtYXhQZXJQb29sOiB1aW50NjQKCWludGMgMCAvLyAwCgk9PQoJYnogKmlmMV9lbmQKCgkvLyAqaWYxX2NvbnNlcXVlbnQKCS8vIGNvbnRyYWN0cy92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjI0MgoJLy8gbWF4UGVyUG9vbCA9IHRoaXMubWF4QWxnb0FsbG93ZWRQZXJQb29sKCkKCWNhbGxzdWIgbWF4QWxnb0FsbG93ZWRQZXJQb29sCglmcmFtZV9idXJ5IDIgLy8gbWF4UGVyUG9vbDogdWludDY0CgoqaWYxX2VuZDoKCS8vICppZjJfY29uZGl0aW9uCgkvLyBjb250cmFjdHMvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoyNDQKCS8vIGhhcmRNYXhEaXZpZGVkQmV0d2VlblBvb2xzIDwgbWF4UGVyUG9vbAoJZnJhbWVfZGlnIDEgLy8gaGFyZE1heERpdmlkZWRCZXR3ZWVuUG9vbHM6IHVpbnQ2NAoJZnJhbWVfZGlnIDIgLy8gbWF4UGVyUG9vbDogdWludDY0Cgk8CglieiAqaWYyX2VuZAoKCS8vICppZjJfY29uc2VxdWVudAoJLy8gY29udHJhY3RzL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MjQ1CgkvLyBtYXhQZXJQb29sID0gaGFyZE1heERpdmlkZWRCZXR3ZWVuUG9vbHMKCWZyYW1lX2RpZyAxIC8vIGhhcmRNYXhEaXZpZGVkQmV0d2VlblBvb2xzOiB1aW50NjQKCWZyYW1lX2J1cnkgMiAvLyBtYXhQZXJQb29sOiB1aW50NjQKCippZjJfZW5kOgoJLy8gY29udHJhY3RzL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MjQ3CgkvLyByZXR1cm4gbWF4UGVyUG9vbAoJZnJhbWVfZGlnIDIgLy8gbWF4UGVyUG9vbDogdWludDY0CgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCgoJLy8gcG9wIGFsbCBsb2NhbCB2YXJpYWJsZXMgZnJvbSB0aGUgc3RhY2sKCXBvcG4gMgoJcmV0c3ViCgovLyBkb2VzU3Rha2VyTmVlZFRvUGF5TUJSKGFkZHJlc3MpYm9vbAoqYWJpX3JvdXRlX2RvZXNTdGFrZXJOZWVkVG9QYXlNQlI6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGVjIDIgLy8gMHgxNTFmN2M3NQoKCS8vIHN0YWtlcjogYWRkcmVzcwoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJZHVwCglsZW4KCWludGMgNiAvLyAzMgoJPT0KCgkvLyBhcmd1bWVudCAwIChzdGFrZXIpIGZvciBkb2VzU3Rha2VyTmVlZFRvUGF5TUJSIG11c3QgYmUgYSBhZGRyZXNzCglhc3NlcnQKCgkvLyBleGVjdXRlIGRvZXNTdGFrZXJOZWVkVG9QYXlNQlIoYWRkcmVzcylib29sCgljYWxsc3ViIGRvZXNTdGFrZXJOZWVkVG9QYXlNQlIKCWJ5dGVjIDUgLy8gMHgwMAoJaW50YyAwIC8vIDAKCXVuY292ZXIgMgoJc2V0Yml0Cgljb25jYXQKCWxvZwoJaW50YyAxIC8vIDEKCXJldHVybgoKLy8gZG9lc1N0YWtlck5lZWRUb1BheU1CUihzdGFrZXI6IEFkZHJlc3MpOiBib29sZWFuCi8vCi8vIEhlbHBlciBjYWxsZXJzIGNhbiBjYWxsIHcvIHNpbXVsYXRlIHRvIGRldGVybWluZSBpZiAnQWRkU3Rha2VyJyBNQlIgc2hvdWxkIGJlIGluY2x1ZGVkIHcvIHN0YWtpbmcgYW1vdW50Ci8vIEBwYXJhbSBzdGFrZXIKZG9lc1N0YWtlck5lZWRUb1BheU1CUjoKCXByb3RvIDEgMQoKCS8vIGNvbnRyYWN0cy92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjI1NgoJLy8gcmV0dXJuICF0aGlzLnN0YWtlclBvb2xTZXQoc3Rha2VyKS5leGlzdHMKCWJ5dGVjIDMgLy8gICJzcHMiCglmcmFtZV9kaWcgLTEgLy8gc3Rha2VyOiBBZGRyZXNzCgljb25jYXQKCWJveF9sZW4KCXN3YXAKCXBvcAoJIQoJcmV0c3ViCgovLyBnZXRTdGFrZWRQb29sc0ZvckFjY291bnQoYWRkcmVzcykodWludDY0LHVpbnQ2NCx1aW50NjQpW10KKmFiaV9yb3V0ZV9nZXRTdGFrZWRQb29sc0ZvckFjY291bnQ6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGVjIDIgLy8gMHgxNTFmN2M3NQoKCS8vIHN0YWtlcjogYWRkcmVzcwoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJZHVwCglsZW4KCWludGMgNiAvLyAzMgoJPT0KCgkvLyBhcmd1bWVudCAwIChzdGFrZXIpIGZvciBnZXRTdGFrZWRQb29sc0ZvckFjY291bnQgbXVzdCBiZSBhIGFkZHJlc3MKCWFzc2VydAoKCS8vIGV4ZWN1dGUgZ2V0U3Rha2VkUG9vbHNGb3JBY2NvdW50KGFkZHJlc3MpKHVpbnQ2NCx1aW50NjQsdWludDY0KVtdCgljYWxsc3ViIGdldFN0YWtlZFBvb2xzRm9yQWNjb3VudAoJZHVwCglsZW4KCWludGMgMyAvLyAyNAoJLwoJaXRvYgoJZXh0cmFjdCA2IDIKCXN3YXAKCWNvbmNhdAoJY29uY2F0Cglsb2cKCWludGMgMSAvLyAxCglyZXR1cm4KCi8vIGdldFN0YWtlZFBvb2xzRm9yQWNjb3VudChzdGFrZXI6IEFkZHJlc3MpOiBWYWxpZGF0b3JQb29sS2V5W10KLy8KLy8gUmV0cmlldmVzIHRoZSBzdGFrZWQgcG9vbHMgZm9yIGFuIGFjY291bnQuCi8vCi8vIEBwYXJhbSB7QWRkcmVzc30gc3Rha2VyIC0gVGhlIGFjY291bnQgdG8gcmV0cmlldmUgc3Rha2VkIHBvb2xzIGZvci4KLy8gQHJldHVybiB7VmFsaWRhdG9yUG9vbEtleVtdfSAtIFRoZSBhcnJheSBvZiBzdGFrZWQgcG9vbHMgZm9yIHRoZSBhY2NvdW50LgpnZXRTdGFrZWRQb29sc0ZvckFjY291bnQ6Cglwcm90byAxIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZWMgMSAvLyAweAoJZHVwbiAyCgoJLy8gKmlmM19jb25kaXRpb24KCS8vIGNvbnRyYWN0cy92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjI2NwoJLy8gIXRoaXMuc3Rha2VyUG9vbFNldChzdGFrZXIpLmV4aXN0cwoJYnl0ZWMgMyAvLyAgInNwcyIKCWZyYW1lX2RpZyAtMSAvLyBzdGFrZXI6IEFkZHJlc3MKCWNvbmNhdAoJYm94X2xlbgoJc3dhcAoJcG9wCgkhCglieiAqaWYzX2VuZAoKCS8vICppZjNfY29uc2VxdWVudAoJLy8gY29udHJhY3RzL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MjY4CgkvLyByZXR1cm4gW10KCWJ5dGVjIDEgLy8gMHgKCWIgKmdldFN0YWtlZFBvb2xzRm9yQWNjb3VudCpyZXR1cm4KCippZjNfZW5kOgoJLy8gY29udHJhY3RzL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MjcwCgkvLyByZXREYXRhOiBWYWxpZGF0b3JQb29sS2V5W10gPSBbXQoJYnl0ZWMgMSAvLyAweAoJZnJhbWVfYnVyeSAwIC8vIHJldERhdGE6IFZhbGlkYXRvclBvb2xLZXlbXQoKCS8vIGNvbnRyYWN0cy92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjI3MQoJLy8gcG9vbFNldCA9IGNsb25lKHRoaXMuc3Rha2VyUG9vbFNldChzdGFrZXIpLnZhbHVlKQoJYnl0ZWMgMyAvLyAgInNwcyIKCWZyYW1lX2RpZyAtMSAvLyBzdGFrZXI6IEFkZHJlc3MKCWNvbmNhdAoJYm94X2dldAoKCS8vIGJveCB2YWx1ZSBkb2VzIG5vdCBleGlzdDogdGhpcy5zdGFrZXJQb29sU2V0KHN0YWtlcikudmFsdWUKCWFzc2VydAoJZnJhbWVfYnVyeSAxIC8vIHBvb2xTZXQ6ICh1aW50NjQsdWludDY0LHVpbnQ2NClbNl0KCgkvLyBjb250cmFjdHMvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoyNzIKCS8vIGZvciAobGV0IGkgPSAwOyBpIDwgcG9vbFNldC5sZW5ndGg7IGkgKz0gMSkKCWludGMgMCAvLyAwCglmcmFtZV9idXJ5IDIgLy8gaTogdWludDY0CgoqZm9yXzE6CgkvLyBjb250cmFjdHMvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoyNzIKCS8vIGkgPCBwb29sU2V0Lmxlbmd0aAoJZnJhbWVfZGlnIDIgLy8gaTogdWludDY0CglpbnRjIDcgLy8gNgoJPAoJYnogKmZvcl8xX2VuZAoKCS8vICppZjRfY29uZGl0aW9uCgkvLyBjb250cmFjdHMvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoyNzMKCS8vIHBvb2xTZXRbaV0uaWQgIT09IDAKCWZyYW1lX2RpZyAxIC8vIHBvb2xTZXQ6ICh1aW50NjQsdWludDY0LHVpbnQ2NClbNl0KCWZyYW1lX2RpZyAyIC8vIGk6IHVpbnQ2NAoJaW50YyAzIC8vIDI0CgkqIC8vIGFjYyAqIHR5cGVMZW5ndGgKCWludGMgMCAvLyAwCgkrCglpbnRjIDIgLy8gOAoJZXh0cmFjdDMKCWJ0b2kKCWludGMgMCAvLyAwCgkhPQoJYnogKmlmNF9lbmQKCgkvLyAqaWY0X2NvbnNlcXVlbnQKCS8vIGNvbnRyYWN0cy92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjI3NAoJLy8gcmV0RGF0YS5wdXNoKHBvb2xTZXRbaV0pCglmcmFtZV9kaWcgMCAvLyByZXREYXRhOiBWYWxpZGF0b3JQb29sS2V5W10KCWZyYW1lX2RpZyAxIC8vIHBvb2xTZXQ6ICh1aW50NjQsdWludDY0LHVpbnQ2NClbNl0KCWZyYW1lX2RpZyAyIC8vIGk6IHVpbnQ2NAoJaW50YyAzIC8vIDI0CgkqIC8vIGFjYyAqIHR5cGVMZW5ndGgKCWludGMgMyAvLyAyNAoJZXh0cmFjdDMKCWNvbmNhdAoJZnJhbWVfYnVyeSAwIC8vIHJldERhdGE6IFZhbGlkYXRvclBvb2xLZXlbXQoKKmlmNF9lbmQ6CgoqZm9yXzFfY29udGludWU6CgkvLyBjb250cmFjdHMvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoyNzIKCS8vIGkgKz0gMQoJZnJhbWVfZGlnIDIgLy8gaTogdWludDY0CglpbnRjIDEgLy8gMQoJKwoJZnJhbWVfYnVyeSAyIC8vIGk6IHVpbnQ2NAoJYiAqZm9yXzEKCipmb3JfMV9lbmQ6CgkvLyBjb250cmFjdHMvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoyNzcKCS8vIHJldHVybiByZXREYXRhCglmcmFtZV9kaWcgMCAvLyByZXREYXRhOiBWYWxpZGF0b3JQb29sS2V5W10KCipnZXRTdGFrZWRQb29sc0ZvckFjY291bnQqcmV0dXJuOgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCgoJLy8gcG9wIGFsbCBsb2NhbCB2YXJpYWJsZXMgZnJvbSB0aGUgc3RhY2sKCXBvcG4gMgoJcmV0c3ViCgovLyBnZXRUb2tlblBheW91dFJhdGlvKHVpbnQ2NCkodWludDY0WzI0XSx1aW50NjQpCiphYmlfcm91dGVfZ2V0VG9rZW5QYXlvdXRSYXRpbzoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZWMgMiAvLyAweDE1MWY3Yzc1CgoJLy8gdmFsaWRhdG9ySWQ6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJYnRvaQoKCS8vIGV4ZWN1dGUgZ2V0VG9rZW5QYXlvdXRSYXRpbyh1aW50NjQpKHVpbnQ2NFsyNF0sdWludDY0KQoJY2FsbHN1YiBnZXRUb2tlblBheW91dFJhdGlvCgljb25jYXQKCWxvZwoJaW50YyAxIC8vIDEKCXJldHVybgoKLy8gZ2V0VG9rZW5QYXlvdXRSYXRpbyh2YWxpZGF0b3JJZDogVmFsaWRhdG9ySWRUeXBlKTogUG9vbFRva2VuUGF5b3V0UmF0aW8KLy8KLy8gUmV0cmlldmVzIHRoZSB0b2tlbiBwYXlvdXQgcmF0aW8gZm9yIGEgZ2l2ZW4gdmFsaWRhdG9yIC0gcmV0dXJuaW5nIHRoZSBwb29sIHJhdGlvcyBvZiB3aG9sZSBzbyB0aGF0IHRva2VuCi8vIHBheW91dHMgYWNyb3NzIHBvb2xzIGNhbiBiZSBiYXNlZCBvbiBhIHN0YWJsZSBzbmFwaG9zdCBvZiBzdGFrZS4KLy8KLy8gQHBhcmFtIHtWYWxpZGF0b3JJZFR5cGV9IHZhbGlkYXRvcklkIC0gVGhlIGlkIG9mIHRoZSB2YWxpZGF0b3IuCi8vIEByZXR1cm4ge1Bvb2xUb2tlblBheW91dFJhdGlvfSAtIFRoZSB0b2tlbiBwYXlvdXQgcmF0aW8gZm9yIHRoZSB2YWxpZGF0b3IuCmdldFRva2VuUGF5b3V0UmF0aW86Cglwcm90byAxIDEKCgkvLyBjb250cmFjdHMvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoyODkKCS8vIHJldHVybiB0aGlzLnZhbGlkYXRvckxpc3QodmFsaWRhdG9ySWQpLnZhbHVlLnRva2VuUGF5b3V0UmF0aW8KCWludGMgMTQgLy8gIGhlYWRPZmZzZXQKCWludGMgMTkgLy8gMjAwCglieXRlYyAwIC8vICAidiIKCWZyYW1lX2RpZyAtMSAvLyB2YWxpZGF0b3JJZDogVmFsaWRhdG9ySWRUeXBlCglpdG9iCgljb25jYXQKCWNvdmVyIDIKCWJveF9leHRyYWN0CglyZXRzdWIKCi8vIGdldE5vZGVQb29sQXNzaWdubWVudHModWludDY0KSgodWludDY0WzNdKVs4XSkKKmFiaV9yb3V0ZV9nZXROb2RlUG9vbEFzc2lnbm1lbnRzOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlYyAyIC8vIDB4MTUxZjdjNzUKCgkvLyB2YWxpZGF0b3JJZDogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglidG9pCgoJLy8gZXhlY3V0ZSBnZXROb2RlUG9vbEFzc2lnbm1lbnRzKHVpbnQ2NCkoKHVpbnQ2NFszXSlbOF0pCgljYWxsc3ViIGdldE5vZGVQb29sQXNzaWdubWVudHMKCWNvbmNhdAoJbG9nCglpbnRjIDEgLy8gMQoJcmV0dXJuCgovLyBnZXROb2RlUG9vbEFzc2lnbm1lbnRzKHZhbGlkYXRvcklkOiB1aW50NjQpOiBOb2RlUG9vbEFzc2lnbm1lbnRDb25maWcKZ2V0Tm9kZVBvb2xBc3NpZ25tZW50czoKCXByb3RvIDEgMQoKCS8vIGNvbnRyYWN0cy92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjI5NAoJLy8gYXNzZXJ0KHRoaXMudmFsaWRhdG9yTGlzdCh2YWxpZGF0b3JJZCkuZXhpc3RzLCAidGhlIHNwZWNpZmllZCB2YWxpZGF0b3IgaWQgZG9lc24ndCBleGlzdCIpCglieXRlYyAwIC8vICAidiIKCWZyYW1lX2RpZyAtMSAvLyB2YWxpZGF0b3JJZDogdWludDY0CglpdG9iCgljb25jYXQKCWJveF9sZW4KCXN3YXAKCXBvcAoKCS8vIHRoZSBzcGVjaWZpZWQgdmFsaWRhdG9yIGlkIGRvZXNuJ3QgZXhpc3QKCWFzc2VydAoKCS8vIGNvbnRyYWN0cy92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjI5NgoJLy8gcmV0dXJuIHRoaXMudmFsaWRhdG9yTGlzdCh2YWxpZGF0b3JJZCkudmFsdWUubm9kZVBvb2xBc3NpZ25tZW50cwoJaW50YyAxNyAvLyAgaGVhZE9mZnNldAoJaW50YyAyMiAvLyAxOTIKCWJ5dGVjIDAgLy8gICJ2IgoJZnJhbWVfZGlnIC0xIC8vIHZhbGlkYXRvcklkOiB1aW50NjQKCWl0b2IKCWNvbmNhdAoJY292ZXIgMgoJYm94X2V4dHJhY3QKCXJldHN1YgoKLy8gZ2V0TkZEUmVnaXN0cnlJRCgpdWludDY0CiphYmlfcm91dGVfZ2V0TkZEUmVnaXN0cnlJRDoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZWMgMiAvLyAweDE1MWY3Yzc1CgoJLy8gZXhlY3V0ZSBnZXRORkRSZWdpc3RyeUlEKCl1aW50NjQKCWNhbGxzdWIgZ2V0TkZEUmVnaXN0cnlJRAoJaXRvYgoJY29uY2F0Cglsb2cKCWludGMgMSAvLyAxCglyZXR1cm4KCi8vIGdldE5GRFJlZ2lzdHJ5SUQoKTogdWludDY0CmdldE5GRFJlZ2lzdHJ5SUQ6Cglwcm90byAwIDEKCgkvLyBjb250cmFjdHMvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czozMDEKCS8vIHJldHVybiB0aGlzLm5mZFJlZ2lzdHJ5QXBwSWQKCWludGMgMjggLy8gVE1QTF9uZmRSZWdpc3RyeUFwcElkCglyZXRzdWIKCi8vIGFkZFZhbGlkYXRvcihwYXksc3RyaW5nLCh1aW50NjQsYWRkcmVzcyxhZGRyZXNzLHVpbnQ2NCx1aW50OCxhZGRyZXNzLHVpbnQ2NFs0XSx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50MzIsdWludDMyLGFkZHJlc3MsdWludDY0LHVpbnQ2NCx1aW50OCx1aW50NjQsdWludDY0KSl1aW50NjQKKmFiaV9yb3V0ZV9hZGRWYWxpZGF0b3I6CgkvLyBUaGUgQUJJIHJldHVybiBwcmVmaXgKCWJ5dGVjIDIgLy8gMHgxNTFmN2M3NQoKCS8vIGNvbmZpZzogKHVpbnQ2NCxhZGRyZXNzLGFkZHJlc3MsdWludDY0LHVpbnQ4LGFkZHJlc3MsdWludDY0WzRdLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQzMix1aW50MzIsYWRkcmVzcyx1aW50NjQsdWludDY0LHVpbnQ4LHVpbnQ2NCx1aW50NjQpCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAyCglkdXAKCWxlbgoJaW50YyA5IC8vIDI0MgoJPT0KCgkvLyBhcmd1bWVudCAwIChjb25maWcpIGZvciBhZGRWYWxpZGF0b3IgbXVzdCBiZSBhICh1aW50NjQsYWRkcmVzcyxhZGRyZXNzLHVpbnQ2NCx1aW50OCxhZGRyZXNzLHVpbnQ2NFs0XSx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50MzIsdWludDMyLGFkZHJlc3MsdWludDY0LHVpbnQ2NCx1aW50OCx1aW50NjQsdWludDY0KQoJYXNzZXJ0CgoJLy8gbmZkTmFtZTogc3RyaW5nCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglleHRyYWN0IDIgMAoKCS8vIG1iclBheW1lbnQ6IHBheQoJdHhuIEdyb3VwSW5kZXgKCWludGMgMSAvLyAxCgktCglkdXAKCWd0eG5zIFR5cGVFbnVtCglpbnRjIDEgLy8gIHBheQoJPT0KCgkvLyBhcmd1bWVudCAyIChtYnJQYXltZW50KSBmb3IgYWRkVmFsaWRhdG9yIG11c3QgYmUgYSBwYXkgdHJhbnNhY3Rpb24KCWFzc2VydAoKCS8vIGV4ZWN1dGUgYWRkVmFsaWRhdG9yKHBheSxzdHJpbmcsKHVpbnQ2NCxhZGRyZXNzLGFkZHJlc3MsdWludDY0LHVpbnQ4LGFkZHJlc3MsdWludDY0WzRdLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQzMix1aW50MzIsYWRkcmVzcyx1aW50NjQsdWludDY0LHVpbnQ4LHVpbnQ2NCx1aW50NjQpKXVpbnQ2NAoJY2FsbHN1YiBhZGRWYWxpZGF0b3IKCWl0b2IKCWNvbmNhdAoJbG9nCglpbnRjIDEgLy8gMQoJcmV0dXJuCgovLyBhZGRWYWxpZGF0b3IobWJyUGF5bWVudDogUGF5VHhuLCBuZmROYW1lOiBzdHJpbmcsIGNvbmZpZzogVmFsaWRhdG9yQ29uZmlnKTogdWludDY0Ci8vCi8vIEFkZHMgYSBuZXcgdmFsaWRhdG9yCi8vIFJlcXVpcmVzIGF0IGxlYXN0IDEwIEFMR08gYXMgdGhlICdmZWUnIGZvciB0aGUgdHJhbnNhY3Rpb24gdG8gaGVscCBkaXNzdWFkZSBzcGFtbWVkIHZhbGlkYXRvciBhZGRzLgovLwovLyBAcGFyYW0ge1BheVR4bn0gbWJyUGF5bWVudCBwYXltZW50IGZyb20gY2FsbGVyIHdoaWNoIGNvdmVycyBtYnIgaW5jcmVhc2Ugb2YgbmV3IHZhbGlkYXRvciBzdG9yYWdlCi8vIEBwYXJhbSB7c3RyaW5nfSBuZmROYW1lIChPcHRpb25hbCkgTmFtZSBvZiBuZmQgKHVzZWQgYXMgZG91YmxlLWNoZWNrIGFnYWluc3QgaWQgc3BlY2lmaWVkIGluIGNvbmZpZykKLy8gQHBhcmFtIHtWYWxpZGF0b3JDb25maWd9IGNvbmZpZyBWYWxpZGF0b3JDb25maWcgc3RydWN0Ci8vIEByZXR1cm5zIHt1aW50NjR9IHZhbGlkYXRvciBpZAphZGRWYWxpZGF0b3I6Cglwcm90byAzIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZWMgMSAvLyAweAoKCS8vIGNvbnRyYWN0cy92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjMxMwoJLy8gdGhpcy52YWxpZGF0ZUNvbmZpZyhjb25maWcpCglmcmFtZV9kaWcgLTMgLy8gY29uZmlnOiBWYWxpZGF0b3JDb25maWcKCWNhbGxzdWIgdmFsaWRhdGVDb25maWcKCgkvLyBjb250cmFjdHMvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czozMTUKCS8vIHZlcmlmeVBheVR4bihtYnJQYXltZW50LCB7IHJlY2VpdmVyOiB0aGlzLmFwcC5hZGRyZXNzLCBhbW91bnQ6IHRoaXMuZ2V0TWJyQW1vdW50cygpLmFkZFZhbGlkYXRvck1iciB9KQoJLy8gdmVyaWZ5IHJlY2VpdmVyCglmcmFtZV9kaWcgLTEgLy8gbWJyUGF5bWVudDogUGF5VHhuCglndHhucyBSZWNlaXZlcgoJZ2xvYmFsIEN1cnJlbnRBcHBsaWNhdGlvbkFkZHJlc3MKCT09CgoJLy8gdHJhbnNhY3Rpb24gdmVyaWZpY2F0aW9uIGZhaWxlZDogeyJ0eG4iOiJtYnJQYXltZW50IiwiZmllbGQiOiJyZWNlaXZlciIsImV4cGVjdGVkIjoidGhpcy5hcHAuYWRkcmVzcyJ9Cglhc3NlcnQKCgkvLyB2ZXJpZnkgYW1vdW50CglmcmFtZV9kaWcgLTEgLy8gbWJyUGF5bWVudDogUGF5VHhuCglndHhucyBBbW91bnQKCWNhbGxzdWIgZ2V0TWJyQW1vdW50cwoJZXh0cmFjdCAwIDgKCWJ0b2kKCT09CgoJLy8gdHJhbnNhY3Rpb24gdmVyaWZpY2F0aW9uIGZhaWxlZDogeyJ0eG4iOiJtYnJQYXltZW50IiwiZmllbGQiOiJhbW91bnQiLCJleHBlY3RlZCI6InRoaXMuZ2V0TWJyQW1vdW50cygpLmFkZFZhbGlkYXRvck1iciJ9Cglhc3NlcnQKCgkvLyBjb250cmFjdHMvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czozMTcKCS8vIGFzc2VydChtYnJQYXltZW50LmZlZSA+IDEwICogMTAwMDAwMCwgJ2ZlZSBtdXN0IGJlIDEwIEFMR08gb3IgbW9yZSB0byBwcmV2ZW50IHNwYW1taW5nIG9mIHZhbGlkYXRvcnMnKQoJZnJhbWVfZGlnIC0xIC8vIG1iclBheW1lbnQ6IFBheVR4bgoJZ3R4bnMgRmVlCglwdXNoaW50IDEwMDAwMDAwCgk+CgoJLy8gZmVlIG11c3QgYmUgMTAgQUxHTyBvciBtb3JlIHRvIHByZXZlbnQgc3BhbW1pbmcgb2YgdmFsaWRhdG9ycwoJYXNzZXJ0CgoJLy8gY29udHJhY3RzL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MzIwCgkvLyB2YWxpZGF0b3JJZCA9IHRoaXMubnVtVmFsaWRhdG9ycy52YWx1ZSArIDEKCWJ5dGVjIDExIC8vICAibnVtViIKCWFwcF9nbG9iYWxfZ2V0CglpbnRjIDEgLy8gMQoJKwoJZnJhbWVfYnVyeSAwIC8vIHZhbGlkYXRvcklkOiB1aW50NjQKCgkvLyBjb250cmFjdHMvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czozMjEKCS8vIHRoaXMubnVtVmFsaWRhdG9ycy52YWx1ZSA9IHZhbGlkYXRvcklkCglieXRlYyAxMSAvLyAgIm51bVYiCglmcmFtZV9kaWcgMCAvLyB2YWxpZGF0b3JJZDogdWludDY0CglhcHBfZ2xvYmFsX3B1dAoKCS8vIGNvbnRyYWN0cy92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjMyMwoJLy8gdGhpcy52YWxpZGF0b3JMaXN0KHZhbGlkYXRvcklkKS5jcmVhdGUoKQoJYnl0ZWMgMCAvLyAgInYiCglmcmFtZV9kaWcgMCAvLyB2YWxpZGF0b3JJZDogdWludDY0CglpdG9iCgljb25jYXQKCXB1c2hpbnQgMTA5MgoJYm94X2NyZWF0ZQoJcG9wCgoJLy8gY29udHJhY3RzL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MzI0CgkvLyB0aGlzLnZhbGlkYXRvckxpc3QodmFsaWRhdG9ySWQpLnZhbHVlLmNvbmZpZyA9IGNvbmZpZwoJaW50YyAwIC8vIDAKCWZyYW1lX2RpZyAtMyAvLyBjb25maWc6IFZhbGlkYXRvckNvbmZpZwoJYnl0ZWMgMCAvLyAgInYiCglmcmFtZV9kaWcgMCAvLyB2YWxpZGF0b3JJZDogdWludDY0CglpdG9iCgljb25jYXQKCWNvdmVyIDIKCWJveF9yZXBsYWNlCgoJLy8gY29udHJhY3RzL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MzI1CgkvLyB0aGlzLnZhbGlkYXRvckxpc3QodmFsaWRhdG9ySWQpLnZhbHVlLmNvbmZpZy5pZCA9IHZhbGlkYXRvcklkCglpbnRjIDAgLy8gMAoJZnJhbWVfZGlnIDAgLy8gdmFsaWRhdG9ySWQ6IHVpbnQ2NAoJaXRvYgoJYnl0ZWMgMCAvLyAgInYiCglmcmFtZV9kaWcgMCAvLyB2YWxpZGF0b3JJZDogdWludDY0CglpdG9iCgljb25jYXQKCWNvdmVyIDIKCWJveF9yZXBsYWNlCgoJLy8gKmlmNV9jb25kaXRpb24KCS8vIGNvbnRyYWN0cy92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjMyOAoJLy8gY29uZmlnLm5mZEZvckluZm8gIT09IDAKCWZyYW1lX2RpZyAtMyAvLyBjb25maWc6IFZhbGlkYXRvckNvbmZpZwoJZXh0cmFjdCA3MiA4CglidG9pCglpbnRjIDAgLy8gMAoJIT0KCWJ6ICppZjVfZW5kCgoJLy8gKmlmNV9jb25zZXF1ZW50CgkvLyBjb250cmFjdHMvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czozMzAKCS8vIGFzc2VydCh0aGlzLmlzTkZEQXBwSURWYWxpZChjb25maWcubmZkRm9ySW5mbyksICdwcm92aWRlZCBORkQgbXVzdCBiZSB2YWxpZCcpCglmcmFtZV9kaWcgLTMgLy8gY29uZmlnOiBWYWxpZGF0b3JDb25maWcKCWV4dHJhY3QgNzIgOAoJYnRvaQoJY2FsbHN1YiBpc05GREFwcElEVmFsaWQKCgkvLyBwcm92aWRlZCBORkQgbXVzdCBiZSB2YWxpZAoJYXNzZXJ0CgoJLy8gY29udHJhY3RzL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MzMyCgkvLyBhc3NlcnQoCgkvLyAgICAgICAgICAgICAgICAgdGhpcy50eG4uc2VuZGVyID09PSAoQXBwSUQuZnJvbVVpbnQ2NChjb25maWcubmZkRm9ySW5mbykuZ2xvYmFsU3RhdGUoJ2kub3duZXIuYScpIGFzIEFkZHJlc3MpLAoJLy8gICAgICAgICAgICAgICAgICdJZiBzcGVjaWZ5aW5nIE5GRCwgYWNjb3VudCBhZGRpbmcgdmFsaWRhdG9yIG11c3QgYmUgb3duZXInLAoJLy8gICAgICAgICAgICAgKQoJdHhuIFNlbmRlcgoJZnJhbWVfZGlnIC0zIC8vIGNvbmZpZzogVmFsaWRhdG9yQ29uZmlnCglleHRyYWN0IDcyIDgKCWJ0b2kKCWJ5dGVjIDEwIC8vICAiaS5vd25lci5hIgoJYXBwX2dsb2JhbF9nZXRfZXgKCgkvLyBnbG9iYWwgc3RhdGUgdmFsdWUgZG9lcyBub3QgZXhpc3Q6IEFwcElELmZyb21VaW50NjQoY29uZmlnLm5mZEZvckluZm8pLmdsb2JhbFN0YXRlKCdpLm93bmVyLmEnKQoJYXNzZXJ0Cgk9PQoKCS8vIElmIHNwZWNpZnlpbmcgTkZELCBhY2NvdW50IGFkZGluZyB2YWxpZGF0b3IgbXVzdCBiZSBvd25lcgoJYXNzZXJ0CgoqaWY1X2VuZDoKCS8vICppZjZfY29uZGl0aW9uCgkvLyBjb250cmFjdHMvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czozMzgKCS8vIGNvbmZpZy5lbnRyeUdhdGluZ1R5cGUgPT09IEdBVElOR19UWVBFX0NSRUFURURfQllfTkZEX0FERFJFU1NFUyB8fAoJLy8gICAgICAgICAgICAgY29uZmlnLmVudHJ5R2F0aW5nVHlwZSA9PT0gR0FUSU5HX1RZUEVfU0VHTUVOVF9PRl9ORkQKCWZyYW1lX2RpZyAtMyAvLyBjb25maWc6IFZhbGlkYXRvckNvbmZpZwoJZXh0cmFjdCA4MCAxCglidG9pCglpbnRjIDggLy8gMwoJPT0KCWR1cAoJYm56ICpza2lwX29yMAoJZnJhbWVfZGlnIC0zIC8vIGNvbmZpZzogVmFsaWRhdG9yQ29uZmlnCglleHRyYWN0IDgwIDEKCWJ0b2kKCWludGMgMTUgLy8gNAoJPT0KCXx8Cgoqc2tpcF9vcjA6CglieiAqaWY2X2VuZAoKCS8vICppZjZfY29uc2VxdWVudAoJLy8gY29udHJhY3RzL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MzQyCgkvLyBhc3NlcnQoCgkvLyAgICAgICAgICAgICAgICAgdGhpcy5pc05GREFwcElEVmFsaWQoY29uZmlnLmVudHJ5R2F0aW5nQXNzZXRzWzBdKSwKCS8vICAgICAgICAgICAgICAgICAncHJvdmlkZWQgTkZEIEFwcCBpZCBmb3IgZ2F0aW5nIG11c3QgYmUgdmFsaWQgTkZEJywKCS8vICAgICAgICAgICAgICkKCWZyYW1lX2RpZyAtMyAvLyBjb25maWc6IFZhbGlkYXRvckNvbmZpZwoJZXh0cmFjdCAxMTMgOAoJYnRvaQoJY2FsbHN1YiBpc05GREFwcElEVmFsaWQKCgkvLyBwcm92aWRlZCBORkQgQXBwIGlkIGZvciBnYXRpbmcgbXVzdCBiZSB2YWxpZCBORkQKCWFzc2VydAoKKmlmNl9lbmQ6CgkvLyBjb250cmFjdHMvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czozNDcKCS8vIHRoaXMucmV0aU9QX2FkZGVkVmFsaWRhdG9yLmxvZyh7IGlkOiB2YWxpZGF0b3JJZCwgb3duZXI6IGNvbmZpZy5vd25lciwgbWFuYWdlcjogY29uZmlnLm1hbmFnZXIgfSkKCXB1c2hieXRlcyAweGE4ZGQyMWNiIC8vIHJldGlPUF9hZGRlZFZhbGlkYXRvcih1aW50NjQsYWRkcmVzcyxhZGRyZXNzKQoJZnJhbWVfZGlnIDAgLy8gdmFsaWRhdG9ySWQ6IHVpbnQ2NAoJaXRvYgoJZnJhbWVfZGlnIC0zIC8vIGNvbmZpZzogVmFsaWRhdG9yQ29uZmlnCglleHRyYWN0IDggMzIKCWNvbmNhdAoJZnJhbWVfZGlnIC0zIC8vIGNvbmZpZzogVmFsaWRhdG9yQ29uZmlnCglleHRyYWN0IDQwIDMyCgljb25jYXQKCWNvbmNhdAoJbG9nCgoJLy8gY29udHJhY3RzL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MzQ4CgkvLyByZXR1cm4gdmFsaWRhdG9ySWQKCWZyYW1lX2RpZyAwIC8vIHZhbGlkYXRvcklkOiB1aW50NjQKCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCXJldHN1YgoKLy8gY2hhbmdlVmFsaWRhdG9yTWFuYWdlcih1aW50NjQsYWRkcmVzcyl2b2lkCiphYmlfcm91dGVfY2hhbmdlVmFsaWRhdG9yTWFuYWdlcjoKCS8vIG1hbmFnZXI6IGFkZHJlc3MKCXR4bmEgQXBwbGljYXRpb25BcmdzIDIKCWR1cAoJbGVuCglpbnRjIDYgLy8gMzIKCT09CgoJLy8gYXJndW1lbnQgMCAobWFuYWdlcikgZm9yIGNoYW5nZVZhbGlkYXRvck1hbmFnZXIgbXVzdCBiZSBhIGFkZHJlc3MKCWFzc2VydAoKCS8vIHZhbGlkYXRvcklkOiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWJ0b2kKCgkvLyBleGVjdXRlIGNoYW5nZVZhbGlkYXRvck1hbmFnZXIodWludDY0LGFkZHJlc3Mpdm9pZAoJY2FsbHN1YiBjaGFuZ2VWYWxpZGF0b3JNYW5hZ2VyCglpbnRjIDEgLy8gMQoJcmV0dXJuCgovLyBjaGFuZ2VWYWxpZGF0b3JNYW5hZ2VyKHZhbGlkYXRvcklkOiBWYWxpZGF0b3JJZFR5cGUsIG1hbmFnZXI6IEFkZHJlc3MpOiB2b2lkCi8vCi8vIENoYW5nZXMgdGhlIFZhbGlkYXRvciBtYW5hZ2VyIGZvciBhIHNwZWNpZmljIFZhbGlkYXRvciBpZC4KLy8gWyBPTkxZIE9XTkVSIENBTiBDSEFOR0UgXQovLwovLyBAcGFyYW0ge1ZhbGlkYXRvcklkVHlwZX0gdmFsaWRhdG9ySWQgLSBUaGUgaWQgb2YgdGhlIHZhbGlkYXRvciB0byBjaGFuZ2UgdGhlIG1hbmFnZXIgZm9yLgovLyBAcGFyYW0ge0FkZHJlc3N9IG1hbmFnZXIgLSBUaGUgbmV3IG1hbmFnZXIgYWRkcmVzcy4KY2hhbmdlVmFsaWRhdG9yTWFuYWdlcjoKCXByb3RvIDIgMAoKCS8vIGNvbnRyYWN0cy92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjM1OQoJLy8gdGhpcy5jYWxsZXJNdXN0QmVPd25lcih2YWxpZGF0b3JJZCkKCWZyYW1lX2RpZyAtMSAvLyB2YWxpZGF0b3JJZDogVmFsaWRhdG9ySWRUeXBlCgljYWxsc3ViIGNhbGxlck11c3RCZU93bmVyCgoJLy8gY29udHJhY3RzL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MzYwCgkvLyBhc3NlcnQobWFuYWdlciAhPT0gZ2xvYmFscy56ZXJvQWRkcmVzcywgJ25lZWRzIHRvIGF0IGxlYXN0IGJlIHZhbGlkIGFkZHJlc3MnKQoJZnJhbWVfZGlnIC0yIC8vIG1hbmFnZXI6IEFkZHJlc3MKCWdsb2JhbCBaZXJvQWRkcmVzcwoJIT0KCgkvLyBuZWVkcyB0byBhdCBsZWFzdCBiZSB2YWxpZCBhZGRyZXNzCglhc3NlcnQKCgkvLyBjb250cmFjdHMvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czozNjEKCS8vIHRoaXMudmFsaWRhdG9yTGlzdCh2YWxpZGF0b3JJZCkudmFsdWUuY29uZmlnLm1hbmFnZXIgPSBtYW5hZ2VyCglpbnRjIDIwIC8vIDQwCglmcmFtZV9kaWcgLTIgLy8gbWFuYWdlcjogQWRkcmVzcwoJYnl0ZWMgMCAvLyAgInYiCglmcmFtZV9kaWcgLTEgLy8gdmFsaWRhdG9ySWQ6IFZhbGlkYXRvcklkVHlwZQoJaXRvYgoJY29uY2F0Cgljb3ZlciAyCglib3hfcmVwbGFjZQoJcmV0c3ViCgovLyBjaGFuZ2VWYWxpZGF0b3JTdW5zZXRJbmZvKHVpbnQ2NCx1aW50NjQsdWludDY0KXZvaWQKKmFiaV9yb3V0ZV9jaGFuZ2VWYWxpZGF0b3JTdW5zZXRJbmZvOgoJLy8gc3Vuc2V0dGluZ1RvOiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDMKCWJ0b2kKCgkvLyBzdW5zZXR0aW5nT246IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMgoJYnRvaQoKCS8vIHZhbGlkYXRvcklkOiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWJ0b2kKCgkvLyBleGVjdXRlIGNoYW5nZVZhbGlkYXRvclN1bnNldEluZm8odWludDY0LHVpbnQ2NCx1aW50NjQpdm9pZAoJY2FsbHN1YiBjaGFuZ2VWYWxpZGF0b3JTdW5zZXRJbmZvCglpbnRjIDEgLy8gMQoJcmV0dXJuCgovLyBjaGFuZ2VWYWxpZGF0b3JTdW5zZXRJbmZvKHZhbGlkYXRvcklkOiBWYWxpZGF0b3JJZFR5cGUsIHN1bnNldHRpbmdPbjogdWludDY0LCBzdW5zZXR0aW5nVG86IFZhbGlkYXRvcklkVHlwZSk6IHZvaWQKLy8KLy8gVXBkYXRlcyB0aGUgc3Vuc2V0IGluZm9ybWF0aW9uIGZvciBhIGdpdmVuIHZhbGlkYXRvci4KLy8gWyBPTkxZIE9XTkVSIENBTiBDSEFOR0UgXQovLwovLyBAcGFyYW0ge1ZhbGlkYXRvcklkVHlwZX0gdmFsaWRhdG9ySWQgLSBUaGUgaWQgb2YgdGhlIHZhbGlkYXRvciB0byB1cGRhdGUuCi8vIEBwYXJhbSB7dWludDY0fSBzdW5zZXR0aW5nT24gLSBUaGUgbmV3IHN1bnNldCB0aW1lc3RhbXAuCi8vIEBwYXJhbSB7dWludDY0fSBzdW5zZXR0aW5nVG8gLSBUaGUgbmV3IHN1bnNldCB0byB2YWxpZGF0b3IgaWQuCmNoYW5nZVZhbGlkYXRvclN1bnNldEluZm86Cglwcm90byAzIDAKCgkvLyBjb250cmFjdHMvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czozNzMKCS8vIHRoaXMuY2FsbGVyTXVzdEJlT3duZXIodmFsaWRhdG9ySWQpCglmcmFtZV9kaWcgLTEgLy8gdmFsaWRhdG9ySWQ6IFZhbGlkYXRvcklkVHlwZQoJY2FsbHN1YiBjYWxsZXJNdXN0QmVPd25lcgoKCS8vIGNvbnRyYWN0cy92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjM3NAoJLy8gdGhpcy52YWxpZGF0b3JMaXN0KHZhbGlkYXRvcklkKS52YWx1ZS5jb25maWcuc3Vuc2V0dGluZ09uID0gc3Vuc2V0dGluZ09uCglpbnRjIDI3IC8vIDIyNgoJZnJhbWVfZGlnIC0yIC8vIHN1bnNldHRpbmdPbjogdWludDY0CglpdG9iCglieXRlYyAwIC8vICAidiIKCWZyYW1lX2RpZyAtMSAvLyB2YWxpZGF0b3JJZDogVmFsaWRhdG9ySWRUeXBlCglpdG9iCgljb25jYXQKCWNvdmVyIDIKCWJveF9yZXBsYWNlCgoJLy8gY29udHJhY3RzL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6Mzc1CgkvLyB0aGlzLnZhbGlkYXRvckxpc3QodmFsaWRhdG9ySWQpLnZhbHVlLmNvbmZpZy5zdW5zZXR0aW5nVG8gPSBzdW5zZXR0aW5nVG8KCXB1c2hpbnQgMjM0CglmcmFtZV9kaWcgLTMgLy8gc3Vuc2V0dGluZ1RvOiBWYWxpZGF0b3JJZFR5cGUKCWl0b2IKCWJ5dGVjIDAgLy8gICJ2IgoJZnJhbWVfZGlnIC0xIC8vIHZhbGlkYXRvcklkOiBWYWxpZGF0b3JJZFR5cGUKCWl0b2IKCWNvbmNhdAoJY292ZXIgMgoJYm94X3JlcGxhY2UKCXJldHN1YgoKLy8gY2hhbmdlVmFsaWRhdG9yTkZEKHVpbnQ2NCx1aW50NjQsc3RyaW5nKXZvaWQKKmFiaV9yb3V0ZV9jaGFuZ2VWYWxpZGF0b3JORkQ6CgkvLyBuZmROYW1lOiBzdHJpbmcKCXR4bmEgQXBwbGljYXRpb25BcmdzIDMKCWV4dHJhY3QgMiAwCgoJLy8gbmZkQXBwSUQ6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMgoJYnRvaQoKCS8vIHZhbGlkYXRvcklkOiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWJ0b2kKCgkvLyBleGVjdXRlIGNoYW5nZVZhbGlkYXRvck5GRCh1aW50NjQsdWludDY0LHN0cmluZyl2b2lkCgljYWxsc3ViIGNoYW5nZVZhbGlkYXRvck5GRAoJaW50YyAxIC8vIDEKCXJldHVybgoKLy8gY2hhbmdlVmFsaWRhdG9yTkZEKHZhbGlkYXRvcklkOiBWYWxpZGF0b3JJZFR5cGUsIG5mZEFwcElEOiB1aW50NjQsIG5mZE5hbWU6IHN0cmluZyk6IHZvaWQKLy8KLy8gQ2hhbmdlcyB0aGUgTkZEIGZvciBhIHZhbGlkYXRvciBpbiB0aGUgdmFsaWRhdG9yTGlzdCBjb250cmFjdC4KLy8gWyBPTkxZIE9XTkVSIENBTiBDSEFOR0UgXQovLwovLyBAcGFyYW0ge1ZhbGlkYXRvcklkVHlwZX0gdmFsaWRhdG9ySWQgLSBUaGUgaWQgb2YgdGhlIHZhbGlkYXRvciB0byB1cGRhdGUuCi8vIEBwYXJhbSB7dWludDY0fSBuZmRBcHBJRCAtIFRoZSBhcHBsaWNhdGlvbiBpZCBvZiB0aGUgTkZEIHRvIGFzc2lnbiB0byB0aGUgdmFsaWRhdG9yLgovLyBAcGFyYW0ge3N0cmluZ30gbmZkTmFtZSAtIFRoZSBuYW1lIG9mIHRoZSBORkQgKHdoaWNoIG11c3QgbWF0Y2gpCmNoYW5nZVZhbGlkYXRvck5GRDoKCXByb3RvIDMgMAoKCS8vIGNvbnRyYWN0cy92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjM4NwoJLy8gdGhpcy5jYWxsZXJNdXN0QmVPd25lcih2YWxpZGF0b3JJZCkKCWZyYW1lX2RpZyAtMSAvLyB2YWxpZGF0b3JJZDogVmFsaWRhdG9ySWRUeXBlCgljYWxsc3ViIGNhbGxlck11c3RCZU93bmVyCgoJLy8gY29udHJhY3RzL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6Mzg5CgkvLyBhc3NlcnQodGhpcy5pc05GREFwcElEVmFsaWQobmZkQXBwSUQpLCAncHJvdmlkZWQgTkZEIG11c3QgYmUgdmFsaWQnKQoJZnJhbWVfZGlnIC0yIC8vIG5mZEFwcElEOiB1aW50NjQKCWNhbGxzdWIgaXNORkRBcHBJRFZhbGlkCgoJLy8gcHJvdmlkZWQgTkZEIG11c3QgYmUgdmFsaWQKCWFzc2VydAoKCS8vIGNvbnRyYWN0cy92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjM5MQoJLy8gYXNzZXJ0KAoJLy8gICAgICAgICAgICAgdGhpcy50eG4uc2VuZGVyID09PSAoQXBwSUQuZnJvbVVpbnQ2NChuZmRBcHBJRCkuZ2xvYmFsU3RhdGUoJ2kub3duZXIuYScpIGFzIEFkZHJlc3MpLAoJLy8gICAgICAgICAgICAgJ0lmIHNwZWNpZnlpbmcgTkZELCBhY2NvdW50IGFkZGluZyB2YWxpZGF0b3IgbXVzdCBiZSBvd25lcicsCgkvLyAgICAgICAgICkKCXR4biBTZW5kZXIKCWZyYW1lX2RpZyAtMiAvLyBuZmRBcHBJRDogdWludDY0CglieXRlYyAxMCAvLyAgImkub3duZXIuYSIKCWFwcF9nbG9iYWxfZ2V0X2V4CgoJLy8gZ2xvYmFsIHN0YXRlIHZhbHVlIGRvZXMgbm90IGV4aXN0OiBBcHBJRC5mcm9tVWludDY0KG5mZEFwcElEKS5nbG9iYWxTdGF0ZSgnaS5vd25lci5hJykKCWFzc2VydAoJPT0KCgkvLyBJZiBzcGVjaWZ5aW5nIE5GRCwgYWNjb3VudCBhZGRpbmcgdmFsaWRhdG9yIG11c3QgYmUgb3duZXIKCWFzc2VydAoKCS8vIGNvbnRyYWN0cy92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjM5NQoJLy8gdGhpcy52YWxpZGF0b3JMaXN0KHZhbGlkYXRvcklkKS52YWx1ZS5jb25maWcubmZkRm9ySW5mbyA9IG5mZEFwcElECglpbnRjIDIxIC8vIDcyCglmcmFtZV9kaWcgLTIgLy8gbmZkQXBwSUQ6IHVpbnQ2NAoJaXRvYgoJYnl0ZWMgMCAvLyAgInYiCglmcmFtZV9kaWcgLTEgLy8gdmFsaWRhdG9ySWQ6IFZhbGlkYXRvcklkVHlwZQoJaXRvYgoJY29uY2F0Cgljb3ZlciAyCglib3hfcmVwbGFjZQoJcmV0c3ViCgovLyBjaGFuZ2VWYWxpZGF0b3JDb21taXNzaW9uQWRkcmVzcyh1aW50NjQsYWRkcmVzcyl2b2lkCiphYmlfcm91dGVfY2hhbmdlVmFsaWRhdG9yQ29tbWlzc2lvbkFkZHJlc3M6CgkvLyBjb21taXNzaW9uQWRkcmVzczogYWRkcmVzcwoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMgoJZHVwCglsZW4KCWludGMgNiAvLyAzMgoJPT0KCgkvLyBhcmd1bWVudCAwIChjb21taXNzaW9uQWRkcmVzcykgZm9yIGNoYW5nZVZhbGlkYXRvckNvbW1pc3Npb25BZGRyZXNzIG11c3QgYmUgYSBhZGRyZXNzCglhc3NlcnQKCgkvLyB2YWxpZGF0b3JJZDogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglidG9pCgoJLy8gZXhlY3V0ZSBjaGFuZ2VWYWxpZGF0b3JDb21taXNzaW9uQWRkcmVzcyh1aW50NjQsYWRkcmVzcyl2b2lkCgljYWxsc3ViIGNoYW5nZVZhbGlkYXRvckNvbW1pc3Npb25BZGRyZXNzCglpbnRjIDEgLy8gMQoJcmV0dXJuCgovLyBjaGFuZ2VWYWxpZGF0b3JDb21taXNzaW9uQWRkcmVzcyh2YWxpZGF0b3JJZDogVmFsaWRhdG9ySWRUeXBlLCBjb21taXNzaW9uQWRkcmVzczogQWRkcmVzcyk6IHZvaWQKLy8KLy8gQ2hhbmdlIHRoZSBjb21taXNzaW9uIGFkZHJlc3MgdGhhdCB2YWxpZGF0b3IgcmV3YXJkcyBhcmUgc2VudCB0by4KLy8gWyBPTkxZIE9XTkVSIENBTiBDSEFOR0UgXQpjaGFuZ2VWYWxpZGF0b3JDb21taXNzaW9uQWRkcmVzczoKCXByb3RvIDIgMAoKCS8vIGNvbnRyYWN0cy92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjQwMwoJLy8gdGhpcy5jYWxsZXJNdXN0QmVPd25lcih2YWxpZGF0b3JJZCkKCWZyYW1lX2RpZyAtMSAvLyB2YWxpZGF0b3JJZDogVmFsaWRhdG9ySWRUeXBlCgljYWxsc3ViIGNhbGxlck11c3RCZU93bmVyCgoJLy8gY29udHJhY3RzL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6NDA0CgkvLyBhc3NlcnQoY29tbWlzc2lvbkFkZHJlc3MgIT09IEFkZHJlc3MuemVyb0FkZHJlc3MpCglmcmFtZV9kaWcgLTIgLy8gY29tbWlzc2lvbkFkZHJlc3M6IEFkZHJlc3MKCWdsb2JhbCBaZXJvQWRkcmVzcwoJIT0KCWFzc2VydAoKCS8vIGNvbnRyYWN0cy92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjQwNQoJLy8gdGhpcy52YWxpZGF0b3JMaXN0KHZhbGlkYXRvcklkKS52YWx1ZS5jb25maWcudmFsaWRhdG9yQ29tbWlzc2lvbkFkZHJlc3MgPSBjb21taXNzaW9uQWRkcmVzcwoJcHVzaGludCAxNzcKCWZyYW1lX2RpZyAtMiAvLyBjb21taXNzaW9uQWRkcmVzczogQWRkcmVzcwoJYnl0ZWMgMCAvLyAgInYiCglmcmFtZV9kaWcgLTEgLy8gdmFsaWRhdG9ySWQ6IFZhbGlkYXRvcklkVHlwZQoJaXRvYgoJY29uY2F0Cgljb3ZlciAyCglib3hfcmVwbGFjZQoJcmV0c3ViCgovLyBjaGFuZ2VWYWxpZGF0b3JSZXdhcmRJbmZvKHVpbnQ2NCx1aW50OCxhZGRyZXNzLHVpbnQ2NFs0XSx1aW50NjQsdWludDY0KXZvaWQKKmFiaV9yb3V0ZV9jaGFuZ2VWYWxpZGF0b3JSZXdhcmRJbmZvOgoJLy8gUmV3YXJkUGVyUGF5b3V0OiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDYKCWJ0b2kKCgkvLyBHYXRpbmdBc3NldE1pbkJhbGFuY2U6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgNQoJYnRvaQoKCS8vIEVudHJ5R2F0aW5nQXNzZXRzOiB1aW50NjRbNF0KCXR4bmEgQXBwbGljYXRpb25BcmdzIDQKCWR1cAoJbGVuCglpbnRjIDYgLy8gMzIKCT09CgoJLy8gYXJndW1lbnQgMiAoRW50cnlHYXRpbmdBc3NldHMpIGZvciBjaGFuZ2VWYWxpZGF0b3JSZXdhcmRJbmZvIG11c3QgYmUgYSB1aW50NjRbNF0KCWFzc2VydAoKCS8vIEVudHJ5R2F0aW5nQWRkcmVzczogYWRkcmVzcwoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMwoJZHVwCglsZW4KCWludGMgNiAvLyAzMgoJPT0KCgkvLyBhcmd1bWVudCAzIChFbnRyeUdhdGluZ0FkZHJlc3MpIGZvciBjaGFuZ2VWYWxpZGF0b3JSZXdhcmRJbmZvIG11c3QgYmUgYSBhZGRyZXNzCglhc3NlcnQKCgkvLyBFbnRyeUdhdGluZ1R5cGU6IHVpbnQ4Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAyCglkdXAKCWxlbgoJaW50YyAxIC8vIDEKCT09CgoJLy8gYXJndW1lbnQgNCAoRW50cnlHYXRpbmdUeXBlKSBmb3IgY2hhbmdlVmFsaWRhdG9yUmV3YXJkSW5mbyBtdXN0IGJlIGEgdWludDgKCWFzc2VydAoJYnRvaQoKCS8vIHZhbGlkYXRvcklkOiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWJ0b2kKCgkvLyBleGVjdXRlIGNoYW5nZVZhbGlkYXRvclJld2FyZEluZm8odWludDY0LHVpbnQ4LGFkZHJlc3MsdWludDY0WzRdLHVpbnQ2NCx1aW50NjQpdm9pZAoJY2FsbHN1YiBjaGFuZ2VWYWxpZGF0b3JSZXdhcmRJbmZvCglpbnRjIDEgLy8gMQoJcmV0dXJuCgovLyBjaGFuZ2VWYWxpZGF0b3JSZXdhcmRJbmZvKHZhbGlkYXRvcklkOiBWYWxpZGF0b3JJZFR5cGUsIEVudHJ5R2F0aW5nVHlwZTogdWludDgsIEVudHJ5R2F0aW5nQWRkcmVzczogQWRkcmVzcywgRW50cnlHYXRpbmdBc3NldHM6IFN0YXRpY0FycmF5PHVpbnQ2NCwgND4sIEdhdGluZ0Fzc2V0TWluQmFsYW5jZTogdWludDY0LCBSZXdhcmRQZXJQYXlvdXQ6IHVpbnQ2NCk6IHZvaWQKLy8KLy8gQWxsb3cgdGhlIGFkZGl0aW9uYWwgcmV3YXJkcyAoZ2F0aW5nIGVudHJ5LCBhZGRpdGlvbmFsIHRva2VuIHJld2FyZHMpIGluZm9ybWF0aW9uIGJlIGNoYW5nZWQgYXQgd2lsbC4KLy8gWyBPTkxZIE9XTkVSIENBTiBDSEFOR0UgXQpjaGFuZ2VWYWxpZGF0b3JSZXdhcmRJbmZvOgoJcHJvdG8gNiAwCgoJLy8gY29udHJhY3RzL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6NDIwCgkvLyB0aGlzLmNhbGxlck11c3RCZU93bmVyKHZhbGlkYXRvcklkKQoJZnJhbWVfZGlnIC0xIC8vIHZhbGlkYXRvcklkOiBWYWxpZGF0b3JJZFR5cGUKCWNhbGxzdWIgY2FsbGVyTXVzdEJlT3duZXIKCgkvLyBjb250cmFjdHMvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo0MjIKCS8vIGFzc2VydCgKCS8vICAgICAgICAgICAgIEVudHJ5R2F0aW5nVHlwZSA+PSBHQVRJTkdfVFlQRV9OT05FICYmIEVudHJ5R2F0aW5nVHlwZSA8IEdBVElOR19UWVBFX0NPTlNUX01BWCwKCS8vICAgICAgICAgICAgICdpbnZhbGlkIEVudHJ5IGdhdGluZyB0eXBlJywKCS8vICAgICAgICAgKQoJZnJhbWVfZGlnIC0yIC8vIEVudHJ5R2F0aW5nVHlwZTogdWludDgKCWludGMgMCAvLyAwCgk+PQoJZHVwCglieiAqc2tpcF9hbmQxCglmcmFtZV9kaWcgLTIgLy8gRW50cnlHYXRpbmdUeXBlOiB1aW50OAoJaW50YyAxNSAvLyA0Cgk8CgkmJgoKKnNraXBfYW5kMToKCS8vIGludmFsaWQgRW50cnkgZ2F0aW5nIHR5cGUKCWFzc2VydAoKCS8vICppZjdfY29uZGl0aW9uCgkvLyBjb250cmFjdHMvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo0MjYKCS8vIEVudHJ5R2F0aW5nVHlwZSA9PT0gR0FUSU5HX1RZUEVfQVNTRVRTX0NSRUFURURfQlkKCWZyYW1lX2RpZyAtMiAvLyBFbnRyeUdhdGluZ1R5cGU6IHVpbnQ4CglpbnRjIDEgLy8gMQoJPT0KCWJ6ICppZjdfZW5kCgoJLy8gKmlmN19jb25zZXF1ZW50CgkvLyBjb250cmFjdHMvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo0MjcKCS8vIGFzc2VydChFbnRyeUdhdGluZ0FkZHJlc3MgIT09IGdsb2JhbHMuemVyb0FkZHJlc3MpCglmcmFtZV9kaWcgLTMgLy8gRW50cnlHYXRpbmdBZGRyZXNzOiBBZGRyZXNzCglnbG9iYWwgWmVyb0FkZHJlc3MKCSE9Cglhc3NlcnQKCippZjdfZW5kOgoJLy8gKmlmOF9jb25kaXRpb24KCS8vIGNvbnRyYWN0cy92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjQzMAoJLy8gRW50cnlHYXRpbmdUeXBlID09PSBHQVRJTkdfVFlQRV9DUkVBVEVEX0JZX05GRF9BRERSRVNTRVMgfHwKCS8vICAgICAgICAgICAgIEVudHJ5R2F0aW5nVHlwZSA9PT0gR0FUSU5HX1RZUEVfU0VHTUVOVF9PRl9ORkQKCWZyYW1lX2RpZyAtMiAvLyBFbnRyeUdhdGluZ1R5cGU6IHVpbnQ4CglpbnRjIDggLy8gMwoJPT0KCWR1cAoJYm56ICpza2lwX29yMQoJZnJhbWVfZGlnIC0yIC8vIEVudHJ5R2F0aW5nVHlwZTogdWludDgKCWludGMgMTUgLy8gNAoJPT0KCXx8Cgoqc2tpcF9vcjE6CglieiAqaWY4X2VuZAoKCS8vICppZjhfY29uc2VxdWVudAoJLy8gY29udHJhY3RzL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6NDMzCgkvLyBhc3NlcnQodGhpcy5pc05GREFwcElEVmFsaWQoRW50cnlHYXRpbmdBc3NldHNbMF0pLCAncHJvdmlkZWQgTkZEIEFwcCBpZCBmb3IgZ2F0aW5nIG11c3QgYmUgdmFsaWQgTkZEJykKCWZyYW1lX2RpZyAtNCAvLyBFbnRyeUdhdGluZ0Fzc2V0czogU3RhdGljQXJyYXk8dWludDY0LCA0PgoJZXh0cmFjdCAwIDgKCWJ0b2kKCWNhbGxzdWIgaXNORkRBcHBJRFZhbGlkCgoJLy8gcHJvdmlkZWQgTkZEIEFwcCBpZCBmb3IgZ2F0aW5nIG11c3QgYmUgdmFsaWQgTkZECglhc3NlcnQKCippZjhfZW5kOgoJLy8gY29udHJhY3RzL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6NDM1CgkvLyB0aGlzLnZhbGlkYXRvckxpc3QodmFsaWRhdG9ySWQpLnZhbHVlLmNvbmZpZy5lbnRyeUdhdGluZ1R5cGUgPSBFbnRyeUdhdGluZ1R5cGUKCWludGMgMzYgLy8gODAKCWZyYW1lX2RpZyAtMiAvLyBFbnRyeUdhdGluZ1R5cGU6IHVpbnQ4CglpdG9iCglleHRyYWN0IDcgMQoJYnl0ZWMgMCAvLyAgInYiCglmcmFtZV9kaWcgLTEgLy8gdmFsaWRhdG9ySWQ6IFZhbGlkYXRvcklkVHlwZQoJaXRvYgoJY29uY2F0Cgljb3ZlciAyCglib3hfcmVwbGFjZQoKCS8vIGNvbnRyYWN0cy92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjQzNgoJLy8gdGhpcy52YWxpZGF0b3JMaXN0KHZhbGlkYXRvcklkKS52YWx1ZS5jb25maWcuZW50cnlHYXRpbmdBZGRyZXNzID0gRW50cnlHYXRpbmdBZGRyZXNzCglwdXNoaW50IDgxCglmcmFtZV9kaWcgLTMgLy8gRW50cnlHYXRpbmdBZGRyZXNzOiBBZGRyZXNzCglieXRlYyAwIC8vICAidiIKCWZyYW1lX2RpZyAtMSAvLyB2YWxpZGF0b3JJZDogVmFsaWRhdG9ySWRUeXBlCglpdG9iCgljb25jYXQKCWNvdmVyIDIKCWJveF9yZXBsYWNlCgoJLy8gY29udHJhY3RzL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6NDM3CgkvLyB0aGlzLnZhbGlkYXRvckxpc3QodmFsaWRhdG9ySWQpLnZhbHVlLmNvbmZpZy5lbnRyeUdhdGluZ0Fzc2V0cyA9IEVudHJ5R2F0aW5nQXNzZXRzCglwdXNoaW50IDExMwoJZnJhbWVfZGlnIC00IC8vIEVudHJ5R2F0aW5nQXNzZXRzOiBTdGF0aWNBcnJheTx1aW50NjQsIDQ+CglieXRlYyAwIC8vICAidiIKCWZyYW1lX2RpZyAtMSAvLyB2YWxpZGF0b3JJZDogVmFsaWRhdG9ySWRUeXBlCglpdG9iCgljb25jYXQKCWNvdmVyIDIKCWJveF9yZXBsYWNlCgoJLy8gY29udHJhY3RzL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6NDM4CgkvLyB0aGlzLnZhbGlkYXRvckxpc3QodmFsaWRhdG9ySWQpLnZhbHVlLmNvbmZpZy5nYXRpbmdBc3NldE1pbkJhbGFuY2UgPSBHYXRpbmdBc3NldE1pbkJhbGFuY2UKCWludGMgMzcgLy8gMTQ1CglmcmFtZV9kaWcgLTUgLy8gR2F0aW5nQXNzZXRNaW5CYWxhbmNlOiB1aW50NjQKCWl0b2IKCWJ5dGVjIDAgLy8gICJ2IgoJZnJhbWVfZGlnIC0xIC8vIHZhbGlkYXRvcklkOiBWYWxpZGF0b3JJZFR5cGUKCWl0b2IKCWNvbmNhdAoJY292ZXIgMgoJYm94X3JlcGxhY2UKCgkvLyBjb250cmFjdHMvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo0MzkKCS8vIHRoaXMudmFsaWRhdG9yTGlzdCh2YWxpZGF0b3JJZCkudmFsdWUuY29uZmlnLnJld2FyZFBlclBheW91dCA9IFJld2FyZFBlclBheW91dAoJcHVzaGludCAxNjEKCWZyYW1lX2RpZyAtNiAvLyBSZXdhcmRQZXJQYXlvdXQ6IHVpbnQ2NAoJaXRvYgoJYnl0ZWMgMCAvLyAgInYiCglmcmFtZV9kaWcgLTEgLy8gdmFsaWRhdG9ySWQ6IFZhbGlkYXRvcklkVHlwZQoJaXRvYgoJY29uY2F0Cgljb3ZlciAyCglib3hfcmVwbGFjZQoJcmV0c3ViCgovLyBhZGRQb29sKHBheSx1aW50NjQsdWludDY0KSh1aW50NjQsdWludDY0LHVpbnQ2NCkKKmFiaV9yb3V0ZV9hZGRQb29sOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlYyAyIC8vIDB4MTUxZjdjNzUKCgkvLyBub2RlTnVtOiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDIKCWJ0b2kKCgkvLyB2YWxpZGF0b3JJZDogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglidG9pCgoJLy8gbWJyUGF5bWVudDogcGF5Cgl0eG4gR3JvdXBJbmRleAoJaW50YyAxIC8vIDEKCS0KCWR1cAoJZ3R4bnMgVHlwZUVudW0KCWludGMgMSAvLyAgcGF5Cgk9PQoKCS8vIGFyZ3VtZW50IDIgKG1iclBheW1lbnQpIGZvciBhZGRQb29sIG11c3QgYmUgYSBwYXkgdHJhbnNhY3Rpb24KCWFzc2VydAoKCS8vIGV4ZWN1dGUgYWRkUG9vbChwYXksdWludDY0LHVpbnQ2NCkodWludDY0LHVpbnQ2NCx1aW50NjQpCgljYWxsc3ViIGFkZFBvb2wKCWNvbmNhdAoJbG9nCglpbnRjIDEgLy8gMQoJcmV0dXJuCgovLyBhZGRQb29sKG1iclBheW1lbnQ6IFBheVR4biwgdmFsaWRhdG9ySWQ6IFZhbGlkYXRvcklkVHlwZSwgbm9kZU51bTogdWludDY0KTogVmFsaWRhdG9yUG9vbEtleQovLwovLyBBZGRzIGEgbmV3IHBvb2wgdG8gYSB2YWxpZGF0b3IncyBwb29sIHNldCwgcmV0dXJuaW5nIHRoZSAna2V5JyB0byByZWZlcmVuY2UgdGhlIHBvb2wgaW4gdGhlIGZ1dHVyZSBmb3Igc3Rha2luZywgZXRjLgovLyBUaGUgY2FsbGVyIG11c3QgcGF5IHRoZSBjb3N0IG9mIHRoZSB2YWxpZGF0b3JzIE1CUiBpbmNyZWFzZSBhcyB3ZWxsIGFzIHRoZSBNQlIgdGhhdCB3aWxsIGJlIG5lZWRlZCBmb3IgdGhlIHBvb2wgaXRzZWxmLgovLwovLyBbIE9OTFkgT1dORVIgT1IgTUFOQUdFUiBDQU4gY2FsbCBdCi8vIEBwYXJhbSB7UGF5VHhufSBtYnJQYXltZW50IHBheW1lbnQgZnJvbSBjYWxsZXIgd2hpY2ggY292ZXJzIG1iciBpbmNyZWFzZSBvZiBhZGRpbmcgYSBuZXcgcG9vbAovLyBAcGFyYW0ge3VpbnQ2NH0gdmFsaWRhdG9ySWQgaXMgaWQgb2YgdmFsaWRhdG9yIHRvIHBvb2wgdG8gKG11c3QgYmUgb3duZXIgb3IgbWFuYWdlcikKLy8gQHBhcmFtIHt1aW50NjR9IG5vZGVOdW0gaXMgbm9kZSBudW1iZXIgdG8gYWRkIHRvCi8vIEByZXR1cm5zIHtWYWxpZGF0b3JQb29sS2V5fSBwb29sIGtleSB0byBjcmVhdGVkIHBvb2wKYWRkUG9vbDoKCXByb3RvIDMgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlYyAxIC8vIDB4CglkdXAKCgkvLyBjb250cmFjdHMvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo0NTQKCS8vIHRoaXMuY2FsbGVyTXVzdEJlT3duZXJPck1hbmFnZXIodmFsaWRhdG9ySWQpCglmcmFtZV9kaWcgLTIgLy8gdmFsaWRhdG9ySWQ6IFZhbGlkYXRvcklkVHlwZQoJY2FsbHN1YiBjYWxsZXJNdXN0QmVPd25lck9yTWFuYWdlcgoKCS8vIGNvbnRyYWN0cy92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjQ1NwoJLy8gdmVyaWZ5UGF5VHhuKG1iclBheW1lbnQsIHsgcmVjZWl2ZXI6IHRoaXMuYXBwLmFkZHJlc3MsIGFtb3VudDogdGhpcy5nZXRNYnJBbW91bnRzKCkuYWRkUG9vbE1iciB9KQoJLy8gdmVyaWZ5IHJlY2VpdmVyCglmcmFtZV9kaWcgLTEgLy8gbWJyUGF5bWVudDogUGF5VHhuCglndHhucyBSZWNlaXZlcgoJZ2xvYmFsIEN1cnJlbnRBcHBsaWNhdGlvbkFkZHJlc3MKCT09CgoJLy8gdHJhbnNhY3Rpb24gdmVyaWZpY2F0aW9uIGZhaWxlZDogeyJ0eG4iOiJtYnJQYXltZW50IiwiZmllbGQiOiJyZWNlaXZlciIsImV4cGVjdGVkIjoidGhpcy5hcHAuYWRkcmVzcyJ9Cglhc3NlcnQKCgkvLyB2ZXJpZnkgYW1vdW50CglmcmFtZV9kaWcgLTEgLy8gbWJyUGF5bWVudDogUGF5VHhuCglndHhucyBBbW91bnQKCWNhbGxzdWIgZ2V0TWJyQW1vdW50cwoJZXh0cmFjdCA4IDgKCWJ0b2kKCT09CgoJLy8gdHJhbnNhY3Rpb24gdmVyaWZpY2F0aW9uIGZhaWxlZDogeyJ0eG4iOiJtYnJQYXltZW50IiwiZmllbGQiOiJhbW91bnQiLCJleHBlY3RlZCI6InRoaXMuZ2V0TWJyQW1vdW50cygpLmFkZFBvb2xNYnIifQoJYXNzZXJ0CgoJLy8gY29udHJhY3RzL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6NDU5CgkvLyBhc3NlcnQodGhpcy52YWxpZGF0b3JMaXN0KHZhbGlkYXRvcklkKS5leGlzdHMsICJzcGVjaWZpZWQgdmFsaWRhdG9yIGlkIGlzbid0IHZhbGlkIikKCWJ5dGVjIDAgLy8gICJ2IgoJZnJhbWVfZGlnIC0yIC8vIHZhbGlkYXRvcklkOiBWYWxpZGF0b3JJZFR5cGUKCWl0b2IKCWNvbmNhdAoJYm94X2xlbgoJc3dhcAoJcG9wCgoJLy8gc3BlY2lmaWVkIHZhbGlkYXRvciBpZCBpc24ndCB2YWxpZAoJYXNzZXJ0CgoJLy8gY29udHJhY3RzL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6NDYxCgkvLyBudW1Qb29sczogdWludDY0ID0gdGhpcy52YWxpZGF0b3JMaXN0KHZhbGlkYXRvcklkKS52YWx1ZS5zdGF0ZS5udW1Qb29scyBhcyB1aW50NjQKCWludGMgOSAvLyAyNDIKCWludGMgMTAgLy8gMgoJYnl0ZWMgMCAvLyAgInYiCglmcmFtZV9kaWcgLTIgLy8gdmFsaWRhdG9ySWQ6IFZhbGlkYXRvcklkVHlwZQoJaXRvYgoJY29uY2F0Cgljb3ZlciAyCglib3hfZXh0cmFjdAoJYnRvaQoJZnJhbWVfYnVyeSAwIC8vIG51bVBvb2xzOiB1aW50NjQKCgkvLyAqaWY5X2NvbmRpdGlvbgoJLy8gY29udHJhY3RzL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6NDYyCgkvLyAobnVtUG9vbHMgYXMgdWludDY0KSA+PSBNQVhfUE9PTFMKCWZyYW1lX2RpZyAwIC8vIG51bVBvb2xzOiB1aW50NjQKCWludGMgMyAvLyAyNAoJPj0KCWJ6ICppZjlfZW5kCgoJLy8gKmlmOV9jb25zZXF1ZW50CgkvLyBhbHJlYWR5IGF0IG1heCBwb29sIHNpemUKCWVycgoKKmlmOV9lbmQ6CgkvLyBjb250cmFjdHMvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo0NjUKCS8vIG51bVBvb2xzICs9IDEKCWZyYW1lX2RpZyAwIC8vIG51bVBvb2xzOiB1aW50NjQKCWludGMgMSAvLyAxCgkrCglmcmFtZV9idXJ5IDAgLy8gbnVtUG9vbHM6IHVpbnQ2NAoKCS8vIGNvbnRyYWN0cy92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjQ2OAoJLy8gc2VuZEFwcENhbGwoewoJLy8gICAgICAgICAgICAgb25Db21wbGV0aW9uOiBPbkNvbXBsZXRpb24uTm9PcCwKCS8vICAgICAgICAgICAgIGFwcHJvdmFsUHJvZ3JhbTogWwoJLy8gICAgICAgICAgICAgICAgIHRoaXMuc3Rha2luZ1Bvb2xBcHByb3ZhbFByb2dyYW0uZXh0cmFjdCgwLCA0MDk2KSwKCS8vICAgICAgICAgICAgICAgICB0aGlzLnN0YWtpbmdQb29sQXBwcm92YWxQcm9ncmFtLmV4dHJhY3QoNDA5NiwgdGhpcy5zdGFraW5nUG9vbEFwcHJvdmFsUHJvZ3JhbS5zaXplIC0gNDA5NiksCgkvLyAgICAgICAgICAgICBdLAoJLy8gICAgICAgICAgICAgY2xlYXJTdGF0ZVByb2dyYW06IFN0YWtpbmdQb29sLmNsZWFyUHJvZ3JhbSgpLAoJLy8gICAgICAgICAgICAgZ2xvYmFsTnVtVWludDogU3Rha2luZ1Bvb2wuc2NoZW1hLmdsb2JhbC5udW1VaW50LAoJLy8gICAgICAgICAgICAgZ2xvYmFsTnVtQnl0ZVNsaWNlOiBTdGFraW5nUG9vbC5zY2hlbWEuZ2xvYmFsLm51bUJ5dGVTbGljZSwKCS8vICAgICAgICAgICAgIGV4dHJhUHJvZ3JhbVBhZ2VzOiAzLAoJLy8gICAgICAgICAgICAgYXBwbGljYXRpb25BcmdzOiBbCgkvLyAgICAgICAgICAgICAgICAgLy8gY3JlYXRpbmdDb250cmFjdElELCB2YWxpZGF0b3JJZCwgcG9vbElkLCBtaW5FbnRyeVN0YWtlCgkvLyAgICAgICAgICAgICAgICAgbWV0aG9kKCdjcmVhdGVBcHBsaWNhdGlvbih1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50NjQpdm9pZCcpLAoJLy8gICAgICAgICAgICAgICAgIGl0b2IodGhpcy5hcHAuaWQpLAoJLy8gICAgICAgICAgICAgICAgIGl0b2IodmFsaWRhdG9ySWQpLAoJLy8gICAgICAgICAgICAgICAgIGl0b2IobnVtUG9vbHMgYXMgdWludDY0KSwKCS8vICAgICAgICAgICAgICAgICBpdG9iKHRoaXMudmFsaWRhdG9yTGlzdCh2YWxpZGF0b3JJZCkudmFsdWUuY29uZmlnLm1pbkVudHJ5U3Rha2UpLAoJLy8gICAgICAgICAgICAgXSwKCS8vICAgICAgICAgfSkKCWl0eG5fYmVnaW4KCWludGMgNyAvLyAgYXBwbAoJaXR4bl9maWVsZCBUeXBlRW51bQoKCS8vIGNvbnRyYWN0cy92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjQ2OQoJLy8gb25Db21wbGV0aW9uOiBPbkNvbXBsZXRpb24uTm9PcAoJaW50YyAwIC8vICBOb09wCglpdHhuX2ZpZWxkIE9uQ29tcGxldGlvbgoKCS8vIGNvbnRyYWN0cy92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjQ3MAoJLy8gYXBwcm92YWxQcm9ncmFtOiBbCgkvLyAgICAgICAgICAgICAgICAgdGhpcy5zdGFraW5nUG9vbEFwcHJvdmFsUHJvZ3JhbS5leHRyYWN0KDAsIDQwOTYpLAoJLy8gICAgICAgICAgICAgICAgIHRoaXMuc3Rha2luZ1Bvb2xBcHByb3ZhbFByb2dyYW0uZXh0cmFjdCg0MDk2LCB0aGlzLnN0YWtpbmdQb29sQXBwcm92YWxQcm9ncmFtLnNpemUgLSA0MDk2KSwKCS8vICAgICAgICAgICAgIF0KCWJ5dGVjIDkgLy8gICJwb29sVGVtcGxhdGVBcHByb3ZhbEJ5dGVzIgoJaW50YyAwIC8vIDAKCWludGMgMjUgLy8gNDA5NgoJYm94X2V4dHJhY3QKCWl0eG5fZmllbGQgQXBwcm92YWxQcm9ncmFtUGFnZXMKCWJ5dGVjIDkgLy8gICJwb29sVGVtcGxhdGVBcHByb3ZhbEJ5dGVzIgoJaW50YyAyNSAvLyA0MDk2CglieXRlYyA5IC8vICAicG9vbFRlbXBsYXRlQXBwcm92YWxCeXRlcyIKCWJveF9sZW4KCgkvLyBib3ggdmFsdWUgZG9lcyBub3QgZXhpc3Q6IHRoaXMuc3Rha2luZ1Bvb2xBcHByb3ZhbFByb2dyYW0uc2l6ZQoJYXNzZXJ0CglpbnRjIDI1IC8vIDQwOTYKCS0KCWJveF9leHRyYWN0CglpdHhuX2ZpZWxkIEFwcHJvdmFsUHJvZ3JhbVBhZ2VzCgoJLy8gY29udHJhY3RzL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6NDc0CgkvLyBjbGVhclN0YXRlUHJvZ3JhbTogU3Rha2luZ1Bvb2wuY2xlYXJQcm9ncmFtKCkKCXB1c2hieXRlcyAweDBiCglpdHhuX2ZpZWxkIENsZWFyU3RhdGVQcm9ncmFtCgoJLy8gY29udHJhY3RzL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6NDc1CgkvLyBnbG9iYWxOdW1VaW50OiBTdGFraW5nUG9vbC5zY2hlbWEuZ2xvYmFsLm51bVVpbnQKCWludGMgMzUgLy8gMTEKCWl0eG5fZmllbGQgR2xvYmFsTnVtVWludAoKCS8vIGNvbnRyYWN0cy92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjQ3NgoJLy8gZ2xvYmFsTnVtQnl0ZVNsaWNlOiBTdGFraW5nUG9vbC5zY2hlbWEuZ2xvYmFsLm51bUJ5dGVTbGljZQoJaW50YyA4IC8vIDMKCWl0eG5fZmllbGQgR2xvYmFsTnVtQnl0ZVNsaWNlCgoJLy8gY29udHJhY3RzL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6NDc3CgkvLyBleHRyYVByb2dyYW1QYWdlczogMwoJaW50YyA4IC8vIDMKCWl0eG5fZmllbGQgRXh0cmFQcm9ncmFtUGFnZXMKCgkvLyBjb250cmFjdHMvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo0NzgKCS8vIGFwcGxpY2F0aW9uQXJnczogWwoJLy8gICAgICAgICAgICAgICAgIC8vIGNyZWF0aW5nQ29udHJhY3RJRCwgdmFsaWRhdG9ySWQsIHBvb2xJZCwgbWluRW50cnlTdGFrZQoJLy8gICAgICAgICAgICAgICAgIG1ldGhvZCgnY3JlYXRlQXBwbGljYXRpb24odWludDY0LHVpbnQ2NCx1aW50NjQsdWludDY0KXZvaWQnKSwKCS8vICAgICAgICAgICAgICAgICBpdG9iKHRoaXMuYXBwLmlkKSwKCS8vICAgICAgICAgICAgICAgICBpdG9iKHZhbGlkYXRvcklkKSwKCS8vICAgICAgICAgICAgICAgICBpdG9iKG51bVBvb2xzIGFzIHVpbnQ2NCksCgkvLyAgICAgICAgICAgICAgICAgaXRvYih0aGlzLnZhbGlkYXRvckxpc3QodmFsaWRhdG9ySWQpLnZhbHVlLmNvbmZpZy5taW5FbnRyeVN0YWtlKSwKCS8vICAgICAgICAgICAgIF0KCXB1c2hieXRlcyAweDU5ZTkwYWE2IC8vIG1ldGhvZCAiY3JlYXRlQXBwbGljYXRpb24odWludDY0LHVpbnQ2NCx1aW50NjQsdWludDY0KXZvaWQiCglpdHhuX2ZpZWxkIEFwcGxpY2F0aW9uQXJncwoJdHhuYSBBcHBsaWNhdGlvbnMgMAoJaXRvYgoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbkFyZ3MKCWZyYW1lX2RpZyAtMiAvLyB2YWxpZGF0b3JJZDogVmFsaWRhdG9ySWRUeXBlCglpdG9iCglpdHhuX2ZpZWxkIEFwcGxpY2F0aW9uQXJncwoJZnJhbWVfZGlnIDAgLy8gbnVtUG9vbHM6IHVpbnQ2NAoJaXRvYgoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbkFyZ3MKCWludGMgMzkgLy8gMjA5CglpbnRjIDIgLy8gOAoJYnl0ZWMgMCAvLyAgInYiCglmcmFtZV9kaWcgLTIgLy8gdmFsaWRhdG9ySWQ6IFZhbGlkYXRvcklkVHlwZQoJaXRvYgoJY29uY2F0Cgljb3ZlciAyCglib3hfZXh0cmFjdAoJYnRvaQoJaXRvYgoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbkFyZ3MKCgkvLyBGZWUgZmllbGQgbm90IHNldCwgZGVmYXVsdGluZyB0byAwCglpbnRjIDAgLy8gMAoJaXR4bl9maWVsZCBGZWUKCgkvLyBTdWJtaXQgaW5uZXIgdHJhbnNhY3Rpb24KCWl0eG5fc3VibWl0CgoJLy8gY29udHJhY3RzL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6NDg4CgkvLyB0aGlzLnZhbGlkYXRvckxpc3QodmFsaWRhdG9ySWQpLnZhbHVlLnN0YXRlLm51bVBvb2xzID0gbnVtUG9vbHMgYXMgdWludDE2CglpbnRjIDkgLy8gMjQyCglmcmFtZV9kaWcgMCAvLyBudW1Qb29sczogdWludDY0CglpdG9iCglleHRyYWN0IDYgMgoJYnl0ZWMgMCAvLyAgInYiCglmcmFtZV9kaWcgLTIgLy8gdmFsaWRhdG9ySWQ6IFZhbGlkYXRvcklkVHlwZQoJaXRvYgoJY29uY2F0Cgljb3ZlciAyCglib3hfcmVwbGFjZQoKCS8vIGNvbnRyYWN0cy92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjQ5MQoJLy8gcG9vbEFwcElkID0gdGhpcy5pdHhuLmNyZWF0ZWRBcHBsaWNhdGlvbklELmlkCglpdHhuIENyZWF0ZWRBcHBsaWNhdGlvbklECglmcmFtZV9idXJ5IDEgLy8gcG9vbEFwcElkOiB1aW50NjQKCgkvLyBjb250cmFjdHMvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo0OTIKCS8vIHRoaXMudmFsaWRhdG9yTGlzdCh2YWxpZGF0b3JJZCkudmFsdWUucG9vbHNbbnVtUG9vbHMgLSAxXS5wb29sQXBwSWQgPSBwb29sQXBwSWQKCWludGMgNSAvLyAgaGVhZE9mZnNldAoJZnJhbWVfZGlnIDAgLy8gbnVtUG9vbHM6IHVpbnQ2NAoJaW50YyAxIC8vIDEKCS0KCWludGMgNCAvLyAxOAoJKiAvLyBhY2MgKiB0eXBlTGVuZ3RoCgkrCglpbnRjIDAgLy8gMAoJKwoJZnJhbWVfZGlnIDEgLy8gcG9vbEFwcElkOiB1aW50NjQKCWl0b2IKCWJ5dGVjIDAgLy8gICJ2IgoJZnJhbWVfZGlnIC0yIC8vIHZhbGlkYXRvcklkOiBWYWxpZGF0b3JJZFR5cGUKCWl0b2IKCWNvbmNhdAoJY292ZXIgMgoJYm94X3JlcGxhY2UKCgkvLyBjb250cmFjdHMvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo0OTMKCS8vIHRoaXMuYWRkUG9vbFRvTm9kZSh2YWxpZGF0b3JJZCwgcG9vbEFwcElkLCBub2RlTnVtKQoJZnJhbWVfZGlnIC0zIC8vIG5vZGVOdW06IHVpbnQ2NAoJZnJhbWVfZGlnIDEgLy8gcG9vbEFwcElkOiB1aW50NjQKCWZyYW1lX2RpZyAtMiAvLyB2YWxpZGF0b3JJZDogVmFsaWRhdG9ySWRUeXBlCgljYWxsc3ViIGFkZFBvb2xUb05vZGUKCgkvLyBjb250cmFjdHMvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo0OTUKCS8vIHRoaXMucmV0aU9QX3ZhbGlkYXRvckFkZGVkUG9vbC5sb2coewoJLy8gICAgICAgICAgICAgaWQ6IHZhbGlkYXRvcklkLAoJLy8gICAgICAgICAgICAgbnVtOiBudW1Qb29scyBhcyB1aW50MTYsCgkvLyAgICAgICAgICAgICBwb29sQXBwSWQ6IEFwcElELmZyb21VaW50NjQocG9vbEFwcElkKSwKCS8vICAgICAgICAgfSkKCXB1c2hieXRlcyAweGZiY2MwZjZiIC8vIHJldGlPUF92YWxpZGF0b3JBZGRlZFBvb2wodWludDY0LHVpbnQxNix1aW50NjQpCglmcmFtZV9kaWcgLTIgLy8gdmFsaWRhdG9ySWQ6IFZhbGlkYXRvcklkVHlwZQoJaXRvYgoJZnJhbWVfZGlnIDAgLy8gbnVtUG9vbHM6IHVpbnQ2NAoJaXRvYgoJZHVwCgliaXRsZW4KCWludGMgMTggLy8gMTYKCTw9CgoJLy8gbnVtUG9vbHMgYXMgdWludDE2IG92ZXJmbG93ZWQgMTYgYml0cwoJYXNzZXJ0CglleHRyYWN0IDYgMgoJY29uY2F0CglmcmFtZV9kaWcgMSAvLyBwb29sQXBwSWQ6IHVpbnQ2NAoJaXRvYgoJY29uY2F0Cgljb25jYXQKCWxvZwoKCS8vIGNvbnRyYWN0cy92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjUwMQoJLy8gcmV0dXJuIHsgaWQ6IHZhbGlkYXRvcklkLCBwb29sSWQ6IG51bVBvb2xzIGFzIHVpbnQ2NCwgcG9vbEFwcElkOiB0aGlzLml0eG4hLmNyZWF0ZWRBcHBsaWNhdGlvbklELmlkIH0KCWZyYW1lX2RpZyAtMiAvLyB2YWxpZGF0b3JJZDogVmFsaWRhdG9ySWRUeXBlCglpdG9iCglmcmFtZV9kaWcgMCAvLyBudW1Qb29sczogdWludDY0CglpdG9iCgljb25jYXQKCWl0eG4gQ3JlYXRlZEFwcGxpY2F0aW9uSUQKCWl0b2IKCWNvbmNhdAoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoKCS8vIHBvcCBhbGwgbG9jYWwgdmFyaWFibGVzIGZyb20gdGhlIHN0YWNrCglwb3BuIDEKCXJldHN1YgoKLy8gYWRkU3Rha2UocGF5LHVpbnQ2NCx1aW50NjQpKHVpbnQ2NCx1aW50NjQsdWludDY0KQoqYWJpX3JvdXRlX2FkZFN0YWtlOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlYyAyIC8vIDB4MTUxZjdjNzUKCgkvLyB2YWx1ZVRvVmVyaWZ5OiB1aW50NjQKCXR4bmEgQXBwbGljYXRpb25BcmdzIDIKCWJ0b2kKCgkvLyB2YWxpZGF0b3JJZDogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglidG9pCgoJLy8gc3Rha2VkQW1vdW50UGF5bWVudDogcGF5Cgl0eG4gR3JvdXBJbmRleAoJaW50YyAxIC8vIDEKCS0KCWR1cAoJZ3R4bnMgVHlwZUVudW0KCWludGMgMSAvLyAgcGF5Cgk9PQoKCS8vIGFyZ3VtZW50IDIgKHN0YWtlZEFtb3VudFBheW1lbnQpIGZvciBhZGRTdGFrZSBtdXN0IGJlIGEgcGF5IHRyYW5zYWN0aW9uCglhc3NlcnQKCgkvLyBleGVjdXRlIGFkZFN0YWtlKHBheSx1aW50NjQsdWludDY0KSh1aW50NjQsdWludDY0LHVpbnQ2NCkKCWNhbGxzdWIgYWRkU3Rha2UKCWNvbmNhdAoJbG9nCglpbnRjIDEgLy8gMQoJcmV0dXJuCgovLyBhZGRTdGFrZShzdGFrZWRBbW91bnRQYXltZW50OiBQYXlUeG4sIHZhbGlkYXRvcklkOiBWYWxpZGF0b3JJZFR5cGUsIHZhbHVlVG9WZXJpZnk6IHVpbnQ2NCk6IFZhbGlkYXRvclBvb2xLZXkKLy8KLy8gQWRkcyBzdGFrZSB0byBhIHZhbGlkYXRvciBwb29sLgovLwovLyBAcGFyYW0ge1BheVR4bn0gc3Rha2VkQW1vdW50UGF5bWVudCAtIHBheW1lbnQgY29taW5nIGZyb20gc3Rha2VyIHRvIHBsYWNlIGludG8gYSBwb29sCi8vIEBwYXJhbSB7VmFsaWRhdG9ySWRUeXBlfSB2YWxpZGF0b3JJZCAtIFRoZSBpZCBvZiB0aGUgdmFsaWRhdG9yLgovLyBAcGFyYW0ge3VpbnQ2NH0gdmFsdWVUb1ZlcmlmeSAtIG9ubHkgaWYgdmFsaWRhdG9yIGhhcyBnYXRpbmcgdG8gZW50ZXIgLSB0aGlzIGlzIGFzc2V0IGlkIG9yIG5mZCBpZCB0aGF0IGNvcnJlc3BvbmRzIHRvIGdhdGluZy4KLy8gVHhuIHNlbmRlciBpcyBmYWN0b3JlZCBpbiBhcyB3ZWxsIGlmIHRoYXQgaXMgcGFydCBvZiBnYXRpbmcuCi8vICogQHJldHVybnMge1ZhbGlkYXRvclBvb2xLZXl9IC0gVGhlIGtleSBvZiB0aGUgdmFsaWRhdG9yIHBvb2wuCmFkZFN0YWtlOgoJcHJvdG8gMyAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGVjIDEgLy8gMHgKCWR1cG4gNQoKCS8vIGNvbnRyYWN0cy92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjUxNAoJLy8gYXNzZXJ0KHRoaXMudmFsaWRhdG9yTGlzdCh2YWxpZGF0b3JJZCkuZXhpc3RzLCAic3BlY2lmaWVkIHZhbGlkYXRvciBpZCBpc24ndCB2YWxpZCIpCglieXRlYyAwIC8vICAidiIKCWZyYW1lX2RpZyAtMiAvLyB2YWxpZGF0b3JJZDogVmFsaWRhdG9ySWRUeXBlCglpdG9iCgljb25jYXQKCWJveF9sZW4KCXN3YXAKCXBvcAoKCS8vIHNwZWNpZmllZCB2YWxpZGF0b3IgaWQgaXNuJ3QgdmFsaWQKCWFzc2VydAoKCS8vICppZjEwX2NvbmRpdGlvbgoJLy8gY29udHJhY3RzL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6NTE3CgkvLyB0aGlzLnZhbGlkYXRvckxpc3QodmFsaWRhdG9ySWQpLnZhbHVlLmNvbmZpZy5zdW5zZXR0aW5nT24gPiAwCglpbnRjIDI3IC8vIDIyNgoJaW50YyAyIC8vIDgKCWJ5dGVjIDAgLy8gICJ2IgoJZnJhbWVfZGlnIC0yIC8vIHZhbGlkYXRvcklkOiBWYWxpZGF0b3JJZFR5cGUKCWl0b2IKCWNvbmNhdAoJY292ZXIgMgoJYm94X2V4dHJhY3QKCWJ0b2kKCWludGMgMCAvLyAwCgk+CglieiAqaWYxMF9lbmQKCgkvLyAqaWYxMF9jb25zZXF1ZW50CgkvLyBjb250cmFjdHMvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo1MTkKCS8vIGFzc2VydCgKCS8vICAgICAgICAgICAgICAgICB0aGlzLnZhbGlkYXRvckxpc3QodmFsaWRhdG9ySWQpLnZhbHVlLmNvbmZpZy5zdW5zZXR0aW5nT24gPiBnbG9iYWxzLmxhdGVzdFRpbWVzdGFtcCwKCS8vICAgICAgICAgICAgICAgICAiY2FuJ3Qgc3Rha2Ugd2l0aCBhIHZhbGlkYXRvciB0aGF0IGlzIHBhc3QgaXRzIHN1bnNldHRpbmcgdGltZSIsCgkvLyAgICAgICAgICAgICApCglpbnRjIDI3IC8vIDIyNgoJaW50YyAyIC8vIDgKCWJ5dGVjIDAgLy8gICJ2IgoJZnJhbWVfZGlnIC0yIC8vIHZhbGlkYXRvcklkOiBWYWxpZGF0b3JJZFR5cGUKCWl0b2IKCWNvbmNhdAoJY292ZXIgMgoJYm94X2V4dHJhY3QKCWJ0b2kKCWdsb2JhbCBMYXRlc3RUaW1lc3RhbXAKCT4KCgkvLyBjYW4ndCBzdGFrZSB3aXRoIGEgdmFsaWRhdG9yIHRoYXQgaXMgcGFzdCBpdHMgc3Vuc2V0dGluZyB0aW1lCglhc3NlcnQKCippZjEwX2VuZDoKCS8vIGNvbnRyYWN0cy92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjUyNQoJLy8gc3Rha2VyID0gdGhpcy50eG4uc2VuZGVyCgl0eG4gU2VuZGVyCglmcmFtZV9idXJ5IDAgLy8gc3Rha2VyOiBhZGRyZXNzCgoJLy8gY29udHJhY3RzL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6NTI5CgkvLyB2ZXJpZnlQYXlUeG4oc3Rha2VkQW1vdW50UGF5bWVudCwgewoJLy8gICAgICAgICAgICAgc2VuZGVyOiBzdGFrZXIsCgkvLyAgICAgICAgICAgICByZWNlaXZlcjogdGhpcy5hcHAuYWRkcmVzcywKCS8vICAgICAgICAgfSkKCS8vIHZlcmlmeSBzZW5kZXIKCWZyYW1lX2RpZyAtMSAvLyBzdGFrZWRBbW91bnRQYXltZW50OiBQYXlUeG4KCWd0eG5zIFNlbmRlcgoJZnJhbWVfZGlnIDAgLy8gc3Rha2VyOiBhZGRyZXNzCgk9PQoKCS8vIHRyYW5zYWN0aW9uIHZlcmlmaWNhdGlvbiBmYWlsZWQ6IHsidHhuIjoic3Rha2VkQW1vdW50UGF5bWVudCIsImZpZWxkIjoic2VuZGVyIiwiZXhwZWN0ZWQiOiJzdGFrZXIifQoJYXNzZXJ0CgoJLy8gdmVyaWZ5IHJlY2VpdmVyCglmcmFtZV9kaWcgLTEgLy8gc3Rha2VkQW1vdW50UGF5bWVudDogUGF5VHhuCglndHhucyBSZWNlaXZlcgoJZ2xvYmFsIEN1cnJlbnRBcHBsaWNhdGlvbkFkZHJlc3MKCT09CgoJLy8gdHJhbnNhY3Rpb24gdmVyaWZpY2F0aW9uIGZhaWxlZDogeyJ0eG4iOiJzdGFrZWRBbW91bnRQYXltZW50IiwiZmllbGQiOiJyZWNlaXZlciIsImV4cGVjdGVkIjoidGhpcy5hcHAuYWRkcmVzcyJ9Cglhc3NlcnQKCgkvLyBjb250cmFjdHMvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo1MzcKCS8vIHRoaXMuZG9lc1N0YWtlck1lZXRHYXRpbmcodmFsaWRhdG9ySWQsIHZhbHVlVG9WZXJpZnkpCglmcmFtZV9kaWcgLTMgLy8gdmFsdWVUb1ZlcmlmeTogdWludDY0CglmcmFtZV9kaWcgLTIgLy8gdmFsaWRhdG9ySWQ6IFZhbGlkYXRvcklkVHlwZQoJY2FsbHN1YiBkb2VzU3Rha2VyTWVldEdhdGluZwoKCS8vIGNvbnRyYWN0cy92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjUzOQoJLy8gcmVhbEFtb3VudCA9IHN0YWtlZEFtb3VudFBheW1lbnQuYW1vdW50CglmcmFtZV9kaWcgLTEgLy8gc3Rha2VkQW1vdW50UGF5bWVudDogUGF5VHhuCglndHhucyBBbW91bnQKCWZyYW1lX2J1cnkgMSAvLyByZWFsQW1vdW50OiB1aW50NjQKCgkvLyBjb250cmFjdHMvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo1NDAKCS8vIG1ickFtdExlZnRCZWhpbmQ6IHVpbnQ2NCA9IDAKCWludGMgMCAvLyAwCglmcmFtZV9idXJ5IDIgLy8gbWJyQW10TGVmdEJlaGluZDogdWludDY0CgoJLy8gKmlmMTFfY29uZGl0aW9uCgkvLyBjb250cmFjdHMvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo1NDIKCS8vIHRoaXMuZG9lc1N0YWtlck5lZWRUb1BheU1CUihzdGFrZXIpCglmcmFtZV9kaWcgMCAvLyBzdGFrZXI6IGFkZHJlc3MKCWNhbGxzdWIgZG9lc1N0YWtlck5lZWRUb1BheU1CUgoJYnogKmlmMTFfZW5kCgoJLy8gKmlmMTFfY29uc2VxdWVudAoJLy8gY29udHJhY3RzL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6NTQ1CgkvLyBtYnJBbXRMZWZ0QmVoaW5kID0gdGhpcy5nZXRNYnJBbW91bnRzKCkuYWRkU3Rha2VyTWJyCgljYWxsc3ViIGdldE1ickFtb3VudHMKCWV4dHJhY3QgMjQgOAoJYnRvaQoJZnJhbWVfYnVyeSAyIC8vIG1ickFtdExlZnRCZWhpbmQ6IHVpbnQ2NAoKCS8vIGNvbnRyYWN0cy92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjU0NgoJLy8gcmVhbEFtb3VudCAtPSBtYnJBbXRMZWZ0QmVoaW5kCglmcmFtZV9kaWcgMSAvLyByZWFsQW1vdW50OiB1aW50NjQKCWZyYW1lX2RpZyAyIC8vIG1ickFtdExlZnRCZWhpbmQ6IHVpbnQ2NAoJLQoJZnJhbWVfYnVyeSAxIC8vIHJlYWxBbW91bnQ6IHVpbnQ2NAoKCS8vIGNvbnRyYWN0cy92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjU0NwoJLy8gdGhpcy5zdGFrZXJQb29sU2V0KHN0YWtlcikuY3JlYXRlKCkKCWJ5dGVjIDMgLy8gICJzcHMiCglmcmFtZV9kaWcgMCAvLyBzdGFrZXI6IGFkZHJlc3MKCWNvbmNhdAoJcHVzaGludCAxNDQKCWJveF9jcmVhdGUKCXBvcAoKKmlmMTFfZW5kOgoJLy8gY29udHJhY3RzL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6NTUxCgkvLyBhc3NlcnQoCgkvLyAgICAgICAgICAgICB0aGlzLnZhbGlkYXRvckxpc3QodmFsaWRhdG9ySWQpLnZhbHVlLnN0YXRlLnRvdGFsQWxnb1N0YWtlZCArIHJlYWxBbW91bnQgPCB0aGlzLm1heEFsbG93ZWRTdGFrZSgpLAoJLy8gICAgICAgICAgICAgJ3RvdGFsIHN0YWtlZCBmb3IgYWxsIG9mIGEgdmFsaWRhdG9ycyBwb29scyBtYXkgbm90IGV4Y2VlZCBoYXJkIGNhcCcsCgkvLyAgICAgICAgICkKCWludGMgMTIgLy8gMjUyCglpbnRjIDIgLy8gOAoJYnl0ZWMgMCAvLyAgInYiCglmcmFtZV9kaWcgLTIgLy8gdmFsaWRhdG9ySWQ6IFZhbGlkYXRvcklkVHlwZQoJaXRvYgoJY29uY2F0Cgljb3ZlciAyCglib3hfZXh0cmFjdAoJYnRvaQoJZnJhbWVfZGlnIDEgLy8gcmVhbEFtb3VudDogdWludDY0CgkrCgljYWxsc3ViIG1heEFsbG93ZWRTdGFrZQoJPAoKCS8vIHRvdGFsIHN0YWtlZCBmb3IgYWxsIG9mIGEgdmFsaWRhdG9ycyBwb29scyBtYXkgbm90IGV4Y2VlZCBoYXJkIGNhcAoJYXNzZXJ0CgoJLy8gY29udHJhY3RzL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6NTU4CgkvLyBmaW5kUmV0ID0gdGhpcy5maW5kUG9vbEZvclN0YWtlcih2YWxpZGF0b3JJZCwgc3Rha2VyLCByZWFsQW1vdW50KQoJZnJhbWVfZGlnIDEgLy8gcmVhbEFtb3VudDogdWludDY0CglmcmFtZV9kaWcgMCAvLyBzdGFrZXI6IGFkZHJlc3MKCWZyYW1lX2RpZyAtMiAvLyB2YWxpZGF0b3JJZDogVmFsaWRhdG9ySWRUeXBlCgljYWxsc3ViIGZpbmRQb29sRm9yU3Rha2VyCglmcmFtZV9idXJ5IDMgLy8gZmluZFJldDogKCh1aW50NjQsdWludDY0LHVpbnQ2NCksYm9vbCxib29sKQoKCS8vIGNvbnRyYWN0cy92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjU1OQoJLy8gcG9vbEtleSA9IGZpbmRSZXRbMF0KCS8vIGNvbnRyYWN0cy92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjU2MAoJLy8gaXNOZXdTdGFrZXJUb1ZhbGlkYXRvciA9IGZpbmRSZXRbMV0KCWZyYW1lX2RpZyAzIC8vIGZpbmRSZXQ6ICgodWludDY0LHVpbnQ2NCx1aW50NjQpLGJvb2wsYm9vbCkKCXN0b3JlIDI1NSAvLyBmdWxsIGFycmF5Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5CglpbnRjIDIyIC8vIDE5MgoJZ2V0Yml0CglmcmFtZV9idXJ5IDQgLy8gaXNOZXdTdGFrZXJUb1ZhbGlkYXRvcjogYm9vbAoKCS8vIGNvbnRyYWN0cy92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjU2MQoJLy8gaXNOZXdTdGFrZXJUb1Byb3RvY29sID0gZmluZFJldFsyXQoJZnJhbWVfZGlnIDMgLy8gZmluZFJldDogKCh1aW50NjQsdWludDY0LHVpbnQ2NCksYm9vbCxib29sKQoJc3RvcmUgMjU1IC8vIGZ1bGwgYXJyYXkKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCXB1c2hpbnQgMTkzCglnZXRiaXQKCWZyYW1lX2J1cnkgNSAvLyBpc05ld1N0YWtlclRvUHJvdG9jb2w6IGJvb2wKCgkvLyAqaWYxMl9jb25kaXRpb24KCS8vIGNvbnRyYWN0cy92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjU2MgoJLy8gcG9vbEtleS5wb29sSWQgPT09IDAKCWZyYW1lX2RpZyAzIC8vIGZpbmRSZXQ6ICgodWludDY0LHVpbnQ2NCx1aW50NjQpLGJvb2wsYm9vbCkKCXN0b3JlIDI1NSAvLyBmdWxsIGFycmF5Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5CglleHRyYWN0IDggOAoJYnRvaQoJaW50YyAwIC8vIDAKCT09CglieiAqaWYxMl9lbmQKCgkvLyAqaWYxMl9jb25zZXF1ZW50CgkvLyBObyBwb29sIGF2YWlsYWJsZSB3aXRoIGZyZWUgc3Rha2UuICBWYWxpZGF0b3IgbmVlZHMgdG8gYWRkIGFub3RoZXIgcG9vbAoJZXJyCgoqaWYxMl9lbmQ6CgkvLyBjb250cmFjdHMvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo1NjcKCS8vIHRoaXMudXBkYXRlU3Rha2VyUG9vbFNldChzdGFrZXIsIHBvb2xLZXkpCglmcmFtZV9kaWcgMyAvLyBmaW5kUmV0OiAoKHVpbnQ2NCx1aW50NjQsdWludDY0KSxib29sLGJvb2wpCglzdG9yZSAyNTUgLy8gZnVsbCBhcnJheQoJbG9hZCAyNTUgLy8gZnVsbCBhcnJheQoJZXh0cmFjdCAwIDI0CglmcmFtZV9kaWcgMCAvLyBzdGFrZXI6IGFkZHJlc3MKCWNhbGxzdWIgdXBkYXRlU3Rha2VyUG9vbFNldAoKCS8vIGNvbnRyYWN0cy92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjU3MAoJLy8gdGhpcy5jYWxsUG9vbEFkZFN0YWtlKAoJLy8gICAgICAgICAgICAgc3Rha2VkQW1vdW50UGF5bWVudCwKCS8vICAgICAgICAgICAgIHBvb2xLZXksCgkvLyAgICAgICAgICAgICBtYnJBbXRMZWZ0QmVoaW5kLAoJLy8gICAgICAgICAgICAgaXNOZXdTdGFrZXJUb1ZhbGlkYXRvciwKCS8vICAgICAgICAgICAgIGlzTmV3U3Rha2VyVG9Qcm90b2NvbCwKCS8vICAgICAgICAgKQoJZnJhbWVfZGlnIDUgLy8gaXNOZXdTdGFrZXJUb1Byb3RvY29sOiBib29sCglmcmFtZV9kaWcgNCAvLyBpc05ld1N0YWtlclRvVmFsaWRhdG9yOiBib29sCglmcmFtZV9kaWcgMiAvLyBtYnJBbXRMZWZ0QmVoaW5kOiB1aW50NjQKCWZyYW1lX2RpZyAzIC8vIGZpbmRSZXQ6ICgodWludDY0LHVpbnQ2NCx1aW50NjQpLGJvb2wsYm9vbCkKCXN0b3JlIDI1NSAvLyBmdWxsIGFycmF5Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5CglleHRyYWN0IDAgMjQKCWZyYW1lX2RpZyAtMSAvLyBzdGFrZWRBbW91bnRQYXltZW50OiBQYXlUeG4KCWNhbGxzdWIgY2FsbFBvb2xBZGRTdGFrZQoKCS8vIGNvbnRyYWN0cy92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjU3NwoJLy8gdGhpcy5yZXRpT1Bfc3Rha2VBZGRlZC5sb2coewoJLy8gICAgICAgICAgICAgaWQ6IHZhbGlkYXRvcklkLAoJLy8gICAgICAgICAgICAgcG9vbE51bTogcG9vbEtleS5wb29sSWQgYXMgdWludDE2LAoJLy8gICAgICAgICAgICAgcG9vbEFwcElkOiBBcHBJRC5mcm9tVWludDY0KHBvb2xLZXkucG9vbEFwcElkKSwKCS8vICAgICAgICAgICAgIGFtb3VudFN0YWtlZDogcmVhbEFtb3VudCwKCS8vICAgICAgICAgICAgIHN0YWtlcjogc3Rha2VyLAoJLy8gICAgICAgICB9KQoJcHVzaGJ5dGVzIDB4OTYyYjQxNDMgLy8gcmV0aU9QX3N0YWtlQWRkZWQodWludDY0LHVpbnQxNix1aW50NjQsYWRkcmVzcyx1aW50NjQpCglmcmFtZV9kaWcgLTIgLy8gdmFsaWRhdG9ySWQ6IFZhbGlkYXRvcklkVHlwZQoJaXRvYgoJZnJhbWVfZGlnIDMgLy8gZmluZFJldDogKCh1aW50NjQsdWludDY0LHVpbnQ2NCksYm9vbCxib29sKQoJc3RvcmUgMjU1IC8vIGZ1bGwgYXJyYXkKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWV4dHJhY3QgOCA4CglidG9pCglpdG9iCglkdXAKCWJpdGxlbgoJaW50YyAxOCAvLyAxNgoJPD0KCgkvLyBwb29sS2V5LnBvb2xJZCBhcyB1aW50MTYgb3ZlcmZsb3dlZCAxNiBiaXRzCglhc3NlcnQKCWV4dHJhY3QgNiAyCgljb25jYXQKCWZyYW1lX2RpZyAzIC8vIGZpbmRSZXQ6ICgodWludDY0LHVpbnQ2NCx1aW50NjQpLGJvb2wsYm9vbCkKCXN0b3JlIDI1NSAvLyBmdWxsIGFycmF5Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5CglleHRyYWN0IDE2IDgKCWJ0b2kKCWl0b2IKCWNvbmNhdAoJZnJhbWVfZGlnIDAgLy8gc3Rha2VyOiBhZGRyZXNzCgljb25jYXQKCWZyYW1lX2RpZyAxIC8vIHJlYWxBbW91bnQ6IHVpbnQ2NAoJaXRvYgoJY29uY2F0Cgljb25jYXQKCWxvZwoKCS8vIGNvbnRyYWN0cy92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjU4NQoJLy8gcmV0dXJuIHBvb2xLZXkKCWZyYW1lX2RpZyAzIC8vIGZpbmRSZXQ6ICgodWludDY0LHVpbnQ2NCx1aW50NjQpLGJvb2wsYm9vbCkKCXN0b3JlIDI1NSAvLyBmdWxsIGFycmF5Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5CglleHRyYWN0IDAgMjQKCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCgkvLyBwb3AgYWxsIGxvY2FsIHZhcmlhYmxlcyBmcm9tIHRoZSBzdGFjawoJcG9wbiA1CglyZXRzdWIKCi8vIHNldFRva2VuUGF5b3V0UmF0aW8odWludDY0KSh1aW50NjRbMjRdLHVpbnQ2NCkKKmFiaV9yb3V0ZV9zZXRUb2tlblBheW91dFJhdGlvOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlYyAyIC8vIDB4MTUxZjdjNzUKCgkvLyB2YWxpZGF0b3JJZDogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglidG9pCgoJLy8gZXhlY3V0ZSBzZXRUb2tlblBheW91dFJhdGlvKHVpbnQ2NCkodWludDY0WzI0XSx1aW50NjQpCgljYWxsc3ViIHNldFRva2VuUGF5b3V0UmF0aW8KCWNvbmNhdAoJbG9nCglpbnRjIDEgLy8gMQoJcmV0dXJuCgovLyBzZXRUb2tlblBheW91dFJhdGlvKHZhbGlkYXRvcklkOiBWYWxpZGF0b3JJZFR5cGUpOiBQb29sVG9rZW5QYXlvdXRSYXRpbwovLwovLyBzZXRUb2tlblBheW91dFJhdGlvIGlzIGNhbGxlZCBieSBTdGFraW5nIFBvb2wgIyAxIChPTkxZKSB0byBhc2sgdGhlIHZhbGlkYXRvciAodXMpIHRvIGNhbGN1bGF0ZSB0aGUgcmF0aW9zCi8vIG9mIHN0YWtlIGluIHRoZSBwb29scyBmb3Igc3Vic2VxdWVudCB0b2tlbiBwYXlvdXRzIChpZTogMiBwb29scywgJzEwMCcgYWxnbyB0b3RhbCBzdGFrZWQsIDYwIGluIHBvb2wgMSwgYW5kIDQwCi8vIGluIHBvb2wgMikgIFRoaXMgaXMgZG9uZSBzbyB3ZSBoYXZlIGEgc3RhYmxlIHNuYXBzaG90IG9mIHN0YWtlIC0gdGFrZW4gb25jZSBwZXIgZXBvY2ggLSBvbmx5IHRyaWdnZXJlZCBieQovLyBwb29sIDEgZG9pbmcgcGF5b3V0LiAgcG9vbHMgb3RoZXIgdGhhbiAxIGRvaW5nIHBheW91dCBjYWxsIHBvb2wgMSB0byBhc2sgaXQgZG8gaXQgZmlyc3QuCi8vIEl0IHdvdWxkIGJlIDYwLzQwJSBpbiB0aGUgcG9vbFBjdE9mV2hvbGUgdmFsdWVzLiAgVGhlIHRva2VuIHJld2FyZCBwYXlvdXRzIHRoZW4gdXNlIHRoZXNlIHZhbHVlcyBpbnN0ZWFkIG9mCi8vIHRoZWlyICdjdXJyZW50JyBzdGFrZSB3aGljaCBjaGFuZ2VzIGFzIHBhcnQgb2YgdGhlIHBheW91dHMgdGhlbXNlbHZlcyAoYW5kIHBlb3BsZSBjb3VsZCBiZSBjaGFuZ2luZyBzdGFrZQovLyBkdXJpbmcgdGhlIGVwb2NoIHVwZGF0ZXMgYWNyb3NzIHBvb2xzKQovLwovLyBNdWx0aXBsZSBwb29scyB3aWxsIGNhbGwgdXMgdmlhIHBvb2wgMSAocG9vbDItPnBvb2wxLT52YWxpZGF0b3IsIGV0Yy4pIHNvIGRvbid0IGFzc2VydCBvbiBwb29sMSBjYWxsaW5nIG11bHRpcGxlCi8vIHRpbWVzIGluIHNhbWUgZXBvY2guICBKdXN0IHJldHVybi4KLy8KLy8gQHBhcmFtIHZhbGlkYXRvcklkIC0gdmFsaWRhdG9yIGlkIChhbmQgdGh1cyBwb29sKSBjYWxsaW5nIHVzLiAgVmVyaWZpZWQgc28gdGhhdCBzZW5kZXIgTVVTVCBiZSBwb29sIDEgb2YgdGhpcyB2YWxpZGF0b3IuCi8vIEByZXR1cm5zIFBvb2xUb2tlblBheW91dFJhdGlvIC0gdGhlIGZpbmlzaGVkIHJhdGlvIGRhdGEKc2V0VG9rZW5QYXlvdXRSYXRpbzoKCXByb3RvIDEgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlYyAxIC8vIDB4CglkdXBuIDgKCgkvLyBjb250cmFjdHMvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo2MDUKCS8vIHBvb2wxQXBwSUQgPSB0aGlzLnZhbGlkYXRvckxpc3QodmFsaWRhdG9ySWQpLnZhbHVlLnBvb2xzWzBdLnBvb2xBcHBJZAoJaW50YyA1IC8vIDI2OAoJaW50YyAyIC8vIDgKCWJ5dGVjIDAgLy8gICJ2IgoJZnJhbWVfZGlnIC0xIC8vIHZhbGlkYXRvcklkOiBWYWxpZGF0b3JJZFR5cGUKCWl0b2IKCWNvbmNhdAoJY292ZXIgMgoJYm94X2V4dHJhY3QKCWJ0b2kKCWZyYW1lX2J1cnkgMCAvLyBwb29sMUFwcElEOiB1aW50NjQKCgkvLyBjb250cmFjdHMvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo2MDYKCS8vIGFzc2VydChwb29sMUFwcElEICE9PSAwKQoJZnJhbWVfZGlnIDAgLy8gcG9vbDFBcHBJRDogdWludDY0CglpbnRjIDAgLy8gMAoJIT0KCWFzc2VydAoKCS8vICppZjEzX2NvbmRpdGlvbgoJLy8gY29udHJhY3RzL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6NjA4CgkvLyB0aGlzLnR4bi5zZW5kZXIgIT09IEFwcElELmZyb21VaW50NjQocG9vbDFBcHBJRCkuYWRkcmVzcwoJdHhuIFNlbmRlcgoJZnJhbWVfZGlnIDAgLy8gcG9vbDFBcHBJRDogdWludDY0CglhcHBfcGFyYW1zX2dldCBBcHBBZGRyZXNzCglwb3AKCSE9CglieiAqaWYxM19lbmQKCgkvLyAqaWYxM19jb25zZXF1ZW50CgkvLyBjb250cmFjdHMvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo2MDkKCS8vIHJldHVybiB0aGlzLnZhbGlkYXRvckxpc3QodmFsaWRhdG9ySWQpLnZhbHVlLnRva2VuUGF5b3V0UmF0aW8KCWludGMgMTQgLy8gIGhlYWRPZmZzZXQKCWludGMgMTkgLy8gMjAwCglieXRlYyAwIC8vICAidiIKCWZyYW1lX2RpZyAtMSAvLyB2YWxpZGF0b3JJZDogVmFsaWRhdG9ySWRUeXBlCglpdG9iCgljb25jYXQKCWNvdmVyIDIKCWJveF9leHRyYWN0CgliICpzZXRUb2tlblBheW91dFJhdGlvKnJldHVybgoKKmlmMTNfZW5kOgoJLy8gY29udHJhY3RzL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6NjE1CgkvLyBjdXJSb3VuZCA9IGdsb2JhbHMucm91bmQKCWdsb2JhbCBSb3VuZAoJZnJhbWVfYnVyeSAxIC8vIGN1clJvdW5kOiB1aW50NjQKCgkvLyBjb250cmFjdHMvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo2MTYKCS8vIGxhc3RQYXlvdXRVcGRhdGUgPSB0aGlzLnZhbGlkYXRvckxpc3QodmFsaWRhdG9ySWQpLnZhbHVlLnRva2VuUGF5b3V0UmF0aW8udXBkYXRlZEZvclBheW91dAoJaW50YyAzMSAvLyA4OTIKCWludGMgMiAvLyA4CglieXRlYyAwIC8vICAidiIKCWZyYW1lX2RpZyAtMSAvLyB2YWxpZGF0b3JJZDogVmFsaWRhdG9ySWRUeXBlCglpdG9iCgljb25jYXQKCWNvdmVyIDIKCWJveF9leHRyYWN0CglidG9pCglmcmFtZV9idXJ5IDIgLy8gbGFzdFBheW91dFVwZGF0ZTogdWludDY0CgoJLy8gKmlmMTRfY29uZGl0aW9uCgkvLyBjb250cmFjdHMvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo2MTcKCS8vIGxhc3RQYXlvdXRVcGRhdGUgIT09IDAKCWZyYW1lX2RpZyAyIC8vIGxhc3RQYXlvdXRVcGRhdGU6IHVpbnQ2NAoJaW50YyAwIC8vIDAKCSE9CglieiAqaWYxNF9lbmQKCgkvLyAqaWYxNF9jb25zZXF1ZW50CgkvLyAqaWYxNV9jb25kaXRpb24KCS8vIGNvbnRyYWN0cy92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjYxOQoJLy8gKEFwcElELmZyb21VaW50NjQocG9vbDFBcHBJRCkuZ2xvYmFsU3RhdGUoJ2xhc3RQYXlvdXQnKSBhcyB1aW50NjQpID09PSBsYXN0UGF5b3V0VXBkYXRlCglmcmFtZV9kaWcgMCAvLyBwb29sMUFwcElEOiB1aW50NjQKCXB1c2hieXRlcyAweDZjNjE3Mzc0NTA2MTc5NmY3NTc0IC8vICJsYXN0UGF5b3V0IgoJYXBwX2dsb2JhbF9nZXRfZXgKCgkvLyBnbG9iYWwgc3RhdGUgdmFsdWUgZG9lcyBub3QgZXhpc3Q6IEFwcElELmZyb21VaW50NjQocG9vbDFBcHBJRCkuZ2xvYmFsU3RhdGUoJ2xhc3RQYXlvdXQnKQoJYXNzZXJ0CglmcmFtZV9kaWcgMiAvLyBsYXN0UGF5b3V0VXBkYXRlOiB1aW50NjQKCT09CglieiAqaWYxNV9lbmQKCgkvLyAqaWYxNV9jb25zZXF1ZW50CgkvLyBjb250cmFjdHMvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo2MjAKCS8vIHJldHVybiB0aGlzLnZhbGlkYXRvckxpc3QodmFsaWRhdG9ySWQpLnZhbHVlLnRva2VuUGF5b3V0UmF0aW8KCWludGMgMTQgLy8gIGhlYWRPZmZzZXQKCWludGMgMTkgLy8gMjAwCglieXRlYyAwIC8vICAidiIKCWZyYW1lX2RpZyAtMSAvLyB2YWxpZGF0b3JJZDogVmFsaWRhdG9ySWRUeXBlCglpdG9iCgljb25jYXQKCWNvdmVyIDIKCWJveF9leHRyYWN0CgliICpzZXRUb2tlblBheW91dFJhdGlvKnJldHVybgoKKmlmMTVfZW5kOgoJLy8gY29udHJhY3RzL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6NjIyCgkvLyBlcG9jaFJvdW5kTGVuZ3RoID0gdGhpcy52YWxpZGF0b3JMaXN0KHZhbGlkYXRvcklkKS52YWx1ZS5jb25maWcuZXBvY2hSb3VuZExlbmd0aCBhcyB1aW50NjQKCXB1c2hpbnQgMTY5CglpbnRjIDE1IC8vIDQKCWJ5dGVjIDAgLy8gICJ2IgoJZnJhbWVfZGlnIC0xIC8vIHZhbGlkYXRvcklkOiBWYWxpZGF0b3JJZFR5cGUKCWl0b2IKCWNvbmNhdAoJY292ZXIgMgoJYm94X2V4dHJhY3QKCWJ0b2kKCWZyYW1lX2J1cnkgMyAvLyBlcG9jaFJvdW5kTGVuZ3RoOiB1aW50NjQKCgkvLyBjb250cmFjdHMvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo2MjMKCS8vIHRoaXNFcG9jaEJlZ2luID0gY3VyUm91bmQgLSAoY3VyUm91bmQgJSBlcG9jaFJvdW5kTGVuZ3RoKQoJZnJhbWVfZGlnIDEgLy8gY3VyUm91bmQ6IHVpbnQ2NAoJZnJhbWVfZGlnIDEgLy8gY3VyUm91bmQ6IHVpbnQ2NAoJZnJhbWVfZGlnIDMgLy8gZXBvY2hSb3VuZExlbmd0aDogdWludDY0CgklCgktCglmcmFtZV9idXJ5IDQgLy8gdGhpc0Vwb2NoQmVnaW46IHVpbnQ2NAoKCS8vICppZjE2X2NvbmRpdGlvbgoJLy8gY29udHJhY3RzL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6NjI1CgkvLyBsYXN0UGF5b3V0VXBkYXRlIC0gKGxhc3RQYXlvdXRVcGRhdGUgJSBlcG9jaFJvdW5kTGVuZ3RoKSA9PT0gdGhpc0Vwb2NoQmVnaW4KCWZyYW1lX2RpZyAyIC8vIGxhc3RQYXlvdXRVcGRhdGU6IHVpbnQ2NAoJZnJhbWVfZGlnIDIgLy8gbGFzdFBheW91dFVwZGF0ZTogdWludDY0CglmcmFtZV9kaWcgMyAvLyBlcG9jaFJvdW5kTGVuZ3RoOiB1aW50NjQKCSUKCS0KCWZyYW1lX2RpZyA0IC8vIHRoaXNFcG9jaEJlZ2luOiB1aW50NjQKCT09CglieiAqaWYxNl9lbmQKCgkvLyAqaWYxNl9jb25zZXF1ZW50CgkvLyBjb250cmFjdHMvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo2MjYKCS8vIHJldHVybiB0aGlzLnZhbGlkYXRvckxpc3QodmFsaWRhdG9ySWQpLnZhbHVlLnRva2VuUGF5b3V0UmF0aW8KCWludGMgMTQgLy8gIGhlYWRPZmZzZXQKCWludGMgMTkgLy8gMjAwCglieXRlYyAwIC8vICAidiIKCWZyYW1lX2RpZyAtMSAvLyB2YWxpZGF0b3JJZDogVmFsaWRhdG9ySWRUeXBlCglpdG9iCgljb25jYXQKCWNvdmVyIDIKCWJveF9leHRyYWN0CgliICpzZXRUb2tlblBheW91dFJhdGlvKnJldHVybgoKKmlmMTZfZW5kOgoKKmlmMTRfZW5kOgoJLy8gY29udHJhY3RzL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6NjI5CgkvLyB0aGlzLnZhbGlkYXRvckxpc3QodmFsaWRhdG9ySWQpLnZhbHVlLnRva2VuUGF5b3V0UmF0aW8udXBkYXRlZEZvclBheW91dCA9IGN1clJvdW5kCglpbnRjIDMxIC8vIDg5MgoJZnJhbWVfZGlnIDEgLy8gY3VyUm91bmQ6IHVpbnQ2NAoJaXRvYgoJYnl0ZWMgMCAvLyAgInYiCglmcmFtZV9kaWcgLTEgLy8gdmFsaWRhdG9ySWQ6IFZhbGlkYXRvcklkVHlwZQoJaXRvYgoJY29uY2F0Cgljb3ZlciAyCglib3hfcmVwbGFjZQoKCS8vIGNvbnRyYWN0cy92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjYzMQoJLy8gY3VyTnVtUG9vbHMgPSB0aGlzLnZhbGlkYXRvckxpc3QodmFsaWRhdG9ySWQpLnZhbHVlLnN0YXRlLm51bVBvb2xzIGFzIHVpbnQ2NAoJaW50YyA5IC8vIDI0MgoJaW50YyAxMCAvLyAyCglieXRlYyAwIC8vICAidiIKCWZyYW1lX2RpZyAtMSAvLyB2YWxpZGF0b3JJZDogVmFsaWRhdG9ySWRUeXBlCglpdG9iCgljb25jYXQKCWNvdmVyIDIKCWJveF9leHRyYWN0CglidG9pCglmcmFtZV9idXJ5IDUgLy8gY3VyTnVtUG9vbHM6IHVpbnQ2NAoKCS8vIGNvbnRyYWN0cy92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjYzMgoJLy8gdG90YWxTdGFrZUZvclZhbGlkYXRvciA9IHRoaXMudmFsaWRhdG9yTGlzdCh2YWxpZGF0b3JJZCkudmFsdWUuc3RhdGUudG90YWxBbGdvU3Rha2VkCglpbnRjIDEyIC8vIDI1MgoJaW50YyAyIC8vIDgKCWJ5dGVjIDAgLy8gICJ2IgoJZnJhbWVfZGlnIC0xIC8vIHZhbGlkYXRvcklkOiBWYWxpZGF0b3JJZFR5cGUKCWl0b2IKCWNvbmNhdAoJY292ZXIgMgoJYm94X2V4dHJhY3QKCWJ0b2kKCWZyYW1lX2J1cnkgNiAvLyB0b3RhbFN0YWtlRm9yVmFsaWRhdG9yOiB1aW50NjQKCgkvLyBjb250cmFjdHMvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo2MzMKCS8vIGZvciAobGV0IGkgPSAwOyBpIDwgY3VyTnVtUG9vbHM7IGkgKz0gMSkKCWludGMgMCAvLyAwCglmcmFtZV9idXJ5IDcgLy8gaTogdWludDY0CgoqZm9yXzI6CgkvLyBjb250cmFjdHMvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo2MzMKCS8vIGkgPCBjdXJOdW1Qb29scwoJZnJhbWVfZGlnIDcgLy8gaTogdWludDY0CglmcmFtZV9kaWcgNSAvLyBjdXJOdW1Qb29sczogdWludDY0Cgk8CglieiAqZm9yXzJfZW5kCgoJLy8gY29udHJhY3RzL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6NjM4CgkvLyBvdXJQb29sUGN0T2ZXaG9sZSA9IHdpZGVSYXRpbygKCS8vICAgICAgICAgICAgICAgICBbdGhpcy52YWxpZGF0b3JMaXN0KHZhbGlkYXRvcklkKS52YWx1ZS5wb29sc1tpXS50b3RhbEFsZ29TdGFrZWQsIDFfMDAwXzAwMF0sCgkvLyAgICAgICAgICAgICAgICAgW3RvdGFsU3Rha2VGb3JWYWxpZGF0b3JdLAoJLy8gICAgICAgICAgICAgKQoJaW50YyA1IC8vICBoZWFkT2Zmc2V0CglmcmFtZV9kaWcgNyAvLyBpOiB1aW50NjQKCWludGMgNCAvLyAxOAoJKiAvLyBhY2MgKiB0eXBlTGVuZ3RoCgkrCglpbnRjIDExIC8vICBoZWFkT2Zmc2V0CgkrCglpbnRjIDIgLy8gOAoJYnl0ZWMgMCAvLyAgInYiCglmcmFtZV9kaWcgLTEgLy8gdmFsaWRhdG9ySWQ6IFZhbGlkYXRvcklkVHlwZQoJaXRvYgoJY29uY2F0Cgljb3ZlciAyCglib3hfZXh0cmFjdAoJYnRvaQoJcHVzaGludCAxXzAwMF8wMDAKCW11bHcKCWludGMgMCAvLyAwCglmcmFtZV9kaWcgNiAvLyB0b3RhbFN0YWtlRm9yVmFsaWRhdG9yOiB1aW50NjQKCWRpdm1vZHcKCXBvcAoJcG9wCglzd2FwCgkhCgoJLy8gd2lkZVJhdGlvIGZhaWxlZAoJYXNzZXJ0CglmcmFtZV9idXJ5IDggLy8gb3VyUG9vbFBjdE9mV2hvbGU6IHVpbnQ2NAoKCS8vIGNvbnRyYWN0cy92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjY0MgoJLy8gdGhpcy52YWxpZGF0b3JMaXN0KHZhbGlkYXRvcklkKS52YWx1ZS50b2tlblBheW91dFJhdGlvLnBvb2xQY3RPZldob2xlW2ldID0gb3VyUG9vbFBjdE9mV2hvbGUKCWludGMgMTQgLy8gNzAwCglmcmFtZV9kaWcgNyAvLyBpOiB1aW50NjQKCWludGMgMiAvLyA4CgkqIC8vIGFjYyAqIHR5cGVMZW5ndGgKCSsKCWZyYW1lX2RpZyA4IC8vIG91clBvb2xQY3RPZldob2xlOiB1aW50NjQKCWl0b2IKCWJ5dGVjIDAgLy8gICJ2IgoJZnJhbWVfZGlnIC0xIC8vIHZhbGlkYXRvcklkOiBWYWxpZGF0b3JJZFR5cGUKCWl0b2IKCWNvbmNhdAoJY292ZXIgMgoJYm94X3JlcGxhY2UKCipmb3JfMl9jb250aW51ZToKCS8vIGNvbnRyYWN0cy92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjYzMwoJLy8gaSArPSAxCglmcmFtZV9kaWcgNyAvLyBpOiB1aW50NjQKCWludGMgMSAvLyAxCgkrCglmcmFtZV9idXJ5IDcgLy8gaTogdWludDY0CgliICpmb3JfMgoKKmZvcl8yX2VuZDoKCS8vIGNvbnRyYWN0cy92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjY0NAoJLy8gcmV0dXJuIHRoaXMudmFsaWRhdG9yTGlzdCh2YWxpZGF0b3JJZCkudmFsdWUudG9rZW5QYXlvdXRSYXRpbwoJaW50YyAxNCAvLyAgaGVhZE9mZnNldAoJaW50YyAxOSAvLyAyMDAKCWJ5dGVjIDAgLy8gICJ2IgoJZnJhbWVfZGlnIC0xIC8vIHZhbGlkYXRvcklkOiBWYWxpZGF0b3JJZFR5cGUKCWl0b2IKCWNvbmNhdAoJY292ZXIgMgoJYm94X2V4dHJhY3QKCipzZXRUb2tlblBheW91dFJhdGlvKnJldHVybjoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoKCS8vIHBvcCBhbGwgbG9jYWwgdmFyaWFibGVzIGZyb20gdGhlIHN0YWNrCglwb3BuIDgKCXJldHN1YgoKLy8gc3Rha2VVcGRhdGVkVmlhUmV3YXJkcygodWludDY0LHVpbnQ2NCx1aW50NjQpLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCl2b2lkCiphYmlfcm91dGVfc3Rha2VVcGRhdGVkVmlhUmV3YXJkczoKCS8vIHNhdHVyYXRlZEJ1cm5Ub0ZlZVNpbms6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgNQoJYnRvaQoKCS8vIHZhbGlkYXRvckNvbW1pc3Npb246IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgNAoJYnRvaQoKCS8vIHJld2FyZFRva2VuQW1vdW50UmVzZXJ2ZWQ6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMwoJYnRvaQoKCS8vIGFsZ29Ub0FkZDogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAyCglidG9pCgoJLy8gcG9vbEtleTogKHVpbnQ2NCx1aW50NjQsdWludDY0KQoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJZHVwCglsZW4KCWludGMgMyAvLyAyNAoJPT0KCgkvLyBhcmd1bWVudCA0IChwb29sS2V5KSBmb3Igc3Rha2VVcGRhdGVkVmlhUmV3YXJkcyBtdXN0IGJlIGEgKHVpbnQ2NCx1aW50NjQsdWludDY0KQoJYXNzZXJ0CgoJLy8gZXhlY3V0ZSBzdGFrZVVwZGF0ZWRWaWFSZXdhcmRzKCh1aW50NjQsdWludDY0LHVpbnQ2NCksdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDY0KXZvaWQKCWNhbGxzdWIgc3Rha2VVcGRhdGVkVmlhUmV3YXJkcwoJaW50YyAxIC8vIDEKCXJldHVybgoKLy8gc3Rha2VVcGRhdGVkVmlhUmV3YXJkcyhwb29sS2V5OiBWYWxpZGF0b3JQb29sS2V5LCBhbGdvVG9BZGQ6IHVpbnQ2NCwgcmV3YXJkVG9rZW5BbW91bnRSZXNlcnZlZDogdWludDY0LCB2YWxpZGF0b3JDb21taXNzaW9uOiB1aW50NjQsIHNhdHVyYXRlZEJ1cm5Ub0ZlZVNpbms6IHVpbnQ2NCk6IHZvaWQKLy8KLy8gc3Rha2VVcGRhdGVkVmlhUmV3YXJkcyBpcyBjYWxsZWQgYnkgU3Rha2luZyBwb29scyB0byBpbmZvcm0gdGhlIHZhbGlkYXRvciAodXMpIHRoYXQgYSBwYXJ0aWN1bGFyIGFtb3VudCBvZiB0b3RhbAovLyBzdGFrZSBoYXMgYmVlbiBhZGRlZCB0byB0aGUgc3BlY2lmaWVkIHBvb2wuICBUaGlzIGlzIHVzZWQgdG8gdXBkYXRlIHRoZSBzdGF0cyB3ZSBoYXZlIGluIG91ciBQb29sSW5mbyBzdG9yYWdlLgovLyBUaGUgY2FsbGluZyBBcHAgaWQgaXMgdmFsaWRhdGVkIGFnYWluc3Qgb3VyIHBvb2wgbGlzdCBhcyB3ZWxsLgovLyBAcGFyYW0ge1ZhbGlkYXRvclBvb2xLZXl9IHBvb2xLZXkgLSBWYWxpZGF0b3JQb29sS2V5IHR5cGUKLy8gQHBhcmFtIHt1aW50NjR9IGFsZ29Ub0FkZCAtIGFtb3VudCB0aGlzIHZhbGlkYXRvcidzIHRvdGFsIHN0YWtlIGluY3JlYXNlZCB2aWEgcmV3YXJkcwovLyBAcGFyYW0ge3VpbnQ2NH0gcmV3YXJkVG9rZW5BbW91bnRSZXNlcnZlZCAtIGFtb3VudCB0aGlzIHZhbGlkYXRvcidzIHRvdGFsIHN0YWtlIGluY3JlYXNlZCB2aWEgcmV3YXJkcyAodGhhdCBzaG91bGQgYmUKLy8gQHBhcmFtIHt1aW50NjR9IHZhbGlkYXRvckNvbW1pc3Npb24gLSB0aGUgY29tbWlzc2lvbiBhbW91bnQgdGhlIHZhbGlkYXRvciB3YXMgcGFpZCwgaWYgYW55Ci8vIEBwYXJhbSB7dWludDY0fSBzYXR1cmF0ZWRCdXJuVG9GZWVTaW5rIC0gaWYgdGhlIHBvb2wgd2FzIGluIHNhdHVyYXRlZCBzdGF0ZSwgdGhlIGFtb3VudCBzZW50IGJhY2sgdG8gdGhlIGZlZSBzaW5rLgovLyBzZWVuIGFzICdhY2NvdW50ZWQgZm9yL3BlbmRpbmcgc3BlbnQnKQpzdGFrZVVwZGF0ZWRWaWFSZXdhcmRzOgoJcHJvdG8gNSAwCgoJLy8gY29udHJhY3RzL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6NjY1CgkvLyB0aGlzLnZlcmlmeVBvb2xLZXlDYWxsZXIocG9vbEtleSkKCWZyYW1lX2RpZyAtMSAvLyBwb29sS2V5OiBWYWxpZGF0b3JQb29sS2V5CgljYWxsc3ViIHZlcmlmeVBvb2xLZXlDYWxsZXIKCgkvLyBjb250cmFjdHMvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo2NjgKCS8vIHRoaXMudmFsaWRhdG9yTGlzdChwb29sS2V5LmlkKS52YWx1ZS5wb29sc1twb29sS2V5LnBvb2xJZCAtIDFdLnRvdGFsQWxnb1N0YWtlZCArPSBhbGdvVG9BZGQKCWludGMgNSAvLyAgaGVhZE9mZnNldAoJZnJhbWVfZGlnIC0xIC8vIHBvb2xLZXk6IFZhbGlkYXRvclBvb2xLZXkKCWV4dHJhY3QgOCA4CglidG9pCglpbnRjIDEgLy8gMQoJLQoJaW50YyA0IC8vIDE4CgkqIC8vIGFjYyAqIHR5cGVMZW5ndGgKCSsKCWludGMgMTEgLy8gIGhlYWRPZmZzZXQKCSsKCWludGMgNSAvLyAgaGVhZE9mZnNldAoJZnJhbWVfZGlnIC0xIC8vIHBvb2xLZXk6IFZhbGlkYXRvclBvb2xLZXkKCWV4dHJhY3QgOCA4CglidG9pCglpbnRjIDEgLy8gMQoJLQoJaW50YyA0IC8vIDE4CgkqIC8vIGFjYyAqIHR5cGVMZW5ndGgKCSsKCWludGMgMTEgLy8gIGhlYWRPZmZzZXQKCSsKCWludGMgMiAvLyA4CglieXRlYyAwIC8vICAidiIKCWZyYW1lX2RpZyAtMSAvLyBwb29sS2V5OiBWYWxpZGF0b3JQb29sS2V5CglleHRyYWN0IDAgOAoJYnRvaQoJaXRvYgoJY29uY2F0Cgljb3ZlciAyCglib3hfZXh0cmFjdAoJYnRvaQoJZnJhbWVfZGlnIC0yIC8vIGFsZ29Ub0FkZDogdWludDY0CgkrCglpdG9iCglieXRlYyAwIC8vICAidiIKCWZyYW1lX2RpZyAtMSAvLyBwb29sS2V5OiBWYWxpZGF0b3JQb29sS2V5CglleHRyYWN0IDAgOAoJYnRvaQoJaXRvYgoJY29uY2F0Cgljb3ZlciAyCglib3hfcmVwbGFjZQoKCS8vIGNvbnRyYWN0cy92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjY2OQoJLy8gdGhpcy52YWxpZGF0b3JMaXN0KHBvb2xLZXkuaWQpLnZhbHVlLnN0YXRlLnRvdGFsQWxnb1N0YWtlZCArPSBhbGdvVG9BZGQKCWludGMgMTIgLy8gMjUyCglkdXAKCWludGMgMiAvLyA4CglieXRlYyAwIC8vICAidiIKCWZyYW1lX2RpZyAtMSAvLyBwb29sS2V5OiBWYWxpZGF0b3JQb29sS2V5CglleHRyYWN0IDAgOAoJYnRvaQoJaXRvYgoJY29uY2F0Cgljb3ZlciAyCglib3hfZXh0cmFjdAoJYnRvaQoJZnJhbWVfZGlnIC0yIC8vIGFsZ29Ub0FkZDogdWludDY0CgkrCglpdG9iCglieXRlYyAwIC8vICAidiIKCWZyYW1lX2RpZyAtMSAvLyBwb29sS2V5OiBWYWxpZGF0b3JQb29sS2V5CglleHRyYWN0IDAgOAoJYnRvaQoJaXRvYgoJY29uY2F0Cgljb3ZlciAyCglib3hfcmVwbGFjZQoKCS8vIGNvbnRyYWN0cy92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjY3MAoJLy8gdGhpcy52YWxpZGF0b3JMaXN0KHBvb2xLZXkuaWQpLnZhbHVlLnN0YXRlLnJld2FyZFRva2VuSGVsZEJhY2sgKz0gcmV3YXJkVG9rZW5BbW91bnRSZXNlcnZlZAoJaW50YyAxMyAvLyAyNjAKCWR1cAoJaW50YyAyIC8vIDgKCWJ5dGVjIDAgLy8gICJ2IgoJZnJhbWVfZGlnIC0xIC8vIHBvb2xLZXk6IFZhbGlkYXRvclBvb2xLZXkKCWV4dHJhY3QgMCA4CglidG9pCglpdG9iCgljb25jYXQKCWNvdmVyIDIKCWJveF9leHRyYWN0CglidG9pCglmcmFtZV9kaWcgLTMgLy8gcmV3YXJkVG9rZW5BbW91bnRSZXNlcnZlZDogdWludDY0CgkrCglpdG9iCglieXRlYyAwIC8vICAidiIKCWZyYW1lX2RpZyAtMSAvLyBwb29sS2V5OiBWYWxpZGF0b3JQb29sS2V5CglleHRyYWN0IDAgOAoJYnRvaQoJaXRvYgoJY29uY2F0Cgljb3ZlciAyCglib3hfcmVwbGFjZQoKCS8vIGNvbnRyYWN0cy92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjY3MgoJLy8gdGhpcy50b3RhbEFsZ29TdGFrZWQudmFsdWUgKz0gYWxnb1RvQWRkCglieXRlYyA0IC8vICAic3Rha2VkIgoJYXBwX2dsb2JhbF9nZXQKCWZyYW1lX2RpZyAtMiAvLyBhbGdvVG9BZGQ6IHVpbnQ2NAoJKwoJYnl0ZWMgNCAvLyAgInN0YWtlZCIKCXN3YXAKCWFwcF9nbG9iYWxfcHV0CgoJLy8gY29udHJhY3RzL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6Njc1CgkvLyB0aGlzLnJldmVyaWZ5TkZET3duZXJzaGlwKHBvb2xLZXkuaWQpCglmcmFtZV9kaWcgLTEgLy8gcG9vbEtleTogVmFsaWRhdG9yUG9vbEtleQoJZXh0cmFjdCAwIDgKCWJ0b2kKCWNhbGxzdWIgcmV2ZXJpZnlORkRPd25lcnNoaXAKCgkvLyBjb250cmFjdHMvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo2NzcKCS8vIHRoaXMucmV0aU9QX2Vwb2NoUmV3YXJkVXBkYXRlLmxvZyh7CgkvLyAgICAgICAgICAgICBpZDogcG9vbEtleS5pZCwKCS8vICAgICAgICAgICAgIHBvb2xOdW06IHBvb2xLZXkucG9vbElkIGFzIHVpbnQxNiwKCS8vICAgICAgICAgICAgIHBvb2xBcHBJZDogQXBwSUQuZnJvbVVpbnQ2NChwb29sS2V5LnBvb2xBcHBJZCksCgkvLyAgICAgICAgICAgICBhbGdvQWRkZWQ6IGFsZ29Ub0FkZCwKCS8vICAgICAgICAgICAgIHJld2FyZFRva2VuSGVsZEJhY2s6IHJld2FyZFRva2VuQW1vdW50UmVzZXJ2ZWQsCgkvLyAgICAgICAgICAgICBzYXR1cmF0ZWRCdXJuVG9GZWVTaW5rOiBzYXR1cmF0ZWRCdXJuVG9GZWVTaW5rLAoJLy8gICAgICAgICAgICAgdmFsaWRhdG9yQ29tbWlzc2lvbjogdmFsaWRhdG9yQ29tbWlzc2lvbiwKCS8vICAgICAgICAgfSkKCXB1c2hieXRlcyAweGIzZTQ3YzNkIC8vIHJldGlPUF9lcG9jaFJld2FyZFVwZGF0ZSh1aW50NjQsdWludDE2LHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50NjQpCglmcmFtZV9kaWcgLTEgLy8gcG9vbEtleTogVmFsaWRhdG9yUG9vbEtleQoJZXh0cmFjdCAwIDgKCWJ0b2kKCWl0b2IKCWZyYW1lX2RpZyAtMSAvLyBwb29sS2V5OiBWYWxpZGF0b3JQb29sS2V5CglleHRyYWN0IDggOAoJYnRvaQoJaXRvYgoJZHVwCgliaXRsZW4KCWludGMgMTggLy8gMTYKCTw9CgoJLy8gcG9vbEtleS5wb29sSWQgYXMgdWludDE2IG92ZXJmbG93ZWQgMTYgYml0cwoJYXNzZXJ0CglleHRyYWN0IDYgMgoJY29uY2F0CglmcmFtZV9kaWcgLTEgLy8gcG9vbEtleTogVmFsaWRhdG9yUG9vbEtleQoJZXh0cmFjdCAxNiA4CglidG9pCglpdG9iCgljb25jYXQKCWZyYW1lX2RpZyAtNCAvLyB2YWxpZGF0b3JDb21taXNzaW9uOiB1aW50NjQKCWl0b2IKCWNvbmNhdAoJZnJhbWVfZGlnIC01IC8vIHNhdHVyYXRlZEJ1cm5Ub0ZlZVNpbms6IHVpbnQ2NAoJaXRvYgoJY29uY2F0CglmcmFtZV9kaWcgLTIgLy8gYWxnb1RvQWRkOiB1aW50NjQKCWl0b2IKCWNvbmNhdAoJZnJhbWVfZGlnIC0zIC8vIHJld2FyZFRva2VuQW1vdW50UmVzZXJ2ZWQ6IHVpbnQ2NAoJaXRvYgoJY29uY2F0Cgljb25jYXQKCWxvZwoJcmV0c3ViCgovLyBzdGFrZVJlbW92ZWQoKHVpbnQ2NCx1aW50NjQsdWludDY0KSxhZGRyZXNzLHVpbnQ2NCx1aW50NjQsYm9vbCl2b2lkCiphYmlfcm91dGVfc3Rha2VSZW1vdmVkOgoJLy8gc3Rha2VyUmVtb3ZlZDogYm9vbAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgNQoJZHVwCglsZW4KCWludGMgMSAvLyAxCgk9PQoKCS8vIGFyZ3VtZW50IDAgKHN0YWtlclJlbW92ZWQpIGZvciBzdGFrZVJlbW92ZWQgbXVzdCBiZSBhIGJvb2wKCWFzc2VydAoJaW50YyAwIC8vIDAKCWdldGJpdAoKCS8vIHJld2FyZFJlbW92ZWQ6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgNAoJYnRvaQoKCS8vIGFtb3VudFJlbW92ZWQ6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMwoJYnRvaQoKCS8vIHN0YWtlcjogYWRkcmVzcwoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMgoJZHVwCglsZW4KCWludGMgNiAvLyAzMgoJPT0KCgkvLyBhcmd1bWVudCAzIChzdGFrZXIpIGZvciBzdGFrZVJlbW92ZWQgbXVzdCBiZSBhIGFkZHJlc3MKCWFzc2VydAoKCS8vIHBvb2xLZXk6ICh1aW50NjQsdWludDY0LHVpbnQ2NCkKCXR4bmEgQXBwbGljYXRpb25BcmdzIDEKCWR1cAoJbGVuCglpbnRjIDMgLy8gMjQKCT09CgoJLy8gYXJndW1lbnQgNCAocG9vbEtleSkgZm9yIHN0YWtlUmVtb3ZlZCBtdXN0IGJlIGEgKHVpbnQ2NCx1aW50NjQsdWludDY0KQoJYXNzZXJ0CgoJLy8gZXhlY3V0ZSBzdGFrZVJlbW92ZWQoKHVpbnQ2NCx1aW50NjQsdWludDY0KSxhZGRyZXNzLHVpbnQ2NCx1aW50NjQsYm9vbCl2b2lkCgljYWxsc3ViIHN0YWtlUmVtb3ZlZAoJaW50YyAxIC8vIDEKCXJldHVybgoKLy8gc3Rha2VSZW1vdmVkKHBvb2xLZXk6IFZhbGlkYXRvclBvb2xLZXksIHN0YWtlcjogQWRkcmVzcywgYW1vdW50UmVtb3ZlZDogdWludDY0LCByZXdhcmRSZW1vdmVkOiB1aW50NjQsIHN0YWtlclJlbW92ZWQ6IGJvb2xlYW4pOiB2b2lkCi8vCi8vIHN0YWtlUmVtb3ZlZCBpcyBjYWxsZWQgYnkgU3Rha2luZyBwb29scyB0byBpbmZvcm0gdGhlIHZhbGlkYXRvciAodXMpIHRoYXQgYSBwYXJ0aWN1bGFyIGFtb3VudCBvZiB0b3RhbCBzdGFrZSBoYXMgYmVlbiByZW1vdmVkCi8vIGZyb20gdGhlIHNwZWNpZmllZCBwb29sLiAgVGhpcyBpcyB1c2VkIHRvIHVwZGF0ZSB0aGUgc3RhdHMgd2UgaGF2ZSBpbiBvdXIgUG9vbEluZm8gc3RvcmFnZS4KLy8gSWYgYW55IGFtb3VudCBvZiByZXdhcmRSZW1vdmVkIGlzIHNwZWNpZmllZCwgdGhlbiB0aGF0IGFtb3VudCBvZiByZXdhcmQgaXMgc2VudCB0byB0aGUgdXNlCi8vIFRoZSBjYWxsaW5nIEFwcCBpZCBpcyB2YWxpZGF0ZWQgYWdhaW5zdCBvdXIgcG9vbCBsaXN0IGFzIHdlbGwuCi8vCi8vIEBwYXJhbSB7VmFsaWRhdG9yUG9vbEtleX0gcG9vbEtleSBjYWxsaW5nIHVzIGZyb20gd2hpY2ggc3Rha2Ugd2FzIHJlbW92ZWQKLy8gQHBhcmFtIHtBZGRyZXNzfSBzdGFrZXIKLy8gQHBhcmFtIHt1aW50NjR9IGFtb3VudFJlbW92ZWQgLSBhbGdvIGFtb3VudCByZW1vdmVkCi8vIEBwYXJhbSB7dWludDY0fSByZXdhcmRSZW1vdmVkIC0gaWYgYXBwbGljYWJsZSwgYW1vdW50IG9mIHRva2VuIHJld2FyZCByZW1vdmVkIChieSBwb29sIDEgY2FsbGVyKSBvciBUTyByZW1vdmUgYW5kIHBheSBvdXQgKHZpYSBwb29sIDEgZnJvbSBkaWZmZXJlbnQgcG9vbCBjYWxsZXIpCi8vIEBwYXJhbSB7Ym9vbGVhbn0gc3Rha2VyUmVtb3ZlZApzdGFrZVJlbW92ZWQ6Cglwcm90byA1IDAKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZWMgMSAvLyAweAoJZHVwbiAzCgoJLy8gKmlmMTdfY29uZGl0aW9uCgkvLyBjb250cmFjdHMvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo3MDcKCS8vIGdsb2JhbHMub3Bjb2RlQnVkZ2V0IDwgMzAwCglnbG9iYWwgT3Bjb2RlQnVkZ2V0CglpbnRjIDI5IC8vIDMwMAoJPAoJYnogKmlmMTdfZW5kCgoJLy8gKmlmMTdfY29uc2VxdWVudAoJLy8gY29udHJhY3RzL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6NzA4CgkvLyBpbmNyZWFzZU9wY29kZUJ1ZGdldCgpCglpdHhuX2JlZ2luCglpbnRjIDcgLy8gIGFwcGwKCWl0eG5fZmllbGQgVHlwZUVudW0KCWludGMgMCAvLyAwCglpdHhuX2ZpZWxkIEZlZQoJYnl0ZWMgOCAvLyAgI3ByYWdtYSB2ZXJzaW9uIDEwOyBpbnQgMQoJZHVwCglpdHhuX2ZpZWxkIEFwcHJvdmFsUHJvZ3JhbQoJaXR4bl9maWVsZCBDbGVhclN0YXRlUHJvZ3JhbQoJaW50YyAyNiAvLyAgRGVsZXRlQXBwbGljYXRpb24KCWl0eG5fZmllbGQgT25Db21wbGV0aW9uCglpdHhuX3N1Ym1pdAoKKmlmMTdfZW5kOgoJLy8gY29udHJhY3RzL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6NzEwCgkvLyB0aGlzLnZlcmlmeVBvb2xLZXlDYWxsZXIocG9vbEtleSkKCWZyYW1lX2RpZyAtMSAvLyBwb29sS2V5OiBWYWxpZGF0b3JQb29sS2V5CgljYWxsc3ViIHZlcmlmeVBvb2xLZXlDYWxsZXIKCgkvLyBjb250cmFjdHMvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo3MTQKCS8vIGFzc2VydChhbW91bnRSZW1vdmVkID4gMCB8fCByZXdhcmRSZW1vdmVkID4gMCwgJ3Nob3VsZCBvbmx5IGJlIGNhbGxlZCBpZiBhbGdvIG9yIHJld2FyZCB3YXMgcmVtb3ZlZCcpCglmcmFtZV9kaWcgLTMgLy8gYW1vdW50UmVtb3ZlZDogdWludDY0CglpbnRjIDAgLy8gMAoJPgoJZHVwCglibnogKnNraXBfb3IyCglmcmFtZV9kaWcgLTQgLy8gcmV3YXJkUmVtb3ZlZDogdWludDY0CglpbnRjIDAgLy8gMAoJPgoJfHwKCipza2lwX29yMjoKCS8vIHNob3VsZCBvbmx5IGJlIGNhbGxlZCBpZiBhbGdvIG9yIHJld2FyZCB3YXMgcmVtb3ZlZAoJYXNzZXJ0CgoJLy8gY29udHJhY3RzL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6NzE3CgkvLyB0aGlzLnZhbGlkYXRvckxpc3QocG9vbEtleS5pZCkudmFsdWUucG9vbHNbcG9vbEtleS5wb29sSWQgLSAxXS50b3RhbEFsZ29TdGFrZWQgLT0gYW1vdW50UmVtb3ZlZAoJaW50YyA1IC8vICBoZWFkT2Zmc2V0CglmcmFtZV9kaWcgLTEgLy8gcG9vbEtleTogVmFsaWRhdG9yUG9vbEtleQoJZXh0cmFjdCA4IDgKCWJ0b2kKCWludGMgMSAvLyAxCgktCglpbnRjIDQgLy8gMTgKCSogLy8gYWNjICogdHlwZUxlbmd0aAoJKwoJaW50YyAxMSAvLyAgaGVhZE9mZnNldAoJKwoJaW50YyA1IC8vICBoZWFkT2Zmc2V0CglmcmFtZV9kaWcgLTEgLy8gcG9vbEtleTogVmFsaWRhdG9yUG9vbEtleQoJZXh0cmFjdCA4IDgKCWJ0b2kKCWludGMgMSAvLyAxCgktCglpbnRjIDQgLy8gMTgKCSogLy8gYWNjICogdHlwZUxlbmd0aAoJKwoJaW50YyAxMSAvLyAgaGVhZE9mZnNldAoJKwoJaW50YyAyIC8vIDgKCWJ5dGVjIDAgLy8gICJ2IgoJZnJhbWVfZGlnIC0xIC8vIHBvb2xLZXk6IFZhbGlkYXRvclBvb2xLZXkKCWV4dHJhY3QgMCA4CglidG9pCglpdG9iCgljb25jYXQKCWNvdmVyIDIKCWJveF9leHRyYWN0CglidG9pCglmcmFtZV9kaWcgLTMgLy8gYW1vdW50UmVtb3ZlZDogdWludDY0CgktCglpdG9iCglieXRlYyAwIC8vICAidiIKCWZyYW1lX2RpZyAtMSAvLyBwb29sS2V5OiBWYWxpZGF0b3JQb29sS2V5CglleHRyYWN0IDAgOAoJYnRvaQoJaXRvYgoJY29uY2F0Cgljb3ZlciAyCglib3hfcmVwbGFjZQoKCS8vIGNvbnRyYWN0cy92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjcxOAoJLy8gdGhpcy52YWxpZGF0b3JMaXN0KHBvb2xLZXkuaWQpLnZhbHVlLnN0YXRlLnRvdGFsQWxnb1N0YWtlZCAtPSBhbW91bnRSZW1vdmVkCglpbnRjIDEyIC8vIDI1MgoJZHVwCglpbnRjIDIgLy8gOAoJYnl0ZWMgMCAvLyAgInYiCglmcmFtZV9kaWcgLTEgLy8gcG9vbEtleTogVmFsaWRhdG9yUG9vbEtleQoJZXh0cmFjdCAwIDgKCWJ0b2kKCWl0b2IKCWNvbmNhdAoJY292ZXIgMgoJYm94X2V4dHJhY3QKCWJ0b2kKCWZyYW1lX2RpZyAtMyAvLyBhbW91bnRSZW1vdmVkOiB1aW50NjQKCS0KCWl0b2IKCWJ5dGVjIDAgLy8gICJ2IgoJZnJhbWVfZGlnIC0xIC8vIHBvb2xLZXk6IFZhbGlkYXRvclBvb2xLZXkKCWV4dHJhY3QgMCA4CglidG9pCglpdG9iCgljb25jYXQKCWNvdmVyIDIKCWJveF9yZXBsYWNlCgoJLy8gY29udHJhY3RzL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6NzE5CgkvLyB0aGlzLnRvdGFsQWxnb1N0YWtlZC52YWx1ZSAtPSBhbW91bnRSZW1vdmVkCglieXRlYyA0IC8vICAic3Rha2VkIgoJYXBwX2dsb2JhbF9nZXQKCWZyYW1lX2RpZyAtMyAvLyBhbW91bnRSZW1vdmVkOiB1aW50NjQKCS0KCWJ5dGVjIDQgLy8gICJzdGFrZWQiCglzd2FwCglhcHBfZ2xvYmFsX3B1dAoKCS8vICppZjE4X2NvbmRpdGlvbgoJLy8gY29udHJhY3RzL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6NzIxCgkvLyByZXdhcmRSZW1vdmVkID4gMAoJZnJhbWVfZGlnIC00IC8vIHJld2FyZFJlbW92ZWQ6IHVpbnQ2NAoJaW50YyAwIC8vIDAKCT4KCWJ6ICppZjE4X2Vsc2UKCgkvLyAqaWYxOF9jb25zZXF1ZW50CgkvLyBjb250cmFjdHMvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo3MjIKCS8vIHJld2FyZFRva2VuSUQgPSB0aGlzLnZhbGlkYXRvckxpc3QocG9vbEtleS5pZCkudmFsdWUuY29uZmlnLnJld2FyZFRva2VuSWQKCWludGMgMzggLy8gMTUzCglpbnRjIDIgLy8gOAoJYnl0ZWMgMCAvLyAgInYiCglmcmFtZV9kaWcgLTEgLy8gcG9vbEtleTogVmFsaWRhdG9yUG9vbEtleQoJZXh0cmFjdCAwIDgKCWJ0b2kKCWl0b2IKCWNvbmNhdAoJY292ZXIgMgoJYm94X2V4dHJhY3QKCWJ0b2kKCWZyYW1lX2J1cnkgMCAvLyByZXdhcmRUb2tlbklEOiB1aW50NjQKCgkvLyBjb250cmFjdHMvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo3MjMKCS8vIGFzc2VydChyZXdhcmRUb2tlbklEICE9PSAwLCAicmV3YXJkUmVtb3ZlZCBjYW4ndCBiZSBzZXQgaWYgdmFsaWRhdG9yIGRvZXNuJ3QgaGF2ZSByZXdhcmQgdG9rZW4hIikKCWZyYW1lX2RpZyAwIC8vIHJld2FyZFRva2VuSUQ6IHVpbnQ2NAoJaW50YyAwIC8vIDAKCSE9CgoJLy8gcmV3YXJkUmVtb3ZlZCBjYW4ndCBiZSBzZXQgaWYgdmFsaWRhdG9yIGRvZXNuJ3QgaGF2ZSByZXdhcmQgdG9rZW4hCglhc3NlcnQKCgkvLyBjb250cmFjdHMvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo3MjQKCS8vIGFzc2VydCgKCS8vICAgICAgICAgICAgICAgICB0aGlzLnZhbGlkYXRvckxpc3QocG9vbEtleS5pZCkudmFsdWUuc3RhdGUucmV3YXJkVG9rZW5IZWxkQmFjayA+PSByZXdhcmRSZW1vdmVkLAoJLy8gICAgICAgICAgICAgICAgICdyZXdhcmQgYmVpbmcgcmVtb3ZlZCBtdXN0IGJlIGNvdmVyZWQgYnkgaG9sZCBiYWNrIGFtb3VudCcsCgkvLyAgICAgICAgICAgICApCglpbnRjIDEzIC8vIDI2MAoJaW50YyAyIC8vIDgKCWJ5dGVjIDAgLy8gICJ2IgoJZnJhbWVfZGlnIC0xIC8vIHBvb2xLZXk6IFZhbGlkYXRvclBvb2xLZXkKCWV4dHJhY3QgMCA4CglidG9pCglpdG9iCgljb25jYXQKCWNvdmVyIDIKCWJveF9leHRyYWN0CglidG9pCglmcmFtZV9kaWcgLTQgLy8gcmV3YXJkUmVtb3ZlZDogdWludDY0Cgk+PQoKCS8vIHJld2FyZCBiZWluZyByZW1vdmVkIG11c3QgYmUgY292ZXJlZCBieSBob2xkIGJhY2sgYW1vdW50Cglhc3NlcnQKCgkvLyBjb250cmFjdHMvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo3MzAKCS8vIHRoaXMudmFsaWRhdG9yTGlzdChwb29sS2V5LmlkKS52YWx1ZS5zdGF0ZS5yZXdhcmRUb2tlbkhlbGRCYWNrIC09IHJld2FyZFJlbW92ZWQKCWludGMgMTMgLy8gMjYwCglkdXAKCWludGMgMiAvLyA4CglieXRlYyAwIC8vICAidiIKCWZyYW1lX2RpZyAtMSAvLyBwb29sS2V5OiBWYWxpZGF0b3JQb29sS2V5CglleHRyYWN0IDAgOAoJYnRvaQoJaXRvYgoJY29uY2F0Cgljb3ZlciAyCglib3hfZXh0cmFjdAoJYnRvaQoJZnJhbWVfZGlnIC00IC8vIHJld2FyZFJlbW92ZWQ6IHVpbnQ2NAoJLQoJaXRvYgoJYnl0ZWMgMCAvLyAgInYiCglmcmFtZV9kaWcgLTEgLy8gcG9vbEtleTogVmFsaWRhdG9yUG9vbEtleQoJZXh0cmFjdCAwIDgKCWJ0b2kKCWl0b2IKCWNvbmNhdAoJY292ZXIgMgoJYm94X3JlcGxhY2UKCgkvLyAqaWYxOV9jb25kaXRpb24KCS8vIGNvbnRyYWN0cy92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjczNQoJLy8gcG9vbEtleS5wb29sSWQgIT09IDEKCWZyYW1lX2RpZyAtMSAvLyBwb29sS2V5OiBWYWxpZGF0b3JQb29sS2V5CglleHRyYWN0IDggOAoJYnRvaQoJaW50YyAxIC8vIDEKCSE9CglieiAqaWYxOV9lbmQKCgkvLyAqaWYxOV9jb25zZXF1ZW50CgkvLyBjb250cmFjdHMvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo3MzYKCS8vIHNlbmRNZXRob2RDYWxsPHR5cGVvZiBTdGFraW5nUG9vbC5wcm90b3R5cGUucGF5VG9rZW5SZXdhcmQ+KHsKCS8vICAgICAgICAgICAgICAgICAgICAgYXBwbGljYXRpb25JRDogQXBwSUQuZnJvbVVpbnQ2NCh0aGlzLnZhbGlkYXRvckxpc3QocG9vbEtleS5pZCkudmFsdWUucG9vbHNbMF0ucG9vbEFwcElkKSwKCS8vICAgICAgICAgICAgICAgICAgICAgbWV0aG9kQXJnczogW3N0YWtlciwgcmV3YXJkVG9rZW5JRCwgcmV3YXJkUmVtb3ZlZF0sCgkvLyAgICAgICAgICAgICAgICAgfSkKCWl0eG5fYmVnaW4KCWludGMgNyAvLyAgYXBwbAoJaXR4bl9maWVsZCBUeXBlRW51bQoJYnl0ZWMgMTMgLy8gIG1ldGhvZCAicGF5VG9rZW5SZXdhcmQoYWRkcmVzcyx1aW50NjQsdWludDY0KXZvaWQiCglpdHhuX2ZpZWxkIEFwcGxpY2F0aW9uQXJncwoKCS8vIGNvbnRyYWN0cy92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjczNwoJLy8gYXBwbGljYXRpb25JRDogQXBwSUQuZnJvbVVpbnQ2NCh0aGlzLnZhbGlkYXRvckxpc3QocG9vbEtleS5pZCkudmFsdWUucG9vbHNbMF0ucG9vbEFwcElkKQoJaW50YyA1IC8vIDI2OAoJaW50YyAyIC8vIDgKCWJ5dGVjIDAgLy8gICJ2IgoJZnJhbWVfZGlnIC0xIC8vIHBvb2xLZXk6IFZhbGlkYXRvclBvb2xLZXkKCWV4dHJhY3QgMCA4CglidG9pCglpdG9iCgljb25jYXQKCWNvdmVyIDIKCWJveF9leHRyYWN0CglidG9pCglpdHhuX2ZpZWxkIEFwcGxpY2F0aW9uSUQKCgkvLyBjb250cmFjdHMvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo3MzgKCS8vIG1ldGhvZEFyZ3M6IFtzdGFrZXIsIHJld2FyZFRva2VuSUQsIHJld2FyZFJlbW92ZWRdCglmcmFtZV9kaWcgLTIgLy8gc3Rha2VyOiBBZGRyZXNzCglpdHhuX2ZpZWxkIEFwcGxpY2F0aW9uQXJncwoJZnJhbWVfZGlnIDAgLy8gcmV3YXJkVG9rZW5JRDogdWludDY0CglpdG9iCglpdHhuX2ZpZWxkIEFwcGxpY2F0aW9uQXJncwoJZnJhbWVfZGlnIC00IC8vIHJld2FyZFJlbW92ZWQ6IHVpbnQ2NAoJaXRvYgoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbkFyZ3MKCgkvLyBGZWUgZmllbGQgbm90IHNldCwgZGVmYXVsdGluZyB0byAwCglpbnRjIDAgLy8gMAoJaXR4bl9maWVsZCBGZWUKCgkvLyBTdWJtaXQgaW5uZXIgdHJhbnNhY3Rpb24KCWl0eG5fc3VibWl0CgoqaWYxOV9lbmQ6CgkvLyBjb250cmFjdHMvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo3NDEKCS8vIHRoaXMucmV0aU9QX3N0YWtlUmVtb3ZlZC5sb2coewoJLy8gICAgICAgICAgICAgICAgIGlkOiBwb29sS2V5LmlkLAoJLy8gICAgICAgICAgICAgICAgIHBvb2xOdW06IHBvb2xLZXkucG9vbElkIGFzIHVpbnQxNiwKCS8vICAgICAgICAgICAgICAgICBwb29sQXBwSWQ6IEFwcElELmZyb21VaW50NjQocG9vbEtleS5wb29sQXBwSWQpLAoJLy8gICAgICAgICAgICAgICAgIHN0YWtlcjogc3Rha2VyLAoJLy8gICAgICAgICAgICAgICAgIGFtb3VudFVuc3Rha2VkOiBhbW91bnRSZW1vdmVkLAoJLy8gICAgICAgICAgICAgICAgIHJld2FyZFRva2VuQXNzZXRJZDogQXNzZXRJRC5mcm9tVWludDY0KHJld2FyZFRva2VuSUQpLAoJLy8gICAgICAgICAgICAgICAgIHJld2FyZFRva2Vuc1JlY2VpdmVkOiByZXdhcmRSZW1vdmVkLAoJLy8gICAgICAgICAgICAgfSkKCWJ5dGVjIDE0IC8vICByZXRpT1Bfc3Rha2VSZW1vdmVkKHVpbnQ2NCx1aW50MTYsdWludDY0LGFkZHJlc3MsdWludDY0LHVpbnQ2NCx1aW50NjQpCglmcmFtZV9kaWcgLTEgLy8gcG9vbEtleTogVmFsaWRhdG9yUG9vbEtleQoJZXh0cmFjdCAwIDgKCWJ0b2kKCWl0b2IKCWZyYW1lX2RpZyAtMSAvLyBwb29sS2V5OiBWYWxpZGF0b3JQb29sS2V5CglleHRyYWN0IDggOAoJYnRvaQoJaXRvYgoJZHVwCgliaXRsZW4KCWludGMgMTggLy8gMTYKCTw9CgoJLy8gcG9vbEtleS5wb29sSWQgYXMgdWludDE2IG92ZXJmbG93ZWQgMTYgYml0cwoJYXNzZXJ0CglleHRyYWN0IDYgMgoJY29uY2F0CglmcmFtZV9kaWcgLTEgLy8gcG9vbEtleTogVmFsaWRhdG9yUG9vbEtleQoJZXh0cmFjdCAxNiA4CglidG9pCglpdG9iCgljb25jYXQKCWZyYW1lX2RpZyAtMiAvLyBzdGFrZXI6IEFkZHJlc3MKCWNvbmNhdAoJZnJhbWVfZGlnIC0zIC8vIGFtb3VudFJlbW92ZWQ6IHVpbnQ2NAoJaXRvYgoJY29uY2F0CglmcmFtZV9kaWcgLTQgLy8gcmV3YXJkUmVtb3ZlZDogdWludDY0CglpdG9iCgljb25jYXQKCWZyYW1lX2RpZyAwIC8vIHJld2FyZFRva2VuSUQ6IHVpbnQ2NAoJaXRvYgoJY29uY2F0Cgljb25jYXQKCWxvZwoJYiAqaWYxOF9lbmQKCippZjE4X2Vsc2U6CgkvLyBjb250cmFjdHMvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo3NTEKCS8vIHRoaXMucmV0aU9QX3N0YWtlUmVtb3ZlZC5sb2coewoJLy8gICAgICAgICAgICAgICAgIGlkOiBwb29sS2V5LmlkLAoJLy8gICAgICAgICAgICAgICAgIHBvb2xOdW06IHBvb2xLZXkucG9vbElkIGFzIHVpbnQxNiwKCS8vICAgICAgICAgICAgICAgICBwb29sQXBwSWQ6IEFwcElELmZyb21VaW50NjQocG9vbEtleS5wb29sQXBwSWQpLAoJLy8gICAgICAgICAgICAgICAgIHN0YWtlcjogc3Rha2VyLAoJLy8gICAgICAgICAgICAgICAgIGFtb3VudFVuc3Rha2VkOiBhbW91bnRSZW1vdmVkLAoJLy8gICAgICAgICAgICAgICAgIC8vIG5vIHRva2VucyByZXdhcmRlZC4uCgkvLyAgICAgICAgICAgICAgICAgcmV3YXJkVG9rZW5Bc3NldElkOiBBc3NldElELnplcm9JbmRleCwKCS8vICAgICAgICAgICAgICAgICByZXdhcmRUb2tlbnNSZWNlaXZlZDogMCwKCS8vICAgICAgICAgICAgIH0pCglieXRlYyAxNCAvLyAgcmV0aU9QX3N0YWtlUmVtb3ZlZCh1aW50NjQsdWludDE2LHVpbnQ2NCxhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDY0KQoJZnJhbWVfZGlnIC0xIC8vIHBvb2xLZXk6IFZhbGlkYXRvclBvb2xLZXkKCWV4dHJhY3QgMCA4CglidG9pCglpdG9iCglmcmFtZV9kaWcgLTEgLy8gcG9vbEtleTogVmFsaWRhdG9yUG9vbEtleQoJZXh0cmFjdCA4IDgKCWJ0b2kKCWl0b2IKCWR1cAoJYml0bGVuCglpbnRjIDE4IC8vIDE2Cgk8PQoKCS8vIHBvb2xLZXkucG9vbElkIGFzIHVpbnQxNiBvdmVyZmxvd2VkIDE2IGJpdHMKCWFzc2VydAoJZXh0cmFjdCA2IDIKCWNvbmNhdAoJZnJhbWVfZGlnIC0xIC8vIHBvb2xLZXk6IFZhbGlkYXRvclBvb2xLZXkKCWV4dHJhY3QgMTYgOAoJYnRvaQoJaXRvYgoJY29uY2F0CglmcmFtZV9kaWcgLTIgLy8gc3Rha2VyOiBBZGRyZXNzCgljb25jYXQKCWZyYW1lX2RpZyAtMyAvLyBhbW91bnRSZW1vdmVkOiB1aW50NjQKCWl0b2IKCWNvbmNhdAoJYnl0ZWMgNyAvLyAweDAwMDAwMDAwMDAwMDAwMDAKCWNvbmNhdAoJYnl0ZWMgNyAvLyAweDAwMDAwMDAwMDAwMDAwMDAKCWNvbmNhdAoJY29uY2F0Cglsb2cKCippZjE4X2VuZDoKCS8vICppZjIwX2NvbmRpdGlvbgoJLy8gY29udHJhY3RzL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6NzYzCgkvLyBzdGFrZXJSZW1vdmVkCglmcmFtZV9kaWcgLTUgLy8gc3Rha2VyUmVtb3ZlZDogYm9vbGVhbgoJYnogKmlmMjBfZW5kCgoJLy8gKmlmMjBfY29uc2VxdWVudAoJLy8gY29udHJhY3RzL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6NzY1CgkvLyB0aGlzLnZhbGlkYXRvckxpc3QocG9vbEtleS5pZCkudmFsdWUucG9vbHNbcG9vbEtleS5wb29sSWQgLSAxXS50b3RhbFN0YWtlcnMgLT0gMQoJaW50YyA1IC8vICBoZWFkT2Zmc2V0CglmcmFtZV9kaWcgLTEgLy8gcG9vbEtleTogVmFsaWRhdG9yUG9vbEtleQoJZXh0cmFjdCA4IDgKCWJ0b2kKCWludGMgMSAvLyAxCgktCglpbnRjIDQgLy8gMTgKCSogLy8gYWNjICogdHlwZUxlbmd0aAoJKwoJaW50YyAyIC8vICBoZWFkT2Zmc2V0CgkrCglpbnRjIDUgLy8gIGhlYWRPZmZzZXQKCWZyYW1lX2RpZyAtMSAvLyBwb29sS2V5OiBWYWxpZGF0b3JQb29sS2V5CglleHRyYWN0IDggOAoJYnRvaQoJaW50YyAxIC8vIDEKCS0KCWludGMgNCAvLyAxOAoJKiAvLyBhY2MgKiB0eXBlTGVuZ3RoCgkrCglpbnRjIDIgLy8gIGhlYWRPZmZzZXQKCSsKCWludGMgMTAgLy8gMgoJYnl0ZWMgMCAvLyAgInYiCglmcmFtZV9kaWcgLTEgLy8gcG9vbEtleTogVmFsaWRhdG9yUG9vbEtleQoJZXh0cmFjdCAwIDgKCWJ0b2kKCWl0b2IKCWNvbmNhdAoJY292ZXIgMgoJYm94X2V4dHJhY3QKCWJ0b2kKCWludGMgMSAvLyAxCgktCglpdG9iCglleHRyYWN0IDYgMgoJYnl0ZWMgMCAvLyAgInYiCglmcmFtZV9kaWcgLTEgLy8gcG9vbEtleTogVmFsaWRhdG9yUG9vbEtleQoJZXh0cmFjdCAwIDgKCWJ0b2kKCWl0b2IKCWNvbmNhdAoJY292ZXIgMgoJYm94X3JlcGxhY2UKCgkvLyBjb250cmFjdHMvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo3NjcKCS8vIHJlbW92ZVJldCA9IHRoaXMucmVtb3ZlRnJvbVN0YWtlclBvb2xTZXQoc3Rha2VyLCA8VmFsaWRhdG9yUG9vbEtleT57CgkvLyAgICAgICAgICAgICAgICAgaWQ6IHBvb2xLZXkuaWQsCgkvLyAgICAgICAgICAgICAgICAgcG9vbElkOiBwb29sS2V5LnBvb2xJZCwKCS8vICAgICAgICAgICAgICAgICBwb29sQXBwSWQ6IHBvb2xLZXkucG9vbEFwcElkLAoJLy8gICAgICAgICAgICAgfSkKCWZyYW1lX2RpZyAtMSAvLyBwb29sS2V5OiBWYWxpZGF0b3JQb29sS2V5CglleHRyYWN0IDAgOAoJYnRvaQoJaXRvYgoJZnJhbWVfZGlnIC0xIC8vIHBvb2xLZXk6IFZhbGlkYXRvclBvb2xLZXkKCWV4dHJhY3QgOCA4CglidG9pCglpdG9iCgljb25jYXQKCWZyYW1lX2RpZyAtMSAvLyBwb29sS2V5OiBWYWxpZGF0b3JQb29sS2V5CglleHRyYWN0IDE2IDgKCWJ0b2kKCWl0b2IKCWNvbmNhdAoJZnJhbWVfZGlnIC0yIC8vIHN0YWtlcjogQWRkcmVzcwoJY2FsbHN1YiByZW1vdmVGcm9tU3Rha2VyUG9vbFNldAoJZnJhbWVfYnVyeSAxIC8vIHJlbW92ZVJldDogKGJvb2wsYm9vbCkKCgkvLyBjb250cmFjdHMvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo3NzIKCS8vIHN0YWtlck91dE9mVGhpc1ZhbGlkYXRvciA9IHJlbW92ZVJldFswXQoJZnJhbWVfZGlnIDEgLy8gcmVtb3ZlUmV0OiAoYm9vbCxib29sKQoJc3RvcmUgMjU1IC8vIGZ1bGwgYXJyYXkKCWxvYWQgMjU1IC8vIGZ1bGwgYXJyYXkKCWludGMgMCAvLyAwCglnZXRiaXQKCWZyYW1lX2J1cnkgMiAvLyBzdGFrZXJPdXRPZlRoaXNWYWxpZGF0b3I6IGJvb2wKCgkvLyBjb250cmFjdHMvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo3NzMKCS8vIHN0YWtlck91dE9mUHJvdG9jb2wgPSByZW1vdmVSZXRbMV0KCWZyYW1lX2RpZyAxIC8vIHJlbW92ZVJldDogKGJvb2wsYm9vbCkKCXN0b3JlIDI1NSAvLyBmdWxsIGFycmF5Cglsb2FkIDI1NSAvLyBmdWxsIGFycmF5CglpbnRjIDEgLy8gMQoJZ2V0Yml0CglmcmFtZV9idXJ5IDMgLy8gc3Rha2VyT3V0T2ZQcm90b2NvbDogYm9vbAoKCS8vICppZjIxX2NvbmRpdGlvbgoJLy8gY29udHJhY3RzL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6Nzc1CgkvLyBzdGFrZXJPdXRPZlRoaXNWYWxpZGF0b3IKCWZyYW1lX2RpZyAyIC8vIHN0YWtlck91dE9mVGhpc1ZhbGlkYXRvcjogYm9vbAoJYnogKmlmMjFfZW5kCgoJLy8gKmlmMjFfY29uc2VxdWVudAoJLy8gY29udHJhY3RzL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6Nzc2CgkvLyB0aGlzLnZhbGlkYXRvckxpc3QocG9vbEtleS5pZCkudmFsdWUuc3RhdGUudG90YWxTdGFrZXJzIC09IDEKCWludGMgMjMgLy8gMjQ0CglkdXAKCWludGMgMiAvLyA4CglieXRlYyAwIC8vICAidiIKCWZyYW1lX2RpZyAtMSAvLyBwb29sS2V5OiBWYWxpZGF0b3JQb29sS2V5CglleHRyYWN0IDAgOAoJYnRvaQoJaXRvYgoJY29uY2F0Cgljb3ZlciAyCglib3hfZXh0cmFjdAoJYnRvaQoJaW50YyAxIC8vIDEKCS0KCWl0b2IKCWJ5dGVjIDAgLy8gICJ2IgoJZnJhbWVfZGlnIC0xIC8vIHBvb2xLZXk6IFZhbGlkYXRvclBvb2xLZXkKCWV4dHJhY3QgMCA4CglidG9pCglpdG9iCgljb25jYXQKCWNvdmVyIDIKCWJveF9yZXBsYWNlCgoqaWYyMV9lbmQ6CgkvLyAqaWYyMl9jb25kaXRpb24KCS8vIGNvbnRyYWN0cy92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjc3OQoJLy8gc3Rha2VyT3V0T2ZQcm90b2NvbAoJZnJhbWVfZGlnIDMgLy8gc3Rha2VyT3V0T2ZQcm90b2NvbDogYm9vbAoJYnogKmlmMjJfZW5kCgoJLy8gKmlmMjJfY29uc2VxdWVudAoJLy8gY29udHJhY3RzL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6NzgwCgkvLyB0aGlzLm51bVN0YWtlcnMudmFsdWUgLT0gMQoJYnl0ZWMgNiAvLyAgIm51bVN0YWtlcnMiCglhcHBfZ2xvYmFsX2dldAoJaW50YyAxIC8vIDEKCS0KCWJ5dGVjIDYgLy8gICJudW1TdGFrZXJzIgoJc3dhcAoJYXBwX2dsb2JhbF9wdXQKCippZjIyX2VuZDoKCippZjIwX2VuZDoKCXJldHN1YgoKLy8gZmluZFBvb2xGb3JTdGFrZXIodWludDY0LGFkZHJlc3MsdWludDY0KSgodWludDY0LHVpbnQ2NCx1aW50NjQpLGJvb2wsYm9vbCkKKmFiaV9yb3V0ZV9maW5kUG9vbEZvclN0YWtlcjoKCS8vIFRoZSBBQkkgcmV0dXJuIHByZWZpeAoJYnl0ZWMgMiAvLyAweDE1MWY3Yzc1CgoJLy8gYW1vdW50VG9TdGFrZTogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAzCglidG9pCgoJLy8gc3Rha2VyOiBhZGRyZXNzCgl0eG5hIEFwcGxpY2F0aW9uQXJncyAyCglkdXAKCWxlbgoJaW50YyA2IC8vIDMyCgk9PQoKCS8vIGFyZ3VtZW50IDEgKHN0YWtlcikgZm9yIGZpbmRQb29sRm9yU3Rha2VyIG11c3QgYmUgYSBhZGRyZXNzCglhc3NlcnQKCgkvLyB2YWxpZGF0b3JJZDogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglidG9pCgoJLy8gZXhlY3V0ZSBmaW5kUG9vbEZvclN0YWtlcih1aW50NjQsYWRkcmVzcyx1aW50NjQpKCh1aW50NjQsdWludDY0LHVpbnQ2NCksYm9vbCxib29sKQoJY2FsbHN1YiBmaW5kUG9vbEZvclN0YWtlcgoJY29uY2F0Cglsb2cKCWludGMgMSAvLyAxCglyZXR1cm4KCi8vIGZpbmRQb29sRm9yU3Rha2VyKHZhbGlkYXRvcklkOiBWYWxpZGF0b3JJZFR5cGUsIHN0YWtlcjogQWRkcmVzcywgYW1vdW50VG9TdGFrZTogdWludDY0KTogW1ZhbGlkYXRvclBvb2xLZXksIGJvb2xlYW4sIGJvb2xlYW5dCi8vCi8vIEZpbmRzIHRoZSBwb29sIGZvciBhIHN0YWtlciBiYXNlZCBvbiB0aGUgcHJvdmlkZWQgdmFsaWRhdG9yIGlkLCBzdGFrZXIgYWRkcmVzcywgYW5kIGFtb3VudCB0byBzdGFrZS4KLy8gRmlyc3QgY2hlY2tzIHRoZSBzdGFrZXJzICdhbHJlYWR5IHN0YWtlZCBsaXN0JyBmb3IgdGhlIHZhbGlkYXRvciBwcmVmZXJyaW5nIHRob3NlIChhZGRpbmcgaWYgcG9zc2libGUpIHRoZW4gYWRkcwovLyB0byBuZXcgcG9vbCBpZiBuZWNlc3NhcnkuCi8vCi8vIEBwYXJhbSB7VmFsaWRhdG9ySWRUeXBlfSB2YWxpZGF0b3JJZCAtIFRoZSBpZCBvZiB0aGUgdmFsaWRhdG9yLgovLyBAcGFyYW0ge0FkZHJlc3N9IHN0YWtlciAtIFRoZSBhZGRyZXNzIG9mIHRoZSBzdGFrZXIuCi8vIEBwYXJhbSB7dWludDY0fSBhbW91bnRUb1N0YWtlIC0gVGhlIGFtb3VudCB0byBzdGFrZS4KLy8gQHJldHVybnMge1ZhbGlkYXRvclBvb2xLZXksIGJvb2xlYW4sIGJvb2xlYW59IC0gVGhlIHBvb2wgZm9yIHRoZSBzdGFrZXIsIHRydWUvZmFsc2Ugb24gd2hldGhlciB0aGUgc3Rha2VyIGlzICduZXcnCi8vIHRvIHRoaXMgVkFMSURBVE9SLCBhbmQgdHJ1ZS9mYWxzZSBpZiBzdGFrZXIgaXMgbmV3IHRvIHRoZSBwcm90b2NvbC4KZmluZFBvb2xGb3JTdGFrZXI6Cglwcm90byAzIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZWMgMSAvLyAweAoJZHVwbiA3CgoJLy8gY29udHJhY3RzL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6ODAyCgkvLyBpc05ld1N0YWtlclRvVmFsaWRhdG9yID0gdHJ1ZQoJaW50YyAxIC8vIDEKCWZyYW1lX2J1cnkgMCAvLyBpc05ld1N0YWtlclRvVmFsaWRhdG9yOiBib29sCgoJLy8gY29udHJhY3RzL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6ODAzCgkvLyBpc05ld1N0YWtlclRvUHJvdG9jb2wgPSB0cnVlCglpbnRjIDEgLy8gMQoJZnJhbWVfYnVyeSAxIC8vIGlzTmV3U3Rha2VyVG9Qcm90b2NvbDogYm9vbAoKCS8vIGNvbnRyYWN0cy92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjgxMQoJLy8gbWF4UGVyUG9vbCA9IHRoaXMuZ2V0Q3VyTWF4U3Rha2VQZXJQb29sKHZhbGlkYXRvcklkKQoJZnJhbWVfZGlnIC0xIC8vIHZhbGlkYXRvcklkOiBWYWxpZGF0b3JJZFR5cGUKCWNhbGxzdWIgZ2V0Q3VyTWF4U3Rha2VQZXJQb29sCglmcmFtZV9idXJ5IDIgLy8gbWF4UGVyUG9vbDogdWludDY0CgoJLy8gKmlmMjNfY29uZGl0aW9uCgkvLyBjb250cmFjdHMvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo4MTQKCS8vIHRoaXMuc3Rha2VyUG9vbFNldChzdGFrZXIpLmV4aXN0cwoJYnl0ZWMgMyAvLyAgInNwcyIKCWZyYW1lX2RpZyAtMiAvLyBzdGFrZXI6IEFkZHJlc3MKCWNvbmNhdAoJYm94X2xlbgoJc3dhcAoJcG9wCglieiAqaWYyM19lbmQKCgkvLyAqaWYyM19jb25zZXF1ZW50CgkvLyBjb250cmFjdHMvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo4MTUKCS8vIHBvb2xTZXQgPSBjbG9uZSh0aGlzLnN0YWtlclBvb2xTZXQoc3Rha2VyKS52YWx1ZSkKCWJ5dGVjIDMgLy8gICJzcHMiCglmcmFtZV9kaWcgLTIgLy8gc3Rha2VyOiBBZGRyZXNzCgljb25jYXQKCWJveF9nZXQKCgkvLyBib3ggdmFsdWUgZG9lcyBub3QgZXhpc3Q6IHRoaXMuc3Rha2VyUG9vbFNldChzdGFrZXIpLnZhbHVlCglhc3NlcnQKCWZyYW1lX2J1cnkgMyAvLyBwb29sU2V0OiAodWludDY0LHVpbnQ2NCx1aW50NjQpWzZdCgoJLy8gY29udHJhY3RzL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6ODE2CgkvLyBhc3NlcnQodmFsaWRhdG9ySWQgIT09IDApCglmcmFtZV9kaWcgLTEgLy8gdmFsaWRhdG9ySWQ6IFZhbGlkYXRvcklkVHlwZQoJaW50YyAwIC8vIDAKCSE9Cglhc3NlcnQKCgkvLyBjb250cmFjdHMvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo4MTcKCS8vIGZvciAobGV0IGkgPSAwOyBpIDwgcG9vbFNldC5sZW5ndGg7IGkgKz0gMSkKCWludGMgMCAvLyAwCglmcmFtZV9idXJ5IDQgLy8gaTogdWludDY0CgoqZm9yXzM6CgkvLyBjb250cmFjdHMvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo4MTcKCS8vIGkgPCBwb29sU2V0Lmxlbmd0aAoJZnJhbWVfZGlnIDQgLy8gaTogdWludDY0CglpbnRjIDcgLy8gNgoJPAoJYnogKmZvcl8zX2VuZAoKCS8vICppZjI0X2NvbmRpdGlvbgoJLy8gY29udHJhY3RzL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6ODE4CgkvLyBnbG9iYWxzLm9wY29kZUJ1ZGdldCA8IDMwMAoJZ2xvYmFsIE9wY29kZUJ1ZGdldAoJaW50YyAyOSAvLyAzMDAKCTwKCWJ6ICppZjI0X2VuZAoKCS8vICppZjI0X2NvbnNlcXVlbnQKCS8vIGNvbnRyYWN0cy92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjgxOQoJLy8gaW5jcmVhc2VPcGNvZGVCdWRnZXQoKQoJaXR4bl9iZWdpbgoJaW50YyA3IC8vICBhcHBsCglpdHhuX2ZpZWxkIFR5cGVFbnVtCglpbnRjIDAgLy8gMAoJaXR4bl9maWVsZCBGZWUKCWJ5dGVjIDggLy8gICNwcmFnbWEgdmVyc2lvbiAxMDsgaW50IDEKCWR1cAoJaXR4bl9maWVsZCBBcHByb3ZhbFByb2dyYW0KCWl0eG5fZmllbGQgQ2xlYXJTdGF0ZVByb2dyYW0KCWludGMgMjYgLy8gIERlbGV0ZUFwcGxpY2F0aW9uCglpdHhuX2ZpZWxkIE9uQ29tcGxldGlvbgoJaXR4bl9zdWJtaXQKCippZjI0X2VuZDoKCS8vICppZjI1X2NvbmRpdGlvbgoJLy8gY29udHJhY3RzL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6ODIxCgkvLyBwb29sU2V0W2ldLmlkID09PSAwCglmcmFtZV9kaWcgMyAvLyBwb29sU2V0OiAodWludDY0LHVpbnQ2NCx1aW50NjQpWzZdCglmcmFtZV9kaWcgNCAvLyBpOiB1aW50NjQKCWludGMgMyAvLyAyNAoJKiAvLyBhY2MgKiB0eXBlTGVuZ3RoCglpbnRjIDAgLy8gMAoJKwoJaW50YyAyIC8vIDgKCWV4dHJhY3QzCglidG9pCglpbnRjIDAgLy8gMAoJPT0KCWJ6ICppZjI1X2VuZAoKCS8vICppZjI1X2NvbnNlcXVlbnQKCWIgKmZvcl8zX2NvbnRpbnVlCgoqaWYyNV9lbmQ6CgkvLyBjb250cmFjdHMvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo4MjQKCS8vIGlzTmV3U3Rha2VyVG9Qcm90b2NvbCA9IGZhbHNlCglpbnRjIDAgLy8gMAoJZnJhbWVfYnVyeSAxIC8vIGlzTmV3U3Rha2VyVG9Qcm90b2NvbDogYm9vbAoKCS8vICppZjI2X2NvbmRpdGlvbgoJLy8gY29udHJhY3RzL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6ODI1CgkvLyBwb29sU2V0W2ldLmlkID09PSB2YWxpZGF0b3JJZAoJZnJhbWVfZGlnIDMgLy8gcG9vbFNldDogKHVpbnQ2NCx1aW50NjQsdWludDY0KVs2XQoJZnJhbWVfZGlnIDQgLy8gaTogdWludDY0CglpbnRjIDMgLy8gMjQKCSogLy8gYWNjICogdHlwZUxlbmd0aAoJaW50YyAwIC8vIDAKCSsKCWludGMgMiAvLyA4CglleHRyYWN0MwoJYnRvaQoJZnJhbWVfZGlnIC0xIC8vIHZhbGlkYXRvcklkOiBWYWxpZGF0b3JJZFR5cGUKCT09CglieiAqaWYyNl9lbmQKCgkvLyAqaWYyNl9jb25zZXF1ZW50CgkvLyBjb250cmFjdHMvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo4MjcKCS8vIGlzTmV3U3Rha2VyVG9WYWxpZGF0b3IgPSBmYWxzZQoJaW50YyAwIC8vIDAKCWZyYW1lX2J1cnkgMCAvLyBpc05ld1N0YWtlclRvVmFsaWRhdG9yOiBib29sCgoJLy8gKmlmMjdfY29uZGl0aW9uCgkvLyBjb250cmFjdHMvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo4MjkKCS8vIHRoaXMudmFsaWRhdG9yTGlzdCh2YWxpZGF0b3JJZCkudmFsdWUucG9vbHNbcG9vbFNldFtpXS5wb29sSWQgLSAxXS50b3RhbEFsZ29TdGFrZWQgKwoJLy8gICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFtb3VudFRvU3Rha2UgPD0KCS8vICAgICAgICAgICAgICAgICAgICAgICAgIG1heFBlclBvb2wKCWludGMgNSAvLyAgaGVhZE9mZnNldAoJZnJhbWVfZGlnIDMgLy8gcG9vbFNldDogKHVpbnQ2NCx1aW50NjQsdWludDY0KVs2XQoJZnJhbWVfZGlnIDQgLy8gaTogdWludDY0CglpbnRjIDMgLy8gMjQKCSogLy8gYWNjICogdHlwZUxlbmd0aAoJaW50YyAyIC8vICBoZWFkT2Zmc2V0CgkrCglpbnRjIDIgLy8gOAoJZXh0cmFjdDMKCWJ0b2kKCWludGMgMSAvLyAxCgktCglpbnRjIDQgLy8gMTgKCSogLy8gYWNjICogdHlwZUxlbmd0aAoJKwoJaW50YyAxMSAvLyAgaGVhZE9mZnNldAoJKwoJaW50YyAyIC8vIDgKCWJ5dGVjIDAgLy8gICJ2IgoJZnJhbWVfZGlnIC0xIC8vIHZhbGlkYXRvcklkOiBWYWxpZGF0b3JJZFR5cGUKCWl0b2IKCWNvbmNhdAoJY292ZXIgMgoJYm94X2V4dHJhY3QKCWJ0b2kKCWZyYW1lX2RpZyAtMyAvLyBhbW91bnRUb1N0YWtlOiB1aW50NjQKCSsKCWZyYW1lX2RpZyAyIC8vIG1heFBlclBvb2w6IHVpbnQ2NAoJPD0KCWJ6ICppZjI3X2VuZAoKCS8vICppZjI3X2NvbnNlcXVlbnQKCS8vIGNvbnRyYWN0cy92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjgzMwoJLy8gcmV0dXJuIFtwb29sU2V0W2ldLCBpc05ld1N0YWtlclRvVmFsaWRhdG9yLCBpc05ld1N0YWtlclRvUHJvdG9jb2xdCglmcmFtZV9kaWcgMyAvLyBwb29sU2V0OiAodWludDY0LHVpbnQ2NCx1aW50NjQpWzZdCglmcmFtZV9kaWcgNCAvLyBpOiB1aW50NjQKCWludGMgMyAvLyAyNAoJKiAvLyBhY2MgKiB0eXBlTGVuZ3RoCglpbnRjIDMgLy8gMjQKCWV4dHJhY3QzCglieXRlYyA1IC8vIDB4MDAKCWludGMgMCAvLyAwCglmcmFtZV9kaWcgMCAvLyBpc05ld1N0YWtlclRvVmFsaWRhdG9yOiBib29sCglzZXRiaXQKCWludGMgMSAvLyAxCglmcmFtZV9kaWcgMSAvLyBpc05ld1N0YWtlclRvUHJvdG9jb2w6IGJvb2wKCXNldGJpdAoJY29uY2F0CgliICpmaW5kUG9vbEZvclN0YWtlcipyZXR1cm4KCippZjI3X2VuZDoKCippZjI2X2VuZDoKCipmb3JfM19jb250aW51ZToKCS8vIGNvbnRyYWN0cy92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjgxNwoJLy8gaSArPSAxCglmcmFtZV9kaWcgNCAvLyBpOiB1aW50NjQKCWludGMgMSAvLyAxCgkrCglmcmFtZV9idXJ5IDQgLy8gaTogdWludDY0CgliICpmb3JfMwoKKmZvcl8zX2VuZDoKCippZjIzX2VuZDoKCS8vIGNvbnRyYWN0cy92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjg0MAoJLy8gYXNzZXJ0KAoJLy8gICAgICAgICAgICAgYW1vdW50VG9TdGFrZSA+PSB0aGlzLnZhbGlkYXRvckxpc3QodmFsaWRhdG9ySWQpLnZhbHVlLmNvbmZpZy5taW5FbnRyeVN0YWtlLAoJLy8gICAgICAgICAgICAgJ211c3Qgc3Rha2UgYXQgbGVhc3QgdGhlIG1pbmltdW0gZm9yIHRoaXMgcG9vbCcsCgkvLyAgICAgICAgICkKCWZyYW1lX2RpZyAtMyAvLyBhbW91bnRUb1N0YWtlOiB1aW50NjQKCWludGMgMzkgLy8gMjA5CglpbnRjIDIgLy8gOAoJYnl0ZWMgMCAvLyAgInYiCglmcmFtZV9kaWcgLTEgLy8gdmFsaWRhdG9ySWQ6IFZhbGlkYXRvcklkVHlwZQoJaXRvYgoJY29uY2F0Cgljb3ZlciAyCglib3hfZXh0cmFjdAoJYnRvaQoJPj0KCgkvLyBtdXN0IHN0YWtlIGF0IGxlYXN0IHRoZSBtaW5pbXVtIGZvciB0aGlzIHBvb2wKCWFzc2VydAoKCS8vIGNvbnRyYWN0cy92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjg0NgoJLy8gcG9vbHMgPSBjbG9uZSh0aGlzLnZhbGlkYXRvckxpc3QodmFsaWRhdG9ySWQpLnZhbHVlLnBvb2xzKQoJaW50YyA1IC8vICBoZWFkT2Zmc2V0CglpbnRjIDMwIC8vIDQzMgoJYnl0ZWMgMCAvLyAgInYiCglmcmFtZV9kaWcgLTEgLy8gdmFsaWRhdG9ySWQ6IFZhbGlkYXRvcklkVHlwZQoJaXRvYgoJY29uY2F0Cgljb3ZlciAyCglib3hfZXh0cmFjdAoJZnJhbWVfYnVyeSA1IC8vIHBvb2xzOiAodWludDY0LHVpbnQxNix1aW50NjQpWzI0XQoKCS8vIGNvbnRyYWN0cy92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjg0NwoJLy8gY3VyTnVtUG9vbHMgPSB0aGlzLnZhbGlkYXRvckxpc3QodmFsaWRhdG9ySWQpLnZhbHVlLnN0YXRlLm51bVBvb2xzIGFzIHVpbnQ2NAoJaW50YyA5IC8vIDI0MgoJaW50YyAxMCAvLyAyCglieXRlYyAwIC8vICAidiIKCWZyYW1lX2RpZyAtMSAvLyB2YWxpZGF0b3JJZDogVmFsaWRhdG9ySWRUeXBlCglpdG9iCgljb25jYXQKCWNvdmVyIDIKCWJveF9leHRyYWN0CglidG9pCglmcmFtZV9idXJ5IDYgLy8gY3VyTnVtUG9vbHM6IHVpbnQ2NAoKCS8vIGNvbnRyYWN0cy92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjg0OAoJLy8gZm9yIChsZXQgaSA9IDA7IGkgPCBjdXJOdW1Qb29sczsgaSArPSAxKQoJaW50YyAwIC8vIDAKCWZyYW1lX2J1cnkgNyAvLyBpOiB1aW50NjQKCipmb3JfNDoKCS8vIGNvbnRyYWN0cy92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjg0OAoJLy8gaSA8IGN1ck51bVBvb2xzCglmcmFtZV9kaWcgNyAvLyBpOiB1aW50NjQKCWZyYW1lX2RpZyA2IC8vIGN1ck51bVBvb2xzOiB1aW50NjQKCTwKCWJ6ICpmb3JfNF9lbmQKCgkvLyAqaWYyOF9jb25kaXRpb24KCS8vIGNvbnRyYWN0cy92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjg0OQoJLy8gcG9vbHNbaV0udG90YWxBbGdvU3Rha2VkICsgYW1vdW50VG9TdGFrZSA8PSBtYXhQZXJQb29sCglmcmFtZV9kaWcgNSAvLyBwb29sczogKHVpbnQ2NCx1aW50MTYsdWludDY0KVsyNF0KCWZyYW1lX2RpZyA3IC8vIGk6IHVpbnQ2NAoJaW50YyA0IC8vIDE4CgkqIC8vIGFjYyAqIHR5cGVMZW5ndGgKCWludGMgMTEgLy8gIGhlYWRPZmZzZXQKCSsKCWludGMgMiAvLyA4CglleHRyYWN0MwoJYnRvaQoJZnJhbWVfZGlnIC0zIC8vIGFtb3VudFRvU3Rha2U6IHVpbnQ2NAoJKwoJZnJhbWVfZGlnIDIgLy8gbWF4UGVyUG9vbDogdWludDY0Cgk8PQoJYnogKmlmMjhfZW5kCgoJLy8gKmlmMjhfY29uc2VxdWVudAoJLy8gY29udHJhY3RzL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6ODUwCgkvLyByZXR1cm4gWwoJLy8gICAgICAgICAgICAgICAgICAgICB7IGlkOiB2YWxpZGF0b3JJZCwgcG9vbElkOiBpICsgMSwgcG9vbEFwcElkOiBwb29sc1tpXS5wb29sQXBwSWQgfSwKCS8vICAgICAgICAgICAgICAgICAgICAgaXNOZXdTdGFrZXJUb1ZhbGlkYXRvciwKCS8vICAgICAgICAgICAgICAgICAgICAgaXNOZXdTdGFrZXJUb1Byb3RvY29sLAoJLy8gICAgICAgICAgICAgICAgIF0KCWZyYW1lX2RpZyAtMSAvLyB2YWxpZGF0b3JJZDogVmFsaWRhdG9ySWRUeXBlCglpdG9iCglmcmFtZV9kaWcgNyAvLyBpOiB1aW50NjQKCWludGMgMSAvLyAxCgkrCglpdG9iCgljb25jYXQKCWZyYW1lX2RpZyA1IC8vIHBvb2xzOiAodWludDY0LHVpbnQxNix1aW50NjQpWzI0XQoJZnJhbWVfZGlnIDcgLy8gaTogdWludDY0CglpbnRjIDQgLy8gMTgKCSogLy8gYWNjICogdHlwZUxlbmd0aAoJaW50YyAwIC8vIDAKCSsKCWludGMgMiAvLyA4CglleHRyYWN0MwoJYnRvaQoJaXRvYgoJY29uY2F0CglieXRlYyA1IC8vIDB4MDAKCWludGMgMCAvLyAwCglmcmFtZV9kaWcgMCAvLyBpc05ld1N0YWtlclRvVmFsaWRhdG9yOiBib29sCglzZXRiaXQKCWludGMgMSAvLyAxCglmcmFtZV9kaWcgMSAvLyBpc05ld1N0YWtlclRvUHJvdG9jb2w6IGJvb2wKCXNldGJpdAoJY29uY2F0CgliICpmaW5kUG9vbEZvclN0YWtlcipyZXR1cm4KCippZjI4X2VuZDoKCipmb3JfNF9jb250aW51ZToKCS8vIGNvbnRyYWN0cy92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjg0OAoJLy8gaSArPSAxCglmcmFtZV9kaWcgNyAvLyBpOiB1aW50NjQKCWludGMgMSAvLyAxCgkrCglmcmFtZV9idXJ5IDcgLy8gaTogdWludDY0CgliICpmb3JfNAoKKmZvcl80X2VuZDoKCS8vIGNvbnRyYWN0cy92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjg1OAoJLy8gcmV0dXJuIFt7IGlkOiB2YWxpZGF0b3JJZCwgcG9vbElkOiAwLCBwb29sQXBwSWQ6IDAgfSwgaXNOZXdTdGFrZXJUb1ZhbGlkYXRvciwgaXNOZXdTdGFrZXJUb1Byb3RvY29sXQoJZnJhbWVfZGlnIC0xIC8vIHZhbGlkYXRvcklkOiBWYWxpZGF0b3JJZFR5cGUKCWl0b2IKCWJ5dGVjIDcgLy8gMHgwMDAwMDAwMDAwMDAwMDAwCgljb25jYXQKCWJ5dGVjIDcgLy8gMHgwMDAwMDAwMDAwMDAwMDAwCgljb25jYXQKCWJ5dGVjIDUgLy8gMHgwMAoJaW50YyAwIC8vIDAKCWZyYW1lX2RpZyAwIC8vIGlzTmV3U3Rha2VyVG9WYWxpZGF0b3I6IGJvb2wKCXNldGJpdAoJaW50YyAxIC8vIDEKCWZyYW1lX2RpZyAxIC8vIGlzTmV3U3Rha2VyVG9Qcm90b2NvbDogYm9vbAoJc2V0Yml0Cgljb25jYXQKCipmaW5kUG9vbEZvclN0YWtlcipyZXR1cm46CgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCgkvLyBwb3AgYWxsIGxvY2FsIHZhcmlhYmxlcyBmcm9tIHRoZSBzdGFjawoJcG9wbiA3CglyZXRzdWIKCi8vIG1vdmVQb29sVG9Ob2RlKHVpbnQ2NCx1aW50NjQsdWludDY0KXZvaWQKKmFiaV9yb3V0ZV9tb3ZlUG9vbFRvTm9kZToKCS8vIG5vZGVOdW06IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMwoJYnRvaQoKCS8vIHBvb2xBcHBJZDogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAyCglidG9pCgoJLy8gdmFsaWRhdG9ySWQ6IHVpbnQ2NAoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMQoJYnRvaQoKCS8vIGV4ZWN1dGUgbW92ZVBvb2xUb05vZGUodWludDY0LHVpbnQ2NCx1aW50NjQpdm9pZAoJY2FsbHN1YiBtb3ZlUG9vbFRvTm9kZQoJaW50YyAxIC8vIDEKCXJldHVybgoKLy8gbW92ZVBvb2xUb05vZGUodmFsaWRhdG9ySWQ6IFZhbGlkYXRvcklkVHlwZSwgcG9vbEFwcElkOiB1aW50NjQsIG5vZGVOdW06IHVpbnQ2NCk6IHZvaWQKLy8KLy8gRmluZCB0aGUgc3BlY2lmaWVkIHBvb2wgKGluIGFueSBub2RlIG51bWJlcikgYW5kIG1vdmUgaXQgdG8gdGhlIHNwZWNpZmllZCBub2RlLgovLyBUaGUgcG9vbCBhY2NvdW50IGlzIGZvcmNlZCBvZmZsaW5lIGlmIG1vdmVkIHNvIHByaW9yIG5vZGUgd2lsbCBzdGlsbCBydW4gZm9yIDMyMCByb3VuZHMgYnV0Ci8vIG5ldyBrZXkgZ29lcyBvbmxpbmUgb24gbmV3IG5vZGUgc29vbiBhZnRlciAoMzIwIHJvdW5kcyBhZnRlciBpdCBnb2VzIG9ubGluZSkKLy8gTm8tb3AgaWYgc3VjY2VzcywgYXNzZXJ0cyBpZiBub3QgZm91bmQgb3IgY2FuJ3QgbW92ZSAgKG5vIHNwYWNlIGluIHRhcmdldCkKLy8gWyBPTkxZIE9XTkVSIE9SIE1BTkFHRVIgQ0FOIENIQU5HRSBdCi8vCi8vIEBwYXJhbSB7VmFsaWRhdG9ySWRUeXBlfSB2YWxpZGF0b3JJZCAtIFRoZSBpZCBvZiB0aGUgdmFsaWRhdG9yLgovLyBAcGFyYW0ge3VpbnQ2NH0gcG9vbEFwcElkCi8vIEBwYXJhbSB7dWludDY0fSBub2RlTnVtCm1vdmVQb29sVG9Ob2RlOgoJcHJvdG8gMyAwCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGVjIDEgLy8gMHgKCWR1cG4gMgoKCS8vIGNvbnRyYWN0cy92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjg3MwoJLy8gdGhpcy5jYWxsZXJNdXN0QmVPd25lck9yTWFuYWdlcih2YWxpZGF0b3JJZCkKCWZyYW1lX2RpZyAtMSAvLyB2YWxpZGF0b3JJZDogVmFsaWRhdG9ySWRUeXBlCgljYWxsc3ViIGNhbGxlck11c3RCZU93bmVyT3JNYW5hZ2VyCgoJLy8gY29udHJhY3RzL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6ODc1CgkvLyBub2RlUG9vbEFzc2lnbm1lbnRzID0gY2xvbmUodGhpcy52YWxpZGF0b3JMaXN0KHZhbGlkYXRvcklkKS52YWx1ZS5ub2RlUG9vbEFzc2lnbm1lbnRzKQoJaW50YyAxNyAvLyAgaGVhZE9mZnNldAoJaW50YyAyMiAvLyAxOTIKCWJ5dGVjIDAgLy8gICJ2IgoJZnJhbWVfZGlnIC0xIC8vIHZhbGlkYXRvcklkOiBWYWxpZGF0b3JJZFR5cGUKCWl0b2IKCWNvbmNhdAoJY292ZXIgMgoJYm94X2V4dHJhY3QKCWZyYW1lX2J1cnkgMCAvLyBub2RlUG9vbEFzc2lnbm1lbnRzOiAoKHVpbnQ2NFszXSlbOF0pCgoJLy8gY29udHJhY3RzL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6ODc2CgkvLyBhc3NlcnQobm9kZU51bSA+PSAxICYmIG5vZGVOdW0gPD0gTUFYX05PREVTLCAnbm9kZSBudW1iZXIgb3V0IG9mIGFsbG93YWJsZSByYW5nZScpCglmcmFtZV9kaWcgLTMgLy8gbm9kZU51bTogdWludDY0CglpbnRjIDEgLy8gMQoJPj0KCWR1cAoJYnogKnNraXBfYW5kMgoJZnJhbWVfZGlnIC0zIC8vIG5vZGVOdW06IHVpbnQ2NAoJaW50YyAyIC8vIDgKCTw9CgkmJgoKKnNraXBfYW5kMjoKCS8vIG5vZGUgbnVtYmVyIG91dCBvZiBhbGxvd2FibGUgcmFuZ2UKCWFzc2VydAoKCS8vIGNvbnRyYWN0cy92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjg3OAoJLy8gZm9yIChsZXQgc3JjTm9kZUlkeCA9IDA7IHNyY05vZGVJZHggPCBNQVhfTk9ERVM7IHNyY05vZGVJZHggKz0gMSkKCWludGMgMCAvLyAwCglmcmFtZV9idXJ5IDEgLy8gc3JjTm9kZUlkeDogdWludDY0CgoqZm9yXzU6CgkvLyBjb250cmFjdHMvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo4NzgKCS8vIHNyY05vZGVJZHggPCBNQVhfTk9ERVMKCWZyYW1lX2RpZyAxIC8vIHNyY05vZGVJZHg6IHVpbnQ2NAoJaW50YyAyIC8vIDgKCTwKCWJ6ICpmb3JfNV9lbmQKCgkvLyBjb250cmFjdHMvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo4NzkKCS8vIGZvciAobGV0IGkgPSAwOyBpIDwgTUFYX1BPT0xTX1BFUl9OT0RFOyBpICs9IDEpCglpbnRjIDAgLy8gMAoJZnJhbWVfYnVyeSAyIC8vIGk6IHVpbnQ2NAoKKmZvcl82OgoJLy8gY29udHJhY3RzL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6ODc5CgkvLyBpIDwgTUFYX1BPT0xTX1BFUl9OT0RFCglmcmFtZV9kaWcgMiAvLyBpOiB1aW50NjQKCWludGMgOCAvLyAzCgk8CglieiAqZm9yXzZfZW5kCgoJLy8gKmlmMjlfY29uZGl0aW9uCgkvLyBjb250cmFjdHMvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo4ODAKCS8vIG5vZGVQb29sQXNzaWdubWVudHMubm9kZXNbc3JjTm9kZUlkeF0ucG9vbEFwcElkc1tpXSA9PT0gcG9vbEFwcElkCglmcmFtZV9kaWcgMCAvLyBub2RlUG9vbEFzc2lnbm1lbnRzOiAoKHVpbnQ2NFszXSlbOF0pCglpbnRjIDAgLy8gMAoJZnJhbWVfZGlnIDEgLy8gc3JjTm9kZUlkeDogdWludDY0CglpbnRjIDMgLy8gMjQKCSogLy8gYWNjICogdHlwZUxlbmd0aAoJKwoJaW50YyAwIC8vIDAKCSsKCWZyYW1lX2RpZyAyIC8vIGk6IHVpbnQ2NAoJaW50YyAyIC8vIDgKCSogLy8gYWNjICogdHlwZUxlbmd0aAoJKwoJaW50YyAyIC8vIDgKCWV4dHJhY3QzCglidG9pCglmcmFtZV9kaWcgLTIgLy8gcG9vbEFwcElkOiB1aW50NjQKCT09CglieiAqaWYyOV9lbmQKCgkvLyAqaWYyOV9jb25zZXF1ZW50CgkvLyBjb250cmFjdHMvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo4ODEKCS8vIGFzc2VydChub2RlTnVtIC0gMSAhPT0gc3JjTm9kZUlkeCwgImNhbid0IG1vdmUgdG8gc2FtZSBub2RlIikKCWZyYW1lX2RpZyAtMyAvLyBub2RlTnVtOiB1aW50NjQKCWludGMgMSAvLyAxCgktCglmcmFtZV9kaWcgMSAvLyBzcmNOb2RlSWR4OiB1aW50NjQKCSE9CgoJLy8gY2FuJ3QgbW92ZSB0byBzYW1lIG5vZGUKCWFzc2VydAoKCS8vIGNvbnRyYWN0cy92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjg4MwoJLy8gdGhpcy52YWxpZGF0b3JMaXN0KHZhbGlkYXRvcklkKS52YWx1ZS5ub2RlUG9vbEFzc2lnbm1lbnRzLm5vZGVzW3NyY05vZGVJZHhdLnBvb2xBcHBJZHNbaV0gPSAwCglpbnRjIDE3IC8vIDkwMAoJZnJhbWVfZGlnIDEgLy8gc3JjTm9kZUlkeDogdWludDY0CglpbnRjIDMgLy8gMjQKCSogLy8gYWNjICogdHlwZUxlbmd0aAoJKwoJaW50YyAwIC8vIDAKCSsKCWZyYW1lX2RpZyAyIC8vIGk6IHVpbnQ2NAoJaW50YyAyIC8vIDgKCSogLy8gYWNjICogdHlwZUxlbmd0aAoJKwoJYnl0ZWMgNyAvLyAweDAwMDAwMDAwMDAwMDAwMDAKCWJ5dGVjIDAgLy8gICJ2IgoJZnJhbWVfZGlnIC0xIC8vIHZhbGlkYXRvcklkOiBWYWxpZGF0b3JJZFR5cGUKCWl0b2IKCWNvbmNhdAoJY292ZXIgMgoJYm94X3JlcGxhY2UKCgkvLyBjb250cmFjdHMvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo4ODYKCS8vIHNlbmRNZXRob2RDYWxsPHR5cGVvZiBTdGFraW5nUG9vbC5wcm90b3R5cGUuZ29PZmZsaW5lPih7CgkvLyAgICAgICAgICAgICAgICAgICAgICAgICBhcHBsaWNhdGlvbklEOiBBcHBJRC5mcm9tVWludDY0KHBvb2xBcHBJZCksCgkvLyAgICAgICAgICAgICAgICAgICAgIH0pCglpdHhuX2JlZ2luCglpbnRjIDcgLy8gIGFwcGwKCWl0eG5fZmllbGQgVHlwZUVudW0KCXB1c2hieXRlcyAweDUxZWYzYjIxIC8vIG1ldGhvZCAiZ29PZmZsaW5lKCl2b2lkIgoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbkFyZ3MKCgkvLyBjb250cmFjdHMvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo4ODcKCS8vIGFwcGxpY2F0aW9uSUQ6IEFwcElELmZyb21VaW50NjQocG9vbEFwcElkKQoJZnJhbWVfZGlnIC0yIC8vIHBvb2xBcHBJZDogdWludDY0CglpdHhuX2ZpZWxkIEFwcGxpY2F0aW9uSUQKCgkvLyBGZWUgZmllbGQgbm90IHNldCwgZGVmYXVsdGluZyB0byAwCglpbnRjIDAgLy8gMAoJaXR4bl9maWVsZCBGZWUKCgkvLyBTdWJtaXQgaW5uZXIgdHJhbnNhY3Rpb24KCWl0eG5fc3VibWl0CgoJLy8gY29udHJhY3RzL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6ODkxCgkvLyB0aGlzLmFkZFBvb2xUb05vZGUodmFsaWRhdG9ySWQsIHBvb2xBcHBJZCwgbm9kZU51bSkKCWZyYW1lX2RpZyAtMyAvLyBub2RlTnVtOiB1aW50NjQKCWZyYW1lX2RpZyAtMiAvLyBwb29sQXBwSWQ6IHVpbnQ2NAoJZnJhbWVfZGlnIC0xIC8vIHZhbGlkYXRvcklkOiBWYWxpZGF0b3JJZFR5cGUKCWNhbGxzdWIgYWRkUG9vbFRvTm9kZQoKCS8vIGNvbnRyYWN0cy92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjg5MgoJLy8gcmV0dXJuCglyZXRzdWIKCippZjI5X2VuZDoKCipmb3JfNl9jb250aW51ZToKCS8vIGNvbnRyYWN0cy92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjg3OQoJLy8gaSArPSAxCglmcmFtZV9kaWcgMiAvLyBpOiB1aW50NjQKCWludGMgMSAvLyAxCgkrCglmcmFtZV9idXJ5IDIgLy8gaTogdWludDY0CgliICpmb3JfNgoKKmZvcl82X2VuZDoKCipmb3JfNV9jb250aW51ZToKCS8vIGNvbnRyYWN0cy92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjg3OAoJLy8gc3JjTm9kZUlkeCArPSAxCglmcmFtZV9kaWcgMSAvLyBzcmNOb2RlSWR4OiB1aW50NjQKCWludGMgMSAvLyAxCgkrCglmcmFtZV9idXJ5IDEgLy8gc3JjTm9kZUlkeDogdWludDY0CgliICpmb3JfNQoKKmZvcl81X2VuZDoKCS8vIGNvdWxkbid0IGZpbmQgcG9vbCBhcHAgaWQgaW4gbm9kZXMgdG8gbW92ZQoJZXJyCglyZXRzdWIKCi8vIGVtcHR5VG9rZW5SZXdhcmRzKHVpbnQ2NCxhZGRyZXNzKXVpbnQ2NAoqYWJpX3JvdXRlX2VtcHR5VG9rZW5SZXdhcmRzOgoJLy8gVGhlIEFCSSByZXR1cm4gcHJlZml4CglieXRlYyAyIC8vIDB4MTUxZjdjNzUKCgkvLyByZWNlaXZlcjogYWRkcmVzcwoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMgoJZHVwCglsZW4KCWludGMgNiAvLyAzMgoJPT0KCgkvLyBhcmd1bWVudCAwIChyZWNlaXZlcikgZm9yIGVtcHR5VG9rZW5SZXdhcmRzIG11c3QgYmUgYSBhZGRyZXNzCglhc3NlcnQKCgkvLyB2YWxpZGF0b3JJZDogdWludDY0Cgl0eG5hIEFwcGxpY2F0aW9uQXJncyAxCglidG9pCgoJLy8gZXhlY3V0ZSBlbXB0eVRva2VuUmV3YXJkcyh1aW50NjQsYWRkcmVzcyl1aW50NjQKCWNhbGxzdWIgZW1wdHlUb2tlblJld2FyZHMKCWl0b2IKCWNvbmNhdAoJbG9nCglpbnRjIDEgLy8gMQoJcmV0dXJuCgovLyBlbXB0eVRva2VuUmV3YXJkcyh2YWxpZGF0b3JJZDogVmFsaWRhdG9ySWRUeXBlLCByZWNlaXZlcjogQWRkcmVzcyk6IHVpbnQ2NAovLwovLyBTZW5kcyB0aGUgcmV3YXJkIHRva2VucyBoZWxkIGluIHBvb2wgMSB0byBzcGVjaWZpZWQgcmVjZWl2ZXIuCi8vIFRoaXMgaXMgaW50ZW5kZWQgdG8gYmUgdXNlZCBieSB0aGUgb3duZXIgd2hlbiB0aGV5IHdhbnQgdG8gZ2V0IHJld2FyZCB0b2tlbnMgJ2JhY2snIHdoaWNoIHRoZXkgc2VudCB0bwovLyB0aGUgZmlyc3QgcG9vbCAobGlrZWx5IGJlY2F1c2UgdmFsaWRhdG9yIGlzIHN1bnNldHRpbmcuICBBbnkgdG9rZW5zIGN1cnJlbnRseSAncmVzZXJ2ZWQnIGZvciBzdGFrZXJzIHRvIGNsYWltIHdpbGwKLy8gTk9UIGJlIHNlbnQgYXMgdGhleSBtdXN0IGJlIGhlbGQgYmFjayBmb3Igc3Rha2VycyB0byBsYXRlciBjbGFpbS4KLy8gWyBPTkxZIE9XTkVSIENBTiBDQUxMXQovLwovLyBAcGFyYW0ge1ZhbGlkYXRvcklkVHlwZX0gdmFsaWRhdG9ySWQgLSBUaGUgaWQgb2YgdGhlIHZhbGlkYXRvci4KLy8gQHBhcmFtIHtBZGRyZXNzfSByZWNlaXZlciAtIHRoZSBhY2NvdW50IHRvIHNlbmQgdGhlIHRva2VucyB0byAobXVzdCBhbHJlYWR5IGJlIG9wdGVkLWluIHRvIHRoZSByZXdhcmQgdG9rZW4pCi8vIEByZXR1cm5zIHt1aW50NjR9IHRoZSBhbW91bnQgb2YgcmV3YXJkIHRva2VuIHNlbnQKZW1wdHlUb2tlblJld2FyZHM6Cglwcm90byAyIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZWMgMSAvLyAweAoJZHVwbiAzCgoJLy8gY29udHJhY3RzL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6OTExCgkvLyB0aGlzLmNhbGxlck11c3RCZU93bmVyKHZhbGlkYXRvcklkKQoJZnJhbWVfZGlnIC0xIC8vIHZhbGlkYXRvcklkOiBWYWxpZGF0b3JJZFR5cGUKCWNhbGxzdWIgY2FsbGVyTXVzdEJlT3duZXIKCgkvLyBjb250cmFjdHMvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo5MTIKCS8vIHJld2FyZFRva2VuSWQgPSB0aGlzLnZhbGlkYXRvckxpc3QodmFsaWRhdG9ySWQpLnZhbHVlLmNvbmZpZy5yZXdhcmRUb2tlbklkCglpbnRjIDM4IC8vIDE1MwoJaW50YyAyIC8vIDgKCWJ5dGVjIDAgLy8gICJ2IgoJZnJhbWVfZGlnIC0xIC8vIHZhbGlkYXRvcklkOiBWYWxpZGF0b3JJZFR5cGUKCWl0b2IKCWNvbmNhdAoJY292ZXIgMgoJYm94X2V4dHJhY3QKCWJ0b2kKCWZyYW1lX2J1cnkgMCAvLyByZXdhcmRUb2tlbklkOiB1aW50NjQKCgkvLyBjb250cmFjdHMvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo5MTMKCS8vIHJld2FyZFRva2VuSGVsZEJhY2sgPSB0aGlzLnZhbGlkYXRvckxpc3QodmFsaWRhdG9ySWQpLnZhbHVlLnN0YXRlLnJld2FyZFRva2VuSGVsZEJhY2sKCWludGMgMTMgLy8gMjYwCglpbnRjIDIgLy8gOAoJYnl0ZWMgMCAvLyAgInYiCglmcmFtZV9kaWcgLTEgLy8gdmFsaWRhdG9ySWQ6IFZhbGlkYXRvcklkVHlwZQoJaXRvYgoJY29uY2F0Cgljb3ZlciAyCglib3hfZXh0cmFjdAoJYnRvaQoJZnJhbWVfYnVyeSAxIC8vIHJld2FyZFRva2VuSGVsZEJhY2s6IHVpbnQ2NAoKCS8vIGNvbnRyYWN0cy92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjkxNAoJLy8gYXNzZXJ0KHJld2FyZFRva2VuSWQgIT09IDAsICJ0aGlzIHZhbGlkYXRvciBkb2Vzbid0IGhhdmUgYSByZXdhcmQgdG9rZW4gZGVmaW5lZCIpCglmcmFtZV9kaWcgMCAvLyByZXdhcmRUb2tlbklkOiB1aW50NjQKCWludGMgMCAvLyAwCgkhPQoKCS8vIHRoaXMgdmFsaWRhdG9yIGRvZXNuJ3QgaGF2ZSBhIHJld2FyZCB0b2tlbiBkZWZpbmVkCglhc3NlcnQKCgkvLyBjb250cmFjdHMvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo5MTUKCS8vIHBvb2xPbmVBcHBJZCA9IEFwcElELmZyb21VaW50NjQodGhpcy52YWxpZGF0b3JMaXN0KHZhbGlkYXRvcklkKS52YWx1ZS5wb29sc1swXS5wb29sQXBwSWQpCglpbnRjIDUgLy8gMjY4CglpbnRjIDIgLy8gOAoJYnl0ZWMgMCAvLyAgInYiCglmcmFtZV9kaWcgLTEgLy8gdmFsaWRhdG9ySWQ6IFZhbGlkYXRvcklkVHlwZQoJaXRvYgoJY29uY2F0Cgljb3ZlciAyCglib3hfZXh0cmFjdAoJYnRvaQoJZnJhbWVfYnVyeSAyIC8vIHBvb2xPbmVBcHBJZDogdWludDY0CgoJLy8gY29udHJhY3RzL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6OTE3CgkvLyB0b2tlblJld2FyZEJhbCA9CgkvLyAgICAgICAgICAgICBwb29sT25lQXBwSWQuYWRkcmVzcy5hc3NldEJhbGFuY2UoQXNzZXRJRC5mcm9tVWludDY0KHJld2FyZFRva2VuSWQpKSAtIHJld2FyZFRva2VuSGVsZEJhY2sKCWZyYW1lX2RpZyAyIC8vIHBvb2xPbmVBcHBJZDogdWludDY0CglhcHBfcGFyYW1zX2dldCBBcHBBZGRyZXNzCglwb3AKCWZyYW1lX2RpZyAwIC8vIHJld2FyZFRva2VuSWQ6IHVpbnQ2NAoJYXNzZXRfaG9sZGluZ19nZXQgQXNzZXRCYWxhbmNlCglwb3AKCWZyYW1lX2RpZyAxIC8vIHJld2FyZFRva2VuSGVsZEJhY2s6IHVpbnQ2NAoJLQoJZnJhbWVfYnVyeSAzIC8vIHRva2VuUmV3YXJkQmFsOiB1aW50NjQKCgkvLyBjb250cmFjdHMvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo5MjEKCS8vIHNlbmRNZXRob2RDYWxsPHR5cGVvZiBTdGFraW5nUG9vbC5wcm90b3R5cGUucGF5VG9rZW5SZXdhcmQ+KHsKCS8vICAgICAgICAgICAgIGFwcGxpY2F0aW9uSUQ6IHBvb2xPbmVBcHBJZCwKCS8vICAgICAgICAgICAgIG1ldGhvZEFyZ3M6IFtyZWNlaXZlciwgcmV3YXJkVG9rZW5JZCwgdG9rZW5SZXdhcmRCYWxdLAoJLy8gICAgICAgICB9KQoJaXR4bl9iZWdpbgoJaW50YyA3IC8vICBhcHBsCglpdHhuX2ZpZWxkIFR5cGVFbnVtCglieXRlYyAxMyAvLyAgbWV0aG9kICJwYXlUb2tlblJld2FyZChhZGRyZXNzLHVpbnQ2NCx1aW50NjQpdm9pZCIKCWl0eG5fZmllbGQgQXBwbGljYXRpb25BcmdzCgoJLy8gY29udHJhY3RzL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6OTIyCgkvLyBhcHBsaWNhdGlvbklEOiBwb29sT25lQXBwSWQKCWZyYW1lX2RpZyAyIC8vIHBvb2xPbmVBcHBJZDogdWludDY0CglpdHhuX2ZpZWxkIEFwcGxpY2F0aW9uSUQKCgkvLyBjb250cmFjdHMvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo5MjMKCS8vIG1ldGhvZEFyZ3M6IFtyZWNlaXZlciwgcmV3YXJkVG9rZW5JZCwgdG9rZW5SZXdhcmRCYWxdCglmcmFtZV9kaWcgLTIgLy8gcmVjZWl2ZXI6IEFkZHJlc3MKCWl0eG5fZmllbGQgQXBwbGljYXRpb25BcmdzCglmcmFtZV9kaWcgMCAvLyByZXdhcmRUb2tlbklkOiB1aW50NjQKCWl0b2IKCWl0eG5fZmllbGQgQXBwbGljYXRpb25BcmdzCglmcmFtZV9kaWcgMyAvLyB0b2tlblJld2FyZEJhbDogdWludDY0CglpdG9iCglpdHhuX2ZpZWxkIEFwcGxpY2F0aW9uQXJncwoKCS8vIEZlZSBmaWVsZCBub3Qgc2V0LCBkZWZhdWx0aW5nIHRvIDAKCWludGMgMCAvLyAwCglpdHhuX2ZpZWxkIEZlZQoKCS8vIFN1Ym1pdCBpbm5lciB0cmFuc2FjdGlvbgoJaXR4bl9zdWJtaXQKCgkvLyBjb250cmFjdHMvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo5MjUKCS8vIGFzc2VydCgKCS8vICAgICAgICAgICAgIHBvb2xPbmVBcHBJZC5hZGRyZXNzLmFzc2V0QmFsYW5jZShBc3NldElELmZyb21VaW50NjQocmV3YXJkVG9rZW5JZCkpID09PSByZXdhcmRUb2tlbkhlbGRCYWNrLAoJLy8gICAgICAgICAgICAgJ2JhbGFuY2Ugb2YgcmVtYWluaW5nIHJld2FyZCB0b2tlbnMgc2hvdWxkIG1hdGNoIHRoZSBoZWxkIGJhY2sgYW1vdW50JywKCS8vICAgICAgICAgKQoJZnJhbWVfZGlnIDIgLy8gcG9vbE9uZUFwcElkOiB1aW50NjQKCWFwcF9wYXJhbXNfZ2V0IEFwcEFkZHJlc3MKCXBvcAoJZnJhbWVfZGlnIDAgLy8gcmV3YXJkVG9rZW5JZDogdWludDY0Cglhc3NldF9ob2xkaW5nX2dldCBBc3NldEJhbGFuY2UKCXBvcAoJZnJhbWVfZGlnIDEgLy8gcmV3YXJkVG9rZW5IZWxkQmFjazogdWludDY0Cgk9PQoKCS8vIGJhbGFuY2Ugb2YgcmVtYWluaW5nIHJld2FyZCB0b2tlbnMgc2hvdWxkIG1hdGNoIHRoZSBoZWxkIGJhY2sgYW1vdW50Cglhc3NlcnQKCgkvLyBjb250cmFjdHMvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czo5MjkKCS8vIHJldHVybiB0b2tlblJld2FyZEJhbAoJZnJhbWVfZGlnIDMgLy8gdG9rZW5SZXdhcmRCYWw6IHVpbnQ2NAoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoKCS8vIHBvcCBhbGwgbG9jYWwgdmFyaWFibGVzIGZyb20gdGhlIHN0YWNrCglwb3BuIDMKCXJldHN1YgoKLy8gY2FsbGVyTXVzdEJlT3duZXIodmFsaWRhdG9ySWQ6IFZhbGlkYXRvcklkVHlwZSk6IHZvaWQKY2FsbGVyTXVzdEJlT3duZXI6Cglwcm90byAxIDAKCgkvLyBjb250cmFjdHMvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMDIyCgkvLyBhc3NlcnQoCgkvLyAgICAgICAgICAgICB0aGlzLnR4bi5zZW5kZXIgPT09IHRoaXMudmFsaWRhdG9yTGlzdCh2YWxpZGF0b3JJZCkudmFsdWUuY29uZmlnLm93bmVyLAoJLy8gICAgICAgICAgICAgJ2NhbiBvbmx5IGJlIGNhbGxlZCBieSB2YWxpZGF0b3Igb3duZXInLAoJLy8gICAgICAgICApCgl0eG4gU2VuZGVyCglpbnRjIDIgLy8gOAoJaW50YyA2IC8vIDMyCglieXRlYyAwIC8vICAidiIKCWZyYW1lX2RpZyAtMSAvLyB2YWxpZGF0b3JJZDogVmFsaWRhdG9ySWRUeXBlCglpdG9iCgljb25jYXQKCWNvdmVyIDIKCWJveF9leHRyYWN0Cgk9PQoKCS8vIGNhbiBvbmx5IGJlIGNhbGxlZCBieSB2YWxpZGF0b3Igb3duZXIKCWFzc2VydAoJcmV0c3ViCgovLyBjYWxsZXJNdXN0QmVPd25lck9yTWFuYWdlcih2YWxpZGF0b3JJZDogVmFsaWRhdG9ySWRUeXBlKTogdm9pZApjYWxsZXJNdXN0QmVPd25lck9yTWFuYWdlcjoKCXByb3RvIDEgMAoKCS8vIGNvbnRyYWN0cy92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjEwMjkKCS8vIGFzc2VydCgKCS8vICAgICAgICAgICAgIHRoaXMudHhuLnNlbmRlciA9PT0gdGhpcy52YWxpZGF0b3JMaXN0KHZhbGlkYXRvcklkKS52YWx1ZS5jb25maWcub3duZXIgfHwKCS8vICAgICAgICAgICAgICAgICB0aGlzLnR4bi5zZW5kZXIgPT09IHRoaXMudmFsaWRhdG9yTGlzdCh2YWxpZGF0b3JJZCkudmFsdWUuY29uZmlnLm1hbmFnZXIsCgkvLyAgICAgICAgICAgICAnY2FuIG9ubHkgYmUgY2FsbGVkIGJ5IG93bmVyIG9yIG1hbmFnZXIgb2YgdmFsaWRhdG9yJywKCS8vICAgICAgICAgKQoJdHhuIFNlbmRlcgoJaW50YyAyIC8vIDgKCWludGMgNiAvLyAzMgoJYnl0ZWMgMCAvLyAgInYiCglmcmFtZV9kaWcgLTEgLy8gdmFsaWRhdG9ySWQ6IFZhbGlkYXRvcklkVHlwZQoJaXRvYgoJY29uY2F0Cgljb3ZlciAyCglib3hfZXh0cmFjdAoJPT0KCWR1cAoJYm56ICpza2lwX29yMwoJdHhuIFNlbmRlcgoJaW50YyAyMCAvLyA0MAoJaW50YyA2IC8vIDMyCglieXRlYyAwIC8vICAidiIKCWZyYW1lX2RpZyAtMSAvLyB2YWxpZGF0b3JJZDogVmFsaWRhdG9ySWRUeXBlCglpdG9iCgljb25jYXQKCWNvdmVyIDIKCWJveF9leHRyYWN0Cgk9PQoJfHwKCipza2lwX29yMzoKCS8vIGNhbiBvbmx5IGJlIGNhbGxlZCBieSBvd25lciBvciBtYW5hZ2VyIG9mIHZhbGlkYXRvcgoJYXNzZXJ0CglyZXRzdWIKCi8vIHZlcmlmeVBvb2xLZXlDYWxsZXIocG9vbEtleTogVmFsaWRhdG9yUG9vbEtleSk6IHZvaWQKLy8KLy8gdmVyaWZ5UG9vbEtleUNhbGxlciB2ZXJpZmllcyB0aGUgcGFzc2VkIGluIGtleSAoZnJvbSBhIHN0YWtpbmcgcG9vbCBjYWxsaW5nIHVzIHRvIHVwZGF0ZSBtZXRyaWNzKSBpcyB2YWxpZAovLyBhbmQgbWF0Y2hlcyB0aGUgaW5mb3JtYXRpb24gd2UgaGF2ZSBpbiBvdXIgc3RhdGUuICAnRmFrZScgcG9vbHMgY291bGQgY2FsbCB1cyB0byB1cGRhdGUgb3VyIGRhdGEsIGJ1dCB0aGV5Ci8vIGNhbid0IGZha2UgdGhlIGlkcyBhbmQgbW9zdCBpbXBvcnRhbnRseSBhcHBsaWNhdGlvbiBpZCghKSBvZiB0aGUgY2FsbGVyIHRoYXQgaGFzIHRvIG1hdGNoLgp2ZXJpZnlQb29sS2V5Q2FsbGVyOgoJcHJvdG8gMSAwCgoJLy8gY29udHJhY3RzL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTA0MgoJLy8gYXNzZXJ0KHRoaXMudmFsaWRhdG9yTGlzdChwb29sS2V5LmlkKS5leGlzdHMsICJ0aGUgc3BlY2lmaWVkIHZhbGlkYXRvciBpZCBpc24ndCB2YWxpZCIpCglieXRlYyAwIC8vICAidiIKCWZyYW1lX2RpZyAtMSAvLyBwb29sS2V5OiBWYWxpZGF0b3JQb29sS2V5CglleHRyYWN0IDAgOAoJYnRvaQoJaXRvYgoJY29uY2F0Cglib3hfbGVuCglzd2FwCglwb3AKCgkvLyB0aGUgc3BlY2lmaWVkIHZhbGlkYXRvciBpZCBpc24ndCB2YWxpZAoJYXNzZXJ0CgoJLy8gY29udHJhY3RzL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTA0MwoJLy8gYXNzZXJ0KHBvb2xLZXkucG9vbElkIDw9IE1BWF9QT09MUywgJ3Bvb2wgaWQgbm90IGluIHZhbGlkIHJhbmdlJykKCWZyYW1lX2RpZyAtMSAvLyBwb29sS2V5OiBWYWxpZGF0b3JQb29sS2V5CglleHRyYWN0IDggOAoJYnRvaQoJaW50YyAzIC8vIDI0Cgk8PQoKCS8vIHBvb2wgaWQgbm90IGluIHZhbGlkIHJhbmdlCglhc3NlcnQKCgkvLyBjb250cmFjdHMvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMDQ0CgkvLyBhc3NlcnQoCgkvLyAgICAgICAgICAgICBwb29sS2V5LnBvb2xJZCA+IDAgJiYgKHBvb2xLZXkucG9vbElkIGFzIHVpbnQxNikgPD0gdGhpcy52YWxpZGF0b3JMaXN0KHBvb2xLZXkuaWQpLnZhbHVlLnN0YXRlLm51bVBvb2xzLAoJLy8gICAgICAgICAgICAgJ3Bvb2wgaWQgb3V0c2lkZSBvZiByYW5nZSBvZiBwb29scyBjcmVhdGVkIGZvciB0aGlzIHZhbGlkYXRvcicsCgkvLyAgICAgICAgICkKCWZyYW1lX2RpZyAtMSAvLyBwb29sS2V5OiBWYWxpZGF0b3JQb29sS2V5CglleHRyYWN0IDggOAoJYnRvaQoJaW50YyAwIC8vIDAKCT4KCWR1cAoJYnogKnNraXBfYW5kMwoJZnJhbWVfZGlnIC0xIC8vIHBvb2xLZXk6IFZhbGlkYXRvclBvb2xLZXkKCWV4dHJhY3QgOCA4CglidG9pCglpbnRjIDkgLy8gMjQyCglpbnRjIDEwIC8vIDIKCWJ5dGVjIDAgLy8gICJ2IgoJZnJhbWVfZGlnIC0xIC8vIHBvb2xLZXk6IFZhbGlkYXRvclBvb2xLZXkKCWV4dHJhY3QgMCA4CglidG9pCglpdG9iCgljb25jYXQKCWNvdmVyIDIKCWJveF9leHRyYWN0CglidG9pCgk8PQoJJiYKCipza2lwX2FuZDM6CgkvLyBwb29sIGlkIG91dHNpZGUgb2YgcmFuZ2Ugb2YgcG9vbHMgY3JlYXRlZCBmb3IgdGhpcyB2YWxpZGF0b3IKCWFzc2VydAoKCS8vIGNvbnRyYWN0cy92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjEwNTAKCS8vIGFzc2VydCgKCS8vICAgICAgICAgICAgIHBvb2xLZXkucG9vbEFwcElkID09PSB0aGlzLnZhbGlkYXRvckxpc3QocG9vbEtleS5pZCkudmFsdWUucG9vbHNbcG9vbEtleS5wb29sSWQgLSAxXS5wb29sQXBwSWQsCgkvLyAgICAgICAgICAgICAiVGhlIHBhc3NlZCBpbiBhcHAgaWQgZG9lc24ndCBtYXRjaCB0aGUgcGFzc2VkIGluIGlkcyIsCgkvLyAgICAgICAgICkKCWZyYW1lX2RpZyAtMSAvLyBwb29sS2V5OiBWYWxpZGF0b3JQb29sS2V5CglleHRyYWN0IDE2IDgKCWJ0b2kKCWludGMgNSAvLyAgaGVhZE9mZnNldAoJZnJhbWVfZGlnIC0xIC8vIHBvb2xLZXk6IFZhbGlkYXRvclBvb2xLZXkKCWV4dHJhY3QgOCA4CglidG9pCglpbnRjIDEgLy8gMQoJLQoJaW50YyA0IC8vIDE4CgkqIC8vIGFjYyAqIHR5cGVMZW5ndGgKCSsKCWludGMgMCAvLyAwCgkrCglpbnRjIDIgLy8gOAoJYnl0ZWMgMCAvLyAgInYiCglmcmFtZV9kaWcgLTEgLy8gcG9vbEtleTogVmFsaWRhdG9yUG9vbEtleQoJZXh0cmFjdCAwIDgKCWJ0b2kKCWl0b2IKCWNvbmNhdAoJY292ZXIgMgoJYm94X2V4dHJhY3QKCWJ0b2kKCT09CgoJLy8gVGhlIHBhc3NlZCBpbiBhcHAgaWQgZG9lc24ndCBtYXRjaCB0aGUgcGFzc2VkIGluIGlkcwoJYXNzZXJ0CgoJLy8gY29udHJhY3RzL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTA1NQoJLy8gYXNzZXJ0KHRoaXMudHhuLnNlbmRlciA9PT0gQXBwSUQuZnJvbVVpbnQ2NChwb29sS2V5LnBvb2xBcHBJZCkuYWRkcmVzcykKCXR4biBTZW5kZXIKCWZyYW1lX2RpZyAtMSAvLyBwb29sS2V5OiBWYWxpZGF0b3JQb29sS2V5CglleHRyYWN0IDE2IDgKCWJ0b2kKCWFwcF9wYXJhbXNfZ2V0IEFwcEFkZHJlc3MKCXBvcAoJPT0KCWFzc2VydAoKCS8vIGNvbnRyYWN0cy92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjEwNTcKCS8vIGFzc2VydChwb29sS2V5LmlkID09PSAoQXBwSUQuZnJvbVVpbnQ2NChwb29sS2V5LnBvb2xBcHBJZCkuZ2xvYmFsU3RhdGUoJ3ZhbGlkYXRvcklkJykgYXMgdWludDY0KSkKCWZyYW1lX2RpZyAtMSAvLyBwb29sS2V5OiBWYWxpZGF0b3JQb29sS2V5CglleHRyYWN0IDAgOAoJYnRvaQoJZnJhbWVfZGlnIC0xIC8vIHBvb2xLZXk6IFZhbGlkYXRvclBvb2xLZXkKCWV4dHJhY3QgMTYgOAoJYnRvaQoJcHVzaGJ5dGVzIDB4NzY2MTZjNjk2NDYxNzQ2ZjcyNDk2NCAvLyAidmFsaWRhdG9ySWQiCglhcHBfZ2xvYmFsX2dldF9leAoKCS8vIGdsb2JhbCBzdGF0ZSB2YWx1ZSBkb2VzIG5vdCBleGlzdDogQXBwSUQuZnJvbVVpbnQ2NChwb29sS2V5LnBvb2xBcHBJZCkuZ2xvYmFsU3RhdGUoJ3ZhbGlkYXRvcklkJykKCWFzc2VydAoJPT0KCWFzc2VydAoKCS8vIGNvbnRyYWN0cy92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjEwNTgKCS8vIGFzc2VydChwb29sS2V5LnBvb2xJZCA9PT0gKEFwcElELmZyb21VaW50NjQocG9vbEtleS5wb29sQXBwSWQpLmdsb2JhbFN0YXRlKCdwb29sSWQnKSBhcyB1aW50NjQpKQoJZnJhbWVfZGlnIC0xIC8vIHBvb2xLZXk6IFZhbGlkYXRvclBvb2xLZXkKCWV4dHJhY3QgOCA4CglidG9pCglmcmFtZV9kaWcgLTEgLy8gcG9vbEtleTogVmFsaWRhdG9yUG9vbEtleQoJZXh0cmFjdCAxNiA4CglidG9pCglwdXNoYnl0ZXMgMHg3MDZmNmY2YzQ5NjQgLy8gInBvb2xJZCIKCWFwcF9nbG9iYWxfZ2V0X2V4CgoJLy8gZ2xvYmFsIHN0YXRlIHZhbHVlIGRvZXMgbm90IGV4aXN0OiBBcHBJRC5mcm9tVWludDY0KHBvb2xLZXkucG9vbEFwcElkKS5nbG9iYWxTdGF0ZSgncG9vbElkJykKCWFzc2VydAoJPT0KCWFzc2VydAoJcmV0c3ViCgovLyByZXZlcmlmeU5GRE93bmVyc2hpcCh2YWxpZGF0b3JJZDogVmFsaWRhdG9ySWRUeXBlKTogdm9pZAovLwovLyBUaGlzIG1ldGhvZCB2ZXJpZmllcyB0aGUgb3duZXJzaGlwIG9mIE5GRCAoTmFtZWQgRnVuY3Rpb24gRGF0YSkgYnkgYSB2YWxpZGF0b3IuCi8vIElmIHRoZSBvd25lcnNoaXAgaXMgbm8gbG9uZ2VyIHZhbGlkLCBpdCByZW1vdmVzIHRoZSBORkQgZnJvbSB0aGUgdmFsaWRhdG9yJ3MgY29uZmlndXJhdGlvbi4KLy8KLy8gQHBhcmFtIHtWYWxpZGF0b3JJZFR5cGV9IHZhbGlkYXRvcklkIC0gVGhlIGlkIG9mIHRoZSB2YWxpZGF0b3Igd2hvc2UgZGF0YSBzaG91bGQgYmUgcmUtZXZhbHVhdGVkLgpyZXZlcmlmeU5GRE93bmVyc2hpcDoKCXByb3RvIDEgMAoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlYyAxIC8vIDB4CglkdXAKCgkvLyBjb250cmFjdHMvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMDY4CgkvLyB2YWxpZGF0b3JDb25maWcgPSB0aGlzLnZhbGlkYXRvckxpc3QodmFsaWRhdG9ySWQpLnZhbHVlLmNvbmZpZwoJYnl0ZWMgMCAvLyAgInYiCglmcmFtZV9kaWcgLTEgLy8gdmFsaWRhdG9ySWQ6IFZhbGlkYXRvcklkVHlwZQoJaXRvYgoJY29uY2F0CglmcmFtZV9idXJ5IDAgLy8gc3RvcmFnZSBrZXkvL3ZhbGlkYXRvckNvbmZpZwoKCS8vICppZjMwX2NvbmRpdGlvbgoJLy8gY29udHJhY3RzL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTA2OQoJLy8gdmFsaWRhdG9yQ29uZmlnLm5mZEZvckluZm8gIT09IDAKCWludGMgMjEgLy8gNzIKCWludGMgMiAvLyA4CglieXRlYyAwIC8vICAidiIKCWZyYW1lX2RpZyAtMSAvLyB2YWxpZGF0b3JJZDogVmFsaWRhdG9ySWRUeXBlCglpdG9iCgljb25jYXQKCWNvdmVyIDIKCWJveF9leHRyYWN0CglidG9pCglpbnRjIDAgLy8gMAoJIT0KCWJ6ICppZjMwX2VuZAoKCS8vICppZjMwX2NvbnNlcXVlbnQKCS8vIGNvbnRyYWN0cy92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjEwNzIKCS8vIG5mZE93bmVyID0gQXBwSUQuZnJvbVVpbnQ2NCh2YWxpZGF0b3JDb25maWcubmZkRm9ySW5mbykuZ2xvYmFsU3RhdGUoJ2kub3duZXIuYScpIGFzIEFkZHJlc3MKCWludGMgMjEgLy8gNzIKCWludGMgMiAvLyA4CglieXRlYyAwIC8vICAidiIKCWZyYW1lX2RpZyAtMSAvLyB2YWxpZGF0b3JJZDogVmFsaWRhdG9ySWRUeXBlCglpdG9iCgljb25jYXQKCWNvdmVyIDIKCWJveF9leHRyYWN0CglidG9pCglieXRlYyAxMCAvLyAgImkub3duZXIuYSIKCWFwcF9nbG9iYWxfZ2V0X2V4CgoJLy8gZ2xvYmFsIHN0YXRlIHZhbHVlIGRvZXMgbm90IGV4aXN0OiBBcHBJRC5mcm9tVWludDY0KHZhbGlkYXRvckNvbmZpZy5uZmRGb3JJbmZvKS5nbG9iYWxTdGF0ZSgnaS5vd25lci5hJykKCWFzc2VydAoJZnJhbWVfYnVyeSAxIC8vIG5mZE93bmVyOiBhZGRyZXNzCgoJLy8gKmlmMzFfY29uZGl0aW9uCgkvLyBjb250cmFjdHMvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMDc0CgkvLyB2YWxpZGF0b3JDb25maWcub3duZXIgIT09IG5mZE93bmVyICYmIHZhbGlkYXRvckNvbmZpZy5tYW5hZ2VyICE9PSBuZmRPd25lcgoJaW50YyAyIC8vIDgKCWludGMgNiAvLyAzMgoJYnl0ZWMgMCAvLyAgInYiCglmcmFtZV9kaWcgLTEgLy8gdmFsaWRhdG9ySWQ6IFZhbGlkYXRvcklkVHlwZQoJaXRvYgoJY29uY2F0Cgljb3ZlciAyCglib3hfZXh0cmFjdAoJZnJhbWVfZGlnIDEgLy8gbmZkT3duZXI6IGFkZHJlc3MKCSE9CglkdXAKCWJ6ICpza2lwX2FuZDQKCWludGMgMjAgLy8gNDAKCWludGMgNiAvLyAzMgoJYnl0ZWMgMCAvLyAgInYiCglmcmFtZV9kaWcgLTEgLy8gdmFsaWRhdG9ySWQ6IFZhbGlkYXRvcklkVHlwZQoJaXRvYgoJY29uY2F0Cgljb3ZlciAyCglib3hfZXh0cmFjdAoJZnJhbWVfZGlnIDEgLy8gbmZkT3duZXI6IGFkZHJlc3MKCSE9CgkmJgoKKnNraXBfYW5kNDoKCWJ6ICppZjMxX2VuZAoKCS8vICppZjMxX2NvbnNlcXVlbnQKCS8vIGNvbnRyYWN0cy92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjEwNzYKCS8vIHRoaXMudmFsaWRhdG9yTGlzdCh2YWxpZGF0b3JJZCkudmFsdWUuY29uZmlnLm5mZEZvckluZm8gPSAwCglpbnRjIDIxIC8vIDcyCglieXRlYyA3IC8vIDB4MDAwMDAwMDAwMDAwMDAwMAoJYnl0ZWMgMCAvLyAgInYiCglmcmFtZV9kaWcgLTEgLy8gdmFsaWRhdG9ySWQ6IFZhbGlkYXRvcklkVHlwZQoJaXRvYgoJY29uY2F0Cgljb3ZlciAyCglib3hfcmVwbGFjZQoKKmlmMzFfZW5kOgoKKmlmMzBfZW5kOgoJcmV0c3ViCgovLyB2YWxpZGF0ZUNvbmZpZyhjb25maWc6IFZhbGlkYXRvckNvbmZpZyk6IHZvaWQKdmFsaWRhdGVDb25maWc6Cglwcm90byAxIDAKCgkvLyBjb250cmFjdHMvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMDgzCgkvLyBhc3NlcnQoY29uZmlnLm93bmVyICE9PSBBZGRyZXNzLnplcm9BZGRyZXNzKQoJZnJhbWVfZGlnIC0xIC8vIGNvbmZpZzogVmFsaWRhdG9yQ29uZmlnCglleHRyYWN0IDggMzIKCWdsb2JhbCBaZXJvQWRkcmVzcwoJIT0KCWFzc2VydAoKCS8vIGNvbnRyYWN0cy92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjEwODQKCS8vIGFzc2VydChjb25maWcubWFuYWdlciAhPT0gQWRkcmVzcy56ZXJvQWRkcmVzcykKCWZyYW1lX2RpZyAtMSAvLyBjb25maWc6IFZhbGlkYXRvckNvbmZpZwoJZXh0cmFjdCA0MCAzMgoJZ2xvYmFsIFplcm9BZGRyZXNzCgkhPQoJYXNzZXJ0CgoJLy8gY29udHJhY3RzL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTA4NQoJLy8gYXNzZXJ0KHRoaXMudHhuLnNlbmRlciA9PT0gY29uZmlnLm93bmVyLCAnc2VuZGVyIG11c3QgYmUgb3duZXIgdG8gYWRkIG5ldyB2YWxpZGF0b3InKQoJdHhuIFNlbmRlcgoJZnJhbWVfZGlnIC0xIC8vIGNvbmZpZzogVmFsaWRhdG9yQ29uZmlnCglleHRyYWN0IDggMzIKCT09CgoJLy8gc2VuZGVyIG11c3QgYmUgb3duZXIgdG8gYWRkIG5ldyB2YWxpZGF0b3IKCWFzc2VydAoKCS8vIGNvbnRyYWN0cy92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjEwODcKCS8vIGFzc2VydCgKCS8vICAgICAgICAgICAgIGNvbmZpZy5lbnRyeUdhdGluZ1R5cGUgPj0gR0FUSU5HX1RZUEVfTk9ORSAmJiBjb25maWcuZW50cnlHYXRpbmdUeXBlIDw9IEdBVElOR19UWVBFX0NPTlNUX01BWCwKCS8vICAgICAgICAgICAgICdnYXRpbmcgdHlwZSBub3QgdmFsaWQnLAoJLy8gICAgICAgICApCglmcmFtZV9kaWcgLTEgLy8gY29uZmlnOiBWYWxpZGF0b3JDb25maWcKCWV4dHJhY3QgODAgMQoJYnRvaQoJaW50YyAwIC8vIDAKCT49CglkdXAKCWJ6ICpza2lwX2FuZDUKCWZyYW1lX2RpZyAtMSAvLyBjb25maWc6IFZhbGlkYXRvckNvbmZpZwoJZXh0cmFjdCA4MCAxCglidG9pCglpbnRjIDE1IC8vIDQKCTw9CgkmJgoKKnNraXBfYW5kNToKCS8vIGdhdGluZyB0eXBlIG5vdCB2YWxpZAoJYXNzZXJ0CgoJLy8gY29udHJhY3RzL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTA5MQoJLy8gYXNzZXJ0KAoJLy8gICAgICAgICAgICAgY29uZmlnLmVwb2NoUm91bmRMZW5ndGggPj0gTUlOX0VQT0NIX0xFTkdUSCAmJiBjb25maWcuZXBvY2hSb3VuZExlbmd0aCA8PSBNQVhfRVBPQ0hfTEVOR1RILAoJLy8gICAgICAgICAgICAgJ2Vwb2NoIGxlbmd0aCBub3QgaW4gYWxsb3dhYmxlIHJhbmdlJywKCS8vICAgICAgICAgKQoJZnJhbWVfZGlnIC0xIC8vIGNvbmZpZzogVmFsaWRhdG9yQ29uZmlnCglleHRyYWN0IDE2OSA0CglidG9pCglpbnRjIDEgLy8gMQoJPj0KCWR1cAoJYnogKnNraXBfYW5kNgoJZnJhbWVfZGlnIC0xIC8vIGNvbmZpZzogVmFsaWRhdG9yQ29uZmlnCglleHRyYWN0IDE2OSA0CglidG9pCglpbnRjIDI0IC8vIDEwMDAwMDAKCTw9CgkmJgoKKnNraXBfYW5kNjoKCS8vIGVwb2NoIGxlbmd0aCBub3QgaW4gYWxsb3dhYmxlIHJhbmdlCglhc3NlcnQKCgkvLyBjb250cmFjdHMvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMDk1CgkvLyBhc3NlcnQoCgkvLyAgICAgICAgICAgICBjb25maWcucGVyY2VudFRvVmFsaWRhdG9yID49IE1JTl9QQ1RfVE9fVkFMSURBVE9SICYmIGNvbmZpZy5wZXJjZW50VG9WYWxpZGF0b3IgPD0gTUFYX1BDVF9UT19WQUxJREFUT1IsCgkvLyAgICAgICAgICAgICAnY29tbWlzc2lvbiBwZXJjZW50YWdlIG5vdCB2YWxpZCcsCgkvLyAgICAgICAgICkKCWZyYW1lX2RpZyAtMSAvLyBjb25maWc6IFZhbGlkYXRvckNvbmZpZwoJZXh0cmFjdCAxNzMgNAoJYnRvaQoJaW50YyAwIC8vIDAKCT49CglkdXAKCWJ6ICpza2lwX2FuZDcKCWZyYW1lX2RpZyAtMSAvLyBjb25maWc6IFZhbGlkYXRvckNvbmZpZwoJZXh0cmFjdCAxNzMgNAoJYnRvaQoJaW50YyAyNCAvLyAxMDAwMDAwCgk8PQoJJiYKCipza2lwX2FuZDc6CgkvLyBjb21taXNzaW9uIHBlcmNlbnRhZ2Ugbm90IHZhbGlkCglhc3NlcnQKCgkvLyAqaWYzMl9jb25kaXRpb24KCS8vIGNvbnRyYWN0cy92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjEwOTkKCS8vIGNvbmZpZy5wZXJjZW50VG9WYWxpZGF0b3IgIT09IDAKCWZyYW1lX2RpZyAtMSAvLyBjb25maWc6IFZhbGlkYXRvckNvbmZpZwoJZXh0cmFjdCAxNzMgNAoJYnRvaQoJaW50YyAwIC8vIDAKCSE9CglieiAqaWYzMl9lbmQKCgkvLyAqaWYzMl9jb25zZXF1ZW50CgkvLyBjb250cmFjdHMvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMTAwCgkvLyBhc3NlcnQoCgkvLyAgICAgICAgICAgICAgICAgY29uZmlnLnZhbGlkYXRvckNvbW1pc3Npb25BZGRyZXNzICE9PSBBZGRyZXNzLnplcm9BZGRyZXNzLAoJLy8gICAgICAgICAgICAgICAgICd2YWxpZGF0b3JDb21taXNzaW9uQWRkcmVzcyBtdXN0IGJlIHNldCBpZiBwZXJjZW50IHRvIHZhbGlkYXRvciBpcyBub3QgMCcsCgkvLyAgICAgICAgICAgICApCglmcmFtZV9kaWcgLTEgLy8gY29uZmlnOiBWYWxpZGF0b3JDb25maWcKCWV4dHJhY3QgMTc3IDMyCglnbG9iYWwgWmVyb0FkZHJlc3MKCSE9CgoJLy8gdmFsaWRhdG9yQ29tbWlzc2lvbkFkZHJlc3MgbXVzdCBiZSBzZXQgaWYgcGVyY2VudCB0byB2YWxpZGF0b3IgaXMgbm90IDAKCWFzc2VydAoKKmlmMzJfZW5kOgoJLy8gY29udHJhY3RzL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTEwNQoJLy8gYXNzZXJ0KGNvbmZpZy5taW5FbnRyeVN0YWtlID49IE1JTl9BTEdPX1NUQUtFX1BFUl9QT09MLCAnc3Rha2luZyBwb29sIG11c3QgaGF2ZSBtaW5pbXVtIGVudHJ5IG9mIDEgYWxnbycpCglmcmFtZV9kaWcgLTEgLy8gY29uZmlnOiBWYWxpZGF0b3JDb25maWcKCWV4dHJhY3QgMjA5IDgKCWJ0b2kKCWludGMgMjQgLy8gMTAwMDAwMAoJPj0KCgkvLyBzdGFraW5nIHBvb2wgbXVzdCBoYXZlIG1pbmltdW0gZW50cnkgb2YgMSBhbGdvCglhc3NlcnQKCgkvLyBjb250cmFjdHMvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMTA3CgkvLyBhc3NlcnQoCgkvLyAgICAgICAgICAgICBjb25maWcucG9vbHNQZXJOb2RlID4gMCAmJiBjb25maWcucG9vbHNQZXJOb2RlIDw9IE1BWF9QT09MU19QRVJfTk9ERSwKCS8vICAgICAgICAgICAgICdudW1iZXIgb2YgcG9vbHMgcGVyIG5vZGUgbXVzdCBiZSBiZSBiZXR3ZWVuIDEgYW5kIHRoZSBtYXhpbXVtIGFsbG93ZWQgbnVtYmVyJywKCS8vICAgICAgICAgKQoJZnJhbWVfZGlnIC0xIC8vIGNvbmZpZzogVmFsaWRhdG9yQ29uZmlnCglleHRyYWN0IDIyNSAxCglidG9pCglpbnRjIDAgLy8gMAoJPgoJZHVwCglieiAqc2tpcF9hbmQ4CglmcmFtZV9kaWcgLTEgLy8gY29uZmlnOiBWYWxpZGF0b3JDb25maWcKCWV4dHJhY3QgMjI1IDEKCWJ0b2kKCWludGMgOCAvLyAzCgk8PQoJJiYKCipza2lwX2FuZDg6CgkvLyBudW1iZXIgb2YgcG9vbHMgcGVyIG5vZGUgbXVzdCBiZSBiZSBiZXR3ZWVuIDEgYW5kIHRoZSBtYXhpbXVtIGFsbG93ZWQgbnVtYmVyCglhc3NlcnQKCgkvLyAqaWYzM19jb25kaXRpb24KCS8vIGNvbnRyYWN0cy92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjExMTEKCS8vIGNvbmZpZy5zdW5zZXR0aW5nT24gIT09IDAKCWZyYW1lX2RpZyAtMSAvLyBjb25maWc6IFZhbGlkYXRvckNvbmZpZwoJZXh0cmFjdCAyMjYgOAoJYnRvaQoJaW50YyAwIC8vIDAKCSE9CglieiAqaWYzM19lbmQKCgkvLyAqaWYzM19jb25zZXF1ZW50CgkvLyBjb250cmFjdHMvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMTEyCgkvLyBhc3NlcnQoY29uZmlnLnN1bnNldHRpbmdPbiA+IGdsb2JhbHMubGF0ZXN0VGltZXN0YW1wLCAnc3Vuc2V0dGluZ09uIG11c3QgYmUgbGF0ZXIgdGhhbiBub3cgaWYgc2V0JykKCWZyYW1lX2RpZyAtMSAvLyBjb25maWc6IFZhbGlkYXRvckNvbmZpZwoJZXh0cmFjdCAyMjYgOAoJYnRvaQoJZ2xvYmFsIExhdGVzdFRpbWVzdGFtcAoJPgoKCS8vIHN1bnNldHRpbmdPbiBtdXN0IGJlIGxhdGVyIHRoYW4gbm93IGlmIHNldAoJYXNzZXJ0CgoqaWYzM19lbmQ6CglyZXRzdWIKCi8vIGNhbGxQb29sQWRkU3Rha2Uoc3Rha2VkQW1vdW50UGF5bWVudDogUGF5VHhuLCBwb29sS2V5OiBWYWxpZGF0b3JQb29sS2V5LCBtYnJBbXRQYWlkOiB1aW50NjQsIGlzTmV3U3Rha2VyVG9WYWxpZGF0b3I6IGJvb2xlYW4sIGlzTmV3U3Rha2VyVG9Qcm90b2NvbDogYm9vbGVhbik6IHZvaWQKLy8KLy8gQWRkcyBhIHN0YWtlcnMgYW1vdW50IG9mIGFsZ28gdG8gYSB2YWxpZGF0b3IgcG9vbCwgdHJhbnNmZXJyaW5nIHRoZSBhbGdvIHdlIHJlY2VpdmVkIGZyb20gdGhlbSAoYWxyZWFkeSB2ZXJpZmllZAovLyBieSBvdXIgY2FsbGVyKSB0byB0aGUgc3Rha2luZyBwb29sIGFjY291bnQsIGFuZCB0aGVuIHRlbGxpbmcgaXQgYWJvdXQgdGhlIGFtb3VudCBiZWluZyBhZGRlZCBmb3IgdGhlIHNwZWNpZmllZAovLyBzdGFrZXIuCi8vCi8vIEBwYXJhbSB7UGF5VHhufSBzdGFrZWRBbW91bnRQYXltZW50IC0gcGF5bWVudCBjb21pbmcgZnJvbSBzdGFrZXIgdG8gcGxhY2UgaW50byBhIHBvb2wKLy8gQHBhcmFtIHtWYWxpZGF0b3JQb29sS2V5fSBwb29sS2V5IC0gVGhlIGtleSBvZiB0aGUgdmFsaWRhdG9yIHBvb2wuCi8vIEBwYXJhbSB7dWludDY0fSBtYnJBbXRQYWlkIC0gQW1vdW50IHRoZSB1c2VyIGlzIGxlYXZpbmcgYmVoaW5kIGluIHRoZSB2YWxpZGF0b3IgdG8gcGF5IGZvciB0aGVpciBzdGFrZXIgTUJSIGNvc3QKLy8gQHBhcmFtIHtib29sZWFufSBpc05ld1N0YWtlclRvVmFsaWRhdG9yIC0gaWYgdGhpcyBpcyBhIG5ldywgZmlyc3QtdGltZSBzdGFrZXIgdG8gdGhlIHZhbGlkYXRvcgovLyBAcGFyYW0ge2Jvb2xlYW59IGlzTmV3U3Rha2VyVG9Qcm90b2NvbCAtIGlmIHRoaXMgaXMgYSBuZXcsIGZpcnN0LXRpbWUgc3Rha2VyIHRvIHRoZSBwcm90b2NvbApjYWxsUG9vbEFkZFN0YWtlOgoJcHJvdG8gNSAwCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGVjIDEgLy8gMHgKCWR1cG4gMgoKCS8vIGNvbnRyYWN0cy92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjExMzQKCS8vIHBvb2xBcHBJZCA9IHRoaXMudmFsaWRhdG9yTGlzdChwb29sS2V5LmlkKS52YWx1ZS5wb29sc1twb29sS2V5LnBvb2xJZCAtIDFdLnBvb2xBcHBJZAoJaW50YyA1IC8vICBoZWFkT2Zmc2V0CglmcmFtZV9kaWcgLTIgLy8gcG9vbEtleTogVmFsaWRhdG9yUG9vbEtleQoJZXh0cmFjdCA4IDgKCWJ0b2kKCWludGMgMSAvLyAxCgktCglpbnRjIDQgLy8gMTgKCSogLy8gYWNjICogdHlwZUxlbmd0aAoJKwoJaW50YyAwIC8vIDAKCSsKCWludGMgMiAvLyA4CglieXRlYyAwIC8vICAidiIKCWZyYW1lX2RpZyAtMiAvLyBwb29sS2V5OiBWYWxpZGF0b3JQb29sS2V5CglleHRyYWN0IDAgOAoJYnRvaQoJaXRvYgoJY29uY2F0Cgljb3ZlciAyCglib3hfZXh0cmFjdAoJYnRvaQoJZnJhbWVfYnVyeSAwIC8vIHBvb2xBcHBJZDogdWludDY0CgoJLy8gY29udHJhY3RzL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTEzOAoJLy8gc2VuZE1ldGhvZENhbGw8dHlwZW9mIFN0YWtpbmdQb29sLnByb3RvdHlwZS5hZGRTdGFrZSwgdWludDY0Pih7CgkvLyAgICAgICAgICAgICBhcHBsaWNhdGlvbklEOiBBcHBJRC5mcm9tVWludDY0KHBvb2xBcHBJZCksCgkvLyAgICAgICAgICAgICBtZXRob2RBcmdzOiBbCgkvLyAgICAgICAgICAgICAgICAgLy8gPT09PT09PQoJLy8gICAgICAgICAgICAgICAgIC8vIFRISVMgSVMgQSBTRU5EIG9mIHRoZSBhbW91bnQgcmVjZWl2ZWQgcmlnaHQgYmFjayBvdXQgYW5kIGludG8gdGhlIHN0YWtpbmcgcG9vbCBjb250cmFjdCBhY2NvdW50LgoJLy8gICAgICAgICAgICAgICAgIHsgYW1vdW50OiBzdGFrZWRBbW91bnRQYXltZW50LmFtb3VudCAtIG1ickFtdFBhaWQsIHJlY2VpdmVyOiBBcHBJRC5mcm9tVWludDY0KHBvb2xBcHBJZCkuYWRkcmVzcyB9LAoJLy8gICAgICAgICAgICAgICAgIC8vID09PT09PT0KCS8vICAgICAgICAgICAgICAgICBzdGFrZWRBbW91bnRQYXltZW50LnNlbmRlciwKCS8vICAgICAgICAgICAgIF0sCgkvLyAgICAgICAgIH0pCglpdHhuX2JlZ2luCglpbnRjIDEgLy8gIHBheQoJaXR4bl9maWVsZCBUeXBlRW51bQoKCS8vIGNvbnRyYWN0cy92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjExNDMKCS8vIGFtb3VudDogc3Rha2VkQW1vdW50UGF5bWVudC5hbW91bnQgLSBtYnJBbXRQYWlkCglmcmFtZV9kaWcgLTEgLy8gc3Rha2VkQW1vdW50UGF5bWVudDogUGF5VHhuCglndHhucyBBbW91bnQKCWZyYW1lX2RpZyAtMyAvLyBtYnJBbXRQYWlkOiB1aW50NjQKCS0KCWl0eG5fZmllbGQgQW1vdW50CgoJLy8gY29udHJhY3RzL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTE0MwoJLy8gcmVjZWl2ZXI6IEFwcElELmZyb21VaW50NjQocG9vbEFwcElkKS5hZGRyZXNzCglmcmFtZV9kaWcgMCAvLyBwb29sQXBwSWQ6IHVpbnQ2NAoJYXBwX3BhcmFtc19nZXQgQXBwQWRkcmVzcwoJcG9wCglpdHhuX2ZpZWxkIFJlY2VpdmVyCgoJLy8gRmVlIGZpZWxkIG5vdCBzZXQsIGRlZmF1bHRpbmcgdG8gMAoJaW50YyAwIC8vIDAKCWl0eG5fZmllbGQgRmVlCglpdHhuX25leHQKCWludGMgNyAvLyAgYXBwbAoJaXR4bl9maWVsZCBUeXBlRW51bQoJcHVzaGJ5dGVzIDB4ZjljNzBjYmQgLy8gbWV0aG9kICJhZGRTdGFrZShwYXksYWRkcmVzcyl1aW50NjQiCglpdHhuX2ZpZWxkIEFwcGxpY2F0aW9uQXJncwoKCS8vIGNvbnRyYWN0cy92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjExMzkKCS8vIGFwcGxpY2F0aW9uSUQ6IEFwcElELmZyb21VaW50NjQocG9vbEFwcElkKQoJZnJhbWVfZGlnIDAgLy8gcG9vbEFwcElkOiB1aW50NjQKCWl0eG5fZmllbGQgQXBwbGljYXRpb25JRAoKCS8vIGNvbnRyYWN0cy92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjExNDAKCS8vIG1ldGhvZEFyZ3M6IFsKCS8vICAgICAgICAgICAgICAgICAvLyA9PT09PT09CgkvLyAgICAgICAgICAgICAgICAgLy8gVEhJUyBJUyBBIFNFTkQgb2YgdGhlIGFtb3VudCByZWNlaXZlZCByaWdodCBiYWNrIG91dCBhbmQgaW50byB0aGUgc3Rha2luZyBwb29sIGNvbnRyYWN0IGFjY291bnQuCgkvLyAgICAgICAgICAgICAgICAgeyBhbW91bnQ6IHN0YWtlZEFtb3VudFBheW1lbnQuYW1vdW50IC0gbWJyQW10UGFpZCwgcmVjZWl2ZXI6IEFwcElELmZyb21VaW50NjQocG9vbEFwcElkKS5hZGRyZXNzIH0sCgkvLyAgICAgICAgICAgICAgICAgLy8gPT09PT09PQoJLy8gICAgICAgICAgICAgICAgIHN0YWtlZEFtb3VudFBheW1lbnQuc2VuZGVyLAoJLy8gICAgICAgICAgICAgXQoJZnJhbWVfZGlnIC0xIC8vIHN0YWtlZEFtb3VudFBheW1lbnQ6IFBheVR4bgoJZ3R4bnMgU2VuZGVyCglpdHhuX2ZpZWxkIEFwcGxpY2F0aW9uQXJncwoKCS8vIEZlZSBmaWVsZCBub3Qgc2V0LCBkZWZhdWx0aW5nIHRvIDAKCWludGMgMCAvLyAwCglpdHhuX2ZpZWxkIEZlZQoKCS8vIFN1Ym1pdCBpbm5lciB0cmFuc2FjdGlvbgoJaXR4bl9zdWJtaXQKCWl0eG4gTnVtTG9ncwoJaW50YyAxIC8vIDEKCS0KCWl0eG5hcyBMb2dzCglleHRyYWN0IDQgMAoJYnRvaQoKCS8vICppZjM0X2NvbmRpdGlvbgoJLy8gY29udHJhY3RzL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTE0OAoJLy8gZ2xvYmFscy5vcGNvZGVCdWRnZXQgPCA1MDAKCWdsb2JhbCBPcGNvZGVCdWRnZXQKCXB1c2hpbnQgNTAwCgk8CglieiAqaWYzNF9lbmQKCgkvLyAqaWYzNF9jb25zZXF1ZW50CgkvLyBjb250cmFjdHMvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMTQ5CgkvLyBpbmNyZWFzZU9wY29kZUJ1ZGdldCgpCglpdHhuX2JlZ2luCglpbnRjIDcgLy8gIGFwcGwKCWl0eG5fZmllbGQgVHlwZUVudW0KCWludGMgMCAvLyAwCglpdHhuX2ZpZWxkIEZlZQoJYnl0ZWMgOCAvLyAgI3ByYWdtYSB2ZXJzaW9uIDEwOyBpbnQgMQoJZHVwCglpdHhuX2ZpZWxkIEFwcHJvdmFsUHJvZ3JhbQoJaXR4bl9maWVsZCBDbGVhclN0YXRlUHJvZ3JhbQoJaW50YyAyNiAvLyAgRGVsZXRlQXBwbGljYXRpb24KCWl0eG5fZmllbGQgT25Db21wbGV0aW9uCglpdHhuX3N1Ym1pdAoKKmlmMzRfZW5kOgoJLy8gY29udHJhY3RzL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTE1MwoJLy8gcG9vbE51bVN0YWtlcnMgPSBBcHBJRC5mcm9tVWludDY0KHBvb2xBcHBJZCkuZ2xvYmFsU3RhdGUoJ251bVN0YWtlcnMnKSBhcyB1aW50NjQKCWZyYW1lX2RpZyAwIC8vIHBvb2xBcHBJZDogdWludDY0CglieXRlYyA2IC8vICAibnVtU3Rha2VycyIKCWFwcF9nbG9iYWxfZ2V0X2V4CgoJLy8gZ2xvYmFsIHN0YXRlIHZhbHVlIGRvZXMgbm90IGV4aXN0OiBBcHBJRC5mcm9tVWludDY0KHBvb2xBcHBJZCkuZ2xvYmFsU3RhdGUoJ251bVN0YWtlcnMnKQoJYXNzZXJ0CglmcmFtZV9idXJ5IDEgLy8gcG9vbE51bVN0YWtlcnM6IHVpbnQ2NAoKCS8vIGNvbnRyYWN0cy92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjExNTQKCS8vIHBvb2xBbGdvU3Rha2VkID0gQXBwSUQuZnJvbVVpbnQ2NChwb29sQXBwSWQpLmdsb2JhbFN0YXRlKCdzdGFrZWQnKSBhcyB1aW50NjQKCWZyYW1lX2RpZyAwIC8vIHBvb2xBcHBJZDogdWludDY0CglieXRlYyA0IC8vICAic3Rha2VkIgoJYXBwX2dsb2JhbF9nZXRfZXgKCgkvLyBnbG9iYWwgc3RhdGUgdmFsdWUgZG9lcyBub3QgZXhpc3Q6IEFwcElELmZyb21VaW50NjQocG9vbEFwcElkKS5nbG9iYWxTdGF0ZSgnc3Rha2VkJykKCWFzc2VydAoJZnJhbWVfYnVyeSAyIC8vIHBvb2xBbGdvU3Rha2VkOiB1aW50NjQKCgkvLyBjb250cmFjdHMvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMTU1CgkvLyB0aGlzLnZhbGlkYXRvckxpc3QocG9vbEtleS5pZCkudmFsdWUucG9vbHNbcG9vbEtleS5wb29sSWQgLSAxXS50b3RhbFN0YWtlcnMgPSBwb29sTnVtU3Rha2VycyBhcyB1aW50MTYKCWludGMgNSAvLyAgaGVhZE9mZnNldAoJZnJhbWVfZGlnIC0yIC8vIHBvb2xLZXk6IFZhbGlkYXRvclBvb2xLZXkKCWV4dHJhY3QgOCA4CglidG9pCglpbnRjIDEgLy8gMQoJLQoJaW50YyA0IC8vIDE4CgkqIC8vIGFjYyAqIHR5cGVMZW5ndGgKCSsKCWludGMgMiAvLyAgaGVhZE9mZnNldAoJKwoJZnJhbWVfZGlnIDEgLy8gcG9vbE51bVN0YWtlcnM6IHVpbnQ2NAoJaXRvYgoJZXh0cmFjdCA2IDIKCWJ5dGVjIDAgLy8gICJ2IgoJZnJhbWVfZGlnIC0yIC8vIHBvb2xLZXk6IFZhbGlkYXRvclBvb2xLZXkKCWV4dHJhY3QgMCA4CglidG9pCglpdG9iCgljb25jYXQKCWNvdmVyIDIKCWJveF9yZXBsYWNlCgoJLy8gY29udHJhY3RzL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTE1NgoJLy8gdGhpcy52YWxpZGF0b3JMaXN0KHBvb2xLZXkuaWQpLnZhbHVlLnBvb2xzW3Bvb2xLZXkucG9vbElkIC0gMV0udG90YWxBbGdvU3Rha2VkID0gcG9vbEFsZ29TdGFrZWQKCWludGMgNSAvLyAgaGVhZE9mZnNldAoJZnJhbWVfZGlnIC0yIC8vIHBvb2xLZXk6IFZhbGlkYXRvclBvb2xLZXkKCWV4dHJhY3QgOCA4CglidG9pCglpbnRjIDEgLy8gMQoJLQoJaW50YyA0IC8vIDE4CgkqIC8vIGFjYyAqIHR5cGVMZW5ndGgKCSsKCWludGMgMTEgLy8gIGhlYWRPZmZzZXQKCSsKCWZyYW1lX2RpZyAyIC8vIHBvb2xBbGdvU3Rha2VkOiB1aW50NjQKCWl0b2IKCWJ5dGVjIDAgLy8gICJ2IgoJZnJhbWVfZGlnIC0yIC8vIHBvb2xLZXk6IFZhbGlkYXRvclBvb2xLZXkKCWV4dHJhY3QgMCA4CglidG9pCglpdG9iCgljb25jYXQKCWNvdmVyIDIKCWJveF9yZXBsYWNlCgoJLy8gKmlmMzVfY29uZGl0aW9uCgkvLyBjb250cmFjdHMvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMTU5CgkvLyBpc05ld1N0YWtlclRvVmFsaWRhdG9yCglmcmFtZV9kaWcgLTQgLy8gaXNOZXdTdGFrZXJUb1ZhbGlkYXRvcjogYm9vbGVhbgoJYnogKmlmMzVfZW5kCgoJLy8gKmlmMzVfY29uc2VxdWVudAoJLy8gY29udHJhY3RzL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTE2MAoJLy8gdGhpcy52YWxpZGF0b3JMaXN0KHBvb2xLZXkuaWQpLnZhbHVlLnN0YXRlLnRvdGFsU3Rha2VycyArPSAxCglpbnRjIDIzIC8vIDI0NAoJZHVwCglpbnRjIDIgLy8gOAoJYnl0ZWMgMCAvLyAgInYiCglmcmFtZV9kaWcgLTIgLy8gcG9vbEtleTogVmFsaWRhdG9yUG9vbEtleQoJZXh0cmFjdCAwIDgKCWJ0b2kKCWl0b2IKCWNvbmNhdAoJY292ZXIgMgoJYm94X2V4dHJhY3QKCWJ0b2kKCWludGMgMSAvLyAxCgkrCglpdG9iCglieXRlYyAwIC8vICAidiIKCWZyYW1lX2RpZyAtMiAvLyBwb29sS2V5OiBWYWxpZGF0b3JQb29sS2V5CglleHRyYWN0IDAgOAoJYnRvaQoJaXRvYgoJY29uY2F0Cgljb3ZlciAyCglib3hfcmVwbGFjZQoKKmlmMzVfZW5kOgoJLy8gKmlmMzZfY29uZGl0aW9uCgkvLyBjb250cmFjdHMvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMTYyCgkvLyBpc05ld1N0YWtlclRvUHJvdG9jb2wKCWZyYW1lX2RpZyAtNSAvLyBpc05ld1N0YWtlclRvUHJvdG9jb2w6IGJvb2xlYW4KCWJ6ICppZjM2X2VuZAoKCS8vICppZjM2X2NvbnNlcXVlbnQKCS8vIGNvbnRyYWN0cy92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjExNjMKCS8vIHRoaXMubnVtU3Rha2Vycy52YWx1ZSArPSAxCglieXRlYyA2IC8vICAibnVtU3Rha2VycyIKCWFwcF9nbG9iYWxfZ2V0CglpbnRjIDEgLy8gMQoJKwoJYnl0ZWMgNiAvLyAgIm51bVN0YWtlcnMiCglzd2FwCglhcHBfZ2xvYmFsX3B1dAoKKmlmMzZfZW5kOgoJLy8gY29udHJhY3RzL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTE2NQoJLy8gdGhpcy52YWxpZGF0b3JMaXN0KHBvb2xLZXkuaWQpLnZhbHVlLnN0YXRlLnRvdGFsQWxnb1N0YWtlZCArPSBzdGFrZWRBbW91bnRQYXltZW50LmFtb3VudCAtIG1ickFtdFBhaWQKCWludGMgMTIgLy8gMjUyCglkdXAKCWludGMgMiAvLyA4CglieXRlYyAwIC8vICAidiIKCWZyYW1lX2RpZyAtMiAvLyBwb29sS2V5OiBWYWxpZGF0b3JQb29sS2V5CglleHRyYWN0IDAgOAoJYnRvaQoJaXRvYgoJY29uY2F0Cgljb3ZlciAyCglib3hfZXh0cmFjdAoJYnRvaQoJZnJhbWVfZGlnIC0xIC8vIHN0YWtlZEFtb3VudFBheW1lbnQ6IFBheVR4bgoJZ3R4bnMgQW1vdW50CglmcmFtZV9kaWcgLTMgLy8gbWJyQW10UGFpZDogdWludDY0CgktCgkrCglpdG9iCglieXRlYyAwIC8vICAidiIKCWZyYW1lX2RpZyAtMiAvLyBwb29sS2V5OiBWYWxpZGF0b3JQb29sS2V5CglleHRyYWN0IDAgOAoJYnRvaQoJaXRvYgoJY29uY2F0Cgljb3ZlciAyCglib3hfcmVwbGFjZQoKCS8vIGNvbnRyYWN0cy92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjExNjYKCS8vIHRoaXMudG90YWxBbGdvU3Rha2VkLnZhbHVlICs9IHN0YWtlZEFtb3VudFBheW1lbnQuYW1vdW50IC0gbWJyQW10UGFpZAoJYnl0ZWMgNCAvLyAgInN0YWtlZCIKCWFwcF9nbG9iYWxfZ2V0CglmcmFtZV9kaWcgLTEgLy8gc3Rha2VkQW1vdW50UGF5bWVudDogUGF5VHhuCglndHhucyBBbW91bnQKCWZyYW1lX2RpZyAtMyAvLyBtYnJBbXRQYWlkOiB1aW50NjQKCS0KCSsKCWJ5dGVjIDQgLy8gICJzdGFrZWQiCglzd2FwCglhcHBfZ2xvYmFsX3B1dAoJcmV0c3ViCgovLyB1cGRhdGVTdGFrZXJQb29sU2V0KHN0YWtlcjogQWRkcmVzcywgcG9vbEtleTogVmFsaWRhdG9yUG9vbEtleSk6IHZvaWQKdXBkYXRlU3Rha2VyUG9vbFNldDoKCXByb3RvIDIgMAoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlYyAxIC8vIDB4CglkdXBuIDIKCgkvLyBjb250cmFjdHMvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMTcwCgkvLyBhc3NlcnQodGhpcy5zdGFrZXJQb29sU2V0KHN0YWtlcikuZXhpc3RzKQoJYnl0ZWMgMyAvLyAgInNwcyIKCWZyYW1lX2RpZyAtMSAvLyBzdGFrZXI6IEFkZHJlc3MKCWNvbmNhdAoJYm94X2xlbgoJc3dhcAoJcG9wCglhc3NlcnQKCgkvLyBjb250cmFjdHMvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMTcyCgkvLyBwb29sU2V0ID0gY2xvbmUodGhpcy5zdGFrZXJQb29sU2V0KHN0YWtlcikudmFsdWUpCglieXRlYyAzIC8vICAic3BzIgoJZnJhbWVfZGlnIC0xIC8vIHN0YWtlcjogQWRkcmVzcwoJY29uY2F0Cglib3hfZ2V0CgoJLy8gYm94IHZhbHVlIGRvZXMgbm90IGV4aXN0OiB0aGlzLnN0YWtlclBvb2xTZXQoc3Rha2VyKS52YWx1ZQoJYXNzZXJ0CglmcmFtZV9idXJ5IDAgLy8gcG9vbFNldDogKHVpbnQ2NCx1aW50NjQsdWludDY0KVs2XQoKCS8vIGNvbnRyYWN0cy92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjExNzMKCS8vIGZpcnN0RW1wdHkgPSAwCglpbnRjIDAgLy8gMAoJZnJhbWVfYnVyeSAxIC8vIGZpcnN0RW1wdHk6IHVpbnQ2NAoKCS8vIGNvbnRyYWN0cy92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjExNzQKCS8vIGZvciAobGV0IGkgPSAwOyBpIDwgdGhpcy5zdGFrZXJQb29sU2V0KHN0YWtlcikudmFsdWUubGVuZ3RoOyBpICs9IDEpCglpbnRjIDAgLy8gMAoJZnJhbWVfYnVyeSAyIC8vIGk6IHVpbnQ2NAoKKmZvcl83OgoJLy8gY29udHJhY3RzL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTE3NAoJLy8gaSA8IHRoaXMuc3Rha2VyUG9vbFNldChzdGFrZXIpLnZhbHVlLmxlbmd0aAoJZnJhbWVfZGlnIDIgLy8gaTogdWludDY0CglpbnRjIDcgLy8gNgoJPAoJYnogKmZvcl83X2VuZAoKCS8vICppZjM3X2NvbmRpdGlvbgoJLy8gY29udHJhY3RzL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTE3NQoJLy8gcG9vbFNldFtpXSA9PT0gcG9vbEtleQoJZnJhbWVfZGlnIDAgLy8gcG9vbFNldDogKHVpbnQ2NCx1aW50NjQsdWludDY0KVs2XQoJZnJhbWVfZGlnIDIgLy8gaTogdWludDY0CglpbnRjIDMgLy8gMjQKCSogLy8gYWNjICogdHlwZUxlbmd0aAoJaW50YyAzIC8vIDI0CglleHRyYWN0MwoJZnJhbWVfZGlnIC0yIC8vIHBvb2xLZXk6IFZhbGlkYXRvclBvb2xLZXkKCT09CglieiAqaWYzN19lbmQKCgkvLyAqaWYzN19jb25zZXF1ZW50CgkvLyBjb250cmFjdHMvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMTc3CgkvLyByZXR1cm4KCXJldHN1YgoKKmlmMzdfZW5kOgoJLy8gKmlmMzhfY29uZGl0aW9uCgkvLyBjb250cmFjdHMvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMTc5CgkvLyBmaXJzdEVtcHR5ID09PSAwICYmIHBvb2xTZXRbaV0uaWQgPT09IDAKCWZyYW1lX2RpZyAxIC8vIGZpcnN0RW1wdHk6IHVpbnQ2NAoJaW50YyAwIC8vIDAKCT09CglkdXAKCWJ6ICpza2lwX2FuZDkKCWZyYW1lX2RpZyAwIC8vIHBvb2xTZXQ6ICh1aW50NjQsdWludDY0LHVpbnQ2NClbNl0KCWZyYW1lX2RpZyAyIC8vIGk6IHVpbnQ2NAoJaW50YyAzIC8vIDI0CgkqIC8vIGFjYyAqIHR5cGVMZW5ndGgKCWludGMgMCAvLyAwCgkrCglpbnRjIDIgLy8gOAoJZXh0cmFjdDMKCWJ0b2kKCWludGMgMCAvLyAwCgk9PQoJJiYKCipza2lwX2FuZDk6CglieiAqaWYzOF9lbmQKCgkvLyAqaWYzOF9jb25zZXF1ZW50CgkvLyBjb250cmFjdHMvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMTgwCgkvLyBmaXJzdEVtcHR5ID0gaSArIDEKCWZyYW1lX2RpZyAyIC8vIGk6IHVpbnQ2NAoJaW50YyAxIC8vIDEKCSsKCWZyYW1lX2J1cnkgMSAvLyBmaXJzdEVtcHR5OiB1aW50NjQKCippZjM4X2VuZDoKCipmb3JfN19jb250aW51ZToKCS8vIGNvbnRyYWN0cy92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjExNzQKCS8vIGkgKz0gMQoJZnJhbWVfZGlnIDIgLy8gaTogdWludDY0CglpbnRjIDEgLy8gMQoJKwoJZnJhbWVfYnVyeSAyIC8vIGk6IHVpbnQ2NAoJYiAqZm9yXzcKCipmb3JfN19lbmQ6CgkvLyAqaWYzOV9jb25kaXRpb24KCS8vIGNvbnRyYWN0cy92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjExODMKCS8vIGZpcnN0RW1wdHkgPT09IDAKCWZyYW1lX2RpZyAxIC8vIGZpcnN0RW1wdHk6IHVpbnQ2NAoJaW50YyAwIC8vIDAKCT09CglieiAqaWYzOV9lbmQKCgkvLyAqaWYzOV9jb25zZXF1ZW50CgkvLyBObyBlbXB0eSBzbG90IGF2YWlsYWJsZSBpbiB0aGUgc3Rha2VyIHBvb2wgc2V0CgllcnIKCippZjM5X2VuZDoKCS8vIGNvbnRyYWN0cy92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjExODYKCS8vIHRoaXMuc3Rha2VyUG9vbFNldChzdGFrZXIpLnZhbHVlW2ZpcnN0RW1wdHkgLSAxXSA9IHBvb2xLZXkKCWZyYW1lX2RpZyAxIC8vIGZpcnN0RW1wdHk6IHVpbnQ2NAoJaW50YyAxIC8vIDEKCS0KCWludGMgMyAvLyAyNAoJKiAvLyBhY2MgKiB0eXBlTGVuZ3RoCglmcmFtZV9kaWcgLTIgLy8gcG9vbEtleTogVmFsaWRhdG9yUG9vbEtleQoJYnl0ZWMgMyAvLyAgInNwcyIKCWZyYW1lX2RpZyAtMSAvLyBzdGFrZXI6IEFkZHJlc3MKCWNvbmNhdAoJY292ZXIgMgoJYm94X3JlcGxhY2UKCXJldHN1YgoKLy8gcmVtb3ZlRnJvbVN0YWtlclBvb2xTZXQoc3Rha2VyOiBBZGRyZXNzLCBwb29sS2V5OiBWYWxpZGF0b3JQb29sS2V5KTogW2Jvb2xlYW4sIGJvb2xlYW5dCi8vCi8vIFJlbW92ZXMgYSBwb29sIGtleSBmcm9tIHRoZSBzdGFrZXIncyBhY3RpdmUgcG9vbCBzZXQgLSBmYWlscyBpZiBub3QgZm91bmQgKCEpCi8vCi8vIEBwYXJhbSB7QWRkcmVzc30gc3Rha2VyIC0gVGhlIGFkZHJlc3Mgb2YgdGhlIHN0YWtlci4KLy8gQHBhcmFtIHtWYWxpZGF0b3JQb29sS2V5fSBwb29sS2V5IC0gVGhlIHBvb2wga2V5IHRoZXkgc2hvdWxkIGJlIHN0b3JlZCBpbgovLwovLyBAcmV0dXJuIFtib29sZWFuLCBib29sZWFuXSBbaXMgdGhlIHN0YWtlciBnb25lIGZyb20gQUxMIHBvb2xzIG9mIHRoZSBnaXZlbiBWQUxJREFUT1IsIGFuZCBpcyBzdGFrZXIgZ29uZSBmcm9tIEFMTCBwb29sc10KcmVtb3ZlRnJvbVN0YWtlclBvb2xTZXQ6Cglwcm90byAyIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZWMgMSAvLyAweAoJZHVwbiA0CgoJLy8gY29udHJhY3RzL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTE5OQoJLy8gaW5TYW1lVmFsaWRhdG9yUG9vbENvdW50ID0gMAoJaW50YyAwIC8vIDAKCWZyYW1lX2J1cnkgMCAvLyBpblNhbWVWYWxpZGF0b3JQb29sQ291bnQ6IHVpbnQ2NAoKCS8vIGNvbnRyYWN0cy92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjEyMDAKCS8vIGluQW55UG9vbENvdW50ID0gMAoJaW50YyAwIC8vIDAKCWZyYW1lX2J1cnkgMSAvLyBpbkFueVBvb2xDb3VudDogdWludDY0CgoJLy8gY29udHJhY3RzL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTIwMQoJLy8gZm91bmQgPSBmYWxzZQoJaW50YyAwIC8vIDAKCWZyYW1lX2J1cnkgMiAvLyBmb3VuZDogYm9vbAoKCS8vIGNvbnRyYWN0cy92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjEyMDMKCS8vIHBvb2xTZXQgPSBjbG9uZSh0aGlzLnN0YWtlclBvb2xTZXQoc3Rha2VyKS52YWx1ZSkKCWJ5dGVjIDMgLy8gICJzcHMiCglmcmFtZV9kaWcgLTEgLy8gc3Rha2VyOiBBZGRyZXNzCgljb25jYXQKCWJveF9nZXQKCgkvLyBib3ggdmFsdWUgZG9lcyBub3QgZXhpc3Q6IHRoaXMuc3Rha2VyUG9vbFNldChzdGFrZXIpLnZhbHVlCglhc3NlcnQKCWZyYW1lX2J1cnkgMyAvLyBwb29sU2V0OiAodWludDY0LHVpbnQ2NCx1aW50NjQpWzZdCgoJLy8gY29udHJhY3RzL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTIwNAoJLy8gZm9yIChsZXQgaSA9IDA7IGkgPCB0aGlzLnN0YWtlclBvb2xTZXQoc3Rha2VyKS52YWx1ZS5sZW5ndGg7IGkgKz0gMSkKCWludGMgMCAvLyAwCglmcmFtZV9idXJ5IDQgLy8gaTogdWludDY0CgoqZm9yXzg6CgkvLyBjb250cmFjdHMvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMjA0CgkvLyBpIDwgdGhpcy5zdGFrZXJQb29sU2V0KHN0YWtlcikudmFsdWUubGVuZ3RoCglmcmFtZV9kaWcgNCAvLyBpOiB1aW50NjQKCWludGMgNyAvLyA2Cgk8CglieiAqZm9yXzhfZW5kCgoJLy8gKmlmNDBfY29uZGl0aW9uCgkvLyBjb250cmFjdHMvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMjA1CgkvLyBwb29sU2V0W2ldLmlkID09PSAwCglmcmFtZV9kaWcgMyAvLyBwb29sU2V0OiAodWludDY0LHVpbnQ2NCx1aW50NjQpWzZdCglmcmFtZV9kaWcgNCAvLyBpOiB1aW50NjQKCWludGMgMyAvLyAyNAoJKiAvLyBhY2MgKiB0eXBlTGVuZ3RoCglpbnRjIDAgLy8gMAoJKwoJaW50YyAyIC8vIDgKCWV4dHJhY3QzCglidG9pCglpbnRjIDAgLy8gMAoJPT0KCWJ6ICppZjQwX2VuZAoKCS8vICppZjQwX2NvbnNlcXVlbnQKCWIgKmZvcl84X2NvbnRpbnVlCgoqaWY0MF9lbmQ6CgkvLyBjb250cmFjdHMvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMjA4CgkvLyBpbkFueVBvb2xDb3VudCArPSAxCglmcmFtZV9kaWcgMSAvLyBpbkFueVBvb2xDb3VudDogdWludDY0CglpbnRjIDEgLy8gMQoJKwoJZnJhbWVfYnVyeSAxIC8vIGluQW55UG9vbENvdW50OiB1aW50NjQKCgkvLyAqaWY0MV9jb25kaXRpb24KCS8vIGNvbnRyYWN0cy92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjEyMDkKCS8vIHBvb2xTZXRbaV0uaWQgPT09IHBvb2xLZXkuaWQKCWZyYW1lX2RpZyAzIC8vIHBvb2xTZXQ6ICh1aW50NjQsdWludDY0LHVpbnQ2NClbNl0KCWZyYW1lX2RpZyA0IC8vIGk6IHVpbnQ2NAoJaW50YyAzIC8vIDI0CgkqIC8vIGFjYyAqIHR5cGVMZW5ndGgKCWludGMgMCAvLyAwCgkrCglpbnRjIDIgLy8gOAoJZXh0cmFjdDMKCWJ0b2kKCWZyYW1lX2RpZyAtMiAvLyBwb29sS2V5OiBWYWxpZGF0b3JQb29sS2V5CglleHRyYWN0IDAgOAoJYnRvaQoJPT0KCWJ6ICppZjQxX2VuZAoKCS8vICppZjQxX2NvbnNlcXVlbnQKCS8vICppZjQyX2NvbmRpdGlvbgoJLy8gY29udHJhY3RzL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTIxMAoJLy8gcG9vbFNldFtpXSA9PT0gcG9vbEtleQoJZnJhbWVfZGlnIDMgLy8gcG9vbFNldDogKHVpbnQ2NCx1aW50NjQsdWludDY0KVs2XQoJZnJhbWVfZGlnIDQgLy8gaTogdWludDY0CglpbnRjIDMgLy8gMjQKCSogLy8gYWNjICogdHlwZUxlbmd0aAoJaW50YyAzIC8vIDI0CglleHRyYWN0MwoJZnJhbWVfZGlnIC0yIC8vIHBvb2xLZXk6IFZhbGlkYXRvclBvb2xLZXkKCT09CglieiAqaWY0Ml9lbHNlCgoJLy8gKmlmNDJfY29uc2VxdWVudAoJLy8gY29udHJhY3RzL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTIxMQoJLy8gZm91bmQgPSB0cnVlCglpbnRjIDEgLy8gMQoJZnJhbWVfYnVyeSAyIC8vIGZvdW5kOiBib29sCgoJLy8gY29udHJhY3RzL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTIxMwoJLy8gdGhpcy5zdGFrZXJQb29sU2V0KHN0YWtlcikudmFsdWVbaV0gPSB7IGlkOiAwLCBwb29sSWQ6IDAsIHBvb2xBcHBJZDogMCB9CglmcmFtZV9kaWcgNCAvLyBpOiB1aW50NjQKCWludGMgMyAvLyAyNAoJKiAvLyBhY2MgKiB0eXBlTGVuZ3RoCglwdXNoYnl0ZXMgMHgwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKCWJ5dGVjIDMgLy8gICJzcHMiCglmcmFtZV9kaWcgLTEgLy8gc3Rha2VyOiBBZGRyZXNzCgljb25jYXQKCWNvdmVyIDIKCWJveF9yZXBsYWNlCgliICppZjQyX2VuZAoKKmlmNDJfZWxzZToKCS8vIGNvbnRyYWN0cy92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjEyMTUKCS8vIGluU2FtZVZhbGlkYXRvclBvb2xDb3VudCArPSAxCglmcmFtZV9kaWcgMCAvLyBpblNhbWVWYWxpZGF0b3JQb29sQ291bnQ6IHVpbnQ2NAoJaW50YyAxIC8vIDEKCSsKCWZyYW1lX2J1cnkgMCAvLyBpblNhbWVWYWxpZGF0b3JQb29sQ291bnQ6IHVpbnQ2NAoKKmlmNDJfZW5kOgoKKmlmNDFfZW5kOgoKKmZvcl84X2NvbnRpbnVlOgoJLy8gY29udHJhY3RzL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTIwNAoJLy8gaSArPSAxCglmcmFtZV9kaWcgNCAvLyBpOiB1aW50NjQKCWludGMgMSAvLyAxCgkrCglmcmFtZV9idXJ5IDQgLy8gaTogdWludDY0CgliICpmb3JfOAoKKmZvcl84X2VuZDoKCS8vICppZjQzX2NvbmRpdGlvbgoJLy8gY29udHJhY3RzL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTIxOQoJLy8gIWZvdW5kCglmcmFtZV9kaWcgMiAvLyBmb3VuZDogYm9vbAoJIQoJYnogKmlmNDNfZW5kCgoJLy8gKmlmNDNfY29uc2VxdWVudAoJLy8gTm8gbWF0Y2hpbmcgc2xvdCBmb3VuZCB3aGVuIHRvbGQgdG8gcmVtb3ZlIGEgcG9vbCBmcm9tIHRoZSBzdGFrZXJzIHNldAoJZXJyCgoqaWY0M19lbmQ6CgkvLyBjb250cmFjdHMvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMjIzCgkvLyByZXR1cm4gW2luU2FtZVZhbGlkYXRvclBvb2xDb3VudCA9PT0gMCwgaW5BbnlQb29sQ291bnQgPT09IDBdCglieXRlYyA1IC8vIDB4MDAKCWludGMgMCAvLyAwCglmcmFtZV9kaWcgMCAvLyBpblNhbWVWYWxpZGF0b3JQb29sQ291bnQ6IHVpbnQ2NAoJaW50YyAwIC8vIDAKCT09CglzZXRiaXQKCWludGMgMSAvLyAxCglmcmFtZV9kaWcgMSAvLyBpbkFueVBvb2xDb3VudDogdWludDY0CglpbnRjIDAgLy8gMAoJPT0KCXNldGJpdAoKCS8vIHNldCB0aGUgc3Vicm91dGluZSByZXR1cm4gdmFsdWUKCWZyYW1lX2J1cnkgMAoKCS8vIHBvcCBhbGwgbG9jYWwgdmFyaWFibGVzIGZyb20gdGhlIHN0YWNrCglwb3BuIDQKCXJldHN1YgoKLy8gYWRkUG9vbFRvTm9kZSh2YWxpZGF0b3JJZDogVmFsaWRhdG9ySWRUeXBlLCBwb29sQXBwSWQ6IHVpbnQ2NCwgbm9kZU51bTogdWludDY0KTogdm9pZAphZGRQb29sVG9Ob2RlOgoJcHJvdG8gMyAwCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGVjIDEgLy8gMHgKCWR1cG4gMgoKCS8vIGNvbnRyYWN0cy92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjEyMjcKCS8vIG5vZGVQb29sQXNzaWdubWVudHMgPSBjbG9uZSh0aGlzLnZhbGlkYXRvckxpc3QodmFsaWRhdG9ySWQpLnZhbHVlLm5vZGVQb29sQXNzaWdubWVudHMpCglpbnRjIDE3IC8vICBoZWFkT2Zmc2V0CglpbnRjIDIyIC8vIDE5MgoJYnl0ZWMgMCAvLyAgInYiCglmcmFtZV9kaWcgLTEgLy8gdmFsaWRhdG9ySWQ6IFZhbGlkYXRvcklkVHlwZQoJaXRvYgoJY29uY2F0Cgljb3ZlciAyCglib3hfZXh0cmFjdAoJZnJhbWVfYnVyeSAwIC8vIG5vZGVQb29sQXNzaWdubWVudHM6ICgodWludDY0WzNdKVs4XSkKCgkvLyBjb250cmFjdHMvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMjI4CgkvLyBtYXhQb29sc1Blck5vZGVGb3JUaGlzVmFsaWRhdG9yID0gdGhpcy52YWxpZGF0b3JMaXN0KHZhbGlkYXRvcklkKS52YWx1ZS5jb25maWcucG9vbHNQZXJOb2RlIGFzIHVpbnQ2NAoJcHVzaGludCAyMjUKCWludGMgMSAvLyAxCglieXRlYyAwIC8vICAidiIKCWZyYW1lX2RpZyAtMSAvLyB2YWxpZGF0b3JJZDogVmFsaWRhdG9ySWRUeXBlCglpdG9iCgljb25jYXQKCWNvdmVyIDIKCWJveF9leHRyYWN0CglidG9pCglmcmFtZV9idXJ5IDEgLy8gbWF4UG9vbHNQZXJOb2RlRm9yVGhpc1ZhbGlkYXRvcjogdWludDY0CgoJLy8gY29udHJhY3RzL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTIzMAoJLy8gYXNzZXJ0KG5vZGVOdW0gPj0gMSAmJiBub2RlTnVtIDw9IE1BWF9OT0RFUywgJ25vZGUgbnVtYmVyIG5vdCBpbiB2YWxpZCByYW5nZScpCglmcmFtZV9kaWcgLTMgLy8gbm9kZU51bTogdWludDY0CglpbnRjIDEgLy8gMQoJPj0KCWR1cAoJYnogKnNraXBfYW5kMTAKCWZyYW1lX2RpZyAtMyAvLyBub2RlTnVtOiB1aW50NjQKCWludGMgMiAvLyA4Cgk8PQoJJiYKCipza2lwX2FuZDEwOgoJLy8gbm9kZSBudW1iZXIgbm90IGluIHZhbGlkIHJhbmdlCglhc3NlcnQKCgkvLyBjb250cmFjdHMvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMjMyCgkvLyBmb3IgKGxldCBpID0gMDsgaSA8IG1heFBvb2xzUGVyTm9kZUZvclRoaXNWYWxpZGF0b3I7IGkgKz0gMSkKCWludGMgMCAvLyAwCglmcmFtZV9idXJ5IDIgLy8gaTogdWludDY0CgoqZm9yXzk6CgkvLyBjb250cmFjdHMvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMjMyCgkvLyBpIDwgbWF4UG9vbHNQZXJOb2RlRm9yVGhpc1ZhbGlkYXRvcgoJZnJhbWVfZGlnIDIgLy8gaTogdWludDY0CglmcmFtZV9kaWcgMSAvLyBtYXhQb29sc1Blck5vZGVGb3JUaGlzVmFsaWRhdG9yOiB1aW50NjQKCTwKCWJ6ICpmb3JfOV9lbmQKCgkvLyAqaWY0NF9jb25kaXRpb24KCS8vIGNvbnRyYWN0cy92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjEyMzMKCS8vIG5vZGVQb29sQXNzaWdubWVudHMubm9kZXNbbm9kZU51bSAtIDFdLnBvb2xBcHBJZHNbaV0gPT09IDAKCWZyYW1lX2RpZyAwIC8vIG5vZGVQb29sQXNzaWdubWVudHM6ICgodWludDY0WzNdKVs4XSkKCWludGMgMCAvLyAwCglmcmFtZV9kaWcgLTMgLy8gbm9kZU51bTogdWludDY0CglpbnRjIDEgLy8gMQoJLQoJaW50YyAzIC8vIDI0CgkqIC8vIGFjYyAqIHR5cGVMZW5ndGgKCSsKCWludGMgMCAvLyAwCgkrCglmcmFtZV9kaWcgMiAvLyBpOiB1aW50NjQKCWludGMgMiAvLyA4CgkqIC8vIGFjYyAqIHR5cGVMZW5ndGgKCSsKCWludGMgMiAvLyA4CglleHRyYWN0MwoJYnRvaQoJaW50YyAwIC8vIDAKCT09CglieiAqaWY0NF9lbmQKCgkvLyAqaWY0NF9jb25zZXF1ZW50CgkvLyBjb250cmFjdHMvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMjM1CgkvLyB0aGlzLnZhbGlkYXRvckxpc3QodmFsaWRhdG9ySWQpLnZhbHVlLm5vZGVQb29sQXNzaWdubWVudHMubm9kZXNbbm9kZU51bSAtIDFdLnBvb2xBcHBJZHNbaV0gPSBwb29sQXBwSWQKCWludGMgMTcgLy8gOTAwCglmcmFtZV9kaWcgLTMgLy8gbm9kZU51bTogdWludDY0CglpbnRjIDEgLy8gMQoJLQoJaW50YyAzIC8vIDI0CgkqIC8vIGFjYyAqIHR5cGVMZW5ndGgKCSsKCWludGMgMCAvLyAwCgkrCglmcmFtZV9kaWcgMiAvLyBpOiB1aW50NjQKCWludGMgMiAvLyA4CgkqIC8vIGFjYyAqIHR5cGVMZW5ndGgKCSsKCWZyYW1lX2RpZyAtMiAvLyBwb29sQXBwSWQ6IHVpbnQ2NAoJaXRvYgoJYnl0ZWMgMCAvLyAgInYiCglmcmFtZV9kaWcgLTEgLy8gdmFsaWRhdG9ySWQ6IFZhbGlkYXRvcklkVHlwZQoJaXRvYgoJY29uY2F0Cgljb3ZlciAyCglib3hfcmVwbGFjZQoKCS8vIGNvbnRyYWN0cy92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjEyMzYKCS8vIHJldHVybgoJcmV0c3ViCgoqaWY0NF9lbmQ6CgoqZm9yXzlfY29udGludWU6CgkvLyBjb250cmFjdHMvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMjMyCgkvLyBpICs9IDEKCWZyYW1lX2RpZyAyIC8vIGk6IHVpbnQ2NAoJaW50YyAxIC8vIDEKCSsKCWZyYW1lX2J1cnkgMiAvLyBpOiB1aW50NjQKCWIgKmZvcl85CgoqZm9yXzlfZW5kOgoJLy8gbm8gYXZhaWxhYmxlIHNwYWNlIGluIHNwZWNpZmllZCBub2RlIGZvciB0aGlzIHBvb2wKCWVycgoJcmV0c3ViCgovLyBkb2VzU3Rha2VyTWVldEdhdGluZyh2YWxpZGF0b3JJZDogVmFsaWRhdG9ySWRUeXBlLCB2YWx1ZVRvVmVyaWZ5OiB1aW50NjQpOiB2b2lkCi8vCi8vIENoZWNrcyBpZiBhIHN0YWtlciBtZWV0cyB0aGUgZ2F0aW5nIHJlcXVpcmVtZW50cyBzcGVjaWZpZWQgYnkgdGhlIHZhbGlkYXRvci4KLy8KLy8gQHBhcmFtIHtWYWxpZGF0b3JJZFR5cGV9IHZhbGlkYXRvcklkIC0gVGhlIGlkIG9mIHRoZSB2YWxpZGF0b3IuCi8vIEBwYXJhbSB7dWludDY0fSB2YWx1ZVRvVmVyaWZ5IC0gVGhlIHZhbHVlIHRvIHZlcmlmeSBhZ2FpbnN0IHRoZSBnYXRpbmcgcmVxdWlyZW1lbnRzLgovLyBAcmV0dXJucyB7dm9pZH0gb3IgYXNzZXJ0cyBpZiByZXF1aXJlbWVudHMgbm90IG1ldC4KZG9lc1N0YWtlck1lZXRHYXRpbmc6Cglwcm90byAyIDAKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZWMgMSAvLyAweAoJZHVwbiA4CgoJLy8gY29udHJhY3RzL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTI1MAoJLy8gdHlwZSA9IHRoaXMudmFsaWRhdG9yTGlzdCh2YWxpZGF0b3JJZCkudmFsdWUuY29uZmlnLmVudHJ5R2F0aW5nVHlwZQoJaW50YyAzNiAvLyA4MAoJaW50YyAxIC8vIDEKCWJ5dGVjIDAgLy8gICJ2IgoJZnJhbWVfZGlnIC0xIC8vIHZhbGlkYXRvcklkOiBWYWxpZGF0b3JJZFR5cGUKCWl0b2IKCWNvbmNhdAoJY292ZXIgMgoJYm94X2V4dHJhY3QKCWJ0b2kKCWZyYW1lX2J1cnkgMCAvLyB0eXBlOiB1aW50OAoKCS8vICppZjQ1X2NvbmRpdGlvbgoJLy8gY29udHJhY3RzL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTI1MQoJLy8gdHlwZSA9PT0gR0FUSU5HX1RZUEVfTk9ORQoJZnJhbWVfZGlnIDAgLy8gdHlwZTogdWludDgKCWludGMgMCAvLyAwCgk9PQoJYnogKmlmNDVfZW5kCgoJLy8gKmlmNDVfY29uc2VxdWVudAoJLy8gY29udHJhY3RzL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTI1MgoJLy8gcmV0dXJuCglyZXRzdWIKCippZjQ1X2VuZDoKCS8vIGNvbnRyYWN0cy92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjEyNTQKCS8vIHN0YWtlciA9IHRoaXMudHhuLnNlbmRlcgoJdHhuIFNlbmRlcgoJZnJhbWVfYnVyeSAxIC8vIHN0YWtlcjogYWRkcmVzcwoKCS8vIGNvbnRyYWN0cy92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjEyNTUKCS8vIGNvbmZpZyA9IGNsb25lKHRoaXMudmFsaWRhdG9yTGlzdCh2YWxpZGF0b3JJZCkudmFsdWUuY29uZmlnKQoJaW50YyAwIC8vIDAKCWludGMgOSAvLyAyNDIKCWJ5dGVjIDAgLy8gICJ2IgoJZnJhbWVfZGlnIC0xIC8vIHZhbGlkYXRvcklkOiBWYWxpZGF0b3JJZFR5cGUKCWl0b2IKCWNvbmNhdAoJY292ZXIgMgoJYm94X2V4dHJhY3QKCWZyYW1lX2J1cnkgMiAvLyBjb25maWc6ICh1aW50NjQsYWRkcmVzcyxhZGRyZXNzLHVpbnQ2NCx1aW50OCxhZGRyZXNzLHVpbnQ2NFs0XSx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50MzIsdWludDMyLGFkZHJlc3MsdWludDY0LHVpbnQ2NCx1aW50OCx1aW50NjQsdWludDY0KQoKCS8vICppZjQ2X2NvbmRpdGlvbgoJLy8gY29udHJhY3RzL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTI1OQoJLy8gdHlwZSA9PT0gR0FUSU5HX1RZUEVfQVNTRVRTX0NSRUFURURfQlkgfHwKCS8vICAgICAgICAgICAgIHR5cGUgPT09IEdBVElOR19UWVBFX0FTU0VUX0lEIHx8CgkvLyAgICAgICAgICAgICB0eXBlID09PSBHQVRJTkdfVFlQRV9DUkVBVEVEX0JZX05GRF9BRERSRVNTRVMKCWZyYW1lX2RpZyAwIC8vIHR5cGU6IHVpbnQ4CglpbnRjIDEgLy8gMQoJPT0KCWR1cAoJYm56ICpza2lwX29yNAoJZnJhbWVfZGlnIDAgLy8gdHlwZTogdWludDgKCWludGMgMTAgLy8gMgoJPT0KCXx8Cgoqc2tpcF9vcjQ6CglkdXAKCWJueiAqc2tpcF9vcjUKCWZyYW1lX2RpZyAwIC8vIHR5cGU6IHVpbnQ4CglpbnRjIDggLy8gMwoJPT0KCXx8Cgoqc2tpcF9vcjU6CglieiAqaWY0Nl9lbmQKCgkvLyAqaWY0Nl9jb25zZXF1ZW50CgkvLyBjb250cmFjdHMvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMjYzCgkvLyBhc3NlcnQodmFsdWVUb1ZlcmlmeSAhPT0gMCkKCWZyYW1lX2RpZyAtMiAvLyB2YWx1ZVRvVmVyaWZ5OiB1aW50NjQKCWludGMgMCAvLyAwCgkhPQoJYXNzZXJ0CgoJLy8gY29udHJhY3RzL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTI2NAoJLy8gYmFsUmVxdWlyZWQgPSB0aGlzLnZhbGlkYXRvckxpc3QodmFsaWRhdG9ySWQpLnZhbHVlLmNvbmZpZy5nYXRpbmdBc3NldE1pbkJhbGFuY2UKCWludGMgMzcgLy8gMTQ1CglpbnRjIDIgLy8gOAoJYnl0ZWMgMCAvLyAgInYiCglmcmFtZV9kaWcgLTEgLy8gdmFsaWRhdG9ySWQ6IFZhbGlkYXRvcklkVHlwZQoJaXRvYgoJY29uY2F0Cgljb3ZlciAyCglib3hfZXh0cmFjdAoJYnRvaQoJZnJhbWVfYnVyeSAzIC8vIGJhbFJlcXVpcmVkOiB1aW50NjQKCgkvLyAqaWY0N19jb25kaXRpb24KCS8vIGNvbnRyYWN0cy92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjEyNjUKCS8vIGJhbFJlcXVpcmVkID09PSAwCglmcmFtZV9kaWcgMyAvLyBiYWxSZXF1aXJlZDogdWludDY0CglpbnRjIDAgLy8gMAoJPT0KCWJ6ICppZjQ3X2VuZAoKCS8vICppZjQ3X2NvbnNlcXVlbnQKCS8vIGNvbnRyYWN0cy92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjEyNjYKCS8vIGJhbFJlcXVpcmVkID0gMQoJaW50YyAxIC8vIDEKCWZyYW1lX2J1cnkgMyAvLyBiYWxSZXF1aXJlZDogdWludDY0CgoqaWY0N19lbmQ6CgkvLyBjb250cmFjdHMvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMjY4CgkvLyBhc3NlcnQoCgkvLyAgICAgICAgICAgICAgICAgc3Rha2VyLmFzc2V0QmFsYW5jZShBc3NldElELmZyb21VaW50NjQodmFsdWVUb1ZlcmlmeSkpID49IGJhbFJlcXVpcmVkLAoJLy8gICAgICAgICAgICAgICAgICdtdXN0IGhhdmUgcmVxdWlyZWQgbWluaW11bSBiYWxhbmNlIG9mIHZhbGlkYXRvciBkZWZpbmVkIHRva2VuIHRvIGFkZCBzdGFrZScsCgkvLyAgICAgICAgICAgICApCglmcmFtZV9kaWcgMSAvLyBzdGFrZXI6IGFkZHJlc3MKCWZyYW1lX2RpZyAtMiAvLyB2YWx1ZVRvVmVyaWZ5OiB1aW50NjQKCWFzc2V0X2hvbGRpbmdfZ2V0IEFzc2V0QmFsYW5jZQoJcG9wCglmcmFtZV9kaWcgMyAvLyBiYWxSZXF1aXJlZDogdWludDY0Cgk+PQoKCS8vIG11c3QgaGF2ZSByZXF1aXJlZCBtaW5pbXVtIGJhbGFuY2Ugb2YgdmFsaWRhdG9yIGRlZmluZWQgdG9rZW4gdG8gYWRkIHN0YWtlCglhc3NlcnQKCippZjQ2X2VuZDoKCS8vICppZjQ4X2NvbmRpdGlvbgoJLy8gY29udHJhY3RzL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTI3MwoJLy8gdHlwZSA9PT0gR0FUSU5HX1RZUEVfQVNTRVRTX0NSRUFURURfQlkKCWZyYW1lX2RpZyAwIC8vIHR5cGU6IHVpbnQ4CglpbnRjIDEgLy8gMQoJPT0KCWJ6ICppZjQ4X2VuZAoKCS8vICppZjQ4X2NvbnNlcXVlbnQKCS8vIGNvbnRyYWN0cy92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjEyNzQKCS8vIGFzc2VydCgKCS8vICAgICAgICAgICAgICAgICBBc3NldElELmZyb21VaW50NjQodmFsdWVUb1ZlcmlmeSkuY3JlYXRvciA9PT0gY29uZmlnLmVudHJ5R2F0aW5nQWRkcmVzcywKCS8vICAgICAgICAgICAgICAgICAnc3BlY2lmaWVkIGFzc2V0IG11c3QgYmUgY3JlYXRlZCBieSBjcmVhdG9yIHRoYXQgdGhlIHZhbGlkYXRvciBkZWZpbmVkIGFzIGEgcmVxdWlyZW1lbnQgdG8gc3Rha2UnLAoJLy8gICAgICAgICAgICAgKQoJZnJhbWVfZGlnIC0yIC8vIHZhbHVlVG9WZXJpZnk6IHVpbnQ2NAoJYXNzZXRfcGFyYW1zX2dldCBBc3NldENyZWF0b3IKCXBvcAoJZnJhbWVfZGlnIDIgLy8gY29uZmlnOiAodWludDY0LGFkZHJlc3MsYWRkcmVzcyx1aW50NjQsdWludDgsYWRkcmVzcyx1aW50NjRbNF0sdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDMyLHVpbnQzMixhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDgsdWludDY0LHVpbnQ2NCkKCWV4dHJhY3QgODEgMzIKCT09CgoJLy8gc3BlY2lmaWVkIGFzc2V0IG11c3QgYmUgY3JlYXRlZCBieSBjcmVhdG9yIHRoYXQgdGhlIHZhbGlkYXRvciBkZWZpbmVkIGFzIGEgcmVxdWlyZW1lbnQgdG8gc3Rha2UKCWFzc2VydAoKKmlmNDhfZW5kOgoJLy8gKmlmNDlfY29uZGl0aW9uCgkvLyBjb250cmFjdHMvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMjc5CgkvLyB0eXBlID09PSBHQVRJTkdfVFlQRV9BU1NFVF9JRAoJZnJhbWVfZGlnIDAgLy8gdHlwZTogdWludDgKCWludGMgMTAgLy8gMgoJPT0KCWJ6ICppZjQ5X2VuZAoKCS8vICppZjQ5X2NvbnNlcXVlbnQKCS8vIGNvbnRyYWN0cy92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjEyODAKCS8vIGZvdW5kID0gZmFsc2UKCWludGMgMCAvLyAwCglmcmFtZV9idXJ5IDQgLy8gZm91bmQ6IGJvb2wKCgkvLyBjb250cmFjdHMvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMjgxCgkvLyBjb25maWcuZW50cnlHYXRpbmdBc3NldHMKCWZyYW1lX2RpZyAyIC8vIGNvbmZpZzogKHVpbnQ2NCxhZGRyZXNzLGFkZHJlc3MsdWludDY0LHVpbnQ4LGFkZHJlc3MsdWludDY0WzRdLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQzMix1aW50MzIsYWRkcmVzcyx1aW50NjQsdWludDY0LHVpbnQ4LHVpbnQ2NCx1aW50NjQpCglleHRyYWN0IDExMyAzMgoJZHVwCglmcmFtZV9idXJ5IDUgLy8gY29weSBvZiB0aGUgYXJyYXkgd2UgYXJlIGl0ZXJhdGluZyBvdmVyCglleHRyYWN0IDAgOAoJYnRvaQoJZnJhbWVfYnVyeSA2IC8vIGFzc2V0SWQ6IHVpbnQ2NAoJaW50YyAwIC8vIDAKCWZyYW1lX2J1cnkgNyAvLyB0aGUgb2Zmc2V0IHdlIGFyZSBleHRyYWN0aW5nIHRoZSBuZXh0IGVsZW1lbnQgZnJvbQoKKmZvck9mXzA6CgkvLyAqaWY1MF9jb25kaXRpb24KCS8vIGNvbnRyYWN0cy92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjEyODIKCS8vIHZhbHVlVG9WZXJpZnkgPT09IGFzc2V0SWQKCWZyYW1lX2RpZyAtMiAvLyB2YWx1ZVRvVmVyaWZ5OiB1aW50NjQKCWZyYW1lX2RpZyA2IC8vIGFzc2V0SWQ6IHVpbnQ2NAoJPT0KCWJ6ICppZjUwX2VuZAoKCS8vICppZjUwX2NvbnNlcXVlbnQKCS8vIGNvbnRyYWN0cy92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjEyODMKCS8vIGZvdW5kID0gdHJ1ZQoJaW50YyAxIC8vIDEKCWZyYW1lX2J1cnkgNCAvLyBmb3VuZDogYm9vbAoJYiAqZm9yT2ZfMF9lbmQKCippZjUwX2VuZDoKCipmb3JPZl8wX2NvbnRpbnVlOgoJLy8gaW5jcmVtZW50IG9mZnNldCBhbmQgbG9vcCBpZiBub3Qgb3V0IG9mIGJvdW5kcwoJZnJhbWVfZGlnIDcgLy8gdGhlIG9mZnNldCB3ZSBhcmUgZXh0cmFjdGluZyB0aGUgbmV4dCBlbGVtZW50IGZyb20KCWludGMgMiAvLyA4CgkrCglkdXAKCWludGMgNiAvLyAgb2Zmc2V0IG9mIGxhc3QgZWxlbWVudAoJPAoJYnogKmZvck9mXzBfZW5kCglmcmFtZV9idXJ5IDcgLy8gdGhlIG9mZnNldCB3ZSBhcmUgZXh0cmFjdGluZyB0aGUgbmV4dCBlbGVtZW50IGZyb20KCWZyYW1lX2RpZyA1IC8vIGNvcHkgb2YgdGhlIGFycmF5IHdlIGFyZSBpdGVyYXRpbmcgb3ZlcgoJZnJhbWVfZGlnIDcgLy8gdGhlIG9mZnNldCB3ZSBhcmUgZXh0cmFjdGluZyB0aGUgbmV4dCBlbGVtZW50IGZyb20KCWludGMgMiAvLyA4CglleHRyYWN0CglidG9pCglmcmFtZV9idXJ5IDYgLy8gYXNzZXRJZDogdWludDY0CgliICpmb3JPZl8wCgoqZm9yT2ZfMF9lbmQ6CgkvLyBjb250cmFjdHMvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMjg3CgkvLyBhc3NlcnQoZm91bmQsICdzcGVjaWZpZWQgYXNzZXQgbXVzdCBiZSBpZGVudGljYWwgdG8gdGhlIGFzc2V0IGlkIGRlZmluZWQgYXMgYSByZXF1aXJlbWVudCB0byBzdGFrZScpCglmcmFtZV9kaWcgNCAvLyBmb3VuZDogYm9vbAoKCS8vIHNwZWNpZmllZCBhc3NldCBtdXN0IGJlIGlkZW50aWNhbCB0byB0aGUgYXNzZXQgaWQgZGVmaW5lZCBhcyBhIHJlcXVpcmVtZW50IHRvIHN0YWtlCglhc3NlcnQKCippZjQ5X2VuZDoKCS8vICppZjUxX2NvbmRpdGlvbgoJLy8gY29udHJhY3RzL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTI4OQoJLy8gdHlwZSA9PT0gR0FUSU5HX1RZUEVfQ1JFQVRFRF9CWV9ORkRfQUREUkVTU0VTCglmcmFtZV9kaWcgMCAvLyB0eXBlOiB1aW50OAoJaW50YyA4IC8vIDMKCT09CglieiAqaWY1MV9lbmQKCgkvLyAqaWY1MV9jb25zZXF1ZW50CgkvLyBjb250cmFjdHMvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMjkyCgkvLyBhc3NlcnQoCgkvLyAgICAgICAgICAgICAgICAgdGhpcy5pc0FkZHJlc3NJbk5GRENBQWxnb0xpc3QoY29uZmlnLmVudHJ5R2F0aW5nQXNzZXRzWzBdLCBBc3NldElELmZyb21VaW50NjQodmFsdWVUb1ZlcmlmeSkuY3JlYXRvciksCgkvLyAgICAgICAgICAgICAgICAgJ3NwZWNpZmllZCBhc3NldCBtdXN0IGJlIGNyZWF0ZWQgYnkgY3JlYXRvciB0aGF0IGlzIG9uZSBvZiB0aGUgbGlua2VkIGFkZHJlc3NlcyBpbiBhbiBuZmQnLAoJLy8gICAgICAgICAgICAgKQoJZnJhbWVfZGlnIC0yIC8vIHZhbHVlVG9WZXJpZnk6IHVpbnQ2NAoJYXNzZXRfcGFyYW1zX2dldCBBc3NldENyZWF0b3IKCXBvcAoJZnJhbWVfZGlnIDIgLy8gY29uZmlnOiAodWludDY0LGFkZHJlc3MsYWRkcmVzcyx1aW50NjQsdWludDgsYWRkcmVzcyx1aW50NjRbNF0sdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDMyLHVpbnQzMixhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDgsdWludDY0LHVpbnQ2NCkKCWV4dHJhY3QgMTEzIDgKCWJ0b2kKCWNhbGxzdWIgaXNBZGRyZXNzSW5ORkRDQUFsZ29MaXN0CgoJLy8gc3BlY2lmaWVkIGFzc2V0IG11c3QgYmUgY3JlYXRlZCBieSBjcmVhdG9yIHRoYXQgaXMgb25lIG9mIHRoZSBsaW5rZWQgYWRkcmVzc2VzIGluIGFuIG5mZAoJYXNzZXJ0CgoqaWY1MV9lbmQ6CgkvLyAqaWY1Ml9jb25kaXRpb24KCS8vIGNvbnRyYWN0cy92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjEyOTcKCS8vIHR5cGUgPT09IEdBVElOR19UWVBFX1NFR01FTlRfT0ZfTkZECglmcmFtZV9kaWcgMCAvLyB0eXBlOiB1aW50OAoJaW50YyAxNSAvLyA0Cgk9PQoJYnogKmlmNTJfZW5kCgoJLy8gKmlmNTJfY29uc2VxdWVudAoJLy8gY29udHJhY3RzL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTI5OQoJLy8gdXNlck9mZmVyZWRORkRBcHBJRCA9IHZhbHVlVG9WZXJpZnkKCWZyYW1lX2RpZyAtMiAvLyB2YWx1ZVRvVmVyaWZ5OiB1aW50NjQKCWZyYW1lX2J1cnkgOCAvLyB1c2VyT2ZmZXJlZE5GREFwcElEOiB1aW50NjQKCgkvLyBjb250cmFjdHMvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMzAwCgkvLyBhc3NlcnQodGhpcy5pc05GREFwcElEVmFsaWQodXNlck9mZmVyZWRORkRBcHBJRCksICdwcm92aWRlZCBORkQgbXVzdCBiZSB2YWxpZCcpCglmcmFtZV9kaWcgOCAvLyB1c2VyT2ZmZXJlZE5GREFwcElEOiB1aW50NjQKCWNhbGxzdWIgaXNORkRBcHBJRFZhbGlkCgoJLy8gcHJvdmlkZWQgTkZEIG11c3QgYmUgdmFsaWQKCWFzc2VydAoKCS8vIGNvbnRyYWN0cy92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjEzMDMKCS8vIGFzc2VydCgKCS8vICAgICAgICAgICAgICAgICByYXdCeXRlcyhBcHBJRC5mcm9tVWludDY0KHVzZXJPZmZlcmVkTkZEQXBwSUQpLmdsb2JhbFN0YXRlKCdpLm93bmVyLmEnKSBhcyBBZGRyZXNzKSA9PT0KCS8vICAgICAgICAgICAgICAgICAgICAgcmF3Qnl0ZXMoc3Rha2VyKSB8fCB0aGlzLmlzQWRkcmVzc0luTkZEQ0FBbGdvTGlzdCh1c2VyT2ZmZXJlZE5GREFwcElELCBzdGFrZXIpLAoJLy8gICAgICAgICAgICAgICAgICJwcm92aWRlZCBuZmQgZm9yIGVudHJ5IGlzbid0IG93bmVkIG9yIGxpbmtlZCB0byB0aGUgc3Rha2VyIiwKCS8vICAgICAgICAgICAgICkKCWZyYW1lX2RpZyA4IC8vIHVzZXJPZmZlcmVkTkZEQXBwSUQ6IHVpbnQ2NAoJYnl0ZWMgMTAgLy8gICJpLm93bmVyLmEiCglhcHBfZ2xvYmFsX2dldF9leAoKCS8vIGdsb2JhbCBzdGF0ZSB2YWx1ZSBkb2VzIG5vdCBleGlzdDogQXBwSUQuZnJvbVVpbnQ2NCh1c2VyT2ZmZXJlZE5GREFwcElEKS5nbG9iYWxTdGF0ZSgnaS5vd25lci5hJykKCWFzc2VydAoJZnJhbWVfZGlnIDEgLy8gc3Rha2VyOiBhZGRyZXNzCgk9PQoJZHVwCglibnogKnNraXBfb3I2CglmcmFtZV9kaWcgMSAvLyBzdGFrZXI6IGFkZHJlc3MKCWZyYW1lX2RpZyA4IC8vIHVzZXJPZmZlcmVkTkZEQXBwSUQ6IHVpbnQ2NAoJY2FsbHN1YiBpc0FkZHJlc3NJbk5GRENBQWxnb0xpc3QKCXx8Cgoqc2tpcF9vcjY6CgkvLyBwcm92aWRlZCBuZmQgZm9yIGVudHJ5IGlzbid0IG93bmVkIG9yIGxpbmtlZCB0byB0aGUgc3Rha2VyCglhc3NlcnQKCgkvLyBjb250cmFjdHMvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMzEwCgkvLyBhc3NlcnQoCgkvLyAgICAgICAgICAgICAgICAgYnRvaShBcHBJRC5mcm9tVWludDY0KHVzZXJPZmZlcmVkTkZEQXBwSUQpLmdsb2JhbFN0YXRlKCdpLnBhcmVudEFwcElEJykgYXMgYnl0ZXMpID09PQoJLy8gICAgICAgICAgICAgICAgICAgICBjb25maWcuZW50cnlHYXRpbmdBc3NldHNbMF0sCgkvLyAgICAgICAgICAgICAgICAgJ3NwZWNpZmllZCBuZmQgbXVzdCBiZSBhIHNlZ21lbnQgb2YgdGhlIG5mZCB0aGUgdmFsaWRhdG9yIHNwZWNpZmllZCBhcyBhIHJlcXVpcmVtZW50JywKCS8vICAgICAgICAgICAgICkKCWZyYW1lX2RpZyA4IC8vIHVzZXJPZmZlcmVkTkZEQXBwSUQ6IHVpbnQ2NAoJcHVzaGJ5dGVzIDB4NjkyZTcwNjE3MjY1NmU3NDQxNzA3MDQ5NDQgLy8gImkucGFyZW50QXBwSUQiCglhcHBfZ2xvYmFsX2dldF9leAoKCS8vIGdsb2JhbCBzdGF0ZSB2YWx1ZSBkb2VzIG5vdCBleGlzdDogQXBwSUQuZnJvbVVpbnQ2NCh1c2VyT2ZmZXJlZE5GREFwcElEKS5nbG9iYWxTdGF0ZSgnaS5wYXJlbnRBcHBJRCcpCglhc3NlcnQKCWJ0b2kKCWZyYW1lX2RpZyAyIC8vIGNvbmZpZzogKHVpbnQ2NCxhZGRyZXNzLGFkZHJlc3MsdWludDY0LHVpbnQ4LGFkZHJlc3MsdWludDY0WzRdLHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQzMix1aW50MzIsYWRkcmVzcyx1aW50NjQsdWludDY0LHVpbnQ4LHVpbnQ2NCx1aW50NjQpCglleHRyYWN0IDExMyA4CglidG9pCgk9PQoKCS8vIHNwZWNpZmllZCBuZmQgbXVzdCBiZSBhIHNlZ21lbnQgb2YgdGhlIG5mZCB0aGUgdmFsaWRhdG9yIHNwZWNpZmllZCBhcyBhIHJlcXVpcmVtZW50Cglhc3NlcnQKCippZjUyX2VuZDoKCXJldHN1YgoKLy8gaXNORkRBcHBJRFZhbGlkKG5mZEFwcElEOiB1aW50NjQpOiBib29sZWFuCi8vCi8vIENoZWNrcyBpZiB0aGUgZ2l2ZW4gTkZEIEFwcCBpZCBpcyB2YWxpZC4gIFVzaW5nIG9ubHkgdGhlIEFwcCBpZCB0aGVyZSdzIG5vIHZhbGlkYXRpb24gYWdhaW5zdCB0aGUgbmFtZSAoaWU6IHRoYXQgbmZkIFggaXMgbmFtZSBZKQovLyBTbyBpdCdzIGFzc3VtZWQgZm9yIHRoZSBjYWxsZXIsIHRoZSBhcHAgaWQgYWxvbmUgaXMgZmluZS4gIFRoZSBuYW1lIGlzIGZldGNoZWQgZnJvbSB0aGUgc3BlY2lmaWVkIGFwcCBpZCBhbmQgdGhlIHR3bwovLyB0b2dldGhlciBhcmUgdXNlZCBmb3IgdmFsaWRpdHkgY2hlY2sgY2FsbCB0byB0aGUgbmZkIHJlZ2lzdHJ5LgovLwovLyBAcGFyYW0ge3VpbnQ2NH0gbmZkQXBwSUQgLSBUaGUgTkZEIEFwcCBpZCB0byB2ZXJpZnkuCi8vCi8vIEByZXR1cm5zIHtib29sZWFufSAtIFJldHVybnMgdHJ1ZSBpZiB0aGUgTkZEIEFwcCBpZCBpcyB2YWxpZCwgb3RoZXJ3aXNlIGZhbHNlLgppc05GREFwcElEVmFsaWQ6Cglwcm90byAxIDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZWMgMSAvLyAweAoKCS8vIGNvbnRyYWN0cy92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjEzMjkKCS8vIHVzZXJPZmZlcmVkTkZETmFtZSA9IEFwcElELmZyb21VaW50NjQobmZkQXBwSUQpLmdsb2JhbFN0YXRlKCdpLm5hbWUnKSBhcyBzdHJpbmcKCWZyYW1lX2RpZyAtMSAvLyBuZmRBcHBJRDogdWludDY0CglwdXNoYnl0ZXMgMHg2OTJlNmU2MTZkNjUgLy8gImkubmFtZSIKCWFwcF9nbG9iYWxfZ2V0X2V4CgoJLy8gZ2xvYmFsIHN0YXRlIHZhbHVlIGRvZXMgbm90IGV4aXN0OiBBcHBJRC5mcm9tVWludDY0KG5mZEFwcElEKS5nbG9iYWxTdGF0ZSgnaS5uYW1lJykKCWFzc2VydAoJZnJhbWVfYnVyeSAwIC8vIHVzZXJPZmZlcmVkTkZETmFtZTogc3RyaW5nCgoJLy8gY29udHJhY3RzL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTMzMQoJLy8gcmV0dXJuIHNlbmRNZXRob2RDYWxsPFtzdHJpbmcsIHVpbnQ2NF0sIGJvb2xlYW4+KHsKCS8vICAgICAgICAgICAgIGFwcGxpY2F0aW9uSUQ6IEFwcElELmZyb21VaW50NjQodGhpcy5uZmRSZWdpc3RyeUFwcElkKSwKCS8vICAgICAgICAgICAgIG5hbWU6ICdpc1ZhbGlkTmZkQXBwSWQnLAoJLy8gICAgICAgICAgICAgbWV0aG9kQXJnczogW3VzZXJPZmZlcmVkTkZETmFtZSwgbmZkQXBwSURdLAoJLy8gICAgICAgICB9KQoJaXR4bl9iZWdpbgoJaW50YyA3IC8vICBhcHBsCglpdHhuX2ZpZWxkIFR5cGVFbnVtCglwdXNoYnl0ZXMgMHg0YmUyMmZjNiAvLyBtZXRob2QgImlzVmFsaWROZmRBcHBJZChzdHJpbmcsdWludDY0KWJvb2wiCglpdHhuX2ZpZWxkIEFwcGxpY2F0aW9uQXJncwoKCS8vIGNvbnRyYWN0cy92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjEzMzIKCS8vIGFwcGxpY2F0aW9uSUQ6IEFwcElELmZyb21VaW50NjQodGhpcy5uZmRSZWdpc3RyeUFwcElkKQoJaW50YyAyOCAvLyBUTVBMX25mZFJlZ2lzdHJ5QXBwSWQKCWl0eG5fZmllbGQgQXBwbGljYXRpb25JRAoKCS8vIGNvbnRyYWN0cy92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjEzMzQKCS8vIG1ldGhvZEFyZ3M6IFt1c2VyT2ZmZXJlZE5GRE5hbWUsIG5mZEFwcElEXQoJZnJhbWVfZGlnIDAgLy8gdXNlck9mZmVyZWRORkROYW1lOiBzdHJpbmcKCWR1cAoJbGVuCglpdG9iCglleHRyYWN0IDYgMgoJc3dhcAoJY29uY2F0CglpdHhuX2ZpZWxkIEFwcGxpY2F0aW9uQXJncwoJZnJhbWVfZGlnIC0xIC8vIG5mZEFwcElEOiB1aW50NjQKCWl0b2IKCWl0eG5fZmllbGQgQXBwbGljYXRpb25BcmdzCgoJLy8gRmVlIGZpZWxkIG5vdCBzZXQsIGRlZmF1bHRpbmcgdG8gMAoJaW50YyAwIC8vIDAKCWl0eG5fZmllbGQgRmVlCgoJLy8gU3VibWl0IGlubmVyIHRyYW5zYWN0aW9uCglpdHhuX3N1Ym1pdAoJaXR4biBOdW1Mb2dzCglpbnRjIDEgLy8gMQoJLQoJaXR4bmFzIExvZ3MKCWV4dHJhY3QgNCAwCglpbnRjIDAgLy8gMAoJZ2V0Yml0CgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCglyZXRzdWIKCi8vIGlzQWRkcmVzc0luTkZEQ0FBbGdvTGlzdChuZmRBcHBJRDogdWludDY0LCBhZGRyVG9GaW5kOiBBZGRyZXNzKTogYm9vbGVhbgovLwovLyBDaGVja3MgaWYgdGhlIHNwZWNpZmllZCBhZGRyZXNzIGlzIHByZXNlbnQgaW4gYW4gTkZEcyBsaXN0IG9mIHZlcmlmaWVkIGFkZHJlc3Nlcy4KLy8gVGhlIE5GRCBpcyBhc3N1bWVkIHRvIGhhdmUgYWxyZWFkeSBiZWVuIHZhbGlkYXRlZCBhcyBvZmZpY2lhbC4KLy8KLy8gQHBhcmFtIHt1aW50NjR9IG5mZEFwcElEIC0gVGhlIE5GRCBhcHBsaWNhdGlvbiBpZC4KLy8gQHBhcmFtIHtBZGRyZXNzfSBhZGRyVG9GaW5kIC0gVGhlIGFkZHJlc3MgdG8gZmluZCBpbiB0aGUgdi5jYUFsZ28uMC5hcyBwcm9wZXJ0eQovLyBAcmV0dXJuIHtib29sZWFufSAtIGB0cnVlYCBpZiB0aGUgYWRkcmVzcyBpcyBwcmVzZW50LCBgZmFsc2VgIG90aGVyd2lzZS4KaXNBZGRyZXNzSW5ORkRDQUFsZ29MaXN0OgoJcHJvdG8gMiAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGVjIDEgLy8gMHgKCWR1cG4gMgoKCS8vIGNvbnRyYWN0cy92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjEzNDcKCS8vIHNlbmRBcHBDYWxsKHsKCS8vICAgICAgICAgICAgIGFwcGxpY2F0aW9uSUQ6IEFwcElELmZyb21VaW50NjQobmZkQXBwSUQpLAoJLy8gICAgICAgICAgICAgYXBwbGljYXRpb25BcmdzOiBbJ3JlYWRfcHJvcGVydHknLCAndi5jYUFsZ28uMC5hcyddLAoJLy8gICAgICAgICB9KQoJaXR4bl9iZWdpbgoJaW50YyA3IC8vICBhcHBsCglpdHhuX2ZpZWxkIFR5cGVFbnVtCgoJLy8gY29udHJhY3RzL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTM0OAoJLy8gYXBwbGljYXRpb25JRDogQXBwSUQuZnJvbVVpbnQ2NChuZmRBcHBJRCkKCWZyYW1lX2RpZyAtMSAvLyBuZmRBcHBJRDogdWludDY0CglpdHhuX2ZpZWxkIEFwcGxpY2F0aW9uSUQKCgkvLyBjb250cmFjdHMvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMzQ5CgkvLyBhcHBsaWNhdGlvbkFyZ3M6IFsncmVhZF9wcm9wZXJ0eScsICd2LmNhQWxnby4wLmFzJ10KCXB1c2hieXRlcyAweDcyNjU2MTY0NWY3MDcyNmY3MDY1NzI3NDc5IC8vICJyZWFkX3Byb3BlcnR5IgoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbkFyZ3MKCXB1c2hieXRlcyAweDc2MmU2MzYxNDE2YzY3NmYyZTMwMmU2MTczIC8vICJ2LmNhQWxnby4wLmFzIgoJaXR4bl9maWVsZCBBcHBsaWNhdGlvbkFyZ3MKCgkvLyBGZWUgZmllbGQgbm90IHNldCwgZGVmYXVsdGluZyB0byAwCglpbnRjIDAgLy8gMAoJaXR4bl9maWVsZCBGZWUKCgkvLyBTdWJtaXQgaW5uZXIgdHJhbnNhY3Rpb24KCWl0eG5fc3VibWl0CgoJLy8gY29udHJhY3RzL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTM1MQoJLy8gY2FBbGdvRGF0YSA9IHRoaXMuaXR4bi5sYXN0TG9nCglpdHhuIExhc3RMb2cKCWZyYW1lX2J1cnkgMCAvLyBjYUFsZ29EYXRhOiBieXRlW10KCgkvLyBjb250cmFjdHMvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMzUyCgkvLyBmb3IgKGxldCBpID0gMDsgaSA8IGNhQWxnb0RhdGEubGVuZ3RoOyBpICs9IDMyKQoJaW50YyAwIC8vIDAKCWZyYW1lX2J1cnkgMSAvLyBpOiB1aW50NjQKCipmb3JfMTA6CgkvLyBjb250cmFjdHMvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMzUyCgkvLyBpIDwgY2FBbGdvRGF0YS5sZW5ndGgKCWZyYW1lX2RpZyAxIC8vIGk6IHVpbnQ2NAoJZnJhbWVfZGlnIDAgLy8gY2FBbGdvRGF0YTogYnl0ZVtdCglsZW4KCTwKCWJ6ICpmb3JfMTBfZW5kCgoJLy8gY29udHJhY3RzL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTM1MwoJLy8gYWRkciA9IGV4dHJhY3QzKGNhQWxnb0RhdGEsIGksIDMyKQoJZnJhbWVfZGlnIDAgLy8gY2FBbGdvRGF0YTogYnl0ZVtdCglmcmFtZV9kaWcgMSAvLyBpOiB1aW50NjQKCWludGMgNiAvLyAzMgoJZXh0cmFjdDMKCWZyYW1lX2J1cnkgMiAvLyBhZGRyOiBieXRlW10KCgkvLyAqaWY1M19jb25kaXRpb24KCS8vIGNvbnRyYWN0cy92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjEzNTQKCS8vIGFkZHIgIT09IHJhd0J5dGVzKGdsb2JhbHMuemVyb0FkZHJlc3MpICYmIGFkZHIgPT09IHJhd0J5dGVzKGFkZHJUb0ZpbmQpCglmcmFtZV9kaWcgMiAvLyBhZGRyOiBieXRlW10KCWdsb2JhbCBaZXJvQWRkcmVzcwoJIT0KCWR1cAoJYnogKnNraXBfYW5kMTEKCWZyYW1lX2RpZyAyIC8vIGFkZHI6IGJ5dGVbXQoJZnJhbWVfZGlnIC0yIC8vIGFkZHJUb0ZpbmQ6IEFkZHJlc3MKCT09CgkmJgoKKnNraXBfYW5kMTE6CglieiAqaWY1M19lbmQKCgkvLyAqaWY1M19jb25zZXF1ZW50CgkvLyBjb250cmFjdHMvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMzU1CgkvLyByZXR1cm4gdHJ1ZQoJaW50YyAxIC8vIDEKCWIgKmlzQWRkcmVzc0luTkZEQ0FBbGdvTGlzdCpyZXR1cm4KCippZjUzX2VuZDoKCipmb3JfMTBfY29udGludWU6CgkvLyBjb250cmFjdHMvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMzUyCgkvLyBpICs9IDMyCglmcmFtZV9kaWcgMSAvLyBpOiB1aW50NjQKCWludGMgNiAvLyAzMgoJKwoJZnJhbWVfYnVyeSAxIC8vIGk6IHVpbnQ2NAoJYiAqZm9yXzEwCgoqZm9yXzEwX2VuZDoKCS8vIGNvbnRyYWN0cy92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjEzNTgKCS8vIHJldHVybiBmYWxzZQoJaW50YyAwIC8vIDAKCippc0FkZHJlc3NJbk5GRENBQWxnb0xpc3QqcmV0dXJuOgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCgoJLy8gcG9wIGFsbCBsb2NhbCB2YXJpYWJsZXMgZnJvbSB0aGUgc3RhY2sKCXBvcG4gMgoJcmV0c3ViCgovLyBhbGdvU2F0dXJhdGlvbkxldmVsKCk6IHVpbnQ2NAovLwovLyBSZXR1cm5zIHRoZSBtYXhpbXVtIGFsbG93ZWQgc3Rha2UgcGVyIHZhbGlkYXRvciBiYXNlZCBvbiBhIHBlcmNlbnRhZ2Ugb2YgYWxsIGN1cnJlbnQgb25saW5lIHN0YWtlIGJlZm9yZQovLyB0aGUgdmFsaWRhdG9yIGlzIGNvbnNpZGVyZWQgc2F0dXJhdGVkIC0gd2hlcmUgcmV3YXJkcyBhcmUgZGltaW5pc2hlZC4KLy8gTk9URTogdGhpcyBmdW5jdGlvbiBpcyBkZWZpbmVkIHR3aWNlIC0gaGVyZSBhbmQgaW4gc3Rha2luZyBwb29sIGNvbnRyYWN0LiAgQm90aCBtdXN0IGJlIGlkZW50aWNhbC4KYWxnb1NhdHVyYXRpb25MZXZlbDoKCXByb3RvIDAgMQoKCS8vIFB1c2ggZW1wdHkgYnl0ZXMgYWZ0ZXIgdGhlIGZyYW1lIHBvaW50ZXIgdG8gcmVzZXJ2ZSBzcGFjZSBmb3IgbG9jYWwgdmFyaWFibGVzCglieXRlYyAxIC8vIDB4CgoJLy8gY29udHJhY3RzL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTM2NwoJLy8gb25saW5lID0gdGhpcy5nZXRDdXJyZW50T25saW5lU3Rha2UoKQoJY2FsbHN1YiBnZXRDdXJyZW50T25saW5lU3Rha2UKCWZyYW1lX2J1cnkgMCAvLyBvbmxpbmU6IHVpbnQ2NAoKCS8vIGNvbnRyYWN0cy92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjEzNjkKCS8vIHJldHVybiB3aWRlUmF0aW8oW29ubGluZSwgTUFYX1ZBTElEQVRPUl9TT0ZUX1BDVF9PRl9PTkxJTkVfMURFQ0lNQUxdLCBbMTAwMF0pCglmcmFtZV9kaWcgMCAvLyBvbmxpbmU6IHVpbnQ2NAoJcHVzaGludCAxMDAKCW11bHcKCWludGMgMCAvLyAwCglpbnRjIDMyIC8vIDEwMDAKCWRpdm1vZHcKCXBvcAoJcG9wCglzd2FwCgkhCgoJLy8gd2lkZVJhdGlvIGZhaWxlZAoJYXNzZXJ0CgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCglyZXRzdWIKCi8vIG1heEFsbG93ZWRTdGFrZSgpOiB1aW50NjQKLy8KLy8gUmV0dXJucyB0aGUgTUFYSU1VTSBhbGxvd2VkIHN0YWtlIHBlciB2YWxpZGF0b3IgYmFzZWQgb24gYSBwZXJjZW50YWdlIG9mIGFsbCBjdXJyZW50IG9ubGluZSBzdGFrZS4KLy8gQWRkaW5nIHN0YWtlIGlzIGNvbXBsZXRlbHkgYmxvY2tlZCBhdCB0aGlzIGFtb3VudC4KbWF4QWxsb3dlZFN0YWtlOgoJcHJvdG8gMCAxCgoJLy8gUHVzaCBlbXB0eSBieXRlcyBhZnRlciB0aGUgZnJhbWUgcG9pbnRlciB0byByZXNlcnZlIHNwYWNlIGZvciBsb2NhbCB2YXJpYWJsZXMKCWJ5dGVjIDEgLy8gMHgKCgkvLyBjb250cmFjdHMvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMzc3CgkvLyBvbmxpbmUgPSB0aGlzLmdldEN1cnJlbnRPbmxpbmVTdGFrZSgpCgljYWxsc3ViIGdldEN1cnJlbnRPbmxpbmVTdGFrZQoJZnJhbWVfYnVyeSAwIC8vIG9ubGluZTogdWludDY0CgoJLy8gY29udHJhY3RzL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTM3OQoJLy8gcmV0dXJuIHdpZGVSYXRpbyhbb25saW5lLCBNQVhfVkFMSURBVE9SX0hBUkRfUENUX09GX09OTElORV8xREVDSU1BTF0sIFsxMDAwXSkKCWZyYW1lX2RpZyAwIC8vIG9ubGluZTogdWludDY0CglwdXNoaW50IDE1MAoJbXVsdwoJaW50YyAwIC8vIDAKCWludGMgMzIgLy8gMTAwMAoJZGl2bW9kdwoJcG9wCglwb3AKCXN3YXAKCSEKCgkvLyB3aWRlUmF0aW8gZmFpbGVkCglhc3NlcnQKCgkvLyBzZXQgdGhlIHN1YnJvdXRpbmUgcmV0dXJuIHZhbHVlCglmcmFtZV9idXJ5IDAKCXJldHN1YgoKLy8gbWF4QWxnb0FsbG93ZWRQZXJQb29sKCk6IHVpbnQ2NAovLwovLyBSZXR1cm5zIHRoZSBNQVhJTVVNIGFsbG93ZWQgc3Rha2UgcGVyIHBvb2wgYW5kIHN0aWxsIHJlY2VpdmUgaW5jZW50aXZlcyAtIHdlJ2xsIHRyZWF0IHRoaXMgYXMgdGhlICdtYXggcGVyIHBvb2wnCm1heEFsZ29BbGxvd2VkUGVyUG9vbDoKCXByb3RvIDAgMQoKCS8vIGNvbnRyYWN0cy92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjEzODYKCS8vIHJldHVybiBnbG9iYWxzLnBheW91dHNNYXhCYWxhbmNlCglnbG9iYWwgUGF5b3V0c01heEJhbGFuY2UKCXJldHN1YgoKLy8gZ2V0Q3VycmVudE9ubGluZVN0YWtlKCk6IHVpbnQ2NApnZXRDdXJyZW50T25saW5lU3Rha2U6Cglwcm90byAwIDEKCgkvLyBjb250cmFjdHMvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxMzkwCgkvLyByZXR1cm4gb25saW5lU3Rha2UoKQoJb25saW5lX3N0YWtlCglyZXRzdWIKCi8vIG1pbkJhbGFuY2VGb3JBY2NvdW50KGNvbnRyYWN0czogdWludDY0LCBleHRyYVBhZ2VzOiB1aW50NjQsIGFzc2V0czogdWludDY0LCBsb2NhbEludHM6IHVpbnQ2NCwgbG9jYWxCeXRlczogdWludDY0LCBnbG9iYWxJbnRzOiB1aW50NjQsIGdsb2JhbEJ5dGVzOiB1aW50NjQpOiB1aW50NjQKbWluQmFsYW5jZUZvckFjY291bnQ6Cglwcm90byA3IDEKCgkvLyBQdXNoIGVtcHR5IGJ5dGVzIGFmdGVyIHRoZSBmcmFtZSBwb2ludGVyIHRvIHJlc2VydmUgc3BhY2UgZm9yIGxvY2FsIHZhcmlhYmxlcwoJYnl0ZWMgMSAvLyAweAoKCS8vIGNvbnRyYWN0cy92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjE0MDIKCS8vIG1pbkJhbCA9IEFMR09SQU5EX0FDQ09VTlRfTUlOX0JBTEFOQ0UKCWludGMgMTYgLy8gMTAwMDAwCglmcmFtZV9idXJ5IDAgLy8gbWluQmFsOiB1aW50NjQKCgkvLyBjb250cmFjdHMvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxNDAzCgkvLyBtaW5CYWwgKz0gY29udHJhY3RzICogQVBQTElDQVRJT05fQkFTRV9GRUUKCWZyYW1lX2RpZyAwIC8vIG1pbkJhbDogdWludDY0CglmcmFtZV9kaWcgLTEgLy8gY29udHJhY3RzOiB1aW50NjQKCWludGMgMTYgLy8gMTAwMDAwCgkqCgkrCglmcmFtZV9idXJ5IDAgLy8gbWluQmFsOiB1aW50NjQKCgkvLyBjb250cmFjdHMvdmFsaWRhdG9yUmVnaXN0cnkuYWxnby50czoxNDA0CgkvLyBtaW5CYWwgKz0gZXh0cmFQYWdlcyAqIEFQUExJQ0FUSU9OX0JBU0VfRkVFCglmcmFtZV9kaWcgMCAvLyBtaW5CYWw6IHVpbnQ2NAoJZnJhbWVfZGlnIC0yIC8vIGV4dHJhUGFnZXM6IHVpbnQ2NAoJaW50YyAxNiAvLyAxMDAwMDAKCSoKCSsKCWZyYW1lX2J1cnkgMCAvLyBtaW5CYWw6IHVpbnQ2NAoKCS8vIGNvbnRyYWN0cy92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjE0MDUKCS8vIG1pbkJhbCArPSBhc3NldHMgKiBBU1NFVF9IT0xESU5HX0ZFRQoJZnJhbWVfZGlnIDAgLy8gbWluQmFsOiB1aW50NjQKCWZyYW1lX2RpZyAtMyAvLyBhc3NldHM6IHVpbnQ2NAoJaW50YyAxNiAvLyAxMDAwMDAKCSoKCSsKCWZyYW1lX2J1cnkgMCAvLyBtaW5CYWw6IHVpbnQ2NAoKCS8vIGNvbnRyYWN0cy92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjE0MDYKCS8vIG1pbkJhbCArPSBsb2NhbEludHMgKiBTU0NfVkFMVUVfVUlOVAoJZnJhbWVfZGlnIDAgLy8gbWluQmFsOiB1aW50NjQKCWZyYW1lX2RpZyAtNCAvLyBsb2NhbEludHM6IHVpbnQ2NAoJaW50YyAzMyAvLyAyODUwMAoJKgoJKwoJZnJhbWVfYnVyeSAwIC8vIG1pbkJhbDogdWludDY0CgoJLy8gY29udHJhY3RzL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTQwNwoJLy8gbWluQmFsICs9IGdsb2JhbEludHMgKiBTU0NfVkFMVUVfVUlOVAoJZnJhbWVfZGlnIDAgLy8gbWluQmFsOiB1aW50NjQKCWZyYW1lX2RpZyAtNiAvLyBnbG9iYWxJbnRzOiB1aW50NjQKCWludGMgMzMgLy8gMjg1MDAKCSoKCSsKCWZyYW1lX2J1cnkgMCAvLyBtaW5CYWw6IHVpbnQ2NAoKCS8vIGNvbnRyYWN0cy92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjE0MDgKCS8vIG1pbkJhbCArPSBsb2NhbEJ5dGVzICogU1NDX1ZBTFVFX0JZVEVTCglmcmFtZV9kaWcgMCAvLyBtaW5CYWw6IHVpbnQ2NAoJZnJhbWVfZGlnIC01IC8vIGxvY2FsQnl0ZXM6IHVpbnQ2NAoJaW50YyAzNCAvLyA1MDAwMAoJKgoJKwoJZnJhbWVfYnVyeSAwIC8vIG1pbkJhbDogdWludDY0CgoJLy8gY29udHJhY3RzL3ZhbGlkYXRvclJlZ2lzdHJ5LmFsZ28udHM6MTQwOQoJLy8gbWluQmFsICs9IGdsb2JhbEJ5dGVzICogU1NDX1ZBTFVFX0JZVEVTCglmcmFtZV9kaWcgMCAvLyBtaW5CYWw6IHVpbnQ2NAoJZnJhbWVfZGlnIC03IC8vIGdsb2JhbEJ5dGVzOiB1aW50NjQKCWludGMgMzQgLy8gNTAwMDAKCSoKCSsKCWZyYW1lX2J1cnkgMCAvLyBtaW5CYWw6IHVpbnQ2NAoKCS8vIGNvbnRyYWN0cy92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjE0MTAKCS8vIHJldHVybiBtaW5CYWwKCWZyYW1lX2RpZyAwIC8vIG1pbkJhbDogdWludDY0CgoJLy8gc2V0IHRoZSBzdWJyb3V0aW5lIHJldHVybiB2YWx1ZQoJZnJhbWVfYnVyeSAwCglyZXRzdWIKCi8vIGNvc3RGb3JCb3hTdG9yYWdlKHRvdGFsTnVtQnl0ZXM6IHVpbnQ2NCk6IHVpbnQ2NApjb3N0Rm9yQm94U3RvcmFnZToKCXByb3RvIDEgMQoKCS8vIGNvbnRyYWN0cy92YWxpZGF0b3JSZWdpc3RyeS5hbGdvLnRzOjE0MTcKCS8vIHJldHVybiBTQ0JPWF9QRVJCT1ggKyB0b3RhbE51bUJ5dGVzICogU0NCT1hfUEVSQllURQoJcHVzaGludCAyNTAwCglmcmFtZV9kaWcgLTEgLy8gdG90YWxOdW1CeXRlczogdWludDY0CglwdXNoaW50IDQwMAoJKgoJKwoJcmV0c3ViCgoqY3JlYXRlX05vT3A6CglwdXNoYnl0ZXMgMHhiODQ0N2IzNiAvLyBtZXRob2QgImNyZWF0ZUFwcGxpY2F0aW9uKCl2b2lkIgoJdHhuYSBBcHBsaWNhdGlvbkFyZ3MgMAoJbWF0Y2ggKmFiaV9yb3V0ZV9jcmVhdGVBcHBsaWNhdGlvbgoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjcmVhdGUgTm9PcAoJZXJyCgoqY2FsbF9Ob09wOgoJcHVzaGJ5dGVzIDB4MWI1ZTgyYzYgLy8gbWV0aG9kICJpbml0U3Rha2luZ0NvbnRyYWN0KHVpbnQ2NCl2b2lkIgoJcHVzaGJ5dGVzIDB4Nzk0NzJkODMgLy8gbWV0aG9kICJsb2FkU3Rha2luZ0NvbnRyYWN0RGF0YSh1aW50NjQsYnl0ZVtdKXZvaWQiCglwdXNoYnl0ZXMgMHg1ZjdhY2ZkOSAvLyBtZXRob2QgImZpbmFsaXplU3Rha2luZ0NvbnRyYWN0KCl2b2lkIgoJcHVzaGJ5dGVzIDB4MzE3MmNhOWQgLy8gbWV0aG9kICJnYXMoKXZvaWQiCglwdXNoYnl0ZXMgMHg4YTg3MTQyZCAvLyBtZXRob2QgImdldE1ickFtb3VudHMoKSh1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50NjQpIgoJcHVzaGJ5dGVzIDB4ZDEzNjZjYzMgLy8gbWV0aG9kICJnZXRQcm90b2NvbENvbnN0cmFpbnRzKCkodWludDY0LHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDY0LHVpbnQ2NCkiCglwdXNoYnl0ZXMgMHgzYjA0NWM1YyAvLyBtZXRob2QgImdldE51bVZhbGlkYXRvcnMoKXVpbnQ2NCIKCXB1c2hieXRlcyAweDc1YWZmNjFkIC8vIG1ldGhvZCAiZ2V0VmFsaWRhdG9yQ29uZmlnKHVpbnQ2NCkodWludDY0LGFkZHJlc3MsYWRkcmVzcyx1aW50NjQsdWludDgsYWRkcmVzcyx1aW50NjRbNF0sdWludDY0LHVpbnQ2NCx1aW50NjQsdWludDMyLHVpbnQzMixhZGRyZXNzLHVpbnQ2NCx1aW50NjQsdWludDgsdWludDY0LHVpbnQ2NCkiCglwdXNoYnl0ZXMgMHgxZjJmMDEwOSAvLyBtZXRob2QgImdldFZhbGlkYXRvclN0YXRlKHVpbnQ2NCkodWludDE2LHVpbnQ2NCx1aW50NjQsdWludDY0KSIKCXB1c2hieXRlcyAweDJmYTIyYzRiIC8vIG1ldGhvZCAiZ2V0VmFsaWRhdG9yT3duZXJBbmRNYW5hZ2VyKHVpbnQ2NCkoYWRkcmVzcyxhZGRyZXNzKSIKCXB1c2hieXRlcyAweDkxMGU5NGFjIC8vIG1ldGhvZCAiZ2V0UG9vbHModWludDY0KSh1aW50NjQsdWludDE2LHVpbnQ2NClbXSIKCXB1c2hieXRlcyAweDU3Mjc2N2QxIC8vIG1ldGhvZCAiZ2V0UG9vbEFwcElkKHVpbnQ2NCx1aW50NjQpdWludDY0IgoJcHVzaGJ5dGVzIDB4OWI1MDRhYWYgLy8gbWV0aG9kICJnZXRQb29sSW5mbygodWludDY0LHVpbnQ2NCx1aW50NjQpKSh1aW50NjQsdWludDE2LHVpbnQ2NCkiCglwdXNoYnl0ZXMgMHhmYmM2MzE3OCAvLyBtZXRob2QgImdldEN1ck1heFN0YWtlUGVyUG9vbCh1aW50NjQpdWludDY0IgoJcHVzaGJ5dGVzIDB4MjQ0OThjZjQgLy8gbWV0aG9kICJkb2VzU3Rha2VyTmVlZFRvUGF5TUJSKGFkZHJlc3MpYm9vbCIKCXB1c2hieXRlcyAweGY4NDZkZDdhIC8vIG1ldGhvZCAiZ2V0U3Rha2VkUG9vbHNGb3JBY2NvdW50KGFkZHJlc3MpKHVpbnQ2NCx1aW50NjQsdWludDY0KVtdIgoJcHVzaGJ5dGVzIDB4ODMwNTA1MDEgLy8gbWV0aG9kICJnZXRUb2tlblBheW91dFJhdGlvKHVpbnQ2NCkodWludDY0WzI0XSx1aW50NjQpIgoJcHVzaGJ5dGVzIDB4N2JiYjZjOGQgLy8gbWV0aG9kICJnZXROb2RlUG9vbEFzc2lnbm1lbnRzKHVpbnQ2NCkoKHVpbnQ2NFszXSlbOF0pIgoJcHVzaGJ5dGVzIDB4ZjgzOTQxNGEgLy8gbWV0aG9kICJnZXRORkRSZWdpc3RyeUlEKCl1aW50NjQiCglwdXNoYnl0ZXMgMHgwYzMxN2NmYiAvLyBtZXRob2QgImFkZFZhbGlkYXRvcihwYXksc3RyaW5nLCh1aW50NjQsYWRkcmVzcyxhZGRyZXNzLHVpbnQ2NCx1aW50OCxhZGRyZXNzLHVpbnQ2NFs0XSx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50MzIsdWludDMyLGFkZHJlc3MsdWludDY0LHVpbnQ2NCx1aW50OCx1aW50NjQsdWludDY0KSl1aW50NjQiCglwdXNoYnl0ZXMgMHgzZTI4ODk3MiAvLyBtZXRob2QgImNoYW5nZVZhbGlkYXRvck1hbmFnZXIodWludDY0LGFkZHJlc3Mpdm9pZCIKCXB1c2hieXRlcyAweGRkNWZhYWRhIC8vIG1ldGhvZCAiY2hhbmdlVmFsaWRhdG9yU3Vuc2V0SW5mbyh1aW50NjQsdWludDY0LHVpbnQ2NCl2b2lkIgoJcHVzaGJ5dGVzIDB4MThhYWM3YTcgLy8gbWV0aG9kICJjaGFuZ2VWYWxpZGF0b3JORkQodWludDY0LHVpbnQ2NCxzdHJpbmcpdm9pZCIKCXB1c2hieXRlcyAweGY5OWVmNTRkIC8vIG1ldGhvZCAiY2hhbmdlVmFsaWRhdG9yQ29tbWlzc2lvbkFkZHJlc3ModWludDY0LGFkZHJlc3Mpdm9pZCIKCXB1c2hieXRlcyAweDEwODA5ZDRkIC8vIG1ldGhvZCAiY2hhbmdlVmFsaWRhdG9yUmV3YXJkSW5mbyh1aW50NjQsdWludDgsYWRkcmVzcyx1aW50NjRbNF0sdWludDY0LHVpbnQ2NCl2b2lkIgoJcHVzaGJ5dGVzIDB4ZTc3OGRkNWEgLy8gbWV0aG9kICJhZGRQb29sKHBheSx1aW50NjQsdWludDY0KSh1aW50NjQsdWludDY0LHVpbnQ2NCkiCglwdXNoYnl0ZXMgMHhiZjUyNTlkMCAvLyBtZXRob2QgImFkZFN0YWtlKHBheSx1aW50NjQsdWludDY0KSh1aW50NjQsdWludDY0LHVpbnQ2NCkiCglwdXNoYnl0ZXMgMHg0ZGY4ZDg2ZSAvLyBtZXRob2QgInNldFRva2VuUGF5b3V0UmF0aW8odWludDY0KSh1aW50NjRbMjRdLHVpbnQ2NCkiCglwdXNoYnl0ZXMgMHg0MThmY2VmYyAvLyBtZXRob2QgInN0YWtlVXBkYXRlZFZpYVJld2FyZHMoKHVpbnQ2NCx1aW50NjQsdWludDY0KSx1aW50NjQsdWludDY0LHVpbnQ2NCx1aW50NjQpdm9pZCIKCXB1c2hieXRlcyAweGEyZGM1MWI1IC8vIG1ldGhvZCAic3Rha2VSZW1vdmVkKCh1aW50NjQsdWludDY0LHVpbnQ2NCksYWRkcmVzcyx1aW50NjQsdWludDY0LGJvb2wpdm9pZCIKCXB1c2hieXRlcyAweDI4NzNmNTA0IC8vIG1ldGhvZCAiZmluZFBvb2xGb3JTdGFrZXIodWludDY0LGFkZHJlc3MsdWludDY0KSgodWludDY0LHVpbnQ2NCx1aW50NjQpLGJvb2wsYm9vbCkiCglwdXNoYnl0ZXMgMHgwNTQ3ZjRmZSAvLyBtZXRob2QgIm1vdmVQb29sVG9Ob2RlKHVpbnQ2NCx1aW50NjQsdWludDY0KXZvaWQiCglwdXNoYnl0ZXMgMHhjYjY2ODM1OCAvLyBtZXRob2QgImVtcHR5VG9rZW5SZXdhcmRzKHVpbnQ2NCxhZGRyZXNzKXVpbnQ2NCIKCXR4bmEgQXBwbGljYXRpb25BcmdzIDAKCW1hdGNoICphYmlfcm91dGVfaW5pdFN0YWtpbmdDb250cmFjdCAqYWJpX3JvdXRlX2xvYWRTdGFraW5nQ29udHJhY3REYXRhICphYmlfcm91dGVfZmluYWxpemVTdGFraW5nQ29udHJhY3QgKmFiaV9yb3V0ZV9nYXMgKmFiaV9yb3V0ZV9nZXRNYnJBbW91bnRzICphYmlfcm91dGVfZ2V0UHJvdG9jb2xDb25zdHJhaW50cyAqYWJpX3JvdXRlX2dldE51bVZhbGlkYXRvcnMgKmFiaV9yb3V0ZV9nZXRWYWxpZGF0b3JDb25maWcgKmFiaV9yb3V0ZV9nZXRWYWxpZGF0b3JTdGF0ZSAqYWJpX3JvdXRlX2dldFZhbGlkYXRvck93bmVyQW5kTWFuYWdlciAqYWJpX3JvdXRlX2dldFBvb2xzICphYmlfcm91dGVfZ2V0UG9vbEFwcElkICphYmlfcm91dGVfZ2V0UG9vbEluZm8gKmFiaV9yb3V0ZV9nZXRDdXJNYXhTdGFrZVBlclBvb2wgKmFiaV9yb3V0ZV9kb2VzU3Rha2VyTmVlZFRvUGF5TUJSICphYmlfcm91dGVfZ2V0U3Rha2VkUG9vbHNGb3JBY2NvdW50ICphYmlfcm91dGVfZ2V0VG9rZW5QYXlvdXRSYXRpbyAqYWJpX3JvdXRlX2dldE5vZGVQb29sQXNzaWdubWVudHMgKmFiaV9yb3V0ZV9nZXRORkRSZWdpc3RyeUlEICphYmlfcm91dGVfYWRkVmFsaWRhdG9yICphYmlfcm91dGVfY2hhbmdlVmFsaWRhdG9yTWFuYWdlciAqYWJpX3JvdXRlX2NoYW5nZVZhbGlkYXRvclN1bnNldEluZm8gKmFiaV9yb3V0ZV9jaGFuZ2VWYWxpZGF0b3JORkQgKmFiaV9yb3V0ZV9jaGFuZ2VWYWxpZGF0b3JDb21taXNzaW9uQWRkcmVzcyAqYWJpX3JvdXRlX2NoYW5nZVZhbGlkYXRvclJld2FyZEluZm8gKmFiaV9yb3V0ZV9hZGRQb29sICphYmlfcm91dGVfYWRkU3Rha2UgKmFiaV9yb3V0ZV9zZXRUb2tlblBheW91dFJhdGlvICphYmlfcm91dGVfc3Rha2VVcGRhdGVkVmlhUmV3YXJkcyAqYWJpX3JvdXRlX3N0YWtlUmVtb3ZlZCAqYWJpX3JvdXRlX2ZpbmRQb29sRm9yU3Rha2VyICphYmlfcm91dGVfbW92ZVBvb2xUb05vZGUgKmFiaV9yb3V0ZV9lbXB0eVRva2VuUmV3YXJkcwoKCS8vIHRoaXMgY29udHJhY3QgZG9lcyBub3QgaW1wbGVtZW50IHRoZSBnaXZlbiBBQkkgbWV0aG9kIGZvciBjYWxsIE5vT3AKCWVycg==", "clear": "I3ByYWdtYSB2ZXJzaW9uIDEx" }, "templateVariables": { "nfdRegistryAppId": { "type": "uint64" } }, "scratchVariables": { "nfdRegistryAppId": { "type": "uint64", "slot": 200 } }, "compilerInfo": { "compiler": "algod", "compilerVersion": { "major": 3, "minor": 26, "patch": 0, "commitHash": "0d10b244" } } }