# Contract Details

Botto operates through a set of 5 smart contracts on Ethereum mainnet, and 3 on the Base network, allowing users to perform certain actions on both chains. The contracts are specified as follows:

## Ethereum Mainnet

### ERC20 Token Contract

[`0x9DFAD1b7102D46b1b197b90095B5c4E9f5845BBA`](https://etherscan.io/token/0x9dfad1b7102d46b1b197b90095b5c4e9f5845bba#readContract)

Botto operates with an ERC20 token contract, allowing for standardized functionalities like transferring tokens, fetching account balances, spending approvals, and other functionality on Ethereum.

### Governance Contract

[`0x19CD3998f106eCC40eE7668c19C47e18b491e8a6`](https://etherscan.io/address/0x19CD3998f106eCC40eE7668c19C47e18b491e8a6)

The governance contract handles the `stake` and `unstake` function alongside events like `Staked`, `Unstaked`. In order to be able to contribute to training Botto's algorithm, users are required to use this contract to stake their BOTTO.

### Liquidity Mining Contract

[`0xf8515Cae6915838543bCD7756F39268CE8F853Fd`](https://etherscan.io/address/0xf8515Cae6915838543bCD7756F39268CE8F853Fd)

The liquidity mining contract handles the `stake` and `unstake` of LP tokens as well as liquidity mining reward payouts. The contract was deployed with an 8 month duration, and was updated to 3 years when we joined the [Olympus Pro Program](https://docs.botto.com/details/token-distribution/bonding). It has the following variables:

* Total Rewards: [20,000,000 BOTTO](https://etherscan.io/tx/0x7301554d0418a7072d20c2f66ea32cbf32120c20d0659672797857b128db54f1)
* StartTime: 14/10/2021 (DD/MM/YYYY)
* EndTime: 15/10/2025 (DD/MM/YYYY)

### Active Rewards Contract

{% hint style="warning" %}
The distribution system has been updated to prevent recurring claiming issues. Rewards are now transferred directly to users’ wallets, with gas fees deducted automatically. On mainnet, the transferring address is [a DAO-controlled deployer wallet](https://etherscan.io/address/0x9b627af2a48f2e07beeeb82141e3ac6e231326bf), now used exclusively for distributing rewards.
{% endhint %}

[`0x93298241417A63469b6F8f080b4878749aCB4C47`](https://etherscan.io/address/0x93298241417a63469b6f8f080b4878749acb4c47/advanced)

The active rewards contract handles the `claim` function that allows eligible users to get their share of protocol revenue in ETH that is distributed weekly.

### Airdrop Contract

[`0xed39DAFd2B2a624fE43A5BbE76e0Dae4E4E621ef`](https://etherscan.io/address/0xed39DAFd2B2a624fE43A5BbE76e0Dae4E4E621ef)

The airdrop contract handled the initial distribution of BOTTO tokens to the community. Airdrop contracts are deployed with a list of addresses and amounts in Merkle tree form, enabling the list of addresses the ability to claim BOTTO.

A total of [30,010,878 BOTTO were deployed](https://etherscan.io/tx/0xecfc4098d231e8f38e55f49c468a613f309b1c2e45a0b6cf1898801498bb63d2) for the airdrop. More info on the airdrop [here](https://docs.botto.com/details/token-distribution/airdrop).

## Base Network

### Base ERC20 Token Contract

[`0x24914cb6bd01e6a0cf2a9c0478e33c25926e6a0c`](https://app.uniswap.org/explore/tokens/base/0x24914cb6bd01e6a0cf2a9c0478e33c25926e6a0c)

Botto operates with a [OptimismMintableERC20Factory](https://docs.optimism.io/stack/smart-contracts#optimismmintableerc20factory) type of token contract for L2s on Base, allowing for standardized functionalities like transferring tokens, fetching account balances, spending approvals, and other functionality on Base.

You can also bridge your Mainnet ERC20 $BOTTO tokens to Base by [following this guide](https://botto.com/dao/article/base-bridging-guide).

### Base Governance Contract

[`0x8a7a5991aAf142B43E58253Bd6791e240084F0A9`](https://basescan.org/address/0x8a7a5991aAf142B43E58253Bd6791e240084F0A9)

The governance contract handles the `stake` and `unstake` function alongside events like `Staked`, `Unstaked`. In order to be able to contribute to training Botto's algorithm, users are required to use this contract to stake their BOTTO.

### Base Active Rewards Contract

[`0x19CD3998f106eCC40eE7668c19C47e18b491e8a6`](https://basescan.org/address/0x19CD3998f106eCC40eE7668c19C47e18b491e8a6)

The active rewards contract handles the `claim` function that allows eligible users to get their share of protocol revenue in ETH that is distributed weekly.
