with

abstract fun with(    event: T = this.event,     predicate: (Context<T>) -> Boolean = this.predicate,     nextHandlers: Array<Handler<T>> = this.nextHandlers,     nextHandler: Int = this.nextHandler,     exception: Exception? = this.exception,     attributes: Map<*, *> = this.attributes,     handled: Boolean = this.handled): Context<T>