add TypeCast class