docs: private static boolean isLogicalMapType(Type groupType)
    {
      OriginalType ot = groupType.getOriginalType();
      if (groupType.isPrimitive() || ot == null || groupType.isRepetition(Type.Repetition.REPEATED)) {
        return false;
      }
      if (groupType.getOriginalType().equals(OriginalType.MAP) ||
          groupType.getOriginalType().equals(OriginalType.MAP_KEY_VALUE)) {
        GroupType myMapType = groupType.asGroupType();
        if (myMapType.getFieldCount() != 1 || myMapType.getFields().get(0).isPrimitive()) {
          return false;
        }
        GroupType mapItemType = myMapType.getFields().get(0).asGroupType();
        return mapItemType.isRepetition(Type.Repetition.REPEATED) &&
               mapItemType.getFieldCount() == 2 &&
               mapItemType.getFields().get(0).getName().equalsIgnoreCase("key") &&
               mapItemType.getFields().get(0).isPrimitive() &&
               mapItemType.getFields().get(1).getName().equalsIgnoreCase("value");
      }
      return false;
    }