{motive : Std.CancellationToken.Consumer → Sort u} →
  (t : Std.CancellationToken.Consumer) →
    ((promise : IO.Promise Unit) → motive (Std.CancellationToken.Consumer.normal promise)) →
      ((finished : Std.Internal.IO.Async.Waiter Unit) → motive (Std.CancellationToken.Consumer.select finished)) →
        motive t