def main():

    _ = eval(input())

    li = list(map(int, input().split()))



    cnt = 0

    while True:

        if 1 in [x % 2 for x in li]:

            break

        else:

            cnt += 1

            li = [x // 2 for x in li]

    print(cnt)





if __name__ == '__main__':

    main()

N = int(eval(input()))

A = list(map(int, input().split()))



ans = 0

B = []

for a in A:

    cnt = 0

    while a % 2 == 0:

        a //= 2

        cnt += 1

    B.append(cnt)



print((min(B)))

def main():
    _ = eval(input())
    li = list(map(int, input().split()))
    cnt = 0
    while True:
        if 1 in [x % 2 for x in li]:
            break
        else:
            cnt += 1
            li = [x // 2 for x in li]
    print(cnt)


if __name__ == "__main__":
    main()

N = int(eval(input()))
A = list(map(int, input().split()))
ans = 0
B = []
for a in A:
    cnt = 0
    while a % 2 == 0:
        a //= 2
        cnt += 1
    B.append(cnt)
print((min(B)))

-def main(): -    _ = eval(input()) -    li = list(map(int, input().split())) +N = int(eval(input())) +A = list(map(int, input().split())) +ans = 0 +B = [] +for a in A: -    while True: -        if 1 in [x % 2 for x in li]: -            break -        else: -            cnt += 1 -            li = [x // 2 for x in li] -    print(cnt) - - -if __name__ == "__main__": -    main() +    while a % 2 == 0: +        a //= 2 +        cnt += 1 +    B.append(cnt) +print((min(B)))