coalesce identical types