시간 제한 메모리 제한 제출 정답 맞은 사람 정답 비율
2 초 128 MB 63 15 12 29.268%

문제

HTML에서 표를 그리려면 태그를 이용해야 한다. 표를 그리는 간단한 표현이 주어졌을 때, 표의 아스키 아트를 만드는 프로그램을 작성하시오.

표는 m × n 그리드로 나타낼 수 있고, 각 칸의 너비는 두 글자, 높이는 한 글자이다. 2 × 3 그리드는 다음과 같이 나타낼 수 있다.

 -- -- --
|11|12|13|
 -- -- --
|21|22|23|
 -- -- --

출력은 2m + 1개의 행으로 이루어져 있고, 각 행은 3n + 1개의 글자로 이루어져 있다. (홀수 행의 앞과 뒤에 들어가는 공백도 포함)

표는 행이나 열 여러 개를 합칠 수 있다. 예를 들어, 칸 11이 두 행을 합치고, 칸 22가 두 열을 합쳤을 때의 아스키 아트는 다음과 같다.

 -- -- --
|11|12|13|
    -- --
|  |22   |
 -- -- --

m과 각 칸이 합친 행과 열의 수가 주어졌을 때, 아스키 아트를 만드는 프로그램을 작성하시오.

입력

입력은 여러 개의 테스트 케이스로 이루어져 있다. 각 테스트 케이스의 첫째 줄에는 행의 수 m이 주어진다. 다음 m개 줄에는 각 칸이 합친 행의 수와 열의 수가 주어진다. 합친 정보는 한 번만 주어지며, 왼쪽 위 칸에서만 주어진다.

한 행을 나타내는데 총 N개의 합친 정보가 필요한 경우, 다음과 같이 주어진다.

N RS1 CS1 ... RSN CSN

RSk 와 CSk 는 1보다 크거나 같고, 9보다 작거나 같은 수이며, 그 칸에 합쳐진 행의 수와 열의 수를 나타낸다. 어떤 행에 이미 이전 행에 합쳐진 칸이 있는 경우에는, 그 행을 나타내는데 필요한 숫자가 더 적을 수도 있다.

입력은 다음과 같은 조건을 만족한다.

  • 행의 수와 열의 수는 1보다 크거나 같고, 9보다 작거나 같다.
  • 모든 행의 열의 개수는 모두 같다.
  • 합치는 정보가 겹치는 경우가 없다.
  • 모든 칸은 어떤 칸에게 합쳐져 있다.

최대 100개의 테스트 케이스가 주어지며, 입력의 마지막은 m = 0으로 나타낸다.

출력

각 테스트 케이스 마다, 입력으로 주어진 표의 아스키 아트를 출력한다. 모든 칸의 왼쪽 위 칸에는 행 번호와 열 번호를 출력한다. 모든 테스트 케이스 사이에는 빈 줄을 출력한다.

아스키 아트를 출력할 때, 줄이 공백으로 끝나는 경우에는 그 공백을 모두 삭제하고 출력해야 한다.

예제 입력 1

3
2 1 1 1 1
2 1 1 1 1
2 1 1 1 1
3
2 1 1 2 1
1 1 1
2 1 1 1 1
3
1 1 2
2 1 1 1 1
2 1 1 1 1
3
2 2 1 1 2
1 2 2
1 1 1
0

예제 출력 1

 -- --
|11|12|
 -- --
|21|22|
 -- --
|31|32|
 -- --

 -- --
|11|12|
 --
|21|  |
 -- --
|31|32|
 -- --

 -- --
|11   |
 -- --
|21|22|
 -- --
|31|32|
 -- --

 -- -- --
|11|12   |
    -- --
|  |22   |
 --
|31|     |
 -- -- --

힌트

