import time import itertools import collections from functools import reduce from functools import wraps from collections import defaultdict # import pdb; pdb.set_trace() from operator import add #def fn(*args, **kwargs): # @profile def fn(): m, n = (int(i) for i in input().split()) a = [int(input()) for _ in range(n)] ans_lst = [] for i, _ in enumerate(a, 1): for perm in itertools.permutations(a, r=i): enum = reduce(lambda x, y: x + y, perm) ans_lst.append(enum) ans = max(list(filter(lambda x: n >= x, ans_lst))) print(ans) #return ans if __name__ == "__main__": fn()