Skip to main content

Reality (Bitget) — the tokenised stocks we would pair against

The issuer for memestock pairing (O3). First researched 11 Sep 2026; rewritten 12 Sep 2026 from the deployed contracts, which answered the question the first version could only ask. Evidence and transaction hashes: notes/sessions/stage-0-pairing.md.

The answer

A smart contract can hold an rToken. No allowlist exists. The live Uniswap v4 PoolManager already holds rNVDA, rSPCX and rTSLA, and contracts pull and send them on a fork.

A raw rToken must never be a quote asset. Balances rebase on splits and zero on delisting, and neither the curve nor a v4 pool re-reads a balance. Wrap it pro rata — BasketWrapper, one constituent or several. D18.

Contracts — Arbitrum One

StandardERC-20, 18 decimals, beacon proxy. Every rToken shares beacon 0x9a570740faf9c77255e389a7bccb7d460a5f4948 → implementation 0x5D2247b7F6E5b09fCfd59042acaea805cB84Bc53 (unverified)
Beacon ownerSafe 0x7fD7A3Af05065fceEBbDa0B021206943423e4fdc, 3-of-5. One upgrade rewrites every rToken
Admin / configurerSafe 0xE6568007dB6E9188798AE0b65e5532F14a1ABcBB, 3-of-5
OperatorEOA 0x6C5b3FdAB92BD311206e873806cB30E21cd11f00
TokenManager (the only minter)0x129Ea4DDb91C836f89Dfa9EF8102F9E505DFC4ba
Dividend distributor0x0b751b1ddd20ec589c14a3186161c97267f8d3eb
CorporateActionOracle0xd01f8aa971a3f4d13d52299bdd30225b1d7f40f1
Sanctions list0x1faf98B0B31865dCD6ebAb4713a5C271d62e88A7 — Reality's own, written by an EOA
Token listarbiscan.io/tokens/label/reality. Match on the beacon — look-alikes exist
tokenaddress
rNVDA0x0a85b6EBe3C150A1979a65656E304033D62b1E12
rSPCX0x5181b7Dd097B42d7787ee78Efab86f43D4E12f44
rSPY0x9a0fda21276F245b89d2B7f1120F42e4466b1cb5
rAAPL0xaBa5e0C80e9f58E391214689fB342049C0d31892
rMETA0xB65f3005aB2aEede3707F56223C7c45f68cca008
rGOOGL0xcA1942EdEB697A85AF98eF8C74C4910fe9587afB
rTSLA0xf912911C9c8D5131929c758e66e6dc54e65cF3ba

What the token can do to a holder — fork-probed

levereffectheld by
sanctions listtransfers to a listed address, or by a listed spender, revertEOA
freezeAccounttransfers in and out of an address revertadmin Safe
pauseevery transfer reverts. Used around every splitoperator EOA
rebasebalanceOf scales by an index; allowances do notadmin Safe, against an oracle action
delistevery balance and the supply read zero; transfers revertadmin Safe
beacon upgradeanythingbeacon Safe

No seizure. emergencyWithdraw only rescues tokens stuck in the rToken contract itself.

Pause is one EOA's power; unpause needs the 3-of-5 admin Safe. A pause lasts as long as it takes them to gather signatures.

Running a real split on a fork

Read from Reality's own transactions and executed in contracts/test/StockPairing.fork.t.sol:

  1. The oracle writer EOA 0xdf8f9E822C2A70A175344c6E916202f9dDDaC62B calls the oracle's 0xc8cba437(bytes32 id, ((bytes32 keccak(symbol), bytes32 category, address token, uint256 date, uint8 0=Rebase, uint8 0=Disclosed, string report), bytes abi.encode(uint32 from, uint32 to))). The date must be at least a day out; category 0x1a89…d063 is copied from a live disclosure.
  2. Warp past the date.
  3. The operator EOA pauses. Rebase reverts ExpectedPause() otherwise.
  4. The admin Safe calls rebase0xe5839443(bytes32 actionId, uint32 from, uint32 to). ActionNotFound(bytes32) means step 1 did not take.
  5. The admin Safe unpauses.

Other issuers on Arbitrum One

Interfaces from resolved selectors; none has an indexed DEX pool there.

issuerexamplegatebalances
xStocks / BackedNVDAX 0xc845b2894dBddd03858fd2D643B4eF725fE0849dsanctions list, pauserebase by multiplier
DinariNVDA 0x4DaFFfDDEa93DdF1e0e7B61E844331455053Ce5cblacklist, pause, burnFromrebase by applySplit
OndoTSLAon 0xB298bc2fAc7AEDA17FE0812323A98E6278a91557supply 0.02; effectively absent

Mechanics that shape our design

  • Splits rebase. Confirmed on chain, not inferred. Mergers convert holdings. Delisting zeroes balances, cash presumably following as a distribution.
  • Dividends are claimed, not transferred. A Merkle proof plus a Reality signature, from their API. Anyone may submit on the holder's behalf; paid in USDT. A wrapper therefore receives its dividends only if someone submits the claim — and only reaches basket holders if USDT is declared as a zero-unit asset. Sanctioned or blacklisted holders are ineligible.
  • Mint and redeem are Reality's. On demand through RFQ against USDC, 24/5 across four US sessions, never at weekends. Retail reaches it through aggregators via the Bitget Wallet API.
  • No DEX liquidity. Zero indexed pools. The only v4 pool found is an rNVDA/USDC experiment with a 95% fee and dust. On-chain float is thin: 99.3% of rNVDA sits in one EOA.
  • Legal: a contractual claim on the broker, not shares. Sold only to KYC'd non-US persons; "may not be resold to any US person or into the United States". UK, UAE, Hong Kong and others may not transact. Not enforced in code.

From Bitget directly (team chat, 9–11 Sep 2026)

  • They are enabling AMM for rTokens on Arbitrum and asked for comments. Draft set: SPY, SPCX, NVDA, AAPL, META or GOOGL.
  • Reality RFQ is live behind Pancake, Uniswap and aggregators via the Bitget Wallet API.
  • Dividends do not go into a pool; "we will have a solution to have the dividends sent to the LP providers directly". Unanswered: what happens when the LP is locked forever, as ours is.

Backing: 1:1 at Alpaca Securities (FINRA, SIPC), attested by The Network Firm, over-collateralised. Audits: BlockSec and SlowMist, Apr–Jul 2026.

SPCX is the odd one out

A private company: no closing bell, no dividends and no splits, so neither mechanic above bites. But no public price to anchor to, so where its mark comes from is its own question. The strongest product story of the set; the weakest price story.

Still to ask Bitget

  1. Will you ever freeze, sanction or pause a protocol contract that holds rTokens — a wrapper, a curve, the PoolManager — and is there a process to be told first?
  2. Delisting: what does a contract holder receive, how, and when?
  3. Dividends for contracts: will you submit claims on behalf of a holder contract, or must we? And "sent to LP providers directly" — what does that mean for liquidity nobody can withdraw?
  4. Beacon upgrades: is an allowlist, or any transfer restriction, on the roadmap?
  5. The AMM: Uniswap v4 on Arbitrum? Which fee tier and which quote currency?
  6. Weekends: the RFQ is 24/5. Is anything planned so a wrapper's peg can be held at weekends?
  7. The implementation: please verify 0x5D22…Bc53 on Arbiscan.
  8. Would you use a scaled-UI multiplier instead of rebasing balanceOf? Robinhood's stock tokens do, which is why raw pools work on Robinhood Chain (robinhood-stock-tokens.md). It fixes the split problem for your AMM plan as well as ours, and would make our wrapper optional.

Sources