- #include<bits/stdc++.h> 
- using namespace std; 
- vector<pair<string, string>> v; 
- int awal1 = 1; 
- string check(string s, int awal, int akhir){ 
- 	int tengah = (awal+akhir)/2; 
- 	bool temukan = false; 
- 	if(v[tengah].first == s){ 
- 		return v[tengah].second; 
- 		temukan = true; 
- 	} 
- 	else if(v[tengah].first > s){ 
- 		return check(s, awal, tengah-1); 
- 	} 
- 	else if(v[tengah].first < s){ 
- 		return check(s, tengah+1, akhir); 
- 	} 
- 	if(temukan == false) return "NIHIL"; 
- }  
-   
- int main(){ 
- 	ios::sync_with_stdio(0); 
- 	cin.tie(0); 
- 	//freopen("input.txt", "r", stdin); 
- 	//freopen("output.txt", "w", stdout); 
- 	 string s, s1, s2; vector<string> h;  
- 	int n, p; 
- 	cin >> n >> p; 
- 	for(int i=1;i<=n;i++){ 
- 		cin >> s >> s1; 
- 		v.push_back(make_pair(s, s1)); 
- 	} 
- 	for(int j=1;j<=p;j++){ 
- 		cin >> s2; 
- 		h.push_back(s2); 
- 	} 
- 	for(int i=1;i<=h.size();i++){ 
- 		cout << check(h[i], 1, v.size()) << "\n";	 
- 	} 
- 	/*for(int i=0;i<v.size();i++){ 
- 		cout << v[i].first << " " << v[i].second << "\n"; 
- 	} */ 
- } 
				I2luY2x1ZGU8Yml0cy9zdGRjKysuaD4KdXNpbmcgbmFtZXNwYWNlIHN0ZDsKdmVjdG9yPHBhaXI8c3RyaW5nLCBzdHJpbmc+PiB2OwppbnQgYXdhbDEgPSAxOwpzdHJpbmcgY2hlY2soc3RyaW5nIHMsIGludCBhd2FsLCBpbnQgYWtoaXIpewoJaW50IHRlbmdhaCA9IChhd2FsK2FraGlyKS8yOwoJYm9vbCB0ZW11a2FuID0gZmFsc2U7CglpZih2W3RlbmdhaF0uZmlyc3QgPT0gcyl7CgkJcmV0dXJuIHZbdGVuZ2FoXS5zZWNvbmQ7CgkJdGVtdWthbiA9IHRydWU7Cgl9CgllbHNlIGlmKHZbdGVuZ2FoXS5maXJzdCA+IHMpewoJCXJldHVybiBjaGVjayhzLCBhd2FsLCB0ZW5nYWgtMSk7Cgl9CgllbHNlIGlmKHZbdGVuZ2FoXS5maXJzdCA8IHMpewoJCXJldHVybiBjaGVjayhzLCB0ZW5nYWgrMSwgYWtoaXIpOwoJfQoJaWYodGVtdWthbiA9PSBmYWxzZSkgcmV0dXJuICJOSUhJTCI7Cn0gCgppbnQgbWFpbigpewoJaW9zOjpzeW5jX3dpdGhfc3RkaW8oMCk7CgljaW4udGllKDApOwoJLy9mcmVvcGVuKCJpbnB1dC50eHQiLCAiciIsIHN0ZGluKTsKCS8vZnJlb3Blbigib3V0cHV0LnR4dCIsICJ3Iiwgc3Rkb3V0KTsKCSBzdHJpbmcgcywgczEsIHMyOyB2ZWN0b3I8c3RyaW5nPiBoOyAKCWludCBuLCBwOwoJY2luID4+IG4gPj4gcDsKCWZvcihpbnQgaT0xO2k8PW47aSsrKXsKCQljaW4gPj4gcyA+PiBzMTsKCQl2LnB1c2hfYmFjayhtYWtlX3BhaXIocywgczEpKTsKCX0KCWZvcihpbnQgaj0xO2o8PXA7aisrKXsKCQljaW4gPj4gczI7CgkJaC5wdXNoX2JhY2soczIpOwoJfQoJZm9yKGludCBpPTE7aTw9aC5zaXplKCk7aSsrKXsKCQljb3V0IDw8IGNoZWNrKGhbaV0sIDEsIHYuc2l6ZSgpKSA8PCAiXG4iOwkKCX0KCS8qZm9yKGludCBpPTA7aTx2LnNpemUoKTtpKyspewoJCWNvdXQgPDwgdltpXS5maXJzdCA8PCAiICIgPDwgdltpXS5zZWNvbmQgPDwgIlxuIjsKCX0gKi8KfQ==