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

문제

Bob은 최근 트리를 이용한 점수 놀이를 즐겨하는데, 임의의 트리 $S$에 대한 점수 ($Score(S)$)는 아래와 같이 정의한다:

  • 임의의 (무방향) 트리 $S$의 간선은 길이가 양의 정수인 가중치를 갖고 있다고 가정한다.
  • 트리 $S$에 속한 서로 다른 정점 $x$, $y$가 있을 때, $Dist(x, y) := x$와 $y$사이의 최단 거리라 정의하자. 이 때, $P(x, y)$가 $x$와 $y$ 사이의 (고유한) 최단 경로라면, $P(x, y)$에 속한 간선들의 가중치 합이 최단 거리가 된다.
  • 그러면 $Score(S) := \sum_{x, y \in S, x \neq y} {Dist(x, y)}$ 로 정의된다. 즉, 어떤 트리의 점수는 해당 트리에 속한 모든 서로 다른 노드 쌍의 최단 거리의 총합이다. $S$의 노드 개수가 $2$개 미만인 경우, $Score(S)$ 는 $0$으로 정의한다.

예를 들어, 아래의 트리에는 노드가 $3$개 있다.

  • 위 정의에 따라 $Dist(1, 2) = 10$, $Dist(2, 3) = 20$, $Dist(1, 3) = 30$이다.
  • 따라서 이 트리의 점수는 $10 + 20 + 30 = 60$이 된다.

Alice는 Bob의 놀이를 지켜보던 중 새로운 놀이를 제안했다. 우선, 둘은 함께 $n$개의 노드와 $n-1$개의 간선으로 구성된 트리를 하나 만드는데, 이를 $T_0$라 하고 "기본 트리"라 부른다. 편의상 기본 트리 $T_0$의 노드는 $1$부터 $n$까지 번호가 붙어있고, $n-1$개의 간선도 $1$부터 $n-1$까지 번호가 붙어있다 (이는 후술할 "간선 바꾸기"에 사용되는 간선의 인덱스이다). $T_0$의 $i$번째 간선을 $E[i] = (v, w, d)$라 하면, 이 간선은 노드 $v$와 노드 $w$를 잇고, 길이가 $d$인 간선을 나타낸다. 예를 들어, $E[1] = (1, 2, 10)$, $E[2] = (2, 3, 20)$ 이라면, 위 그림과 같은 트리가 얻어지고, 구체적으로 $(1, 2)$를 잇는 간선의 인덱스는 $1$이고 $(2, 3)$을 잇는 간선의 인덱스는 $2$이다.

이후, Alice가 "간선 바꾸기"를 $T_0$에 적용하면, Alice가 원하는 간선 하나를 $T_0$에서 지운 뒤, 새로운 간선을 하나 추가하여 새로운 트리를 만든다. 구체적으로, Alice는 총 $m$번의 "간선 바꾸기"를 시도해서 $T_0$으로부터 $m$개의 새로운 트리를 얻어내는데 이를 $T_1$, $T_2$, $\dots$, $T_m$이라 하자.

  • $j$번째 "간선 바꾸기"를 위해 Alice는 총 4개의 정수를 Bob에게 알려준다 ($j = 1, 2, \dots, m$):
    • $A[ j ]$: $T_0$의 간선 인덱스를 나타내며, $T_0$에서 삭제될 간선이다. 즉, $E[ A[ j ] ] = (v, w, d)$라면 $v$와 $w$를 잇는 간선을 지운다.
    • $x[ j ]$, $y[ j ]$: 새로 추가할 간선이 잇게될 두 노드이다. ($x[ j ] \ne y[ j ]$)
    • $z[ j ]$: 새로 추가할 간선의 길이이다.
  • $T_0$ 에서 인덱스가 $A[ j ]$인 간선을 삭제하고 이후 $(x[ j ], y[ j ])$를 연결하는 길이 $z[ j ]$인 간선을 추가하여 얻어진 그래프를 $T_j$ 라 하자. ($j = 1, 2, \dots, m$) 이 문제에서 $T_j$ 는 언제나 트리임이 보장된다. 이 문제에서 $T_j$는 "$j$번째 변형 트리"라 부르자.
  • 각각의 "간선 바꾸기"는 처음 만든 기본 트리인 $T_0$에 독립적으로 적용된다 (아래 예제 참고).

예를 들어 기본 트리인 $T_0$은 앞선 예제와 같이 $E[1] = (1, 2, 10)$, $E[2] = (2, 3, 20)$으로 구성된 트리라 하자. Alice가 총 $m = 4$번에 걸쳐 간선 바꾸기를 적용하는데, $A = [1, 1, 2, 2]$, $x = [3, 1, 2, 3]$, $y = [1, 3, 3, 1]$, $z = [1, 20, 30, 30]$이라 하자. 아래 $4$개의 그림은 좌측부터 순서대로 $1$~$4$번째 "간선 바꾸기"를 $T_0$에 각각 적용해서 얻어진 $T_j$와 해당 트리의 점수를 나타낸다. 그림에서 점선으로 표시된 간선은 "삭제된" 간선을 나타내고, 두꺼운 선으로 표시된 간선은 "추가된" 간선을 나타낸다.

  • $T_1$: $T_0$에서 $1$번 간선 ($E[1]$)을 삭제하고, $3$과 $1$을 연결하는 길이가 $1$인 간선이 추가되었다. $Score(T_1) = 42$이다. ($T_j$ 점수 중 최솟값)
  • $T_2$: $T_0$에서 $1$번 간선 ($E[1]$)을 삭제하고, $1$과 $3$을 연결하는 길이가 $20$인 간선이 추가되었다. $Score(T_2) = 80$이다. ($T_j$ 점수 중 최댓값)
  • $T_3$: $T_0$에서 $2$번 간선 ($E[2]$)을 삭제하고, $2$와 $3$을 연결하는 길이가 $30$인 간선이 추가되었다. $Score(T_3) = 80$이다. ($T_j$ 점수 중 최댓값) 이 경우, 삭제된 간선과 추가된 간선이 같은 쌍의 노드를 연결하고 있고, 이러한 "간선 바꾸기"도 가능하다.
  • $T_4$: $T_0$에서 $2$번 간선 ($E[2]$)을 삭제하고, $3$과 $1$을 연결하는 길이가 $30$인 간선이 추가되었다. $Score(T_4) = 80$이다. ($T_j$ 점수 중 최댓값)

입력으로 기본 트리 ($T_0$)와 $m$번의 "간선 바꾸기"에 대한 정보가 주어졌을 때, Bob을 도와 각 트리의 점수를 구해보자. 단, Alice는 Bob의 편의를 위해 총 $3$개의 값만 구해보라고 했다: $T_0$의 점수, $1$~$m$번째 변형트리 ($T_1$, $\dots$, $T_m$) 점수들의 최솟값과 최댓값을 구하면 된다.

입력

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

각 테스트 케이스의 첫 줄에는 $n$과 $m$이 공백으로 구분되어 주어진다. 다음 $n-1$줄에 걸쳐 $T_0$의 간선에 대한 정보가 $1$번 간선부터 $n-1$번 간선까지, 각 줄에 $3$개의 정수로 나뉘어 주어진다: 처음 $2$개의 정수는 노드 번호이고 세 번째 정수는 간선의 길이이다. 다음 $m$줄에 걸쳐 각 줄에 $4$개의 정수가 주어진다: Alice가 적용할 $j$번째 "간선 바꾸기"에 사용될 $A[ j ]$, $x[ j ]$, $y[ j ]$, $z[ j ]$ 값이 공백으로 구분되어 주어진다.

출력

각 테스트 케이스의 정답을 각 줄에 출력한다.

각 줄에는 세 개의 정수가 공백으로 구분되어 출력되어야 한다. 첫 정수는 기본 트리 $T_0$의 점수, 두 번째 정수는 $1$~$m$번째 변형 트리 ($T_1$, $\dots$, $T_m$) 점수 중 최솟값, 그리고 세 번째 정수는 $1$~$m$ 번째 변형 트리 ($T_1$, $\dots$, $T_m$) 점수 중 최댓값을 출력한다.

제한

각 테스트 케이스에 대하여:

  • $1 ≤ A[ j ] ≤ n - 1$ ($j = 1, 2, \dots, m$)
  • $1 ≤ x[ j ] , y[ j ] ≤ n$ 그리고 $x[ j ] \ne y[ j ]$ ($j = 1, 2, \dots, m$)
  • $1 ≤ z [ j] ≤ 20\, 000$ ($j = 1, 2, \dots, m$)
  • $T$, $n$, $m$에 대한 제한은 서브태스크를 참고한다.
  • 서브태스크 중 일부는 입력으로 주어지는 기본 트리의 지름에 대한 제한이 있다.

트리의 "지름 (diameter)"을 다음과 같이 정의한다: 트리의 임의의 두 노드 $x$, $y$를 잇는 최단경로를 $P(x, y)$라 하고, 이에 속한 간선의 개수를 $C(x, y)$라 하자. 트리의 지름은 $C(x, y)$ 값들 중 최댓값이다.

서브태스크 1 (10점)

  • $1 ≤ T ≤ 10$
  • $2 ≤ n ≤ 1\,000$
  • $1 ≤ m ≤ 500$
  • $1 ≤ T_0$ 의 지름 $≤ 200$

서브태스크 2 (20점)

  • $1 ≤ T ≤ 10$
  • $2 ≤ n ≤ 50\,000$
  • $1 ≤ m ≤ 20\,000$
  • $1 ≤ T_0$ 의 지름 $≤ 200$

서브태스크 3 (70점)

  • $1 ≤ T ≤ 10$
  • $2 ≤ n ≤ 50\,000$
  • $1 ≤ m ≤ 20\,000$
  • $1 ≤ T_0$ 의 지름 $≤ n-1$

예제 입력 1

5
3 4
1 2 10
2 3 20
1 3 1 1
1 1 3 20
2 2 3 30
2 3 1 30
10 1
1 2 2
1 3 2
2 9 3
3 4 3
8 7 2
7 6 3
6 4 4
4 5 4
10 9 4
7 8 10 10
9 2
1 2 3
1 3 2
2 4 2
3 8 1
9 3 2
5 8 3
6 8 2
7 8 3
4 8 2 10
4 4 5 10
7 5
3 4 20
2 5 10
1 5 30
4 5 40
6 7 50
7 1 60
1 3 5 1
1 3 2 1
1 3 7 1
1 3 6 1
1 3 4 1
2 3
1 2 1
1 1 2 2
1 2 1 3
1 1 2 4

예제 출력 1

60 42 80
435 614 614
194 378 432
1840 1566 1886
1 2 4

예제 1: 본문에서 다루었다. 이 트리의 지름은 $2$이다 (최단 경로 중 간선의 개수가 가장 많은 것은 $1$ -- $2$ -- $3$ 이다).

예제 2: 아래 그림은 $T_0$을 나타낸다. 이 트리의 지름은 $8$이다 (최단 경로 중 간선의 개수가 가장 많은 것은 $10$ -- $9$ -- $2$ -- $1$ -- $3$ -- $4$ -- $6$ -- $7$ -- $8$ 이다).

이 트리에서 $7$번째로 주어진 간선인 $(6, 4)$를 삭제하고 대신 길이가 $10$인 간선 $(8, 10)$을 추가한 트리 ($T_1$)은 아래와 같다.

