pub type ReduceOp<Source, BinaryOp, OutputItem> = DefaultIfEmptyOp<LastOp<ScanOp<Source, BinaryOp, OutputItem>, OutputItem>>;