> For the complete documentation index, see [llms.txt](https://yuga.gitbook.io/zkyuga-whitepaper/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://yuga.gitbook.io/zkyuga-whitepaper/developer-guide/erc20/unpause.md).

# unpause

The `unpause` function is commonly utilized in Pausable smart contracts within the Ethereum ecosystem. It allows specifically authorized accounts, often the contract owner or designated administrators, to resume the contract's operations after they have been temporarily halted. This ensures that normal contract functionalities can continue, which is particularly beneficial in emergent scenarios where pausing the contract is necessary to address issues.

### Function Signature

```javascript
async unpause(signer: WalletSigner): Promise<string>
```

#### Parameters

| Parameter | Type         | Description                                                                                                                                                             |
| --------- | ------------ | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| signer    | WalletSigner | The wallet signer instance responsible for signing the transaction. This signer should correspond to an authorized account permitted to execute the `unpause` function. |

#### Returns

* A `Promise` resolving to a `string` representing the transaction hash of the executed unpause operation.

### Usage Example

Ensure that the smart contract containing the `unpause` function is instantiated correctly. Then, utilize the `unpause` function with the designated signer:

```javascript
const signer = zkyugaClient.createWalletSigner("your private key");

const transactionHash = await contractInstance.unpause(signer);
console.log(`Transaction Hash for Unpause Operation: ${transactionHash}`);
```

### Considerations

* Only authorized accounts, as specified within the smart contract, can successfully call the unpause function. Unauthorized attempts will typically result in a transaction revert.
* Due to its critical nature, it's advisable to thoroughly test the unpause functionality in a testnet or sandbox environment before executing it on the mainnet.
* Exercise caution when handling private keys. When utilizing the signer, ensure it's within a secure context and refrain from exposing private keys in insecure environments.

***
