#include<bits/stdc++.h>
using namespace std;
long long a, b;
bool fa = 0;
long long cnt = 0;
long long d[1000000];
void dfs(int x){
if(x > b) return;
if(x == b){
fa = 1;
cout << "YES" << endl;
cout << cnt << endl;
for(int i = 1; i <= cnt; ++i){
cout << d[i] << " ";
}
return;
}
cnt++;
d[cnt] = x * 2;
dfs(x * 2);
d[cnt] = 0;
cnt--;
cnt++;
d[cnt] = x * 10 + 1;
dfs(x * 10 + 1);
d[cnt] = 0;
cnt--;
}
int main(){
cin >> a >> b;
d[1] = a;
cnt++;
dfs(a);
if(fa == 0){
cout << "NO";
}
return 0;
}