Contract Analysis
DISCLAIMER // NFA // DYOR
This analysis is based on verified source code retrieved from Etherscan and observations of the contract behavior. We are not smart contract security experts. This document aims to explain what the contract appears to do based on the code. It should not be considered a comprehensive security audit or financial advice. Always verify critical information independently and consult with blockchain security professionals for important decisions.
⊙ generated by robots | curated by humans
Analysis Date: 2025-12-13
Metadata
Primary Contract
| PROPERTY | VALUE |
|---|---|
| Contract Address | 0xCa5E50710F656F2e537cE2Fc8504dB6E24eD3515 (etherscan) |
| Network | Ethereum Mainnet |
| Contract Type | Standalone ERC20 Token |
| Token Name | Xcellar |
| Token Symbol | XCL |
| Decimals | 18 |
| Deployment Date | Oct-02-2025 |
| Deployment Block | 20875291 |
| Contract Creator | 0xf78c012a8ebc37757036dad9a2f9d73246ed646e (etherscan) |
| Compiler Version | v0.8.30+commit.73712a01 |
| Total Functions | 2 custom + inherited ERC20/Ownable |
| External Contract Dependencies | 0 (OpenZeppelin inheritance only) |
| Upgrade Mechanism | ☑ None - Not Upgradable |
| Verification Status | ☑ Source code verified on Etherscan |
| Audit Status | △ No audit submitted |
Related Addresses
| TYPE | ADDRESS | NOTES |
|---|---|---|
| Owner | 0xf78c012a8ebc37757036dad9a2f9d73246ed646e (etherscan) |
Initially set to deployer |
| Presale Wallet | Query via presaleWallet() |
Received presale allocation at deployment |
| Rewards Contract (Proxy) | 0x2a9848c39fff51eb184326d65f1238cc36764069 (etherscan) |
Proportional ETH rewards distribution |
| Rewards Contract (Implementation) | 0xe528d428c188a80c4824aad89211d292f9a62d77 (etherscan) |
Rewards logic contract |
Executive Summary
XcellarToken (XCL) appears to be a straightforward ERC20 token with a Deflationary Burn mechanism. The contract follows a simple, transparent design with no proxy patterns or complex mechanisms.
Primary Purpose: Standard fungible token with voluntary burn capability for supply reduction.
Intended Audience: Token holders who can freely transfer and optionally burn their tokens.
Key Mechanisms:
- Fixed supply at deployment (stored as Immutable variable)
- Two-way initial distribution (presale wallet + deployer)
- Voluntary burn function for any token holder
- Standard Ownable pattern with no special token powers
Significant Trust Assumptions:
- Trust OpenZeppelin library implementations are secure
- Trust initial distribution was conducted fairly
- Trust that
presaleWalletand deployer will distribute tokens appropriately
Notable Observations:
- ☑ Simple, auditable code (69 lines custom)
- ☑ Uses battle-tested OpenZeppelin libraries
- ☑ No admin powers to manipulate tokens
- ☑ No transfer fees or taxes
- △ Owner can transfer or Renounce Ownership
- △ All tokens distributed immediately at deployment (no vesting)
Architecture
graph TD
User([Users/Token Holders])
Deployer([Deployer])
Presale([Presale Wallet])
XCL[XcellarToken Contract<br/>0xCa5E...3515<br/>ERC20 + Ownable]
OZ_ERC20[OpenZeppelin ERC20]
OZ_Ownable[OpenZeppelin Ownable]
Deployer -->|deploys & becomes owner| XCL
Deployer -->|receives remaining tokens| XCL
Presale -->|receives presale allocation| XCL
User -->|can transfer tokens| XCL
User -->|can burn own tokens| XCL
XCL -.->|inherits| OZ_ERC20
XCL -.->|inherits| OZ_Ownable
Owner[Owner/Admin]
Owner -->|can transfer ownership| XCL
Owner -->|can renounce ownership| XCL
System Overview
XcellarToken is a standalone ERC20 token contract that extends OpenZeppelin's standard implementations. At deployment, a fixed total supply is minted and distributed between a presale wallet and the deployer. After deployment, the supply can only decrease through voluntary burns by token holders.
The contract does:
- Mint a fixed supply at deployment (split between presale and deployer)
- Allow token holders to burn their own tokens
- Follow standard ERC20 transfer and approval mechanics
The contract does not:
- Allow minting after deployment
- Give the owner any special token powers
- Implement pause, freeze, or blacklist functionality
- Charge transfer fees or taxes
Design Patterns Used
-
ERC20 Standard: Full compliance with ERC20 token standard for Fungible Tokens.
-
Ownable Pattern: Single owner with ability to Transfer Ownership or Renounce Ownership. Owner has no token-specific powers.
-
Immutable Supply: TOTAL_SUPPLY set once and stored as immutable variable, cannot be changed.
-
Deflationary Mechanism: Users can voluntarily Burn tokens to reduce Circulating Supply.
Access Control
Roles & Permissions
| ROLE | ASSIGNED BY | REVOKABLE | CALL COUNT |
|---|---|---|---|
| Owner | Constructor (msg.sender) | Yes - via transfer or renounce | Single |
| Token Holder | Receiving tokens | No | Unlimited |
| Public | N/A | N/A | Anyone |
Permission Matrix
| FUNCTION | OWNER | TOKEN HOLDERS | ANYONE |
|---|---|---|---|
transfer() |
☑ (if holds tokens) | ☑ | ☒ |
transferFrom() |
☑ (with approval) | ☑ (with approval) | ☑ (with approval) |
approve() |
☑ (if holds tokens) | ☑ | ☒ |
burn() |
☑ (if holds tokens) | ☑ | ☒ |
balanceOf() |
☑ | ☑ | ☑ |
totalSupply() |
☑ | ☑ | ☑ |
TOTAL_SUPPLY() |
☑ | ☑ | ☑ |
presaleWallet() |
☑ | ☑ | ☑ |
presaleAllocation() |
☑ | ☑ | ☑ |
transferOwnership() |
☑ | ☒ | ☒ |
renounceOwnership() |
☑ | ☒ | ☒ |
Critical Access Control Notes
Owner Has NO Special Token Powers:
- ☒ Owner cannot mint new tokens
- ☒ Owner cannot burn others' tokens
- ☒ Owner cannot pause transfers
- ☒ Owner cannot freeze accounts
- ☒ Owner cannot blacklist addresses
- ☒ Owner cannot take or move user tokens
Owner Can Only:
- ☑ Transfer ownership to another address
- ☑ Renounce ownership permanently
Time Locks & Delays
| ACTION | TIME LOCK | CAN CANCEL | PURPOSE |
|---|---|---|---|
| Transfer Ownership | None | N/A | ☒ Immediate, no protection |
| Renounce Ownership | None | N/A | ☒ Immediate, irreversible |
Economic Model
Token Distribution Flow
flowchart LR
Deployment[Contract Deployment<br/>Total Supply Created]
Deployment ==>|presaleAllocation| Presale[Presale Wallet]
Deployment ==>|remaining tokens| Deployer[Deployer Wallet]
Presale ==>|can transfer| Users[User Wallets]
Deployer ==>|can transfer| Users
Deployer ==>|can transfer| Exchange[Exchanges/Pools]
Exchange <==>|buy/sell| Users
Users -.->|voluntary burn| Void[Burned<br/>address 0x0<br/>Permanently Destroyed]
Supply Mechanics
| PROPERTY | VALUE |
|---|---|
| Initial Supply | Configurable at deployment (stored in TOTAL_SUPPLY) |
| Max Supply | Initial supply (cannot increase) |
| Min Supply | 0 (if all tokens burned) |
| Supply Direction | Deflationary only |
Supply Equation:
Fee Structure
| OPERATION | FEE | RECIPIENT | PURPOSE |
|---|---|---|---|
| Transfer | 0% | N/A | No transfer fees |
| Burn | 0% | N/A | User pays gas only |
| Approval | 0% | N/A | Standard ERC20 |
Summary of Observations
XcellarToken appears to be a clean, simple token implementation with minimal risk from the contract code itself.
Strengths:
- ☑ Simple, auditable code (only 69 lines of custom logic)
- ☑ Uses battle-tested OpenZeppelin libraries
- ☑ No admin powers to manipulate tokens
- ☑ Immutable - cannot be upgraded or changed
- ☑ No hidden functions, fees, or taxes
- ☑ Full ERC20 standard compliance
- ☑ Built-in overflow protection (Solidity 0.8.30)
Considerations:
- △ Ownership exists but provides no token-related powers
- △ All tokens minted at deployment with no vesting mechanism
- △ Burns are irreversible - users should be careful
- △ Not upgradeable - bugs cannot be fixed, but simplicity reduces risk
- △ Initial distribution concentration depends on deployment parameters
- △ Professional audit status unknown
This analysis was performed for educational purposes and should not be considered an official security audit or financial advice. The main risks are economic and operational (distribution, market conditions, team actions) rather than technical contract vulnerabilities.
References
| RESOURCE | NOTES |
|---|---|
| Etherscan: Contract | Verified source code and transaction history |
| OpenZeppelin Contracts | ERC20 and Ownable implementations |
Changelog
| DATE | AUTHOR | NOTES |
|---|---|---|
| 2025-12-13 | Artificial. | Generated by robots. |
| 2025-12-14 | Denizen. | Reviewed, edited, and curated by humans. |