{
  "_format": "hh-sol-artifact-1",
  "contractName": "MoraMaker",
  "sourceName": "contracts/MoraMaker.sol",
  "abi": [
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "_factory",
          "type": "address"
        },
        {
          "internalType": "address",
          "name": "_xmora",
          "type": "address"
        },
        {
          "internalType": "address",
          "name": "_mora",
          "type": "address"
        },
        {
          "internalType": "address",
          "name": "_weth",
          "type": "address"
        }
      ],
      "stateMutability": "nonpayable",
      "type": "constructor"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": true,
          "internalType": "address",
          "name": "token",
          "type": "address"
        },
        {
          "indexed": true,
          "internalType": "address",
          "name": "bridge",
          "type": "address"
        }
      ],
      "name": "LogBridgeSet",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": true,
          "internalType": "address",
          "name": "server",
          "type": "address"
        },
        {
          "indexed": true,
          "internalType": "address",
          "name": "token0",
          "type": "address"
        },
        {
          "indexed": true,
          "internalType": "address",
          "name": "token1",
          "type": "address"
        },
        {
          "indexed": false,
          "internalType": "uint256",
          "name": "amount0",
          "type": "uint256"
        },
        {
          "indexed": false,
          "internalType": "uint256",
          "name": "amount1",
          "type": "uint256"
        },
        {
          "indexed": false,
          "internalType": "uint256",
          "name": "amountMORA",
          "type": "uint256"
        }
      ],
      "name": "LogConvert",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": true,
          "internalType": "address",
          "name": "server",
          "type": "address"
        },
        {
          "indexed": true,
          "internalType": "address",
          "name": "token",
          "type": "address"
        },
        {
          "indexed": false,
          "internalType": "uint256",
          "name": "amount",
          "type": "uint256"
        },
        {
          "indexed": false,
          "internalType": "uint256",
          "name": "amountMORA",
          "type": "uint256"
        }
      ],
      "name": "LogConvertSingleToken",
      "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"
    },
    {
      "inputs": [],
      "name": "boughtMora",
      "outputs": [
        {
          "internalType": "uint256",
          "name": "",
          "type": "uint256"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "token",
          "type": "address"
        }
      ],
      "name": "bridgeFor",
      "outputs": [
        {
          "internalType": "address",
          "name": "bridge",
          "type": "address"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "claimOwnership",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "token0",
          "type": "address"
        },
        {
          "internalType": "address",
          "name": "token1",
          "type": "address"
        }
      ],
      "name": "convert",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "address[]",
          "name": "token0",
          "type": "address[]"
        },
        {
          "internalType": "address[]",
          "name": "token1",
          "type": "address[]"
        }
      ],
      "name": "convertMultiple",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "address[]",
          "name": "token",
          "type": "address[]"
        }
      ],
      "name": "convertMultipleSingleToken",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "token",
          "type": "address"
        }
      ],
      "name": "convertSingleToken",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "factory",
      "outputs": [
        {
          "internalType": "contract IMoraswapV2Factory",
          "name": "",
          "type": "address"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "owner",
      "outputs": [
        {
          "internalType": "address",
          "name": "",
          "type": "address"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "pendingOwner",
      "outputs": [
        {
          "internalType": "address",
          "name": "",
          "type": "address"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "token",
          "type": "address"
        },
        {
          "internalType": "address",
          "name": "bridge",
          "type": "address"
        }
      ],
      "name": "setBridge",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "newOwner",
          "type": "address"
        },
        {
          "internalType": "bool",
          "name": "direct",
          "type": "bool"
        },
        {
          "internalType": "bool",
          "name": "renounce",
          "type": "bool"
        }
      ],
      "name": "transferOwnership",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "xmora",
      "outputs": [
        {
          "internalType": "address",
          "name": "",
          "type": "address"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "stateMutability": "payable",
      "type": "receive"
    }
  ],
  "bytecode": "0x6101006040523480156200001257600080fd5b5060405162001d0138038062001d018339810160408190526200003591620000c1565b600080546001600160a01b0319163390811782556040519091907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a36001600160601b0319606094851b811660805292841b831660a05290831b821660c05290911b1660e0526200011e565b80516001600160a01b0381168114620000bc57600080fd5b919050565b60008060008060808587031215620000d857600080fd5b620000e385620000a4565b9350620000f360208601620000a4565b92506200010360408601620000a4565b91506200011360608601620000a4565b905092959194509250565b60805160601c60a05160601c60c05160601c60e05160601c611afd620002046000396000818160d6015281816105f40152818161070d01528181610eb201528181610eef01528181611094015281816110d1015281816110fa0152818161112701528181611164015261118d0152600081816105b701528181610c7601528181610e1c01528181610e6101528181610f4f01528181610f9401528181610ff8015261103d0152600081816101ce01528181610c9801528181610e8301528181610fb6015261105f0152600081816102660152818161099d015261128d0152611afd6000f3fe6080604052600436106100c65760003560e01c8063a761a9391161007f578063c45a015511610059578063c45a015514610254578063cc3ea33d14610288578063ddc17321146102a8578063e30c3978146102c857600080fd5b8063a761a939146101f0578063b06c862514610210578063bd1b820c1461023457600080fd5b8063078dfbe71461010a578063303e6aa41461012a5780634e71e0c81461014a5780638da5cb5b1461015f5780639d22ae8c1461019c5780639ef9e831146101bc57600080fd5b3661010557336001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000161461010357610103611a5f565b005b600080fd5b34801561011657600080fd5b506101036101253660046117a8565b6102e8565b34801561013657600080fd5b50610103610145366004611835565b610422565b34801561015657600080fd5b5061010361049e565b34801561016b57600080fd5b5060005461017f906001600160a01b031681565b6040516001600160a01b0390911681526020015b60405180910390f35b3480156101a857600080fd5b506101036101b736600461176f565b61055b565b3480156101c857600080fd5b5061017f7f000000000000000000000000000000000000000000000000000000000000000081565b3480156101fc57600080fd5b5061017f61020b36600461172e565b6106ea565b34801561021c57600080fd5b5061022660025481565b604051908152602001610193565b34801561024057600080fd5b5061010361024f36600461176f565b610732565b34801561026057600080fd5b5061017f7f000000000000000000000000000000000000000000000000000000000000000081565b34801561029457600080fd5b506101036102a33660046117f3565b610740565b3480156102b457600080fd5b506101036102c336600461172e565b6108a4565b3480156102d457600080fd5b5060015461017f906001600160a01b031681565b6000546001600160a01b031633146103475760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064015b60405180910390fd5b8115610400576001600160a01b0383161515806103615750805b6103a55760405162461bcd60e51b81526020600482015260156024820152744f776e61626c653a207a65726f206164647265737360581b604482015260640161033e565b600080546040516001600160a01b03808716939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0385166001600160a01b0319909116179055505050565b600180546001600160a01b0385166001600160a01b0319909116179055505050565b8260005b818110156104965761048486868381811061044357610443611a8b565b9050602002016020810190610458919061172e565b85858481811061046a5761046a611a8b565b905060200201602081019061047f919061172e565b610973565b8061048e81611a44565b915050610426565b505050505050565b6001546001600160a01b03163381146104f95760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c657220213d2070656e64696e67206f776e6572604482015260640161033e565b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b039092166001600160a01b0319928316179055600180549091169055565b6000546001600160a01b031633146105b55760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640161033e565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316826001600160a01b03161415801561062957507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316826001600160a01b031614155b80156106475750806001600160a01b0316826001600160a01b031614155b6106935760405162461bcd60e51b815260206004820152601960248201527f4d6f72614d616b65723a20496e76616c69642062726964676500000000000000604482015260640161033e565b6001600160a01b0382811660008181526003602052604080822080546001600160a01b0319169486169485179055517f2e103aa707acc565f9a1547341914802b2bfe977fd79c595209f248ae4b006139190a35050565b6001600160a01b03808216600090815260036020526040902054168061072d57507f00000000000000000000000000000000000000000000000000000000000000005b919050565b61073c8282610973565b5050565b8060005b8181101561089e57600084848381811061076057610760611a8b565b9050602002016020810190610775919061172e565b6040516370a0823160e01b81523060048201526001600160a01b0391909116906370a082319060240160206040518083038186803b1580156107b657600080fd5b505afa1580156107ca573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107ee9190611903565b905084848381811061080257610802611a8b565b9050602002016020810190610817919061172e565b6001600160a01b0316337f0ba9afd832f8532ff2bca679e71c6d99a0a46b207624fb035b78c7b923df7a648361087389898881811061085857610858611a8b565b905060200201602081019061086d919061172e565b86610c6e565b6040805192835260208301919091520160405180910390a3508061089681611a44565b915050610744565b50505050565b6040516370a0823160e01b81523060048201526000906001600160a01b038316906370a082319060240160206040518083038186803b1580156108e657600080fd5b505afa1580156108fa573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061091e9190611903565b90506001600160a01b038216337f0ba9afd832f8532ff2bca679e71c6d99a0a46b207624fb035b78c7b923df7a64836109578682610c6e565b6040805192835260208301919091520160405180910390a35050565b60405163e6a4390560e01b81526001600160a01b03838116600483015282811660248301526000917f00000000000000000000000000000000000000000000000000000000000000009091169063e6a439059060440160206040518083038186803b1580156109e157600080fd5b505afa1580156109f5573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a199190611752565b90506001600160a01b038116610a715760405162461bcd60e51b815260206004820152601760248201527f4d6f72614d616b65723a20496e76616c69642070616972000000000000000000604482015260640161033e565b6040516370a0823160e01b8152306004820152610aff9082906001600160a01b038216906370a082319060240160206040518083038186803b158015610ab657600080fd5b505afa158015610aca573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610aee9190611903565b6001600160a01b0384169190610cd5565b60405163226bf2d160e21b815230600482015260009081906001600160a01b038416906389afcb44906024016040805180830381600087803b158015610b4457600080fd5b505af1158015610b58573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b7c919061191c565b91509150826001600160a01b0316630dfe16816040518163ffffffff1660e01b815260040160206040518083038186803b158015610bb957600080fd5b505afa158015610bcd573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610bf19190611752565b6001600160a01b0316856001600160a01b031614610c0b57905b6001600160a01b03808516908616337fd06b1d7ed79b664d17472c6f6997b929f1abe463ccccb4e5b6a0038f2f730c158585610c498b8b8484610df0565b6040805193845260208401929092529082015260600160405180910390a45050505050565b6000610cbc837f0000000000000000000000000000000000000000000000000000000000000000847f0000000000000000000000000000000000000000000000000000000000000000611261565b600254909150610ccc90826115f7565b60025592915050565b604080516001600160a01b038481166024830152604480830185905283518084039091018152606490920183526020820180516001600160e01b031663a9059cbb60e01b1790529151600092839290871691610d31919061196c565b6000604051808303816000865af19150503d8060008114610d6e576040519150601f19603f3d011682016040523d82523d6000602084013e610d73565b606091505b5091509150818015610d9d575080511580610d9d575080806020019051810190610d9d91906118a1565b610de95760405162461bcd60e51b815260206004820152601c60248201527f426f72696e6745524332303a205472616e73666572206661696c656400000000604482015260640161033e565b5050505050565b6000836001600160a01b0316856001600160a01b03161415610f4d576000610e1884846115f7565b90507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316866001600160a01b03161415610eb057610ea86001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000167f000000000000000000000000000000000000000000000000000000000000000083610cd5565b809150610f47565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316866001600160a01b03161415610f1b57610f147f000000000000000000000000000000000000000000000000000000000000000082610c6e565b9150610f47565b6000610f26876106ea565b9050610f3487828430611261565b9150610f438182846000610df0565b9250505b50611259565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316856001600160a01b03161415610ff657610fdb6001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000167f000000000000000000000000000000000000000000000000000000000000000085610cd5565b610fef83610fe98685610c6e565b906115f7565b9050611259565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316846001600160a01b03161415611092576110846001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000167f000000000000000000000000000000000000000000000000000000000000000084610cd5565b610fef82610fe98786610c6e565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316856001600160a01b0316141561112557610fef7f000000000000000000000000000000000000000000000000000000000000000061112085610fe9887f00000000000000000000000000000000000000000000000000000000000000008830611261565b610c6e565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316846001600160a01b031614156111b357610fef7f000000000000000000000000000000000000000000000000000000000000000061112084610fe9897f00000000000000000000000000000000000000000000000000000000000000008930611261565b60006111be866106ea565b905060006111cb866106ea565b9050856001600160a01b0316826001600160a01b03161415611205576111fe82876111f88a868a30611261565b87610df0565b9250611256565b866001600160a01b0316816001600160a01b03161415611236576111fe8782876112318a868a30611261565b610df0565b61125382826112478a868a30611261565b6112318a868a30611261565b92505b50505b949350505050565b60405163e6a4390560e01b81526001600160a01b038581166004830152848116602483015260009182917f0000000000000000000000000000000000000000000000000000000000000000169063e6a439059060440160206040518083038186803b1580156112cf57600080fd5b505afa1580156112e3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906113079190611752565b90506001600160a01b03811661135f5760405162461bcd60e51b815260206004820152601960248201527f4d6f72614d616b65723a2043616e6e6f7420636f6e7665727400000000000000604482015260640161033e565b600080826001600160a01b0316630902f1ac6040518163ffffffff1660e01b815260040160606040518083038186803b15801561139b57600080fd5b505afa1580156113af573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906113d391906118be565b506001600160701b03918216935016905060006113f2876103e561165b565b9050836001600160a01b0316630dfe16816040518163ffffffff1660e01b815260040160206040518083038186803b15801561142d57600080fd5b505afa158015611441573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114659190611752565b6001600160a01b0316896001600160a01b0316141561153a5761148e81610fe9856103e861165b565b6114a48361149e8a6103e561165b565b9061165b565b6114ae91906119d7565b94506114c46001600160a01b038a168589610cd5565b604080516000808252602082019283905263022c0d9f60e01b9092526001600160a01b0386169163022c0d9f91611503919089908b9060248101611988565b600060405180830381600087803b15801561151d57600080fd5b505af1158015611531573d6000803e3d6000fd5b505050506115eb565b61154a81610fe9846103e861165b565b61155a8461149e8a6103e561165b565b61156491906119d7565b945061157a6001600160a01b038a168589610cd5565b604080516000808252602082019283905263022c0d9f60e01b9092526001600160a01b0386169163022c0d9f916115b89189918b9060248101611988565b600060405180830381600087803b1580156115d257600080fd5b505af11580156115e6573d6000803e3d6000fd5b505050505b50505050949350505050565b60008161160481856119bf565b91508110156116555760405162461bcd60e51b815260206004820152601860248201527f426f72696e674d6174683a20416464204f766572666c6f770000000000000000604482015260640161033e565b92915050565b600081158061167f5750828261167181836119f9565b925061167d90836119d7565b145b6116555760405162461bcd60e51b815260206004820152601860248201527f426f72696e674d6174683a204d756c204f766572666c6f770000000000000000604482015260640161033e565b60008083601f8401126116dd57600080fd5b50813567ffffffffffffffff8111156116f557600080fd5b6020830191508360208260051b850101111561171057600080fd5b9250929050565b80516001600160701b038116811461072d57600080fd5b60006020828403121561174057600080fd5b813561174b81611aa1565b9392505050565b60006020828403121561176457600080fd5b815161174b81611aa1565b6000806040838503121561178257600080fd5b823561178d81611aa1565b9150602083013561179d81611aa1565b809150509250929050565b6000806000606084860312156117bd57600080fd5b83356117c881611aa1565b925060208401356117d881611ab9565b915060408401356117e881611ab9565b809150509250925092565b6000806020838503121561180657600080fd5b823567ffffffffffffffff81111561181d57600080fd5b611829858286016116cb565b90969095509350505050565b6000806000806040858703121561184b57600080fd5b843567ffffffffffffffff8082111561186357600080fd5b61186f888389016116cb565b9096509450602087013591508082111561188857600080fd5b50611895878288016116cb565b95989497509550505050565b6000602082840312156118b357600080fd5b815161174b81611ab9565b6000806000606084860312156118d357600080fd5b6118dc84611717565b92506118ea60208501611717565b9150604084015163ffffffff811681146117e857600080fd5b60006020828403121561191557600080fd5b5051919050565b6000806040838503121561192f57600080fd5b505080516020909101519092909150565b60008151808452611958816020860160208601611a18565b601f01601f19169290920160200192915050565b6000825161197e818460208701611a18565b9190910192915050565b84815283602082015260018060a01b03831660408201526080606082015260006119b56080830184611940565b9695505050505050565b600082198211156119d2576119d2611a75565b500190565b6000826119f457634e487b7160e01b600052601260045260246000fd5b500490565b6000816000190483118215151615611a1357611a13611a75565b500290565b60005b83811015611a33578181015183820152602001611a1b565b8381111561089e5750506000910152565b6000600019821415611a5857611a58611a75565b5060010190565b634e487b7160e01b600052600160045260246000fd5b634e487b7160e01b600052601160045260246000fd5b634e487b7160e01b600052603260045260246000fd5b6001600160a01b0381168114611ab657600080fd5b50565b8015158114611ab657600080fdfea26469706673582212209530768b2b6916fd334fa4f6d76724b142b04376617e9ed9271b1ff8f61641ff64736f6c63430008070033",
  "deployedBytecode": "0x6080604052600436106100c65760003560e01c8063a761a9391161007f578063c45a015511610059578063c45a015514610254578063cc3ea33d14610288578063ddc17321146102a8578063e30c3978146102c857600080fd5b8063a761a939146101f0578063b06c862514610210578063bd1b820c1461023457600080fd5b8063078dfbe71461010a578063303e6aa41461012a5780634e71e0c81461014a5780638da5cb5b1461015f5780639d22ae8c1461019c5780639ef9e831146101bc57600080fd5b3661010557336001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000161461010357610103611a5f565b005b600080fd5b34801561011657600080fd5b506101036101253660046117a8565b6102e8565b34801561013657600080fd5b50610103610145366004611835565b610422565b34801561015657600080fd5b5061010361049e565b34801561016b57600080fd5b5060005461017f906001600160a01b031681565b6040516001600160a01b0390911681526020015b60405180910390f35b3480156101a857600080fd5b506101036101b736600461176f565b61055b565b3480156101c857600080fd5b5061017f7f000000000000000000000000000000000000000000000000000000000000000081565b3480156101fc57600080fd5b5061017f61020b36600461172e565b6106ea565b34801561021c57600080fd5b5061022660025481565b604051908152602001610193565b34801561024057600080fd5b5061010361024f36600461176f565b610732565b34801561026057600080fd5b5061017f7f000000000000000000000000000000000000000000000000000000000000000081565b34801561029457600080fd5b506101036102a33660046117f3565b610740565b3480156102b457600080fd5b506101036102c336600461172e565b6108a4565b3480156102d457600080fd5b5060015461017f906001600160a01b031681565b6000546001600160a01b031633146103475760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064015b60405180910390fd5b8115610400576001600160a01b0383161515806103615750805b6103a55760405162461bcd60e51b81526020600482015260156024820152744f776e61626c653a207a65726f206164647265737360581b604482015260640161033e565b600080546040516001600160a01b03808716939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0385166001600160a01b0319909116179055505050565b600180546001600160a01b0385166001600160a01b0319909116179055505050565b8260005b818110156104965761048486868381811061044357610443611a8b565b9050602002016020810190610458919061172e565b85858481811061046a5761046a611a8b565b905060200201602081019061047f919061172e565b610973565b8061048e81611a44565b915050610426565b505050505050565b6001546001600160a01b03163381146104f95760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c657220213d2070656e64696e67206f776e6572604482015260640161033e565b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b039092166001600160a01b0319928316179055600180549091169055565b6000546001600160a01b031633146105b55760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015260640161033e565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316826001600160a01b03161415801561062957507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316826001600160a01b031614155b80156106475750806001600160a01b0316826001600160a01b031614155b6106935760405162461bcd60e51b815260206004820152601960248201527f4d6f72614d616b65723a20496e76616c69642062726964676500000000000000604482015260640161033e565b6001600160a01b0382811660008181526003602052604080822080546001600160a01b0319169486169485179055517f2e103aa707acc565f9a1547341914802b2bfe977fd79c595209f248ae4b006139190a35050565b6001600160a01b03808216600090815260036020526040902054168061072d57507f00000000000000000000000000000000000000000000000000000000000000005b919050565b61073c8282610973565b5050565b8060005b8181101561089e57600084848381811061076057610760611a8b565b9050602002016020810190610775919061172e565b6040516370a0823160e01b81523060048201526001600160a01b0391909116906370a082319060240160206040518083038186803b1580156107b657600080fd5b505afa1580156107ca573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107ee9190611903565b905084848381811061080257610802611a8b565b9050602002016020810190610817919061172e565b6001600160a01b0316337f0ba9afd832f8532ff2bca679e71c6d99a0a46b207624fb035b78c7b923df7a648361087389898881811061085857610858611a8b565b905060200201602081019061086d919061172e565b86610c6e565b6040805192835260208301919091520160405180910390a3508061089681611a44565b915050610744565b50505050565b6040516370a0823160e01b81523060048201526000906001600160a01b038316906370a082319060240160206040518083038186803b1580156108e657600080fd5b505afa1580156108fa573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061091e9190611903565b90506001600160a01b038216337f0ba9afd832f8532ff2bca679e71c6d99a0a46b207624fb035b78c7b923df7a64836109578682610c6e565b6040805192835260208301919091520160405180910390a35050565b60405163e6a4390560e01b81526001600160a01b03838116600483015282811660248301526000917f00000000000000000000000000000000000000000000000000000000000000009091169063e6a439059060440160206040518083038186803b1580156109e157600080fd5b505afa1580156109f5573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a199190611752565b90506001600160a01b038116610a715760405162461bcd60e51b815260206004820152601760248201527f4d6f72614d616b65723a20496e76616c69642070616972000000000000000000604482015260640161033e565b6040516370a0823160e01b8152306004820152610aff9082906001600160a01b038216906370a082319060240160206040518083038186803b158015610ab657600080fd5b505afa158015610aca573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610aee9190611903565b6001600160a01b0384169190610cd5565b60405163226bf2d160e21b815230600482015260009081906001600160a01b038416906389afcb44906024016040805180830381600087803b158015610b4457600080fd5b505af1158015610b58573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b7c919061191c565b91509150826001600160a01b0316630dfe16816040518163ffffffff1660e01b815260040160206040518083038186803b158015610bb957600080fd5b505afa158015610bcd573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610bf19190611752565b6001600160a01b0316856001600160a01b031614610c0b57905b6001600160a01b03808516908616337fd06b1d7ed79b664d17472c6f6997b929f1abe463ccccb4e5b6a0038f2f730c158585610c498b8b8484610df0565b6040805193845260208401929092529082015260600160405180910390a45050505050565b6000610cbc837f0000000000000000000000000000000000000000000000000000000000000000847f0000000000000000000000000000000000000000000000000000000000000000611261565b600254909150610ccc90826115f7565b60025592915050565b604080516001600160a01b038481166024830152604480830185905283518084039091018152606490920183526020820180516001600160e01b031663a9059cbb60e01b1790529151600092839290871691610d31919061196c565b6000604051808303816000865af19150503d8060008114610d6e576040519150601f19603f3d011682016040523d82523d6000602084013e610d73565b606091505b5091509150818015610d9d575080511580610d9d575080806020019051810190610d9d91906118a1565b610de95760405162461bcd60e51b815260206004820152601c60248201527f426f72696e6745524332303a205472616e73666572206661696c656400000000604482015260640161033e565b5050505050565b6000836001600160a01b0316856001600160a01b03161415610f4d576000610e1884846115f7565b90507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316866001600160a01b03161415610eb057610ea86001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000167f000000000000000000000000000000000000000000000000000000000000000083610cd5565b809150610f47565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316866001600160a01b03161415610f1b57610f147f000000000000000000000000000000000000000000000000000000000000000082610c6e565b9150610f47565b6000610f26876106ea565b9050610f3487828430611261565b9150610f438182846000610df0565b9250505b50611259565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316856001600160a01b03161415610ff657610fdb6001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000167f000000000000000000000000000000000000000000000000000000000000000085610cd5565b610fef83610fe98685610c6e565b906115f7565b9050611259565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316846001600160a01b03161415611092576110846001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000167f000000000000000000000000000000000000000000000000000000000000000084610cd5565b610fef82610fe98786610c6e565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316856001600160a01b0316141561112557610fef7f000000000000000000000000000000000000000000000000000000000000000061112085610fe9887f00000000000000000000000000000000000000000000000000000000000000008830611261565b610c6e565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316846001600160a01b031614156111b357610fef7f000000000000000000000000000000000000000000000000000000000000000061112084610fe9897f00000000000000000000000000000000000000000000000000000000000000008930611261565b60006111be866106ea565b905060006111cb866106ea565b9050856001600160a01b0316826001600160a01b03161415611205576111fe82876111f88a868a30611261565b87610df0565b9250611256565b866001600160a01b0316816001600160a01b03161415611236576111fe8782876112318a868a30611261565b610df0565b61125382826112478a868a30611261565b6112318a868a30611261565b92505b50505b949350505050565b60405163e6a4390560e01b81526001600160a01b038581166004830152848116602483015260009182917f0000000000000000000000000000000000000000000000000000000000000000169063e6a439059060440160206040518083038186803b1580156112cf57600080fd5b505afa1580156112e3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906113079190611752565b90506001600160a01b03811661135f5760405162461bcd60e51b815260206004820152601960248201527f4d6f72614d616b65723a2043616e6e6f7420636f6e7665727400000000000000604482015260640161033e565b600080826001600160a01b0316630902f1ac6040518163ffffffff1660e01b815260040160606040518083038186803b15801561139b57600080fd5b505afa1580156113af573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906113d391906118be565b506001600160701b03918216935016905060006113f2876103e561165b565b9050836001600160a01b0316630dfe16816040518163ffffffff1660e01b815260040160206040518083038186803b15801561142d57600080fd5b505afa158015611441573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114659190611752565b6001600160a01b0316896001600160a01b0316141561153a5761148e81610fe9856103e861165b565b6114a48361149e8a6103e561165b565b9061165b565b6114ae91906119d7565b94506114c46001600160a01b038a168589610cd5565b604080516000808252602082019283905263022c0d9f60e01b9092526001600160a01b0386169163022c0d9f91611503919089908b9060248101611988565b600060405180830381600087803b15801561151d57600080fd5b505af1158015611531573d6000803e3d6000fd5b505050506115eb565b61154a81610fe9846103e861165b565b61155a8461149e8a6103e561165b565b61156491906119d7565b945061157a6001600160a01b038a168589610cd5565b604080516000808252602082019283905263022c0d9f60e01b9092526001600160a01b0386169163022c0d9f916115b89189918b9060248101611988565b600060405180830381600087803b1580156115d257600080fd5b505af11580156115e6573d6000803e3d6000fd5b505050505b50505050949350505050565b60008161160481856119bf565b91508110156116555760405162461bcd60e51b815260206004820152601860248201527f426f72696e674d6174683a20416464204f766572666c6f770000000000000000604482015260640161033e565b92915050565b600081158061167f5750828261167181836119f9565b925061167d90836119d7565b145b6116555760405162461bcd60e51b815260206004820152601860248201527f426f72696e674d6174683a204d756c204f766572666c6f770000000000000000604482015260640161033e565b60008083601f8401126116dd57600080fd5b50813567ffffffffffffffff8111156116f557600080fd5b6020830191508360208260051b850101111561171057600080fd5b9250929050565b80516001600160701b038116811461072d57600080fd5b60006020828403121561174057600080fd5b813561174b81611aa1565b9392505050565b60006020828403121561176457600080fd5b815161174b81611aa1565b6000806040838503121561178257600080fd5b823561178d81611aa1565b9150602083013561179d81611aa1565b809150509250929050565b6000806000606084860312156117bd57600080fd5b83356117c881611aa1565b925060208401356117d881611ab9565b915060408401356117e881611ab9565b809150509250925092565b6000806020838503121561180657600080fd5b823567ffffffffffffffff81111561181d57600080fd5b611829858286016116cb565b90969095509350505050565b6000806000806040858703121561184b57600080fd5b843567ffffffffffffffff8082111561186357600080fd5b61186f888389016116cb565b9096509450602087013591508082111561188857600080fd5b50611895878288016116cb565b95989497509550505050565b6000602082840312156118b357600080fd5b815161174b81611ab9565b6000806000606084860312156118d357600080fd5b6118dc84611717565b92506118ea60208501611717565b9150604084015163ffffffff811681146117e857600080fd5b60006020828403121561191557600080fd5b5051919050565b6000806040838503121561192f57600080fd5b505080516020909101519092909150565b60008151808452611958816020860160208601611a18565b601f01601f19169290920160200192915050565b6000825161197e818460208701611a18565b9190910192915050565b84815283602082015260018060a01b03831660408201526080606082015260006119b56080830184611940565b9695505050505050565b600082198211156119d2576119d2611a75565b500190565b6000826119f457634e487b7160e01b600052601260045260246000fd5b500490565b6000816000190483118215151615611a1357611a13611a75565b500290565b60005b83811015611a33578181015183820152602001611a1b565b8381111561089e5750506000910152565b6000600019821415611a5857611a58611a75565b5060010190565b634e487b7160e01b600052600160045260246000fd5b634e487b7160e01b600052601160045260246000fd5b634e487b7160e01b600052603260045260246000fd5b6001600160a01b0381168114611ab657600080fd5b50565b8015158114611ab657600080fdfea26469706673582212209530768b2b6916fd334fa4f6d76724b142b04376617e9ed9271b1ff8f61641ff64736f6c63430008070033",
  "linkReferences": {},
  "deployedLinkReferences": {}
}
