S1
is a proper subsequence of
S2
(comparing the conversion sequences in the canonical form defined
by [over.ics.scs], excluding any Lvalue Transformation;
the identity conversion sequence is considered to be a
subsequence of any non-identity conversion sequence)
or, if not that,

S1 and S2 are reference bindings and
neither refers to an implicit object parameter of a non-static member function
declared without a ref-qualifier,
and S1 binds an rvalue reference to an
rvalue and S2 binds an lvalue reference

S1
and
S2
differ only in their qualification conversion and yield similar typesT1
and
T2, respectively, and the cv-qualification signature of type
T1
is a proper subset of the cv-qualification signature of type
T2

S1
and
S2
are reference bindings, and the types to which the references
refer are the same type except for top-level cv-qualifiers, and the type to
which the reference initialized by
S2
refers is more cv-qualified than the type to which the reference initialized by
S1
refers.

User-defined conversion sequence
U1
is a better conversion sequence than another user-defined conversion
sequence
U2
if they contain the same user-defined conversion function or
constructor or they initialize the same class in an aggregate
initialization and in either case the second standard conversion
sequence of
U1
is better than
the second standard conversion sequence of
U2.

Compared conversion sequences will have different source types only in the
context of comparing the second standard conversion sequence of an
initialization by user-defined conversion (see [over.match.best]); in
all other contexts, the source types will be the same and the target
types will be different.