{
  "_format": "hh-sol-artifact-1",
  "contractName": "AggregatorProxy",
  "sourceName": "contracts/v0.6/AggregatorProxy.sol",
  "abi": [
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "_aggregator",
          "type": "address"
        }
      ],
      "stateMutability": "nonpayable",
      "type": "constructor"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": true,
          "internalType": "int256",
          "name": "current",
          "type": "int256"
        },
        {
          "indexed": true,
          "internalType": "uint256",
          "name": "roundId",
          "type": "uint256"
        },
        {
          "indexed": false,
          "internalType": "uint256",
          "name": "updatedAt",
          "type": "uint256"
        }
      ],
      "name": "AnswerUpdated",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": true,
          "internalType": "uint256",
          "name": "roundId",
          "type": "uint256"
        },
        {
          "indexed": true,
          "internalType": "address",
          "name": "startedBy",
          "type": "address"
        },
        {
          "indexed": false,
          "internalType": "uint256",
          "name": "startedAt",
          "type": "uint256"
        }
      ],
      "name": "NewRound",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": true,
          "internalType": "address",
          "name": "from",
          "type": "address"
        },
        {
          "indexed": true,
          "internalType": "address",
          "name": "to",
          "type": "address"
        }
      ],
      "name": "OwnershipTransferRequested",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": true,
          "internalType": "address",
          "name": "from",
          "type": "address"
        },
        {
          "indexed": true,
          "internalType": "address",
          "name": "to",
          "type": "address"
        }
      ],
      "name": "OwnershipTransferred",
      "type": "event"
    },
    {
      "inputs": [],
      "name": "acceptOwnership",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "aggregator",
      "outputs": [
        {
          "internalType": "address",
          "name": "",
          "type": "address"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "_aggregator",
          "type": "address"
        }
      ],
      "name": "confirmAggregator",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "decimals",
      "outputs": [
        {
          "internalType": "uint8",
          "name": "",
          "type": "uint8"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "description",
      "outputs": [
        {
          "internalType": "string",
          "name": "",
          "type": "string"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "uint256",
          "name": "_roundId",
          "type": "uint256"
        }
      ],
      "name": "getAnswer",
      "outputs": [
        {
          "internalType": "int256",
          "name": "answer",
          "type": "int256"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "uint80",
          "name": "_roundId",
          "type": "uint80"
        }
      ],
      "name": "getRoundData",
      "outputs": [
        {
          "internalType": "uint80",
          "name": "roundId",
          "type": "uint80"
        },
        {
          "internalType": "int256",
          "name": "answer",
          "type": "int256"
        },
        {
          "internalType": "uint256",
          "name": "startedAt",
          "type": "uint256"
        },
        {
          "internalType": "uint256",
          "name": "updatedAt",
          "type": "uint256"
        },
        {
          "internalType": "uint80",
          "name": "answeredInRound",
          "type": "uint80"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "uint256",
          "name": "_roundId",
          "type": "uint256"
        }
      ],
      "name": "getTimestamp",
      "outputs": [
        {
          "internalType": "uint256",
          "name": "updatedAt",
          "type": "uint256"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "latestAnswer",
      "outputs": [
        {
          "internalType": "int256",
          "name": "answer",
          "type": "int256"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "latestRound",
      "outputs": [
        {
          "internalType": "uint256",
          "name": "roundId",
          "type": "uint256"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "latestRoundData",
      "outputs": [
        {
          "internalType": "uint80",
          "name": "roundId",
          "type": "uint80"
        },
        {
          "internalType": "int256",
          "name": "answer",
          "type": "int256"
        },
        {
          "internalType": "uint256",
          "name": "startedAt",
          "type": "uint256"
        },
        {
          "internalType": "uint256",
          "name": "updatedAt",
          "type": "uint256"
        },
        {
          "internalType": "uint80",
          "name": "answeredInRound",
          "type": "uint80"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "latestTimestamp",
      "outputs": [
        {
          "internalType": "uint256",
          "name": "updatedAt",
          "type": "uint256"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "owner",
      "outputs": [
        {
          "internalType": "address",
          "name": "",
          "type": "address"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "uint16",
          "name": "",
          "type": "uint16"
        }
      ],
      "name": "phaseAggregators",
      "outputs": [
        {
          "internalType": "contract AggregatorV2V3Interface",
          "name": "",
          "type": "address"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "phaseId",
      "outputs": [
        {
          "internalType": "uint16",
          "name": "",
          "type": "uint16"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "_aggregator",
          "type": "address"
        }
      ],
      "name": "proposeAggregator",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "proposedAggregator",
      "outputs": [
        {
          "internalType": "contract AggregatorV2V3Interface",
          "name": "",
          "type": "address"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "uint80",
          "name": "_roundId",
          "type": "uint80"
        }
      ],
      "name": "proposedGetRoundData",
      "outputs": [
        {
          "internalType": "uint80",
          "name": "roundId",
          "type": "uint80"
        },
        {
          "internalType": "int256",
          "name": "answer",
          "type": "int256"
        },
        {
          "internalType": "uint256",
          "name": "startedAt",
          "type": "uint256"
        },
        {
          "internalType": "uint256",
          "name": "updatedAt",
          "type": "uint256"
        },
        {
          "internalType": "uint80",
          "name": "answeredInRound",
          "type": "uint80"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "proposedLatestRoundData",
      "outputs": [
        {
          "internalType": "uint80",
          "name": "roundId",
          "type": "uint80"
        },
        {
          "internalType": "int256",
          "name": "answer",
          "type": "int256"
        },
        {
          "internalType": "uint256",
          "name": "startedAt",
          "type": "uint256"
        },
        {
          "internalType": "uint256",
          "name": "updatedAt",
          "type": "uint256"
        },
        {
          "internalType": "uint80",
          "name": "answeredInRound",
          "type": "uint80"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "_to",
          "type": "address"
        }
      ],
      "name": "transferOwnership",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "version",
      "outputs": [
        {
          "internalType": "uint256",
          "name": "",
          "type": "uint256"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    }
  ],
  "bytecode": "0x608060405234801561001057600080fd5b506040516116033803806116038339818101604052602081101561003357600080fd5b5051600080546001600160a01b03191633179055610059816001600160e01b0361005f16565b506100ce565b60028054604080518082018252600161ffff80851691909101168082526001600160a01b0395909516602091820181905261ffff19909316851762010000600160b01b0319166201000084021790935560009384526004909252912080546001600160a01b0319169091179055565b611526806100dd6000396000f3fe608060405234801561001057600080fd5b50600436106101775760003560e01c80638da5cb5b116100d8578063b633620c1161008c578063f2fde38b11610066578063f2fde38b146103da578063f8a2abd31461040d578063feaf968c1461044057610177565b8063b633620c14610394578063c1597304146103b1578063e8c4be30146103d257610177565b80639a6fc8f5116100bd5780639a6fc8f51461031b578063a928c09614610344578063b5ab58dc1461037757610177565b80638da5cb5b1461030b5780638f6b4d911461031357610177565b80636001ac531161012f5780637284e416116101145780637284e4161461027c57806379ba5097146102f95780638205bf6a1461030357610177565b80636001ac531461020c578063668a0f021461027457610177565b806350d25bcd1161016057806350d25bcd146101cb57806354fd4d50146101e557806358303b10146101ed57610177565b8063245a7bfc1461017c578063313ce567146101ad575b600080fd5b610184610448565b6040805173ffffffffffffffffffffffffffffffffffffffff9092168252519081900360200190f35b6101b561046a565b6040805160ff9092168252519081900360200190f35b6101d3610508565b60408051918252519081900360200190f35b6101d3610575565b6101f56105e2565b6040805161ffff9092168252519081900360200190f35b6102356004803603602081101561022257600080fd5b503569ffffffffffffffffffff166105ec565b6040805169ffffffffffffffffffff96871681526020810195909552848101939093526060840191909152909216608082015290519081900360a00190f35b6101d361074b565b610284610822565b6040805160208082528351818301528351919283929083019185019080838360005b838110156102be5781810151838201526020016102a6565b50505050905090810190601f1680156102eb5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b61030161099f565b005b6101d3610aa1565b610184610b0e565b610235610b2a565b6102356004803603602081101561033157600080fd5b503569ffffffffffffffffffff16610c73565b6103016004803603602081101561035a57600080fd5b503573ffffffffffffffffffffffffffffffffffffffff16610d98565b6101d36004803603602081101561038d57600080fd5b5035610edb565b6101d3600480360360208110156103aa57600080fd5b5035610fd5565b610184600480360360208110156103c757600080fd5b503561ffff16611098565b6101846110c0565b610301600480360360208110156103f057600080fd5b503573ffffffffffffffffffffffffffffffffffffffff166110dc565b6103016004803603602081101561042357600080fd5b503573ffffffffffffffffffffffffffffffffffffffff166111d8565b6102356112a5565b60025462010000900473ffffffffffffffffffffffffffffffffffffffff1690565b6000600260000160029054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663313ce5676040518163ffffffff1660e01b815260040160206040518083038186803b1580156104d757600080fd5b505afa1580156104eb573d6000803e3d6000fd5b505050506040513d602081101561050157600080fd5b5051905090565b6000600260000160029054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166350d25bcd6040518163ffffffff1660e01b815260040160206040518083038186803b1580156104d757600080fd5b6000600260000160029054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166354fd4d506040518163ffffffff1660e01b815260040160206040518083038186803b1580156104d757600080fd5b60025461ffff1690565b600354600090819081908190819073ffffffffffffffffffffffffffffffffffffffff1661067b57604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601e60248201527f4e6f2070726f706f7365642061676772656761746f722070726573656e740000604482015290519081900360640190fd5b600354604080517f9a6fc8f500000000000000000000000000000000000000000000000000000000815269ffffffffffffffffffff89166004820152905173ffffffffffffffffffffffffffffffffffffffff90921691639a6fc8f59160248082019260a092909190829003018186803b1580156106f857600080fd5b505afa15801561070c573d6000803e3d6000fd5b505050506040513d60a081101561072257600080fd5b508051602082015160408301516060840151608090940151929a91995097509195509350915050565b60006107556114d9565b5060408051808201825260025461ffff81168083526201000090910473ffffffffffffffffffffffffffffffffffffffff16602080840182905284517f668a0f02000000000000000000000000000000000000000000000000000000008152945193946108109463668a0f0292600480840193919291829003018186803b1580156107df57600080fd5b505afa1580156107f3573d6000803e3d6000fd5b505050506040513d602081101561080957600080fd5b50516113b4565b69ffffffffffffffffffff1691505090565b6060600260000160029054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16637284e4166040518163ffffffff1660e01b815260040160006040518083038186803b15801561088f57600080fd5b505afa1580156108a3573d6000803e3d6000fd5b505050506040513d6000823e601f3d9081017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016820160405260208110156108ea57600080fd5b810190808051604051939291908464010000000082111561090a57600080fd5b90830190602082018581111561091f57600080fd5b825164010000000081118282018810171561093957600080fd5b82525081516020918201929091019080838360005b8381101561096657818101518382015260200161094e565b50505050905090810190601f1680156109935780820380516001836020036101000a031916815260200191505b50604052505050905090565b60015473ffffffffffffffffffffffffffffffffffffffff163314610a2557604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601660248201527f4d7573742062652070726f706f736564206f776e657200000000000000000000604482015290519081900360640190fd5b60008054337fffffffffffffffffffffffff00000000000000000000000000000000000000008083168217845560018054909116905560405173ffffffffffffffffffffffffffffffffffffffff90921692909183917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a350565b6000600260000160029054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16638205bf6a6040518163ffffffff1660e01b815260040160206040518083038186803b1580156104d757600080fd5b60005473ffffffffffffffffffffffffffffffffffffffff1681565b600354600090819081908190819073ffffffffffffffffffffffffffffffffffffffff16610bb957604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601e60248201527f4e6f2070726f706f7365642061676772656761746f722070726573656e740000604482015290519081900360640190fd5b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663feaf968c6040518163ffffffff1660e01b815260040160a06040518083038186803b158015610c2157600080fd5b505afa158015610c35573d6000803e3d6000fd5b505050506040513d60a0811015610c4b57600080fd5b5080516020820151604083015160608401516080909401519299919850965091945092509050565b6000806000806000806000610c938869ffffffffffffffffffff166113d4565b61ffff82166000908152600460208190526040918290205482517f9a6fc8f500000000000000000000000000000000000000000000000000000000815267ffffffffffffffff851692810192909252915193955091935073ffffffffffffffffffffffffffffffffffffffff1691639a6fc8f59160248082019260a092909190829003018186803b158015610d2757600080fd5b505afa158015610d3b573d6000803e3d6000fd5b505050506040513d60a0811015610d5157600080fd5b508051602082015160408301516060840151608090940151929a5090985096509094509250610d848787878787876113dc565b939c929b5090995097509095509350505050565b60005473ffffffffffffffffffffffffffffffffffffffff163314610e1e57604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601660248201527f4f6e6c792063616c6c61626c65206279206f776e657200000000000000000000604482015290519081900360640190fd5b60035473ffffffffffffffffffffffffffffffffffffffff828116911614610ea757604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601b60248201527f496e76616c69642070726f706f7365642061676772656761746f720000000000604482015290519081900360640190fd5b600380547fffffffffffffffffffffffff0000000000000000000000000000000000000000169055610ed881611412565b50565b600069ffffffffffffffffffff821115610ef757506000610fd0565b600080610f03846113d4565b61ffff8216600090815260046020526040902054919350915073ffffffffffffffffffffffffffffffffffffffff1680610f435760009350505050610fd0565b8073ffffffffffffffffffffffffffffffffffffffff1663b5ab58dc836040518263ffffffff1660e01b8152600401808267ffffffffffffffff16815260200191505060206040518083038186803b158015610f9e57600080fd5b505afa158015610fb2573d6000803e3d6000fd5b505050506040513d6020811015610fc857600080fd5b505193505050505b919050565b600069ffffffffffffffffffff821115610ff157506000610fd0565b600080610ffd846113d4565b61ffff8216600090815260046020526040902054919350915073ffffffffffffffffffffffffffffffffffffffff168061103d5760009350505050610fd0565b8073ffffffffffffffffffffffffffffffffffffffff1663b633620c836040518263ffffffff1660e01b8152600401808267ffffffffffffffff16815260200191505060206040518083038186803b158015610f9e57600080fd5b60046020526000908152604090205473ffffffffffffffffffffffffffffffffffffffff1681565b60035473ffffffffffffffffffffffffffffffffffffffff1681565b60005473ffffffffffffffffffffffffffffffffffffffff16331461116257604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601660248201527f4f6e6c792063616c6c61626c65206279206f776e657200000000000000000000604482015290519081900360640190fd5b600180547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff83811691821790925560008054604051929316917fed8889f560326eb138920d842192f0eb3dd22b4f139c87a2c57538e05bae12789190a350565b60005473ffffffffffffffffffffffffffffffffffffffff16331461125e57604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601660248201527f4f6e6c792063616c6c61626c65206279206f776e657200000000000000000000604482015290519081900360640190fd5b600380547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff92909216919091179055565b60008060008060006112b56114d9565b5060408051808201825260025461ffff8116825262010000900473ffffffffffffffffffffffffffffffffffffffff166020820181905282517ffeaf968c00000000000000000000000000000000000000000000000000000000815292519192909163feaf968c9160048082019260a092909190829003018186803b15801561133d57600080fd5b505afa158015611351573d6000803e3d6000fd5b505050506040513d60a081101561136757600080fd5b5080516020820151604083015160608401516080909401518551939a5091985096509194509092506113a290879087908790879087906113dc565b95509550955095509550509091929394565b67ffffffffffffffff1660409190911b69ffff0000000000000000161790565b604081901c91565b60008060008060006113ee868c6113b4565b8a8a8a6113fb8a8c6113b4565b939f929e50909c509a509098509650505050505050565b60028054604080518082018252600161ffff808516919091011680825273ffffffffffffffffffffffffffffffffffffffff9590951660209182018190527fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000090931685177fffffffffffffffffffff0000000000000000000000000000000000000000ffff166201000084021790935560009384526004909252912080547fffffffffffffffffffffffff0000000000000000000000000000000000000000169091179055565b60408051808201909152600080825260208201529056fea2646970667358221220a734fb76ef5d395f52c67e047e15b2134f2910d3c51eee18afd8a0e7061a1d9d64736f6c63430006060033",
  "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106101775760003560e01c80638da5cb5b116100d8578063b633620c1161008c578063f2fde38b11610066578063f2fde38b146103da578063f8a2abd31461040d578063feaf968c1461044057610177565b8063b633620c14610394578063c1597304146103b1578063e8c4be30146103d257610177565b80639a6fc8f5116100bd5780639a6fc8f51461031b578063a928c09614610344578063b5ab58dc1461037757610177565b80638da5cb5b1461030b5780638f6b4d911461031357610177565b80636001ac531161012f5780637284e416116101145780637284e4161461027c57806379ba5097146102f95780638205bf6a1461030357610177565b80636001ac531461020c578063668a0f021461027457610177565b806350d25bcd1161016057806350d25bcd146101cb57806354fd4d50146101e557806358303b10146101ed57610177565b8063245a7bfc1461017c578063313ce567146101ad575b600080fd5b610184610448565b6040805173ffffffffffffffffffffffffffffffffffffffff9092168252519081900360200190f35b6101b561046a565b6040805160ff9092168252519081900360200190f35b6101d3610508565b60408051918252519081900360200190f35b6101d3610575565b6101f56105e2565b6040805161ffff9092168252519081900360200190f35b6102356004803603602081101561022257600080fd5b503569ffffffffffffffffffff166105ec565b6040805169ffffffffffffffffffff96871681526020810195909552848101939093526060840191909152909216608082015290519081900360a00190f35b6101d361074b565b610284610822565b6040805160208082528351818301528351919283929083019185019080838360005b838110156102be5781810151838201526020016102a6565b50505050905090810190601f1680156102eb5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b61030161099f565b005b6101d3610aa1565b610184610b0e565b610235610b2a565b6102356004803603602081101561033157600080fd5b503569ffffffffffffffffffff16610c73565b6103016004803603602081101561035a57600080fd5b503573ffffffffffffffffffffffffffffffffffffffff16610d98565b6101d36004803603602081101561038d57600080fd5b5035610edb565b6101d3600480360360208110156103aa57600080fd5b5035610fd5565b610184600480360360208110156103c757600080fd5b503561ffff16611098565b6101846110c0565b610301600480360360208110156103f057600080fd5b503573ffffffffffffffffffffffffffffffffffffffff166110dc565b6103016004803603602081101561042357600080fd5b503573ffffffffffffffffffffffffffffffffffffffff166111d8565b6102356112a5565b60025462010000900473ffffffffffffffffffffffffffffffffffffffff1690565b6000600260000160029054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663313ce5676040518163ffffffff1660e01b815260040160206040518083038186803b1580156104d757600080fd5b505afa1580156104eb573d6000803e3d6000fd5b505050506040513d602081101561050157600080fd5b5051905090565b6000600260000160029054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166350d25bcd6040518163ffffffff1660e01b815260040160206040518083038186803b1580156104d757600080fd5b6000600260000160029054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166354fd4d506040518163ffffffff1660e01b815260040160206040518083038186803b1580156104d757600080fd5b60025461ffff1690565b600354600090819081908190819073ffffffffffffffffffffffffffffffffffffffff1661067b57604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601e60248201527f4e6f2070726f706f7365642061676772656761746f722070726573656e740000604482015290519081900360640190fd5b600354604080517f9a6fc8f500000000000000000000000000000000000000000000000000000000815269ffffffffffffffffffff89166004820152905173ffffffffffffffffffffffffffffffffffffffff90921691639a6fc8f59160248082019260a092909190829003018186803b1580156106f857600080fd5b505afa15801561070c573d6000803e3d6000fd5b505050506040513d60a081101561072257600080fd5b508051602082015160408301516060840151608090940151929a91995097509195509350915050565b60006107556114d9565b5060408051808201825260025461ffff81168083526201000090910473ffffffffffffffffffffffffffffffffffffffff16602080840182905284517f668a0f02000000000000000000000000000000000000000000000000000000008152945193946108109463668a0f0292600480840193919291829003018186803b1580156107df57600080fd5b505afa1580156107f3573d6000803e3d6000fd5b505050506040513d602081101561080957600080fd5b50516113b4565b69ffffffffffffffffffff1691505090565b6060600260000160029054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16637284e4166040518163ffffffff1660e01b815260040160006040518083038186803b15801561088f57600080fd5b505afa1580156108a3573d6000803e3d6000fd5b505050506040513d6000823e601f3d9081017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016820160405260208110156108ea57600080fd5b810190808051604051939291908464010000000082111561090a57600080fd5b90830190602082018581111561091f57600080fd5b825164010000000081118282018810171561093957600080fd5b82525081516020918201929091019080838360005b8381101561096657818101518382015260200161094e565b50505050905090810190601f1680156109935780820380516001836020036101000a031916815260200191505b50604052505050905090565b60015473ffffffffffffffffffffffffffffffffffffffff163314610a2557604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601660248201527f4d7573742062652070726f706f736564206f776e657200000000000000000000604482015290519081900360640190fd5b60008054337fffffffffffffffffffffffff00000000000000000000000000000000000000008083168217845560018054909116905560405173ffffffffffffffffffffffffffffffffffffffff90921692909183917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a350565b6000600260000160029054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16638205bf6a6040518163ffffffff1660e01b815260040160206040518083038186803b1580156104d757600080fd5b60005473ffffffffffffffffffffffffffffffffffffffff1681565b600354600090819081908190819073ffffffffffffffffffffffffffffffffffffffff16610bb957604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601e60248201527f4e6f2070726f706f7365642061676772656761746f722070726573656e740000604482015290519081900360640190fd5b600360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663feaf968c6040518163ffffffff1660e01b815260040160a06040518083038186803b158015610c2157600080fd5b505afa158015610c35573d6000803e3d6000fd5b505050506040513d60a0811015610c4b57600080fd5b5080516020820151604083015160608401516080909401519299919850965091945092509050565b6000806000806000806000610c938869ffffffffffffffffffff166113d4565b61ffff82166000908152600460208190526040918290205482517f9a6fc8f500000000000000000000000000000000000000000000000000000000815267ffffffffffffffff851692810192909252915193955091935073ffffffffffffffffffffffffffffffffffffffff1691639a6fc8f59160248082019260a092909190829003018186803b158015610d2757600080fd5b505afa158015610d3b573d6000803e3d6000fd5b505050506040513d60a0811015610d5157600080fd5b508051602082015160408301516060840151608090940151929a5090985096509094509250610d848787878787876113dc565b939c929b5090995097509095509350505050565b60005473ffffffffffffffffffffffffffffffffffffffff163314610e1e57604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601660248201527f4f6e6c792063616c6c61626c65206279206f776e657200000000000000000000604482015290519081900360640190fd5b60035473ffffffffffffffffffffffffffffffffffffffff828116911614610ea757604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601b60248201527f496e76616c69642070726f706f7365642061676772656761746f720000000000604482015290519081900360640190fd5b600380547fffffffffffffffffffffffff0000000000000000000000000000000000000000169055610ed881611412565b50565b600069ffffffffffffffffffff821115610ef757506000610fd0565b600080610f03846113d4565b61ffff8216600090815260046020526040902054919350915073ffffffffffffffffffffffffffffffffffffffff1680610f435760009350505050610fd0565b8073ffffffffffffffffffffffffffffffffffffffff1663b5ab58dc836040518263ffffffff1660e01b8152600401808267ffffffffffffffff16815260200191505060206040518083038186803b158015610f9e57600080fd5b505afa158015610fb2573d6000803e3d6000fd5b505050506040513d6020811015610fc857600080fd5b505193505050505b919050565b600069ffffffffffffffffffff821115610ff157506000610fd0565b600080610ffd846113d4565b61ffff8216600090815260046020526040902054919350915073ffffffffffffffffffffffffffffffffffffffff168061103d5760009350505050610fd0565b8073ffffffffffffffffffffffffffffffffffffffff1663b633620c836040518263ffffffff1660e01b8152600401808267ffffffffffffffff16815260200191505060206040518083038186803b158015610f9e57600080fd5b60046020526000908152604090205473ffffffffffffffffffffffffffffffffffffffff1681565b60035473ffffffffffffffffffffffffffffffffffffffff1681565b60005473ffffffffffffffffffffffffffffffffffffffff16331461116257604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601660248201527f4f6e6c792063616c6c61626c65206279206f776e657200000000000000000000604482015290519081900360640190fd5b600180547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff83811691821790925560008054604051929316917fed8889f560326eb138920d842192f0eb3dd22b4f139c87a2c57538e05bae12789190a350565b60005473ffffffffffffffffffffffffffffffffffffffff16331461125e57604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601660248201527f4f6e6c792063616c6c61626c65206279206f776e657200000000000000000000604482015290519081900360640190fd5b600380547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff92909216919091179055565b60008060008060006112b56114d9565b5060408051808201825260025461ffff8116825262010000900473ffffffffffffffffffffffffffffffffffffffff166020820181905282517ffeaf968c00000000000000000000000000000000000000000000000000000000815292519192909163feaf968c9160048082019260a092909190829003018186803b15801561133d57600080fd5b505afa158015611351573d6000803e3d6000fd5b505050506040513d60a081101561136757600080fd5b5080516020820151604083015160608401516080909401518551939a5091985096509194509092506113a290879087908790879087906113dc565b95509550955095509550509091929394565b67ffffffffffffffff1660409190911b69ffff0000000000000000161790565b604081901c91565b60008060008060006113ee868c6113b4565b8a8a8a6113fb8a8c6113b4565b939f929e50909c509a509098509650505050505050565b60028054604080518082018252600161ffff808516919091011680825273ffffffffffffffffffffffffffffffffffffffff9590951660209182018190527fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000090931685177fffffffffffffffffffff0000000000000000000000000000000000000000ffff166201000084021790935560009384526004909252912080547fffffffffffffffffffffffff0000000000000000000000000000000000000000169091179055565b60408051808201909152600080825260208201529056fea2646970667358221220a734fb76ef5d395f52c67e047e15b2134f2910d3c51eee18afd8a0e7061a1d9d64736f6c63430006060033",
  "linkReferences": {},
  "deployedLinkReferences": {}
}
