coercion for generic operations