code: @NonNull
      public static <T> Bundle saveInstanceState(@NonNull T obj, @Nullable Bundle outState) {
          if (outState == null) {
              outState = new Bundle();
          }
          return new InstanceStateManager<>(obj).saveState(outState);
      }
docs: Saving instance state of the given {@code obj} into {@code outState}.<br/>
  Supposed to be called from
  {@link android.app.Activity#onSaveInstanceState(android.os.Bundle)} or
  {@link android.app.Fragment#onSaveInstanceState(android.os.Bundle)}.<br/>
  Activity or Fragment itself can be used as {@code obj} parameter.