시간 제한 메모리 제한 제출 정답 맞은 사람 정답 비율
2 초 256 MB 1081 211 116 22.137%

문제

상근이는 매일 아침 실험실로 출근해서 샘플의 무게를 재는 일을 하고 있다. 상근이는 두 샘플을 고른 뒤, 저울을 이용해서 무게의 차이를 잰다.

교수님의 마음에 들기 위해서 매일 아침부터 무게를 재고 있지만, 가끔 교수님이 실험실에 들어와서 상근이에게 어떤 두 샘플의 무게의 차이를 물어보기도 한다. 이때, 상근이는 지금까지 잰 결과를 바탕으로 대답을 할 수도 있고, 못 할 수도 있다.

상근이는 결과를 출근한 첫 날부터 공책에 적어 두었다. 하지만, 엄청난 양의 무게가 적혀있기 때문에, 교수님의 질문에 재빨리 대답할 수가 없었다. 이런 상근이를 위해서 프로그램을 만드려고 한다.

상근이가 실험실에서 한 일이 순서대로 주어진다. 어떤 두 샘플의 무게의 차이를 구할 수 있는지 없는지를 알아내는 프로그램을 작성하시오.

입력

입력은 여러 개의 테스트 케이스로 이루어져 있다.

각 테스트 케이스의 첫째 줄에는 샘플의 종류의 개수 N (2 ≤ N ≤ 100,000)과 상근이가 실험실에서 한 일의 수 M (1 ≤ M ≤ 100,000)이 주어진다. 샘플은 1번부터 N번까지 번호가 매겨져 있다. 다음 M개 줄에는 상근이가 실험실에서 한 일이 주어진다.

상근이가 무게를 쟀다면, ! a b w와 같은 형식으로 주어진다. 이 뜻은 b가 a보다 w그램 무겁다는 뜻이다. (a ≠ b) w는 1,000,000을 넘지 않는 음이 아닌 정수이다. 모든 측정은 정확하고, 일관성을 유지한다.

교수님의 질문은 ? a b와 같은 형식으로 주어진다. 이 뜻은 b가 a보다 얼마나 무거운지를 출력하라는 뜻이다.

마지막 줄에는 0이 두 개 주어진다.

출력

교수님의 질문 (? a b)이 입력으로 들어올 때 마다, 지금까지 측정한 결과를 바탕으로 a와 b의 무게 차이를 계산할 수 있다면, b가 a보다 얼마나 무거운지를 출력한다. 무게의 차이의 절댓값이 1,000,000을 넘지 않는다. 만약, 측정한 결과를 바탕으로 무게의 차이를 계산할 수 없다면, "UNKNOWN"을 출력한다.

예제 입력 1

2 2
! 1 2 1
? 1 2
2 2
! 1 2 1
? 2 1
4 7
! 1 2 100
? 2 3
! 2 3 100
? 2 3
? 1 3
! 4 3 150
? 4 1
0 0

예제 출력 1

