> For the complete documentation index, see [llms.txt](https://fluxion-network.gitbook.io/fluxion-network/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://fluxion-network.gitbook.io/fluxion-network/developer-resources/technical-overview-and-api/amm-v3-weth.md).

# amm v3 weth

## Overview

Wrapped native Mantle token with an ERC-20 style interface plus deposit and withdraw entrypoints.

* Contract name: `WMANTLE`
* Address: `0x78c1b0c915c4faa5fffa6cabf0219da63d7f4cb8`
* Network: Mantle Mainnet (`chainId 5000`)
* Explorer: [`Mantle Explorer`](https://explorer.mantle.xyz/address/0x78c1b0c915c4faa5fffa6cabf0219da63d7f4cb8)
* Explorer API: [`smart-contract payload`](https://explorer.mantle.xyz/api/v2/smart-contracts/0x78c1b0c915c4faa5fffa6cabf0219da63d7f4cb8)

***

## Read Functions

### allowance

```solidity
function allowance(address owner, address spender) external view returns (uint256 return0)
```

Returns the remaining amount that `spender` is allowed to spend on behalf of `owner`.

Parameters

| Name      | Type      | Description                |
| --------- | --------- | -------------------------- |
| `owner`   | `address` | Not documented in NatSpec. |
| `spender` | `address` | Not documented in NatSpec. |

Return Values

| Name      | Type      | Description                |
| --------- | --------- | -------------------------- |
| `return0` | `uint256` | Not documented in NatSpec. |

***

### balanceOf

```solidity
function balanceOf(address account) external view returns (uint256 return0)
```

Returns the token balance held by `account`.

Parameters

| Name      | Type      | Description                |
| --------- | --------- | -------------------------- |
| `account` | `address` | Not documented in NatSpec. |

Return Values

| Name      | Type      | Description                |
| --------- | --------- | -------------------------- |
| `return0` | `uint256` | Not documented in NatSpec. |

***

### decimals

```solidity
function decimals() external view returns (uint8 return0)
```

Returns the number of decimals used by the token.

This function does not take parameters.

Return Values

| Name      | Type    | Description                |
| --------- | ------- | -------------------------- |
| `return0` | `uint8` | Not documented in NatSpec. |

***

### name

```solidity
function name() external view returns (string return0)
```

Returns the token name.

This function does not take parameters.

Return Values

| Name      | Type     | Description                |
| --------- | -------- | -------------------------- |
| `return0` | `string` | Not documented in NatSpec. |

***

### symbol

```solidity
function symbol() external view returns (string return0)
```

Returns the token symbol.

This function does not take parameters.

Return Values

| Name      | Type     | Description                |
| --------- | -------- | -------------------------- |
| `return0` | `string` | Not documented in NatSpec. |

***

### totalSupply

```solidity
function totalSupply() external view returns (uint256 return0)
```

Returns the total wrapped token supply.

This function does not take parameters.

Return Values

| Name      | Type      | Description                |
| --------- | --------- | -------------------------- |
| `return0` | `uint256` | Not documented in NatSpec. |

***

## Write Functions

### approve

```solidity
function approve(address spender, uint256 amount) external returns (bool return0)
```

Sets the token allowance for `spender`.

Parameters

| Name      | Type      | Description                |
| --------- | --------- | -------------------------- |
| `spender` | `address` | Not documented in NatSpec. |
| `amount`  | `uint256` | Not documented in NatSpec. |

Return Values

| Name      | Type   | Description                |
| --------- | ------ | -------------------------- |
| `return0` | `bool` | Not documented in NatSpec. |

***

### decreaseAllowance

```solidity
function decreaseAllowance(address spender, uint256 subtractedValue) external returns (bool return0)
```

Reduces the current token allowance for `spender`.

Parameters

| Name              | Type      | Description                |
| ----------------- | --------- | -------------------------- |
| `spender`         | `address` | Not documented in NatSpec. |
| `subtractedValue` | `uint256` | Not documented in NatSpec. |

Return Values

| Name      | Type   | Description                |
| --------- | ------ | -------------------------- |
| `return0` | `bool` | Not documented in NatSpec. |

***

### deposit

```solidity
function deposit() external payable
```

Wraps native MNT into the token contract.

This function does not take parameters and does not return a value.

***

### increaseAllowance

```solidity
function increaseAllowance(address spender, uint256 addedValue) external returns (bool return0)
```

Increases the current token allowance for `spender`.

Parameters

| Name         | Type      | Description                |
| ------------ | --------- | -------------------------- |
| `spender`    | `address` | Not documented in NatSpec. |
| `addedValue` | `uint256` | Not documented in NatSpec. |

Return Values

| Name      | Type   | Description                |
| --------- | ------ | -------------------------- |
| `return0` | `bool` | Not documented in NatSpec. |

***

### transfer

```solidity
function transfer(address recipient, uint256 amount) external returns (bool return0)
```

Transfers tokens to `recipient`.

Parameters

| Name        | Type      | Description                |
| ----------- | --------- | -------------------------- |
| `recipient` | `address` | Not documented in NatSpec. |
| `amount`    | `uint256` | Not documented in NatSpec. |

Return Values

| Name      | Type   | Description                |
| --------- | ------ | -------------------------- |
| `return0` | `bool` | Not documented in NatSpec. |

***

### transferFrom

```solidity
function transferFrom(address sender, address recipient, uint256 amount) external returns (bool return0)
```

Transfers tokens from `sender` to `recipient` using the caller's allowance.

Parameters

| Name        | Type      | Description                |
| ----------- | --------- | -------------------------- |
| `sender`    | `address` | Not documented in NatSpec. |
| `recipient` | `address` | Not documented in NatSpec. |
| `amount`    | `uint256` | Not documented in NatSpec. |

Return Values

| Name      | Type   | Description                |
| --------- | ------ | -------------------------- |
| `return0` | `bool` | Not documented in NatSpec. |

***

### withdraw

```solidity
function withdraw(uint256 _amount) external
```

Unwraps the wrapped token back into native MNT.

Parameters

| Name      | Type      | Description                |
| --------- | --------- | -------------------------- |
| `_amount` | `uint256` | Not documented in NatSpec. |

This function does not return a value.
