{
  "_format": "hh-sol-artifact-1",
  "contractName": "EchidnaFuzzResourceMetering",
  "sourceName": "contracts/echidna/FuzzResourceMetering.sol",
  "abi": [
    {
      "inputs": [],
      "stateMutability": "nonpayable",
      "type": "constructor"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": false,
          "internalType": "uint8",
          "name": "version",
          "type": "uint8"
        }
      ],
      "name": "Initialized",
      "type": "event"
    },
    {
      "inputs": [],
      "name": "echidna_high_usage_raise_baseFee",
      "outputs": [
        {
          "internalType": "bool",
          "name": "",
          "type": "bool"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "echidna_low_usage_lower_baseFee",
      "outputs": [
        {
          "internalType": "bool",
          "name": "",
          "type": "bool"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "echidna_never_above_max_gas_limit",
      "outputs": [
        {
          "internalType": "bool",
          "name": "",
          "type": "bool"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "echidna_never_below_min_baseFee",
      "outputs": [
        {
          "internalType": "bool",
          "name": "",
          "type": "bool"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "echidna_never_exceed_max_decrease",
      "outputs": [
        {
          "internalType": "bool",
          "name": "",
          "type": "bool"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "echidna_never_exceed_max_increase",
      "outputs": [
        {
          "internalType": "bool",
          "name": "",
          "type": "bool"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "echidna_underflow",
      "outputs": [
        {
          "internalType": "bool",
          "name": "",
          "type": "bool"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "params",
      "outputs": [
        {
          "internalType": "uint128",
          "name": "prevBaseFee",
          "type": "uint128"
        },
        {
          "internalType": "uint64",
          "name": "prevBoughtGas",
          "type": "uint64"
        },
        {
          "internalType": "uint64",
          "name": "prevBlockNum",
          "type": "uint64"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "resourceConfig",
      "outputs": [
        {
          "components": [
            {
              "internalType": "uint32",
              "name": "maxResourceLimit",
              "type": "uint32"
            },
            {
              "internalType": "uint8",
              "name": "elasticityMultiplier",
              "type": "uint8"
            },
            {
              "internalType": "uint8",
              "name": "baseFeeMaxChangeDenominator",
              "type": "uint8"
            },
            {
              "internalType": "uint32",
              "name": "minimumBaseFee",
              "type": "uint32"
            },
            {
              "internalType": "uint32",
              "name": "systemTxMaxGas",
              "type": "uint32"
            },
            {
              "internalType": "uint128",
              "name": "maximumBaseFee",
              "type": "uint128"
            }
          ],
          "internalType": "struct ResourceMetering.ResourceConfig",
          "name": "",
          "type": "tuple"
        }
      ],
      "stateMutability": "pure",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "uint256",
          "name": "_gasToBurn",
          "type": "uint256"
        },
        {
          "internalType": "bool",
          "name": "_raiseBaseFee",
          "type": "bool"
        }
      ],
      "name": "testBurn",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    }
  ],
  "bytecode": "0x60806040523480156200001157600080fd5b506200001c62000022565b62000206565b600054610100900460ff1615808015620000435750600054600160ff909116105b8062000073575062000060306200015460201b620007ef1760201c565b15801562000073575060005460ff166001145b620000dc5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b60648201526084015b60405180910390fd5b6000805460ff19166001179055801562000100576000805461ff0019166101001790555b6200010a62000163565b801562000151576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b50565b6001600160a01b03163b151590565b600054610100900460ff16620001d05760405162461bcd60e51b815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201526a6e697469616c697a696e6760a81b6064820152608401620000d3565b60408051606081018252633b9aca0080825260006020830152436001600160401b031691909201819052600160c01b0217600155565b611a3e80620002166000396000f3fe608060405234801561001057600080fd5b50600436106100be5760003560e01c8063ae53764511610076578063cff0ab961161005b578063cff0ab96146101bb578063dccdd96b1461024f578063e9f5a1311461026457600080fd5b8063ae5376451461012f578063cc731b021461014357600080fd5b806372b61247116100a757806372b61247146100ff5780637b9727231461011057806397937ac51461011c57600080fd5b80633fcf1c9d146100c35780634367392f146100ea575b600080fd5b6032546601000000000000900460ff16155b60405190151581526020015b60405180910390f35b60325465010000000000900460ff16156100d5565b603254610100900460ff16156100d5565b60325460ff16156100d5565b6032546301000000900460ff16156100d5565b603254640100000000900460ff16156100d5565b61014b610276565b6040516100e19190600060c08201905063ffffffff80845116835260ff602085015116602084015260ff6040850151166040840152806060850151166060840152806080850151166080840152506fffffffffffffffffffffffffffffffff60a08401511660a083015292915050565b600154610216906fffffffffffffffffffffffffffffffff81169067ffffffffffffffff7001000000000000000000000000000000008204811691780100000000000000000000000000000000000000000000000090041683565b604080516fffffffffffffffffffffffffffffffff909416845267ffffffffffffffff92831660208501529116908201526060016100e1565b61026261025d3660046115f5565b6102b5565b005b60325462010000900460ff16156100d5565b6040805160c081018252600080825260208201819052918101829052606081018290526080810182905260a08101919091526102b061080b565b905090565b6001546fffffffffffffffffffffffffffffffff81169067ffffffffffffffff700100000000000000000000000000000000820481169178010000000000000000000000000000000000000000000000009004166000610313610276565b90506000816020015160ff16826000015163ffffffff166103349190611688565b9050816060015163ffffffff1685101561037757603280547fffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ffffff1663010000001790555b815163ffffffff168411156103b257603280547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001660011790555b600086156103d6576103cf8883856000015163ffffffff166108c6565b90506103e5565b6103e2886000846108c6565b90505b6103ee8161091b565b6000836040015160ff16876104039190611688565b9050828611801561044757506001546104439086907801000000000000000000000000000000000000000000000000900467ffffffffffffffff1661169c565b6001145b1561051b57603254610100900460ff168061047657506001546fffffffffffffffffffffffffffffffff168710155b60328054911515610100027fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff9092169190911790819055640100000000900460ff16806104e2575060015481906104e09089906fffffffffffffffffffffffffffffffff1661169c565b105b60328054911515640100000000027fffffffffffffffffffffffffffffffffffffffffffffffffffffff00ffffffff9092169190911790555b8286108061055b5750600180546105599087907801000000000000000000000000000000000000000000000000900467ffffffffffffffff1661169c565b115b156107e45760325462010000900460ff168061058a57506001546fffffffffffffffffffffffffffffffff1687105b6032805491151562010000027fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ffff9092169190911790556001546105f590869067ffffffffffffffff78010000000000000000000000000000000000000000000000009091041661169c565b6001036106735760325465010000000000900460ff168061063557506001548190610632906fffffffffffffffffffffffffffffffff168961169c565b11155b6032805491151565010000000000027fffffffffffffffffffffffffffffffffffffffffffffffffffff00ffffffffff9092169190911790556107e4565b600180546106a89087907801000000000000000000000000000000000000000000000000900467ffffffffffffffff1661169c565b11156107e4576040840151600154610719916106f2918a9160ff16907801000000000000000000000000000000000000000000000000900467ffffffffffffffff16899003610930565b856060015163ffffffff168660a001516fffffffffffffffffffffffffffffffff1661098d565b60325490880391506601000000000000900460ff168061073857508681115b603280549115156601000000000000027fffffffffffffffffffffffffffffffffffffffffffffffffff00ffffffffffff909216919091179081905565010000000000900460ff16806107aa575060015481906107a7906fffffffffffffffffffffffffffffffff168961169c565b11155b6032805491151565010000000000027fffffffffffffffffffffffffffffffffffffffffffffffffffff00ffffffffff9092169190911790555b505050505050505050565b73ffffffffffffffffffffffffffffffffffffffff163b151590565b6040805160c081018252600080825260208201819052918101829052606081018290526080810182905260a08101829052906108c06040805160c081018252600080825260208201819052918101829052606081018290526080810182905260a0810191909152506040805160c0810182526301312d008152600a6020820152600891810191909152633b9aca006060820152620f424060808201526fffffffffffffffffffffffffffffffff60a082015290565b92915050565b60006108d38484846109a2565b90506109146040518060400160405280600c81526020017f426f756e6420526573756c74000000000000000000000000000000000000000081525082610bdf565b9392505050565b8060005a905061092b8282610cdf565b505050565b6000670de0b6b3a764000061097161094885836116b3565b61095a90670de0b6b3a764000061171b565b61096c85670de0b6b3a764000061178f565b61100c565b61097b908661178f565b61098591906116b3565b949350505050565b600061098561099c858561103d565b83611054565b600081831115610a39576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603e60248201527f5374645574696c7320626f756e642875696e743235362c75696e743235362c7560448201527f696e74323536293a204d6178206973206c657373207468616e206d696e2e000060648201526084015b60405180910390fd5b828410158015610a495750818411155b15610a55575082610914565b6000610a61848461169c565b610a6c90600161184b565b905060038511158015610a7e57508481115b15610a9557610a8d858561184b565b915050610914565b610ac060037fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff61169c565b8510158015610af75750610af4857fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff61169c565b81115b15610b3057610b26857fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff61169c565b610a8d908461169c565b82851115610b86576000610b44848761169c565b90506000610b528383611863565b905080600003610b6757849350505050610914565b6001610b73828861184b565b610b7d919061169c565b93505050610bd7565b83851015610bd7576000610b9a868661169c565b90506000610ba88383611863565b905080600003610bbd57859350505050610914565b610bc7818661169c565b610bd290600161184b565b935050505b509392505050565b60006a636f6e736f6c652e6c6f6773ffffffffffffffffffffffffffffffffffffffff168383604051602401610c169291906118a7565b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181529181526020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167fb60e72cc0000000000000000000000000000000000000000000000000000000017905251610c979190611900565b600060405180830381855afa9150503d8060008114610cd2576040519150601f19603f3d011682016040523d82523d6000602084013e610cd7565b606091505b505050505050565b600154600090610d15907801000000000000000000000000000000000000000000000000900467ffffffffffffffff164361169c565b90506000610d2161080b565b90506000816020015160ff16826000015163ffffffff16610d4291906116b3565b90508215610e7957600154600090610d79908390700100000000000000000000000000000000900467ffffffffffffffff1661171b565b90506000836040015160ff1683610d90919061178f565b600154610db09084906fffffffffffffffffffffffffffffffff1661178f565b610dba91906116b3565b600154909150600090610e0b90610de49084906fffffffffffffffffffffffffffffffff1661191c565b866060015163ffffffff168760a001516fffffffffffffffffffffffffffffffff1661098d565b90506001861115610e3a57610e37610de482876040015160ff1660018a610e32919061169c565b610930565b90505b6fffffffffffffffffffffffffffffffff16780100000000000000000000000000000000000000000000000067ffffffffffffffff4316021760015550505b60018054869190601090610eac908490700100000000000000000000000000000000900467ffffffffffffffff16611990565b92506101000a81548167ffffffffffffffff021916908367ffffffffffffffff160217905550816000015163ffffffff16600160000160109054906101000a900467ffffffffffffffff1667ffffffffffffffff161315610f8f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603e60248201527f5265736f757263654d65746572696e673a2063616e6e6f7420627579206d6f7260448201527f6520676173207468616e20617661696c61626c6520676173206c696d697400006064820152608401610a30565b600154600090610fbb906fffffffffffffffffffffffffffffffff1667ffffffffffffffff88166119bc565b90506000610fcd48633b9aca00611063565b610fd79083611688565b905060005a610fe6908861169c565b90508082111561100257611002610ffd828461169c565b611073565b5050505050505050565b6000610914670de0b6b3a7640000836110248661109c565b61102e919061178f565b61103891906116b3565b6112e0565b60008183121561104d5781610914565b5090919050565b600081831261104d5781610914565b60008183101561104d5781610914565b6000805a90505b825a611086908361169c565b101561092b57611095826119f9565b915061107a565b6000808213611107576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600960248201527f554e444546494e454400000000000000000000000000000000000000000000006044820152606401610a30565b600060606111148461151f565b03609f8181039490941b90931c6c465772b2bbbb5f824b15207a3081018102606090811d6d0388eaa27412d5aca026815d636e018202811d6d0df99ac502031bf953eff472fdcc018202811d6d13cdffb29d51d99322bdff5f2211018202811d6d0a0f742023def783a307a986912e018202811d6d01920d8043ca89b5239253284e42018202811d6c0b7a86d7375468fac667a0a527016c29508e458543d8aa4df2abee7883018302821d6d0139601a2efabe717e604cbb4894018302821d6d02247f7a7b6594320649aa03aba1018302821d7fffffffffffffffffffffffffffffffffffffff73c0c716a594e00d54e3c4cbc9018302821d7ffffffffffffffffffffffffffffffffffffffdc7b88c420e53a9890533129f6f01830290911d7fffffffffffffffffffffffffffffffffffffff465fda27eb4d63ded474e5f832019091027ffffffffffffffff5f6af8f7b3396644f18e157960000000000000000000000000105711340daa0d5f769dba1915cef59f0815a5506027d0267a36c0c95b3975ab3ee5b203a7614a3f75373f047d803ae7b6687f2b393909302929092017d57115e47018c7177eebf7cd370a3356a1b7863008a5ae8028c72b88642840160ae1d92915050565b60007ffffffffffffffffffffffffffffffffffffffffffffffffdb731c958f34d94c1821361131157506000919050565b680755bf798b4a1bf1e58212611383576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600c60248201527f4558505f4f564552464c4f5700000000000000000000000000000000000000006044820152606401610a30565b6503782dace9d9604e83901b059150600060606bb17217f7d1cf79abc9e3b39884821b056b80000000000000000000000001901d6bb17217f7d1cf79abc9e3b39881029093037fffffffffffffffffffffffffffffffffffffffdbf3ccf1604d263450f02a550481018102606090811d6d0277594991cfc85f6e2461837cd9018202811d7fffffffffffffffffffffffffffffffffffffe5adedaa1cb095af9e4da10e363c018202811d6db1bbb201f443cf962f1a1d3db4a5018202811d7ffffffffffffffffffffffffffffffffffffd38dc772608b0ae56cce01296c0eb018202811d6e05180bb14799ab47a8a8cb2a527d57016d02d16720577bd19bf614176fe9ea6c10fe68e7fd37d0007b713f765084018402831d9081019084017ffffffffffffffffffffffffffffffffffffffe2c69812cf03b0763fd454a8f7e010290911d6e0587f503bb6ea29d25fcb7401964500190910279d835ebba824c98fb31b83b2ca45c000000000000000000000000010574029d9dc38563c32e5c2f6dc192ee70ef65f9978af30260c3939093039290921c92915050565b600080821161158a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600960248201527f554e444546494e454400000000000000000000000000000000000000000000006044820152606401610a30565b5060016fffffffffffffffffffffffffffffffff821160071b82811c67ffffffffffffffff1060061b1782811c63ffffffff1060051b1782811c61ffff1060041b1782811c60ff10600390811b90911783811c600f1060021b1783811c909110821b1791821c111790565b6000806040838503121561160857600080fd5b823591506020830135801515811461161f57600080fd5b809150509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000826116975761169761162a565b500490565b6000828210156116ae576116ae611659565b500390565b6000826116c2576116c261162a565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff83147f80000000000000000000000000000000000000000000000000000000000000008314161561171657611716611659565b500590565b6000808312837f80000000000000000000000000000000000000000000000000000000000000000183128115161561175557611755611659565b837f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff01831381161561178957611789611659565b50500390565b60007f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6000841360008413858304851182821616156117d0576117d0611659565b7f8000000000000000000000000000000000000000000000000000000000000000600087128682058812818416161561180b5761180b611659565b6000871292508782058712848416161561182757611827611659565b8785058712818416161561183d5761183d611659565b505050929093029392505050565b6000821982111561185e5761185e611659565b500190565b6000826118725761187261162a565b500690565b60005b8381101561189257818101518382015260200161187a565b838111156118a1576000848401525b50505050565b60408152600083518060408401526118c6816060850160208801611877565b602083019390935250601f919091017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01601606001919050565b60008251611912818460208701611877565b9190910192915050565b6000808212827f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0384138115161561195657611956611659565b827f800000000000000000000000000000000000000000000000000000000000000003841281161561198a5761198a611659565b50500190565b600067ffffffffffffffff8083168185168083038211156119b3576119b3611659565b01949350505050565b6000817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff04831182151516156119f4576119f4611659565b500290565b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203611a2a57611a2a611659565b506001019056fea164736f6c634300080f000a",
  "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100be5760003560e01c8063ae53764511610076578063cff0ab961161005b578063cff0ab96146101bb578063dccdd96b1461024f578063e9f5a1311461026457600080fd5b8063ae5376451461012f578063cc731b021461014357600080fd5b806372b61247116100a757806372b61247146100ff5780637b9727231461011057806397937ac51461011c57600080fd5b80633fcf1c9d146100c35780634367392f146100ea575b600080fd5b6032546601000000000000900460ff16155b60405190151581526020015b60405180910390f35b60325465010000000000900460ff16156100d5565b603254610100900460ff16156100d5565b60325460ff16156100d5565b6032546301000000900460ff16156100d5565b603254640100000000900460ff16156100d5565b61014b610276565b6040516100e19190600060c08201905063ffffffff80845116835260ff602085015116602084015260ff6040850151166040840152806060850151166060840152806080850151166080840152506fffffffffffffffffffffffffffffffff60a08401511660a083015292915050565b600154610216906fffffffffffffffffffffffffffffffff81169067ffffffffffffffff7001000000000000000000000000000000008204811691780100000000000000000000000000000000000000000000000090041683565b604080516fffffffffffffffffffffffffffffffff909416845267ffffffffffffffff92831660208501529116908201526060016100e1565b61026261025d3660046115f5565b6102b5565b005b60325462010000900460ff16156100d5565b6040805160c081018252600080825260208201819052918101829052606081018290526080810182905260a08101919091526102b061080b565b905090565b6001546fffffffffffffffffffffffffffffffff81169067ffffffffffffffff700100000000000000000000000000000000820481169178010000000000000000000000000000000000000000000000009004166000610313610276565b90506000816020015160ff16826000015163ffffffff166103349190611688565b9050816060015163ffffffff1685101561037757603280547fffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ffffff1663010000001790555b815163ffffffff168411156103b257603280547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001660011790555b600086156103d6576103cf8883856000015163ffffffff166108c6565b90506103e5565b6103e2886000846108c6565b90505b6103ee8161091b565b6000836040015160ff16876104039190611688565b9050828611801561044757506001546104439086907801000000000000000000000000000000000000000000000000900467ffffffffffffffff1661169c565b6001145b1561051b57603254610100900460ff168061047657506001546fffffffffffffffffffffffffffffffff168710155b60328054911515610100027fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff9092169190911790819055640100000000900460ff16806104e2575060015481906104e09089906fffffffffffffffffffffffffffffffff1661169c565b105b60328054911515640100000000027fffffffffffffffffffffffffffffffffffffffffffffffffffffff00ffffffff9092169190911790555b8286108061055b5750600180546105599087907801000000000000000000000000000000000000000000000000900467ffffffffffffffff1661169c565b115b156107e45760325462010000900460ff168061058a57506001546fffffffffffffffffffffffffffffffff1687105b6032805491151562010000027fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ffff9092169190911790556001546105f590869067ffffffffffffffff78010000000000000000000000000000000000000000000000009091041661169c565b6001036106735760325465010000000000900460ff168061063557506001548190610632906fffffffffffffffffffffffffffffffff168961169c565b11155b6032805491151565010000000000027fffffffffffffffffffffffffffffffffffffffffffffffffffff00ffffffffff9092169190911790556107e4565b600180546106a89087907801000000000000000000000000000000000000000000000000900467ffffffffffffffff1661169c565b11156107e4576040840151600154610719916106f2918a9160ff16907801000000000000000000000000000000000000000000000000900467ffffffffffffffff16899003610930565b856060015163ffffffff168660a001516fffffffffffffffffffffffffffffffff1661098d565b60325490880391506601000000000000900460ff168061073857508681115b603280549115156601000000000000027fffffffffffffffffffffffffffffffffffffffffffffffffff00ffffffffffff909216919091179081905565010000000000900460ff16806107aa575060015481906107a7906fffffffffffffffffffffffffffffffff168961169c565b11155b6032805491151565010000000000027fffffffffffffffffffffffffffffffffffffffffffffffffffff00ffffffffff9092169190911790555b505050505050505050565b73ffffffffffffffffffffffffffffffffffffffff163b151590565b6040805160c081018252600080825260208201819052918101829052606081018290526080810182905260a08101829052906108c06040805160c081018252600080825260208201819052918101829052606081018290526080810182905260a0810191909152506040805160c0810182526301312d008152600a6020820152600891810191909152633b9aca006060820152620f424060808201526fffffffffffffffffffffffffffffffff60a082015290565b92915050565b60006108d38484846109a2565b90506109146040518060400160405280600c81526020017f426f756e6420526573756c74000000000000000000000000000000000000000081525082610bdf565b9392505050565b8060005a905061092b8282610cdf565b505050565b6000670de0b6b3a764000061097161094885836116b3565b61095a90670de0b6b3a764000061171b565b61096c85670de0b6b3a764000061178f565b61100c565b61097b908661178f565b61098591906116b3565b949350505050565b600061098561099c858561103d565b83611054565b600081831115610a39576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603e60248201527f5374645574696c7320626f756e642875696e743235362c75696e743235362c7560448201527f696e74323536293a204d6178206973206c657373207468616e206d696e2e000060648201526084015b60405180910390fd5b828410158015610a495750818411155b15610a55575082610914565b6000610a61848461169c565b610a6c90600161184b565b905060038511158015610a7e57508481115b15610a9557610a8d858561184b565b915050610914565b610ac060037fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff61169c565b8510158015610af75750610af4857fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff61169c565b81115b15610b3057610b26857fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff61169c565b610a8d908461169c565b82851115610b86576000610b44848761169c565b90506000610b528383611863565b905080600003610b6757849350505050610914565b6001610b73828861184b565b610b7d919061169c565b93505050610bd7565b83851015610bd7576000610b9a868661169c565b90506000610ba88383611863565b905080600003610bbd57859350505050610914565b610bc7818661169c565b610bd290600161184b565b935050505b509392505050565b60006a636f6e736f6c652e6c6f6773ffffffffffffffffffffffffffffffffffffffff168383604051602401610c169291906118a7565b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181529181526020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167fb60e72cc0000000000000000000000000000000000000000000000000000000017905251610c979190611900565b600060405180830381855afa9150503d8060008114610cd2576040519150601f19603f3d011682016040523d82523d6000602084013e610cd7565b606091505b505050505050565b600154600090610d15907801000000000000000000000000000000000000000000000000900467ffffffffffffffff164361169c565b90506000610d2161080b565b90506000816020015160ff16826000015163ffffffff16610d4291906116b3565b90508215610e7957600154600090610d79908390700100000000000000000000000000000000900467ffffffffffffffff1661171b565b90506000836040015160ff1683610d90919061178f565b600154610db09084906fffffffffffffffffffffffffffffffff1661178f565b610dba91906116b3565b600154909150600090610e0b90610de49084906fffffffffffffffffffffffffffffffff1661191c565b866060015163ffffffff168760a001516fffffffffffffffffffffffffffffffff1661098d565b90506001861115610e3a57610e37610de482876040015160ff1660018a610e32919061169c565b610930565b90505b6fffffffffffffffffffffffffffffffff16780100000000000000000000000000000000000000000000000067ffffffffffffffff4316021760015550505b60018054869190601090610eac908490700100000000000000000000000000000000900467ffffffffffffffff16611990565b92506101000a81548167ffffffffffffffff021916908367ffffffffffffffff160217905550816000015163ffffffff16600160000160109054906101000a900467ffffffffffffffff1667ffffffffffffffff161315610f8f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603e60248201527f5265736f757263654d65746572696e673a2063616e6e6f7420627579206d6f7260448201527f6520676173207468616e20617661696c61626c6520676173206c696d697400006064820152608401610a30565b600154600090610fbb906fffffffffffffffffffffffffffffffff1667ffffffffffffffff88166119bc565b90506000610fcd48633b9aca00611063565b610fd79083611688565b905060005a610fe6908861169c565b90508082111561100257611002610ffd828461169c565b611073565b5050505050505050565b6000610914670de0b6b3a7640000836110248661109c565b61102e919061178f565b61103891906116b3565b6112e0565b60008183121561104d5781610914565b5090919050565b600081831261104d5781610914565b60008183101561104d5781610914565b6000805a90505b825a611086908361169c565b101561092b57611095826119f9565b915061107a565b6000808213611107576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600960248201527f554e444546494e454400000000000000000000000000000000000000000000006044820152606401610a30565b600060606111148461151f565b03609f8181039490941b90931c6c465772b2bbbb5f824b15207a3081018102606090811d6d0388eaa27412d5aca026815d636e018202811d6d0df99ac502031bf953eff472fdcc018202811d6d13cdffb29d51d99322bdff5f2211018202811d6d0a0f742023def783a307a986912e018202811d6d01920d8043ca89b5239253284e42018202811d6c0b7a86d7375468fac667a0a527016c29508e458543d8aa4df2abee7883018302821d6d0139601a2efabe717e604cbb4894018302821d6d02247f7a7b6594320649aa03aba1018302821d7fffffffffffffffffffffffffffffffffffffff73c0c716a594e00d54e3c4cbc9018302821d7ffffffffffffffffffffffffffffffffffffffdc7b88c420e53a9890533129f6f01830290911d7fffffffffffffffffffffffffffffffffffffff465fda27eb4d63ded474e5f832019091027ffffffffffffffff5f6af8f7b3396644f18e157960000000000000000000000000105711340daa0d5f769dba1915cef59f0815a5506027d0267a36c0c95b3975ab3ee5b203a7614a3f75373f047d803ae7b6687f2b393909302929092017d57115e47018c7177eebf7cd370a3356a1b7863008a5ae8028c72b88642840160ae1d92915050565b60007ffffffffffffffffffffffffffffffffffffffffffffffffdb731c958f34d94c1821361131157506000919050565b680755bf798b4a1bf1e58212611383576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600c60248201527f4558505f4f564552464c4f5700000000000000000000000000000000000000006044820152606401610a30565b6503782dace9d9604e83901b059150600060606bb17217f7d1cf79abc9e3b39884821b056b80000000000000000000000001901d6bb17217f7d1cf79abc9e3b39881029093037fffffffffffffffffffffffffffffffffffffffdbf3ccf1604d263450f02a550481018102606090811d6d0277594991cfc85f6e2461837cd9018202811d7fffffffffffffffffffffffffffffffffffffe5adedaa1cb095af9e4da10e363c018202811d6db1bbb201f443cf962f1a1d3db4a5018202811d7ffffffffffffffffffffffffffffffffffffd38dc772608b0ae56cce01296c0eb018202811d6e05180bb14799ab47a8a8cb2a527d57016d02d16720577bd19bf614176fe9ea6c10fe68e7fd37d0007b713f765084018402831d9081019084017ffffffffffffffffffffffffffffffffffffffe2c69812cf03b0763fd454a8f7e010290911d6e0587f503bb6ea29d25fcb7401964500190910279d835ebba824c98fb31b83b2ca45c000000000000000000000000010574029d9dc38563c32e5c2f6dc192ee70ef65f9978af30260c3939093039290921c92915050565b600080821161158a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600960248201527f554e444546494e454400000000000000000000000000000000000000000000006044820152606401610a30565b5060016fffffffffffffffffffffffffffffffff821160071b82811c67ffffffffffffffff1060061b1782811c63ffffffff1060051b1782811c61ffff1060041b1782811c60ff10600390811b90911783811c600f1060021b1783811c909110821b1791821c111790565b6000806040838503121561160857600080fd5b823591506020830135801515811461161f57600080fd5b809150509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000826116975761169761162a565b500490565b6000828210156116ae576116ae611659565b500390565b6000826116c2576116c261162a565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff83147f80000000000000000000000000000000000000000000000000000000000000008314161561171657611716611659565b500590565b6000808312837f80000000000000000000000000000000000000000000000000000000000000000183128115161561175557611755611659565b837f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff01831381161561178957611789611659565b50500390565b60007f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6000841360008413858304851182821616156117d0576117d0611659565b7f8000000000000000000000000000000000000000000000000000000000000000600087128682058812818416161561180b5761180b611659565b6000871292508782058712848416161561182757611827611659565b8785058712818416161561183d5761183d611659565b505050929093029392505050565b6000821982111561185e5761185e611659565b500190565b6000826118725761187261162a565b500690565b60005b8381101561189257818101518382015260200161187a565b838111156118a1576000848401525b50505050565b60408152600083518060408401526118c6816060850160208801611877565b602083019390935250601f919091017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01601606001919050565b60008251611912818460208701611877565b9190910192915050565b6000808212827f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0384138115161561195657611956611659565b827f800000000000000000000000000000000000000000000000000000000000000003841281161561198a5761198a611659565b50500190565b600067ffffffffffffffff8083168185168083038211156119b3576119b3611659565b01949350505050565b6000817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff04831182151516156119f4576119f4611659565b500290565b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203611a2a57611a2a611659565b506001019056fea164736f6c634300080f000a",
  "linkReferences": {},
  "deployedLinkReferences": {}
}
