Logo
(追記) (追記ここまで)

25443번 - 수천개의 섬 서브태스크점수다국어언어 제한함수 구현

시간 제한메모리 제한제출정답맞힌 사람정답 비율
1 초 1024 MB188353220.779%

문제

수천개의 섬은 자바 해역에 위치한 아름다운 섬들의 그룹이다. 수천개의 섬은 $N$개의 섬으로 구성되며 0ドル$부터 $N - 1$까지 번호가 붙어 있다.

섬들 사이를 오가는데 사용될 수 있는 카누가 $M$개 있고 0ドル$부터 $M - 1$까지 번호가 붙어 있다. 0ドル \le i \le M - 1$인 각 $i$에 대해, $i$번 카누는 섬 $U[i]$나 섬 $V[i]$에 정박해 있거나 $U[i]$와 $V[i]$ 사이를 운항 중일 수 있다. 특별히, 카누가 섬 $U[i]$에 정박해 있을 때에는 섬 $U[i]$에서 섬 $V[i]$로 운항할 수 있고 이후 섬 $V[i]$에 정박하게 된다. 비슷하게, 카누가 섬 $V[i]$에 정박해 있을 때에는 섬 $V[i]$에서 섬 $U[i]$로 운항할 수 있고 이후 섬 $U[i]$에 정박하게 된다. 처음에 카누는 섬 $U[i]$에 정박해 있다. 여러 카누가 동일한 두 섬 사이를 오가는 것도 가능하다. 한 섬에 여러 카누가 정박하는 것도 가능하다.

안전상의 이유로 카누는 매 운항 이후 유지보수가 필요하고, 이로 인해 같은 카누가 두 번 연속해서 운항하는 것을 금지한다. 즉, $i$번 카누가 사용된 후에는, $i$번 카누가 다시 사용되기 전에 다른 카누가 반드시 사용되어야 한다.

부 뎅클렉은 몇 개의 섬을 여행할 계획을 세우려고 한다. 그녀의 여행이 유효하다는 것은 다음 조건들이 만족됨을 의미한다.

  • 그녀의 여행은 섬 0ドル$에서 시작해서 섬 0ドル$에서 끝난다.
  • 그녀는 섬 0ドル$이 아닌 다른 섬을 최소한 하나는 방문한다.
  • 여행이 끝나면, 각 카누는 여행이 시작되기 전과 동일한 섬에 정박하게 된다. 즉, 0ドル \le i \le M - 1$인 각 $i$에 대해, $i$번 카누는 섬 $U[i]$에 정박해야만 한다.

당신은 부 뎅클렉이 최대 2ドル,000円,000円$번 운항하는 유효한 여행을 찾도록 도와주거나, 그러한 유효한 여행이 없음을 결정하도록 도와야 한다. 이 문제에서 제시하는 제약조건(Constraints 부분 참고) 하에서는, 만약 유효한 여행이 존재한다면 운항 횟수가 2ドル,000円,000円$번을 넘지 않는 유효한 여행이 존재함을 증명할 수 있다.

구현

다음 함수를 구현해야 한다:

union(bool, int[]) find_journey(int N, int M, int[] U, int[] V)
  • $N$: 섬의 개수.
  • $M$: 카누의 개수.
  • $U,ドル $V$: 카누를 나타내는 길이 $M$인 배열.
  • 이 함수는 boolean 또는 정수 배열을 리턴해야 한다.
    • 유효한 여행이 존재하지 않는다면 false를 리턴한다.
    • 유효한 여행이 존재한다면, 두 가지 옵션이 있다:
      • 만점을 받기 위해서는, 유효한 여행을 나타내는 최대 2ドル,000円,000円$개의 정수값을 갖는 배열을 리턴해야 한다. 더 정확히는, 이 배열의 원소들은 여행에 사용되는 카누들의 번호(사용되는 순서대로)여야 한다.
      • 부분 점수를 받기 위해서는, true를 리턴하거나, 2ドル,000円,000円$개보다 많은 정수값을 갖는 배열을 리턴하거나, 또는 유효한 여행을 나타내지 않는 정수 배열을 리턴해야 한다(더 자세한 내용은 Subtasks 부분 참고).
  • 이 함수는 정확히 한번만 호출된다.

예제 1

다음 호출을 생각해보자:

find_journey(4, 5, [0, 1, 2, 0, 3], [1, 2, 3, 3, 1])

섬들과 카누들은 아래 그림과 같다.

유효한 여행으로 가능한 한가지는 다음과 같다. 부 뎅클렉은 처음에 0ドル,ドル 1ドル,ドル 2ドル,ドル 4ドル$번 카누를 순서대로 운항한다. 그 결과, 그녀는 섬 1ドル$에 있게 된다. 그 다음, 현재 섬 1ドル$에 정박해 있고 마지막에 사용한 카누가 아닌 0ドル$번 카누를 부 뎅클렉은 운항할 수 있다. 0ドル$번 카누를 다시 운항하면, 부 뎅클렉은 이제 섬 0ドル$에 있게 된다. 하지만 1ドル,ドル 2ドル,ドル 4ドル$번 카누가 여행 이전과 같은 섬에 정박해 있지 않다. 부 뎅클렉은 여행을 계속 이어서 3ドル,ドル 2ドル,ドル 1ドル,ドル 4ドル,ドル 3ドル$번 카누를 운항한다. 부 뎅클렉은 섬 0ドル$으로 돌아오고 모든 카누들도 여행 전과 동일한 섬에 정박해 있다.

따라서, 리턴 값 $[0, 1, 2, 4, 0, 3, 2, 1, 4, 3]$은 유효한 여행을 나타낸다.

예제 2

다음 호출을 생각해보자:

find_journey(2, 3, [0, 1, 1], [1, 0, 0])

섬들과 카누들은 아래 그림과 같다.

부 뎅클렉은 0ドル$번 카누를 운항해야만 하고, 그 다음 그녀는 1ドル$ 또는 2ドル$번 카누를 운항할 수 있다. 참고로 그녀는 0ドル$번 카누를 연속해서 운항할 수 없다. 어느 경우던지 부 뎅클렉은 섬 0ドル$으로 돌아간다. 하지만, 카누들은 여행 전과 같은 섬에 정박해 있지 않고, 섬 0ドル$에 정박한 유일한 카누는 방금 그녀가 사용한 카누라서 부 뎅클렉은 더 이상 운항할 수 있는 카누가 없다. 유효한 여행이 없으므로, 이 함수는 false를 리턴해야 한다.

입력

출력

제한

  • 2ドル \le N \le 100,000円$
  • 1ドル \le M \le 200,000円$
  • 0ドル \le U[i] \le N - 1$이며 0ドル \le V[i] \le N - 1$ (모든 0ドル \le i \le M - 1$)
  • $U[i] \neq V[i]$ (모든 0ドル \le i \le M - 1$)

서브태스크

번호배점제한
15

$N = 2$

25

$N \le 400$. 서로 다른 두 섬 $x$와 $y$ (0ドル \le x \lt y \le N - 1$)로 이뤄지는 각 쌍에 대해, 두 섬 사이를 운항하는데 사용될 수 있는 카누는 정확히 두 개이다. 둘 중 하나는 섬 $x$에 정박해 있고 다른 하나는 섬 $y$에 정박해 있다.

321

$N \le 1000,ドル $M$은 짝수이고, 0ドル \le i \le M - 1$인 각 짝수 $i$에 대해 $i$번과 $i + 1$번 카누는 둘 다 섬 $U[i]$와 섬 $V[i]$ 사이를 운항하는데 사용될 수 있다. $i$번 카누는 처음에 섬 $U[i]$에 정박해 있고 $i + 1$번 카누는 처음에 섬 $V[i]$에 정박해 있다. 명확히 말해, $U[i] = V[i + 1]$이고 $V[i] = U[i + 1]$이다.

424

$N \le 1000,ドル $M$은 짝수이고, 0ドル \le i \le M - 1$인 각 짝수 $i$에 대해 $i$번과 $i + 1$번 카누는 둘 다 섬 $U[i]$와 섬 $V[i]$ 사이를 운항하는데 사용될 수 있다. 두 카누 모두 처음에 섬 $U[i]$에 정박해 있다. 명확히 말해, $U[i] = U[i + 1]$이고 $V[i] = V[i + 1]$이다.

545

추가적인 제한이 없다.

유효한 여행이 존재하는 각 테스트 케이스에 대해, 당신의 답은:

  • 유효한 여행을 리턴한 경우 만점을 받고,
  • true를 리턴하거나, 2ドル,000円,000円$개보다 많은 정수값을 갖는 배열을 리턴하거나, 또는 유효한 여행을 나타내지 않는 정수 배열을 리턴한 경우 35ドル%$의 점수를 받고,
  • 그 외의 경우 0ドル$점을 받는다.

유효한 여행이 존재하지 않는 각 테스트 케이스에 대해, 당신의 답은:

  • false를 리턴한 경우 만점을 받고,
  • 그 외의 경우 0ドル$점을 받는다.

참고로, 각 서브태스크의 최종 점수는 그 서브태스크의 테스트 케이스들의 최소 점수로 정해진다.

힌트

