#include "stdio.h"
int main()
{
const int max = 255;
const int cnt = 4;
int ip[3][cnt];
int i,j;
int next[3] = {1,2,0};
int out;
while(scanf("%d.%d.%d.%d", &ip[i][0],&ip[i][1],&ip[i][2],&ip[i][3]) != EOF)
{
if(i == 2)
{
out = 0;//set to same
for(j = 0;j<cnt;j++)
{
if((ip[0][j] > max) || (ip[1][j] > max)||(ip[2][j] > max) ||
(ip[0][j] < 0) || (ip[1][j] < 0)||(ip[2][j] < 0) ||
((ip[0][j] != 255) && (j<3) &&(ip[0][j+1] != 0))
)
{
out = 1;
break;
}
if((ip[0][j] & ip[1][j]) != (ip[0][j] & ip[2][j]))
{
out = 2;//no break to check ip validation
}
}
printf("%d\n", out);
}
i = next[i];
}
return 0;
}