pub trait Split<Selection, Indices>: Sized {
type Remainder;
fn split(self) -> Result<Selection, Self::Remainder>;
}
pub trait Split<Selection, Indices>: Sized {
type Remainder;
fn split(self) -> Result<Selection, Self::Remainder>;
}