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

문제

ACM-ICPC 리저널 대회가 열리기 전, 현장 담당관과 자원봉사자들은 매우 바쁘다.

그들의 임무 중 하나는 대회장의 테이블을 적절히 배치하여 인접한 두 테이블에는 서로 다른 학교 출신의 팀이 앉도록 하는 것이다.

이 일은 상당히 힘든 일이기 때문에 일반적으로 사람이 직접 하기보다는 프로그램을 통해 수행한다. 올해는 심사위원들이 이 일을 맡게 되었다.

심사위원들은 프로그램을 통해 자리 배치를 끝냈다. 그 후 가만히 생각해보니, 이 자리 배치 문제가 대회 문제로 상당히 좋을 것 같았다. 따라서 심사위원들은 이 문제의 일부를 실제 대회 문제로 출제하기로 하였다.

심사위원들의 프로그램 작동 방식은 아주 단순하다. 우선 그냥 임의로 자리를 배치시킨다. 이후 어떤 인접한 두 자리에 같은 대학 출신의 두 팀이 앉게 되는지 확인한다. 만일 그러한 자리가 존재한다면 그러한 배치로 혜택을 받는 학교, 즉 인접한 자리에 같은 학교 출신 팀이 앉게 되는 학교가 총 몇 개인지 센다.

대회장은 2차원 평면에 N개의 행, M개의 열로 이루어진 표로 나타낼 수 있다.

표의 각 칸에는 한 팀이 앉거나 아무 팀도 앉지 않는다.

각 팀은 최대 8개의 인접한 팀을 가질 수 있다. 만일 자리가 모서리 쪽이라거나, 주변에 빈 자리가 있는 경우엔 8개 미만의 인접한 팀을 갖게 된다.

예를 들어 위와 같은 상황에서, 팀 E는 7개의 인접한 팀 A, B, C, D, F, G, H를 갖는다.

또한 팀 A는 3개의 인접한 팀 B, D, E를 갖는다.

입력

첫 줄에 테스트 케이스의 수 T가 주어진다. ( 1 ≤ T ≤ 100 )

각 테스트 케이스의 첫 줄엔 대회장의 세로 길이와 가로 길이 N, M이 주어진다. ( 1 ≤ N, M ≤ 100 )

이어 N줄에 걸쳐 M개의 정수로 각 자리에 어떤 팀이 앉게 되는지가 주어진다. 팀의 ID는 1부터 100까지의 정수로 표현되며, 만일 ID가 -1로 주어진다면 그 자리가 비어있음을 의미한다.

출력

각 테스트 케이스마다, 인접한 같은 학교 출신의 팀을 가지는 학교가 총 몇 개인지 출력한다.

예제 입력 1

3
3 3
1 2 3
2 2 2
1 1 1
3 3
1 2 3
3 -1 1
2 -1 2
3 3
1 2 3
-1 1 5
1 2 4

예제 출력 1

