# CCIP v1.6.1 BurnMintTokenPoolAbstract Contract API Reference
Source: https://docs.chain.link/ccip/api-reference/evm/v1.6.1/burn-mint-token-pool-abstract

> For the complete documentation index, see [llms.txt](/llms.txt).

> **NOTE: Integrate Chainlink CCIP v1.6.1 into your project**

## BurnMintTokenPoolAbstract

An abstract contract that implements core token pool functionality for burning and minting operations in cross-chain token transfers.

[Git Source](https://github.com/smartcontractkit/chainlink-ccip/tree/contracts-ccip-v1.6.1/chains/evm/contracts/pools/BurnMintTokenPoolAbstract.sol)

**Inherits:**

- [TokenPool](/ccip/api-reference/evm/v1.6.1/token-pool)

## Functions

### \_releaseOrMint

Internal function that implements the token minting logic for a `BurnMintTokenPool`.

```solidity
function _releaseOrMint(address receiver, uint256 amount) internal virtual override;
```

> **NOTE**
>
> Overrides the virtual [`_releaseOrMint`](/ccip/api-reference/evm/v1.6.1/token-pool#_releaseormint) function from the base `TokenPool` contract:
>
> - Provides the specific "mint" implementation for the `BurnMintTokenPool`.
> - Calls the token's `mint(receiver, amount)` function directly.

**Parameters**

| Name       | Type      | Description                       |
| ---------- | --------- | --------------------------------- |
| `receiver` | `address` | The address to receive the tokens |
| `amount`   | `uint256` | The number of tokens to mint      |