#include<bits/stdc++.h>
using namespace std;
typedef long long int ll;
#define IOS ios_base::sync_with_stdio(0); cin.tie(0); cout.tie(0);
typedef pair<int,int>pr;
#define all(i) i.begin() , i.end()
#define ft first
#define sn second
#define pb push_back
const int mod = 1e9+7;
#define en "\n"
#define dbg cout<<"rony\n";
vector<int>g[30];
int vis[30];
#define MAXN 200010
vector<pair<int,int>>v;
void dfs(int nd)
{
vis[nd] = 1;
for(auto i:g[nd])
{
if(vis[i] == 1) continue;
v.pb({i,nd});
dfs(i);
}
}
void solve()
{
int n;
cin >> n;
string s,t;
cin >> s >> t;
map<pair<char,char>,int>ma;
for(int i = 0;i < n;i++)
{
if(s[i] == t[i]) continue;
char c = max(s[i],t[i]);
char d = min(s[i],t[i]);
if(ma[{d,c}] == 1) continue;
ma[{d,c}]++;
g[s[i]-'a'].pb(t[i]-'a');
g[t[i]-'a'].pb(s[i] - 'a');
}
for(int i = 0;i < 26;i++)
{
if(vis[i] == 0 && g[i].size() > 0)
{
dfs(i);
}
}
cout<<v.size()<<en;
for(auto i:v)
{
char c = i.ft + 'a';
char d = i.sn + 'a';
cout<<c<<" "<<d<<en;
}
}
int main()
{
IOS;
int t;
//cin >> t;
t = 1;
while ( t-- )
{
solve();
}
return 0;
}
I2luY2x1ZGU8Yml0cy9zdGRjKysuaD4KdXNpbmcgbmFtZXNwYWNlIHN0ZDsKCnR5cGVkZWYgbG9uZyBsb25nIGludCBsbDsKI2RlZmluZSBJT1MgaW9zX2Jhc2U6OnN5bmNfd2l0aF9zdGRpbygwKTsgIGNpbi50aWUoMCk7IGNvdXQudGllKDApOwoKdHlwZWRlZiBwYWlyPGludCxpbnQ+cHI7CiNkZWZpbmUgYWxsKGkpICAgICBpLmJlZ2luKCkgLCBpLmVuZCgpCiNkZWZpbmUgZnQgICAgIGZpcnN0CiNkZWZpbmUgc24gICAgIHNlY29uZAojZGVmaW5lIHBiIHB1c2hfYmFjawoKY29uc3QgaW50IG1vZCA9IDFlOSs3OwojZGVmaW5lIGVuICJcbiIKI2RlZmluZSBkYmcgY291dDw8InJvbnlcbiI7Cgp2ZWN0b3I8aW50PmdbMzBdOwppbnQgdmlzWzMwXTsKI2RlZmluZSBNQVhOIDIwMDAxMAp2ZWN0b3I8cGFpcjxpbnQsaW50Pj52OwoKdm9pZCBkZnMoaW50IG5kKQp7CiAgdmlzW25kXSA9IDE7CiAgZm9yKGF1dG8gaTpnW25kXSkKICB7CiAgICAgaWYodmlzW2ldID09IDEpIGNvbnRpbnVlOwogICAgIHYucGIoe2ksbmR9KTsKICAgICBkZnMoaSk7CiAgfQp9CnZvaWQgc29sdmUoKQp7CiAgIGludCBuOwogICBjaW4gPj4gbjsKICAgc3RyaW5nIHMsdDsKICAgY2luID4+IHMgPj4gdDsKICAgbWFwPHBhaXI8Y2hhcixjaGFyPixpbnQ+bWE7CgogICBmb3IoaW50IGkgPSAwO2kgPCBuO2krKykKICAgewogICAgaWYoc1tpXSA9PSB0W2ldKSBjb250aW51ZTsKICAgIGNoYXIgYyA9IG1heChzW2ldLHRbaV0pOwogICAgY2hhciBkID0gbWluKHNbaV0sdFtpXSk7CiAgICBpZihtYVt7ZCxjfV0gPT0gMSkgY29udGludWU7CgogICAgbWFbe2QsY31dKys7CiAgICAgZ1tzW2ldLSdhJ10ucGIodFtpXS0nYScpOwogICAgIGdbdFtpXS0nYSddLnBiKHNbaV0gLSAnYScpOwogICB9CgogICBmb3IoaW50IGkgPSAwO2kgPCAyNjtpKyspCiAgIHsKICAgICBpZih2aXNbaV0gPT0gMCAmJiBnW2ldLnNpemUoKSA+IDApCiAgICAgewogICAgICAgZGZzKGkpOwogICAgIH0KICAgfQoKICAgY291dDw8di5zaXplKCk8PGVuOwogICBmb3IoYXV0byBpOnYpCiAgIHsKICAgIGNoYXIgYyA9IGkuZnQgKyAnYSc7CiAgICBjaGFyIGQgPSBpLnNuICsgJ2EnOwogICAgIGNvdXQ8PGM8PCIgIjw8ZDw8ZW47CiAgIH0KfSAKCmludCBtYWluKCkKewogICAgSU9TOwogICAgaW50IHQ7CiAgIC8vY2luID4+IHQ7CiAgIHQgPSAxOwogICAgd2hpbGUgKCB0LS0gKQogICAgewoKICAgICAgICBzb2x2ZSgpOwogICAgfQogICAgcmV0dXJuIDA7Cn0=