#include <bits/stdc++.h>
int record[1009];
int main() {
  int a, b;
  int judge = 1, count = 1, i;
  scanf("%d %d", &a, &b);
  while (b > a) {
    record[count++] = b;
    if (b % 10 == 1)
      b = b / 10;
    else if (b % 2 == 0)
      b /= 2;
    else {
      judge = 0;
      break;
    }
  }
  if (b != a) judge = 0;
  if (judge) {
    printf("YES\n%d\n%d", count, a);
    for (i = count - 1; i >= 1; i--) printf(" %ld", record[i]);
    printf("\n");
  } else
    printf("NO\n");
  return 0;
}
