#include <iostream>
#include <algorithm>
#include <string>
using namespace std;
struct Participant {
string name;
int value;
};
bool cmp(const Participant &a, const Participant &b) {
return a.value < b.value;
}
int main() {
ios::sync_with_stdio(false);
cin.tie(nullptr);
int n;
long long s;
cin >> n >> s;
Participant participants[200000]; // max n = 200000
for (int i = 0; i < n; ++i) {
cin >> participants[i].name >> participants[i].value;
}
sort(participants, participants + n, cmp);
int left = 0;
int right = n - 1;
while (left < right) {
long long sum = (long long)participants[left].value + participants[right].value;
if (sum == s) {
cout << participants[left].name << " " << participants[right].name << "\n";
return 0;
} else if (sum < s) {
++left;
} else {
--right;
}
}
cout << "NIE\n";
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8YWxnb3JpdGhtPgojaW5jbHVkZSA8c3RyaW5nPgp1c2luZyBuYW1lc3BhY2Ugc3RkOwoKc3RydWN0IFBhcnRpY2lwYW50IHsKICAgIHN0cmluZyBuYW1lOwogICAgaW50IHZhbHVlOwp9OwoKYm9vbCBjbXAoY29uc3QgUGFydGljaXBhbnQgJmEsIGNvbnN0IFBhcnRpY2lwYW50ICZiKSB7CiAgICByZXR1cm4gYS52YWx1ZSA8IGIudmFsdWU7Cn0KCmludCBtYWluKCkgewogICAgaW9zOjpzeW5jX3dpdGhfc3RkaW8oZmFsc2UpOwogICAgY2luLnRpZShudWxscHRyKTsKCiAgICBpbnQgbjsKICAgIGxvbmcgbG9uZyBzOwogICAgY2luID4+IG4gPj4gczsKCiAgICBQYXJ0aWNpcGFudCBwYXJ0aWNpcGFudHNbMjAwMDAwXTsgLy8gbWF4IG4gPSAyMDAwMDAKCiAgICBmb3IgKGludCBpID0gMDsgaSA8IG47ICsraSkgewogICAgICAgIGNpbiA+PiBwYXJ0aWNpcGFudHNbaV0ubmFtZSA+PiBwYXJ0aWNpcGFudHNbaV0udmFsdWU7CiAgICB9CgogICAgc29ydChwYXJ0aWNpcGFudHMsIHBhcnRpY2lwYW50cyArIG4sIGNtcCk7CgogICAgaW50IGxlZnQgPSAwOwogICAgaW50IHJpZ2h0ID0gbiAtIDE7CgogICAgd2hpbGUgKGxlZnQgPCByaWdodCkgewogICAgICAgIGxvbmcgbG9uZyBzdW0gPSAobG9uZyBsb25nKXBhcnRpY2lwYW50c1tsZWZ0XS52YWx1ZSArIHBhcnRpY2lwYW50c1tyaWdodF0udmFsdWU7CiAgICAgICAgaWYgKHN1bSA9PSBzKSB7CiAgICAgICAgICAgIGNvdXQgPDwgcGFydGljaXBhbnRzW2xlZnRdLm5hbWUgPDwgIiAiIDw8IHBhcnRpY2lwYW50c1tyaWdodF0ubmFtZSA8PCAiXG4iOwogICAgICAgICAgICByZXR1cm4gMDsKICAgICAgICB9IGVsc2UgaWYgKHN1bSA8IHMpIHsKICAgICAgICAgICAgKytsZWZ0OwogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIC0tcmlnaHQ7CiAgICAgICAgfQogICAgfQoKICAgIGNvdXQgPDwgIk5JRVxuIjsKICAgIHJldHVybiAwOwp9