upgradeTo(Leviathan) consists of one hundred upgradeable smart contracts on Ethereum and a single ERC-721 token. Each contract is named “citizen” and holds its own data. Each citizen draws thirty points from its data, and the points of all hundred overlap to form a landscape resembling a starry sky on screen.
upgradeTo() is a function that replaces only the implementation code, leaving the address and data as they are. It is used to fix vulnerabilities or respond to regulation. In this work, once the time set for each citizen has passed, anyone can call that citizen’s execute(). The citizen switches to a different implementation, and the caller receives the ETH the citizen held as a reward.
The data each citizen holds does not change before or after the switch. The earlier code reads it as stars; the later code reads the same data as a fragment of a body based on the frontispiece of Hobbes’s Leviathan. The data of the hundred citizens has contained both the starry sky and Leviathan from the beginning.
Each implementation to be switched to contains a single function taken from existing stablecoins and protocols: blacklisting, asset freezing, identity verification, taxation, and others. Only the owner of the token can further replace the implementation of a citizen that has switched. That authority widens as the transitions proceed.
Ethereum and the applications running on it have undergone repeated revisions as they have come into wider use in society. Each change can be read as eroding decentralization, or as a necessary compromise. Whether the whole that these transitions add up to is becoming something like a monster cannot be seen from any single transition.
upgradeTo(Leviathan)
荒川零一 | Zeroichi Arakawa・2026
