# FSharpChoiceCopier&lt;T1, T2, T3&gt; Constructors

[Type overview](/orleans/docs/api/csharp/microsoft.orleans.serialization.fsharp/orleans.serialization.fsharpchoicecopier-3/)

## FSharpChoiceCopier&lt;T1, T2, T3&gt;(IDeepCopier&lt;T1&gt;, IDeepCopier&lt;T2&gt;, IDeepCopier&lt;T3&gt;) {#constructor-orleans-serialization-cloning-ideepcopier-t1-orleans-serialization-c-a7701ef6}

[Dedicated page](/orleans/docs/api/csharp/microsoft.orleans.serialization.fsharp/orleans.serialization.fsharpchoicecopier-3/constructors/constructor-orleans-serialization-cloning-ideepcopier-t1-orleans-serialization-c-a7701ef6/)

[Source](https://github.com/dotnet/orleans/blob/e4e752cedecc2976811db49802c7a999b1f1c704/src/Orleans.Serialization.FSharp/FSharpCodecs.cs#L435-L443)

```csharp
public FSharpChoiceCopier<T1, T2, FSharpChoiceCopier(IDeepCopier<T1> copier1, IDeepCopier<T2> copier2, IDeepCopier<T3> copier3)
```

### Parameters

- `copier1` (`IDeepCopier<T1>`)
- `copier2` (`IDeepCopier<T2>`)
- `copier3` (`IDeepCopier<T3>`)
