ZMINE BLOG

English English   ไทย ไทย

How to vote for ZMN second round using smart contract

Share this article

Overview

The vote for the Second round Token 500,000,000 ZMN, as previously said, will be open for voting by the Token holders. To decide what to do in the next step ;

  1. BURN – Burn all tokens
  2. KEEP to be used in a beneficial way for token holders, or taking as a company’s token, for instance,

The voting process is open for voting in 2 ways:

  1. Website https://zmine.com
  2. Smart contract

This article will describe the procedure for voting via a smart contract.

 

Smart contract details

Voting is related to 3 smart contracts:

ZMINE Token

Vote for BURN

Vote for KEEP

***********************

Please DO NOT transfer ZMN Token directly from the Exchange or Wallet to these contract addresses.

***********************

 

How to vote via smart contract

There are 4 steps to run the process:

  1. Connect Metamask wallet to etherscan.io (optional)
  2. Allowance and prepare ZMN token into the wallet
  3. Vote
  4. Reclaim token back into your wallet

 


 

1. Connect Metamask wallet to etherscan.io (optional)

Using smart contracts can be done in a variety of ways, including the wallet. There are many types. In this article, we would like to introduce the easiest way to use is to use Metamask (wallet) with etherscan.io (Explorer + Smart contract interface).

 

Details of Metamask and usage can be viewed from the Official website https://metamask.io/

 

Connect Metamask on etherscan.io By accessing ZMINE Token in the section of Write Contract, then select “Write Contract Connect with Metamask” and press the “Connect” button

 

Etherscan.io will notify you that this feature is still a trial version. Press OK.

 

When connected, the red button will become a green button as shown.

 

2. Allowance and prepare ZMN token into the wallet

According to the voting, the principle is Tokens holders will have the right to vote according to the number of tokens that are held. In the vote, Token holders must transfer tokens to be stored in smart contracts as collateral. Therefore, in the vote, the Token holder has to allow the smart contract to transfer their own tokens from the wallet to be stored in the smart contract. That is to approve it (allow someone to transfer on your behalf).

As the following;

 

From the previous step, when connecting, select 1. approve and fill in the following information.

_spender (address) fill Contract address that you wish to be used

  • In case of the BURN please fill 0xd67069d5c76028c81cbcba7c8fa0253d6aad3601
  • In case of the KEEP please fill 0x7ed0226b939f43efe0fc37537566cb642cb1da59

_value (uint256) Enter the number of tokens that you want to use to vote in the wei unit. For example, if you want to use 100 ZMN to vote, enter 1000000000000000000 (100 followed by number 0, 18 digits)

 

Once the approval and transaction have been confirmed, can be checked from the Read Contract in item 7. allowance and fill out the following information.

_owner (address) fill up your Wallet address that ZMN is held.

_spender (address) fill up the Contract address that you wish to vote.

  • In case of BURN please fill 0xd67069d5c76028c81cbcba7c8fa0253d6aad3601
  • in case of KEEP please fill 0x7ed0226b939f43efe0fc37537566cb642cb1da59

After that please press “Query” will get the remaining value of ZMN that we allow allowance for Smart contract, in this case is 100000000000000000000

 

 

Check the ZMN held in the wallet from the Contract in the 4. balanceOf and fill in the following information.

_owner (address) enter your Wallet address that ZMN is held

After that please press “Query”

 “Query” will get the remaining value of ZMN that we allow allowance for Smart contract, in this case, is 999990000000000000000  or 999.99 ZMN.

 

3. Vote

You can vote by going to the page of the contract you want to vote.

 

From the following example, it is a preview of the BURN vote.

 

In the Read Contract section 8. isVotable must be True, which means that it is in the period of opening for voting

The opening time for the vote is from May 22, 2019 GMT to May 28, 2019 GMT.

 

Go to the Write Contract section and connect with Metamask like the previous steps in 3. voteBurn. Fill in the information as follows.

amount (unit256) Enter the number of ZMN that you want to use to vote. In this example, there are a number of 100000000000000000000 or 100 ZMN.

Press “Write” you will find the transaction confirmation window from Metamask

Notice that the Transaction Fee value at Metamask is calculated to be quite high, ie 0.0304 ETH or about 5.26 USD at that exchange rate. Voters can edit the Transaction Fee by pressing the “Edit” button.

 

To edit the Transaction Fee, you can do both Basic and Advanced. Select Advanced.

 

Make changes as follows

  • Gas Price (GWEI) Enter 3 GWEI – 10 GWEI. The more you enter, the more transaction will be confirmed. The faster comfirmation we would recommend 4 GWEI.
  • Gas limit is the maximum amount of gas that is allowed to use. Which can be seen that Metamask has a very high estimation, resulting in a very high transaction fee Edit to 250000

The new transaction fee from the sample is 0.001 ETH or about 0.17 USD at the exchange rate at that moment, click the “Save” button and press the “Confirm” button to confirm the transaction. VoteBurn

 

In the Read Contract, section 11. countVoteScore can check the total number of ZMN that has been voted by everyone.

 

In the Read Contract, section 13. countVoteUser can check the total amount of Wallet that has been voted.

 

If the vote is valid. When returning to Contract ZmineToken 0x554FFc77F4251a9fB3c0E3590a6a205f8d4e067D in the Read Contract section and checking the ZMN number in the wallet from 4. BalanceOf again will be found that the ZMN has been reduced to the amount that has been voted. Which caused the transfer to be stored in the Smart contract that we voted to as collateral (Collateral)

 

4. Reclaim token back into your wallet

When the vote is completed, the Smart contract used to vote will enable the voters to call their own ZMN back to their own wallet (Reclaim ZMN token).

 

Reclaim ZMN token can be done from May 30, 2019, GMT onwards and the transaction be checked by accessing the contract page that is used to vote on etherscan.io in the Read Contract section 4. isReclaimable Must be True

 

In the Write Contract please connect with Metamask again

 

In the Write Contract section 5. reclaimToken, click the “Write” button. There will be a Transaction Confirmation window for Metamask. Make changes to the Transaction Fee in the Advanced section as follows.

  • Gas Price (GWEI) Enter 3 GWEI – 10 GWEI The more you enter, the more transaction will be confirmed. The faster confirmation we would recommend 4 GWEI.
  • Gas Limit change to 120000

 

When returning to Contract ZmineToken 0x554FFc77F4251a9fB3c0E3590a6a205f8d4e067D in the Read Contract section and checking the number of ZMN in Wallet from item 4. balanceOf again, we will find more  ZMN that has been used as collateral. All tokens will be transferred back to the wallet of the voters and consider as a complete voting process.

 

สรุป

The voting process with ZMN through Smart contract is a full decentralize vote process, which for users who have never used Smart contract before, may take time to learn and follow the step by step process. However, this process is A good example of using Smart contract to make any transaction in the world of decentralization. Which is transparent and can be verified.