2
0
1
W3sicHJvYmxlbV9pZCI6Ijk1NTUiLCJwcm9ibGVtX2xhbmciOiIwIiwidGl0bGUiOiJcdWIzMDBcdWQ2OGMgXHVjN2E1XHVjMThjIFx1YzkwMFx1YmU0NCIsImRlc2NyaXB0aW9uIjoiPHA+QUNNLUlDUEMgXHViOWFjXHVjODAwXHViMTEwIFx1YjMwMFx1ZDY4Y1x1YWMwMCBcdWM1ZjRcdWI5YWNcdWFlMzAgXHVjODA0LCBcdWQ2MDRcdWM3YTUgXHViMmY0XHViMmY5XHVhZDAwXHVhY2ZjIFx1Yzc5MFx1YzZkMFx1YmQwOVx1YzBhY1x1Yzc5MFx1YjRlNFx1Yzc0MCBcdWI5ZTRcdWM2YjAgXHViYzE0XHVjMDU4XHViMmU0LjxcL3A+XHJcblxyXG48cD5cdWFkZjhcdWI0ZTRcdWM3NTggXHVjNzg0XHViYjM0IFx1YzkxMSBcdWQ1NThcdWIwOThcdWIyOTQgXHViMzAwXHVkNjhjXHVjN2E1XHVjNzU4IFx1ZDE0Y1x1Yzc3NFx1YmUxNFx1Yzc0NCBcdWM4MDFcdWM4MDhcdWQ3ODggXHViYzMwXHVjZTU4XHVkNTU4XHVjNWVjIFx1Yzc3OFx1YzgxMVx1ZDU1YyBcdWI0NTAgXHVkMTRjXHVjNzc0XHViZTE0XHVjNWQwXHViMjk0IFx1YzExY1x1Yjg1YyBcdWIyZTRcdWI5NzggXHVkNTU5XHVhZDUwIFx1Y2Q5Y1x1YzJlMFx1Yzc1OCBcdWQzMDBcdWM3NzQgXHVjNTQ5XHViM2M0XHViODVkIFx1ZDU1OFx1YjI5NCBcdWFjODNcdWM3NzRcdWIyZTQuPFwvcD5cclxuXHJcbjxwPlx1Yzc3NCBcdWM3N2NcdWM3NDAgXHVjMGMxXHViMmY5XHVkNzg4IFx1ZDc5OFx1YjRlMCBcdWM3N2NcdWM3NzRcdWFlMzAgXHViNTRjXHViYjM4XHVjNWQwIFx1Yzc3Y1x1YmMxOFx1YzgwMVx1YzczY1x1Yjg1YyBcdWMwYWNcdWI3OGNcdWM3NzQgXHVjOWMxXHVjODExIFx1ZDU1OFx1YWUzMFx1YmNmNFx1YjJlNFx1YjI5NCBcdWQ1MDRcdWI4NWNcdWFkZjhcdWI3YThcdWM3NDQgXHVkMWI1XHVkNTc0IFx1YzIxOFx1ZDU4OVx1ZDU1Y1x1YjJlNC4gXHVjNjJjXHVkNTc0XHViMjk0IFx1YzJlY1x1YzBhY1x1YzcwNFx1YzZkMFx1YjRlNFx1Yzc3NCBcdWM3NzQgXHVjNzdjXHVjNzQ0IFx1YjllMVx1YWM4YyBcdWI0MThcdWM1YzhcdWIyZTQuPFwvcD5cclxuXHJcbjxwPlx1YzJlY1x1YzBhY1x1YzcwNFx1YzZkMFx1YjRlNFx1Yzc0MCBcdWQ1MDRcdWI4NWNcdWFkZjhcdWI3YThcdWM3NDQgXHVkMWI1XHVkNTc0IFx1Yzc5MFx1YjlhYyBcdWJjMzBcdWNlNThcdWI5N2MgXHViMDVkXHViMGM4XHViMmU0LiBcdWFkZjggXHVkNmM0IFx1YWMwMFx1YjljY1x1ZDc4OCBcdWMwZGRcdWFjMDFcdWQ1NzRcdWJjZjRcdWIyYzgsIFx1Yzc3NCBcdWM3OTBcdWI5YWMgXHViYzMwXHVjZTU4IFx1YmIzOFx1YzgxY1x1YWMwMCBcdWIzMDBcdWQ2OGMgXHViYjM4XHVjODFjXHViODVjIFx1YzBjMVx1YjJmOVx1ZDc4OCBcdWM4OGJcdWM3NDQgXHVhYzgzIFx1YWMxOVx1YzU1OFx1YjJlNC4gXHViNTMwXHViNzdjXHVjMTFjIFx1YzJlY1x1YzBhY1x1YzcwNFx1YzZkMFx1YjRlNFx1Yzc0MCBcdWM3NzQgXHViYjM4XHVjODFjXHVjNzU4IFx1Yzc3Y1x1YmQ4MFx1Yjk3YyBcdWMyZTRcdWM4MWMgXHViMzAwXHVkNjhjIFx1YmIzOFx1YzgxY1x1Yjg1YyBcdWNkOWNcdWM4MWNcdWQ1NThcdWFlMzBcdWI4NWMgXHVkNTU4XHVjNjAwXHViMmU0LjxcL3A+XHJcblxyXG48cD5cdWMyZWNcdWMwYWNcdWM3MDRcdWM2ZDBcdWI0ZTRcdWM3NTggXHVkNTA0XHViODVjXHVhZGY4XHViN2E4IFx1Yzc5MVx1YjNkOSBcdWJjMjlcdWMyZGRcdWM3NDAgXHVjNTQ0XHVjOGZjIFx1YjJlOFx1YzIxY1x1ZDU1OFx1YjJlNC4gXHVjNmIwXHVjMTIwIFx1YWRmOFx1YjBlNSBcdWM3ODRcdWM3NThcdWI4NWMgXHVjNzkwXHViOWFjXHViOTdjIFx1YmMzMFx1Y2U1OFx1YzJkY1x1ZDBhOFx1YjJlNC4gXHVjNzc0XHVkNmM0IFx1YzViNFx1YjVhNCBcdWM3NzhcdWM4MTFcdWQ1NWMgXHViNDUwIFx1Yzc5MFx1YjlhY1x1YzVkMCBcdWFjMTlcdWM3NDAgXHViMzAwXHVkNTU5IFx1Y2Q5Y1x1YzJlMFx1Yzc1OCBcdWI0NTAgXHVkMzAwXHVjNzc0IFx1YzU0OVx1YWM4YyBcdWI0MThcdWIyOTRcdWM5YzAgXHVkNjU1XHVjNzc4XHVkNTVjXHViMmU0LiBcdWI5Y2NcdWM3N2MgXHVhZGY4XHViN2VjXHVkNTVjIFx1Yzc5MFx1YjlhY1x1YWMwMCBcdWM4NzRcdWM3YWNcdWQ1NWNcdWIyZTRcdWJhNzQgXHVhZGY4XHViN2VjXHVkNTVjIFx1YmMzMFx1Y2U1OFx1Yjg1YyBcdWQ2MWNcdWQwZGRcdWM3NDQgXHViYzFiXHViMjk0IFx1ZDU1OVx1YWQ1MCwgXHVjOTg5IFx1Yzc3OFx1YzgxMVx1ZDU1YyBcdWM3OTBcdWI5YWNcdWM1ZDAgXHVhYzE5XHVjNzQwIFx1ZDU1OVx1YWQ1MCBcdWNkOWNcdWMyZTAgXHVkMzAwXHVjNzc0IFx1YzU0OVx1YWM4YyBcdWI0MThcdWIyOTQgXHVkNTU5XHVhZDUwXHVhYzAwIFx1Y2QxZCBcdWJhODcgXHVhYzFjXHVjNzc4XHVjOWMwIFx1YzEzY1x1YjJlNC48XC9wPlxyXG5cclxuPHA+XHViMzAwXHVkNjhjXHVjN2E1XHVjNzQwIDJcdWNjMjhcdWM2ZDAgXHVkM2M5XHViYTc0XHVjNWQwIE5cdWFjMWNcdWM3NTggXHVkNTg5LCBNXHVhYzFjXHVjNzU4IFx1YzVmNFx1Yjg1YyBcdWM3NzRcdWI4ZThcdWM1YjRcdWM5YzQgXHVkNDVjXHViODVjIFx1YjA5OFx1ZDBjMFx1YjBiYyBcdWMyMTggXHVjNzg4XHViMmU0LjxcL3A+XHJcblxyXG48cD5cdWQ0NWNcdWM3NTggXHVhYzAxIFx1Y2U3OFx1YzVkMFx1YjI5NCBcdWQ1NWMgXHVkMzAwXHVjNzc0IFx1YzU0OVx1YWM3MFx1YjA5OCBcdWM1NDRcdWJiMzQgXHVkMzAwXHViM2M0IFx1YzU0OVx1YzljMCBcdWM1NGFcdWIyOTRcdWIyZTQuPFwvcD5cclxuXHJcbjxwPlx1YWMwMSBcdWQzMDBcdWM3NDAgXHVjZDVjXHViMzAwIDhcdWFjMWNcdWM3NTggXHVjNzc4XHVjODExXHVkNTVjIFx1ZDMwMFx1Yzc0NCBcdWFjMDBcdWM5YzggXHVjMjE4IFx1Yzc4OFx1YjJlNC4gXHViOWNjXHVjNzdjIFx1Yzc5MFx1YjlhY1x1YWMwMCBcdWJhYThcdWMxMWNcdWI5YWMgXHVjYWJkXHVjNzc0XHViNzdjXHVhYzcwXHViMDk4LCBcdWM4ZmNcdWJjYzBcdWM1ZDAgXHViZTQ4IFx1Yzc5MFx1YjlhY1x1YWMwMCBcdWM3ODhcdWIyOTQgXHVhY2JkXHVjNmIwXHVjNWQ0IDhcdWFjMWMgXHViYmY4XHViOWNjXHVjNzU4IFx1Yzc3OFx1YzgxMVx1ZDU1YyBcdWQzMDBcdWM3NDQgXHVhYzE2XHVhYzhjIFx1YjQxY1x1YjJlNC48XC9wPlxyXG5cclxuPHA+PGltZyBzcmM9XCJcL3VwbG9hZFwvaW1hZ2VzMlwvY29udGVzdGhhbGwucG5nXCIgXC8+PFwvcD5cclxuXHJcbjxwPlx1YzYwOFx1Yjk3YyBcdWI0ZTRcdWM1YjQgXHVjNzA0XHVjNjQwIFx1YWMxOVx1Yzc0MCBcdWMwYzFcdWQ2NjlcdWM1ZDBcdWMxMWMsIFx1ZDMwMCBFXHViMjk0IDdcdWFjMWNcdWM3NTggXHVjNzc4XHVjODExXHVkNTVjIFx1ZDMwMCBBLCBCLCBDLCBELCBGLCBHLCBIXHViOTdjIFx1YWMxNlx1YjI5NFx1YjJlNC48XC9wPlxyXG5cclxuPHA+XHViNjEwXHVkNTVjIFx1ZDMwMCBBXHViMjk0IDNcdWFjMWNcdWM3NTggXHVjNzc4XHVjODExXHVkNTVjIFx1ZDMwMCBCLCBELCBFXHViOTdjIFx1YWMxNlx1YjI5NFx1YjJlNC48XC9wPlxyXG4iLCJpbnB1dCI6IjxwPlx1Y2NhYiBcdWM5MDRcdWM1ZDAgXHVkMTRjXHVjMmE0XHVkMmI4IFx1Y2YwMFx1Yzc3NFx1YzJhNFx1Yzc1OCBcdWMyMTggVFx1YWMwMCBcdWM4ZmNcdWM1YjRcdWM5YzRcdWIyZTQuICggMSAmbGU7IFQgJmxlOyAxMDAgKTxcL3A+XHJcblxyXG48cD5cdWFjMDEgXHVkMTRjXHVjMmE0XHVkMmI4IFx1Y2YwMFx1Yzc3NFx1YzJhNFx1Yzc1OCBcdWNjYWIgXHVjOTA0XHVjNWQ0IFx1YjMwMFx1ZDY4Y1x1YzdhNVx1Yzc1OCBcdWMxMzhcdWI4NWMgXHVhZTM4XHVjNzc0XHVjNjQwIFx1YWMwMFx1Yjg1YyBcdWFlMzhcdWM3NzQgTiwgTVx1Yzc3NCBcdWM4ZmNcdWM1YjRcdWM5YzRcdWIyZTQuICggMSAmbGU7IE4sIE0gJmxlOyAxMDAgKTxcL3A+XHJcblxyXG48cD5cdWM3NzRcdWM1YjQgTlx1YzkwNFx1YzVkMCBcdWFjNzhcdWNjZDAgTVx1YWMxY1x1Yzc1OCBcdWM4MTVcdWMyMThcdWI4NWMgXHVhYzAxIFx1Yzc5MFx1YjlhY1x1YzVkMCBcdWM1YjRcdWI1YTQgXHVkMzAwXHVjNzc0IFx1YzU0OVx1YWM4YyBcdWI0MThcdWIyOTRcdWM5YzBcdWFjMDAgXHVjOGZjXHVjNWI0XHVjOWM0XHViMmU0LiBcdWQzMDBcdWM3NTggSURcdWIyOTQgMVx1YmQ4MFx1ZDEzMCAxMDBcdWFlNGNcdWM5YzBcdWM3NTggXHVjODE1XHVjMjE4XHViODVjIFx1ZDQ1Y1x1ZDYwNFx1YjQxOFx1YmE3MCwgXHViOWNjXHVjNzdjIElEXHVhYzAwIC0xXHViODVjIFx1YzhmY1x1YzViNFx1YzljNFx1YjJlNFx1YmE3NCBcdWFkZjggXHVjNzkwXHViOWFjXHVhYzAwIFx1YmU0NFx1YzViNFx1Yzc4OFx1Yzc0Y1x1Yzc0NCBcdWM3NThcdWJiZjhcdWQ1NWNcdWIyZTQuPFwvcD5cclxuIiwib3V0cHV0IjoiPHA+XHVhYzAxIFx1ZDE0Y1x1YzJhNFx1ZDJiOCBcdWNmMDBcdWM3NzRcdWMyYTRcdWI5YzhcdWIyZTQsIFx1Yzc3OFx1YzgxMVx1ZDU1YyBcdWFjMTlcdWM3NDAgXHVkNTU5XHVhZDUwIFx1Y2Q5Y1x1YzJlMFx1Yzc1OCBcdWQzMDBcdWM3NDQgXHVhYzAwXHVjOWMwXHViMjk0IFx1ZDU1OVx1YWQ1MFx1YWMwMCBcdWNkMWQgXHViYTg3IFx1YWMxY1x1Yzc3OFx1YzljMCBcdWNkOWNcdWI4MjVcdWQ1NWNcdWIyZTQuPFwvcD5cclxuIiwiaGludCI6IiIsIm9yaWdpbmFsIjoiMCIsImh0bWxfdGl0bGUiOiIwIiwicHJvYmxlbV9sYW5nX3Rjb2RlIjoiS29yZWFuIn0seyJwcm9ibGVtX2lkIjoiOTU1NSIsInByb2JsZW1fbGFuZyI6IjEiLCJ0aXRsZSI6IkNvbnRlc3QgSGFsbCBQcmVwYXJhdGlvbiIsImRlc2NyaXB0aW9uIjoiPHA+QmVmb3JlIHRoZSBBQ00tQUNQQyByZWdpb25hbCBjb250ZXN0LCB0aGUgc2l0ZSBkaXJlY3RvciBhbmQgdGhlIHZvbHVudGVlcnMgd2VyZSB2ZXJ5IGJ1c3kgcHJlcGFyaW5nIGZvciB0aGUgY29udGVzdC4gT25lIG9mIHRoZWlyIHRhc2tzIGlzIHRvIGFzc2lnbiBhIHRhYmxlIGZvciBlYWNoIHRlYW0gc3VjaCB0aGF0IG5vIHR3byB0ZWFtcyBmcm9tIHRoZSBzYW1lIHVuaXZlcnNpdHkgYXJlIGFkamFjZW50IHRvIGVhY2ggb3RoZXIuIFRoZSBzaXRlIGRpcmVjdG9yIGRlY2lkZWQgbm90IHRvIHdhc3RlIGhpcyB0aW1lIGRvaW5nIHRoaXMgdGFzayBhbmQgYXNrZWQgdGhlIGp1ZGdlcyB0byBkbyBpdC4gVGhlIGp1ZGdlcyB0aG91Z2h0IHRoaXMgY291bGQgYmUgYSBnb29kIHByb2JsZW0gdG8gYmUgdXNlZCBpbiB0aGUgY29udGVzdCBwcm9ibGVtcyBzZXQuIEFzIHRoZXkgd2VyZSB2ZXJ5IGJ1c3kgcHJlcGFyaW5nIGZvciB0aGUgY29udGVzdCwgdGhlIGp1ZGdlcyBkZWNpZGVkIHRvIHNvbHZlIHBhcnQgb2YgdGhlIHByb2JsZW0gYW5kIGFzayB0aGUgY29udGVzdGFudHMgdG8gc29sdmUgdGhlIHJlc3QuPFwvcD5cclxuXHJcbjxwPlRoZSBqdWRnZXMgd2lsbCBnZW5lcmF0ZSBhIG51bWJlciBvZiBsYXlvdXRzIGZvciB0aGUgdGVhbXMgYXNzaWdubWVudCB0byB0aGUgdGFibGVzIGFuZCB3aWxsIGFzayB0aGUgY29udGVzdGFudHMgdG8gd3JpdGUgYSBwcm9ncmFtIHRvIGNoZWNrIHdoZXRoZXIgZWFjaCBvZiB0aGVzZSBsYXlvdXRzIGlzIHZhbGlkIG9yIG5vdC4gSWYgYSBsYXlvdXQgaXMgbm90IHZhbGlkIHRoZSBwcm9ncmFtIHNob3VsZCBjb3VudCBob3cgbWFueSBkaWZmZXJlbnQgdW5pdmVyc2l0aWVzIGhhdmUgYXQgbGVhc3QgdHdvIG9mIHRoZWlyIHRlYW1zIHNpdHRpbmcgYWRqYWNlbnQgdG8gZWFjaCBvdGhlci4gJmxkcXVvO1dlbGwsIHlvdSBtYXkgdXNlIHRob3NlIHNvbHV0aW9ucyBmb3IgdGhlIG5leHQgeWVhciZyc3F1bztzIGNvbnRlc3QmcmRxdW87LCBzYWlkIGJ5IHRoZSBjaGllZiBqdWRnZSBBaG1lZCBBbHkgdG8gdGhlIHNpdGUgZGlyZWN0b3IuPFwvcD5cclxuXHJcbjxwPlRoZSBjb250ZXN0IGhhbGwgY2FuIGJlIHJlcHJlc2VudGVkIGFzIGEgMkQgZ3JpZCBvZiBOIHJvd3Mgd2l0aCBNIGNlbGxzIGluIGVhY2ggcm93LiBFYWNoIGNlbGwgaW4gdGhlIGdyaWQgaXMgZWl0aGVyIG9jY3VwaWVkIGJ5IGEgdGVhbSBvciBlbXB0eS4gVGhlcmUgY291bGQgYmUgdXAgdG8gOCB0ZWFtcyBhZGphY2VudCB0byBhIHNpbmdsZSB0ZWFtLiBBIHRlYW0gbWF5IGhhdmUgbGVzcyB0aGFuIDggYWRqYWNlbnQgdGVhbXMgaWYgaXQgaXMgc2VhdGVkIG5leHQgdG8gYSBoYWxsIGVkZ2Ugb3Igc29tZSBvZiBpdHMgYWRqYWNlbnQgY2VsbHMgYXJlIGVtcHR5LjxcL3A+XHJcblxyXG48cD5Gb3IgZXhhbXBsZSwgaW4gdGhlIGxheW91dCBzaG93biBpbiB0aGUgZm9sbG93aW5nIGZpZ3VyZSwgdGVhbSBFIGhhcyA3IGFkamFjZW50IHRlYW1zLCBuYW1lZCBBLCBCLCBDLCBELCBGLCBHIGFuZCBILCB3aGlsZSB0aGUgYWRqYWNlbnQgdGVhbXMgdG8gdGVhbSBBIGFyZSBCLCBEIGFuZCBFLjxcL3A+XHJcblxyXG48cCBzdHlsZT1cInRleHQtYWxpZ246IGNlbnRlcjtcIj48aW1nIGFsdD1cIlwiIHNyYz1cIlwvdXBsb2FkXC9pbWFnZXMyXC9jb250ZXN0aGFsbC5wbmdcIiBzdHlsZT1cImhlaWdodDoxOTRweDsgd2lkdGg6MTg3cHhcIiBcLz48XC9wPlxyXG4iLCJpbnB1dCI6IjxwPllvdXIgcHJvZ3JhbSB3aWxsIGJlIHRlc3RlZCBvbiBvbmUgb3IgbW9yZSB0ZXN0IGNhc2VzLiBUaGUgZmlyc3QgbGluZSBvZiB0aGUgaW5wdXQgd2lsbCBiZSBhIHNpbmdsZSBpbnRlZ2VyIFQsIHRoZSBudW1iZXIgb2YgdGVzdCBjYXNlcyAoMSAmbGU7IFQgJmxlOyAxMDApLiBGb2xsb3dlZCBieSB0aGUgdGVzdCBjYXNlcywgZWFjaCBvbmUgc3RhcnRzIHdpdGggYSBsaW5lIGNvbnRhaW5pbmcgMiBpbnRlZ2VycyBzZXBhcmF0ZWQgYnkgYSBzaW5nbGUgc3BhY2UgTiBhbmQgTSAoMSAmbGU7IE4sIE0gJmxlOyAxMDApIHJlcHJlc2VudGluZyB0aGUgZGltZW5zaW9ucyBvZiB0aGUgaGFsbCwgZm9sbG93ZWQgYnkgTiBsaW5lcyBlYWNoIGxpbmUgY29udGFpbnMgTSBpbnRlZ2VycyBzZXBhcmF0ZWQgYnkgYSBzaW5nbGUgc3BhY2UsIHJlcHJlc2VudGluZyB0aGUgdGFibGVzIGFzc2lnbm1lbnQgaW4gdGhpcyByb3cuIEVhY2ggaW50ZWdlciByZXByZXNlbnRzIHRoZSB1bml2ZXJzaXR5IElEIG9mIHRoZSB0ZWFtIGFzc2lnbmVkIHRvIHRoaXMgdGFibGUgb3IgJmxzcXVvOy0xJnJzcXVvOyBpZiBpdCBpcyBlbXB0eS4gQWxsIHVuaXZlcnNpdGllcyBJRHMgYXJlIHBvc2l0aXZlIGludGVnZXJzIG5vdCBncmVhdGVyIHRoYW4gMTAwLjxcL3A+XHJcbiIsIm91dHB1dCI6IjxwPkZvciBlYWNoIHRlc3QgY2FzZSwgcHJpbnQgb24gYSBzaW5nbGUgbGluZSBpbnRlZ2VyLCB0aGUgbnVtYmVyIG9mIGRpZmZlcmVudCB1bml2ZXJzaXRpZXMgaGF2aW5nIGF0IGxlYXN0IHR3byBvZiB0aGVpciB0ZWFtcyBhZGphY2VudCB0byBlYWNoIG90aGVyLjxcL3A+XHJcbiIsImhpbnQiOiIiLCJvcmlnaW5hbCI6IjEiLCJodG1sX3RpdGxlIjoiMCIsInByb2JsZW1fbGFuZ190Y29kZSI6IkVuZ2xpc2gifV0=