ZeroMoon zETH is designed to be completely immutable after deployment to the Ethereum mainnet. This document explains what this means for users, developers, and the community.
After deployment and verification, the contract owner will call renounceOwnership(), which:
- Permanently removes the owner's ability to modify the contract
- Eliminates all centralized control
- Makes the contract truly decentralized and trustless
- Cannot be undone - this is a one-way, irreversible action
- ✅ Maximum Trust - No single entity can change the rules
- ✅ True Decentralization - Code becomes law
- ✅ Censorship Resistant - No one can pause, freeze, or modify
- ✅ Predictable Behavior - Token economics fixed forever
Once renounced, these parameters are permanently fixed:
Total Supply: 1,250,000,000 tokens (fixed)
Burning Limit: 250,000,000 tokens (20% max)
Base Price: 0.0001 ETH per token
Minimum Buy: 0.0001 ETH
Backing Ratio: 99.9% (999/1000)Buy Fees:
- Dev Fee: 0.05% (5 BPS)
- Reflection Fee: 0.10% (10 BPS)
- Reserve Fee: 0.10% (10 BPS)
- Total: 0.25%
Refund Fees:
- Dev Fee: 0.05% (5 BPS)
- Reflection Fee: 0.05% (5 BPS)
- Reserve/Burn: Variable (maintains 99.9% backing)
- Total: 0.25%+ (increases after burning limit)
Transfer Fees:
- Dev Fee: 0.05% (5 BPS)
- Reflection Fee: 0.10% (10 BPS)
- Reserve Fee: 0.10% (10 BPS)
- Total: 0.25%
DEX Swaps:
- Fees: 0% (swapping already-bought tokens)- Current Dev Address: Set at deployment
- After Renouncement: Cannot be changed
- Impact: Dev fee recipient is locked forever
After renounceOwnership(), these owner-only functions cease to work:
✗ setDevAddress() // Cannot change dev fee recipient
✗ excludeFromFee() // Cannot add/remove fee exemptions
✗ transferOwnership() // No ownership transfer possible
✗ acceptOwnership() // No ownership transfer possible
✗ renounceOwnership() // Already called, cannot call again- Positive: True decentralization, no rug pull risk
- Negative: Cannot fix parameters if market conditions change
- Trade-off: Security and trust over flexibility
All core functions remain fully operational forever:
✓ buy() // Buy tokens with ETH
✓ transfer() // Transfer tokens
✓ approve() // Approve spending
✓ transferFrom() // Transfer on behalf
✓ claimDividends() // Claim reflection rewards
✓ permit() // ERC-20 permit signature
✓ increaseAllowance() // Increase approval
✓ decreaseAllowance() // Decrease approval✓ _handleRefund() // Refund mechanism
✓ _buy() // Purchase logic
✓ _distributeDividends() // Dividend distribution
✓ isLiquidityPair() // DEX detection
✓ Dividend calculations // Reflection tracking
✓ Fee calculations // All fee logic
✓ Burning logic // Up to 20% limit- No Rug Pull Risk - Owner cannot drain funds or change rules
- Predictable Economics - Token behavior is guaranteed
- Trustless Operation - Code is the only authority
- Maximum Transparency - All rules are public and unchangeable
- Long-term Stability - No sudden changes to disrupt holders
- No Emergency Fixes - Bugs cannot be patched (hence the 360M+ tests)
- Fixed Parameters - Cannot adapt to unforeseen market conditions
- Dev Address Locked - Current dev address receives fees forever
- Fee Structure Locked - 0.25% fees are permanent
✅ 360,000,000+ test scenarios passed
✅ 200,000,000+ invariant function calls validated
✅ 160,000,000+ unit fuzz tests completed
✅ Zero failures across all test types
✅ All attack vectors tested and mitigated
✅ Mathematical proofs of core properties
We can renounce because we've already tested everything.
1. Deploy ZeroMoon contract to mainnet
2. Verify source code on Etherscan
3. Initial testing with small amounts
4. Community verification period
1. Public testing and interaction
2. Monitor for any unexpected behavior
3. Verify all functions work as intended
4. Community feedback period
1. Announce renouncement intention
2. Call renounceOwnership() on-chain
3. Transaction confirmed on Etherscan
4. Contract becomes permanently immutable
1. Contract operates autonomously
2. No human intervention possible
3. Code is the only authority
4. Pure decentralization achieved
Anyone can verify the contract is renounced by:
- Go to contract on Etherscan
- Click "Read Contract"
- Check
owner()function - Should return:
0x0000000000000000000000000000000000000000
// Using web3.js
const owner = await contract.methods.owner().call();
console.log(owner); // Should be 0x0000000000000000000000000000000000000000
// Using ethers.js
const owner = await contract.owner();
console.log(owner); // Should be 0x0000000000000000000000000000000000000000// Look for OwnershipTransferred event
// from: current owner
// to: 0x0000000000000000000000000000000000000000A: No. After renouncement, the contract cannot be upgraded, modified, or replaced. It will exist in its current form forever.
A: The contract cannot be fixed. This is why we performed 360M+ test scenarios before deployment. However, users can always refund their tokens at 99.9% backing value.
A: No. Once renounced, ownership cannot be transferred to anyone, ever.
A: The contract parameters are fixed. If market conditions make the token unviable, users can refund at backing value. The contract will continue operating regardless.
A: No. After renouncement, the dev fee recipient is locked forever. Choose this address carefully before renouncing.
A: No. There is no pause function, no emergency withdrawal, no circuit breakers. The contract operates autonomously forever.
A: No. The fee structure (0.25% on buy/refund/transfer, 0% on DEX swaps) is hardcoded and permanent.
A: The contract is compatible with current Ethereum standards (EVM). Major protocol changes could theoretically affect it, but this is an Ethereum-wide consideration, not specific to this contract.
ZeroMoon uses OpenZeppelin's Ownable2Step contract, which:
- Requires two-step ownership transfer (prevents accidental transfers)
- Allows ownership renouncement via
renounceOwnership() - Emits
OwnershipTransferredevent when renounced - Sets owner to
address(0)permanently
function renounceOwnership() public virtual onlyOwner {
_transferOwnership(address(0));
}When called:
onlyOwnermodifier checks caller is current owner_transferOwnership(address(0))sets owner to zero addressOwnershipTransferredevent emitted- All
onlyOwnerfunctions become uncallable - This is permanent and irreversible
- ✅ Maximum security - no rug pull possible
- ✅ Predictable economics - rules never change
- ✅ True ownership - your tokens are yours forever
- ✅ Decentralized operation - no human intervention
- 📖 Learn from the source code
- 🔬 Study the testing methodology
- 🎓 Use as educational reference
- 🍴 Fork for your own projects (with proper attribution)
- 🏆 Sets new standard for testing rigor
- 🔐 Demonstrates true decentralization
- 📚 Open-source reference implementation
- 🌟 Proof that immutability can work
- Cannot fix bugs (if any exist)
- Cannot adjust to market conditions
- Cannot update for new features
- Cannot respond to community requests
The contract has been tested more rigorously than perhaps any token in history:
- 360,000,000+ test scenarios
- Zero failures
- All attack vectors tested
- Mathematical proofs of core properties
We've done the work upfront so we can safely let go.
- Understand the token mechanics before buying
- Know that rules are permanent
- Recognize the trade-offs of immutability
- Always DYOR (Do Your Own Research)
While we cannot change the contract, we can still:
- Answer questions about how it works
- Explain the economics and mechanics
- Provide documentation and resources
- Direct you to the source code
X (old Twitter): ZeroMoon X Website: zeromoon.org
Immutability is a feature, not a bug.
In a world of rug pulls, changing tokenomics, and broken promises, ZeroMoon zETH offers something different: certainty.
The code you see is the code that will run forever. The rules you read are the rules that will apply forever. The tests we've published are the guarantee that it will work as intended forever.
This is decentralization in its purest form.
Once renounced, forever immutable.
This is how trustless systems should work.
Document Version: 1.0
Last Updated: 2025-11-10
Contract: ZeroMoon zETH
Status: Pre-Renouncement (will be updated post-renouncement)