{
  "_format": "hh-sol-artifact-1",
  "contractName": "VenueRegistarMockV2",
  "sourceName": "contracts/mocks/VenueRegistarMockV2.sol",
  "abi": [
    {
      "inputs": [],
      "name": "RegistarInvalidPrice",
      "type": "error"
    },
    {
      "inputs": [],
      "name": "RegistarInvalidReceiver",
      "type": "error"
    },
    {
      "inputs": [],
      "name": "RegistarSBTVersionNotSupported",
      "type": "error"
    },
    {
      "inputs": [],
      "name": "RegistarUnableToWithdrawETH",
      "type": "error"
    },
    {
      "inputs": [],
      "name": "RegistarUndefinedVenueFactory",
      "type": "error"
    },
    {
      "inputs": [],
      "name": "RegistarVenueAlreadyRegistered",
      "type": "error"
    },
    {
      "inputs": [],
      "name": "RegistarVenueNotFound",
      "type": "error"
    },
    {
      "inputs": [],
      "name": "RegistarWrongVenueFactory",
      "type": "error"
    },
    {
      "inputs": [],
      "name": "RegistarWrongVenueRegistar",
      "type": "error"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": false,
          "internalType": "address",
          "name": "previousAdmin",
          "type": "address"
        },
        {
          "indexed": false,
          "internalType": "address",
          "name": "newAdmin",
          "type": "address"
        }
      ],
      "name": "AdminChanged",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": true,
          "internalType": "address",
          "name": "beacon",
          "type": "address"
        }
      ],
      "name": "BeaconUpgraded",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": false,
          "internalType": "uint8",
          "name": "version",
          "type": "uint8"
        }
      ],
      "name": "Initialized",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": true,
          "internalType": "address",
          "name": "newVenue",
          "type": "address"
        },
        {
          "indexed": false,
          "internalType": "address",
          "name": "splitter",
          "type": "address"
        },
        {
          "indexed": true,
          "internalType": "address",
          "name": "owner",
          "type": "address"
        },
        {
          "indexed": true,
          "internalType": "uint256",
          "name": "blockNumber",
          "type": "uint256"
        }
      ],
      "name": "NewVenue",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": true,
          "internalType": "address",
          "name": "previousOwner",
          "type": "address"
        },
        {
          "indexed": true,
          "internalType": "address",
          "name": "newOwner",
          "type": "address"
        }
      ],
      "name": "OwnershipTransferred",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": true,
          "internalType": "address",
          "name": "implementation",
          "type": "address"
        }
      ],
      "name": "Upgraded",
      "type": "event"
    },
    {
      "inputs": [
        {
          "internalType": "string",
          "name": "name",
          "type": "string"
        },
        {
          "internalType": "string",
          "name": "symbol",
          "type": "string"
        },
        {
          "internalType": "string",
          "name": "baseUri",
          "type": "string"
        }
      ],
      "name": "deployVenue",
      "outputs": [],
      "stateMutability": "payable",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "getForwarder",
      "outputs": [
        {
          "internalType": "address",
          "name": "",
          "type": "address"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "getMinBalance",
      "outputs": [
        {
          "internalType": "uint256",
          "name": "",
          "type": "uint256"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "getOwner",
      "outputs": [
        {
          "internalType": "address",
          "name": "",
          "type": "address"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "getTokenReviewParams",
      "outputs": [
        {
          "internalType": "address",
          "name": "",
          "type": "address"
        },
        {
          "internalType": "address",
          "name": "",
          "type": "address"
        },
        {
          "internalType": "uint256",
          "name": "",
          "type": "uint256"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "getValue",
      "outputs": [
        {
          "internalType": "uint256",
          "name": "",
          "type": "uint256"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "getVenueSBTVersion",
      "outputs": [
        {
          "internalType": "string",
          "name": "",
          "type": "string"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "getVenues",
      "outputs": [
        {
          "internalType": "address[]",
          "name": "",
          "type": "address[]"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "getWhitelistedPaymentTokens",
      "outputs": [
        {
          "internalType": "address[]",
          "name": "",
          "type": "address[]"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "uint256",
          "name": "publicPrice",
          "type": "uint256"
        },
        {
          "internalType": "address",
          "name": "tokenCreator_",
          "type": "address"
        }
      ],
      "name": "initialize",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "token",
          "type": "address"
        }
      ],
      "name": "isPaymentTokenWhitelisted",
      "outputs": [
        {
          "internalType": "bool",
          "name": "",
          "type": "bool"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "forwarder",
          "type": "address"
        }
      ],
      "name": "isTrustedForwarder",
      "outputs": [
        {
          "internalType": "bool",
          "name": "",
          "type": "bool"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "venue",
          "type": "address"
        }
      ],
      "name": "isVenue",
      "outputs": [
        {
          "internalType": "bool",
          "name": "",
          "type": "bool"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "owner",
      "outputs": [
        {
          "internalType": "address",
          "name": "",
          "type": "address"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "string",
          "name": "name",
          "type": "string"
        },
        {
          "internalType": "string",
          "name": "symbol",
          "type": "string"
        },
        {
          "internalType": "string",
          "name": "baseUri",
          "type": "string"
        },
        {
          "internalType": "address",
          "name": "owner",
          "type": "address"
        }
      ],
      "name": "ownerDeployVenue",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "price",
      "outputs": [
        {
          "internalType": "uint256",
          "name": "",
          "type": "uint256"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "proxiableUUID",
      "outputs": [
        {
          "internalType": "bytes32",
          "name": "",
          "type": "bytes32"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "venue",
          "type": "address"
        }
      ],
      "name": "registerVenue",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "venue",
          "type": "address"
        }
      ],
      "name": "removeVenue",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "renounceOwnership",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "forwarder",
          "type": "address"
        }
      ],
      "name": "setForwarder",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "uint256",
          "name": "publicPrice",
          "type": "uint256"
        }
      ],
      "name": "setPrice",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "newTokenCreator",
          "type": "address"
        }
      ],
      "name": "setTokenCreator",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "tokenReview",
          "type": "address"
        },
        {
          "internalType": "address",
          "name": "tokenReviewPaymaster",
          "type": "address"
        },
        {
          "internalType": "uint256",
          "name": "minBalance",
          "type": "uint256"
        }
      ],
      "name": "setTokenReviewParams",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "uint256",
          "name": "_value",
          "type": "uint256"
        }
      ],
      "name": "setValue",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "venueFactory",
          "type": "address"
        }
      ],
      "name": "setVenueFactory",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "string",
          "name": "newVersion",
          "type": "string"
        }
      ],
      "name": "setVenueSBTVersion",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "",
          "type": "address"
        }
      ],
      "name": "splitterByVenue",
      "outputs": [
        {
          "internalType": "address",
          "name": "",
          "type": "address"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "bytes4",
          "name": "interfaceId",
          "type": "bytes4"
        }
      ],
      "name": "supportsInterface",
      "outputs": [
        {
          "internalType": "bool",
          "name": "",
          "type": "bool"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "tokenCreator",
      "outputs": [
        {
          "internalType": "address",
          "name": "",
          "type": "address"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "newOwner",
          "type": "address"
        }
      ],
      "name": "transferOwnership",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "newImplementation",
          "type": "address"
        }
      ],
      "name": "upgradeTo",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "newImplementation",
          "type": "address"
        },
        {
          "internalType": "bytes",
          "name": "data",
          "type": "bytes"
        }
      ],
      "name": "upgradeToAndCall",
      "outputs": [],
      "stateMutability": "payable",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "value",
      "outputs": [
        {
          "internalType": "uint256",
          "name": "",
          "type": "uint256"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "versionRegistar",
      "outputs": [
        {
          "internalType": "string",
          "name": "",
          "type": "string"
        }
      ],
      "stateMutability": "pure",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "token",
          "type": "address"
        },
        {
          "internalType": "bool",
          "name": "whitelist",
          "type": "bool"
        }
      ],
      "name": "whitelistPaymentToken",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "receiver",
          "type": "address"
        }
      ],
      "name": "withdrawETH",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "token",
          "type": "address"
        },
        {
          "internalType": "address",
          "name": "to",
          "type": "address"
        }
      ],
      "name": "withdrawToken",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "stateMutability": "payable",
      "type": "receive"
    }
  ],
  "bytecode": "0x60a06040523060805234801561001457600080fd5b506080516122ae61004c600039600081816109070152818161095001528181610ba801528181610be80152610c7701526122ae6000f3fe6080604052600436106102295760003560e01c8063715018a611610123578063b9998a24116100ab578063e4fae4e41161006f578063e4fae4e414610677578063e6f073e01461068c578063ea1cabc5146106a1578063eedf4695146106b4578063f2fde38b146106d457600080fd5b8063b9998a24146105d7578063c44d6c54146105f7578063d275254314610617578063da35a26f14610637578063db84252c1461065757600080fd5b80638da5cb5b116100f25780638da5cb5b1461055057806391b7f5ed1461056e57806395bd510c1461058e578063a0042526146105a3578063a035b1fe146105c157600080fd5b8063715018a6146104e6578063806846f7146104fb578063863aa8841461051b578063893d20e81461053b57600080fd5b80633fa4f245116101b157806352d1902d1161017557806352d1902d146104405780635524107714610455578063553abd7a14610475578063572b6c0514610497578063690d8320146104c657600080fd5b80633fa4f245146103b5578063418a59b2146103cb5780634333d46e146103eb578063490d17011461040d5780634f1ef2861461042d57600080fd5b806327b87ed4116101f857806327b87ed4146102cb57806330825435146103075780633659cfe61461035557806336ab22ce146103755780633aeac4e11461039557600080fd5b806301ffc9a71461023557806305ff117d1461026a578063209652551461028c57806325e0b16d146102ab57600080fd5b3661023057005b600080fd5b34801561024157600080fd5b50610255610250366004611930565b6106f4565b60405190151581526020015b60405180910390f35b34801561027657600080fd5b5061028a61028536600461196f565b61072b565b005b34801561029857600080fd5b5060d6545b604051908152602001610261565b3480156102b757600080fd5b5061028a6102c636600461196f565b6108d3565b3480156102d757600080fd5b5060cc5460cb5460ce54604080516001600160a01b03948516815293909216602084015290820152606001610261565b34801561031357600080fd5b5061033d61032236600461196f565b60d1602052600090815260409020546001600160a01b031681565b6040516001600160a01b039091168152602001610261565b34801561036157600080fd5b5061028a61037036600461196f565b6108fd565b34801561038157600080fd5b5061028a61039036600461196f565b6109e5565b3480156103a157600080fd5b5061028a6103b036600461198c565b610a24565b3480156103c157600080fd5b5061029d60d65481565b3480156103d757600080fd5b5061028a6103e6366004611a92565b610b3c565b3480156103f757600080fd5b50610400610b50565b6040516102619190611acf565b34801561041957600080fd5b5061028a610428366004611b1c565b610b61565b61028a61043b366004611b5d565b610b9e565b34801561044c57600080fd5b5061029d610c6a565b34801561046157600080fd5b5061028a610470366004611bc1565b60d655565b34801561048157600080fd5b5061048a610d1d565b6040516102619190611c2a565b3480156104a357600080fd5b506102556104b236600461196f565b60ca546001600160a01b0391821691161490565b3480156104d257600080fd5b5061028a6104e136600461196f565b610d3d565b3480156104f257600080fd5b5061028a610db9565b34801561050757600080fd5b5061028a610516366004611c3d565b610dcd565b34801561052757600080fd5b5061028a61053636600461196f565b610de1565b34801561054757600080fd5b5061033d610e32565b34801561055c57600080fd5b506097546001600160a01b031661033d565b34801561057a57600080fd5b5061028a610589366004611bc1565b610e46565b34801561059a57600080fd5b5061048a610e53565b3480156105af57600080fd5b5060ca546001600160a01b031661033d565b3480156105cd57600080fd5b5061029d60cf5481565b3480156105e357600080fd5b5061028a6105f236600461196f565b610ee5565b34801561060357600080fd5b5061025561061236600461196f565b610f0f565b34801561062357600080fd5b5061028a610632366004611ce6565b610f1c565b34801561064357600080fd5b5061028a610652366004611d14565b610f40565b34801561066357600080fd5b5060cd5461033d906001600160a01b031681565b34801561068357600080fd5b5060ce5461029d565b34801561069857600080fd5b5061040061107a565b61028a6106af366004611d39565b611086565b3480156106c057600080fd5b506102556106cf36600461196f565b6110dd565b3480156106e057600080fd5b5061028a6106ef36600461196f565b6110ea565b60006001600160e01b031982166354a3832960e11b148061072557506301ffc9a760e01b6001600160e01b03198316145b92915050565b610733611160565b60405181906107479060d090602001611dfb565b60405160208183030381529060405280519060200120816001600160a01b031663680acb676040518163ffffffff1660e01b8152600401600060405180830381865afa15801561079b573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526107c39190810190611e71565b6040516020016107d39190611edf565b6040516020818303038152906040528051906020012014610807576040516326a1abe560e11b815260040160405180910390fd5b306001600160a01b0316816001600160a01b0316631efba58a6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561084f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108739190611efb565b6001600160a01b03161461089a5760405163d1ee5dbb60e01b815260040160405180910390fd5b6108a560d2836111ba565b156108c3576040516330e5c45f60e11b815260040160405180910390fd5b6108ce60d2836111df565b505050565b6108db611160565b60cd80546001600160a01b0319166001600160a01b0392909216919091179055565b6001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016300361094e5760405162461bcd60e51b815260040161094590611f18565b60405180910390fd5b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031661099760008051602061220f833981519152546001600160a01b031690565b6001600160a01b0316146109bd5760405162461bcd60e51b815260040161094590611f64565b6109c6816111f4565b604080516000808252602082019092526109e2918391906111fc565b50565b6109ed611160565b6109f860d2826111ba565b610a15576040516328bdb57960e01b815260040160405180910390fd5b610a2060d282611367565b5050565b610a2c611160565b6001600160a01b038116610a5357604051634d81c73f60e11b815260040160405180910390fd5b6040516370a0823160e01b815230600482015282906001600160a01b0382169063a9059cbb90849083906370a0823190602401602060405180830381865afa158015610aa3573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610ac79190611fb0565b6040516001600160e01b031960e085901b1681526001600160a01b03909216600483015260248201526044016020604051808303816000875af1158015610b12573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b369190611fc9565b50505050565b610b44611160565b60d0610a208282612034565b6060610b5c60d261137c565b905090565b610b69611160565b60cc80546001600160a01b039485166001600160a01b03199182161790915560cb80549390941692169190911790915560ce55565b6001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000163003610be65760405162461bcd60e51b815260040161094590611f18565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316610c2f60008051602061220f833981519152546001600160a01b031690565b6001600160a01b031614610c555760405162461bcd60e51b815260040161094590611f64565b610c5e826111f4565b610a20828260016111fc565b6000306001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614610d0a5760405162461bcd60e51b815260206004820152603860248201527f555550535570677261646561626c653a206d757374206e6f742062652063616c60448201527f6c6564207468726f7567682064656c656761746563616c6c00000000000000006064820152608401610945565b5060008051602061220f83398151915290565b606060405180606001604052806023815260200161225660239139905090565b610d45611160565b6000816001600160a01b03164760405160006040518083038185875af1925050503d8060008114610d92576040519150601f19603f3d011682016040523d82523d6000602084013e610d97565b606091505b5050905080610a205760405163390e6f6760e01b815260040160405180910390fd5b610dc1611160565b610dcb6000611389565b565b610dd5611160565b610b36848484846113db565b610de9611160565b6001600160a01b038116610e105760405163bfdb5f1960e01b815260040160405180910390fd5b60c980546001600160a01b0319166001600160a01b0392909216919091179055565b6000610b5c6097546001600160a01b031690565b610e4e611160565b60cf55565b606060d08054610e6290611dc1565b80601f0160208091040260200160405190810160405280929190818152602001828054610e8e90611dc1565b8015610edb5780601f10610eb057610100808354040283529160200191610edb565b820191906000526020600020905b815481529060010190602001808311610ebe57829003601f168201915b5050505050905090565b610eed611160565b60ca80546001600160a01b0319166001600160a01b0392909216919091179055565b600061072560d2836111ba565b610f24611160565b8015610f35576108ce60d4836111df565b6108ce60d483611367565b600054610100900460ff1615808015610f605750600054600160ff909116105b80610f7a5750303b158015610f7a575060005460ff166001145b610fdd5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610945565b6000805460ff191660011790558015611000576000805461ff0019166101001790555b60cf83905560cd80546001600160a01b0319166001600160a01b0384161790556110286114d9565b611030611508565b80156108ce576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a1505050565b6060610b5c60d461137c565b60c9546001600160a01b03166110af5760405163908eaf9560e01b815260040160405180910390fd5b60cf5434146110d157604051636ac8a2bd60e01b815260040160405180910390fd5b6108ce838383336113db565b600061072560d4836111ba565b6110f2611160565b6001600160a01b0381166111575760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610945565b6109e281611389565b6097546001600160a01b03163314610dcb5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610945565b6001600160a01b038116600090815260018301602052604081205415155b9392505050565b60006111d8836001600160a01b03841661152f565b6109e2611160565b7f4910fdfa16fed3260ed0e7147f7cc6da11a60208b5b9406d12a635614ffd91435460ff161561122f576108ce8361157e565b826001600160a01b03166352d1902d6040518163ffffffff1660e01b8152600401602060405180830381865afa925050508015611289575060408051601f3d908101601f1916820190925261128691810190611fb0565b60015b6112ec5760405162461bcd60e51b815260206004820152602e60248201527f45524331393637557067726164653a206e657720696d706c656d656e7461746960448201526d6f6e206973206e6f74205555505360901b6064820152608401610945565b60008051602061220f833981519152811461135b5760405162461bcd60e51b815260206004820152602960248201527f45524331393637557067726164653a20756e737570706f727465642070726f786044820152681a58589b195555525160ba1b6064820152608401610945565b506108ce83838361161a565b60006111d8836001600160a01b03841661163f565b606060006111d883611732565b609780546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b60c95460405163e91a543d60e01b815260009182916001600160a01b039091169063e91a543d906114169089908990899089906004016120f4565b60408051808303816000875af1158015611434573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114589190612147565b909250905061146860d2836111df565b506001600160a01b03828116600081815260d1602090815260409182902080546001600160a01b03191686861690811790915591519182524393871692917fe34dae00e70f12d756207784cbbdd05e5cbd5c00afc6ab8f69c073c7008a8dac910160405180910390a4505050505050565b600054610100900460ff166115005760405162461bcd60e51b815260040161094590612176565b610dcb61178e565b600054610100900460ff16610dcb5760405162461bcd60e51b815260040161094590612176565b600081815260018301602052604081205461157657508154600181810184556000848152602080822090930184905584548482528286019093526040902091909155610725565b506000610725565b6001600160a01b0381163b6115eb5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b6064820152608401610945565b60008051602061220f83398151915280546001600160a01b0319166001600160a01b0392909216919091179055565b611623836117be565b6000825111806116305750805b156108ce57610b3683836117fe565b600081815260018301602052604081205480156117285760006116636001836121c1565b8554909150600090611677906001906121c1565b90508181146116dc576000866000018281548110611697576116976121e2565b90600052602060002001549050808760000184815481106116ba576116ba6121e2565b6000918252602080832090910192909255918252600188019052604090208390555b85548690806116ed576116ed6121f8565b600190038181906000526020600020016000905590558560010160008681526020019081526020016000206000905560019350505050610725565b6000915050610725565b60608160000180548060200260200160405190810160405280929190818152602001828054801561178257602002820191906000526020600020905b81548152602001906001019080831161176e575b50505050509050919050565b600054610100900460ff166117b55760405162461bcd60e51b815260040161094590612176565b610dcb33611389565b6117c78161157e565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b60606001600160a01b0383163b6118665760405162461bcd60e51b815260206004820152602660248201527f416464726573733a2064656c65676174652063616c6c20746f206e6f6e2d636f6044820152651b9d1c9858dd60d21b6064820152608401610945565b600080846001600160a01b0316846040516118819190611edf565b600060405180830381855af49150503d80600081146118bc576040519150601f19603f3d011682016040523d82523d6000602084013e6118c1565b606091505b50915091506118e9828260405180606001604052806027815260200161222f602791396118f2565b95945050505050565b606083156119015750816111d8565b6111d883838151156119165781518083602001fd5b8060405162461bcd60e51b81526004016109459190611c2a565b60006020828403121561194257600080fd5b81356001600160e01b0319811681146111d857600080fd5b6001600160a01b03811681146109e257600080fd5b60006020828403121561198157600080fd5b81356111d88161195a565b6000806040838503121561199f57600080fd5b82356119aa8161195a565b915060208301356119ba8161195a565b809150509250929050565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f1916810167ffffffffffffffff81118282101715611a0457611a046119c5565b604052919050565b600067ffffffffffffffff821115611a2657611a266119c5565b50601f01601f191660200190565b6000611a47611a4284611a0c565b6119db565b9050828152838383011115611a5b57600080fd5b828260208301376000602084830101529392505050565b600082601f830112611a8357600080fd5b6111d883833560208501611a34565b600060208284031215611aa457600080fd5b813567ffffffffffffffff811115611abb57600080fd5b611ac784828501611a72565b949350505050565b6020808252825182820181905260009190848201906040850190845b81811015611b105783516001600160a01b031683529284019291840191600101611aeb565b50909695505050505050565b600080600060608486031215611b3157600080fd5b8335611b3c8161195a565b92506020840135611b4c8161195a565b929592945050506040919091013590565b60008060408385031215611b7057600080fd5b8235611b7b8161195a565b9150602083013567ffffffffffffffff811115611b9757600080fd5b8301601f81018513611ba857600080fd5b611bb785823560208401611a34565b9150509250929050565b600060208284031215611bd357600080fd5b5035919050565b60005b83811015611bf5578181015183820152602001611bdd565b50506000910152565b60008151808452611c16816020860160208601611bda565b601f01601f19169290920160200192915050565b6020815260006111d86020830184611bfe565b60008060008060808587031215611c5357600080fd5b843567ffffffffffffffff80821115611c6b57600080fd5b611c7788838901611a72565b95506020870135915080821115611c8d57600080fd5b611c9988838901611a72565b94506040870135915080821115611caf57600080fd5b50611cbc87828801611a72565b9250506060850135611ccd8161195a565b939692955090935050565b80151581146109e257600080fd5b60008060408385031215611cf957600080fd5b8235611d048161195a565b915060208301356119ba81611cd8565b60008060408385031215611d2757600080fd5b8235915060208301356119ba8161195a565b600080600060608486031215611d4e57600080fd5b833567ffffffffffffffff80821115611d6657600080fd5b611d7287838801611a72565b94506020860135915080821115611d8857600080fd5b611d9487838801611a72565b93506040860135915080821115611daa57600080fd5b50611db786828701611a72565b9150509250925092565b600181811c90821680611dd557607f821691505b602082108103611df557634e487b7160e01b600052602260045260246000fd5b50919050565b6000808354611e0981611dc1565b60018281168015611e215760018114611e3657611e65565b60ff1984168752821515830287019450611e65565b8760005260208060002060005b85811015611e5c5781548a820152908401908201611e43565b50505082870194505b50929695505050505050565b600060208284031215611e8357600080fd5b815167ffffffffffffffff811115611e9a57600080fd5b8201601f81018413611eab57600080fd5b8051611eb9611a4282611a0c565b818152856020838501011115611ece57600080fd5b6118e9826020830160208601611bda565b60008251611ef1818460208701611bda565b9190910192915050565b600060208284031215611f0d57600080fd5b81516111d88161195a565b6020808252602c908201527f46756e6374696f6e206d7573742062652063616c6c6564207468726f7567682060408201526b19195b1959d85d1958d85b1b60a21b606082015260800190565b6020808252602c908201527f46756e6374696f6e206d7573742062652063616c6c6564207468726f7567682060408201526b6163746976652070726f787960a01b606082015260800190565b600060208284031215611fc257600080fd5b5051919050565b600060208284031215611fdb57600080fd5b81516111d881611cd8565b601f8211156108ce57600081815260208120601f850160051c8101602086101561200d5750805b601f850160051c820191505b8181101561202c57828155600101612019565b505050505050565b815167ffffffffffffffff81111561204e5761204e6119c5565b6120628161205c8454611dc1565b84611fe6565b602080601f831160018114612097576000841561207f5750858301515b600019600386901b1c1916600185901b17855561202c565b600085815260208120601f198616915b828110156120c6578886015182559484019460019091019084016120a7565b50858210156120e45787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b6080815260006121076080830187611bfe565b82810360208401526121198187611bfe565b9050828103604084015261212d8186611bfe565b91505060018060a01b038316606083015295945050505050565b6000806040838503121561215a57600080fd5b82516121658161195a565b60208401519092506119ba8161195a565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b8181038181111561072557634e487b7160e01b600052601160045260246000fd5b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052603160045260246000fdfe360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564312e302e322d626574612e302b666f622e7273762e6956656e75655265676973746172a2646970667358221220d2a3d0c1ccc0a03fb7cfcb9efe78682226f3dcb7040efa0cbc85c8b7b201545c64736f6c63430008110033",
  "deployedBytecode": "0x6080604052600436106102295760003560e01c8063715018a611610123578063b9998a24116100ab578063e4fae4e41161006f578063e4fae4e414610677578063e6f073e01461068c578063ea1cabc5146106a1578063eedf4695146106b4578063f2fde38b146106d457600080fd5b8063b9998a24146105d7578063c44d6c54146105f7578063d275254314610617578063da35a26f14610637578063db84252c1461065757600080fd5b80638da5cb5b116100f25780638da5cb5b1461055057806391b7f5ed1461056e57806395bd510c1461058e578063a0042526146105a3578063a035b1fe146105c157600080fd5b8063715018a6146104e6578063806846f7146104fb578063863aa8841461051b578063893d20e81461053b57600080fd5b80633fa4f245116101b157806352d1902d1161017557806352d1902d146104405780635524107714610455578063553abd7a14610475578063572b6c0514610497578063690d8320146104c657600080fd5b80633fa4f245146103b5578063418a59b2146103cb5780634333d46e146103eb578063490d17011461040d5780634f1ef2861461042d57600080fd5b806327b87ed4116101f857806327b87ed4146102cb57806330825435146103075780633659cfe61461035557806336ab22ce146103755780633aeac4e11461039557600080fd5b806301ffc9a71461023557806305ff117d1461026a578063209652551461028c57806325e0b16d146102ab57600080fd5b3661023057005b600080fd5b34801561024157600080fd5b50610255610250366004611930565b6106f4565b60405190151581526020015b60405180910390f35b34801561027657600080fd5b5061028a61028536600461196f565b61072b565b005b34801561029857600080fd5b5060d6545b604051908152602001610261565b3480156102b757600080fd5b5061028a6102c636600461196f565b6108d3565b3480156102d757600080fd5b5060cc5460cb5460ce54604080516001600160a01b03948516815293909216602084015290820152606001610261565b34801561031357600080fd5b5061033d61032236600461196f565b60d1602052600090815260409020546001600160a01b031681565b6040516001600160a01b039091168152602001610261565b34801561036157600080fd5b5061028a61037036600461196f565b6108fd565b34801561038157600080fd5b5061028a61039036600461196f565b6109e5565b3480156103a157600080fd5b5061028a6103b036600461198c565b610a24565b3480156103c157600080fd5b5061029d60d65481565b3480156103d757600080fd5b5061028a6103e6366004611a92565b610b3c565b3480156103f757600080fd5b50610400610b50565b6040516102619190611acf565b34801561041957600080fd5b5061028a610428366004611b1c565b610b61565b61028a61043b366004611b5d565b610b9e565b34801561044c57600080fd5b5061029d610c6a565b34801561046157600080fd5b5061028a610470366004611bc1565b60d655565b34801561048157600080fd5b5061048a610d1d565b6040516102619190611c2a565b3480156104a357600080fd5b506102556104b236600461196f565b60ca546001600160a01b0391821691161490565b3480156104d257600080fd5b5061028a6104e136600461196f565b610d3d565b3480156104f257600080fd5b5061028a610db9565b34801561050757600080fd5b5061028a610516366004611c3d565b610dcd565b34801561052757600080fd5b5061028a61053636600461196f565b610de1565b34801561054757600080fd5b5061033d610e32565b34801561055c57600080fd5b506097546001600160a01b031661033d565b34801561057a57600080fd5b5061028a610589366004611bc1565b610e46565b34801561059a57600080fd5b5061048a610e53565b3480156105af57600080fd5b5060ca546001600160a01b031661033d565b3480156105cd57600080fd5b5061029d60cf5481565b3480156105e357600080fd5b5061028a6105f236600461196f565b610ee5565b34801561060357600080fd5b5061025561061236600461196f565b610f0f565b34801561062357600080fd5b5061028a610632366004611ce6565b610f1c565b34801561064357600080fd5b5061028a610652366004611d14565b610f40565b34801561066357600080fd5b5060cd5461033d906001600160a01b031681565b34801561068357600080fd5b5060ce5461029d565b34801561069857600080fd5b5061040061107a565b61028a6106af366004611d39565b611086565b3480156106c057600080fd5b506102556106cf36600461196f565b6110dd565b3480156106e057600080fd5b5061028a6106ef36600461196f565b6110ea565b60006001600160e01b031982166354a3832960e11b148061072557506301ffc9a760e01b6001600160e01b03198316145b92915050565b610733611160565b60405181906107479060d090602001611dfb565b60405160208183030381529060405280519060200120816001600160a01b031663680acb676040518163ffffffff1660e01b8152600401600060405180830381865afa15801561079b573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526107c39190810190611e71565b6040516020016107d39190611edf565b6040516020818303038152906040528051906020012014610807576040516326a1abe560e11b815260040160405180910390fd5b306001600160a01b0316816001600160a01b0316631efba58a6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561084f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108739190611efb565b6001600160a01b03161461089a5760405163d1ee5dbb60e01b815260040160405180910390fd5b6108a560d2836111ba565b156108c3576040516330e5c45f60e11b815260040160405180910390fd5b6108ce60d2836111df565b505050565b6108db611160565b60cd80546001600160a01b0319166001600160a01b0392909216919091179055565b6001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016300361094e5760405162461bcd60e51b815260040161094590611f18565b60405180910390fd5b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031661099760008051602061220f833981519152546001600160a01b031690565b6001600160a01b0316146109bd5760405162461bcd60e51b815260040161094590611f64565b6109c6816111f4565b604080516000808252602082019092526109e2918391906111fc565b50565b6109ed611160565b6109f860d2826111ba565b610a15576040516328bdb57960e01b815260040160405180910390fd5b610a2060d282611367565b5050565b610a2c611160565b6001600160a01b038116610a5357604051634d81c73f60e11b815260040160405180910390fd5b6040516370a0823160e01b815230600482015282906001600160a01b0382169063a9059cbb90849083906370a0823190602401602060405180830381865afa158015610aa3573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610ac79190611fb0565b6040516001600160e01b031960e085901b1681526001600160a01b03909216600483015260248201526044016020604051808303816000875af1158015610b12573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b369190611fc9565b50505050565b610b44611160565b60d0610a208282612034565b6060610b5c60d261137c565b905090565b610b69611160565b60cc80546001600160a01b039485166001600160a01b03199182161790915560cb80549390941692169190911790915560ce55565b6001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000163003610be65760405162461bcd60e51b815260040161094590611f18565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316610c2f60008051602061220f833981519152546001600160a01b031690565b6001600160a01b031614610c555760405162461bcd60e51b815260040161094590611f64565b610c5e826111f4565b610a20828260016111fc565b6000306001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614610d0a5760405162461bcd60e51b815260206004820152603860248201527f555550535570677261646561626c653a206d757374206e6f742062652063616c60448201527f6c6564207468726f7567682064656c656761746563616c6c00000000000000006064820152608401610945565b5060008051602061220f83398151915290565b606060405180606001604052806023815260200161225660239139905090565b610d45611160565b6000816001600160a01b03164760405160006040518083038185875af1925050503d8060008114610d92576040519150601f19603f3d011682016040523d82523d6000602084013e610d97565b606091505b5050905080610a205760405163390e6f6760e01b815260040160405180910390fd5b610dc1611160565b610dcb6000611389565b565b610dd5611160565b610b36848484846113db565b610de9611160565b6001600160a01b038116610e105760405163bfdb5f1960e01b815260040160405180910390fd5b60c980546001600160a01b0319166001600160a01b0392909216919091179055565b6000610b5c6097546001600160a01b031690565b610e4e611160565b60cf55565b606060d08054610e6290611dc1565b80601f0160208091040260200160405190810160405280929190818152602001828054610e8e90611dc1565b8015610edb5780601f10610eb057610100808354040283529160200191610edb565b820191906000526020600020905b815481529060010190602001808311610ebe57829003601f168201915b5050505050905090565b610eed611160565b60ca80546001600160a01b0319166001600160a01b0392909216919091179055565b600061072560d2836111ba565b610f24611160565b8015610f35576108ce60d4836111df565b6108ce60d483611367565b600054610100900460ff1615808015610f605750600054600160ff909116105b80610f7a5750303b158015610f7a575060005460ff166001145b610fdd5760405162461bcd60e51b815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201526d191e481a5b9a5d1a585b1a5e995960921b6064820152608401610945565b6000805460ff191660011790558015611000576000805461ff0019166101001790555b60cf83905560cd80546001600160a01b0319166001600160a01b0384161790556110286114d9565b611030611508565b80156108ce576000805461ff0019169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a1505050565b6060610b5c60d461137c565b60c9546001600160a01b03166110af5760405163908eaf9560e01b815260040160405180910390fd5b60cf5434146110d157604051636ac8a2bd60e01b815260040160405180910390fd5b6108ce838383336113db565b600061072560d4836111ba565b6110f2611160565b6001600160a01b0381166111575760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610945565b6109e281611389565b6097546001600160a01b03163314610dcb5760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610945565b6001600160a01b038116600090815260018301602052604081205415155b9392505050565b60006111d8836001600160a01b03841661152f565b6109e2611160565b7f4910fdfa16fed3260ed0e7147f7cc6da11a60208b5b9406d12a635614ffd91435460ff161561122f576108ce8361157e565b826001600160a01b03166352d1902d6040518163ffffffff1660e01b8152600401602060405180830381865afa925050508015611289575060408051601f3d908101601f1916820190925261128691810190611fb0565b60015b6112ec5760405162461bcd60e51b815260206004820152602e60248201527f45524331393637557067726164653a206e657720696d706c656d656e7461746960448201526d6f6e206973206e6f74205555505360901b6064820152608401610945565b60008051602061220f833981519152811461135b5760405162461bcd60e51b815260206004820152602960248201527f45524331393637557067726164653a20756e737570706f727465642070726f786044820152681a58589b195555525160ba1b6064820152608401610945565b506108ce83838361161a565b60006111d8836001600160a01b03841661163f565b606060006111d883611732565b609780546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b60c95460405163e91a543d60e01b815260009182916001600160a01b039091169063e91a543d906114169089908990899089906004016120f4565b60408051808303816000875af1158015611434573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114589190612147565b909250905061146860d2836111df565b506001600160a01b03828116600081815260d1602090815260409182902080546001600160a01b03191686861690811790915591519182524393871692917fe34dae00e70f12d756207784cbbdd05e5cbd5c00afc6ab8f69c073c7008a8dac910160405180910390a4505050505050565b600054610100900460ff166115005760405162461bcd60e51b815260040161094590612176565b610dcb61178e565b600054610100900460ff16610dcb5760405162461bcd60e51b815260040161094590612176565b600081815260018301602052604081205461157657508154600181810184556000848152602080822090930184905584548482528286019093526040902091909155610725565b506000610725565b6001600160a01b0381163b6115eb5760405162461bcd60e51b815260206004820152602d60248201527f455243313936373a206e657720696d706c656d656e746174696f6e206973206e60448201526c1bdd08184818dbdb9d1c9858dd609a1b6064820152608401610945565b60008051602061220f83398151915280546001600160a01b0319166001600160a01b0392909216919091179055565b611623836117be565b6000825111806116305750805b156108ce57610b3683836117fe565b600081815260018301602052604081205480156117285760006116636001836121c1565b8554909150600090611677906001906121c1565b90508181146116dc576000866000018281548110611697576116976121e2565b90600052602060002001549050808760000184815481106116ba576116ba6121e2565b6000918252602080832090910192909255918252600188019052604090208390555b85548690806116ed576116ed6121f8565b600190038181906000526020600020016000905590558560010160008681526020019081526020016000206000905560019350505050610725565b6000915050610725565b60608160000180548060200260200160405190810160405280929190818152602001828054801561178257602002820191906000526020600020905b81548152602001906001019080831161176e575b50505050509050919050565b600054610100900460ff166117b55760405162461bcd60e51b815260040161094590612176565b610dcb33611389565b6117c78161157e565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b60606001600160a01b0383163b6118665760405162461bcd60e51b815260206004820152602660248201527f416464726573733a2064656c65676174652063616c6c20746f206e6f6e2d636f6044820152651b9d1c9858dd60d21b6064820152608401610945565b600080846001600160a01b0316846040516118819190611edf565b600060405180830381855af49150503d80600081146118bc576040519150601f19603f3d011682016040523d82523d6000602084013e6118c1565b606091505b50915091506118e9828260405180606001604052806027815260200161222f602791396118f2565b95945050505050565b606083156119015750816111d8565b6111d883838151156119165781518083602001fd5b8060405162461bcd60e51b81526004016109459190611c2a565b60006020828403121561194257600080fd5b81356001600160e01b0319811681146111d857600080fd5b6001600160a01b03811681146109e257600080fd5b60006020828403121561198157600080fd5b81356111d88161195a565b6000806040838503121561199f57600080fd5b82356119aa8161195a565b915060208301356119ba8161195a565b809150509250929050565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f1916810167ffffffffffffffff81118282101715611a0457611a046119c5565b604052919050565b600067ffffffffffffffff821115611a2657611a266119c5565b50601f01601f191660200190565b6000611a47611a4284611a0c565b6119db565b9050828152838383011115611a5b57600080fd5b828260208301376000602084830101529392505050565b600082601f830112611a8357600080fd5b6111d883833560208501611a34565b600060208284031215611aa457600080fd5b813567ffffffffffffffff811115611abb57600080fd5b611ac784828501611a72565b949350505050565b6020808252825182820181905260009190848201906040850190845b81811015611b105783516001600160a01b031683529284019291840191600101611aeb565b50909695505050505050565b600080600060608486031215611b3157600080fd5b8335611b3c8161195a565b92506020840135611b4c8161195a565b929592945050506040919091013590565b60008060408385031215611b7057600080fd5b8235611b7b8161195a565b9150602083013567ffffffffffffffff811115611b9757600080fd5b8301601f81018513611ba857600080fd5b611bb785823560208401611a34565b9150509250929050565b600060208284031215611bd357600080fd5b5035919050565b60005b83811015611bf5578181015183820152602001611bdd565b50506000910152565b60008151808452611c16816020860160208601611bda565b601f01601f19169290920160200192915050565b6020815260006111d86020830184611bfe565b60008060008060808587031215611c5357600080fd5b843567ffffffffffffffff80821115611c6b57600080fd5b611c7788838901611a72565b95506020870135915080821115611c8d57600080fd5b611c9988838901611a72565b94506040870135915080821115611caf57600080fd5b50611cbc87828801611a72565b9250506060850135611ccd8161195a565b939692955090935050565b80151581146109e257600080fd5b60008060408385031215611cf957600080fd5b8235611d048161195a565b915060208301356119ba81611cd8565b60008060408385031215611d2757600080fd5b8235915060208301356119ba8161195a565b600080600060608486031215611d4e57600080fd5b833567ffffffffffffffff80821115611d6657600080fd5b611d7287838801611a72565b94506020860135915080821115611d8857600080fd5b611d9487838801611a72565b93506040860135915080821115611daa57600080fd5b50611db786828701611a72565b9150509250925092565b600181811c90821680611dd557607f821691505b602082108103611df557634e487b7160e01b600052602260045260246000fd5b50919050565b6000808354611e0981611dc1565b60018281168015611e215760018114611e3657611e65565b60ff1984168752821515830287019450611e65565b8760005260208060002060005b85811015611e5c5781548a820152908401908201611e43565b50505082870194505b50929695505050505050565b600060208284031215611e8357600080fd5b815167ffffffffffffffff811115611e9a57600080fd5b8201601f81018413611eab57600080fd5b8051611eb9611a4282611a0c565b818152856020838501011115611ece57600080fd5b6118e9826020830160208601611bda565b60008251611ef1818460208701611bda565b9190910192915050565b600060208284031215611f0d57600080fd5b81516111d88161195a565b6020808252602c908201527f46756e6374696f6e206d7573742062652063616c6c6564207468726f7567682060408201526b19195b1959d85d1958d85b1b60a21b606082015260800190565b6020808252602c908201527f46756e6374696f6e206d7573742062652063616c6c6564207468726f7567682060408201526b6163746976652070726f787960a01b606082015260800190565b600060208284031215611fc257600080fd5b5051919050565b600060208284031215611fdb57600080fd5b81516111d881611cd8565b601f8211156108ce57600081815260208120601f850160051c8101602086101561200d5750805b601f850160051c820191505b8181101561202c57828155600101612019565b505050505050565b815167ffffffffffffffff81111561204e5761204e6119c5565b6120628161205c8454611dc1565b84611fe6565b602080601f831160018114612097576000841561207f5750858301515b600019600386901b1c1916600185901b17855561202c565b600085815260208120601f198616915b828110156120c6578886015182559484019460019091019084016120a7565b50858210156120e45787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b6080815260006121076080830187611bfe565b82810360208401526121198187611bfe565b9050828103604084015261212d8186611bfe565b91505060018060a01b038316606083015295945050505050565b6000806040838503121561215a57600080fd5b82516121658161195a565b60208401519092506119ba8161195a565b6020808252602b908201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960408201526a6e697469616c697a696e6760a81b606082015260800190565b8181038181111561072557634e487b7160e01b600052601160045260246000fd5b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052603160045260246000fdfe360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564312e302e322d626574612e302b666f622e7273762e6956656e75655265676973746172a2646970667358221220d2a3d0c1ccc0a03fb7cfcb9efe78682226f3dcb7040efa0cbc85c8b7b201545c64736f6c63430008110033",
  "linkReferences": {},
  "deployedLinkReferences": {}
}
