[
  "constructor(address _stakingToken, address _treasuryMarket, address _recipient)",
  "error ImplementationIsSterile(address implementation)",
  "error NoChange()",
  "error NotAContract(address contr)",
  "error NotNominated(address addr)",
  "error Unauthorized(address addr)",
  "error UpgradeSimulationFailed()",
  "error ZeroAddress()",
  "event Deposited(address indexed sender, uint128 indexed accountId, uint256 amount)",
  "event OwnerChanged(address oldOwner, address newOwner)",
  "event OwnerNominated(address newOwner)",
  "event Upgraded(address indexed self, address implementation)",
  "function acceptOwnership()",
  "function balanceOf(uint128) view returns (uint256)",
  "function deposit(uint128 accountId, uint256 amount)",
  "function getImplementation() view returns (address)",
  "function nominateNewOwner(address newNominatedOwner)",
  "function nominatedOwner() view returns (address)",
  "function owner() view returns (address)",
  "function recipient() view returns (address)",
  "function renounceNomination()",
  "function simulateUpgradeTo(address newImplementation)",
  "function stakingToken() view returns (address)",
  "function totalDeposited() view returns (uint256)",
  "function treasuryMarket() view returns (address)",
  "function upgradeTo(address to)"
]