# Factory

### EthereumEventConfigurationFactory

#### **`deploy`**

Membuat contoh kontrak EthereumEventConfiguration.

```
function deploy(
        address _owner,
        IEthereumEventConfiguration.BasicConfiguration basicConfiguration,
        IEthereumEventConfiguration.EthereumEventConfiguration networkConfiguration
    ) external view reserveMinBalance(MIN_CONTRACT_BALANCE)
```

**Parameter:**

| Nama                 | Jenis                      | Deskripsi                                                                                       |
| -------------------- | -------------------------- | ----------------------------------------------------------------------------------------------- |
| \_owner              | address                    | Alamat pemilik konfigurasi acara                                                                |
| basicConfiguration   | BasicConfiguration         | Konfigurasi dasar untuk acara termasuk kode acara, saldo awal acara dll.                        |
| networkConfiguration | EthereumEventConfiguration | Konfigurasi acara ethereum, termasuk pengeluar acara, id chain, angka block awal dan akhir dll. |

#### **`deriveConfigurationAddress`**

Menginisialisasi keadaan dengan mengatur kontrak, konfigurasi dasar dan jaringan dan kode konfig dan alamat konfigurasi pengembalian berdasarkan keadaan yang diinisialisasi.

```
function deriveConfigurationAddress(
        IEthereumEventConfiguration.BasicConfiguration basicConfiguration,
        IEthereumEventConfiguration.EthereumEventConfiguration networkConfiguration
    ) external view returns(address)
```

**Parameter:**

| Nama                 | Jenis                      | Deskripsi                                                                                       |
| -------------------- | -------------------------- | ----------------------------------------------------------------------------------------------- |
| basicConfiguration   | BasicConfiguration         | Konfigurasi dasar untuk acara termasuk kode acara, saldo awal acara dll.                        |
| networkConfiguration | EthereumEventConfiguration | Konfigurasi acara ethereum, termasuk pengeluar acara, id chain, angka block awal dan akhir dll. |
| networkConfiguration | EthereumEventConfiguration | Konfigurasi acara ethereum, termasuk pengeluar acara, id chain, angka block awal dan akhir dll. |

**Nilai hasil:**

| Jenis   | Deskripsi          |
| ------- | ------------------ |
| address | Alamat konfigurasi |

### EverscaleEventConfigurationFactory

#### **`deploy`**

Membuat contoh kontrak baru EverscaleEventConfiguration.

function deploy( address \_owner, IEverscaleEventConfiguration.BasicConfiguration basicConfiguration, IEverscaleEventConfiguration.EverscaleEventConfiguration networkConfiguration ) external view reserveMinBalance(MIN\_CONTRACT\_BALANCE)

**Parameter:**

| Nama                 | Jenis                       | Deskripsi                                                                              |
| -------------------- | --------------------------- | -------------------------------------------------------------------------------------- |
| \_owner              | address                     | Alamat pemilik konfigurasi acara                                                       |
| basicConfiguration   | BasicConfiguration          | Konfigurasi dasar untuk acara termasuk kode acara, saldo awal acara dll.               |
| networkConfiguration | EverscaleEventConfiguration | Konfigurasi acara everscale, termasuk pengeluar acara, angka block awal dan akhir dll. |

#### **`deriveConfigurationAddress`**

Menginisialisasi keadaan dengan mengatur kontrak, konfigurasi dasar dan jaringan dan kode konfig dan alamat konfigurasi pengembalian berdasarkan keadaan yang diinisialisasi.

```
function deriveConfigurationAddress(
        IEverscaleEventConfiguration.BasicConfiguration basicConfiguration,
        IEverscaleEventConfiguration.EverscaleEventConfiguration networkConfiguration
    ) external view returns(address)
```

**Parameter:**

| Nama                 | Jenis                       | Deskripsi                                                                              |
| -------------------- | --------------------------- | -------------------------------------------------------------------------------------- |
| basicConfiguration   | BasicConfiguration          | Konfigurasi dasar untuk acara termasuk kode acara, saldo awal acara dll.               |
| networkConfiguration | EverscaleEventConfiguration | Konfigurasi acara everscale, termasuk pengeluar acara, angka block awal dan akhir dll. |

**Nilai hasil:**

| Jenis   | Deskripsi          |
| ------- | ------------------ |
| address | Alamat konfigurasi |

### ProxyTokenTransferFactory

#### **`deploy`**

Membuat contoh kontrak baru ProxyTokenTransfer.

```
function deploy(address _owner, uint _randomNonce) external reserveMinBalance(MIN_CONTRACT_BALANCE)
```

**Parameter:**

| Nama          | Jenis   | Deskripsi                                         |
| ------------- | ------- | ------------------------------------------------- |
| \_owner       | address | Alamat pemilik kontrak yang diluncurkan           |
| \_randomNonce | uint    | Nilai yang digunakan untuk membangun keadaan awal |

#### **`deriveProxyAddress`**

Menginisialisasi keadaan dengan mengatur kontrak, variabel dan kode proxy dan mengembalikan alamat proxy berdasarkan keadaan yang diinisialisasi.

```
function deriveProxyAddress(
        uint _randomNonce
    ) external view returns(address)
```

**Parameter:**

| Nama          | Jenis | Deskripsi                                         |
| ------------- | ----- | ------------------------------------------------- |
| \_randomNonce | uint  | Nilai yang digunakan untuk membangun keadaan awal |

**Nilai hasil:**

| Jenis   | Deskripsi                                        |
| ------- | ------------------------------------------------ |
| address | Alamat proxy yang digunakan untuk transfer token |
