# MapFieldCopier&lt;TKey, TValue&gt; Methods

[Type overview](/orleans/docs/api/csharp/microsoft.orleans.serialization.protobuf/orleans.serialization.mapfieldcopier-2/)

## DeepCopy(MapField&lt;TKey, TValue&gt;, CopyContext) {#deepcopy-google-protobuf-collections-mapfield-tkey-tvalue-orleans-serialization-aa26c01d}

[Dedicated page](/orleans/docs/api/csharp/microsoft.orleans.serialization.protobuf/orleans.serialization.mapfieldcopier-2/methods/deepcopy-google-protobuf-collections-mapfield-tkey-tvalue-orleans-serialization-aa26c01d/)

[Source](https://github.com/dotnet/orleans/blob/e4e752cedecc2976811db49802c7a999b1f1c704/src/Serializers/Orleans.Serialization.Protobuf/MapFieldCopier.cs#L32-L49)

```csharp
public MapField<TKey, TValue> MapFieldCopier<TKey, DeepCopy(MapField<TKey, TValue> input, CopyContext context)
```

Creates a deep copy of the provided input.

### Parameters

- `input` (`MapField<TKey, TValue>`): The input.
- `context` (`CopyContext`): The context.

### Returns

A copy of `input`.

## DeepCopy(MapField&lt;TKey, TValue&gt;, MapField&lt;TKey, TValue&gt;, CopyContext) {#deepcopy-google-protobuf-collections-mapfield-tkey-tvalue-google-protobuf-collec-384558ec}

[Dedicated page](/orleans/docs/api/csharp/microsoft.orleans.serialization.protobuf/orleans.serialization.mapfieldcopier-2/methods/deepcopy-google-protobuf-collections-mapfield-tkey-tvalue-google-protobuf-collec-384558ec/)

[Source](https://github.com/dotnet/orleans/blob/e4e752cedecc2976811db49802c7a999b1f1c704/src/Serializers/Orleans.Serialization.Protobuf/MapFieldCopier.cs#L55-L59)

```csharp
public void MapFieldCopier<TKey, DeepCopy(MapField<TKey, TValue> input, MapField<TKey, TValue> output, CopyContext context)
```

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

### Parameters

- `input` (`MapField<TKey, TValue>`): The input.
- `output` (`MapField<TKey, TValue>`): The output.
- `context` (`CopyContext`): The context.
