#include <iostream>
#include <algorithm>
#include <vector>
using namespace std;
bool myfun(unsigned long long int i,unsigned long long int j){return(j<i);}
int main()
{
unsigned long long int t=0,m=0,n=0,i=0,j=0,ans=0;
string str;
cin>>t;
while(t--)
{
cin>>m>>n;
while(m--)
{
cin>>str;
vector <unsigned long long int> a(123,0);
/*for(i=0;i<123;i++)
{
a[i]=0;
}*/
for(i=0;i<str.length();i++)
{
a[str[i]]=a[str[i]]+1;
if((str[i]-n+1)>=97)
{
str[i]=char(str[i]-n+1);
}
else
{
str[i]=str[i]+27-n;
}
}
sort(a.begin()+97,a.end(),myfun);
ans=0;
i=97;
while(a[i]>0 && i<123)
{
ans=ans+((i-97)+1)*a[i];
i++;
}
cout<<str<<" "<<ans<<endl;
}
}
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8YWxnb3JpdGhtPgojaW5jbHVkZSA8dmVjdG9yPgp1c2luZyBuYW1lc3BhY2Ugc3RkOwogCmJvb2wgbXlmdW4odW5zaWduZWQgbG9uZyBsb25nIGludCBpLHVuc2lnbmVkIGxvbmcgbG9uZyBpbnQgail7cmV0dXJuKGo8aSk7fQogCmludCBtYWluKCkgCnsKCXVuc2lnbmVkIGxvbmcgbG9uZyBpbnQgdD0wLG09MCxuPTAsaT0wLGo9MCxhbnM9MDsKCXN0cmluZyBzdHI7CgljaW4+PnQ7Cgl3aGlsZSh0LS0pCgl7CgkJY2luPj5tPj5uOwoJCXdoaWxlKG0tLSkKCQl7CgkJCWNpbj4+c3RyOwoJCQl2ZWN0b3IgPHVuc2lnbmVkIGxvbmcgbG9uZyBpbnQ+IGEoMTIzLDApOwoJCQkvKmZvcihpPTA7aTwxMjM7aSsrKQoJCQl7CQoJCQkJYVtpXT0wOwoJCQl9Ki8KCQkJZm9yKGk9MDtpPHN0ci5sZW5ndGgoKTtpKyspCgkJCXsKCQkJCWFbc3RyW2ldXT1hW3N0cltpXV0rMTsKCQkJCWlmKChzdHJbaV0tbisxKT49OTcpCgkJCQl7CgkJCQkgCXN0cltpXT1jaGFyKHN0cltpXS1uKzEpOwoJCQkJfQoJCQkJZWxzZQoJCQkJewoJCQkJCXN0cltpXT1zdHJbaV0rMjctbjsKCQkJCX0KCQkJfQoJCQlzb3J0KGEuYmVnaW4oKSs5NyxhLmVuZCgpLG15ZnVuKTsKCQkJYW5zPTA7CgkJCWk9OTc7CgkJCXdoaWxlKGFbaV0+MCAmJiBpPDEyMykKCQkJewoJCQkJYW5zPWFucysoKGktOTcpKzEpKmFbaV07CgkJCQlpKys7CgkJCX0KCQkJY291dDw8c3RyPDwiICI8PGFuczw8ZW5kbDsKCQl9Cgl9CglyZXR1cm4gMDsKfQo=