시간 제한메모리 제한제출정답맞힌 사람정답 비율
1 초 128 MB211463245526.939%

문제

요즘 종수는 아두이노를 이용해 "Robots"이라는 게임을 만들었다. 종수는 아두이노 한대를 조정하며, 미친 아두이노를 피해다녀야 한다. 미친 아두이노는 종수의 아두이노를 향해 점점 다가온다. 하지만, 미친 아두이노의 움직임은 예측할 수 있다.

게임은 R×C크기의 보드 위에서 이루어지며, 아래와 같은 5가지 과정이 반복된다.

  1. 먼저, 종수가 아두이노를 8가지 방향(수직,수평,대각선)으로 이동시키거나, 그 위치에 그대로 놔둔다.
  2. 종수의 아두이노가 미친 아두이노가 있는 칸으로 이동한 경우에는 게임이 끝나게 되며, 종수는 게임을 지게 된다.
  3. 미친 아두이노는 8가지 방향 중에서 종수의 아두이노와 가장 가까워 지는 방향으로 한 칸 이동한다. 즉, 종수의 위치를 (r1,s1), 미친 아두이노의 위치를 (r2, s2)라고 했을 때, |r1-r2| + |s1-s2|가 가장 작아지는 방향으로 이동한다.
  4. 미친 아두이노가 종수의 아두이노가 있는 칸으로 이동한 경우에는 게임이 끝나게 되고, 종수는 게임을 지게 된다.
  5. 2개 또는 그 이상의 미친 아두이노가 같은 칸에 있는 경우에는 큰 폭발이 일어나고, 그 칸에 있는 아두이노는 모두 파괴된다.

종수의 시작 위치, 미친 아두이노의 위치, 종수가 움직이려고 하는 방향이 주어진다. 입력으로 주어진 방향대로 종수가 움직였을 때, 보드의 상태를 구하는 프로그램을 작성하시오. 중간에 게임에서 지게된 경우에는 몇 번째 움직임에서 죽는지를 구한다.

입력

첫째 줄에 보드의 크기 R과 C가 주어진다. (1 ≤ R, C ≤ 100)

다음 R개 줄에는 C개의 문자가 주어지며, 보드의 상태이다. '.'는 빈 칸, 'R'은 미친 아두이노, 'I'는 종수의 위치를 나타낸다.

마지막 줄에는 길이가 100을 넘지않는 문자열이 주어지며, 종수가 움직이려고 하는 방향이다. 5는 그 자리에 그대로 있는 것을 나타내고, 나머지는 아래와 같은 방향을 나타낸다.

보드를 벗어나는 입력은 주어지지 않는다.

출력

중간에 게임이 끝나는 경우에는 "kraj X"를 출력한다. X는 종수가 게임이 끝나기 전 까지 이동한 횟수이다. 그 외의 경우에는 보드의 상태를 입력과 같은 형식으로 출력한다.

예제 입력 1

4 5
I....
.....
.R.R.
.....
6

예제 출력 1

.I...
.RR..
.....
.....

예제 입력 2

9 10
..........
.........R
..........
R.........
R...I.....
R.........
..........
.........R
....R.....
5558888

예제 출력 2

....I.....
....R.....
..........
..........
..........
..........
..........
..........
..........

예제 입력 3

12 8
...I....
........
........
........
........
RR......
......RR
R......R
........
........
........
...R....
66445394444162

예제 출력 3

