Git Source

Inherits: Initializable, ERC20Upgradeable, AccessControlUpgradeable, ERC20PermitUpgradeable, UUPSUpgradeable, PausableUpgradeable

This contract implements a bond token with upgradeable capabilities, access control, and pausability. It includes functionality for managing indexed user assets and global asset pools.

State Variables

globalPool

The global asset pool

IndexedGlobalAssetPool public globalPool;

userAssets

Mapping of user addresses to their indexed assets

mapping(address => IndexedUserAssets) public userAssets;

MINTER_ROLE

Role identifier for accounts with minting privileges

bytes32 public constant MINTER_ROLE = keccak256("MINTER_ROLE");

GOV_ROLE

Role identifier for accounts with governance privileges

bytes32 public constant GOV_ROLE = keccak256("GOV_ROLE");

DISTRIBUTOR_ROLE

Role identifier for the distributor

bytes32 public constant DISTRIBUTOR_ROLE = keccak256("DISTRIBUTOR_ROLE");

SHARES_DECIMALS