#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=