uses
  Math;
const
  maxn = 100000;
var
  n, mp, i, ma : integer;
  m : array[1..maxn] of integer;
begin
  reset(input, 'sorting.in');
  rewrite(output, 'sorting.out');
  read(n, mp);
  for i := 1 to n do begin
    read(m[i]);
  end;
  ma := m[1];
  for i := 2 to n do begin
    if (m[i] < ma) and (m[i] + ma > mp) then begin
      writeln('No');
      halt;
    end;
    ma := max(ma, m[i]);
  end;
  writeln('Yes');
end.