fix ambiguous ?? operator