the problem with optional pins is you still have to give a type. You can't have "just None lol", you must have `Option<u32>::None` or `Option<MyPin>::None` or whatever. so if you do ```rust struct Bus<T: OutputPin> { bar: Option<T>, } let bus = Bus::new(None); ``` the compiler can't infer what type `T` is. so you get these "type annotations needed" errors