시간 제한 메모리 제한 제출 정답 맞은 사람 정답 비율
1 초 128 MB 89 31 21 33.333%

문제

용재는 애완 도마뱀들과 함께 던전을 돌다가 이상한 방에 입장했다. 건질 게 없나 주위를 둘러보던 용재는 뒤를 돌아보고 깜짝 놀랐다. 막내 도마뱀이 함정을 밟아 방의 바닥이 사라져버린 것이다! 밑에서는 불길이 올라오기 시작했고, 도마뱀들은 바닥이 사라지고 남은 기둥 위에 서 있다.

도마뱀들은 준서에게 빌린 것이기 때문에, 용재는 잃어버린 도마뱀의 수를 준서에게 보고해야 한다. 잃어버린 도마뱀의 수가 많을수록 준서가 더 많이 화를 낼 것이기 때문에, 용재는 가능한 많은 도마뱀을 탈출시켜 보고하는 수를 최소로 하고 싶다.

방을 \(N \times M\) 격자로 볼 때 한 칸에 최대 하나의 기둥이 존재한다. 도마뱀은 자신이 현재 위치한 기둥에서 맨해튼거리(\(|{n_i} - {n_j}| + |{m_i} - {m_j}|\))가 \(D\) 이내인 다른 기둥으로 도약할 수 있다. 도약한 도마뱀이 방 밖으로 빠져나오면 방을 탈출한 것으로 본다.

하지만 남아 있는 기둥들은 위태로워서, 버틸 수 있는 도약 횟수가 정해져 있다. 한 도마뱀이 어떤 기둥에서 도약하여 다른 기둥으로 갈 때, 기존 기둥은 점점 약해지고, 한계를 넘으면 무너져 내린다. 같은 시간 동안 하나의 기둥에는 최대 하나의 도마뱀만 서 있을 수 있다.

입력

첫 줄에는 테스트케이스의 개수 \(T(T \lt 25)\)가 입력된다. 각 테스트케이스의 첫 줄에는 방의 세로 크기 \(N\)과 도마뱀의 최대 도약거리 \(D(1 \le D \le 3)\)가 주어진다. 이어서 방의 정보가 각각 \(N\)개의 줄에 걸쳐서 두 번 주어진다. 처음 상태는 각각의 기둥이 버틸 수 있는 도약 횟수를 나타낸다. 한 기둥이 견딜 수 있는 도약 횟수는 최대 3번이며, 주어진 숫자가 0인 칸은 기둥이 존재하지 않는다. 두 번째는 도마뱀의 위치를 나타낸다. 도마뱀이 존재하는 칸은 'L'로, 이외의 칸은 '.'으로 표시되며, 기둥이 없는 곳에 도마뱀이 존재하는 경우는 없다.

모든 방의 크기는 \(N \times M\)의 직사각형이며, \(1 \le N, M \le 20\)이다.

출력

각각의 테스트 케이스마다 아래의 예제 출력의 형식에 따라 탈출하지 못하는 도마뱀의 수를 한 줄에 출력하라.

예제 입력 1

4
3 1
1111
1111
1111
LLLL
LLLL
LLLL
3 2
00000
01110
00000
.....
.LLL.
.....
3 1
00000
01110
00000
.....
.LLL.
.....
5 2
00000000
02000000
00321100
02000000
00000000
........
........
..LLLL..
........
........

예제 출력 1

Case #1: 2 lizards were left behind.
Case #2: no lizard was left behind.
Case #3: 3 lizards were left behind.
Case #4: 1 lizard was left behind.

힌트

주의 : 모든 길을 조사하는 Brute Force 방법의 경우, 주어진 시간을 초과할 수 있다.

