pub trait Upcast<T> { }
Marker trait indicating that an encoded value of Self can be decoded as a T.
Self
T