#include <bits/stdc++.h>
using namespace std;
int main() {
  int a, b, c;
  bool n;
  n = false;
  cin >> a >> b;
  c = 1;
  stack<char> op;
  while (b > a) {
    if (b % 2 == 0) {
      b = b / 2;
      op.push('1');
      c += 1;
    } else {
      if (b % 10 == 1) {
        b = (b - 1) / 10;
        op.push('2');
        c += 1;
      } else {
        break;
      }
    }
  }
  if (b == a) {
    cout << "YES" << endl;
    cout << c << endl;
    cout << a << " ";
    while (op.size() >= 1) {
      if (op.top() == '1') {
        a *= 2;
      }
      if (op.top() == '2') {
        a = a * 10 + 1;
      }
      cout << a << " ";
      op.pop();
    }
  } else {
    cout << "NO";
  }
  return 0;
}
