import java.util.*;
import static java.lang.Math.*;

public class Main {
	public static void main(String[] args){
		Scanner sc = new Scanner(System.in);

		// 入力
		int n = sc.nextInt();
		int values[] = new int[n];

		for(int i = 0; i < n; i++){
			values[i] = sc.nextInt(); // 入力値取得
		}

		// 操作が可能な限り実行する。
		int minNum = NumberOfDevision(values);

		// 出力
		System.out.println(minNum);
	}

	// 偶数かどうかを判定
	static boolean isEven(int n){
		if(n%2 == 0){
			return true;
		}else{
			return false;
		}
	}

	// 2で割り切れる回数を取得
	static int NumberOfDevision(int[] values){
		for(int i = 0; i < values.length; i++){
			if(isEven(values[i])){
				values[i] = values[i]/2;
			}else{
				return 0;
			}
		}
		return 1 + NumberOfDevision(values);
	}
}



/tmp/hf-datasets-cache/medium/datasets/42704881117311-config-parquet-and-info-qiankunmu-Project_CodeNet-896c9d36/hub/datasets--qiankunmu--Project_CodeNet_Python800_and_Java250/snapshots/c899fde44a77ba1cc14973ed3de064e4ff3aadc7/Project_CodeNet_Java250.tar.gz