← all findings
medium SHARE_COUNT_MISREPORT

CRM: balanceOf() is 1.001148323x away from share-equivalents

subject CRM (0xd95B44124e475743a7589e68F3D74008A5536D44) · methodology assay-rh-v0.2.0 · detected 2026-09-21T20:46:13.000Z

CRM reports uiMultiplier() = 1001148322800714293 (1.001148323). Under ERC-8056 a corporate action moves this multiplier rather than balances, so balanceOf() returns tokens, not share-equivalents. Share-equivalents = balance * uiMultiplier() / 1e18. Any surface presenting balanceOf() as a share count understates it by 0.1147% (the true count is 1.0011x the raw balance). Token value computed as balance * Chainlink feed price is unaffected, because the feed is already multiplier-adjusted.

Impact
11.48 bps · 0.1147%
totalSupply raw 302.6430 tokens vs 302.9906 share-equivalents (delta 0.3475). Presenting the raw balance as a share count understates by 0.1147%; equivalently the true count is 1.0011x the raw.
Evidence — 2/2 citations re-fetched and byte-compared
mismatched 0 · pruned 0 · verified 2026-09-21T20:46:18.956Z
uiMultiplier() == 1001148322800714293
chain 4663 · block 69094913 · uiMultiplier()
0xd95B44124e475743a7589e68F3D74008A5536D44
0x0000000000000000000000000000000000000000000000000de4cb186403c235
totalSupply() == 302643028120000000000
chain 4663 · block 69094913 · totalSupply()
0xd95B44124e475743a7589e68F3D74008A5536D44
0x0000000000000000000000000000000000000000000000106804069a8927f000