This page explains exactly what Represent writes to the public ledger and how to recount any ballot yourself — no account, no app, no permission needed.
Every vote on a public ballot is a transfer of exactly 1 RPV token from the voter's wallet to a position address — a unique address that stands for “support” or “oppose” on that specific ballot. Nobody holds the keys to a position address; tokens sent there are votes, permanently.
| LEDGER | Base Sepolia — a public Ethereum network |
| VOTE TOKEN | Represent Vote Token (RPV) · 0x4a57Cd1C4235cb7Af37625bA59bA00beB2265312 |
| ONE VOTE | 1 RPV transferred to a position address |
The ledger currently runs on Base Sepolia, a public test network — gas is free while we grow. The mathematics on this page are identical on Base Mainnet, and the move is planned. Vote counts on this site are authoritative regardless of network.
The position address for any ballot is pure arithmetic — no database, no server, no trust required:
The same rule with -oppose gives the oppose address. Anyone can run it — here it is in JavaScript with the ethers library:
Worked example. Ballot 65bc4f40-ed16-4a0e-8851-9b8903f9ec14 (“Provincial control over immigration”, Alberta Shadow Referendum Q1):
| SUPPORT | 0xe14B064E3AaBB2dbf910897F3714731D982BAf7f |
| OPPOSE | 0x90Cdc7C7F432a28330055f4eEA8016E54e7eB665 |
Run the formula yourself and you will get these exact addresses. If we ever published a different address for this ballot, the mismatch would be provable.
Multiple-choice ballots use the same idea with one address per option, derived from the ballot id, the option's index, and the relay wallet's public address via the standard ABI encoding (ballotId, optionIndex, relayerAddress, "OPTION_VOTE").
Every transfer carries a timestamp and a transaction hash — the vote's permanent receipt. Changing or deleting a past entry is not possible on the network; that is what “tamper-evident” means here.
It proves: every recorded ballot is permanent, timestamped, and independently countable by anyone. No one — including us — can quietly alter a past vote, inflate a published split beyond what the chain supports, or delete history without the gap being visible.
Honest limits: