#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
const int MAXV = 1e5+2;
int N, W, dp[MAXV];
int main(){
	cin.tie(0);
	cin.sync_with_stdio(0);
	cin >> N >> W;
	memset(dp, 0x3f, sizeof(dp));
	dp[0] = 0;
	for(int i = 1, w, v;i<=N;i++){
		cin >> w >> v;
		for(int j = MAXV-1;j>=v;j--){
			dp[j] = min(dp[j], dp[j-v]+w);
		}
	}
	for(int i = MAXV-1;i>=0;i--){
		if(dp[i]<=W){cout << i << '\n'; return 0;}
	}
	return 0;
}