# Copier_JoinAttributionGrain Methods

[Type overview](/orleans/docs/api/csharp/microsoft.orleans.transactions.testkit.base/orleanscodegen.orleans.transactions.testkit.transactionattributiongrainextensions.copier-joinattributiongrain/)

## DeepCopy(JoinAttributionGrain, CopyContext) {#deepcopy-orleans-transactions-testkit-transactionattributiongrainextensions-join-d3641edd}

[Dedicated page](/orleans/docs/api/csharp/microsoft.orleans.transactions.testkit.base/orleanscodegen.orleans.transactions.testkit.transactionattributiongrainextensions.copier-joinattributiongrain/methods/deepcopy-orleans-transactions-testkit-transactionattributiongrainextensions-join-d3641edd/)

```csharp
public JoinAttributionGrain DeepCopy(JoinAttributionGrain original, CopyContext context)
```

Creates a deep copy of the provided input.

### Parameters

- `original` (`JoinAttributionGrain`): The input.
- `context` (`CopyContext`): The context.

### Returns

A copy of `input`.

## DeepCopy(JoinAttributionGrain, JoinAttributionGrain, CopyContext) {#deepcopy-orleans-transactions-testkit-transactionattributiongrainextensions-join-5d118265}

[Dedicated page](/orleans/docs/api/csharp/microsoft.orleans.transactions.testkit.base/orleanscodegen.orleans.transactions.testkit.transactionattributiongrainextensions.copier-joinattributiongrain/methods/deepcopy-orleans-transactions-testkit-transactionattributiongrainextensions-join-5d118265/)

```csharp
public void DeepCopy(JoinAttributionGrain input, JoinAttributionGrain output, CopyContext context)
```

Clones members from `input` and copies them to `output`.

### Parameters

- `input` (`JoinAttributionGrain`): The input.
- `output` (`JoinAttributionGrain`): The output.
- `context` (`CopyContext`): The context.
