```rust trait MyPrimeCurve: PrimeCurve where SignatureSize: ArrayLength {} impl MyPrimeCurve for T where T: PrimeCurve, SignatureSize: ArrayLength {} trait Foo { type Curve: MyPrimeCurve; }