Dictionary Operations

Sie haben ein leeres Dictionary (Wörterbuch) und erhalten n Abfragen. Jede Abfrage gehört zu einem der folgenden zwei Typen:
  • Typ 1: Einen String in das Dictionary einfügen.
  • Typ 2: Prüfen, ob ein bestimmter String im Dictionary vorhanden ist.
Ihre Aufgabe ist es, ein Programm zu implementieren, das diese Abfragen effizient verarbeitet.
Falls bei einer Abfrage vom Typ 2 der String im Dictionary vorhanden ist, geben Sie Yes aus, andernfalls No.

Input

Die Eingabe besteht aus mehreren Zeilen. Die erste Zeile enthält eine ganze Zahl q (1 ≤ q ≤ ), die die Anzahl der Abfragen angibt.
Die folgenden q Zeilen beschreiben die Abfragen. Jede Zeile beginnt mit einer ganzen Zahl type (1 oder 2), die den Abfragetyp kennzeichnet.
  • Ist type = 1, folgt nach einem Leerzeichen ein String s (1 ≤ |s| ≤ 1000). Dieser String wird in das Dictionary eingefügt. Der String besteht nur aus Kleinbuchstaben des englischen Alphabets.
  • Ist type = 2, folgt nach einem Leerzeichen ein String s (1 ≤ |s| ≤ 1000). Dieser String wird im Dictionary überprüft. Der String besteht nur aus Kleinbuchstaben des englischen Alphabets.
Es ist garantiert, dass die Summe der Längen aller Abfrage-Strings nicht überschreitet.

Output

Geben Sie für jede Abfrage von Typ 2 Yes aus, wenn der String im Dictionary vorhanden ist, andernfalls No.

Examples

Eingabe
Ausgabe
5 1 abc 1 xyz 2 cba 1 def 2 xyz
No Yes

Constraints

Time limit: 4 seconds

Memory limit: 512 MB

Output limit: 1 MB

To check your solution you need to sign in
Sign in to continue