# PinRepair enum

Namespace: [Grasshopper2.Parameters](https://developer.rhino3d.com/api/gh2/namespace/grasshopper2.parameters.md) · Assembly: [Grasshopper2](https://developer.rhino3d.com/api/gh2/assembly/grasshopper2.md)

```cs
[Flags]
public enum PinRepair
```

Enumerates the possible repair methods for mismatched pin+cushion relationships.

## Values

| Name | Value | Description |
| --- | --- | --- |
| None | 0 |  |
| MarryFreePins | 1 | If a cushion references an available pin, the pin will be reattached. This flag is not compatible with [PinRepair.DivorceFreePins](https://developer.rhino3d.com/api/gh2/type/grasshopper2.parameters.pinrepair.md). |
| MarryFreeCushions | 2 | If a pin references a cushion with an available slot, the pin will be reattached. This flag is not compatible with [PinRepair.DivorceFreeCushions](https://developer.rhino3d.com/api/gh2/type/grasshopper2.parameters.pinrepair.md). |
| DivorceFreePins | 4 | If a cushion references a free pin, the reference will be removed. This flag is not compatible with [PinRepair.MarryFreePins](https://developer.rhino3d.com/api/gh2/type/grasshopper2.parameters.pinrepair.md). |
| DivorceFreeCushions | 8 | If a pin references a cushion with an available slot, the reference will be removed. This flag is not compatible with [PinRepair.MarryFreeCushions](https://developer.rhino3d.com/api/gh2/type/grasshopper2.parameters.pinrepair.md). |
| DivorceTakenPins | 16 | If a cushion references a taken pin, the reference will be removed. |
| DivorceTakenCushions | 32 | If a pin references a cushion without an available slot, the reference will be removed. |
| ForgetMissingPartners | 64 | All references from either pins or cushions to missing objects will be removed. |
| Default | 115 | Default set of repair methods. |