$T_0$의 점수는 $435$이고, $T_1$의 점수가 $614$이므로 이 경우 최솟값/최댓값 모두 $614$가 된다.

예제 3, 4: 추가 설명 없음.

예제 5: $T_0$의 점수는 $1$이다. $Score(T_1) = 2$, $Score(T_2) = 3$, $Score(T_3) = 4$ 이므로 최솟값 최댓값은 각각 $2$와 $4$가 된다.

W3sicHJvYmxlbV9pZCI6IjI0OTY4IiwicHJvYmxlbV9sYW5nIjoiMCIsInRpdGxlIjoiXHVkMmI4XHViOWFjXHVjNzU4IFx1YWMwNFx1YzEyMCBcdWJjMTRcdWFmYjhcdWFlMzAiLCJkZXNjcmlwdGlvbiI6IjxwPkJvYlx1Yzc0MCBcdWNkNWNcdWFkZmMgXHVkMmI4XHViOWFjXHViOTdjIFx1Yzc3NFx1YzZhOVx1ZDU1YyBcdWM4MTBcdWMyMTggXHViMTgwXHVjNzc0XHViOTdjIFx1Yzk5MFx1YWNhOFx1ZDU1OFx1YjI5NFx1YjM3MCwgXHVjNzg0XHVjNzU4XHVjNzU4IFx1ZDJiOFx1YjlhYyAkUyRcdWM1ZDAgXHViMzAwXHVkNTVjIFx1YzgxMFx1YzIxOCAoJFNjb3JlKFMpJClcdWIyOTQgXHVjNTQ0XHViNzk4XHVjNjQwIFx1YWMxOVx1Yzc3NCBcdWM4MTVcdWM3NThcdWQ1NWNcdWIyZTQ6PFwvcD5cclxuXHJcbjx1bD5cclxuXHQ8bGk+XHVjNzg0XHVjNzU4XHVjNzU4IChcdWJiMzRcdWJjMjlcdWQ1YTUpIFx1ZDJiOFx1YjlhYyAkUyRcdWM3NTggXHVhYzA0XHVjMTIwXHVjNzQwIFx1YWUzOFx1Yzc3NFx1YWMwMCBcdWM1OTFcdWM3NTggXHVjODE1XHVjMjE4XHVjNzc4IFx1YWMwMFx1YzkxMVx1Y2U1OFx1Yjk3YyBcdWFjMTZcdWFjZTAgXHVjNzg4XHViMmU0XHVhY2UwIFx1YWMwMFx1YzgxNVx1ZDU1Y1x1YjJlNC48XC9saT5cclxuXHQ8bGk+XHVkMmI4XHViOWFjICRTJFx1YzVkMCBcdWMxOGRcdWQ1NWMgXHVjMTFjXHViODVjIFx1YjJlNFx1Yjk3OCBcdWM4MTVcdWM4MTAgJHgkLCAkeSRcdWFjMDAgXHVjNzg4XHVjNzQ0IFx1YjU0YywgJERpc3QoeCwgeSkgOj0geCRcdWM2NDAgJHkkXHVjMGFjXHVjNzc0XHVjNzU4IFx1Y2Q1Y1x1YjJlOCBcdWFjNzBcdWI5YWNcdWI3N2MgXHVjODE1XHVjNzU4XHVkNTU4XHVjNzkwLiBcdWM3NzQgXHViNTRjLCAkUCh4LCB5KSRcdWFjMDAgJHgkXHVjNjQwICR5JCBcdWMwYWNcdWM3NzRcdWM3NTggKFx1YWNlMFx1YzcyMFx1ZDU1YykgXHVjZDVjXHViMmU4IFx1YWNiZFx1Yjg1Y1x1Yjc3Y1x1YmE3NCwgJFAoeCwgeSkkXHVjNWQwIFx1YzE4ZFx1ZDU1YyBcdWFjMDRcdWMxMjBcdWI0ZTRcdWM3NTggXHVhYzAwXHVjOTExXHVjZTU4IFx1ZDU2OVx1Yzc3NCBcdWNkNWNcdWIyZTggXHVhYzcwXHViOWFjXHVhYzAwIFx1YjQxY1x1YjJlNC48XC9saT5cclxuXHQ8bGk+XHVhZGY4XHViN2VjXHViYTc0ICRTY29yZShTKSA6PSBcXHN1bV97eCwgeSBcXGluIFMsIHggXFxuZXEgeX0ge0Rpc3QoeCwgeSl9JCBcdWI4NWMgXHVjODE1XHVjNzU4XHViNDFjXHViMmU0LiBcdWM5ODksIFx1YzViNFx1YjVhNCBcdWQyYjhcdWI5YWNcdWM3NTggXHVjODEwXHVjMjE4XHViMjk0IFx1ZDU3NFx1YjJmOSBcdWQyYjhcdWI5YWNcdWM1ZDAgXHVjMThkXHVkNTVjIFx1YmFhOFx1YjRlMCBcdWMxMWNcdWI4NWMgXHViMmU0XHViOTc4IFx1YjE3OFx1YjRkYyBcdWMzMGRcdWM3NTggXHVjZDVjXHViMmU4IFx1YWM3MFx1YjlhY1x1Yzc1OCBcdWNkMWRcdWQ1NjlcdWM3NzRcdWIyZTQuICRTJFx1Yzc1OCBcdWIxNzhcdWI0ZGMgXHVhYzFjXHVjMjE4XHVhYzAwICQyJFx1YWMxYyBcdWJiZjhcdWI5Y2NcdWM3NzggXHVhY2JkXHVjNmIwLCAkU2NvcmUoUykkIFx1YjI5NCAkMCRcdWM3M2NcdWI4NWMgXHVjODE1XHVjNzU4XHVkNTVjXHViMmU0LjxcL2xpPlxyXG48XC91bD5cclxuXHJcbjxwPlx1YzYwOFx1Yjk3YyBcdWI0ZTRcdWM1YjQsIFx1YzU0NFx1Yjc5OFx1Yzc1OCBcdWQyYjhcdWI5YWNcdWM1ZDBcdWIyOTQgXHViMTc4XHViNGRjXHVhYzAwICQzJFx1YWMxYyBcdWM3ODhcdWIyZTQuPFwvcD5cclxuXHJcbjx1bD5cclxuXHQ8bGk+XHVjNzA0IFx1YzgxNVx1Yzc1OFx1YzVkMCBcdWI1MzBcdWI3N2MgJERpc3QoMSwgMikgPSAxMCQsICREaXN0KDIsIDMpID0gMjAkLCAkRGlzdCgxLCAzKSA9IDMwJFx1Yzc3NFx1YjJlNC48XC9saT5cclxuXHQ8bGk+XHViNTMwXHViNzdjXHVjMTFjIFx1Yzc3NCBcdWQyYjhcdWI5YWNcdWM3NTggXHVjODEwXHVjMjE4XHViMjk0ICQxMCArIDIwICsgMzAgPSA2MCRcdWM3NzQgXHViNDFjXHViMmU0LjxcL2xpPlxyXG48XC91bD5cclxuXHJcbjxwIHN0eWxlPVwidGV4dC1hbGlnbjogY2VudGVyO1wiPjxpbWcgYWx0PVwiXCIgc3JjPVwiaHR0cHM6XC9cL3VwbG9hZC5hY21pY3BjLm5ldFwvNTZmNzQwZTItNDNmMy00ZTJkLWExNTItZTdhMjNlYzEwY2M3XC8tXC9jcm9wXC80OTJ4NTc5XC8yMywyOFwvLVwvcHJldmlld1wvXCIgc3R5bGU9XCJoZWlnaHQ6IDE3N3B4OyB3aWR0aDogMTUwcHg7XCIgXC8+PFwvcD5cclxuXHJcbjxwPkFsaWNlXHViMjk0IEJvYlx1Yzc1OCBcdWIxODBcdWM3NzRcdWI5N2MgXHVjOWMwXHVjZjFjXHViY2Y0XHViMzU4IFx1YzkxMSBcdWMwYzhcdWI4NWNcdWM2YjQgXHViMTgwXHVjNzc0XHViOTdjIFx1YzgxY1x1YzU0OFx1ZDU4OFx1YjJlNC4gXHVjNmIwXHVjMTIwLCBcdWI0NThcdWM3NDAgXHVkNTY4XHVhZWQ4ICRuJFx1YWMxY1x1Yzc1OCBcdWIxNzhcdWI0ZGNcdWM2NDAgJG4tMSRcdWFjMWNcdWM3NTggXHVhYzA0XHVjMTIwXHVjNzNjXHViODVjIFx1YWQ2Y1x1YzEzMVx1YjQxYyBcdWQyYjhcdWI5YWNcdWI5N2MgXHVkNTU4XHViMDk4IFx1YjljY1x1YjRkY1x1YjI5NFx1YjM3MCwgXHVjNzc0XHViOTdjICRUXzAkXHViNzdjIFx1ZDU1OFx1YWNlMCAmcXVvdDtcdWFlMzBcdWJjZjggXHVkMmI4XHViOWFjJnF1b3Q7XHViNzdjIFx1YmQ4MFx1Yjk3OFx1YjJlNC4gXHVkM2I4XHVjNzU4XHVjMGMxIFx1YWUzMFx1YmNmOCBcdWQyYjhcdWI5YWMgJFRfMCRcdWM3NTggXHViMTc4XHViNGRjXHViMjk0ICQxJFx1YmQ4MFx1ZDEzMCAkbiRcdWFlNGNcdWM5YzAgXHViYzg4XHVkNjM4XHVhYzAwIFx1YmQ5OVx1YzViNFx1Yzc4OFx1YWNlMCwgJG4tMSRcdWFjMWNcdWM3NTggXHVhYzA0XHVjMTIwXHViM2M0ICQxJFx1YmQ4MFx1ZDEzMCAkbi0xJFx1YWU0Y1x1YzljMCBcdWJjODhcdWQ2MzhcdWFjMDAgXHViZDk5XHVjNWI0XHVjNzg4XHViMmU0IChcdWM3NzRcdWIyOTQgXHVkNmM0XHVjMjIwXHVkNTYwICZxdW90O1x1YWMwNFx1YzEyMCBcdWJjMTRcdWFmYjhcdWFlMzAmcXVvdDtcdWM1ZDAgXHVjMGFjXHVjNmE5XHViNDE4XHViMjk0IFx1YWMwNFx1YzEyMFx1Yzc1OCBcdWM3NzhcdWIzNzFcdWMyYTRcdWM3NzRcdWIyZTQpLiAkVF8wJFx1Yzc1OCAkaSRcdWJjODhcdWM5ZjggXHVhYzA0XHVjMTIwXHVjNzQ0ICRFW2ldID0gKHYsIHcsIGQpJFx1Yjc3YyBcdWQ1NThcdWJhNzQsIFx1Yzc3NCBcdWFjMDRcdWMxMjBcdWM3NDAgXHViMTc4XHViNGRjICR2JFx1YzY0MCBcdWIxNzhcdWI0ZGMgJHckXHViOTdjIFx1Yzc4N1x1YWNlMCwgXHVhZTM4XHVjNzc0XHVhYzAwICRkJFx1Yzc3OCBcdWFjMDRcdWMxMjBcdWM3NDQgXHViMDk4XHVkMGMwXHViMGI4XHViMmU0LiBcdWM2MDhcdWI5N2MgXHViNGU0XHVjNWI0LCAkRVsxXSA9ICgxLCAyLCAxMCkkLCAkRVsyXSA9ICgyLCAzLCAyMCkkIFx1Yzc3NFx1Yjc3Y1x1YmE3NCwgXHVjNzA0IFx1YWRmOFx1YjliY1x1YWNmYyBcdWFjMTlcdWM3NDAgXHVkMmI4XHViOWFjXHVhYzAwIFx1YzViYlx1YzViNFx1YzljMFx1YWNlMCwgXHVhZDZjXHVjY2I0XHVjODAxXHVjNzNjXHViODVjICQoMSwgMikkXHViOTdjIFx1Yzc4N1x1YjI5NCBcdWFjMDRcdWMxMjBcdWM3NTggXHVjNzc4XHViMzcxXHVjMmE0XHViMjk0ICQxJFx1Yzc3NFx1YWNlMCAkKDIsIDMpJFx1Yzc0NCBcdWM3ODdcdWIyOTQgXHVhYzA0XHVjMTIwXHVjNzU4IFx1Yzc3OFx1YjM3MVx1YzJhNFx1YjI5NCAkMiRcdWM3NzRcdWIyZTQuPFwvcD5cclxuXHJcbjxwPlx1Yzc3NFx1ZDZjNCwgQWxpY2VcdWFjMDAgJnF1b3Q7XHVhYzA0XHVjMTIwIFx1YmMxNFx1YWZiOFx1YWUzMCZxdW90O1x1Yjk3YyAkVF8wJFx1YzVkMCBcdWM4MDFcdWM2YTlcdWQ1NThcdWJhNzQsIEFsaWNlXHVhYzAwIFx1YzZkMFx1ZDU1OFx1YjI5NCBcdWFjMDRcdWMxMjAgXHVkNTU4XHViMDk4XHViOTdjICRUXzAkXHVjNWQwXHVjMTFjIFx1YzljMFx1YzZiNCBcdWI0YTQsIFx1YzBjOFx1Yjg1Y1x1YzZiNCBcdWFjMDRcdWMxMjBcdWM3NDQgXHVkNTU4XHViMDk4IFx1Y2Q5NFx1YWMwMFx1ZDU1OFx1YzVlYyBcdWMwYzhcdWI4NWNcdWM2YjQgXHVkMmI4XHViOWFjXHViOTdjIFx1YjljY1x1YjRlMFx1YjJlNC4gXHVhZDZjXHVjY2I0XHVjODAxXHVjNzNjXHViODVjLCBBbGljZVx1YjI5NCBcdWNkMWQgJG0kXHViYzg4XHVjNzU4ICZxdW90O1x1YWMwNFx1YzEyMCBcdWJjMTRcdWFmYjhcdWFlMzAmcXVvdDtcdWI5N2MgXHVjMmRjXHViM2M0XHVkNTc0XHVjMTFjICRUXzAkXHVjNzNjXHViODVjXHViZDgwXHVkMTMwICRtJFx1YWMxY1x1Yzc1OCBcdWMwYzhcdWI4NWNcdWM2YjQgXHVkMmI4XHViOWFjXHViOTdjIFx1YzViYlx1YzViNFx1YjBiNFx1YjI5NFx1YjM3MCBcdWM3NzRcdWI5N2MgJFRfMSQsICRUXzIkLCAkXFxkb3RzJCwgJFRfbSRcdWM3NzRcdWI3N2MgXHVkNTU4XHVjNzkwLjxcL3A+XHJcblxyXG48dWw+XHJcblx0PGxpPiRqJFx1YmM4OFx1YzlmOCAmcXVvdDtcdWFjMDRcdWMxMjAgXHViYzE0XHVhZmI4XHVhZTMwJnF1b3Q7XHViOTdjIFx1YzcwNFx1ZDU3NCBBbGljZVx1YjI5NCBcdWNkMWQgNFx1YWMxY1x1Yzc1OCBcdWM4MTVcdWMyMThcdWI5N2MgQm9iXHVjNWQwXHVhYzhjIFx1YzU0Y1x1YjgyNFx1YzkwMFx1YjJlNCAoJGogPSAxLCAyLCBcXGRvdHMsIG0kKTpcclxuXHQ8dWw+XHJcblx0XHQ8bGk+JEFbIGogXSQ6ICRUXzAkXHVjNzU4IFx1YWMwNFx1YzEyMCBcdWM3NzhcdWIzNzFcdWMyYTRcdWI5N2MgXHViMDk4XHVkMGMwXHViMGI0XHViYTcwLCAkVF8wJFx1YzVkMFx1YzExYyBcdWMwYWRcdWM4MWNcdWI0MjAgXHVhYzA0XHVjMTIwXHVjNzc0XHViMmU0LiBcdWM5ODksICRFWyBBWyBqIF0gXSA9ICh2LCB3LCBkKSRcdWI3N2NcdWJhNzQgJHYkXHVjNjQwICR3JFx1Yjk3YyBcdWM3ODdcdWIyOTQgXHVhYzA0XHVjMTIwXHVjNzQ0IFx1YzljMFx1YzZiNFx1YjJlNC48XC9saT5cclxuXHRcdDxsaT4keFsgaiBdJCwgJHlbIGogXSQ6IFx1YzBjOFx1Yjg1YyBcdWNkOTRcdWFjMDBcdWQ1NjAgXHVhYzA0XHVjMTIwXHVjNzc0IFx1Yzc4N1x1YWM4Y1x1YjQyMCBcdWI0NTAgXHViMTc4XHViNGRjXHVjNzc0XHViMmU0LiAoJHhbIGogXSBcXG5lIHlbIGogXSQpPFwvbGk+XHJcblx0XHQ8bGk+JHpbIGogXSQ6IFx1YzBjOFx1Yjg1YyBcdWNkOTRcdWFjMDBcdWQ1NjAgXHVhYzA0XHVjMTIwXHVjNzU4IFx1YWUzOFx1Yzc3NFx1Yzc3NFx1YjJlNC48XC9saT5cclxuXHQ8XC91bD5cclxuXHQ8XC9saT5cclxuXHQ8bGk+JFRfMCQgXHVjNWQwXHVjMTFjIFx1Yzc3OFx1YjM3MVx1YzJhNFx1YWMwMCAkQVsgaiBdJFx1Yzc3OCBcdWFjMDRcdWMxMjBcdWM3NDQgXHVjMGFkXHVjODFjXHVkNTU4XHVhY2UwIFx1Yzc3NFx1ZDZjNCAkKHhbIGogXSwgeVsgaiBdKSRcdWI5N2MgXHVjNWYwXHVhY2IwXHVkNTU4XHViMjk0IFx1YWUzOFx1Yzc3NCAkelsgaiBdJFx1Yzc3OCBcdWFjMDRcdWMxMjBcdWM3NDQgXHVjZDk0XHVhYzAwXHVkNTU4XHVjNWVjIFx1YzViYlx1YzViNFx1YzljNCBcdWFkZjhcdWI3OThcdWQ1MDRcdWI5N2MgJFRfaiQgXHViNzdjIFx1ZDU1OFx1Yzc5MC4gKCRqID0gMSwgMiwgXFxkb3RzLCBtJCkgXHVjNzc0IFx1YmIzOFx1YzgxY1x1YzVkMFx1YzExYyAkVF9qJCBcdWIyOTQgXHVjNWI4XHVjODFjXHViMDk4IFx1ZDJiOFx1YjlhY1x1Yzc4NFx1Yzc3NCBcdWJjZjRcdWM3YTVcdWI0MWNcdWIyZTQuIFx1Yzc3NCBcdWJiMzhcdWM4MWNcdWM1ZDBcdWMxMWMgJFRfaiRcdWIyOTQgJnF1b3Q7JGokXHViYzg4XHVjOWY4IFx1YmNjMFx1ZDYxNSBcdWQyYjhcdWI5YWMmcXVvdDtcdWI3N2MgXHViZDgwXHViOTc0XHVjNzkwLjxcL2xpPlxyXG5cdDxsaT5cdWFjMDFcdWFjMDFcdWM3NTggJnF1b3Q7XHVhYzA0XHVjMTIwIFx1YmMxNFx1YWZiOFx1YWUzMCZxdW90O1x1YjI5NCBcdWNjOThcdWM3NGMgXHViOWNjXHViNGUwIFx1YWUzMFx1YmNmOCBcdWQyYjhcdWI5YWNcdWM3NzggJFRfMCRcdWM1ZDAgXHViM2M1XHViOWJkXHVjODAxXHVjNzNjXHViODVjIFx1YzgwMVx1YzZhOVx1YjQxY1x1YjJlNCAoXHVjNTQ0XHViNzk4IFx1YzYwOFx1YzgxYyBcdWNjMzhcdWFjZTApLjxcL2xpPlxyXG48XC91bD5cclxuXHJcbjxwPlx1YzYwOFx1Yjk3YyBcdWI0ZTRcdWM1YjQgXHVhZTMwXHViY2Y4IFx1ZDJiOFx1YjlhY1x1Yzc3OCAkVF8wJFx1Yzc0MCBcdWM1NWVcdWMxMjAgXHVjNjA4XHVjODFjXHVjNjQwIFx1YWMxOVx1Yzc3NCAkRVsxXSA9ICgxLCAyLCAxMCkkLCAkRVsyXSA9ICgyLCAzLCAyMCkkXHVjNzNjXHViODVjIFx1YWQ2Y1x1YzEzMVx1YjQxYyBcdWQyYjhcdWI5YWNcdWI3N2MgXHVkNTU4XHVjNzkwLiBBbGljZVx1YWMwMCBcdWNkMWQgJG0gPSA0JFx1YmM4OFx1YzVkMCBcdWFjNzhcdWNjZDAgXHVhYzA0XHVjMTIwIFx1YmMxNFx1YWZiOFx1YWUzMFx1Yjk3YyBcdWM4MDFcdWM2YTlcdWQ1NThcdWIyOTRcdWIzNzAsICRBID0gWzEsIDEsIDIsIDJdJCwgJHggPSBbMywgMSwgMiwgM10kLCAkeSA9IFsxLCAzLCAzLCAxXSQsICR6ID0gWzEsIDIwLCAzMCwgMzBdJFx1Yzc3NFx1Yjc3YyBcdWQ1NThcdWM3OTAuIFx1YzU0NFx1Yjc5OCAkNCRcdWFjMWNcdWM3NTggXHVhZGY4XHViOWJjXHVjNzQwIFx1Yzg4Y1x1Y2UyMVx1YmQ4MFx1ZDEzMCBcdWMyMWNcdWMxMWNcdWIzMDBcdWI4NWMgJDEkfiQ0JFx1YmM4OFx1YzlmOCAmcXVvdDtcdWFjMDRcdWMxMjAgXHViYzE0XHVhZmI4XHVhZTMwJnF1b3Q7XHViOTdjICRUXzAkXHVjNWQwIFx1YWMwMVx1YWMwMSBcdWM4MDFcdWM2YTlcdWQ1NzRcdWMxMWMgXHVjNWJiXHVjNWI0XHVjOWM0ICRUX2okXHVjNjQwIFx1ZDU3NFx1YjJmOSBcdWQyYjhcdWI5YWNcdWM3NTggXHVjODEwXHVjMjE4XHViOTdjIFx1YjA5OFx1ZDBjMFx1YjBiOFx1YjJlNC4gXHVhZGY4XHViOWJjXHVjNWQwXHVjMTFjIFx1YzgxMFx1YzEyMFx1YzczY1x1Yjg1YyBcdWQ0NWNcdWMyZGNcdWI0MWMgXHVhYzA0XHVjMTIwXHVjNzQwICZxdW90O1x1YzBhZFx1YzgxY1x1YjQxYyZxdW90OyBcdWFjMDRcdWMxMjBcdWM3NDQgXHViMDk4XHVkMGMwXHViMGI0XHVhY2UwLCBcdWI0NTBcdWFlYmNcdWM2YjQgXHVjMTIwXHVjNzNjXHViODVjIFx1ZDQ1Y1x1YzJkY1x1YjQxYyBcdWFjMDRcdWMxMjBcdWM3NDAgJnF1b3Q7XHVjZDk0XHVhYzAwXHViNDFjJnF1b3Q7IFx1YWMwNFx1YzEyMFx1Yzc0NCBcdWIwOThcdWQwYzBcdWIwYjhcdWIyZTQuPFwvcD5cclxuXHJcbjxwIHN0eWxlPVwidGV4dC1hbGlnbjogY2VudGVyO1wiPjxpbWcgYWx0PVwiXCIgc3JjPVwiaHR0cHM6XC9cL3VwbG9hZC5hY21pY3BjLm5ldFwvNmExY2U3ZTMtNDNhMC00NzlkLWJiMjUtZGE4MzE3NTg1MWMxXC8tXC9jcm9wXC8xOTQ2eDYwNVwvMjIsNjlcLy1cL3ByZXZpZXdcL1wiIHN0eWxlPVwiaGVpZ2h0OiAxODdweDsgd2lkdGg6IDYwMHB4O1wiIFwvPjxcL3A+XHJcblxyXG48dWw+XHJcblx0PGxpPiRUXzEkOiAkVF8wJFx1YzVkMFx1YzExYyAkMSRcdWJjODggXHVhYzA0XHVjMTIwICgkRVsxXSQpXHVjNzQ0IFx1YzBhZFx1YzgxY1x1ZDU1OFx1YWNlMCwgJDMkXHVhY2ZjICQxJFx1Yzc0NCBcdWM1ZjBcdWFjYjBcdWQ1NThcdWIyOTQgXHVhZTM4XHVjNzc0XHVhYzAwICQxJFx1Yzc3OCBcdWFjMDRcdWMxMjBcdWM3NzQgXHVjZDk0XHVhYzAwXHViNDE4XHVjNWM4XHViMmU0LiAkU2NvcmUoVF8xKSA9IDQyJFx1Yzc3NFx1YjJlNC4gKCRUX2okIFx1YzgxMFx1YzIxOCBcdWM5MTEgXHVjZDVjXHVjMTlmXHVhYzEyKTxcL2xpPlxyXG5cdDxsaT4kVF8yJDogJFRfMCRcdWM1ZDBcdWMxMWMgJDEkXHViYzg4IFx1YWMwNFx1YzEyMCAoJEVbMV0kKVx1Yzc0NCBcdWMwYWRcdWM4MWNcdWQ1NThcdWFjZTAsICQxJFx1YWNmYyAkMyRcdWM3NDQgXHVjNWYwXHVhY2IwXHVkNTU4XHViMjk0IFx1YWUzOFx1Yzc3NFx1YWMwMCAkMjAkXHVjNzc4IFx1YWMwNFx1YzEyMFx1Yzc3NCBcdWNkOTRcdWFjMDBcdWI0MThcdWM1YzhcdWIyZTQuICRTY29yZShUXzIpID0gODAkXHVjNzc0XHViMmU0LiAoJFRfaiQgXHVjODEwXHVjMjE4IFx1YzkxMSBcdWNkNWNcdWIzMTNcdWFjMTIpPFwvbGk+XHJcblx0PGxpPiRUXzMkOiAkVF8wJFx1YzVkMFx1YzExYyAkMiRcdWJjODggXHVhYzA0XHVjMTIwICgkRVsyXSQpXHVjNzQ0IFx1YzBhZFx1YzgxY1x1ZDU1OFx1YWNlMCwgJDIkXHVjNjQwICQzJFx1Yzc0NCBcdWM1ZjBcdWFjYjBcdWQ1NThcdWIyOTQgXHVhZTM4XHVjNzc0XHVhYzAwICQzMCRcdWM3NzggXHVhYzA0XHVjMTIwXHVjNzc0IFx1Y2Q5NFx1YWMwMFx1YjQxOFx1YzVjOFx1YjJlNC4gJFNjb3JlKFRfMykgPSA4MCRcdWM3NzRcdWIyZTQuICgkVF9qJCBcdWM4MTBcdWMyMTggXHVjOTExIFx1Y2Q1Y1x1YjMxM1x1YWMxMikgXHVjNzc0IFx1YWNiZFx1YzZiMCwgXHVjMGFkXHVjODFjXHViNDFjIFx1YWMwNFx1YzEyMFx1YWNmYyBcdWNkOTRcdWFjMDBcdWI0MWMgXHVhYzA0XHVjMTIwXHVjNzc0IFx1YWMxOVx1Yzc0MCBcdWMzMGRcdWM3NTggXHViMTc4XHViNGRjXHViOTdjIFx1YzVmMFx1YWNiMFx1ZDU1OFx1YWNlMCBcdWM3ODhcdWFjZTAsIFx1Yzc3NFx1YjdlY1x1ZDU1YyAmcXVvdDtcdWFjMDRcdWMxMjAgXHViYzE0XHVhZmI4XHVhZTMwJnF1b3Q7XHViM2M0IFx1YWMwMFx1YjJhNVx1ZDU1OFx1YjJlNC48XC9saT5cclxuXHQ8bGk+JFRfNCQ6ICRUXzAkXHVjNWQwXHVjMTFjICQyJFx1YmM4OCBcdWFjMDRcdWMxMjAgKCRFWzJdJClcdWM3NDQgXHVjMGFkXHVjODFjXHVkNTU4XHVhY2UwLCAkMyRcdWFjZmMgJDEkXHVjNzQ0IFx1YzVmMFx1YWNiMFx1ZDU1OFx1YjI5NCBcdWFlMzhcdWM3NzRcdWFjMDAgJDMwJFx1Yzc3OCBcdWFjMDRcdWMxMjBcdWM3NzQgXHVjZDk0XHVhYzAwXHViNDE4XHVjNWM4XHViMmU0LiAkU2NvcmUoVF80KSA9IDgwJFx1Yzc3NFx1YjJlNC4gKCRUX2okIFx1YzgxMFx1YzIxOCBcdWM5MTEgXHVjZDVjXHViMzEzXHVhYzEyKTxcL2xpPlxyXG48XC91bD5cclxuXHJcbjxwPlx1Yzc4NVx1YjgyNVx1YzczY1x1Yjg1YyBcdWFlMzBcdWJjZjggXHVkMmI4XHViOWFjICgkVF8wJClcdWM2NDAgJG0kXHViYzg4XHVjNzU4ICZxdW90O1x1YWMwNFx1YzEyMCBcdWJjMTRcdWFmYjhcdWFlMzAmcXVvdDtcdWM1ZDAgXHViMzAwXHVkNTVjIFx1YzgxNVx1YmNmNFx1YWMwMCBcdWM4ZmNcdWM1YjRcdWM4NGNcdWM3NDQgXHViNTRjLCBCb2JcdWM3NDQgXHViM2M0XHVjNjQwIFx1YWMwMSBcdWQyYjhcdWI5YWNcdWM3NTggXHVjODEwXHVjMjE4XHViOTdjIFx1YWQ2Y1x1ZDU3NFx1YmNmNFx1Yzc5MC4gXHViMmU4LCBBbGljZVx1YjI5NCBCb2JcdWM3NTggXHVkM2I4XHVjNzU4XHViOTdjIFx1YzcwNFx1ZDU3NCBcdWNkMWQgJDMkXHVhYzFjXHVjNzU4IFx1YWMxMlx1YjljYyBcdWFkNmNcdWQ1NzRcdWJjZjRcdWI3N2NcdWFjZTAgXHVkNTg4XHViMmU0OiAkVF8wJFx1Yzc1OCBcdWM4MTBcdWMyMTgsICQxJH4kbSRcdWJjODhcdWM5ZjggXHViY2MwXHVkNjE1XHVkMmI4XHViOWFjICgkVF8xJCwgJFxcZG90cyQsICRUX20kKSBcdWM4MTBcdWMyMThcdWI0ZTRcdWM3NTggXHVjZDVjXHVjMTlmXHVhYzEyXHVhY2ZjIFx1Y2Q1Y1x1YjMxM1x1YWMxMlx1Yzc0NCBcdWFkNmNcdWQ1NThcdWJhNzQgXHViNDFjXHViMmU0LjxcL3A+XHJcbiIsImlucHV0IjoiPHA+XHVjY2FiIFx1YzkwNFx1YzVkMCBcdWQxNGNcdWMyYTRcdWQyYjggXHVjZjAwXHVjNzc0XHVjMmE0XHVjNzU4IFx1YzIxOCAkVCRcdWFjMDAgXHVjOGZjXHVjNWI0XHVjOWM0XHViMmU0LjxcL3A+XHJcblxyXG48cD5cdWFjMDEgXHVkMTRjXHVjMmE0XHVkMmI4IFx1Y2YwMFx1Yzc3NFx1YzJhNFx1Yzc1OCBcdWNjYWIgXHVjOTA0XHVjNWQwXHViMjk0ICRuJFx1YWNmYyAkbSRcdWM3NzQgXHVhY2Y1XHViYzMxXHVjNzNjXHViODVjIFx1YWQ2Y1x1YmQ4NFx1YjQxOFx1YzViNCBcdWM4ZmNcdWM1YjRcdWM5YzRcdWIyZTQuIFx1YjJlNFx1Yzc0YyAkbi0xJFx1YzkwNFx1YzVkMCBcdWFjNzhcdWNjZDAgJFRfMCRcdWM3NTggXHVhYzA0XHVjMTIwXHVjNWQwIFx1YjMwMFx1ZDU1YyBcdWM4MTVcdWJjZjRcdWFjMDAgJDEkXHViYzg4IFx1YWMwNFx1YzEyMFx1YmQ4MFx1ZDEzMCAkbi0xJFx1YmM4OCBcdWFjMDRcdWMxMjBcdWFlNGNcdWM5YzAsIFx1YWMwMSBcdWM5MDRcdWM1ZDAgJDMkXHVhYzFjXHVjNzU4IFx1YzgxNVx1YzIxOFx1Yjg1YyBcdWIwOThcdWIyNThcdWM1YjQgXHVjOGZjXHVjNWI0XHVjOWM0XHViMmU0OiBcdWNjOThcdWM3NGMgJDIkXHVhYzFjXHVjNzU4IFx1YzgxNVx1YzIxOFx1YjI5NCBcdWIxNzhcdWI0ZGMgXHViYzg4XHVkNjM4XHVjNzc0XHVhY2UwIFx1YzEzOCBcdWJjODhcdWM5ZjggXHVjODE1XHVjMjE4XHViMjk0IFx1YWMwNFx1YzEyMFx1Yzc1OCBcdWFlMzhcdWM3NzRcdWM3NzRcdWIyZTQuIFx1YjJlNFx1Yzc0YyAkbSRcdWM5MDRcdWM1ZDAgXHVhYzc4XHVjY2QwIFx1YWMwMSBcdWM5MDRcdWM1ZDAgJDQkXHVhYzFjXHVjNzU4IFx1YzgxNVx1YzIxOFx1YWMwMCBcdWM4ZmNcdWM1YjRcdWM5YzRcdWIyZTQ6IEFsaWNlXHVhYzAwIFx1YzgwMVx1YzZhOVx1ZDU2MCAkaiRcdWJjODhcdWM5ZjggJnF1b3Q7XHVhYzA0XHVjMTIwIFx1YmMxNFx1YWZiOFx1YWUzMCZxdW90O1x1YzVkMCBcdWMwYWNcdWM2YTlcdWI0MjAgJEFbIGogXSQsICR4WyBqIF0kLCAkeVsgaiBdJCwgJHpbIGogXSQgXHVhYzEyXHVjNzc0IFx1YWNmNVx1YmMzMVx1YzczY1x1Yjg1YyBcdWFkNmNcdWJkODRcdWI0MThcdWM1YjQgXHVjOGZjXHVjNWI0XHVjOWM0XHViMmU0LjxcL3A+XHJcbiIsIm91dHB1dCI6IjxwPlx1YWMwMSBcdWQxNGNcdWMyYTRcdWQyYjggXHVjZjAwXHVjNzc0XHVjMmE0XHVjNzU4IFx1YzgxNVx1YjJmNVx1Yzc0NCBcdWFjMDEgXHVjOTA0XHVjNWQwIFx1Y2Q5Y1x1YjgyNVx1ZDU1Y1x1YjJlNC48XC9wPlxyXG5cclxuPHA+XHVhYzAxIFx1YzkwNFx1YzVkMFx1YjI5NCBcdWMxMzggXHVhYzFjXHVjNzU4IFx1YzgxNVx1YzIxOFx1YWMwMCBcdWFjZjVcdWJjMzFcdWM3M2NcdWI4NWMgXHVhZDZjXHViZDg0XHViNDE4XHVjNWI0IFx1Y2Q5Y1x1YjgyNVx1YjQxOFx1YzViNFx1YzU3YyBcdWQ1NWNcdWIyZTQuIFx1Y2NhYiBcdWM4MTVcdWMyMThcdWIyOTQgXHVhZTMwXHViY2Y4IFx1ZDJiOFx1YjlhYyAkVF8wJFx1Yzc1OCBcdWM4MTBcdWMyMTgsIFx1YjQ1MCBcdWJjODhcdWM5ZjggXHVjODE1XHVjMjE4XHViMjk0ICQxJH4kbSRcdWJjODhcdWM5ZjggXHViY2MwXHVkNjE1IFx1ZDJiOFx1YjlhYyAoJFRfMSQsICRcXGRvdHMkLCAkVF9tJCkgXHVjODEwXHVjMjE4IFx1YzkxMSBcdWNkNWNcdWMxOWZcdWFjMTIsIFx1YWRmOFx1YjlhY1x1YWNlMCBcdWMxMzggXHViYzg4XHVjOWY4IFx1YzgxNVx1YzIxOFx1YjI5NCAkMSR+JG0kIFx1YmM4OFx1YzlmOCBcdWJjYzBcdWQ2MTUgXHVkMmI4XHViOWFjICgkVF8xJCwgJFxcZG90cyQsICRUX20kKSBcdWM4MTBcdWMyMTggXHVjOTExIFx1Y2Q1Y1x1YjMxM1x1YWMxMlx1Yzc0NCBcdWNkOWNcdWI4MjVcdWQ1NWNcdWIyZTQuPFwvcD5cclxuIiwiaGludCI6IiIsIm9yaWdpbmFsIjoiMSIsImh0bWxfdGl0bGUiOiIwIiwicHJvYmxlbV9sYW5nX3Rjb2RlIjoiS29yZWFuIiwibGltaXQiOiI8cD5cdWFjMDEgXHVkMTRjXHVjMmE0XHVkMmI4IFx1Y2YwMFx1Yzc3NFx1YzJhNFx1YzVkMCBcdWIzMDBcdWQ1NThcdWM1ZWM6PFwvcD5cclxuXHJcbjx1bD5cclxuXHQ8bGk+JDEgJmxlOyBBWyBqIF0gJmxlOyBuIC0gMSQgKCRqID0gMSwgMiwgXFxkb3RzLCBtJCk8XC9saT5cclxuXHQ8bGk+JDEgJmxlOyB4WyBqIF0gLCB5WyBqIF0gJmxlOyBuJCBcdWFkZjhcdWI5YWNcdWFjZTAgJHhbIGogXSBcXG5lIHlbIGogXSQgKCRqID0gMSwgMiwgXFxkb3RzLCBtJCk8XC9saT5cclxuXHQ8bGk+JDEgJmxlOyB6IFsgal0gJmxlOyAyMFxcLCAwMDAkICgkaiA9IDEsIDIsIFxcZG90cywgbSQpPFwvbGk+XHJcblx0PGxpPiRUJCwgJG4kLCAkbSRcdWM1ZDAgXHViMzAwXHVkNTVjIFx1YzgxY1x1ZDU1Y1x1Yzc0MCBcdWMxMWNcdWJlMGNcdWQwZGNcdWMyYTRcdWQwNmNcdWI5N2MgXHVjYzM4XHVhY2UwXHVkNTVjXHViMmU0LjxcL2xpPlxyXG5cdDxsaT5cdWMxMWNcdWJlMGNcdWQwZGNcdWMyYTRcdWQwNmMgXHVjOTExIFx1Yzc3Y1x1YmQ4MFx1YjI5NCBcdWM3ODVcdWI4MjVcdWM3M2NcdWI4NWMgXHVjOGZjXHVjNWI0XHVjOWMwXHViMjk0IFx1YWUzMFx1YmNmOCBcdWQyYjhcdWI5YWNcdWM3NTggXHVjOWMwXHViOTg0XHVjNWQwIFx1YjMwMFx1ZDU1YyBcdWM4MWNcdWQ1NWNcdWM3NzQgXHVjNzg4XHViMmU0LjxcL2xpPlxyXG48XC91bD5cclxuXHJcbjxwPlx1ZDJiOFx1YjlhY1x1Yzc1OCAmcXVvdDtcdWM5YzBcdWI5ODQgKGRpYW1ldGVyKSZxdW90O1x1Yzc0NCBcdWIyZTRcdWM3NGNcdWFjZmMgXHVhYzE5XHVjNzc0IFx1YzgxNVx1Yzc1OFx1ZDU1Y1x1YjJlNDogXHVkMmI4XHViOWFjXHVjNzU4IFx1Yzc4NFx1Yzc1OFx1Yzc1OCBcdWI0NTAgXHViMTc4XHViNGRjICR4JCwgJHkkXHViOTdjIFx1Yzc4N1x1YjI5NCBcdWNkNWNcdWIyZThcdWFjYmRcdWI4NWNcdWI5N2MgJFAoeCwgeSkkXHViNzdjIFx1ZDU1OFx1YWNlMCwgXHVjNzc0XHVjNWQwIFx1YzE4ZFx1ZDU1YyA8ZW0+XHVhYzA0XHVjMTIwXHVjNzU4IFx1YWMxY1x1YzIxODxcL2VtPlx1Yjk3YyAkQyh4LCB5KSRcdWI3N2MgXHVkNTU4XHVjNzkwLiBcdWQyYjhcdWI5YWNcdWM3NTggXHVjOWMwXHViOTg0XHVjNzQwICRDKHgsIHkpJCBcdWFjMTJcdWI0ZTQgXHVjOTExIFx1Y2Q1Y1x1YjMxM1x1YWMxMlx1Yzc3NFx1YjJlNC48XC9wPlxyXG4iLCJzdWJ0YXNrMSI6Ijx1bD5cclxuXHQ8bGk+JDEgJmxlOyBUICZsZTsgMTAkPFwvbGk+XHJcblx0PGxpPiQyICZsZTsgbiAmbGU7IDFcXCwwMDAkPFwvbGk+XHJcblx0PGxpPiQxICZsZTsgbSAmbGU7IDUwMCQ8XC9saT5cclxuXHQ8bGk+JDEgJmxlOyBUXzAkIFx1Yzc1OCBcdWM5YzBcdWI5ODQgJCZsZTsgMjAwJDxcL2xpPlxyXG48XC91bD5cclxuIiwic3VidGFzazIiOiI8dWw+XHJcblx0PGxpPiQxICZsZTsgVCAmbGU7IDEwJDxcL2xpPlxyXG5cdDxsaT4kMiAmbGU7IG4gJmxlOyA1MFxcLDAwMCQ8XC9saT5cclxuXHQ8bGk+JDEgJmxlOyBtICZsZTsgMjBcXCwwMDAkPFwvbGk+XHJcblx0PGxpPiQxICZsZTsgVF8wJCBcdWM3NTggXHVjOWMwXHViOTg0ICQmbGU7IDIwMCQ8XC9saT5cclxuPFwvdWw+XHJcbiIsInN1YnRhc2szIjoiPHVsPlxyXG5cdDxsaT4kMSAmbGU7IFQgJmxlOyAxMCQ8XC9saT5cclxuXHQ8bGk+JDIgJmxlOyBuICZsZTsgNTBcXCwwMDAkPFwvbGk+XHJcblx0PGxpPiQxICZsZTsgbSAmbGU7IDIwXFwsMDAwJDxcL2xpPlxyXG5cdDxsaT4kMSAmbGU7IFRfMCQ8c3ViPiA8XC9zdWI+XHVjNzU4IFx1YzljMFx1Yjk4NCAkJmxlOyBuLTEkPFwvbGk+XHJcbjxcL3VsPlxyXG4iLCJzYW1wbGVfZXhwbGFpbl8xIjoiPHA+XHVjNjA4XHVjODFjIDE6IFx1YmNmOFx1YmIzOFx1YzVkMFx1YzExYyBcdWIyZTRcdWI4ZThcdWM1YzhcdWIyZTQuIFx1Yzc3NCBcdWQyYjhcdWI5YWNcdWM3NTggXHVjOWMwXHViOTg0XHVjNzQwICQyJFx1Yzc3NFx1YjJlNCAoXHVjZDVjXHViMmU4IFx1YWNiZFx1Yjg1YyBcdWM5MTEgXHVhYzA0XHVjMTIwXHVjNzU4IFx1YWMxY1x1YzIxOFx1YWMwMCBcdWFjMDBcdWM3YTUgXHViOWNlXHVjNzQwIFx1YWM4M1x1Yzc0MCAkMSQgLS0gJDIkIC0tICQzJCBcdWM3NzRcdWIyZTQpLjxcL3A+XHJcblxyXG48cD5cdWM2MDhcdWM4MWMgMjogXHVjNTQ0XHViNzk4IFx1YWRmOFx1YjliY1x1Yzc0MCAkVF8wJFx1Yzc0NCBcdWIwOThcdWQwYzBcdWIwYjhcdWIyZTQuIFx1Yzc3NCBcdWQyYjhcdWI5YWNcdWM3NTggXHVjOWMwXHViOTg0XHVjNzQwICQ4JFx1Yzc3NFx1YjJlNCAoXHVjZDVjXHViMmU4IFx1YWNiZFx1Yjg1YyBcdWM5MTEgXHVhYzA0XHVjMTIwXHVjNzU4IFx1YWMxY1x1YzIxOFx1YWMwMCBcdWFjMDBcdWM3YTUgXHViOWNlXHVjNzQwIFx1YWM4M1x1Yzc0MCAkMTAkIC0tICQ5JCAtLSAkMiQgLS0gJDEkIC0tICQzJCAtLSAkNCQgLS0gJDYkIC0tICQ3JCAtLSAkOCQgXHVjNzc0XHViMmU0KS48XC9wPlxyXG5cclxuPHAgc3R5bGU9XCJ0ZXh0LWFsaWduOiBjZW50ZXI7XCI+PGltZyBhbHQ9XCJcIiBzcmM9XCJodHRwczpcL1wvdXBsb2FkLmFjbWljcGMubmV0XC8wNjk2YzkxMy02MjdkLTQ0M2EtYTM4OS0yYjNhNjE2M2Y2YmFcLy1cL3ByZXZpZXdcL1wiIHN0eWxlPVwiaGVpZ2h0OiAyOTZweDsgd2lkdGg6IDM4MHB4O1wiIFwvPjxcL3A+XHJcblxyXG48cD5cdWM3NzQgXHVkMmI4XHViOWFjXHVjNWQwXHVjMTFjJm5ic3A7JDckXHViYzg4XHVjOWY4XHViODVjIFx1YzhmY1x1YzViNFx1YzljNCBcdWFjMDRcdWMxMjBcdWM3NzggJCg2LCA0KSRcdWI5N2MgXHVjMGFkXHVjODFjXHVkNTU4XHVhY2UwIFx1YjMwMFx1YzJlMCBcdWFlMzhcdWM3NzRcdWFjMDAgJDEwJFx1Yzc3OCBcdWFjMDRcdWMxMjAgJCg4LCAxMCkkXHVjNzQ0IFx1Y2Q5NFx1YWMwMFx1ZDU1YyBcdWQyYjhcdWI5YWMgKCRUXzEkKVx1Yzc0MCBcdWM1NDRcdWI3OThcdWM2NDAgXHVhYzE5XHViMmU0LjxcL3A+XHJcblxyXG48cCBzdHlsZT1cInRleHQtYWxpZ246IGNlbnRlcjtcIj48aW1nIGFsdD1cIlwiIHNyYz1cImh0dHBzOlwvXC91cGxvYWQuYWNtaWNwYy5uZXRcLzQ2MTY4MDllLWJiZWItNDcxOC1hYjcwLWFhZjRlN2IzMDM4N1wvLVwvcHJldmlld1wvXCIgc3R5bGU9XCJoZWlnaHQ6IDI4OXB4OyB3aWR0aDogMzgwcHg7XCIgXC8+PFwvcD5cclxuXHJcbjxwPiRUXzAkXHVjNzU4IFx1YzgxMFx1YzIxOFx1YjI5NCAkNDM1JFx1Yzc3NFx1YWNlMCwgJFRfMSRcdWM3NTggXHVjODEwXHVjMjE4XHVhYzAwICQ2MTQkXHVjNzc0XHViYmMwXHViODVjIFx1Yzc3NCBcdWFjYmRcdWM2YjAgXHVjZDVjXHVjMTlmXHVhYzEyXC9cdWNkNWNcdWIzMTNcdWFjMTIgXHViYWE4XHViNDUwICQ2MTQkXHVhYzAwIFx1YjQxY1x1YjJlNC48XC9wPlxyXG5cclxuPHA+XHVjNjA4XHVjODFjIDMsIDQ6IFx1Y2Q5NFx1YWMwMCBcdWMxMjRcdWJhODUgXHVjNWM2XHVjNzRjLjxcL3A+XHJcblxyXG48cD5cdWM2MDhcdWM4MWMgNTogJFRfMCRcdWM3NTggXHVjODEwXHVjMjE4XHViMjk0ICQxJFx1Yzc3NFx1YjJlNC4gJFNjb3JlKFRfMSkgPSAyJCwgJFNjb3JlKFRfMikgPSAzJCwgJFNjb3JlKFRfMykgPSA0JCBcdWM3NzRcdWJiYzBcdWI4NWMgXHVjZDVjXHVjMTlmXHVhYzEyIFx1Y2Q1Y1x1YjMxM1x1YWMxMlx1Yzc0MCBcdWFjMDFcdWFjMDEgJDIkXHVjNjQwICQ0JFx1YWMwMCBcdWI0MWNcdWIyZTQuPFwvcD5cclxuIn0seyJwcm9ibGVtX2lkIjoiMjQ5NjgiLCJwcm9ibGVtX2xhbmciOiIxIiwidGl0bGUiOiJFZGdlIFN3YXBzIGluIFRyZWUiLCJkZXNjcmlwdGlvbiI6IjxwPkJvYiBoYXMgcmVjZW50bHkgYmVlbiBwbGF5aW5nIGEgc2NvcmluZyBnYW1lIG9uIHRyZWVzIC0tIGxldCAkU2NvcmUoUykkIGZvciBhbiBhcmJpdHJhcnkgdHJlZSAkUyQgYmUgZGVmaW5lZCBhcyBmb2xsb3dzOjxcL3A+XHJcblxyXG48dWw+XHJcblx0PGxpPkFzc3VtZSB0aGF0IGV2ZXJ5IGVkZ2UgaW4gKHVuZGlyZWN0ZWQpIHRyZWUgJFMkIGhhcyBhIHBvc2l0aXZlIHdlaWdodC48XC9saT5cclxuXHQ8bGk+SWYgJHgkIGFuZCAkeSQgKCR4IFxcbmUmbmJzcDt5JCkgYXJlIHR3byBub2RlcyBvZiAkUyQsIHRoZW4gbGV0ICREaXN0KHgsIHkpJCBiZSB0aGUgc2hvcnRlc3QgcGF0aCBkaXN0YW5jZSBiZXR3ZWVuICR4JCBhbmQgJHkkLiBUaGF0IGlzLCBpZiAkUCh4LCB5KSQgaXMgdGhlICh1bmlxdWUpIHNob3J0ZXN0IHBhdGggYmV0d2VlbiAkeCQgYW5kICR5JCwgdGhlbiB0aGUgc3VtIG9mIHRoZSBlZGdlIHdlaWdodHMgb24gJFAoeCwgeSkkIGlzIHRoZSBzaG9ydGVzdCBwYXRoIGRpc3RhbmNlLjxcL2xpPlxyXG5cdDxsaT5UaGVuLCB3ZSBkZWZpbmUgJFNjb3JlKFMpIDo9IFxcc3VtX3t4LCB5IFxcaW4gUywgeCBcXG5lcSB5fSB7IERpc3QoeCwgeSl9JDxiciBcLz5cclxuXHRUaGF0IGlzLCB0aGUgc2NvcmUgb2YgYSB0cmVlIGlzIHRoZSBzdW0gb2YgdGhlIHNob3J0ZXN0IHBhdGggZGlzdGFuY2VzIG9mIGFsbCBwYWlycyBvZiBub2RlcyBpbiBpdC4gSWYgJFMkIGNvbnRhaW5zIGZld2VyIHRoYW4gJDIkIG5vZGVzLCB3ZSBkZWZpbmUgJFNjb3JlKFMpJCB0byBiZSAkMCQuPFwvbGk+XHJcbjxcL3VsPlxyXG5cclxuPHA+Rm9yIGluc3RhbmNlLCBub3RpY2UgdGhhdCB0aGUgZm9sbG93aW5nIHRyZWUgY29udGFpbnMgJDMkIG5vZGVzLjxcL3A+XHJcblxyXG48dWw+XHJcblx0PGxpPkFjY29yZGluZyB0byBCb2ImIzM5O3MgZGVmaW5pdGlvbiwmbmJzcDskRGlzdCgxLCAyKSA9IDEwJCwgJERpc3QoMiwgMykgPSAyMCQsIGFuZCAkRGlzdCgxLCAzKSA9IDMwJC48XC9saT5cclxuXHQ8bGk+VGhlcmVmb3JlLCB0aGUgc2NvcmUgZm9yIHRoaXMgdHJlZSBpcyAkMTAgKyAyMCArIDMwID0gNjAkLjxcL2xpPlxyXG48XC91bD5cclxuXHJcbjxwIHN0eWxlPVwidGV4dC1hbGlnbjogY2VudGVyO1wiPjxpbWcgYWx0PVwiXCIgc3JjPVwiaHR0cHM6XC9cL3VwbG9hZC5hY21pY3BjLm5ldFwvNTZmNzQwZTItNDNmMy00ZTJkLWExNTItZTdhMjNlYzEwY2M3XC8tXC9jcm9wXC80OTJ4NTc5XC8yMywyOFwvLVwvcHJldmlld1wvXCIgc3R5bGU9XCJoZWlnaHQ6IDE3N3B4OyB3aWR0aDogMTUwcHg7XCIgXC8+PFwvcD5cclxuXHJcbjxwPldoaWxlIHdhdGNoaW5nIEJvYiBwbGF5aW5nIHRoaXMgZ2FtZSwgQWxpY2Ugc3VnZ2VzdGVkIHRvIHBsYXkgYSBuZXcgZ2FtZS4gRmlyc3QsIHRoZXkgdG9nZXRoZXIgY3JlYXRlIGEgdHJlZSB3aXRoICRuJCBub2RlcyBhbmQgJG4tMSQgZWRnZXMsIHdoaWNoIHdlIGNhbGwgJFRfMCQsIHRoZSAmcXVvdDtiYXNlIHRyZWUmcXVvdDsuIEZvciBjb252ZW5pZW5jZSwgdGhlIGJhc2UgdHJlZSZuYnNwOyRUXzAkJiMzOTtzIG5vZGVzIGFyZSBsYWJlbGVkJm5ic3A7YnkgaW50ZWdlcnMgZnJvbSAkMSQgdG8gJG4kLCBhbmQgdGhlICRuLTEkIGVkZ2VzIGFyZSBsYWJlbGVkIGJ5IGludGVnZXJzIGZyb20gJDEkIHRvICRuLTEkICh0aGUgZWRnZXMmIzM5OyZuYnNwO2xhYmVscyZuYnNwOyhvciBpbmRpY2VzKSB3aWxsIGJlIHVzZWQgbGF0ZXIpLiBMZXQgdGhlICRpJC10aCBlZGdlIG9mICRUXzAkJm5ic3A7YmUgJEVbaV0gPSAodiwgdywgZCkkIHdoaWNoIGNvbm5lY3RzIHR3byBub2RlcyAkdiQgYW5kICR3JCB3aXRoIHdlaWdodCAob3IgZGlzdGFuY2UpICRkJC4gRm9yIGluc3RhbmNlLCZuYnNwOyRFWzFdID0gKDEsIDIsIDEwKSQgYW5kICRFWzJdID0gKDIsIDMsIDIwKSQgd291bGQgZGVzY3JpYmUgdGhlIHRyZWUgYWJvdmU7IGluIHBhcnRpY3VsYXIsIHRoZSBlZGdlIGNvbm5lY3RpbmcgJCgxLCAyKSQgaGFzIGluZGV4ICQxJCBhbmQgdGhlIGVkZ2UgY29ubmVjdGluZyAkKDIsIDMpJCBoYXMgaW5kZXggJDIkLjxcL3A+XHJcblxyXG48cD5OZXh0LCBBbGljZSBjYW4gYXBwbHkgYW4gJnF1b3Q7ZWRnZSBzd2FwJnF1b3Q7IG9wZXJhdGlvbiB0byAkVF8wJCZuYnNwO2R1cmluZyB3aGljaCBBbGljZSByZW1vdmVzIG9uZSBlZGdlIGZyb20mbmJzcDskVF8wJCwgYW5kIHRoZW4gYWRkcyBhbiBlZGdlIHRvIGl0IHRvIGNyZWF0ZSBhIG5ldyB0cmVlLiBGb3JtYWxseSwgQWxpY2Ugd2lsbCBhcHBseSBpbiB0b3RhbCAkbSQgJnF1b3Q7ZWRnZSBzd2FwcyZxdW90OywgYW5kIG9idGFpbiBtIG5ldyB0cmVlcyBmcm9tICRUXzAkIHdoaWNoIHdlIHdpbGwgY2FsbCZuYnNwOyRUXzEkLCAkVF8yJCwgJFxcZG90cyQsICRUX20kLjxcL3A+XHJcblxyXG48dWw+XHJcblx0PGxpPlRvIGFwcGx5IHRoZSAkaiQtdGggJnF1b3Q7ZWRnZSBzd2FwJnF1b3Q7LCBBbGljZSB3aWxsIHByb3ZpZGUgQm9iIHdpdGggJDQkIGludGVnZXJzICgkaiA9IDEsIDIsIFxcZG90cywgbSQpOlxyXG5cdDx1bD5cclxuXHRcdDxsaT4kQVsgaiBdJDogVGhlIGluZGV4IG9mIGFuIGVkZ2UgaW4gJFRfMCQsIHdoaWNoIGlzIHRvIGJlIHJlbW92ZWQgZnJvbSAkVF8wJC4gVGhhdCBpcywgaWYgJEVbIEFbIGogXSBdID0gKHYsIHcsIGQpJCwgdGhlbiBCb2Igd291bGQgcmVtb3ZlIHRoZSBlZGdlIGNvbm5lY3RpbmcgJHYkIGFuZCAkdyQuPFwvbGk+XHJcblx0XHQ8bGk+JHhbIGogXSQsICR5WyBqIF0kOiBUaGUgdHdvIG5ldyBub2RlcyB0aGF0IEFsaWNlIHdpc2hlcyB0byBjb25uZWN0LiAoJHhbIGogXSBcXG5lIHlbIGogXSQpPFwvbGk+XHJcblx0XHQ8bGk+JHpbIGogXSQ6IFRoZSB3ZWlnaHQgKGRpc3RhbmNlKSBvZiB0aGUgbmV3IGVkZ2UuPFwvbGk+XHJcblx0PFwvdWw+XHJcblx0PFwvbGk+XHJcblx0PGxpPkxldCAkVF9qJCBiZSB0aGUgcmVzdWx0aW5nIGdyYXBoIGJ5IHJlbW92aW5nIGFuIGVkZ2UgZnJvbSAkVF8wJCAod2hvc2UgaW5kZXggaXMgJEFbIGogXSQpIGJlZm9yZSBhZGRpbmcgYW4gZWRnZSBvZiB3ZWlnaHQgJHpbIGogXSQgY29ubmVjdGluZyAkKHhbIGogXSwgeVsgaiBdKSQsJm5ic3A7KHdoZXJlJm5ic3A7JGogPSAxLCAyLCBcXGRvdHMsIG0kKS4gSW4gdGhpcyBwcm9ibGVtLCBpdCBpcyBndWFyYW50ZWVkIHRoYXQgJFRfaiQgd2lsbCBiZSBhIHRyZWUsIGFuZCBsZXQgdXMgY2FsbCBpdCB0aGUgJGokLXRoICZxdW90O21vZGlmaWVkIHRyZWUmcXVvdDsuPFwvbGk+XHJcblx0PGxpPkVhY2ggJnF1b3Q7ZWRnZSBzd2FwJnF1b3Q7IG9wZXJhdGlvbiBpcyBhcHBsaWVkIHRvIHRoZSBiYXNlIHRyZWUsICRUXzAkLCBpbmRlcGVuZGVudGx5IGZyb20gb3RoZXIgb3BlcmF0aW9ucyAoc2VlIGV4YW1wbGVzIGJlbG93KS48XC9saT5cclxuPFwvdWw+XHJcblxyXG48cD5Gb3IgaW5zdGFuY2UsIHN1cHBvc2UgdGhhdCB0aGUgYmFzZSB0cmVlJm5ic3A7JFRfMCQ8c3ViPiZuYnNwOzxcL3N1Yj5pcyBnaXZlbiBieSAkRVsxXSA9ICgxLCAyLCAxMCkkIGFuZCZuYnNwOyRFWzJdID0gKDIsIDMsIDIwKSQgYXMgaW4gdGhlIGV4YW1wbGUgYWJvdmUuIEFsaWNlIHdpbGwgYXBwbHkgJDQkIGVkZ2Ugc3dhcHMsIGFuZCBhc3N1bWUgdGhhdCZuYnNwOyRBJm5ic3A7PSBbMSwgMSwgMiwgMl0kLCAkeCA9IFszLCAxLCAyLCAzXSQsICR5ID0gWzEsIDMsIDMsIDFdJCwgYW5kICR6ID0gWzEsIDIwLCAzMCwgMzBdJC4gVGhlIGZvdXIgaW1hZ2VzIGJlbG93IChmb3JtIGxlZnQgdG8gcmlnaHQpIHNob3cgdGhlIGZvdXIgbW9kaWZpZWQgdHJlZXMgKCRUX2okJiMzOTtzKSBhbmQgdGhlaXIgc2NvcmVzLiBUaGUgZG90dGVkIGxpbmUgaW4gZWFjaCBpbWFnZSBoaWdobGlnaHRzIGEgcmVtb3ZlZCBlZGdlIGFuZCBhIHRoaWNrIGxpbmUgcmVwcmVzZW50cyBhbiBhZGRlZCBsaW5lLjxcL3A+XHJcblxyXG48cCBzdHlsZT1cInRleHQtYWxpZ246IGNlbnRlcjtcIj48aW1nIGFsdD1cIlwiIHNyYz1cImh0dHBzOlwvXC91cGxvYWQuYWNtaWNwYy5uZXRcLzZhMWNlN2UzLTQzYTAtNDc5ZC1iYjI1LWRhODMxNzU4NTFjMVwvLVwvY3JvcFwvMTk0Nng2MDVcLzIyLDY5XC8tXC9wcmV2aWV3XC9cIiBzdHlsZT1cImhlaWdodDogMTg3cHg7IHdpZHRoOiA2MDBweDtcIiBcLz48YnIgXC8+XHJcbiZuYnNwOzxcL3A+XHJcblxyXG48dWw+XHJcblx0PGxpPiRUXzEkOiAkMSRzdCBlZGdlICgkRVsxXSQpJm5ic3A7aXMgcmVtb3ZlZCBmcm9tICRUXzAkJm5ic3A7YW5kIGEgbmV3IGVkZ2UgY29ubmVjdGluZyAkMyQgYW5kICQxJCAob2Ygd2VpZ2h0ICQxJCkgaXMgYWRkZWQuIFRoZSBuZXcgc2NvcmUgaXMgJFNjb3JlKFRfMSkgPSA0MiQuIChNaW5pbXVtIGFtb25nIGFsbCAkVF9qJCZuYnNwO3Njb3Jlcy4pPFwvbGk+XHJcblx0PGxpPiRUXzIkOiAkMSRzdCBlZGdlICgkRVsxXSQpIGlzIHJlbW92ZWQgZnJvbSAkVF8wJCZuYnNwO2FuZCBhIG5ldyBlZGdlIGNvbm5lY3RpbmcgJDEkJm5ic3A7YW5kICQzJCZuYnNwOyhvZiB3ZWlnaHQgJDIwJCkgaXMgYWRkZWQuIFRoZSBuZXcgc2NvcmUgaXMgJFNjb3JlKFRfMikgPSA4MCQuIChNYXhpbXVtJm5ic3A7YW1vbmcgYWxsICRUX2okJm5ic3A7c2NvcmVzLik8XC9saT5cclxuXHQ8bGk+JFRfMyQ6ICQyJG5kIGVkZ2UgKCRFWzJdJCkgaXMgcmVtb3ZlZCBmcm9tICRUXzAkJm5ic3A7YW5kIGEgbmV3IGVkZ2UgY29ubmVjdGluZyAkMiQmbmJzcDthbmQgJDMkJm5ic3A7KG9mIHdlaWdodCAkMzAkKSBpcyBhZGRlZC4gVGhlIG5ldyBzY29yZSBpcyAkU2NvcmUoVF8zKSA9IDgwJC4gKE1heGltdW0gYW1vbmcgYWxsICRUX2okJm5ic3A7c2NvcmVzLikgSW4gdGhpcyBjYXNlLCB0aGUgZGVsZXRlZCBlZGdlIGFuZCB0aGUgbmV3IGVkZ2UgYXJlIGNvbm5lY3RpbmcgdGhlIHNhbWUgcGFpciBvZiBub2Rlcywgd2hpY2ggaXMgYW4gYWxsb3dlZCAmcXVvdDtlZGdlIHN3YXAmcXVvdDsgb3BlcmF0aW9uLjxcL2xpPlxyXG5cdDxsaT4kVF80JDogJDIkbmQmbmJzcDtlZGdlICgkRVsyXSQpIGlzIHJlbW92ZWQgZnJvbSAkVF8wJCZuYnNwO2FuZCBhIG5ldyBlZGdlIGNvbm5lY3RpbmcgJDMkIGFuZCAkMSQgKG9mIHdlaWdodCAkMzAkKSBpcyBhZGRlZC4gVGhlIG5ldyBzY29yZSBpcyAkU2NvcmUoVF80KSA9IDgwJC4gKE1heGltdW0gYW1vbmcgYWxsICRUX2okJm5ic3A7c2NvcmVzLik8XC9saT5cclxuPFwvdWw+XHJcblxyXG48cD5HaXZlbiB0aGUgYmFzZSB0cmVlKCRUXzAkKSBhbmQgJG0kICZxdW90O2VkZ2Ugc3dhcCZxdW90OyBvcGVyYXRpb25zLCBoZWxwJm5ic3A7Qm9iIGNvbXB1dGUgZWFjaCBtb2RpZmllZCB0cmVlJiMzOTtzIHNjb3JlLiBUbyBlYXNlIEJvYiYjMzk7cyBqb2IsIEFsaWNlIGlzIGFza2luZyBmb3IgdGhyZWUgdmFsdWVzOiBTY29yZSBvZiAkVF8wJDxzdWI+Jm5ic3A7PFwvc3ViPmFuZCB0aGUgbWluaW11bVwvbWF4aW11bSBzY29yZXMgYWNyb3NzICRtJCBtb2RpZmllZCB0cmVlcyAoJFRfMSQsICRUXzIkLCAkXFxkb3RzJCAsICRUX20kKS48XC9wPlxyXG4iLCJpbnB1dCI6IjxwPlRoZSBmaXJzdCBsaW5lIG9mIHRoZSBpbnB1dCB3aWxsIGNvbnRhaW4gJFQkLCB0aGUgbnVtYmVyIG9mIHRlc3QgY2FzZXMuPFwvcD5cclxuXHJcbjxwPlRoZSBmaXJzdCBsaW5lIG9mIGVhY2ggdGVzdCBjYXNlIHdpbGwgY29udGFpbiAkbiQgYW5kICRtJCwgc2VwYXJhdGVkIGJ5IHdoaXRlc3BhY2UuIFRoZSBuZXh0ICRuLTEkIGxpbmVzIHdpbGwgZGVzY3JpYmUgZWFjaCBlZGdlIGluICRUXzAkJm5ic3A7d2hlcmUgZWFjaCBsaW5lIHdpbGwgY29udGFpbiB0aHJlZSBpbnRlZ2VyczogVGhlIGZpcnN0IHR3byBhcmUgbm9kZXMmIzM5OyBsYWJlbHMgYW5kIHRoZSB0aGlyZCBpcyB0aGUgd2VpZ2h0IG9mIHRoZSBlZGdlLiBUaGUgbmV4dCAkbSQgbGluZXMgd2lsbCBjb250YWluICQ0JCBpbnRlZ2VycyBpbiBlYWNoIGxpbmUgd2hlcmUgdGhlICRqJC10aCBsaW5lIHdpbGwgZGVzY3JpYmUgdGhlICRqJC10aCBlZGdlIHN3YXAgb3BlcmF0aW9uOiAkQVsgaiBdJCwgJHhbIGogXSQsICR5WyBqIF0kLCBhbmQgJHpbIGogXSQsIHNlcGFyYXRlZCBieSB3aGl0ZXNwYWNlLjxcL3A+XHJcbiIsIm91dHB1dCI6IjxwPk91dHB1dCBlYWNoIHRlc3QgY2FzZSYjMzk7cyBhbnN3ZXIgaW4gZWFjaCBsaW5lLjxcL3A+XHJcblxyXG48cD5FYWNoIGxpbmUgbXVzdCBjb250YWluIHRocmVlIGNvbnRhaW5zLCBzZXBhcmF0ZWQgYnkgd2hpdGVzcGFjZS4gVGhlIGZpcnN0IG51bWJlciBtdXN0IGJlIHRoZSBzY29yZSBvZiAkVF8wJCwgdGhlIHNlY29uZCBudW1iZXIgbXVzdCBiZSB0aGUgbWluaW11bSBzY29yZSBvdmVyICRtJCBtb2RpZmllZCB0cmVzcywgYW5kIHRoZSB0aGlyZCB0aGUgbWF4aW11bSBzY29yZSBvdmVyICRtJCBtb2RpZmllZCB0cmVlcy48XC9wPlxyXG4iLCJoaW50IjoiIiwib3JpZ2luYWwiOiIwIiwiaHRtbF90aXRsZSI6IjAiLCJwcm9ibGVtX2xhbmdfdGNvZGUiOiJFbmdsaXNoIiwibGltaXQiOiI8cD5Gb3IgZWFjaCB0ZXN0IGNhc2U6PFwvcD5cclxuXHJcbjx1bD5cclxuXHQ8bGk+JDEgJmxlOyBBWyBqIF0gJmxlOyBuIC0gMSQgKCRqID0gMSwgMiwgXFxkb3RzLCBtJCk8XC9saT5cclxuXHQ8bGk+JDEgJmxlOyB4WyBqIF0gLCB5WyBqIF0gJmxlOyBuJCBhbmQgJHhbIGogXSBcXG5lIHlbIGogXSQmbmJzcDsoJGogPSAxLCAyLCBcXGRvdHMsIG0kKTxcL2xpPlxyXG5cdDxsaT4kMSAmbGU7IHogWyBqXSAmbGU7IDIwLCAwMDAkJm5ic3A7KCRqID0gMSwgMiwgXFxkb3RzLCBtJCk8XC9saT5cclxuXHQ8bGk+U2VlIHN1YnRhc2tzIGZvciBsaW1pdHMgb24gJFQkLCAkbiQsIGFuZCAkbSQuPFwvbGk+XHJcblx0PGxpPlNvbWUgc3VidGFzayhzKSBtYXkgaGF2ZSBhbiBhZGRpdGlvbmFsIGxpbWl0IG9uIHRoZSBkaWFtZXRlciBvZiB0aGUgYmFzZSB0cmVlLjxcL2xpPlxyXG48XC91bD5cclxuXHJcbjxwPlRoZSBkaWFtZXRlciBvZiBhIHRyZWUgaXMgZGVmaW5lZCBhcyBmb2xsb3dzOiBMZXQmbmJzcDskUCh4LCB5KSQgdGhlIHNob3J0ZXN0IHBhdGggY29ubmVjdGluZyB0d28gbm9kZXMgJHgkIGFuZCAkeSQsIGFuZCBsZXQgJEMoeCwgeSkkIGRlbm90ZSA8ZW0+dGhlIG51bWJlciBvZiBlZGdlcyBpbiA8XC9lbT4kUCh4LCB5KSQ8ZW0+LjxcL2VtPiZuYnNwO1RoZW4sIHRoZSBkaWFtZXRlciBvZiBhIHRyZWUgaXMgdGhlIG1heGltdW0gdmFsdWUgb2YgJEMoeCwgeSkkIG92ZXIgYWxsICR4JCwgJHkkIGluIHRoZSB0cmVlLjxcL3A+XHJcbiIsInN1YnRhc2sxIjoiPHVsPlxyXG5cdDxsaT4kMSAmbGU7IFQgJmxlOyAxMCQ8XC9saT5cclxuXHQ8bGk+JDIgJmxlOyBuICZsZTsgMVxcLDAwMCQ8XC9saT5cclxuXHQ8bGk+JDEgJmxlOyBtICZsZTsgNTAwJDxcL2xpPlxyXG5cdDxsaT4kMSAmbGU7JCBEaWFtZXRlciBvZiAkVF8wICZsZTsgMjAwJDxcL2xpPlxyXG48XC91bD5cclxuIiwic3VidGFzazIiOiI8dWw+XHJcblx0PGxpPiQxICZsZTsgVCAmbGU7IDEwJDxcL2xpPlxyXG5cdDxsaT4kMiAmbGU7IG4gJmxlOyA1MFxcLDAwMCQ8XC9saT5cclxuXHQ8bGk+JDEgJmxlOyBtICZsZTsgMjBcXCwwMDAkPFwvbGk+XHJcblx0PGxpPiQxICZsZTskIERpYW1ldGVyIG9mICRUXzAgJmxlOyAyMDAkPFwvbGk+XHJcbjxcL3VsPlxyXG4iLCJzdWJ0YXNrMyI6Ijx1bD5cclxuXHQ8bGk+JDEgJmxlOyBUICZsZTsgMTAkPFwvbGk+XHJcblx0PGxpPiQyICZsZTsgbiAmbGU7IDUwXFwsMDAwJDxcL2xpPlxyXG5cdDxsaT4kMSAmbGU7IG0gJmxlOyAyMFxcLDAwMCQ8XC9saT5cclxuXHQ8bGk+JDEgJmxlOyQgRGlhbWV0ZXIgb2YgJFRfMCAmbGU7IG4tMSQ8XC9saT5cclxuPFwvdWw+XHJcbiIsInNhbXBsZV9leHBsYWluXzEiOiI8cD5DYXNlIDE6IERpc2N1c3NlZCBpbiB0aGUgcHJvYmxlbSBzdGF0ZW1lbnQuIFRoZSBkaWFtZXRlciBvZiB0aGlzIHRyZWUgaXMgJDIkICh0aGUgc2hvcnRlc3QgcGF0aCB3aXRoIHRoZSBtYXggbnVtYmVyIG9mIGVkZ2VzIGlzICQxJCAtLSAkMiQgLS0gJDMkKS48XC9wPlxyXG5cclxuPHA+Q2FzZSAyOiBUaGUgZmlndXJlIGJlbG93IHNob3dzICRUXzAkLiBUaGlzIHRyZWUmIzM5O3MgZGlhbWV0ZXIgaXMgJDgkICh0aGUgc2hvcnRlc3QgcGF0aCB3aXRoIHRoZSBtYXggbnVtYmVyIG9mIGVkZ2VzIGlzICQxMCQgLS0gJDkkIC0tICQyJCAtLSAkMSQgLS0gJDMkIC0tICQ0JCAtLSAkNiQgLS0gJDckIC0tICQ4JCkuPFwvcD5cclxuXHJcbjxwIHN0eWxlPVwidGV4dC1hbGlnbjogY2VudGVyO1wiPjxpbWcgYWx0PVwiXCIgc3JjPVwiaHR0cHM6XC9cL3VwbG9hZC5hY21pY3BjLm5ldFwvMDY5NmM5MTMtNjI3ZC00NDNhLWEzODktMmIzYTYxNjNmNmJhXC8tXC9wcmV2aWV3XC9cIiBzdHlsZT1cImhlaWdodDogMjk2cHg7IHdpZHRoOiAzODBweDtcIiBcLz48XC9wPlxyXG5cclxuPHA+QWZ0ZXIgcmVtb3ZpbmcgdGhlICQ3JHRoIGVkZ2UgJCg2LCA0KSQmbmJzcDtmcm9tIHRoZSB0cmVlIGFuZCBhZGRpbmcgYSBuZXcgZWRnZSBvZiB3ZWlnaHQgJDEwJCBjb25uZWN0aW5nICQoOCwgMTApJCwgd2UgZ2V0IGEgbW9kaWZpZWQgdHJlZSAoJFRfMSQpIGFzIHNob3duIGJlbG93LjxcL3A+XHJcblxyXG48cCBzdHlsZT1cInRleHQtYWxpZ246IGNlbnRlcjtcIj48aW1nIGFsdD1cIlwiIHNyYz1cImh0dHBzOlwvXC91cGxvYWQuYWNtaWNwYy5uZXRcLzQ2MTY4MDllLWJiZWItNDcxOC1hYjcwLWFhZjRlN2IzMDM4N1wvLVwvcHJldmlld1wvXCIgc3R5bGU9XCJoZWlnaHQ6IDI4OXB4OyB3aWR0aDogMzgwcHg7XCIgXC8+PFwvcD5cclxuXHJcbjxwPlNpbmNlIHRoZSBzY29yZSBvZiAkVF8wJCZuYnNwO2lzJm5ic3A7JDQzNSQgYW5kIHRoZSBzY29yZSBvZiZuYnNwOyRUXzEkPHN1Yj4mbmJzcDs8XC9zdWI+aXMgJDYxNCQsIGJvdGggdGhlIG1pbi1zY29yZSBhbmQgbWF4LXNjb3JlIGFyZSAkNjE0JCBpbiB0aGlzIGNhc2UuPFwvcD5cclxuXHJcbjxwPkNhc2VzIDMtNDogTm8gZnVydGhlciBleHBsYW5hdGlvbiBwcm92aWRlZC4mbmJzcDs8XC9wPlxyXG5cclxuPHA+Q2FzZSZuYnNwOzU6ICRTY29yZShUXzApJCBpcyAkMSQuIFNpbmNlICRTY29yZShUXzEpID0gMiQsICRTY29yZShUXzIpID0gMyQsIGFuZCAkU2NvcmUoVF8zKSA9IDQkLCB0aGUgbWluLXNjb3JlIGFuZCBtYXgtc2NvcmUgYXJlLCByZXNwZWN0aXZlbHksICQyJCBhbmQgJDQkLjxcL3A+XHJcbiJ9XQ==

시간 제한

  • Java 8: 6 초
  • Python 3: 15 초
  • PyPy3: 15 초
  • Java 8 (OpenJDK): 6 초
  • Java 11: 6 초
  • Kotlin (JVM): 6 초
  • Java 15: 6 초

채점 및 기타 정보

  • 예제는 채점하지 않는다.