
WrappedM (wM) is a non-rebasing ERC-20 wrapper for the rebasing token M, designed by the M^0 protocol. While the native M token automatically increases balances as yield accrues (rebasing behavior), WrappedM offers a fixed-balance model where accrued yield is claimable manually. This design enables compatibility with DeFi protocols and smart contracts that expect static token balances.
By decoupling yield accrual from balance inflation, WrappedM preserves the economic benefits of holding M while enabling seamless integration into lending platforms, AMMs, and other systems that lack rebasing support. The contract ensures solvency: the M held in the WrappedM wrapper always backs all outstanding WrappedM claims plus accrued yield obligations.
The wrapper includes configurable claiming mechanisms, delegated administration for earning status, and integration with the M^0 registrar and earner manager contracts to maintain protocol consistency.
WrappedM is intended for use in DeFi contexts that cannot reliably support rebasing tokens. In particular, it provides:
For users who prefer the native yield accrual of M, WrappedM acts as a bridge— allowing them to opt into static accounting without losing economic exposure.
WrappedM is implemented as an ERC-20 token with 6 decimals. Key internal components include:
registrar contract that handles configuration and eligibilityearnerManager that determines which accounts can accrue yieldenableMIndex and disableIndex)wrap(...) and unwrap(...) allow users to convert between M and WrappedM, preserving balance integrity and yield claimsThe wrapper follows a proxy / upgradeable pattern, integrating with M^0’s core modules through composable architecture.