#include <bits/stdc++.h>
using namespace std;
constexpr int MAXN = 1e3 + 7;
int im[MAXN];
int main()
{
int n, k;
cin >> n >> k;
pair<int, int> monety[n];
for(int i = 0; i < n; ++i)
cin >> monety[i].second >> monety[i].first;
for(int i = 0; i < n; ++i)
{
for(int j = k; j >= monety[i].first; --j)
{
if(im[j-monety[i].first])
{
im[j] = min(im[j], im[j-monety[i].first] + monety[i].second);
if(im[j] == 0)
im[j] = im[j-monety[i].first] + monety[i].second;
}
}
im[monety[i].first] = monety[i].second;
}
if(im[k])
cout << im[k];
else
cout << "NIE";
}
I2luY2x1ZGUgPGJpdHMvc3RkYysrLmg+CnVzaW5nIG5hbWVzcGFjZSBzdGQ7Cgpjb25zdGV4cHIgaW50IE1BWE4gPSAxZTMgKyA3OwppbnQgaW1bTUFYTl07CgppbnQgbWFpbigpCnsKICAgIGludCBuLCBrOwogICAgY2luID4+IG4gPj4gazsKICAgIHBhaXI8aW50LCBpbnQ+IG1vbmV0eVtuXTsKICAgIGZvcihpbnQgaSA9IDA7IGkgPCBuOyArK2kpCiAgICAgICAgY2luID4+IG1vbmV0eVtpXS5zZWNvbmQgPj4gbW9uZXR5W2ldLmZpcnN0OwogICAgZm9yKGludCBpID0gMDsgaSA8IG47ICsraSkKICAgIHsKICAgICAgICBmb3IoaW50IGogPSBrOyBqID49IG1vbmV0eVtpXS5maXJzdDsgLS1qKQogICAgICAgIHsKICAgICAgICAgICAgaWYoaW1bai1tb25ldHlbaV0uZmlyc3RdKQogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICBpbVtqXSA9IG1pbihpbVtqXSwgaW1bai1tb25ldHlbaV0uZmlyc3RdICsgbW9uZXR5W2ldLnNlY29uZCk7CiAgICAgICAgICAgICAgICBpZihpbVtqXSA9PSAwKQogICAgICAgICAgICAgICAgICAgIGltW2pdID0gaW1bai1tb25ldHlbaV0uZmlyc3RdICsgbW9uZXR5W2ldLnNlY29uZDsKICAgICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBpbVttb25ldHlbaV0uZmlyc3RdID0gbW9uZXR5W2ldLnNlY29uZDsKICAgIH0KICAgIGlmKGltW2tdKSAKICAgICAgICBjb3V0IDw8IGltW2tdOwogICAgZWxzZQogICAgICAgIGNvdXQgPDwgIk5JRSI7Cn0=