pub trait AABB: Copy { type V2: Vec2; fn ll(&self) -> Self::V2; fn ur(&self) -> Self::V2; fn intersects(&self, b: &Self) -> bool { ... } }