NFTART is a deflationary utility token on BSC powering the NFT ecosystem enter. The tokenomics rewards holders with a passive income where 5% is redistributed and 5% is burnt on every transaction on the blockchain.
NFTART was stealth launched late March 2021 with no pre-sale. The smart contract ownership of the token is renounced, and all codes are audited externally for the investors’ safety.
enter.art & enter.audio are the first platforms where NFTART is used as the utility token, but plans for the future are big and stretch far.
On the Enter platforms you will find free and easy access features for everything you need as an NFT artist. The only fees you have to consider are BSC transactional fees, which are very low compared to other networks. You can choose up to 20% royalties on all future resales of your art, making sure that your wallet holdings increase with the value of your works.
Enter offer easy access to minting, built-in royalty splitting, the ability to mint up to 20.000 NFTs at once, and has already been established as a go-to place for visual NFT art on Binance Smart Chain.
The ecosystem is being built by the Norwegian crypto and tech company Enter. The team is public.
Unable to verify that contract auditor is trusted: Certik, Quantstamp, Hacken, Solidity, Paladinsec, Openzeppelin, Verichains
Constant NFTF._tTotal (contracts/NFTF.sol#27) is not in UPPER_CASE_WITH_UNDERSCORES
Follow the Solidity naming convention.
Additional information: link
Contract name (NFTArt.Finance) contains non-alphanumeric characters.
Not a direct threat, but may indicate unreliable intentions of developer. Non-alphanumeric chars (,.;!#*&") are extremely rare among low risk tokens.
Address._verifyCallResult(bool,bytes,string) (@openzeppelin/contracts/utils/Address.sol#171-188) uses assembly
- INLINE ASM (@openzeppelin/contracts/utils/Address.sol#180-183)
Address.isContract(address) (@openzeppelin/contracts/utils/Address.sol#26-35) uses assembly
- INLINE ASM (@openzeppelin/contracts/utils/Address.sol#33)
Do not use evm assembly.
Additional information: link
NFTF._getTValues(uint256) (contracts/NFTF.sol#220-224) performs a multiplication on the result of a division:
-tFee = tAmount.div(100).mul(10) (contracts/NFTF.sol#221)
Consider ordering multiplication before division.
Additional information: link
NFTF.allowance(address,address).owner (contracts/NFTF.sol#66) shadows:
- Ownable.owner() (@openzeppelin/contracts/access/Ownable.sol#35-37) (function)
NFTF._approve(address,address,uint256).owner (contracts/NFTF.sol#147) shadows:
- Ownable.owner() (@openzeppelin/contracts/access/Ownable.sol#35-37) (function)
Rename the local variables that shadow another component.
Additional information: link
Different versions of Solidity are used:
- Version used: ['>=0.6.0<0.8.0', '>=0.6.2<0.8.0', '^0.7.6']
- >=0.6.0<0.8.0 (@openzeppelin/contracts/GSN/Context.sol#3)
- >=0.6.0<0.8.0 (@openzeppelin/contracts/access/Ownable.sol#3)
- >=0.6.0<0.8.0 (@openzeppelin/contracts/math/SafeMath.sol#3)
- >=0.6.0<0.8.0 (@openzeppelin/contracts/token/ERC20/IERC20.sol#3)
- >=0.6.2<0.8.0 (@openzeppelin/contracts/utils/Address.sol#3)
- >=0.6.0<0.8.0 (@openzeppelin/contracts/utils/Context.sol#3)
- ^0.7.6 (contracts/NFTF.sol#7)
Use one Solidity version.
Additional information: link
SafeMath.tryDiv(uint256,uint256) (@openzeppelin/contracts/math/SafeMath.sol#60-63) is never used and should be removed
Address.sendValue(address,uint256) (@openzeppelin/contracts/utils/Address.sol#53-59) is never used and should be removed
Address.functionCallWithValue(address,bytes,uint256) (@openzeppelin/contracts/utils/Address.sol#104-106) is never used and should be removed
SafeMath.tryMod(uint256,uint256) (@openzeppelin/contracts/math/SafeMath.sol#70-73) is never used and should be removed
Address.functionDelegateCall(address,bytes,string) (@openzeppelin/contracts/utils/Address.sol#163-169) is never used and should be removed
Address.functionDelegateCall(address,bytes) (@openzeppelin/contracts/utils/Address.sol#153-155) is never used and should be removed
SafeMath.tryAdd(uint256,uint256) (@openzeppelin/contracts/math/SafeMath.sol#24-28) is never used and should be removed
SafeMath.mod(uint256,uint256,string) (@openzeppelin/contracts/math/SafeMath.sol#210-213) is never used and should be removed
Address.functionCallWithValue(address,bytes,uint256,string) (@openzeppelin/contracts/utils/Address.sol#114-121) is never used and should be removed
SafeMath.div(uint256,uint256,string) (@openzeppelin/contracts/math/SafeMath.sol#190-193) is never used and should be removed
Context._msgData() (@openzeppelin/contracts/utils/Context.sol#20-23) is never used and should be removed
Address.functionStaticCall(address,bytes) (@openzeppelin/contracts/utils/Address.sol#129-131) is never used and should be removed
SafeMath.mod(uint256,uint256) (@openzeppelin/contracts/math/SafeMath.sol#152-155) is never used and should be removed
Address._verifyCallResult(bool,bytes,string) (@openzeppelin/contracts/utils/Address.sol#171-188) is never used and should be removed
SafeMath.tryMul(uint256,uint256) (@openzeppelin/contracts/math/SafeMath.sol#45-53) is never used and should be removed
SafeMath.trySub(uint256,uint256) (@openzeppelin/contracts/math/SafeMath.sol#35-38) is never used and should be removed
Address.isContract(address) (@openzeppelin/contracts/utils/Address.sol#26-35) is never used and should be removed
Address.functionCall(address,bytes,string) (@openzeppelin/contracts/utils/Address.sol#89-91) is never used and should be removed
Address.functionStaticCall(address,bytes,string) (@openzeppelin/contracts/utils/Address.sol#139-145) is never used and should be removed
Address.functionCall(address,bytes) (@openzeppelin/contracts/utils/Address.sol#79-81) is never used and should be removed
Remove unused functions.
Additional information: link
Redundant expression "this (@openzeppelin/contracts/utils/Context.sol#21)" inContext (@openzeppelin/contracts/utils/Context.sol#15-24)
Remove redundant statements if they congest code but offer no value.
Additional information: link
NFTF.includeAccount(address) (contracts/NFTF.sol#134-145) has costly operations inside a loop:
- _excluded.pop() (contracts/NFTF.sol#141)
Use a local variable to hold the loop computation result.
Additional information: link
Pragma version>=0.6.0<0.8.0 (@openzeppelin/contracts/access/Ownable.sol#3) is too complex
Pragma version>=0.6.0<0.8.0 (@openzeppelin/contracts/math/SafeMath.sol#3) is too complex
Pragma version>=0.6.0<0.8.0 (@openzeppelin/contracts/token/ERC20/IERC20.sol#3) is too complex
Pragma version>=0.6.2<0.8.0 (@openzeppelin/contracts/utils/Address.sol#3) is too complex
Pragma version>=0.6.0<0.8.0 (@openzeppelin/contracts/GSN/Context.sol#3) is too complex
Pragma version>=0.6.0<0.8.0 (@openzeppelin/contracts/utils/Context.sol#3) is too complex
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 Address.sendValue(address,uint256) (@openzeppelin/contracts/utils/Address.sol#53-59):
- (success) = recipient.call{value: amount}() (@openzeppelin/contracts/utils/Address.sol#57)
Low level call in Address.functionDelegateCall(address,bytes,string) (@openzeppelin/contracts/utils/Address.sol#163-169):
- (success,returndata) = target.delegatecall(data) (@openzeppelin/contracts/utils/Address.sol#167)
Low level call in Address.functionCallWithValue(address,bytes,uint256,string) (@openzeppelin/contracts/utils/Address.sol#114-121):
- (success,returndata) = target.call{value: value}(data) (@openzeppelin/contracts/utils/Address.sol#119)
Low level call in Address.functionStaticCall(address,bytes,string) (@openzeppelin/contracts/utils/Address.sol#139-145):
- (success,returndata) = target.staticcall(data) (@openzeppelin/contracts/utils/Address.sol#143)
Avoid low-level calls. Check the call success. If the call is meant for a contract, check for code existence
Additional information: link
Variable NFTF._getValues(uint256).rTransferAmount (contracts/NFTF.sol#216) is too similar to NFTF._getValues(uint256).tTransferAmount (contracts/NFTF.sol#214)
Variable NFTF._getValues(uint256).rTransferAmount (contracts/NFTF.sol#216) is too similar to NFTF._transferStandard(address,address,uint256).tTransferAmount (contracts/NFTF.sol#173)
Variable NFTF._transferStandard(address,address,uint256).rTransferAmount (contracts/NFTF.sol#173) is too similar to NFTF._transferBothExcluded(address,address,uint256).tTransferAmount (contracts/NFTF.sol#199)
Variable NFTF._transferToExcluded(address,address,uint256).rTransferAmount (contracts/NFTF.sol#181) is too similar to NFTF._getValues(uint256).tTransferAmount (contracts/NFTF.sol#214)
Variable NFTF._transferStandard(address,address,uint256).rTransferAmount (contracts/NFTF.sol#173) is too similar to NFTF._getTValues(uint256).tTransferAmount (contracts/NFTF.sol#222)
Variable NFTF._getValues(uint256).rTransferAmount (contracts/NFTF.sol#216) is too similar to NFTF._transferToExcluded(address,address,uint256).tTransferAmount (contracts/NFTF.sol#181)
Variable NFTF._getRValues(uint256,uint256,uint256).rTransferAmount (contracts/NFTF.sol#229) is too similar to NFTF._transferToExcluded(address,address,uint256).tTransferAmount (contracts/NFTF.sol#181)
Variable NFTF._transferToExcluded(address,address,uint256).rTransferAmount (contracts/NFTF.sol#181) is too similar to NFTF._transferBothExcluded(address,address,uint256).tTransferAmount (contracts/NFTF.sol#199)
Variable NFTF.reflectionFromToken(uint256,bool).rTransferAmount (contracts/NFTF.sol#114) is too similar to NFTF._transferToExcluded(address,address,uint256).tTransferAmount (contracts/NFTF.sol#181)
Variable NFTF._transferFromExcluded(address,address,uint256).rTransferAmount (contracts/NFTF.sol#190) is too similar to NFTF._getValues(uint256).tTransferAmount (contracts/NFTF.sol#214)
Variable NFTF._getRValues(uint256,uint256,uint256).rTransferAmount (contracts/NFTF.sol#229) is too similar to NFTF._transferStandard(address,address,uint256).tTransferAmount (contracts/NFTF.sol#173)
Variable NFTF._transferFromExcluded(address,address,uint256).rTransferAmount (contracts/NFTF.sol#190) is too similar to NFTF._transferBothExcluded(address,address,uint256).tTransferAmount (contracts/NFTF.sol#199)
Variable NFTF._transferStandard(address,address,uint256).rTransferAmount (contracts/NFTF.sol#173) is too similar to NFTF._transferStandard(address,address,uint256).tTransferAmount (contracts/NFTF.sol#173)
Variable NFTF._getRValues(uint256,uint256,uint256).rTransferAmount (contracts/NFTF.sol#229) is too similar to NFTF._transferFromExcluded(address,address,uint256).tTransferAmount (contracts/NFTF.sol#190)
Variable NFTF._transferFromExcluded(address,address,uint256).rTransferAmount (contracts/NFTF.sol#190) is too similar to NFTF._transferFromExcluded(address,address,uint256).tTransferAmount (contracts/NFTF.sol#190)
Variable NFTF.reflectionFromToken(uint256,bool).rTransferAmount (contracts/NFTF.sol#114) is too similar to NFTF._transferFromExcluded(address,address,uint256).tTransferAmount (contracts/NFTF.sol#190)
Variable NFTF.reflectionFromToken(uint256,bool).rTransferAmount (contracts/NFTF.sol#114) is too similar to NFTF._transferBothExcluded(address,address,uint256).tTransferAmount (contracts/NFTF.sol#199)
Variable NFTF._transferStandard(address,address,uint256).rTransferAmount (contracts/NFTF.sol#173) is too similar to NFTF._transferFromExcluded(address,address,uint256).tTransferAmount (contracts/NFTF.sol#190)
Variable NFTF._transferBothExcluded(address,address,uint256).rTransferAmount (contracts/NFTF.sol#199) is too similar to NFTF._getTValues(uint256).tTransferAmount (contracts/NFTF.sol#222)
Variable NFTF._transferBothExcluded(address,address,uint256).rTransferAmount (contracts/NFTF.sol#199) is too similar to NFTF._transferFromExcluded(address,address,uint256).tTransferAmount (contracts/NFTF.sol#190)
Variable NFTF._transferStandard(address,address,uint256).rTransferAmount (contracts/NFTF.sol#173) is too similar to NFTF._transferToExcluded(address,address,uint256).tTransferAmount (contracts/NFTF.sol#181)
Variable NFTF._getValues(uint256).rTransferAmount (contracts/NFTF.sol#216) is too similar to NFTF._transferBothExcluded(address,address,uint256).tTransferAmount (contracts/NFTF.sol#199)
Variable NFTF._getRValues(uint256,uint256,uint256).rTransferAmount (contracts/NFTF.sol#229) is too similar to NFTF._transferBothExcluded(address,address,uint256).tTransferAmount (contracts/NFTF.sol#199)
Variable NFTF.reflectionFromToken(uint256,bool).rTransferAmount (contracts/NFTF.sol#114) is too similar to NFTF._getTValues(uint256).tTransferAmount (contracts/NFTF.sol#222)
Variable NFTF._getRValues(uint256,uint256,uint256).rTransferAmount (contracts/NFTF.sol#229) is too similar to NFTF._getTValues(uint256).tTransferAmount (contracts/NFTF.sol#222)
Variable NFTF.reflectionFromToken(uint256,bool).rTransferAmount (contracts/NFTF.sol#114) is too similar to NFTF._getValues(uint256).tTransferAmount (contracts/NFTF.sol#214)
Variable NFTF._transferBothExcluded(address,address,uint256).rTransferAmount (contracts/NFTF.sol#199) is too similar to NFTF._transferToExcluded(address,address,uint256).tTransferAmount (contracts/NFTF.sol#181)
Variable NFTF._transferBothExcluded(address,address,uint256).rTransferAmount (contracts/NFTF.sol#199) is too similar to NFTF._transferStandard(address,address,uint256).tTransferAmount (contracts/NFTF.sol#173)
Variable NFTF._transferStandard(address,address,uint256).rTransferAmount (contracts/NFTF.sol#173) is too similar to NFTF._getValues(uint256).tTransferAmount (contracts/NFTF.sol#214)
Variable NFTF._transferToExcluded(address,address,uint256).rTransferAmount (contracts/NFTF.sol#181) is too similar to NFTF._transferStandard(address,address,uint256).tTransferAmount (contracts/NFTF.sol#173)
Variable NFTF.reflectionFromToken(uint256,bool).rTransferAmount (contracts/NFTF.sol#114) is too similar to NFTF._transferStandard(address,address,uint256).tTransferAmount (contracts/NFTF.sol#173)
Variable NFTF._getValues(uint256).rTransferAmount (contracts/NFTF.sol#216) is too similar to NFTF._transferFromExcluded(address,address,uint256).tTransferAmount (contracts/NFTF.sol#190)
Variable NFTF._transferBothExcluded(address,address,uint256).rTransferAmount (contracts/NFTF.sol#199) is too similar to NFTF._getValues(uint256).tTransferAmount (contracts/NFTF.sol#214)
Variable NFTF._transferFromExcluded(address,address,uint256).rTransferAmount (contracts/NFTF.sol#190) is too similar to NFTF._transferToExcluded(address,address,uint256).tTransferAmount (contracts/NFTF.sol#181)
Variable NFTF._transferToExcluded(address,address,uint256).rTransferAmount (contracts/NFTF.sol#181) is too similar to NFTF._transferFromExcluded(address,address,uint256).tTransferAmount (contracts/NFTF.sol#190)
Variable NFTF._transferFromExcluded(address,address,uint256).rTransferAmount (contracts/NFTF.sol#190) is too similar to NFTF._transferStandard(address,address,uint256).tTransferAmount (contracts/NFTF.sol#173)
Variable NFTF._transferBothExcluded(address,address,uint256).rTransferAmount (contracts/NFTF.sol#199) is too similar to NFTF._transferBothExcluded(address,address,uint256).tTransferAmount (contracts/NFTF.sol#199)
Variable NFTF._transferToExcluded(address,address,uint256).rTransferAmount (contracts/NFTF.sol#181) is too similar to NFTF._transferToExcluded(address,address,uint256).tTransferAmount (contracts/NFTF.sol#181)
Variable NFTF._getRValues(uint256,uint256,uint256).rTransferAmount (contracts/NFTF.sol#229) is too similar to NFTF._getValues(uint256).tTransferAmount (contracts/NFTF.sol#214)
Variable NFTF._getValues(uint256).rTransferAmount (contracts/NFTF.sol#216) is too similar to NFTF._getTValues(uint256).tTransferAmount (contracts/NFTF.sol#222)
Variable NFTF._transferFromExcluded(address,address,uint256).rTransferAmount (contracts/NFTF.sol#190) is too similar to NFTF._getTValues(uint256).tTransferAmount (contracts/NFTF.sol#222)
Variable NFTF._transferToExcluded(address,address,uint256).rTransferAmount (contracts/NFTF.sol#181) is too similar to NFTF._getTValues(uint256).tTransferAmount (contracts/NFTF.sol#222)
Prevent variables from having similar names.
Additional information: link
NFTF.slitherConstructorConstantVariables() (contracts/NFTF.sol#15-249) uses literals with too many digits:
- _tTotal = 100000000000 * 10 ** 6 * 10 ** 9 (contracts/NFTF.sol#27)
Use: Ether suffix, Time suffix, or The scientific notation
Additional information: link
NFTF._decimals (contracts/NFTF.sol#33) should be constant
NFTF._symbol (contracts/NFTF.sol#32) should be constant
NFTF._name (contracts/NFTF.sol#31) should be constant
Add the constant attributes to state variables that never change.
Additional information: link
transferFrom(address,address,uint256) should be declared external:
- NFTF.transferFrom(address,address,uint256) (contracts/NFTF.sol#75-79)
reflect(uint256) should be declared external:
- NFTF.reflect(uint256) (contracts/NFTF.sol#99-106)
renounceOwnership() should be declared external:
- Ownable.renounceOwnership() (@openzeppelin/contracts/access/Ownable.sol#54-57)
isExcluded(address) should be declared external:
- NFTF.isExcluded(address) (contracts/NFTF.sol#91-93)
totalSupply() should be declared external:
- NFTF.totalSupply() (contracts/NFTF.sol#52-54)
allowance(address,address) should be declared external:
- NFTF.allowance(address,address) (contracts/NFTF.sol#66-68)
decimals() should be declared external:
- NFTF.decimals() (contracts/NFTF.sol#48-50)
increaseAllowance(address,uint256) should be declared external:
- NFTF.increaseAllowance(address,uint256) (contracts/NFTF.sol#81-84)
symbol() should be declared external:
- NFTF.symbol() (contracts/NFTF.sol#44-46)
transferOwnership(address) should be declared external:
- Ownable.transferOwnership(address) (@openzeppelin/contracts/access/Ownable.sol#63-67)
reflectionFromToken(uint256,bool) should be declared external:
- NFTF.reflectionFromToken(uint256,bool) (contracts/NFTF.sol#108-117)
decreaseAllowance(address,uint256) should be declared external:
- NFTF.decreaseAllowance(address,uint256) (contracts/NFTF.sol#86-89)
balanceOf(address) should be declared external:
- NFTF.balanceOf(address) (contracts/NFTF.sol#56-59)
name() should be declared external:
- NFTF.name() (contracts/NFTF.sol#40-42)
approve(address,uint256) should be declared external:
- NFTF.approve(address,uint256) (contracts/NFTF.sol#70-73)
totalFees() should be declared external:
- NFTF.totalFees() (contracts/NFTF.sol#95-97)
transfer(address,uint256) should be declared external:
- NFTF.transfer(address,uint256) (contracts/NFTF.sol#61-64)
Use the external attribute for functions never called from the contract.
Additional information: link
Token is not listed at Mobula.Finance
Additional information: link
Unable to find Telegram link on the website
Unable to find code repository for the project
Unable to find Youtube account