Process by which you test the tntcolv1 contract in Remix.

At a minimum, you'll need tntcolv1.sol, erc20.sol, test_env1.sol and a NFT project like sc_simpv2.sol.
Using Remix, build all files with optimization on 200 and the EVM version berlin. Once built,
you'll launch and setup each smart contract. 

test_env1
This is the test environment that should be setup first. Notice that there are four wallets that
are needed during the deployment of the contract. Pick four different remix accounts to serve these
roles. 

erc20
Next, you're going to deploy a sample TNT20 in order to have collateral that can be used
during the testing process. Might be worthwhile to use two different accounts from the 
four that were used to simulate Selene Network contracts.
- Mint a known amount of coins into each/some of the test_env1 accounts.

sc_simpv2
This is the contract where NFTs can be minted and used as deposit collateral for testing.
After deploying the contract by using the test_env1 address for a bunch of parameters, 
initialize the contract by calling payInitialize() with:
10,777,2,20,10
and calling projectUpdate() with something like:
https://amorstyle.com/nfts/sc_simpv2/,sc_simpv2,bafa6b2bf67fe21d119492acb2660c98a907e703
After this, get the price it costs to mint by calling 
payMintPrice()
Then, payMint() with:
1001,1
At this point you have a token that can be used (id=1).

tntcolv1
last setup step is to launch a version of tntcolv1. Choose one of the test_env1 accounts as titled and
use the test_env1 address for the environment smart contracts. After deploying, 
call payInitialize() with something like:
10,777,2,15,5
and projectUpdate() with
https://amorstyle.com/nfts/tntcolv1/,tntcolv1,bafa6b2bf67fe21d119492acb2660c98a907e703
Then create a card that can be used with cardNewSpotcol()
5,1,10,0,0x1234,50,0x1234,10,2,25
where 0x1234 is replaced by the TNT20 address and the sc_simpv2 address.
- read cardInfo with 
5,1
to make sure the info is correct.
Use same parameters for cardMintPrice(), get the mint price.

Create a second series that doesn't take collateral using cardNewSpot() like:
6,1,10,0

Also create a third series that doesn't require a deposit token like:
7,1,5,0,0x1234,100,0x1234,5,2,75
Where both contracts are just the TNT20 address. This will create a card that doesn't
require a deposit token but just requires collateral.

At this point, you're ready to test.
The series 6 - should mint without collateral
The series 7 - should mint without deposit token, but with collateral
The series 5 - requires both deposit token and collateral

cardMint() 6,1.
- call cardMintToggle with: 6,1 - from titled account
- call cardMintPrice with: 6,1
- call cardMint with: 1001,1,6,1,0 & payment
* validate state
- call payBurnPrice
- call payBurn with token Id 1

setup to mint 7,1 - card with only collateral.
- make sure account that is going to mint is a test_env1 account (holds participant)
- call cardInfo with: 7,1 
- make sure minting account holds enough collateral (>100)
- make sure it's approved the tntcolv1 contract with allowance.
- call cardMintPrice with: 7,1
- call cardMint with: 1001,1,7,1,0 & payment
* should get token 2. 
* check TNT20 balance numbers.
- call charUpgradePrice() on token 2
- call cardUpgrade() on token 2
* validate balance has changed.

setup to mint 5,1 - card with both types of collateral
- make sure the account that holds the deposit card is active
- approve tntcolv1 for token 1
- make sure minting account holds enough collateral (>100)
- make sure it's approved the tntcolv1 contract with allowance.
- call cardMintPrice with: 5,1
- call cardMint with: 1001,1,5,1,1 & payment
* should get token 3. 
* validate TNT20 drawdown
* validate sc_simpv2 token is owned by contract.

***
Now unwind the prcess by burning tokens. start with 2.


Example collateral values
10 tnt20 = 10.000000000000000000

