import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.Arrays;

public class Main {

    public static void main(String[] a) throws IOException{

    	String strLine ="";
    	BufferedReader stdReader =
            new BufferedReader(new InputStreamReader(System.in));

    	String[] inputStr = new String[2];
    	Integer[] keta = new Integer[200];

    	int i = 0;

    	while ( i < 200 && ((strLine = stdReader.readLine()) != null) ){
    		inputStr = strLine.split(" ",0);
    		int temp1 = Integer.parseInt(inputStr[0]);
    		int temp2 = Integer.parseInt(inputStr[1]);

    		keta[i] = caulKeta(temp1 + temp2);

    		i++;
	   	}

    	for(int c = 0; c < i; c++){
    		System.out.println(keta[c]);
    	}


    }

public static int caulKeta(int suuji){

	int keta = 1;

	for(int i = 10; suuji/i !=0; i =i*10 ){

		keta ++;
	}

	return keta;
}

} import java.io.BufferedReader; BufferedReader java.io import java.io.IOException; IOException java.io import java.io.InputStreamReader; InputStreamReader java.io import java.util.Arrays; Arrays java.util public class Main {

    public static void main(String[] a) throws IOException{

    	String strLine ="";
    	BufferedReader stdReader =
            new BufferedReader(new InputStreamReader(System.in));

    	String[] inputStr = new String[2];
    	Integer[] keta = new Integer[200];

    	int i = 0;

    	while ( i < 200 && ((strLine = stdReader.readLine()) != null) ){
    		inputStr = strLine.split(" ",0);
    		int temp1 = Integer.parseInt(inputStr[0]);
    		int temp2 = Integer.parseInt(inputStr[1]);

    		keta[i] = caulKeta(temp1 + temp2);

    		i++;
	   	}

    	for(int c = 0; c < i; c++){
    		System.out.println(keta[c]);
    	}


    }

public static int caulKeta(int suuji){

	int keta = 1;

	for(int i = 10; suuji/i !=0; i =i*10 ){

		keta ++;
	}

	return keta;
}

} Main public static void main(String[] a) throws IOException{

    	String strLine ="";
    	BufferedReader stdReader =
            new BufferedReader(new InputStreamReader(System.in));

    	String[] inputStr = new String[2];
    	Integer[] keta = new Integer[200];

    	int i = 0;

    	while ( i < 200 && ((strLine = stdReader.readLine()) != null) ){
    		inputStr = strLine.split(" ",0);
    		int temp1 = Integer.parseInt(inputStr[0]);
    		int temp2 = Integer.parseInt(inputStr[1]);

    		keta[i] = caulKeta(temp1 + temp2);

    		i++;
	   	}

    	for(int c = 0; c < i; c++){
    		System.out.println(keta[c]);
    	}


    } main {

    	String strLine ="";
    	BufferedReader stdReader =
            new BufferedReader(new InputStreamReader(System.in));

    	String[] inputStr = new String[2];
    	Integer[] keta = new Integer[200];

    	int i = 0;

    	while ( i < 200 && ((strLine = stdReader.readLine()) != null) ){
    		inputStr = strLine.split(" ",0);
    		int temp1 = Integer.parseInt(inputStr[0]);
    		int temp2 = Integer.parseInt(inputStr[1]);

    		keta[i] = caulKeta(temp1 + temp2);

    		i++;
	   	}

    	for(int c = 0; c < i; c++){
    		System.out.println(keta[c]);
    	}


    } String strLine =""; strLine "" BufferedReader stdReader =
            new BufferedReader(new InputStreamReader(System.in)); stdReader new BufferedReader(new InputStreamReader(System.in)) String[] inputStr = new String[2]; inputStr new String[2] 2 Integer[] keta = new Integer[200]; keta new Integer[200] 200 int i = 0; i 0 while ( i < 200 && ((strLine = stdReader.readLine()) != null) ){
    		inputStr = strLine.split(" ",0);
    		int temp1 = Integer.parseInt(inputStr[0]);
    		int temp2 = Integer.parseInt(inputStr[1]);

    		keta[i] = caulKeta(temp1 + temp2);

    		i++;
	   	} i < 200 && ((strLine = stdReader.readLine()) != null) i < 200 i 200 ((strLine = stdReader.readLine()) != null) (strLine = stdReader.readLine()) strLine stdReader.readLine() stdReader.readLine stdReader null {
    		inputStr = strLine.split(" ",0);
    		int temp1 = Integer.parseInt(inputStr[0]);
    		int temp2 = Integer.parseInt(inputStr[1]);

    		keta[i] = caulKeta(temp1 + temp2);

    		i++;
	   	} inputStr = strLine.split(" ",0) inputStr strLine.split(" ",0) strLine.split strLine " " 0 int temp1 = Integer.parseInt(inputStr[0]); temp1 Integer.parseInt(inputStr[0]) Integer.parseInt Integer inputStr[0] inputStr 0 int temp2 = Integer.parseInt(inputStr[1]); temp2 Integer.parseInt(inputStr[1]) Integer.parseInt Integer inputStr[1] inputStr 1 keta[i] = caulKeta(temp1 + temp2) keta[i] keta i caulKeta(temp1 + temp2) caulKeta temp1 + temp2 temp1 temp2 i++ i for(int c = 0; c < i; c++){
    		System.out.println(keta[c]);
    	} int c = 0; int c = 0; c 0 c < i c i c++ c++ c {
    		System.out.println(keta[c]);
    	} {
    		System.out.println(keta[c]);
    	} System.out.println(keta[c]) System.out.println System.out System System.out keta[c] keta c String[] a a public static int caulKeta(int suuji){

	int keta = 1;

	for(int i = 10; suuji/i !=0; i =i*10 ){

		keta ++;
	}

	return keta;
} caulKeta {

	int keta = 1;

	for(int i = 10; suuji/i !=0; i =i*10 ){

		keta ++;
	}

	return keta;
} int keta = 1; keta 1 for(int i = 10; suuji/i !=0; i =i*10 ){

		keta ++;
	} int i = 10; int i = 10; i 10 suuji/i !=0 suuji/i suuji i 0 i =i*10 i =i*10 i i*10 i 10 {

		keta ++;
	} {

		keta ++;
	} keta ++ keta return keta; keta int suuji suuji public class Main {

    public static void main(String[] a) throws IOException{

    	String strLine ="";
    	BufferedReader stdReader =
            new BufferedReader(new InputStreamReader(System.in));

    	String[] inputStr = new String[2];
    	Integer[] keta = new Integer[200];

    	int i = 0;

    	while ( i < 200 && ((strLine = stdReader.readLine()) != null) ){
    		inputStr = strLine.split(" ",0);
    		int temp1 = Integer.parseInt(inputStr[0]);
    		int temp2 = Integer.parseInt(inputStr[1]);

    		keta[i] = caulKeta(temp1 + temp2);

    		i++;
	   	}

    	for(int c = 0; c < i; c++){
    		System.out.println(keta[c]);
    	}


    }

public static int caulKeta(int suuji){

	int keta = 1;

	for(int i = 10; suuji/i !=0; i =i*10 ){

		keta ++;
	}

	return keta;
}

} public class Main {

    public static void main(String[] a) throws IOException{

    	String strLine ="";
    	BufferedReader stdReader =
            new BufferedReader(new InputStreamReader(System.in));

    	String[] inputStr = new String[2];
    	Integer[] keta = new Integer[200];

    	int i = 0;

    	while ( i < 200 && ((strLine = stdReader.readLine()) != null) ){
    		inputStr = strLine.split(" ",0);
    		int temp1 = Integer.parseInt(inputStr[0]);
    		int temp2 = Integer.parseInt(inputStr[1]);

    		keta[i] = caulKeta(temp1 + temp2);

    		i++;
	   	}

    	for(int c = 0; c < i; c++){
    		System.out.println(keta[c]);
    	}


    }

public static int caulKeta(int suuji){

	int keta = 1;

	for(int i = 10; suuji/i !=0; i =i*10 ){

		keta ++;
	}

	return keta;
}

} Main
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.Arrays;

public class Main {

    public static void main(String[] a) throws IOException{

    	String strLine ="";
    	BufferedReader stdReader =
            new BufferedReader(new InputStreamReader(System.in));

    	String[] inputStr = new String[2];
    	Integer[] keta = new Integer[200];

    	int i = 0;

    	while ( i < 200 && ((strLine = stdReader.readLine()) != null) ){
    		inputStr = strLine.split(" ",0);
    		int temp1 = Integer.parseInt(inputStr[0]);
    		int temp2 = Integer.parseInt(inputStr[1]);

    		keta[i] = caulKeta(temp1 + temp2);

    		i++;
	   	}

    	for(int c = 0; c < i; c++){
    		System.out.println(keta[c]);
    	}


    }

public static int caulKeta(int suuji){

	int keta = 1;

	for(int i = 10; suuji/i !=0; i =i*10 ){

		keta ++;
	}

	return keta;
}

}