code: public <E extends Enum<?>> CLocLogger<E> getClassLogger(int i) {
          if (i < 0) {
              throw new IllegalArgumentException("Expected value >= 0, got " + i);
          }
          return getLogger(slfLogger(i+1));
      }
docs: Chooses a logger based on the class name of the caller of this method.
  {@code i == 0} identifies the caller of this method, for {@code i > 0},
  the stack is walked upwards.
  @param i
  @return a logger