{
  "contractName": "ConvictionVotingMock",
  "abi": [
    {
      "constant": true,
      "inputs": [
        {
          "name": "_interfaceId",
          "type": "bytes4"
        }
      ],
      "name": "supportsInterface",
      "outputs": [
        {
          "name": "",
          "type": "bool"
        }
      ],
      "payable": false,
      "stateMutability": "pure",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [],
      "name": "stableTokenOracle",
      "outputs": [
        {
          "name": "",
          "type": "address"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [],
      "name": "hasInitialized",
      "outputs": [
        {
          "name": "",
          "type": "bool"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [],
      "name": "proposalCounter",
      "outputs": [
        {
          "name": "",
          "type": "uint256"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [],
      "name": "fundsManager",
      "outputs": [
        {
          "name": "",
          "type": "address"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": false,
      "inputs": [
        {
          "name": "_proposalId",
          "type": "uint256"
        }
      ],
      "name": "executeProposal",
      "outputs": [],
      "payable": false,
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [],
      "name": "D",
      "outputs": [
        {
          "name": "",
          "type": "uint256"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [],
      "name": "ABSTAIN_PROPOSAL_ID",
      "outputs": [
        {
          "name": "",
          "type": "uint256"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": false,
      "inputs": [
        {
          "name": "_proposalId",
          "type": "uint256"
        }
      ],
      "name": "stakeAllToProposal",
      "outputs": [],
      "payable": false,
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "constant": false,
      "inputs": [
        {
          "name": "_agreement",
          "type": "address"
        }
      ],
      "name": "setAgreement",
      "outputs": [],
      "payable": false,
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [
        {
          "name": "_script",
          "type": "bytes"
        }
      ],
      "name": "getEVMScriptExecutor",
      "outputs": [
        {
          "name": "",
          "type": "address"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [],
      "name": "getRecoveryVault",
      "outputs": [
        {
          "name": "",
          "type": "address"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [],
      "name": "MAX_STAKED_PROPOSALS",
      "outputs": [
        {
          "name": "",
          "type": "uint64"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": false,
      "inputs": [
        {
          "name": "_stableTokenOracle",
          "type": "address"
        },
        {
          "name": "_stableToken",
          "type": "address"
        }
      ],
      "name": "setStableTokenOracleSettings",
      "outputs": [],
      "payable": false,
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "constant": false,
      "inputs": [
        {
          "name": "_from",
          "type": "address"
        },
        {
          "name": "_to",
          "type": "address"
        },
        {
          "name": "_amount",
          "type": "uint256"
        }
      ],
      "name": "onTransfer",
      "outputs": [
        {
          "name": "",
          "type": "bool"
        }
      ],
      "payable": false,
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "constant": false,
      "inputs": [
        {
          "name": "_hookId",
          "type": "uint256"
        },
        {
          "name": "_token",
          "type": "address"
        }
      ],
      "name": "onRegisterAsHook",
      "outputs": [],
      "payable": false,
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [],
      "name": "requestToken",
      "outputs": [
        {
          "name": "",
          "type": "address"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": false,
      "inputs": [
        {
          "name": "_title",
          "type": "string"
        },
        {
          "name": "_link",
          "type": "bytes"
        },
        {
          "name": "_requestedAmount",
          "type": "uint256"
        },
        {
          "name": "_stableRequestAmount",
          "type": "bool"
        },
        {
          "name": "_beneficiary",
          "type": "address"
        }
      ],
      "name": "addProposal",
      "outputs": [],
      "payable": false,
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [],
      "name": "UPDATE_SETTINGS_ROLE",
      "outputs": [
        {
          "name": "",
          "type": "bytes32"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": false,
      "inputs": [
        {
          "name": "_proposalId",
          "type": "uint256"
        }
      ],
      "name": "withdrawAllFromProposal",
      "outputs": [],
      "payable": false,
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [],
      "name": "stakeToken",
      "outputs": [
        {
          "name": "",
          "type": "address"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [],
      "name": "decay",
      "outputs": [
        {
          "name": "",
          "type": "uint256"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [
        {
          "name": "_requestedAmount",
          "type": "uint256"
        }
      ],
      "name": "calculateThreshold",
      "outputs": [
        {
          "name": "_threshold",
          "type": "uint256"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": false,
      "inputs": [
        {
          "name": "_seconds",
          "type": "uint256"
        }
      ],
      "name": "mockDecreaseTime",
      "outputs": [],
      "payable": false,
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "constant": false,
      "inputs": [
        {
          "name": "_stakeToken",
          "type": "address"
        },
        {
          "name": "_requestToken",
          "type": "address"
        },
        {
          "name": "_stableToken",
          "type": "address"
        },
        {
          "name": "_stableTokenOracle",
          "type": "address"
        },
        {
          "name": "_fundsManager",
          "type": "address"
        },
        {
          "name": "_decay",
          "type": "uint256"
        },
        {
          "name": "_maxRatio",
          "type": "uint256"
        },
        {
          "name": "_weight",
          "type": "uint256"
        },
        {
          "name": "_minThresholdStakePercentage",
          "type": "uint256"
        }
      ],
      "name": "initialize",
      "outputs": [],
      "payable": false,
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "constant": false,
      "inputs": [
        {
          "name": "_proposalId",
          "type": "uint256"
        },
        {
          "name": "_amount",
          "type": "uint256"
        }
      ],
      "name": "withdrawFromProposal",
      "outputs": [],
      "payable": false,
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "constant": false,
      "inputs": [
        {
          "name": "_timestamp",
          "type": "uint256"
        }
      ],
      "name": "mockSetTimestamp",
      "outputs": [],
      "payable": false,
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [
        {
          "name": "_proposalId",
          "type": "uint256"
        }
      ],
      "name": "canChallenge",
      "outputs": [
        {
          "name": "",
          "type": "bool"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [
        {
          "name": "_voter",
          "type": "address"
        }
      ],
      "name": "getVoterStakedProposals",
      "outputs": [
        {
          "name": "",
          "type": "uint256[]"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [],
      "name": "getBlockNumberPublic",
      "outputs": [
        {
          "name": "",
          "type": "uint256"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [],
      "name": "maxRatio",
      "outputs": [
        {
          "name": "",
          "type": "uint256"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [
        {
          "name": "_proposalId",
          "type": "uint256"
        }
      ],
      "name": "canClose",
      "outputs": [
        {
          "name": "",
          "type": "bool"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": false,
      "inputs": [
        {
          "name": "_number",
          "type": "uint256"
        }
      ],
      "name": "mockAdvanceBlocks",
      "outputs": [],
      "payable": false,
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "constant": false,
      "inputs": [
        {
          "name": "_disputableActionId",
          "type": "uint256"
        }
      ],
      "name": "onDisputableActionAllowed",
      "outputs": [],
      "payable": false,
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [],
      "name": "getTimestampPublic",
      "outputs": [
        {
          "name": "",
          "type": "uint64"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [
        {
          "name": "token",
          "type": "address"
        }
      ],
      "name": "allowRecoverability",
      "outputs": [
        {
          "name": "",
          "type": "bool"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": false,
      "inputs": [
        {
          "name": "_disputableActionId",
          "type": "uint256"
        },
        {
          "name": "_challengeId",
          "type": "uint256"
        },
        {
          "name": "_challenger",
          "type": "address"
        }
      ],
      "name": "onDisputableActionChallenged",
      "outputs": [],
      "payable": false,
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [],
      "name": "appId",
      "outputs": [
        {
          "name": "",
          "type": "bytes32"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [],
      "name": "totalStaked",
      "outputs": [
        {
          "name": "",
          "type": "uint256"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [],
      "name": "contractPaused",
      "outputs": [
        {
          "name": "",
          "type": "bool"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [],
      "name": "getInitializationBlock",
      "outputs": [
        {
          "name": "",
          "type": "uint256"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": false,
      "inputs": [
        {
          "name": "_seconds",
          "type": "uint256"
        }
      ],
      "name": "mockIncreaseTime",
      "outputs": [],
      "payable": false,
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [],
      "name": "CHALLENGE_ROLE",
      "outputs": [
        {
          "name": "",
          "type": "bytes32"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [],
      "name": "mockedBlockNumber",
      "outputs": [
        {
          "name": "",
          "type": "uint256"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": false,
      "inputs": [
        {
          "name": "_fundsManager",
          "type": "address"
        }
      ],
      "name": "setFundsManager",
      "outputs": [],
      "payable": false,
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "constant": false,
      "inputs": [
        {
          "name": "_token",
          "type": "address"
        }
      ],
      "name": "transferToVault",
      "outputs": [],
      "payable": false,
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "constant": false,
      "inputs": [],
      "name": "withdrawFromInactiveProposals",
      "outputs": [],
      "payable": false,
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [
        {
          "name": "_sender",
          "type": "address"
        },
        {
          "name": "_role",
          "type": "bytes32"
        },
        {
          "name": "_params",
          "type": "uint256[]"
        }
      ],
      "name": "canPerform",
      "outputs": [
        {
          "name": "",
          "type": "bool"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [],
      "name": "weight",
      "outputs": [
        {
          "name": "",
          "type": "uint256"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [],
      "name": "getEVMScriptRegistry",
      "outputs": [
        {
          "name": "",
          "type": "address"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [],
      "name": "stableToken",
      "outputs": [
        {
          "name": "",
          "type": "address"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": false,
      "inputs": [],
      "name": "getTokenManager",
      "outputs": [
        {
          "name": "",
          "type": "address"
        }
      ],
      "payable": false,
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "constant": false,
      "inputs": [
        {
          "name": "_disputableActionId",
          "type": "uint256"
        }
      ],
      "name": "onDisputableActionVoided",
      "outputs": [],
      "payable": false,
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [],
      "name": "getAgreement",
      "outputs": [
        {
          "name": "",
          "type": "address"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": false,
      "inputs": [
        {
          "name": "_hookId",
          "type": "uint256"
        },
        {
          "name": "_token",
          "type": "address"
        }
      ],
      "name": "onRevokeAsHook",
      "outputs": [],
      "payable": false,
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "constant": false,
      "inputs": [
        {
          "name": "_decay",
          "type": "uint256"
        },
        {
          "name": "_maxRatio",
          "type": "uint256"
        },
        {
          "name": "_weight",
          "type": "uint256"
        },
        {
          "name": "_minThresholdStakePercentage",
          "type": "uint256"
        }
      ],
      "name": "setConvictionCalculationSettings",
      "outputs": [],
      "payable": false,
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [
        {
          "name": "_proposalId",
          "type": "uint256"
        }
      ],
      "name": "getProposal",
      "outputs": [
        {
          "name": "requestedAmount",
          "type": "uint256"
        },
        {
          "name": "stableRequestAmount",
          "type": "bool"
        },
        {
          "name": "beneficiary",
          "type": "address"
        },
        {
          "name": "stakedTokens",
          "type": "uint256"
        },
        {
          "name": "convictionLast",
          "type": "uint256"
        },
        {
          "name": "blockLast",
          "type": "uint64"
        },
        {
          "name": "agreementActionId",
          "type": "uint256"
        },
        {
          "name": "proposalStatus",
          "type": "uint8"
        },
        {
          "name": "submitter",
          "type": "address"
        },
        {
          "name": "threshold",
          "type": "uint256"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": false,
      "inputs": [
        {
          "name": "_title",
          "type": "string"
        },
        {
          "name": "_link",
          "type": "bytes"
        }
      ],
      "name": "addSignalingProposal",
      "outputs": [],
      "payable": false,
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [],
      "name": "SET_AGREEMENT_ROLE",
      "outputs": [
        {
          "name": "",
          "type": "bytes32"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [],
      "name": "kernel",
      "outputs": [
        {
          "name": "",
          "type": "address"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": false,
      "inputs": [
        {
          "name": "_holder",
          "type": "address"
        },
        {
          "name": "_spender",
          "type": "address"
        },
        {
          "name": "_amount",
          "type": "uint256"
        }
      ],
      "name": "onApprove",
      "outputs": [
        {
          "name": "",
          "type": "bool"
        }
      ],
      "payable": false,
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [
        {
          "name": "_timePassed",
          "type": "uint64"
        },
        {
          "name": "_lastConv",
          "type": "uint256"
        },
        {
          "name": "_oldAmount",
          "type": "uint256"
        }
      ],
      "name": "calculateConviction",
      "outputs": [
        {
          "name": "",
          "type": "uint256"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [],
      "name": "minThresholdStakePercentage",
      "outputs": [
        {
          "name": "",
          "type": "uint256"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [],
      "name": "PAUSE_CONTRACT_ROLE",
      "outputs": [
        {
          "name": "",
          "type": "bytes32"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [],
      "name": "ONE_HUNDRED_PERCENT",
      "outputs": [
        {
          "name": "",
          "type": "uint256"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [
        {
          "name": "_voter",
          "type": "address"
        }
      ],
      "name": "getTotalVoterStake",
      "outputs": [
        {
          "name": "",
          "type": "uint256"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [],
      "name": "isPetrified",
      "outputs": [
        {
          "name": "",
          "type": "bool"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": false,
      "inputs": [
        {
          "name": "_proposalId",
          "type": "uint256"
        }
      ],
      "name": "cancelProposal",
      "outputs": [],
      "payable": false,
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [
        {
          "name": "_proposalId",
          "type": "uint256"
        },
        {
          "name": "_voter",
          "type": "address"
        }
      ],
      "name": "getProposalVoterStake",
      "outputs": [
        {
          "name": "",
          "type": "uint256"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": false,
      "inputs": [
        {
          "name": "_pauseEnabled",
          "type": "bool"
        }
      ],
      "name": "pauseContract",
      "outputs": [],
      "payable": false,
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [],
      "name": "CREATE_PROPOSALS_ROLE",
      "outputs": [
        {
          "name": "",
          "type": "bytes32"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [],
      "name": "CANCEL_PROPOSALS_ROLE",
      "outputs": [
        {
          "name": "",
          "type": "bytes32"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [],
      "name": "mockedTimestamp",
      "outputs": [
        {
          "name": "",
          "type": "uint256"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": false,
      "inputs": [
        {
          "name": "_disputableActionId",
          "type": "uint256"
        }
      ],
      "name": "onDisputableActionRejected",
      "outputs": [],
      "payable": false,
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "constant": false,
      "inputs": [
        {
          "name": "_proposalId",
          "type": "uint256"
        },
        {
          "name": "_amount",
          "type": "uint256"
        }
      ],
      "name": "stakeToProposal",
      "outputs": [],
      "payable": false,
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": false,
          "name": "pauseEnabled",
          "type": "bool"
        }
      ],
      "name": "ContractPaused",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": false,
          "name": "stableTokenOracle",
          "type": "address"
        },
        {
          "indexed": false,
          "name": "stableToken",
          "type": "address"
        }
      ],
      "name": "OracleSettingsChanged",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": false,
          "name": "fundsManager",
          "type": "address"
        }
      ],
      "name": "FundsManagerChanged",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": false,
          "name": "decay",
          "type": "uint256"
        },
        {
          "indexed": false,
          "name": "maxRatio",
          "type": "uint256"
        },
        {
          "indexed": false,
          "name": "weight",
          "type": "uint256"
        },
        {
          "indexed": false,
          "name": "minThresholdStakePercentage",
          "type": "uint256"
        }
      ],
      "name": "ConvictionSettingsChanged",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": true,
          "name": "entity",
          "type": "address"
        },
        {
          "indexed": true,
          "name": "id",
          "type": "uint256"
        },
        {
          "indexed": true,
          "name": "actionId",
          "type": "uint256"
        },
        {
          "indexed": false,
          "name": "title",
          "type": "string"
        },
        {
          "indexed": false,
          "name": "link",
          "type": "bytes"
        },
        {
          "indexed": false,
          "name": "amount",
          "type": "uint256"
        },
        {
          "indexed": false,
          "name": "stable",
          "type": "bool"
        },
        {
          "indexed": false,
          "name": "beneficiary",
          "type": "address"
        }
      ],
      "name": "ProposalAdded",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": true,
          "name": "entity",
          "type": "address"
        },
        {
          "indexed": true,
          "name": "id",
          "type": "uint256"
        },
        {
          "indexed": false,
          "name": "amount",
          "type": "uint256"
        },
        {
          "indexed": false,
          "name": "tokensStaked",
          "type": "uint256"
        },
        {
          "indexed": false,
          "name": "totalTokensStaked",
          "type": "uint256"
        },
        {
          "indexed": false,
          "name": "conviction",
          "type": "uint256"
        }
      ],
      "name": "StakeAdded",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": false,
          "name": "entity",
          "type": "address"
        },
        {
          "indexed": true,
          "name": "id",
          "type": "uint256"
        },
        {
          "indexed": false,
          "name": "amount",
          "type": "uint256"
        },
        {
          "indexed": false,
          "name": "tokensStaked",
          "type": "uint256"
        },
        {
          "indexed": false,
          "name": "totalTokensStaked",
          "type": "uint256"
        },
        {
          "indexed": false,
          "name": "conviction",
          "type": "uint256"
        }
      ],
      "name": "StakeWithdrawn",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": true,
          "name": "id",
          "type": "uint256"
        },
        {
          "indexed": false,
          "name": "conviction",
          "type": "uint256"
        }
      ],
      "name": "ProposalExecuted",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": true,
          "name": "proposalId",
          "type": "uint256"
        },
        {
          "indexed": true,
          "name": "challengeId",
          "type": "uint256"
        }
      ],
      "name": "ProposalPaused",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": true,
          "name": "proposalId",
          "type": "uint256"
        }
      ],
      "name": "ProposalResumed",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": true,
          "name": "proposalId",
          "type": "uint256"
        }
      ],
      "name": "ProposalCancelled",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": true,
          "name": "proposalId",
          "type": "uint256"
        }
      ],
      "name": "ProposalRejected",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": true,
          "name": "executor",
          "type": "address"
        },
        {
          "indexed": false,
          "name": "script",
          "type": "bytes"
        },
        {
          "indexed": false,
          "name": "input",
          "type": "bytes"
        },
        {
          "indexed": false,
          "name": "returnData",
          "type": "bytes"
        }
      ],
      "name": "ScriptResult",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": true,
          "name": "vault",
          "type": "address"
        },
        {
          "indexed": true,
          "name": "token",
          "type": "address"
        },
        {
          "indexed": false,
          "name": "amount",
          "type": "uint256"
        }
      ],
      "name": "RecoverToVault",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": true,
          "name": "agreement",
          "type": "address"
        }
      ],
      "name": "AgreementSet",
      "type": "event"
    }
  ],
  "bytecode": "0x6080604052620000176401000000006200001d810204565b6200023b565b6200003064010000000062000125810204565b60408051808201909152601881527f494e49545f414c52454144595f494e495449414c495a45440000000000000000602082015290156200010c576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825283818151815260200191508051906020019080838360005b83811015620000d0578181015183820152602001620000b6565b50505050905090810190601f168015620000fe5780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b506200012360001964010000000062000154810204565b565b60006200014f6000805160206200619a833981519152640100000000620045226200023382021704565b905090565b6200016764010000000062000125810204565b60408051808201909152601881527f494e49545f414c52454144595f494e495449414c495a454400000000000000006020820152901562000206576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252838181518152602001915080519060200190808383600083811015620000d0578181015183820152602001620000b6565b50620002306000805160206200619a833981519152826401000000006200451e6200023782021704565b50565b5490565b9055565b615f4f806200024b6000396000f3006080604052600436106103555763ffffffff60e060020a60003504166301ffc9a7811461035a5780630649d6dc146103905780630803fac0146103c15780630c0512e9146103d65780630d116652146103fd5780630d61b519146104125780630f529ba21461042c5780631522eb43146104415780631df67d2f146104565780631e9ae2f41461046e5780632914b9bd1461048f57806332f0a3b5146104e8578063406244d8146104fd5780634570c1751461052e5780634a393149146105555780634d4eb6ce1461057f5780634d7ec628146105a35780634ef4d13f146105b85780634f629fbb146105f85780634fb3cbbc1461060d57806351ed6a301461062557806354fac9191461063a57806359a5db8b1461064f57806360be675f146106675780636322b5131461067f578063649c649c146106c55780636958839e146106e05780636ab6802b146106f85780636ae1e541146107105780636da1dfac1461078157806376365af71461079657806376740b5b146107ab5780637750db14146107c35780637ad267b6146107db5780637e365950146107f35780637e7db6e1146108085780637f439ce01461082957806380afdea814610850578063817b1cd2146108655780638a67456a1461087a5780638b3dd7491461088f5780638f49e12f146108a45780638f911dca146108bc57806398fdacb7146108d157806399c7e2e8146108e65780639d4941d8146109075780639d99856614610928578063a1658fad1461093d578063a1aab33f146109a4578063a479e508146109b9578063a9d75b2b146109ce578063ab97d59d146109e3578063b0863063146109f8578063bca60cf514610a10578063c2239b2414610a25578063c35ac76d14610a49578063c7f758a814610a6a578063cbdda5e114610b1f578063d35424fa14610b4b578063d4aae0c414610b60578063da682aeb14610b75578063dac6126014610b9f578063db2d878c14610bc6578063dcdf8e3914610bdb578063dd0081c714610bf0578063ddc90e7e14610c05578063de4796ed14610c26578063e0a8f6f514610c3b578063e0dd2c3814610c53578063e272b89214610c77578063eeabf67e14610c91578063f31bbd7f14610ca6578063f7796cd314610cbb578063f83a151514610cd0578063fc37005114610ce8575b600080fd5b34801561036657600080fd5b5061037c600160e060020a031960043516610d03565b604080519115158252519081900360200190f35b34801561039c57600080fd5b506103a5610d32565b60408051600160a060020a039092168252519081900360200190f35b3480156103cd57600080fd5b5061037c610d41565b3480156103e257600080fd5b506103eb610d6b565b60408051918252519081900360200190f35b34801561040957600080fd5b506103a5610d71565b34801561041e57600080fd5b5061042a600435610d80565b005b34801561043857600080fd5b506103eb6112c9565b34801561044d57600080fd5b506103eb6112d0565b34801561046257600080fd5b5061042a6004356112d5565b34801561047a57600080fd5b5061042a600160a060020a0360043516611473565b34801561049b57600080fd5b506040805160206004803580820135601f81018490048402850184019095528484526103a594369492936024939284019190819084018382808284375094975061160f9650505050505050565b3480156104f457600080fd5b506103a56116f5565b34801561050957600080fd5b5061051261176e565b604080516001604060020a039092168252519081900360200190f35b34801561053a57600080fd5b5061042a600160a060020a0360043581169060243516611773565b34801561056157600080fd5b5061037c600160a060020a0360043581169060243516604435611886565b34801561058b57600080fd5b5061042a600435600160a060020a03602435166119cd565b3480156105af57600080fd5b506103a5611b3f565b3480156105c457600080fd5b5061042a60246004803582810192908201359181359182019101356044356064351515600160a060020a0360843516611b4e565b34801561060457600080fd5b506103eb611df1565b34801561061957600080fd5b5061042a600435611e03565b34801561063157600080fd5b506103a5611f4b565b34801561064657600080fd5b506103eb611f5a565b34801561065b57600080fd5b506103eb600435611f60565b34801561067357600080fd5b5061042a600435612166565b34801561068b57600080fd5b5061042a600160a060020a036004358116906024358116906044358116906064358116906084351660a43560c43560e4356101043561219f565b3480156106d157600080fd5b5061042a6004356024356124f8565b3480156106ec57600080fd5b5061042a600435612623565b34801561070457600080fd5b5061037c600435612628565b34801561071c57600080fd5b50610731600160a060020a0360043516612660565b60408051602080825283518183015283519192839290830191858101910280838360005b8381101561076d578181015183820152602001610755565b505050509050019250505060405180910390f35b34801561078d57600080fd5b506103eb6126cc565b3480156107a257600080fd5b506103eb6126db565b3480156107b757600080fd5b5061037c6004356126e1565b3480156107cf57600080fd5b5061042a60043561272b565b3480156107e757600080fd5b5061042a600435612764565b3480156107ff57600080fd5b506105126127f7565b34801561081457600080fd5b5061037c600160a060020a0360043516612801565b34801561083557600080fd5b5061042a600435602435600160a060020a0360443516612807565b34801561085c57600080fd5b506103eb61289c565b34801561087157600080fd5b506103eb6128c7565b34801561088657600080fd5b5061037c6128cd565b34801561089b57600080fd5b506103eb6128d6565b3480156108b057600080fd5b5061042a6004356128ef565b3480156108c857600080fd5b506103eb61291a565b3480156108dd57600080fd5b506103eb61293e565b3480156108f257600080fd5b5061042a600160a060020a0360043516612944565b34801561091357600080fd5b5061042a600160a060020a0360043516612a3c565b34801561093457600080fd5b5061042a612cc3565b34801561094957600080fd5b50604080516020600460443581810135838102808601850190965280855261037c958335600160a060020a0316956024803596369695606495939492019291829185019084908082843750949750612d4e9650505050505050565b3480156109b057600080fd5b506103eb612e9e565b3480156109c557600080fd5b506103a5612ea4565b3480156109da57600080fd5b506103a5612f43565b3480156109ef57600080fd5b506103a5612f52565b348015610a0457600080fd5b5061042a600435612f6b565b348015610a1c57600080fd5b506103a5612ffe565b348015610a3157600080fd5b5061042a600435600160a060020a0360243516613008565b348015610a5557600080fd5b5061042a600435602435604435606435613125565b348015610a7657600080fd5b50610a8260043561322a565b604051808b81526020018a15151515815260200189600160a060020a0316600160a060020a03168152602001888152602001878152602001866001604060020a03166001604060020a03168152602001858152602001846003811115610ae457fe5b60ff16815260200183600160a060020a0316600160a060020a031681526020018281526020019a505050505050505050505060405180910390f35b348015610b2b57600080fd5b5061042a6024600480358281019290820135918135918201910135613310565b348015610b5757600080fd5b506103eb6134a5565b348015610b6c57600080fd5b506103a56134b7565b348015610b8157600080fd5b5061037c600160a060020a03600435811690602435166044356134e2565b348015610bab57600080fd5b506103eb6001604060020a0360043516602435604435613601565b348015610bd257600080fd5b506103eb6136ab565b348015610be757600080fd5b506103eb6136b1565b348015610bfc57600080fd5b506103eb6136c3565b348015610c1157600080fd5b506103eb600160a060020a03600435166136cf565b348015610c3257600080fd5b5061037c6136ea565b348015610c4757600080fd5b5061042a6004356136fd565b348015610c5f57600080fd5b506103eb600435600160a060020a0360243516613a6f565b348015610c8357600080fd5b5061042a6004351515613a9b565b348015610c9d57600080fd5b506103eb613b8b565b348015610cb257600080fd5b506103eb613b9d565b348015610cc757600080fd5b506103eb613baf565b348015610cdc57600080fd5b5061042a600435613bb5565b348015610cf457600080fd5b5061042a600435602435613c48565b6000610d0e82613cd0565b80610d2c5750600160e060020a0319821660e060020a63f3d3bb5102145b92915050565b600354600160a060020a031681565b600080610d4c6128d6565b90508015801590610d64575080610d61613cfb565b10155b91505b5090565b60095481565b600454600160a060020a031681565b600b546040805180820190915260128152600080516020615ec4833981519152602082015260009182919060ff1615610e3a5760405160e560020a62461bcd0281526004018080602001828103825283818151815260200191508051906020019080838360005b83811015610dff578181015183820152602001610de7565b50505050905090810190601f168015610e2c5780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b50610e43610d41565b6040805180820190915260148152600080516020615ee48339815191526020820152901515610eb75760405160e560020a62461bcd02815260040180806020018281038252838181518152602001915080519060200190808383600083811015610dff578181015183820152602001610de7565b50828060011480610ee157506000818152600c6020526040902060080154600160a060020a031615155b60408051808201909152601a8152600080516020615f048339815191526020820152901515610f555760405160e560020a62461bcd02815260040180806020018281038252838181518152602001915080519060200190808383600083811015610dff578181015183820152602001610de7565b50600c600085815260200190815260200160002092506001841415606060405190810160405280602281526020017f43565f43414e4e4f545f455845435554455f4142535441494e5f50524f504f53815260200160f260020a611053028152509015156110075760405160e560020a62461bcd02815260040180806020018281038252838181518152602001915080519060200190808383600083811015610dff578181015183820152602001610de7565b50825460408051606081018252602581527f43565f43414e4e4f545f455845435554455f5a45524f5f56414c55455f50524f602082015260da60020a641413d4d0530291810191909152906000106110a45760405160e560020a62461bcd02815260040180806020018281038252838181518152602001915080519060200190808383600083811015610dff578181015183820152602001610de7565b506000600684015460ff1660038111156110ba57fe5b6040805180820190915260168152605060020a7543565f50524f504f53414c5f4e4f545f414354495645026020820152911461113b5760405160e560020a62461bcd02815260040180806020018281038252838181518152602001915080519060200190808383600083811015610dff578181015183820152602001610de7565b5061114a838460020154613d17565b61115383613da9565b915061115e82611f60565b60038401546040805180820190915260198152603960020a7821ab2fa4a729aaa32324a1a4a2a72a2fa1a7a72b24a1a4a7a702602082015291106111e75760405160e560020a62461bcd02815260040180806020018281038252838181518152602001915080519060200190808383600083811015610dff578181015183820152602001610de7565b5060068301805460ff19166003179055600583015461120590613e28565b6004805460018054908601546040805160e360020a6317d57599028152600160a060020a039384169581019590955261010090910482166024850152604484018690525191169163beabacc891606480830192600092919082900301818387803b15801561127257600080fd5b505af1158015611286573d6000803e3d6000fd5b505050600384015460408051918252518692507ff758fc91e01b00ea6b4a6138756f7f28e021f9bf21db6dbf8c36c88eb737257a9181900360200190a250505050565b6298968081565b600181565b6112dd610d41565b6040805180820190915260148152600080516020615ee483398151915260208201529015156113515760405160e560020a62461bcd02815260040180806020018281038252838181518152602001915080519060200190808383600083811015610dff578181015183820152602001610de7565b50336000908152600d602090815260409182902054825180840190935260198352603a60020a7810d597d4d51052d25391d7d053149150511657d4d51052d1510291830191909152156113e95760405160e560020a62461bcd02815260040180806020018281038252838181518152602001915080519060200190808383600083811015610dff578181015183820152602001610de7565b50600080546040805160e060020a6370a082310281523360048201529051611470938593600160a060020a0316926370a082319260248083019360209383900390910190829087803b15801561143e57600080fd5b505af1158015611452573d6000803e3d6000fd5b505050506040513d602081101561146857600080fd5b505133613e99565b50565b60408051600080825260208201909252600080516020615cc4833981519152906114a39033908390855b50612d4e565b60408051808201909152600f8152600080516020615ce483398151915260208201529015156115175760405160e560020a62461bcd02815260040180806020018281038252838181518152602001915080519060200190808383600083811015610dff578181015183820152602001610de7565b50611520614505565b9150600160a060020a0382161580156115415750600160a060020a03831615155b604080519081016040528060208152602001600080516020615e248339815191528152509015156115b75760405160e560020a62461bcd02815260040180806020018281038252838181518152602001915080519060200190808383600083811015610dff578181015183820152602001610de7565b506115d6600080516020615e648339815191528463ffffffff61451e16565b604051600160a060020a038416907f64d4a120bf365888d0b3f10e4d7deb8415919eaad62ee6fb5f5619082d6f641890600090a2505050565b6000611619612ea4565b600160a060020a03166304bf2a7f836040518263ffffffff1660e060020a0281526004018080602001828103825283818151815260200191508051906020019080838360005b8381101561167757818101518382015260200161165f565b50505050905090810190601f1680156116a45780820380516001836020036101000a031916815260200191505b5092505050602060405180830381600087803b1580156116c357600080fd5b505af11580156116d7573d6000803e3d6000fd5b505050506040513d60208110156116ed57600080fd5b505192915050565b60006116ff6134b7565b600160a060020a03166332f0a3b56040518163ffffffff1660e060020a028152600401602060405180830381600087803b15801561173c57600080fd5b505af1158015611750573d6000803e3d6000fd5b505050506040513d602081101561176657600080fd5b505190505b90565b600a81565b60408051600080825260208201909252600080516020615e04833981519152916117a191339184919061149d565b60408051808201909152600f8152600080516020615ce483398151915260208201529015156118155760405160e560020a62461bcd02815260040180806020018281038252838181518152602001915080519060200190808383600083811015610dff578181015183820152602001610de7565b5060038054600160a060020a03808616600160a060020a031992831681179093556002805491861691909216811790915560408051928352602083019190915280517f5c6eba356f6aa4b8375538c6b9960ec788c30ef816e3ba1d5c9f7b5aa01c8bd89281900390910190a1505050565b600033611891612f52565b600160a060020a0316146118f0576040805160e560020a62461bcd0281526020600482015260276024820152600080516020615e44833981519152604482015260c960020a6626b0b730b3b2b902606482015290519081900360840190fd5b611907600080516020615e84833981519152614522565b6040805180820190915260198152600080516020615d848339815191526020820152901561197a5760405160e560020a62461bcd02815260040180806020018281038252838181518152602001915080519060200190808383600083811015610dff578181015183820152602001610de7565b5061199a600080516020615e84833981519152600163ffffffff61451e16565b6119a5848484614526565b90506119c6600080516020615e84833981519152600063ffffffff61451e16565b9392505050565b6119e4600080516020615e84833981519152614522565b6040805180820190915260198152600080516020615d8483398151915260208201529015611a575760405160e560020a62461bcd02815260040180806020018281038252838181518152602001915080519060200190808383600083811015610dff578181015183820152602001610de7565b50611a77600080516020615e84833981519152600163ffffffff61451e16565b6000611a81612f52565b600160a060020a031614611af3576040805160e560020a62461bcd02815260206004820152602860248201527f486f6f6b20616c7265616479207265676973746572656420627920546f6b656e604482015260c160020a671026b0b730b3b2b902606482015290519081900360840190fd5b611b11600080516020615d648339815191523363ffffffff61451e16565b611b1c33838361464b565b611b3b600080516020615e84833981519152600063ffffffff61451e16565b5050565b600154600160a060020a031681565b611b56610d41565b6040805180820190915260148152600080516020615ee48339815191526020820152901515611bca5760405160e560020a62461bcd02815260040180806020018281038252838181518152602001915080519060200190808383600083811015610dff578181015183820152602001610de7565b5060408051600080825260208201909252600080516020615da483398151915291611bf991339184919061149d565b60408051808201909152600f8152600080516020615ce48339815191526020820152901515611c6d5760405160e560020a62461bcd02815260040180806020018281038252838181518152602001915080519060200190808383600083811015610dff578181015183820152602001610de7565b506040805180820190915260188152604060020a7743565f5245515545535445445f414d4f554e545f5a45524f02602082015260008511611cf35760405160e560020a62461bcd02815260040180806020018281038252838181518152602001915080519060200190808383600083811015610dff578181015183820152602001610de7565b506040805180820190915260118152607860020a7043565f4e4f5f42454e4546494349415259026020820152600160a060020a0383161515611d7a5760405160e560020a62461bcd02815260040180806020018281038252838181518152602001915080519060200190808383600083811015610dff578181015183820152602001610de7565b50611de788888080601f0160208091040260200160405190810160405280939291908181526020018383808284375050604080516020601f8e018190048102820181019092528c815294508c93508b925082915084018382808284378201915050505050508686866146e0565b5050505050505050565b600080516020615e0483398151915281565b611e0b610d41565b6040805180820190915260148152600080516020615ee48339815191526020820152901515611e7f5760405160e560020a62461bcd02815260040180806020018281038252838181518152602001915080519060200190808383600083811015610dff578181015183820152602001610de7565b50808060011480611ea957506000818152600c6020526040902060080154600160a060020a031615155b60408051808201909152601a8152600080516020615f048339815191526020820152901515611f1d5760405160e560020a62461bcd02815260040180806020018281038252838181518152602001915080519060200190808383600083811015610dff578181015183820152602001610de7565b506000828152600c6020908152604080832033808552600790910190925290912054611b3b918491906149d9565b600054600160a060020a031681565b60055481565b600480546001546040805160e060020a63e3d670d7028152600160a060020a03928316948101949094525160009384938493169163e3d670d79160248082019260209290919082900301818787803b158015611fbb57600080fd5b505af1158015611fcf573d6000803e3d6000fd5b505050506040513d6020811015611fe557600080fd5b50519150611ffc846298968063ffffffff614cb216565b60065461200f908463ffffffff614cb216565b6040805180820190915260188152604060020a7743565f414d4f554e545f4f5645525f4d41585f524154494f02602082015291106120925760405160e560020a62461bcd02815260040180806020018281038252838181518152602001915080519060200190808383600083811015610dff578181015183820152602001610de7565b506120d46120ac604060020a86028463ffffffff614d6016565b6006546120c890604060020a026298968063ffffffff614d6016565b9063ffffffff614df316565b905060406121576120e3614e7f565b61214b6120fe60055462989680614df390919063ffffffff16565b61213f6298968061214b604061211a8a8063ffffffff614cb216565b60075460029290920a90049061213f90608060020a026298968063ffffffff614d6016565b9063ffffffff614d6016565b9063ffffffff614cb216565b9060020a900492505050919050565b600f541561218957600f54612181908263ffffffff614df316565b600f55611470565b612199428263ffffffff614df316565b600f5550565b6121a76128d6565b6040805180820190915260188152604260020a771253925517d053149150511657d253925512505312569151026020820152901561222a5760405160e560020a62461bcd02815260040180806020018281038252838181518152602001915080519060200190808383600083811015610dff578181015183820152602001610de7565b506002600981905560008054600160a060020a0319908116600160a060020a038d81169190911783556001805483168d8316178155845483168c8316179094556003805483168b8316178155600480549093168a831617909255600588905560068790556007869055600885905560408051610120810182528481526020808201868152928201868152606083018781526080840188815260a0850189815260c086018a815260e087018b81526101008089018d90529b8d9052600c90965286517fd421a5181c571bba3f01190c922c3b2a896fc1d84e86c9f17ac10e67ebef8b5c90815597517fd421a5181c571bba3f01190c922c3b2a896fc1d84e86c9f17ac10e67ebef8b5d80549651909a16909b0261010060a860020a03199b151560ff19968716179b909b169a909a1790975590517fd421a5181c571bba3f01190c922c3b2a896fc1d84e86c9f17ac10e67ebef8b5e55517fd421a5181c571bba3f01190c922c3b2a896fc1d84e86c9f17ac10e67ebef8b5f5593517fd421a5181c571bba3f01190c922c3b2a896fc1d84e86c9f17ac10e67ebef8b6080546001604060020a039092166001604060020a031990921691909117905594517fd421a5181c571bba3f01190c922c3b2a896fc1d84e86c9f17ac10e67ebef8b615593517fd421a5181c571bba3f01190c922c3b2a896fc1d84e86c9f17ac10e67ebef8b6280549596929591949093919091169190849081111561244657fe5b0217905550610100919091015160089091018054600160a060020a031916600160a060020a03909216919091179055604080516000818301819052606082018190526080820181905260a0808352601090830152608260020a6f10589cdd185a5b881c1c9bdc1bdcd85b0260c083015260e060208301819052820181905291516001918391600080516020615de483398151915291610120908290030190a46124ed614f36565b505050505050505050565b612500610d41565b6040805180820190915260148152600080516020615ee483398151915260208201529015156125745760405160e560020a62461bcd02815260040180806020018281038252838181518152602001915080519060200190808383600083811015610dff578181015183820152602001610de7565b5081806001148061259e57506000818152600c6020526040902060080154600160a060020a031615155b60408051808201909152601a8152600080516020615f0483398151915260208201529015156126125760405160e560020a62461bcd02815260040180806020018281038252838181518152602001915080519060200190808383600083811015610dff578181015183820152602001610de7565b5061261e8383336149d9565b505050565b600f55565b6000806000838152600c602052604090206006015460ff16600381111561264b57fe5b148015610d2c575050600b5460ff1615919050565b600160a060020a0381166000908152600e60209081526040918290208054835181840281018401909452808452606093928301828280156126c057602002820191906000526020600020905b8154815260200190600101908083116126ac575b50505050509050919050565b60006126d6613cfb565b905090565b60065481565b6000818152600c602052604081206003600682015460ff16600381111561270457fe5b148061272257506002600682015460ff16600381111561272057fe5b145b91505b50919050565b6010541561274e57601054612746908263ffffffff614fe816565b601055611470565b61275e438263ffffffff614fe816565b60105550565b3361276d614505565b600160a060020a0316146040805190810160405280601f8152602001600080516020615d048339815191528152509015156127ed5760405160e560020a62461bcd02815260040180806020018281038252838181518152602001915080519060200190808383600083811015610dff578181015183820152602001610de7565b506114708161506d565b60006126d66150b6565b50600190565b33612810614505565b600160a060020a0316146040805190810160405280601f8152602001600080516020615d048339815191528152509015156128905760405160e560020a62461bcd02815260040180806020018281038252838181518152602001915080519060200190808383600083811015610dff578181015183820152602001610de7565b5061261e8383836150c8565b60006126d67fd625496217aa6a3453eecb9c3489dc5a53e6c67b444329ea2b2cbc9ff547639b614522565b600a5481565b600b5460ff1681565b60006126d6600080516020615d24833981519152614522565b600f541561290a57600f54612181908263ffffffff614fe816565b612199428263ffffffff614fe816565b7fef025787d7cd1a96d9014b8dc7b44899b8c1350859fb9e1e05f5a546dd65158d81565b60105481565b60408051600080825260208201909252600080516020615e048339815191529161297291339184919061149d565b60408051808201909152600f8152600080516020615ce483398151915260208201529015156129e65760405160e560020a62461bcd02815260040180806020018281038252838181518152602001915080519060200190808383600083811015610dff578181015183820152602001610de7565b5060048054600160a060020a038416600160a060020a0319909116811790915560408051918252517fe73ec16f0f6043487af9cb91eb14c278096f172773ad13f392cd1f9507c9a8ee9181900360200190a15050565b6000806000612a4a84612801565b6040805180820190915260128152607260020a71149150d3d5915497d11254d0531313d5d151026020820152901515612ac85760405160e560020a62461bcd02815260040180806020018281038252838181518152602001915080519060200190808383600083811015610dff578181015183820152602001610de7565b50612ad16116f5565b9250612adc8361511b565b60408051808201909152601a81527f5245434f5645525f5641554c545f4e4f545f434f4e54524143540000000000006020820152901515612b625760405160e560020a62461bcd02815260040180806020018281038252838181518152602001915080519060200190808383600083811015610dff578181015183820152602001610de7565b50600160a060020a0384161515612bb35760405130319250600160a060020a0384169083156108fc029084906000818181858888f19350505050158015612bad573d6000803e3d6000fd5b50612c72565b5082612bce600160a060020a0382163063ffffffff61514116565b9150612bea600160a060020a038216848463ffffffff61522f16565b60408051808201909152601d81527f5245434f5645525f544f4b454e5f5452414e534645525f4641494c45440000006020820152901515612c705760405160e560020a62461bcd02815260040180806020018281038252838181518152602001915080519060200190808383600083811015610dff578181015183820152602001610de7565b505b83600160a060020a031683600160a060020a03167f596caf56044b55fb8c4ca640089bbc2b63cae3e978b851f5745cbb7c5b288e02846040518082815260200191505060405180910390a350505050565b612ccb610d41565b6040805180820190915260148152600080516020615ee48339815191526020820152901515612d3f5760405160e560020a62461bcd02815260040180806020018281038252838181518152602001915080519060200190808383600083811015610dff578181015183820152602001610de7565b50612d4c6000193361528f565b565b600080612d59610d41565b1515612d685760009150612e96565b612d706134b7565b9050600160a060020a0381161515612d8b5760009150612e96565b80600160a060020a031663fdef9106863087612da6886153c3565b60405160e060020a63ffffffff8716028152600160a060020a03808616600483019081529085166024830152604482018490526080606483019081528351608484015283519192909160a490910190602085019080838360005b83811015612e18578181015183820152602001612e00565b50505050905090810190601f168015612e455780820380516001836020036101000a031916815260200191505b5095505050505050602060405180830381600087803b158015612e6757600080fd5b505af1158015612e7b573d6000803e3d6000fd5b505050506040513d6020811015612e9157600080fd5b505191505b509392505050565b60075481565b600080612eaf6134b7565b6040805160e360020a6317c0177b0281527fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb60048201527fddbcfd564f642ab5627cf68b9b7d374fb4f8a36e941a75d89c87998cef03bd6160248201529051600160a060020a03929092169163be00bbd8916044808201926020929091908290030181600087803b1580156116c357600080fd5b600254600160a060020a031681565b60006126d6600080516020615d64833981519152614522565b33612f74614505565b600160a060020a0316146040805190810160405280601f8152602001600080516020615d04833981519152815250901515612ff45760405160e560020a62461bcd02815260040180806020018281038252838181518152602001915080519060200190808383600083811015610dff578181015183820152602001610de7565b50611470816153cd565b60006126d6614505565b33613011612f52565b600160a060020a031614613070576040805160e560020a62461bcd0281526020600482015260276024820152600080516020615e44833981519152604482015260c960020a6626b0b730b3b2b902606482015290519081900360840190fd5b613087600080516020615e84833981519152614522565b6040805180820190915260198152600080516020615d84833981519152602082015290156130fa5760405160e560020a62461bcd02815260040180806020018281038252838181518152602001915080519060200190808383600083811015610dff578181015183820152602001610de7565b5061311a600080516020615e84833981519152600163ffffffff61451e16565b611b1c33838361261e565b60408051600080825260208201909252600080516020615e048339815191529161315391339184919061149d565b60408051808201909152600f8152600080516020615ce483398151915260208201529015156131c75760405160e560020a62461bcd02815260040180806020018281038252838181518152602001915080519060200190808383600083811015610dff578181015183820152602001610de7565b50600585905560068490556007839055600882905560408051868152602081018690528082018590526060810184905290517fab0e1d16e026a71973fa1c1862074f152ee6c430f36fce58005928c3bb1588369181900360800190a15050505050565b6000818152600c60205260408120805482918291829182918291829182918291829190156132685761326361325e82613da9565b611f60565b61326b565b60005b915080600001548160010160009054906101000a900460ff168260010160019054906101000a9004600160a060020a0316836002015484600301548560040160009054906101000a90046001604060020a031686600501548760060160009054906101000a900460ff168860080160009054906101000a9004600160a060020a03168a9a509a509a509a509a509a509a509a509a509a50509193959799509193959799565b613318610d41565b6040805180820190915260148152600080516020615ee4833981519152602082015290151561338c5760405160e560020a62461bcd02815260040180806020018281038252838181518152602001915080519060200190808383600083811015610dff578181015183820152602001610de7565b5060408051600080825260208201909252600080516020615da4833981519152916133bb91339184919061149d565b60408051808201909152600f8152600080516020615ce4833981519152602082015290151561342f5760405160e560020a62461bcd02815260040180806020018281038252838181518152602001915080519060200190808383600083811015610dff578181015183820152602001610de7565b5061349e85858080601f0160208091040260200160405190810160405280939291908181526020018383808284375050604080516020601f8b018190048102820181019092528981529450899350889250829150840183828082843782019150505050505060008060006146e0565b5050505050565b600080516020615cc483398151915281565b60006126d67f4172f0f7d2289153072b0a6ca36959e0cbe2efc3afe50fc81636caa96338137b614522565b6000336134ed612f52565b600160a060020a03161461354c576040805160e560020a62461bcd0281526020600482015260276024820152600080516020615e44833981519152604482015260c960020a6626b0b730b3b2b902606482015290519081900360840190fd5b613563600080516020615e84833981519152614522565b6040805180820190915260198152600080516020615d84833981519152602082015290156135d65760405160e560020a62461bcd02815260040180806020018281038252838181518152602001915080519060200190808383600083811015610dff578181015183820152602001610de7565b506135f6600080516020615e84833981519152600163ffffffff61451e16565b6119a58484846153d6565b6005546000906001604060020a0385169082906136379061363190608060020a026298968063ffffffff614d6016565b836153df565b9050608061369a607f60020a61368e61367e600554629896800361213f61366b88608060020a614df390919063ffffffff16565b61214b8c6298968063ffffffff614cb216565b61368e868b63ffffffff614cb216565b9063ffffffff614fe816565b9060020a9004925050509392505050565b60085481565b600080516020615d4483398151915281565b670de0b6b3a764000081565b600160a060020a03166000908152600d602052604090205490565b60006000196136f76128d6565b14905090565b600b546040805180820190915260128152600080516020615ec4833981519152602082015260009182919060ff161561377b5760405160e560020a62461bcd02815260040180806020018281038252838181518152602001915080519060200190808383600083811015610dff578181015183820152602001610de7565b508280600114806137a557506000818152600c6020526040902060080154600160a060020a031615155b60408051808201909152601a8152600080516020615f0483398151915260208201529015156138195760405160e560020a62461bcd02815260040180806020018281038252838181518152602001915080519060200190808383600083811015610dff578181015183820152602001610de7565b506000848152600c6020908152604080832081518481529283019091529450613853913391600080516020615dc48339815191529161149d565b6008840154909250600160a060020a031633148061386e5750815b6040805180820190915260178152604a60020a7610d597d4d15391115497d0d0539393d517d0d05390d1530260208201529015156138f15760405160e560020a62461bcd02815260040180806020018281038252838181518152602001915080519060200190808383600083811015610dff578181015183820152602001610de7565b5060408051606081018252602181527f43565f43414e4e4f545f43414e43454c5f4142535441494e5f50524f504f5341602082015260fa60020a6013029181019190915260018514156139895760405160e560020a62461bcd02815260040180806020018281038252838181518152602001915080519060200190808383600083811015610dff578181015183820152602001610de7565b506000600684015460ff16600381111561399f57fe5b6040805180820190915260168152605060020a7543565f50524f504f53414c5f4e4f545f4143544956450260208201529114613a205760405160e560020a62461bcd02815260040180806020018281038252838181518152602001915080519060200190808383600083811015610dff578181015183820152602001610de7565b5060068301805460ff191660021790556005830154613a3e90613e28565b60405184907f416e669c63d9a3a5e36ee7cc7e2104b8db28ccd286aa18966e98fa230c73b08c90600090a250505050565b6000828152600c60209081526040808320600160a060020a038516845260070190915290205492915050565b60408051600080825260208201909252600080516020615d4483398151915291613ac991339184919061149d565b60408051808201909152600f8152600080516020615ce48339815191526020820152901515613b3d5760405160e560020a62461bcd02815260040180806020018281038252838181518152602001915080519060200190808383600083811015610dff578181015183820152602001610de7565b50600b805460ff191683151517908190556040805160ff90921615158252517f752d7e161ff5146f80e3820893176eb40532811e5e20400dfdde57455213706a916020908290030190a15050565b600080516020615da483398151915281565b600080516020615dc483398151915281565b600f5481565b33613bbe614505565b600160a060020a0316146040805190810160405280601f8152602001600080516020615d04833981519152815250901515613c3e5760405160e560020a62461bcd02815260040180806020018281038252838181518152602001915080519060200190808383600083811015610dff578181015183820152602001610de7565b5061147081615491565b613c50610d41565b6040805180820190915260148152600080516020615ee48339815191526020820152901515613cc45760405160e560020a62461bcd02815260040180806020018281038252838181518152602001915080519060200190808383600083811015610dff578181015183820152602001610de7565b50611b3b828233613e99565b6000613cdb826154dd565b80610d2c575050600160e060020a03191660e260020a6315014f9b021490565b60105460009015613d0f575060105461176b565b6126d66154f9565b600080613d226154fd565b60048501549092506001604060020a0380841691161115613d3f57fe5b60048401546001604060020a0383811691161415613d5c57613da3565b60048401546003850154613d7c916001604060020a031684039085613601565b6004850180546001604060020a0319166001604060020a0385161790556003850181905590505b50505050565b600181015460009060ff16613dbf578154610d2c565b60035460025483546001546040805160e260020a632321bc79028152600160a060020a03948516600482015260248101939093529083166044830152519190921691638c86f1e49160648083019260209291908290030181600087803b1580156116c357600080fd5b6000613e3261550a565b905080600160a060020a0316633b92da72836040518263ffffffff1660e060020a02815260040180828152602001915050600060405180830381600087803b158015613e7d57600080fd5b505af1158015613e91573d6000803e3d6000fd5b505050505050565b600b546040805180820190915260128152600080516020615ec483398151915260208201526000918291829160ff1615613f185760405160e560020a62461bcd02815260040180806020018281038252838181518152602001915080519060200190808383600083811015610dff578181015183820152602001610de7565b50858060011480613f4257506000818152600c6020526040902060080154600160a060020a031615155b60408051808201909152601a8152600080516020615f048339815191526020820152901515613fb65760405160e560020a62461bcd02815260040180806020018281038252838181518152602001915080519060200190808383600083811015610dff578181015183820152602001610de7565b506000613fc1612f52565b600160a060020a03161415604080519081016040528060178152602001604a60020a7610d597d393d7d513d2d15397d350539051d15497d4d155028152509015156140515760405160e560020a62461bcd02815260040180806020018281038252838181518152602001915080519060200190808383600083811015610dff578181015183820152602001610de7565b506000878152600c60209081526040808320815180830190925260198252600080516020615ea4833981519152928201929092529095509087116140da5760405160e560020a62461bcd02815260040180806020018281038252838181518152602001915080519060200190808383600083811015610dff578181015183820152602001610de7565b506000600685015460ff1660038111156140f057fe5b148061410e57506001600685015460ff16600381111561410c57fe5b145b60408051808201909152601c81527f43565f494e434f52524543545f50524f504f53414c5f5354415455530000000060208201529015156141945760405160e560020a62461bcd02815260040180806020018281038252838181518152602001915080519060200190808383600083811015610dff578181015183820152602001610de7565b50600160a060020a038086166000818152600d60209081526040808320548354825160e060020a6370a082310281526004810196909652915161423696919592909116936370a0823193602480850194919392918390030190829087803b1580156141fe57600080fd5b505af1158015614212573d6000803e3d6000fd5b505050506040513d602081101561422857600080fd5b50519063ffffffff614df316565b92508286111561425957614259614253878563ffffffff614df316565b8661528f565b600080546040805160e060020a6370a08231028152600160a060020a038981166004830152915191909216926370a0823192602480820193602093909283900390910190829087803b1580156142ae57600080fd5b505af11580156142c2573d6000803e3d6000fd5b505050506040513d60208110156142d857600080fd5b5051600160a060020a0386166000908152600d6020526040902054614303908863ffffffff614fe816565b60408051808201909152601e81527f43565f5354414b494e475f4d4f52455f5448414e5f415641494c41424c45000060208201529110156143895760405160e560020a62461bcd02815260040180806020018281038252838181518152602001915080519060200190808383600083811015610dff578181015183820152602001610de7565b50600284015491506143a1828763ffffffff614fe816565b6002850155600160a060020a03851660009081526007850160205260409020546143d1908763ffffffff614fe816565b600160a060020a0386166000908152600786016020908152604080832093909355600d90522054614408908763ffffffff614fe816565b600160a060020a0386166000908152600d6020526040902055600a54614434908763ffffffff614fe816565b600a5560048401546001604060020a0316151561447a576144536154fd565b6004850180546001604060020a0319166001604060020a0392909216919091179055614484565b6144848483613d17565b61448e8786615595565b600160a060020a0385166000818152600786016020908152604091829020546002880154600389015484518c81529384019290925282840152606082015290518992917f28d9b583e0c477691a08f6c1e00fedc0895ed4221487c627fa96a7024119f499919081900360800190a350505050505050565b60006126d6600080516020615e64833981519152614522565b9055565b5490565b600080600160a060020a03851615156145425760019150612e96565b600080546040805160e060020a6370a08231028152600160a060020a038981166004830152915161459d94889493909316926370a0823192602480820193602093909283900390910190829087803b1580156141fe57600080fd5b600160a060020a0386166000908152600d60205260409020549091508110156145ed57600160a060020a0385166000908152600d60205260409020546145ed90614253908363ffffffff614df316565b600160a060020a0385166000908152600d602052604090205481101561464057600160a060020a0385166000908152600d60205260409020546146409061463a908363ffffffff614df316565b86615665565b506001949350505050565b60005460408051808201909152601f81527f43565f494e434f52524543545f544f4b454e5f4d414e414745525f484f4f4b00602082015290600160a060020a03838116911614613da35760405160e560020a62461bcd02815260040180806020018281038252838181518152602001915080519060200190808383600083811015610dff578181015183820152602001610de7565b600b546040805180820190915260128152600080516020615ec4833981519152602082015260009160ff161561475b5760405160e560020a62461bcd02815260040180806020018281038252838181518152602001915080519060200190808383600083811015610dff578181015183820152602001610de7565b506147696009548633615877565b905061012060405190810160405280858152602001841515815260200183600160a060020a03168152602001600081526020016000815260200160006001604060020a03168152602001828152602001600060038111156147c657fe5b8152336020918201526009546000908152600c825260409081902083518155918301516001808401805493860151600160a060020a03166101000261010060a860020a031993151560ff1995861617939093169290921790915560608401516002840155608084015160038085019190915560a08501516004850180546001604060020a039092166001604060020a031990921691909117905560c0850151600585015560e085015160068501805491949093911691849081111561488757fe5b0217905550610100919091015160089091018054600160a060020a031916600160a060020a03928316179055600954604080519081018790528515156060820152918416608083015260a0808352885190830152875183923391600080516020615de4833981519152918b918b918b918b918b91819060208083019160c08401918a019080838360005b83811015614929578181015183820152602001614911565b50505050905090810190601f1680156149565780820380516001836020036101000a031916815260200191505b50838103825287518152875160209182019189019080838360005b83811015614989578181015183820152602001614971565b50505050905090810190601f1680156149b65780820380516001836020036101000a031916815260200191505b5097505050505050505060405180910390a4505060098054600101905550505050565b6000838152600c60209081526040808320600160a060020a0385168452600781018352818420548251808401909352601c83527f43565f57495448445241575f4d4f52455f5448414e5f5354414b454400000000938301939093529291851115614a885760405160e560020a62461bcd02815260040180806020018281038252838181518152602001915080519060200190808383600083811015610dff578181015183820152602001610de7565b506040805180820190915260198152600080516020615ea4833981519152602082015260008511614afe5760405160e560020a62461bcd02815260040180806020018281038252838181518152602001915080519060200190808383600083811015610dff578181015183820152602001610de7565b50506002810154614b15818563ffffffff614df316565b6002830155600160a060020a0383166000908152600783016020526040902054614b45908563ffffffff614df316565b600160a060020a0384166000908152600784016020908152604080832093909355600d90522054614b7c908563ffffffff614df316565b600160a060020a0384166000908152600d6020526040902055600a54614ba8908563ffffffff614df316565b600a55600160a060020a03831660009081526007830160205260409020541515614bf657600160a060020a0383166000908152600e60205260409020614bf4908663ffffffff61595116565b505b6000600683015460ff166003811115614c0b57fe5b1480614c2957506001600683015460ff166003811115614c2757fe5b145b15614c3857614c388282613d17565b600160a060020a03831660008181526007840160209081526040918290205460028601546003870154845195865292850189905284840191909152606084015260808301525186917f16f23283da3097bc9027dcdf31f24863b1520556f04818d406f0e6ecd08580f5919081900360a00190a25050505050565b600080831515614cc55760009150614d59565b50828202828482811515614cd557fe5b6040805180820190915260118152607860020a704d4154485f4d554c5f4f564552464c4f570260208201529291900414614d545760405160e560020a62461bcd02815260040180806020018281038252838181518152602001915080519060200190808383600083811015610dff578181015183820152602001610de7565b508091505b5092915050565b60408051808201909152600d8152609860020a6c4d4154485f4449565f5a45524f0260208201526000908190818411614dde5760405160e560020a62461bcd02815260040180806020018281038252838181518152602001915080519060200190808383600083811015610dff578181015183820152602001610de7565b508284811515614dea57fe5b04949350505050565b6040805180820190915260128152607060020a714d4154485f5355425f554e444552464c4f57026020820152600090819084841115614e775760405160e560020a62461bcd02815260040180806020018281038252838181518152602001915080519060200190808383600083811015610dff578181015183820152602001610de7565b505050900390565b600080614f1e670de0b6b3a764000061213f6008546000809054906101000a9004600160a060020a0316600160a060020a03166318160ddd6040518163ffffffff1660e060020a028152600401602060405180830381600087803b158015614ee657600080fd5b505af1158015614efa573d6000803e3d6000fd5b505050506040513d6020811015614f1057600080fd5b50519063ffffffff614cb216565b905080600a5410614f3157600a54610d64565b919050565b614f3e6128d6565b6040805180820190915260188152604260020a771253925517d053149150511657d2539255125053125691510260208201529015614fc15760405160e560020a62461bcd02815260040180806020018281038252838181518152602001915080519060200190808383600083811015610dff578181015183820152602001610de7565b50612d4c614fcd613cfb565b600080516020615d248339815191529063ffffffff61451e16565b6040805180820190915260118152607860020a704d4154485f4144445f4f564552464c4f570260208201526000908383019084821015614d545760405160e560020a62461bcd02815260040180806020018281038252838181518152602001915080519060200190808383600083811015610dff578181015183820152602001610de7565b6000818152600c602052604080822060068101805460ff191690559051909183917f2e907829e43966b15ceb2d58ec9829a85c08155366371c443daeecd523ab1b349190a25050565b60006126d66150c3615a0c565b615a28565b6000838152600c602052604080822060068101805460ff1916600117905590519091849186917faa41cc9a8de6a0731d1898a2eca5cbfc00c88dd0c91cd5e007b8f4fef6262cee91a350505050565b5490565b600080600160a060020a03831615156151375760009150612725565b50506000903b1190565b60408051600160a060020a038316602480830191909152825180830390910181526044909101909152602081018051600160e060020a031660e060020a6370a082310217905260009081806151968684615abb565b60408051808201909152601c81527f534146455f4552435f32305f42414c414e43455f524556455254454400000000602082015291935091508215156152215760405160e560020a62461bcd02815260040180806020018281038252838181518152602001915080519060200190808383600083811015610dff578181015183820152602001610de7565b508093505b50505092915050565b60408051600160a060020a03841660248201526044808201849052825180830390910181526064909101909152602081018051600160e060020a031660e060020a63a9059cbb021790526000906152868582615aec565b95945050505050565b600160a060020a0381166000908152600e60209081526040808320805482518185028101850190935280835284938493606093859384938301828280156152f557602002820191906000526020600020905b8154815260200190600101908083116152e1575b505050505092505b82518610801561530c57508784105b15611de757828681518110151561531f57fe5b60209081029091018101516000818152600c909252604090912090925090506003600682015460ff16600381111561535357fe5b148061537157506002600682015460ff16600381111561536f57fe5b145b156153b857600160a060020a038716600090815260078201602052604081205495508511156153b8576153a58286896149d9565b6153b5848663ffffffff614fe816565b93505b6001909501946152fd565b8051602002815290565b6114708161506d565b60019392505050565b60008080608060020a851061543e576040805160e560020a62461bcd02815260206004820152601c60248201527f5f612073686f756c64206265206c657373207468616e20325e31323800000000604482015290519081900360640190fd5b50608060020a9150839050825b600081111561548957600181161515615473576154688283615b3a565b915060029004615484565b61547d8383615b3a565b9250600019015b61544b565b505092915050565b6000818152600c602052604080822060068101805460ff191660021790559051909183917fd92fba445edb3153b571e6df782d7a66fd0ce668519273670820ee3a86da0ef49190a25050565b600160e060020a0319811660e060020a6301ffc9a70214919050565b4390565b60006126d66150c3613cfb565b600080615515614505565b604080518082019091526020808252600080516020615e2483398151915290820152909150600160a060020a03821615156127255760405160e560020a62461bcd02815260040180806020018281038252838181518152602001915080519060200190808383600083811015610dff578181015183820152602001610de7565b600160a060020a0381166000908152600e602052604090206155bd818463ffffffff615c2f16565b151561261e5780546040805180820190915260188152604260020a7710d597d3505617d41493d413d4d05314d7d4915050d2115102602082015290600a1161564a5760405160e560020a62461bcd02815260040180806020018281038252838181518152602001915080519060200190808383600083811015610dff578181015183820152602001610de7565b50805460018101825560008281526020902001839055505050565b600160a060020a0381166000908152600e60209081526040808320805482518185028101850190935280835284938493606093859384938301828280156156cb57602002820191906000526020600020905b8154815260200190600101908083116156b7575b50505050600160a060020a0389166000908152600e602052604090209194506156f79190506001615c2f565b1561576957600160a060020a03871660009081527fd421a5181c571bba3f01190c922c3b2a896fc1d84e86c9f17ac10e67ebef8b63602052604090205461573f908990615c77565b9450600085111561576957615756600186896149d9565b615766848663ffffffff614fe816565b93505b600160a060020a0387166000908152600e6020908152604091829020805483518184028101840190945280845290918301828280156157c757602002820191906000526020600020905b8154815260200190600101908083116157b3575b505050505092505b8251861080156157de57508784105b15611de75782868151811015156157f157fe5b60209081029091018101516000818152600c90925260409091209092509050615843615823898663ffffffff614df316565b600160a060020a0389166000908152600784016020526040902054615c77565b9450600085111561586c576158598286896149d9565b615869848663ffffffff614fe816565b93505b6001909501946157cf565b60008061588261550a565b905080600160a060020a031663e95fdd1d8686866040518463ffffffff1660e060020a028152600401808481526020018060200183600160a060020a0316600160a060020a03168152602001828103825284818151815260200191508051906020019080838360005b838110156159035781810151838201526020016158eb565b50505050905090810190601f1680156159305780820380516001836020036101000a031916815260200191505b50945050505050602060405180830381600087803b158015612e6757600080fd5b815460009081805b828210156159fc5784868381548110151561597057fe5b906000526020600020015414156159f157508454600019018181146159c357858181548110151561599d57fe5b906000526020600020015486838154811015156159b657fe5b6000918252602090912001555b85818154811015156159d157fe5b6000918252602082200155806159e78782615c8a565b5060019350615226565b600190910190615959565b50600095945050505050565b9055565b600f5460009015615a205750600f5461176b565b6126d6615c86565b6040805180820190915260158152605860020a7455494e5436345f4e554d4245525f544f4f5f4249470260208201526000906001604060020a03831115615ab45760405160e560020a62461bcd02815260040180806020018281038252838181518152602001915080519060200190808383600083811015610dff578181015183820152602001610de7565b5090919050565b6000806000806040516020818751602089018a5afa92506000831115615ae057805191505b50909590945092505050565b6000806040516020818551602087016000895af16000811115615b30573d8015615b1d5760208114615b2657615b2e565b60019350615b2e565b600183511493505b505b5090949350505050565b6000608060020a831115615bac576040805160e560020a62461bcd02815260206004820152602860248201527f5f612073686f756c64206265206c657373207468616e206f7220657175616c20604482015260c360020a670e8de4064bc6264702606482015290519081900360840190fd5b608060020a8210615c07576040805160e560020a62461bcd02815260206004820152601c60248201527f5f622073686f756c64206265206c657373207468616e20325e31323800000000604482015290519081900360640190fd5b6080615c21607f60020a61368e868663ffffffff614cb216565b9060020a9004905092915050565b6000805b8354811015615c6d57828482815481101515615c4b57fe5b90600052602060002001541415615c655760019150614d59565b600101615c33565b5060009392505050565b6000818310615ab457816119c6565b4290565b81548183558181111561261e5760008381526020902061261e91810190830161176b91905b80821115610d675760008155600101615caf56008dad640ab1b088990c972676ada708447affc660890ec9fc9a5483241c49f0364150505f415554485f4641494c4544000000000000000000000000000000000044495350555441424c455f53454e4445525f4e4f545f41475245454d454e5400ebb05b386a8d34882b8711d156f463690983dc47815980fb82aeeff1aa43579e0e3a87ad3cd0c04dcd1e538226de2b467c72316c162f937f5b6f7913616624625c513b2347f66d33af9d68f4a0ed7fbb73ce364889b2af7f3ee5764440da6a8a5245454e5452414e43595f5245454e5452414e545f43414c4c00000000000000bf05b9322505d747ab5880dfb677dc4864381e9fc3a25ccfa184a3a53d02f4b282c52f79cad6ac09c16c165c562b50c5e655a09a19bb99b2d182ab3caff020f2e180363919da754b2737a8f10869b7d2df0be7ef0e81339d3b5dabba166060ed9d4f140430c9045e12b5a104aa9e641c09b980a26ab8e12a32a2f3d155229ae344495350555441424c455f41475245454d454e545f53544154455f494e56414c486f6f6b73206d7573742062652063616c6c65642066726f6d20546f6b656e206dbe80ccdeafbf5f3fff5738b224414f85e9370da36f61bf21c65159df7409e9e855346402235fdd185c890e68d2c4ecad599b88587635ee285bce2fda58dacb43565f414d4f554e545f43414e5f4e4f545f42455f5a45524f0000000000000043565f434f4e54524143545f5041555345440000000000000000000000000000494e49545f4e4f545f494e495449414c495a454400000000000000000000000043565f50524f504f53414c5f444f45535f4e4f545f4558495354000000000000a165627a7a72305820f8e9e97cc6eac3e28699246e8234edb46c8f0ea884070a818afa16c740c1b9c90029ebb05b386a8d34882b8711d156f463690983dc47815980fb82aeeff1aa43579e",
  "deployedBytecode": "0x6080604052600436106103555763ffffffff60e060020a60003504166301ffc9a7811461035a5780630649d6dc146103905780630803fac0146103c15780630c0512e9146103d65780630d116652146103fd5780630d61b519146104125780630f529ba21461042c5780631522eb43146104415780631df67d2f146104565780631e9ae2f41461046e5780632914b9bd1461048f57806332f0a3b5146104e8578063406244d8146104fd5780634570c1751461052e5780634a393149146105555780634d4eb6ce1461057f5780634d7ec628146105a35780634ef4d13f146105b85780634f629fbb146105f85780634fb3cbbc1461060d57806351ed6a301461062557806354fac9191461063a57806359a5db8b1461064f57806360be675f146106675780636322b5131461067f578063649c649c146106c55780636958839e146106e05780636ab6802b146106f85780636ae1e541146107105780636da1dfac1461078157806376365af71461079657806376740b5b146107ab5780637750db14146107c35780637ad267b6146107db5780637e365950146107f35780637e7db6e1146108085780637f439ce01461082957806380afdea814610850578063817b1cd2146108655780638a67456a1461087a5780638b3dd7491461088f5780638f49e12f146108a45780638f911dca146108bc57806398fdacb7146108d157806399c7e2e8146108e65780639d4941d8146109075780639d99856614610928578063a1658fad1461093d578063a1aab33f146109a4578063a479e508146109b9578063a9d75b2b146109ce578063ab97d59d146109e3578063b0863063146109f8578063bca60cf514610a10578063c2239b2414610a25578063c35ac76d14610a49578063c7f758a814610a6a578063cbdda5e114610b1f578063d35424fa14610b4b578063d4aae0c414610b60578063da682aeb14610b75578063dac6126014610b9f578063db2d878c14610bc6578063dcdf8e3914610bdb578063dd0081c714610bf0578063ddc90e7e14610c05578063de4796ed14610c26578063e0a8f6f514610c3b578063e0dd2c3814610c53578063e272b89214610c77578063eeabf67e14610c91578063f31bbd7f14610ca6578063f7796cd314610cbb578063f83a151514610cd0578063fc37005114610ce8575b600080fd5b34801561036657600080fd5b5061037c600160e060020a031960043516610d03565b604080519115158252519081900360200190f35b34801561039c57600080fd5b506103a5610d32565b60408051600160a060020a039092168252519081900360200190f35b3480156103cd57600080fd5b5061037c610d41565b3480156103e257600080fd5b506103eb610d6b565b60408051918252519081900360200190f35b34801561040957600080fd5b506103a5610d71565b34801561041e57600080fd5b5061042a600435610d80565b005b34801561043857600080fd5b506103eb6112c9565b34801561044d57600080fd5b506103eb6112d0565b34801561046257600080fd5b5061042a6004356112d5565b34801561047a57600080fd5b5061042a600160a060020a0360043516611473565b34801561049b57600080fd5b506040805160206004803580820135601f81018490048402850184019095528484526103a594369492936024939284019190819084018382808284375094975061160f9650505050505050565b3480156104f457600080fd5b506103a56116f5565b34801561050957600080fd5b5061051261176e565b604080516001604060020a039092168252519081900360200190f35b34801561053a57600080fd5b5061042a600160a060020a0360043581169060243516611773565b34801561056157600080fd5b5061037c600160a060020a0360043581169060243516604435611886565b34801561058b57600080fd5b5061042a600435600160a060020a03602435166119cd565b3480156105af57600080fd5b506103a5611b3f565b3480156105c457600080fd5b5061042a60246004803582810192908201359181359182019101356044356064351515600160a060020a0360843516611b4e565b34801561060457600080fd5b506103eb611df1565b34801561061957600080fd5b5061042a600435611e03565b34801561063157600080fd5b506103a5611f4b565b34801561064657600080fd5b506103eb611f5a565b34801561065b57600080fd5b506103eb600435611f60565b34801561067357600080fd5b5061042a600435612166565b34801561068b57600080fd5b5061042a600160a060020a036004358116906024358116906044358116906064358116906084351660a43560c43560e4356101043561219f565b3480156106d157600080fd5b5061042a6004356024356124f8565b3480156106ec57600080fd5b5061042a600435612623565b34801561070457600080fd5b5061037c600435612628565b34801561071c57600080fd5b50610731600160a060020a0360043516612660565b60408051602080825283518183015283519192839290830191858101910280838360005b8381101561076d578181015183820152602001610755565b505050509050019250505060405180910390f35b34801561078d57600080fd5b506103eb6126cc565b3480156107a257600080fd5b506103eb6126db565b3480156107b757600080fd5b5061037c6004356126e1565b3480156107cf57600080fd5b5061042a60043561272b565b3480156107e757600080fd5b5061042a600435612764565b3480156107ff57600080fd5b506105126127f7565b34801561081457600080fd5b5061037c600160a060020a0360043516612801565b34801561083557600080fd5b5061042a600435602435600160a060020a0360443516612807565b34801561085c57600080fd5b506103eb61289c565b34801561087157600080fd5b506103eb6128c7565b34801561088657600080fd5b5061037c6128cd565b34801561089b57600080fd5b506103eb6128d6565b3480156108b057600080fd5b5061042a6004356128ef565b3480156108c857600080fd5b506103eb61291a565b3480156108dd57600080fd5b506103eb61293e565b3480156108f257600080fd5b5061042a600160a060020a0360043516612944565b34801561091357600080fd5b5061042a600160a060020a0360043516612a3c565b34801561093457600080fd5b5061042a612cc3565b34801561094957600080fd5b50604080516020600460443581810135838102808601850190965280855261037c958335600160a060020a0316956024803596369695606495939492019291829185019084908082843750949750612d4e9650505050505050565b3480156109b057600080fd5b506103eb612e9e565b3480156109c557600080fd5b506103a5612ea4565b3480156109da57600080fd5b506103a5612f43565b3480156109ef57600080fd5b506103a5612f52565b348015610a0457600080fd5b5061042a600435612f6b565b348015610a1c57600080fd5b506103a5612ffe565b348015610a3157600080fd5b5061042a600435600160a060020a0360243516613008565b348015610a5557600080fd5b5061042a600435602435604435606435613125565b348015610a7657600080fd5b50610a8260043561322a565b604051808b81526020018a15151515815260200189600160a060020a0316600160a060020a03168152602001888152602001878152602001866001604060020a03166001604060020a03168152602001858152602001846003811115610ae457fe5b60ff16815260200183600160a060020a0316600160a060020a031681526020018281526020019a505050505050505050505060405180910390f35b348015610b2b57600080fd5b5061042a6024600480358281019290820135918135918201910135613310565b348015610b5757600080fd5b506103eb6134a5565b348015610b6c57600080fd5b506103a56134b7565b348015610b8157600080fd5b5061037c600160a060020a03600435811690602435166044356134e2565b348015610bab57600080fd5b506103eb6001604060020a0360043516602435604435613601565b348015610bd257600080fd5b506103eb6136ab565b348015610be757600080fd5b506103eb6136b1565b348015610bfc57600080fd5b506103eb6136c3565b348015610c1157600080fd5b506103eb600160a060020a03600435166136cf565b348015610c3257600080fd5b5061037c6136ea565b348015610c4757600080fd5b5061042a6004356136fd565b348015610c5f57600080fd5b506103eb600435600160a060020a0360243516613a6f565b348015610c8357600080fd5b5061042a6004351515613a9b565b348015610c9d57600080fd5b506103eb613b8b565b348015610cb257600080fd5b506103eb613b9d565b348015610cc757600080fd5b506103eb613baf565b348015610cdc57600080fd5b5061042a600435613bb5565b348015610cf457600080fd5b5061042a600435602435613c48565b6000610d0e82613cd0565b80610d2c5750600160e060020a0319821660e060020a63f3d3bb5102145b92915050565b600354600160a060020a031681565b600080610d4c6128d6565b90508015801590610d64575080610d61613cfb565b10155b91505b5090565b60095481565b600454600160a060020a031681565b600b546040805180820190915260128152600080516020615ec4833981519152602082015260009182919060ff1615610e3a5760405160e560020a62461bcd0281526004018080602001828103825283818151815260200191508051906020019080838360005b83811015610dff578181015183820152602001610de7565b50505050905090810190601f168015610e2c5780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b50610e43610d41565b6040805180820190915260148152600080516020615ee48339815191526020820152901515610eb75760405160e560020a62461bcd02815260040180806020018281038252838181518152602001915080519060200190808383600083811015610dff578181015183820152602001610de7565b50828060011480610ee157506000818152600c6020526040902060080154600160a060020a031615155b60408051808201909152601a8152600080516020615f048339815191526020820152901515610f555760405160e560020a62461bcd02815260040180806020018281038252838181518152602001915080519060200190808383600083811015610dff578181015183820152602001610de7565b50600c600085815260200190815260200160002092506001841415606060405190810160405280602281526020017f43565f43414e4e4f545f455845435554455f4142535441494e5f50524f504f53815260200160f260020a611053028152509015156110075760405160e560020a62461bcd02815260040180806020018281038252838181518152602001915080519060200190808383600083811015610dff578181015183820152602001610de7565b50825460408051606081018252602581527f43565f43414e4e4f545f455845435554455f5a45524f5f56414c55455f50524f602082015260da60020a641413d4d0530291810191909152906000106110a45760405160e560020a62461bcd02815260040180806020018281038252838181518152602001915080519060200190808383600083811015610dff578181015183820152602001610de7565b506000600684015460ff1660038111156110ba57fe5b6040805180820190915260168152605060020a7543565f50524f504f53414c5f4e4f545f414354495645026020820152911461113b5760405160e560020a62461bcd02815260040180806020018281038252838181518152602001915080519060200190808383600083811015610dff578181015183820152602001610de7565b5061114a838460020154613d17565b61115383613da9565b915061115e82611f60565b60038401546040805180820190915260198152603960020a7821ab2fa4a729aaa32324a1a4a2a72a2fa1a7a72b24a1a4a7a702602082015291106111e75760405160e560020a62461bcd02815260040180806020018281038252838181518152602001915080519060200190808383600083811015610dff578181015183820152602001610de7565b5060068301805460ff19166003179055600583015461120590613e28565b6004805460018054908601546040805160e360020a6317d57599028152600160a060020a039384169581019590955261010090910482166024850152604484018690525191169163beabacc891606480830192600092919082900301818387803b15801561127257600080fd5b505af1158015611286573d6000803e3d6000fd5b505050600384015460408051918252518692507ff758fc91e01b00ea6b4a6138756f7f28e021f9bf21db6dbf8c36c88eb737257a9181900360200190a250505050565b6298968081565b600181565b6112dd610d41565b6040805180820190915260148152600080516020615ee483398151915260208201529015156113515760405160e560020a62461bcd02815260040180806020018281038252838181518152602001915080519060200190808383600083811015610dff578181015183820152602001610de7565b50336000908152600d602090815260409182902054825180840190935260198352603a60020a7810d597d4d51052d25391d7d053149150511657d4d51052d1510291830191909152156113e95760405160e560020a62461bcd02815260040180806020018281038252838181518152602001915080519060200190808383600083811015610dff578181015183820152602001610de7565b50600080546040805160e060020a6370a082310281523360048201529051611470938593600160a060020a0316926370a082319260248083019360209383900390910190829087803b15801561143e57600080fd5b505af1158015611452573d6000803e3d6000fd5b505050506040513d602081101561146857600080fd5b505133613e99565b50565b60408051600080825260208201909252600080516020615cc4833981519152906114a39033908390855b50612d4e565b60408051808201909152600f8152600080516020615ce483398151915260208201529015156115175760405160e560020a62461bcd02815260040180806020018281038252838181518152602001915080519060200190808383600083811015610dff578181015183820152602001610de7565b50611520614505565b9150600160a060020a0382161580156115415750600160a060020a03831615155b604080519081016040528060208152602001600080516020615e248339815191528152509015156115b75760405160e560020a62461bcd02815260040180806020018281038252838181518152602001915080519060200190808383600083811015610dff578181015183820152602001610de7565b506115d6600080516020615e648339815191528463ffffffff61451e16565b604051600160a060020a038416907f64d4a120bf365888d0b3f10e4d7deb8415919eaad62ee6fb5f5619082d6f641890600090a2505050565b6000611619612ea4565b600160a060020a03166304bf2a7f836040518263ffffffff1660e060020a0281526004018080602001828103825283818151815260200191508051906020019080838360005b8381101561167757818101518382015260200161165f565b50505050905090810190601f1680156116a45780820380516001836020036101000a031916815260200191505b5092505050602060405180830381600087803b1580156116c357600080fd5b505af11580156116d7573d6000803e3d6000fd5b505050506040513d60208110156116ed57600080fd5b505192915050565b60006116ff6134b7565b600160a060020a03166332f0a3b56040518163ffffffff1660e060020a028152600401602060405180830381600087803b15801561173c57600080fd5b505af1158015611750573d6000803e3d6000fd5b505050506040513d602081101561176657600080fd5b505190505b90565b600a81565b60408051600080825260208201909252600080516020615e04833981519152916117a191339184919061149d565b60408051808201909152600f8152600080516020615ce483398151915260208201529015156118155760405160e560020a62461bcd02815260040180806020018281038252838181518152602001915080519060200190808383600083811015610dff578181015183820152602001610de7565b5060038054600160a060020a03808616600160a060020a031992831681179093556002805491861691909216811790915560408051928352602083019190915280517f5c6eba356f6aa4b8375538c6b9960ec788c30ef816e3ba1d5c9f7b5aa01c8bd89281900390910190a1505050565b600033611891612f52565b600160a060020a0316146118f0576040805160e560020a62461bcd0281526020600482015260276024820152600080516020615e44833981519152604482015260c960020a6626b0b730b3b2b902606482015290519081900360840190fd5b611907600080516020615e84833981519152614522565b6040805180820190915260198152600080516020615d848339815191526020820152901561197a5760405160e560020a62461bcd02815260040180806020018281038252838181518152602001915080519060200190808383600083811015610dff578181015183820152602001610de7565b5061199a600080516020615e84833981519152600163ffffffff61451e16565b6119a5848484614526565b90506119c6600080516020615e84833981519152600063ffffffff61451e16565b9392505050565b6119e4600080516020615e84833981519152614522565b6040805180820190915260198152600080516020615d8483398151915260208201529015611a575760405160e560020a62461bcd02815260040180806020018281038252838181518152602001915080519060200190808383600083811015610dff578181015183820152602001610de7565b50611a77600080516020615e84833981519152600163ffffffff61451e16565b6000611a81612f52565b600160a060020a031614611af3576040805160e560020a62461bcd02815260206004820152602860248201527f486f6f6b20616c7265616479207265676973746572656420627920546f6b656e604482015260c160020a671026b0b730b3b2b902606482015290519081900360840190fd5b611b11600080516020615d648339815191523363ffffffff61451e16565b611b1c33838361464b565b611b3b600080516020615e84833981519152600063ffffffff61451e16565b5050565b600154600160a060020a031681565b611b56610d41565b6040805180820190915260148152600080516020615ee48339815191526020820152901515611bca5760405160e560020a62461bcd02815260040180806020018281038252838181518152602001915080519060200190808383600083811015610dff578181015183820152602001610de7565b5060408051600080825260208201909252600080516020615da483398151915291611bf991339184919061149d565b60408051808201909152600f8152600080516020615ce48339815191526020820152901515611c6d5760405160e560020a62461bcd02815260040180806020018281038252838181518152602001915080519060200190808383600083811015610dff578181015183820152602001610de7565b506040805180820190915260188152604060020a7743565f5245515545535445445f414d4f554e545f5a45524f02602082015260008511611cf35760405160e560020a62461bcd02815260040180806020018281038252838181518152602001915080519060200190808383600083811015610dff578181015183820152602001610de7565b506040805180820190915260118152607860020a7043565f4e4f5f42454e4546494349415259026020820152600160a060020a0383161515611d7a5760405160e560020a62461bcd02815260040180806020018281038252838181518152602001915080519060200190808383600083811015610dff578181015183820152602001610de7565b50611de788888080601f0160208091040260200160405190810160405280939291908181526020018383808284375050604080516020601f8e018190048102820181019092528c815294508c93508b925082915084018382808284378201915050505050508686866146e0565b5050505050505050565b600080516020615e0483398151915281565b611e0b610d41565b6040805180820190915260148152600080516020615ee48339815191526020820152901515611e7f5760405160e560020a62461bcd02815260040180806020018281038252838181518152602001915080519060200190808383600083811015610dff578181015183820152602001610de7565b50808060011480611ea957506000818152600c6020526040902060080154600160a060020a031615155b60408051808201909152601a8152600080516020615f048339815191526020820152901515611f1d5760405160e560020a62461bcd02815260040180806020018281038252838181518152602001915080519060200190808383600083811015610dff578181015183820152602001610de7565b506000828152600c6020908152604080832033808552600790910190925290912054611b3b918491906149d9565b600054600160a060020a031681565b60055481565b600480546001546040805160e060020a63e3d670d7028152600160a060020a03928316948101949094525160009384938493169163e3d670d79160248082019260209290919082900301818787803b158015611fbb57600080fd5b505af1158015611fcf573d6000803e3d6000fd5b505050506040513d6020811015611fe557600080fd5b50519150611ffc846298968063ffffffff614cb216565b60065461200f908463ffffffff614cb216565b6040805180820190915260188152604060020a7743565f414d4f554e545f4f5645525f4d41585f524154494f02602082015291106120925760405160e560020a62461bcd02815260040180806020018281038252838181518152602001915080519060200190808383600083811015610dff578181015183820152602001610de7565b506120d46120ac604060020a86028463ffffffff614d6016565b6006546120c890604060020a026298968063ffffffff614d6016565b9063ffffffff614df316565b905060406121576120e3614e7f565b61214b6120fe60055462989680614df390919063ffffffff16565b61213f6298968061214b604061211a8a8063ffffffff614cb216565b60075460029290920a90049061213f90608060020a026298968063ffffffff614d6016565b9063ffffffff614d6016565b9063ffffffff614cb216565b9060020a900492505050919050565b600f541561218957600f54612181908263ffffffff614df316565b600f55611470565b612199428263ffffffff614df316565b600f5550565b6121a76128d6565b6040805180820190915260188152604260020a771253925517d053149150511657d253925512505312569151026020820152901561222a5760405160e560020a62461bcd02815260040180806020018281038252838181518152602001915080519060200190808383600083811015610dff578181015183820152602001610de7565b506002600981905560008054600160a060020a0319908116600160a060020a038d81169190911783556001805483168d8316178155845483168c8316179094556003805483168b8316178155600480549093168a831617909255600588905560068790556007869055600885905560408051610120810182528481526020808201868152928201868152606083018781526080840188815260a0850189815260c086018a815260e087018b81526101008089018d90529b8d9052600c90965286517fd421a5181c571bba3f01190c922c3b2a896fc1d84e86c9f17ac10e67ebef8b5c90815597517fd421a5181c571bba3f01190c922c3b2a896fc1d84e86c9f17ac10e67ebef8b5d80549651909a16909b0261010060a860020a03199b151560ff19968716179b909b169a909a1790975590517fd421a5181c571bba3f01190c922c3b2a896fc1d84e86c9f17ac10e67ebef8b5e55517fd421a5181c571bba3f01190c922c3b2a896fc1d84e86c9f17ac10e67ebef8b5f5593517fd421a5181c571bba3f01190c922c3b2a896fc1d84e86c9f17ac10e67ebef8b6080546001604060020a039092166001604060020a031990921691909117905594517fd421a5181c571bba3f01190c922c3b2a896fc1d84e86c9f17ac10e67ebef8b615593517fd421a5181c571bba3f01190c922c3b2a896fc1d84e86c9f17ac10e67ebef8b6280549596929591949093919091169190849081111561244657fe5b0217905550610100919091015160089091018054600160a060020a031916600160a060020a03909216919091179055604080516000818301819052606082018190526080820181905260a0808352601090830152608260020a6f10589cdd185a5b881c1c9bdc1bdcd85b0260c083015260e060208301819052820181905291516001918391600080516020615de483398151915291610120908290030190a46124ed614f36565b505050505050505050565b612500610d41565b6040805180820190915260148152600080516020615ee483398151915260208201529015156125745760405160e560020a62461bcd02815260040180806020018281038252838181518152602001915080519060200190808383600083811015610dff578181015183820152602001610de7565b5081806001148061259e57506000818152600c6020526040902060080154600160a060020a031615155b60408051808201909152601a8152600080516020615f0483398151915260208201529015156126125760405160e560020a62461bcd02815260040180806020018281038252838181518152602001915080519060200190808383600083811015610dff578181015183820152602001610de7565b5061261e8383336149d9565b505050565b600f55565b6000806000838152600c602052604090206006015460ff16600381111561264b57fe5b148015610d2c575050600b5460ff1615919050565b600160a060020a0381166000908152600e60209081526040918290208054835181840281018401909452808452606093928301828280156126c057602002820191906000526020600020905b8154815260200190600101908083116126ac575b50505050509050919050565b60006126d6613cfb565b905090565b60065481565b6000818152600c602052604081206003600682015460ff16600381111561270457fe5b148061272257506002600682015460ff16600381111561272057fe5b145b91505b50919050565b6010541561274e57601054612746908263ffffffff614fe816565b601055611470565b61275e438263ffffffff614fe816565b60105550565b3361276d614505565b600160a060020a0316146040805190810160405280601f8152602001600080516020615d048339815191528152509015156127ed5760405160e560020a62461bcd02815260040180806020018281038252838181518152602001915080519060200190808383600083811015610dff578181015183820152602001610de7565b506114708161506d565b60006126d66150b6565b50600190565b33612810614505565b600160a060020a0316146040805190810160405280601f8152602001600080516020615d048339815191528152509015156128905760405160e560020a62461bcd02815260040180806020018281038252838181518152602001915080519060200190808383600083811015610dff578181015183820152602001610de7565b5061261e8383836150c8565b60006126d67fd625496217aa6a3453eecb9c3489dc5a53e6c67b444329ea2b2cbc9ff547639b614522565b600a5481565b600b5460ff1681565b60006126d6600080516020615d24833981519152614522565b600f541561290a57600f54612181908263ffffffff614fe816565b612199428263ffffffff614fe816565b7fef025787d7cd1a96d9014b8dc7b44899b8c1350859fb9e1e05f5a546dd65158d81565b60105481565b60408051600080825260208201909252600080516020615e048339815191529161297291339184919061149d565b60408051808201909152600f8152600080516020615ce483398151915260208201529015156129e65760405160e560020a62461bcd02815260040180806020018281038252838181518152602001915080519060200190808383600083811015610dff578181015183820152602001610de7565b5060048054600160a060020a038416600160a060020a0319909116811790915560408051918252517fe73ec16f0f6043487af9cb91eb14c278096f172773ad13f392cd1f9507c9a8ee9181900360200190a15050565b6000806000612a4a84612801565b6040805180820190915260128152607260020a71149150d3d5915497d11254d0531313d5d151026020820152901515612ac85760405160e560020a62461bcd02815260040180806020018281038252838181518152602001915080519060200190808383600083811015610dff578181015183820152602001610de7565b50612ad16116f5565b9250612adc8361511b565b60408051808201909152601a81527f5245434f5645525f5641554c545f4e4f545f434f4e54524143540000000000006020820152901515612b625760405160e560020a62461bcd02815260040180806020018281038252838181518152602001915080519060200190808383600083811015610dff578181015183820152602001610de7565b50600160a060020a0384161515612bb35760405130319250600160a060020a0384169083156108fc029084906000818181858888f19350505050158015612bad573d6000803e3d6000fd5b50612c72565b5082612bce600160a060020a0382163063ffffffff61514116565b9150612bea600160a060020a038216848463ffffffff61522f16565b60408051808201909152601d81527f5245434f5645525f544f4b454e5f5452414e534645525f4641494c45440000006020820152901515612c705760405160e560020a62461bcd02815260040180806020018281038252838181518152602001915080519060200190808383600083811015610dff578181015183820152602001610de7565b505b83600160a060020a031683600160a060020a03167f596caf56044b55fb8c4ca640089bbc2b63cae3e978b851f5745cbb7c5b288e02846040518082815260200191505060405180910390a350505050565b612ccb610d41565b6040805180820190915260148152600080516020615ee48339815191526020820152901515612d3f5760405160e560020a62461bcd02815260040180806020018281038252838181518152602001915080519060200190808383600083811015610dff578181015183820152602001610de7565b50612d4c6000193361528f565b565b600080612d59610d41565b1515612d685760009150612e96565b612d706134b7565b9050600160a060020a0381161515612d8b5760009150612e96565b80600160a060020a031663fdef9106863087612da6886153c3565b60405160e060020a63ffffffff8716028152600160a060020a03808616600483019081529085166024830152604482018490526080606483019081528351608484015283519192909160a490910190602085019080838360005b83811015612e18578181015183820152602001612e00565b50505050905090810190601f168015612e455780820380516001836020036101000a031916815260200191505b5095505050505050602060405180830381600087803b158015612e6757600080fd5b505af1158015612e7b573d6000803e3d6000fd5b505050506040513d6020811015612e9157600080fd5b505191505b509392505050565b60075481565b600080612eaf6134b7565b6040805160e360020a6317c0177b0281527fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb60048201527fddbcfd564f642ab5627cf68b9b7d374fb4f8a36e941a75d89c87998cef03bd6160248201529051600160a060020a03929092169163be00bbd8916044808201926020929091908290030181600087803b1580156116c357600080fd5b600254600160a060020a031681565b60006126d6600080516020615d64833981519152614522565b33612f74614505565b600160a060020a0316146040805190810160405280601f8152602001600080516020615d04833981519152815250901515612ff45760405160e560020a62461bcd02815260040180806020018281038252838181518152602001915080519060200190808383600083811015610dff578181015183820152602001610de7565b50611470816153cd565b60006126d6614505565b33613011612f52565b600160a060020a031614613070576040805160e560020a62461bcd0281526020600482015260276024820152600080516020615e44833981519152604482015260c960020a6626b0b730b3b2b902606482015290519081900360840190fd5b613087600080516020615e84833981519152614522565b6040805180820190915260198152600080516020615d84833981519152602082015290156130fa5760405160e560020a62461bcd02815260040180806020018281038252838181518152602001915080519060200190808383600083811015610dff578181015183820152602001610de7565b5061311a600080516020615e84833981519152600163ffffffff61451e16565b611b1c33838361261e565b60408051600080825260208201909252600080516020615e048339815191529161315391339184919061149d565b60408051808201909152600f8152600080516020615ce483398151915260208201529015156131c75760405160e560020a62461bcd02815260040180806020018281038252838181518152602001915080519060200190808383600083811015610dff578181015183820152602001610de7565b50600585905560068490556007839055600882905560408051868152602081018690528082018590526060810184905290517fab0e1d16e026a71973fa1c1862074f152ee6c430f36fce58005928c3bb1588369181900360800190a15050505050565b6000818152600c60205260408120805482918291829182918291829182918291829190156132685761326361325e82613da9565b611f60565b61326b565b60005b915080600001548160010160009054906101000a900460ff168260010160019054906101000a9004600160a060020a0316836002015484600301548560040160009054906101000a90046001604060020a031686600501548760060160009054906101000a900460ff168860080160009054906101000a9004600160a060020a03168a9a509a509a509a509a509a509a509a509a509a50509193959799509193959799565b613318610d41565b6040805180820190915260148152600080516020615ee4833981519152602082015290151561338c5760405160e560020a62461bcd02815260040180806020018281038252838181518152602001915080519060200190808383600083811015610dff578181015183820152602001610de7565b5060408051600080825260208201909252600080516020615da4833981519152916133bb91339184919061149d565b60408051808201909152600f8152600080516020615ce4833981519152602082015290151561342f5760405160e560020a62461bcd02815260040180806020018281038252838181518152602001915080519060200190808383600083811015610dff578181015183820152602001610de7565b5061349e85858080601f0160208091040260200160405190810160405280939291908181526020018383808284375050604080516020601f8b018190048102820181019092528981529450899350889250829150840183828082843782019150505050505060008060006146e0565b5050505050565b600080516020615cc483398151915281565b60006126d67f4172f0f7d2289153072b0a6ca36959e0cbe2efc3afe50fc81636caa96338137b614522565b6000336134ed612f52565b600160a060020a03161461354c576040805160e560020a62461bcd0281526020600482015260276024820152600080516020615e44833981519152604482015260c960020a6626b0b730b3b2b902606482015290519081900360840190fd5b613563600080516020615e84833981519152614522565b6040805180820190915260198152600080516020615d84833981519152602082015290156135d65760405160e560020a62461bcd02815260040180806020018281038252838181518152602001915080519060200190808383600083811015610dff578181015183820152602001610de7565b506135f6600080516020615e84833981519152600163ffffffff61451e16565b6119a58484846153d6565b6005546000906001604060020a0385169082906136379061363190608060020a026298968063ffffffff614d6016565b836153df565b9050608061369a607f60020a61368e61367e600554629896800361213f61366b88608060020a614df390919063ffffffff16565b61214b8c6298968063ffffffff614cb216565b61368e868b63ffffffff614cb216565b9063ffffffff614fe816565b9060020a9004925050509392505050565b60085481565b600080516020615d4483398151915281565b670de0b6b3a764000081565b600160a060020a03166000908152600d602052604090205490565b60006000196136f76128d6565b14905090565b600b546040805180820190915260128152600080516020615ec4833981519152602082015260009182919060ff161561377b5760405160e560020a62461bcd02815260040180806020018281038252838181518152602001915080519060200190808383600083811015610dff578181015183820152602001610de7565b508280600114806137a557506000818152600c6020526040902060080154600160a060020a031615155b60408051808201909152601a8152600080516020615f0483398151915260208201529015156138195760405160e560020a62461bcd02815260040180806020018281038252838181518152602001915080519060200190808383600083811015610dff578181015183820152602001610de7565b506000848152600c6020908152604080832081518481529283019091529450613853913391600080516020615dc48339815191529161149d565b6008840154909250600160a060020a031633148061386e5750815b6040805180820190915260178152604a60020a7610d597d4d15391115497d0d0539393d517d0d05390d1530260208201529015156138f15760405160e560020a62461bcd02815260040180806020018281038252838181518152602001915080519060200190808383600083811015610dff578181015183820152602001610de7565b5060408051606081018252602181527f43565f43414e4e4f545f43414e43454c5f4142535441494e5f50524f504f5341602082015260fa60020a6013029181019190915260018514156139895760405160e560020a62461bcd02815260040180806020018281038252838181518152602001915080519060200190808383600083811015610dff578181015183820152602001610de7565b506000600684015460ff16600381111561399f57fe5b6040805180820190915260168152605060020a7543565f50524f504f53414c5f4e4f545f4143544956450260208201529114613a205760405160e560020a62461bcd02815260040180806020018281038252838181518152602001915080519060200190808383600083811015610dff578181015183820152602001610de7565b5060068301805460ff191660021790556005830154613a3e90613e28565b60405184907f416e669c63d9a3a5e36ee7cc7e2104b8db28ccd286aa18966e98fa230c73b08c90600090a250505050565b6000828152600c60209081526040808320600160a060020a038516845260070190915290205492915050565b60408051600080825260208201909252600080516020615d4483398151915291613ac991339184919061149d565b60408051808201909152600f8152600080516020615ce48339815191526020820152901515613b3d5760405160e560020a62461bcd02815260040180806020018281038252838181518152602001915080519060200190808383600083811015610dff578181015183820152602001610de7565b50600b805460ff191683151517908190556040805160ff90921615158252517f752d7e161ff5146f80e3820893176eb40532811e5e20400dfdde57455213706a916020908290030190a15050565b600080516020615da483398151915281565b600080516020615dc483398151915281565b600f5481565b33613bbe614505565b600160a060020a0316146040805190810160405280601f8152602001600080516020615d04833981519152815250901515613c3e5760405160e560020a62461bcd02815260040180806020018281038252838181518152602001915080519060200190808383600083811015610dff578181015183820152602001610de7565b5061147081615491565b613c50610d41565b6040805180820190915260148152600080516020615ee48339815191526020820152901515613cc45760405160e560020a62461bcd02815260040180806020018281038252838181518152602001915080519060200190808383600083811015610dff578181015183820152602001610de7565b50611b3b828233613e99565b6000613cdb826154dd565b80610d2c575050600160e060020a03191660e260020a6315014f9b021490565b60105460009015613d0f575060105461176b565b6126d66154f9565b600080613d226154fd565b60048501549092506001604060020a0380841691161115613d3f57fe5b60048401546001604060020a0383811691161415613d5c57613da3565b60048401546003850154613d7c916001604060020a031684039085613601565b6004850180546001604060020a0319166001604060020a0385161790556003850181905590505b50505050565b600181015460009060ff16613dbf578154610d2c565b60035460025483546001546040805160e260020a632321bc79028152600160a060020a03948516600482015260248101939093529083166044830152519190921691638c86f1e49160648083019260209291908290030181600087803b1580156116c357600080fd5b6000613e3261550a565b905080600160a060020a0316633b92da72836040518263ffffffff1660e060020a02815260040180828152602001915050600060405180830381600087803b158015613e7d57600080fd5b505af1158015613e91573d6000803e3d6000fd5b505050505050565b600b546040805180820190915260128152600080516020615ec483398151915260208201526000918291829160ff1615613f185760405160e560020a62461bcd02815260040180806020018281038252838181518152602001915080519060200190808383600083811015610dff578181015183820152602001610de7565b50858060011480613f4257506000818152600c6020526040902060080154600160a060020a031615155b60408051808201909152601a8152600080516020615f048339815191526020820152901515613fb65760405160e560020a62461bcd02815260040180806020018281038252838181518152602001915080519060200190808383600083811015610dff578181015183820152602001610de7565b506000613fc1612f52565b600160a060020a03161415604080519081016040528060178152602001604a60020a7610d597d393d7d513d2d15397d350539051d15497d4d155028152509015156140515760405160e560020a62461bcd02815260040180806020018281038252838181518152602001915080519060200190808383600083811015610dff578181015183820152602001610de7565b506000878152600c60209081526040808320815180830190925260198252600080516020615ea4833981519152928201929092529095509087116140da5760405160e560020a62461bcd02815260040180806020018281038252838181518152602001915080519060200190808383600083811015610dff578181015183820152602001610de7565b506000600685015460ff1660038111156140f057fe5b148061410e57506001600685015460ff16600381111561410c57fe5b145b60408051808201909152601c81527f43565f494e434f52524543545f50524f504f53414c5f5354415455530000000060208201529015156141945760405160e560020a62461bcd02815260040180806020018281038252838181518152602001915080519060200190808383600083811015610dff578181015183820152602001610de7565b50600160a060020a038086166000818152600d60209081526040808320548354825160e060020a6370a082310281526004810196909652915161423696919592909116936370a0823193602480850194919392918390030190829087803b1580156141fe57600080fd5b505af1158015614212573d6000803e3d6000fd5b505050506040513d602081101561422857600080fd5b50519063ffffffff614df316565b92508286111561425957614259614253878563ffffffff614df316565b8661528f565b600080546040805160e060020a6370a08231028152600160a060020a038981166004830152915191909216926370a0823192602480820193602093909283900390910190829087803b1580156142ae57600080fd5b505af11580156142c2573d6000803e3d6000fd5b505050506040513d60208110156142d857600080fd5b5051600160a060020a0386166000908152600d6020526040902054614303908863ffffffff614fe816565b60408051808201909152601e81527f43565f5354414b494e475f4d4f52455f5448414e5f415641494c41424c45000060208201529110156143895760405160e560020a62461bcd02815260040180806020018281038252838181518152602001915080519060200190808383600083811015610dff578181015183820152602001610de7565b50600284015491506143a1828763ffffffff614fe816565b6002850155600160a060020a03851660009081526007850160205260409020546143d1908763ffffffff614fe816565b600160a060020a0386166000908152600786016020908152604080832093909355600d90522054614408908763ffffffff614fe816565b600160a060020a0386166000908152600d6020526040902055600a54614434908763ffffffff614fe816565b600a5560048401546001604060020a0316151561447a576144536154fd565b6004850180546001604060020a0319166001604060020a0392909216919091179055614484565b6144848483613d17565b61448e8786615595565b600160a060020a0385166000818152600786016020908152604091829020546002880154600389015484518c81529384019290925282840152606082015290518992917f28d9b583e0c477691a08f6c1e00fedc0895ed4221487c627fa96a7024119f499919081900360800190a350505050505050565b60006126d6600080516020615e64833981519152614522565b9055565b5490565b600080600160a060020a03851615156145425760019150612e96565b600080546040805160e060020a6370a08231028152600160a060020a038981166004830152915161459d94889493909316926370a0823192602480820193602093909283900390910190829087803b1580156141fe57600080fd5b600160a060020a0386166000908152600d60205260409020549091508110156145ed57600160a060020a0385166000908152600d60205260409020546145ed90614253908363ffffffff614df316565b600160a060020a0385166000908152600d602052604090205481101561464057600160a060020a0385166000908152600d60205260409020546146409061463a908363ffffffff614df316565b86615665565b506001949350505050565b60005460408051808201909152601f81527f43565f494e434f52524543545f544f4b454e5f4d414e414745525f484f4f4b00602082015290600160a060020a03838116911614613da35760405160e560020a62461bcd02815260040180806020018281038252838181518152602001915080519060200190808383600083811015610dff578181015183820152602001610de7565b600b546040805180820190915260128152600080516020615ec4833981519152602082015260009160ff161561475b5760405160e560020a62461bcd02815260040180806020018281038252838181518152602001915080519060200190808383600083811015610dff578181015183820152602001610de7565b506147696009548633615877565b905061012060405190810160405280858152602001841515815260200183600160a060020a03168152602001600081526020016000815260200160006001604060020a03168152602001828152602001600060038111156147c657fe5b8152336020918201526009546000908152600c825260409081902083518155918301516001808401805493860151600160a060020a03166101000261010060a860020a031993151560ff1995861617939093169290921790915560608401516002840155608084015160038085019190915560a08501516004850180546001604060020a039092166001604060020a031990921691909117905560c0850151600585015560e085015160068501805491949093911691849081111561488757fe5b0217905550610100919091015160089091018054600160a060020a031916600160a060020a03928316179055600954604080519081018790528515156060820152918416608083015260a0808352885190830152875183923391600080516020615de4833981519152918b918b918b918b918b91819060208083019160c08401918a019080838360005b83811015614929578181015183820152602001614911565b50505050905090810190601f1680156149565780820380516001836020036101000a031916815260200191505b50838103825287518152875160209182019189019080838360005b83811015614989578181015183820152602001614971565b50505050905090810190601f1680156149b65780820380516001836020036101000a031916815260200191505b5097505050505050505060405180910390a4505060098054600101905550505050565b6000838152600c60209081526040808320600160a060020a0385168452600781018352818420548251808401909352601c83527f43565f57495448445241575f4d4f52455f5448414e5f5354414b454400000000938301939093529291851115614a885760405160e560020a62461bcd02815260040180806020018281038252838181518152602001915080519060200190808383600083811015610dff578181015183820152602001610de7565b506040805180820190915260198152600080516020615ea4833981519152602082015260008511614afe5760405160e560020a62461bcd02815260040180806020018281038252838181518152602001915080519060200190808383600083811015610dff578181015183820152602001610de7565b50506002810154614b15818563ffffffff614df316565b6002830155600160a060020a0383166000908152600783016020526040902054614b45908563ffffffff614df316565b600160a060020a0384166000908152600784016020908152604080832093909355600d90522054614b7c908563ffffffff614df316565b600160a060020a0384166000908152600d6020526040902055600a54614ba8908563ffffffff614df316565b600a55600160a060020a03831660009081526007830160205260409020541515614bf657600160a060020a0383166000908152600e60205260409020614bf4908663ffffffff61595116565b505b6000600683015460ff166003811115614c0b57fe5b1480614c2957506001600683015460ff166003811115614c2757fe5b145b15614c3857614c388282613d17565b600160a060020a03831660008181526007840160209081526040918290205460028601546003870154845195865292850189905284840191909152606084015260808301525186917f16f23283da3097bc9027dcdf31f24863b1520556f04818d406f0e6ecd08580f5919081900360a00190a25050505050565b600080831515614cc55760009150614d59565b50828202828482811515614cd557fe5b6040805180820190915260118152607860020a704d4154485f4d554c5f4f564552464c4f570260208201529291900414614d545760405160e560020a62461bcd02815260040180806020018281038252838181518152602001915080519060200190808383600083811015610dff578181015183820152602001610de7565b508091505b5092915050565b60408051808201909152600d8152609860020a6c4d4154485f4449565f5a45524f0260208201526000908190818411614dde5760405160e560020a62461bcd02815260040180806020018281038252838181518152602001915080519060200190808383600083811015610dff578181015183820152602001610de7565b508284811515614dea57fe5b04949350505050565b6040805180820190915260128152607060020a714d4154485f5355425f554e444552464c4f57026020820152600090819084841115614e775760405160e560020a62461bcd02815260040180806020018281038252838181518152602001915080519060200190808383600083811015610dff578181015183820152602001610de7565b505050900390565b600080614f1e670de0b6b3a764000061213f6008546000809054906101000a9004600160a060020a0316600160a060020a03166318160ddd6040518163ffffffff1660e060020a028152600401602060405180830381600087803b158015614ee657600080fd5b505af1158015614efa573d6000803e3d6000fd5b505050506040513d6020811015614f1057600080fd5b50519063ffffffff614cb216565b905080600a5410614f3157600a54610d64565b919050565b614f3e6128d6565b6040805180820190915260188152604260020a771253925517d053149150511657d2539255125053125691510260208201529015614fc15760405160e560020a62461bcd02815260040180806020018281038252838181518152602001915080519060200190808383600083811015610dff578181015183820152602001610de7565b50612d4c614fcd613cfb565b600080516020615d248339815191529063ffffffff61451e16565b6040805180820190915260118152607860020a704d4154485f4144445f4f564552464c4f570260208201526000908383019084821015614d545760405160e560020a62461bcd02815260040180806020018281038252838181518152602001915080519060200190808383600083811015610dff578181015183820152602001610de7565b6000818152600c602052604080822060068101805460ff191690559051909183917f2e907829e43966b15ceb2d58ec9829a85c08155366371c443daeecd523ab1b349190a25050565b60006126d66150c3615a0c565b615a28565b6000838152600c602052604080822060068101805460ff1916600117905590519091849186917faa41cc9a8de6a0731d1898a2eca5cbfc00c88dd0c91cd5e007b8f4fef6262cee91a350505050565b5490565b600080600160a060020a03831615156151375760009150612725565b50506000903b1190565b60408051600160a060020a038316602480830191909152825180830390910181526044909101909152602081018051600160e060020a031660e060020a6370a082310217905260009081806151968684615abb565b60408051808201909152601c81527f534146455f4552435f32305f42414c414e43455f524556455254454400000000602082015291935091508215156152215760405160e560020a62461bcd02815260040180806020018281038252838181518152602001915080519060200190808383600083811015610dff578181015183820152602001610de7565b508093505b50505092915050565b60408051600160a060020a03841660248201526044808201849052825180830390910181526064909101909152602081018051600160e060020a031660e060020a63a9059cbb021790526000906152868582615aec565b95945050505050565b600160a060020a0381166000908152600e60209081526040808320805482518185028101850190935280835284938493606093859384938301828280156152f557602002820191906000526020600020905b8154815260200190600101908083116152e1575b505050505092505b82518610801561530c57508784105b15611de757828681518110151561531f57fe5b60209081029091018101516000818152600c909252604090912090925090506003600682015460ff16600381111561535357fe5b148061537157506002600682015460ff16600381111561536f57fe5b145b156153b857600160a060020a038716600090815260078201602052604081205495508511156153b8576153a58286896149d9565b6153b5848663ffffffff614fe816565b93505b6001909501946152fd565b8051602002815290565b6114708161506d565b60019392505050565b60008080608060020a851061543e576040805160e560020a62461bcd02815260206004820152601c60248201527f5f612073686f756c64206265206c657373207468616e20325e31323800000000604482015290519081900360640190fd5b50608060020a9150839050825b600081111561548957600181161515615473576154688283615b3a565b915060029004615484565b61547d8383615b3a565b9250600019015b61544b565b505092915050565b6000818152600c602052604080822060068101805460ff191660021790559051909183917fd92fba445edb3153b571e6df782d7a66fd0ce668519273670820ee3a86da0ef49190a25050565b600160e060020a0319811660e060020a6301ffc9a70214919050565b4390565b60006126d66150c3613cfb565b600080615515614505565b604080518082019091526020808252600080516020615e2483398151915290820152909150600160a060020a03821615156127255760405160e560020a62461bcd02815260040180806020018281038252838181518152602001915080519060200190808383600083811015610dff578181015183820152602001610de7565b600160a060020a0381166000908152600e602052604090206155bd818463ffffffff615c2f16565b151561261e5780546040805180820190915260188152604260020a7710d597d3505617d41493d413d4d05314d7d4915050d2115102602082015290600a1161564a5760405160e560020a62461bcd02815260040180806020018281038252838181518152602001915080519060200190808383600083811015610dff578181015183820152602001610de7565b50805460018101825560008281526020902001839055505050565b600160a060020a0381166000908152600e60209081526040808320805482518185028101850190935280835284938493606093859384938301828280156156cb57602002820191906000526020600020905b8154815260200190600101908083116156b7575b50505050600160a060020a0389166000908152600e602052604090209194506156f79190506001615c2f565b1561576957600160a060020a03871660009081527fd421a5181c571bba3f01190c922c3b2a896fc1d84e86c9f17ac10e67ebef8b63602052604090205461573f908990615c77565b9450600085111561576957615756600186896149d9565b615766848663ffffffff614fe816565b93505b600160a060020a0387166000908152600e6020908152604091829020805483518184028101840190945280845290918301828280156157c757602002820191906000526020600020905b8154815260200190600101908083116157b3575b505050505092505b8251861080156157de57508784105b15611de75782868151811015156157f157fe5b60209081029091018101516000818152600c90925260409091209092509050615843615823898663ffffffff614df316565b600160a060020a0389166000908152600784016020526040902054615c77565b9450600085111561586c576158598286896149d9565b615869848663ffffffff614fe816565b93505b6001909501946157cf565b60008061588261550a565b905080600160a060020a031663e95fdd1d8686866040518463ffffffff1660e060020a028152600401808481526020018060200183600160a060020a0316600160a060020a03168152602001828103825284818151815260200191508051906020019080838360005b838110156159035781810151838201526020016158eb565b50505050905090810190601f1680156159305780820380516001836020036101000a031916815260200191505b50945050505050602060405180830381600087803b158015612e6757600080fd5b815460009081805b828210156159fc5784868381548110151561597057fe5b906000526020600020015414156159f157508454600019018181146159c357858181548110151561599d57fe5b906000526020600020015486838154811015156159b657fe5b6000918252602090912001555b85818154811015156159d157fe5b6000918252602082200155806159e78782615c8a565b5060019350615226565b600190910190615959565b50600095945050505050565b9055565b600f5460009015615a205750600f5461176b565b6126d6615c86565b6040805180820190915260158152605860020a7455494e5436345f4e554d4245525f544f4f5f4249470260208201526000906001604060020a03831115615ab45760405160e560020a62461bcd02815260040180806020018281038252838181518152602001915080519060200190808383600083811015610dff578181015183820152602001610de7565b5090919050565b6000806000806040516020818751602089018a5afa92506000831115615ae057805191505b50909590945092505050565b6000806040516020818551602087016000895af16000811115615b30573d8015615b1d5760208114615b2657615b2e565b60019350615b2e565b600183511493505b505b5090949350505050565b6000608060020a831115615bac576040805160e560020a62461bcd02815260206004820152602860248201527f5f612073686f756c64206265206c657373207468616e206f7220657175616c20604482015260c360020a670e8de4064bc6264702606482015290519081900360840190fd5b608060020a8210615c07576040805160e560020a62461bcd02815260206004820152601c60248201527f5f622073686f756c64206265206c657373207468616e20325e31323800000000604482015290519081900360640190fd5b6080615c21607f60020a61368e868663ffffffff614cb216565b9060020a9004905092915050565b6000805b8354811015615c6d57828482815481101515615c4b57fe5b90600052602060002001541415615c655760019150614d59565b600101615c33565b5060009392505050565b6000818310615ab457816119c6565b4290565b81548183558181111561261e5760008381526020902061261e91810190830161176b91905b80821115610d675760008155600101615caf56008dad640ab1b088990c972676ada708447affc660890ec9fc9a5483241c49f0364150505f415554485f4641494c4544000000000000000000000000000000000044495350555441424c455f53454e4445525f4e4f545f41475245454d454e5400ebb05b386a8d34882b8711d156f463690983dc47815980fb82aeeff1aa43579e0e3a87ad3cd0c04dcd1e538226de2b467c72316c162f937f5b6f7913616624625c513b2347f66d33af9d68f4a0ed7fbb73ce364889b2af7f3ee5764440da6a8a5245454e5452414e43595f5245454e5452414e545f43414c4c00000000000000bf05b9322505d747ab5880dfb677dc4864381e9fc3a25ccfa184a3a53d02f4b282c52f79cad6ac09c16c165c562b50c5e655a09a19bb99b2d182ab3caff020f2e180363919da754b2737a8f10869b7d2df0be7ef0e81339d3b5dabba166060ed9d4f140430c9045e12b5a104aa9e641c09b980a26ab8e12a32a2f3d155229ae344495350555441424c455f41475245454d454e545f53544154455f494e56414c486f6f6b73206d7573742062652063616c6c65642066726f6d20546f6b656e206dbe80ccdeafbf5f3fff5738b224414f85e9370da36f61bf21c65159df7409e9e855346402235fdd185c890e68d2c4ecad599b88587635ee285bce2fda58dacb43565f414d4f554e545f43414e5f4e4f545f42455f5a45524f0000000000000043565f434f4e54524143545f5041555345440000000000000000000000000000494e49545f4e4f545f494e495449414c495a454400000000000000000000000043565f50524f504f53414c5f444f45535f4e4f545f4558495354000000000000a165627a7a72305820f8e9e97cc6eac3e28699246e8234edb46c8f0ea884070a818afa16c740c1b9c90029",
  "linkReferences": {},
  "deployedLinkReferences": {}
}
