# Instantiate Circuit

### Instantiate SDK:

{% hint style="info" %}
Minting a PKP requires an ethers signer with LIT Tokens on the <mark style="background-color:yellow;">Chronicle Lit Rollup network</mark>. If you only need to generate Lit Action code then an ethers signer object is not necessary.
{% endhint %}

{% code overflow="wrap" fullWidth="true" %}

```typescript
import { ethers } from "ethers";
import { Circuit } from "lit-listener-sdk";

const chronicleProvider = new ethers.providers.JsonRpcProvider("https://chain-rpc.litprotocol.com/http", 175177);
const chronicleSigner = new ethers.Wallet(YOUR_PRIVATE_KEY, chronicleProvider);

const newCircuit = new Circuit(chronicleSigner);
```

{% endcode %}

The `signer` is an optional constructor parameter. If you are minting a PKP then you must set a `signer` with a Provider compatible with the Lit Chronicle Network, you can use the standard RPC URL found [here](https://developer.litprotocol.com/intro/rollup/#connecting-to-chronicle). You can also optionally pass in the PKP Contract to mint from if it is not `0x8F75a53F65e31DD0D2e40d0827becAaE2299D111`.
