TransparentUpgradeableProxy

Verified contract

Proxy

Active on Base with 155,353 txns
Deployed by via 0x2ce6c376 at 17569899
Slot
32
30
28
26
24
22
20
18
16
14
12
10
8
6
4
2
0
ERC-20
--
)
ERC-721
--
0x96c3997fd648fcfc4aaf065240dd0c36627164542df754e766b396bc6d702a8d
0x01edc3d00d016cfa5556cf32539f6d7527d569a2aa1eba0fde7b7e21b5305f5d
0xdb19a1f2c6bf0296c415d5cc4f328c1f12abca974e0c84ea057c83c0fa6fa909
0xe997ccd7d4b4c9c3a8adb24c82084dd784e484d14525c95a70934392b9c5cb2e
0x3bb40c055bc7a18a53e07450313e6c0641bc1381737eb8a983e77de475f5b395
0xa8282fd278ccdcfd89526f3ee7fee694556ee9c8e5dccf03a2df1639d1fb2ad1
0xcf5e6b13c87a0088ea61b6c2c76408938b5b88c7e0e74f77cd2411eaa1dd693b
0x45236aaa234e1f4bce3f3f2a7ee92793af8f077992561ed6e137c42d139fee73
0xc432a3370efc21a905bf5b536d3e2c12d715e5f4e2441198b517db50ac48bb43
0x879172115c069830f5db4b03eb024b6ccfe13134321ffa75c776c4f3e1def6d4

