{
  "_format": "hh-sol-artifact-1",
  "contractName": "FullMathTest",
  "sourceName": "contracts/soma/SomaSwap/test/FullMathTest.sol",
  "abi": [
    {
      "inputs": [
        {
          "internalType": "uint256",
          "name": "x",
          "type": "uint256"
        },
        {
          "internalType": "uint256",
          "name": "y",
          "type": "uint256"
        },
        {
          "internalType": "uint256",
          "name": "z",
          "type": "uint256"
        }
      ],
      "name": "mulDiv",
      "outputs": [
        {
          "internalType": "uint256",
          "name": "",
          "type": "uint256"
        }
      ],
      "stateMutability": "pure",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "uint256",
          "name": "x",
          "type": "uint256"
        },
        {
          "internalType": "uint256",
          "name": "y",
          "type": "uint256"
        },
        {
          "internalType": "uint256",
          "name": "z",
          "type": "uint256"
        }
      ],
      "name": "mulDivRoundingUp",
      "outputs": [
        {
          "internalType": "uint256",
          "name": "",
          "type": "uint256"
        }
      ],
      "stateMutability": "pure",
      "type": "function"
    }
  ],
  "bytecode": "0x608060405234801561001057600080fd5b50610442806100206000396000f3fe608060405234801561001057600080fd5b50600436106100365760003560e01c80630af8b27f1461003b578063aa9a091214610060575b600080fd5b61004e61004936600461037e565b610073565b60405190815260200160405180910390f35b61004e61006e36600461037e565b6100be565b60008060008380610086576100866103aa565b8587091190508061009857600061009b565b60015b60ff166100a98686866100d3565b6100b391906103d6565b9150505b9392505050565b60006100cb8484846100d3565b949350505050565b60008060006100e286866101a2565b91509150600084806100f6576100f66103aa565b8688099050828111156101115761010e6001836103e9565b91505b61011b81846103e9565b9250816000036101395761012f85846103fc565b93505050506100b7565b84821061018c5760405162461bcd60e51b815260206004820152601a60248201527f46756c6c4d6174683a2046554c4c4449565f4f564552464c4f57000000000000604482015260640160405180910390fd5b6101978383876101e4565b979650505050505050565b6000808060001984860990506101b8848661041e565b92506101c483826103e9565b9150828110156101dc576101d96001836103e9565b91505b509250929050565b6000806101f08361035f565b831690506101fe81846103fc565b925061020a81866103fc565b9450806102168261035f565b61022091906103fc565b61022b9060016103d6565b610235908561041e565b61023f90866103d6565b9450600161024d818561041e565b6102589060026103e9565b610262908261041e565b905061026e818561041e565b6102799060026103e9565b610283908261041e565b905061028f818561041e565b61029a9060026103e9565b6102a4908261041e565b90506102b0818561041e565b6102bb9060026103e9565b6102c5908261041e565b90506102d1818561041e565b6102dc9060026103e9565b6102e6908261041e565b90506102f2818561041e565b6102fd9060026103e9565b610307908261041e565b9050610313818561041e565b61031e9060026103e9565b610328908261041e565b9050610334818561041e565b61033f9060026103e9565b610349908261041e565b9050610355818761041e565b9695505050505050565b600061036d826000196103e9565b6103789060016103d6565b92915050565b60008060006060848603121561039357600080fd5b505081359360208301359350604090920135919050565b634e487b7160e01b600052601260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b80820180821115610378576103786103c0565b81810381811115610378576103786103c0565b60008261041957634e487b7160e01b600052601260045260246000fd5b500490565b8082028115828204841417610378576103786103c056fea164736f6c6343000812000a",
  "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100365760003560e01c80630af8b27f1461003b578063aa9a091214610060575b600080fd5b61004e61004936600461037e565b610073565b60405190815260200160405180910390f35b61004e61006e36600461037e565b6100be565b60008060008380610086576100866103aa565b8587091190508061009857600061009b565b60015b60ff166100a98686866100d3565b6100b391906103d6565b9150505b9392505050565b60006100cb8484846100d3565b949350505050565b60008060006100e286866101a2565b91509150600084806100f6576100f66103aa565b8688099050828111156101115761010e6001836103e9565b91505b61011b81846103e9565b9250816000036101395761012f85846103fc565b93505050506100b7565b84821061018c5760405162461bcd60e51b815260206004820152601a60248201527f46756c6c4d6174683a2046554c4c4449565f4f564552464c4f57000000000000604482015260640160405180910390fd5b6101978383876101e4565b979650505050505050565b6000808060001984860990506101b8848661041e565b92506101c483826103e9565b9150828110156101dc576101d96001836103e9565b91505b509250929050565b6000806101f08361035f565b831690506101fe81846103fc565b925061020a81866103fc565b9450806102168261035f565b61022091906103fc565b61022b9060016103d6565b610235908561041e565b61023f90866103d6565b9450600161024d818561041e565b6102589060026103e9565b610262908261041e565b905061026e818561041e565b6102799060026103e9565b610283908261041e565b905061028f818561041e565b61029a9060026103e9565b6102a4908261041e565b90506102b0818561041e565b6102bb9060026103e9565b6102c5908261041e565b90506102d1818561041e565b6102dc9060026103e9565b6102e6908261041e565b90506102f2818561041e565b6102fd9060026103e9565b610307908261041e565b9050610313818561041e565b61031e9060026103e9565b610328908261041e565b9050610334818561041e565b61033f9060026103e9565b610349908261041e565b9050610355818761041e565b9695505050505050565b600061036d826000196103e9565b6103789060016103d6565b92915050565b60008060006060848603121561039357600080fd5b505081359360208301359350604090920135919050565b634e487b7160e01b600052601260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b80820180821115610378576103786103c0565b81810381811115610378576103786103c0565b60008261041957634e487b7160e01b600052601260045260246000fd5b500490565b8082028115828204841417610378576103786103c056fea164736f6c6343000812000a",
  "linkReferences": {},
  "deployedLinkReferences": {}
}