W3sicHJvYmxlbV9pZCI6IjkzMzYiLCJwcm9ibGVtX2xhbmciOiIwIiwidGl0bGUiOiJcdWM1NDRcdWMyYTRcdWQwYTQgXHVjNTQ0XHVkMmI4IFx1ZDQ1YyIsImRlc2NyaXB0aW9uIjoiPHA+SFRNTFx1YzVkMFx1YzExYyBcdWQ0NWNcdWI5N2MgXHVhZGY4XHViOWFjXHViODI0XHViYTc0IFx1ZDBkY1x1YWRmOFx1Yjk3YyBcdWM3NzRcdWM2YTlcdWQ1NzRcdWM1N2MgXHVkNTVjXHViMmU0LiBcdWQ0NWNcdWI5N2MgXHVhZGY4XHViOWFjXHViMjk0IFx1YWMwNFx1YjJlOFx1ZDU1YyBcdWQ0NWNcdWQ2MDRcdWM3NzQgXHVjOGZjXHVjNWI0XHVjODRjXHVjNzQ0IFx1YjU0YywgXHVkNDVjXHVjNzU4IFx1YzU0NFx1YzJhNFx1ZDBhNCBcdWM1NDRcdWQyYjhcdWI5N2MgXHViOWNjXHViNGRjXHViMjk0IFx1ZDUwNFx1Yjg1Y1x1YWRmOFx1YjdhOFx1Yzc0NCBcdWM3OTFcdWMxMzFcdWQ1NThcdWMyZGNcdWM2MjQuPFwvcD5cclxuXHJcbjxwPlx1ZDQ1Y1x1YjI5NCBtICZ0aW1lczsgbiBcdWFkZjhcdWI5YWNcdWI0ZGNcdWI4NWMgXHViMDk4XHVkMGMwXHViMGJjIFx1YzIxOCBcdWM3ODhcdWFjZTAsIFx1YWMwMSBcdWNlNzhcdWM3NTggXHViMTA4XHViZTQ0XHViMjk0IFx1YjQ1MCBcdWFlMDBcdWM3OTAsIFx1YjE5Mlx1Yzc3NFx1YjI5NCBcdWQ1NWMgXHVhZTAwXHVjNzkwXHVjNzc0XHViMmU0LiAyICZ0aW1lczsgMyBcdWFkZjhcdWI5YWNcdWI0ZGNcdWIyOTQgXHViMmU0XHVjNzRjXHVhY2ZjIFx1YWMxOVx1Yzc3NCBcdWIwOThcdWQwYzBcdWIwYmMgXHVjMjE4IFx1Yzc4OFx1YjJlNC48XC9wPlxyXG5cclxuPHByZT5cclxuIC0tIC0tIC0tXHJcbnwxMXwxMnwxM3xcclxuIC0tIC0tIC0tXHJcbnwyMXwyMnwyM3xcclxuIC0tIC0tIC0tPFwvcHJlPlxyXG5cclxuPHA+XHVjZDljXHViODI1XHVjNzQwIDJtICsgMVx1YWMxY1x1Yzc1OCBcdWQ1ODlcdWM3M2NcdWI4NWMgXHVjNzc0XHViOGU4XHVjNWI0XHVjODM4IFx1Yzc4OFx1YWNlMCwgXHVhYzAxIFx1ZDU4OVx1Yzc0MCAzbiArIDFcdWFjMWNcdWM3NTggXHVhZTAwXHVjNzkwXHViODVjIFx1Yzc3NFx1YjhlOFx1YzViNFx1YzgzOCBcdWM3ODhcdWIyZTQuIChcdWQ2NDBcdWMyMTggXHVkNTg5XHVjNzU4IFx1YzU1ZVx1YWNmYyBcdWI0YTRcdWM1ZDAgXHViNGU0XHVjNWI0XHVhYzAwXHViMjk0IFx1YWNmNVx1YmMzMVx1YjNjNCBcdWQzZWNcdWQ1NjgpPFwvcD5cclxuXHJcbjxwPlx1ZDQ1Y1x1YjI5NCBcdWQ1ODlcdWM3NzRcdWIwOTggXHVjNWY0IFx1YzVlY1x1YjdlYyBcdWFjMWNcdWI5N2MgXHVkNTY5XHVjZTYwIFx1YzIxOCBcdWM3ODhcdWIyZTQuIFx1YzYwOFx1Yjk3YyBcdWI0ZTRcdWM1YjQsIFx1Y2U3OCAxMVx1Yzc3NCBcdWI0NTAgXHVkNTg5XHVjNzQ0IFx1ZDU2OVx1Y2U1OFx1YWNlMCwgXHVjZTc4IDIyXHVhYzAwIFx1YjQ1MCBcdWM1ZjRcdWM3NDQgXHVkNTY5XHVjY2U0XHVjNzQ0IFx1YjU0Y1x1Yzc1OCBcdWM1NDRcdWMyYTRcdWQwYTQgXHVjNTQ0XHVkMmI4XHViMjk0IFx1YjJlNFx1Yzc0Y1x1YWNmYyBcdWFjMTlcdWIyZTQuPFwvcD5cclxuXHJcbjxwcmU+XHJcbiAtLSAtLSAtLVxyXG58MTF8MTJ8MTN8XHJcbiAgICAtLSAtLVxyXG58ICB8MjIgICB8XHJcbiAtLSAtLSAtLTxcL3ByZT5cclxuXHJcbjxwPm1cdWFjZmMgXHVhYzAxIFx1Y2U3OFx1Yzc3NCBcdWQ1NjlcdWNlNWMgXHVkNTg5XHVhY2ZjIFx1YzVmNFx1Yzc1OCBcdWMyMThcdWFjMDAgXHVjOGZjXHVjNWI0XHVjODRjXHVjNzQ0IFx1YjU0YywgXHVjNTQ0XHVjMmE0XHVkMGE0IFx1YzU0NFx1ZDJiOFx1Yjk3YyBcdWI5Y2NcdWI0ZGNcdWIyOTQgXHVkNTA0XHViODVjXHVhZGY4XHViN2E4XHVjNzQ0IFx1Yzc5MVx1YzEzMVx1ZDU1OFx1YzJkY1x1YzYyNC48XC9wPlxyXG4iLCJpbnB1dCI6IjxwPlx1Yzc4NVx1YjgyNVx1Yzc0MCBcdWM1ZWNcdWI3ZWMgXHVhYzFjXHVjNzU4IFx1ZDE0Y1x1YzJhNFx1ZDJiOCBcdWNmMDBcdWM3NzRcdWMyYTRcdWI4NWMgXHVjNzc0XHViOGU4XHVjNWI0XHVjODM4IFx1Yzc4OFx1YjJlNC4gXHVhYzAxIFx1ZDE0Y1x1YzJhNFx1ZDJiOCBcdWNmMDBcdWM3NzRcdWMyYTRcdWM3NTggXHVjY2FiXHVjOWY4IFx1YzkwNFx1YzVkMFx1YjI5NCBcdWQ1ODlcdWM3NTggXHVjMjE4IG1cdWM3NzQgXHVjOGZjXHVjNWI0XHVjOWM0XHViMmU0LiBcdWIyZTRcdWM3NGMgbVx1YWMxYyBcdWM5MDRcdWM1ZDBcdWIyOTQgXHVhYzAxIFx1Y2U3OFx1Yzc3NCBcdWQ1NjlcdWNlNWMgXHVkNTg5XHVjNzU4IFx1YzIxOFx1YzY0MCBcdWM1ZjRcdWM3NTggXHVjMjE4XHVhYzAwIFx1YzhmY1x1YzViNFx1YzljNFx1YjJlNC4gXHVkNTY5XHVjZTVjIFx1YzgxNVx1YmNmNFx1YjI5NCBcdWQ1NWMgXHViYzg4XHViOWNjIFx1YzhmY1x1YzViNFx1YzljMFx1YmE3MCwgXHVjNjdjXHVjYWJkIFx1YzcwNCBcdWNlNzhcdWM1ZDBcdWMxMWNcdWI5Y2MgXHVjOGZjXHVjNWI0XHVjOWM0XHViMmU0LjxcL3A+XHJcblxyXG48cD5cdWQ1NWMgXHVkNTg5XHVjNzQ0IFx1YjA5OFx1ZDBjMFx1YjBiNFx1YjI5NFx1YjM3MCBcdWNkMWQgTlx1YWMxY1x1Yzc1OCBcdWQ1NjlcdWNlNWMgXHVjODE1XHViY2Y0XHVhYzAwIFx1ZDU0NFx1YzY5NFx1ZDU1YyBcdWFjYmRcdWM2YjAsIFx1YjJlNFx1Yzc0Y1x1YWNmYyBcdWFjMTlcdWM3NzQgXHVjOGZjXHVjNWI0XHVjOWM0XHViMmU0LjxcL3A+XHJcblxyXG48cHJlPlxyXG5OIFJTPHN1Yj4xPFwvc3ViPiBDUzxzdWI+MTxcL3N1Yj4gLi4uIFJTPHN1Yj5OPFwvc3ViPiBDUzxzdWI+TjxcL3N1Yj48XC9wcmU+XHJcblxyXG48cD5SUzxzdWI+azxcL3N1Yj4gXHVjNjQwIENTPHN1Yj5rPFwvc3ViPiBcdWIyOTQgMVx1YmNmNFx1YjJlNCBcdWQwNmNcdWFjNzBcdWIwOTggXHVhYzE5XHVhY2UwLCA5XHViY2Y0XHViMmU0IFx1Yzc5MVx1YWM3MFx1YjA5OCBcdWFjMTlcdWM3NDAgXHVjMjE4XHVjNzc0XHViYTcwLCBcdWFkZjggXHVjZTc4XHVjNWQwJm5ic3A7XHVkNTY5XHVjY2QwXHVjOWM0IFx1ZDU4OVx1Yzc1OCBcdWMyMThcdWM2NDAgXHVjNWY0XHVjNzU4IFx1YzIxOFx1Yjk3YyBcdWIwOThcdWQwYzBcdWIwYjhcdWIyZTQuIFx1YzViNFx1YjVhNCBcdWQ1ODlcdWM1ZDAgXHVjNzc0XHViYmY4IFx1Yzc3NFx1YzgwNCBcdWQ1ODlcdWM1ZDAgXHVkNTY5XHVjY2QwXHVjOWM0IFx1Y2U3OFx1Yzc3NCBcdWM3ODhcdWIyOTQgXHVhY2JkXHVjNmIwXHVjNWQwXHViMjk0LCBcdWFkZjggXHVkNTg5XHVjNzQ0IFx1YjA5OFx1ZDBjMFx1YjBiNFx1YjI5NFx1YjM3MCBcdWQ1NDRcdWM2OTRcdWQ1NWMgXHVjMjJiXHVjNzkwXHVhYzAwIFx1YjM1NCBcdWM4MDFcdWM3NDQgXHVjMjE4XHViM2M0IFx1Yzc4OFx1YjJlNC48XC9wPlxyXG5cclxuPHA+XHVjNzg1XHViODI1XHVjNzQwIFx1YjJlNFx1Yzc0Y1x1YWNmYyBcdWFjMTlcdWM3NDAgXHVjODcwXHVhYzc0XHVjNzQ0IFx1YjljY1x1Yzg3MVx1ZDU1Y1x1YjJlNC48XC9wPlxyXG5cclxuPHVsPlxyXG5cdDxsaT5cdWQ1ODlcdWM3NTggXHVjMjE4XHVjNjQwIFx1YzVmNFx1Yzc1OCBcdWMyMThcdWIyOTQgMVx1YmNmNFx1YjJlNCBcdWQwNmNcdWFjNzBcdWIwOTggXHVhYzE5XHVhY2UwLCA5XHViY2Y0XHViMmU0IFx1Yzc5MVx1YWM3MFx1YjA5OCBcdWFjMTlcdWIyZTQuPFwvbGk+XHJcblx0PGxpPlx1YmFhOFx1YjRlMCBcdWQ1ODlcdWM3NTggXHVjNWY0XHVjNzU4IFx1YWMxY1x1YzIxOFx1YjI5NCBcdWJhYThcdWI0NTAgXHVhYzE5XHViMmU0LjxcL2xpPlxyXG5cdDxsaT5cdWQ1NjlcdWNlNThcdWIyOTQgXHVjODE1XHViY2Y0XHVhYzAwIFx1YWNiOVx1Y2U1OFx1YjI5NCBcdWFjYmRcdWM2YjBcdWFjMDAgXHVjNWM2XHViMmU0LjxcL2xpPlxyXG5cdDxsaT5cdWJhYThcdWI0ZTAgXHVjZTc4XHVjNzQwIFx1YzViNFx1YjVhNCBcdWNlNzhcdWM1ZDBcdWFjOGMgXHVkNTY5XHVjY2QwXHVjODM4IFx1Yzc4OFx1YjJlNC48XC9saT5cclxuPFwvdWw+XHJcblxyXG48cD5cdWNkNWNcdWIzMDAgMTAwXHVhYzFjXHVjNzU4IFx1ZDE0Y1x1YzJhNFx1ZDJiOCBcdWNmMDBcdWM3NzRcdWMyYTRcdWFjMDAgXHVjOGZjXHVjNWI0XHVjOWMwXHViYTcwLCBcdWM3ODVcdWI4MjVcdWM3NTggXHViOWM4XHVjOWMwXHViOWM5XHVjNzQwIG0gPSAwXHVjNzNjXHViODVjIFx1YjA5OFx1ZDBjMFx1YjBiOFx1YjJlNC48XC9wPlxyXG4iLCJvdXRwdXQiOiI8cD5cdWFjMDEgXHVkMTRjXHVjMmE0XHVkMmI4IFx1Y2YwMFx1Yzc3NFx1YzJhNCBcdWI5YzhcdWIyZTQsIFx1Yzc4NVx1YjgyNVx1YzczY1x1Yjg1YyBcdWM4ZmNcdWM1YjRcdWM5YzQgXHVkNDVjXHVjNzU4IFx1YzU0NFx1YzJhNFx1ZDBhNCBcdWM1NDRcdWQyYjhcdWI5N2MgXHVjZDljXHViODI1XHVkNTVjXHViMmU0LiBcdWJhYThcdWI0ZTAgXHVjZTc4XHVjNzU4IFx1YzY3Y1x1Y2FiZCBcdWM3MDQgXHVjZTc4XHVjNWQwXHViMjk0IFx1ZDU4OSBcdWJjODhcdWQ2MzhcdWM2NDAgXHVjNWY0IFx1YmM4OFx1ZDYzOFx1Yjk3YyBcdWNkOWNcdWI4MjVcdWQ1NWNcdWIyZTQuIFx1YmFhOFx1YjRlMCBcdWQxNGNcdWMyYTRcdWQyYjggXHVjZjAwXHVjNzc0XHVjMmE0IFx1YzBhY1x1Yzc3NFx1YzVkMFx1YjI5NCBcdWJlNDggXHVjOTA0XHVjNzQ0IFx1Y2Q5Y1x1YjgyNVx1ZDU1Y1x1YjJlNC48XC9wPlxyXG5cclxuPHA+XHVjNTQ0XHVjMmE0XHVkMGE0IFx1YzU0NFx1ZDJiOFx1Yjk3YyBcdWNkOWNcdWI4MjVcdWQ1NjAgXHViNTRjLCBcdWM5MDRcdWM3NzQgXHVhY2Y1XHViYzMxXHVjNzNjXHViODVjIFx1YjA1ZFx1YjA5OFx1YjI5NCBcdWFjYmRcdWM2YjBcdWM1ZDBcdWIyOTQgXHVhZGY4IFx1YWNmNVx1YmMzMVx1Yzc0NCBcdWJhYThcdWI0NTAgXHVjMGFkXHVjODFjXHVkNTU4XHVhY2UwIFx1Y2Q5Y1x1YjgyNVx1ZDU3NFx1YzU3YyBcdWQ1NWNcdWIyZTQuPFwvcD5cclxuIiwiaGludCI6IiIsIm9yaWdpbmFsIjoiMCIsInByb2JsZW1fbGFuZ19jb2RlIjoiXHVkNTVjXHVhZDZkXHVjNWI0In0seyJwcm9ibGVtX2lkIjoiOTMzNiIsInByb2JsZW1fbGFuZyI6IjEiLCJ0aXRsZSI6IlRhYmxlcyIsImRlc2NyaXB0aW9uIjoiPHA+SFRNTCB1c2VzIGEgc2ltcGxlIHRhZyBmb3JtYXQgZm9yIHRhYmxlIGxheW91dC4gWW91IGFyZSB0byBjcmVhdGUgQVNDSUktYXJ0IHRhYmxlcyBiYXNlZCBvbiBhIHNpbXBsaVx1ZmIwMWVkIG5vdGF0aW9uLjxcL3A+XHJcblxyXG48cD5Mb2dpY2FsbHksIGEgdGFibGUgY2FuIGJlIGNvbnNpZGVyZWQgYW4gbSBieSBuIGdyaWQsIGVhY2ggd2l0aCBhIDItY2hhcmFjdGVyIHdpZGUgYnkgMS1jaGFyYWN0ZXIgaGlnaCBjZWxsLCBmb3IgZXhhbXBsZSBhIDIgJnRpbWVzOyAzIGdyaWQgd291bGQgYmUgYXMgZm9sbG93czo8XC9wPlxyXG5cclxuPHByZT5cclxuIC0tIC0tIC0tXHJcbnwxMXwxMnwxM3xcclxuIC0tIC0tIC0tXHJcbnwyMXwyMnwyM3xcclxuIC0tIC0tIC0tPFwvcHJlPlxyXG5cclxuPHA+VGhlIG91dHB1dCBjb25zaXN0cyBvZiAybSArIDEgcm93cywgZWFjaCBoYXZpbmcgM24gKyAxIGNoYXJhY3RlcnMgKGluY2x1ZGluZyBsZWFkaW5nIGFuZCB0cmFpbGluZyBzcGFjZXMgaW4gb2RkLW51bWJlcmVkIHJvd3MpLjxcL3A+XHJcblxyXG48cD5CdXQgc29tZSB0YWJsZXMgYXJlIG5vdCBzdHJpY3RseSBncmlkLWJhc2VkLCBiZWNhdXNlIHRoZSB2YWx1ZXMgZm9yIGNlcnRhaW4gY2VsbHMgY2FuIHNwYW4gbXVsdGlwbGUgcm93cyBhbmRcL29yIGNvbHVtbnMuIEhlcmUgaXMgdGhlIGxheW91dCBpZiBjZWxsIDExIGhhcyBhIHJvdyBzcGFuIG9mIDIgYW5kIGNlbGwgMjIgaGFzIGEgY29sdW1uIHNwYW4gb2YgMjo8XC9wPlxyXG5cclxuPHByZT5cclxuIC0tIC0tIC0tXHJcbnwxMXwxMnwxM3xcclxuICAgIC0tIC0tXHJcbnwgIHwyMiAgIHxcclxuIC0tIC0tIC0tPFwvcHJlPlxyXG5cclxuPHA+WW91IGFyZSB0byBjcmVhdGUgdGhlc2UgQVNDSUktYXJ0IHRhYmxlcyBnaXZlbiBtLCBhbmQgdGhlIHJvdyBzcGFuIGFuZCBjb2x1bW4gc3BhbiB2YWx1ZXMuPFwvcD5cclxuIiwiaW5wdXQiOiI8cD5UaGUgaW5wdXQgY29uc2lzdHMgb2YgbXVsdGlwbGUgdGVzdCBjYXNlcy4gVGhlIFx1ZmIwMXJzdCBsaW5lIG9mIGVhY2ggdGVzdCBjYXNlIGNvbnRhaW5zIG9uZSBpbnRlZ2VyIG0sIHRoZSBudW1iZXIgb2Ygcm93cy4gVGhlbiwgbSBsaW5lcyBmb2xsb3csIGRlc2NyaWJpbmcgdGhlIHJvdyBhbmQgY29sdW1uIHNwYW5zIGluIHRoZSBsYXlvdXQuIEVhY2ggb2YgdGhlIG5leHQgbSBsaW5lcyBnaXZlcyB0aGUgc3BhbiBpbmZvcm1hdGlvbiBmb3IgYSByb3cuIFRoZSBzcGFuIGluZm9ybWF0aW9uIGlzIGdpdmVuIG9ubHkgZm9yIHRoZSB1cHBlciBsZWZ0IGNlbGwgaW4gdGhlIHNwYW4uIElmIE4gcm93IHNwYW5zIGFuZCBjb2x1bW4gc3BhbnMgbmVlZCB0byBiZSBzcGVjaVx1ZmIwMWVkIGZvciBhIGdpdmVuIHJvdywgdGhlc2Ugd291bGQgYmUgc3BlY2lcdWZiMDFlZCBhczo8XC9wPlxyXG5cclxuPHByZT5cclxuTiBSUzxzdWI+MTxcL3N1Yj4gQ1M8c3ViPjE8XC9zdWI+IC4uLiBSUzxzdWI+TjxcL3N1Yj4gQ1M8c3ViPk48XC9zdWI+PFwvcHJlPlxyXG5cclxuPHA+d2hlcmUgdGhlIHZhbHVlcyBSUzxzdWI+azxcL3N1Yj4gYW5kIENTPHN1Yj5rPFwvc3ViPiBhcmUgYmV0d2VlbiAxIGFuZCA5LCBhbmQgc3BlY2lmeSBob3cgbWFueSByb3dzIGFuZCBjb2x1bW5zIHRoZSBuZXh0IGNlbGwgbmVlZGluZyBpbmZvcm1hdGlvbiBpbiB0aGlzIHJvdyBuZWVkcyB0byBvY2N1cHkuIFByZXZpb3VzIHJvdyBzcGFucyBvciBjb2x1bW4gc3BhbnMgbWF5IGltcGx5IHRoYXQgZmV3ZXIgY2VsbHMgdGhhbiB0aGUgdG90YWwgbnVtYmVyIG9mIGNvbHVtbnMgbmVlZCB0byBiZSBzcGVjaVx1ZmIwMWVkIGZvciBhIHBhcnRpY3VsYXIgcm93LjxcL3A+XHJcblxyXG48cD5Zb3UgbWF5IGFzc3VtZSB0aGF0IHRoZSBpbnB1dCBpcyB2YWxpZDo8XC9wPlxyXG5cclxuPHVsPlxyXG5cdDxsaT50aGUgbnVtYmVyIG9mIHJvd3MgYW5kIGNvbHVtbnMgYXJlIGJldHdlZW4gMSBhbmQgOTs8XC9saT5cclxuXHQ8bGk+ZXZlcnkgcm93IHdpbGwgaGF2ZSB0aGUgc2FtZSBudW1iZXIgb2YgY29sdW1uczs8XC9saT5cclxuXHQ8bGk+dGhlcmUgYXJlIG5vIG92ZXJsYXBwaW5nIHNwYW5zIG9mIGNlbGxzOzxcL2xpPlxyXG5cdDxsaT5ldmVyeSBjZWxsIGlzIGNvbnRhaW5lZCBpbiBzb21lIHNwYW4gb2YgY2VsbHMuPFwvbGk+XHJcbjxcL3VsPlxyXG5cclxuPHA+VGhlcmUgYXJlIGF0IG1vc3QgMTAwIHRlc3QgY2FzZXMgYW5kIHRoZSBlbmQgb2YgaW5wdXQgaXMgaW5kaWNhdGVkIGJ5IG0gPSAwLjxcL3A+XHJcbiIsIm91dHB1dCI6IjxwPkZvciBlYWNoIGNhc2UsIGRpc3BsYXkgdGhlIEFTQ0lJLWFydCB0YWJsZSwgd2l0aCB0aGUgcm93LWNvbHVtbiBpbmRleCBkaXNwbGF5ZWQgaW4gdGhlIHRvcCBsZWZ0IGNvcm5lciBvZiBldmVyeSBzcGFuIG9mIGNlbGxzLiBEaXNwbGF5IGEgYmxhbmsgbGluZSBhZnRlciBldmVyeSBjYXNlLjxcL3A+XHJcbiIsImhpbnQiOiIiLCJvcmlnaW5hbCI6IjEiLCJwcm9ibGVtX2xhbmdfY29kZSI6Ilx1YzYwMVx1YzViNCJ9XQ==