{ "compiler": { "version": "0.8.17+commit.8df45f5f" }, "language": "Solidity", "output": { "abi": [ { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "uint8", "name": "version", "type": "uint8" } ], "name": "Initialized", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "liquidatorAddress", "type": "address" }, { "indexed": true, "internalType": "uint256", "name": "debtValueToRepay", "type": "uint256" }, { "indexed": true, "internalType": "uint256", "name": "collateralAmountToLiquidate", "type": "uint256" }, { "indexed": false, "internalType": "uint256", "name": "liquidationProfit", "type": "uint256" }, { "indexed": false, "internalType": "uint256", "name": "dexAmountOut", "type": "uint256" }, { "indexed": false, "internalType": "uint256", "name": "stableSwapAmountOut", "type": "uint256" }, { "indexed": false, "internalType": "uint256", "name": "fundsUsedFromLiquidator", "type": "uint256" }, { "indexed": false, "internalType": "address[]", "name": "path", "type": "address[]" } ], "name": "LogFlashLiquidationSuccess", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": true, "internalType": "address", "name": "previousOwner", "type": "address" }, { "indexed": true, "internalType": "address", "name": "newOwner", "type": "address" } ], "name": "OwnershipTransferred", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "address", "name": "account", "type": "address" } ], "name": "Paused", "type": "event" }, { "anonymous": false, "inputs": [ { "indexed": false, "internalType": "address", "name": "account", "type": "address" } ], "name": "Unpaused", "type": "event" }, { "stateMutability": "payable", "type": "fallback" }, { "inputs": [], "name": "bookKeeper", "outputs": [ { "internalType": "contract IBookKeeper", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "fathomStablecoin", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "fixedSpreadLiquidationStrategy", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "", "type": "address" }, { "internalType": "uint256", "name": "_debtValueToRepay", "type": "uint256" }, { "internalType": "uint256", "name": "_collateralAmountToLiquidate", "type": "uint256" }, { "internalType": "bytes", "name": "data", "type": "bytes" } ], "name": "flashLendingCall", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "_bookKeeper", "type": "address" }, { "internalType": "address", "name": "_fathomStablecoin", "type": "address" }, { "internalType": "address", "name": "_stablecoinAdapter", "type": "address" }, { "internalType": "address", "name": "_fixedSpreadLiquidationStrategy", "type": "address" }, { "internalType": "address", "name": "_profitRecipient", "type": "address" }, { "internalType": "address", "name": "_usdToken", "type": "address" }, { "internalType": "address", "name": "_stableSwap", "type": "address" } ], "name": "initialize", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "owner", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "pause", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "paused", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "profitRecipient", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "renounceOwnership", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "_profitRecipient", "type": "address" } ], "name": "setProfitRecipient", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "stableSwap", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "stablecoinAdapter", "outputs": [ { "internalType": "contract IStablecoinAdapter", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "inputs": [ { "internalType": "bytes4", "name": "_interfaceId", "type": "bytes4" } ], "name": "supportsInterface", "outputs": [ { "internalType": "bool", "name": "", "type": "bool" } ], "stateMutability": "pure", "type": "function" }, { "inputs": [ { "internalType": "address", "name": "newOwner", "type": "address" } ], "name": "transferOwnership", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "unpause", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [], "name": "usdToken", "outputs": [ { "internalType": "address", "name": "", "type": "address" } ], "stateMutability": "view", "type": "function" }, { "stateMutability": "payable", "type": "receive" } ], "devdoc": { "kind": "dev", "methods": { "owner()": { "details": "Returns the address of the current owner." }, "paused()": { "details": "Returns true if the contract is paused, and false otherwise." }, "renounceOwnership()": { "details": "Leaves the contract without owner. It will not be possible to call `onlyOwner` functions. Can only be called by the current owner. NOTE: Renouncing ownership will leave the contract without an owner, thereby disabling any functionality that is only available to the owner." }, "transferOwnership(address)": { "details": "Transfers ownership of the contract to a new account (`newOwner`). Can only be called by the current owner." } }, "version": 1 }, "userdoc": { "kind": "user", "methods": {}, "version": 1 } }, "settings": { "compilationTarget": { "contracts/FlashLiquidator.sol": "FlashLiquidator" }, "evmVersion": "london", "libraries": {}, "metadata": { "bytecodeHash": "ipfs" }, "optimizer": { "enabled": false, "runs": 200 }, "remappings": [] }, "sources": { "@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.sol": { "keccak256": "0x4075622496acc77fd6d4de4cc30a8577a744d5c75afad33fdeacf1704d6eda98", "license": "MIT", "urls": [ "bzz-raw://99c8cb3cd19a44bbfb6612605affb7d8b06cee1f6aa9362a37a8672b4f7eeaf8", "dweb:/ipfs/QmasyxFDBUp7k5KFgfDWEzM8PYSKEq7GVznzMJ1VxVRF4B" ] }, "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol": { "keccak256": "0x89be10e757d242e9b18d5a32c9fbe2019f6d63052bbe46397a430a1d60d7f794", "license": "MIT", "urls": [ "bzz-raw://f103ee2e4aecd37aac6ceefe670709cdd7613dee25fa2d4d9feaf7fc0aaa155e", "dweb:/ipfs/QmRiNZLoJk5k3HPMYGPGjZFd2ke1ZxjhJZkM45Ec9GH9hv" ] }, "@openzeppelin/contracts-upgradeable/security/PausableUpgradeable.sol": { "keccak256": "0x40c636b4572ff5f1dc50cf22097e93c0723ee14eff87e99ac2b02636eeca1250", "license": "MIT", "urls": [ "bzz-raw://9c7d1f5e15633ab912b74c2f57e24559e66b03232300d4b27ff0f25bc452ecad", "dweb:/ipfs/QmYTJkc1cntYkKQ1Tu11nBcJLakiy93Tjytc4XHELo4GmR" ] }, "@openzeppelin/contracts-upgradeable/security/ReentrancyGuardUpgradeable.sol": { "keccak256": "0xb82ef33f43b6b96109687d91b39c94573fdccaaa423fe28e8ba0977b31c023e0", "license": "MIT", "urls": [ "bzz-raw://ec9c629f63e66379f9c868a74f971064701cc6e30583872aa653f8b932518025", "dweb:/ipfs/QmY4MnZF2VMFwJkAwpdQwxEWA3KcGbNBKEmAVYePMVQWUR" ] }, "@openzeppelin/contracts-upgradeable/utils/AddressUpgradeable.sol": { "keccak256": "0x9c80f545915582e63fe206c6ce27cbe85a86fc10b9cd2a0e8c9488fb7c2ee422", "license": "MIT", "urls": [ "bzz-raw://310136ad60820af4177a11a61d77a3686faf5fca4942b600e08fc940db38396b", "dweb:/ipfs/QmbCzMNSTL7Zi7M4UCSqBrkHtp4jjxUnGbkneCZKdR1qeq" ] }, "@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable.sol": { "keccak256": "0x963ea7f0b48b032eef72fe3a7582edf78408d6f834115b9feadd673a4d5bd149", "license": "MIT", "urls": [ "bzz-raw://d6520943ea55fdf5f0bafb39ed909f64de17051bc954ff3e88c9e5621412c79c", "dweb:/ipfs/QmWZ4rAKTQbNG2HxGs46AcTXShsVytKeLs7CUCdCSv5N7a" ] }, "@openzeppelin/contracts-upgradeable/utils/math/SafeMathUpgradeable.sol": { "keccak256": "0xb1561a6950b1aaa504c8f81b7d46bccfa77ccd10de3eb865cf34b1acd5ad505e", "license": "MIT", "urls": [ "bzz-raw://9a56cb91629dacd161be24908fbf94315f3f45dd6fee8dad82b27af853cbc4ee", "dweb:/ipfs/QmNfEzdf4NTpxyhzWKAmeDwwSpJ6ZjNizK3GXw3TEuTTgn" ] }, "contracts/FlashLiquidator.sol": { "keccak256": "0xc25bd5e47e982df9423525f9d200040f9fb38c7452baf49f3c904bf1a4301699", "urls": [ "bzz-raw://31ea053099740751cf3aaa6a606afbdd28c8ad8e13452d008bc3c16732eb6f93", "dweb:/ipfs/QmY1nfhF67uDfwfEFZkdFqZMc7i6PzFDY5JTu6oy4HJkUs" ] } }, "version": 1 }