docs: private E createUsingStaticCreateMethod() throws CheckedAnalysisException {
          Method createMethod;
          try {
              createMethod = databaseClass.getMethod("create", new Class[0]);
          } catch (NoSuchMethodException e) {
              return null;
          }
  
          if (!Modifier.isStatic(createMethod.getModifiers())) {
              return null;
          }
  
          if (createMethod.getReturnType() != databaseClass) {
              return null;
          }
  
          try {
              return databaseClass.cast(createMethod.invoke(null, new Object[0]));
          } catch (InvocationTargetException e) {
              throw new CheckedAnalysisException("Could not create " + databaseClass.getName(), e);
          } catch (IllegalAccessException e) {
              throw new CheckedAnalysisException("Could not create " + databaseClass.getName(), e);
          }
      }