A simple example of this is: ```rust trait Foo { type Bar; } impl Foo for usize { type Bar = u8; } impl<T: Foo> Foo for Option<T> { type Bar = Option<T::Bar>; } ``` [here is the playground link](https://play.rust-lang.org/?gist=733c15b6881eb762c0cd4c50b6970ebe&version=undefined&mode=undefined).