# `GSGlyph mastersCompatibleForLayerIds:options:`

*Instance Method*

Whether selected aspects of the specified layers have matching structure.

## Declaration

```swift
func mastersCompatible(forLayerIds fontMasterIds: [String], options: GSLayerCompareFlags) -> Bool
```

```objc
- (BOOL) mastersCompatibleForLayerIds:(NSArray<NSString *> *) fontMasterIds options:(GSLayerCompareFlags) options;
```

```python
mastersCompatibleForLayerIds_options_(fontMasterIds: list[str], options: GSLayerCompareFlags) -> bool
```

## Parameters

- `fontMasterIds` — The layer identifiers to compare.
- `options` — The aspects of the layers to compare.

## Discussion

The first layer establishes the required structure. Inactive subsequent layers do not affect the result.

## See Also

### Layer Compatibility

- [`GSGlyph mastersCompatible`](/Core/GlyphsCore/GSGlyph/mastersCompatible) — Whether every layer group has matching structure for interpolation.
- [`GSGlyph mastersCompatibleForLayers:`](/Core/GlyphsCore/GSGlyph/mastersCompatibleForLayers:) — Whether the layers have matching shapes, anchor names, and path-component hints.
- [`GSGlyph mastersCompatibleForLayerIds:`](/Core/GlyphsCore/GSGlyph/mastersCompatibleForLayerIds:) — Whether the specified layers have matching shapes, anchor names, and path-component hints.
- [`GSGlyph resetMasterCompatibilityCheckStatus`](/Core/GlyphsCore/GSGlyph/resetMasterCompatibilityCheckStatus) — Marks layer compatibility for reevaluation.
- [`GSGlyph removeIncompatibleLayerContent:options:`](/Core/GlyphsCore/GSGlyph/removeIncompatibleLayerContent:options:) — Clears the shapes of active layers whose selected aspects do not match the first layer.

