Given two strings 【PAT (Advanced Level) Practice】1050 String Subtraction (20 分)_哈希算法 and 【PAT (Advanced Level) Practice】1050 String Subtraction (20 分)_哈希算法_02, 【PAT (Advanced Level) Practice】1050 String Subtraction (20 分)_pat甲级_03 is defined to be the remaining string after taking all the characters in 【PAT (Advanced Level) Practice】1050 String Subtraction (20 分)_哈希算法_02 from 【PAT (Advanced Level) Practice】1050 String Subtraction (20 分)_哈希算法. Your task is simply to calculate 【PAT (Advanced Level) Practice】1050 String Subtraction (20 分)_哈希算法_06 for any given strings. However, it might not be that simple to do it fast.

Input Specification:
Each input file contains one test case. Each case consists of two lines which gives 【PAT (Advanced Level) Practice】1050 String Subtraction (20 分)_哈希算法 and 【PAT (Advanced Level) Practice】1050 String Subtraction (20 分)_哈希算法_02, respectively. The string lengths of both strings are no more than 【PAT (Advanced Level) Practice】1050 String Subtraction (20 分)_c++_09. It is guaranteed that all the characters are visible ASCII codes and white space, and a new line character signals the end of a string.

Output Specification:
For each test case, print 【PAT (Advanced Level) Practice】1050 String Subtraction (20 分)_哈希算法_06 in one line.

Sample Input:

They are students.
aeiou

Sample Output:

Thy r stdnts.


#include<iostream>
#include<unordered_set>

using namespace std;

int main(){

string s1, s2;

getline(cin, s1);
getline(cin, s2);

unordered_set<char> hash;
for(auto c: s2) hash.insert(c);

for(auto c: s1)
if(!hash.count(c))
cout << c;

cout << endl;

return 0;
}