code: protected final T covariantReturn() {
          try {
              return this.getActualClass().cast(this);
          } catch (final ClassCastException cce) {
              log.log(Level.SEVERE,
                  "The class specified by getActualClass is not a valid assignment target for this instance;"
                      + " developer error");
              throw cce;
          }
      }
docs: Provides typesafe covariant return of this instance