W3sicHJvYmxlbV9pZCI6IjI1NDQzIiwicHJvYmxlbV9sYW5nIjoiMCIsInRpdGxlIjoiXHVjMjE4XHVjYzljXHVhYzFjXHVjNzU4IFx1YzEyYyIsImRlc2NyaXB0aW9uIjoiPHA+XHVjMjE4XHVjYzljXHVhYzFjXHVjNzU4IFx1YzEyY1x1Yzc0MCBcdWM3OTBcdWJjMTQgXHVkNTc0XHVjNWVkXHVjNWQwIFx1YzcwNFx1Y2U1OFx1ZDU1YyBcdWM1NDRcdWI5ODRcdWIyZTRcdWM2YjQgXHVjMTJjXHViNGU0XHVjNzU4IFx1YWRmOFx1YjhmOVx1Yzc3NFx1YjJlNC4gXHVjMjE4XHVjYzljXHVhYzFjXHVjNzU4IFx1YzEyY1x1Yzc0MCAkTiRcdWFjMWNcdWM3NTggXHVjMTJjXHVjNzNjXHViODVjIFx1YWQ2Y1x1YzEzMVx1YjQxOFx1YmE3MCAkMCRcdWJkODBcdWQxMzAgJE4gLSAxJFx1YWU0Y1x1YzljMCBcdWJjODhcdWQ2MzhcdWFjMDAgXHViZDk5XHVjNWI0IFx1Yzc4OFx1YjJlNC48XC9wPlxyXG5cclxuPHA+XHVjMTJjXHViNGU0IFx1YzBhY1x1Yzc3NFx1Yjk3YyBcdWM2MjRcdWFjMDBcdWIyOTRcdWIzNzAgXHVjMGFjXHVjNmE5XHViNDIwIFx1YzIxOCBcdWM3ODhcdWIyOTQgXHVjZTc0XHViMjA0XHVhYzAwICRNJFx1YWMxYyBcdWM3ODhcdWFjZTAgJDAkXHViZDgwXHVkMTMwICRNIC0gMSRcdWFlNGNcdWM5YzAgXHViYzg4XHVkNjM4XHVhYzAwIFx1YmQ5OVx1YzViNCBcdWM3ODhcdWIyZTQuICQwIFxcbGUgaSBcXGxlIE0gLSAxJFx1Yzc3OCBcdWFjMDEgJGkkXHVjNWQwIFx1YjMwMFx1ZDU3NCwgJGkkXHViYzg4IFx1Y2U3NFx1YjIwNFx1YjI5NCBcdWMxMmMgJFVbaV0kXHViMDk4IFx1YzEyYyAkVltpXSRcdWM1ZDAgXHVjODE1XHViYzE1XHVkNTc0IFx1Yzc4OFx1YWM3MFx1YjA5OCAkVVtpXSRcdWM2NDAgJFZbaV0kIFx1YzBhY1x1Yzc3NFx1Yjk3YyBcdWM2YjRcdWQ1NmQgXHVjOTExXHVjNzdjIFx1YzIxOCBcdWM3ODhcdWIyZTQuIFx1ZDJiOVx1YmNjNFx1ZDc4OCwgXHVjZTc0XHViMjA0XHVhYzAwIFx1YzEyYyAkVVtpXSRcdWM1ZDAgXHVjODE1XHViYzE1XHVkNTc0IFx1Yzc4OFx1Yzc0NCBcdWI1NGNcdWM1ZDBcdWIyOTQgXHVjMTJjICRVW2ldJFx1YzVkMFx1YzExYyBcdWMxMmMgJFZbaV0kXHViODVjIFx1YzZiNFx1ZDU2ZFx1ZDU2MCBcdWMyMTggXHVjNzg4XHVhY2UwIFx1Yzc3NFx1ZDZjNCBcdWMxMmMgJFZbaV0kXHVjNWQwIFx1YzgxNVx1YmMxNVx1ZDU1OFx1YWM4YyBcdWI0MWNcdWIyZTQuIFx1YmU0NFx1YzJiN1x1ZDU1OFx1YWM4YywgXHVjZTc0XHViMjA0XHVhYzAwIFx1YzEyYyAkVltpXSRcdWM1ZDAgXHVjODE1XHViYzE1XHVkNTc0IFx1Yzc4OFx1Yzc0NCBcdWI1NGNcdWM1ZDBcdWIyOTQgXHVjMTJjICRWW2ldJFx1YzVkMFx1YzExYyBcdWMxMmMgJFVbaV0kXHViODVjIFx1YzZiNFx1ZDU2ZFx1ZDU2MCBcdWMyMTggXHVjNzg4XHVhY2UwIFx1Yzc3NFx1ZDZjNCBcdWMxMmMgJFVbaV0kXHVjNWQwIFx1YzgxNVx1YmMxNVx1ZDU1OFx1YWM4YyBcdWI0MWNcdWIyZTQuIFx1Y2M5OFx1Yzc0Y1x1YzVkMCBcdWNlNzRcdWIyMDRcdWIyOTQgXHVjMTJjICRVW2ldJFx1YzVkMCBcdWM4MTVcdWJjMTVcdWQ1NzQgXHVjNzg4XHViMmU0LiBcdWM1ZWNcdWI3ZWMgXHVjZTc0XHViMjA0XHVhYzAwIFx1YjNkOVx1Yzc3Y1x1ZDU1YyBcdWI0NTAgXHVjMTJjIFx1YzBhY1x1Yzc3NFx1Yjk3YyBcdWM2MjRcdWFjMDBcdWIyOTQgXHVhYzgzXHViM2M0IFx1YWMwMFx1YjJhNVx1ZDU1OFx1YjJlNC4gXHVkNTVjIFx1YzEyY1x1YzVkMCBcdWM1ZWNcdWI3ZWMgXHVjZTc0XHViMjA0XHVhYzAwIFx1YzgxNVx1YmMxNVx1ZDU1OFx1YjI5NCBcdWFjODNcdWIzYzQgXHVhYzAwXHViMmE1XHVkNTU4XHViMmU0LjxcL3A+XHJcblxyXG48cD5cdWM1NDhcdWM4MDRcdWMwYzFcdWM3NTggXHVjNzc0XHVjNzIwXHViODVjIFx1Y2U3NFx1YjIwNFx1YjI5NCBcdWI5ZTQgXHVjNmI0XHVkNTZkIFx1Yzc3NFx1ZDZjNCBcdWM3MjBcdWM5YzBcdWJjZjRcdWMyMThcdWFjMDAgXHVkNTQ0XHVjNjk0XHVkNTU4XHVhY2UwLCBcdWM3NzRcdWI4NWMgXHVjNzc4XHVkNTc0IFx1YWMxOVx1Yzc0MCBcdWNlNzRcdWIyMDRcdWFjMDAgXHViNDUwIFx1YmM4OCBcdWM1ZjBcdWMxOGRcdWQ1NzRcdWMxMWMgXHVjNmI0XHVkNTZkXHVkNTU4XHViMjk0IFx1YWM4M1x1Yzc0NCBcdWFlMDhcdWM5YzBcdWQ1NWNcdWIyZTQuIFx1Yzk4OSwgJGkkXHViYzg4IFx1Y2U3NFx1YjIwNFx1YWMwMCBcdWMwYWNcdWM2YTlcdWI0MWMgXHVkNmM0XHVjNWQwXHViMjk0LCAkaSRcdWJjODggXHVjZTc0XHViMjA0XHVhYzAwIFx1YjJlNFx1YzJkYyBcdWMwYWNcdWM2YTlcdWI0MThcdWFlMzAgXHVjODA0XHVjNWQwIFx1YjJlNFx1Yjk3OCBcdWNlNzRcdWIyMDRcdWFjMDAgXHViYzE4XHViNGRjXHVjMmRjIFx1YzBhY1x1YzZhOVx1YjQxOFx1YzViNFx1YzU3YyBcdWQ1NWNcdWIyZTQuPFwvcD5cclxuXHJcbjxwPlx1YmQ4MCBcdWIzODVcdWQwNzRcdWI4MDlcdWM3NDAgXHViYTg3IFx1YWMxY1x1Yzc1OCBcdWMxMmNcdWM3NDQgXHVjNWVjXHVkNTg5XHVkNTYwIFx1YWNjNFx1ZDY4ZFx1Yzc0NCBcdWMxMzhcdWM2YjBcdWI4MjRcdWFjZTAgXHVkNTVjXHViMmU0LiBcdWFkZjhcdWIxNDBcdWM3NTggXHVjNWVjXHVkNTg5XHVjNzc0IDxzdHJvbmc+XHVjNzIwXHVkNmE4PFwvc3Ryb25nPlx1ZDU1OFx1YjJlNFx1YjI5NCBcdWFjODNcdWM3NDAgXHViMmU0XHVjNzRjIFx1Yzg3MFx1YWM3NFx1YjRlNFx1Yzc3NCBcdWI5Y2NcdWM4NzFcdWI0MjhcdWM3NDQgXHVjNzU4XHViYmY4XHVkNTVjXHViMmU0LjxcL3A+XHJcblxyXG48dWw+XHJcblx0PGxpPlx1YWRmOFx1YjE0MFx1Yzc1OCBcdWM1ZWNcdWQ1ODlcdWM3NDAgXHVjMTJjICQwJFx1YzVkMFx1YzExYyBcdWMyZGNcdWM3OTFcdWQ1NzRcdWMxMWMgXHVjMTJjICQwJFx1YzVkMFx1YzExYyBcdWIwNWRcdWIwOWNcdWIyZTQuPFwvbGk+XHJcblx0PGxpPlx1YWRmOFx1YjE0MFx1YjI5NCBcdWMxMmMgJDAkXHVjNzc0IFx1YzU0NFx1YjJjYyBcdWIyZTRcdWI5NzggXHVjMTJjXHVjNzQ0IFx1Y2Q1Y1x1YzE4Y1x1ZDU1YyBcdWQ1NThcdWIwOThcdWIyOTQgXHViYzI5XHViYjM4XHVkNTVjXHViMmU0LjxcL2xpPlxyXG5cdDxsaT5cdWM1ZWNcdWQ1ODlcdWM3NzQgXHViMDVkXHViMDk4XHViYTc0LCBcdWFjMDEgXHVjZTc0XHViMjA0XHViMjk0IFx1YzVlY1x1ZDU4OVx1Yzc3NCBcdWMyZGNcdWM3OTFcdWI0MThcdWFlMzAgXHVjODA0XHVhY2ZjIFx1YjNkOVx1Yzc3Y1x1ZDU1YyBcdWMxMmNcdWM1ZDAgXHVjODE1XHViYzE1XHVkNTU4XHVhYzhjIFx1YjQxY1x1YjJlNC4gXHVjOTg5LCAkMCBcXGxlIGkgXFxsZSBNIC0gMSRcdWM3NzggXHVhYzAxICRpJFx1YzVkMCBcdWIzMDBcdWQ1NzQsICRpJFx1YmM4OCBcdWNlNzRcdWIyMDRcdWIyOTQgXHVjMTJjICRVW2ldJFx1YzVkMCBcdWM4MTVcdWJjMTVcdWQ1NzRcdWM1N2NcdWI5Y2MgXHVkNTVjXHViMmU0LjxcL2xpPlxyXG48XC91bD5cclxuXHJcbjxwPlx1YjJmOVx1YzJlMFx1Yzc0MCBcdWJkODAgXHViMzg1XHVkMDc0XHViODA5XHVjNzc0IFx1Y2Q1Y1x1YjMwMCAkMlxcLDAwMFxcLDAwMCRcdWJjODggXHVjNmI0XHVkNTZkXHVkNTU4XHViMjk0IFx1YzcyMFx1ZDZhOFx1ZDU1YyBcdWM1ZWNcdWQ1ODlcdWM3NDQgXHVjYzNlXHViM2M0XHViODVkIFx1YjNjNFx1YzY0MFx1YzhmY1x1YWM3MFx1YjA5OCwgXHVhZGY4XHViN2VjXHVkNTVjIFx1YzcyMFx1ZDZhOFx1ZDU1YyBcdWM1ZWNcdWQ1ODlcdWM3NzQgXHVjNWM2XHVjNzRjXHVjNzQ0IFx1YWNiMFx1YzgxNVx1ZDU1OFx1YjNjNFx1Yjg1ZCBcdWIzYzRcdWM2NDBcdWM1N2MgXHVkNTVjXHViMmU0LiBcdWM3NzQgXHViYjM4XHVjODFjXHVjNWQwXHVjMTFjIFx1YzgxY1x1YzJkY1x1ZDU1OFx1YjI5NCBcdWM4MWNcdWM1N2RcdWM4NzBcdWFjNzQoQ29uc3RyYWludHMgXHViZDgwXHViZDg0IFx1Y2MzOFx1YWNlMCkgXHVkNTU4XHVjNWQwXHVjMTFjXHViMjk0LCBcdWI5Y2NcdWM1N2QgXHVjNzIwXHVkNmE4XHVkNTVjIFx1YzVlY1x1ZDU4OVx1Yzc3NCBcdWM4NzRcdWM3YWNcdWQ1NWNcdWIyZTRcdWJhNzQgXHVjNmI0XHVkNTZkIFx1ZDY5Zlx1YzIxOFx1YWMwMCAkMlxcLDAwMFxcLDAwMCRcdWJjODhcdWM3NDQgXHViMTE4XHVjOWMwIFx1YzU0YVx1YjI5NCBcdWM3MjBcdWQ2YThcdWQ1NWMgXHVjNWVjXHVkNTg5XHVjNzc0IFx1Yzg3NFx1YzdhY1x1ZDU2OFx1Yzc0NCBcdWM5OWRcdWJhODVcdWQ1NjAgXHVjMjE4IFx1Yzc4OFx1YjJlNC48XC9wPlxyXG4iLCJpbnB1dCI6IiIsIm91dHB1dCI6IiIsImhpbnQiOiIiLCJvcmlnaW5hbCI6IjAiLCJodG1sX3RpdGxlIjoiMCIsInByb2JsZW1fbGFuZ190Y29kZSI6IktvcmVhbiIsImxpbWl0IjoiPHVsPlxyXG5cdDxsaT4kMiBcXGxlIE4gXFxsZSAxMDBcXCwwMDAkPFwvbGk+XHJcblx0PGxpPiQxIFxcbGUgTSBcXGxlIDIwMFxcLDAwMCQ8XC9saT5cclxuXHQ8bGk+JDAgXFxsZSBVW2ldIFxcbGUgTiAtIDEkXHVjNzc0XHViYTcwICQwIFxcbGUgVltpXSBcXGxlIE4gLSAxJCAoXHViYWE4XHViNGUwICQwIFxcbGUgaSBcXGxlIE0gLSAxJCk8XC9saT5cclxuXHQ8bGk+JFVbaV0gXFxuZXEgVltpXSQgKFx1YmFhOFx1YjRlMCAkMCBcXGxlIGkgXFxsZSBNIC0gMSQpPFwvbGk+XHJcbjxcL3VsPlxyXG4iLCJzdWJ0YXNrMSI6IjxwPiROID0gMiQ8XC9wPlxyXG4iLCJzdWJ0YXNrMiI6IjxwPiROIFxcbGUgNDAwJC4gXHVjMTFjXHViODVjIFx1YjJlNFx1Yjk3OCBcdWI0NTAgXHVjMTJjICR4JFx1YzY0MCAkeSQgKCQwIFxcbGUgeCBcXGx0IHkgXFxsZSBOIC0gMSQpXHViODVjIFx1Yzc3NFx1YjkwNFx1YzljMFx1YjI5NCBcdWFjMDEgXHVjMzBkXHVjNWQwIFx1YjMwMFx1ZDU3NCwgXHViNDUwIFx1YzEyYyBcdWMwYWNcdWM3NzRcdWI5N2MgXHVjNmI0XHVkNTZkXHVkNTU4XHViMjk0XHViMzcwIFx1YzBhY1x1YzZhOVx1YjQyMCBcdWMyMTggXHVjNzg4XHViMjk0IFx1Y2U3NFx1YjIwNFx1YjI5NCBcdWM4MTVcdWQ2NTVcdWQ3ODggXHViNDUwIFx1YWMxY1x1Yzc3NFx1YjJlNC4gXHViNDU4IFx1YzkxMSBcdWQ1NThcdWIwOThcdWIyOTQgXHVjMTJjICR4JFx1YzVkMCBcdWM4MTVcdWJjMTVcdWQ1NzQgXHVjNzg4XHVhY2UwIFx1YjJlNFx1Yjk3OCBcdWQ1NThcdWIwOThcdWIyOTQgXHVjMTJjICR5JFx1YzVkMCBcdWM4MTVcdWJjMTVcdWQ1NzQgXHVjNzg4XHViMmU0LjxcL3A+XHJcbiIsInN1YnRhc2szIjoiPHA+JE4gXFxsZSAxMDAwJCwgJE0kXHVjNzQwIFx1YzlkZFx1YzIxOFx1Yzc3NFx1YWNlMCwgJDAgXFxsZSBpIFxcbGUgTSAtIDEkXHVjNzc4IFx1YWMwMSA8c3Ryb25nPlx1YzlkZFx1YzIxODxcL3N0cm9uZz4gJGkkXHVjNWQwIFx1YjMwMFx1ZDU3NCAkaSRcdWJjODhcdWFjZmMgJGkgKyAxJFx1YmM4OCBcdWNlNzRcdWIyMDRcdWIyOTQgXHViNDU4IFx1YjJlNCBcdWMxMmMgJFVbaV0kXHVjNjQwIFx1YzEyYyAkVltpXSQgXHVjMGFjXHVjNzc0XHViOTdjIFx1YzZiNFx1ZDU2ZFx1ZDU1OFx1YjI5NFx1YjM3MCBcdWMwYWNcdWM2YTlcdWI0MjAgXHVjMjE4IFx1Yzc4OFx1YjJlNC4gJGkkXHViYzg4IFx1Y2U3NFx1YjIwNFx1YjI5NCBcdWNjOThcdWM3NGNcdWM1ZDAgXHVjMTJjICRVW2ldJFx1YzVkMCBcdWM4MTVcdWJjMTVcdWQ1NzQgXHVjNzg4XHVhY2UwICRpICsgMSRcdWJjODggXHVjZTc0XHViMjA0XHViMjk0IFx1Y2M5OFx1Yzc0Y1x1YzVkMCBcdWMxMmMgJFZbaV0kXHVjNWQwIFx1YzgxNVx1YmMxNVx1ZDU3NCBcdWM3ODhcdWIyZTQuIFx1YmE4NVx1ZDY1NVx1ZDc4OCBcdWI5ZDBcdWQ1NzQsICRVW2ldID0gVltpICsgMV0kXHVjNzc0XHVhY2UwICRWW2ldID0gVVtpICsgMV0kXHVjNzc0XHViMmU0LjxcL3A+XHJcbiIsInN1YnRhc2s0IjoiPHA+JE4gXFxsZSAxMDAwJCwgJE0kXHVjNzQwIFx1YzlkZFx1YzIxOFx1Yzc3NFx1YWNlMCwgJDAgXFxsZSBpIFxcbGUgTSAtIDEkXHVjNzc4IFx1YWMwMSA8c3Ryb25nPlx1YzlkZFx1YzIxODxcL3N0cm9uZz4gJGkkXHVjNWQwIFx1YjMwMFx1ZDU3NCAkaSRcdWJjODhcdWFjZmMgJGkgKyAxJFx1YmM4OCBcdWNlNzRcdWIyMDRcdWIyOTQgXHViNDU4IFx1YjJlNCBcdWMxMmMgJFVbaV0kXHVjNjQwIFx1YzEyYyAkVltpXSQgXHVjMGFjXHVjNzc0XHViOTdjIFx1YzZiNFx1ZDU2ZFx1ZDU1OFx1YjI5NFx1YjM3MCBcdWMwYWNcdWM2YTlcdWI0MjAgXHVjMjE4IFx1Yzc4OFx1YjJlNC4gXHViNDUwIFx1Y2U3NFx1YjIwNCBcdWJhYThcdWI0NTAgXHVjYzk4XHVjNzRjXHVjNWQwIFx1YzEyYyAkVVtpXSRcdWM1ZDAgXHVjODE1XHViYzE1XHVkNTc0IFx1Yzc4OFx1YjJlNC4gXHViYTg1XHVkNjU1XHVkNzg4IFx1YjlkMFx1ZDU3NCwgJFVbaV0gPSBVW2kgKyAxXSRcdWM3NzRcdWFjZTAgJFZbaV0gPSBWW2kgKyAxXSRcdWM3NzRcdWIyZTQuPFwvcD5cclxuIiwic3VidGFzazUiOiI8cD5cdWNkOTRcdWFjMDBcdWM4MDFcdWM3NzggXHVjODFjXHVkNTVjXHVjNzc0IFx1YzVjNlx1YjJlNC48XC9wPlxyXG4iLCJjdXN0b21faW1wbGVtZW50YXRpb24iOiI8cD5cdWIyZTRcdWM3NGMgXHVkNTY4XHVjMjE4XHViOTdjIFx1YWQ2Y1x1ZDYwNFx1ZDU3NFx1YzU3YyBcdWQ1NWNcdWIyZTQ6PFwvcD5cclxuXHJcbjxwcmU+XHJcbjxjb2RlPnVuaW9uKGJvb2wsIGludFtdKSBmaW5kX2pvdXJuZXkoaW50IE4sIGludCBNLCBpbnRbXSBVLCBpbnRbXSBWKVxyXG48XC9jb2RlPjxcL3ByZT5cclxuXHJcbjx1bD5cclxuXHQ8bGk+JE4kOiBcdWMxMmNcdWM3NTggXHVhYzFjXHVjMjE4LjxcL2xpPlxyXG5cdDxsaT4kTSQ6IFx1Y2U3NFx1YjIwNFx1Yzc1OCBcdWFjMWNcdWMyMTguPFwvbGk+XHJcblx0PGxpPiRVJCwgJFYkOiBcdWNlNzRcdWIyMDRcdWI5N2MgXHViMDk4XHVkMGMwXHViMGI0XHViMjk0IFx1YWUzOFx1Yzc3NCAkTSRcdWM3NzggXHViYzMwXHVjNWY0LjxcL2xpPlxyXG5cdDxsaT5cdWM3NzQgXHVkNTY4XHVjMjE4XHViMjk0IGJvb2xlYW4gXHViNjEwXHViMjk0IFx1YzgxNVx1YzIxOCBcdWJjMzBcdWM1ZjRcdWM3NDQgXHViOWFjXHVkMTM0XHVkNTc0XHVjNTdjIFx1ZDU1Y1x1YjJlNC5cclxuXHQ8dWw+XHJcblx0XHQ8bGk+XHVjNzIwXHVkNmE4XHVkNTVjIFx1YzVlY1x1ZDU4OVx1Yzc3NCBcdWM4NzRcdWM3YWNcdWQ1NThcdWM5YzAgXHVjNTRhXHViMjk0XHViMmU0XHViYTc0IDxjb2RlPmZhbHNlPFwvY29kZT5cdWI5N2MgXHViOWFjXHVkMTM0XHVkNTVjXHViMmU0LjxcL2xpPlxyXG5cdFx0PGxpPlx1YzcyMFx1ZDZhOFx1ZDU1YyBcdWM1ZWNcdWQ1ODlcdWM3NzQgXHVjODc0XHVjN2FjXHVkNTVjXHViMmU0XHViYTc0LCBcdWI0NTAgXHVhYzAwXHVjOWMwIFx1YzYzNVx1YzE1OFx1Yzc3NCBcdWM3ODhcdWIyZTQ6XHJcblx0XHQ8dWw+XHJcblx0XHRcdDxsaT5cdWI5Y2NcdWM4MTBcdWM3NDQgXHViYzFiXHVhZTMwIFx1YzcwNFx1ZDU3NFx1YzExY1x1YjI5NCwgXHVjNzIwXHVkNmE4XHVkNTVjIFx1YzVlY1x1ZDU4OVx1Yzc0NCBcdWIwOThcdWQwYzBcdWIwYjRcdWIyOTQgXHVjZDVjXHViMzAwICQyXFwsMDAwXFwsMDAwJFx1YWMxY1x1Yzc1OCBcdWM4MTVcdWMyMThcdWFjMTJcdWM3NDQgXHVhYzE2XHViMjk0IFx1YmMzMFx1YzVmNFx1Yzc0NCBcdWI5YWNcdWQxMzRcdWQ1NzRcdWM1N2MgXHVkNTVjXHViMmU0LiBcdWIzNTQgXHVjODE1XHVkNjU1XHVkNzg4XHViMjk0LCBcdWM3NzQgXHViYzMwXHVjNWY0XHVjNzU4IFx1YzZkMFx1YzE4Y1x1YjRlNFx1Yzc0MCBcdWM1ZWNcdWQ1ODlcdWM1ZDAgXHVjMGFjXHVjNmE5XHViNDE4XHViMjk0IFx1Y2U3NFx1YjIwNFx1YjRlNFx1Yzc1OCBcdWJjODhcdWQ2MzgoXHVjMGFjXHVjNmE5XHViNDE4XHViMjk0IFx1YzIxY1x1YzExY1x1YjMwMFx1Yjg1YylcdWM1ZWNcdWM1N2MgXHVkNTVjXHViMmU0LjxcL2xpPlxyXG5cdFx0XHQ8bGk+XHViZDgwXHViZDg0IFx1YzgxMFx1YzIxOFx1Yjk3YyBcdWJjMWJcdWFlMzAgXHVjNzA0XHVkNTc0XHVjMTFjXHViMjk0LCA8Y29kZT50cnVlPFwvY29kZT5cdWI5N2MgXHViOWFjXHVkMTM0XHVkNTU4XHVhYzcwXHViMDk4LCAkMlxcLDAwMFxcLDAwMCRcdWFjMWNcdWJjZjRcdWIyZTQgXHViOWNlXHVjNzQwIFx1YzgxNVx1YzIxOFx1YWMxMlx1Yzc0NCBcdWFjMTZcdWIyOTQgXHViYzMwXHVjNWY0XHVjNzQ0IFx1YjlhY1x1ZDEzNFx1ZDU1OFx1YWM3MFx1YjA5OCwgXHViNjEwXHViMjk0IFx1YzcyMFx1ZDZhOFx1ZDU1YyBcdWM1ZWNcdWQ1ODlcdWM3NDQgXHViMDk4XHVkMGMwXHViMGI0XHVjOWMwIFx1YzU0YVx1YjI5NCBcdWM4MTVcdWMyMTggXHViYzMwXHVjNWY0XHVjNzQ0IFx1YjlhY1x1ZDEzNFx1ZDU3NFx1YzU3YyBcdWQ1NWNcdWIyZTQoXHViMzU0IFx1Yzc5MFx1YzEzOFx1ZDU1YyBcdWIwYjRcdWM2YTlcdWM3NDAgU3VidGFza3MgXHViZDgwXHViZDg0IFx1Y2MzOFx1YWNlMCkuPFwvbGk+XHJcblx0XHQ8XC91bD5cclxuXHRcdDxcL2xpPlxyXG5cdDxcL3VsPlxyXG5cdDxcL2xpPlxyXG5cdDxsaT5cdWM3NzQgXHVkNTY4XHVjMjE4XHViMjk0IFx1YzgxNVx1ZDY1NVx1ZDc4OCBcdWQ1NWNcdWJjODhcdWI5Y2MgXHVkNjM4XHVjZDljXHViNDFjXHViMmU0LjxcL2xpPlxyXG48XC91bD5cclxuIiwiY3VzdG9tX2V4YW1wbGUiOiI8cD5cdWIyZTRcdWM3NGMgXHVkNjM4XHVjZDljXHVjNzQ0IFx1YzBkZFx1YWMwMVx1ZDU3NFx1YmNmNFx1Yzc5MDo8XC9wPlxyXG5cclxuPHByZT5cclxuPGNvZGU+ZmluZF9qb3VybmV5KDQsIDUsIFswLCAxLCAyLCAwLCAzXSwgWzEsIDIsIDMsIDMsIDFdKVxyXG48XC9jb2RlPjxcL3ByZT5cclxuXHJcbjxwPlx1YzEyY1x1YjRlNFx1YWNmYyBcdWNlNzRcdWIyMDRcdWI0ZTRcdWM3NDAgXHVjNTQ0XHViNzk4IFx1YWRmOFx1YjliY1x1YWNmYyBcdWFjMTlcdWIyZTQuPFwvcD5cclxuXHJcbjxwIHN0eWxlPVwidGV4dC1hbGlnbjogY2VudGVyO1wiPjxpbWcgYWx0PVwiXCIgc3JjPVwiaHR0cHM6XC9cL3VwbG9hZC5hY21pY3BjLm5ldFwvMWUwMzdhZWYtZDliMC00N2M4LTg5NTMtNjY3OGZlNTA5MDlkXC8tXC9wcmV2aWV3XC9cIiBzdHlsZT1cIndpZHRoOiAyMjdweDsgaGVpZ2h0OiAyMjRweDtcIiBcLz48XC9wPlxyXG5cclxuPHA+XHVjNzIwXHVkNmE4XHVkNTVjIFx1YzVlY1x1ZDU4OVx1YzczY1x1Yjg1YyBcdWFjMDBcdWIyYTVcdWQ1NWMgXHVkNTVjXHVhYzAwXHVjOWMwXHViMjk0IFx1YjJlNFx1Yzc0Y1x1YWNmYyBcdWFjMTlcdWIyZTQuIFx1YmQ4MCBcdWIzODVcdWQwNzRcdWI4MDlcdWM3NDAgXHVjYzk4XHVjNzRjXHVjNWQwICQwJCwgJDEkLCAkMiQsICQ0JFx1YmM4OCBcdWNlNzRcdWIyMDRcdWI5N2MgXHVjMjFjXHVjMTFjXHViMzAwXHViODVjIFx1YzZiNFx1ZDU2ZFx1ZDU1Y1x1YjJlNC4gXHVhZGY4IFx1YWNiMFx1YWNmYywgXHVhZGY4XHViMTQwXHViMjk0IFx1YzEyYyAkMSRcdWM1ZDAgXHVjNzg4XHVhYzhjIFx1YjQxY1x1YjJlNC4gXHVhZGY4IFx1YjJlNFx1Yzc0YywgXHVkNjA0XHVjN2FjIFx1YzEyYyAkMSRcdWM1ZDAgXHVjODE1XHViYzE1XHVkNTc0IFx1Yzc4OFx1YWNlMCBcdWI5YzhcdWM5YzBcdWI5YzlcdWM1ZDAgXHVjMGFjXHVjNmE5XHVkNTVjIFx1Y2U3NFx1YjIwNFx1YWMwMCBcdWM1NDRcdWIyY2MgJDAkXHViYzg4IFx1Y2U3NFx1YjIwNFx1Yjk3YyBcdWJkODAgXHViMzg1XHVkMDc0XHViODA5XHVjNzQwIFx1YzZiNFx1ZDU2ZFx1ZDU2MCBcdWMyMTggXHVjNzg4XHViMmU0LiAkMCRcdWJjODggXHVjZTc0XHViMjA0XHViOTdjIFx1YjJlNFx1YzJkYyBcdWM2YjRcdWQ1NmRcdWQ1NThcdWJhNzQsIFx1YmQ4MCBcdWIzODVcdWQwNzRcdWI4MDlcdWM3NDAgXHVjNzc0XHVjODFjIFx1YzEyYyAkMCRcdWM1ZDAgXHVjNzg4XHVhYzhjIFx1YjQxY1x1YjJlNC4gXHVkNTU4XHVjOWMwXHViOWNjICQxJCwgJDIkLCAkNCRcdWJjODggXHVjZTc0XHViMjA0XHVhYzAwIFx1YzVlY1x1ZDU4OSBcdWM3NzRcdWM4MDRcdWFjZmMgXHVhYzE5XHVjNzQwIFx1YzEyY1x1YzVkMCBcdWM4MTVcdWJjMTVcdWQ1NzQgXHVjNzg4XHVjOWMwIFx1YzU0YVx1YjJlNC4gXHViZDgwIFx1YjM4NVx1ZDA3NFx1YjgwOVx1Yzc0MCBcdWM1ZWNcdWQ1ODlcdWM3NDQgXHVhY2M0XHVjMThkIFx1Yzc3NFx1YzViNFx1YzExYyAkMyQsICQyJCwgJDEkLCAkNCQsICQzJFx1YmM4OCBcdWNlNzRcdWIyMDRcdWI5N2MgXHVjNmI0XHVkNTZkXHVkNTVjXHViMmU0LiBcdWJkODAgXHViMzg1XHVkMDc0XHViODA5XHVjNzQwIFx1YzEyYyAkMCRcdWM3M2NcdWI4NWMgXHViM2NjXHVjNTQ0XHVjNjI0XHVhY2UwIFx1YmFhOFx1YjRlMCBcdWNlNzRcdWIyMDRcdWI0ZTRcdWIzYzQgXHVjNWVjXHVkNTg5IFx1YzgwNFx1YWNmYyBcdWIzZDlcdWM3N2NcdWQ1NWMgXHVjMTJjXHVjNWQwIFx1YzgxNVx1YmMxNVx1ZDU3NCBcdWM3ODhcdWIyZTQuPFwvcD5cclxuXHJcbjxwPlx1YjUzMFx1Yjc3Y1x1YzExYywgXHViOWFjXHVkMTM0IFx1YWMxMiAkWzAsIDEsIDIsIDQsIDAsIDMsIDIsIDEsIDQsIDNdJFx1Yzc0MCBcdWM3MjBcdWQ2YThcdWQ1NWMgXHVjNWVjXHVkNTg5XHVjNzQ0IFx1YjA5OFx1ZDBjMFx1YjBiOFx1YjJlNC48XC9wPlxyXG4iLCJjdXN0b21fZXhhbXBsZTIiOiI8cD5cdWIyZTRcdWM3NGMgXHVkNjM4XHVjZDljXHVjNzQ0IFx1YzBkZFx1YWMwMVx1ZDU3NFx1YmNmNFx1Yzc5MDo8XC9wPlxyXG5cclxuPHByZT5cclxuPGNvZGU+ZmluZF9qb3VybmV5KDIsIDMsIFswLCAxLCAxXSwgWzEsIDAsIDBdKVxyXG48XC9jb2RlPjxcL3ByZT5cclxuXHJcbjxwPlx1YzEyY1x1YjRlNFx1YWNmYyBcdWNlNzRcdWIyMDRcdWI0ZTRcdWM3NDAgXHVjNTQ0XHViNzk4IFx1YWRmOFx1YjliY1x1YWNmYyBcdWFjMTlcdWIyZTQuPFwvcD5cclxuXHJcbjxwIHN0eWxlPVwidGV4dC1hbGlnbjogY2VudGVyO1wiPjxpbWcgYWx0PVwiXCIgc3JjPVwiaHR0cHM6XC9cL3VwbG9hZC5hY21pY3BjLm5ldFwvNjdiYzhjMzAtMDcxMC00Mzc3LTg1YzktMTVhMTZkZGQyNjk2XC8tXC9wcmV2aWV3XC9cIiBzdHlsZT1cIndpZHRoOiAyNTFweDsgaGVpZ2h0OiAxMDRweDtcIiBcLz48XC9wPlxyXG5cclxuPHA+XHViZDgwIFx1YjM4NVx1ZDA3NFx1YjgwOVx1Yzc0MCAkMCRcdWJjODggXHVjZTc0XHViMjA0XHViOTdjIFx1YzZiNFx1ZDU2ZFx1ZDU3NFx1YzU3Y1x1YjljYyBcdWQ1NThcdWFjZTAsIFx1YWRmOCBcdWIyZTRcdWM3NGMgXHVhZGY4XHViMTQwXHViMjk0ICQxJCBcdWI2MTBcdWIyOTQgJDIkXHViYzg4IFx1Y2U3NFx1YjIwNFx1Yjk3YyBcdWM2YjRcdWQ1NmRcdWQ1NjAgXHVjMjE4IFx1Yzc4OFx1YjJlNC4gXHVjYzM4XHVhY2UwXHViODVjIFx1YWRmOFx1YjE0MFx1YjI5NCAkMCRcdWJjODggXHVjZTc0XHViMjA0XHViOTdjIFx1YzVmMFx1YzE4ZFx1ZDU3NFx1YzExYyBcdWM2YjRcdWQ1NmRcdWQ1NjAgXHVjMjE4IFx1YzVjNlx1YjJlNC4gXHVjNWI0XHViMjkwIFx1YWNiZFx1YzZiMFx1YjM1OFx1YzljMCBcdWJkODAgXHViMzg1XHVkMDc0XHViODA5XHVjNzQwIFx1YzEyYyAkMCRcdWM3M2NcdWI4NWMgXHViM2NjXHVjNTQ0XHVhYzA0XHViMmU0LiBcdWQ1NThcdWM5YzBcdWI5Y2MsIFx1Y2U3NFx1YjIwNFx1YjRlNFx1Yzc0MCBcdWM1ZWNcdWQ1ODkgXHVjODA0XHVhY2ZjIFx1YWMxOVx1Yzc0MCBcdWMxMmNcdWM1ZDAgXHVjODE1XHViYzE1XHVkNTc0IFx1Yzc4OFx1YzljMCBcdWM1NGFcdWFjZTAsIFx1YzEyYyAkMCRcdWM1ZDAgXHVjODE1XHViYzE1XHVkNTVjIFx1YzcyMFx1Yzc3Y1x1ZDU1YyBcdWNlNzRcdWIyMDRcdWIyOTQgXHViYzI5XHVhZTA4IFx1YWRmOFx1YjE0MFx1YWMwMCBcdWMwYWNcdWM2YTlcdWQ1NWMgXHVjZTc0XHViMjA0XHViNzdjXHVjMTFjIFx1YmQ4MCBcdWIzODVcdWQwNzRcdWI4MDlcdWM3NDAgXHViMzU0IFx1Yzc3NFx1YzBjMSBcdWM2YjRcdWQ1NmRcdWQ1NjAgXHVjMjE4IFx1Yzc4OFx1YjI5NCBcdWNlNzRcdWIyMDRcdWFjMDAgXHVjNWM2XHViMmU0LiBcdWM3MjBcdWQ2YThcdWQ1NWMgXHVjNWVjXHVkNTg5XHVjNzc0IFx1YzVjNlx1YzczY1x1YmJjMFx1Yjg1YywgXHVjNzc0IFx1ZDU2OFx1YzIxOFx1YjI5NCA8Y29kZT5mYWxzZTxcL2NvZGU+XHViOTdjIFx1YjlhY1x1ZDEzNFx1ZDU3NFx1YzU3YyBcdWQ1NWNcdWIyZTQuPFwvcD5cclxuIiwiY3VzdG9tX3N1YnRhc2tfc2NvcmluZ19hIjoiPHA+XHVjNzIwXHVkNmE4XHVkNTVjIFx1YzVlY1x1ZDU4OVx1Yzc3NCBcdWM4NzRcdWM3YWNcdWQ1NThcdWIyOTQgXHVhYzAxIFx1ZDE0Y1x1YzJhNFx1ZDJiOCBcdWNmMDBcdWM3NzRcdWMyYTRcdWM1ZDAgXHViMzAwXHVkNTc0LCBcdWIyZjlcdWMyZTBcdWM3NTggXHViMmY1XHVjNzQwOjxcL3A+XHJcblxyXG48dWw+XHJcblx0PGxpPlx1YzcyMFx1ZDZhOFx1ZDU1YyBcdWM1ZWNcdWQ1ODlcdWM3NDQgXHViOWFjXHVkMTM0XHVkNTVjIFx1YWNiZFx1YzZiMCBcdWI5Y2NcdWM4MTBcdWM3NDQgXHViYzFiXHVhY2UwLDxcL2xpPlxyXG5cdDxsaT48Y29kZT50cnVlPFwvY29kZT5cdWI5N2MgXHViOWFjXHVkMTM0XHVkNTU4XHVhYzcwXHViMDk4LCAkMlxcLDAwMFxcLDAwMCRcdWFjMWNcdWJjZjRcdWIyZTQgXHViOWNlXHVjNzQwIFx1YzgxNVx1YzIxOFx1YWMxMlx1Yzc0NCBcdWFjMTZcdWIyOTQgXHViYzMwXHVjNWY0XHVjNzQ0IFx1YjlhY1x1ZDEzNFx1ZDU1OFx1YWM3MFx1YjA5OCwgXHViNjEwXHViMjk0IFx1YzcyMFx1ZDZhOFx1ZDU1YyBcdWM1ZWNcdWQ1ODlcdWM3NDQgXHViMDk4XHVkMGMwXHViMGI0XHVjOWMwIFx1YzU0YVx1YjI5NCBcdWM4MTVcdWMyMTggXHViYzMwXHVjNWY0XHVjNzQ0IFx1YjlhY1x1ZDEzNFx1ZDU1YyBcdWFjYmRcdWM2YjAgJDM1JSRcdWM3NTggXHVjODEwXHVjMjE4XHViOTdjIFx1YmMxYlx1YWNlMCw8XC9saT5cclxuXHQ8bGk+XHVhZGY4IFx1YzY3OFx1Yzc1OCBcdWFjYmRcdWM2YjAgJDAkXHVjODEwXHVjNzQ0IFx1YmMxYlx1YjI5NFx1YjJlNC48XC9saT5cclxuPFwvdWw+XHJcblxyXG48cD5cdWM3MjBcdWQ2YThcdWQ1NWMgXHVjNWVjXHVkNTg5XHVjNzc0IFx1Yzg3NFx1YzdhY1x1ZDU1OFx1YzljMCBcdWM1NGFcdWIyOTQgXHVhYzAxIFx1ZDE0Y1x1YzJhNFx1ZDJiOCBcdWNmMDBcdWM3NzRcdWMyYTRcdWM1ZDAgXHViMzAwXHVkNTc0LCBcdWIyZjlcdWMyZTBcdWM3NTggXHViMmY1XHVjNzQwOjxcL3A+XHJcblxyXG48dWw+XHJcblx0PGxpPjxjb2RlPmZhbHNlPFwvY29kZT5cdWI5N2MgXHViOWFjXHVkMTM0XHVkNTVjIFx1YWNiZFx1YzZiMCBcdWI5Y2NcdWM4MTBcdWM3NDQgXHViYzFiXHVhY2UwLDxcL2xpPlxyXG5cdDxsaT5cdWFkZjggXHVjNjc4XHVjNzU4IFx1YWNiZFx1YzZiMCAkMCRcdWM4MTBcdWM3NDQgXHViYzFiXHViMjk0XHViMmU0LjxcL2xpPlxyXG48XC91bD5cclxuXHJcbjxwPlx1Y2MzOFx1YWNlMFx1Yjg1YywgXHVhYzAxIFx1YzExY1x1YmUwY1x1ZDBkY1x1YzJhNFx1ZDA2Y1x1Yzc1OCBcdWNkNWNcdWM4ODUgXHVjODEwXHVjMjE4XHViMjk0IFx1YWRmOCBcdWMxMWNcdWJlMGNcdWQwZGNcdWMyYTRcdWQwNmNcdWM3NTggXHVkMTRjXHVjMmE0XHVkMmI4IFx1Y2YwMFx1Yzc3NFx1YzJhNFx1YjRlNFx1Yzc1OCBcdWNkNWNcdWMxOGMgXHVjODEwXHVjMjE4XHViODVjIFx1YzgxNVx1ZDU3NFx1YzljNFx1YjJlNC48XC9wPlxyXG4iLCJjdXN0b21fc2FtcGxlZ3JhZGVyIjoiPHA+XHVjMGQ4XHVkNTBjIFx1YWRmOFx1YjgwOFx1Yzc3NFx1YjM1NFx1Yzc1OCBcdWM3ODVcdWI4MjUgXHVkNjE1XHVjMmRkXHVjNzQwIFx1YjJlNFx1Yzc0Y1x1YWNmYyBcdWFjMTlcdWIyZTQ6PFwvcD5cclxuXHJcbjx1bD5cclxuXHQ8bGk+bGluZSAkMSQ6ICROIFxcLCBNJDxcL2xpPlxyXG5cdDxsaT5saW5lICQyICsgaSQgKCQwIFxcbGUgaSBcXGxlIE0gLSAxJCk6ICRVW2ldIFxcLCBWW2ldJDxcL2xpPlxyXG48XC91bD5cclxuXHJcbjxwPlx1YzBkOFx1ZDUwYyBcdWFkZjhcdWI4MDhcdWM3NzRcdWIzNTRcdWIyOTQgXHViMmU0XHVjNzRjIFx1ZDYxNVx1YzJkZFx1YzczY1x1Yjg1YyBcdWIyZjVcdWM3NDQgXHVjZDljXHViODI1XHVkNTVjXHViMmU0OjxcL3A+XHJcblxyXG48dWw+XHJcblx0PGxpPjxjb2RlPmZpbmRfam91cm5leTxcL2NvZGU+XHVhYzAwIDxjb2RlPmJvb2w8XC9jb2RlPlx1Yzc0NCBcdWI5YWNcdWQxMzRcdWQ1NWNcdWIyZTRcdWJhNzQ6XHJcblxyXG5cdDx1bD5cclxuXHRcdDxsaT5saW5lICQxJDogJDAkPFwvbGk+XHJcblx0XHQ8bGk+bGluZSAkMiQ6IDxjb2RlPmZpbmRfam91cm5leTxcL2NvZGU+XHVhYzAwIDxjb2RlPmZhbHNlPFwvY29kZT5cdWI5N2MgXHViOWFjXHVkMTM0XHVkNTVjIFx1YWNiZFx1YzZiMCAkMCQsIFx1YWRmOCBcdWM2NzhcdWM3NTggXHVhY2JkXHVjNmIwICQxJDxcL2xpPlxyXG5cdDxcL3VsPlxyXG5cdDxcL2xpPlxyXG5cdDxsaT48Y29kZT5maW5kX2pvdXJuZXk8XC9jb2RlPlx1YWMwMCA8Y29kZT5pbnRbXTxcL2NvZGU+XHViOTdjIFx1YjlhY1x1ZDEzNFx1ZDU1Y1x1YjJlNFx1YmE3NChcdWJjMzBcdWM1ZjRcdWM3NTggXHVjNmQwXHVjMThjXHViOTdjICRjWzBdLCBjWzFdLCBcXGxkb3RzIGNbay0xXSRcdWI4NWMgXHViNDUwXHViYTc0KTpcclxuXHQ8dWw+XHJcblx0XHQ8bGk+bGluZSAkMSQ6ICQxJDxcL2xpPlxyXG5cdFx0PGxpPmxpbmUgJDIkOiAkayQ8XC9saT5cclxuXHRcdDxsaT5saW5lICQzJDogJGNbMF0gXFwsIGNbMV0gXFwsIFxcbGRvdHMgXFwsIGNbay0xXSQ8XC9saT5cclxuXHQ8XC91bD5cclxuXHQ8XC9saT5cclxuPFwvdWw+XHJcbiIsImN1c3RvbV9hdHRhY2htZW50IjoiPHVsPlxyXG5cdDxsaT48YSBocmVmPVwiaHR0cHM6XC9cL3VwbG9hZC5hY21pY3BjLm5ldFwvMTYxYTVjMDMtZjIxNy00MzgyLWEzODktOTIzZTEwODMxMzhkXC9cIj5pc2xhbmRzLnppcDxcL2E+PFwvbGk+XHJcbjxcL3VsPlxyXG4ifSx7InByb2JsZW1faWQiOiIyNTQ0MyIsInByb2JsZW1fbGFuZyI6IjEiLCJ0aXRsZSI6IlRob3VzYW5kcyBJc2xhbmRzIiwiZGVzY3JpcHRpb24iOiI8cD5UaG91c2FuZHMgSXNsYW5kcyBpcyBhIGdyb3VwIG9mIGJlYXV0aWZ1bCBpc2xhbmRzIGxvY2F0ZWQgaW4gdGhlIEphdmEgU2VhLiBJdCBjb25zaXN0cyBvZiAkTiQgaXNsYW5kcywgbnVtYmVyZWQgZnJvbSAkMCQgdG8gJE4gLSAxJC48XC9wPlxyXG5cclxuPHA+VGhlcmUgYXJlICRNJCBjYW5vZXMsIG51bWJlcmVkIGZyb20gJDAkIHRvICRNIC0gMSQsIHRoYXQgY2FuIGJlIHVzZWQgdG8gc2FpbCBiZXR3ZWVuIGlzbGFuZHMuIEZvciBlYWNoICRpJCBzdWNoIHRoYXQgJDAgXFxsZSBpIFxcbGUgTSAtIDEkLCBjYW5vZSAkaSQgY2FuIGJlIGRvY2tlZCBlaXRoZXIgYXQgaXNsYW5kICRVW2ldJCBvciAkVltpXSQsIGFuZCBjYW4gYmUgdXNlZCB0byBzYWlsIGJldHdlZW4gaXNsYW5kcyAkVVtpXSQgYW5kICRWW2ldJC4gU3BlY2lmaWNhbGx5LCB3aGVuIHRoZSBjYW5vZSBpcyBkb2NrZWQgYXQgaXNsYW5kICRVW2ldJCwgaXQgY2FuIGJlIHVzZWQgdG8gc2FpbCBmcm9tIGlzbGFuZCAkVVtpXSQgdG8gaXNsYW5kICRWW2ldJCwgYWZ0ZXIgd2hpY2ggdGhlIGNhbm9lIGJlY29tZXMgZG9ja2VkIGF0IGlzbGFuZCAkVltpXSQuIFNpbWlsYXJseSwgd2hlbiB0aGUgY2Fub2UgaXMgZG9ja2VkIGF0IGlzbGFuZCAkVltpXSQsIGl0IGNhbiBiZSB1c2VkIHRvIHNhaWwgZnJvbSBpc2xhbmQgJFZbaV0kIHRvIGlzbGFuZCAkVVtpXSQsIGFmdGVyIHdoaWNoIHRoZSBjYW5vZSBiZWNvbWVzIGRvY2tlZCBhdCBpc2xhbmQgJFVbaV0kLiBJbml0aWFsbHksIHRoZSBjYW5vZSBpcyBkb2NrZWQgYXQgaXNsYW5kICRVW2ldJC4gSXQgaXMgcG9zc2libGUgdGhhdCBtdWx0aXBsZSBjYW5vZXMgY2FuIGJlIHVzZWQgdG8gc2FpbCBiZXR3ZWVuIHRoZSBzYW1lIHBhaXIgb2YgaXNsYW5kcy4gSXQgaXMgYWxzbyBwb3NzaWJsZSB0aGF0IG11bHRpcGxlIGNhbm9lcyBhcmUgZG9ja2VkIGF0IHRoZSBzYW1lIGlzbGFuZC48XC9wPlxyXG5cclxuPHA+Rm9yIHNhZmV0eSByZWFzb25zLCBhIGNhbm9lIG5lZWRzIHRvIGJlIG1haW50YWluZWQgYWZ0ZXIgZXZlcnkgdGltZSBpdCBpcyBzYWlsZWQsIHdoaWNoIGZvcmJpZHMgdGhlIHNhbWUgY2Fub2UgdG8gYmUgc2FpbGVkIHR3byB0aW1lcyBpbiBhIHJvdy4gVGhhdCBpcywgYWZ0ZXIgdXNpbmcgc29tZSBjYW5vZSAkaSQsIGFub3RoZXIgY2Fub2UgbXVzdCBiZSB1c2VkIGJlZm9yZSBjYW5vZSAkaSQgY2FuIGJlIHVzZWQgYWdhaW4uPFwvcD5cclxuXHJcbjxwPkJ1IERlbmdrbGVrIHdhbnRzIHRvIHBsYW4gYSBqb3VybmV5IHRocm91Z2ggc29tZSBvZiB0aGUgaXNsYW5kcy4gSGVyIGpvdXJuZXkgaXMmbmJzcDs8c3Ryb25nPnZhbGlkPFwvc3Ryb25nPiZuYnNwO2lmIGFuZCBvbmx5IGlmIHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucyBhcmUgc2F0aXNmaWVkLjxcL3A+XHJcblxyXG48dWw+XHJcblx0PGxpPlNoZSBzdGFydHMgYW5kIGVuZHMgaGVyIGpvdXJuZXkgYXQgaXNsYW5kICQwJC48XC9saT5cclxuXHQ8bGk+U2hlIHZpc2l0cyBhdCBsZWFzdCBvbmUgaXNsYW5kIG90aGVyIHRoYW4gaXNsYW5kICQwJC48XC9saT5cclxuXHQ8bGk+QWZ0ZXIgdGhlIGpvdXJuZXkgZW5kcywgZWFjaCBjYW5vZSBpcyBkb2NrZWQgYXQgdGhlIHNhbWUgaXNsYW5kIGFzIGl0IHdhcyBiZWZvcmUgdGhlIGpvdXJuZXkuIEkuZS4sIGNhbm9lICRpJCwgZm9yIGVhY2ggJGkkIHN1Y2ggdGhhdCAkMCBcXGxlIGkgXFxsZSBNIC0gMSQsIG11c3QgYmUgZG9ja2VkIGF0IGlzbGFuZCAkVVtpXSQuPFwvbGk+XHJcbjxcL3VsPlxyXG5cclxuPHA+SGVscCBCdSBEZW5na2xlayBmaW5kIGFueSB2YWxpZCBqb3VybmV5IGludm9sdmluZyBzYWlsaW5nIGF0IG1vc3QgJDJcXCwwMDBcXCwwMDAkIHRpbWVzLCBvciBkZXRlcm1pbmUgdGhhdCBubyBzdWNoIHZhbGlkIGpvdXJuZXkgZXhpc3RzLiBJdCBjYW4gYmUgcHJvdmVuIHRoYXQgdW5kZXIgdGhlIGNvbnN0cmFpbnRzIHNwZWNpZmllZCBpbiB0aGlzIHRhc2sgKHNlZSBDb25zdHJhaW50cyBzZWN0aW9uKSwgaWYgYSB2YWxpZCBqb3VybmV5IGV4aXN0cywgdGhlcmUgYWxzbyBleGlzdHMgYSB2YWxpZCBqb3VybmV5IHRoYXQgZG9lcyBub3QgaW52b2x2ZSBzYWlsaW5nIG1vcmUgdGhhbiAkMlxcLDAwMFxcLDAwMCQgdGltZXMuPFwvcD5cclxuIiwiaW5wdXQiOiIiLCJvdXRwdXQiOiIiLCJoaW50IjoiIiwib3JpZ2luYWwiOiIxIiwiaHRtbF90aXRsZSI6IjAiLCJwcm9ibGVtX2xhbmdfdGNvZGUiOiJFbmdsaXNoIiwibGltaXQiOiI8dWw+XHJcblx0PGxpPiQyIFxcbGUgTiBcXGxlIDEwMFxcLDAwMCQ8XC9saT5cclxuXHQ8bGk+JDEgXFxsZSBNIFxcbGUgMjAwXFwsMDAwJDxcL2xpPlxyXG5cdDxsaT4kMCBcXGxlIFVbaV0gXFxsZSBOIC0gMSQgYW5kICQwIFxcbGUgVltpXSBcXGxlIE4gLSAxJCAoZm9yIGVhY2ggJGkkIHN1Y2ggdGhhdCAkMCBcXGxlIGkgXFxsZSBNIC0gMSQpPFwvbGk+XHJcblx0PGxpPiRVW2ldIFxcbmVxIFZbaV0kIChmb3IgZWFjaCAkaSQgc3VjaCB0aGF0ICQwIFxcbGUgaSBcXGxlIE0gLSAxJCk8XC9saT5cclxuPFwvdWw+XHJcbiIsInN1YnRhc2sxIjoiPHA+JE4gPSAyJDxcL3A+XHJcbiIsInN1YnRhc2syIjoiPHA+JE4gXFxsZSA0MDAkLiBGb3IgZWFjaCBwYWlyIG9mIGRpc3RpbmN0IGlzbGFuZHMgJHgkIGFuZCAkeSQgKCQwIFxcbGUgeCBcXGx0IHkgXFxsZSBOIC0gMSQpLCB0aGVyZSBhcmUgZXhhY3RseSB0d28gY2Fub2VzIHRoYXQgY2FuIGJlIHVzZWQgdG8gc2FpbCBiZXR3ZWVuIHRoZW0uIE9uZSBvZiB0aGVtIGlzIGRvY2tlZCBhdCBpc2xhbmQgJHgkLCBhbmQgdGhlIG90aGVyIG9uZSBpcyBkb2NrZWQgYXQgaXNsYW5kICR5JC48XC9wPlxyXG4iLCJzdWJ0YXNrMyI6IjxwPiROIFxcbGUgMTAwMCQsICRNJCBpcyBldmVuLCBhbmQgZm9yIGVhY2gmbmJzcDs8c3Ryb25nPmV2ZW48XC9zdHJvbmc+Jm5ic3A7JGkkIHN1Y2ggdGhhdCAkMCBcXGxlIGkgXFxsZSBNIC0gMSQsIGNhbm9lcyAkaSQgYW5kICRpICsgMSQgY2FuIGJvdGggYmUgdXNlZCB0byBzYWlsIGJldHdlZW4gaXNsYW5kcyAkVVtpXSQgYW5kICRWW2ldJC4gQ2Fub2UgJGkkIGlzIGluaXRpYWxseSBkb2NrZWQgYXQgaXNsYW5kICRVW2ldJCBhbmQgY2Fub2UgJGkgKyAxJCBpcyBpbml0aWFsbHkgZG9ja2VkIGF0IGlzbGFuZCAkVltpXSQuIEZvcm1hbGx5LCAkVVtpXSA9IFZbaSArIDFdJCBhbmQgJFZbaV0gPSBVW2kgKyAxXSQuPFwvcD5cclxuIiwic3VidGFzazQiOiI8cD4kTiBcXGxlIDEwMDAkLCAkTSQgaXMgZXZlbiwgYW5kIGZvciBlYWNoJm5ic3A7PHN0cm9uZz5ldmVuPFwvc3Ryb25nPiZuYnNwOyRpJCBzdWNoIHRoYXQgJDAgXFxsZSBpIFxcbGUgTSAtIDEkLCBjYW5vZXMgJGkkIGFuZCAkaSArIDEkIGNhbiBib3RoIGJlIHVzZWQgdG8gc2FpbCBiZXR3ZWVuIGlzbGFuZHMgJFVbaV0kIGFuZCAkVltpXSQuIEJvdGggY2Fub2VzIGFyZSBpbml0aWFsbHkgZG9ja2VkIGF0IGlzbGFuZCAkVVtpXSQuIEZvcm1hbGx5LCAkVVtpXSA9IFVbaSArIDFdJCBhbmQgJFZbaV0gPSBWW2kgKyAxXSQuPFwvcD5cclxuIiwic3VidGFzazUiOiI8cD5ObyBhZGRpdGlvbmFsIGNvbnN0cmFpbnRzLjxcL3A+XHJcbiIsImN1c3RvbV9pbXBsZW1lbnRhdGlvbiI6IjxwPllvdSBzaG91bGQgaW1wbGVtZW50IHRoZSBmb2xsb3dpbmcgcHJvY2VkdXJlOjxcL3A+XHJcblxyXG48cHJlPlxyXG48Y29kZT51bmlvbihib29sLCBpbnRbXSkgZmluZF9qb3VybmV5KGludCBOLCBpbnQgTSwgaW50W10gVSwgaW50W10gVilcclxuPFwvY29kZT48XC9wcmU+XHJcblxyXG48dWw+XHJcblx0PGxpPiROJDogdGhlIG51bWJlciBvZiBpc2xhbmRzLjxcL2xpPlxyXG5cdDxsaT4kTSQ6IHRoZSBudW1iZXIgb2YgY2Fub2VzLjxcL2xpPlxyXG5cdDxsaT4kVSQsICRWJDogYXJyYXlzIG9mIGxlbmd0aCAkTSQgZGVzY3JpYmluZyB0aGUgY2Fub2VzLjxcL2xpPlxyXG5cdDxsaT5UaGlzIHByb2NlZHVyZSBzaG91bGQgcmV0dXJuIGVpdGhlciBhIGJvb2xlYW4gb3IgYW4gYXJyYXkgb2YgaW50ZWdlcnMuXHJcblx0PHVsPlxyXG5cdFx0PGxpPklmIG5vIHZhbGlkIGpvdXJuZXkgZXhpc3RzLCB0aGUgcHJvY2VkdXJlIHNob3VsZCByZXR1cm4gPGNvZGU+ZmFsc2U8XC9jb2RlPi48XC9saT5cclxuXHRcdDxsaT5JZiBhIHZhbGlkIGpvdXJuZXkgZXhpc3RzLCB5b3UgaGF2ZSB0d28gb3B0aW9uczpcclxuXHRcdDx1bD5cclxuXHRcdFx0PGxpPlRvIGJlIGF3YXJkZWQgdGhlIGZ1bGwgc2NvcmUsIHRoZSBwcm9jZWR1cmUgc2hvdWxkIHJldHVybiBhbiBhcnJheSBvZiBhdCBtb3N0ICQyXFwsMDAwXFwsMDAwJCBpbnRlZ2VycyByZXByZXNlbnRpbmcgYSB2YWxpZCBqb3VybmV5LiBNb3JlIHByZWNpc2VseSwgdGhlIGVsZW1lbnRzIG9mIHRoaXMgYXJyYXkgc2hvdWxkIGJlIHRoZSBudW1iZXJzIG9mIHRoZSBjYW5vZXMgdGhhdCBhcmUgdXNlZCBpbiB0aGUgam91cm5leSAoaW4gdGhlIG9yZGVyIHRoZXkgYXJlIHVzZWQpLjxcL2xpPlxyXG5cdFx0XHQ8bGk+VG8gYmUgYXdhcmRlZCBhIHBhcnRpYWwgc2NvcmUsIHRoZSBwcm9jZWR1cmUgc2hvdWxkIHJldHVybiA8Y29kZT50cnVlPFwvY29kZT4sIGFuIGFycmF5IG9mIG1vcmUgdGhhbiAkMlxcLDAwMFxcLDAwMCQgaW50ZWdlcnMsIG9yIGFuIGFycmF5IG9mIGludGVnZXJzIG5vdCBkZXNjcmliaW5nIGEgdmFsaWQgam91cm5leS4gKFNlZSB0aGUgU3VidGFza3Mgc2VjdGlvbiBmb3IgbW9yZSBkZXRhaWxzLik8XC9saT5cclxuXHRcdDxcL3VsPlxyXG5cdFx0PFwvbGk+XHJcblx0PFwvdWw+XHJcblx0PFwvbGk+XHJcblx0PGxpPlRoaXMgcHJvY2VkdXJlIGlzIGNhbGxlZCBleGFjdGx5IG9uY2UuPFwvbGk+XHJcbjxcL3VsPlxyXG4iLCJjdXN0b21fZXhhbXBsZSI6IjxwPkNvbnNpZGVyIHRoZSBmb2xsb3dpbmcgY2FsbDo8XC9wPlxyXG5cclxuPHByZT5cclxuPGNvZGU+ZmluZF9qb3VybmV5KDQsIDUsIFswLCAxLCAyLCAwLCAzXSwgWzEsIDIsIDMsIDMsIDFdKVxyXG48XC9jb2RlPjxcL3ByZT5cclxuXHJcbjxwPlRoZSBpc2xhbmRzIGFuZCBjYW5vZXMgYXJlIHNob3duIGluIHRoZSBwaWN0dXJlIGJlbG93LjxcL3A+XHJcblxyXG48cCBzdHlsZT1cInRleHQtYWxpZ246IGNlbnRlcjtcIj48aW1nIGFsdD1cIlwiIHNyYz1cImh0dHBzOlwvXC91cGxvYWQuYWNtaWNwYy5uZXRcLzFlMDM3YWVmLWQ5YjAtNDdjOC04OTUzLTY2NzhmZTUwOTA5ZFwvLVwvcHJldmlld1wvXCIgc3R5bGU9XCJ3aWR0aDogMjI3cHg7IGhlaWdodDogMjI0cHg7XCIgXC8+PFwvcD5cclxuXHJcbjxwPk9uZSBwb3NzaWJsZSB2YWxpZCBqb3VybmV5IGlzIGFzIGZvbGxvd3MuIEJ1IERlbmdrbGVrIGZpcnN0IHNhaWxzIGNhbm9lcyAkMCQsICQxJCwgJDIkLCBhbmQgJDQkIGluIHRoYXQgb3JkZXIuIEFzIGEgcmVzdWx0LCBzaGUgaXMgYXQgaXNsYW5kICQxJC4gQWZ0ZXIgdGhhdCwgQnUgRGVuZ2tsZWsgY2FuIHNhaWwgY2Fub2UgJDAkIGFnYWluIGFzIGl0IGlzIGN1cnJlbnRseSBkb2NrZWQgYXQgaXNsYW5kICQxJCBhbmQgdGhlIGxhc3QgY2Fub2Ugc2hlIHVzZWQgaXMgbm90IGNhbm9lICQwJC4gQWZ0ZXIgc2FpbGluZyBjYW5vZSAkMCQgYWdhaW4sIEJ1IERlbmdrbGVrIGlzIG5vdyBhdCBpc2xhbmQgJDAkLiBIb3dldmVyLCBjYW5vZXMgJDEkLCAkMiQgYW5kICQ0JCBhcmUgbm90IGRvY2tlZCBhdCB0aGUgc2FtZSBpc2xhbmRzIGFzIHRoZXkgd2VyZSBiZWZvcmUgdGhlIGpvdXJuZXkuIEJ1IERlbmdrbGVrIHRoZW4gY29udGludWVzIGhlciBqb3VybmV5IGJ5IHNhaWxpbmcgY2Fub2VzICQzJCwgJDIkLCAkMSQsICQ0JCwgYW5kICQzJCBhZ2Fpbi4gQnUgRGVuZ2tsZWsgaXMgYmFjayBhdCBpc2xhbmQgJDAkIGFuZCBhbGwgdGhlIGNhbm9lcyBhcmUgZG9ja2VkIGF0IHRoZSBzYW1lIGlzbGFuZHMgYXMgYmVmb3JlIHRoZSBqb3VybmV5LjxcL3A+XHJcblxyXG48cD5UaGVyZWZvcmUsIHRoZSByZXR1cm5lZCB2YWx1ZSAkWzAsIDEsIDIsIDQsIDAsIDMsIDIsIDEsIDQsIDNdJCByZXByZXNlbnRzIGEgdmFsaWQgam91cm5leS48XC9wPlxyXG4iLCJjdXN0b21fZXhhbXBsZTIiOiI8cD5Db25zaWRlciB0aGUgZm9sbG93aW5nIGNhbGw6PFwvcD5cclxuXHJcbjxwcmU+XHJcbjxjb2RlPmZpbmRfam91cm5leSgyLCAzLCBbMCwgMSwgMV0sIFsxLCAwLCAwXSlcclxuPFwvY29kZT48XC9wcmU+XHJcblxyXG48cD5UaGUgaXNsYW5kcyBhbmQgY2Fub2VzIGFyZSBzaG93biBpbiB0aGUgcGljdHVyZSBiZWxvdy48XC9wPlxyXG5cclxuPHAgc3R5bGU9XCJ0ZXh0LWFsaWduOiBjZW50ZXI7XCI+PGltZyBhbHQ9XCJcIiBzcmM9XCJodHRwczpcL1wvdXBsb2FkLmFjbWljcGMubmV0XC82N2JjOGMzMC0wNzEwLTQzNzctODVjOS0xNWExNmRkZDI2OTZcLy1cL3ByZXZpZXdcL1wiIHN0eWxlPVwid2lkdGg6IDI1MXB4OyBoZWlnaHQ6IDEwNHB4O1wiIFwvPjxcL3A+XHJcblxyXG48cD5CdSBEZW5na2xlayBjYW4gb25seSBzdGFydCBieSBzYWlsaW5nIGNhbm9lICQwJCwgYWZ0ZXIgd2hpY2ggc2hlIGNhbiBzYWlsIGVpdGhlciBjYW5vZSAkMSQgb3IgJDIkLiBOb3RlIHRoYXQgc2hlIGNhbm5vdCBzYWlsIGNhbm9lICQwJCB0d2ljZSBpbiBhIHJvdy4gSW4gYm90aCBjYXNlcywgQnUgRGVuZ2tsZWsgaXMgYmFjayBhdCBpc2xhbmQgJDAkLiBIb3dldmVyLCB0aGUgY2Fub2VzIGFyZSBub3QgZG9ja2VkIGF0IHRoZSBzYW1lIGlzbGFuZHMgYXMgdGhleSB3ZXJlIGJlZm9yZSB0aGUgam91cm5leSwgYW5kIEJ1IERlbmdrbGVrIGNhbm5vdCBzYWlsIGFueSBjYW5vZSBhZnRlcndhcmRzLCBhcyB0aGUgb25seSBjYW5vZSBkb2NrZWQgYXQgaXNsYW5kICQwJCBpcyB0aGUgb25lIHNoZSBoYXMganVzdCB1c2VkLiBBcyB0aGVyZSBpcyBubyB2YWxpZCBqb3VybmV5LCB0aGUgcHJvY2VkdXJlIHNob3VsZCByZXR1cm4gPGNvZGU+ZmFsc2U8XC9jb2RlPi48XC9wPlxyXG4iLCJjdXN0b21fc3VidGFza19zY29yaW5nX2EiOiI8cD5Gb3IgZWFjaCB0ZXN0IGNhc2UgaW4gd2hpY2ggYSB2YWxpZCBqb3VybmV5IGV4aXN0cywgeW91ciBzb2x1dGlvbjo8XC9wPlxyXG5cclxuPHVsPlxyXG5cdDxsaT5nZXRzIGZ1bGwgcG9pbnRzIGlmIGl0IHJldHVybnMgYSB2YWxpZCBqb3VybmV5LDxcL2xpPlxyXG5cdDxsaT5nZXRzICQzNSUkIG9mIHRoZSBwb2ludHMgaWYgaXQgcmV0dXJucyA8Y29kZT50cnVlPFwvY29kZT4sIGFuIGFycmF5IG9mIG1vcmUgdGhhbiAkMlxcLDAwMFxcLDAwMCQgaW50ZWdlcnMsIG9yIGFuIGFycmF5IHRoYXQgZG9lcyBub3QgZGVzY3JpYmUgYSB2YWxpZCBqb3VybmV5LDxcL2xpPlxyXG5cdDxsaT5nZXRzICQwJCBwb2ludHMgb3RoZXJ3aXNlLjxcL2xpPlxyXG48XC91bD5cclxuXHJcbjxwPkZvciBlYWNoIHRlc3QgY2FzZSBpbiB3aGljaCBhIHZhbGlkIGpvdXJuZXkgZG9lcyBub3QgZXhpc3QsIHlvdXIgc29sdXRpb246PFwvcD5cclxuXHJcbjx1bD5cclxuXHQ8bGk+Z2V0cyBmdWxsIHBvaW50cyBpZiBpdCByZXR1cm5zIDxjb2RlPmZhbHNlPFwvY29kZT4sPFwvbGk+XHJcblx0PGxpPmdldHMgJDAkIHBvaW50cyBvdGhlcndpc2UuPFwvbGk+XHJcbjxcL3VsPlxyXG5cclxuPHA+Tm90ZSB0aGF0IHRoZSBmaW5hbCBzY29yZSBmb3IgZWFjaCBzdWJ0YXNrIGlzIHRoZSBtaW5pbXVtIG9mIHRoZSBwb2ludHMgZm9yIHRoZSB0ZXN0IGNhc2VzIGluIHRoZSBzdWJ0YXNrLjxcL3A+XHJcbiIsImN1c3RvbV9zYW1wbGVncmFkZXIiOiI8cD5UaGUgc2FtcGxlIGdyYWRlciByZWFkcyB0aGUgaW5wdXQgaW4gdGhlIGZvbGxvd2luZyBmb3JtYXQ6PFwvcD5cclxuXHJcbjx1bD5cclxuXHQ8bGk+bGluZSAkMSQ6ICROIFxcLCBNJDxcL2xpPlxyXG5cdDxsaT5saW5lICQyICsgaSQgKCQwIFxcbGUgaSBcXGxlIE0gLSAxJCk6ICRVW2ldIFxcLCBWW2ldJDxcL2xpPlxyXG48XC91bD5cclxuXHJcbjxwPlRoZSBzYW1wbGUgZ3JhZGVyIHByaW50cyB5b3VyIGFuc3dlcnMgaW4gdGhlIGZvbGxvd2luZyBmb3JtYXQ6PFwvcD5cclxuXHJcbjx1bD5cclxuXHQ8bGk+SWYgPGNvZGU+ZmluZF9qb3VybmV5PFwvY29kZT4gcmV0dXJucyBhIDxjb2RlPmJvb2w8XC9jb2RlPjpcclxuXHJcblx0PHVsPlxyXG5cdFx0PGxpPmxpbmUgJDEkOiAkMCQ8XC9saT5cclxuXHRcdDxsaT5saW5lICQyJDogJDAkIGlmIDxjb2RlPmZpbmRfam91cm5leTxcL2NvZGU+IHJldHVybnMgPGNvZGU+ZmFsc2U8XC9jb2RlPiwgb3IgJDEkIG90aGVyd2lzZS48XC9saT5cclxuXHQ8XC91bD5cclxuXHQ8XC9saT5cclxuXHQ8bGk+SWYgPGNvZGU+ZmluZF9qb3VybmV5PFwvY29kZT4gcmV0dXJucyBhbiA8Y29kZT5pbnRbXTxcL2NvZGU+LCBkZW5vdGUgdGhlIGVsZW1lbnRzIG9mIHRoaXMgYXJyYXkgYnkgJGNbMF0sIGNbMV0sIFxcbGRvdHMgY1trLTFdJC4gVGhlIHNhbXBsZSBncmFkZXIgcHJpbnRzOlxyXG5cdDx1bD5cclxuXHRcdDxsaT5saW5lICQxJDogJDEkPFwvbGk+XHJcblx0XHQ8bGk+bGluZSAkMiQ6ICRrJDxcL2xpPlxyXG5cdFx0PGxpPmxpbmUgJDMkOiAkY1swXSBcXCwgY1sxXSBcXCwgXFxsZG90cyBcXCwgY1trLTFdJDxcL2xpPlxyXG5cdDxcL3VsPlxyXG5cdDxcL2xpPlxyXG48XC91bD5cclxuIiwiY3VzdG9tX2F0dGFjaG1lbnQiOiI8dWw+XHJcblx0PGxpPjxhIGhyZWY9XCJodHRwczpcL1wvdXBsb2FkLmFjbWljcGMubmV0XC8xNjFhNWMwMy1mMjE3LTQzODItYTM4OS05MjNlMTA4MzEzOGRcL1wiPmlzbGFuZHMuemlwPFwvYT48XC9saT5cclxuPFwvdWw+XHJcbiJ9XQ==

