MultiversX Tracker is Live!

How to burn Moons and drop circulating Moon Supply forever

All Cryptocurrencies

by COINS NEWS 137 Views

How to burn Moons and drop circulating Moon Supply forever

As you all know, Moons have a fixed supply now. Actually, they are even deflationary, because we are burning Moons with some mechanisms like the banner purchase. For burning we are currently using the address

0x000000000000000000000000000000000000dEaD 

Which is actually only a vanity address, and not a real burn address. While we can be sure no one will ever find the private key to this address, it is still counted as a holder and doesn't affect circulating supply.

But did you know Moons can be burned for real by sending them to the burn/mint address?;

0x0000000000000000000000000000000000000000 

Wallets don't accept this as a receiving address, it has to be done by calling the burn function of the Moons contract. So here I show you how to do this with Metamask on Desktop.

Preparations

First you need to enable the hex data in the MetaMask settings. Open the Settings, go to the "Advanced" tab and turn on "Show hex data".

https://preview.redd.it/4k9l7u9goi4c1.png?712&format=png&auto=webp&s=d5e9fdccc08373df5d390328c6afcd9479891b00

Constructing the correct hex data for the interaction

The Moon source code was never published by Reddit, so we can't use the "Write Contract" functionality from a block explorer. Instead the hex data has to be contracted manually.

From a tiny bit of reverse engineering from one of the last official Reddit burns, we can find the hex data of the burn has to look like this:

0xfe9d930300000000000000000000000000000000000000000000####################00000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000000 

Here, fe9d9303 is the method (the burn function) and #################### is the raw value of the amount of Moons to burn in hexadecimal. Let's make an example to see what to enter here to burn 1 Moon:

Ethereum doesn't know decimals in raw values, so there have to be 18 zeroes added (this can differ for other tokens, but it's the default value):

1000000000000000000 

For the conversion to hexadecimal we can use an online calculator:

DE0B6B3A7640000 

In the hex data above, there have to be 20 chars added, these are only 15. So we add 5 zeroes at the start:

00000DE0B6B3A7640000 

And now we put this into the placeholder above to get the full hex data:

0xfe9d93030000000000000000000000000000000000000000000000000DE0B6B3A764000000000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000000 

Making the contract interaction

To make a contract interaction with Metamask, we need to make a zero value transfer to the contract and attach the hex data.

The Moons contract address is:

0x0057ac2d777797d31cd3f8f13bf5e927571d6ad0 

Click "Send" in Metamask, take the contract address as the receiver and make sure to paste the entire hex data from above. Leave 0 in the ETH field. It should look like this:

https://preview.redd.it/c4k3dyx5ti4c1.png?818&format=png&auto=webp&s=42c3840fe099b2e7f1d3a2497f44279a8067ae1a

Small note: There is sometimes a bug where Metamask grays out the "Next" button if the amount is zero. To fix it, just switch to a token, and then back to ETH - this will usually enable the button.

Click "Next", double check the receiver and hex data, and if everything looks good, confirm the transaction.

And if you did everything right, you should be able to view the burned amount on the block explorer:

Thank you u/GabeSter for trying this out and sacrificing a Moon

If you refresh the Moons page on the block explorer, you will see the total supply has dropped by the amount of Moons you burned.

Before the burn

After the burn

Congratulation! You reduced the total Moon supply!

Conclusion

This might be a little complicated if you never did something like that, but you can directly burn Moons (for real) and reduce their circulating supply. Since there won't be any mints again, these Moons will not be reintroduced.

I'd heavily advise you to use a separate wallet/address (literally a burner wallet) for this and only have the amount you want to burn and a little bit of gas in there. If you made an error in the hexadecimal number, the amount of Moons you (try to) burn could be smaller, but also larger. Don't make this from your vault unless you are an expert.

This is also a nice little exercise to understand how ETH contract interactions are done. Usually people are afraid from such things because they could lose their funds. But what could go wrong when burning the only token a wallet holds?

Outlook

For simplicity reasons and because of reintroduction of burned Moons, mods have chosen to use the vanity burn address in the past. Now there is no reintroduction any longer, so maybe we should switch all burns to this? Having a website that initiates the right transaction automatically shouldn't be too hard to make.

submitted by /u/Maxx3141
[link] [comments]

Get BONUS $200 for FREE!

You can get bonuses upto $100 FREE BONUS when you:
πŸ’° Install these recommended apps:
πŸ’² SocialGood - 100% Crypto Back on Everyday Shopping
πŸ’² xPortal - The DeFi For The Next Billion
πŸ’² CryptoTab Browser - Lightweight, fast, and ready to mine!
πŸ’° Register on these recommended exchanges:
🟑 Binance🟑 Bitfinex🟑 Bitmart🟑 Bittrex🟑 Bitget
🟑 CoinEx🟑 Crypto.com🟑 Gate.io🟑 Huobi🟑 Kucoin.



Comments