Oh wait, I forgot we couldn't impl the same trait twice for the same type :(