import java.util.*;

public class Main {
    public static void main(String[] args) throws Exception {
        // Your code here!
        
        Scanner sc = new Scanner(System.in);
        int n = sc.nextInt(), count = 0;
        int[] a = new int[n];
        for(int i=0; i<n; i++){ a[i] = sc.nextInt(); }
        
        while(true){
            
            if(isOdd(a)){
                break;
            }
            
            
            for(int i=0;i<a.length;i++){
                a[i] /= 2;
            }
            count++;
            
        }
        System.out.println(count);
    }
    
    public static boolean isOdd(int[] a){
        boolean isOddFlag = false;
        for(int i=0;i<a.length; i++){
            if(a[i] % 2 != 0){
                isOddFlag = true;
            }
        }
        return isOddFlag;
    }
} import java.util.*; util.* java public class Main {
    public static void main(String[] args) throws Exception {
        // Your code here!
        
        Scanner sc = new Scanner(System.in);
        int n = sc.nextInt(), count = 0;
        int[] a = new int[n];
        for(int i=0; i<n; i++){ a[i] = sc.nextInt(); }
        
        while(true){
            
            if(isOdd(a)){
                break;
            }
            
            
            for(int i=0;i<a.length;i++){
                a[i] /= 2;
            }
            count++;
            
        }
        System.out.println(count);
    }
    
    public static boolean isOdd(int[] a){
        boolean isOddFlag = false;
        for(int i=0;i<a.length; i++){
            if(a[i] % 2 != 0){
                isOddFlag = true;
            }
        }
        return isOddFlag;
    }
} Main public static void main(String[] args) throws Exception {
        // Your code here!
        
        Scanner sc = new Scanner(System.in);
        int n = sc.nextInt(), count = 0;
        int[] a = new int[n];
        for(int i=0; i<n; i++){ a[i] = sc.nextInt(); }
        
        while(true){
            
            if(isOdd(a)){
                break;
            }
            
            
            for(int i=0;i<a.length;i++){
                a[i] /= 2;
            }
            count++;
            
        }
        System.out.println(count);
    } main {
        // Your code here!
        
        Scanner sc = new Scanner(System.in);
        int n = sc.nextInt(), count = 0;
        int[] a = new int[n];
        for(int i=0; i<n; i++){ a[i] = sc.nextInt(); }
        
        while(true){
            
            if(isOdd(a)){
                break;
            }
            
            
            for(int i=0;i<a.length;i++){
                a[i] /= 2;
            }
            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 count = 0; count 0 int[] a = new int[n]; a new int[n] n for(int i=0; i<n; i++){ a[i] = sc.nextInt(); } int i=0; int i=0; i 0 i<n i n i++ i++ i { a[i] = sc.nextInt(); } { a[i] = sc.nextInt(); } a[i] = sc.nextInt() a[i] a i sc.nextInt() sc.nextInt sc while(true){
            
            if(isOdd(a)){
                break;
            }
            
            
            for(int i=0;i<a.length;i++){
                a[i] /= 2;
            }
            count++;
            
        } true {
            
            if(isOdd(a)){
                break;
            }
            
            
            for(int i=0;i<a.length;i++){
                a[i] /= 2;
            }
            count++;
            
        } if(isOdd(a)){
                break;
            } isOdd(a) isOdd a {
                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 count++ count System.out.println(count) System.out.println System.out System System.out count String[] args args public static boolean isOdd(int[] a){
        boolean isOddFlag = false;
        for(int i=0;i<a.length; i++){
            if(a[i] % 2 != 0){
                isOddFlag = true;
            }
        }
        return isOddFlag;
    } isOdd {
        boolean isOddFlag = false;
        for(int i=0;i<a.length; i++){
            if(a[i] % 2 != 0){
                isOddFlag = true;
            }
        }
        return isOddFlag;
    } boolean isOddFlag = false; isOddFlag false for(int i=0;i<a.length; i++){
            if(a[i] % 2 != 0){
                isOddFlag = true;
            }
        } 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){
                isOddFlag = true;
            }
        } {
            if(a[i] % 2 != 0){
                isOddFlag = true;
            }
        } if(a[i] % 2 != 0){
                isOddFlag = true;
            } a[i] % 2 != 0 a[i] % 2 a[i] a i 2 0 {
                isOddFlag = true;
            } isOddFlag = true isOddFlag true return isOddFlag; isOddFlag int[] a a public class Main {
    public static void main(String[] args) throws Exception {
        // Your code here!
        
        Scanner sc = new Scanner(System.in);
        int n = sc.nextInt(), count = 0;
        int[] a = new int[n];
        for(int i=0; i<n; i++){ a[i] = sc.nextInt(); }
        
        while(true){
            
            if(isOdd(a)){
                break;
            }
            
            
            for(int i=0;i<a.length;i++){
                a[i] /= 2;
            }
            count++;
            
        }
        System.out.println(count);
    }
    
    public static boolean isOdd(int[] a){
        boolean isOddFlag = false;
        for(int i=0;i<a.length; i++){
            if(a[i] % 2 != 0){
                isOddFlag = true;
            }
        }
        return isOddFlag;
    }
} public class Main {
    public static void main(String[] args) throws Exception {
        // Your code here!
        
        Scanner sc = new Scanner(System.in);
        int n = sc.nextInt(), count = 0;
        int[] a = new int[n];
        for(int i=0; i<n; i++){ a[i] = sc.nextInt(); }
        
        while(true){
            
            if(isOdd(a)){
                break;
            }
            
            
            for(int i=0;i<a.length;i++){
                a[i] /= 2;
            }
            count++;
            
        }
        System.out.println(count);
    }
    
    public static boolean isOdd(int[] a){
        boolean isOddFlag = false;
        for(int i=0;i<a.length; i++){
            if(a[i] % 2 != 0){
                isOddFlag = true;
            }
        }
        return isOddFlag;
    }
} Main
import java.util.*;

public class Main {
    public static void main(String[] args) throws Exception {
        // Your code here!
        
        Scanner sc = new Scanner(System.in);
        int n = sc.nextInt(), count = 0;
        int[] a = new int[n];
        for(int i=0; i<n; i++){ a[i] = sc.nextInt(); }
        
        while(true){
            
            if(isOdd(a)){
                break;
            }
            
            
            for(int i=0;i<a.length;i++){
                a[i] /= 2;
            }
            count++;
            
        }
        System.out.println(count);
    }
    
    public static boolean isOdd(int[] a){
        boolean isOddFlag = false;
        for(int i=0;i<a.length; i++){
            if(a[i] % 2 != 0){
                isOddFlag = true;
            }
        }
        return isOddFlag;
    }
}
