// inputに入力データ全体が入る
function Main(input) {
	// 1行目がinput[0], 2行目がinput[1], …に入る
	input = input.split("\n");
	S = input[0];
	T = input[1];

	var inS = [];
	var inT = [];

	var counter = function(str,seq){
		return str.split(seq).length - 1;
	}

	var first = "a", last = "z";
	for(var i = first.charCodeAt(0); i <= last.charCodeAt(0); i++) {
		inS[i] = counter(S, eval("String.fromCharCode(" + i + ")"));
		inT[i] = counter(T, eval("String.fromCharCode(" + i + ")"));
	}

	inS.sort(function(a,b){
        if( a > b ) return -1;
        if( a < b ) return 1;
		return 0;
	});

	inT.sort(function(a,b){
        if( a > b ) return -1;
        if( a < b ) return 1;
		return 0;
	});


	if (inS.toString() == inT.toString()) {
		console.log('Yes');
	} else {
		console.log('No');
	}
}
//*この行以降は編集しないでください（標準入出力から一度に読み込み、Mainを呼び出します）
Main(require("fs").readFileSync("/dev/stdin", "utf8"));
