Safegem.finance Token Logo

GEMS [Safegem.finance] Token

ALERT: unclassified scam

About GEMS

Listings

Token 14 months
CoinGecko 13 months
CoinMarketCap 13 months
white paper

A Diamond Strong Community

Safegem is a frictionless high-yield generation protocol combined with continuous permanent burn. With professionalism and transparency, we are building a united community across the entire crypto space.

Safegem differentiates itself from other projects by being a 100% community owned and operated BSC token. The project is managed by a team of professional volunteers committed to realizing our unique vision for NFT authentication and brought together by our love of crypto and precious stones.

Safegem has two functions as a high-yield generation protocol that takes place during each transaction: 6% of the transaction is redistributed to all GEMS holders and 5% is burned forever. As of June 2022, over 78% of all GEMS have been burned.

In December 2021, Safegem launched their NFT marketplace https://safegemstore.com, featuring best-in-class NFT artwork and collectibles. In 2022, Safegem began offering physical gemstone authentication and certification utilizing the ERC-721 non-fungible token standard on Binance Smart Chain.

Laser Scorebeta Last Audit: 27 June 2022

report
Token seems to be a scam (type: unclassified scam).

Anti-Scam

Links


Unable to find manual contract audit (e.g. Certik, PeckShield, Solidity...)

