#include <iostream>
#include <cstdio>
#include <vector>
#include <unordered_map>
using namespace std;
struct Account{
string name;
string password;
Account(string n, string p) : name(n), password(p){}
};
unordered_map<char, char> chars = {
{'1', '@'},
{'0', '%'},
{'l', 'L'},
{'O', 'o'}
};
int main(){
int n;
scanf("%d", &n);
vector<Account> users;
for(int i = 0; i < n; ++i){
string name, password;
cin >> name >> password;
users.emplace_back(name, password);
}
vector<Account> outs;
for(auto& user : users){
bool modified = false;
for(auto& c : user.password){
if(chars.find(c) != chars.end()){
c = chars[c];
modified = true;
}
}
if(modified) outs.push_back(user);
}
if(outs.empty()){
if(users.size() <= 1){
printf("There is %d account and no account is modified", n);
}else{
printf("There are %d accounts and no account is modified", n);
}
}else{
printf("%d\n", (int)outs.size());
for(auto& out : outs){
printf("%s %s\n", out.name.c_str(), out.password.c_str());
}
}
return 0;
}