# Contracts

**Native Tokens**

```
// WGURU Token Contract
address constant WGURU = 0xc339E17eFD801724937A645B7e356CFA8be85279;
// Wrapped ETH Contract
address constant WETH = 0xd402ca8c735960dbb5a45975b51f7dc9f85f977e;
// Bridged USDC Contract
address constant USDC.e = 0xfbf7fD738DE150c147dcaA120be96d0aB27C5a9b;
```

#### Core Protocol Contracts <a href="#core-protocol-contracts" id="core-protocol-contracts"></a>

**Uniswap Integration**

Copy

```
// Factory Contract
address constant UNISWAP_V2_FACTORY = 0x01a43Ad6C4244F820d9238d37AEc4867854c1044;
// Router Contract
address constant UNISWAP_V2_ROUTER = 0xEf68B8853f1B79601617110218bA8aB14C077df2;
```

**Utility Contracts**

Copy

```
// Multicall3 Contract
address constant MULTICALL3 = 0x9dE69f908Daf532019d2DeF8f7344e6Fc872F0dc;
```

#### Integration Examples <a href="#integration-examples" id="integration-examples"></a>

**Router Configuration**

Copy

```
const ROUTER_CONFIG = {
  factory: '0x01a43Ad6C4244F820d9238d37AEc4867854c1044',
  router: '0xEf68B8853f1B79601617110218bA8aB14C077df2',
  wguru: '0xc339E17eFD801724937A645B7e356CFA8be85279'
};
```

**Liquidity Functions**

Copy

```
interface IUniswapV2Router {
    function addLiquidity(
        address tokenA,
        address tokenB,
        uint amountADesired,
        uint amountBDesired,
        uint amountAMin,
        uint amountBMin,
        address to,
        uint deadline
    ) external returns (uint amountA, uint amountB, uint liquidity);
}
```

[<br>](https://docs.gurunetwork.ai/guru-network-mainnet-launch-documentation/network-information)
