pub union Union2<'a, B: ?Sized + ToOwned<dyn Clone> + 'a> {
    /* private fields */
}