fn really_cast<C>(c: C, cast_type: &Type) -> Option<Value>where
C: Cast<SvmAddress> + Cast<SvmField> + Cast<SvmGroup> + Cast<SvmBoolean> + Cast<SvmScalar> + Cast<SvmInteger<u8>> + Cast<SvmInteger<u16>> + Cast<SvmInteger<u32>> + Cast<SvmInteger<u64>> + Cast<SvmInteger<u128>> + Cast<SvmInteger<i8>> + Cast<SvmInteger<i16>> + Cast<SvmInteger<i32>> + Cast<SvmInteger<i64>> + Cast<SvmInteger<i128>>,