#include<stdio.h>
#include<stdlib.h>
#include<math.h>
#include<iostream>
#include<string.h>
#define inf 0x3f3f3f
using namespace std;
char a[1000],b[1000],h;
int n,s;
bool vis[1000];
int main()
{
while(scanf("%d",&n) != EOF)
{
memset(vis,0,sizeof(vis));
scanf("%s",a);
scanf("%s",b);
s = 0;
for(int i = 0 ;i < strlen(b) ;i++)
{
for(int j = 0 ;j < n ;j++)
{
if(b[i] == a[j] && vis[j] == 0)
{
vis[j] = 1;
break;
}
if(j == n-1 && a[j] != b[i])
s = 1;
}
if(s == 1)break;
}
if(s == 1)printf("No\n");
else printf("Yes\n");
}
}
#include<stdlib.h>
#include<math.h>
#include<iostream>
#include<string.h>
#define inf 0x3f3f3f
using namespace std;
char a[1000],b[1000],h;
int n,s;
bool vis[1000];
int main()
{
while(scanf("%d",&n) != EOF)
{
memset(vis,0,sizeof(vis));
scanf("%s",a);
scanf("%s",b);
s = 0;
for(int i = 0 ;i < strlen(b) ;i++)
{
for(int j = 0 ;j < n ;j++)
{
if(b[i] == a[j] && vis[j] == 0)
{
vis[j] = 1;
break;
}
if(j == n-1 && a[j] != b[i])
s = 1;
}
if(s == 1)break;
}
if(s == 1)printf("No\n");
else printf("Yes\n");
}
}