Meshswap
  • Introduction
  • What is MESH?
    • MESH Allocation
    • MESH Tokenomics
    • MESH Redistribution Policy
  • Get started
    • Create a Wallet
    • Add Polygon Network & Tokens
    • How to move your assets to wallet
      • Transferring MATIC
        • [Binance, Kucoin, Gate.io] How to move MATIC from CEX to Wallet 1
        • [Coinbase, OKX, Upbit, Bithumb, Coinone] How to move MATIC to Wallet 2
        • [Polygon Bridge] How to move MATIC to Wallet 3
      • How to get WETH, MATIC, USDC, USDT, DAI
      • How to get oETH, oMATIC, oUSDC, oUSDT, oDAI
      • XRP: The Quickest and easiest way to transfer your asset
      • How to get oXRP in your KuCoin wallet and deposit in Meshswap
      • How to transfer BUSD from Binance to the Polygon network
      • Transferring TON
        • Create Wallets supporting TON network
        • How to transfer TON from wallet to Meshswap
        • How to transfer TON from Huobi to the Polygon network
  • More
    • Risk & Security
    • Privacy Policy
    • Contract & Audit
    • Contact & Team
    • Events
      • Early-bird MESH Airdrop Events(End)
      • Meshswap x Kucoin Partnership Giveaway Event(End)
  • PRODUCTS
    • Swaps
    • Lend
      • How to deposit your assets on Lending pools
      • The Detailed Policy of Lending Pool Deposit
    • Yield Farm
      • How to deposit your assets on Yield Farming pools
    • Leveraged Yield Farm
      • How to deposit your assets on Leveraged Yield Farming pools
      • Detailed Policy of Leverage Farm
    • Long/Short Margin Trading
      • Open and Close Long/Short Positions
        • Open Long Positions
        • Open Short Positions
        • Close Long Positions
        • Close Short Positions
      • Long/Short Margin Trading Details Policy
    • Interest rate
    • Stake
      • How to stake MESH
      • Staking Policy
    • Pool Voting
      • How to participate in Pool Voting with vMESH
    • Ecopot
    • Drops
    • Pool Airdrop
    • Governance
      • Governance Voting Policy
  • DEVELOPERS
    • Contract
      • MESH
      • MESHswapRouter
      • MESHSwapView
      • Factory
      • Exchange
      • PoolVoting
      • VotingMESH
      • Treasury
      • Distribution
      • Governor
      • SinglePool
      • SinglePool Factory
      • PlusPool
      • PlusPool Factory
      • EcoPotVoting
      • EcoPot
    • Airdrop
      • Set Airdrop Operator
      • Start Airdop
    • EcoPot
      • Set EcoPot
      • Start EcoPot
  • Meshswap Protocol
  • Orbit Bridge
Powered by GitBook
On this page
  • Code
  • Address
  • Events, Read-Only Functions, and State-Changing Functions
  1. DEVELOPERS
  2. Contract

VotingMESH

This contract is responsible for the ecosystem behavior related to staking MESH. Voting rights (vMESH) are issued according to the staking quantity and period, and 40% of the daily MESH mining quantity is distributed to staking participants. (MESH distribution for staking participants may be changed through governance voting)

Code

Github Link: (Will be updated after official launch)

Address

  • Polygon Mainnet : 0x176b29289f66236c65c7ac5db2400abb5955df13

Events, Read-Only Functions, and State-Changing Functions

Events

LockMESH

event LockMESH(address user, uint lockPeriod, uint MESHAmount, uint totalLockedMESH, uint unlockTime);
  • Event log of MESH staking

  • Parameters

    • user : user address

    • lockPeriod :

      • 4 months : 10,368,000

      • 8 months : 20,736,000

      • 12 months : 31,104,000

      • x8 : 1,555,200,000

    • MESHAmount : Number of MESH locked b

    • totalLockedMESH : Total Number of staked MESH

    • unlockTime : Available unstaking time (timestamp)

UnlockMESH

event UnlockMESH(address user, uint vMESHAmount, uint MESHAmount);
  • Event log of MESH unstaking

  • Parameters

    • user : user address

    • vMESHAmount : Number of vMESH

    • MESHAmount : Number of MESH

UnlockMESHUnlimited

event UnlockMESHUnlimited(address user, uint vMESHBefore, uint vMESHAfter, uint MESHAmount, uint unlockTime);
  • Event log that occurs when unstaking vMESH x8

  • Parameters

    • user : user address

    • vMESHBefore : The amount of vMESH held

    • vMESHAfter : Amount of vMESH held after unstaking

    • MESHAmount : Amount of MESH staked

    • unlockTime : Available unstaking time (timestamp)

RefixBoosting

event RefixBoosting(address user, uint lockPeriod, uint boostingAmount);
  • Event log of staking period is changed

  • Parameter

    • user : user addres

    • lockPeriod : period

    • boostingAmount : Number of vMESH after period changed

ChangeMiningRate

event ChangeMiningRate(uint _mining);
  • Event log of daily MESH distribution rate changed

GiveReward

event GiveReward(address user, uint amount, uint lastIndex, uint rewardSum);
  • Event log of when mined MESH is claimed and distributed

Compound

event Compound(address user, uint reward, uint compoundAmount, uint transferAmount, uint mintAmount);
  • Event log of when mined MESH restaking.

  • The compound amount can be entered in integer units

  • The amount minus the compund amount from the mined amount is returned to the wallet.

Read-Only Functions

balanceOf

  • Number of vMESH tokens held by each address

getCurrentBalance

  • Number of vMESH tokens held by each address recent snapshot

getUserUnlockTime

  • Possible time of unstake

lockedMESH

  • Number of MESH tokens stakes

mining

  • MESH distribution rate

  • It is a value between 0 and 10000, in units of 0.0001%

snapShotBalance

  • Number of vMESH tokens held by each address and snapshot

snapShotCount

  • Number of snapshot index each address

getPriorBalance

function getPriorBalance(address user, uint blockNumber) public view returns (uint) 
  • Historical user vMESH holdings per block

  • Parameter

    • user : user address

    • blockNumber : prior blockNumber

snapShotBalance

function snapShotBalance(address user, uint index) public view returns (uint) 
  • Historical vMESH holdings each address

  • Parameter

    • user : user address

    • index : index

State-Changing Functions

lockMESH

function lockMESH(uint amount, uint lockPeriodRequested) public
  • Method for MESH staking

  • The amount can be entered in integer units

unlockMESH

function unlockMESH() public
  • Method for MESH unstaking

  • Unstaking is only possible during the unstaking period.

unlockMESHUnlimited

function unlockMESHUnlimited() public
  • Method for unstake MESH x8

  • Changed to x4 staking from execution

refixBoosting

function refixBoosting(uint lockPeriodRequested)
  • Method for MESH staking period change

claimReward

function claimReward() public
  • Method that a user calls to claim the claimable MESH

compoundReward

function compoundReward() public
  • Method for mined MESH staking

  • Can be called when the reward is 1 MESH or more

  • It is possible to stake in integer units, and the rest is to the wallet address.

PreviousPoolVotingNextTreasury

Last updated 2 years ago