related: https://doc.rust-lang.org/nomicon/vec/vec.html
Oh, I never knew that Rust had variance. I always just assumed everything was invariant. Strange that they've got no way to write it down in the type system.
Lifetimes imply the need for the idea of variance.