collectFirst0, scanLeft0, scanRight0