From fc8aa786bd5103559e22b914a14fd515dfe313b6 Mon Sep 17 00:00:00 2001
From: pradyuman-verma <pradyumnverma27@gmail.com>
Date: Wed, 23 Mar 2022 16:13:46 +0530
Subject: [PATCH] updated compound test

---
 test/mainnet/compound-import/ABIs/cDaiAbi.js  | 1533 ----------
 test/mainnet/compound-import/ABIs/cEthAbi.js  | 1184 --------
 .../compound-import/ABIs/comptrollerAbi.js    | 2654 -----------------
 .../compound-import/compound-import.test.js   |  186 --
 .../compound-import/compound-import.test.ts   |  239 ++
 test/mainnet/compound-import/constants.js     |    6 -
 6 files changed, 239 insertions(+), 5563 deletions(-)
 delete mode 100644 test/mainnet/compound-import/ABIs/cDaiAbi.js
 delete mode 100644 test/mainnet/compound-import/ABIs/cEthAbi.js
 delete mode 100644 test/mainnet/compound-import/ABIs/comptrollerAbi.js
 delete mode 100644 test/mainnet/compound-import/compound-import.test.js
 create mode 100644 test/mainnet/compound-import/compound-import.test.ts
 delete mode 100644 test/mainnet/compound-import/constants.js

