{
  "_format": "hh-sol-artifact-1",
  "contractName": "Multisig",
  "sourceName": "contracts/governance/Multisig.sol",
  "abi": [
    {
      "inputs": [
        {
          "internalType": "address[]",
          "name": "accounts",
          "type": "address[]"
        },
        {
          "internalType": "uint256",
          "name": "threshold",
          "type": "uint256"
        }
      ],
      "stateMutability": "nonpayable",
      "type": "constructor"
    },
    {
      "inputs": [],
      "name": "AlreadyVoted",
      "type": "error"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "account",
          "type": "address"
        }
      ],
      "name": "DuplicateSigner",
      "type": "error"
    },
    {
      "inputs": [],
      "name": "ExecutionFailed",
      "type": "error"
    },
    {
      "inputs": [],
      "name": "InsufficientBalance",
      "type": "error"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "target",
          "type": "address"
        }
      ],
      "name": "InvalidContract",
      "type": "error"
    },
    {
      "inputs": [],
      "name": "InvalidSignerThreshold",
      "type": "error"
    },
    {
      "inputs": [],
      "name": "InvalidSigners",
      "type": "error"
    },
    {
      "inputs": [],
      "name": "NativeTransferFailed",
      "type": "error"
    },
    {
      "inputs": [],
      "name": "NotSigner",
      "type": "error"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": true,
          "internalType": "bytes32",
          "name": "topic",
          "type": "bytes32"
        },
        {
          "indexed": true,
          "internalType": "uint256",
          "name": "signerEpoch",
          "type": "uint256"
        },
        {
          "indexed": true,
          "internalType": "address",
          "name": "voter",
          "type": "address"
        },
        {
          "indexed": false,
          "internalType": "uint256",
          "name": "threshold",
          "type": "uint256"
        }
      ],
      "name": "MultisigOperationExecuted",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": true,
          "internalType": "bytes32",
          "name": "topic",
          "type": "bytes32"
        },
        {
          "indexed": true,
          "internalType": "uint256",
          "name": "signerEpoch",
          "type": "uint256"
        },
        {
          "indexed": true,
          "internalType": "address",
          "name": "voter",
          "type": "address"
        },
        {
          "indexed": false,
          "internalType": "uint256",
          "name": "voteCount",
          "type": "uint256"
        },
        {
          "indexed": false,
          "internalType": "uint256",
          "name": "threshold",
          "type": "uint256"
        }
      ],
      "name": "MultisigVoted",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": false,
          "internalType": "address[]",
          "name": "newAccounts",
          "type": "address[]"
        },
        {
          "indexed": false,
          "internalType": "uint256",
          "name": "newThreshold",
          "type": "uint256"
        }
      ],
      "name": "SignersRotated",
      "type": "event"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "target",
          "type": "address"
        },
        {
          "internalType": "bytes",
          "name": "callData",
          "type": "bytes"
        },
        {
          "internalType": "uint256",
          "name": "nativeValue",
          "type": "uint256"
        }
      ],
      "name": "executeContract",
      "outputs": [
        {
          "internalType": "bytes",
          "name": "",
          "type": "bytes"
        }
      ],
      "stateMutability": "payable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "bytes32",
          "name": "topic",
          "type": "bytes32"
        }
      ],
      "name": "getSignerVotesCount",
      "outputs": [
        {
          "internalType": "uint256",
          "name": "",
          "type": "uint256"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "account",
          "type": "address"
        },
        {
          "internalType": "bytes32",
          "name": "topic",
          "type": "bytes32"
        }
      ],
      "name": "hasSignerVoted",
      "outputs": [
        {
          "internalType": "bool",
          "name": "",
          "type": "bool"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "account",
          "type": "address"
        }
      ],
      "name": "isSigner",
      "outputs": [
        {
          "internalType": "bool",
          "name": "",
          "type": "bool"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "address[]",
          "name": "newAccounts",
          "type": "address[]"
        },
        {
          "internalType": "uint256",
          "name": "newThreshold",
          "type": "uint256"
        }
      ],
      "name": "rotateSigners",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "signerAccounts",
      "outputs": [
        {
          "internalType": "address[]",
          "name": "",
          "type": "address[]"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "signerEpoch",
      "outputs": [
        {
          "internalType": "uint256",
          "name": "",
          "type": "uint256"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "signerThreshold",
      "outputs": [
        {
          "internalType": "uint256",
          "name": "",
          "type": "uint256"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "signers",
      "outputs": [
        {
          "internalType": "uint256",
          "name": "threshold",
          "type": "uint256"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "uint256",
          "name": "",
          "type": "uint256"
        },
        {
          "internalType": "bytes32",
          "name": "",
          "type": "bytes32"
        }
      ],
      "name": "votingPerTopic",
      "outputs": [
        {
          "internalType": "uint256",
          "name": "voteCount",
          "type": "uint256"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "recipient",
          "type": "address"
        },
        {
          "internalType": "uint256",
          "name": "amount",
          "type": "uint256"
        }
      ],
      "name": "withdraw",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "stateMutability": "payable",
      "type": "receive"
    }
  ],
  "bytecode": "0x60806040523480156200001157600080fd5b506040516200143838038062001438833981016040819052620000349162000300565b81816200004282826200004c565b505050506200046b565b60008054905b81811015620000b957600060020160008060000183815481106200007a576200007a620003da565b60009182526020808320909101546001600160a01b031683528201929092526040019020805460ff19169055620000b181620003f0565b905062000052565b5050815180821115620000df57604051635e231fff60e01b815260040160405180910390fd5b816000036200010157604051632b47c13b60e01b815260040160405180910390fd5b6003600081546200011290620003f0565b9091555082516200012b9060009060208601906200024c565b50600182905560005b818110156200020b576000848281518110620001545762000154620003da565b6020908102919091018101516001600160a01b0381166000908152600290925260409091205490915060ff1615620001ae57604051637010e27960e11b81526001600160a01b038216600482015260240160405180910390fd5b6001600160a01b038116620001d657604051635e231fff60e01b815260040160405180910390fd5b6001600160a01b03166000908152600260205260409020805460ff191660011790556200020381620003f0565b905062000134565b507fbc9753cf3d526725c425068c2040206cc37ba734f24a64b8b4f7dea6aaac52ff83836040516200023f92919062000418565b60405180910390a1505050565b828054828255906000526020600020908101928215620002a4579160200282015b82811115620002a457825182546001600160a01b0319166001600160a01b039091161782556020909201916001909101906200026d565b50620002b2929150620002b6565b5090565b5b80821115620002b25760008155600101620002b7565b634e487b7160e01b600052604160045260246000fd5b80516001600160a01b0381168114620002fb57600080fd5b919050565b600080604083850312156200031457600080fd5b82516001600160401b03808211156200032c57600080fd5b818501915085601f8301126200034157600080fd5b8151602082821115620003585762000358620002cd565b8160051b604051601f19603f83011681018181108682111715620003805762000380620002cd565b6040529283528183019350848101820192898411156200039f57600080fd5b948201945b83861015620003c857620003b886620002e3565b85529482019493820193620003a4565b97909101519698969750505050505050565b634e487b7160e01b600052603260045260246000fd5b6000600182016200041157634e487b7160e01b600052601160045260246000fd5b5060010190565b604080825283519082018190526000906020906060840190828701845b828110156200045c5781516001600160a01b03168452928401929084019060010162000435565b50505092019290925292915050565b610fbd806200047b6000396000f3fe6080604052600436106100c05760003560e01c80635e187d3911610074578063b80886ac1161004e578063b80886ac1461022b578063d4d4bb051461024b578063f3fef3a31461026d57600080fd5b80635e187d39146101a05780637df73e27146101d0578063a4a4f3901461021657600080fd5b80633f1a3e68116100a55780633f1a3e681461015157806346f0975a146101735780635b8140631461018a57600080fd5b806316045059146100cc5780631f1f06751461011757600080fd5b366100c757005b600080fd5b3480156100d857600080fd5b506101046100e7366004610b92565b600460209081526000928352604080842090915290825290205481565b6040519081526020015b60405180910390f35b34801561012357600080fd5b50610104610132366004610bb4565b6003546000908152600460209081526040808320938352929052205490565b34801561015d57600080fd5b5061017161016c366004610c25565b61028d565b005b34801561017f57600080fd5b506001546101049081565b34801561019657600080fd5b5061010460035481565b3480156101ac57600080fd5b506101c06101bb366004610d0e565b6102ab565b604051901515815260200161010e565b3480156101dc57600080fd5b506101c06101eb366004610d38565b73ffffffffffffffffffffffffffffffffffffffff1660009081526002602052604090205460ff1690565b34801561022257600080fd5b50600154610104565b61023e610239366004610d53565b6102f3565b60405161010e9190610ddc565b34801561025757600080fd5b5061026061032d565b60405161010e9190610e99565b34801561027957600080fd5b50610171610288366004610d0e565b61039e565b6102956103ce565b61029d575050565b6102a782826105a0565b5050565b6003546000908152600460209081526040808320848452825280832073ffffffffffffffffffffffffffffffffffffffff8616845260010190915290205460ff165b92915050565b60606102fd6103ce565b6103165750604080516020810190915260008152610325565b6103228585858561086a565b90505b949350505050565b60606000800180548060200260200160405190810160405280929190818152602001828054801561039457602002820191906000526020600020905b815473ffffffffffffffffffffffffffffffffffffffff168152600190910190602001808311610369575b5050505050905090565b6103a66103ce565b6103ae575050565b6102a773ffffffffffffffffffffffffffffffffffffffff8316826109c6565b3360009081526002602052604081205460ff16610417576040517fa1b035c800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60008036604051610429929190610eac565b604080519182900390912060035460008181526004602090815284822084835281528482203383526001810190915293902054919350919060ff161561049b576040517f7c9a1cf900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b33600090815260018281016020526040822080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00168217905582546104e091610eeb565b600154909150808210156105395760408051838152602081018390523391869188917fa29ef665b15de72fb0f9499de0c5117604a84be72f9b4927e0229e8dd5b5609e910160405180910390a450905550600092915050565b3373ffffffffffffffffffffffffffffffffffffffff1684867fa39abd2703fe38eb3fceec05311fe5122b861aa739147236cebfc09aee7bfed18460405161058391815260200190565b60405180910390a461059483610a10565b60019550505050505090565b60008054905b8181101561063157600060020160008060000183815481106105ca576105ca610efe565b600091825260208083209091015473ffffffffffffffffffffffffffffffffffffffff168352820192909252604001902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0016905561062a81610f2d565b90506105a6565b505081518082111561066f576040517f5e231fff00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b816000036106a9576040517f2b47c13b00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6003600081546106b890610f2d565b9091555082516106cf906000906020860190610af3565b50600182905560005b8181101561082b5760008482815181106106f4576106f4610efe565b60209081029190910181015173ffffffffffffffffffffffffffffffffffffffff81166000908152600290925260409091205490915060ff1615610781576040517fe021c4f200000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff821660048201526024015b60405180910390fd5b73ffffffffffffffffffffffffffffffffffffffff81166107ce576040517f5e231fff00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b73ffffffffffffffffffffffffffffffffffffffff16600090815260026020526040902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0016600117905561082481610f2d565b90506106d8565b507fbc9753cf3d526725c425068c2040206cc37ba734f24a64b8b4f7dea6aaac52ff838360405161085d929190610f65565b60405180910390a1505050565b606061088b8573ffffffffffffffffffffffffffffffffffffffff16610aa3565b6108d9576040517fec01648400000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff86166004820152602401610778565b47821115610913576040517ff4d678b800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6000808673ffffffffffffffffffffffffffffffffffffffff1684878760405161093e929190610eac565b60006040518083038185875af1925050503d806000811461097b576040519150601f19603f3d011682016040523d82523d6000602084013e610980565b606091505b5091509150816109bc576040517facfdb44400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b9695505050505050565b600080600080600085875af1905080610a0b576040517ff4b3b1bc00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b505050565b60008082558054905b81811015610a0b57826001016000806000018381548110610a3c57610a3c610efe565b600091825260208083209091015473ffffffffffffffffffffffffffffffffffffffff168352820192909252604001902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00169055610a9c81610f2d565b9050610a19565b600073ffffffffffffffffffffffffffffffffffffffff82163f8015801590610aec57507fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a4708114155b9392505050565b828054828255906000526020600020908101928215610b6d579160200282015b82811115610b6d57825182547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff909116178255602090920191600190910190610b13565b50610b79929150610b7d565b5090565b5b80821115610b795760008155600101610b7e565b60008060408385031215610ba557600080fd5b50508035926020909101359150565b600060208284031215610bc657600080fd5b5035919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b803573ffffffffffffffffffffffffffffffffffffffff81168114610c2057600080fd5b919050565b60008060408385031215610c3857600080fd5b823567ffffffffffffffff80821115610c5057600080fd5b818501915085601f830112610c6457600080fd5b8135602082821115610c7857610c78610bcd565b8160051b6040517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0603f83011681018181108682111715610cbb57610cbb610bcd565b604052928352818301935084810182019289841115610cd957600080fd5b948201945b83861015610cfe57610cef86610bfc565b85529482019493820193610cde565b9997909101359750505050505050565b60008060408385031215610d2157600080fd5b610d2a83610bfc565b946020939093013593505050565b600060208284031215610d4a57600080fd5b610aec82610bfc565b60008060008060608587031215610d6957600080fd5b610d7285610bfc565b9350602085013567ffffffffffffffff80821115610d8f57600080fd5b818701915087601f830112610da357600080fd5b813581811115610db257600080fd5b886020828501011115610dc457600080fd5b95986020929092019750949560400135945092505050565b600060208083528351808285015260005b81811015610e0957858101830151858201604001528201610ded565b5060006040828601015260407fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f8301168501019250505092915050565b600081518084526020808501945080840160005b83811015610e8e57815173ffffffffffffffffffffffffffffffffffffffff1687529582019590820190600101610e5c565b509495945050505050565b602081526000610aec6020830184610e48565b8183823760009101908152919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b808201808211156102ed576102ed610ebc565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203610f5e57610f5e610ebc565b5060010190565b604081526000610f786040830185610e48565b9050826020830152939250505056fea2646970667358221220c6c43588f5cd71a7f72393f70d62685d6e02ddad34886e4a53423f933e6da76a64736f6c63430008130033",
  "deployedBytecode": "0x6080604052600436106100c05760003560e01c80635e187d3911610074578063b80886ac1161004e578063b80886ac1461022b578063d4d4bb051461024b578063f3fef3a31461026d57600080fd5b80635e187d39146101a05780637df73e27146101d0578063a4a4f3901461021657600080fd5b80633f1a3e68116100a55780633f1a3e681461015157806346f0975a146101735780635b8140631461018a57600080fd5b806316045059146100cc5780631f1f06751461011757600080fd5b366100c757005b600080fd5b3480156100d857600080fd5b506101046100e7366004610b92565b600460209081526000928352604080842090915290825290205481565b6040519081526020015b60405180910390f35b34801561012357600080fd5b50610104610132366004610bb4565b6003546000908152600460209081526040808320938352929052205490565b34801561015d57600080fd5b5061017161016c366004610c25565b61028d565b005b34801561017f57600080fd5b506001546101049081565b34801561019657600080fd5b5061010460035481565b3480156101ac57600080fd5b506101c06101bb366004610d0e565b6102ab565b604051901515815260200161010e565b3480156101dc57600080fd5b506101c06101eb366004610d38565b73ffffffffffffffffffffffffffffffffffffffff1660009081526002602052604090205460ff1690565b34801561022257600080fd5b50600154610104565b61023e610239366004610d53565b6102f3565b60405161010e9190610ddc565b34801561025757600080fd5b5061026061032d565b60405161010e9190610e99565b34801561027957600080fd5b50610171610288366004610d0e565b61039e565b6102956103ce565b61029d575050565b6102a782826105a0565b5050565b6003546000908152600460209081526040808320848452825280832073ffffffffffffffffffffffffffffffffffffffff8616845260010190915290205460ff165b92915050565b60606102fd6103ce565b6103165750604080516020810190915260008152610325565b6103228585858561086a565b90505b949350505050565b60606000800180548060200260200160405190810160405280929190818152602001828054801561039457602002820191906000526020600020905b815473ffffffffffffffffffffffffffffffffffffffff168152600190910190602001808311610369575b5050505050905090565b6103a66103ce565b6103ae575050565b6102a773ffffffffffffffffffffffffffffffffffffffff8316826109c6565b3360009081526002602052604081205460ff16610417576040517fa1b035c800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60008036604051610429929190610eac565b604080519182900390912060035460008181526004602090815284822084835281528482203383526001810190915293902054919350919060ff161561049b576040517f7c9a1cf900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b33600090815260018281016020526040822080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00168217905582546104e091610eeb565b600154909150808210156105395760408051838152602081018390523391869188917fa29ef665b15de72fb0f9499de0c5117604a84be72f9b4927e0229e8dd5b5609e910160405180910390a450905550600092915050565b3373ffffffffffffffffffffffffffffffffffffffff1684867fa39abd2703fe38eb3fceec05311fe5122b861aa739147236cebfc09aee7bfed18460405161058391815260200190565b60405180910390a461059483610a10565b60019550505050505090565b60008054905b8181101561063157600060020160008060000183815481106105ca576105ca610efe565b600091825260208083209091015473ffffffffffffffffffffffffffffffffffffffff168352820192909252604001902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0016905561062a81610f2d565b90506105a6565b505081518082111561066f576040517f5e231fff00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b816000036106a9576040517f2b47c13b00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6003600081546106b890610f2d565b9091555082516106cf906000906020860190610af3565b50600182905560005b8181101561082b5760008482815181106106f4576106f4610efe565b60209081029190910181015173ffffffffffffffffffffffffffffffffffffffff81166000908152600290925260409091205490915060ff1615610781576040517fe021c4f200000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff821660048201526024015b60405180910390fd5b73ffffffffffffffffffffffffffffffffffffffff81166107ce576040517f5e231fff00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b73ffffffffffffffffffffffffffffffffffffffff16600090815260026020526040902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0016600117905561082481610f2d565b90506106d8565b507fbc9753cf3d526725c425068c2040206cc37ba734f24a64b8b4f7dea6aaac52ff838360405161085d929190610f65565b60405180910390a1505050565b606061088b8573ffffffffffffffffffffffffffffffffffffffff16610aa3565b6108d9576040517fec01648400000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff86166004820152602401610778565b47821115610913576040517ff4d678b800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6000808673ffffffffffffffffffffffffffffffffffffffff1684878760405161093e929190610eac565b60006040518083038185875af1925050503d806000811461097b576040519150601f19603f3d011682016040523d82523d6000602084013e610980565b606091505b5091509150816109bc576040517facfdb44400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b9695505050505050565b600080600080600085875af1905080610a0b576040517ff4b3b1bc00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b505050565b60008082558054905b81811015610a0b57826001016000806000018381548110610a3c57610a3c610efe565b600091825260208083209091015473ffffffffffffffffffffffffffffffffffffffff168352820192909252604001902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00169055610a9c81610f2d565b9050610a19565b600073ffffffffffffffffffffffffffffffffffffffff82163f8015801590610aec57507fc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a4708114155b9392505050565b828054828255906000526020600020908101928215610b6d579160200282015b82811115610b6d57825182547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff909116178255602090920191600190910190610b13565b50610b79929150610b7d565b5090565b5b80821115610b795760008155600101610b7e565b60008060408385031215610ba557600080fd5b50508035926020909101359150565b600060208284031215610bc657600080fd5b5035919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b803573ffffffffffffffffffffffffffffffffffffffff81168114610c2057600080fd5b919050565b60008060408385031215610c3857600080fd5b823567ffffffffffffffff80821115610c5057600080fd5b818501915085601f830112610c6457600080fd5b8135602082821115610c7857610c78610bcd565b8160051b6040517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0603f83011681018181108682111715610cbb57610cbb610bcd565b604052928352818301935084810182019289841115610cd957600080fd5b948201945b83861015610cfe57610cef86610bfc565b85529482019493820193610cde565b9997909101359750505050505050565b60008060408385031215610d2157600080fd5b610d2a83610bfc565b946020939093013593505050565b600060208284031215610d4a57600080fd5b610aec82610bfc565b60008060008060608587031215610d6957600080fd5b610d7285610bfc565b9350602085013567ffffffffffffffff80821115610d8f57600080fd5b818701915087601f830112610da357600080fd5b813581811115610db257600080fd5b886020828501011115610dc457600080fd5b95986020929092019750949560400135945092505050565b600060208083528351808285015260005b81811015610e0957858101830151858201604001528201610ded565b5060006040828601015260407fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f8301168501019250505092915050565b600081518084526020808501945080840160005b83811015610e8e57815173ffffffffffffffffffffffffffffffffffffffff1687529582019590820190600101610e5c565b509495945050505050565b602081526000610aec6020830184610e48565b8183823760009101908152919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b808201808211156102ed576102ed610ebc565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203610f5e57610f5e610ebc565b5060010190565b604081526000610f786040830185610e48565b9050826020830152939250505056fea2646970667358221220c6c43588f5cd71a7f72393f70d62685d6e02ddad34886e4a53423f933e6da76a64736f6c63430008130033",
  "linkReferences": {},
  "deployedLinkReferences": {}
}
