{
  "_format": "hh-sol-artifact-1",
  "contractName": "TattooRoll",
  "sourceName": "contracts/TattooRoll.sol",
  "abi": [
    {
      "inputs": [
        {
          "internalType": "contract IUniswapV2Router01",
          "name": "_oldRouter",
          "type": "address"
        },
        {
          "internalType": "contract IUniswapV2Router01",
          "name": "_router",
          "type": "address"
        }
      ],
      "stateMutability": "nonpayable",
      "type": "constructor"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "tokenA",
          "type": "address"
        },
        {
          "internalType": "address",
          "name": "tokenB",
          "type": "address"
        },
        {
          "internalType": "uint256",
          "name": "liquidity",
          "type": "uint256"
        },
        {
          "internalType": "uint256",
          "name": "amountAMin",
          "type": "uint256"
        },
        {
          "internalType": "uint256",
          "name": "amountBMin",
          "type": "uint256"
        },
        {
          "internalType": "uint256",
          "name": "deadline",
          "type": "uint256"
        }
      ],
      "name": "migrate",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "tokenA",
          "type": "address"
        },
        {
          "internalType": "address",
          "name": "tokenB",
          "type": "address"
        },
        {
          "internalType": "uint256",
          "name": "liquidity",
          "type": "uint256"
        },
        {
          "internalType": "uint256",
          "name": "amountAMin",
          "type": "uint256"
        },
        {
          "internalType": "uint256",
          "name": "amountBMin",
          "type": "uint256"
        },
        {
          "internalType": "uint256",
          "name": "deadline",
          "type": "uint256"
        },
        {
          "internalType": "uint8",
          "name": "v",
          "type": "uint8"
        },
        {
          "internalType": "bytes32",
          "name": "r",
          "type": "bytes32"
        },
        {
          "internalType": "bytes32",
          "name": "s",
          "type": "bytes32"
        }
      ],
      "name": "migrateWithPermit",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "oldRouter",
      "outputs": [
        {
          "internalType": "contract IUniswapV2Router01",
          "name": "",
          "type": "address"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "router",
      "outputs": [
        {
          "internalType": "contract IUniswapV2Router01",
          "name": "",
          "type": "address"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    }
  ],
  "bytecode": "0x608060405234801561001057600080fd5b5060405161116a38038061116a8339818101604052604081101561003357600080fd5b508051602090910151600080546001600160a01b039384166001600160a01b031991821617909155600180549390921692169190911790556110f08061007a6000396000f3fe608060405234801561001057600080fd5b506004361061004c5760003560e01c8063396ac32814610051578063964c1f98146100b2578063aac55b39146100d6578063f887ea401461011e575b600080fd5b6100b0600480360361012081101561006857600080fd5b506001600160a01b03813581169160208101359091169060408101359060608101359060808101359060a08101359060ff60c0820135169060e0810135906101000135610126565b005b6100ba6101da565b604080516001600160a01b039092168252519081900360200190f35b6100b0600480360360c08110156100ec57600080fd5b506001600160a01b03813581169160208101359091169060408101359060608101359060808101359060a001356101e9565b6100ba610298565b60006101328a8a6102a7565b6040805163d505accf60e01b8152336004820152306024820152604481018b90526064810188905260ff8716608482015260a4810186905260c4810185905290519192506001600160a01b0383169163d505accf9160e48082019260009290919082900301818387803b1580156101a857600080fd5b505af11580156101bc573d6000803e3d6000fd5b505050506101ce8a8a8a8a8a8a6101e9565b50505050505050505050565b6000546001600160a01b031681565b42811015610234576040805162461bcd60e51b815260206004820152601360248201527215185d1d1bdbd4ddd85c0e8811561412549151606a1b604482015290519081900360640190fd5b6000806102458888888888886103dd565b915091506000806102588a8a86866105b9565b915091508184111561027a5761027a6001600160a01b038b16338487036106f7565b808311156101ce576101ce6001600160a01b038a16338386036106f7565b6001546001600160a01b031681565b60008060006102b6858561074e565b9150915060008054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b815260040160206040518083038186803b15801561030657600080fd5b505afa15801561031a573d6000803e3d6000fd5b505050506040513d602081101561033057600080fd5b5051604080516bffffffffffffffffffffffff19606095861b811660208381019190915294861b81166034830152825160288184030181526048830184528051908601206001600160f81b031960688401529390951b9094166069850152607d8401919091527f96e8ac4277198ff8b6f785478aa9a39f403cb768dd02cbee326c3e7da348845f609d808501919091528151808503909101815260bd909301905281519101209392505050565b60008060006103ec89896102a7565b604080516323b872dd60e01b81523360048201526001600160a01b03831660248201819052604482018b9052915192935090916323b872dd916064808201926020929091908290030181600087803b15801561044757600080fd5b505af115801561045b573d6000803e3d6000fd5b505050506040513d602081101561047157600080fd5b50506040805163226bf2d160e21b8152306004820152815160009283926001600160a01b038616926389afcb449260248084019391929182900301818787803b1580156104bd57600080fd5b505af11580156104d1573d6000803e3d6000fd5b505050506040513d60408110156104e757600080fd5b508051602090910151909250905060006105018c8c61074e565b509050806001600160a01b03168c6001600160a01b031614610524578183610527565b82825b90965094508886101561056b5760405162461bcd60e51b8152600401808060200182810382526021815260200180610fd86021913960400191505060405180910390fd5b878510156105aa5760405162461bcd60e51b8152600401808060200182810382526021815260200180610fb76021913960400191505060405180910390fd5b50505050965096945050505050565b6000806105c88686868661082c565b6001546040805163c45a015560e01b8152905193955091935060009261064c926001600160a01b039092169163c45a0155916004808301926020929190829003018186803b15801561061957600080fd5b505afa15801561062d573d6000803e3d6000fd5b505050506040513d602081101561064357600080fd5b50518888610a49565b90506106626001600160a01b03881682856106f7565b6106766001600160a01b03871682846106f7565b604080516335313c2160e11b815233600482015290516001600160a01b03831691636a6278429160248083019260209291908290030181600087803b1580156106be57600080fd5b505af11580156106d2573d6000803e3d6000fd5b505050506040513d60208110156106e857600080fd5b50929791965090945050505050565b604080516001600160a01b038416602482015260448082018490528251808303909101815260649091019091526020810180516001600160e01b031663a9059cbb60e01b179052610749908490610b09565b505050565b600080826001600160a01b0316846001600160a01b031614156107a25760405162461bcd60e51b8152600401808060200182810382526025815260200180610ff96025913960400191505060405180910390fd5b826001600160a01b0316846001600160a01b0316106107c25782846107c5565b83835b90925090506001600160a01b038216610825576040805162461bcd60e51b815260206004820152601e60248201527f556e697377617056324c6962726172793a205a45524f5f414444524553530000604482015290519081900360640190fd5b9250929050565b6000806000600160009054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b815260040160206040518083038186803b15801561087f57600080fd5b505afa158015610893573d6000803e3d6000fd5b505050506040513d60208110156108a957600080fd5b50516040805163e6a4390560e01b81526001600160a01b038a81166004830152898116602483015291519293506000929184169163e6a4390591604480820192602092909190829003018186803b15801561090357600080fd5b505afa158015610917573d6000803e3d6000fd5b505050506040513d602081101561092d57600080fd5b50516001600160a01b031614156109cb57806001600160a01b031663c9c6539688886040518363ffffffff1660e01b815260040180836001600160a01b03168152602001826001600160a01b0316815260200192505050602060405180830381600087803b15801561099e57600080fd5b505af11580156109b2573d6000803e3d6000fd5b505050506040513d60208110156109c857600080fd5b50505b6000806109d9838a8a610bba565b915091508160001480156109eb575080155b156109fb57869450859350610a3d565b6000610a08888484610c88565b9050868111610a1c57879550935083610a3b565b6000610a29888486610c88565b905088811115610a3557fe5b95508694505b505b50505094509492505050565b6000806000610a58858561074e565b604080516bffffffffffffffffffffffff19606094851b811660208084019190915293851b81166034830152825160288184030181526048830184528051908501206001600160f81b031960688401529a90941b9093166069840152607d8301989098527faa06c396b78f809ef5b3a521735653d5d72e593663614a733e9780980a0e0b7a609d808401919091528851808403909101815260bd909201909752805196019590952095945050505050565b6060610b5e826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b0316610d2e9092919063ffffffff16565b80519091501561074957808060200190516020811015610b7d57600080fd5b50516107495760405162461bcd60e51b815260040180806020018281038252602a815260200180611091602a913960400191505060405180910390fd5b6000806000610bc9858561074e565b509050600080610bda888888610a49565b6001600160a01b0316630902f1ac6040518163ffffffff1660e01b815260040160606040518083038186803b158015610c1257600080fd5b505afa158015610c26573d6000803e3d6000fd5b505050506040513d6060811015610c3c57600080fd5b5080516020909101516dffffffffffffffffffffffffffff91821693501690506001600160a01b0387811690841614610c76578082610c79565b81815b90999098509650505050505050565b6000808411610cc85760405162461bcd60e51b815260040180806020018281038252602581526020018061106c6025913960400191505060405180910390fd5b600083118015610cd85750600082115b610d135760405162461bcd60e51b81526004018080602001828103825260288152602001806110446028913960400191505060405180910390fd5b82610d1e8584610d47565b81610d2557fe5b04949350505050565b6060610d3d8484600085610db0565b90505b9392505050565b6000811580610d6257505080820282828281610d5f57fe5b04145b610daa576040805162461bcd60e51b815260206004820152601460248201527364732d6d6174682d6d756c2d6f766572666c6f7760601b604482015290519081900360640190fd5b92915050565b606082471015610df15760405162461bcd60e51b815260040180806020018281038252602681526020018061101e6026913960400191505060405180910390fd5b610dfa85610f0c565b610e4b576040805162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015290519081900360640190fd5b60006060866001600160a01b031685876040518082805190602001908083835b60208310610e8a5780518252601f199092019160209182019101610e6b565b6001836020036101000a03801982511681845116808217855250505050505090500191505060006040518083038185875af1925050503d8060008114610eec576040519150601f19603f3d011682016040523d82523d6000602084013e610ef1565b606091505b5091509150610f01828286610f12565b979650505050505050565b3b151590565b60608315610f21575081610d40565b825115610f315782518084602001fd5b8160405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b83811015610f7b578181015183820152602001610f63565b50505050905090810190601f168015610fa85780820380516001836020036101000a031916815260200191505b509250505060405180910390fdfe546174746f6f526f6c6c3a20494e53554646494349454e545f425f414d4f554e54546174746f6f526f6c6c3a20494e53554646494349454e545f415f414d4f554e54556e697377617056324c6962726172793a204944454e544943414c5f414444524553534553416464726573733a20696e73756666696369656e742062616c616e636520666f722063616c6c556e697377617056324c6962726172793a20494e53554646494349454e545f4c4951554944495459556e697377617056324c6962726172793a20494e53554646494349454e545f414d4f554e545361666545524332303a204552433230206f7065726174696f6e20646964206e6f742073756363656564a264697066735822122059891f6b26439262ddc02f20d4b4a04cd70082c7488d3d6ed67eaaebd42a99ee64736f6c634300060c0033",
  "deployedBytecode": "0x608060405234801561001057600080fd5b506004361061004c5760003560e01c8063396ac32814610051578063964c1f98146100b2578063aac55b39146100d6578063f887ea401461011e575b600080fd5b6100b0600480360361012081101561006857600080fd5b506001600160a01b03813581169160208101359091169060408101359060608101359060808101359060a08101359060ff60c0820135169060e0810135906101000135610126565b005b6100ba6101da565b604080516001600160a01b039092168252519081900360200190f35b6100b0600480360360c08110156100ec57600080fd5b506001600160a01b03813581169160208101359091169060408101359060608101359060808101359060a001356101e9565b6100ba610298565b60006101328a8a6102a7565b6040805163d505accf60e01b8152336004820152306024820152604481018b90526064810188905260ff8716608482015260a4810186905260c4810185905290519192506001600160a01b0383169163d505accf9160e48082019260009290919082900301818387803b1580156101a857600080fd5b505af11580156101bc573d6000803e3d6000fd5b505050506101ce8a8a8a8a8a8a6101e9565b50505050505050505050565b6000546001600160a01b031681565b42811015610234576040805162461bcd60e51b815260206004820152601360248201527215185d1d1bdbd4ddd85c0e8811561412549151606a1b604482015290519081900360640190fd5b6000806102458888888888886103dd565b915091506000806102588a8a86866105b9565b915091508184111561027a5761027a6001600160a01b038b16338487036106f7565b808311156101ce576101ce6001600160a01b038a16338386036106f7565b6001546001600160a01b031681565b60008060006102b6858561074e565b9150915060008054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b815260040160206040518083038186803b15801561030657600080fd5b505afa15801561031a573d6000803e3d6000fd5b505050506040513d602081101561033057600080fd5b5051604080516bffffffffffffffffffffffff19606095861b811660208381019190915294861b81166034830152825160288184030181526048830184528051908601206001600160f81b031960688401529390951b9094166069850152607d8401919091527f96e8ac4277198ff8b6f785478aa9a39f403cb768dd02cbee326c3e7da348845f609d808501919091528151808503909101815260bd909301905281519101209392505050565b60008060006103ec89896102a7565b604080516323b872dd60e01b81523360048201526001600160a01b03831660248201819052604482018b9052915192935090916323b872dd916064808201926020929091908290030181600087803b15801561044757600080fd5b505af115801561045b573d6000803e3d6000fd5b505050506040513d602081101561047157600080fd5b50506040805163226bf2d160e21b8152306004820152815160009283926001600160a01b038616926389afcb449260248084019391929182900301818787803b1580156104bd57600080fd5b505af11580156104d1573d6000803e3d6000fd5b505050506040513d60408110156104e757600080fd5b508051602090910151909250905060006105018c8c61074e565b509050806001600160a01b03168c6001600160a01b031614610524578183610527565b82825b90965094508886101561056b5760405162461bcd60e51b8152600401808060200182810382526021815260200180610fd86021913960400191505060405180910390fd5b878510156105aa5760405162461bcd60e51b8152600401808060200182810382526021815260200180610fb76021913960400191505060405180910390fd5b50505050965096945050505050565b6000806105c88686868661082c565b6001546040805163c45a015560e01b8152905193955091935060009261064c926001600160a01b039092169163c45a0155916004808301926020929190829003018186803b15801561061957600080fd5b505afa15801561062d573d6000803e3d6000fd5b505050506040513d602081101561064357600080fd5b50518888610a49565b90506106626001600160a01b03881682856106f7565b6106766001600160a01b03871682846106f7565b604080516335313c2160e11b815233600482015290516001600160a01b03831691636a6278429160248083019260209291908290030181600087803b1580156106be57600080fd5b505af11580156106d2573d6000803e3d6000fd5b505050506040513d60208110156106e857600080fd5b50929791965090945050505050565b604080516001600160a01b038416602482015260448082018490528251808303909101815260649091019091526020810180516001600160e01b031663a9059cbb60e01b179052610749908490610b09565b505050565b600080826001600160a01b0316846001600160a01b031614156107a25760405162461bcd60e51b8152600401808060200182810382526025815260200180610ff96025913960400191505060405180910390fd5b826001600160a01b0316846001600160a01b0316106107c25782846107c5565b83835b90925090506001600160a01b038216610825576040805162461bcd60e51b815260206004820152601e60248201527f556e697377617056324c6962726172793a205a45524f5f414444524553530000604482015290519081900360640190fd5b9250929050565b6000806000600160009054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b815260040160206040518083038186803b15801561087f57600080fd5b505afa158015610893573d6000803e3d6000fd5b505050506040513d60208110156108a957600080fd5b50516040805163e6a4390560e01b81526001600160a01b038a81166004830152898116602483015291519293506000929184169163e6a4390591604480820192602092909190829003018186803b15801561090357600080fd5b505afa158015610917573d6000803e3d6000fd5b505050506040513d602081101561092d57600080fd5b50516001600160a01b031614156109cb57806001600160a01b031663c9c6539688886040518363ffffffff1660e01b815260040180836001600160a01b03168152602001826001600160a01b0316815260200192505050602060405180830381600087803b15801561099e57600080fd5b505af11580156109b2573d6000803e3d6000fd5b505050506040513d60208110156109c857600080fd5b50505b6000806109d9838a8a610bba565b915091508160001480156109eb575080155b156109fb57869450859350610a3d565b6000610a08888484610c88565b9050868111610a1c57879550935083610a3b565b6000610a29888486610c88565b905088811115610a3557fe5b95508694505b505b50505094509492505050565b6000806000610a58858561074e565b604080516bffffffffffffffffffffffff19606094851b811660208084019190915293851b81166034830152825160288184030181526048830184528051908501206001600160f81b031960688401529a90941b9093166069840152607d8301989098527faa06c396b78f809ef5b3a521735653d5d72e593663614a733e9780980a0e0b7a609d808401919091528851808403909101815260bd909201909752805196019590952095945050505050565b6060610b5e826040518060400160405280602081526020017f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564815250856001600160a01b0316610d2e9092919063ffffffff16565b80519091501561074957808060200190516020811015610b7d57600080fd5b50516107495760405162461bcd60e51b815260040180806020018281038252602a815260200180611091602a913960400191505060405180910390fd5b6000806000610bc9858561074e565b509050600080610bda888888610a49565b6001600160a01b0316630902f1ac6040518163ffffffff1660e01b815260040160606040518083038186803b158015610c1257600080fd5b505afa158015610c26573d6000803e3d6000fd5b505050506040513d6060811015610c3c57600080fd5b5080516020909101516dffffffffffffffffffffffffffff91821693501690506001600160a01b0387811690841614610c76578082610c79565b81815b90999098509650505050505050565b6000808411610cc85760405162461bcd60e51b815260040180806020018281038252602581526020018061106c6025913960400191505060405180910390fd5b600083118015610cd85750600082115b610d135760405162461bcd60e51b81526004018080602001828103825260288152602001806110446028913960400191505060405180910390fd5b82610d1e8584610d47565b81610d2557fe5b04949350505050565b6060610d3d8484600085610db0565b90505b9392505050565b6000811580610d6257505080820282828281610d5f57fe5b04145b610daa576040805162461bcd60e51b815260206004820152601460248201527364732d6d6174682d6d756c2d6f766572666c6f7760601b604482015290519081900360640190fd5b92915050565b606082471015610df15760405162461bcd60e51b815260040180806020018281038252602681526020018061101e6026913960400191505060405180910390fd5b610dfa85610f0c565b610e4b576040805162461bcd60e51b815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e7472616374000000604482015290519081900360640190fd5b60006060866001600160a01b031685876040518082805190602001908083835b60208310610e8a5780518252601f199092019160209182019101610e6b565b6001836020036101000a03801982511681845116808217855250505050505090500191505060006040518083038185875af1925050503d8060008114610eec576040519150601f19603f3d011682016040523d82523d6000602084013e610ef1565b606091505b5091509150610f01828286610f12565b979650505050505050565b3b151590565b60608315610f21575081610d40565b825115610f315782518084602001fd5b8160405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b83811015610f7b578181015183820152602001610f63565b50505050905090810190601f168015610fa85780820380516001836020036101000a031916815260200191505b509250505060405180910390fdfe546174746f6f526f6c6c3a20494e53554646494349454e545f425f414d4f554e54546174746f6f526f6c6c3a20494e53554646494349454e545f415f414d4f554e54556e697377617056324c6962726172793a204944454e544943414c5f414444524553534553416464726573733a20696e73756666696369656e742062616c616e636520666f722063616c6c556e697377617056324c6962726172793a20494e53554646494349454e545f4c4951554944495459556e697377617056324c6962726172793a20494e53554646494349454e545f414d4f554e545361666545524332303a204552433230206f7065726174696f6e20646964206e6f742073756363656564a264697066735822122059891f6b26439262ddc02f20d4b4a04cd70082c7488d3d6ed67eaaebd42a99ee64736f6c634300060c0033",
  "linkReferences": {},
  "deployedLinkReferences": {}
}