diff --git a/test/mainnet/compound-import/ABIs/cDaiAbi.js b/test/mainnet/compound-import/ABIs/cDaiAbi.js
deleted file mode 100644
index ae494e6d..00000000
--- a/test/mainnet/compound-import/ABIs/cDaiAbi.js
+++ /dev/null
@@ -1,1533 +0,0 @@
-const cDaiAbi = [
-    {
-        "inputs": [
-            {
-                "internalType": "address",
-                "name": "underlying_",
-                "type": "address"
-            },
-            {
-                "internalType": "contract ComptrollerInterface",
-                "name": "comptroller_",
-                "type": "address"
-            },
-            {
-                "internalType": "contract InterestRateModel",
-                "name": "interestRateModel_",
-                "type": "address"
-            },
-            {
-                "internalType": "uint256",
-                "name": "initialExchangeRateMantissa_",
-                "type": "uint256"
-            },
-            {
-                "internalType": "string",
-                "name": "name_",
-                "type": "string"
-            },
-            {
-                "internalType": "string",
-                "name": "symbol_",
-                "type": "string"
-            },
-            {
-                "internalType": "uint8",
-                "name": "decimals_",
-                "type": "uint8"
-            },
-            {
-                "internalType": "address payable",
-                "name": "admin_",
-                "type": "address"
-            },
-            {
-                "internalType": "address",
-                "name": "implementation_",
-                "type": "address"
-            },
-            {
-                "internalType": "bytes",
-                "name": "becomeImplementationData",
-                "type": "bytes"
-            }
-        ],
-        "payable": false,
-        "stateMutability": "nonpayable",
-        "type": "constructor",
-        "signature": "constructor"
-    },
-    {
-        "anonymous": false,
-        "inputs": [
-            {
-                "indexed": false,
-                "internalType": "uint256",
-                "name": "cashPrior",
-                "type": "uint256"
-            },
-            {
-                "indexed": false,
-                "internalType": "uint256",
-                "name": "interestAccumulated",
-                "type": "uint256"
-            },
-            {
-                "indexed": false,
-                "internalType": "uint256",
-                "name": "borrowIndex",
-                "type": "uint256"
-            },
-            {
-                "indexed": false,
-                "internalType": "uint256",
-                "name": "totalBorrows",
-                "type": "uint256"
-            }
-        ],
-        "name": "AccrueInterest",
-        "type": "event",
-        "signature": "0x4dec04e750ca11537cabcd8a9eab06494de08da3735bc8871cd41250e190bc04"
-    },
-    {
-        "anonymous": false,
-        "inputs": [
-            {
-                "indexed": true,
-                "internalType": "address",
-                "name": "owner",
-                "type": "address"
-            },
-            {
-                "indexed": true,
-                "internalType": "address",
-                "name": "spender",
-                "type": "address"
-            },
-            {
-                "indexed": false,
-                "internalType": "uint256",
-                "name": "amount",
-                "type": "uint256"
-            }
-        ],
-        "name": "Approval",
-        "type": "event",
-        "signature": "0x8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925"
-    },
-    {
-        "anonymous": false,
-        "inputs": [
-            {
-                "indexed": false,
-                "internalType": "address",
-                "name": "borrower",
-                "type": "address"
-            },
-            {
-                "indexed": false,
-                "internalType": "uint256",
-                "name": "borrowAmount",
-                "type": "uint256"
-            },
-            {
-                "indexed": false,
-                "internalType": "uint256",
-                "name": "accountBorrows",
-                "type": "uint256"
-            },
-            {
-                "indexed": false,
-                "internalType": "uint256",
-                "name": "totalBorrows",
-                "type": "uint256"
-            }
-        ],
-        "name": "Borrow",
-        "type": "event",
-        "signature": "0x13ed6866d4e1ee6da46f845c46d7e54120883d75c5ea9a2dacc1c4ca8984ab80"
-    },
-    {
-        "anonymous": false,
-        "inputs": [
-            {
-                "indexed": false,
-                "internalType": "uint256",
-                "name": "error",
-                "type": "uint256"
-            },
-            {
-                "indexed": false,
-                "internalType": "uint256",
-                "name": "info",
-                "type": "uint256"
-            },
-            {
-                "indexed": false,
-                "internalType": "uint256",
-                "name": "detail",
-                "type": "uint256"
-            }
-        ],
-        "name": "Failure",
-        "type": "event",
-        "signature": "0x45b96fe442630264581b197e84bbada861235052c5a1aadfff9ea4e40a969aa0"
-    },
-    {
-        "anonymous": false,
-        "inputs": [
-            {
-                "indexed": false,
-                "internalType": "address",
-                "name": "liquidator",
-                "type": "address"
-            },
-            {
-                "indexed": false,
-                "internalType": "address",
-                "name": "borrower",
-                "type": "address"
-            },
-            {
-                "indexed": false,
-                "internalType": "uint256",
-                "name": "repayAmount",
-                "type": "uint256"
-            },
-            {
-                "indexed": false,
-                "internalType": "address",
-                "name": "cTokenCollateral",
-                "type": "address"
-            },
-            {
-                "indexed": false,
-                "internalType": "uint256",
-                "name": "seizeTokens",
-                "type": "uint256"
-            }
-        ],
-        "name": "LiquidateBorrow",
-        "type": "event",
-        "signature": "0x298637f684da70674f26509b10f07ec2fbc77a335ab1e7d6215a4b2484d8bb52"
-    },
-    {
-        "anonymous": false,
-        "inputs": [
-            {
-                "indexed": false,
-                "internalType": "address",
-                "name": "minter",
-                "type": "address"
-            },
-            {
-                "indexed": false,
-                "internalType": "uint256",
-                "name": "mintAmount",
-                "type": "uint256"
-            },
-            {
-                "indexed": false,
-                "internalType": "uint256",
-                "name": "mintTokens",
-                "type": "uint256"
-            }
-        ],
-        "name": "Mint",
-        "type": "event",
-        "signature": "0x4c209b5fc8ad50758f13e2e1088ba56a560dff690a1c6fef26394f4c03821c4f"
-    },
-    {
-        "anonymous": false,
-        "inputs": [
-            {
-                "indexed": false,
-                "internalType": "address",
-                "name": "oldAdmin",
-                "type": "address"
-            },
-            {
-                "indexed": false,
-                "internalType": "address",
-                "name": "newAdmin",
-                "type": "address"
-            }
-        ],
-        "name": "NewAdmin",
-        "type": "event",
-        "signature": "0xf9ffabca9c8276e99321725bcb43fb076a6c66a54b7f21c4e8146d8519b417dc"
-    },
-    {
-        "anonymous": false,
-        "inputs": [
-            {
-                "indexed": false,
-                "internalType": "contract ComptrollerInterface",
-                "name": "oldComptroller",
-                "type": "address"
-            },
-            {
-                "indexed": false,
-                "internalType": "contract ComptrollerInterface",
-                "name": "newComptroller",
-                "type": "address"
-            }
-        ],
-        "name": "NewComptroller",
-        "type": "event",
-        "signature": "0x7ac369dbd14fa5ea3f473ed67cc9d598964a77501540ba6751eb0b3decf5870d"
-    },
-    {
-        "anonymous": false,
-        "inputs": [
-            {
-                "indexed": false,
-                "internalType": "address",
-                "name": "oldImplementation",
-                "type": "address"
-            },
-            {
-                "indexed": false,
-                "internalType": "address",
-                "name": "newImplementation",
-                "type": "address"
-            }
-        ],
-        "name": "NewImplementation",
-        "type": "event",
-        "signature": "0xd604de94d45953f9138079ec1b82d533cb2160c906d1076d1f7ed54befbca97a"
-    },
-    {
-        "anonymous": false,
-        "inputs": [
-            {
-                "indexed": false,
-                "internalType": "contract InterestRateModel",
-                "name": "oldInterestRateModel",
-                "type": "address"
-            },
-            {
-                "indexed": false,
-                "internalType": "contract InterestRateModel",
-                "name": "newInterestRateModel",
-                "type": "address"
-            }
-        ],
-        "name": "NewMarketInterestRateModel",
-        "type": "event",
-        "signature": "0xedffc32e068c7c95dfd4bdfd5c4d939a084d6b11c4199eac8436ed234d72f926"
-    },
-    {
-        "anonymous": false,
-        "inputs": [
-            {
-                "indexed": false,
-                "internalType": "address",
-                "name": "oldPendingAdmin",
-                "type": "address"
-            },
-            {
-                "indexed": false,
-                "internalType": "address",
-                "name": "newPendingAdmin",
-                "type": "address"
-            }
-        ],
-        "name": "NewPendingAdmin",
-        "type": "event",
-        "signature": "0xca4f2f25d0898edd99413412fb94012f9e54ec8142f9b093e7720646a95b16a9"
-    },
-    {
-        "anonymous": false,
-        "inputs": [
-            {
-                "indexed": false,
-                "internalType": "uint256",
-                "name": "oldReserveFactorMantissa",
-                "type": "uint256"
-            },
-            {
-                "indexed": false,
-                "internalType": "uint256",
-                "name": "newReserveFactorMantissa",
-                "type": "uint256"
-            }
-        ],
-        "name": "NewReserveFactor",
-        "type": "event",
-        "signature": "0xaaa68312e2ea9d50e16af5068410ab56e1a1fd06037b1a35664812c30f821460"
-    },
-    {
-        "anonymous": false,
-        "inputs": [
-            {
-                "indexed": false,
-                "internalType": "address",
-                "name": "redeemer",
-                "type": "address"
-            },
-            {
-                "indexed": false,
-                "internalType": "uint256",
-                "name": "redeemAmount",
-                "type": "uint256"
-            },
-            {
-                "indexed": false,
-                "internalType": "uint256",
-                "name": "redeemTokens",
-                "type": "uint256"
-            }
-        ],
-        "name": "Redeem",
-        "type": "event",
-        "signature": "0xe5b754fb1abb7f01b499791d0b820ae3b6af3424ac1c59768edb53f4ec31a929"
-    },
-    {
-        "anonymous": false,
-        "inputs": [
-            {
-                "indexed": false,
-                "internalType": "address",
-                "name": "payer",
-                "type": "address"
-            },
-            {
-                "indexed": false,
-                "internalType": "address",
-                "name": "borrower",
-                "type": "address"
-            },
-            {
-                "indexed": false,
-                "internalType": "uint256",
-                "name": "repayAmount",
-                "type": "uint256"
-            },
-            {
-                "indexed": false,
-                "internalType": "uint256",
-                "name": "accountBorrows",
-                "type": "uint256"
-            },
-            {
-                "indexed": false,
-                "internalType": "uint256",
-                "name": "totalBorrows",
-                "type": "uint256"
-            }
-        ],
-        "name": "RepayBorrow",
-        "type": "event",
-        "signature": "0x1a2a22cb034d26d1854bdc6666a5b91fe25efbbb5dcad3b0355478d6f5c362a1"
-    },
-    {
-        "anonymous": false,
-        "inputs": [
-            {
-                "indexed": false,
-                "internalType": "address",
-                "name": "benefactor",
-                "type": "address"
-            },
-            {
-                "indexed": false,
-                "internalType": "uint256",
-                "name": "addAmount",
-                "type": "uint256"
-            },
-            {
-                "indexed": false,
-                "internalType": "uint256",
-                "name": "newTotalReserves",
-                "type": "uint256"
-            }
-        ],
-        "name": "ReservesAdded",
-        "type": "event",
-        "signature": "0xa91e67c5ea634cd43a12c5a482724b03de01e85ca68702a53d0c2f45cb7c1dc5"
-    },
-    {
-        "anonymous": false,
-        "inputs": [
-            {
-                "indexed": false,
-                "internalType": "address",
-                "name": "admin",
-                "type": "address"
-            },
-            {
-                "indexed": false,
-                "internalType": "uint256",
-                "name": "reduceAmount",
-                "type": "uint256"
-            },
-            {
-                "indexed": false,
-                "internalType": "uint256",
-                "name": "newTotalReserves",
-                "type": "uint256"
-            }
-        ],
-        "name": "ReservesReduced",
-        "type": "event",
-        "signature": "0x3bad0c59cf2f06e7314077049f48a93578cd16f5ef92329f1dab1420a99c177e"
-    },
-    {
-        "anonymous": false,
-        "inputs": [
-            {
-                "indexed": true,
-                "internalType": "address",
-                "name": "from",
-                "type": "address"
-            },
-            {
-                "indexed": true,
-                "internalType": "address",
-                "name": "to",
-                "type": "address"
-            },
-            {
-                "indexed": false,
-                "internalType": "uint256",
-                "name": "amount",
-                "type": "uint256"
-            }
-        ],
-        "name": "Transfer",
-        "type": "event",
-        "signature": "0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef"
-    },
-    {
-        "payable": true,
-        "stateMutability": "payable",
-        "type": "fallback"
-    },
-    {
-        "constant": false,
-        "inputs": [],
-        "name": "_acceptAdmin",
-        "outputs": [
-            {
-                "internalType": "uint256",
-                "name": "",
-                "type": "uint256"
-            }
-        ],
-        "payable": false,
-        "stateMutability": "nonpayable",
-        "type": "function",
-        "signature": "0xe9c714f2"
-    },
-    {
-        "constant": false,
-        "inputs": [
-            {
-                "internalType": "uint256",
-                "name": "addAmount",
-                "type": "uint256"
-            }
-        ],
-        "name": "_addReserves",
-        "outputs": [
-            {
-                "internalType": "uint256",
-                "name": "",
-                "type": "uint256"
-            }
-        ],
-        "payable": false,
-        "stateMutability": "nonpayable",
-        "type": "function",
-        "signature": "0x3e941010"
-    },
-    {
-        "constant": false,
-        "inputs": [
-            {
-                "internalType": "uint256",
-                "name": "reduceAmount",
-                "type": "uint256"
-            }
-        ],
-        "name": "_reduceReserves",
-        "outputs": [
-            {
-                "internalType": "uint256",
-                "name": "",
-                "type": "uint256"
-            }
-        ],
-        "payable": false,
-        "stateMutability": "nonpayable",
-        "type": "function",
-        "signature": "0x601a0bf1"
-    },
-    {
-        "constant": false,
-        "inputs": [
-            {
-                "internalType": "contract ComptrollerInterface",
-                "name": "newComptroller",
-                "type": "address"
-            }
-        ],
-        "name": "_setComptroller",
-        "outputs": [
-            {
-                "internalType": "uint256",
-                "name": "",
-                "type": "uint256"
-            }
-        ],
-        "payable": false,
-        "stateMutability": "nonpayable",
-        "type": "function",
-        "signature": "0x4576b5db"
-    },
-    {
-        "constant": false,
-        "inputs": [
-            {
-                "internalType": "address",
-                "name": "implementation_",
-                "type": "address"
-            },
-            {
-                "internalType": "bool",
-                "name": "allowResign",
-                "type": "bool"
-            },
-            {
-                "internalType": "bytes",
-                "name": "becomeImplementationData",
-                "type": "bytes"
-            }
-        ],
-        "name": "_setImplementation",
-        "outputs": [],
-        "payable": false,
-        "stateMutability": "nonpayable",
-        "type": "function",
-        "signature": "0x555bcc40"
-    },
-    {
-        "constant": false,
-        "inputs": [
-            {
-                "internalType": "contract InterestRateModel",
-                "name": "newInterestRateModel",
-                "type": "address"
-            }
-        ],
-        "name": "_setInterestRateModel",
-        "outputs": [
-            {
-                "internalType": "uint256",
-                "name": "",
-                "type": "uint256"
-            }
-        ],
-        "payable": false,
-        "stateMutability": "nonpayable",
-        "type": "function",
-        "signature": "0xf2b3abbd"
-    },
-    {
-        "constant": false,
-        "inputs": [
-            {
-                "internalType": "address payable",
-                "name": "newPendingAdmin",
-                "type": "address"
-            }
-        ],
-        "name": "_setPendingAdmin",
-        "outputs": [
-            {
-                "internalType": "uint256",
-                "name": "",
-                "type": "uint256"
-            }
-        ],
-        "payable": false,
-        "stateMutability": "nonpayable",
-        "type": "function",
-        "signature": "0xb71d1a0c"
-    },
-    {
-        "constant": false,
-        "inputs": [
-            {
-                "internalType": "uint256",
-                "name": "newReserveFactorMantissa",
-                "type": "uint256"
-            }
-        ],
-        "name": "_setReserveFactor",
-        "outputs": [
-            {
-                "internalType": "uint256",
-                "name": "",
-                "type": "uint256"
-            }
-        ],
-        "payable": false,
-        "stateMutability": "nonpayable",
-        "type": "function",
-        "signature": "0xfca7820b"
-    },
-    {
-        "constant": true,
-        "inputs": [],
-        "name": "accrualBlockNumber",
-        "outputs": [
-            {
-                "internalType": "uint256",
-                "name": "",
-                "type": "uint256"
-            }
-        ],
-        "payable": false,
-        "stateMutability": "view",
-        "type": "function",
-        "signature": "0x6c540baf"
-    },
-    {
-        "constant": false,
-        "inputs": [],
-        "name": "accrueInterest",
-        "outputs": [
-            {
-                "internalType": "uint256",
-                "name": "",
-                "type": "uint256"
-            }
-        ],
-        "payable": false,
-        "stateMutability": "nonpayable",
-        "type": "function",
-        "signature": "0xa6afed95"
-    },
-    {
-        "constant": true,
-        "inputs": [],
-        "name": "admin",
-        "outputs": [
-            {
-                "internalType": "address payable",
-                "name": "",
-                "type": "address"
-            }
-        ],
-        "payable": false,
-        "stateMutability": "view",
-        "type": "function",
-        "signature": "0xf851a440"
-    },
-    {
-        "constant": true,
-        "inputs": [
-            {
-                "internalType": "address",
-                "name": "owner",
-                "type": "address"
-            },
-            {
-                "internalType": "address",
-                "name": "spender",
-                "type": "address"
-            }
-        ],
-        "name": "allowance",
-        "outputs": [
-            {
-                "internalType": "uint256",
-                "name": "",
-                "type": "uint256"
-            }
-        ],
-        "payable": false,
-        "stateMutability": "view",
-        "type": "function",
-        "signature": "0xdd62ed3e"
-    },
-    {
-        "constant": false,
-        "inputs": [
-            {
-                "internalType": "address",
-                "name": "spender",
-                "type": "address"
-            },
-            {
-                "internalType": "uint256",
-                "name": "amount",
-                "type": "uint256"
-            }
-        ],
-        "name": "approve",
-        "outputs": [
-            {
-                "internalType": "bool",
-                "name": "",
-                "type": "bool"
-            }
-        ],
-        "payable": false,
-        "stateMutability": "nonpayable",
-        "type": "function",
-        "signature": "0x095ea7b3"
-    },
-    {
-        "constant": true,
-        "inputs": [
-            {
-                "internalType": "address",
-                "name": "owner",
-                "type": "address"
-            }
-        ],
-        "name": "balanceOf",
-        "outputs": [
-            {
-                "internalType": "uint256",
-                "name": "",
-                "type": "uint256"
-            }
-        ],
-        "payable": false,
-        "stateMutability": "view",
-        "type": "function",
-        "signature": "0x70a08231"
-    },
-    {
-        "constant": false,
-        "inputs": [
-            {
-                "internalType": "address",
-                "name": "owner",
-                "type": "address"
-            }
-        ],
-        "name": "balanceOfUnderlying",
-        "outputs": [
-            {
-                "internalType": "uint256",
-                "name": "",
-                "type": "uint256"
-            }
-        ],
-        "payable": false,
-        "stateMutability": "nonpayable",
-        "type": "function",
-        "signature": "0x3af9e669"
-    },
-    {
-        "constant": false,
-        "inputs": [
-            {
-                "internalType": "uint256",
-                "name": "borrowAmount",
-                "type": "uint256"
-            }
-        ],
-        "name": "borrow",
-        "outputs": [
-            {
-                "internalType": "uint256",
-                "name": "",
-                "type": "uint256"
-            }
-        ],
-        "payable": false,
-        "stateMutability": "nonpayable",
-        "type": "function",
-        "signature": "0xc5ebeaec"
-    },
-    {
-        "constant": false,
-        "inputs": [
-            {
-                "internalType": "address",
-                "name": "account",
-                "type": "address"
-            }
-        ],
-        "name": "borrowBalanceCurrent",
-        "outputs": [
-            {
-                "internalType": "uint256",
-                "name": "",
-                "type": "uint256"
-            }
-        ],
-        "payable": false,
-        "stateMutability": "nonpayable",
-        "type": "function",
-        "signature": "0x17bfdfbc"
-    },
-    {
-        "constant": true,
-        "inputs": [
-            {
-                "internalType": "address",
-                "name": "account",
-                "type": "address"
-            }
-        ],
-        "name": "borrowBalanceStored",
-        "outputs": [
-            {
-                "internalType": "uint256",
-                "name": "",
-                "type": "uint256"
-            }
-        ],
-        "payable": false,
-        "stateMutability": "view",
-        "type": "function",
-        "signature": "0x95dd9193"
-    },
-    {
-        "constant": true,
-        "inputs": [],
-        "name": "borrowIndex",
-        "outputs": [
-            {
-                "internalType": "uint256",
-                "name": "",
-                "type": "uint256"
-            }
-        ],
-        "payable": false,
-        "stateMutability": "view",
-        "type": "function",
-        "signature": "0xaa5af0fd"
-    },
-    {
-        "constant": true,
-        "inputs": [],
-        "name": "borrowRatePerBlock",
-        "outputs": [
-            {
-                "internalType": "uint256",
-                "name": "",
-                "type": "uint256"
-            }
-        ],
-        "payable": false,
-        "stateMutability": "view",
-        "type": "function",
-        "signature": "0xf8f9da28"
-    },
-    {
-        "constant": true,
-        "inputs": [],
-        "name": "comptroller",
-        "outputs": [
-            {
-                "internalType": "contract ComptrollerInterface",
-                "name": "",
-                "type": "address"
-            }
-        ],
-        "payable": false,
-        "stateMutability": "view",
-        "type": "function",
-        "signature": "0x5fe3b567"
-    },
-    {
-        "constant": true,
-        "inputs": [],
-        "name": "decimals",
-        "outputs": [
-            {
-                "internalType": "uint8",
-                "name": "",
-                "type": "uint8"
-            }
-        ],
-        "payable": false,
-        "stateMutability": "view",
-        "type": "function",
-        "signature": "0x313ce567"
-    },
-    {
-        "constant": false,
-        "inputs": [
-            {
-                "internalType": "bytes",
-                "name": "data",
-                "type": "bytes"
-            }
-        ],
-        "name": "delegateToImplementation",
-        "outputs": [
-            {
-                "internalType": "bytes",
-                "name": "",
-                "type": "bytes"
-            }
-        ],
-        "payable": false,
-        "stateMutability": "nonpayable",
-        "type": "function",
-        "signature": "0x0933c1ed"
-    },
-    {
-        "constant": true,
-        "inputs": [
-            {
-                "internalType": "bytes",
-                "name": "data",
-                "type": "bytes"
-            }
-        ],
-        "name": "delegateToViewImplementation",
-        "outputs": [
-            {
-                "internalType": "bytes",
-                "name": "",
-                "type": "bytes"
-            }
-        ],
-        "payable": false,
-        "stateMutability": "view",
-        "type": "function",
-        "signature": "0x4487152f"
-    },
-    {
-        "constant": false,
-        "inputs": [],
-        "name": "exchangeRateCurrent",
-        "outputs": [
-            {
-                "internalType": "uint256",
-                "name": "",
-                "type": "uint256"
-            }
-        ],
-        "payable": false,
-        "stateMutability": "nonpayable",
-        "type": "function",
-        "signature": "0xbd6d894d"
-    },
-    {
-        "constant": true,
-        "inputs": [],
-        "name": "exchangeRateStored",
-        "outputs": [
-            {
-                "internalType": "uint256",
-                "name": "",
-                "type": "uint256"
-            }
-        ],
-        "payable": false,
-        "stateMutability": "view",
-        "type": "function",
-        "signature": "0x182df0f5"
-    },
-    {
-        "constant": true,
-        "inputs": [
-            {
-                "internalType": "address",
-                "name": "account",
-                "type": "address"
-            }
-        ],
-        "name": "getAccountSnapshot",
-        "outputs": [
-            {
-                "internalType": "uint256",
-                "name": "",
-                "type": "uint256"
-            },
-            {
-                "internalType": "uint256",
-                "name": "",
-                "type": "uint256"
-            },
-            {
-                "internalType": "uint256",
-                "name": "",
-                "type": "uint256"
-            },
-            {
-                "internalType": "uint256",
-                "name": "",
-                "type": "uint256"
-            }
-        ],
-        "payable": false,
-        "stateMutability": "view",
-        "type": "function",
-        "signature": "0xc37f68e2"
-    },
-    {
-        "constant": true,
-        "inputs": [],
-        "name": "getCash",
-        "outputs": [
-            {
-                "internalType": "uint256",
-                "name": "",
-                "type": "uint256"
-            }
-        ],
-        "payable": false,
-        "stateMutability": "view",
-        "type": "function",
-        "signature": "0x3b1d21a2"
-    },
-    {
-        "constant": true,
-        "inputs": [],
-        "name": "implementation",
-        "outputs": [
-            {
-                "internalType": "address",
-                "name": "",
-                "type": "address"
-            }
-        ],
-        "payable": false,
-        "stateMutability": "view",
-        "type": "function",
-        "signature": "0x5c60da1b"
-    },
-    {
-        "constant": true,
-        "inputs": [],
-        "name": "interestRateModel",
-        "outputs": [
-            {
-                "internalType": "contract InterestRateModel",
-                "name": "",
-                "type": "address"
-            }
-        ],
-        "payable": false,
-        "stateMutability": "view",
-        "type": "function",
-        "signature": "0xf3fdb15a"
-    },
-    {
-        "constant": true,
-        "inputs": [],
-        "name": "isCToken",
-        "outputs": [
-            {
-                "internalType": "bool",
-                "name": "",
-                "type": "bool"
-            }
-        ],
-        "payable": false,
-        "stateMutability": "view",
-        "type": "function",
-        "signature": "0xfe9c44ae"
-    },
-    {
-        "constant": false,
-        "inputs": [
-            {
-                "internalType": "address",
-                "name": "borrower",
-                "type": "address"
-            },
-            {
-                "internalType": "uint256",
-                "name": "repayAmount",
-                "type": "uint256"
-            },
-            {
-                "internalType": "contract CTokenInterface",
-                "name": "cTokenCollateral",
-                "type": "address"
-            }
-        ],
-        "name": "liquidateBorrow",
-        "outputs": [
-            {
-                "internalType": "uint256",
-                "name": "",
-                "type": "uint256"
-            }
-        ],
-        "payable": false,
-        "stateMutability": "nonpayable",
-        "type": "function",
-        "signature": "0xf5e3c462"
-    },
-    {
-        "constant": false,
-        "inputs": [
-            {
-                "internalType": "uint256",
-                "name": "mintAmount",
-                "type": "uint256"
-            }
-        ],
-        "name": "mint",
-        "outputs": [
-            {
-                "internalType": "uint256",
-                "name": "",
-                "type": "uint256"
-            }
-        ],
-        "payable": false,
-        "stateMutability": "nonpayable",
-        "type": "function",
-        "signature": "0xa0712d68"
-    },
-    {
-        "constant": true,
-        "inputs": [],
-        "name": "name",
-        "outputs": [
-            {
-                "internalType": "string",
-                "name": "",
-                "type": "string"
-            }
-        ],
-        "payable": false,
-        "stateMutability": "view",
-        "type": "function",
-        "signature": "0x06fdde03"
-    },
-    {
-        "constant": true,
-        "inputs": [],
-        "name": "pendingAdmin",
-        "outputs": [
-            {
-                "internalType": "address payable",
-                "name": "",
-                "type": "address"
-            }
-        ],
-        "payable": false,
-        "stateMutability": "view",
-        "type": "function",
-        "signature": "0x26782247"
-    },
-    {
-        "constant": false,
-        "inputs": [
-            {
-                "internalType": "uint256",
-                "name": "redeemTokens",
-                "type": "uint256"
-            }
-        ],
-        "name": "redeem",
-        "outputs": [
-            {
-                "internalType": "uint256",
-                "name": "",
-                "type": "uint256"
-            }
-        ],
-        "payable": false,
-        "stateMutability": "nonpayable",
-        "type": "function",
-        "signature": "0xdb006a75"
-    },
-    {
-        "constant": false,
-        "inputs": [
-            {
-                "internalType": "uint256",
-                "name": "redeemAmount",
-                "type": "uint256"
-            }
-        ],
-        "name": "redeemUnderlying",
-        "outputs": [
-            {
-                "internalType": "uint256",
-                "name": "",
-                "type": "uint256"
-            }
-        ],
-        "payable": false,
-        "stateMutability": "nonpayable",
-        "type": "function",
-        "signature": "0x852a12e3"
-    },
-    {
-        "constant": false,
-        "inputs": [
-            {
-                "internalType": "uint256",
-                "name": "repayAmount",
-                "type": "uint256"
-            }
-        ],
-        "name": "repayBorrow",
-        "outputs": [
-            {
-                "internalType": "uint256",
-                "name": "",
-                "type": "uint256"
-            }
-        ],
-        "payable": false,
-        "stateMutability": "nonpayable",
-        "type": "function",
-        "signature": "0x0e752702"
-    },
-    {
-        "constant": false,
-        "inputs": [
-            {
-                "internalType": "address",
-                "name": "borrower",
-                "type": "address"
-            },
-            {
-                "internalType": "uint256",
-                "name": "repayAmount",
-                "type": "uint256"
-            }
-        ],
-        "name": "repayBorrowBehalf",
-        "outputs": [
-            {
-                "internalType": "uint256",
-                "name": "",
-                "type": "uint256"
-            }
-        ],
-        "payable": false,
-        "stateMutability": "nonpayable",
-        "type": "function",
-        "signature": "0x2608f818"
-    },
-    {
-        "constant": true,
-        "inputs": [],
-        "name": "reserveFactorMantissa",
-        "outputs": [
-            {
-                "internalType": "uint256",
-                "name": "",
-                "type": "uint256"
-            }
-        ],
-        "payable": false,
-        "stateMutability": "view",
-        "type": "function",
-        "signature": "0x173b9904"
-    },
-    {
-        "constant": false,
-        "inputs": [
-            {
-                "internalType": "address",
-                "name": "liquidator",
-                "type": "address"
-            },
-            {
-                "internalType": "address",
-                "name": "borrower",
-                "type": "address"
-            },
-            {
-                "internalType": "uint256",
-                "name": "seizeTokens",
-                "type": "uint256"
-            }
-        ],
-        "name": "seize",
-        "outputs": [
-            {
-                "internalType": "uint256",
-                "name": "",
-                "type": "uint256"
-            }
-        ],
-        "payable": false,
-        "stateMutability": "nonpayable",
-        "type": "function",
-        "signature": "0xb2a02ff1"
-    },
-    {
-        "constant": true,
-        "inputs": [],
-        "name": "supplyRatePerBlock",
-        "outputs": [
-            {
-                "internalType": "uint256",
-                "name": "",
-                "type": "uint256"
-            }
-        ],
-        "payable": false,
-        "stateMutability": "view",
-        "type": "function",
-        "signature": "0xae9d70b0"
-    },
-    {
-        "constant": true,
-        "inputs": [],
-        "name": "symbol",
-        "outputs": [
-            {
-                "internalType": "string",
-                "name": "",
-                "type": "string"
-            }
-        ],
-        "payable": false,
-        "stateMutability": "view",
-        "type": "function",
-        "signature": "0x95d89b41"
-    },
-    {
-        "constant": true,
-        "inputs": [],
-        "name": "totalBorrows",
-        "outputs": [
-            {
-                "internalType": "uint256",
-                "name": "",
-                "type": "uint256"
-            }
-        ],
-        "payable": false,
-        "stateMutability": "view",
-        "type": "function",
-        "signature": "0x47bd3718"
-    },
-    {
-        "constant": false,
-        "inputs": [],
-        "name": "totalBorrowsCurrent",
-        "outputs": [
-            {
-                "internalType": "uint256",
-                "name": "",
-                "type": "uint256"
-            }
-        ],
-        "payable": false,
-        "stateMutability": "nonpayable",
-        "type": "function",
-        "signature": "0x73acee98"
-    },
-    {
-        "constant": true,
-        "inputs": [],
-        "name": "totalReserves",
-        "outputs": [
-            {
-                "internalType": "uint256",
-                "name": "",
-                "type": "uint256"
-            }
-        ],
-        "payable": false,
-        "stateMutability": "view",
-        "type": "function",
-        "signature": "0x8f840ddd"
-    },
-    {
-        "constant": true,
-        "inputs": [],
-        "name": "totalSupply",
-        "outputs": [
-            {
-                "internalType": "uint256",
-                "name": "",
-                "type": "uint256"
-            }
-        ],
-        "payable": false,
-        "stateMutability": "view",
-        "type": "function",
-        "signature": "0x18160ddd"
-    },
-    {
-        "constant": false,
-        "inputs": [
-            {
-                "internalType": "address",
-                "name": "dst",
-                "type": "address"
-            },
-            {
-                "internalType": "uint256",
-                "name": "amount",
-                "type": "uint256"
-            }
-        ],
-        "name": "transfer",
-        "outputs": [
-            {
-                "internalType": "bool",
-                "name": "",
-                "type": "bool"
-            }
-        ],
-        "payable": false,
-        "stateMutability": "nonpayable",
-        "type": "function",
-        "signature": "0xa9059cbb"
-    },
-    {
-        "constant": false,
-        "inputs": [
-            {
-                "internalType": "address",
-                "name": "src",
-                "type": "address"
-            },
-            {
-                "internalType": "address",
-                "name": "dst",
-                "type": "address"
-            },
-            {
-                "internalType": "uint256",
-                "name": "amount",
-                "type": "uint256"
-            }
-        ],
-        "name": "transferFrom",
-        "outputs": [
-            {
-                "internalType": "bool",
-                "name": "",
-                "type": "bool"
-            }
-        ],
-        "payable": false,
-        "stateMutability": "nonpayable",
-        "type": "function",
-        "signature": "0x23b872dd"
-    },
-    {
-        "constant": true,
-        "inputs": [],
-        "name": "underlying",
-        "outputs": [
-            {
-                "internalType": "address",
-                "name": "",
-                "type": "address"
-            }
-        ],
-        "payable": false,
-        "stateMutability": "view",
-        "type": "function",
-        "signature": "0x6f307dc3"
-    }
-]
-module.exports = cDaiAbi;
\ No newline at end of file
diff --git a/test/mainnet/compound-import/ABIs/cEthAbi.js b/test/mainnet/compound-import/ABIs/cEthAbi.js
deleted file mode 100644
index ce4ecec4..00000000
--- a/test/mainnet/compound-import/ABIs/cEthAbi.js
+++ /dev/null
@@ -1,1184 +0,0 @@
-const cEthAbi = [
-    {
-        "constant": true,
-        "inputs": [],
-        "name": "name",
-        "outputs": [
-            {
-                "name": "",
-                "type": "string"
-            }
-        ],
-        "payable": false,
-        "stateMutability": "view",
-        "type": "function",
-        "signature": "0x06fdde03"
-    },
-    {
-        "constant": false,
-        "inputs": [
-            {
-                "name": "spender",
-                "type": "address"
-            },
-            {
-                "name": "amount",
-                "type": "uint256"
-            }
-        ],
-        "name": "approve",
-        "outputs": [
-            {
-                "name": "",
-                "type": "bool"
-            }
-        ],
-        "payable": false,
-        "stateMutability": "nonpayable",
-        "type": "function",
-        "signature": "0x095ea7b3"
-    },
-    {
-        "constant": false,
-        "inputs": [],
-        "name": "mint",
-        "outputs": [],
-        "payable": true,
-        "stateMutability": "payable",
-        "type": "function",
-        "signature": "0x1249c58b"
-    },
-    {
-        "constant": true,
-        "inputs": [],
-        "name": "reserveFactorMantissa",
-        "outputs": [
-            {
-                "name": "",
-                "type": "uint256"
-            }
-        ],
-        "payable": false,
-        "stateMutability": "view",
-        "type": "function",
-        "signature": "0x173b9904"
-    },
-    {
-        "constant": false,
-        "inputs": [
-            {
-                "name": "account",
-                "type": "address"
-            }
-        ],
-        "name": "borrowBalanceCurrent",
-        "outputs": [
-            {
-                "name": "",
-                "type": "uint256"
-            }
-        ],
-        "payable": false,
-        "stateMutability": "nonpayable",
-        "type": "function",
-        "signature": "0x17bfdfbc"
-    },
-    {
-        "constant": true,
-        "inputs": [],
-        "name": "totalSupply",
-        "outputs": [
-            {
-                "name": "",
-                "type": "uint256"
-            }
-        ],
-        "payable": false,
-        "stateMutability": "view",
-        "type": "function",
-        "signature": "0x18160ddd"
-    },
-    {
-        "constant": true,
-        "inputs": [],
-        "name": "exchangeRateStored",
-        "outputs": [
-            {
-                "name": "",
-                "type": "uint256"
-            }
-        ],
-        "payable": false,
-        "stateMutability": "view",
-        "type": "function",
-        "signature": "0x182df0f5"
-    },
-    {
-        "constant": false,
-        "inputs": [
-            {
-                "name": "src",
-                "type": "address"
-            },
-            {
-                "name": "dst",
-                "type": "address"
-            },
-            {
-                "name": "amount",
-                "type": "uint256"
-            }
-        ],
-        "name": "transferFrom",
-        "outputs": [
-            {
-                "name": "",
-                "type": "bool"
-            }
-        ],
-        "payable": false,
-        "stateMutability": "nonpayable",
-        "type": "function",
-        "signature": "0x23b872dd"
-    },
-    {
-        "constant": true,
-        "inputs": [],
-        "name": "pendingAdmin",
-        "outputs": [
-            {
-                "name": "",
-                "type": "address"
-            }
-        ],
-        "payable": false,
-        "stateMutability": "view",
-        "type": "function",
-        "signature": "0x26782247"
-    },
-    {
-        "constant": true,
-        "inputs": [],
-        "name": "decimals",
-        "outputs": [
-            {
-                "name": "",
-                "type": "uint256"
-            }
-        ],
-        "payable": false,
-        "stateMutability": "view",
-        "type": "function",
-        "signature": "0x313ce567"
-    },
-    {
-        "constant": false,
-        "inputs": [
-            {
-                "name": "owner",
-                "type": "address"
-            }
-        ],
-        "name": "balanceOfUnderlying",
-        "outputs": [
-            {
-                "name": "",
-                "type": "uint256"
-            }
-        ],
-        "payable": false,
-        "stateMutability": "nonpayable",
-        "type": "function",
-        "signature": "0x3af9e669"
-    },
-    {
-        "constant": true,
-        "inputs": [],
-        "name": "getCash",
-        "outputs": [
-            {
-                "name": "",
-                "type": "uint256"
-            }
-        ],
-        "payable": false,
-        "stateMutability": "view",
-        "type": "function",
-        "signature": "0x3b1d21a2"
-    },
-    {
-        "constant": false,
-        "inputs": [
-            {
-                "name": "newComptroller",
-                "type": "address"
-            }
-        ],
-        "name": "_setComptroller",
-        "outputs": [
-            {
-                "name": "",
-                "type": "uint256"
-            }
-        ],
-        "payable": false,
-        "stateMutability": "nonpayable",
-        "type": "function",
-        "signature": "0x4576b5db"
-    },
-    {
-        "constant": true,
-        "inputs": [],
-        "name": "totalBorrows",
-        "outputs": [
-            {
-                "name": "",
-                "type": "uint256"
-            }
-        ],
-        "payable": false,
-        "stateMutability": "view",
-        "type": "function",
-        "signature": "0x47bd3718"
-    },
-    {
-        "constant": false,
-        "inputs": [],
-        "name": "repayBorrow",
-        "outputs": [],
-        "payable": true,
-        "stateMutability": "payable",
-        "type": "function",
-        "signature": "0x4e4d9fea"
-    },
-    {
-        "constant": true,
-        "inputs": [],
-        "name": "comptroller",
-        "outputs": [
-            {
-                "name": "",
-                "type": "address"
-            }
-        ],
-        "payable": false,
-        "stateMutability": "view",
-        "type": "function",
-        "signature": "0x5fe3b567"
-    },
-    {
-        "constant": false,
-        "inputs": [
-            {
-                "name": "reduceAmount",
-                "type": "uint256"
-            }
-        ],
-        "name": "_reduceReserves",
-        "outputs": [
-            {
-                "name": "",
-                "type": "uint256"
-            }
-        ],
-        "payable": false,
-        "stateMutability": "nonpayable",
-        "type": "function",
-        "signature": "0x601a0bf1"
-    },
-    {
-        "constant": true,
-        "inputs": [],
-        "name": "initialExchangeRateMantissa",
-        "outputs": [
-            {
-                "name": "",
-                "type": "uint256"
-            }
-        ],
-        "payable": false,
-        "stateMutability": "view",
-        "type": "function",
-        "signature": "0x675d972c"
-    },
-    {
-        "constant": true,
-        "inputs": [],
-        "name": "accrualBlockNumber",
-        "outputs": [
-            {
-                "name": "",
-                "type": "uint256"
-            }
-        ],
-        "payable": false,
-        "stateMutability": "view",
-        "type": "function",
-        "signature": "0x6c540baf"
-    },
-    {
-        "constant": true,
-        "inputs": [
-            {
-                "name": "owner",
-                "type": "address"
-            }
-        ],
-        "name": "balanceOf",
-        "outputs": [
-            {
-                "name": "",
-                "type": "uint256"
-            }
-        ],
-        "payable": false,
-        "stateMutability": "view",
-        "type": "function",
-        "signature": "0x70a08231"
-    },
-    {
-        "constant": false,
-        "inputs": [],
-        "name": "totalBorrowsCurrent",
-        "outputs": [
-            {
-                "name": "",
-                "type": "uint256"
-            }
-        ],
-        "payable": false,
-        "stateMutability": "nonpayable",
-        "type": "function",
-        "signature": "0x73acee98"
-    },
-    {
-        "constant": false,
-        "inputs": [
-            {
-                "name": "redeemAmount",
-                "type": "uint256"
-            }
-        ],
-        "name": "redeemUnderlying",
-        "outputs": [
-            {
-                "name": "",
-                "type": "uint256"
-            }
-        ],
-        "payable": false,
-        "stateMutability": "nonpayable",
-        "type": "function",
-        "signature": "0x852a12e3"
-    },
-    {
-        "constant": true,
-        "inputs": [],
-        "name": "totalReserves",
-        "outputs": [
-            {
-                "name": "",
-                "type": "uint256"
-            }
-        ],
-        "payable": false,
-        "stateMutability": "view",
-        "type": "function",
-        "signature": "0x8f840ddd"
-    },
-    {
-        "constant": true,
-        "inputs": [],
-        "name": "symbol",
-        "outputs": [
-            {
-                "name": "",
-                "type": "string"
-            }
-        ],
-        "payable": false,
-        "stateMutability": "view",
-        "type": "function",
-        "signature": "0x95d89b41"
-    },
-    {
-        "constant": true,
-        "inputs": [
-            {
-                "name": "account",
-                "type": "address"
-            }
-        ],
-        "name": "borrowBalanceStored",
-        "outputs": [
-            {
-                "name": "",
-                "type": "uint256"
-            }
-        ],
-        "payable": false,
-        "stateMutability": "view",
-        "type": "function",
-        "signature": "0x95dd9193"
-    },
-    {
-        "constant": false,
-        "inputs": [],
-        "name": "accrueInterest",
-        "outputs": [
-            {
-                "name": "",
-                "type": "uint256"
-            }
-        ],
-        "payable": false,
-        "stateMutability": "nonpayable",
-        "type": "function",
-        "signature": "0xa6afed95"
-    },
-    {
-        "constant": false,
-        "inputs": [
-            {
-                "name": "dst",
-                "type": "address"
-            },
-            {
-                "name": "amount",
-                "type": "uint256"
-            }
-        ],
-        "name": "transfer",
-        "outputs": [
-            {
-                "name": "",
-                "type": "bool"
-            }
-        ],
-        "payable": false,
-        "stateMutability": "nonpayable",
-        "type": "function",
-        "signature": "0xa9059cbb"
-    },
-    {
-        "constant": true,
-        "inputs": [],
-        "name": "borrowIndex",
-        "outputs": [
-            {
-                "name": "",
-                "type": "uint256"
-            }
-        ],
-        "payable": false,
-        "stateMutability": "view",
-        "type": "function",
-        "signature": "0xaa5af0fd"
-    },
-    {
-        "constant": false,
-        "inputs": [
-            {
-                "name": "borrower",
-                "type": "address"
-            },
-            {
-                "name": "cTokenCollateral",
-                "type": "address"
-            }
-        ],
-        "name": "liquidateBorrow",
-        "outputs": [],
-        "payable": true,
-        "stateMutability": "payable",
-        "type": "function",
-        "signature": "0xaae40a2a"
-    },
-    {
-        "constant": true,
-        "inputs": [],
-        "name": "supplyRatePerBlock",
-        "outputs": [
-            {
-                "name": "",
-                "type": "uint256"
-            }
-        ],
-        "payable": false,
-        "stateMutability": "view",
-        "type": "function",
-        "signature": "0xae9d70b0"
-    },
-    {
-        "constant": false,
-        "inputs": [
-            {
-                "name": "liquidator",
-                "type": "address"
-            },
-            {
-                "name": "borrower",
-                "type": "address"
-            },
-            {
-                "name": "seizeTokens",
-                "type": "uint256"
-            }
-        ],
-        "name": "seize",
-        "outputs": [
-            {
-                "name": "",
-                "type": "uint256"
-            }
-        ],
-        "payable": false,
-        "stateMutability": "nonpayable",
-        "type": "function",
-        "signature": "0xb2a02ff1"
-    },
-    {
-        "constant": false,
-        "inputs": [
-            {
-                "name": "newPendingAdmin",
-                "type": "address"
-            }
-        ],
-        "name": "_setPendingAdmin",
-        "outputs": [
-            {
-                "name": "",
-                "type": "uint256"
-            }
-        ],
-        "payable": false,
-        "stateMutability": "nonpayable",
-        "type": "function",
-        "signature": "0xb71d1a0c"
-    },
-    {
-        "constant": false,
-        "inputs": [],
-        "name": "exchangeRateCurrent",
-        "outputs": [
-            {
-                "name": "",
-                "type": "uint256"
-            }
-        ],
-        "payable": false,
-        "stateMutability": "nonpayable",
-        "type": "function",
-        "signature": "0xbd6d894d"
-    },
-    {
-        "constant": true,
-        "inputs": [
-            {
-                "name": "account",
-                "type": "address"
-            }
-        ],
-        "name": "getAccountSnapshot",
-        "outputs": [
-            {
-                "name": "",
-                "type": "uint256"
-            },
-            {
-                "name": "",
-                "type": "uint256"
-            },
-            {
-                "name": "",
-                "type": "uint256"
-            },
-            {
-                "name": "",
-                "type": "uint256"
-            }
-        ],
-        "payable": false,
-        "stateMutability": "view",
-        "type": "function",
-        "signature": "0xc37f68e2"
-    },
-    {
-        "constant": false,
-        "inputs": [
-            {
-                "name": "borrowAmount",
-                "type": "uint256"
-            }
-        ],
-        "name": "borrow",
-        "outputs": [
-            {
-                "name": "",
-                "type": "uint256"
-            }
-        ],
-        "payable": false,
-        "stateMutability": "nonpayable",
-        "type": "function",
-        "signature": "0xc5ebeaec"
-    },
-    {
-        "constant": false,
-        "inputs": [
-            {
-                "name": "redeemTokens",
-                "type": "uint256"
-            }
-        ],
-        "name": "redeem",
-        "outputs": [
-            {
-                "name": "",
-                "type": "uint256"
-            }
-        ],
-        "payable": false,
-        "stateMutability": "nonpayable",
-        "type": "function",
-        "signature": "0xdb006a75"
-    },
-    {
-        "constant": true,
-        "inputs": [
-            {
-                "name": "owner",
-                "type": "address"
-            },
-            {
-                "name": "spender",
-                "type": "address"
-            }
-        ],
-        "name": "allowance",
-        "outputs": [
-            {
-                "name": "",
-                "type": "uint256"
-            }
-        ],
-        "payable": false,
-        "stateMutability": "view",
-        "type": "function",
-        "signature": "0xdd62ed3e"
-    },
-    {
-        "constant": false,
-        "inputs": [
-            {
-                "name": "borrower",
-                "type": "address"
-            }
-        ],
-        "name": "repayBorrowBehalf",
-        "outputs": [],
-        "payable": true,
-        "stateMutability": "payable",
-        "type": "function",
-        "signature": "0xe5974619"
-    },
-    {
-        "constant": false,
-        "inputs": [],
-        "name": "_acceptAdmin",
-        "outputs": [
-            {
-                "name": "",
-                "type": "uint256"
-            }
-        ],
-        "payable": false,
-        "stateMutability": "nonpayable",
-        "type": "function",
-        "signature": "0xe9c714f2"
-    },
-    {
-        "constant": false,
-        "inputs": [
-            {
-                "name": "newInterestRateModel",
-                "type": "address"
-            }
-        ],
-        "name": "_setInterestRateModel",
-        "outputs": [
-            {
-                "name": "",
-                "type": "uint256"
-            }
-        ],
-        "payable": false,
-        "stateMutability": "nonpayable",
-        "type": "function",
-        "signature": "0xf2b3abbd"
-    },
-    {
-        "constant": true,
-        "inputs": [],
-        "name": "interestRateModel",
-        "outputs": [
-            {
-                "name": "",
-                "type": "address"
-            }
-        ],
-        "payable": false,
-        "stateMutability": "view",
-        "type": "function",
-        "signature": "0xf3fdb15a"
-    },
-    {
-        "constant": true,
-        "inputs": [],
-        "name": "admin",
-        "outputs": [
-            {
-                "name": "",
-                "type": "address"
-            }
-        ],
-        "payable": false,
-        "stateMutability": "view",
-        "type": "function",
-        "signature": "0xf851a440"
-    },
-    {
-        "constant": true,
-        "inputs": [],
-        "name": "borrowRatePerBlock",
-        "outputs": [
-            {
-                "name": "",
-                "type": "uint256"
-            }
-        ],
-        "payable": false,
-        "stateMutability": "view",
-        "type": "function",
-        "signature": "0xf8f9da28"
-    },
-    {
-        "constant": false,
-        "inputs": [
-            {
-                "name": "newReserveFactorMantissa",
-                "type": "uint256"
-            }
-        ],
-        "name": "_setReserveFactor",
-        "outputs": [
-            {
-                "name": "",
-                "type": "uint256"
-            }
-        ],
-        "payable": false,
-        "stateMutability": "nonpayable",
-        "type": "function",
-        "signature": "0xfca7820b"
-    },
-    {
-        "constant": true,
-        "inputs": [],
-        "name": "isCToken",
-        "outputs": [
-            {
-                "name": "",
-                "type": "bool"
-            }
-        ],
-        "payable": false,
-        "stateMutability": "view",
-        "type": "function",
-        "signature": "0xfe9c44ae"
-    },
-    {
-        "inputs": [
-            {
-                "name": "comptroller_",
-                "type": "address"
-            },
-            {
-                "name": "interestRateModel_",
-                "type": "address"
-            },
-            {
-                "name": "initialExchangeRateMantissa_",
-                "type": "uint256"
-            },
-            {
-                "name": "name_",
-                "type": "string"
-            },
-            {
-                "name": "symbol_",
-                "type": "string"
-            },
-            {
-                "name": "decimals_",
-                "type": "uint256"
-            }
-        ],
-        "payable": false,
-        "stateMutability": "nonpayable",
-        "type": "constructor",
-        "signature": "constructor"
-    },
-    {
-        "payable": true,
-        "stateMutability": "payable",
-        "type": "fallback"
-    },
-    {
-        "anonymous": false,
-        "inputs": [
-            {
-                "indexed": false,
-                "name": "interestAccumulated",
-                "type": "uint256"
-            },
-            {
-                "indexed": false,
-                "name": "borrowIndex",
-                "type": "uint256"
-            },
-            {
-                "indexed": false,
-                "name": "totalBorrows",
-                "type": "uint256"
-            }
-        ],
-        "name": "AccrueInterest",
-        "type": "event",
-        "signature": "0x875352fb3fadeb8c0be7cbbe8ff761b308fa7033470cd0287f02f3436fd76cb9"
-    },
-    {
-        "anonymous": false,
-        "inputs": [
-            {
-                "indexed": false,
-                "name": "minter",
-                "type": "address"
-            },
-            {
-                "indexed": false,
-                "name": "mintAmount",
-                "type": "uint256"
-            },
-            {
-                "indexed": false,
-                "name": "mintTokens",
-                "type": "uint256"
-            }
-        ],
-        "name": "Mint",
-        "type": "event",
-        "signature": "0x4c209b5fc8ad50758f13e2e1088ba56a560dff690a1c6fef26394f4c03821c4f"
-    },
-    {
-        "anonymous": false,
-        "inputs": [
-            {
-                "indexed": false,
-                "name": "redeemer",
-                "type": "address"
-            },
-            {
-                "indexed": false,
-                "name": "redeemAmount",
-                "type": "uint256"
-            },
-            {
-                "indexed": false,
-                "name": "redeemTokens",
-                "type": "uint256"
-            }
-        ],
-        "name": "Redeem",
-        "type": "event",
-        "signature": "0xe5b754fb1abb7f01b499791d0b820ae3b6af3424ac1c59768edb53f4ec31a929"
-    },
-    {
-        "anonymous": false,
-        "inputs": [
-            {
-                "indexed": false,
-                "name": "borrower",
-                "type": "address"
-            },
-            {
-                "indexed": false,
-                "name": "borrowAmount",
-                "type": "uint256"
-            },
-            {
-                "indexed": false,
-                "name": "accountBorrows",
-                "type": "uint256"
-            },
-            {
-                "indexed": false,
-                "name": "totalBorrows",
-                "type": "uint256"
-            }
-        ],
-        "name": "Borrow",
-        "type": "event",
-        "signature": "0x13ed6866d4e1ee6da46f845c46d7e54120883d75c5ea9a2dacc1c4ca8984ab80"
-    },
-    {
-        "anonymous": false,
-        "inputs": [
-            {
-                "indexed": false,
-                "name": "payer",
-                "type": "address"
-            },
-            {
-                "indexed": false,
-                "name": "borrower",
-                "type": "address"
-            },
-            {
-                "indexed": false,
-                "name": "repayAmount",
-                "type": "uint256"
-            },
-            {
-                "indexed": false,
-                "name": "accountBorrows",
-                "type": "uint256"
-            },
-            {
-                "indexed": false,
-                "name": "totalBorrows",
-                "type": "uint256"
-            }
-        ],
-        "name": "RepayBorrow",
-        "type": "event",
-        "signature": "0x1a2a22cb034d26d1854bdc6666a5b91fe25efbbb5dcad3b0355478d6f5c362a1"
-    },
-    {
-        "anonymous": false,
-        "inputs": [
-            {
-                "indexed": false,
-                "name": "liquidator",
-                "type": "address"
-            },
-            {
-                "indexed": false,
-                "name": "borrower",
-                "type": "address"
-            },
-            {
-                "indexed": false,
-                "name": "repayAmount",
-                "type": "uint256"
-            },
-            {
-                "indexed": false,
-                "name": "cTokenCollateral",
-                "type": "address"
-            },
-            {
-                "indexed": false,
-                "name": "seizeTokens",
-                "type": "uint256"
-            }
-        ],
-        "name": "LiquidateBorrow",
-        "type": "event",
-        "signature": "0x298637f684da70674f26509b10f07ec2fbc77a335ab1e7d6215a4b2484d8bb52"
-    },
-    {
-        "anonymous": false,
-        "inputs": [
-            {
-                "indexed": false,
-                "name": "oldPendingAdmin",
-                "type": "address"
-            },
-            {
-                "indexed": false,
-                "name": "newPendingAdmin",
-                "type": "address"
-            }
-        ],
-        "name": "NewPendingAdmin",
-        "type": "event",
-        "signature": "0xca4f2f25d0898edd99413412fb94012f9e54ec8142f9b093e7720646a95b16a9"
-    },
-    {
-        "anonymous": false,
-        "inputs": [
-            {
-                "indexed": false,
-                "name": "oldAdmin",
-                "type": "address"
-            },
-            {
-                "indexed": false,
-                "name": "newAdmin",
-                "type": "address"
-            }
-        ],
-        "name": "NewAdmin",
-        "type": "event",
-        "signature": "0xf9ffabca9c8276e99321725bcb43fb076a6c66a54b7f21c4e8146d8519b417dc"
-    },
-    {
-        "anonymous": false,
-        "inputs": [
-            {
-                "indexed": false,
-                "name": "oldComptroller",
-                "type": "address"
-            },
-            {
-                "indexed": false,
-                "name": "newComptroller",
-                "type": "address"
-            }
-        ],
-        "name": "NewComptroller",
-        "type": "event",
-        "signature": "0x7ac369dbd14fa5ea3f473ed67cc9d598964a77501540ba6751eb0b3decf5870d"
-    },
-    {
-        "anonymous": false,
-        "inputs": [
-            {
-                "indexed": false,
-                "name": "oldInterestRateModel",
-                "type": "address"
-            },
-            {
-                "indexed": false,
-                "name": "newInterestRateModel",
-                "type": "address"
-            }
-        ],
-        "name": "NewMarketInterestRateModel",
-        "type": "event",
-        "signature": "0xedffc32e068c7c95dfd4bdfd5c4d939a084d6b11c4199eac8436ed234d72f926"
-    },
-    {
-        "anonymous": false,
-        "inputs": [
-            {
-                "indexed": false,
-                "name": "oldReserveFactorMantissa",
-                "type": "uint256"
-            },
-            {
-                "indexed": false,
-                "name": "newReserveFactorMantissa",
-                "type": "uint256"
-            }
-        ],
-        "name": "NewReserveFactor",
-        "type": "event",
-        "signature": "0xaaa68312e2ea9d50e16af5068410ab56e1a1fd06037b1a35664812c30f821460"
-    },
-    {
-        "anonymous": false,
-        "inputs": [
-            {
-                "indexed": false,
-                "name": "admin",
-                "type": "address"
-            },
-            {
-                "indexed": false,
-                "name": "reduceAmount",
-                "type": "uint256"
-            },
-            {
-                "indexed": false,
-                "name": "newTotalReserves",
-                "type": "uint256"
-            }
-        ],
-        "name": "ReservesReduced",
-        "type": "event",
-        "signature": "0x3bad0c59cf2f06e7314077049f48a93578cd16f5ef92329f1dab1420a99c177e"
-    },
-    {
-        "anonymous": false,
-        "inputs": [
-            {
-                "indexed": false,
-                "name": "error",
-                "type": "uint256"
-            },
-            {
-                "indexed": false,
-                "name": "info",
-                "type": "uint256"
-            },
-            {
-                "indexed": false,
-                "name": "detail",
-                "type": "uint256"
-            }
-        ],
-        "name": "Failure",
-        "type": "event",
-        "signature": "0x45b96fe442630264581b197e84bbada861235052c5a1aadfff9ea4e40a969aa0"
-    },
-    {
-        "anonymous": false,
-        "inputs": [
-            {
-                "indexed": true,
-                "name": "from",
-                "type": "address"
-            },
-            {
-                "indexed": true,
-                "name": "to",
-                "type": "address"
-            },
-            {
-                "indexed": false,
-                "name": "amount",
-                "type": "uint256"
-            }
-        ],
-        "name": "Transfer",
-        "type": "event",
-        "signature": "0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef"
-    },
-    {
-        "anonymous": false,
-        "inputs": [
-            {
-                "indexed": true,
-                "name": "owner",
-                "type": "address"
-            },
-            {
-                "indexed": true,
-                "name": "spender",
-                "type": "address"
-            },
-            {
-                "indexed": false,
-                "name": "amount",
-                "type": "uint256"
-            }
-        ],
-        "name": "Approval",
-        "type": "event",
-        "signature": "0x8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925"
-    }
-]
-module.exports = cEthAbi;
\ No newline at end of file
diff --git a/test/mainnet/compound-import/ABIs/comptrollerAbi.js b/test/mainnet/compound-import/ABIs/comptrollerAbi.js
deleted file mode 100644
index c24070ca..00000000
--- a/test/mainnet/compound-import/ABIs/comptrollerAbi.js
+++ /dev/null
@@ -1,2654 +0,0 @@
-const comptrollerAbi = [
-    {
-        "constant": true,
-        "inputs": [],
-        "name": "pendingAdmin",
-        "outputs": [
-            {
-                "name": "",
-                "type": "address"
-            }
-        ],
-        "payable": false,
-        "stateMutability": "view",
-        "type": "function",
-        "signature": "0x26782247"
-    },
-    {
-        "constant": false,
-        "inputs": [
-            {
-                "name": "newPendingAdmin",
-                "type": "address"
-            }
-        ],
-        "name": "_setPendingAdmin",
-        "outputs": [
-            {
-                "name": "",
-                "type": "uint256"
-            }
-        ],
-        "payable": false,
-        "stateMutability": "nonpayable",
-        "type": "function",
-        "signature": "0xb71d1a0c"
-    },
-    {
-        "constant": true,
-        "inputs": [],
-        "name": "comptrollerImplementation",
-        "outputs": [
-            {
-                "name": "",
-                "type": "address"
-            }
-        ],
-        "payable": false,
-        "stateMutability": "view",
-        "type": "function",
-        "signature": "0xbb82aa5e"
-    },
-    {
-        "constant": false,
-        "inputs": [],
-        "name": "_acceptImplementation",
-        "outputs": [
-            {
-                "name": "",
-                "type": "uint256"
-            }
-        ],
-        "payable": false,
-        "stateMutability": "nonpayable",
-        "type": "function",
-        "signature": "0xc1e80334"
-    },
-    {
-        "constant": true,
-        "inputs": [],
-        "name": "pendingComptrollerImplementation",
-        "outputs": [
-            {
-                "name": "",
-                "type": "address"
-            }
-        ],
-        "payable": false,
-        "stateMutability": "view",
-        "type": "function",
-        "signature": "0xdcfbc0c7"
-    },
-    {
-        "constant": false,
-        "inputs": [
-            {
-                "name": "newPendingImplementation",
-                "type": "address"
-            }
-        ],
-        "name": "_setPendingImplementation",
-        "outputs": [
-            {
-                "name": "",
-                "type": "uint256"
-            }
-        ],
-        "payable": false,
-        "stateMutability": "nonpayable",
-        "type": "function",
-        "signature": "0xe992a041"
-    },
-    {
-        "constant": false,
-        "inputs": [],
-        "name": "_acceptAdmin",
-        "outputs": [
-            {
-                "name": "",
-                "type": "uint256"
-            }
-        ],
-        "payable": false,
-        "stateMutability": "nonpayable",
-        "type": "function",
-        "signature": "0xe9c714f2"
-    },
-    {
-        "constant": true,
-        "inputs": [],
-        "name": "admin",
-        "outputs": [
-            {
-                "name": "",
-                "type": "address"
-            }
-        ],
-        "payable": false,
-        "stateMutability": "view",
-        "type": "function",
-        "signature": "0xf851a440"
-    },
-    {
-        "inputs": [],
-        "payable": false,
-        "stateMutability": "nonpayable",
-        "type": "constructor",
-        "signature": "constructor"
-    },
-    {
-        "payable": true,
-        "stateMutability": "payable",
-        "type": "fallback"
-    },
-    {
-        "anonymous": false,
-        "inputs": [
-            {
-                "indexed": false,
-                "name": "oldPendingImplementation",
-                "type": "address"
-            },
-            {
-                "indexed": false,
-                "name": "newPendingImplementation",
-                "type": "address"
-            }
-        ],
-        "name": "NewPendingImplementation",
-        "type": "event",
-        "signature": "0xe945ccee5d701fc83f9b8aa8ca94ea4219ec1fcbd4f4cab4f0ea57c5c3e1d815"
-    },
-    {
-        "anonymous": false,
-        "inputs": [
-            {
-                "indexed": false,
-                "name": "oldImplementation",
-                "type": "address"
-            },
-            {
-                "indexed": false,
-                "name": "newImplementation",
-                "type": "address"
-            }
-        ],
-        "name": "NewImplementation",
-        "type": "event",
-        "signature": "0xd604de94d45953f9138079ec1b82d533cb2160c906d1076d1f7ed54befbca97a"
-    },
-    {
-        "anonymous": false,
-        "inputs": [
-            {
-                "indexed": false,
-                "name": "oldPendingAdmin",
-                "type": "address"
-            },
-            {
-                "indexed": false,
-                "name": "newPendingAdmin",
-                "type": "address"
-            }
-        ],
-        "name": "NewPendingAdmin",
-        "type": "event",
-        "signature": "0xca4f2f25d0898edd99413412fb94012f9e54ec8142f9b093e7720646a95b16a9"
-    },
-    {
-        "anonymous": false,
-        "inputs": [
-            {
-                "indexed": false,
-                "name": "oldAdmin",
-                "type": "address"
-            },
-            {
-                "indexed": false,
-                "name": "newAdmin",
-                "type": "address"
-            }
-        ],
-        "name": "NewAdmin",
-        "type": "event",
-        "signature": "0xf9ffabca9c8276e99321725bcb43fb076a6c66a54b7f21c4e8146d8519b417dc"
-    },
-    {
-        "anonymous": false,
-        "inputs": [
-            {
-                "indexed": false,
-                "name": "error",
-                "type": "uint256"
-            },
-            {
-                "indexed": false,
-                "name": "info",
-                "type": "uint256"
-            },
-            {
-                "indexed": false,
-                "name": "detail",
-                "type": "uint256"
-            }
-        ],
-        "name": "Failure",
-        "type": "event",
-        "signature": "0x45b96fe442630264581b197e84bbada861235052c5a1aadfff9ea4e40a969aa0"
-    },
-    {
-        "constant": false,
-        "inputs": [
-            {
-                "internalType": "address",
-                "name": "contributor",
-                "type": "address"
-            }
-        ],
-        "name": "updateContributorRewards",
-        "outputs": [],
-        "payable": false,
-        "stateMutability": "nonpayable",
-        "type": "function",
-        "signature": "0x741b2525"
-    },
-    {
-        "inputs": [],
-        "payable": false,
-        "stateMutability": "nonpayable",
-        "type": "constructor",
-        "signature": "constructor"
-    },
-    {
-        "anonymous": false,
-        "inputs": [
-            {
-                "indexed": false,
-                "internalType": "string",
-                "name": "action",
-                "type": "string"
-            },
-            {
-                "indexed": false,
-                "internalType": "bool",
-                "name": "pauseState",
-                "type": "bool"
-            }
-        ],
-        "name": "ActionPaused",
-        "type": "event",
-        "signature": "0xef159d9a32b2472e32b098f954f3ce62d232939f1c207070b584df1814de2de0"
-    },
-    {
-        "anonymous": false,
-        "inputs": [
-            {
-                "indexed": false,
-                "internalType": "contract CToken",
-                "name": "cToken",
-                "type": "address"
-            },
-            {
-                "indexed": false,
-                "internalType": "string",
-                "name": "action",
-                "type": "string"
-            },
-            {
-                "indexed": false,
-                "internalType": "bool",
-                "name": "pauseState",
-                "type": "bool"
-            }
-        ],
-        "name": "ActionPaused",
-        "type": "event",
-        "signature": "0x71aec636243f9709bb0007ae15e9afb8150ab01716d75fd7573be5cc096e03b0"
-    },
-    {
-        "anonymous": false,
-        "inputs": [
-            {
-                "indexed": true,
-                "internalType": "address",
-                "name": "user",
-                "type": "address"
-            },
-            {
-                "indexed": false,
-                "internalType": "uint256",
-                "name": "oldCompAccrued",
-                "type": "uint256"
-            },
-            {
-                "indexed": false,
-                "internalType": "uint256",
-                "name": "newCompAccrued",
-                "type": "uint256"
-            }
-        ],
-        "name": "CompAccruedAdjusted",
-        "type": "event",
-        "signature": "0x4a5c134e28b537a76546993ea37f3b60d9190476df7356d3842aa40902e20f04"
-    },
-    {
-        "anonymous": false,
-        "inputs": [
-            {
-                "indexed": true,
-                "internalType": "contract CToken",
-                "name": "cToken",
-                "type": "address"
-            },
-            {
-                "indexed": false,
-                "internalType": "uint256",
-                "name": "newSpeed",
-                "type": "uint256"
-            }
-        ],
-        "name": "CompBorrowSpeedUpdated",
-        "type": "event",
-        "signature": "0x20af8e791cc98f74b2d7a391c80980ca8e5aebf3d4060bf581997b6acae2e537"
-    },
-    {
-        "anonymous": false,
-        "inputs": [
-            {
-                "indexed": false,
-                "internalType": "address",
-                "name": "recipient",
-                "type": "address"
-            },
-            {
-                "indexed": false,
-                "internalType": "uint256",
-                "name": "amount",
-                "type": "uint256"
-            }
-        ],
-        "name": "CompGranted",
-        "type": "event",
-        "signature": "0x98b2f82a3a07f223a0be64b3d0f47711c64dccd1feafb94aa28156b38cd9695c"
-    },
-    {
-        "anonymous": false,
-        "inputs": [
-            {
-                "indexed": true,
-                "internalType": "address",
-                "name": "user",
-                "type": "address"
-            },
-            {
-                "indexed": false,
-                "internalType": "uint256",
-                "name": "oldCompReceivable",
-                "type": "uint256"
-            },
-            {
-                "indexed": false,
-                "internalType": "uint256",
-                "name": "newCompReceivable",
-                "type": "uint256"
-            }
-        ],
-        "name": "CompReceivableUpdated",
-        "type": "event",
-        "signature": "0x17fea09d9a7ca41b2f9f9118f18f44848a62e9c70d55dd4385131eb2cf1b7e47"
-    },
-    {
-        "anonymous": false,
-        "inputs": [
-            {
-                "indexed": true,
-                "internalType": "contract CToken",
-                "name": "cToken",
-                "type": "address"
-            },
-            {
-                "indexed": false,
-                "internalType": "uint256",
-                "name": "newSpeed",
-                "type": "uint256"
-            }
-        ],
-        "name": "CompSupplySpeedUpdated",
-        "type": "event",
-        "signature": "0xdeafccd0c0b768b2529f7dcbbe58e155d6023059150b7490ed4535cc3744b92d"
-    },
-    {
-        "anonymous": false,
-        "inputs": [
-            {
-                "indexed": true,
-                "internalType": "address",
-                "name": "contributor",
-                "type": "address"
-            },
-            {
-                "indexed": false,
-                "internalType": "uint256",
-                "name": "newSpeed",
-                "type": "uint256"
-            }
-        ],
-        "name": "ContributorCompSpeedUpdated",
-        "type": "event",
-        "signature": "0x386537fa92edc3319af95f1f904dcf1900021e4f3f4e08169a577a09076e66b3"
-    },
-    {
-        "anonymous": false,
-        "inputs": [
-            {
-                "indexed": true,
-                "internalType": "contract CToken",
-                "name": "cToken",
-                "type": "address"
-            },
-            {
-                "indexed": true,
-                "internalType": "address",
-                "name": "borrower",
-                "type": "address"
-            },
-            {
-                "indexed": false,
-                "internalType": "uint256",
-                "name": "compDelta",
-                "type": "uint256"
-            },
-            {
-                "indexed": false,
-                "internalType": "uint256",
-                "name": "compBorrowIndex",
-                "type": "uint256"
-            }
-        ],
-        "name": "DistributedBorrowerComp",
-        "type": "event",
-        "signature": "0x1fc3ecc087d8d2d15e23d0032af5a47059c3892d003d8e139fdcb6bb327c99a6"
-    },
-    {
-        "anonymous": false,
-        "inputs": [
-            {
-                "indexed": true,
-                "internalType": "contract CToken",
-                "name": "cToken",
-                "type": "address"
-            },
-            {
-                "indexed": true,
-                "internalType": "address",
-                "name": "supplier",
-                "type": "address"
-            },
-            {
-                "indexed": false,
-                "internalType": "uint256",
-                "name": "compDelta",
-                "type": "uint256"
-            },
-            {
-                "indexed": false,
-                "internalType": "uint256",
-                "name": "compSupplyIndex",
-                "type": "uint256"
-            }
-        ],
-        "name": "DistributedSupplierComp",
-        "type": "event",
-        "signature": "0x2caecd17d02f56fa897705dcc740da2d237c373f70686f4e0d9bd3bf0400ea7a"
-    },
-    {
-        "anonymous": false,
-        "inputs": [
-            {
-                "indexed": false,
-                "internalType": "uint256",
-                "name": "error",
-                "type": "uint256"
-            },
-            {
-                "indexed": false,
-                "internalType": "uint256",
-                "name": "info",
-                "type": "uint256"
-            },
-            {
-                "indexed": false,
-                "internalType": "uint256",
-                "name": "detail",
-                "type": "uint256"
-            }
-        ],
-        "name": "Failure",
-        "type": "event",
-        "signature": "0x45b96fe442630264581b197e84bbada861235052c5a1aadfff9ea4e40a969aa0"
-    },
-    {
-        "anonymous": false,
-        "inputs": [
-            {
-                "indexed": false,
-                "internalType": "contract CToken",
-                "name": "cToken",
-                "type": "address"
-            },
-            {
-                "indexed": false,
-                "internalType": "address",
-                "name": "account",
-                "type": "address"
-            }
-        ],
-        "name": "MarketEntered",
-        "type": "event",
-        "signature": "0x3ab23ab0d51cccc0c3085aec51f99228625aa1a922b3a8ca89a26b0f2027a1a5"
-    },
-    {
-        "anonymous": false,
-        "inputs": [
-            {
-                "indexed": false,
-                "internalType": "contract CToken",
-                "name": "cToken",
-                "type": "address"
-            },
-            {
-                "indexed": false,
-                "internalType": "address",
-                "name": "account",
-                "type": "address"
-            }
-        ],
-        "name": "MarketExited",
-        "type": "event",
-        "signature": "0xe699a64c18b07ac5b7301aa273f36a2287239eb9501d81950672794afba29a0d"
-    },
-    {
-        "anonymous": false,
-        "inputs": [
-            {
-                "indexed": false,
-                "internalType": "contract CToken",
-                "name": "cToken",
-                "type": "address"
-            }
-        ],
-        "name": "MarketListed",
-        "type": "event",
-        "signature": "0xcf583bb0c569eb967f806b11601c4cb93c10310485c67add5f8362c2f212321f"
-    },
-    {
-        "anonymous": false,
-        "inputs": [
-            {
-                "indexed": true,
-                "internalType": "contract CToken",
-                "name": "cToken",
-                "type": "address"
-            },
-            {
-                "indexed": false,
-                "internalType": "uint256",
-                "name": "newBorrowCap",
-                "type": "uint256"
-            }
-        ],
-        "name": "NewBorrowCap",
-        "type": "event",
-        "signature": "0x6f1951b2aad10f3fc81b86d91105b413a5b3f847a34bbc5ce1904201b14438f6"
-    },
-    {
-        "anonymous": false,
-        "inputs": [
-            {
-                "indexed": false,
-                "internalType": "address",
-                "name": "oldBorrowCapGuardian",
-                "type": "address"
-            },
-            {
-                "indexed": false,
-                "internalType": "address",
-                "name": "newBorrowCapGuardian",
-                "type": "address"
-            }
-        ],
-        "name": "NewBorrowCapGuardian",
-        "type": "event",
-        "signature": "0xeda98690e518e9a05f8ec6837663e188211b2da8f4906648b323f2c1d4434e29"
-    },
-    {
-        "anonymous": false,
-        "inputs": [
-            {
-                "indexed": false,
-                "internalType": "uint256",
-                "name": "oldCloseFactorMantissa",
-                "type": "uint256"
-            },
-            {
-                "indexed": false,
-                "internalType": "uint256",
-                "name": "newCloseFactorMantissa",
-                "type": "uint256"
-            }
-        ],
-        "name": "NewCloseFactor",
-        "type": "event",
-        "signature": "0x3b9670cf975d26958e754b57098eaa2ac914d8d2a31b83257997b9f346110fd9"
-    },
-    {
-        "anonymous": false,
-        "inputs": [
-            {
-                "indexed": false,
-                "internalType": "contract CToken",
-                "name": "cToken",
-                "type": "address"
-            },
-            {
-                "indexed": false,
-                "internalType": "uint256",
-                "name": "oldCollateralFactorMantissa",
-                "type": "uint256"
-            },
-            {
-                "indexed": false,
-                "internalType": "uint256",
-                "name": "newCollateralFactorMantissa",
-                "type": "uint256"
-            }
-        ],
-        "name": "NewCollateralFactor",
-        "type": "event",
-        "signature": "0x70483e6592cd5182d45ac970e05bc62cdcc90e9d8ef2c2dbe686cf383bcd7fc5"
-    },
-    {
-        "anonymous": false,
-        "inputs": [
-            {
-                "indexed": false,
-                "internalType": "uint256",
-                "name": "oldLiquidationIncentiveMantissa",
-                "type": "uint256"
-            },
-            {
-                "indexed": false,
-                "internalType": "uint256",
-                "name": "newLiquidationIncentiveMantissa",
-                "type": "uint256"
-            }
-        ],
-        "name": "NewLiquidationIncentive",
-        "type": "event",
-        "signature": "0xaeba5a6c40a8ac138134bff1aaa65debf25971188a58804bad717f82f0ec1316"
-    },
-    {
-        "anonymous": false,
-        "inputs": [
-            {
-                "indexed": false,
-                "internalType": "address",
-                "name": "oldPauseGuardian",
-                "type": "address"
-            },
-            {
-                "indexed": false,
-                "internalType": "address",
-                "name": "newPauseGuardian",
-                "type": "address"
-            }
-        ],
-        "name": "NewPauseGuardian",
-        "type": "event",
-        "signature": "0x0613b6ee6a04f0d09f390e4d9318894b9f6ac7fd83897cd8d18896ba579c401e"
-    },
-    {
-        "anonymous": false,
-        "inputs": [
-            {
-                "indexed": false,
-                "internalType": "contract PriceOracle",
-                "name": "oldPriceOracle",
-                "type": "address"
-            },
-            {
-                "indexed": false,
-                "internalType": "contract PriceOracle",
-                "name": "newPriceOracle",
-                "type": "address"
-            }
-        ],
-        "name": "NewPriceOracle",
-        "type": "event",
-        "signature": "0xd52b2b9b7e9ee655fcb95d2e5b9e0c9f69e7ef2b8e9d2d0ea78402d576d22e22"
-    },
-    {
-        "constant": false,
-        "inputs": [
-            {
-                "internalType": "contract Unitroller",
-                "name": "unitroller",
-                "type": "address"
-            }
-        ],
-        "name": "_become",
-        "outputs": [],
-        "payable": false,
-        "stateMutability": "nonpayable",
-        "type": "function",
-        "signature": "0x1d504dc6"
-    },
-    {
-        "constant": true,
-        "inputs": [],
-        "name": "_borrowGuardianPaused",
-        "outputs": [
-            {
-                "internalType": "bool",
-                "name": "",
-                "type": "bool"
-            }
-        ],
-        "payable": false,
-        "stateMutability": "view",
-        "type": "function",
-        "signature": "0xe6653f3d"
-    },
-    {
-        "constant": false,
-        "inputs": [
-            {
-                "internalType": "address",
-                "name": "recipient",
-                "type": "address"
-            },
-            {
-                "internalType": "uint256",
-                "name": "amount",
-                "type": "uint256"
-            }
-        ],
-        "name": "_grantComp",
-        "outputs": [],
-        "payable": false,
-        "stateMutability": "nonpayable",
-        "type": "function",
-        "signature": "0x27efe3cb"
-    },
-    {
-        "constant": true,
-        "inputs": [],
-        "name": "_mintGuardianPaused",
-        "outputs": [
-            {
-                "internalType": "bool",
-                "name": "",
-                "type": "bool"
-            }
-        ],
-        "payable": false,
-        "stateMutability": "view",
-        "type": "function",
-        "signature": "0x3c94786f"
-    },
-    {
-        "constant": false,
-        "inputs": [
-            {
-                "internalType": "address",
-                "name": "newBorrowCapGuardian",
-                "type": "address"
-            }
-        ],
-        "name": "_setBorrowCapGuardian",
-        "outputs": [],
-        "payable": false,
-        "stateMutability": "nonpayable",
-        "type": "function",
-        "signature": "0x391957d7"
-    },
-    {
-        "constant": false,
-        "inputs": [
-            {
-                "internalType": "contract CToken",
-                "name": "cToken",
-                "type": "address"
-            },
-            {
-                "internalType": "bool",
-                "name": "state",
-                "type": "bool"
-            }
-        ],
-        "name": "_setBorrowPaused",
-        "outputs": [
-            {
-                "internalType": "bool",
-                "name": "",
-                "type": "bool"
-            }
-        ],
-        "payable": false,
-        "stateMutability": "nonpayable",
-        "type": "function",
-        "signature": "0x18c882a5"
-    },
-    {
-        "constant": false,
-        "inputs": [
-            {
-                "internalType": "uint256",
-                "name": "newCloseFactorMantissa",
-                "type": "uint256"
-            }
-        ],
-        "name": "_setCloseFactor",
-        "outputs": [
-            {
-                "internalType": "uint256",
-                "name": "",
-                "type": "uint256"
-            }
-        ],
-        "payable": false,
-        "stateMutability": "nonpayable",
-        "type": "function",
-        "signature": "0x317b0b77"
-    },
-    {
-        "constant": false,
-        "inputs": [
-            {
-                "internalType": "contract CToken",
-                "name": "cToken",
-                "type": "address"
-            },
-            {
-                "internalType": "uint256",
-                "name": "newCollateralFactorMantissa",
-                "type": "uint256"
-            }
-        ],
-        "name": "_setCollateralFactor",
-        "outputs": [
-            {
-                "internalType": "uint256",
-                "name": "",
-                "type": "uint256"
-            }
-        ],
-        "payable": false,
-        "stateMutability": "nonpayable",
-        "type": "function",
-        "signature": "0xe4028eee"
-    },
-    {
-        "constant": false,
-        "inputs": [
-            {
-                "internalType": "contract CToken[]",
-                "name": "cTokens",
-                "type": "address[]"
-            },
-            {
-                "internalType": "uint256[]",
-                "name": "supplySpeeds",
-                "type": "uint256[]"
-            },
-            {
-                "internalType": "uint256[]",
-                "name": "borrowSpeeds",
-                "type": "uint256[]"
-            }
-        ],
-        "name": "_setCompSpeeds",
-        "outputs": [],
-        "payable": false,
-        "stateMutability": "nonpayable",
-        "type": "function",
-        "signature": "0xa8b43948"
-    },
-    {
-        "constant": false,
-        "inputs": [
-            {
-                "internalType": "address",
-                "name": "contributor",
-                "type": "address"
-            },
-            {
-                "internalType": "uint256",
-                "name": "compSpeed",
-                "type": "uint256"
-            }
-        ],
-        "name": "_setContributorCompSpeed",
-        "outputs": [],
-        "payable": false,
-        "stateMutability": "nonpayable",
-        "type": "function",
-        "signature": "0x598ee1cb"
-    },
-    {
-        "constant": false,
-        "inputs": [
-            {
-                "internalType": "uint256",
-                "name": "newLiquidationIncentiveMantissa",
-                "type": "uint256"
-            }
-        ],
-        "name": "_setLiquidationIncentive",
-        "outputs": [
-            {
-                "internalType": "uint256",
-                "name": "",
-                "type": "uint256"
-            }
-        ],
-        "payable": false,
-        "stateMutability": "nonpayable",
-        "type": "function",
-        "signature": "0x4fd42e17"
-    },
-    {
-        "constant": false,
-        "inputs": [
-            {
-                "internalType": "contract CToken[]",
-                "name": "cTokens",
-                "type": "address[]"
-            },
-            {
-                "internalType": "uint256[]",
-                "name": "newBorrowCaps",
-                "type": "uint256[]"
-            }
-        ],
-        "name": "_setMarketBorrowCaps",
-        "outputs": [],
-        "payable": false,
-        "stateMutability": "nonpayable",
-        "type": "function",
-        "signature": "0x607ef6c1"
-    },
-    {
-        "constant": false,
-        "inputs": [
-            {
-                "internalType": "contract CToken",
-                "name": "cToken",
-                "type": "address"
-            },
-            {
-                "internalType": "bool",
-                "name": "state",
-                "type": "bool"
-            }
-        ],
-        "name": "_setMintPaused",
-        "outputs": [
-            {
-                "internalType": "bool",
-                "name": "",
-                "type": "bool"
-            }
-        ],
-        "payable": false,
-        "stateMutability": "nonpayable",
-        "type": "function",
-        "signature": "0x3bcf7ec1"
-    },
-    {
-        "constant": false,
-        "inputs": [
-            {
-                "internalType": "address",
-                "name": "newPauseGuardian",
-                "type": "address"
-            }
-        ],
-        "name": "_setPauseGuardian",
-        "outputs": [
-            {
-                "internalType": "uint256",
-                "name": "",
-                "type": "uint256"
-            }
-        ],
-        "payable": false,
-        "stateMutability": "nonpayable",
-        "type": "function",
-        "signature": "0x5f5af1aa"
-    },
-    {
-        "constant": false,
-        "inputs": [
-            {
-                "internalType": "contract PriceOracle",
-                "name": "newOracle",
-                "type": "address"
-            }
-        ],
-        "name": "_setPriceOracle",
-        "outputs": [
-            {
-                "internalType": "uint256",
-                "name": "",
-                "type": "uint256"
-            }
-        ],
-        "payable": false,
-        "stateMutability": "nonpayable",
-        "type": "function",
-        "signature": "0x55ee1fe1"
-    },
-    {
-        "constant": false,
-        "inputs": [
-            {
-                "internalType": "bool",
-                "name": "state",
-                "type": "bool"
-            }
-        ],
-        "name": "_setSeizePaused",
-        "outputs": [
-            {
-                "internalType": "bool",
-                "name": "",
-                "type": "bool"
-            }
-        ],
-        "payable": false,
-        "stateMutability": "nonpayable",
-        "type": "function",
-        "signature": "0x2d70db78"
-    },
-    {
-        "constant": false,
-        "inputs": [
-            {
-                "internalType": "bool",
-                "name": "state",
-                "type": "bool"
-            }
-        ],
-        "name": "_setTransferPaused",
-        "outputs": [
-            {
-                "internalType": "bool",
-                "name": "",
-                "type": "bool"
-            }
-        ],
-        "payable": false,
-        "stateMutability": "nonpayable",
-        "type": "function",
-        "signature": "0x8ebf6364"
-    },
-    {
-        "constant": false,
-        "inputs": [
-            {
-                "internalType": "contract CToken",
-                "name": "cToken",
-                "type": "address"
-            }
-        ],
-        "name": "_supportMarket",
-        "outputs": [
-            {
-                "internalType": "uint256",
-                "name": "",
-                "type": "uint256"
-            }
-        ],
-        "payable": false,
-        "stateMutability": "nonpayable",
-        "type": "function",
-        "signature": "0xa76b3fda"
-    },
-    {
-        "constant": true,
-        "inputs": [
-            {
-                "internalType": "address",
-                "name": "",
-                "type": "address"
-            },
-            {
-                "internalType": "uint256",
-                "name": "",
-                "type": "uint256"
-            }
-        ],
-        "name": "accountAssets",
-        "outputs": [
-            {
-                "internalType": "contract CToken",
-                "name": "",
-                "type": "address"
-            }
-        ],
-        "payable": false,
-        "stateMutability": "view",
-        "type": "function",
-        "signature": "0xdce15449"
-    },
-    {
-        "constant": true,
-        "inputs": [],
-        "name": "admin",
-        "outputs": [
-            {
-                "internalType": "address",
-                "name": "",
-                "type": "address"
-            }
-        ],
-        "payable": false,
-        "stateMutability": "view",
-        "type": "function",
-        "signature": "0xf851a440"
-    },
-    {
-        "constant": true,
-        "inputs": [
-            {
-                "internalType": "uint256",
-                "name": "",
-                "type": "uint256"
-            }
-        ],
-        "name": "allMarkets",
-        "outputs": [
-            {
-                "internalType": "contract CToken",
-                "name": "",
-                "type": "address"
-            }
-        ],
-        "payable": false,
-        "stateMutability": "view",
-        "type": "function",
-        "signature": "0x52d84d1e"
-    },
-    {
-        "constant": false,
-        "inputs": [
-            {
-                "internalType": "address",
-                "name": "cToken",
-                "type": "address"
-            },
-            {
-                "internalType": "address",
-                "name": "borrower",
-                "type": "address"
-            },
-            {
-                "internalType": "uint256",
-                "name": "borrowAmount",
-                "type": "uint256"
-            }
-        ],
-        "name": "borrowAllowed",
-        "outputs": [
-            {
-                "internalType": "uint256",
-                "name": "",
-                "type": "uint256"
-            }
-        ],
-        "payable": false,
-        "stateMutability": "nonpayable",
-        "type": "function",
-        "signature": "0xda3d454c"
-    },
-    {
-        "constant": true,
-        "inputs": [],
-        "name": "borrowCapGuardian",
-        "outputs": [
-            {
-                "internalType": "address",
-                "name": "",
-                "type": "address"
-            }
-        ],
-        "payable": false,
-        "stateMutability": "view",
-        "type": "function",
-        "signature": "0x21af4569"
-    },
-    {
-        "constant": true,
-        "inputs": [
-            {
-                "internalType": "address",
-                "name": "",
-                "type": "address"
-            }
-        ],
-        "name": "borrowCaps",
-        "outputs": [
-            {
-                "internalType": "uint256",
-                "name": "",
-                "type": "uint256"
-            }
-        ],
-        "payable": false,
-        "stateMutability": "view",
-        "type": "function",
-        "signature": "0x4a584432"
-    },
-    {
-        "constant": true,
-        "inputs": [
-            {
-                "internalType": "address",
-                "name": "",
-                "type": "address"
-            }
-        ],
-        "name": "borrowGuardianPaused",
-        "outputs": [
-            {
-                "internalType": "bool",
-                "name": "",
-                "type": "bool"
-            }
-        ],
-        "payable": false,
-        "stateMutability": "view",
-        "type": "function",
-        "signature": "0x6d154ea5"
-    },
-    {
-        "constant": false,
-        "inputs": [
-            {
-                "internalType": "address",
-                "name": "cToken",
-                "type": "address"
-            },
-            {
-                "internalType": "address",
-                "name": "borrower",
-                "type": "address"
-            },
-            {
-                "internalType": "uint256",
-                "name": "borrowAmount",
-                "type": "uint256"
-            }
-        ],
-        "name": "borrowVerify",
-        "outputs": [],
-        "payable": false,
-        "stateMutability": "nonpayable",
-        "type": "function",
-        "signature": "0x5c778605"
-    },
-    {
-        "constant": true,
-        "inputs": [
-            {
-                "internalType": "address",
-                "name": "account",
-                "type": "address"
-            },
-            {
-                "internalType": "contract CToken",
-                "name": "cToken",
-                "type": "address"
-            }
-        ],
-        "name": "checkMembership",
-        "outputs": [
-            {
-                "internalType": "bool",
-                "name": "",
-                "type": "bool"
-            }
-        ],
-        "payable": false,
-        "stateMutability": "view",
-        "type": "function",
-        "signature": "0x929fe9a1"
-    },
-    {
-        "constant": false,
-        "inputs": [
-            {
-                "internalType": "address",
-                "name": "holder",
-                "type": "address"
-            },
-            {
-                "internalType": "contract CToken[]",
-                "name": "cTokens",
-                "type": "address[]"
-            }
-        ],
-        "name": "claimComp",
-        "outputs": [],
-        "payable": false,
-        "stateMutability": "nonpayable",
-        "type": "function",
-        "signature": "0x1c3db2e0"
-    },
-    {
-        "constant": false,
-        "inputs": [
-            {
-                "internalType": "address[]",
-                "name": "holders",
-                "type": "address[]"
-            },
-            {
-                "internalType": "contract CToken[]",
-                "name": "cTokens",
-                "type": "address[]"
-            },
-            {
-                "internalType": "bool",
-                "name": "borrowers",
-                "type": "bool"
-            },
-            {
-                "internalType": "bool",
-                "name": "suppliers",
-                "type": "bool"
-            }
-        ],
-        "name": "claimComp",
-        "outputs": [],
-        "payable": false,
-        "stateMutability": "nonpayable",
-        "type": "function",
-        "signature": "0x6810dfa6"
-    },
-    {
-        "constant": false,
-        "inputs": [
-            {
-                "internalType": "address",
-                "name": "holder",
-                "type": "address"
-            }
-        ],
-        "name": "claimComp",
-        "outputs": [],
-        "payable": false,
-        "stateMutability": "nonpayable",
-        "type": "function",
-        "signature": "0xe9af0292"
-    },
-    {
-        "constant": true,
-        "inputs": [],
-        "name": "closeFactorMantissa",
-        "outputs": [
-            {
-                "internalType": "uint256",
-                "name": "",
-                "type": "uint256"
-            }
-        ],
-        "payable": false,
-        "stateMutability": "view",
-        "type": "function",
-        "signature": "0xe8755446"
-    },
-    {
-        "constant": true,
-        "inputs": [
-            {
-                "internalType": "address",
-                "name": "",
-                "type": "address"
-            }
-        ],
-        "name": "compAccrued",
-        "outputs": [
-            {
-                "internalType": "uint256",
-                "name": "",
-                "type": "uint256"
-            }
-        ],
-        "payable": false,
-        "stateMutability": "view",
-        "type": "function",
-        "signature": "0xcc7ebdc4"
-    },
-    {
-        "constant": true,
-        "inputs": [
-            {
-                "internalType": "address",
-                "name": "",
-                "type": "address"
-            }
-        ],
-        "name": "compBorrowSpeeds",
-        "outputs": [
-            {
-                "internalType": "uint256",
-                "name": "",
-                "type": "uint256"
-            }
-        ],
-        "payable": false,
-        "stateMutability": "view",
-        "type": "function",
-        "signature": "0xf4a433c0"
-    },
-    {
-        "constant": true,
-        "inputs": [
-            {
-                "internalType": "address",
-                "name": "",
-                "type": "address"
-            }
-        ],
-        "name": "compBorrowState",
-        "outputs": [
-            {
-                "internalType": "uint224",
-                "name": "index",
-                "type": "uint224"
-            },
-            {
-                "internalType": "uint32",
-                "name": "block",
-                "type": "uint32"
-            }
-        ],
-        "payable": false,
-        "stateMutability": "view",
-        "type": "function",
-        "signature": "0x8c57804e"
-    },
-    {
-        "constant": true,
-        "inputs": [
-            {
-                "internalType": "address",
-                "name": "",
-                "type": "address"
-            },
-            {
-                "internalType": "address",
-                "name": "",
-                "type": "address"
-            }
-        ],
-        "name": "compBorrowerIndex",
-        "outputs": [
-            {
-                "internalType": "uint256",
-                "name": "",
-                "type": "uint256"
-            }
-        ],
-        "payable": false,
-        "stateMutability": "view",
-        "type": "function",
-        "signature": "0xca0af043"
-    },
-    {
-        "constant": true,
-        "inputs": [
-            {
-                "internalType": "address",
-                "name": "",
-                "type": "address"
-            }
-        ],
-        "name": "compContributorSpeeds",
-        "outputs": [
-            {
-                "internalType": "uint256",
-                "name": "",
-                "type": "uint256"
-            }
-        ],
-        "payable": false,
-        "stateMutability": "view",
-        "type": "function",
-        "signature": "0x986ab838"
-    },
-    {
-        "constant": true,
-        "inputs": [],
-        "name": "compInitialIndex",
-        "outputs": [
-            {
-                "internalType": "uint224",
-                "name": "",
-                "type": "uint224"
-            }
-        ],
-        "payable": false,
-        "stateMutability": "view",
-        "type": "function",
-        "signature": "0xa7f0e231"
-    },
-    {
-        "constant": true,
-        "inputs": [],
-        "name": "compRate",
-        "outputs": [
-            {
-                "internalType": "uint256",
-                "name": "",
-                "type": "uint256"
-            }
-        ],
-        "payable": false,
-        "stateMutability": "view",
-        "type": "function",
-        "signature": "0xaa900754"
-    },
-    {
-        "constant": true,
-        "inputs": [
-            {
-                "internalType": "address",
-                "name": "",
-                "type": "address"
-            }
-        ],
-        "name": "compReceivable",
-        "outputs": [
-            {
-                "internalType": "uint256",
-                "name": "",
-                "type": "uint256"
-            }
-        ],
-        "payable": false,
-        "stateMutability": "view",
-        "type": "function",
-        "signature": "0x85b7beb8"
-    },
-    {
-        "constant": true,
-        "inputs": [
-            {
-                "internalType": "address",
-                "name": "",
-                "type": "address"
-            }
-        ],
-        "name": "compSpeeds",
-        "outputs": [
-            {
-                "internalType": "uint256",
-                "name": "",
-                "type": "uint256"
-            }
-        ],
-        "payable": false,
-        "stateMutability": "view",
-        "type": "function",
-        "signature": "0x1d7b33d7"
-    },
-    {
-        "constant": true,
-        "inputs": [
-            {
-                "internalType": "address",
-                "name": "",
-                "type": "address"
-            },
-            {
-                "internalType": "address",
-                "name": "",
-                "type": "address"
-            }
-        ],
-        "name": "compSupplierIndex",
-        "outputs": [
-            {
-                "internalType": "uint256",
-                "name": "",
-                "type": "uint256"
-            }
-        ],
-        "payable": false,
-        "stateMutability": "view",
-        "type": "function",
-        "signature": "0xb21be7fd"
-    },
-    {
-        "constant": true,
-        "inputs": [
-            {
-                "internalType": "address",
-                "name": "",
-                "type": "address"
-            }
-        ],
-        "name": "compSupplySpeeds",
-        "outputs": [
-            {
-                "internalType": "uint256",
-                "name": "",
-                "type": "uint256"
-            }
-        ],
-        "payable": false,
-        "stateMutability": "view",
-        "type": "function",
-        "signature": "0x6aa875b5"
-    },
-    {
-        "constant": true,
-        "inputs": [
-            {
-                "internalType": "address",
-                "name": "",
-                "type": "address"
-            }
-        ],
-        "name": "compSupplyState",
-        "outputs": [
-            {
-                "internalType": "uint224",
-                "name": "index",
-                "type": "uint224"
-            },
-            {
-                "internalType": "uint32",
-                "name": "block",
-                "type": "uint32"
-            }
-        ],
-        "payable": false,
-        "stateMutability": "view",
-        "type": "function",
-        "signature": "0x6b79c38d"
-    },
-    {
-        "constant": true,
-        "inputs": [],
-        "name": "comptrollerImplementation",
-        "outputs": [
-            {
-                "internalType": "address",
-                "name": "",
-                "type": "address"
-            }
-        ],
-        "payable": false,
-        "stateMutability": "view",
-        "type": "function",
-        "signature": "0xbb82aa5e"
-    },
-    {
-        "constant": false,
-        "inputs": [
-            {
-                "internalType": "address[]",
-                "name": "cTokens",
-                "type": "address[]"
-            }
-        ],
-        "name": "enterMarkets",
-        "outputs": [
-            {
-                "internalType": "uint256[]",
-                "name": "",
-                "type": "uint256[]"
-            }
-        ],
-        "payable": false,
-        "stateMutability": "nonpayable",
-        "type": "function",
-        "signature": "0xc2998238"
-    },
-    {
-        "constant": false,
-        "inputs": [
-            {
-                "internalType": "address",
-                "name": "cTokenAddress",
-                "type": "address"
-            }
-        ],
-        "name": "exitMarket",
-        "outputs": [
-            {
-                "internalType": "uint256",
-                "name": "",
-                "type": "uint256"
-            }
-        ],
-        "payable": false,
-        "stateMutability": "nonpayable",
-        "type": "function",
-        "signature": "0xede4edd0"
-    },
-    {
-        "constant": false,
-        "inputs": [
-            {
-                "internalType": "address[]",
-                "name": "affectedUsers",
-                "type": "address[]"
-            },
-            {
-                "internalType": "uint256[]",
-                "name": "amounts",
-                "type": "uint256[]"
-            }
-        ],
-        "name": "fixBadAccruals",
-        "outputs": [],
-        "payable": false,
-        "stateMutability": "nonpayable",
-        "type": "function",
-        "signature": "0x16b95e8f"
-    },
-    {
-        "constant": true,
-        "inputs": [
-            {
-                "internalType": "address",
-                "name": "account",
-                "type": "address"
-            }
-        ],
-        "name": "getAccountLiquidity",
-        "outputs": [
-            {
-                "internalType": "uint256",
-                "name": "",
-                "type": "uint256"
-            },
-            {
-                "internalType": "uint256",
-                "name": "",
-                "type": "uint256"
-            },
-            {
-                "internalType": "uint256",
-                "name": "",
-                "type": "uint256"
-            }
-        ],
-        "payable": false,
-        "stateMutability": "view",
-        "type": "function",
-        "signature": "0x5ec88c79"
-    },
-    {
-        "constant": true,
-        "inputs": [],
-        "name": "getAllMarkets",
-        "outputs": [
-            {
-                "internalType": "contract CToken[]",
-                "name": "",
-                "type": "address[]"
-            }
-        ],
-        "payable": false,
-        "stateMutability": "view",
-        "type": "function",
-        "signature": "0xb0772d0b"
-    },
-    {
-        "constant": true,
-        "inputs": [
-            {
-                "internalType": "address",
-                "name": "account",
-                "type": "address"
-            }
-        ],
-        "name": "getAssetsIn",
-        "outputs": [
-            {
-                "internalType": "contract CToken[]",
-                "name": "",
-                "type": "address[]"
-            }
-        ],
-        "payable": false,
-        "stateMutability": "view",
-        "type": "function",
-        "signature": "0xabfceffc"
-    },
-    {
-        "constant": true,
-        "inputs": [],
-        "name": "getBlockNumber",
-        "outputs": [
-            {
-                "internalType": "uint256",
-                "name": "",
-                "type": "uint256"
-            }
-        ],
-        "payable": false,
-        "stateMutability": "view",
-        "type": "function",
-        "signature": "0x42cbb15c"
-    },
-    {
-        "constant": true,
-        "inputs": [],
-        "name": "getCompAddress",
-        "outputs": [
-            {
-                "internalType": "address",
-                "name": "",
-                "type": "address"
-            }
-        ],
-        "payable": false,
-        "stateMutability": "view",
-        "type": "function",
-        "signature": "0x9d1b5a0a"
-    },
-    {
-        "constant": true,
-        "inputs": [
-            {
-                "internalType": "address",
-                "name": "account",
-                "type": "address"
-            },
-            {
-                "internalType": "address",
-                "name": "cTokenModify",
-                "type": "address"
-            },
-            {
-                "internalType": "uint256",
-                "name": "redeemTokens",
-                "type": "uint256"
-            },
-            {
-                "internalType": "uint256",
-                "name": "borrowAmount",
-                "type": "uint256"
-            }
-        ],
-        "name": "getHypotheticalAccountLiquidity",
-        "outputs": [
-            {
-                "internalType": "uint256",
-                "name": "",
-                "type": "uint256"
-            },
-            {
-                "internalType": "uint256",
-                "name": "",
-                "type": "uint256"
-            },
-            {
-                "internalType": "uint256",
-                "name": "",
-                "type": "uint256"
-            }
-        ],
-        "payable": false,
-        "stateMutability": "view",
-        "type": "function",
-        "signature": "0x4e79238f"
-    },
-    {
-        "constant": true,
-        "inputs": [],
-        "name": "isComptroller",
-        "outputs": [
-            {
-                "internalType": "bool",
-                "name": "",
-                "type": "bool"
-            }
-        ],
-        "payable": false,
-        "stateMutability": "view",
-        "type": "function",
-        "signature": "0x007e3dd2"
-    },
-    {
-        "constant": true,
-        "inputs": [
-            {
-                "internalType": "contract CToken",
-                "name": "cToken",
-                "type": "address"
-            }
-        ],
-        "name": "isDeprecated",
-        "outputs": [
-            {
-                "internalType": "bool",
-                "name": "",
-                "type": "bool"
-            }
-        ],
-        "payable": false,
-        "stateMutability": "view",
-        "type": "function",
-        "signature": "0x94543c15"
-    },
-    {
-        "constant": true,
-        "inputs": [
-            {
-                "internalType": "address",
-                "name": "",
-                "type": "address"
-            }
-        ],
-        "name": "lastContributorBlock",
-        "outputs": [
-            {
-                "internalType": "uint256",
-                "name": "",
-                "type": "uint256"
-            }
-        ],
-        "payable": false,
-        "stateMutability": "view",
-        "type": "function",
-        "signature": "0xbea6b8b8"
-    },
-    {
-        "constant": false,
-        "inputs": [
-            {
-                "internalType": "address",
-                "name": "cTokenBorrowed",
-                "type": "address"
-            },
-            {
-                "internalType": "address",
-                "name": "cTokenCollateral",
-                "type": "address"
-            },
-            {
-                "internalType": "address",
-                "name": "liquidator",
-                "type": "address"
-            },
-            {
-                "internalType": "address",
-                "name": "borrower",
-                "type": "address"
-            },
-            {
-                "internalType": "uint256",
-                "name": "repayAmount",
-                "type": "uint256"
-            }
-        ],
-        "name": "liquidateBorrowAllowed",
-        "outputs": [
-            {
-                "internalType": "uint256",
-                "name": "",
-                "type": "uint256"
-            }
-        ],
-        "payable": false,
-        "stateMutability": "nonpayable",
-        "type": "function",
-        "signature": "0x5fc7e71e"
-    },
-    {
-        "constant": false,
-        "inputs": [
-            {
-                "internalType": "address",
-                "name": "cTokenBorrowed",
-                "type": "address"
-            },
-            {
-                "internalType": "address",
-                "name": "cTokenCollateral",
-                "type": "address"
-            },
-            {
-                "internalType": "address",
-                "name": "liquidator",
-                "type": "address"
-            },
-            {
-                "internalType": "address",
-                "name": "borrower",
-                "type": "address"
-            },
-            {
-                "internalType": "uint256",
-                "name": "actualRepayAmount",
-                "type": "uint256"
-            },
-            {
-                "internalType": "uint256",
-                "name": "seizeTokens",
-                "type": "uint256"
-            }
-        ],
-        "name": "liquidateBorrowVerify",
-        "outputs": [],
-        "payable": false,
-        "stateMutability": "nonpayable",
-        "type": "function",
-        "signature": "0x47ef3b3b"
-    },
-    {
-        "constant": true,
-        "inputs": [
-            {
-                "internalType": "address",
-                "name": "cTokenBorrowed",
-                "type": "address"
-            },
-            {
-                "internalType": "address",
-                "name": "cTokenCollateral",
-                "type": "address"
-            },
-            {
-                "internalType": "uint256",
-                "name": "actualRepayAmount",
-                "type": "uint256"
-            }
-        ],
-        "name": "liquidateCalculateSeizeTokens",
-        "outputs": [
-            {
-                "internalType": "uint256",
-                "name": "",
-                "type": "uint256"
-            },
-            {
-                "internalType": "uint256",
-                "name": "",
-                "type": "uint256"
-            }
-        ],
-        "payable": false,
-        "stateMutability": "view",
-        "type": "function",
-        "signature": "0xc488847b"
-    },
-    {
-        "constant": true,
-        "inputs": [],
-        "name": "liquidationIncentiveMantissa",
-        "outputs": [
-            {
-                "internalType": "uint256",
-                "name": "",
-                "type": "uint256"
-            }
-        ],
-        "payable": false,
-        "stateMutability": "view",
-        "type": "function",
-        "signature": "0x4ada90af"
-    },
-    {
-        "constant": true,
-        "inputs": [
-            {
-                "internalType": "address",
-                "name": "",
-                "type": "address"
-            }
-        ],
-        "name": "markets",
-        "outputs": [
-            {
-                "internalType": "bool",
-                "name": "isListed",
-                "type": "bool"
-            },
-            {
-                "internalType": "uint256",
-                "name": "collateralFactorMantissa",
-                "type": "uint256"
-            },
-            {
-                "internalType": "bool",
-                "name": "isComped",
-                "type": "bool"
-            }
-        ],
-        "payable": false,
-        "stateMutability": "view",
-        "type": "function",
-        "signature": "0x8e8f294b"
-    },
-    {
-        "constant": true,
-        "inputs": [],
-        "name": "maxAssets",
-        "outputs": [
-            {
-                "internalType": "uint256",
-                "name": "",
-                "type": "uint256"
-            }
-        ],
-        "payable": false,
-        "stateMutability": "view",
-        "type": "function",
-        "signature": "0x94b2294b"
-    },
-    {
-        "constant": false,
-        "inputs": [
-            {
-                "internalType": "address",
-                "name": "cToken",
-                "type": "address"
-            },
-            {
-                "internalType": "address",
-                "name": "minter",
-                "type": "address"
-            },
-            {
-                "internalType": "uint256",
-                "name": "mintAmount",
-                "type": "uint256"
-            }
-        ],
-        "name": "mintAllowed",
-        "outputs": [
-            {
-                "internalType": "uint256",
-                "name": "",
-                "type": "uint256"
-            }
-        ],
-        "payable": false,
-        "stateMutability": "nonpayable",
-        "type": "function",
-        "signature": "0x4ef4c3e1"
-    },
-    {
-        "constant": true,
-        "inputs": [
-            {
-                "internalType": "address",
-                "name": "",
-                "type": "address"
-            }
-        ],
-        "name": "mintGuardianPaused",
-        "outputs": [
-            {
-                "internalType": "bool",
-                "name": "",
-                "type": "bool"
-            }
-        ],
-        "payable": false,
-        "stateMutability": "view",
-        "type": "function",
-        "signature": "0x731f0c2b"
-    },
-    {
-        "constant": false,
-        "inputs": [
-            {
-                "internalType": "address",
-                "name": "cToken",
-                "type": "address"
-            },
-            {
-                "internalType": "address",
-                "name": "minter",
-                "type": "address"
-            },
-            {
-                "internalType": "uint256",
-                "name": "actualMintAmount",
-                "type": "uint256"
-            },
-            {
-                "internalType": "uint256",
-                "name": "mintTokens",
-                "type": "uint256"
-            }
-        ],
-        "name": "mintVerify",
-        "outputs": [],
-        "payable": false,
-        "stateMutability": "nonpayable",
-        "type": "function",
-        "signature": "0x41c728b9"
-    },
-    {
-        "constant": true,
-        "inputs": [],
-        "name": "oracle",
-        "outputs": [
-            {
-                "internalType": "contract PriceOracle",
-                "name": "",
-                "type": "address"
-            }
-        ],
-        "payable": false,
-        "stateMutability": "view",
-        "type": "function",
-        "signature": "0x7dc0d1d0"
-    },
-    {
-        "constant": true,
-        "inputs": [],
-        "name": "pauseGuardian",
-        "outputs": [
-            {
-                "internalType": "address",
-                "name": "",
-                "type": "address"
-            }
-        ],
-        "payable": false,
-        "stateMutability": "view",
-        "type": "function",
-        "signature": "0x24a3d622"
-    },
-    {
-        "constant": true,
-        "inputs": [],
-        "name": "pendingAdmin",
-        "outputs": [
-            {
-                "internalType": "address",
-                "name": "",
-                "type": "address"
-            }
-        ],
-        "payable": false,
-        "stateMutability": "view",
-        "type": "function",
-        "signature": "0x26782247"
-    },
-    {
-        "constant": true,
-        "inputs": [],
-        "name": "pendingComptrollerImplementation",
-        "outputs": [
-            {
-                "internalType": "address",
-                "name": "",
-                "type": "address"
-            }
-        ],
-        "payable": false,
-        "stateMutability": "view",
-        "type": "function",
-        "signature": "0xdcfbc0c7"
-    },
-    {
-        "constant": true,
-        "inputs": [],
-        "name": "proposal65FixExecuted",
-        "outputs": [
-            {
-                "internalType": "bool",
-                "name": "",
-                "type": "bool"
-            }
-        ],
-        "payable": false,
-        "stateMutability": "view",
-        "type": "function",
-        "signature": "0xf00a7a92"
-    },
-    {
-        "constant": false,
-        "inputs": [
-            {
-                "internalType": "address",
-                "name": "cToken",
-                "type": "address"
-            },
-            {
-                "internalType": "address",
-                "name": "redeemer",
-                "type": "address"
-            },
-            {
-                "internalType": "uint256",
-                "name": "redeemTokens",
-                "type": "uint256"
-            }
-        ],
-        "name": "redeemAllowed",
-        "outputs": [
-            {
-                "internalType": "uint256",
-                "name": "",
-                "type": "uint256"
-            }
-        ],
-        "payable": false,
-        "stateMutability": "nonpayable",
-        "type": "function",
-        "signature": "0xeabe7d91"
-    },
-    {
-        "constant": false,
-        "inputs": [
-            {
-                "internalType": "address",
-                "name": "cToken",
-                "type": "address"
-            },
-            {
-                "internalType": "address",
-                "name": "redeemer",
-                "type": "address"
-            },
-            {
-                "internalType": "uint256",
-                "name": "redeemAmount",
-                "type": "uint256"
-            },
-            {
-                "internalType": "uint256",
-                "name": "redeemTokens",
-                "type": "uint256"
-            }
-        ],
-        "name": "redeemVerify",
-        "outputs": [],
-        "payable": false,
-        "stateMutability": "nonpayable",
-        "type": "function",
-        "signature": "0x51dff989"
-    },
-    {
-        "constant": false,
-        "inputs": [
-            {
-                "internalType": "address",
-                "name": "cToken",
-                "type": "address"
-            },
-            {
-                "internalType": "address",
-                "name": "payer",
-                "type": "address"
-            },
-            {
-                "internalType": "address",
-                "name": "borrower",
-                "type": "address"
-            },
-            {
-                "internalType": "uint256",
-                "name": "repayAmount",
-                "type": "uint256"
-            }
-        ],
-        "name": "repayBorrowAllowed",
-        "outputs": [
-            {
-                "internalType": "uint256",
-                "name": "",
-                "type": "uint256"
-            }
-        ],
-        "payable": false,
-        "stateMutability": "nonpayable",
-        "type": "function",
-        "signature": "0x24008a62"
-    },
-    {
-        "constant": false,
-        "inputs": [
-            {
-                "internalType": "address",
-                "name": "cToken",
-                "type": "address"
-            },
-            {
-                "internalType": "address",
-                "name": "payer",
-                "type": "address"
-            },
-            {
-                "internalType": "address",
-                "name": "borrower",
-                "type": "address"
-            },
-            {
-                "internalType": "uint256",
-                "name": "actualRepayAmount",
-                "type": "uint256"
-            },
-            {
-                "internalType": "uint256",
-                "name": "borrowerIndex",
-                "type": "uint256"
-            }
-        ],
-        "name": "repayBorrowVerify",
-        "outputs": [],
-        "payable": false,
-        "stateMutability": "nonpayable",
-        "type": "function",
-        "signature": "0x1ededc91"
-    },
-    {
-        "constant": false,
-        "inputs": [
-            {
-                "internalType": "address",
-                "name": "cTokenCollateral",
-                "type": "address"
-            },
-            {
-                "internalType": "address",
-                "name": "cTokenBorrowed",
-                "type": "address"
-            },
-            {
-                "internalType": "address",
-                "name": "liquidator",
-                "type": "address"
-            },
-            {
-                "internalType": "address",
-                "name": "borrower",
-                "type": "address"
-            },
-            {
-                "internalType": "uint256",
-                "name": "seizeTokens",
-                "type": "uint256"
-            }
-        ],
-        "name": "seizeAllowed",
-        "outputs": [
-            {
-                "internalType": "uint256",
-                "name": "",
-                "type": "uint256"
-            }
-        ],
-        "payable": false,
-        "stateMutability": "nonpayable",
-        "type": "function",
-        "signature": "0xd02f7351"
-    },
-    {
-        "constant": true,
-        "inputs": [],
-        "name": "seizeGuardianPaused",
-        "outputs": [
-            {
-                "internalType": "bool",
-                "name": "",
-                "type": "bool"
-            }
-        ],
-        "payable": false,
-        "stateMutability": "view",
-        "type": "function",
-        "signature": "0xac0b0bb7"
-    },
-    {
-        "constant": false,
-        "inputs": [
-            {
-                "internalType": "address",
-                "name": "cTokenCollateral",
-                "type": "address"
-            },
-            {
-                "internalType": "address",
-                "name": "cTokenBorrowed",
-                "type": "address"
-            },
-            {
-                "internalType": "address",
-                "name": "liquidator",
-                "type": "address"
-            },
-            {
-                "internalType": "address",
-                "name": "borrower",
-                "type": "address"
-            },
-            {
-                "internalType": "uint256",
-                "name": "seizeTokens",
-                "type": "uint256"
-            }
-        ],
-        "name": "seizeVerify",
-        "outputs": [],
-        "payable": false,
-        "stateMutability": "nonpayable",
-        "type": "function",
-        "signature": "0x6d35bf91"
-    },
-    {
-        "constant": false,
-        "inputs": [
-            {
-                "internalType": "address",
-                "name": "cToken",
-                "type": "address"
-            },
-            {
-                "internalType": "address",
-                "name": "src",
-                "type": "address"
-            },
-            {
-                "internalType": "address",
-                "name": "dst",
-                "type": "address"
-            },
-            {
-                "internalType": "uint256",
-                "name": "transferTokens",
-                "type": "uint256"
-            }
-        ],
-        "name": "transferAllowed",
-        "outputs": [
-            {
-                "internalType": "uint256",
-                "name": "",
-                "type": "uint256"
-            }
-        ],
-        "payable": false,
-        "stateMutability": "nonpayable",
-        "type": "function",
-        "signature": "0xbdcdc258"
-    },
-    {
-        "constant": true,
-        "inputs": [],
-        "name": "transferGuardianPaused",
-        "outputs": [
-            {
-                "internalType": "bool",
-                "name": "",
-                "type": "bool"
-            }
-        ],
-        "payable": false,
-        "stateMutability": "view",
-        "type": "function",
-        "signature": "0x87f76303"
-    },
-    {
-        "constant": false,
-        "inputs": [
-            {
-                "internalType": "address",
-                "name": "cToken",
-                "type": "address"
-            },
-            {
-                "internalType": "address",
-                "name": "src",
-                "type": "address"
-            },
-            {
-                "internalType": "address",
-                "name": "dst",
-                "type": "address"
-            },
-            {
-                "internalType": "uint256",
-                "name": "transferTokens",
-                "type": "uint256"
-            }
-        ],
-        "name": "transferVerify",
-        "outputs": [],
-        "payable": false,
-        "stateMutability": "nonpayable",
-        "type": "function",
-        "signature": "0x6a56947e"
-    },
-    {
-        "constant": false,
-        "inputs": [
-            {
-                "internalType": "address",
-                "name": "contributor",
-                "type": "address"
-            }
-        ],
-        "name": "updateContributorRewards",
-        "outputs": [],
-        "payable": false,
-        "stateMutability": "nonpayable",
-        "type": "function",
-        "signature": "0x741b2525"
-    }
-]
-module.exports = comptrollerAbi;
\ No newline at end of file
diff --git a/test/mainnet/compound-import/compound-import.test.js b/test/mainnet/compound-import/compound-import.test.js
deleted file mode 100644
index 52301cf8..00000000
--- a/test/mainnet/compound-import/compound-import.test.js
+++ /dev/null
@@ -1,186 +0,0 @@
-const { expect, should } = require("chai");
-const { ethers } = require('hardhat');
-const { provider, deployContract} = waffle
-const { Signer, Contract } = require("ethers");
-
-const { buildDSAv2 } = require("../../../scripts/tests/buildDSAv2");
-const { cEthAddress, cDaiAddress, daiAddress, comptrollerAddress } = require("./constants.js");
-const cEthAbi = require("./ABIs/cEthAbi");
-const cDaiAbi = require("./ABIs/cDaiAbi");
-const comptrollerAbi = require("./ABIs/comptrollerAbi");
-const { addresses } = require("../../../scripts/tests/mainnet/addresses");
-const { deployAndEnableConnector } = require("../../../scripts/tests/deployAndEnableConnector");
-const { abis } = require("../../../scripts/constant/abis");
-const { getMasterSigner } = require("../../../scripts/tests/getMasterSigner");
-const { parseEther, parseUnits } = require("ethers/lib/utils");
-const { encodeSpells } = require("../../../scripts/tests/encodeSpells");
-const encodeFlashcastData = require("../../../scripts/tests/encodeFlashcastData").default;
-const { ConnectV2CompoundImport__factory } = require("../../../typechain");
-const { ConnectV2InstaPoolV4__factory } = require("../../../typechain");
-const { ConnectV2Compound__factory } = require("../../../typechain");
-
-
-describe('Import Compound', function () {
-    // const connectorName = "COMPOUND-IMPORT-ABC";
-    const connectorName = "COMPOUND-IMPORT-C";
-    const instapoolConnector = "INSTAPOOL-C";
-    const compoundConnector = "COMPOUND-C";
-    let dsaWallet; // signers
-    let cEth, cDai, comptroller, Dai; // contracts
-    let masterSigner = Signer;
-    let connector, connector2, connector3;
-    let owner;
-    let wallets;
-
-    before(async () => {
-        // create (reset) mainnet fork
-        await hre.network.provider.request({
-            method: "hardhat_reset",
-            params: [
-                {
-                    forking: {
-                        jsonRpcUrl: hre.config.networks.hardhat.forking.url,
-                        blockNumber: 13300000,
-                    },
-                },
-            ],
-        });
-        
-        // deploy and enable connector contract
-        masterSigner = await getMasterSigner()
-        instaConnectorsV2 = await ethers.getContractAt(abis.core.connectorsV2, addresses.core.connectorsV2);
-
-        // compound import connector
-        connector = await deployAndEnableConnector({
-            connectorName,
-            contractArtifact: ConnectV2CompoundImport__factory,
-            signer: masterSigner,
-            connectors: instaConnectorsV2
-        })
-        console.log("Connector address", connector.address);
-        
-        // flash loan connector
-        connector2 = await deployAndEnableConnector({
-            connectorName: instapoolConnector,
-            contractArtifact: ConnectV2InstaPoolV4__factory,
-            signer: masterSigner,
-            connectors: instaConnectorsV2
-        })
-        console.log("Connector2 address", connector2.address);
-
-        // compound connector
-        connector3 = await deployAndEnableConnector({
-            connectorName: compoundConnector,
-            contractArtifact: ConnectV2Compound__factory,
-            signer: masterSigner,
-            connectors: instaConnectorsV2
-        })
-        console.log("Connector3 address", connector3.address);
-
-        // get an account
-        await hre.network.provider.request({
-            method: "hardhat_impersonateAccount",
-            params: ["0x10a25c6886AE02fde87C5561CDD331d941d0771a"],
-        });
-        owner = await ethers.getSigner("0x10a25c6886AE02fde87C5561CDD331d941d0771a");
-
-        await hre.network.provider.send("hardhat_setBalance", [
-            "0x10a25c6886AE02fde87C5561CDD331d941d0771a",
-            parseEther('100000').toHexString()
-        ]);
-
-        cEth = new ethers.Contract(cEthAddress, cEthAbi, ethers.provider);
-        cDai = new ethers.Contract(cDaiAddress, cDaiAbi, ethers.provider);
-        const tokenArtifact = await artifacts.readArtifact("@openzeppelin/contracts/token/ERC20/IERC20.sol:IERC20");
-        Dai = new ethers.Contract(daiAddress, tokenArtifact.abi, ethers.provider);
-        comptroller = new ethers.Contract(comptrollerAddress, comptrollerAbi, ethers.provider);
-
-        // deposit ether to Compound
-        await cEth.connect(owner).mint({
-            value: parseEther('10')
-        });
-
-        // enter markets with deposits
-        const cTokens = [cEth.address];
-        await comptroller.connect(owner).enterMarkets(cTokens);
-
-        // borrow dai from Compound
-        await cDai.connect(owner).borrow(parseUnits('1000'));
-    });
-
-    describe('Deployment', async () => {
-        it('Should set correct name', async () => {
-            await expect(await connector.name()).to.eq('Compound-Import-v2');
-        });
-    });
-
-    describe("DSA wallet setup", async () => {
-        it("Should build DSA v2", async () => {
-            dsaWallet = await buildDSAv2(owner.address);
-            console.log(dsaWallet.address);
-            expect(!!dsaWallet.address).to.be.true;
-        });
-
-        it("Deposit ETH into DSA wallet", async function () {
-            await owner.sendTransaction({
-                to: dsaWallet.address,
-                value: ethers.utils.parseEther("10")
-            });
-            expect(await ethers.provider.getBalance(dsaWallet.address)).to.be.gte(ethers.utils.parseEther("10"));
-        });
-    });
-
-    describe('Compound position migration', async () => {
-        it('Should migrate Compound position', async () => {
-            const amount = ethers.utils.parseEther("100") // 100 DAI
-            const setId = "83478237";
-
-            const flashSpells = [
-                {
-                    connector: compoundConnector,
-                    method: "borrow",
-                    args: ["DAI-A", amount, 0, setId]
-                },
-                {
-                    connector: compoundConnector,
-                    method: "payback",
-                    args: ["DAI-A", 0, setId, 0]
-                },
-                {
-                    connector: instapoolConnector,
-                    method: 'flashPayback',
-                    args: [Dai.address, parseUnits('1000.9'), 0, 0],
-                }
-            ]
-
-            const spells = [
-                {
-                    connector: instapoolConnector,
-                    method: "flashBorrowAndCast",
-                    args: [Dai.address, parseUnits('1000'), 0, encodeFlashcastData(flashSpells), "0x"]
-                }
-            ]
-            console.log(owner.address);
-            const tx = await dsaWallet.connect(owner).cast(...encodeSpells(spells), owner.address)
-            const receipt = await tx.wait();
-        })
-        // take flash loan of dai through spell
-        // call contract function
-        // repay flash loan of dai
-        // check if import was successful
-    })
-});
-
-
-// deploy the connector on mainnet fork
-// build a new dsa in tests
-
-// create a Compound position
-    // deposit some ether in Compound
-    // borrow some DAI
-
-// migrate the Compound position
-    // cast the migrate spell
-
-// check if migration was successful
-    // check the balance of DSA contract address in ERC20 tokens
diff --git a/test/mainnet/compound-import/compound-import.test.ts b/test/mainnet/compound-import/compound-import.test.ts
new file mode 100644
index 00000000..12b1aef4
--- /dev/null
+++ b/test/mainnet/compound-import/compound-import.test.ts
@@ -0,0 +1,239 @@
+import { expect, should } from "chai";
+import hre, { ethers, waffle } from "hardhat";
+import type { Signer, Contract } from "ethers";
+import { BigNumber } from "bignumber.js";
+import { buildDSAv2 } from "../../../scripts/tests/buildDSAv2";
+import { addresses } from "../../../scripts/tests/mainnet/addresses";
+import { deployAndEnableConnector, enableConnector } from "../../../scripts/tests/deployAndEnableConnector";
+import { abis } from "../../../scripts/constant/abis";
+import { getMasterSigner } from "../../../scripts/tests/getMasterSigner";
+import { parseEther, parseUnits } from "ethers/lib/utils";
+import { encodeSpells } from "../../../scripts/tests/encodeSpells";
+
+import { ConnectV2CompoundImport__factory, ConnectV2InstaPoolV4__factory } from "../../../typechain";
+const { provider } = waffle;
+
+const encodeFlashcastData = require("../../../scripts/tests/encodeFlashcastData").default;
+const cEthAddress = "0x4Ddc2D193948926D02f9B1fE9e1daa0718270ED5";
+const cDaiAddress = "0x5d3a536E4D6DbD6114cc1Ead35777bAB948E3643";
+const daiAddress = "0x6B175474E89094C44Da98b954EedeAC495271d0F";
+const comptrollerAddress = "0x3d9819210A31b4961b30EF54bE2aeD79B9c9Cd3B";
+
+describe("Import Compound", function () {
+  const connectorName = "COMPOUND-IMPORT-C";
+  const account = "0x26eD8119c45E3871df446a13F7Fdc9E2C527DaCD";
+
+  const cEthAbi = [
+    {
+      constant: false,
+      inputs: [],
+      name: "mint",
+      outputs: [],
+      payable: true,
+      stateMutability: "payable",
+      type: "function",
+      signature: "0x1249c58b"
+    },
+    {
+      constant: true,
+      inputs: [{ internalType: "address", name: "owner", type: "address" }],
+      name: "balanceOf",
+      outputs: [{ internalType: "uint256", name: "", type: "uint256" }],
+      payable: false,
+      stateMutability: "view",
+      type: "function"
+    },
+    {
+      constant: false,
+      inputs: [],
+      name: "exchangeRateCurrent",
+      outputs: [{ name: "", type: "uint256" }],
+      payable: false,
+      stateMutability: "nonpayable",
+      type: "function"
+    }
+  ];
+
+  const cDaiAbi = [
+    {
+      constant: false,
+      inputs: [
+        {
+          internalType: "uint256",
+          name: "borrowAmount",
+          type: "uint256"
+        }
+      ],
+      name: "borrow",
+      outputs: [
+        {
+          internalType: "uint256",
+          name: "",
+          type: "uint256"
+        }
+      ],
+      payable: false,
+      stateMutability: "nonpayable",
+      type: "function",
+      signature: "0xc5ebeaec"
+    }
+  ];
+
+  const comptrollerAbi = [
+    {
+      constant: false,
+      inputs: [
+        {
+          internalType: "address[]",
+          name: "cTokens",
+          type: "address[]"
+        }
+      ],
+      name: "enterMarkets",
+      outputs: [
+        {
+          internalType: "uint256[]",
+          name: "",
+          type: "uint256[]"
+        }
+      ],
+      payable: false,
+      stateMutability: "nonpayable",
+      type: "function",
+      signature: "0xc2998238"
+    }
+  ];
+
+  let connector2;
+  let cEth: Contract, cDai: Contract, comptroller, Dai: any;
+  let owner: any;
+
+  let dsaWallet0: any;
+  let masterSigner: Signer;
+  let instaConnectorsV2: Contract;
+  let connector: any;
+
+  const wallets = provider.getWallets();
+  const [wallet0, wallet1, wallet2, wallet3] = wallets;
+
+  before(async () => {
+    await hre.network.provider.request({
+      method: "hardhat_reset",
+      params: [
+        {
+          forking: {
+            // @ts-ignore
+            jsonRpcUrl: hre.config.networks.hardhat.forking.url,
+            blockNumber: 13300000
+          }
+        }
+      ]
+    });
+
+    masterSigner = await getMasterSigner();
+    instaConnectorsV2 = await ethers.getContractAt(abis.core.connectorsV2, addresses.core.connectorsV2);
+
+    connector = await deployAndEnableConnector({
+      connectorName,
+      contractArtifact: ConnectV2CompoundImport__factory,
+      signer: masterSigner,
+      connectors: instaConnectorsV2
+    });
+    console.log("Connector address", connector.address);
+
+    connector2 = await deployAndEnableConnector({
+      connectorName: "INSTAPOOL-C",
+      contractArtifact: ConnectV2InstaPoolV4__factory,
+      signer: masterSigner,
+      connectors: instaConnectorsV2
+    });
+    console.log("Connector address", connector2.address);
+
+    await hre.network.provider.request({
+      method: "hardhat_impersonateAccount",
+      params: [account]
+    });
+
+    await hre.network.provider.send("hardhat_setBalance", [account, ethers.utils.parseEther("100000").toHexString()]);
+
+    owner = await ethers.getSigner(account);
+
+    cEth = new ethers.Contract(cEthAddress, cEthAbi);
+    cDai = new ethers.Contract(cDaiAddress, cDaiAbi);
+    Dai = new ethers.Contract(daiAddress, abis.basic.erc20);
+    comptroller = new ethers.Contract(comptrollerAddress, comptrollerAbi);
+
+    // deposit ether to Compound: ETH-A
+    await cEth.connect(owner).mint({
+      value: parseEther("9")
+    });
+
+    // enter markets with deposits
+    const cTokens = [cEth.address];
+    await comptroller.connect(owner).enterMarkets(cTokens);
+
+    // borrow dai from Compound: DAI-A
+    await cDai.connect(owner).borrow(parseUnits("100"));
+  });
+
+  describe("Deployment", async () => {
+    it("Should set correct name", async () => {
+      expect(await connector.name()).to.eq("Compound-Import-v2");
+    });
+  });
+
+  describe("checks", async () => {
+    it("Should check user COMPOUND position", async () => {
+      const ethExchangeRate = (await cEth.connect(owner).callStatic.exchangeRateCurrent()) / 1e28;
+      expect(new BigNumber(await cEth.connect(owner).balanceOf(owner.address)).dividedBy(1e8).toFixed(0)).to.eq(
+        new BigNumber(9).dividedBy(ethExchangeRate).toFixed(0)
+      );
+      expect(await Dai.connect(owner).balanceOf(owner.address)).to.eq("100000000000000000000");
+    });
+  });
+
+  describe("DSA wallet setup", async () => {
+    it("Should build DSA v2", async () => {
+      dsaWallet0 = await buildDSAv2(owner.address);
+      console.log(dsaWallet0.address);
+      expect(!!dsaWallet0.address).to.be.true;
+    });
+
+    it("Deposit ETH into DSA wallet", async function () {
+      await owner.sendTransaction({
+        to: dsaWallet0.address,
+        value: ethers.utils.parseEther("10")
+      });
+      expect(await ethers.provider.getBalance(dsaWallet0.address)).to.be.gte(ethers.utils.parseEther("10"));
+    });
+  });
+
+  describe("Compound position migration", async () => {
+    it("Should migrate Compound position", async () => {
+      const amount = new BigNumber(ethers.utils.parseEther("100").toString()).multipliedBy(9).dividedBy(1e4);
+
+      const flashSpells = [
+        {
+          connector: "COMPOUND-IMPORT-C",
+          method: "importCompound",
+          args: [owner.address, ["ETH-A"], ["DAI-A"], [amount]]
+        },
+        {
+          connector: "INSTAPOOL-C",
+          method: "flashPayback",
+          args: [daiAddress, amount, 0, 0]
+        }
+      ];
+
+      const spells = [
+        {
+          connector: "INSTAPOOL-C",
+          method: "flashBorrowAndCast",
+          args: [daiAddress, ethers.utils.parseEther("100"), 0, encodeFlashcastData(flashSpells), "0x"]
+        }
+      ];
+      const tx = await dsaWallet0.connect(owner).cast(...encodeSpells(spells), owner.address);
+      const receipt = await tx.wait();
+    });
+  });
+});
diff --git a/test/mainnet/compound-import/constants.js b/test/mainnet/compound-import/constants.js
deleted file mode 100644
index 1648ec0c..00000000
--- a/test/mainnet/compound-import/constants.js
+++ /dev/null
@@ -1,6 +0,0 @@
-const cEthAddress = "0x4Ddc2D193948926D02f9B1fE9e1daa0718270ED5";
-const cDaiAddress = "0x5d3a536E4D6DbD6114cc1Ead35777bAB948E3643";
-const daiAddress = "0x6B175474E89094C44Da98b954EedeAC495271d0F";
-const comptrollerAddress = "0x3d9819210A31b4961b30EF54bE2aeD79B9c9Cd3B";
-module.exports = { cEthAddress, cDaiAddress, daiAddress, comptrollerAddress }; 
-                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 
\ No newline at end of file