kraj 11
W3sicHJvYmxlbV9pZCI6Ijg5NzIiLCJwcm9ibGVtX2xhbmciOiIwIiwidGl0bGUiOiJcdWJiZjhcdWNlNWMgXHVjNTQ0XHViNDUwXHVjNzc0XHViMTc4IiwiZGVzY3JpcHRpb24iOiI8cD5cdWM2OTRcdWM5OTggXHVjODg1XHVjMjE4XHViMjk0IFx1YzU0NFx1YjQ1MFx1Yzc3NFx1YjE3OFx1Yjk3YyBcdWM3NzRcdWM2YTlcdWQ1NzQgJnF1b3Q7Um9ib3RzJnF1b3Q7XHVjNzc0XHViNzdjXHViMjk0IFx1YWM4Y1x1Yzc4NFx1Yzc0NCBcdWI5Y2NcdWI0ZTRcdWM1YzhcdWIyZTQuIFx1Yzg4NVx1YzIxOFx1YjI5NCBcdWM1NDRcdWI0NTBcdWM3NzRcdWIxNzggXHVkNTVjXHViMzAwXHViOTdjIFx1Yzg3MFx1YzgxNVx1ZDU1OFx1YmE3MCwgXHViYmY4XHVjZTVjIFx1YzU0NFx1YjQ1MFx1Yzc3NFx1YjE3OFx1Yjk3YyBcdWQ1M2NcdWQ1NzRcdWIyZTRcdWIxNDBcdWM1N2MgXHVkNTVjXHViMmU0LiBcdWJiZjhcdWNlNWMgXHVjNTQ0XHViNDUwXHVjNzc0XHViMTc4XHViMjk0IFx1Yzg4NVx1YzIxOFx1Yzc1OCBcdWM1NDRcdWI0NTBcdWM3NzRcdWIxNzhcdWI5N2MgXHVkNWE1XHVkNTc0IFx1YzgxMFx1YzgxMCBcdWIyZTRcdWFjMDBcdWM2MjhcdWIyZTQuIFx1ZDU1OFx1YzljMFx1YjljYywgXHViYmY4XHVjZTVjIFx1YzU0NFx1YjQ1MFx1Yzc3NFx1YjE3OFx1Yzc1OCBcdWM2YzBcdWM5YzFcdWM3ODRcdWM3NDAgXHVjNjA4XHVjZTIxXHVkNTYwIFx1YzIxOCBcdWM3ODhcdWIyZTQuPFwvcD5cclxuXHJcbjxwPlx1YWM4Y1x1Yzc4NFx1Yzc0MCBSJnRpbWVzO0NcdWQwNmNcdWFlMzBcdWM3NTggXHViY2Y0XHViNGRjIFx1YzcwNFx1YzVkMFx1YzExYyBcdWM3NzRcdWI4ZThcdWM1YjRcdWM5YzBcdWJhNzAsIFx1YzU0NFx1Yjc5OFx1YzY0MCBcdWFjMTlcdWM3NDAgNVx1YWMwMFx1YzljMCBcdWFjZmNcdWM4MTVcdWM3NzQgXHViYzE4XHViY2Y1XHViNDFjXHViMmU0LjxcL3A+XHJcblxyXG48b2w+XHJcblx0PGxpPlx1YmEzY1x1YzgwMCwgXHVjODg1XHVjMjE4XHVhYzAwIFx1YzU0NFx1YjQ1MFx1Yzc3NFx1YjE3OFx1Yjk3YyA4XHVhYzAwXHVjOWMwIFx1YmMyOVx1ZDVhNShcdWMyMThcdWM5YzEsXHVjMjE4XHVkM2M5LFx1YjMwMFx1YWMwMVx1YzEyMClcdWM3M2NcdWI4NWMgXHVjNzc0XHViM2Q5XHVjMmRjXHVkMGE0XHVhYzcwXHViMDk4LCBcdWFkZjggXHVjNzA0XHVjZTU4XHVjNWQwIFx1YWRmOFx1YjMwMFx1Yjg1YyBcdWIxOTRcdWI0NTRcdWIyZTQuPFwvbGk+XHJcblx0PGxpPlx1Yzg4NVx1YzIxOFx1Yzc1OCBcdWM1NDRcdWI0NTBcdWM3NzRcdWIxNzhcdWFjMDAgXHViYmY4XHVjZTVjIFx1YzU0NFx1YjQ1MFx1Yzc3NFx1YjE3OFx1YWMwMCBcdWM3ODhcdWIyOTQgXHVjZTc4XHVjNzNjXHViODVjIFx1Yzc3NFx1YjNkOVx1ZDU1YyBcdWFjYmRcdWM2YjBcdWM1ZDBcdWIyOTQgXHVhYzhjXHVjNzg0XHVjNzc0IFx1YjA1ZFx1YjA5OFx1YWM4YyBcdWI0MThcdWJhNzAsIFx1Yzg4NVx1YzIxOFx1YjI5NCBcdWFjOGNcdWM3ODRcdWM3NDQgXHVjOWMwXHVhYzhjIFx1YjQxY1x1YjJlNC48XC9saT5cclxuXHQ8bGk+XHViYmY4XHVjZTVjIFx1YzU0NFx1YjQ1MFx1Yzc3NFx1YjE3OFx1YjI5NCA4XHVhYzAwXHVjOWMwIFx1YmMyOVx1ZDVhNSBcdWM5MTFcdWM1ZDBcdWMxMWMgXHVjODg1XHVjMjE4XHVjNzU4IFx1YzU0NFx1YjQ1MFx1Yzc3NFx1YjE3OFx1YzY0MCBcdWFjMDBcdWM3YTUgXHVhYzAwXHVhZTRjXHVjNmNjIFx1YzljMFx1YjI5NCBcdWJjMjlcdWQ1YTVcdWM3M2NcdWI4NWMgXHVkNTVjIFx1Y2U3OCBcdWM3NzRcdWIzZDlcdWQ1NWNcdWIyZTQuIFx1Yzk4OSwgXHVjODg1XHVjMjE4XHVjNzU4IFx1YzcwNFx1Y2U1OFx1Yjk3YyAocjEsczEpLCBcdWJiZjhcdWNlNWMgXHVjNTQ0XHViNDUwXHVjNzc0XHViMTc4XHVjNzU4IFx1YzcwNFx1Y2U1OFx1Yjk3YyAocjIsIHMyKVx1Yjc3Y1x1YWNlMCBcdWQ1ODhcdWM3NDQgXHViNTRjLCB8cjEtcjJ8ICsgfHMxLXMyfFx1YWMwMCBcdWFjMDBcdWM3YTUgXHVjNzkxXHVjNTQ0XHVjOWMwXHViMjk0IFx1YmMyOVx1ZDVhNVx1YzczY1x1Yjg1YyBcdWM3NzRcdWIzZDlcdWQ1NWNcdWIyZTQuPFwvbGk+XHJcblx0PGxpPlx1YmJmOFx1Y2U1YyBcdWM1NDRcdWI0NTBcdWM3NzRcdWIxNzhcdWFjMDAgXHVjODg1XHVjMjE4XHVjNzU4IFx1YzU0NFx1YjQ1MFx1Yzc3NFx1YjE3OFx1YWMwMCBcdWM3ODhcdWIyOTQgXHVjZTc4XHVjNzNjXHViODVjIFx1Yzc3NFx1YjNkOVx1ZDU1YyBcdWFjYmRcdWM2YjBcdWM1ZDBcdWIyOTQgXHVhYzhjXHVjNzg0XHVjNzc0IFx1YjA1ZFx1YjA5OFx1YWM4YyBcdWI0MThcdWFjZTAsIFx1Yzg4NVx1YzIxOFx1YjI5NCBcdWFjOGNcdWM3ODRcdWM3NDQgXHVjOWMwXHVhYzhjIFx1YjQxY1x1YjJlNC48XC9saT5cclxuXHQ8bGk+Mlx1YWMxYyBcdWI2MTBcdWIyOTQgXHVhZGY4IFx1Yzc3NFx1YzBjMVx1Yzc1OCBcdWJiZjhcdWNlNWMgXHVjNTQ0XHViNDUwXHVjNzc0XHViMTc4XHVhYzAwIFx1YWMxOVx1Yzc0MCBcdWNlNzhcdWM1ZDAgXHVjNzg4XHViMjk0IFx1YWNiZFx1YzZiMFx1YzVkMFx1YjI5NCBcdWQwNzAgXHVkM2VkXHViYzFjXHVjNzc0IFx1Yzc3Y1x1YzViNFx1YjA5OFx1YWNlMCwgXHVhZGY4IFx1Y2U3OFx1YzVkMCBcdWM3ODhcdWIyOTQgXHVjNTQ0XHViNDUwXHVjNzc0XHViMTc4XHViMjk0IFx1YmFhOFx1YjQ1MCBcdWQzMGNcdWFkMzRcdWI0MWNcdWIyZTQuPFwvbGk+XHJcbjxcL29sPlxyXG5cclxuPHA+XHVjODg1XHVjMjE4XHVjNzU4IFx1YzJkY1x1Yzc5MSBcdWM3MDRcdWNlNTgsIFx1YmJmOFx1Y2U1YyBcdWM1NDRcdWI0NTBcdWM3NzRcdWIxNzhcdWM3NTggXHVjNzA0XHVjZTU4LCBcdWM4ODVcdWMyMThcdWFjMDAgXHVjNmMwXHVjOWMxXHVjNzc0XHViODI0XHVhY2UwIFx1ZDU1OFx1YjI5NCBcdWJjMjlcdWQ1YTVcdWM3NzQgXHVjOGZjXHVjNWI0XHVjOWM0XHViMmU0LiBcdWM3ODVcdWI4MjVcdWM3M2NcdWI4NWMgXHVjOGZjXHVjNWI0XHVjOWM0IFx1YmMyOVx1ZDVhNVx1YjMwMFx1Yjg1YyBcdWM4ODVcdWMyMThcdWFjMDAgXHVjNmMwXHVjOWMxXHVjNjAwXHVjNzQ0IFx1YjU0YywgXHViY2Y0XHViNGRjXHVjNzU4IFx1YzBjMVx1ZDBkY1x1Yjk3YyBcdWFkNmNcdWQ1NThcdWIyOTQgXHVkNTA0XHViODVjXHVhZGY4XHViN2E4XHVjNzQ0IFx1Yzc5MVx1YzEzMVx1ZDU1OFx1YzJkY1x1YzYyNC4gXHVjOTExXHVhYzA0XHVjNWQwIFx1YWM4Y1x1Yzc4NFx1YzVkMFx1YzExYyBcdWM5YzBcdWFjOGNcdWI0MWMgXHVhY2JkXHVjNmIwXHVjNWQwXHViMjk0IFx1YmE4NyBcdWJjODhcdWM5ZjggXHVjNmMwXHVjOWMxXHVjNzg0XHVjNWQwXHVjMTFjIFx1YzhmZFx1YjI5NFx1YzljMFx1Yjk3YyBcdWFkNmNcdWQ1NWNcdWIyZTQuPFwvcD5cclxuIiwiaW5wdXQiOiI8cD5cdWNjYWJcdWM5ZjggXHVjOTA0XHVjNWQwIFx1YmNmNFx1YjRkY1x1Yzc1OCBcdWQwNmNcdWFlMzAgUlx1YWNmYyBDXHVhYzAwIFx1YzhmY1x1YzViNFx1YzljNFx1YjJlNC4gKDEgJmxlOyBSLCBDICZsZTsgMTAwKTxcL3A+XHJcblxyXG48cD5cdWIyZTRcdWM3NGMgUlx1YWMxYyBcdWM5MDRcdWM1ZDBcdWIyOTQgQ1x1YWMxY1x1Yzc1OCBcdWJiMzhcdWM3OTBcdWFjMDAgXHVjOGZjXHVjNWI0XHVjOWMwXHViYTcwLCBcdWJjZjRcdWI0ZGNcdWM3NTggXHVjMGMxXHVkMGRjXHVjNzc0XHViMmU0LiAmIzM5Oy4mIzM5O1x1YjI5NCBcdWJlNDggXHVjZTc4LCAmIzM5O1ImIzM5O1x1Yzc0MCBcdWJiZjhcdWNlNWMgXHVjNTQ0XHViNDUwXHVjNzc0XHViMTc4LCAmIzM5O0kmIzM5O1x1YjI5NCBcdWM4ODVcdWMyMThcdWM3NTggXHVjNzA0XHVjZTU4XHViOTdjIFx1YjA5OFx1ZDBjMFx1YjBiOFx1YjJlNC48XC9wPlxyXG5cclxuPHA+XHViOWM4XHVjOWMwXHViOWM5IFx1YzkwNFx1YzVkMFx1YjI5NCBcdWFlMzhcdWM3NzRcdWFjMDAgMTAwXHVjNzQ0IFx1YjExOFx1YzljMFx1YzU0YVx1YjI5NCBcdWJiMzhcdWM3OTBcdWM1ZjRcdWM3NzQgXHVjOGZjXHVjNWI0XHVjOWMwXHViYTcwLCBcdWM4ODVcdWMyMThcdWFjMDAgXHVjNmMwXHVjOWMxXHVjNzc0XHViODI0XHVhY2UwIFx1ZDU1OFx1YjI5NCBcdWJjMjlcdWQ1YTVcdWM3NzRcdWIyZTQuIDVcdWIyOTQgXHVhZGY4IFx1Yzc5MFx1YjlhY1x1YzVkMCBcdWFkZjhcdWIzMDBcdWI4NWMgXHVjNzg4XHViMjk0IFx1YWM4M1x1Yzc0NCBcdWIwOThcdWQwYzBcdWIwYjRcdWFjZTAsIFx1YjA5OFx1YmEzOFx1YzljMFx1YjI5NCBcdWM1NDRcdWI3OThcdWM2NDAgXHVhYzE5XHVjNzQwIFx1YmMyOVx1ZDVhNVx1Yzc0NCBcdWIwOThcdWQwYzBcdWIwYjhcdWIyZTQuPFwvcD5cclxuXHJcbjxwIHN0eWxlPVwidGV4dC1hbGlnbjogY2VudGVyO1wiPjxpbWcgYWx0PVwiXCIgc3JjPVwiaHR0cHM6XC9cL3VwbG9hZC5hY21pY3BjLm5ldFwvYTU2OTNjNzMtMTEyYi00MTZjLTgzOTgtNDJmZGRkMDljNmU3XC8tXC9wcmV2aWV3XC9cIiBzdHlsZT1cIndpZHRoOiAxMTJweDsgaGVpZ2h0OiAxMTJweDtcIiBcLz48XC9wPlxyXG5cclxuPHA+XHViY2Y0XHViNGRjXHViOTdjIFx1YmM5N1x1YzViNFx1YjA5OFx1YjI5NCBcdWM3ODVcdWI4MjVcdWM3NDAgXHVjOGZjXHVjNWI0XHVjOWMwXHVjOWMwIFx1YzU0YVx1YjI5NFx1YjJlNC48XC9wPlxyXG4iLCJvdXRwdXQiOiI8cD5cdWM5MTFcdWFjMDRcdWM1ZDAgXHVhYzhjXHVjNzg0XHVjNzc0IFx1YjA1ZFx1YjA5OFx1YjI5NCBcdWFjYmRcdWM2YjBcdWM1ZDBcdWIyOTQgJnF1b3Q7a3JhaiBYJnF1b3Q7XHViOTdjIFx1Y2Q5Y1x1YjgyNVx1ZDU1Y1x1YjJlNC4gWFx1YjI5NCBcdWM4ODVcdWMyMThcdWFjMDAgXHVhYzhjXHVjNzg0XHVjNzc0IFx1YjA1ZFx1YjA5OFx1YWUzMCBcdWM4MDQgXHVhZTRjXHVjOWMwIFx1Yzc3NFx1YjNkOVx1ZDU1YyBcdWQ2OWZcdWMyMThcdWM3NzRcdWIyZTQuIFx1YWRmOCBcdWM2NzhcdWM3NTggXHVhY2JkXHVjNmIwXHVjNWQwXHViMjk0IFx1YmNmNFx1YjRkY1x1Yzc1OCBcdWMwYzFcdWQwZGNcdWI5N2MgXHVjNzg1XHViODI1XHVhY2ZjIFx1YWMxOVx1Yzc0MCBcdWQ2MTVcdWMyZGRcdWM3M2NcdWI4NWMgXHVjZDljXHViODI1XHVkNTVjXHViMmU0LjxcL3A+XHJcbiIsImhpbnQiOiIiLCJvcmlnaW5hbCI6IjAiLCJodG1sX3RpdGxlIjoiMCIsInByb2JsZW1fbGFuZ190Y29kZSI6IktvcmVhbiJ9LHsicHJvYmxlbV9pZCI6Ijg5NzIiLCJwcm9ibGVtX2xhbmciOiIxIiwidGl0bGUiOiJST0JPVEkiLCJkZXNjcmlwdGlvbiI6IjxwPkluIHRoZSBjb21wdXRlciBnYW1lIFJvYm90cywgdGhlIHBsYXllciB0cmllcyB0byBlc2NhcGUgbWFkIHJvYm90cy4gVGhlcmUgYXJlIG1hbnkgcm9ib3RzIGFnYWluc3QgdGhlIGxvbmUgcGxheWVyLCBidXQgdGhlaXIgbW92ZW1lbnQgaXMgcHJlZGljdGFibGUgYW5kIHRoZSBwbGF5ZXIgY2FuIHRha2UgYWR2YW50YWdlIG9mIHRoYXQuJm5ic3A7PFwvcD5cclxuXHJcbjxwPlRoZSBnYW1lIGlzIHBsYXllZCBvbiBhIGJvYXJkIG9mIHNpemUgUiZ0aW1lcztDLiBUaGUgZm9sbG93aW5nIDUgc3RlcHMgYXJlIHJlcGVhdGVkOiZuYnNwOzxcL3A+XHJcblxyXG48b2w+XHJcblx0PGxpPlRoZSBwbGF5ZXIgbW92ZXMgaW4gb25lIG9mIGVpZ2h0IGRpcmVjdGlvbnMgKGhvcml6b250YWxseSwgdmVydGljYWxseSBvciBkaWFnb25hbGx5KSBvciBzdGF5cyBpbiB0aGUgc2FtZSBjZWxsLiZuYnNwOzxcL2xpPlxyXG5cdDxsaT5JZiB0aGUgcGxheWVyIG1vdmVzIHRvIGEgY2VsbCBvY2N1cGllZCBieSBhIHJvYm90LCB0aGUgZ2FtZSBlbmRzIGFuZCB0aGUgcGxheWVyIGxvc2VzLiZuYnNwOzxcL2xpPlxyXG5cdDxsaT5FdmVyeSByb2JvdCBtb3ZlcyBpbiBvbmUgb2YgZWlnaHQgZGlyZWN0aW9ucywgdG8gdGhlIG5laWdoYm91cmluZyBjZWxsIGNsb3Nlc3QgdG8gdGhlIHBsYXllci4gTW9yZSBwcmVjaXNlbHksIHRoZSByb2JvdCBhdHRlbXB0cyB0byBtaW5pbWl6ZSB0aGUgdmFsdWUgb2YgfHIxJm1pbnVzO3IyfCArIHxzMSZtaW51cztzMnwsIHdoZXJlIChyMSwgczEpIGFuZCAocjIsIHMyKSBhcmUgdGhlIHBvc2l0aW9ucyBvZiB0aGUgcGxheWVyIGFuZCByb2JvdC4mbmJzcDs8XC9saT5cclxuXHQ8bGk+SWYgYW55IHJvYm90IGhhcyBlbnRlcmVkIHRoZSBwbGF5ZXImIzM5O3MgY2VsbCwgdGhlIGdhbWUgZW5kcyBhbmQgdGhlIHBsYXllciBsb3Nlcy4mbmJzcDs8XC9saT5cclxuXHQ8bGk+SWYgdHdvIG9yIG1vcmUgcm9ib3RzIGhhdmUgZW50ZXJlZCB0aGUgc2FtZSBjZWxsLCBhIGxhcmdlIGV4cGxvc2lvbiBkZXN0cm95cyBhbGwgdGhlIHJvYm90cyBpbiB0aGF0IGNlbGwuJm5ic3A7PFwvbGk+XHJcbjxcL29sPlxyXG5cclxuPHA+WW91IHdpbGwgYmUgZ2l2ZW4gdGhlIHN0YXJ0aW5nIGxvY2F0aW9uIG9mIHRoZSBwbGF5ZXIsIHRoZSBsb2NhdGlvbnMgb2YgYWxsIHJvYm90cyBhbmQgdGhlIG1vdmVzIHRoZSBwbGF5ZXIgbWFrZXMuIElmIHRoZSBwbGF5ZXIgbWFrZXMgYWxsIGhpcyBtb3ZlcyBhbmQgc3Vydml2ZXMsIHlvdSBhcmUgdG8gb3V0cHV0IHRoZSBzdGF0ZSBvZiB0aGUgYm9hcmQgYWZ0ZXIgYWxsIGhpcyBtb3Zlcy4gT3RoZXJ3aXNlLCBvdXRwdXQgaG93IG1hbnkgbW92ZXMgaGUgd2FzIGFibGUgdG8gbWFrZS4mbmJzcDs8XC9wPlxyXG4iLCJpbnB1dCI6IjxwPlRoZSBmaXJzdCBsaW5lIG9mIGlucHV0IGNvbnRhaW5zIHR3byBpbnRlZ2VycyBSIGFuZCBDICgxICZsZTsgUiAmbGU7IDEwMCwgMSAmbGU7IFMgJmxlOyAxMDApLCB0aGUgbnVtYmVyIG9mIHJvd3MgYW5kIGNvbHVtbnMgb24gdGhlIGJvYXJkLiZuYnNwOzxcL3A+XHJcblxyXG48cD5UaGUgZm9sbG93aW5nIFIgbGluZXMgY29udGFpbiBDIGNoYXJhY3RlcnMgZWFjaCwgZGVwaWN0aW5nIHRoZSBpbml0aWFsIHN0YXRlIG9uIHRoZSBib2FyZDogdGhlIGNoYXJhY3RlciAmIzM5Oy4mIzM5OyBkZW5vdGVzIGFuIGVtcHR5IGNlbGwsICYjMzk7UiYjMzk7IGEgY2VsbCBvY2N1cGllZCBieSBhIHJvYm90LCBhbmQgJiMzOTtJJiMzOTsgdGhlIGNlbGwgd2l0aCB0aGUgcGxheWVyLiZuYnNwOzxcL3A+XHJcblxyXG48cD5UaGUgZmluYWwgbGluZSBjb250YWlucyBhIHN0cmluZyBvZiBhdCBtb3N0IDEwMCBkaWdpdHMsIHRoZSBwbGF5ZXImIzM5O3MgbW92ZXMuIEVhY2ggbW92ZSBpcyBhIGRpZ2l0IGZyb20gMSB0byA5LCA1IG1lYW5pbmcgdGhlIHBsYXllciBkb2VzIG5vdCBtb3ZlLCB0aGUgcmVzdCBhY2NvcmRpbmcgdG8gdGhpcyBkaWFncmFtOiZuYnNwOzxcL3A+XHJcblxyXG48cCBzdHlsZT1cInRleHQtYWxpZ246IGNlbnRlcjtcIj48aW1nIGFsdD1cIlwiIHNyYz1cImh0dHBzOlwvXC91cGxvYWQuYWNtaWNwYy5uZXRcL2E1NjkzYzczLTExMmItNDE2Yy04Mzk4LTQyZmRkZDA5YzZlN1wvLVwvcHJldmlld1wvXCIgc3R5bGU9XCJ3aWR0aDogMTEycHg7IGhlaWdodDogMTEycHg7XCIgXC8+PFwvcD5cclxuXHJcbjxwPlRoZSBpbnB1dCBzZXF1ZW5jZSBvZiBtb3ZlcyB3aWxsIGJlIHN1Y2ggdGhhdCB0aGUgcGxheWVyIHdpbGwgbmV2ZXIgYXR0ZW1wdCB0byBtb3ZlIG91dHNpZGUgdGhlIGJvYXJkLiZuYnNwOzxcL3A+XHJcbiIsIm91dHB1dCI6IjxwPklmIHRoZSBwbGF5ZXIgbWFrZXMgYWxsIHRoZSBtb3ZlcyBhbmQgc3Vydml2ZXMsIG91dHB1dCB0aGUgZmluYWwgc3RhdGUgb2YgdGhlIGJvYXJkIGluIHRoZSBzYW1lIGZvcm1hdCBhcyBpbiB0aGUgb3V0cHV0LiBPdGhlcndpc2UsIG91dHB1dCAmcXVvdDtrcmFqIFgmcXVvdDsgKHF1b3RlcyBmb3IgY2xhcml0eSksIHdoZXJlIFggaXMgdGhlIG51bWJlciBvZiBtb3ZlcyB0aGUgcGxheWVyIG1hZGUuPFwvcD5cclxuIiwiaGludCI6IjxwPkluIHRoZSBzZWNvbmQgZXhhbXBsZSwgdGhlIHRocmVlIHJvYm90cyBvbiB0aGUgbGVmdCBzaWRlIG9mIHRoZSBtYXAgY3Jhc2ggYWZ0ZXIgdGhlIHBsYXllciBvcHRzIHRvIHN0YW5kIHN0aWxsIGluIGhpcyBmaXJzdCBtb3ZlLiBBZnRlciB0aGUgdGhpcmQgbW92ZSwgdGhlIHR3byByb2JvdHMgZnJvbSB0aGUgcmlnaHQgc2lkZSBvZiB0aGUgbWFwIGNyYXNoLCB3aGlsZSB0aGUgcm9ib3QgZnJvbSB0aGUgYm90dG9tIG9mIHRoZSBtYXAgcHVyc3VlcyB0aGUgcGxheWVyIG9uY2UgaGUgc3RhcnRzIHRvIG1vdmUgdXB3YXJkcy48XC9wPlxyXG4iLCJvcmlnaW5hbCI6IjEiLCJodG1sX3RpdGxlIjoiMCIsInByb2JsZW1fbGFuZ190Y29kZSI6IkVuZ2xpc2gifV0=