GeneralCast now supports two cast() methods