#define _USE_MATH_DEFINES #include #include #include #include #include #include #include #include #include #define ll long long #define dou(s) atof(s.c_str()) #define lon(s) atoll(s.c_str()) #define str(n) to_string(n) #define rep(i,a,b) for(ll i=a;i=a;i--) #define ALL(a) a.begin(),a.end() #define fion(n) fixed<=n&&a[lower_bound(ALL(a),n)-a.begin()]==n?lower_bound(ALL(a),n)-a.begin():-1) #define fist(s,t) ((int)s.find(t)) #define START int main(){cin.tie(0);ios::sync_with_stdio(false); #define END } using namespace std; ll f(ll n,ll k,const vector &a,ll i,ll w){ if(w>k)return 0; if(i==n)return w; return max(f(n,k,a,i+1,w+a[i]),f(n,k,a,i+1,w)); } START ll n,k;cin>>n>>k; vector a(n); rep(i,0,n)cin>>a[i]; cout<