The app

Weigh a transfer.

Everything below is a JSON-RPC call from your own browser to Robinhood Chain. There is no backend, no API key, and no private key anywhere in this project. The first panel needs no wallet at all.

Reproduce the sweep

Any token, any holder.

The same measurement tools/scan.mjs took for every row of the table: install the probe at the holder's address with a state override, ask the token to move their whole balance to a fresh address, and weigh both ends. Plus the control, which has to move nothing — and if it does not hold, the panel says so instead of reporting a number.

An Ullage deployment

Deploy one, then watch the two numbers.

There is no canonical Ullage yet, and a placeholder that looked like one would be the single lie on a site about not taking numbers on trust. The contract below is the one the property suite ran — the app deploys it from your wallet, because no private key is held anywhere in this project.

Deploy the contract

constructorno arguments — there is no asset, no owner, no fee and no parameter to get wrong
runtime fingerprint0x22f01b7157c20d7da22e…
measured cost747,217 gas · 0.00012408 ETH

The creation bytes are simulated first, the runtime the constructor returns is fingerprinted against the one the property suite ran, and the address it will land at is shown before you are asked to sign.

Read an Ullage