The WSB movement for financial democracy started on Reddit and became a global phenomenon. This is why (we, the apes) created a Decentralized Application to give our community a tool to voice their opinions as retail investors.
Unable to verify that contract auditor is trusted: Certik, Quantstamp, Hacken, Solidity, Paladinsec, Openzeppelin, Verichains
AdminUpgradeabilityProxy.constructor(address,address,bytes)._admin (#430) shadows:
- BaseAdminUpgradeabilityProxy._admin() (#382-387) (function)
Rename the local variables that shadow another component.
Additional information: link
UpgradeabilityProxy.constructor(address,bytes)._logic (#275) lacks a zero-check on :
- (success) = _logic.delegatecall(_data) (#279)
BaseAdminUpgradeabilityProxy.upgradeToAndCall(address,bytes).newImplementation (#373) lacks a zero-check on :
- (success) = newImplementation.delegatecall(data) (#375)
Check that the address is not zero.
Additional information: link
Modifier BaseAdminUpgradeabilityProxy.ifAdmin() (#322-328) does not always execute _; or revert
All the paths in a modifier must execute _ or revert.
Additional information: link
OpenZeppelinUpgradesAddress.isContract(address) (#23-34) uses assembly
- INLINE ASM (#32)
Proxy._delegate(address) (#157-176) uses assembly
- INLINE ASM (#158-175)
BaseUpgradeabilityProxy._implementation() (#225-230) uses assembly
- INLINE ASM (#227-229)
BaseUpgradeabilityProxy._setImplementation(address) (#245-253) uses assembly
- INLINE ASM (#250-252)
BaseAdminUpgradeabilityProxy._admin() (#382-387) uses assembly
- INLINE ASM (#384-386)
BaseAdminUpgradeabilityProxy._setAdmin(address) (#393-399) uses assembly
- INLINE ASM (#396-398)
Do not use evm assembly.
Additional information: link
Proxy._implementation() (#149) is never used and should be removed
Remove unused functions.
Additional information: link
Pragma version^0.5.0 (#3) allows old versions
Deploy with any of the following Solidity versions: 0.5.16 - 0.5.17, 0.6.11 - 0.6.12, 0.7.5 - 0.7.6 Use a simple pragma version that allows any of these versions. Consider using the latest version of Solidity for testing.
Additional information: link
Low level call in UpgradeabilityProxy.constructor(address,bytes) (#275-282):
- (success) = _logic.delegatecall(_data) (#279)
Low level call in BaseAdminUpgradeabilityProxy.upgradeToAndCall(address,bytes) (#373-377):
- (success) = newImplementation.delegatecall(data) (#375)
Low level call in ProxyAdmin.getProxyImplementation(AdminUpgradeabilityProxy) (#453-459):
- (success,returndata) = address(proxy).staticcall(0x5c60da1b) (#456)
Low level call in ProxyAdmin.getProxyAdmin(AdminUpgradeabilityProxy) (#465-471):
- (success,returndata) = address(proxy).staticcall(0xf851a440) (#468)
Avoid low-level calls. Check the call success. If the call is meant for a contract, check for code existence
Additional information: link
owner() should be declared external:
- OpenZeppelinUpgradesOwnable.owner() (#72-74)
renounceOwnership() should be declared external:
- OpenZeppelinUpgradesOwnable.renounceOwnership() (#97-100)
transferOwnership(address) should be declared external:
- OpenZeppelinUpgradesOwnable.transferOwnership(address) (#106-108)
getProxyImplementation(AdminUpgradeabilityProxy) should be declared external:
- ProxyAdmin.getProxyImplementation(AdminUpgradeabilityProxy) (#453-459)
getProxyAdmin(AdminUpgradeabilityProxy) should be declared external:
- ProxyAdmin.getProxyAdmin(AdminUpgradeabilityProxy) (#465-471)
changeProxyAdmin(AdminUpgradeabilityProxy,address) should be declared external:
- ProxyAdmin.changeProxyAdmin(AdminUpgradeabilityProxy,address) (#478-480)
upgrade(AdminUpgradeabilityProxy,address) should be declared external:
- ProxyAdmin.upgrade(AdminUpgradeabilityProxy,address) (#487-489)
upgradeAndCall(AdminUpgradeabilityProxy,address,bytes) should be declared external:
- ProxyAdmin.upgradeAndCall(AdminUpgradeabilityProxy,address,bytes) (#500-502)
Use the external attribute for functions never called from the contract.
Additional information: link
BscScan page for the token does not contain additional info: website, socials, description, etc.
Additional information: link
Unable to find code repository for the project
Young tokens have high risks of scam / price dump / death