#include <iostream>
#include <vector>
#include <math.h>
using namespace std;
int is_simber(int n)
{
int numberOfTimes = 0, length = 1, x = n;
bool answer;
vector <int> nmbrs = vector <int>();
//get how many digits are in the integer
do
{
x /= 10;
length++;
}
while(x != 0)
//get the digits in the integer
for(int i = 0; i<length; i++)
{
nmbrs.push_back(((n/10^i) % 10);
}
//checking how many times a digit occurs and also testing to see if the digits
//meet the requirements
for(int i = 0; i<length; i++)
{
for(int j = 0; j<length; j++)
{
if (nmbrs.at(i) == nmbrs.at(j))
{
numberOfTimes++;
}
}
if (nmbrs.at(i) % 2 == 0 && numberOfTimes % 2 == 0)
{
answer = true;
}
else if(nmbrs.at(i) % 2 == 1 && numberOfTimes % 2 == 1)
{
answer = true;
}
else if(nmbrs.at(i) % 2 == 0 && numberOfTimes % 2 == 1)
{
answer = false;
break;
}
else if(nmbrs.at(i) % 2 == 1 && numberOfTimes % 2 == 0)
{
answer = false;
break;
}
}
return answer;
}
int main(){
int k;
while( cin >> k) {
cout << is_simber(k) << endl;
}
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8dmVjdG9yPgojaW5jbHVkZSA8bWF0aC5oPgoKdXNpbmcgbmFtZXNwYWNlIHN0ZDsKCmludCBpc19zaW1iZXIoaW50IG4pIAp7CiAgICBpbnQgbnVtYmVyT2ZUaW1lcyA9IDAsIGxlbmd0aCA9IDEsIHggPSBuOyAKICAgIGJvb2wgYW5zd2VyOyAKICAgIHZlY3RvciA8aW50PiBubWJycyA9IHZlY3RvciA8aW50PigpOyAKCgogICAgLy9nZXQgaG93IG1hbnkgZGlnaXRzIGFyZSBpbiB0aGUgaW50ZWdlcgoKICAgIGRvCiAgICB7IAogICAgICAgeCAvPSAxMDsgCiAgICAgICBsZW5ndGgrKzsgCiAgICB9CiAgICB3aGlsZSh4ICE9IDApIAoKCiAgICAvL2dldCB0aGUgZGlnaXRzIGluIHRoZSBpbnRlZ2VyCgogICAgZm9yKGludCBpID0gMDsgaTxsZW5ndGg7IGkrKykgCiAgICB7CiAgICAgIG5tYnJzLnB1c2hfYmFjaygoKG4vMTBeaSkgJSAxMCk7IAogICAgfQoKCiAgICAvL2NoZWNraW5nIGhvdyBtYW55IHRpbWVzIGEgZGlnaXQgb2NjdXJzIGFuZCBhbHNvIHRlc3RpbmcgdG8gc2VlIGlmIHRoZSBkaWdpdHMKICAgIC8vbWVldCB0aGUgcmVxdWlyZW1lbnRzCgogICAgZm9yKGludCBpID0gMDsgaTxsZW5ndGg7IGkrKykgCiAgICB7CiAgICAgICAgZm9yKGludCBqID0gMDsgajxsZW5ndGg7IGorKykgCiAgICAgICAgewogICAgICAgICAgICBpZiAobm1icnMuYXQoaSkgPT0gbm1icnMuYXQoaikpCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIG51bWJlck9mVGltZXMrKzsgCiAgICAgICAgICAgIH0KICAgICAgICB9CgogICAgICAgIGlmIChubWJycy5hdChpKSAlIDIgPT0gMCAmJiBudW1iZXJPZlRpbWVzICUgMiA9PSAwKSAKICAgICAgICB7CiAgICAgICAgICBhbnN3ZXIgPSB0cnVlOyAKICAgICAgICB9CgogICAgICAgIGVsc2UgaWYobm1icnMuYXQoaSkgJSAyID09IDEgJiYgbnVtYmVyT2ZUaW1lcyAlIDIgPT0gMSkKICAgICAgICB7IAogICAgICAgICAgICBhbnN3ZXIgPSB0cnVlOyAKICAgICAgICB9CgogICAgICAgIGVsc2UgaWYobm1icnMuYXQoaSkgJSAyID09IDAgJiYgbnVtYmVyT2ZUaW1lcyAlIDIgPT0gMSkKICAgICAgICB7CiAgICAgICAgICAgIGFuc3dlciA9IGZhbHNlOyAKICAgICAgICAgICAgYnJlYWs7IAogICAgICAgIH0KCiAgICAgICAgZWxzZSBpZihubWJycy5hdChpKSAlIDIgPT0gMSAmJiBudW1iZXJPZlRpbWVzICUgMiA9PSAwKQogICAgICAgIHsKICAgICAgICAgICAgYW5zd2VyID0gZmFsc2U7IAogICAgICAgICAgICBicmVhazsKICAgICAgICB9CiAgICB9CgogICAgcmV0dXJuIGFuc3dlcjsKfQoKaW50IG1haW4oKXsKCWludCBrOwoJd2hpbGUoIGNpbiA+PiBrKSB7CgkJY291dCA8PCBpc19zaW1iZXIoaykgPDwgZW5kbDsKCX0KfQ==