# IDeepCopier.DeepCopy(object?, CopyContext)

[Type overview](/orleans/docs/api/csharp/microsoft.orleans.serialization/orleans.serialization.cloning.ideepcopier/) | [Methods](/orleans/docs/api/csharp/microsoft.orleans.serialization/orleans.serialization.cloning.ideepcopier/methods/)

```csharp
public abstract object? DeepCopy(object? input, CopyContext context)
```

Creates a deep copy of the provided untyped input. The type must still match the copier instance!

### Parameters

- `input` (`object?`)
- `context` (`CopyContext`)
