# Main Token Contract

The following threats are what was found during the course of the audit, along with our comments and suggestions for the users.

{% hint style="danger" %}
High Risk: Blacklist

Owner can blacklist address until blacklisting functionality is renounced. Blacklisted addresses are unable to sell tokens.
{% endhint %}

This is a common threat that is brought forward on an audit, giving notice to the fact that this function exists and could be deterimental to potential investors if used incorrectly.

As we are offering a variety of contract functions as part of the builder, this is a risk you should understand before adding it to any contract you may create, and should only be used responsibly, and in the most ethical ways possible.

***

{% hint style="warning" %}
Medium Risk: Owner can change Reflection Tokens

If router or similar contract is set as reflection token, contract will halt on sell once it reaches the autoswap amount.
{% endhint %}

This threat is another warning for reflection tokens, and one for users to understand. If you set your reflection token as one that cannot be traded on a DEX, and set it as a  router or contract, the contract will not continue to function properly once the autoswap amount has been reached.&#x20;

**Only use DEX traded, or your own token for your reflection tokens.**

***

{% hint style="info" %}
Informational: Owner can set buy/sell/transfer taxes up to 25% until functionality is renounced, and can change taxes receiving wallets.

When taxes are above 0, there will be certain amount of tokens that will be deducted from every transaction that users make. Deducted amount will be as much as the taxes % from total amount that user had bought, sold and/or transferred.
{% endhint %}

This informational item highlights that we have given great power to the ChainFactory user, and that you will need to plan your project properly and set appropriate variables within the functions used.

***

{% hint style="info" %}
Informational: Owner can set buy/sell/transfer adaptive taxes up to 25% until functionality is renounced, and can change taxes receiving wallets.

Adaptive taxes will be applied when the amount transferred is higher than the current adaptive tax thereshold.
{% endhint %}

This informational item brings awareness to our adaptive tax feature, and highlights the power we've given to the ChainFactory users.

***

{% hint style="info" %}
Informational: Owner can withdraw any tokens from the contract.

When this function is present, in cases tokens are sent into the contract by mistake or puposefully, contract's owner can retrieve them.
{% endhint %}

This informational item brings awareness to the 'Recover Foreign Tokens' function, and is a positive aspect of the ChainFactory function offerings, where you can provide safety and security for your potential investors where tokens will not be lost in the contract.

***

{% hint style="info" %}
Informational: Owner can set max transaction amount that address can transfer until the functionality is renounced, but can't lower it than 0.1% of total supply.
{% endhint %}

This informational item is a great awareness to the max transaction feature and that it can be set by the owner of the contract, again showing how we have given power to the ChainFactory users.

***

{% hint style="info" %}
Informational: Owner can set max balance (max wallet) that address can hold as low as 0.1% of total supply, until the functionality is renounced.
{% endhint %}

This informational item is a great awareness to the max transaction feature and that it can be set by the owner of the contract, again showing how we have given power to the ChainFactory users.

***

{% hint style="info" %}
Informational: Owner can set penalty time for sells up to 1 hour from trading start timestamp.&#x20;

If holders sell their tokens before the time set, they will be subjest to penalty taxes.

Owner can set cooldown between trades if more than 2 txs are done by user for period of time. Cooldown period can be up to 1 week.
{% endhint %}

This informational item brings awareness to the cooldown function, the parameters that can be used, and brings caution to the user and that they should show great caution when using this funciton and owners should use it responsibly and ethically.

***

{% hint style="info" %}
Informational: Users can gain token spend approva lfrom address if they have the requried signature.
{% endhint %}

As always, you should be cautious when signing messages on Web3 dApps to prevent unauthorized approvals.

***

{% hint style="info" %}
Informational: Owner can enable trading once.
{% endhint %}

The informational item is a great note for future users of ChainFactory, and for them to understand the importance of ensuring they have all areas of their contract well planned and thought out before enabling trading.
