시간 제한메모리 제한제출정답맞힌 사람정답 비율
0.5 초 (하단 참고)512 MB70331451.852%

문제

Albert는 크기가 n × n 인 2차원 행렬 모양의 게임 보드를 이용한 "소용돌이" 게임을 즐긴다. 편의상 게임 보드의 r행 c열에 해당하는 칸을 (r, c)로 나타내도록 한다.

이 게임 보드의 각 칸에는 영문 대문자 알파벳이 ('A'-'Z') 하나씩 적혀있다. 예를 들어, 아래 그림의 좌측은 크기가 3 x 3인 게임 보드를 나타낸다. (1, 2) 칸에는 "C"가 적혀있고 (3, 1) 칸에는 "G"가 적혀있다.
그림의 우측은 크기가 5 x 5인 게임 보드를 나타낸다. 이 게임 보드의 가장 바깥쪽 칸에는 "A" 혹은 "B"가 적혀있다 (총 16개의 칸이 이에 해당한다). 가장 안쪽에 위치한 칸에는 "Z"가 적혀있다. 나머지 칸에는 "X" 혹은 "Y"가 적혀있다 (총 8개의 칸이 이에 해당한다).

             

구체적으로, n x n인 게임 보드의 "가장 바깥쪽"칸 부터 "가장 안쪽"칸은 아래와 같이 정의한다.

  • 가장 처음이나 마지막 행 혹은 열에 위치한 칸이 "가장 바깥쪽" 칸에 해당한다. 아래 4 x 4와 5 x 5 게임보드에서 "1"로 표시된 칸이 가장 바깥 쪽 칸이다.
  • 가장 바깥쪽 칸을 모두 제외하고 나면 (n-2) x (n-2) 게임 보드가 남게 된다. 위와 마찬가지로 남은 게임 보드에서 가장 처음이나 마지막 행 혹은 열에 위치한 칸이 (두 번째로) 바깥 쪽에 위치한 칸이다. 아래 그림에서 "2"로 표시된 칸이 이에 해당한다.
  • 이와 같이 계속 게임 보드의 안쪽을 향하여 가장 바깥 쪽 부터 가장 안 쪽 칸 까지 정의 할 수 있다.

소용돌이 게임은 아래와 같은 규칙에 따라 한 칸씩 선택하여 총 n2개의 칸을 선택하는 게임이다.

  1. 먼저, 게임 보드의 모서리에 해당하는 (1, 1), (1, n), (n, 1), 혹은 (n, n)중 한 칸을 선택하여 게임을 시작한다. 이후, 모든 칸이 한 번씩 선택될 때 까지 아래 규칙에 따라 게임을 진행한다.
  2. 현재 선택한 칸에서 상/하/좌/우에 인접한 칸 중 하나를 선택하는 것을 반복하되, 아래와 같은 규칙에 따라 선택한다:
    • 규칙 1: 이전에 선택된 칸을 다시 선택할 수 없다.
    • 규칙 2: 규칙 1을 어기지 않으면서 선택할 수 있는 모든 칸 중 게임 보드의 가장 바깥 쪽에 위치한 칸을 선택해야 한다 (그러한 칸이 여럿이라면 그 중 아무 것이나 하나를 선택할 수 있다).

위 규칙을 지키면서 모든 n2개의 칸을 선택하여 얻을 수 있는 (길이가 n2인) 문자열을 "소용돌이 문자열" 이라 부른다.

예를 들어 위의 3 x 3 게임 보드의 경우 아래와 같은 방법으로 소용돌이 문자열을 얻을 수 있다:

  • 턴 1: (1, 1)에서 시작하는 경우:
    • 규칙 1에 따라 다음으로 선택할 수 있는 칸은 (1, 2) 혹은 (2, 1) 뿐이다.
    • 이 둘 모두 가장 게임 보드 가장 바깥 쪽에 위치하므로, 둘 중 어느 것을 선택하여도 된다. 이 예제에서는 (1, 2)를 선택한다.
  • 턴 2: (1, 2)를 선택한 이후:
    • 규칙 1에 따라 다음으로 선택할 수 있는 칸은 (1, 3) 혹은 (2, 2) 뿐이다.
    • 이 두 칸 중 (1, 3)이 (2, 2)보다 더 바깥 쪽에 위치했으므로 규칙 2에 따라 반드시 (1, 3)을 선택해야 한다.
  • 턴 3: (1, 3)을 선택한 이후:
    • 규칙 1에 따라 반드시 (2, 3)을 선택해야 한다.
  • 턴 4-9: (2, 3)을 선택한 이후 상기한 규칙에 따라 반드시 (3, 3), (3, 2), (3, 1), (2, 1), (2, 2)의 순서로 남은 칸을 선택해야 한다.
  • 이 방법을 통해 얻어지는 소용돌이 문자열은 "BCDFIHGEA"가 된다.
  • 만약 턴 2에 (1, 2)가 아닌 (2, 1)을 고를 경우 "BEGHIFDCA"를 얻을 수 있다.

같은 게임 보드에서 (3, 3)에서 시작하는 경우 위와 다른 소용돌이 문자열을 얻을 수 있다:

  • (3, 3) 이후 (3, 2)를 선택하는 경우: "IFDCBEGHA"
  • (3, 3) 이후 (2, 3)을 선택하는 경우: "IHGEBCDFA"

이 외에도 (1, 3) 혹은 (3, 1)에서 시작할 수 있다.

Albert는 임의의 게임 보드를 이용해서 얻을 수 있는 "최대" 소용돌이 문자열과 "최소" 소용돌이 문자열이 무엇인지 궁금하다.
위의 예제의 경우 최대 소용돌이 문자열은 "IHGEBCDFA" 이며 최소 소용돌이 문자열은 "BCDFIHGEA" 이다.

최대 (최소) 소용돌이 문자열은 소용돌이 게임에서 얻을 수 있는 모든 소용돌이 문자열 중 사전순으로 가장 늦게 (먼저) 나오는 문자열이다.

입력

입력 첫 줄에 테스트 케이스의 수 T가 주어진다.

각 테스트 케이스의 첫 줄에 게임 보드의 크기 n이 주어진다.

다음 n줄에 걸쳐 각 줄에 길이 n인 문자열이 주어진다.

출력

각 테스트 케이스의 정답인 최대 소용돌이 문자열과 최소 소용돌이 문자열을 공백으로 구분하여 각 줄에 출력한다.

제한

  • 1 ≤ T ≤ 10
  • 1 ≤ n ≤ 25
  • 게임 보드는 영문 대문자 알파벳 ('A'-'Z')만 포함한다

예제 입력 1

6
3
BCD
EAF
GHI
2
AB
XY
2
GA
GD
4
ABCD
BHAE
CHIF
DEFG
5
LGELG
LGLGE
GGLGE
LGEGL
LGLGL
5
ABABA
BXYXB
AYZYA
BXYXB
ABABA

예제 출력 1

IHGEBCDFA BCDFIHGEA
YXAB ABYX
GGDA ADGG
GFEDCBABCDEFIHHA ABCDEFGFEDCBHAIH
LLGLLGLGLLEEGLEGGLGGGEGGL GEELLGLGLLGLLGELGGGEGGGLL
ABABABABABABABABXYXYXYXYZ ABABABABABABABABXYXYXYXYZ

예제 1: 본문에서 다루었다.

예제 2-5: 추가 설명 없음

예제 6: 본문에서 다룬 예제이다. 이 게임 보드의 경우 모든 소용돌이 문자열이 같다.

