#include <bits/stdc++.h>
using namespace std;
int a, b;
vector<int> ans;
int cnt = 0;
bool u;
int main() {
  cin >> a >> b;
  int g = b;
  while (b > a) {
    if (b % 2 == 0) {
      b /= 2;
      cnt++;
    } else {
      b /= 10;
      cnt++;
    }
    ans.push_back(b);
  }
  for (int i = 0; i < ans.size() - 1; i++) {
    if (ans[i] % 2 != 0 && ans[i] % 10 != 1) {
      u = 1;
      break;
    }
  }
  if (ans[ans.size() - 1] == a && u == 0) {
    cout << "YES" << endl << cnt + 1 << endl;
    for (int i = ans.size() - 1; i >= 0; i--) {
      cout << ans[i] << " ";
    }
    cout << g;
    return 0;
  }
  cout << "NO";
}
