#include<cstdio>
#include<cstring>
#include<iostream>
using namespace std;
int a,b,plan[1000000];
void dfs(int step,int num)
{
if(num == b)
{
cout<<"YES"<<endl<<step-1<<endl;
for(int i=1;i<=step-1;i++)
cout<<plan[i]<<" ";
exit(0);
}
if(num > b)return;
plan[step] = 2 * num;
dfs(step + 1,num * 2);
plan[step] = 10 * num + 1;
dfs(step + 1,num * 10 + 1);
}
int main(){
cin>>a>>b;
plan[1] = a;
dfs(2,a);
cout<<"NO";
return 0;
}