if you really need this, let's do it this way:
```scala
class InjectiveSerializer[T, U](original: Serializer[U])(implicit injection: Injection[T, U]) extends Serializer[T] {
  // now use the injection to convert to U, and then call the method or original.
}
```
That will work automatically for java.lang.Long to unboxed long, etc… as you have below. Do it once.