Functions
Getter at block 21750566
DEFAULT_ADMIN_ROLE(view returns (bytes32)
0x0000000000000000000000000000000000000000000000000000000000000000
PAUSE_ROLE(view returns (bytes32)
0x139c2898040ef16910dc9f44dc697df79363da767d8bc92f2e310312b816e46d
PCT_BASE(view returns (uint256)
1000000000000000000
PPM(view returns (uint32)
1000000
UPDATE_BENEFICIARY_ROLE(view returns (bytes32)
0xf7ea2b80c7b6a2cab2c11d2290cb005c3748397358a25e17113658c83b732593
UPDATE_FEES_ROLE(view returns (bytes32)
0x5f9be2932ed3a723f295a763be1804c7ebfd1a41c1348fb8bdf5be1c5cdca822
UPDATE_FORMULA_ROLE(view returns (bytes32)
0xbfb76d8d43f55efe58544ea32af187792a7bdb983850d8fed33478266eec3cbb
feeBeneficiary(view returns (address)
0x7f472aaa6492a07bffbe98664a11f76615150584
formula(view returns (address)
0xf9d6271c1f47fed7ea72edbe5a24dd06609f1547
paused(view returns (bool)
false
protocolBuyFeePct(view returns (uint256)
0
protocolSellFeePct(view returns (uint256)
50000000000000000
subjectBuyFeePct(view returns (uint256)
0
subjectFactory(view returns (address)
0x48f9887cab979b6f476bba3cc96808be8b8a2b72
subjectSellFeePct(view returns (uint256)
0
token(view returns (address)
0x8c9037d1ef5c6d1f6816278c7aaf5491d24cd527
tokenManager(view returns (address)
0xffeace4541276ac65c4e433b7fc63cda32b30470
vault(view returns (address)
0x58708f65bacdf5040eac739cf01299fa756a1154
Read-only
calculateTokensForBuy(address _subjectuint256 _subjectTokenAmountview returns (uint256 moxieAmount_uint256 protocolFee_uint256 subjectFee_)
calculateTokensForSell(address _subjectuint256 _subjectTokenAmountview returns (uint256 moxieAmount_uint256 protocolFee_uint256 subjectFee_)
getRoleAdmin(bytes32 roleview returns (bytes32)
hasRole(bytes32 roleaddress accountview returns (bool)
reserveRatio(address subjectview returns (uint32 _reserveRatio)
supportsInterface(bytes4 interfaceIdview returns (bool)
State-modifying
buyShares(address _subjectuint256 _depositAmountuint256 _minReturnAmountAfterFeereturns (uint256 shares_)
buySharesFor(address _subjectuint256 _depositAmountaddress _onBehalfOfuint256 _minReturnAmountAfterFeereturns (uint256 shares_)
grantRole(bytes32 roleaddress account
initialize(address _tokenaddress _formulaaddress _owneraddress _tokenManageraddress _vaultstruct IMoxieBondingCurveFeeInput _feeInputaddress _feeBeneficiaryaddress _subjectFactory
initializeSubjectBondingCurve(address _subjectuint32 _reserveRatiouint256 _initialSupplyuint256 _reserveAmountreturns (bool)
pause(
renounceRole(bytes32 roleaddress callerConfirmation
revokeRole(bytes32 roleaddress account
sellShares(address _subjectuint256 _sellAmountuint256 _minReturnAmountAfterFeereturns (uint256 returnAmount_)
sellSharesFor(address _subjectuint256 _sellAmountaddress _onBehalfOfuint256 _minReturnAmountAfterFeereturns (uint256 returnAmount_)
unpause(
updateFeeBeneficiary(address _feeBeneficiary
updateFees(struct IMoxieBondingCurveFeeInput _feeInput
updateFormula(address _formula
Events
AdminChanged(address previousAdminaddress newAdmin
Upgraded(address indexed implementation
BondingCurveInitialized(address indexed _subjectaddress indexed _subjectTokenuint256 _initialSupplyuint256 _reserveuint32 _reserveRatio
Initialized(uint64 version
Paused(address account
RoleAdminChanged(bytes32 indexed rolebytes32 indexed previousAdminRolebytes32 indexed newAdminRole
RoleGranted(bytes32 indexed roleaddress indexed accountaddress indexed sender
RoleRevoked(bytes32 indexed roleaddress indexed accountaddress indexed sender
SubjectSharePurchased(address indexed _subjectaddress indexed _sellTokenuint256 _sellAmountaddress _spenderaddress _buyTokenuint256 _buyAmountaddress indexed _beneficiary
SubjectShareSold(address indexed _subjectaddress indexed _sellTokenuint256 _sellAmountaddress _spenderaddress _buyTokenuint256 _buyAmountaddress indexed _beneficiary
Unpaused(address account
UpdateBeneficiary(address _beneficiary
UpdateFees(uint256 _protocolBuyFeePctuint256 _protocolSellFeePctuint256 _subjectBuyFeePctuint256 _subjectSellFeePct
UpdateFormula(address _formula
Constructor
constructor(address _logicaddress initialOwnerbytes _data
Fallback and receive
fallback(
Errors
AddressEmptyCode(address target
ERC1967InvalidAdmin(address admin
ERC1967InvalidImplementation(address implementation
ERC1967NonPayable(
FailedInnerCall(
ProxyDeniedAdminAccess(
AccessControlBadConfirmation(
AccessControlUnauthorizedAccount(address accountbytes32 neededRole
AddressEmptyCode(address target
AddressInsufficientBalance(address account
EnforcedPause(
ExpectedPause(
FailedInnerCall(
InvalidInitialization(
MoxieBondingCurve_InvalidAmount(
MoxieBondingCurve_InvalidBeneficiary(
MoxieBondingCurve_InvalidDepositAmount(
MoxieBondingCurve_InvalidFeePercentage(
MoxieBondingCurve_InvalidFormula(
MoxieBondingCurve_InvalidOwner(
MoxieBondingCurve_InvalidReserveRation(
MoxieBondingCurve_InvalidSellAmount(
MoxieBondingCurve_InvalidSubject(
MoxieBondingCurve_InvalidSubjectFactory(
MoxieBondingCurve_InvalidSubjectSupply(
MoxieBondingCurve_InvalidSubjectToken(
MoxieBondingCurve_InvalidToken(
MoxieBondingCurve_InvalidTokenManager(
MoxieBondingCurve_InvalidVault(
MoxieBondingCurve_OnlySubjectFactory(
MoxieBondingCurve_SlippageExceedsLimit(
MoxieBondingCurve_SubjectAlreadyInitialized(
MoxieBondingCurve_SubjectNotInitialized(
NotInitializing(
SafeERC20FailedOperation(address token