W3sicHJvYmxlbV9pZCI6IjQ2MjciLCJwcm9ibGVtX2xhbmciOiIwIiwidGl0bGUiOiJcdWI2ZjBcdWM1YjRcdWI3N2MgXHViM2M0XHViOWM4XHViYzQwIiwiZGVzY3JpcHRpb24iOiI8cD5cdWM2YTlcdWM3YWNcdWIyOTQgXHVjNTYwXHVjNjQ0IFx1YjNjNFx1YjljOFx1YmM0MFx1YjRlNFx1YWNmYyBcdWQ1NjhcdWFlZDggXHViMzU4XHVjODA0XHVjNzQ0IFx1YjNjY1x1YjJlNFx1YWMwMCBcdWM3NzRcdWMwYzFcdWQ1NWMgXHViYzI5XHVjNWQwIFx1Yzc4NVx1YzdhNVx1ZDU4OFx1YjJlNC4gXHVhYzc0XHVjOWM4IFx1YWM4YyBcdWM1YzZcdWIwOTggXHVjOGZjXHVjNzA0XHViOTdjIFx1YjQ1OFx1YjdlY1x1YmNmNFx1YjM1OCBcdWM2YTlcdWM3YWNcdWIyOTQgXHViNGE0XHViOTdjIFx1YjNjY1x1YzU0NFx1YmNmNFx1YWNlMCBcdWFlNWNcdWM5ZGQgXHViMTgwXHViNzkwXHViMmU0LiBcdWI5YzlcdWIwYjQgXHViM2M0XHViOWM4XHViYzQwXHVjNzc0IFx1ZDU2OFx1YzgxNVx1Yzc0NCBcdWJjMWZcdWM1NDQgXHViYzI5XHVjNzU4IFx1YmMxNFx1YjJlNVx1Yzc3NCBcdWMwYWNcdWI3N2NcdWM4MzhcdWJjODRcdWI5YjAgXHVhYzgzXHVjNzc0XHViMmU0ISBcdWJjMTFcdWM1ZDBcdWMxMWNcdWIyOTQgXHViZDg4XHVhZTM4XHVjNzc0IFx1YzYyY1x1Yjc3Y1x1YzYyNFx1YWUzMCBcdWMyZGNcdWM3OTFcdWQ1ODhcdWFjZTAsIFx1YjNjNFx1YjljOFx1YmM0MFx1YjRlNFx1Yzc0MCBcdWJjMTRcdWIyZTVcdWM3NzQgXHVjMGFjXHViNzdjXHVjOWMwXHVhY2UwIFx1YjBhOFx1Yzc0MCBcdWFlMzBcdWI0NjUgXHVjNzA0XHVjNWQwIFx1YzExYyBcdWM3ODhcdWIyZTQuPFwvcD5cclxuXHJcbjxwPlx1YjNjNFx1YjljOFx1YmM0MFx1YjRlNFx1Yzc0MCBcdWM5MDBcdWMxMWNcdWM1ZDBcdWFjOGMgXHViZTRjXHViOWIwIFx1YWM4M1x1Yzc3NFx1YWUzMCBcdWI1NGNcdWJiMzhcdWM1ZDAsIFx1YzZhOVx1YzdhY1x1YjI5NCBcdWM3ODNcdWM1YjRcdWJjODRcdWI5YjAgXHViM2M0XHViOWM4XHViYzQwXHVjNzU4IFx1YzIxOFx1Yjk3YyBcdWM5MDBcdWMxMWNcdWM1ZDBcdWFjOGMgXHViY2Y0XHVhY2UwXHVkNTc0XHVjNTdjIFx1ZDU1Y1x1YjJlNC4gXHVjNzgzXHVjNWI0XHViYzg0XHViOWIwIFx1YjNjNFx1YjljOFx1YmM0MFx1Yzc1OCBcdWMyMThcdWFjMDAgXHViOWNlXHVjNzQ0XHVjMjE4XHViODVkIFx1YzkwMFx1YzExY1x1YWMwMCBcdWIzNTQgXHViOWNlXHVjNzc0IFx1ZDY1NFx1Yjk3YyBcdWIwYmMgXHVhYzgzXHVjNzc0XHVhZTMwIFx1YjU0Y1x1YmIzOFx1YzVkMCwgXHVjNmE5XHVjN2FjXHViMjk0IFx1YWMwMFx1YjJhNVx1ZDU1YyBcdWI5Y2VcdWM3NDAgXHViM2M0XHViOWM4XHViYzQwXHVjNzQ0IFx1ZDBjOFx1Y2Q5Y1x1YzJkY1x1Y2YxYyBcdWJjZjRcdWFjZTBcdWQ1NThcdWIyOTQgXHVjMjE4XHViOTdjIFx1Y2Q1Y1x1YzE4Y1x1Yjg1YyBcdWQ1NThcdWFjZTAgXHVjMmY2XHViMmU0LjxcL3A+XHJcblxyXG48cD5cdWJjMjlcdWM3NDQgXFwoTiBcXHRpbWVzIE1cXCkgXHVhY2E5XHVjNzkwXHViODVjIFx1YmNmYyBcdWI1NGMgXHVkNTVjIFx1Y2U3OFx1YzVkMCBcdWNkNWNcdWIzMDAgXHVkNTU4XHViMDk4XHVjNzU4IFx1YWUzMFx1YjQ2NVx1Yzc3NCBcdWM4NzRcdWM3YWNcdWQ1NWNcdWIyZTQuIFx1YjNjNFx1YjljOFx1YmM0MFx1Yzc0MCBcdWM3OTBcdWMyZTBcdWM3NzQgXHVkNjA0XHVjN2FjIFx1YzcwNFx1Y2U1OFx1ZDU1YyBcdWFlMzBcdWI0NjVcdWM1ZDBcdWMxMWMgXHViOWU4XHVkNTc0XHVkMmJjXHVhYzcwXHViOWFjKFxcKHx7bl9pfSAtIHtuX2p9fCArIHx7bV9pfSAtIHttX2p9fFxcKSlcdWFjMDAgXFwoRFxcKSBcdWM3NzRcdWIwYjRcdWM3NzggXHViMmU0XHViOTc4IFx1YWUzMFx1YjQ2NVx1YzczY1x1Yjg1YyBcdWIzYzRcdWM1N2RcdWQ1NjAgXHVjMjE4IFx1Yzc4OFx1YjJlNC4gXHViM2M0XHVjNTdkXHVkNTVjIFx1YjNjNFx1YjljOFx1YmM0MFx1Yzc3NCBcdWJjMjkgXHViYzE2XHVjNzNjXHViODVjIFx1YmU2MFx1YzgzOFx1YjA5OFx1YzYyNFx1YmE3NCBcdWJjMjlcdWM3NDQgXHVkMGM4XHVjZDljXHVkNTVjIFx1YWM4M1x1YzczY1x1Yjg1YyBcdWJjZjhcdWIyZTQuPFwvcD5cclxuXHJcbjxwPlx1ZDU1OFx1YzljMFx1YjljYyBcdWIwYThcdWM1NDQgXHVjNzg4XHViMjk0IFx1YWUzMFx1YjQ2NVx1YjRlNFx1Yzc0MCBcdWM3MDRcdWQwZGNcdWI4NWNcdWM2Y2NcdWMxMWMsIFx1YmM4NFx1ZDJmOCBcdWMyMTggXHVjNzg4XHViMjk0IFx1YjNjNFx1YzU3ZCBcdWQ2OWZcdWMyMThcdWFjMDAgXHVjODE1XHVkNTc0XHVjODM4IFx1Yzc4OFx1YjJlNC4gXHVkNTVjIFx1YjNjNFx1YjljOFx1YmM0MFx1Yzc3NCBcdWM1YjRcdWI1YTQgXHVhZTMwXHViNDY1XHVjNWQwXHVjMTFjIFx1YjNjNFx1YzU3ZFx1ZDU1OFx1YzVlYyBcdWIyZTRcdWI5NzggXHVhZTMwXHViNDY1XHVjNzNjXHViODVjIFx1YWMwOCBcdWI1NGMsIFx1YWUzMFx1Yzg3NCBcdWFlMzBcdWI0NjVcdWM3NDAgXHVjODEwXHVjODEwIFx1YzU3ZFx1ZDU3NFx1YzljMFx1YWNlMCwgXHVkNTVjXHVhY2M0XHViOTdjIFx1YjExOFx1YzczY1x1YmE3NCBcdWJiMzRcdWIxMDhcdWM4MzggXHViMGI0XHViOWIwXHViMmU0LiBcdWFjMTlcdWM3NDAgXHVjMmRjXHVhYzA0IFx1YjNkOVx1YzU0OCBcdWQ1NThcdWIwOThcdWM3NTggXHVhZTMwXHViNDY1XHVjNWQwXHViMjk0IFx1Y2Q1Y1x1YjMwMCBcdWQ1NThcdWIwOThcdWM3NTggXHViM2M0XHViOWM4XHViYzQwXHViOWNjIFx1YzExYyBcdWM3ODhcdWM3NDQgXHVjMjE4IFx1Yzc4OFx1YjJlNC48XC9wPlxyXG4iLCJpbnB1dCI6IjxwPlx1Y2NhYiBcdWM5MDRcdWM1ZDBcdWIyOTQgXHVkMTRjXHVjMmE0XHVkMmI4XHVjZjAwXHVjNzc0XHVjMmE0XHVjNzU4IFx1YWMxY1x1YzIxOCBcXChUKFQgXFxsdCAyNSlcXClcdWFjMDAgXHVjNzg1XHViODI1XHViNDFjXHViMmU0LiBcdWFjMDEgXHVkMTRjXHVjMmE0XHVkMmI4XHVjZjAwXHVjNzc0XHVjMmE0XHVjNzU4IFx1Y2NhYiBcdWM5MDRcdWM1ZDBcdWIyOTQgXHViYzI5XHVjNzU4IFx1YzEzOFx1Yjg1YyBcdWQwNmNcdWFlMzAgXFwoTlxcKVx1YWNmYyBcdWIzYzRcdWI5YzhcdWJjNDBcdWM3NTggXHVjZDVjXHViMzAwIFx1YjNjNFx1YzU3ZFx1YWM3MFx1YjlhYyBcXChEKDEgXFxsZSBEIFxcbGUgMylcXClcdWFjMDAgXHVjOGZjXHVjNWI0XHVjOWM0XHViMmU0LiBcdWM3NzRcdWM1YjRcdWMxMWMgXHViYzI5XHVjNzU4IFx1YzgxNVx1YmNmNFx1YWMwMCBcdWFjMDFcdWFjMDEgXFwoTlxcKVx1YWMxY1x1Yzc1OCBcdWM5MDRcdWM1ZDAgXHVhYzc4XHVjY2QwXHVjMTFjIFx1YjQ1MCBcdWJjODggXHVjOGZjXHVjNWI0XHVjOWM0XHViMmU0LiBcdWNjOThcdWM3NGMgXHVjMGMxXHVkMGRjXHViMjk0IFx1YWMwMVx1YWMwMVx1Yzc1OCBcdWFlMzBcdWI0NjVcdWM3NzQgXHViYzg0XHVkMmY4IFx1YzIxOCBcdWM3ODhcdWIyOTQgXHViM2M0XHVjNTdkIFx1ZDY5Zlx1YzIxOFx1Yjk3YyBcdWIwOThcdWQwYzBcdWIwYjhcdWIyZTQuIFx1ZDU1YyBcdWFlMzBcdWI0NjVcdWM3NzQgXHVhY2FjXHViNTFjIFx1YzIxOCBcdWM3ODhcdWIyOTQgXHViM2M0XHVjNTdkIFx1ZDY5Zlx1YzIxOFx1YjI5NCBcdWNkNWNcdWIzMDAgM1x1YmM4OFx1Yzc3NFx1YmE3MCwgXHVjOGZjXHVjNWI0XHVjOWM0IFx1YzIyYlx1Yzc5MFx1YWMwMCAwXHVjNzc4IFx1Y2U3OFx1Yzc0MCBcdWFlMzBcdWI0NjVcdWM3NzQgXHVjODc0XHVjN2FjXHVkNTU4XHVjOWMwIFx1YzU0YVx1YjI5NFx1YjJlNC4gXHViNDUwIFx1YmM4OFx1YzlmOFx1YjI5NCBcdWIzYzRcdWI5YzhcdWJjNDBcdWM3NTggXHVjNzA0XHVjZTU4XHViOTdjIFx1YjA5OFx1ZDBjMFx1YjBiOFx1YjJlNC4gXHViM2M0XHViOWM4XHViYzQwXHVjNzc0IFx1Yzg3NFx1YzdhY1x1ZDU1OFx1YjI5NCBcdWNlNzhcdWM3NDAgJiMzOTtMJiMzOTtcdWI4NWMsIFx1Yzc3NFx1YzY3OFx1Yzc1OCBcdWNlNzhcdWM3NDAgJiMzOTsuJiMzOTtcdWM3M2NcdWI4NWMgXHVkNDVjXHVjMmRjXHViNDE4XHViYTcwLCBcdWFlMzBcdWI0NjVcdWM3NzQgXHVjNWM2XHViMjk0IFx1YWNmM1x1YzVkMCBcdWIzYzRcdWI5YzhcdWJjNDBcdWM3NzQgXHVjODc0XHVjN2FjXHVkNTU4XHViMjk0IFx1YWNiZFx1YzZiMFx1YjI5NCBcdWM1YzZcdWIyZTQuPFwvcD5cclxuXHJcbjxwPlx1YmFhOFx1YjRlMCBcdWJjMjlcdWM3NTggXHVkMDZjXHVhZTMwXHViMjk0IFxcKE4gXFx0aW1lcyBNXFwpXHVjNzU4IFx1YzljMVx1YzBhY1x1YWMwMVx1ZDYxNVx1Yzc3NFx1YmE3MCwgXFwoMSBcXGxlIE4sIE0gXFxsZSAyMFxcKVx1Yzc3NFx1YjJlNC48XC9wPlxyXG4iLCJvdXRwdXQiOiI8cD5cdWFjMDFcdWFjMDFcdWM3NTggXHVkMTRjXHVjMmE0XHVkMmI4IFx1Y2YwMFx1Yzc3NFx1YzJhNFx1YjljOFx1YjJlNCBcdWM1NDRcdWI3OThcdWM3NTggXHVjNjA4XHVjODFjIFx1Y2Q5Y1x1YjgyNVx1Yzc1OCBcdWQ2MTVcdWMyZGRcdWM1ZDAgXHViNTMwXHViNzdjIFx1ZDBjOFx1Y2Q5Y1x1ZDU1OFx1YzljMCBcdWJhYmJcdWQ1NThcdWIyOTQgXHViM2M0XHViOWM4XHViYzQwXHVjNzU4IFx1YzIxOFx1Yjk3YyBcdWQ1NWMgXHVjOTA0XHVjNWQwIFx1Y2Q5Y1x1YjgyNVx1ZDU1OFx1Yjc3Yy48XC9wPlxyXG4iLCJoaW50IjoiPHA+XHVjOGZjXHVjNzU4IDogXHViYWE4XHViNGUwIFx1YWUzOFx1Yzc0NCBcdWM4NzBcdWMwYWNcdWQ1NThcdWIyOTQgQnJ1dGUgRm9yY2UgXHViYzI5XHViYzk1XHVjNzU4IFx1YWNiZFx1YzZiMCwgXHVjOGZjXHVjNWI0XHVjOWM0IFx1YzJkY1x1YWMwNFx1Yzc0NCBcdWNkMDhcdWFjZmNcdWQ1NjAgXHVjMjE4IFx1Yzc4OFx1YjJlNC48XC9wPlxyXG4iLCJvcmlnaW5hbCI6IjAiLCJwcm9ibGVtX2xhbmdfY29kZSI6Ilx1ZDU1Y1x1YWQ2ZFx1YzViNCJ9LHsicHJvYmxlbV9pZCI6IjQ2MjciLCJwcm9ibGVtX2xhbmciOiIxIiwidGl0bGUiOiJMZWFwaW4nIExpemFyZHMiLCJkZXNjcmlwdGlvbiI6IjxwPllvdXIgcGxhdG9vbiBvZiB3YW5kZXJpbmcgbGl6YXJkcyBoYXMgZW50ZXJlZCBhIHN0cmFuZ2Ugcm9vbSBpbiB0aGUgbGFieXJpbnRoIHlvdSBhcmUgZXhwbG9yaW5nLiBBcyB5b3UgYXJlIGxvb2tpbmcgYXJvdW5kIGZvciBoaWRkZW4gdHJlYXN1cmVzLCBvbmUgb2YgdGhlIHJvb2tpZXMgc3RlcHMgb24gYW4gaW5ub2NlbnQtbG9va2luZyBzdG9uZSBhbmQgdGhlIHJvb20mIzM5O3MgZmxvb3Igc3VkZGVubHkgZGlzYXBwZWFycyEgRWFjaCBsaXphcmQgaW4geW91ciBwbGF0b29uIGlzIGxlZnQgc3RhbmRpbmcgb24gYSBmcmFnaWxlLWxvb2tpbmcgcGlsbGFyLCBhbmQgYSBmaXJlIGJlZ2lucyB0byByYWdlIGJlbG93Li4uPFwvcD5cclxuXHJcbjxwPkxlYXZlIG5vIGxpemFyZCBiZWhpbmQhIEdldCBhcyBtYW55IGxpemFyZHMgYXMgcG9zc2libGUgb3V0IG9mIHRoZSByb29tLCBhbmQgcmVwb3J0IHRoZSBudW1iZXIgb2YgY2FzdWFsdGllcy48XC9wPlxyXG5cclxuPHA+VGhlIHBpbGxhcnMgaW4gdGhlIHJvb20gYXJlIGFsaWduZWQgYXMgYSBncmlkLCB3aXRoIGVhY2ggcGlsbGFyIG9uZSB1bml0IGF3YXkgZnJvbSB0aGUgcGlsbGFycyB0byBpdHMgZWFzdCwgd2VzdCwgbm9ydGggYW5kIHNvdXRoLiBQaWxsYXJzIGF0IHRoZSBlZGdlIG9mIHRoZSBncmlkIGFyZSBvbmUgdW5pdCBhd2F5IGZyb20gdGhlIGVkZ2Ugb2YgdGhlIHJvb20gKHNhZmV0eSkuIE5vdCBhbGwgcGlsbGFycyBuZWNlc3NhcmlseSBoYXZlIGEgbGl6YXJkLiBBIGxpemFyZCBpcyBhYmxlIHRvIGxlYXAgb250byBhbnkgdW5vY2N1cGllZCBwaWxsYXIgdGhhdCBpcyB3aXRoaW4gZCB1bml0cyBvZiBoaXMgY3VycmVudCBvbmUuIEEgbGl6YXJkIHN0YW5kaW5nIG9uIGEgcGlsbGFyIHdpdGhpbiBsZWFwaW5nIGRpc3RhbmNlIG9mIHRoZSBlZGdlIG9mIHRoZSByb29tIG1heSBhbHdheXMgbGVhcCB0byBzYWZldHkuLi4gYnV0IHRoZXJlJiMzOTtzIGEgY2F0Y2g6IGVhY2ggcGlsbGFyIGJlY29tZXMgd2Vha2VuZWQgYWZ0ZXIgZWFjaCBqdW1wLCBhbmQgd2lsbCBzb29uIGNvbGxhcHNlIGFuZCBubyBsb25nZXIgYmUgdXNhYmxlIGJ5IG90aGVyIGxpemFyZHMuIExlYXBpbmcgb250byBhIHBpbGxhciBkb2VzIG5vdCBjYXVzZSBpdCB0byB3ZWFrZW4gb3IgY29sbGFwc2U7IG9ubHkgbGVhcGluZyBvZmYgb2YgaXQgY2F1c2VzIGl0IHRvIHdlYWtlbiBhbmQgZXZlbnR1YWxseSBjb2xsYXBzZS4gT25seSBvbmUgbGl6YXJkIG1heSBiZSBvbiBhIHBpbGxhciBhdCBhbnkgZ2l2ZW4gdGltZS48XC9wPlxyXG4iLCJpbnB1dCI6IjxwPlRoZSBpbnB1dCBmaWxlIHdpbGwgYmVnaW4gd2l0aCBhIGxpbmUgY29udGFpbmluZyBhIHNpbmdsZSBpbnRlZ2VyIHJlcHJlc2VudGluZyB0aGUgbnVtYmVyIG9mIHRlc3QgY2FzZXMsIHdoaWNoIGlzIGF0IG1vc3QgMjUuIEVhY2ggdGVzdCBjYXNlIHdpbGwgYmVnaW4gd2l0aCBhIGxpbmUgY29udGFpbmluZyBhIHNpbmdsZSBwb3NpdGl2ZSBpbnRlZ2VyIG4gcmVwcmVzZW50aW5nIHRoZSBudW1iZXIgb2Ygcm93cyBpbiB0aGUgbWFwLCBmb2xsb3dlZCBieSBhIHNpbmdsZSBub24tbmVnYXRpdmUgaW50ZWdlciBkIHJlcHJlc2VudGluZyB0aGUgbWF4aW11bSBsZWFwaW5nIGRpc3RhbmNlIGZvciB0aGUgbGl6YXJkcy4gVHdvIG1hcHMgd2lsbCBmb2xsb3csIGVhY2ggYXMgYSBtYXAgb2YgY2hhcmFjdGVycyB3aXRoIG9uZSByb3cgcGVyIGxpbmUuIFRoZSBmaXJzdCBtYXAgd2lsbCBjb250YWluIGEgZGlnaXQgKDAtMykgaW4gZWFjaCBwb3NpdGlvbiByZXByZXNlbnRpbmcgdGhlIG51bWJlciBvZiBqdW1wcyB0aGUgcGlsbGFyIGluIHRoYXQgcG9zaXRpb24gd2lsbCBzdXN0YWluIGJlZm9yZSBjb2xsYXBzaW5nICgwIG1lYW5zIHRoZXJlIGlzIG5vIHBpbGxhciB0aGVyZSkuIFRoZSBzZWNvbmQgbWFwIHdpbGwgZm9sbG93LCB3aXRoIGFuICYjMzk7TCYjMzk7IGZvciBldmVyeSBwb3NpdGlvbiB3aGVyZSBhIGxpemFyZCBpcyBvbiB0aGUgcGlsbGFyIGFuZCBhICYjMzk7LiYjMzk7IGZvciBldmVyeSBlbXB0eSBwaWxsYXIuIFRoZXJlIHdpbGwgbmV2ZXIgYmUgYSBsaXphcmQgb24gYSBwb3NpdGlvbiB3aGVyZSB0aGVyZSBpcyBubyBwaWxsYXIuPFwvcD5cclxuXHJcbjxwPkVhY2ggaW5wdXQgbWFwIGlzIGd1YXJhbnRlZWQgdG8gYmUgYSByZWN0YW5nbGUgb2Ygc2l6ZSBuIHggbSwgd2hlcmUgMSAmbGU7IG4gJmxlOyAyMCBhbmQgMSAmbGU7IG0gJmxlOyAyMC4gVGhlIGxlYXBpbmcgZGlzdGFuY2UgaXMgYWx3YXlzIDEgJmxlOyBkICZsZTsgMy48XC9wPlxyXG4iLCJvdXRwdXQiOiI8cD5PdXRwdXQ6IEZvciBlYWNoIGlucHV0IGNhc2UsIHByaW50IGEgc2luZ2xlIGxpbmUgY29udGFpbmluZyB0aGUgbnVtYmVyIG9mIGxpemFyZHMgdGhhdCBjb3VsZCBub3QgZXNjYXBlLiBUaGUgZm9ybWF0IHNob3VsZCBmb2xsb3cgdGhlIHNhbXBsZXMgcHJvdmlkZWQgYmVsb3cuPFwvcD5cclxuIiwiaGludCI6IjxwPldhcm5pbmc6IEJydXRlIGZvcmNlIG1ldGhvZHMgZXhhbWluaW5nIGV2ZXJ5IHBhdGggd2lsbCBsaWtlbHkgZXhjZWVkIHRoZSBhbGxvdHRlZCB0aW1lIGxpbWl0LjxcL3A+XHJcbiIsIm9yaWdpbmFsIjoiMSIsInByb2JsZW1fbGFuZ19jb2RlIjoiXHVjNjAxXHVjNWI0In1d