type casting and coercion