import std.stdio, std.conv, std.string;
import std.array, std.range, std.algorithm, std.container;
import std.math, std.random, std.bigint, std.datetime, std.format;
string read(){ static string[] ss; while(!ss.length) ss = readln.chomp.split; string res = ss[0]; ss.popFront; return res; }

void main(){
  
 int n = read.to!int;
 int x = read.to!int;
    
 if(x == 1 || x == 2 * n - 1){
  "No".writeln;
  return;
 }
    
 "Yes".writeln;
    
 int[] ans;
 int a = (n + x) % (2 * n - 1);
 foreach(i; a .. n * 2) ans ~= i;
 foreach(i; 1 .. a) ans ~= i;
    
 ans.map!(to!string).array.join(" ").writeln;
}