#include<iostream>
#include<string>
#include<vector>
using namespace std;
string Multi(string A, int t);
bool Judge(string A, string B);
int main()
{
string A, B;
cin >> A;
B = Multi(A, 2);
//cout << B << endl;
if (Judge(A, B))
cout << "Yes" << endl;
else
cout << "No" << endl;
cout << B << endl;
system("pause");
return 0;
}
bool Judge(string A, string B)
{
int Asum[10] = { 0 }, Bsum[10] = { 0 };
int LA = A.length();
int LB = B.length();
while (LA--)
Asum[A[LA] - '0']++;
while (LB--)
Bsum[B[LB] - '0']++;
int i = 0;
while (i < 10)
{
if (Asum[i]<Bsum[i])//if (Asum[i]!=Bsum[i])
return false;
i++;
}
return true;
}
string Multi(string A, int t)
{
int i = A.length()-1;
int flag = 0;
while (i>=0)
{
flag +=( A[i] - '0') * 2;
A[i] = flag % 10 + '0';
flag /= 10;
i--;
}
if (flag)
A = "1" + A;
return A;
}