The call `ident(1, "a", true)` below is rejected with `'a' is not assignable to type '1'`. What does this demonstrate about how the inference engine handles multiple same-priority candidates passed as separate (rest) arguments?
declare function ident<T>(...xs: T[]): T;
const u = ident(1, "a", true);