Yes, I know that all token holders will be very confused, why LAC suddenly upgraded to V2 version.
I will explain the whole process in detail here.
Melody and I have counted all the results of this creation coin auction.
I arranged for Melody to remove the liquidity of the LP obtained from this auction.
Melody did, and this is the removed transaction hash:
After that, Melody went to destroy all LACs as planned.
Melody informed me that he believes that the current burn function of the smart contract (used to destroy tokens) has very serious low-level errors (yes, I wrote it).
Using this error, anyone can destroy other people’s tokens.
“Damn auditing company, what’s the use of their audits!?” But complaining doesn’t make sense.
This is our own problem, and we must solve it.
On the surface, the destruction of other tokens does not make people directly profitable.
But after discussing with Melody, I thought of a terrible possibility: users can use the burn function to burn off the tokens in the liquidity pool, thereby greatly increasing the unit price of LAC, and then sell their own LAC to make the liquidity available. All TRX in the sex pool is owned.
Frankly speaking, I panicked. This is the funds of all users, and we must protect it!
After 10 minutes of calming down, Melody suggested that I immediately suspend the transaction to avoid being used by the vulnerability to profit and cause the loss of user assets.
The above is the transaction hash of the suspended contract.
Next we begin to discuss how to protect the user’s asset security 100%.
First of all, it is imperative to repair contract vulnerabilities, so it is inevitable to replace the contract;
Secondly, it is necessary to ensure that the user’s assets are 100% safe, so after the transaction is suspended, an accurate snapshot of the user’s LAC and LP assets must be taken.
Finally, we need to temporarily obtain all the funds in the original fund pool through this vulnerability, then create a trading pair for the new token and make an airdrop based on the snapshot.
The plan seems good, implement it now!
We burned almost all the tokens in the fund pool through the burn function, and only retained 1 token.
Only then, we sold the LAC obtained from the withdrawal of liquidity 1 hour ago, and obtained 99.99% of the funds in the fund pool.
After the operation here, Melody and I let out a long breath. At least, the user’s funds are absolutely safe.
We fixed the loopholes in the original LAC contract, released a new LACv2 contract, and reviewed the new contract repeatedly.
The code of the new contract is not open source yet. We will submit it to a more reliable audit company (such as Beosin) for audit and open source as soon as possible.
We gave LACv2 to all the original LAC holders according to an accurate snapshot.
We created a trading pair on JustSwap for LACv2.
And then, all the assets obtained from the original fund pool will be injected into the new fund pool.
Based on calculations, we obtained the number of LPs that each user who originally injected LP liquidity should now hold, and conducted an airdrop.
Note: Your LP tokens will appear to be more than the original. That is because of JustSwap calculation rules. In fact, the value of LP tokens has not changed.
So far, all funds have been completely exchanged to users.
At this time, my back was soaked.
“You are too stupid, how can you make such a low-level mistake!?”, I couldn’t respond to Melody’s accusation, this time the lesson taught me a lesson.
“Fortunately, the problem is solved!” Yes, God bless! All users’ assets are completely safe and smoothly transferred back to their own hands.
There is indeed some finishing work to do, but my spirit is too nervous, Melody forces me to take a rest first.
Next is some aftermath work.
Update the liquid mining tool to ensure that it mines LACv2, not LAC.
Then update the NFT Box, add the synthesis function, and update the contract address of LACv2 and the new LP. That’s right, the synthesis function and MAT mining will still be online as scheduled!
Finally, update the contract address of the official website, although no one seems to visit…
“You must explain things completely!”, I know that Melody is right.
So, I started writing this article…
There are also some things temporarily confiscated:
- The new contract has not yet been open sourced. The new contract has been repeatedly reviewed by Melody and I. However, we will still submit it to a reliable company for audit as soon as possible and open the source as soon as possible.
- The liquidity held by the team is temporarily not put into the pool contract. We will observe for 24 hours to ensure that all user funds are correct before putting them into the pool contract.
- Yesterday, we said that we will destroy the removed LAC, but we have not done it yet. Let us take a break. Dear coin holders, we promise to perform the destruction within 24 hours.
- Among the TRX obtained from this liquidity removal, nearly 1 million TRON will be used to repurchase LAC, which will be operated at random times during this week.
First here for the time being, here, I sincerely apologize to all token holders for my low-level mistakes.
However, please trust our ability to solve problems. From discovering a serious vulnerability to solving it, we only spent 3 hours.
We also guarantee that such loopholes will not recur. The security of smart contracts is always the most important.
All quarterly plans will still be carried out in an orderly manner. This episode cannot affect our determination to make LAC the strongest DEFI project in TRON.
NFT synthesis, NFT transactions, the first experimental child currency (LAD), and community mining will all be implemented in the next month.
All members of the community please continue to support us, and together, we will create a new future for LAC!
New contract address: TWtM4WLpp95MuhmvRoSq1rn7u6VNd2HdDv