# EVM Chain Nuances

## Gas prices[​](#gas-prices "Direct link to Gas prices")

Smart Wallet developers face challenges with varying EVM gas estimates. AbstractionKit provides flexibility through overrides.

Using the [createUserOperation](https://docs.candide.dev/wallet/abstractionkit/safe-account-v3/.md#createuseroperation) function, developers can pass their own values for `maxPriorityFeePerGas` and `maxFeePerGas`.

Gas Overrides example

```
const userOperation = await smartAccount.createUserOperation(

    [transaction],

    jsonRpcNodeProvider,

    bundlerUrl,

    {

        maxPriorityFeePerGas: 56139916666n,

        maxFeePerGas: 134386409498n, 

    }

)
```

### Polygon[​](#polygon "Direct link to Polygon")

Dealing with Polygon's occasional gas fee spikes poses challenges. AbstractionKit provides out of the box support for [Polygon's Gas Station API](https://docs.polygon.technology/tools/gas/polygon-gas-station/#mainnet) for reliable real-time gas prices. Opt for the 'Fast' fee prediction to add a multiplier during congestion to optimize transaction costs

Using the [createUserOperation](https://docs.candide.dev/wallet/abstractionkit/safe-account-v3/.md#createuseroperation) function, developers can pass select the polygon network and the gas multiplier.

Gas Overrides example

```
import { PolygonChain, GasOption } from "abstractionkit";



const userOperation = await smartAccount.createUserOperation(

    [transaction],

    jsonRpcNodeProvider,

    bundlerUrl,

    {

        gasLevel: GasOption.Fast, // Slow, Medium, Fast

        polygonGasStation: PolygonChain.Mainnet, // fetched from Polygon Gas Station

    }

)
```
