Self (@NotNull Key<? super T> key) { return with(new PatternCondition<T>("save") { @Override public boolean accepts(final @NotNull T t, final ProcessingContext context) { context.put(key, t); return true; } }); }