This page explains what Represent wrote to Base Sepolia, a public blockchain, for votes cast before October 2026, and how to recount those votes yourself, with no account, no app and no permission needed.
Before October 2026, each vote on a public yes-or-no or multiple-choice ballot was also sent as a transfer of exactly 1 RPV token from the voter's wallet to a position address: a unique address that stands for one choice on that ballot, such as “support” or “oppose”. Nobody holds the keys to a position address, so tokens sent there can't be moved again.
| NETWORK | Base Sepolia, a public Ethereum network |
| VOTE TOKEN | Represent Vote Token (RPV) · 0x4a57Cd1C4235cb7Af37625bA59bA00beB2265312 |
| ONE VOTE | 1 RPV transferred to a position address |
These transfers are on Base Sepolia, a public test network, not Base's main network. The arithmetic on this page is the same on both. The vote counts on this site are the authority.
New votes are no longer recorded on-chain one by one. The transfers described on this page cover votes cast before the change, and those can still be recounted as shown below.
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. A past entry on the network can't be changed or deleted.
It shows that the transfers are timestamped and that anyone can count them. A transfer can't be changed or deleted once it is on the chain. It doesn't show who cast a ballot: Represent holds the key to every voter's wallet, so the chain can't prove that a person, and not Represent, made a transfer.
Honest limits: