#include <bits/stdc++.h>
#define endl '\n'
#define yes cout<<"YES\n"
#define no cout<<"NO\n"
using namespace std;
void fast(){
ios_base::sync_with_stdio(NULL);
cin.tie(0);cout.tie(0);
}
bool isbit(int n,int x){
if((n&(1<<x)))return 1;
else return 0;
}
multiset<int>stl,str;
int main(){
fast();
int t=1;
//cin>>t;
while(t--){
int n,a,x;
cin>>n>>x;
vector<pair<int,int>>v;
for(int i=0;i<n;i++){
cin>>a;
v.push_back({a,i+1});
}
sort(v.begin(),v.end());
int r=n-1,l=0,sum=0;
while(l<r){
sum=v[l].first+v[r].first;
if(sum==x){
cout<<v[l].second<<" "<<v[r].second;
return 0;
}else if(sum>x)r--;
else l++;
}
cout<<"IMPOSSIBLE";
}
}
ICNpbmNsdWRlIDxiaXRzL3N0ZGMrKy5oPgogICAgI2RlZmluZSBlbmRsICdcbicKICAgICNkZWZpbmUgeWVzIGNvdXQ8PCJZRVNcbiIKICAgICNkZWZpbmUgbm8gY291dDw8Ik5PXG4iCiAgICB1c2luZyBuYW1lc3BhY2Ugc3RkOwogICAgdm9pZCBmYXN0KCl7CiAgICAgICAgaW9zX2Jhc2U6OnN5bmNfd2l0aF9zdGRpbyhOVUxMKTsKICAgICAgICBjaW4udGllKDApO2NvdXQudGllKDApOwogICAgfQogICAgYm9vbCBpc2JpdChpbnQgbixpbnQgeCl7CiAgICAgICAgaWYoKG4mKDE8PHgpKSlyZXR1cm4gMTsKICAgICAgICBlbHNlIHJldHVybiAwOwogICAgfQogICAgbXVsdGlzZXQ8aW50PnN0bCxzdHI7CiAgICBpbnQgbWFpbigpewogICAgICAgIGZhc3QoKTsKICAgICAgICBpbnQgdD0xOwogICAgICAgIC8vY2luPj50OwogICAgICAgIHdoaWxlKHQtLSl7CiAgICAgICAgICAgIGludCBuLGEseDsKICAgICAgICAgICAgY2luPj5uPj54OwogICAgICAgICAgICB2ZWN0b3I8cGFpcjxpbnQsaW50Pj52OwogICAgICAgICAgICBmb3IoaW50IGk9MDtpPG47aSsrKXsKICAgICAgICAgICAgICAgIGNpbj4+YTsKICAgICAgICAgICAgICAgIHYucHVzaF9iYWNrKHthLGkrMX0pOwogICAgICAgICAgICB9CiAgICAgICAgICAgIHNvcnQodi5iZWdpbigpLHYuZW5kKCkpOwogICAgICAgICAgICBpbnQgcj1uLTEsbD0wLHN1bT0wOwogICAgICAgICAgICB3aGlsZShsPHIpewogICAgICAgICAgICAgICAgc3VtPXZbbF0uZmlyc3QrdltyXS5maXJzdDsKICAgICAgICAgICAgICAgIGlmKHN1bT09eCl7CiAgICAgICAgICAgICAgICAgICAgY291dDw8dltsXS5zZWNvbmQ8PCIgIjw8dltyXS5zZWNvbmQ7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIDA7CiAgICAgICAgICAgICAgICB9ZWxzZSBpZihzdW0+eClyLS07CiAgICAgICAgICAgICAgICBlbHNlIGwrKzsKICAgICAgICAgICAgfQogICAgICAgICAgICBjb3V0PDwiSU1QT1NTSUJMRSI7CiAgICAgICAgfQogICAgfQo=