#include <bits/stdc++.h>
using namespace std;
int main(){
int count = 0;
int n,x;
cin >> n >> x;
int A[n];
for (int i = 0; i < n; i++){
cin >> A[i];
}
sort(A, A + n);
int f = 0;
int e = n -1;
map<int,int> num;
for (int x : A){
num[x]++;
}
for (auto i : num){
cout << i.first << "-" << i.second << endl;
}
while (e > f){
if (A[f] + A[e] == x){
count ++;
// cout << A[f] << "-" << A[e] << endl;
if (A[e] == A[e - 1] and e != f){
e--;
}
else if (A[f] == A[f + 1]and f != e){
f++;
}
else{
f++;
}
}
else if (A[f] + A[e] > x){
e--;
}
else{
f++;
}
}
// cout << count;
}
I2luY2x1ZGUgPGJpdHMvc3RkYysrLmg+CnVzaW5nIG5hbWVzcGFjZSBzdGQ7CgppbnQgbWFpbigpewoJaW50IGNvdW50ID0gMDsKCWludCBuLHg7CgljaW4gPj4gbiA+PiB4OwoJaW50IEFbbl07Cglmb3IgKGludCBpID0gMDsgaSA8IG47IGkrKyl7CgkJY2luID4+IEFbaV07Cgl9Cglzb3J0KEEsIEEgKyBuKTsKCWludCBmID0gMDsKCWludCBlID0gbiAtMTsKCW1hcDxpbnQsaW50PiBudW07Cglmb3IgKGludCB4IDogQSl7CgkJbnVtW3hdKys7Cgl9Cglmb3IgKGF1dG8gaSA6IG51bSl7CgkJY291dCA8PCBpLmZpcnN0IDw8ICItIiA8PCBpLnNlY29uZCA8PCBlbmRsOwoJfQoJd2hpbGUgKGUgPiBmKXsKCQlpZiAoQVtmXSArIEFbZV0gPT0geCl7CgkJCWNvdW50ICsrOwovLwkJCWNvdXQgPDwgQVtmXSA8PCAiLSIgPDwgQVtlXSA8PCBlbmRsOwoJCQlpZiAoQVtlXSA9PSBBW2UgLSAxXSBhbmQgZSAhPSBmKXsKCQkJCWUtLTsKCQkJfQoJCQllbHNlIGlmIChBW2ZdID09IEFbZiArIDFdYW5kIGYgIT0gZSl7CgkJCQlmKys7CgkJCX0KCQkJZWxzZXsKCQkJCWYrKzsKCQkJfQoJCX0KCQllbHNlIGlmIChBW2ZdICsgQVtlXSA+IHgpewoJCQllLS07CgkJfQoJCWVsc2V7CgkJCWYrKzsKCQl9Cgl9Ci8vCWNvdXQgPDwgY291bnQ7Cn0K