workaround for broken cross-crate generic newtype structs