Back to Home

UserWallet

0xc938f8b87074...3e3009738094
ByzantiumSource VerifiedEdit this contract
Deployed October 22, 2018 (7 years ago)Block 6,560,869

Withdrawal-only wallet that resolves its executor from a registry on every call and delegatecalls it with the request untouched.

Byzantium EraVerified Source

Historical Significance

The fee parameters in the signature are the interesting part. A withdrawal here is not just a transfer; it carries a fee and a recipient for it, which means the operator's revenue model is encoded in the customer-facing interface while the logic that enforces it stays swappable. Every wallet in the fleet inherits a fee change the moment the registry is updated, with no migration and no per-wallet transaction.

Key Facts
Deployment Block
6,560,869
Deployment Date
Oct 22, 2018, 06:04 AM
Code Size
552.0 B
Transactions by Year
201814

Description

One address in storage points at a registry. The single function, withdraw, takes a token, a destination, an amount, a fee and a fee recipient, reads none of them, and forwards the whole calldata by delegatecall to whatever address the registry currently names.

All five parameters are read and discarded in the body as bare expression statements. They exist to fix the ABI, not to be used: the executor on the other side of the delegatecall decodes the same calldata itself. That keeps the wallet stable while the withdrawal rules, including how the fee is split, can be rewritten by pointing the registry somewhere new.

Because the call is a delegatecall, the executor's code runs against this wallet's own balances, so the wallet never needs approval to move its own funds and holds no privileged keys of its own.

Source Verified

Solidityeh_crack_source_verified
Compiler: v0.4.23

Bytecode Overview

Opcodes552
Unique Opcodes94
Jump Instructions18
Storage Operations4

External Links