# Advanced Use

The SDK’s core functionality was built around certain work flows but we understand the need to go above and beyond. You can import all of our contract ABIs, and the addresses of said contracts on all of our supported networks.

You can see what contract and functions the SDK methods are utilizing in the documentation above.

*(B) means we provide the non-B and B versions aka V1 and V2 respectively*

ABIs Provided:

* chargedParticles
* chargedSettings
* chargedState
* chargedManagers
* proton(B)
* aaveWalletManager(B)
* genericWalletManager(B)
* genericBasketManager(B)

We also provide the contract locations (address + start block) for: Mainnet, Kovan, Polygon, Mumbai

### Example Usage

```jsx
import { ethers } from 'ethers';
import { mainnetAddresses, chargedParticlesAbi } from '@charged-particles/sdk';

const contract = new ethers.Contract(
	mainnet.chargedParticles.address,
	chargedParticlesAbi,
	ethers.getDefaultProvider()
);

const result = contract.getStateAddress();
console.log(result);
// 0x48974C6ae5A0A25565b0096cE3c81395f604140f
console.log(result == mainnetAddresses.chargedState.address);
// true
```

### Network Object Structure

When looking for the contract’s address you will need to specify network, contract name, and then address or start block.

```jsx
mainnetAddresses {
	chargedParticles: {
		address: 'xxx',
		startBlock: 'xxx',
	}
	// ... 
}
```


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.charged.fi/sdk/advanced-use.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