샘플 그레이더

샘플 그레이더의 입력 형식은 다음과 같다:

  • line 1ドル$: $N ,円 M$
  • line 2ドル + i$ (0ドル \le i \le M - 1$): $U[i] ,円 V[i]$

샘플 그레이더는 다음 형식으로 답을 출력한다:

  • find_journeybool을 리턴한다면:
    • line 1ドル$: 0ドル$
    • line 2ドル$: find_journeyfalse를 리턴한 경우 0ドル,ドル 그 외의 경우 1ドル$
  • find_journeyint[]를 리턴한다면(배열의 원소를 $c[0], c[1], \ldots c[k-1]$로 두면):
    • line 1ドル$: 1ドル$
    • line 2ドル$: $k$
    • line 3ドル$: $c[0] ,円 c[1] ,円 \ldots ,円 c[k-1]$

첨부

출처

Olympiad > International Olympiad in Informatics > IOI 2022 > Day 2 6번

  • 문제를 만든 사람: Félix Moreno Peñarrubia

제출할 수 있는 언어

C++17, C++20, C++17 (Clang), C++20 (Clang)

채점 및 기타 정보

  • 예제는 채점하지 않는다.
  • 이 문제의 채점 우선 순위는 2이다.
(追記) (追記ここまで)

출처

대학교 대회

  • 사업자 등록 번호: 541-88-00682
  • 대표자명: 최백준
  • 주소: 서울시 서초구 서초대로74길 29 서초파라곤 412호
  • 전화번호: 02-521-0487 (이메일로 연락 주세요)
  • 이메일: contacts@startlink.io
  • 통신판매신고번호: 제 2017-서울서초-2193 호

AltStyle によって変換されたページ (->オリジナル) /