import Control.Applicative

main = do
  [n,x] <- map read.words <$> getLine :: IO [Int]
  let m = 2*n-1
  if n == 2
    then if x == 2 then putStrLn "Yes 1 2 3" else putStrLn "No"
    else
      case n-x of
        0  -> putStr $ unlines $ ("Yes":) $ map show [1..m]
        1  -> putStr $ unlines $ ("Yes":) $ map show (m:2:1:[3..(m-1)])
        -1 -> putStr $ unlines $ ("Yes":) $ map show (1:[m,(m-1)..2])
        _  -> putStrLn "No"