W3sicHJvYmxlbV9pZCI6IjIzMDE5IiwicHJvYmxlbV9sYW5nIjoiMCIsInRpdGxlIjoiXHVjMThjXHVjNmE5XHViM2NjXHVjNzc0IiwiZGVzY3JpcHRpb24iOiI8cD5BbGJlcnRcdWIyOTQgXHVkMDZjXHVhZTMwXHVhYzAwIG4gJnRpbWVzOyZuYnNwO24gXHVjNzc4IDJcdWNjMjhcdWM2ZDAgXHVkNTg5XHViODJjIFx1YmFhOFx1YzU5MVx1Yzc1OCBcdWFjOGNcdWM3ODQgXHViY2Y0XHViNGRjXHViOTdjIFx1Yzc3NFx1YzZhOVx1ZDU1YyZuYnNwOyZxdW90O1x1YzE4Y1x1YzZhOVx1YjNjY1x1Yzc3NCZxdW90OyBcdWFjOGNcdWM3ODRcdWM3NDQgXHVjOTkwXHVhZTM0XHViMmU0LiBcdWQzYjhcdWM3NThcdWMwYzEgXHVhYzhjXHVjNzg0IFx1YmNmNFx1YjRkY1x1Yzc1OCByXHVkNTg5IGNcdWM1ZjRcdWM1ZDAgXHVkNTc0XHViMmY5XHVkNTU4XHViMjk0IFx1Y2U3OFx1Yzc0NCAociwgYylcdWI4NWMgXHViMDk4XHVkMGMwXHViMGI0XHViM2M0XHViODVkIFx1ZDU1Y1x1YjJlNC48XC9wPlxyXG5cclxuPHA+XHVjNzc0IFx1YWM4Y1x1Yzc4NCBcdWJjZjRcdWI0ZGNcdWM3NTggXHVhYzAxIFx1Y2U3OFx1YzVkMFx1YjI5NCZuYnNwO1x1YzYwMVx1YmIzOCBcdWIzMDBcdWJiMzhcdWM3OTAgXHVjNTRjXHVkMzBjXHViY2IzXHVjNzc0Jm5ic3A7KCYjMzk7QSYjMzk7LSYjMzk7WiYjMzk7KSZuYnNwO1x1ZDU1OFx1YjA5OFx1YzUyOSBcdWM4MDFcdWQ2MDBcdWM3ODhcdWIyZTQuIFx1YzYwOFx1Yjk3YyBcdWI0ZTRcdWM1YjQsIFx1YzU0NFx1Yjc5OCBcdWFkZjhcdWI5YmNcdWM3NTggXHVjODhjXHVjZTIxXHVjNzQwJm5ic3A7XHVkMDZjXHVhZTMwXHVhYzAwIDMgeCAzXHVjNzc4IFx1YWM4Y1x1Yzc4NCBcdWJjZjRcdWI0ZGNcdWI5N2MgXHViMDk4XHVkMGMwXHViMGI4XHViMmU0LiAoMSwgMikgXHVjZTc4XHVjNWQwXHViMjk0ICZxdW90O0MmcXVvdDtcdWFjMDAgXHVjODAxXHVkNjAwXHVjNzg4XHVhY2UwICgzLCAxKSBcdWNlNzhcdWM1ZDBcdWIyOTQgJnF1b3Q7RyZxdW90O1x1YWMwMCBcdWM4MDFcdWQ2MDBcdWM3ODhcdWIyZTQuPGJyIFwvPlxyXG5cdWFkZjhcdWI5YmNcdWM3NTggXHVjNmIwXHVjZTIxXHVjNzQwIFx1ZDA2Y1x1YWUzMFx1YWMwMCA1IHggNVx1Yzc3OCBcdWFjOGNcdWM3ODQgXHViY2Y0XHViNGRjXHViOTdjIFx1YjA5OFx1ZDBjMFx1YjBiOFx1YjJlNC4gXHVjNzc0IFx1YWM4Y1x1Yzc4NCBcdWJjZjRcdWI0ZGNcdWM3NTggPGVtPlx1YWMwMFx1YzdhNSBcdWJjMTRcdWFlNjVcdWNhYmQ8XC9lbT4gXHVjZTc4XHVjNWQwXHViMjk0Jm5ic3A7JnF1b3Q7QSZxdW90OyBcdWQ2MzlcdWM3NDAgJnF1b3Q7QiZxdW90O1x1YWMwMCBcdWM4MDFcdWQ2MDBcdWM3ODhcdWIyZTQgKFx1Y2QxZCAxNlx1YWMxY1x1Yzc1OCBcdWNlNzhcdWM3NzQgXHVjNzc0XHVjNWQwIFx1ZDU3NFx1YjJmOVx1ZDU1Y1x1YjJlNCkuJm5ic3A7PGVtPlx1YWMwMFx1YzdhNSBcdWM1NDhcdWNhYmQ8XC9lbT5cdWM1ZDAgXHVjNzA0XHVjZTU4XHVkNTVjIFx1Y2U3OFx1YzVkMFx1YjI5NCAmcXVvdDtaJnF1b3Q7XHVhYzAwIFx1YzgwMVx1ZDYwMFx1Yzc4OFx1YjJlNC4gXHViMDk4XHViYTM4XHVjOWMwIFx1Y2U3OFx1YzVkMFx1YjI5NCAmcXVvdDtYJnF1b3Q7Jm5ic3A7XHVkNjM5XHVjNzQwICZxdW90O1kmcXVvdDtcdWFjMDAgXHVjODAxXHVkNjAwXHVjNzg4XHViMmU0IChcdWNkMWQgOFx1YWMxY1x1Yzc1OCBcdWNlNzhcdWM3NzQgXHVjNzc0XHVjNWQwIFx1ZDU3NFx1YjJmOVx1ZDU1Y1x1YjJlNCkuPFwvcD5cclxuXHJcbjxwIHN0eWxlPVwidGV4dC1hbGlnbjogY2VudGVyO1wiPjxpbWcgYWx0PVwiXCIgc3JjPVwiaHR0cHM6XC9cL3VwbG9hZC5hY21pY3BjLm5ldFwvZThmNDI3NDEtNTRjYi00ZWRlLTliMmMtNDhkYWNiM2Y4MzYwXC8tXC9wcmV2aWV3XC9cIiBzdHlsZT1cImhlaWdodDogMTg0cHg7IHdpZHRoOiAxOTBweDtcIiBcLz4mbmJzcDsmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyZuYnNwOzxpbWcgYWx0PVwiXCIgc3JjPVwiaHR0cHM6XC9cL3VwbG9hZC5hY21pY3BjLm5ldFwvYzRmODQ5NTctOTUxNC00ZGQyLTg4YTEtZmI5YzhiZDVjN2FkXC8tXC9wcmV2aWV3XC9cIiBzdHlsZT1cImhlaWdodDogMzAxcHg7IHdpZHRoOiAzMDBweDtcIiBcLz48XC9wPlxyXG5cclxuPHA+XHVhZDZjXHVjY2I0XHVjODAxXHVjNzNjXHViODVjLCZuYnNwO24geCBuXHVjNzc4IFx1YWM4Y1x1Yzc4NCBcdWJjZjRcdWI0ZGNcdWM3NTggJnF1b3Q7XHVhYzAwXHVjN2E1IFx1YmMxNFx1YWU2NVx1Y2FiZCZxdW90O1x1Y2U3OCBcdWJkODBcdWQxMzAgJnF1b3Q7XHVhYzAwXHVjN2E1IFx1YzU0OFx1Y2FiZCZxdW90O1x1Y2U3OFx1Yzc0MCBcdWM1NDRcdWI3OThcdWM2NDAgXHVhYzE5XHVjNzc0IFx1YzgxNVx1Yzc1OFx1ZDU1Y1x1YjJlNC48XC9wPlxyXG5cclxuPHVsPlxyXG5cdDxsaT5cdWFjMDBcdWM3YTUgXHVjYzk4XHVjNzRjXHVjNzc0XHViMDk4IFx1YjljOFx1YzljMFx1YjljOSBcdWQ1ODkgXHVkNjM5XHVjNzQwIFx1YzVmNFx1YzVkMCBcdWM3MDRcdWNlNThcdWQ1NWMgXHVjZTc4XHVjNzc0ICZxdW90O1x1YWMwMFx1YzdhNSBcdWJjMTRcdWFlNjVcdWNhYmQmcXVvdDsgXHVjZTc4XHVjNWQwIFx1ZDU3NFx1YjJmOVx1ZDU1Y1x1YjJlNC4gXHVjNTQ0XHViNzk4IDQgeCA0XHVjNjQwIDUgeCA1IFx1YWM4Y1x1Yzc4NFx1YmNmNFx1YjRkY1x1YzVkMFx1YzExYyAmcXVvdDsxJnF1b3Q7XHViODVjIFx1ZDQ1Y1x1YzJkY1x1YjQxYyBcdWNlNzhcdWM3NzQgXHVhYzAwXHVjN2E1IFx1YmMxNFx1YWU2NSBcdWNhYmQgXHVjZTc4XHVjNzc0XHViMmU0LjxcL2xpPlxyXG5cdDxsaT5cdWFjMDBcdWM3YTUgXHViYzE0XHVhZTY1XHVjYWJkIFx1Y2U3OFx1Yzc0NCBcdWJhYThcdWI0NTAgXHVjODFjXHVjNjc4XHVkNTU4XHVhY2UwIFx1YjA5OFx1YmE3NCAobi0yKSB4IChuLTIpIFx1YWM4Y1x1Yzc4NCBcdWJjZjRcdWI0ZGNcdWFjMDAgXHViMGE4XHVhYzhjIFx1YjQxY1x1YjJlNC4gXHVjNzA0XHVjNjQwIFx1YjljOFx1Y2MyY1x1YWMwMFx1YzljMFx1Yjg1YyBcdWIwYThcdWM3NDAgXHVhYzhjXHVjNzg0IFx1YmNmNFx1YjRkY1x1YzVkMFx1YzExYyBcdWFjMDBcdWM3YTUgXHVjYzk4XHVjNzRjXHVjNzc0XHViMDk4IFx1YjljOFx1YzljMFx1YjljOSBcdWQ1ODkgXHVkNjM5XHVjNzQwIFx1YzVmNFx1YzVkMCBcdWM3MDRcdWNlNThcdWQ1NWMgXHVjZTc4XHVjNzc0IChcdWI0NTAgXHViYzg4XHVjOWY4XHViODVjKSBcdWJjMTRcdWFlNjUgXHVjYWJkXHVjNWQwIFx1YzcwNFx1Y2U1OFx1ZDU1YyBcdWNlNzhcdWM3NzRcdWIyZTQuIFx1YzU0NFx1Yjc5OCBcdWFkZjhcdWI5YmNcdWM1ZDBcdWMxMWMgJnF1b3Q7MiZxdW90O1x1Yjg1YyBcdWQ0NWNcdWMyZGNcdWI0MWMgXHVjZTc4XHVjNzc0IFx1Yzc3NFx1YzVkMCBcdWQ1NzRcdWIyZjlcdWQ1NWNcdWIyZTQuPFwvbGk+XHJcblx0PGxpPlx1Yzc3NFx1YzY0MCBcdWFjMTlcdWM3NzQgXHVhY2M0XHVjMThkIFx1YWM4Y1x1Yzc4NCBcdWJjZjRcdWI0ZGNcdWM3NTggXHVjNTQ4XHVjYWJkXHVjNzQ0IFx1ZDVhNVx1ZDU1OFx1YzVlYyBcdWFjMDBcdWM3YTUgXHViYzE0XHVhZTY1IFx1Y2FiZCBcdWJkODBcdWQxMzAgXHVhYzAwXHVjN2E1IFx1YzU0OCBcdWNhYmQgXHVjZTc4IFx1YWU0Y1x1YzljMCBcdWM4MTVcdWM3NTggXHVkNTYwIFx1YzIxOCBcdWM3ODhcdWIyZTQuPFwvbGk+XHJcbjxcL3VsPlxyXG5cclxuPHAgc3R5bGU9XCJ0ZXh0LWFsaWduOiBjZW50ZXI7XCI+PGltZyBhbHQ9XCJcIiBzcmM9XCJodHRwczpcL1wvdXBsb2FkLmFjbWljcGMubmV0XC9mZGJiMGJhNy02NDI3LTQ1ZjAtOGYwZS00MWI3MDdiYmNmYzBcLy1cL3ByZXZpZXdcL1wiIHN0eWxlPVwiaGVpZ2h0OiAyNjFweDsgd2lkdGg6IDUwMHB4O1wiIFwvPjxcL3A+XHJcblxyXG48cD5cdWMxOGNcdWM2YTlcdWIzY2NcdWM3NzQgXHVhYzhjXHVjNzg0XHVjNzQwIFx1YzU0NFx1Yjc5OFx1YzY0MCBcdWFjMTlcdWM3NDAgXHVhZGRjXHVjZTU5XHVjNWQwIFx1YjUzMFx1Yjc3YyZuYnNwO1x1ZDU1YyBcdWNlNzhcdWM1MjkgXHVjMTIwXHVkMGRkXHVkNTU4XHVjNWVjIFx1Y2QxZCBuPHN1cD4yPFwvc3VwPlx1YWMxY1x1Yzc1OCBcdWNlNzhcdWM3NDQgXHVjMTIwXHVkMGRkXHVkNTU4XHViMjk0IFx1YWM4Y1x1Yzc4NFx1Yzc3NFx1YjJlNC48XC9wPlxyXG5cclxuPG9sPlxyXG5cdDxsaT5cdWJhM2NcdWM4MDAsJm5ic3A7XHVhYzhjXHVjNzg0IFx1YmNmNFx1YjRkY1x1Yzc1OCBcdWJhYThcdWMxMWNcdWI5YWNcdWM1ZDAgXHVkNTc0XHViMmY5XHVkNTU4XHViMjk0ICgxLCAxKSwgKDEsIG4pLCAobiwgMSksIFx1ZDYzOVx1Yzc0MCAobiwgbilcdWM5MTEgXHVkNTVjIFx1Y2U3OFx1Yzc0NCBcdWMxMjBcdWQwZGRcdWQ1NThcdWM1ZWMgXHVhYzhjXHVjNzg0XHVjNzQ0IFx1YzJkY1x1Yzc5MVx1ZDU1Y1x1YjJlNC4gXHVjNzc0XHVkNmM0LCBcdWJhYThcdWI0ZTAgXHVjZTc4XHVjNzc0IFx1ZDU1YyBcdWJjODhcdWM1MjkgXHVjMTIwXHVkMGRkXHViNDIwIFx1YjU0YyBcdWFlNGNcdWM5YzAgXHVjNTQ0XHViNzk4IFx1YWRkY1x1Y2U1OVx1YzVkMCBcdWI1MzBcdWI3N2MgXHVhYzhjXHVjNzg0XHVjNzQ0IFx1YzljNFx1ZDU4OVx1ZDU1Y1x1YjJlNC48XC9saT5cclxuXHQ8bGk+XHVkNjA0XHVjN2FjIFx1YzEyMFx1ZDBkZFx1ZDU1YyBcdWNlNzhcdWM1ZDBcdWMxMWMgXHVjMGMxXC9cdWQ1NThcL1x1Yzg4Y1wvXHVjNmIwXHVjNWQwIFx1Yzc3OFx1YzgxMVx1ZDU1YyBcdWNlNzggXHVjOTExIFx1ZDU1OFx1YjA5OFx1Yjk3YyBcdWMxMjBcdWQwZGRcdWQ1NThcdWIyOTQgXHVhYzgzXHVjNzQ0IFx1YmMxOFx1YmNmNVx1ZDU1OFx1YjQxOCwgXHVjNTQ0XHViNzk4XHVjNjQwIFx1YWMxOVx1Yzc0MCBcdWFkZGNcdWNlNTlcdWM1ZDAgXHViNTMwXHViNzdjIFx1YzEyMFx1ZDBkZFx1ZDU1Y1x1YjJlNDpcclxuXHQ8dWw+XHJcblx0XHQ8bGk+XHVhZGRjXHVjZTU5IDE6IFx1Yzc3NFx1YzgwNFx1YzVkMCBcdWMxMjBcdWQwZGRcdWI0MWMgXHVjZTc4XHVjNzQ0IFx1YjJlNFx1YzJkYyBcdWMxMjBcdWQwZGRcdWQ1NjAgXHVjMjE4IFx1YzVjNlx1YjJlNC48XC9saT5cclxuXHRcdDxsaT5cdWFkZGNcdWNlNTkgMjogXHVhZGRjXHVjZTU5IDFcdWM3NDQgXHVjNWI0XHVhZTMwXHVjOWMwIFx1YzU0YVx1YzczY1x1YmE3NFx1YzExYyBcdWMxMjBcdWQwZGRcdWQ1NjAgXHVjMjE4IFx1Yzc4OFx1YjI5NCBcdWJhYThcdWI0ZTAgXHVjZTc4IFx1YzkxMSBcdWFjOGNcdWM3ODQgXHViY2Y0XHViNGRjXHVjNzU4IFx1YWMwMFx1YzdhNSZuYnNwO1x1YmMxNFx1YWU2NSBcdWNhYmRcdWM1ZDAgXHVjNzA0XHVjZTU4XHVkNTVjIFx1Y2U3OFx1Yzc0NCBcdWMxMjBcdWQwZGRcdWQ1NzRcdWM1N2MgXHVkNTVjXHViMmU0IChcdWFkZjhcdWI3ZWNcdWQ1NWMgXHVjZTc4XHVjNzc0IFx1YzVlY1x1YjdmZlx1Yzc3NFx1Yjc3Y1x1YmE3NCBcdWFkZjggXHVjOTExIFx1YzU0NFx1YmIzNCBcdWFjODNcdWM3NzRcdWIwOTggXHVkNTU4XHViMDk4XHViOTdjIFx1YzEyMFx1ZDBkZFx1ZDU2MCBcdWMyMTggXHVjNzg4XHViMmU0KS48XC9saT5cclxuXHQ8XC91bD5cclxuXHQ8XC9saT5cclxuPFwvb2w+XHJcblxyXG48cD5cdWM3MDQmbmJzcDtcdWFkZGNcdWNlNTlcdWM3NDQgXHVjOWMwXHVkMGE0XHViYTc0XHVjMTFjIFx1YmFhOFx1YjRlMCBuPHN1cD4yPFwvc3VwPlx1YWMxY1x1Yzc1OCBcdWNlNzhcdWM3NDQmbmJzcDtcdWMxMjBcdWQwZGRcdWQ1NThcdWM1ZWMgXHVjNWJiXHVjNzQ0IFx1YzIxOCBcdWM3ODhcdWIyOTQgKFx1YWUzOFx1Yzc3NFx1YWMwMCBuPHN1cD4yPFwvc3VwPlx1Yzc3OCkgXHViYjM4XHVjNzkwXHVjNWY0XHVjNzQ0ICZxdW90O1x1YzE4Y1x1YzZhOVx1YjNjY1x1Yzc3NCBcdWJiMzhcdWM3OTBcdWM1ZjQmcXVvdDsgXHVjNzc0XHViNzdjIFx1YmQ4MFx1Yjk3OFx1YjJlNC48XC9wPlxyXG5cclxuPHA+XHVjNjA4XHViOTdjIFx1YjRlNFx1YzViNCBcdWM3MDRcdWM3NTggMyB4IDMgXHVhYzhjXHVjNzg0IFx1YmNmNFx1YjRkY1x1Yzc1OCBcdWFjYmRcdWM2YjAgXHVjNTQ0XHViNzk4XHVjNjQwIFx1YWMxOVx1Yzc0MCBcdWJjMjlcdWJjOTVcdWM3M2NcdWI4NWMgXHVjMThjXHVjNmE5XHViM2NjXHVjNzc0IFx1YmIzOFx1Yzc5MFx1YzVmNFx1Yzc0NCBcdWM1YmJcdWM3NDQgXHVjMjE4IFx1Yzc4OFx1YjJlNDo8XC9wPlxyXG5cclxuPHVsPlxyXG5cdDxsaT5cdWQxMzQgMTogKDEsIDEpXHVjNWQwXHVjMTFjIFx1YzJkY1x1Yzc5MVx1ZDU1OFx1YjI5NCBcdWFjYmRcdWM2YjA6XHJcblx0PHVsPlxyXG5cdFx0PGxpPlx1YWRkY1x1Y2U1OSAxXHVjNWQwIFx1YjUzMFx1Yjc3YyBcdWIyZTRcdWM3NGNcdWM3M2NcdWI4NWMgXHVjMTIwXHVkMGRkXHVkNTYwIFx1YzIxOCBcdWM3ODhcdWIyOTQgXHVjZTc4XHVjNzQwICgxLCAyKSBcdWQ2MzlcdWM3NDAgKDIsIDEpIFx1YmZkMFx1Yzc3NFx1YjJlNC48XC9saT5cclxuXHRcdDxsaT5cdWM3NzQgXHViNDU4IFx1YmFhOFx1YjQ1MCBcdWFjMDBcdWM3YTUgXHVhYzhjXHVjNzg0IFx1YmNmNFx1YjRkYyBcdWFjMDBcdWM3YTUgXHViYzE0XHVhZTY1IFx1Y2FiZFx1YzVkMCBcdWM3MDRcdWNlNThcdWQ1NThcdWJiYzBcdWI4NWMsIFx1YjQ1OCBcdWM5MTEgXHVjNWI0XHViMjkwIFx1YWM4M1x1Yzc0NCBcdWMxMjBcdWQwZGRcdWQ1NThcdWM1ZWNcdWIzYzQgXHViNDFjXHViMmU0LiBcdWM3NzQgXHVjNjA4XHVjODFjXHVjNWQwXHVjMTFjXHViMjk0ICgxLCAyKVx1Yjk3YyBcdWMxMjBcdWQwZGRcdWQ1NWNcdWIyZTQuPFwvbGk+XHJcblx0PFwvdWw+XHJcblx0PFwvbGk+XHJcblx0PGxpPlx1ZDEzNCAyOiAoMSwgMilcdWI5N2MgXHVjMTIwXHVkMGRkXHVkNTVjIFx1Yzc3NFx1ZDZjNDpcclxuXHQ8dWw+XHJcblx0XHQ8bGk+XHVhZGRjXHVjZTU5IDFcdWM1ZDAgXHViNTMwXHViNzdjIFx1YjJlNFx1Yzc0Y1x1YzczY1x1Yjg1YyBcdWMxMjBcdWQwZGRcdWQ1NjAgXHVjMjE4IFx1Yzc4OFx1YjI5NCBcdWNlNzhcdWM3NDAgKDEsIDMpIFx1ZDYzOVx1Yzc0MCAoMiwgMikgXHViZmQwXHVjNzc0XHViMmU0LjxcL2xpPlxyXG5cdFx0PGxpPlx1Yzc3NCBcdWI0NTAgXHVjZTc4IFx1YzkxMSAoMSwgMylcdWM3NzQgKDIsIDIpXHViY2Y0XHViMmU0IFx1YjM1NCBcdWJjMTRcdWFlNjUgXHVjYWJkXHVjNWQwIFx1YzcwNFx1Y2U1OFx1ZDU4OFx1YzczY1x1YmJjMFx1Yjg1YyBcdWFkZGNcdWNlNTkgMlx1YzVkMCBcdWI1MzBcdWI3N2MgXHViYzE4XHViNGRjXHVjMmRjICgxLCZuYnNwOzMpXHVjNzQ0IFx1YzEyMFx1ZDBkZFx1ZDU3NFx1YzU3YyBcdWQ1NWNcdWIyZTQuPFwvbGk+XHJcblx0PFwvdWw+XHJcblx0PFwvbGk+XHJcblx0PGxpPlx1ZDEzNCAzOiAoMSwgMylcdWM3NDQgXHVjMTIwXHVkMGRkXHVkNTVjIFx1Yzc3NFx1ZDZjNDpcclxuXHQ8dWw+XHJcblx0XHQ8bGk+XHVhZGRjXHVjZTU5IDFcdWM1ZDAgXHViNTMwXHViNzdjIFx1YmMxOFx1YjRkY1x1YzJkYyAoMiwgMylcdWM3NDQgXHVjMTIwXHVkMGRkXHVkNTc0XHVjNTdjIFx1ZDU1Y1x1YjJlNC48XC9saT5cclxuXHQ8XC91bD5cclxuXHQ8XC9saT5cclxuXHQ8bGk+XHVkMTM0IDQtOTogKDIsIDMpXHVjNzQ0IFx1YzEyMFx1ZDBkZFx1ZDU1YyBcdWM3NzRcdWQ2YzQgXHVjMGMxXHVhZTMwXHVkNTVjIFx1YWRkY1x1Y2U1OVx1YzVkMCBcdWI1MzBcdWI3N2MgXHViYzE4XHViNGRjXHVjMmRjICgzLCAzKSwgKDMsIDIpLCAoMywgMSksICgyLCAxKSwgKDIsIDIpXHVjNzU4IFx1YzIxY1x1YzExY1x1Yjg1YyBcdWIwYThcdWM3NDAgXHVjZTc4XHVjNzQ0IFx1YzEyMFx1ZDBkZFx1ZDU3NFx1YzU3YyBcdWQ1NWNcdWIyZTQuPFwvbGk+XHJcblx0PGxpPlx1Yzc3NCBcdWJjMjlcdWJjOTVcdWM3NDQgXHVkMWI1XHVkNTc0IFx1YzViYlx1YzViNFx1YzljMFx1YjI5NCBcdWMxOGNcdWM2YTlcdWIzY2NcdWM3NzQgXHViYjM4XHVjNzkwXHVjNWY0XHVjNzQwICZxdW90O0JDREZJSEdFQSZxdW90O1x1YWMwMCBcdWI0MWNcdWIyZTQuPFwvbGk+XHJcblx0PGxpPlx1YjljY1x1YzU3ZCBcdWQxMzQgMlx1YzVkMCAoMSwgMilcdWFjMDAgXHVjNTQ0XHViMmNjICgyLCAxKVx1Yzc0NCBcdWFjZTBcdWI5N2MgXHVhY2JkXHVjNmIwICZxdW90O0JFR0hJRkRDQSZxdW90O1x1Yjk3YyBcdWM1YmJcdWM3NDQgXHVjMjE4IFx1Yzc4OFx1YjJlNC48XC9saT5cclxuPFwvdWw+XHJcblxyXG48cD5cdWFjMTlcdWM3NDAgXHVhYzhjXHVjNzg0IFx1YmNmNFx1YjRkY1x1YzVkMFx1YzExYyAoMywgMylcdWM1ZDBcdWMxMWMgXHVjMmRjXHVjNzkxXHVkNTU4XHViMjk0IFx1YWNiZFx1YzZiMCBcdWM3MDRcdWM2NDAgXHViMmU0XHViOTc4IFx1YzE4Y1x1YzZhOVx1YjNjY1x1Yzc3NCBcdWJiMzhcdWM3OTBcdWM1ZjRcdWM3NDQgXHVjNWJiXHVjNzQ0IFx1YzIxOCBcdWM3ODhcdWIyZTQ6PFwvcD5cclxuXHJcbjx1bD5cclxuXHQ8bGk+KDMsIDMpIFx1Yzc3NFx1ZDZjNCAoMywgMilcdWI5N2MgXHVjMTIwXHVkMGRkXHVkNTU4XHViMjk0IFx1YWNiZFx1YzZiMDogJnF1b3Q7SUZEQ0JFR0hBJnF1b3Q7PFwvbGk+XHJcblx0PGxpPigzLCAzKSBcdWM3NzRcdWQ2YzQgKDIsIDMpXHVjNzQ0IFx1YzEyMFx1ZDBkZFx1ZDU1OFx1YjI5NCBcdWFjYmRcdWM2YjA6ICZxdW90O0lIR0VCQ0RGQSZxdW90OzxcL2xpPlxyXG48XC91bD5cclxuXHJcbjxwPlx1Yzc3NCBcdWM2NzhcdWM1ZDBcdWIzYzQgKDEsIDMpIFx1ZDYzOVx1Yzc0MCAoMywgMSlcdWM1ZDBcdWMxMWMgXHVjMmRjXHVjNzkxXHVkNTYwIFx1YzIxOCBcdWM3ODhcdWIyZTQuPFwvcD5cclxuXHJcbjxwPkFsYmVydFx1YjI5NCBcdWM3ODRcdWM3NThcdWM3NTggXHVhYzhjXHVjNzg0IFx1YmNmNFx1YjRkY1x1Yjk3YyBcdWM3NzRcdWM2YTlcdWQ1NzRcdWMxMWMgXHVjNWJiXHVjNzQ0IFx1YzIxOCBcdWM3ODhcdWIyOTQgJnF1b3Q7XHVjZDVjXHViMzAwJnF1b3Q7IFx1YzE4Y1x1YzZhOVx1YjNjY1x1Yzc3NCBcdWJiMzhcdWM3OTBcdWM1ZjRcdWFjZmMgJnF1b3Q7XHVjZDVjXHVjMThjJnF1b3Q7IFx1YzE4Y1x1YzZhOVx1YjNjY1x1Yzc3NCBcdWJiMzhcdWM3OTBcdWM1ZjRcdWM3NzQgXHViYjM0XHVjNWM3XHVjNzc4XHVjOWMwIFx1YWQ4MVx1YWUwOFx1ZDU1OFx1YjJlNC48YnIgXC8+XHJcblx1YzcwNFx1Yzc1OCBcdWM2MDhcdWM4MWNcdWM3NTggXHVhY2JkXHVjNmIwIFx1Y2Q1Y1x1YjMwMCBcdWMxOGNcdWM2YTlcdWIzY2NcdWM3NzQgXHViYjM4XHVjNzkwXHVjNWY0XHVjNzQwICZxdW90O0lIR0VCQ0RGQSZxdW90OyBcdWM3NzRcdWJhNzAgXHVjZDVjXHVjMThjIFx1YzE4Y1x1YzZhOVx1YjNjY1x1Yzc3NCBcdWJiMzhcdWM3OTBcdWM1ZjRcdWM3NDAgJnF1b3Q7QkNERklIR0VBJnF1b3Q7IFx1Yzc3NFx1YjJlNC48XC9wPlxyXG5cclxuPHA+PGVtPlx1Y2Q1Y1x1YjMwMCAoXHVjZDVjXHVjMThjKSBcdWMxOGNcdWM2YTlcdWIzY2NcdWM3NzQgXHViYjM4XHVjNzkwXHVjNWY0XHVjNzQwIFx1YzE4Y1x1YzZhOVx1YjNjY1x1Yzc3NCBcdWFjOGNcdWM3ODRcdWM1ZDBcdWMxMWMgXHVjNWJiXHVjNzQ0IFx1YzIxOCBcdWM3ODhcdWIyOTQgXHViYWE4XHViNGUwIFx1YzE4Y1x1YzZhOVx1YjNjY1x1Yzc3NCBcdWJiMzhcdWM3OTBcdWM1ZjQgXHVjOTExIFx1YzBhY1x1YzgwNFx1YzIxY1x1YzczY1x1Yjg1YyBcdWFjMDBcdWM3YTUgXHViMmE2XHVhYzhjIChcdWJhM2NcdWM4MDApIFx1YjA5OFx1YzYyNFx1YjI5NCBcdWJiMzhcdWM3OTBcdWM1ZjRcdWM3NzRcdWIyZTQuPFwvZW0+PFwvcD5cclxuIiwiaW5wdXQiOiI8cD5cdWM3ODVcdWI4MjUgXHVjY2FiIFx1YzkwNFx1YzVkMCBcdWQxNGNcdWMyYTRcdWQyYjggXHVjZjAwXHVjNzc0XHVjMmE0XHVjNzU4IFx1YzIxOCBUXHVhYzAwIFx1YzhmY1x1YzViNFx1YzljNFx1YjJlNC48XC9wPlxyXG5cclxuPHA+XHVhYzAxIFx1ZDE0Y1x1YzJhNFx1ZDJiOCBcdWNmMDBcdWM3NzRcdWMyYTRcdWM3NTggXHVjY2FiIFx1YzkwNFx1YzVkMCBcdWFjOGNcdWM3ODQgXHViY2Y0XHViNGRjXHVjNzU4IFx1ZDA2Y1x1YWUzMCBuXHVjNzc0IFx1YzhmY1x1YzViNFx1YzljNFx1YjJlNC48XC9wPlxyXG5cclxuPHA+XHViMmU0XHVjNzRjIG5cdWM5MDRcdWM1ZDAgXHVhYzc4XHVjY2QwIFx1YWMwMSBcdWM5MDRcdWM1ZDAgXHVhZTM4XHVjNzc0IG5cdWM3NzggXHViYjM4XHVjNzkwXHVjNWY0XHVjNzc0IFx1YzhmY1x1YzViNFx1YzljNFx1YjJlNC48XC9wPlxyXG4iLCJvdXRwdXQiOiI8cD5cdWFjMDEgXHVkMTRjXHVjMmE0XHVkMmI4IFx1Y2YwMFx1Yzc3NFx1YzJhNFx1Yzc1OCBcdWM4MTVcdWIyZjVcdWM3NzggXHVjZDVjXHViMzAwIFx1YzE4Y1x1YzZhOVx1YjNjY1x1Yzc3NCBcdWJiMzhcdWM3OTBcdWM1ZjRcdWFjZmMgXHVjZDVjXHVjMThjIFx1YzE4Y1x1YzZhOVx1YjNjY1x1Yzc3NCZuYnNwO1x1YmIzOFx1Yzc5MFx1YzVmNFx1Yzc0NCBcdWFjZjVcdWJjMzFcdWM3M2NcdWI4NWMgXHVhZDZjXHViZDg0XHVkNTU4XHVjNWVjIFx1YWMwMSBcdWM5MDRcdWM1ZDAgXHVjZDljXHViODI1XHVkNTVjXHViMmU0LjxcL3A+XHJcbiIsImhpbnQiOiIiLCJvcmlnaW5hbCI6IjEiLCJodG1sX3RpdGxlIjoiMCIsInByb2JsZW1fbGFuZ190Y29kZSI6IktvcmVhbiIsImxpbWl0IjoiPHVsPlxyXG5cdDxsaT4xICZsZTsgVCAmbGU7IDEwPFwvbGk+XHJcblx0PGxpPjEgJmxlOyBuICZsZTsgMjU8XC9saT5cclxuXHQ8bGk+XHVhYzhjXHVjNzg0IFx1YmNmNFx1YjRkY1x1YjI5NCZuYnNwO1x1YzYwMVx1YmIzOCBcdWIzMDBcdWJiMzhcdWM3OTAgXHVjNTRjXHVkMzBjXHViY2IzICgmIzM5O0EmIzM5Oy0mIzM5O1omIzM5OylcdWI5Y2MgXHVkM2VjXHVkNTY4XHVkNTVjXHViMmU0PFwvbGk+XHJcbjxcL3VsPlxyXG4iLCJzYW1wbGVfZXhwbGFpbl8xIjoiPHA+XHVjNjA4XHVjODFjIDE6IFx1YmNmOFx1YmIzOFx1YzVkMFx1YzExYyBcdWIyZTRcdWI4ZThcdWM1YzhcdWIyZTQuPFwvcD5cclxuXHJcbjxwPlx1YzYwOFx1YzgxYyAyLTU6IFx1Y2Q5NFx1YWMwMCBcdWMxMjRcdWJhODUgXHVjNWM2XHVjNzRjPFwvcD5cclxuXHJcbjxwPlx1YzYwOFx1YzgxYyA2OiBcdWJjZjhcdWJiMzhcdWM1ZDBcdWMxMWMgXHViMmU0XHViOGVjIFx1YzYwOFx1YzgxY1x1Yzc3NFx1YjJlNC4gXHVjNzc0IFx1YWM4Y1x1Yzc4NCBcdWJjZjRcdWI0ZGNcdWM3NTggXHVhY2JkXHVjNmIwIFx1YmFhOFx1YjRlMCBcdWMxOGNcdWM2YTlcdWIzY2NcdWM3NzQgXHViYjM4XHVjNzkwXHVjNWY0XHVjNzc0IFx1YWMxOVx1YjJlNC48XC9wPlxyXG4ifSx7InByb2JsZW1faWQiOiIyMzAxOSIsInByb2JsZW1fbGFuZyI6IjEiLCJ0aXRsZSI6IlRoZSBTd2lybCBHYW1lIiwiZGVzY3JpcHRpb24iOiI8cD5BbGJlcnQgb2Z0ZW4gcGxheXMgdGhlICZxdW90O1N3aXJsJnF1b3Q7IGdhbWUgb24gYSAyRCBnYW1lIGJvYXJkJm5ic3A7b2Ygc2l6ZSBuIHggbi4gSW4gdGhpcyBwcm9ibGVtLCZuYnNwO2xldCAociwgYykgZGVub3RlIHRoZSBjZWxsIGF0IHJvdyByIGNvbHVtbiBjLjxcL3A+XHJcblxyXG48cD5PbiBldmVyeSBjZWxsIG9mIHRoZSBnYW1lIGJvYXJkIGlzIHdyaXR0ZW4mbmJzcDtvbmUgdXBwZXItY2FzZSBFbmdsaXNoIGFscGhhYmV0ICgmIzM5O0EmIzM5Oy0mIzM5O1omIzM5OykuIEZvciBpbnN0YW5jZSwgYSAzIHggMyBnYW1lIGJvYXJkIGlzIHNob3duIG9uIHRoZSBsZWZ0IGJlbG93LiBDZWxsICgxLCAyKSBoYXMgYSAmcXVvdDtDJnF1b3Q7IHdyaXR0ZW4gb24gaXQgYW5kICgzLCAxKSBoYXMgYSAmcXVvdDtHJnF1b3Q7IG9uIGl0LiBPbiB0aGUgcmlnaHQsIGEgNSB4IDUgZ2FtZSBib2FyZCBpcyBzaG93bi4gSXRzIDxlbT5vdXRlcm1vc3QgPFwvZW0+Y2VsbHMgaGF2ZSBlaXRoZXIgYW4gJnF1b3Q7QSZxdW90OyBvciBhJm5ic3A7JnF1b3Q7QiZxdW90OyB3cml0dGVuIG9uIHRoZW0gKHRoZXJlIGFyZSAxNiBzdWNoIGNlbGxzKS4gVGhlIDxlbT5pbm5lcm1vc3Q8XC9lbT4gY2VsbCBoYXMgYSAmcXVvdDtaJnF1b3Q7IHdyaXR0ZW4gb24gaXQuIFRoZSByZW1haW5pbmcgY2VsbHMgaGF2ZSBlaXRoZXIgYW4gJnF1b3Q7WCZxdW90OyBvciBhJm5ic3A7JnF1b3Q7WSZxdW90OyB3cml0dGVuIG9uIHRoZW0gKHRoZXJlIGFyZSA4IHN1Y2ggY2VsbHMpLjxcL3A+XHJcblxyXG48cCBzdHlsZT1cInRleHQtYWxpZ246IGNlbnRlcjtcIj48aW1nIGFsdD1cIlwiIHNyYz1cImh0dHBzOlwvXC91cGxvYWQuYWNtaWNwYy5uZXRcL2U4ZjQyNzQxLTU0Y2ItNGVkZS05YjJjLTQ4ZGFjYjNmODM2MFwvLVwvcHJldmlld1wvXCIgc3R5bGU9XCJoZWlnaHQ6IDE4NHB4OyB3aWR0aDogMTkwcHg7XCIgXC8+Jm5ic3A7Jm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsmbmJzcDs8aW1nIGFsdD1cIlwiIHNyYz1cImh0dHBzOlwvXC91cGxvYWQuYWNtaWNwYy5uZXRcL2M0Zjg0OTU3LTk1MTQtNGRkMi04OGExLWZiOWM4YmQ1YzdhZFwvLVwvcHJldmlld1wvXCIgc3R5bGU9XCJoZWlnaHQ6IDMwMXB4OyB3aWR0aDogMzAwcHg7XCIgXC8+PFwvcD5cclxuXHJcbjxwPk1vcmUgc3BlY2lmaWNhbGx5LCB3ZSBkZWZpbmUgZnJvbSAmcXVvdDtvdXRlcm1vc3QmcXVvdDsgdG8gJnF1b3Q7aW5uZXJtb3N0JnF1b3Q7IGNlbGxzIGFzIGZvbGxvd3MuPFwvcD5cclxuXHJcbjx1bD5cclxuXHQ8bGk+RXZlcnkgY2VsbCZuYnNwO2luIHRoZSBmaXJzdCBvciBsYXN0IHJvdyBvciBpbiB0aGUgZmlyc3Qgb3IgbGFzdCBjb2x1bW4gaXMgZGVmaW5lZCZuYnNwOyZxdW90O291dGVybW9zdCZxdW90Oy4gSW4gdGhlIDQgeCA0IGFuZCA1IHggNSBnYW1lIGJvYXJkcyBiZWxvdywgdGhlIGNlbGxzIG1hcmtlZCB3aXRoIGEgJnF1b3Q7MSZxdW90OyBhcmUgb3V0ZXJtb3N0IGNlbGxzLjxcL2xpPlxyXG5cdDxsaT5BZnRlciByZW1vdmluZyBhbGwgb3V0ZXJtb3N0IGNlbGxzLCB3ZSBhcmUgbGVmdCB3aXRoIGEgKG4tMikgeCAobi0yKSBnYW1lIGJvYXJkLiBBbmFsb2dvdXNseSwgd2UgZGVmaW5lIHRoZSAoc2Vjb25kKSBvdXRlcm1vc3QgY2VsbHMgdG8gYmUgdGhlIG9uZXMgaW4gdGhlIGZpcnN0IG9yIGxhc3QmbmJzcDtyb3cgb3IgaW4gdGhlIGZpcnN0IG9yIGxhc3QgY29sdW1uIGluIHRoaXMgc21hbGxlciBnYW1lIGJvYXJkLiBJbiB0aGUgZXhhbXBsZSBiZWxvdywgdGhlIGNlbGxzIG1hcmtlZCB3aXRoICZxdW90OzImcXVvdDsgYXJlIHRoZSAoc2Vjb25kKSBvdXRlcm1vc3QgY2VsbHMuPFwvbGk+XHJcblx0PGxpPldlIGNhbiByZXBlYXRlZGx5IGFwcGx5IHRoaXMgcnVsZSB0byBkZWZpbmUgdGhlIGlubmVybW9zdCBjZWxsKHMpIGFzIHdlbGwuPFwvbGk+XHJcbjxcL3VsPlxyXG5cclxuPHAgc3R5bGU9XCJ0ZXh0LWFsaWduOiBjZW50ZXI7XCI+PGltZyBhbHQ9XCJcIiBzcmM9XCJodHRwczpcL1wvdXBsb2FkLmFjbWljcGMubmV0XC9mZGJiMGJhNy02NDI3LTQ1ZjAtOGYwZS00MWI3MDdiYmNmYzBcLy1cL3ByZXZpZXdcL1wiIHN0eWxlPVwiaGVpZ2h0OiAyNjFweDsgd2lkdGg6IDUwMHB4O1wiIFwvPjxcL3A+XHJcblxyXG48cD5UaGUgU3dpcmwgZ2FtZSBpcyB0byBjaG9vc2UgbjxzdXA+MjxcL3N1cD4mbmJzcDtjZWxscywgb25lIGF0IGEgdGltZSwgYWNjb3JkaW5nIHRvIHRoZSBmb2xsb3dpbmcgcnVsZXMuPFwvcD5cclxuXHJcbjxvbD5cclxuXHQ8bGk+Rmlyc3QsIEFsYmVydCBjaG9vc2VzIG9uZSBvZiB0aGUgZm91ciBjb3JuZXIgY2VsbHMgYXQmbmJzcDsoMSwgMSksICgxLCBuKSwgKG4sIDEpLCBvciAobiwgbikuIEFmdGVyIHRoaXMsIEFsYmVydCBjaG9vc2VzIG9uZSBjZWxsIGF0IGEgdGltZS48XC9saT5cclxuXHQ8bGk+QWxiZXJ0IGNhbiBjaG9vc2Ugb25lIG9mIHRoZSBmb3VyIGFkamFjZW50IGNlbGxzIG9mIHRoZSBjdXJyZW50IGNlbGwgYXMgdGhlIG5leHQgY2VsbCwgd2l0aCB0aGUgZm9sbG93aW5nIHJ1bGVzOlxyXG5cdDx1bD5cclxuXHRcdDxsaT5SdWxlIDE6IEEgY2VsbCB0aGF0JiMzOTtzIGJlZW4gcHJldmlvdXNseSBjaG9zZW4gY2Fubm90IGJlIGNob3NlbiBhZ2Fpbi48XC9saT5cclxuXHRcdDxsaT5SdWxlIDI6IEFtb25nIHRoZSBjZWxscyB0aGF0IEFsYmVydCBjYW4gY2hvb3NlIHdpdGhvdXQgdmlvbGF0aW5nIFJ1bGUgMSwgYW4gb3V0ZXJtb3N0IGNlbGwgbXVzdCBiZSBjaG9zZW4gKGluIGNhc2UgdGhlcmUgYXJlIG1hbnkgc3VjaCBjZWxscywgYW55IG9uZSBvZiB0aGVtIGNhbiBiZSBjaG9zZW4pLjxcL2xpPlxyXG5cdDxcL3VsPlxyXG5cdDxcL2xpPlxyXG48XC9vbD5cclxuXHJcbjxwPkEgU3dpcmwgU3RyaW5nIGlzIGEgc3RyaW5nIG9mIGxlbmd0aCBuPHN1cD4yPFwvc3VwPiB0aGF0IGNhbiBiZSBjcmVhdGVkIGJ5IGNob29zaW5nIG48c3VwPjI8XC9zdXA+IGNlbGxzIGluIHRoZSBTd2lybCBnYW1lLjxcL3A+XHJcblxyXG48cD5Gb3IgaW5zdGFuY2UsIGluIHRoZSAzIHggMyBnYW1lIGJvYXJkIGFib3ZlLCBvbmUgU3dpcmwgc3RyaW5nJm5ic3A7Y2FuIGJlIG9idGFpbmVkIGFzIGZvbGxvd3M6PFwvcD5cclxuXHJcbjx1bD5cclxuXHQ8bGk+VHVybiAxOiBBbGJlcnQgc3RhcnRzIGF0IGNlbGwgKDEsIDEpOlxyXG5cdDx1bD5cclxuXHRcdDxsaT5EdWUgdG8gUnVsZSAxLCB0aGUgbmV4dCBjZWxsIG11c3QgYmUgKDEsIDIpIG9yICgyLCAxKS48XC9saT5cclxuXHRcdDxsaT5UaGVzZSB0d28gY2VsbHMgYXJlIGVxdWFsbHkgb3V0ZXJtb3N0LCBzbyBlaXRoZXIgY2FuIGJlIGNob3Nlbi4gSW4gdGhpcyBleGFtcGxlLCBzdXBwb3NlIEFsYmVydCBjaG9vc2VzICgxLCAyKS48XC9saT5cclxuXHQ8XC91bD5cclxuXHQ8XC9saT5cclxuXHQ8bGk+VHVybiAyOiBBbGJlcnQgY2hvb3NlcyAoMSwgMik6XHJcblx0PHVsPlxyXG5cdFx0PGxpPkR1ZSB0byBSdWxlIDEsIGVpdGhlciAoMSwgMykgb3IgKDIsIDIpIGNhbiBiZSB0aGUgbmV4dCBjZWxsLiZuYnNwOzxcL2xpPlxyXG5cdFx0PGxpPkJldHdlZW4gdGhlIHR3bywgKDEsIDMpIGlzIG1vcmUgb3V0ZXIgdGhhbiAoMiwgMiksIGFuZCB0aHVzIFJ1bGUgMiBmb3JjZXMgQWxiZXJ0IHRvIGNob29zZSAoMSwgMykuPFwvbGk+XHJcblx0PFwvdWw+XHJcblx0PFwvbGk+XHJcblx0PGxpPlR1cm4gMzogQWxiZXJ0IGNob29zZXMgKDEsIDMpOiZuYnNwO1xyXG5cdDx1bD5cclxuXHRcdDxsaT5EdWUgdG8gUnVsZSAxLCAoMiwgMykgbXVzdCBiZSBjaG9zZW4gbmV4dC48XC9saT5cclxuXHQ8XC91bD5cclxuXHQ8XC9saT5cclxuXHQ8bGk+VHVybiA0LTk6IEFmdGVyIGNob29zaW5nICgyLCAzKSwgQWxiZXJ0IG11c3QgY2hvb3NlIHRoZSBjZWxscyBpbiBvcmRlciBvZiAoMywgMyksICgzLCAyKSwgKDMsIDEpLCAoMiwgMSksIGFuZCAoMiwgMikuPFwvbGk+XHJcblx0PGxpPlRoZSBTd2lybCBzdHJpbmcgb2J0YWluZWQgaW4gdGhpcyBleGFtcGxlIGlzICZxdW90O0JDREZJSEdFQSZxdW90Oy48XC9saT5cclxuXHQ8bGk+SWYgQWxiZXJ0IGhhZCBjaG9zZW4gKDIsIDEpIGluc3RlYWQgb2YgKDEsIDIpIGluIFR1cm4gMiwgdGhlbiB0aGUgU3dpcmwgc3RyaW5nIHdvdWxkIGhhdmUgYmVlbiAmcXVvdDtCRUdISUZEQ0EmcXVvdDsuPFwvbGk+XHJcbjxcL3VsPlxyXG5cclxuPHA+SW4gdGhlIHNhbWUgMyB4IDMgZ2FtZSBib2FyZCwgQWxiZXJ0IG1heSBhbHNvIG9idGFpbiB0aGUgZm9sbG93aW5nIHN0cmluZ3MgaWYgaGUgd2VyZSB0byBiZWdpbiBhdCAoMywgMyk6PFwvcD5cclxuXHJcbjx1bD5cclxuXHQ8bGk+Q2hvb3NpbmcgKDMsIDIpIGFmdGVyICgzLCAzKTogJnF1b3Q7SUZEQ0JFR0hBJnF1b3Q7PFwvbGk+XHJcblx0PGxpPkNob29zaW5nICgyLCAzKSBhZnRlciAoMywgMyk6ICZxdW90O0lIR0VCQ0RGQSZxdW90OzxcL2xpPlxyXG48XC91bD5cclxuXHJcbjxwPkluIGFkZGl0aW9uLCBBbGJlcnQgY291bGQgc3RhcnQgYXQgKDEsIDMpIG9yICgzLCAxKS48XC9wPlxyXG5cclxuPHA+QWxiZXJ0IHdhbnRzIHRvIGtub3cgdGhlICZxdW90O21heGltdW0mcXVvdDsgU3dpcmwgc3RyaW5nIGFuZCB0aGUgJnF1b3Q7bWluaW11bSZxdW90OyBTd2lybCBzdHJpbmcgdGhhdCBoZSBjYW4gb2J0YWluIGluIGFuIGFyYml0cmFyeSBnYW1lIGJvYXJkLiBJbiB0aGUgZXhhbXBsZSBhYm92ZSwgdGhlIG1heGltdW0gU3dpcmwgc3RyaW5nIGlzJm5ic3A7JnF1b3Q7SUhHRUJDREZBJnF1b3Q7IGFuZCB0aGUgbWluaW11bSBpcyZuYnNwOyZxdW90O0JDREZJSEdFQSZxdW90Oy48XC9wPlxyXG5cclxuPHA+PGVtPk1heGltdW0gKE1pbmltdW0pIFN3aXJsIHN0cmluZyBpcyB0aGUgU3dpcmwgc3RyaW5nIHRoYXQgY29tZXMgbGV4aWNvZ3JhcGhpY2FsbHkgbGFzdCAoZmlyc3QpIGFtb25nIGFsbCBTd2lybCBzdHJpbmdzLjxcL2VtPjxcL3A+XHJcbiIsImlucHV0IjoiPHA+VGhlIGZpcnN0IGxpbmUgb2YgdGhlIGlucHV0IHdpbGwgY29udGFpbiBhbiBpbnRlZ2VyIFQsIHRoZSBudW1iZXIgb2YgdGVzdCBjYXNlcy48XC9wPlxyXG5cclxuPHA+Rm9yIGVhY2ggdGVzdCBjYXNlLCB0aGUgZmlyc3QgbGluZSB3aWxsIGNvbnRhaW4gdGhlIHNpemUgb2YgdGhlIGdhbWUgYm9hcmQsIG4uPFwvcD5cclxuXHJcbjxwPlRoZSBuZXh0IG4gbGluZXMgd2lsbCBjb250YWluIGEgc3RyaW5nIG9mIGxlbmd0aCBuIGVhY2guPFwvcD5cclxuIiwib3V0cHV0IjoiPHA+Rm9yIGVhY2ggdGVzdCBjYXNlLCBvdXRwdXQgdGhlIG1heGltdW0gU3dpcmwmbmJzcDtzdHJpbmcgYW5kIHRoZSBtaW5pbXVtIFN3aXJsIHN0cmluZyBpbiBhIHNpbmdsZSBsaW5lLCZuYnNwO3NlcGFyYXRlZCBieSBhIHdoaXRlc3BhY2UuPFwvcD5cclxuIiwiaGludCI6IiIsIm9yaWdpbmFsIjoiMCIsImh0bWxfdGl0bGUiOiIwIiwicHJvYmxlbV9sYW5nX3Rjb2RlIjoiRW5nbGlzaCIsImxpbWl0IjoiPHVsPlxyXG5cdDxsaT4xICZsZTsgVCAmbGU7IDEwPFwvbGk+XHJcblx0PGxpPjEgJmxlOyBuICZsZTsgMjU8XC9saT5cclxuXHQ8bGk+QSBnYW1lIGJvYXJkIG9ubHkgY29udGFpbnMgdXBwZXItY2FzZSBFbmdsaXNoIGFscGhhYmV0cyAoJiMzOTtBJiMzOTstJiMzOTtaJiMzOTspLjxcL2xpPlxyXG48XC91bD5cclxuIiwic2FtcGxlX2V4cGxhaW5fMSI6IjxwPkNhc2UgMTogRGlzY3Vzc2VkIGluIHRoZSBwcm9ibGVtIHN0YXRlbWVudC48XC9wPlxyXG5cclxuPHA+Q2FzZSAyLTU6IE5vJm5ic3A7ZXhwbGFuYXRpb24gcHJvdmlkZWQuPFwvcD5cclxuXHJcbjxwPkNhc2UgNjogRGlzY3Vzc2VkIGluIHRoZSBwcm9ibGVtIHN0YXRlbWVudC4gSW4gdGhpcyBjYXNlLCBhbGwgc3dpcmwgc3RyaW5ncyBhcmUgdGhlIHNhbWUuPFwvcD5cclxuIn1d

시간 제한

  • Java 8: 1 초
  • PyPy3: 5 초
  • Java 8 (OpenJDK): 1 초
  • Java 11: 1 초
  • Kotlin (JVM): 1 초
  • Java 15: 1 초