docs: public static <T> Method getMethod(Class<T> c, String name, Class<?>... argTypes) {
          try {
              return c.getMethod(name, argTypes);
          } catch(NoSuchMethodException e) {
              throw new IllegalArgumentException(e);
          }
      }