import java.util.Scanner;
public class Main {
	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		int[] A = new int[210];
		int N = Integer.parseInt(sc.next());
		for (int i = 0; i < N; i++) {
			A[i] = Integer.parseInt(sc.next());
		}
		int result = 0;
		boolean flg = false;
		while (true) {
			for (int i = 0; i < A.length; i++) {
				if (A[i] % 2 != 0) {
					flg = true;
					break;
				}
			}

			if (flg) {
				break;
			}

			for (int i = 0; i < A.length; i++) {
				A[i] /= 2;
			}

			result++;
		}
		System.out.println(result);
	}
} import java.util.Scanner; Scanner java.util public class Main {
	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		int[] A = new int[210];
		int N = Integer.parseInt(sc.next());
		for (int i = 0; i < N; i++) {
			A[i] = Integer.parseInt(sc.next());
		}
		int result = 0;
		boolean flg = false;
		while (true) {
			for (int i = 0; i < A.length; i++) {
				if (A[i] % 2 != 0) {
					flg = true;
					break;
				}
			}

			if (flg) {
				break;
			}

			for (int i = 0; i < A.length; i++) {
				A[i] /= 2;
			}

			result++;
		}
		System.out.println(result);
	}
} Main public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		int[] A = new int[210];
		int N = Integer.parseInt(sc.next());
		for (int i = 0; i < N; i++) {
			A[i] = Integer.parseInt(sc.next());
		}
		int result = 0;
		boolean flg = false;
		while (true) {
			for (int i = 0; i < A.length; i++) {
				if (A[i] % 2 != 0) {
					flg = true;
					break;
				}
			}

			if (flg) {
				break;
			}

			for (int i = 0; i < A.length; i++) {
				A[i] /= 2;
			}

			result++;
		}
		System.out.println(result);
	} main {
		Scanner sc = new Scanner(System.in);
		int[] A = new int[210];
		int N = Integer.parseInt(sc.next());
		for (int i = 0; i < N; i++) {
			A[i] = Integer.parseInt(sc.next());
		}
		int result = 0;
		boolean flg = false;
		while (true) {
			for (int i = 0; i < A.length; i++) {
				if (A[i] % 2 != 0) {
					flg = true;
					break;
				}
			}

			if (flg) {
				break;
			}

			for (int i = 0; i < A.length; i++) {
				A[i] /= 2;
			}

			result++;
		}
		System.out.println(result);
	} Scanner sc = new Scanner(System.in); sc new Scanner(System.in) int[] A = new int[210]; A new int[210] 210 int N = Integer.parseInt(sc.next()); N Integer.parseInt(sc.next()) Integer.parseInt Integer sc.next() sc.next sc for (int i = 0; i < N; i++) {
			A[i] = Integer.parseInt(sc.next());
		} int i = 0; int i = 0; i 0 i < N i N i++ i++ i {
			A[i] = Integer.parseInt(sc.next());
		} {
			A[i] = Integer.parseInt(sc.next());
		} A[i] = Integer.parseInt(sc.next()) A[i] A i Integer.parseInt(sc.next()) Integer.parseInt Integer sc.next() sc.next sc int result = 0; result 0 boolean flg = false; flg false while (true) {
			for (int i = 0; i < A.length; i++) {
				if (A[i] % 2 != 0) {
					flg = true;
					break;
				}
			}

			if (flg) {
				break;
			}

			for (int i = 0; i < A.length; i++) {
				A[i] /= 2;
			}

			result++;
		} true {
			for (int i = 0; i < A.length; i++) {
				if (A[i] % 2 != 0) {
					flg = true;
					break;
				}
			}

			if (flg) {
				break;
			}

			for (int i = 0; i < A.length; i++) {
				A[i] /= 2;
			}

			result++;
		} for (int i = 0; i < A.length; i++) {
				if (A[i] % 2 != 0) {
					flg = true;
					break;
				}
			} int i = 0; int i = 0; i 0 i < A.length i A.length A A.length i++ i++ i {
				if (A[i] % 2 != 0) {
					flg = true;
					break;
				}
			} {
				if (A[i] % 2 != 0) {
					flg = true;
					break;
				}
			} if (A[i] % 2 != 0) {
					flg = true;
					break;
				} A[i] % 2 != 0 A[i] % 2 A[i] A i 2 0 {
					flg = true;
					break;
				} flg = true flg true break; if (flg) {
				break;
			} flg {
				break;
			} break; for (int i = 0; i < A.length; i++) {
				A[i] /= 2;
			} int i = 0; int i = 0; i 0 i < A.length i A.length A A.length i++ i++ i {
				A[i] /= 2;
			} {
				A[i] /= 2;
			} A[i] /= 2 A[i] A i 2 result++ result System.out.println(result) System.out.println System.out System System.out result String[] args args public class Main {
	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		int[] A = new int[210];
		int N = Integer.parseInt(sc.next());
		for (int i = 0; i < N; i++) {
			A[i] = Integer.parseInt(sc.next());
		}
		int result = 0;
		boolean flg = false;
		while (true) {
			for (int i = 0; i < A.length; i++) {
				if (A[i] % 2 != 0) {
					flg = true;
					break;
				}
			}

			if (flg) {
				break;
			}

			for (int i = 0; i < A.length; i++) {
				A[i] /= 2;
			}

			result++;
		}
		System.out.println(result);
	}
} public class Main {
	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		int[] A = new int[210];
		int N = Integer.parseInt(sc.next());
		for (int i = 0; i < N; i++) {
			A[i] = Integer.parseInt(sc.next());
		}
		int result = 0;
		boolean flg = false;
		while (true) {
			for (int i = 0; i < A.length; i++) {
				if (A[i] % 2 != 0) {
					flg = true;
					break;
				}
			}

			if (flg) {
				break;
			}

			for (int i = 0; i < A.length; i++) {
				A[i] /= 2;
			}

			result++;
		}
		System.out.println(result);
	}
} Main
import java.util.Scanner;
public class Main {
	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		int[] A = new int[210];
		int N = Integer.parseInt(sc.next());
		for (int i = 0; i < N; i++) {
			A[i] = Integer.parseInt(sc.next());
		}
		int result = 0;
		boolean flg = false;
		while (true) {
			for (int i = 0; i < A.length; i++) {
				if (A[i] % 2 != 0) {
					flg = true;
					break;
				}
			}

			if (flg) {
				break;
			}

			for (int i = 0; i < A.length; i++) {
				A[i] /= 2;
			}

			result++;
		}
		System.out.println(result);
	}
}