1
-1
UNKNOWN
100
200
-50
W3sicHJvYmxlbV9pZCI6IjM4MzAiLCJwcm9ibGVtX2xhbmciOiIwIiwidGl0bGUiOiJcdWFkNTBcdWMyMThcdWIyZDhcdWM3NDAgXHVhZTMwXHViMmU0XHViOWFjXHVjOWMwIFx1YzU0YVx1YjI5NFx1YjJlNCIsImRlc2NyaXB0aW9uIjoiPHA+XHJcblx0XHVjMGMxXHVhZGZjXHVjNzc0XHViMjk0IFx1YjllNFx1Yzc3YyBcdWM1NDRcdWNlNjggXHVjMmU0XHVkNWQ4XHVjMmU0XHViODVjIFx1Y2Q5Y1x1YWRmY1x1ZDU3NFx1YzExYyBcdWMwZDhcdWQ1MGNcdWM3NTggXHViYjM0XHVhYzhjXHViOTdjIFx1YzdhY1x1YjI5NCBcdWM3N2NcdWM3NDQgXHVkNTU4XHVhY2UwIFx1Yzc4OFx1YjJlNC4gXHVjMGMxXHVhZGZjXHVjNzc0XHViMjk0IFx1YjQ1MCBcdWMwZDhcdWQ1MGNcdWM3NDQgXHVhY2UwXHViOTc4IFx1YjRhNCwgXHVjODAwXHVjNmI4XHVjNzQ0IFx1Yzc3NFx1YzZhOVx1ZDU3NFx1YzExYyBcdWJiMzRcdWFjOGNcdWM3NTggXHVjYzI4XHVjNzc0XHViOTdjIFx1YzdiMFx1YjJlNC48XC9wPlxyXG5cclxuPHA+XHJcblx0XHVhZDUwXHVjMjE4XHViMmQ4XHVjNzU4IFx1YjljOFx1Yzc0Y1x1YzVkMCBcdWI0ZTRcdWFlMzAgXHVjNzA0XHVkNTc0XHVjMTFjIFx1YjllNFx1Yzc3YyBcdWM1NDRcdWNlNjhcdWJkODBcdWQxMzAgXHViYjM0XHVhYzhjXHViOTdjIFx1YzdhY1x1YWNlMCBcdWM3ODhcdWM5YzBcdWI5Y2MsIFx1YWMwMFx1YjA1NCBcdWFkNTBcdWMyMThcdWIyZDhcdWM3NzQgXHVjMmU0XHVkNWQ4XHVjMmU0XHVjNWQwIFx1YjRlNFx1YzViNFx1YzY0MFx1YzExYyBcdWMwYzFcdWFkZmNcdWM3NzRcdWM1ZDBcdWFjOGMgXHVjNWI0XHViNWE0IFx1YjQ1MCBcdWMwZDhcdWQ1MGNcdWM3NTggXHViYjM0XHVhYzhjXHVjNzU4IFx1Y2MyOFx1Yzc3NFx1Yjk3YyBcdWJiM2NcdWM1YjRcdWJjZjRcdWFlMzBcdWIzYzQgXHVkNTVjXHViMmU0LiBcdWM3NzRcdWI1NGMsIFx1YzBjMVx1YWRmY1x1Yzc3NFx1YjI5NCBcdWM5YzBcdWFlMDhcdWFlNGNcdWM5YzAgXHVjN2IwIFx1YWNiMFx1YWNmY1x1Yjk3YyBcdWJjMTRcdWQwZDVcdWM3M2NcdWI4NWMgXHViMzAwXHViMmY1XHVjNzQ0IFx1ZDU2MCBcdWMyMThcdWIzYzQgXHVjNzg4XHVhY2UwLCBcdWJhYmIgXHVkNTYwIFx1YzIxOFx1YjNjNCBcdWM3ODhcdWIyZTQuPFwvcD5cclxuXHJcbjxwPlxyXG5cdFx1YzBjMVx1YWRmY1x1Yzc3NFx1YjI5NCBcdWFjYjBcdWFjZmNcdWI5N2MgXHVjZDljXHVhZGZjXHVkNTVjIFx1Y2NhYiBcdWIwYTBcdWJkODBcdWQxMzAgXHVhY2Y1XHVjYzQ1XHVjNWQwIFx1YzgwMVx1YzViNCBcdWI0NTBcdWM1YzhcdWIyZTQuIFx1ZDU1OFx1YzljMFx1YjljYywgXHVjNWM0XHVjY2FkXHViMDljIFx1YzU5MVx1Yzc1OCBcdWJiMzRcdWFjOGNcdWFjMDAgXHVjODAxXHVkNjAwXHVjNzg4XHVhZTMwIFx1YjU0Y1x1YmIzOFx1YzVkMCwgXHVhZDUwXHVjMjE4XHViMmQ4XHVjNzU4IFx1YzljOFx1YmIzOFx1YzVkMCBcdWM3YWNcdWJlNjhcdWI5YWMgXHViMzAwXHViMmY1XHVkNTYwIFx1YzIxOFx1YWMwMCBcdWM1YzZcdWM1YzhcdWIyZTQuIFx1Yzc3NFx1YjdmMCBcdWMwYzFcdWFkZmNcdWM3NzRcdWI5N2MgXHVjNzA0XHVkNTc0XHVjMTFjIFx1ZDUwNFx1Yjg1Y1x1YWRmOFx1YjdhOFx1Yzc0NCBcdWI5Y2NcdWI0ZGNcdWI4MjRcdWFjZTAgXHVkNTVjXHViMmU0LjxcL3A+XHJcblxyXG48cD5cclxuXHRcdWMwYzFcdWFkZmNcdWM3NzRcdWFjMDAgXHVjMmU0XHVkNWQ4XHVjMmU0XHVjNWQwXHVjMTFjIFx1ZDU1YyBcdWM3N2NcdWM3NzQgXHVjMjFjXHVjMTFjXHViMzAwXHViODVjIFx1YzhmY1x1YzViNFx1YzljNFx1YjJlNC4gXHVjNWI0XHViNWE0IFx1YjQ1MCBcdWMwZDhcdWQ1MGNcdWM3NTggXHViYjM0XHVhYzhjXHVjNzU4IFx1Y2MyOFx1Yzc3NFx1Yjk3YyBcdWFkNmNcdWQ1NjAgXHVjMjE4IFx1Yzc4OFx1YjI5NFx1YzljMCBcdWM1YzZcdWIyOTRcdWM5YzBcdWI5N2MgXHVjNTRjXHVjNTQ0XHViMGI0XHViMjk0IFx1ZDUwNFx1Yjg1Y1x1YWRmOFx1YjdhOFx1Yzc0NCBcdWM3OTFcdWMxMzFcdWQ1NThcdWMyZGNcdWM2MjQuPFwvcD5cclxuIiwiaW5wdXQiOiJcclxuXHJcbjxwPlxyXG5cdFx1Yzc4NVx1YjgyNVx1Yzc0MCBcdWM1ZWNcdWI3ZWMgXHVhYzFjXHVjNzU4IFx1ZDE0Y1x1YzJhNFx1ZDJiOCBcdWNmMDBcdWM3NzRcdWMyYTRcdWI4NWMgXHVjNzc0XHViOGU4XHVjNWI0XHVjODM4IFx1Yzc4OFx1YjJlNC48XC9wPlxyXG5cclxuPHA+XHJcblx0XHVhYzAxIFx1ZDE0Y1x1YzJhNFx1ZDJiOCBcdWNmMDBcdWM3NzRcdWMyYTRcdWM3NTggXHVjY2FiXHVjOWY4IFx1YzkwNFx1YzVkMFx1YjI5NCBcdWMwZDhcdWQ1MGNcdWM3NTggXHVjODg1XHViOTU4XHVjNzU4IFx1YWMxY1x1YzIxOCBOICgyICZsZTsgTiAmbGU7IDEwMCwwMDApXHVhY2ZjIFx1YzBjMVx1YWRmY1x1Yzc3NFx1YWMwMCBcdWMyZTRcdWQ1ZDhcdWMyZTRcdWM1ZDBcdWMxMWMgXHVkNTVjIFx1Yzc3Y1x1Yzc1OCBcdWMyMTggTSAoMSAmbGU7IE0gJmxlOyAxMDAsMDAwKVx1Yzc3NCBcdWM4ZmNcdWM1YjRcdWM5YzRcdWIyZTQuIFx1YzBkOFx1ZDUwY1x1Yzc0MCAxXHViYzg4XHViZDgwXHVkMTMwIE5cdWJjODhcdWFlNGNcdWM5YzAgXHViYzg4XHVkNjM4XHVhYzAwIFx1YjllNFx1YWNhOFx1YzgzOCBcdWM3ODhcdWIyZTQuIFx1YjJlNFx1Yzc0YyBNXHVhYzFjIFx1YzkwNFx1YzVkMFx1YjI5NCBcdWMwYzFcdWFkZmNcdWM3NzRcdWFjMDAgXHVjMmU0XHVkNWQ4XHVjMmU0XHVjNWQwXHVjMTFjIFx1ZDU1YyBcdWM3N2NcdWM3NzQgXHVjOGZjXHVjNWI0XHVjOWM0XHViMmU0LjxcL3A+XHJcblxyXG48cD5cclxuXHRcdWMwYzFcdWFkZmNcdWM3NzRcdWFjMDAgXHViYjM0XHVhYzhjXHViOTdjIFx1YzdjMFx1YjJlNFx1YmE3NCwgISBhIGIgd1x1YzY0MCBcdWFjMTlcdWM3NDAgXHVkNjE1XHVjMmRkXHVjNzNjXHViODVjIFx1YzhmY1x1YzViNFx1YzljNFx1YjJlNC4gXHVjNzc0IFx1YjczYlx1Yzc0MCBiXHVhYzAwIGFcdWJjZjRcdWIyZTQgd1x1YWRmOFx1YjdhOCBcdWJiMzRcdWFjODFcdWIyZTRcdWIyOTQgXHViNzNiXHVjNzc0XHViMmU0LiAoYSAmbmU7IGIpIHdcdWIyOTQgMSwwMDAsMDAwXHVjNzQ0IFx1YjExOFx1YzljMCBcdWM1NGFcdWIyOTQgXHVjNzRjXHVjNzc0IFx1YzU0NFx1YjJjYyBcdWM4MTVcdWMyMThcdWM3NzRcdWIyZTQuIFx1YmFhOFx1YjRlMCBcdWNlMjFcdWM4MTVcdWM3NDAgXHVjODE1XHVkNjU1XHVkNTU4XHVhY2UwLCBcdWM3N2NcdWFkMDBcdWMxMzFcdWM3NDQgXHVjNzIwXHVjOWMwXHVkNTVjXHViMmU0LjxcL3A+XHJcblxyXG48cD5cclxuXHRcdWFkNTBcdWMyMThcdWIyZDhcdWM3NTggXHVjOWM4XHViYjM4XHVjNzQwID8gYSBiXHVjNjQwIFx1YWMxOVx1Yzc0MCBcdWQ2MTVcdWMyZGRcdWM3M2NcdWI4NWMgXHVjOGZjXHVjNWI0XHVjOWM0XHViMmU0LiBcdWM3NzQgXHViNzNiXHVjNzQwIGJcdWFjMDAgYVx1YmNmNFx1YjJlNCBcdWM1YmNcdWI5YzhcdWIwOTggXHViYjM0XHVhYzcwXHVjNmI0XHVjOWMwXHViOTdjIFx1Y2Q5Y1x1YjgyNVx1ZDU1OFx1Yjc3Y1x1YjI5NCBcdWI3M2JcdWM3NzRcdWIyZTQuPFwvcD5cclxuXHJcbjxwPlxyXG5cdFx1YjljOFx1YzljMFx1YjljOSBcdWM5MDRcdWM1ZDBcdWIyOTQgMFx1Yzc3NCBcdWI0NTAgXHVhYzFjIFx1YzhmY1x1YzViNFx1YzljNFx1YjJlNC48XC9wPlxyXG4iLCJvdXRwdXQiOiI8cD5cclxuXHRcdWFkNTBcdWMyMThcdWIyZDhcdWM3NTggXHVjOWM4XHViYjM4ICg/IGEgYilcdWM3NzQgXHVjNzg1XHViODI1XHVjNzNjXHViODVjIFx1YjRlNFx1YzViNFx1YzYyYyBcdWI1NGMgXHViOWM4XHViMmU0LCBcdWM5YzBcdWFlMDhcdWFlNGNcdWM5YzAgXHVjZTIxXHVjODE1XHVkNTVjIFx1YWNiMFx1YWNmY1x1Yjk3YyBcdWJjMTRcdWQwZDVcdWM3M2NcdWI4NWMgYVx1YzY0MCBiXHVjNzU4IFx1YmIzNFx1YWM4YyBcdWNjMjhcdWM3NzRcdWI5N2MgXHVhY2M0XHVjMGIwXHVkNTYwIFx1YzIxOCBcdWM3ODhcdWIyZTRcdWJhNzQsIGJcdWFjMDAgYVx1YmNmNFx1YjJlNCBcdWM1YmNcdWI5YzhcdWIwOTggXHViYjM0XHVhYzcwXHVjNmI0XHVjOWMwXHViOTdjIFx1Y2Q5Y1x1YjgyNVx1ZDU1Y1x1YjJlNC4gXHViYjM0XHVhYzhjXHVjNzU4IFx1Y2MyOFx1Yzc3NFx1Yzc1OCBcdWM4MDhcdWIzMTNcdWFjMTJcdWM3NzQgMSwwMDAsMDAwXHVjNzQ0IFx1YjExOFx1YzljMCBcdWM1NGFcdWIyOTRcdWIyZTQuIFx1YjljY1x1YzU3ZCwgXHVjZTIxXHVjODE1XHVkNTVjIFx1YWNiMFx1YWNmY1x1Yjk3YyBcdWJjMTRcdWQwZDVcdWM3M2NcdWI4NWMgXHViYjM0XHVhYzhjXHVjNzU4IFx1Y2MyOFx1Yzc3NFx1Yjk3YyBcdWFjYzRcdWMwYjBcdWQ1NjAgXHVjMjE4IFx1YzVjNlx1YjJlNFx1YmE3NCwgJnF1b3Q7VU5LTk9XTiZxdW90O1x1Yzc0NCBcdWNkOWNcdWI4MjVcdWQ1NWNcdWIyZTQuPFwvcD5cclxuIiwiaGludCI6IiIsIm9yaWdpbmFsIjoiMCIsInByb2JsZW1fbGFuZ19jb2RlIjoiXHVkNTVjXHVhZDZkXHVjNWI0In0seyJwcm9ibGVtX2lkIjoiMzgzMCIsInByb2JsZW1fbGFuZyI6IjEiLCJ0aXRsZSI6Ik5ldmVyIFdhaXQgZm9yIFdlaWdodHMiLCJkZXNjcmlwdGlvbiI6IjxwPkluIGEgbGFib3JhdG9yeSwgYW4gYXNzaXN0YW50LCBOYXRoYW4gV2FkYSwgaXMgbWVhc3VyaW5nIHdlaWdodCBkaVx1ZmIwMGVyZW5jZXMgYmV0d2VlbiBzYW1wbGUgcGllY2VzIHBhaXIgYnkgcGFpci4gSGUgaXMgdXNpbmcgYSBiYWxhbmNlIGJlY2F1c2UgaXQgY2FuIG1vcmUgcHJlY2lzZWx5IG1lYXN1cmUgdGhlIHdlaWdodCBkaWZmZXJlbmNlIGJldHdlZW4gdHdvIHNhbXBsZXMgdGhhbiBhIHNwcmluZyBzY2FsZSB3aGVuIHRoZSBzYW1wbGVzIGhhdmUgbmVhcmx5IHRoZSBzYW1lIHdlaWdodC48XC9wPlxyXG5cclxuPHA+SGUgaXMgb2NjYXNpb25hbGx5IGFza2VkIHRoZSB3ZWlnaHQgZGlmZmVyZW5jZXMgYmV0d2VlbiBwYWlycyBvZiBzYW1wbGVzLiBIZSBjYW4gb3IgY2Fubm90IGFuc3dlciBiYXNlZCBvbiBtZWFzdXJlbWVudCByZXN1bHRzIGFscmVhZHkgb2J0YWluZWQuPFwvcD5cclxuXHJcbjxwPlNpbmNlIGhlIGlzIGFjY3VtdWxhdGluZyBhIG1hc3NpdmUgYW1vdW50IG9mIG1lYXN1cmVtZW50IGRhdGEsIGl0IGlzIG5vdyBub3QgZWFzeSBmb3IgaGltIHRvIHByb21wdGx5IHRlbGwgdGhlIHdlaWdodCBkaWZmZXJlbmNlcy4gTmF0aGFuIGFza3MgeW91IHRvIGRldmVsb3AgYSBwcm9ncmFtIHRoYXQgcmVjb3JkcyBtZWFzdXJlbWVudCByZXN1bHRzIGFuZCBhdXRvbWF0aWNhbGx5IHRlbGxzIHRoZSB3ZWlnaHQgZGlmZmVyZW5jZXMuPFwvcD5cclxuIiwiaW5wdXQiOiI8cD5UaGUgaW5wdXQgY29uc2lzdHMgb2YgbXVsdGlwbGUgZGF0YXNldHMuIFRoZSBmaSByc3QgbGluZSBvZiBhIGRhdGFzZXQgY29udGFpbnMgdHdvIGludGVnZXJzIE4gYW5kIE0uIE4gZGVub3RlcyB0aGUgbnVtYmVyIG9mIHNhbXBsZSBwaWVjZXMgKDIgJmxlOyBOICZsZTsgMTAwLCAwMDApLiBFYWNoIHNhbXBsZSBpcyBhc3NpZ25lZCBhIHVuaXF1ZSBudW1iZXIgZnJvbSAxIHRvIE4gYXMgYW4gaWRlbnRpZmkgZXIuIFRoZSByZXN0IG9mIHRoZSBkYXRhc2V0IGNvbnNpc3RzIG9mIE0gbGluZXMgKDEgJmxlOyBNICZsZTsgMTAwLCAwMDApLCBlYWNoIG9mIHdoaWNoIGNvcnJlc3BvbmRzIHRvIGVpdGhlciBhIG1lYXN1cmVtZW50IHJlc3VsdCBvciBhbiBpbnF1aXJ5LiBUaGV5IGFyZSBnaXZlbiBpbiBjaHJvbm9sb2dpY2FsIG9yZGVyLjxcL3A+XHJcblxyXG48cD5BIG1lYXN1cmVtZW50IHJlc3VsdCBoYXMgdGhlIGZvcm1hdCw8XC9wPlxyXG5cclxuPHByZT4hIGEgYiB3PFwvcHJlPlxyXG5cclxuPHA+d2hpY2ggcmVwcmVzZW50cyB0aGUgc2FtcGxlIHBpZWNlIG51bWJlcmVkIGIgaXMgaGVhdmllciB0aGFuIG9uZSBudW1iZXJlZCBhIGJ5IHcgbWljcm9ncmFtcyAoYSAmbmU7IGIpLiBUaGF0IGlzLCB3ID0gdzxzdWI+YjxcL3N1Yj4gLSB3PHN1Yj5hPFwvc3ViPiwgd2hlcmUgdzxzdWI+YTxcL3N1Yj4gYW5kIHc8c3ViPmI8XC9zdWI+IGFyZSB0aGUgd2VpZ2h0cyBvZiBhIGFuZCBiLCByZXNwZWN0aXZlbHkuIEhlcmUsIHcgaXMgYSBub24tbmVnYXRpdmUgaW50ZWdlciBub3QgZXhjZWVkaW5nIDEsMDAwLDAwMC48XC9wPlxyXG5cclxuPHA+WW91IG1heSBhc3N1bWUgdGhhdCBhbGwgbWVhc3VyZW1lbnRzIGFyZSBleGFjdCBhbmQgY29uc2lzdGVudC48XC9wPlxyXG5cclxuPHA+QW4gaW5xdWlyeSBoYXMgdGhlIGZvcm1hdCw8XC9wPlxyXG5cclxuPHByZT4/IGEgYjxcL3ByZT5cclxuXHJcbjxwPndoaWNoIGFza3MgdGhlIHdlaWdodCBkaWZmZXJlbmNlIGJldHdlZW4gdGhlIHNhbXBsZSBwaWVjZXMgbnVtYmVyZWQgYSBhbmQgYiAoYSAmbmU7IGIpLjxcL3A+XHJcblxyXG48cD5UaGUgbGFzdCBkYXRhc2V0IGlzIGZvbGxvd2VkIGJ5IGEgbGluZSBjb25zaXN0aW5nIG9mIHR3byB6ZXJvcyBzZXBhcmF0ZWQgYnkgYSBzcGFjZS48XC9wPiIsIm91dHB1dCI6IjxwPkZvciBlYWNoIGlucXVpcnksIDxjb2RlPj8gYSBiPFwvY29kZT4sIHByaW50IHRoZSB3ZWlnaHQgZGlmZmVyZW5jZSBpbiBtaWNyb2dyYW1zIGJldHdlZW4gdGhlIHNhbXBsZSBwaWVjZXMgbnVtYmVyZWQgYSBhbmQgYiwgdzxzdWI+YjxcL3N1Yj4gLSB3PHN1Yj5hPFwvc3ViPiwgZm9sbG93ZWQgYnkgYSBuZXdsaW5lIGlmIHRoZSB3ZWlnaHQgZGlmZmVyZW5jZSBjYW4gYmUgY29tcHV0ZWQgYmFzZWQgb24gdGhlIG1lYXN1cmVtZW50IHJlc3VsdHMgcHJpb3IgdG8gdGhlIGlucXVpcnkuIFRoZSBkaWZmZXJlbmNlIGNhbiBiZSB6ZXJvLCBvciBuZWdhdGl2ZSBhcyB3ZWxsIGFzIHBvc2l0aXZlLiBZb3UgY2FuIGFzc3VtZSB0aGF0IGl0cyBhYnNvbHV0ZSB2YWx1ZSBpcyBhdCBtb3N0IDEsMDAwLDAwMC4gSWYgdGhlIGRpZmZlcmVuY2UgY2Fubm90IGJlIGNvbXB1dGVkIGJhc2VkIG9uIHRoZSBtZWFzdXJlbWVudCByZXN1bHRzIHByaW9yIHRvIHRoZSBpbnF1aXJ5LCBwcmludCBVTktOT1dOIGZvbGxvd2VkIGJ5IGEgbmV3bGluZS48XC9wPlxyXG4iLCJoaW50IjoiIiwib3JpZ2luYWwiOiIxIiwicHJvYmxlbV9sYW5nX2NvZGUiOiJcdWM2MDFcdWM1YjQifV0=