import java.util.Scanner;
public class Main{
	public static void main(String[] args){
		Scanner sc = new Scanner(System.in);
		int N = sc.nextInt();
		boolean key = true;
		int count = 0;
		int[] list = new int[N];
		for (int i = 0; i < N; i++) {
			int add = sc.nextInt();
			list[i] = add;
		}
		out : while (key) {
			for (int i = 0; i < list.length; i++) {
				if (list[i]%2 == 0) {
					list[i] /= 2;
				} else {
					key = false;
					break out;
				}
			}
			count++;
		}
		System.out.println(count);
	}	
} import java.util.Scanner; Scanner java.util public class Main{
	public static void main(String[] args){
		Scanner sc = new Scanner(System.in);
		int N = sc.nextInt();
		boolean key = true;
		int count = 0;
		int[] list = new int[N];
		for (int i = 0; i < N; i++) {
			int add = sc.nextInt();
			list[i] = add;
		}
		out : while (key) {
			for (int i = 0; i < list.length; i++) {
				if (list[i]%2 == 0) {
					list[i] /= 2;
				} else {
					key = false;
					break out;
				}
			}
			count++;
		}
		System.out.println(count);
	}	
} Main public static void main(String[] args){
		Scanner sc = new Scanner(System.in);
		int N = sc.nextInt();
		boolean key = true;
		int count = 0;
		int[] list = new int[N];
		for (int i = 0; i < N; i++) {
			int add = sc.nextInt();
			list[i] = add;
		}
		out : while (key) {
			for (int i = 0; i < list.length; i++) {
				if (list[i]%2 == 0) {
					list[i] /= 2;
				} else {
					key = false;
					break out;
				}
			}
			count++;
		}
		System.out.println(count);
	} main {
		Scanner sc = new Scanner(System.in);
		int N = sc.nextInt();
		boolean key = true;
		int count = 0;
		int[] list = new int[N];
		for (int i = 0; i < N; i++) {
			int add = sc.nextInt();
			list[i] = add;
		}
		out : while (key) {
			for (int i = 0; i < list.length; i++) {
				if (list[i]%2 == 0) {
					list[i] /= 2;
				} else {
					key = false;
					break out;
				}
			}
			count++;
		}
		System.out.println(count);
	} Scanner sc = new Scanner(System.in); sc new Scanner(System.in) int N = sc.nextInt(); N sc.nextInt() sc.nextInt sc boolean key = true; key true int count = 0; count 0 int[] list = new int[N]; list new int[N] N for (int i = 0; i < N; i++) {
			int add = sc.nextInt();
			list[i] = add;
		} int i = 0; int i = 0; i 0 i < N i N i++ i++ i {
			int add = sc.nextInt();
			list[i] = add;
		} {
			int add = sc.nextInt();
			list[i] = add;
		} int add = sc.nextInt(); add sc.nextInt() sc.nextInt sc list[i] = add list[i] list i add System.out.println(count) System.out.println System.out System System.out count String[] args args public class Main{
	public static void main(String[] args){
		Scanner sc = new Scanner(System.in);
		int N = sc.nextInt();
		boolean key = true;
		int count = 0;
		int[] list = new int[N];
		for (int i = 0; i < N; i++) {
			int add = sc.nextInt();
			list[i] = add;
		}
		out : while (key) {
			for (int i = 0; i < list.length; i++) {
				if (list[i]%2 == 0) {
					list[i] /= 2;
				} else {
					key = false;
					break out;
				}
			}
			count++;
		}
		System.out.println(count);
	}	
} public class Main{
	public static void main(String[] args){
		Scanner sc = new Scanner(System.in);
		int N = sc.nextInt();
		boolean key = true;
		int count = 0;
		int[] list = new int[N];
		for (int i = 0; i < N; i++) {
			int add = sc.nextInt();
			list[i] = add;
		}
		out : while (key) {
			for (int i = 0; i < list.length; i++) {
				if (list[i]%2 == 0) {
					list[i] /= 2;
				} else {
					key = false;
					break out;
				}
			}
			count++;
		}
		System.out.println(count);
	}	
} Main
import java.util.Scanner;
public class Main{
	public static void main(String[] args){
		Scanner sc = new Scanner(System.in);
		int N = sc.nextInt();
		boolean key = true;
		int count = 0;
		int[] list = new int[N];
		for (int i = 0; i < N; i++) {
			int add = sc.nextInt();
			list[i] = add;
		}
		out : while (key) {
			for (int i = 0; i < list.length; i++) {
				if (list[i]%2 == 0) {
					list[i] /= 2;
				} else {
					key = false;
					break out;
				}
			}
			count++;
		}
		System.out.println(count);
	}	
}