docs: private Object getField(Object object, Field f) {
          f.setAccessible(true);
          try {
              return f.get(object);
          } catch (Exception e) {
              throw new RuntimeException(e.getMessage(), e);
          }
      }