pub trait SplitInto<R, S> { fn split_into(input: &Self) -> (&R, &S); fn split_into_mut(input: &mut Self) -> (&mut R, &mut S); }