import java.util.Scanner;

public class Main {
	public static void main(String[] args) {
		try (Scanner scanner = new Scanner(System.in)) {
			int N = scanner.nextInt();
			int[] array = new int[N];
			for (int i = 0; i < N; i++) {
				array[i] = scanner.nextInt();
			}

			System.out.println(returnActionCnt(array,0));
		}
	}

	private static int returnActionCnt(int[] array,int  cnt) {
		boolean flg = true;
		for (int i = 0; i < array.length; i++) {
			if (array[i] % 2 == 1) {
				flg = false;
				return cnt;
			}
		}
		// すべてが偶数だったとき
		if (flg) {
			for (int i = 0; i < array.length; i++) {
				array[i] /= 2;
			}
			cnt++;
		}

		return returnActionCnt(array, cnt);
	}
} import java.util.Scanner; Scanner java.util public class Main {
	public static void main(String[] args) {
		try (Scanner scanner = new Scanner(System.in)) {
			int N = scanner.nextInt();
			int[] array = new int[N];
			for (int i = 0; i < N; i++) {
				array[i] = scanner.nextInt();
			}

			System.out.println(returnActionCnt(array,0));
		}
	}

	private static int returnActionCnt(int[] array,int  cnt) {
		boolean flg = true;
		for (int i = 0; i < array.length; i++) {
			if (array[i] % 2 == 1) {
				flg = false;
				return cnt;
			}
		}
		// すべてが偶数だったとき
		if (flg) {
			for (int i = 0; i < array.length; i++) {
				array[i] /= 2;
			}
			cnt++;
		}

		return returnActionCnt(array, cnt);
	}
} Main public static void main(String[] args) {
		try (Scanner scanner = new Scanner(System.in)) {
			int N = scanner.nextInt();
			int[] array = new int[N];
			for (int i = 0; i < N; i++) {
				array[i] = scanner.nextInt();
			}

			System.out.println(returnActionCnt(array,0));
		}
	} main {
		try (Scanner scanner = new Scanner(System.in)) {
			int N = scanner.nextInt();
			int[] array = new int[N];
			for (int i = 0; i < N; i++) {
				array[i] = scanner.nextInt();
			}

			System.out.println(returnActionCnt(array,0));
		}
	} try (Scanner scanner = new Scanner(System.in)) {
			int N = scanner.nextInt();
			int[] array = new int[N];
			for (int i = 0; i < N; i++) {
				array[i] = scanner.nextInt();
			}

			System.out.println(returnActionCnt(array,0));
		} {
			int N = scanner.nextInt();
			int[] array = new int[N];
			for (int i = 0; i < N; i++) {
				array[i] = scanner.nextInt();
			}

			System.out.println(returnActionCnt(array,0));
		} Scanner scanner = new Scanner(System.in) Scanner scanner = new Scanner(System.in) new Scanner(System.in) int N = scanner.nextInt(); N scanner.nextInt() scanner.nextInt scanner int[] array = new int[N]; array new int[N] N for (int i = 0; i < N; i++) {
				array[i] = scanner.nextInt();
			} int i = 0; int i = 0; i 0 i < N i N i++ i++ i {
				array[i] = scanner.nextInt();
			} {
				array[i] = scanner.nextInt();
			} array[i] = scanner.nextInt() array[i] array i scanner.nextInt() scanner.nextInt scanner System.out.println(returnActionCnt(array,0)) System.out.println System.out System System.out returnActionCnt(array,0) returnActionCnt array 0 String[] args args private static int returnActionCnt(int[] array,int  cnt) {
		boolean flg = true;
		for (int i = 0; i < array.length; i++) {
			if (array[i] % 2 == 1) {
				flg = false;
				return cnt;
			}
		}
		// すべてが偶数だったとき
		if (flg) {
			for (int i = 0; i < array.length; i++) {
				array[i] /= 2;
			}
			cnt++;
		}

		return returnActionCnt(array, cnt);
	} returnActionCnt {
		boolean flg = true;
		for (int i = 0; i < array.length; i++) {
			if (array[i] % 2 == 1) {
				flg = false;
				return cnt;
			}
		}
		// すべてが偶数だったとき
		if (flg) {
			for (int i = 0; i < array.length; i++) {
				array[i] /= 2;
			}
			cnt++;
		}

		return returnActionCnt(array, cnt);
	} boolean flg = true; flg true for (int i = 0; i < array.length; i++) {
			if (array[i] % 2 == 1) {
				flg = false;
				return cnt;
			}
		} int i = 0; int i = 0; i 0 i < array.length i array.length array array.length i++ i++ i {
			if (array[i] % 2 == 1) {
				flg = false;
				return cnt;
			}
		} {
			if (array[i] % 2 == 1) {
				flg = false;
				return cnt;
			}
		} if (array[i] % 2 == 1) {
				flg = false;
				return cnt;
			} array[i] % 2 == 1 array[i] % 2 array[i] array i 2 1 {
				flg = false;
				return cnt;
			} flg = false flg false return cnt; cnt if (flg) {
			for (int i = 0; i < array.length; i++) {
				array[i] /= 2;
			}
			cnt++;
		} flg {
			for (int i = 0; i < array.length; i++) {
				array[i] /= 2;
			}
			cnt++;
		} for (int i = 0; i < array.length; i++) {
				array[i] /= 2;
			} int i = 0; int i = 0; i 0 i < array.length i array.length array array.length i++ i++ i {
				array[i] /= 2;
			} {
				array[i] /= 2;
			} array[i] /= 2 array[i] array i 2 cnt++ cnt return returnActionCnt(array, cnt); returnActionCnt(array, cnt) returnActionCnt array cnt int[] array array int  cnt cnt public class Main {
	public static void main(String[] args) {
		try (Scanner scanner = new Scanner(System.in)) {
			int N = scanner.nextInt();
			int[] array = new int[N];
			for (int i = 0; i < N; i++) {
				array[i] = scanner.nextInt();
			}

			System.out.println(returnActionCnt(array,0));
		}
	}

	private static int returnActionCnt(int[] array,int  cnt) {
		boolean flg = true;
		for (int i = 0; i < array.length; i++) {
			if (array[i] % 2 == 1) {
				flg = false;
				return cnt;
			}
		}
		// すべてが偶数だったとき
		if (flg) {
			for (int i = 0; i < array.length; i++) {
				array[i] /= 2;
			}
			cnt++;
		}

		return returnActionCnt(array, cnt);
	}
} public class Main {
	public static void main(String[] args) {
		try (Scanner scanner = new Scanner(System.in)) {
			int N = scanner.nextInt();
			int[] array = new int[N];
			for (int i = 0; i < N; i++) {
				array[i] = scanner.nextInt();
			}

			System.out.println(returnActionCnt(array,0));
		}
	}

	private static int returnActionCnt(int[] array,int  cnt) {
		boolean flg = true;
		for (int i = 0; i < array.length; i++) {
			if (array[i] % 2 == 1) {
				flg = false;
				return cnt;
			}
		}
		// すべてが偶数だったとき
		if (flg) {
			for (int i = 0; i < array.length; i++) {
				array[i] /= 2;
			}
			cnt++;
		}

		return returnActionCnt(array, cnt);
	}
} Main
import java.util.Scanner;

public class Main {
	public static void main(String[] args) {
		try (Scanner scanner = new Scanner(System.in)) {
			int N = scanner.nextInt();
			int[] array = new int[N];
			for (int i = 0; i < N; i++) {
				array[i] = scanner.nextInt();
			}

			System.out.println(returnActionCnt(array,0));
		}
	}

	private static int returnActionCnt(int[] array,int  cnt) {
		boolean flg = true;
		for (int i = 0; i < array.length; i++) {
			if (array[i] % 2 == 1) {
				flg = false;
				return cnt;
			}
		}
		// すべてが偶数だったとき
		if (flg) {
			for (int i = 0; i < array.length; i++) {
				array[i] /= 2;
			}
			cnt++;
		}

		return returnActionCnt(array, cnt);
	}
}