import java.io.*; // 処理 class Process { private String A; private String B; Process(String A, String B) { this.A = A; this.B = B; } String getResult() { if(A.equals(B)) { return "YES"; } int[] alphabetCountsOfA = new int[26]; for(int i = 0; i < A.length(); i++) { alphabetCountsOfA[A.charAt(i) - 'a']++; } int[] alphabetCountsOfB = new int[26]; for(int i = 0; i < B.length(); i++) { alphabetCountsOfB[B.charAt(i) - 'a']++; } for(int i = 0; i < alphabetCountsOfA.length; i++) { if(alphabetCountsOfA[i] != alphabetCountsOfB[i]) { return "NO"; } } return "YES"; } } public class Main { public static void main(String[] args) throws IOException { var bufferedReader = new BufferedReader(new InputStreamReader(System.in)); var printWriter = new PrintWriter(new BufferedWriter(new OutputStreamWriter(System.out))); // 入力 String A = bufferedReader.readLine().trim(); String B = bufferedReader.readLine().trim(); // 出力 printWriter.println((new Process(A, B)).getResult()); bufferedReader.close(); printWriter.close(); } }