N, K = map(int, input().split()) A = list(map(int, input().split())) A.sort(reverse=True) ans = 0 def dfs(X, i): if i == N - 1: global ans ans = max(ans, X % A[i]) return dfs(X, i + 1) dfs(X % A[i], i + 1) return dfs(K, 0) print(ans)