combine

fun <A : Input, B, C> combine(    other: Schedule<A, B>,     zipContinue: (cont: Boolean, otherCont: Boolean) -> Boolean,     zipDuration: (duration: Duration, otherDuration: Duration) -> Duration,     zip: (Output, B) -> C): Schedule<A, C>

Combines with another schedule by combining the result and the delay of the Decision with the zipContinue, zipDuration and a zip functions