#include <iostream>
#include <cstdio>
using namespace std;
int main()
{
string s,imie,nazwisko; //s-smieci
bool im,n,z;
int rok,mies,dzien;
char myslnik;
while(cin>>s>>imie>>s>>nazwisko>>s>>s>>rok>>myslnik>>mies>>myslnik>>dzien)
{
im=n=z=false; // imie, nazwisko, data - flaga czy poprawne dane wpisane
if(imie[0]<'A' || imie[0]>'Z') im=true;
for(int i=0;i<imie.length()-1 && im==false;i++)
{
if(imie[i]<'A' || (imie[i]>'Z' && imie[i]<'a') || imie[i]>'z') im=true;
}
if(nazwisko[0]<'A' || nazwisko[0]>'Z') n=true;
for(int i=0;i<nazwisko.length()-1 && n==false;i++)
{
if(nazwisko[i]<'A' || (nazwisko[i]>'Z' && nazwisko[i]<'a') || nazwisko[i]>'z') n=true;
}
if(rok<1900 || rok>2000) z=true;
else if(mies<1 || mies>12) z=true;
else if(dzien<1 || dzien>31) z=true;
if(im) cout<<"0"<<endl;
else if(!im && n) cout<<"1"<<endl;
else if(!im && !n && z) cout<<"2"<<endl;
else cout<<"3"<<endl;
}
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8Y3N0ZGlvPgp1c2luZyBuYW1lc3BhY2Ugc3RkOwoKaW50IG1haW4oKQp7CiAgICBzdHJpbmcgcyxpbWllLG5hendpc2tvOyAvL3Mtc21pZWNpCiAgICBib29sIGltLG4sejsKICAgIGludCByb2ssbWllcyxkemllbjsKICAgIGNoYXIgbXlzbG5pazsKICAgIHdoaWxlKGNpbj4+cz4+aW1pZT4+cz4+bmF6d2lza28+PnM+PnM+PnJvaz4+bXlzbG5paz4+bWllcz4+bXlzbG5paz4+ZHppZW4pCiAgICB7CiAgICAgICAgaW09bj16PWZhbHNlOyAvLyBpbWllLCBuYXp3aXNrbywgZGF0YSAtIGZsYWdhIGN6eSBwb3ByYXduZSBkYW5lIHdwaXNhbmUKCiAgICAgICAgaWYoaW1pZVswXTwnQScgfHwgaW1pZVswXT4nWicpIGltPXRydWU7CiAgICAgICAgZm9yKGludCBpPTA7aTxpbWllLmxlbmd0aCgpLTEgJiYgaW09PWZhbHNlO2krKykKICAgICAgICB7CiAgICAgICAgICAgIGlmKGltaWVbaV08J0EnIHx8IChpbWllW2ldPidaJyAmJiBpbWllW2ldPCdhJykgfHwgaW1pZVtpXT4neicpIGltPXRydWU7CiAgICAgICAgfQoKICAgICAgICBpZihuYXp3aXNrb1swXTwnQScgfHwgbmF6d2lza29bMF0+J1onKSBuPXRydWU7CiAgICAgICAgZm9yKGludCBpPTA7aTxuYXp3aXNrby5sZW5ndGgoKS0xICYmIG49PWZhbHNlO2krKykKICAgICAgICB7CiAgICAgICAgICAgIGlmKG5hendpc2tvW2ldPCdBJyB8fCAobmF6d2lza29baV0+J1onICYmIG5hendpc2tvW2ldPCdhJykgfHwgbmF6d2lza29baV0+J3onKSBuPXRydWU7CiAgICAgICAgfQoKICAgICAgICBpZihyb2s8MTkwMCB8fCByb2s+MjAwMCkgej10cnVlOwogICAgICAgIGVsc2UgaWYobWllczwxIHx8IG1pZXM+MTIpIHo9dHJ1ZTsKICAgICAgICBlbHNlIGlmKGR6aWVuPDEgfHwgZHppZW4+MzEpIHo9dHJ1ZTsKCiAgICAgICAgaWYoaW0pIGNvdXQ8PCIwIjw8ZW5kbDsKICAgICAgICBlbHNlIGlmKCFpbSAmJiBuKSBjb3V0PDwiMSI8PGVuZGw7CiAgICAgICAgZWxzZSBpZighaW0gJiYgIW4gJiYgeikgY291dDw8IjIiPDxlbmRsOwogICAgICAgIGVsc2UgY291dDw8IjMiPDxlbmRsOwogICAgfQogICAgcmV0dXJuIDA7Cn0=
SW1pZTogUm9tYW47IE5hendpc2tvOiBLb3dhbHNraTY7IERhdGEgdXIuOiAxOTAwLTAxLTMwCkltaWU6IEFuZHJ6ZWo7IE5hendpc2tvOiBLb3dhbDsgRGF0YSB1ci46IDE4OTktMTAtMTAKSW1pZTogcm9tYW47IE5hendpc2tvOiBOby13YWs7IERhdGEgdXIuOiAxMDk5LTExLTEyCkltaWU6IEFsaWNqYTsgTmF6d2lza286IE5vd2FrOyBEYXRhIHVyLjogMTk5MC0wMS0wMQ==
Imie: Roman; Nazwisko: Kowalski6; Data ur.: 1900-01-30
Imie: Andrzej; Nazwisko: Kowal; Data ur.: 1899-10-10
Imie: roman; Nazwisko: No-wak; Data ur.: 1099-11-12
Imie: Alicja; Nazwisko: Nowak; Data ur.: 1990-01-01