# Bir Akıllı Kontratı düzleştirin

Akıllı sözleşmeyi düzleştirme, ana sözleşmeyi tüm bağımlılıklarıyla (arayüzler, kütüphaneler, miras alınan sözleşmeler) tek bir bağımsız `.sol` dosyasında birleştirme sürecidir. Bu, dağıtılmış sözleşmeyi doğrulamayı çok daha kolay hale getirir.

{% hint style="info" %}
Sözleşmenizi dağıtmak için düzleştirmenize gerek yoktur.&#x20;

Düzleştirme öncelikle kaynağınızı bir gezginde doğrulamak için kullanılan dağıtım sonrası bir adımdır.
{% endhint %}

Chiliz Chain bir EVM-uyumlu blok zinciri olduğundan, bir sözleşmeyi düzleştirmek için birkaç araç mevcuttur.&#x20;

{% hint style="info" %}
Orijinal dosyalarınızdan dağıtım yapıp ardından tüm sözleşmeyi doğrulamak için düzleştirirseniz, derleme ayarlarında hiçbir şeyin değişmediğinden emin olmalısınız.

Aksi takdirde "Bytecode mismatch" türünde bir hata alma riskiniz olur ve doğrulama başarısız olur.
{% endhint %}

## Remix IDE ile düzleştirme

Dosya Gezgini'nde ana sözleşmenize sağ tıklayın ve menüden "Flatten" öğesini seçin.

<figure><img src="https://2155691341-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F4L7rBH2rmyoBTn93MSdx%2Fuploads%2FDosUVE90Zlvkm7XJ8vvX%2FScreenshot%202026-01-09%20at%2015.18.06.png?alt=media&#x26;token=83bce594-98c4-4872-b7ce-752ecbc5a4b7" alt="" width="375"><figcaption></figcaption></figure>

Remix bir `CONTRACT_flattened.sol` sözleşmesini klasörünüzde oluşturacaktır.

## Hardhat ile düzleştirme

Aşağıdaki satırı iş akışınıza uyarlayın:

```bash
npx hardhat flatten contracts/MyContract.sol > Flattened.sol
```

{% hint style="warning" %}
Düzleştirilmiş bir sözleşme binlerce satır uzunluğunda olabileceğinden, gerçek geliştirme ve bakım için kötüdürler.

Bunlar yalnızca gerektiğinde, örneğin dağıtılmış sözleşmeyi doğrularken üretilmelidir.
{% endhint %}
