#include <bits/stdc++.h>
using namespace std;
#define ll long long
#define clr(a, h) memset(a, (h), sizeof(a))

//1 <= n <= 1000 cantidad de productos
//1 <= ai <= 1000 precio de cada producto
//1 <= k <= 10^6 dinero

int n, k;
int a[1000 + 10];

ll f(int pos, int gastado) { //(0<=pos<n) (0<=gastado<=k) 
    if(gastado > k) return 0;
    if(pos == n) return gastado; //si ya acabe los productos, retorno lo gastado
    
    int tomar = f(pos + 1, gastado + a[pos]);
    int no_tomar = f(pos + 1, gastado);
    
    return max(tomar, no_tomar);
}

int main() {
	cin >> n >> k;
	for(int i = 0; i < n; i++)
	    cin >> a[i];
	cout << f(0, 0) << "\n";
    return 0;
}
