If I try to write an impl like this: ``` impl Thing where T: Foo { fn new(foo: T) -> Thing { Thing { foo: foo } } } ``` I get that `F` is unconstrained