protected ListingField getField(String fieldName, int occurrence, final BigInteger index,
			FieldPanel fieldPanel) {

		if (fieldName == null) {
			return null;
		}

		LayoutModel model = fieldPanel.getLayoutModel();
		Layout layout = model.getLayout(index);
		if (layout == null) {
			return null;
		}

		int instanceNum = 1;
		for (int i = 0; i < layout.getNumFields(); i++) {
			Field f = layout.getField(i);
			if ((f instanceof ListingField bf) &&
				bf.getFieldFactory().getFieldName().equals(fieldName)) {
				if (instanceNum++ == occurrence) {
					return bf;
				}
			}
		}
		return null;
	}
Returns a field by the given name at the given address.   Clients can use the convention
that field factory classes specify a public static field named 'FIELD_NAME' to choose the
desired field name.
<p>
Note: you will have to perform a {@code goTo()} to trigger the view to load the given field.

@param a the address
@param fieldName the field name
@return the field
Ghidra/Features/Base/src/main/java/ghidra/test/AbstractProgramBasedTest.java