Overview ERC20
PRICE
n/a

ON-CHAIN MARKET CAP n/a

Total Supply:
0 BaseBomb-LP

Holders:
7
Profile Summary
Blockchain:
Base (8453)


Decimals:
18
Contract Source Code Verified (Partial Match)
Contract Name:
BaseBombPair

Compiler Version
v0.5.16+commit.9c3226ce

Optimization Enabled:
No

Created At:
Thu, 07 Sep 2023 19:40:59 GMT
BaseBombERC20.sol
contracts
exchange
BaseBombERC20.sol


Contract ABI
[
  {
    "inputs": [],
    "payable": false,
    "stateMutability": "nonpayable",
    "type": "constructor"
  },
  {
    "anonymous": false,
    "inputs": [
      {
        "indexed": true,
        "internalType": "address",
        "name": "owner",
        "type": "address"
      },
      {
        "indexed": true,
        "internalType": "address",
        "name": "spender",
        "type": "address"
      },
      {
        "indexed": false,
        "internalType": "uint256",
        "name": "value",
        "type": "uint256"
      }
    ],
    "name": "Approval",
    "type": "event"
  },
  {
    "anonymous": false,
    "inputs": [
      {
        "indexed": true,
        "internalType": "address",
        "name": "sender",
        "type": "address"
      },
      {
        "indexed": false,
        "internalType": "uint256",
        "name": "amount0",
        "type": "uint256"
      },
      {
        "indexed": false,
        "internalType": "uint256",
        "name": "amount1",
        "type": "uint256"
      },
      {
        "indexed": true,
        "internalType": "address",
        "name": "to",
        "type": "address"
      }
    ],
    "name": "Burn",
    "type": "event"
  },
  {
    "anonymous": false,
    "inputs": [
      {
        "indexed": true,
        "internalType": "address",
        "name": "sender",
        "type": "address"
      },
      {
        "indexed": false,
        "internalType": "uint256",
        "name": "amount0",
        "type": "uint256"
      },
      {
        "indexed": false,
        "internalType": "uint256",
        "name": "amount1",
        "type": "uint256"
      }
    ],
    "name": "Mint",
    "type": "event"
  },
  {
    "anonymous": false,
    "inputs": [
      {
        "indexed": true,
        "internalType": "address",
        "name": "sender",
        "type": "address"
      },
      {
        "indexed": false,
        "internalType": "uint256",
        "name": "amount0In",
        "type": "uint256"
      },
      {
        "indexed": false,
        "internalType": "uint256",
        "name": "amount1In",
        "type": "uint256"
      },
      {
        "indexed": false,
        "internalType": "uint256",
        "name": "amount0Out",
        "type": "uint256"
      },
      {
        "indexed": false,
        "internalType": "uint256",
        "name": "amount1Out",
        "type": "uint256"
      },
      {
        "indexed": true,
        "internalType": "address",
        "name": "to",
        "type": "address"
      }
    ],
    "name": "Swap",
    "type": "event"
  },
  {
    "anonymous": false,
    "inputs": [
      {
        "indexed": false,
        "internalType": "uint112",
        "name": "reserve0",
        "type": "uint112"
      },
      {
        "indexed": false,
        "internalType": "uint112",
        "name": "reserve1",
        "type": "uint112"
      }
    ],
    "name": "Sync",
    "type": "event"
  },
  {
    "anonymous": false,
    "inputs": [
      {
        "indexed": true,
        "internalType": "address",
        "name": "from",
        "type": "address"
      },
      {
        "indexed": true,
        "internalType": "address",
        "name": "to",
        "type": "address"
      },
      {
        "indexed": false,
        "internalType": "uint256",
        "name": "value",
        "type": "uint256"
      }
    ],
    "name": "Transfer",
    "type": "event"
  },
  {
    "constant": true,
    "inputs": [],
    "name": "DOMAIN_SEPARATOR",
    "outputs": [
      {
        "internalType": "bytes32",
        "name": "",
        "type": "bytes32"
      }
    ],
    "payable": false,
    "stateMutability": "view",
    "type": "function"
  },
  {
    "constant": true,
    "inputs": [],
    "name": "MAX_FEE_AMOUNT",
    "outputs": [
      {
        "internalType": "uint256",
        "name": "",
        "type": "uint256"
      }
    ],
    "payable": false,
    "stateMutability": "view",
    "type": "function"
  },
  {
    "constant": true,
    "inputs": [],
    "name": "MAX_LP_FEE_AMOUNT",
    "outputs": [
      {
        "internalType": "uint256",
        "name": "",
        "type": "uint256"
      }
    ],
    "payable": false,
    "stateMutability": "view",
    "type": "function"
  },
  {
    "constant": true,
    "inputs": [],
    "name": "MINIMUM_LIQUIDITY",
    "outputs": [
      {
        "internalType": "uint256",
        "name": "",
        "type": "uint256"
      }
    ],
    "payable": false,
    "stateMutability": "view",
    "type": "function"
  },
  {
    "constant": true,
    "inputs": [],
    "name": "MIN_FEE_AMOUNT",
    "outputs": [
      {
        "internalType": "uint256",
        "name": "",
        "type": "uint256"
      }
    ],
    "payable": false,
    "stateMutability": "view",
    "type": "function"
  },
  {
    "constant": true,
    "inputs": [],
    "name": "MIN_LP_FEE_AMOUNT",
    "outputs": [
      {
        "internalType": "uint256",
        "name": "",
        "type": "uint256"
      }
    ],
    "payable": false,
    "stateMutability": "view",
    "type": "function"
  },
  {
    "constant": true,
    "inputs": [],
    "name": "PERMIT_TYPEHASH",
    "outputs": [
      {
        "internalType": "bytes32",
        "name": "",
        "type": "bytes32"
      }
    ],
    "payable": false,
    "stateMutability": "view",
    "type": "function"
  },
  {
    "constant": true,
    "inputs": [
      {
        "internalType": "address",
        "name": "",
        "type": "address"
      },
      {
        "internalType": "address",
        "name": "",
        "type": "address"
      }
    ],
    "name": "allowance",
    "outputs": [
      {
        "internalType": "uint256",
        "name": "",
        "type": "uint256"
      }
    ],
    "payable": false,
    "stateMutability": "view",
    "type": "function"
  },
  {
    "constant": false,
    "inputs": [
      {
        "internalType": "address",
        "name": "spender",
        "type": "address"
      },
      {
        "internalType": "uint256",
        "name": "value",
        "type": "uint256"
      }
    ],
    "name": "approve",
    "outputs": [
      {
        "internalType": "bool",
        "name": "",
        "type": "bool"
      }
    ],
    "payable": false,
    "stateMutability": "nonpayable",
    "type": "function"
  },
  {
    "constant": true,
    "inputs": [
      {
        "internalType": "address",
        "name": "",
        "type": "address"
      }
    ],
    "name": "balanceOf",
    "outputs": [
      {
        "internalType": "uint256",
        "name": "",
        "type": "uint256"
      }
    ],
    "payable": false,
    "stateMutability": "view",
    "type": "function"
  },
  {
    "constant": false,
    "inputs": [
      {
        "internalType": "address",
        "name": "to",
        "type": "address"
      }
    ],
    "name": "burn",
    "outputs": [
      {
        "internalType": "uint256",
        "name": "amount0",
        "type": "uint256"
      },
      {
        "internalType": "uint256",
        "name": "amount1",
        "type": "uint256"
      }
    ],
    "payable": false,
    "stateMutability": "nonpayable",
    "type": "function"
  },
  {
    "constant": true,
    "inputs": [],
    "name": "controllerFeeShare",
    "outputs": [
      {
        "internalType": "uint256",
        "name": "",
        "type": "uint256"
      }
    ],
    "payable": false,
    "stateMutability": "view",
    "type": "function"
  },
  {
    "constant": true,
    "inputs": [],
    "name": "decimals",
    "outputs": [
      {
        "internalType": "uint8",
        "name": "",
        "type": "uint8"
      }
    ],
    "payable": false,
    "stateMutability": "view",
    "type": "function"
  },
  {
    "constant": true,
    "inputs": [],
    "name": "factory",
    "outputs": [
      {
        "internalType": "address",
        "name": "",
        "type": "address"
      }
    ],
    "payable": false,
    "stateMutability": "view",
    "type": "function"
  },
  {
    "constant": true,
    "inputs": [],
    "name": "feeAmount",
    "outputs": [
      {
        "internalType": "uint256",
        "name": "",
        "type": "uint256"
      }
    ],
    "payable": false,
    "stateMutability": "view",
    "type": "function"
  },
  {
    "constant": true,
    "inputs": [],
    "name": "getReserves",
    "outputs": [
      {
        "internalType": "uint112",
        "name": "_reserve0",
        "type": "uint112"
      },
      {
        "internalType": "uint112",
        "name": "_reserve1",
        "type": "uint112"
      },
      {
        "internalType": "uint32",
        "name": "_blockTimestampLast",
        "type": "uint32"
      }
    ],
    "payable": false,
    "stateMutability": "view",
    "type": "function"
  },
  {
    "constant": false,
    "inputs": [
      {
        "internalType": "address",
        "name": "_token0",
        "type": "address"
      },
      {
        "internalType": "address",
        "name": "_token1",
        "type": "address"
      }
    ],
    "name": "initialize",
    "outputs": [],
    "payable": false,
    "stateMutability": "nonpayable",
    "type": "function"
  },
  {
    "constant": true,
    "inputs": [],
    "name": "kLast",
    "outputs": [
      {
        "internalType": "uint256",
        "name": "",
        "type": "uint256"
      }
    ],
    "payable": false,
    "stateMutability": "view",
    "type": "function"
  },
  {
    "constant": false,
    "inputs": [
      {
        "internalType": "address",
        "name": "to",
        "type": "address"
      }
    ],
    "name": "mint",
    "outputs": [
      {
        "internalType": "uint256",
        "name": "liquidity",
        "type": "uint256"
      }
    ],
    "payable": false,
    "stateMutability": "nonpayable",
    "type": "function"
  },
  {
    "constant": true,
    "inputs": [],
    "name": "name",
    "outputs": [
      {
        "internalType": "string",
        "name": "",
        "type": "string"
      }
    ],
    "payable": false,
    "stateMutability": "view",
    "type": "function"
  },
  {
    "constant": true,
    "inputs": [
      {
        "internalType": "address",
        "name": "",
        "type": "address"
      }
    ],
    "name": "nonces",
    "outputs": [
      {
        "internalType": "uint256",
        "name": "",
        "type": "uint256"
      }
    ],
    "payable": false,
    "stateMutability": "view",
    "type": "function"
  },
  {
    "constant": false,
    "inputs": [
      {
        "internalType": "address",
        "name": "owner",
        "type": "address"
      },
      {
        "internalType": "address",
        "name": "spender",
        "type": "address"
      },
      {
        "internalType": "uint256",
        "name": "value",
        "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": "permit",
    "outputs": [],
    "payable": false,
    "stateMutability": "nonpayable",
    "type": "function"
  },
  {
    "constant": true,
    "inputs": [],
    "name": "price0CumulativeLast",
    "outputs": [
      {
        "internalType": "uint256",
        "name": "",
        "type": "uint256"
      }
    ],
    "payable": false,
    "stateMutability": "view",
    "type": "function"
  },
  {
    "constant": true,
    "inputs": [],
    "name": "price1CumulativeLast",
    "outputs": [
      {
        "internalType": "uint256",
        "name": "",
        "type": "uint256"
      }
    ],
    "payable": false,
    "stateMutability": "view",
    "type": "function"
  },
  {
    "constant": false,
    "inputs": [
      {
        "internalType": "address",
        "name": "_controllerFeeAddress",
        "type": "address"
      }
    ],
    "name": "setControllerFeeAddress",
    "outputs": [],
    "payable": false,
    "stateMutability": "nonpayable",
    "type": "function"
  },
  {
    "constant": false,
    "inputs": [
      {
        "internalType": "uint256",
        "name": "_controllerFeeShare",
        "type": "uint256"
      }
    ],
    "name": "setControllerFeeAmount",
    "outputs": [],
    "payable": false,
    "stateMutability": "nonpayable",
    "type": "function"
  },
  {
    "constant": false,
    "inputs": [
      {
        "internalType": "uint256",
        "name": "_feeAmount",
        "type": "uint256"
      }
    ],
    "name": "setFeeAmount",
    "outputs": [],
    "payable": false,
    "stateMutability": "nonpayable",
    "type": "function"
  },
  {
    "constant": false,
    "inputs": [
      {
        "internalType": "address",
        "name": "to",
        "type": "address"
      }
    ],
    "name": "skim",
    "outputs": [],
    "payable": false,
    "stateMutability": "nonpayable",
    "type": "function"
  },
  {
    "constant": false,
    "inputs": [
      {
        "internalType": "uint256",
        "name": "amount0Out",
        "type": "uint256"
      },
      {
        "internalType": "uint256",
        "name": "amount1Out",
        "type": "uint256"
      },
      {
        "internalType": "address",
        "name": "to",
        "type": "address"
      },
      {
        "internalType": "bytes",
        "name": "data",
        "type": "bytes"
      }
    ],
    "name": "swap",
    "outputs": [],
    "payable": false,
    "stateMutability": "nonpayable",
    "type": "function"
  },
  {
    "constant": true,
    "inputs": [],
    "name": "symbol",
    "outputs": [
      {
        "internalType": "string",
        "name": "",
        "type": "string"
      }
    ],
    "payable": false,
    "stateMutability": "view",
    "type": "function"
  },
  {
    "constant": false,
    "inputs": [],
    "name": "sync",
    "outputs": [],
    "payable": false,
    "stateMutability": "nonpayable",
    "type": "function"
  },
  {
    "constant": true,
    "inputs": [],
    "name": "token0",
    "outputs": [
      {
        "internalType": "address",
        "name": "",
        "type": "address"
      }
    ],
    "payable": false,
    "stateMutability": "view",
    "type": "function"
  },
  {
    "constant": true,
    "inputs": [],
    "name": "token1",
    "outputs": [
      {
        "internalType": "address",
        "name": "",
        "type": "address"
      }
    ],
    "payable": false,
    "stateMutability": "view",
    "type": "function"
  },
  {
    "constant": true,
    "inputs": [],
    "name": "totalSupply",
    "outputs": [
      {
        "internalType": "uint256",
        "name": "",
        "type": "uint256"
      }
    ],
    "payable": false,
    "stateMutability": "view",
    "type": "function"
  },
  {
    "constant": false,
    "inputs": [
      {
        "internalType": "address",
        "name": "to",
        "type": "address"
      },
      {
        "internalType": "uint256",
        "name": "value",
        "type": "uint256"
      }
    ],
    "name": "transfer",
    "outputs": [
      {
        "internalType": "bool",
        "name": "",
        "type": "bool"
      }
    ],
    "payable": false,
    "stateMutability": "nonpayable",
    "type": "function"
  },
  {
    "constant": false,
    "inputs": [
      {
        "internalType": "address",
        "name": "from",
        "type": "address"
      },
      {
        "internalType": "address",
        "name": "to",
        "type": "address"
      },
      {
        "internalType": "uint256",
        "name": "value",
        "type": "uint256"
      }
    ],
    "name": "transferFrom",
    "outputs": [
      {
        "internalType": "bool",
        "name": "",
        "type": "bool"
      }
    ],
    "payable": false,
    "stateMutability": "nonpayable",
    "type": "function"
  }
]


Contract Creation Code
6080604052601960085560006009556001600f5534801561001f57600080fd5b5060004690506040518080620046b360529139605201905060405180910390206040518060400160405280600c81526020017f42617365426f6d62204c50730000000000000000000000000000000000000000815250805190602001206040518060400160405280600181526020017f3100000000000000000000000000000000000000000000000000000000000000815250805190602001208330604051602001808681526020018581526020018481526020018381526020018273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200195505050505050604051602081830303815290604052805190602001206003819055505033600560006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555061453280620001816000396000f3fe608060405234801561001057600080fd5b506004361061021c5760003560e01c806370a0823111610125578063bc25cf77116100ad578063dd62ed3e1161007c578063dd62ed3e14610b14578063e332f30614610b8c578063ea4ae19f14610baa578063eda48fd514610bc8578063fff6cae914610be65761021c565b8063bc25cf77146109a3578063c45a0155146109e7578063d21220a714610a31578063d505accf14610a7b5761021c565b806389afcb44116100f457806389afcb44146107f957806395d89b411461085857806398891432146108db578063a9059cbb1461091f578063ba9a7a56146109855761021c565b806370a08231146106fd5780637464fc3d1461075557806374caad67146107735780637ecebe00146107a15761021c565b8063313ce567116101a85780635909c0d5116101775780635909c0d51461061d5780635a3d54931461063b57806369e15404146106595780636a627842146106775780636b392680146106cf5761021c565b8063313ce567146105595780633644e5151461057d578063485cc9551461059b5780634a964c81146105ff5761021c565b80630dfe1681116101ef5780630dfe16811461042f57806318160ddd1461047957806323b872dd146104975780632a54caba1461051d57806330adf81f1461053b5761021c565b8063022c0d9f1461022157806306fdde03146102ce5780630902f1ac14610351578063095ea7b3146103c9575b600080fd5b6102cc6004803603608081101561023757600080fd5b810190808035906020019092919080359060200190929190803573ffffffffffffffffffffffffffffffffffffffff1690602001909291908035906020019064010000000081111561028857600080fd5b82018360208201111561029a57600080fd5b803590602001918460018302840111640100000000831117156102bc57600080fd5b9091929391929390505050610bf0565b005b6102d66114cc565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156103165780820151818401526020810190506102fb565b50505050905090810190601f1680156103435780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b610359611505565b60405180846dffffffffffffffffffffffffffff166dffffffffffffffffffffffffffff168152602001836dffffffffffffffffffffffffffff166dffffffffffffffffffffffffffff1681526020018263ffffffff1663ffffffff168152602001935050505060405180910390f35b610415600480360360408110156103df57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050611562565b604051808215151515815260200191505060405180910390f35b610437611579565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b61048161159f565b6040518082815260200191505060405180910390f35b610503600480360360608110156104ad57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506115a5565b604051808215151515815260200191505060405180910390f35b610525611770565b6040518082815260200191505060405180910390f35b610543611775565b6040518082815260200191505060405180910390f35b61056161179c565b604051808260ff1660ff16815260200191505060405180910390f35b6105856117a1565b6040518082815260200191505060405180910390f35b6105fd600480360360408110156105b157600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506117a7565b005b6106076118f0565b6040518082815260200191505060405180910390f35b6106256118f5565b6040518082815260200191505060405180910390f35b6106436118fb565b6040518082815260200191505060405180910390f35b610661611901565b6040518082815260200191505060405180910390f35b6106b96004803603602081101561068d57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611907565b6040518082815260200191505060405180910390f35b6106fb600480360360208110156106e557600080fd5b8101908080359060200190929190505050611db6565b005b61073f6004803603602081101561071357600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611f9a565b6040518082815260200191505060405180910390f35b61075d611fb2565b6040518082815260200191505060405180910390f35b61079f6004803603602081101561078957600080fd5b8101908080359060200190929190505050611fb8565b005b6107e3600480360360208110156107b757600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061219c565b6040518082815260200191505060405180910390f35b61083b6004803603602081101561080f57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506121b4565b604051808381526020018281526020019250505060405180910390f35b6108606127a1565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156108a0578082015181840152602081019050610885565b50505050905090810190601f1680156108cd5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b61091d600480360360208110156108f157600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506127da565b005b61096b6004803603604081101561093557600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506129e7565b604051808215151515815260200191505060405180910390f35b61098d6129fe565b6040518082815260200191505060405180910390f35b6109e5600480360360208110156109b957600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050612a03565b005b6109ef612cde565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b610a39612d04565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b610b12600480360360e0811015610a9157600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff1690602001909291908035906020019092919080359060200190929190803560ff1690602001909291908035906020019092919080359060200190929190505050612d2a565b005b610b7660048036036040811015610b2a57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061306e565b6040518082815260200191505060405180910390f35b610b94613093565b6040518082815260200191505060405180910390f35b610bb2613099565b6040518082815260200191505060405180910390f35b610bd061309e565b6040518082815260200191505060405180910390f35b610bee6130a3565b005b6001600f5414610c68576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260108152602001807f42617365426f6d623a204c4f434b45440000000000000000000000000000000081525060200191505060405180910390fd5b6000600f819055506000851180610c7f5750600084115b610cd4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260248152602001806143d26024913960400191505060405180910390fd5b600080610cdf611505565b5091509150816dffffffffffffffffffffffffffff1687108015610d125750806dffffffffffffffffffffffffffff1686105b610d84576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260208152602001807f42617365426f6d623a20494e53554646494349454e545f4c495155494449545981525060200191505060405180910390fd5b600080610d8f614308565b610d998a8a613323565b90506000600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690506000600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690508173ffffffffffffffffffffffffffffffffffffffff168a73ffffffffffffffffffffffffffffffffffffffff1614158015610e5157508073ffffffffffffffffffffffffffffffffffffffff168a73ffffffffffffffffffffffffffffffffffffffff1614155b610ec3576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260148152602001807f42617365426f6d623a20494e56414c49445f544f00000000000000000000000081525060200191505060405180910390fd5b60008c1115610f1b57600083600001511115610f0b57610f0a82600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1685600001516133e2565b5b610f1a828b85604001516133e2565b5b60008b1115610f7357600083602001511115610f6357610f6281600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1685602001516133e2565b5b610f72818b85606001516133e2565b5b6000898990501115611063578973ffffffffffffffffffffffffffffffffffffffff1663978119fe33856040015186606001518d8d6040518663ffffffff1660e01b8152600401808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001858152602001848152602001806020018281038252848482818152602001925080828437600081840152601f19601f8201169050808301925050509650505050505050600060405180830381600087803b15801561104a57600080fd5b505af115801561105e573d6000803e3d6000fd5b505050505b8173ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff1660e01b8152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060206040518083038186803b1580156110e057600080fd5b505afa1580156110f4573d6000803e3d6000fd5b505050506040513d602081101561110a57600080fd5b810190808051906020019092919050505094508073ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff1660e01b8152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060206040518083038186803b15801561119a57600080fd5b505afa1580156111ae573d6000803e3d6000fd5b505050506040513d60208110156111c457600080fd5b8101908080519060200190929190505050935050506111e1614330565b60405180604001604052808c886dffffffffffffffffffffffffffff1603861161120c576000611222565b8c886dffffffffffffffffffffffffffff160386035b81526020018b876dffffffffffffffffffffffffffff1603851161124757600061125d565b8b876dffffffffffffffffffffffffffff160385035b8152509050600081600001511180611279575060008160200151115b6112ce576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602381526020018061434b6023913960400191505060405180910390fd5b600061130f6112ec600854846000015161362f90919063ffffffff16565b6113016127108861362f90919063ffffffff16565b6136c490919063ffffffff16565b9050600061135261132f600854856020015161362f90919063ffffffff16565b6113446127108861362f90919063ffffffff16565b6136c490919063ffffffff16565b905061139d6305f5e10061138f896dffffffffffffffffffffffffffff168b6dffffffffffffffffffffffffffff1661362f90919063ffffffff16565b61362f90919063ffffffff16565b6113b0828461362f90919063ffffffff16565b1015611424576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600b8152602001807f42617365426f6d623a204b00000000000000000000000000000000000000000081525060200191505060405180910390fd5b505061143284848888613747565b8873ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fd78ad95fa46c994b6551d0da85fc275fe613ce37657fb8d5e3d130840159d822836000015184602001518f8f6040518085815260200184815260200183815260200182815260200194505050505060405180910390a35050505050506001600f819055505050505050565b6040518060400160405280600c81526020017f42617365426f6d62204c5073000000000000000000000000000000000000000081525081565b6000806000600a60009054906101000a90046dffffffffffffffffffffffffffff169250600a600e9054906101000a90046dffffffffffffffffffffffffffff169150600a601c9054906101000a900463ffffffff169050909192565b600061156f338484613ac5565b6001905092915050565b600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60005481565b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541461175a576116d982600260008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546136c490919063ffffffff16565b600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b611765848484613bb0565b600190509392505050565b606481565b7f6e71edae12b1b97f4d1f60370fef10105fa2faae0126114a169c64845d6126c960001b81565b601281565b60035481565b600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461186a576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260138152602001807f42617365426f6d623a20464f5242494444454e0000000000000000000000000081525060200191505060405180910390fd5b81600660006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080600760006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505050565b601981565b600b5481565b600c5481565b60085481565b60006001600f5414611981576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260108152602001807f42617365426f6d623a204c4f434b45440000000000000000000000000000000081525060200191505060405180910390fd5b6000600f81905550600080611994611505565b50915091506000600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff1660e01b8152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060206040518083038186803b158015611a3a57600080fd5b505afa158015611a4e573d6000803e3d6000fd5b505050506040513d6020811015611a6457600080fd5b810190808051906020019092919050505090506000600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff1660e01b8152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060206040518083038186803b158015611b1857600080fd5b505afa158015611b2c573d6000803e3d6000fd5b505050506040513d6020811015611b4257600080fd5b810190808051906020019092919050505090506000611b7a856dffffffffffffffffffffffffffff16846136c490919063ffffffff16565b90506000611ba1856dffffffffffffffffffffffffffff16846136c490919063ffffffff16565b90506000611baf8787613d44565b90506000805490506000811415611c0157611bee6064611be0611bdb868861362f90919063ffffffff16565b613f4b565b6136c490919063ffffffff16565b9850611bfc60006064613fad565b611c64565b611c61886dffffffffffffffffffffffffffff16611c28838761362f90919063ffffffff16565b81611c2f57fe5b04886dffffffffffffffffffffffffffff16611c54848761362f90919063ffffffff16565b81611c5b57fe5b046140c7565b98505b60008911611cbd576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260278152602001806144d76027913960400191505060405180910390fd5b611cc78a8a613fad565b611cd386868a8a613747565b8115611d4b57611d44600a600e9054906101000a90046dffffffffffffffffffffffffffff166dffffffffffffffffffffffffffff16600a60009054906101000a90046dffffffffffffffffffffffffffff166dffffffffffffffffffffffffffff1661362f90919063ffffffff16565b600e819055505b3373ffffffffffffffffffffffffffffffffffffffff167f4c209b5fc8ad50758f13e2e1088ba56a560dff690a1c6fef26394f4c03821c4f8585604051808381526020018281526020019250505060405180910390a250505050505050506001600f81905550919050565b600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663094b74156040518163ffffffff1660e01b815260040160206040518083038186803b158015611e1e57600080fd5b505afa158015611e32573d6000803e3d6000fd5b505050506040513d6020811015611e4857600080fd5b810190808051906020019092919050505073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614611edc576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260288152602001806144af6028913960400191505060405180910390fd5b6019811115611f36576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260328152602001806143a06032913960400191505060405180910390fd5b6000811015611f90576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252603281526020018061436e6032913960400191505060405180910390fd5b8060088190555050565b60016020528060005260406000206000915090505481565b600e5481565b600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663094b74156040518163ffffffff1660e01b815260040160206040518083038186803b15801561202057600080fd5b505afa158015612034573d6000803e3d6000fd5b505050506040513d602081101561204a57600080fd5b810190808051906020019092919050505073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146120de576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602481526020018061441d6024913960400191505060405180910390fd5b6064811115612138576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260378152602001806144786037913960400191505060405180910390fd5b6000811015612192576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260378152602001806144416037913960400191505060405180910390fd5b8060098190555050565b60046020528060005260406000206000915090505481565b6000806001600f541461222f576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260108152602001807f42617365426f6d623a204c4f434b45440000000000000000000000000000000081525060200191505060405180910390fd5b6000600f81905550600080612242611505565b50915091506000600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690506000600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905060008273ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff1660e01b8152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060206040518083038186803b15801561231457600080fd5b505afa158015612328573d6000803e3d6000fd5b505050506040513d602081101561233e57600080fd5b8101908080519060200190929190505050905060008273ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff1660e01b8152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060206040518083038186803b1580156123d057600080fd5b505afa1580156123e4573d6000803e3d6000fd5b505050506040513d60208110156123fa57600080fd5b810190808051906020019092919050505090506000600160003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050600061245d8888613d44565b905060008054905080612479868561362f90919063ffffffff16565b8161248057fe5b049a5080612497858561362f90919063ffffffff16565b8161249e57fe5b04995060008b1180156124b1575060008a115b612506576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260278152602001806143f66027913960400191505060405180910390fd5b61251030846140e0565b61251b878d8d6133e2565b612526868d8c6133e2565b8673ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff1660e01b8152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060206040518083038186803b1580156125a357600080fd5b505afa1580156125b7573d6000803e3d6000fd5b505050506040513d60208110156125cd57600080fd5b810190808051906020019092919050505094508573ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff1660e01b8152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060206040518083038186803b15801561265d57600080fd5b505afa158015612671573d6000803e3d6000fd5b505050506040513d602081101561268757600080fd5b810190808051906020019092919050505093506126a685858b8b613747565b811561271e57612717600a600e9054906101000a90046dffffffffffffffffffffffffffff166dffffffffffffffffffffffffffff16600a60009054906101000a90046dffffffffffffffffffffffffffff166dffffffffffffffffffffffffffff1661362f90919063ffffffff16565b600e819055505b8b73ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fdccd412f0b1252819cb1fd330b93224ca42612892bb3f4f789976e6d819364968d8d604051808381526020018281526020019250505060405180910390a35050505050505050506001600f81905550915091565b6040518060400160405280600b81526020017f42617365426f6d622d4c5000000000000000000000000000000000000000000081525081565b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16141561287d576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260168152602001807f43616e6e6f74206265207a65726f20616464726573730000000000000000000081525060200191505060405180910390fd5b600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663094b74156040518163ffffffff1660e01b815260040160206040518083038186803b1580156128e557600080fd5b505afa1580156128f9573d6000803e3d6000fd5b505050506040513d602081101561290f57600080fd5b810190808051906020019092919050505073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146129a3576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602481526020018061441d6024913960400191505060405180910390fd5b80600d60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b60006129f4338484613bb0565b6001905092915050565b606481565b6001600f5414612a7b576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260108152602001807f42617365426f6d623a204c4f434b45440000000000000000000000000000000081525060200191505060405180910390fd5b6000600f819055506000600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690506000600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050612bd18284612bcc600a60009054906101000a90046dffffffffffffffffffffffffffff166dffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff1660e01b8152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060206040518083038186803b158015612b8357600080fd5b505afa158015612b97573d6000803e3d6000fd5b505050506040513d6020811015612bad57600080fd5b81019080805190602001909291905050506136c490919063ffffffff16565b6133e2565b612cd18184612ccc600a600e9054906101000a90046dffffffffffffffffffffffffffff166dffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff1660e01b8152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060206040518083038186803b158015612c8357600080fd5b505afa158015612c97573d6000803e3d6000fd5b505050506040513d6020811015612cad57600080fd5b81019080805190602001909291905050506136c490919063ffffffff16565b6133e2565b50506001600f8190555050565b600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b42841015612da0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260118152602001807f42617365426f6d623a204558504952454400000000000000000000000000000081525060200191505060405180910390fd5b60006003547f6e71edae12b1b97f4d1f60370fef10105fa2faae0126114a169c64845d6126c960001b898989600460008e73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000815480929190600101919050558a604051602001808781526020018673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200184815260200183815260200182815260200196505050505050506040516020818303038152906040528051906020012060405160200180807f190100000000000000000000000000000000000000000000000000000000000081525060020183815260200182815260200192505050604051602081830303815290604052805190602001209050600060018286868660405160008152602001604052604051808581526020018460ff1660ff1681526020018381526020018281526020019450505050506020604051602081039080840390855afa158015612f72573d6000803e3d6000fd5b505050602060405103519050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614158015612fe657508873ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16145b613058576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601b8152602001807f42617365426f6d623a20494e56414c49445f5349474e4154555245000000000081525060200191505060405180910390fd5b613063898989613ac5565b505050505050505050565b6002602052816000526040600020602052806000526040600020600091509150505481565b60095481565b600081565b600081565b6001600f541461311b576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260108152602001807f42617365426f6d623a204c4f434b45440000000000000000000000000000000081525060200191505060405180910390fd5b6000600f81905550613319600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff1660e01b8152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060206040518083038186803b1580156131c557600080fd5b505afa1580156131d9573d6000803e3d6000fd5b505050506040513d60208110156131ef57600080fd5b8101908080519060200190929190505050600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff1660e01b8152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060206040518083038186803b15801561329f57600080fd5b505afa1580156132b3573d6000803e3d6000fd5b505050506040513d60208110156132c957600080fd5b8101908080519060200190929190505050600a60009054906101000a90046dffffffffffffffffffffffffffff16600a600e9054906101000a90046dffffffffffffffffffffffffffff16613747565b6001600f81905550565b61332b614308565b60006127106133456009548661362f90919063ffffffff16565b8161334c57fe5b04905060006127106133696009548661362f90919063ffffffff16565b8161337057fe5b049050600060095411156133b35760008511801561338e5750600182105b1561339857600191505b6000841180156133a85750600181105b156133b257600190505b5b604051806080016040528083815260200182815260200183870381526020018286038152509250505092915050565b600060608473ffffffffffffffffffffffffffffffffffffffff166040518060400160405280601981526020017f7472616e7366657228616464726573732c75696e743235362900000000000000815250805190602001208585604051602401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050604051602081830303815290604052907bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19166020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff83818316178352505050506040518082805190602001908083835b6020831061350f57805182526020820191506020810190506020830392506134ec565b6001836020036101000a0380198251168184511680821785525050505050509050019150506000604051808303816000865af19150503d8060008114613571576040519150601f19603f3d011682016040523d82523d6000602084013e613576565b606091505b50915091508180156135b657506000815114806135b557508080602001905160208110156135a357600080fd5b81019080805190602001909291905050505b5b613628576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260198152602001807f42617365426f6d623a205452414e534645525f4641494c45440000000000000081525060200191505060405180910390fd5b5050505050565b60008082148061364c575082828385029250828161364957fe5b04145b6136be576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260148152602001807f64732d6d6174682d6d756c2d6f766572666c6f7700000000000000000000000081525060200191505060405180910390fd5b92915050565b6000828284039150811115613741576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260158152602001807f64732d6d6174682d7375622d756e646572666c6f77000000000000000000000081525060200191505060405180910390fd5b92915050565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6dffffffffffffffffffffffffffff1684111580156137b757507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6dffffffffffffffffffffffffffff168311155b613829576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260128152602001807f42617365426f6d623a204f564552464c4f57000000000000000000000000000081525060200191505060405180910390fd5b6000640100000000428161383957fe5b0690506000600a601c9054906101000a900463ffffffff168203905060008163ffffffff1611801561387c57506000846dffffffffffffffffffffffffffff1614155b801561389957506000836dffffffffffffffffffffffffffff1614155b1561397b578063ffffffff166138de856138b2866141fa565b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1661422590919063ffffffff16565b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1602600b600082825401925050819055508063ffffffff1661394c84613920876141fa565b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1661422590919063ffffffff16565b7bffffffffffffffffffffffffffffffffffffffffffffffffffffffff1602600c600082825401925050819055505b85600a60006101000a8154816dffffffffffffffffffffffffffff02191690836dffffffffffffffffffffffffffff16021790555084600a600e6101000a8154816dffffffffffffffffffffffffffff02191690836dffffffffffffffffffffffffffff16021790555081600a601c6101000a81548163ffffffff021916908363ffffffff1602179055507f1c411e9a96e071241c2f21f7726b17ae89e3cab4c78be50e062b03a9fffbbad1600a60009054906101000a90046dffffffffffffffffffffffffffff16600a600e9054906101000a90046dffffffffffffffffffffffffffff1660405180836dffffffffffffffffffffffffffff166dffffffffffffffffffffffffffff168152602001826dffffffffffffffffffffffffffff166dffffffffffffffffffffffffffff1681526020019250505060405180910390a1505050505050565b80600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040518082815260200191505060405180910390a3505050565b613c0281600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546136c490919063ffffffff16565b600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550613c9781600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461428590919063ffffffff16565b600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a3505050565b600080600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663017e7e586040518163ffffffff1660e01b815260040160206040518083038186803b158015613daf57600080fd5b505afa158015613dc3573d6000803e3d6000fd5b505050506040513d6020811015613dd957600080fd5b81019080805190602001909291905050509050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16141591506000600e5490508215613f315760008114613f2c576000613e71613e6c866dffffffffffffffffffffffffffff16886dffffffffffffffffffffffffffff1661362f90919063ffffffff16565b613f4b565b90506000613e7e83613f4b565b905080821115613f29576000613ec46008613eb6613ea585876136c490919063ffffffff16565b60005461362f90919063ffffffff16565b61362f90919063ffffffff16565b90506000613f01613edf60088561362f90919063ffffffff16565b613ef360118761362f90919063ffffffff16565b61428590919063ffffffff16565b90506000818381613f0e57fe5b0490506000811115613f2557613f248782613fad565b5b5050505b50505b613f43565b60008114613f42576000600e819055505b5b505092915050565b60006003821115613f9a578190506000600160028481613f6757fe5b040190505b81811015613f9457809150600281828581613f8357fe5b040181613f8c57fe5b049050613f6c565b50613fa8565b60008214613fa757600190505b5b919050565b613fc28160005461428590919063ffffffff16565b60008190555061401a81600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461428590919063ffffffff16565b600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a35050565b60008183106140d657816140d8565b825b905092915050565b61413281600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546136c490919063ffffffff16565b600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061418a816000546136c490919063ffffffff16565b600081905550600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a35050565b60006e010000000000000000000000000000826dffffffffffffffffffffffffffff16029050919050565b6000816dffffffffffffffffffffffffffff167bffffffffffffffffffffffffffffffffffffffffffffffffffffffff16837bffffffffffffffffffffffffffffffffffffffffffffffffffffffff168161427c57fe5b04905092915050565b6000828284019150811015614302576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260148152602001807f64732d6d6174682d6164642d6f766572666c6f7700000000000000000000000081525060200191505060405180910390fd5b92915050565b6040518060800160405280600081526020016000815260200160008152602001600081525090565b60405180604001604052806000815260200160008152509056fe42617365426f6d623a20494e53554646494349454e545f494e5055545f414d4f554e5442617365426f6d62506169723a20666565416d6f756e74206d7573746e27742065786365656420746865206d696e696d756d42617365426f6d62506169723a20666565416d6f756e74206d7573746e27742065786365656420746865206d6178696d756d42617365426f6d623a20494e53554646494349454e545f4f55545055545f414d4f554e5442617365426f6d623a20494e53554646494349454e545f4c49515549444954595f4255524e454442617365426f6d623a206f6e6c7920666163746f7279277320666565546f53657474657242617365426f6d623a20636f6e74726f6c6c65724665655368617265206d7573746e27742065786365656420746865206d696e696d756d42617365426f6d623a20636f6e74726f6c6c65724665655368617265206d7573746e27742065786365656420746865206d6178696d756d42617365426f6d62506169723a206f6e6c7920666163746f7279277320666565546f53657474657242617365426f6d623a20494e53554646494349454e545f4c49515549444954595f4d494e544544a265627a7a72315820f8424a7855b3920828741d467af1eefe9f3a629c8cff025b719b5526a62852e264736f6c63430005100032454950373132446f6d61696e28737472696e67206e616d652c737472696e672076657273696f6e2c75696e7432353620636861696e49642c6164647265737320766572696679696e67436f6e747261637429