code: protected Object run(A a, B b, C c, D d) throws Throwable {
          throw notImplemented("run(A, B, C, D)");
      }
docs: Executes the proc.
  @param a
  @param b
  @param c
  @param d
  @return result
  @throws Throwable