Address.isContract(address) (#99-104) uses assembly
- INLINE ASM (#102)
Address._functionCallWithValue(address,bytes,uint256,string) (#129-150) uses assembly
- INLINE ASM (#142-145)
Do not use evm assembly.

Additional information: link

Address._functionCallWithValue(address,bytes,uint256,string) (#129-150) is never used and should be removed
Address.functionCall(address,bytes) (#112-114) is never used and should be removed
Address.functionCall(address,bytes,string) (#116-118) is never used and should be removed
Address.functionCallWithValue(address,bytes,uint256) (#120-122) is never used and should be removed
Address.functionCallWithValue(address,bytes,uint256,string) (#124-127) is never used and should be removed
Address.isContract(address) (#99-104) is never used and should be removed
Address.sendValue(address,uint256) (#106-110) is never used and should be removed
Context._msgData() (#40-43) is never used and should be removed
SafeMath.mod(uint256,uint256) (#87-89) is never used and should be removed
SafeMath.mod(uint256,uint256,string) (#91-94) is never used and should be removed
Remove unused functions.

Additional information: link

renounceOwnership() should be declared external:
- Ownable.renounceOwnership() (#199-202)
transferOwnership(address) should be declared external:
- Ownable.transferOwnership(address) (#204-208)
name() should be declared external:
- Safegem.name() (#248-250)
symbol() should be declared external:
- Safegem.symbol() (#252-254)
decimals() should be declared external:
- Safegem.decimals() (#256-258)
totalSupply() should be declared external:
- Safegem.totalSupply() (#260-262)
balanceOf(address) should be declared external:
- Safegem.balanceOf(address) (#264-267)
transfer(address,uint256) should be declared external:
- Safegem.transfer(address,uint256) (#269-272)
allowance(address,address) should be declared external:
- Safegem.allowance(address,address) (#274-276)
approve(address,uint256) should be declared external:
- Safegem.approve(address,uint256) (#278-281)
transferFrom(address,address,uint256) should be declared external:
- Safegem.transferFrom(address,address,uint256) (#283-287)
increaseAllowance(address,uint256) should be declared external:
- Safegem.increaseAllowance(address,uint256) (#289-292)
decreaseAllowance(address,uint256) should be declared external:
- Safegem.decreaseAllowance(address,uint256) (#294-297)
isExcluded(address) should be declared external:
- Safegem.isExcluded(address) (#299-301)
totalFees() should be declared external:
- Safegem.totalFees() (#303-305)
reflect(uint256) should be declared external:
- Safegem.reflect(uint256) (#307-314)
reflectionFromToken(uint256,bool) should be declared external:
- Safegem.reflectionFromToken(uint256,bool) (#316-325)
excludeFromFee(address) should be declared external:
- Safegem.excludeFromFee(address) (#346-348)
includeInFee(address) should be declared external:
- Safegem.includeInFee(address) (#350-352)
excludeFromReward(address) should be declared external:
- Safegem.excludeFromReward(address) (#354-361)
Use the external attribute for functions never called from the contract.

Additional information: link

Safegem.includeInReward(address) (#363-374) has costly operations inside a loop:
- _excluded.pop() (#370)
Safegem.includeAccount(address) (#385-396) has costly operations inside a loop:
- _excluded.pop() (#392)
Use a local variable to hold the loop computation result.

Additional information: link

Safegem._getTValues(uint256) (#484-489) performs a multiplication on the result of a division:
-tFee = tAmount.div(100).mul(_holdersFee) (#485)
Consider ordering multiplication before division.

Additional information: link

Safegem.allowance(address,address).owner (#274) shadows:
- Ownable.owner() (#183-185) (function)
Safegem._approve(address,address,uint256).owner (#398) shadows:
- Ownable.owner() (#183-185) (function)
Rename the local variables that shadow another component.

Additional information: link

Safegem._rTotal (#227) is set pre-construction with a non-constant function or state variable:
- (MAX - (MAX % _tTotal))
Safegem._previousholdersFee (#237) is set pre-construction with a non-constant function or state variable:
- _holdersFee
Safegem._previousburnFee (#238) is set pre-construction with a non-constant function or state variable:
- _burnFee
Safegem.maximumTXamount (#239) is set pre-construction with a non-constant function or state variable:
- _tTotal.div(10 ** 3)
Remove any initialization of state variables via non-constant state variables or function calls. If variables must be set upon contract deployment, locate initialization in the constructor instead.

Additional information: link

Low level call in Address.sendValue(address,uint256) (#106-110):
- (success) = recipient.call{value: amount}() (#108)
Low level call in Address._functionCallWithValue(address,bytes,uint256,string) (#129-150):
- (success,returndata) = target.call{value: weiValue}(data) (#133)
Avoid low-level calls. Check the call success. If the call is meant for a contract, check for code existence

Additional information: link

Variable Safegem._burnFee (#235) is not in mixedCase
Variable Safegem._holdersFee (#236) is not in mixedCase
Follow the Solidity naming convention.

Additional information: link

Redundant expression "this (#41)" inContext (#35-44)
Remove redundant statements if they congest code but offer no value.

Additional information: link

Variable Safegem._transferStandard(address,address,uint256).rTransferAmount (#426) is too similar to Safegem._transferStandard(address,address,uint256).tTransferAmount (#426)
Variable Safegem._getRValues(uint256,uint256,uint256,uint256).rTransferAmount (#495) is too similar to Safegem._transferToExcluded(address,address,uint256).tTransferAmount (#436)
Variable Safegem._getValues(uint256).rTransferAmount (#480) is too similar to Safegem._transferToExcluded(address,address,uint256).tTransferAmount (#436)
Variable Safegem._transferStandard(address,address,uint256).rTransferAmount (#426) is too similar to Safegem._getTValues(uint256).tTransferAmount (#487)
Variable Safegem._transferBothExcluded(address,address,uint256).rTransferAmount (#458) is too similar to Safegem._transferBothExcluded(address,address,uint256).tTransferAmount (#458)
Variable Safegem._transferBothExcluded(address,address,uint256).rTransferAmount (#458) is too similar to Safegem._transferStandard(address,address,uint256).tTransferAmount (#426)
Variable Safegem._transferToExcluded(address,address,uint256).rTransferAmount (#436) is too similar to Safegem._transferStandard(address,address,uint256).tTransferAmount (#426)
Variable Safegem._transferToExcluded(address,address,uint256).rTransferAmount (#436) is too similar to Safegem._getTValues(uint256).tTransferAmount (#487)
Variable Safegem.reflectionFromToken(uint256,bool).rTransferAmount (#322) is too similar to Safegem._transferStandard(address,address,uint256).tTransferAmount (#426)
Variable Safegem._transferBothExcluded(address,address,uint256).rTransferAmount (#458) is too similar to Safegem._getTValues(uint256).tTransferAmount (#487)
Variable Safegem._transferStandard(address,address,uint256).rTransferAmount (#426) is too similar to Safegem._transferToExcluded(address,address,uint256).tTransferAmount (#436)
Variable Safegem.reflectionFromToken(uint256,bool).rTransferAmount (#322) is too similar to Safegem._getTValues(uint256).tTransferAmount (#487)
Variable Safegem._transferBothExcluded(address,address,uint256).rTransferAmount (#458) is too similar to Safegem._transferToExcluded(address,address,uint256).tTransferAmount (#436)
Variable Safegem._getRValues(uint256,uint256,uint256,uint256).rTransferAmount (#495) is too similar to Safegem._transferStandard(address,address,uint256).tTransferAmount (#426)
Variable Safegem._transferToExcluded(address,address,uint256).rTransferAmount (#436) is too similar to Safegem._transferToExcluded(address,address,uint256).tTransferAmount (#436)
Variable Safegem._getValues(uint256).rTransferAmount (#480) is too similar to Safegem._transferStandard(address,address,uint256).tTransferAmount (#426)
Variable Safegem._getRValues(uint256,uint256,uint256,uint256).rTransferAmount (#495) is too similar to Safegem._getTValues(uint256).tTransferAmount (#487)
Variable Safegem.reflectionFromToken(uint256,bool).rTransferAmount (#322) is too similar to Safegem._transferToExcluded(address,address,uint256).tTransferAmount (#436)
Variable Safegem._transferBothExcluded(address,address,uint256).rTransferAmount (#458) is too similar to Safegem._getValues(uint256).tTransferAmount (#478)
Variable Safegem._getValues(uint256).rTransferAmount (#480) is too similar to Safegem._getTValues(uint256).tTransferAmount (#487)
Variable Safegem._transferFromExcluded(address,address,uint256).rTransferAmount (#447) is too similar to Safegem._transferFromExcluded(address,address,uint256).tTransferAmount (#447)
Variable Safegem._transferToExcluded(address,address,uint256).rTransferAmount (#436) is too similar to Safegem._getValues(uint256).tTransferAmount (#478)
Variable Safegem._transferBothExcluded(address,address,uint256).rTransferAmount (#458) is too similar to Safegem._transferFromExcluded(address,address,uint256).tTransferAmount (#447)
Variable Safegem._transferStandard(address,address,uint256).rTransferAmount (#426) is too similar to Safegem._transferFromExcluded(address,address,uint256).tTransferAmount (#447)
Variable Safegem._getRValues(uint256,uint256,uint256,uint256).rTransferAmount (#495) is too similar to Safegem._transferBothExcluded(address,address,uint256).tTransferAmount (#458)
Variable Safegem._transferFromExcluded(address,address,uint256).rTransferAmount (#447) is too similar to Safegem._transferStandard(address,address,uint256).tTransferAmount (#426)
Variable Safegem.reflectionFromToken(uint256,bool).rTransferAmount (#322) is too similar to Safegem._transferBothExcluded(address,address,uint256).tTransferAmount (#458)
Variable Safegem._getRValues(uint256,uint256,uint256,uint256).rTransferAmount (#495) is too similar to Safegem._getValues(uint256).tTransferAmount (#478)
Variable Safegem._getValues(uint256).rTransferAmount (#480) is too similar to Safegem._transferFromExcluded(address,address,uint256).tTransferAmount (#447)
Variable Safegem.reflectionFromToken(uint256,bool).rTransferAmount (#322) is too similar to Safegem._getValues(uint256).tTransferAmount (#478)
Variable Safegem._transferFromExcluded(address,address,uint256).rTransferAmount (#447) is too similar to Safegem._transferBothExcluded(address,address,uint256).tTransferAmount (#458)
Variable Safegem._transferFromExcluded(address,address,uint256).rTransferAmount (#447) is too similar to Safegem._transferToExcluded(address,address,uint256).tTransferAmount (#436)
Variable Safegem._transferToExcluded(address,address,uint256).rTransferAmount (#436) is too similar to Safegem._transferFromExcluded(address,address,uint256).tTransferAmount (#447)
Variable Safegem._transferStandard(address,address,uint256).rTransferAmount (#426) is too similar to Safegem._transferBothExcluded(address,address,uint256).tTransferAmount (#458)
Variable Safegem._transferFromExcluded(address,address,uint256).rTransferAmount (#447) is too similar to Safegem._getValues(uint256).tTransferAmount (#478)
Variable Safegem._transferStandard(address,address,uint256).rTransferAmount (#426) is too similar to Safegem._getValues(uint256).tTransferAmount (#478)
Variable Safegem._getRValues(uint256,uint256,uint256,uint256).rTransferAmount (#495) is too similar to Safegem._transferFromExcluded(address,address,uint256).tTransferAmount (#447)
Variable Safegem._getValues(uint256).rTransferAmount (#480) is too similar to Safegem._transferBothExcluded(address,address,uint256).tTransferAmount (#458)
Variable Safegem._transferFromExcluded(address,address,uint256).rTransferAmount (#447) is too similar to Safegem._getTValues(uint256).tTransferAmount (#487)
Variable Safegem.reflectionFromToken(uint256,bool).rTransferAmount (#322) is too similar to Safegem._transferFromExcluded(address,address,uint256).tTransferAmount (#447)
Variable Safegem._getValues(uint256).rTransferAmount (#480) is too similar to Safegem._getValues(uint256).tTransferAmount (#478)
Variable Safegem._transferToExcluded(address,address,uint256).rTransferAmount (#436) is too similar to Safegem._transferBothExcluded(address,address,uint256).tTransferAmount (#458)
Prevent variables from having similar names.

Additional information: link

Safegem.slitherConstructorVariables() (#213-516) uses literals with too many digits:
- _tTotal = 100000000000 * 10 ** 6 * 10 ** 9 (#226)
Use: Ether suffix, Time suffix, or The scientific notation

Additional information: link

Safegem._decimals (#232) should be constant
Safegem._name (#230) should be constant
Safegem._symbol (#231) should be constant
Add the constant attributes to state variables that never change.

Additional information: link

Contract name (Safegem.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.

Holders:


Token is deployed only at one blockchain

Contract has 11% buy tax and 10% sell tax.
Taxes are high (over 10%) but contract ownership is renounced.


Average 30d PancakeSwap volume is low.


Average 30d number of PancakeSwap swaps is low.


Average PancakeSwap trading volume, liqudity, number of swaps are low. Token seems to be inactive.


Unable to find Youtube account


Token was delisted (assigned to inactive / untracked listing) from CoinMarketCap

Additional information: link


Unable to find token contract audit


Unable to find audit link on the website


Token is not listed at Mobula.Finance

Additional information: link


Token is marked as scam (rug pull, honeypot, phishing, etc.)

Additional information: link


Young tokens have high risks of scam / price dump / death


Token has no active CoinMarketCap listing / rank


Token has relatively low CoinGecko rank


Young tokens have high risks of price dump / death

Price for GEMS

News for GEMS