added in type casting