시간 제한 메모리 제한 제출 정답 맞은 사람 정답 비율
6 초 512 MB 29 9 8 44.444%

문제

IOI 왕국에서 0 이상 N−1 이하의 번호가 붙은 N개의 도시들이 있습니다. 이들 도시들은 양방향으로 통행이 가능한 N−1개의 도로로 연결되어 있습니다. 여러분은 이러한 도로들을 몇 개 통과하여 어떤 서로 다른 두 다시 사이도 이동할 수 있습니다.

IOI 왕국에는 특별한 제품들을 생산하는 많은 회사들이 있습니다. 각 회사는 단 한 종류의 제품만 생산하며, 어떤 두 회사도
같은 종류의 제품을 생산하지 않습니다. 각 도시는 한 개 이상의 공장을 가지고 있습니다. 각 공장은 도시들 중 하나에 지어져 있습니다. 같은 도시에 두 개 이상의 회사가 공장을 가지고 있을 수도 있습니다.

가끔 어떤 회사는 또다른 회사의 제품이 필요할 때가 있습니다. 회사 CA가 회사 CB의 제품이 필요하다고 가정해 봅시다. (CA≠CB) 이 경우, 그들은 CB에서 CA로 제품을 운반해야 합니다. 이를 위해 회사 CB의 아무 공장에서 회사 CA의 아무 공장으로 제품을 운반하면 됩니다. 그들은 공장들 사이의 거리를 최소화하기 위하여 공장들을 적절히 선택해야 합니다.

우선, 도시들의 수와 IOI 왕국의 도로의 정보가 주어집니다. 그 다음, Q개의 질의가 주어집니다. 각 질의는 다음과 같은 형태로 주어집니다: Xj,0,⋯,Xj,Sj−1번 도시들에 공장을 가지고 있는 회사 Uj는 Yj,0,⋯,Yj,Tj−1번 도시들에 공장을 가지고 있는 회사 Vj의 제품이 필요합니다. 각 질의마다, 제품을 운반하기 위해 필요한 최소 거리를 반환하는 프로그램을 작성하세요.

입력

첫 번째 줄에 두 개의 정수 N과 Q가 공백을 사이로 두고 주어집니다. 이는 IOI 왕국에 N개의 도시가 있고, 여러분의 프로그램에게 Q개의 질의가 주어진다는 것을 의미합니다.

다음 (N−1)개의 줄 중 (i+1)번째 줄 (0 ≤ i ≤ N−2)에는 세 개의 정수 Ai, Bi, Di가 공백을 사이로 두고 주어집니다. 이것은 도시 Ai와 도시 Bi를 잇는 길이가 Di인 도로가 있다는 것을 의미합니다.

다음 3Q개 줄 중에서 j번째 질의의 정보는 (3j+1)번째 줄부터 (3j+3)번째 줄까지 (0 ≤ j ≤ Q−1) 주어집니다.

(3j+1)번째 줄 (0 ≤ j ≤ Q−1)에는 두 개의 정수 Sj와 Tj가 공백을 사이로 두고 주어집니다. 이것은 회사 Uj와 회사 Vj 각각 Sj개와 Tj개의 도시에 공장을 두고 있다는 것을 의미합니다.

(3j+2)번째 줄 (0 ≤ j ≤ Q−1)에는 Sj개의 정수 Xj,0,⋯,Xj,Sj−1이 공백을 사이로 두고 주어집니다. 이것은 회사 Uj가 도시 Xj,0,⋯,Xj,Sj−1에 공장을 두고 있다는 것을 의미합니다.

(3j+3)번째 줄 (0 ≤ j ≤ Q−1)에는 Tj개의 정수 Yj,0,⋯,Yj,Tj−1이 공백을 사이로 두고 주어집니다. 이것은 회사 Vj가 도시 Yj,0,⋯,Yj,Tj−1에 공장을 두고 있다는 것을 의미합니다.

모든 입력 데이터는 다음 조건을 만족합니다.

  • 2 ≤ N ≤ 500 000.
  • 1 ≤ Q ≤ 100 000.
  • 0 ≤ Ai ≤ N − 1 (0 ≤ i ≤ N − 2).
  • 0 ≤ Bi ≤ N − 1 (0 ≤ i ≤ N − 2).
  • 1 ≤ Di ≤ 100 000 000 (0 ≤ i ≤ N − 2).
  • Ai ≠ Bi (1 ≤ i ≤ N − 2).
  • 여러분은 도로들을 통해 한 도시에서 다른 모든 도시로 이동할 수 있습니다.
  • 1 ≤ Sj ≤ N − 1 (0 ≤ j ≤ Q − 1).
  • 0 ≤ Xj,k ≤ N − 1 (0 ≤ j ≤ Q − 1, 0 ≤ k ≤ Sj − 1).
  • 1 ≤ Tj ≤ N − 1 (0 ≤ j ≤ Q − 1).
  • 0 ≤ Yj,k ≤ N − 1 (0 ≤ j ≤ Q − 1, 0 ≤ k ≤ Tj − 1).
  • Xj,0, Xj,1, . . . , Xj,Sj−1, Yj,0, Yj,1, . . . , Yj,Tj−1 은 서로 다릅니다 (0 ≤ j ≤ Q − 1).
  • S0 + S1 + · · · + SQ−1 ≤ 1 000 000.
  • T0 + T1 + · · · + TQ−1 ≤ 1 000 000.

출력

각각의 질의에 대한 답을 한 줄에 하나씩 차례대로 출력합니다

예제 입력 1

7 3
0 1 4
1 2 4
2 3 5
2 4 6
4 5 5
1 6 3
2 2
0 6
3 4
3 2
0 1 3
4 6
1 1
2
5

예제 출력 1

12
3
11

힌트

  • 0번 질의에서, 회사 U0는 0번, 6번 도시에 공장을 두었고, 회사 V0는 3번, 4번 도시에 공장을 두었습니다. 3번 도시에 있는 V0의 공장에서부터 6번 도시에 있는 U0의 공장까지의 거리가 최소입니다. 최소 거리는 12입니다.
  • 1번 질의에서, 회사 U1는 0번, 1번, 3번 도시에 공장을 두었고, 회사 V1는 4번, 6번 도시에 공장을 두었습니다. 6번 도시에 있는 V1의 공장에서부터 1번 도시에 있는 U1의 공장까지의 거리가 최소입니다. 최소 거리는 3입니다.
  • 2번 질의에서, 회사 U2는 2번 도시에 공장을 두었고, 회사 V2는 5번 도시에 공장을 두었습니다. 5번 도시에 있는 V2의 공장에서부터 2번 도시에 있는 U2의 공장까지의 거리가 최소입니다. 최소 거리는 11입니다.
W3sicHJvYmxlbV9pZCI6IjExOTMzIiwicHJvYmxlbV9sYW5nIjoiMCIsInRpdGxlIjoiXHVhY2Y1XHVjN2E1XHViNGU0IiwiZGVzY3JpcHRpb24iOiI8cD5JT0kgXHVjNjU1XHVhZDZkXHVjNWQwXHVjMTFjIDAgXHVjNzc0XHVjMGMxIE4mbWludXM7MSBcdWM3NzRcdWQ1NThcdWM3NTggXHViYzg4XHVkNjM4XHVhYzAwIFx1YmQ5OVx1Yzc0MCBOXHVhYzFjXHVjNzU4IFx1YjNjNFx1YzJkY1x1YjRlNFx1Yzc3NCBcdWM3ODhcdWMyYjVcdWIyYzhcdWIyZTQuIFx1Yzc3NFx1YjRlNCBcdWIzYzRcdWMyZGNcdWI0ZTRcdWM3NDAgXHVjNTkxXHViYzI5XHVkNWE1XHVjNzNjXHViODVjIFx1ZDFiNVx1ZDU4OVx1Yzc3NCBcdWFjMDBcdWIyYTVcdWQ1NWMgTiZtaW51czsxXHVhYzFjXHVjNzU4IFx1YjNjNFx1Yjg1Y1x1Yjg1YyBcdWM1ZjBcdWFjYjBcdWI0MThcdWM1YjQgXHVjNzg4XHVjMmI1XHViMmM4XHViMmU0LiBcdWM1ZWNcdWI3ZWNcdWJkODRcdWM3NDAgXHVjNzc0XHViN2VjXHVkNTVjIFx1YjNjNFx1Yjg1Y1x1YjRlNFx1Yzc0NCBcdWJhODcgXHVhYzFjIFx1ZDFiNVx1YWNmY1x1ZDU1OFx1YzVlYyBcdWM1YjRcdWI1YTQgXHVjMTFjXHViODVjIFx1YjJlNFx1Yjk3OCBcdWI0NTAgXHViMmU0XHVjMmRjIFx1YzBhY1x1Yzc3NFx1YjNjNCBcdWM3NzRcdWIzZDlcdWQ1NjAgXHVjMjE4IFx1Yzc4OFx1YzJiNVx1YjJjOFx1YjJlNC48XC9wPlxyXG5cclxuPHA+SU9JIFx1YzY1NVx1YWQ2ZFx1YzVkMFx1YjI5NCBcdWQyYjlcdWJjYzRcdWQ1NWMgXHVjODFjXHVkNDg4XHViNGU0XHVjNzQ0IFx1YzBkZFx1YzBiMFx1ZDU1OFx1YjI5NCBcdWI5Y2VcdWM3NDAgXHVkNjhjXHVjMGFjXHViNGU0XHVjNzc0IFx1Yzc4OFx1YzJiNVx1YjJjOFx1YjJlNC4gXHVhYzAxIFx1ZDY4Y1x1YzBhY1x1YjI5NCBcdWIyZTggXHVkNTVjIFx1Yzg4NVx1Yjk1OFx1Yzc1OCBcdWM4MWNcdWQ0ODhcdWI5Y2MgXHVjMGRkXHVjMGIwXHVkNTU4XHViYTcwLCBcdWM1YjRcdWI1YTQgXHViNDUwIFx1ZDY4Y1x1YzBhY1x1YjNjNDxiciBcLz5cclxuXHVhYzE5XHVjNzQwIFx1Yzg4NVx1Yjk1OFx1Yzc1OCBcdWM4MWNcdWQ0ODhcdWM3NDQgXHVjMGRkXHVjMGIwXHVkNTU4XHVjOWMwIFx1YzU0YVx1YzJiNVx1YjJjOFx1YjJlNC4gXHVhYzAxIFx1YjNjNFx1YzJkY1x1YjI5NCBcdWQ1NWMgXHVhYzFjIFx1Yzc3NFx1YzBjMVx1Yzc1OCBcdWFjZjVcdWM3YTVcdWM3NDQgXHVhYzAwXHVjOWMwXHVhY2UwIFx1Yzc4OFx1YzJiNVx1YjJjOFx1YjJlNC4gXHVhYzAxIFx1YWNmNVx1YzdhNVx1Yzc0MCBcdWIzYzRcdWMyZGNcdWI0ZTQgXHVjOTExIFx1ZDU1OFx1YjA5OFx1YzVkMCBcdWM5YzBcdWM1YjRcdWM4MzggXHVjNzg4XHVjMmI1XHViMmM4XHViMmU0LiBcdWFjMTlcdWM3NDAgXHViM2M0XHVjMmRjXHVjNWQwIFx1YjQ1MCBcdWFjMWMgXHVjNzc0XHVjMGMxXHVjNzU4IFx1ZDY4Y1x1YzBhY1x1YWMwMCBcdWFjZjVcdWM3YTVcdWM3NDQgXHVhYzAwXHVjOWMwXHVhY2UwIFx1Yzc4OFx1Yzc0NCBcdWMyMThcdWIzYzQgXHVjNzg4XHVjMmI1XHViMmM4XHViMmU0LjxcL3A+XHJcblxyXG48cD5cdWFjMDBcdWIwNTQgXHVjNWI0XHViNWE0IFx1ZDY4Y1x1YzBhY1x1YjI5NCBcdWI2MTBcdWIyZTRcdWI5NzggXHVkNjhjXHVjMGFjXHVjNzU4IFx1YzgxY1x1ZDQ4OFx1Yzc3NCBcdWQ1NDRcdWM2OTRcdWQ1NjAgXHViNTRjXHVhYzAwIFx1Yzc4OFx1YzJiNVx1YjJjOFx1YjJlNC4gXHVkNjhjXHVjMGFjIEM8c3ViPkE8XC9zdWI+XHVhYzAwIFx1ZDY4Y1x1YzBhYyBDPHN1Yj5CPFwvc3ViPlx1Yzc1OCBcdWM4MWNcdWQ0ODhcdWM3NzQgXHVkNTQ0XHVjNjk0XHVkNTU4XHViMmU0XHVhY2UwIFx1YWMwMFx1YzgxNVx1ZDU3NCBcdWJkMDVcdWMyZGNcdWIyZTQuIChDPHN1Yj5BPFwvc3ViPiZuZTtDPHN1Yj5CPFwvc3ViPikgXHVjNzc0IFx1YWNiZFx1YzZiMCwgXHVhZGY4XHViNGU0XHVjNzQwIEM8c3ViPkI8XC9zdWI+XHVjNWQwXHVjMTFjIEM8c3ViPkE8XC9zdWI+XHViODVjIFx1YzgxY1x1ZDQ4OFx1Yzc0NCBcdWM2YjRcdWJjMThcdWQ1NzRcdWM1N2MgXHVkNTY5XHViMmM4XHViMmU0LiBcdWM3NzRcdWI5N2MgXHVjNzA0XHVkNTc0IFx1ZDY4Y1x1YzBhYyBDPHN1Yj5CPFwvc3ViPlx1Yzc1OCBcdWM1NDRcdWJiMzQgXHVhY2Y1XHVjN2E1XHVjNWQwXHVjMTFjIFx1ZDY4Y1x1YzBhYyBDPHN1Yj5BPFwvc3ViPlx1Yzc1OCBcdWM1NDRcdWJiMzQgXHVhY2Y1XHVjN2E1XHVjNzNjXHViODVjIFx1YzgxY1x1ZDQ4OFx1Yzc0NCBcdWM2YjRcdWJjMThcdWQ1NThcdWJhNzQgXHViNDI5XHViMmM4XHViMmU0LiBcdWFkZjhcdWI0ZTRcdWM3NDAgXHVhY2Y1XHVjN2E1XHViNGU0IFx1YzBhY1x1Yzc3NFx1Yzc1OCBcdWFjNzBcdWI5YWNcdWI5N2MgXHVjZDVjXHVjMThjXHVkNjU0XHVkNTU4XHVhZTMwIFx1YzcwNFx1ZDU1OFx1YzVlYyBcdWFjZjVcdWM3YTVcdWI0ZTRcdWM3NDQgXHVjODAxXHVjODA4XHVkNzg4IFx1YzEyMFx1ZDBkZFx1ZDU3NFx1YzU3YyBcdWQ1NjlcdWIyYzhcdWIyZTQuPFwvcD5cclxuXHJcbjxwPlx1YzZiMFx1YzEyMCwgXHViM2M0XHVjMmRjXHViNGU0XHVjNzU4IFx1YzIxOFx1YzY0MCBJT0kgXHVjNjU1XHVhZDZkXHVjNzU4IFx1YjNjNFx1Yjg1Y1x1Yzc1OCBcdWM4MTVcdWJjZjRcdWFjMDAgXHVjOGZjXHVjNWI0XHVjOWQxXHViMmM4XHViMmU0LiBcdWFkZjggXHViMmU0XHVjNzRjLCBRXHVhYzFjXHVjNzU4IFx1YzljOFx1Yzc1OFx1YWMwMCBcdWM4ZmNcdWM1YjRcdWM5ZDFcdWIyYzhcdWIyZTQuIFx1YWMwMSBcdWM5YzhcdWM3NThcdWIyOTQgXHViMmU0XHVjNzRjXHVhY2ZjIFx1YWMxOVx1Yzc0MCBcdWQ2MTVcdWQwZGNcdWI4NWMgXHVjOGZjXHVjNWI0XHVjOWQxXHViMmM4XHViMmU0OiBYPHN1Yj5qLDA8XC9zdWI+LFx1MjJlZixYPHN1Yj5qLFNqJm1pbnVzOzE8XC9zdWI+XHViYzg4IFx1YjNjNFx1YzJkY1x1YjRlNFx1YzVkMCBcdWFjZjVcdWM3YTVcdWM3NDQgXHVhYzAwXHVjOWMwXHVhY2UwIFx1Yzc4OFx1YjI5NCBcdWQ2OGNcdWMwYWMgVTxzdWI+ajxcL3N1Yj5cdWIyOTQgWTxzdWI+aiwwPFwvc3ViPixcdTIyZWYsWTxzdWI+aixUaiZtaW51czsxPFwvc3ViPlx1YmM4OCBcdWIzYzRcdWMyZGNcdWI0ZTRcdWM1ZDAgXHVhY2Y1XHVjN2E1XHVjNzQ0IFx1YWMwMFx1YzljMFx1YWNlMCBcdWM3ODhcdWIyOTQgXHVkNjhjXHVjMGFjIFY8c3ViPmo8XC9zdWI+XHVjNzU4IFx1YzgxY1x1ZDQ4OFx1Yzc3NCBcdWQ1NDRcdWM2OTRcdWQ1NjlcdWIyYzhcdWIyZTQuIFx1YWMwMSBcdWM5YzhcdWM3NThcdWI5YzhcdWIyZTQsIFx1YzgxY1x1ZDQ4OFx1Yzc0NCBcdWM2YjRcdWJjMThcdWQ1NThcdWFlMzAgXHVjNzA0XHVkNTc0IFx1ZDU0NFx1YzY5NFx1ZDU1YyBcdWNkNWNcdWMxOGMgXHVhYzcwXHViOWFjXHViOTdjIFx1YmMxOFx1ZDY1OFx1ZDU1OFx1YjI5NCBcdWQ1MDRcdWI4NWNcdWFkZjhcdWI3YThcdWM3NDQgXHVjNzkxXHVjMTMxXHVkNTU4XHVjMTM4XHVjNjk0LjxcL3A+XHJcbiIsImlucHV0IjoiPHA+XHVjY2FiIFx1YmM4OFx1YzlmOCBcdWM5MDRcdWM1ZDAgXHViNDUwIFx1YWMxY1x1Yzc1OCBcdWM4MTVcdWMyMTggTlx1YWNmYyBRXHVhYzAwIFx1YWNmNVx1YmMzMVx1Yzc0NCBcdWMwYWNcdWM3NzRcdWI4NWMgXHViNDUwXHVhY2UwIFx1YzhmY1x1YzViNFx1YzlkMVx1YjJjOFx1YjJlNC4gXHVjNzc0XHViMjk0IElPSSBcdWM2NTVcdWFkNmRcdWM1ZDAgTlx1YWMxY1x1Yzc1OCBcdWIzYzRcdWMyZGNcdWFjMDAgXHVjNzg4XHVhY2UwLCBcdWM1ZWNcdWI3ZWNcdWJkODRcdWM3NTggXHVkNTA0XHViODVjXHVhZGY4XHViN2E4XHVjNWQwXHVhYzhjIFFcdWFjMWNcdWM3NTggXHVjOWM4XHVjNzU4XHVhYzAwIFx1YzhmY1x1YzViNFx1YzljNFx1YjJlNFx1YjI5NCBcdWFjODNcdWM3NDQgXHVjNzU4XHViYmY4XHVkNTY5XHViMmM4XHViMmU0LjxcL3A+XHJcblxyXG48cD5cdWIyZTRcdWM3NGMgKE4mbWludXM7MSlcdWFjMWNcdWM3NTggXHVjOTA0IFx1YzkxMSAoaSsxKVx1YmM4OFx1YzlmOCBcdWM5MDQgKDAgJmxlOyBpICZsZTsgTiZtaW51czsyKVx1YzVkMFx1YjI5NCBcdWMxMzggXHVhYzFjXHVjNzU4IFx1YzgxNVx1YzIxOCBBPHN1Yj5pPFwvc3ViPiwgQjxzdWI+aTxcL3N1Yj4sIEQ8c3ViPmk8XC9zdWI+XHVhYzAwIFx1YWNmNVx1YmMzMVx1Yzc0NCBcdWMwYWNcdWM3NzRcdWI4NWMgXHViNDUwXHVhY2UwIFx1YzhmY1x1YzViNFx1YzlkMVx1YjJjOFx1YjJlNC4gXHVjNzc0XHVhYzgzXHVjNzQwIFx1YjNjNFx1YzJkYyBBPHN1Yj5pPFwvc3ViPlx1YzY0MCBcdWIzYzRcdWMyZGMgQjxzdWI+aTxcL3N1Yj5cdWI5N2MgXHVjNzg3XHViMjk0IFx1YWUzOFx1Yzc3NFx1YWMwMCBEPHN1Yj5pPFwvc3ViPlx1Yzc3OCBcdWIzYzRcdWI4NWNcdWFjMDAgXHVjNzg4XHViMmU0XHViMjk0IFx1YWM4M1x1Yzc0NCBcdWM3NThcdWJiZjhcdWQ1NjlcdWIyYzhcdWIyZTQuPFwvcD5cclxuXHJcbjxwPlx1YjJlNFx1Yzc0YyAzUVx1YWMxYyBcdWM5MDQgXHVjOTExXHVjNWQwXHVjMTFjIGpcdWJjODhcdWM5ZjggXHVjOWM4XHVjNzU4XHVjNzU4IFx1YzgxNVx1YmNmNFx1YjI5NCAoM2orMSlcdWJjODhcdWM5ZjggXHVjOTA0XHViZDgwXHVkMTMwICgzaiszKVx1YmM4OFx1YzlmOCBcdWM5MDRcdWFlNGNcdWM5YzAgKDAgJmxlOyBqICZsZTsgUSZtaW51czsxKSBcdWM4ZmNcdWM1YjRcdWM5ZDFcdWIyYzhcdWIyZTQuPFwvcD5cclxuXHJcbjxwPigzaisxKVx1YmM4OFx1YzlmOCBcdWM5MDQgKDAgJmxlOyBqICZsZTsgUSZtaW51czsxKVx1YzVkMFx1YjI5NCBcdWI0NTAgXHVhYzFjXHVjNzU4IFx1YzgxNVx1YzIxOCBTPHN1Yj5qPFwvc3ViPlx1YzY0MCBUPHN1Yj5qPFwvc3ViPlx1YWMwMCBcdWFjZjVcdWJjMzFcdWM3NDQgXHVjMGFjXHVjNzc0XHViODVjIFx1YjQ1MFx1YWNlMCBcdWM4ZmNcdWM1YjRcdWM5ZDFcdWIyYzhcdWIyZTQuIFx1Yzc3NFx1YWM4M1x1Yzc0MCBcdWQ2OGNcdWMwYWMgVTxzdWI+ajxcL3N1Yj5cdWM2NDAgXHVkNjhjXHVjMGFjIFY8c3ViPmo8XC9zdWI+IFx1YWMwMVx1YWMwMSBTPHN1Yj5qPFwvc3ViPlx1YWMxY1x1YzY0MCBUPHN1Yj5qPFwvc3ViPlx1YWMxY1x1Yzc1OCBcdWIzYzRcdWMyZGNcdWM1ZDAgXHVhY2Y1XHVjN2E1XHVjNzQ0IFx1YjQ1MFx1YWNlMCBcdWM3ODhcdWIyZTRcdWIyOTQgXHVhYzgzXHVjNzQ0IFx1Yzc1OFx1YmJmOFx1ZDU2OVx1YjJjOFx1YjJlNC48XC9wPlxyXG5cclxuPHA+KDNqKzIpXHViYzg4XHVjOWY4IFx1YzkwNCAoMCAmbGU7IGogJmxlOyBRJm1pbnVzOzEpXHVjNWQwXHViMjk0IFNqXHVhYzFjXHVjNzU4IFx1YzgxNVx1YzIxOCBYPHN1Yj5qLDA8XC9zdWI+LFx1MjJlZixYPHN1Yj5qLFNqJm1pbnVzOzE8XC9zdWI+XHVjNzc0IFx1YWNmNVx1YmMzMVx1Yzc0NCBcdWMwYWNcdWM3NzRcdWI4NWMgXHViNDUwXHVhY2UwIFx1YzhmY1x1YzViNFx1YzlkMVx1YjJjOFx1YjJlNC4gXHVjNzc0XHVhYzgzXHVjNzQwIFx1ZDY4Y1x1YzBhYyBValx1YWMwMCBcdWIzYzRcdWMyZGMgWDxzdWI+aiwwPFwvc3ViPixcdTIyZWYsWDxzdWI+aixTaiZtaW51czsxPFwvc3ViPlx1YzVkMCBcdWFjZjVcdWM3YTVcdWM3NDQgXHViNDUwXHVhY2UwIFx1Yzc4OFx1YjJlNFx1YjI5NCBcdWFjODNcdWM3NDQgXHVjNzU4XHViYmY4XHVkNTY5XHViMmM4XHViMmU0LjxcL3A+XHJcblxyXG48cD4oM2orMylcdWJjODhcdWM5ZjggXHVjOTA0ICgwICZsZTsgaiAmbGU7IFEmbWludXM7MSlcdWM1ZDBcdWIyOTQgVDxzdWI+ajxcL3N1Yj5cdWFjMWNcdWM3NTggXHVjODE1XHVjMjE4IFk8c3ViPmosMDxcL3N1Yj4sXHUyMmVmLFk8c3ViPmosVGombWludXM7MTxcL3N1Yj5cdWM3NzQgXHVhY2Y1XHViYzMxXHVjNzQ0IFx1YzBhY1x1Yzc3NFx1Yjg1YyBcdWI0NTBcdWFjZTAgXHVjOGZjXHVjNWI0XHVjOWQxXHViMmM4XHViMmU0LiBcdWM3NzRcdWFjODNcdWM3NDAgXHVkNjhjXHVjMGFjIFY8c3ViPmo8XC9zdWI+XHVhYzAwIFx1YjNjNFx1YzJkYyBZPHN1Yj5qLDA8XC9zdWI+LFx1MjJlZixZPHN1Yj5qLFRqJm1pbnVzOzE8XC9zdWI+XHVjNWQwIFx1YWNmNVx1YzdhNVx1Yzc0NCBcdWI0NTBcdWFjZTAgXHVjNzg4XHViMmU0XHViMjk0IFx1YWM4M1x1Yzc0NCBcdWM3NThcdWJiZjhcdWQ1NjlcdWIyYzhcdWIyZTQuPFwvcD5cclxuXHJcbjxwPlx1YmFhOFx1YjRlMCBcdWM3ODVcdWI4MjUgXHViMzcwXHVjNzc0XHVkMTMwXHViMjk0IFx1YjJlNFx1Yzc0YyBcdWM4NzBcdWFjNzRcdWM3NDQgXHViOWNjXHVjODcxXHVkNTY5XHViMmM4XHViMmU0LjxcL3A+XHJcblxyXG48dWw+XHJcblx0PGxpPjIgJmxlOyBOICZsZTsgNTAwIDAwMC48XC9saT5cclxuXHQ8bGk+MSAmbGU7IFEgJmxlOyAxMDAgMDAwLjxcL2xpPlxyXG5cdDxsaT4wICZsZTsgQTxzdWI+aTxcL3N1Yj4gJmxlOyBOICZtaW51czsgMSAoMCAmbGU7IGkgJmxlOyBOICZtaW51czsgMikuPFwvbGk+XHJcblx0PGxpPjAgJmxlOyBCPHN1Yj5pPFwvc3ViPiAmbGU7IE4gJm1pbnVzOyAxICgwICZsZTsgaSAmbGU7IE4gJm1pbnVzOyAyKS48XC9saT5cclxuXHQ8bGk+MSAmbGU7IEQ8c3ViPmk8XC9zdWI+ICZsZTsgMTAwIDAwMCAwMDAgKDAgJmxlOyBpICZsZTsgTiAmbWludXM7IDIpLjxcL2xpPlxyXG5cdDxsaT5BPHN1Yj5pPFwvc3ViPiAmbmU7IEI8c3ViPmk8XC9zdWI+ICgxICZsZTsgaSAmbGU7IE4gJm1pbnVzOyAyKS48XC9saT5cclxuXHQ8bGk+XHVjNWVjXHViN2VjXHViZDg0XHVjNzQwIFx1YjNjNFx1Yjg1Y1x1YjRlNFx1Yzc0NCBcdWQxYjVcdWQ1NzQgXHVkNTVjIFx1YjNjNFx1YzJkY1x1YzVkMFx1YzExYyBcdWIyZTRcdWI5NzggXHViYWE4XHViNGUwIFx1YjNjNFx1YzJkY1x1Yjg1YyBcdWM3NzRcdWIzZDlcdWQ1NjAgXHVjMjE4IFx1Yzc4OFx1YzJiNVx1YjJjOFx1YjJlNC48XC9saT5cclxuXHQ8bGk+MSAmbGU7IFM8c3ViPmo8XC9zdWI+ICZsZTsgTiAmbWludXM7IDEgKDAgJmxlOyBqICZsZTsgUSAmbWludXM7IDEpLjxcL2xpPlxyXG5cdDxsaT4wICZsZTsgWDxzdWI+aixrPFwvc3ViPiAmbGU7IE4gJm1pbnVzOyAxICgwICZsZTsgaiAmbGU7IFEgJm1pbnVzOyAxLCAwICZsZTsgayAmbGU7IFM8c3ViPmo8XC9zdWI+ICZtaW51czsgMSkuPFwvbGk+XHJcblx0PGxpPjEgJmxlOyBUPHN1Yj5qPFwvc3ViPiAmbGU7IE4gJm1pbnVzOyAxICgwICZsZTsgaiAmbGU7IFEgJm1pbnVzOyAxKS48XC9saT5cclxuXHQ8bGk+MCAmbGU7IFk8c3ViPmosazxcL3N1Yj4gJmxlOyBOICZtaW51czsgMSAoMCAmbGU7IGogJmxlOyBRICZtaW51czsgMSwgMCAmbGU7IGsgJmxlOyBUaiAmbWludXM7IDEpLjxcL2xpPlxyXG5cdDxsaT5YPHN1Yj5qLDA8XC9zdWI+LCBYPHN1Yj5qLDE8XC9zdWI+LCAuIC4gLiAsIFg8c3ViPmosU2ombWludXM7MTxcL3N1Yj4sIFk8c3ViPmosMDxcL3N1Yj4sIFk8c3ViPmosMTxcL3N1Yj4sIC4gLiAuICwgWTxzdWI+aixUaiZtaW51czsxPFwvc3ViPiBcdWM3NDAgXHVjMTFjXHViODVjIFx1YjJlNFx1Yjk4NVx1YjJjOFx1YjJlNCAoMCAmbGU7IGogJmxlOyBRICZtaW51czsgMSkuPFwvbGk+XHJcblx0PGxpPlM8c3ViPjA8XC9zdWI+ICsgUzxzdWI+MTxcL3N1Yj4gKyAmbWlkZG90OyAmbWlkZG90OyAmbWlkZG90OyArIFM8c3ViPlEmbWludXM7MTxcL3N1Yj4gJmxlOyAxIDAwMCAwMDAuPFwvbGk+XHJcblx0PGxpPlQ8c3ViPjA8XC9zdWI+ICsgVDxzdWI+MTxcL3N1Yj4gKyAmbWlkZG90OyAmbWlkZG90OyAmbWlkZG90OyArIFQ8c3ViPlEmbWludXM7MTxcL3N1Yj4gJmxlOyAxIDAwMCAwMDAuPFwvbGk+XHJcbjxcL3VsPlxyXG4iLCJvdXRwdXQiOiI8cD5cdWFjMDFcdWFjMDFcdWM3NTggXHVjOWM4XHVjNzU4XHVjNWQwIFx1YjMwMFx1ZDU1YyBcdWIyZjVcdWM3NDQgXHVkNTVjIFx1YzkwNFx1YzVkMCBcdWQ1NThcdWIwOThcdWM1MjkgXHVjYzI4XHViODQwXHViMzAwXHViODVjIFx1Y2Q5Y1x1YjgyNVx1ZDU2OVx1YjJjOFx1YjJlNDxcL3A+XHJcbiIsImhpbnQiOiI8dWw+XHJcblx0PGxpPjBcdWJjODggXHVjOWM4XHVjNzU4XHVjNWQwXHVjMTFjLCBcdWQ2OGNcdWMwYWMgVTxzdWI+MDxcL3N1Yj5cdWIyOTQgMFx1YmM4OCwgNlx1YmM4OCBcdWIzYzRcdWMyZGNcdWM1ZDAgXHVhY2Y1XHVjN2E1XHVjNzQ0IFx1YjQ1MFx1YzVjOFx1YWNlMCwgXHVkNjhjXHVjMGFjIFY8c3ViPjA8XC9zdWI+XHViMjk0IDNcdWJjODgsIDRcdWJjODggXHViM2M0XHVjMmRjXHVjNWQwIFx1YWNmNVx1YzdhNVx1Yzc0NCBcdWI0NTBcdWM1YzhcdWMyYjVcdWIyYzhcdWIyZTQuIDNcdWJjODggXHViM2M0XHVjMmRjXHVjNWQwIFx1Yzc4OFx1YjI5NCBWPHN1Yj4wPFwvc3ViPlx1Yzc1OCBcdWFjZjVcdWM3YTVcdWM1ZDBcdWMxMWNcdWJkODBcdWQxMzAgNlx1YmM4OCBcdWIzYzRcdWMyZGNcdWM1ZDAgXHVjNzg4XHViMjk0IFU8c3ViPjA8XC9zdWI+XHVjNzU4IFx1YWNmNVx1YzdhNVx1YWU0Y1x1YzljMFx1Yzc1OCBcdWFjNzBcdWI5YWNcdWFjMDAgXHVjZDVjXHVjMThjXHVjNzg1XHViMmM4XHViMmU0LiBcdWNkNWNcdWMxOGMgXHVhYzcwXHViOWFjXHViMjk0IDEyXHVjNzg1XHViMmM4XHViMmU0LjxcL2xpPlxyXG5cdDxsaT4xXHViYzg4IFx1YzljOFx1Yzc1OFx1YzVkMFx1YzExYywgXHVkNjhjXHVjMGFjIFU8c3ViPjE8XC9zdWI+XHViMjk0IDBcdWJjODgsIDFcdWJjODgsIDNcdWJjODggXHViM2M0XHVjMmRjXHVjNWQwIFx1YWNmNVx1YzdhNVx1Yzc0NCBcdWI0NTBcdWM1YzhcdWFjZTAsIFx1ZDY4Y1x1YzBhYyBWPHN1Yj4xPFwvc3ViPlx1YjI5NCA0XHViYzg4LCA2XHViYzg4IFx1YjNjNFx1YzJkY1x1YzVkMCBcdWFjZjVcdWM3YTVcdWM3NDQgXHViNDUwXHVjNWM4XHVjMmI1XHViMmM4XHViMmU0LiA2XHViYzg4IFx1YjNjNFx1YzJkY1x1YzVkMCBcdWM3ODhcdWIyOTQgVjxzdWI+MTxcL3N1Yj5cdWM3NTggXHVhY2Y1XHVjN2E1XHVjNWQwXHVjMTFjXHViZDgwXHVkMTMwIDFcdWJjODggXHViM2M0XHVjMmRjXHVjNWQwIFx1Yzc4OFx1YjI5NCBVPHN1Yj4xPFwvc3ViPlx1Yzc1OCBcdWFjZjVcdWM3YTVcdWFlNGNcdWM5YzBcdWM3NTggXHVhYzcwXHViOWFjXHVhYzAwIFx1Y2Q1Y1x1YzE4Y1x1Yzc4NVx1YjJjOFx1YjJlNC4gXHVjZDVjXHVjMThjIFx1YWM3MFx1YjlhY1x1YjI5NCAzXHVjNzg1XHViMmM4XHViMmU0LjxcL2xpPlxyXG5cdDxsaT4yXHViYzg4IFx1YzljOFx1Yzc1OFx1YzVkMFx1YzExYywgXHVkNjhjXHVjMGFjIFU8c3ViPjI8XC9zdWI+XHViMjk0IDJcdWJjODggXHViM2M0XHVjMmRjXHVjNWQwIFx1YWNmNVx1YzdhNVx1Yzc0NCBcdWI0NTBcdWM1YzhcdWFjZTAsIFx1ZDY4Y1x1YzBhYyBWPHN1Yj4yPFwvc3ViPlx1YjI5NCA1XHViYzg4IFx1YjNjNFx1YzJkY1x1YzVkMCBcdWFjZjVcdWM3YTVcdWM3NDQgXHViNDUwXHVjNWM4XHVjMmI1XHViMmM4XHViMmU0LiA1XHViYzg4IFx1YjNjNFx1YzJkY1x1YzVkMCBcdWM3ODhcdWIyOTQgVjxzdWI+MjxcL3N1Yj5cdWM3NTggXHVhY2Y1XHVjN2E1XHVjNWQwXHVjMTFjXHViZDgwXHVkMTMwIDJcdWJjODggXHViM2M0XHVjMmRjXHVjNWQwIFx1Yzc4OFx1YjI5NCBVPHN1Yj4yPFwvc3ViPlx1Yzc1OCBcdWFjZjVcdWM3YTVcdWFlNGNcdWM5YzBcdWM3NTggXHVhYzcwXHViOWFjXHVhYzAwIFx1Y2Q1Y1x1YzE4Y1x1Yzc4NVx1YjJjOFx1YjJlNC4gXHVjZDVjXHVjMThjIFx1YWM3MFx1YjlhY1x1YjI5NCAxMVx1Yzc4NVx1YjJjOFx1YjJlNC48XC9saT5cclxuPFwvdWw+XHJcbiIsIm9yaWdpbmFsIjoiMCIsInByb2JsZW1fbGFuZ19jb2RlIjoiXHVkNTVjXHVhZDZkXHVjNWI0In0seyJwcm9ibGVtX2lkIjoiMTE5MzMiLCJwcm9ibGVtX2xhbmciOiIxIiwidGl0bGUiOiJGYWN0b3JpZXMiLCJkZXNjcmlwdGlvbiI6IjxwPkluIElPSSBLaW5nZG9tLCB0aGVyZSBhcmUgTiBjaXRpZXMgbnVtYmVyZWQgZnJvbSAwIHRvIE4mbWludXM7MS4gVGhlc2UgY2l0aWVzIGFyZSBjb25uZWN0ZWQgYnkgTiZtaW51czsxIHJvYWRzIHRocm91Z2ggd2hpY2ggeW91IGNhbiBwYXNzIGluIGJvdGggZGlyZWN0aW9ucy4gWW91IGNhbiB0cmF2ZWwgZnJvbSBhbnkgY2l0eSB0byBhbnkgb3RoZXIgY2l0eSBieSBwYXNzaW5nIHRocm91Z2ggc29tZSBvZiB0aGVzZSByb2Fkcy48XC9wPlxyXG5cclxuPHA+SW4gSU9JIEtpbmdkb20sIHRoZXJlIGFyZSBtYW55IGNvbXBhbmllcyBwcm9kdWNpbmcgc3BlY2lhbCBjb21wb25lbnRzLiBFYWNoIGNvbXBhbnkgcHJvZHVjZXMgb25seSBvbmUga2luZCBvZiBjb21wb25lbnRzLiBObyB0d28gY29tcGFuaWVzIHByb2R1Y2UgdGhlIHNhbWUga2luZCBvZiBjb21wb25lbnRzLiBFYWNoIGNvbXBhbnkgaGFzIGF0IGxlYXN0IG9uZSBmYWN0b3J5LiBFYWNoIGZhY3RvcnkgaXMgYnVpbHQgaW4gb25lIG9mIHRoZSBjaXRpZXMuIE1vcmUgdGhhbiBvbmUgY29tcGFueSBtYXkgaGF2ZSBmYWN0b3JpZXMgaW4gdGhlIHNhbWUgY2l0eS48XC9wPlxyXG5cclxuPHA+U29tZXRpbWVzLCBhIGNvbXBhbnkgcmVxdWlyZXMgY29tcG9uZW50cyBvZiBhbm90aGVyIGNvbXBhbnkuIEFzc3VtZSB0aGUgY29tcGFueSBDPHN1Yj5BPFwvc3ViPiByZXF1aXJlcyB0aGUgY29tcG9uZW50cyBvZiB0aGUgY29tcGFueSBDPHN1Yj5CPFwvc3ViPiAoQzxzdWI+QTxcL3N1Yj4sIEM8c3ViPkI8XC9zdWI+KS4gSW4gdGhpcyBjYXNlLCB0aGV5IG5lZWQgdG8gdHJhbnNwb3J0IGNvbXBvbmVudHMgZnJvbSBDPHN1Yj5CPFwvc3ViPiB0byBDPHN1Yj5BPFwvc3ViPi4gVGhleSBtYXkgdHJhbnNwb3J0IGNvbXBvbmVudHMgZnJvbSBhbnkgb2YgdGhlIGZhY3RvcmllcyBvZiB0aGUgY29tcGFueSBDPHN1Yj5CPFwvc3ViPiB0byBhbnkgb2YgdGhlIGZhY3RvcmllcyBvZiB0aGUgY29tcGFueSBDPHN1Yj5BPFwvc3ViPi4gVGhleSBuZWVkIHRvIGNob29zZSBmYWN0b3JpZXMgYXBwcm9wcmlhdGVseSB0byBtaW5pbWl6ZSB0aGUgZGlzdGFuY2UgYmV0d2VlbiBmYWN0b3JpZXMuPFwvcD5cclxuXHJcbjxwPkZpcnN0LCB0aGUgbnVtYmVyIG9mIGNpdGllcyBhbmQgdGhlIGluZm9ybWF0aW9uIG9mIHJvYWRzIGluIElPSSBLaW5nZG9tIGFyZSBnaXZlbi4gVGhlbiwgUSBxdWVyaWVzIGFyZSBnaXZlbi4gRWFjaCBxdWVyeSBpcyB3cml0dGVuIGluIHRoZSBmb2xsb3dpbmcgZm9ybTogdGhlIGNvbXBhbnkgVTxzdWI+ajxcL3N1Yj4gaGF2aW5nIGZhY3RvcmllcyBpbiBjaXRpZXMgWDxzdWI+aiwwPFwvc3ViPiwgLiAuIC4gLCBYPHN1Yj5qLFM8c3ViPmo8XC9zdWI+Jm1pbnVzOzE8XC9zdWI+IHJlcXVpcmVzIGNvbXBvbmVudHMgb2YgdGhlIGNvbXBhbnkgVjxzdWI+ajxcL3N1Yj4gaGF2aW5nIGZhY3RvcmllcyBpbiBjaXRpZXMgWTxzdWI+aiwwPFwvc3ViPiwgLiAuIC4gLCBZPHN1Yj5qLFQ8c3ViPmo8XC9zdWI+Jm1pbnVzOzE8XC9zdWI+LiBXcml0ZSBhIHByb2dyYW0gd2hpY2gsIGZvciBlYWNoIHF1ZXJ5LCByZXR1cm5zIHRoZSBtaW5pbXVtIGRpc3RhbmNlIHRvIHRyYW5zcG9ydCB0aGUgY29tcG9uZW50cy48XC9wPlxyXG5cclxuPHA+WW91IGFyZSB0byB3cml0ZSBhIHByb2dyYW0gd2hpY2ggaW1wbGVtZW50cyBwcm9jZWR1cmVzIHRvIGFuc3dlciB0aGUgcXVlcmllcy48XC9wPlxyXG5cclxuPHA+WW91ciBwcm9ncmFtIHNob3VsZCBpbmNsdWRlIHRoZSBoZWFkZXIgZmlsZSBmYWN0b3JpZXMuaCBieSAjaW5jbHVkZSAmcXVvdDtmYWN0b3JpZXMuaCZxdW90OzxcL3A+XHJcblxyXG48cD5Zb3VyIHByb2dyYW0gc2hvdWxkIGltcGxlbWVudCB0aGUgZm9sbG93aW5nIHByb2NlZHVyZXMuPFwvcD5cclxuXHJcbjx1bD5cclxuXHQ8bGk+PGNvZGU+dm9pZCBJbml0KGludCBOLCBpbnQgQVtdLCBpbnQgQltdLCBpbnQgRFtdKTxcL2NvZGU+PFwvbGk+XHJcbjxcL3VsPlxyXG5cclxuPHA+VGhpcyBwcm9jZWR1cmUgaXMgY2FsbGVkIG9ubHkgb25jZSBpbiB0aGUgYmVnaW5uaW5nLiBUaGUgcGFyYW1ldGVyIE4gaXMgdGhlIG51bWJlciBvZiBjaXRpZXMgaW4gSU9JIEtpbmdkb20uIFRoZSBwYXJhbWV0ZXJzIEEsIEIgYW5kIEQgYXJlIGFycmF5cyBvZiBsZW5ndGggTiAmbWludXM7IDEuIFRoZSBlbGVtZW50cyBBW2ldLCBCW2ldIGFuZCBEW2ldIGFyZSB0aHJlZSBpbnRlZ2VycyBBPHN1Yj5pPFwvc3ViPiwgQjxzdWI+aTxcL3N1Yj4gYW5kIEQ8c3ViPmk8XC9zdWI+ICgwICZsZTsgaSAmbGU7IE4gJm1pbnVzOyAyKSByZXNwZWN0aXZlbHkuIFRoaXMgbWVhbnMsIGZvciBlYWNoIGkgKDAgJmxlOyBpICZsZTsgTiAmbWludXM7IDIpLCB0aGVyZSBpcyBhIHJvYWQgb2YgbGVuZ3RoIEQ8c3ViPmk8XC9zdWI+IGNvbm5lY3RpbmcgdGhlIGNpdHkgQTxzdWI+aTxcL3N1Yj4gYW5kIHRoZSBjaXR5IEI8c3ViPmk8XC9zdWI+LjxcL3A+XHJcblxyXG48dWw+XHJcblx0PGxpPjxjb2RlPmxvbmcgbG9uZyBRdWVyeShpbnQgUywgaW50IFhbXSwgaW50IFQsIGludCBZW10pPFwvY29kZT48XC9saT5cclxuPFwvdWw+XHJcblxyXG48cD5UaGlzIHByb2NlZHVyZSBpcyBjYWxsZWQgZm9yIGVhY2ggb2YgUSBxdWVyaWVzLiBJbiB0aGUgcXVlcnkgaiwgdGhlIHBhcmFtZXRlcnMgUyBhbmQgVCBhcmUgdHdvIGludGVnZXJzIFM8c3ViPmo8XC9zdWI+IGFuZCBUPHN1Yj5qPFwvc3ViPiByZXNwZWN0aXZlbHkuIFRoZXNlIGFyZSB0aGUgbnVtYmVycyBvZiBjaXRpZXMgd2hlcmUgdGhlIGNvbXBhbmllcyBVPHN1Yj5qPFwvc3ViPiwgVjxzdWI+ajxcL3N1Yj4gaGF2ZSBmYWN0b3JpZXMgcmVzcGVjdGl2ZWx5LjxcL3A+XHJcblxyXG48cD5UaGUgcGFyYW1ldGVyIFggaXMgYW4gYXJyYXkgb2YgbGVuZ3RoIFM8c3ViPmo8XC9zdWI+LiBUaGUgY29tcGFueSBVPHN1Yj5qPFwvc3ViPiBoYXMgZmFjdG9yaWVzIGluIGNpdGllcyBYWzBdLCBYWzFdLCAuIC4gLiAsIFhbUy0xXS48XC9wPlxyXG5cclxuPHA+VGhlIHBhcmFtZXRlciBZIGlzIGFuIGFycmF5IG9mIGxlbmd0aCBUPHN1Yj5qPFwvc3ViPi4gVGhlIGNvbXBhbnkgVjxzdWI+ajxcL3N1Yj4gaGFzIGZhY3RvcmllcyBpbiBjaXRpZXMgWVswXSwgWVsxXSwgLiAuIC4gLCBZW1QtMV0uPFwvcD5cclxuXHJcbjxwPlRoaXMgcHJvY2VkdXJlIHNob3VsZCByZXR1cm4gdGhlIG1pbmltdW0gZGlzdGFuY2UgdG8gdHJhbnNwb3J0IGNvbXBvbmVudHMgZnJvbSB0aGUgY29tcGFueSBWPHN1Yj5qPFwvc3ViPiB0byB0aGUgY29tcGFueSBVPHN1Yj5qPFwvc3ViPi48XC9wPlxyXG4iLCJpbnB1dCI6Ijx1bD5cclxuXHQ8bGk+VGhlIGZpcnN0IGxpbmUgY29udGFpbnMgdHdvIHNwYWNlIHNlcGFyYXRlZCBpbnRlZ2VycyBOLCBRLCB3aGljaCBtZWFucyB0aGVyZSBhcmUgTiBjaXRpZXMgaW4gSU9JIEtpbmdkb20sIGFuZCBRIHF1ZXJpZXMgYXJlIGdpdmVuIHRvIHlvdXIgcHJvZ3JhbS48XC9saT5cclxuXHQ8bGk+VGhlIChpICsgMSktc3QgbGluZSAoMCAmbGU7IGkgJmxlOyBOICZtaW51czsgMikgb2YgdGhlIGZvbGxvd2luZyAoTiAmbWludXM7IDEpIGxpbmVzIGNvbnRhaW5zIHRocmVlIHNwYWNlIHNlcGFyYXRlZCBpbnRlZ2VycyBBaSxCaSwgRGksIHdoaWNoIG1lYW5zIHRoZXJlIGlzIGEgcm9hZCBvZiBsZW5ndGggRGkgY29ubmVjdGluZyB0aGUgY2l0eSBBaSBhbmQgdGhlIGNpdHkgQmkuPFwvbGk+XHJcblx0PGxpPlRoZSBpbmZvcm1hdGlvbiBvZiB0aGUgai10aCBxdWVyeSBpcyB3cml0dGVuIGZyb20gdGhlICgzaiArIDEpLXN0IGxpbmUgdG8gdGhlICgzaiArIDMpLXJkIGxpbmUgKDAgJmxlOyBqICZsZTsgUSAmbWludXM7IDEpIG9mIHRoZSBmb2xsb3dpbmcgM1EgbGluZXMuPFwvbGk+XHJcblx0PGxpPlRoZSAoM2ogKyAxKS1zdCBsaW5lICgwICZsZTsgaiAmbGU7IFEgJm1pbnVzOyAxKSBjb250YWlucyB0d28gc3BhY2Ugc2VwYXJhdGVkIGludGVnZXJzIFM8c3ViPmo8XC9zdWI+IGFuZCBUPHN1Yj5qPFwvc3ViPiAoMSAmbGU7IFM8c3ViPmo8XC9zdWI+ICZsZTsgTiAmbWludXM7IDEsIDEgJmxlOyBUPHN1Yj5qPFwvc3ViPiAmbGU7IE4gJm1pbnVzOyAxKSwgd2hpY2ggbWVhbnMgdGhlIGNvbXBhbmllcyBVPHN1Yj5qPFwvc3ViPiBhbmQgVjxzdWI+ajxcL3N1Yj4gaGF2ZSBmYWN0b3JpZXMgaW4gUzxzdWI+ajxcL3N1Yj4gYW5kIFQ8c3ViPmo8XC9zdWI+IGNpdGllcyByZXNwZWN0aXZlbHkuPFwvbGk+XHJcblx0PGxpPlRoZSAoM2ogKyAyKS1uZCBsaW5lICgwICZsZTsgaiAmbGU7IFEgJm1pbnVzOyAxKSBjb250YWlucyBTPHN1Yj5qPFwvc3ViPiBzcGFjZSBzZXBhcmF0ZWQgaW50ZWdlcnMgWDxzdWI+aiwwPFwvc3ViPiwgLiAuIC4gLCBYPHN1Yj5qLFM8c3ViPmo8XC9zdWI+Jm1pbnVzOzE8XC9zdWI+LCB3aGljaCBtZWFucyB0aGUgY29tcGFueSBVPHN1Yj5qPFwvc3ViPiBoYXMgZmFjdG9yaWVzIGluIHRoZSBjaXRpZXMgWDxzdWI+aiwwPFwvc3ViPiwgLiAuIC4gLCBYPHN1Yj5qLFM8c3ViPmo8XC9zdWI+Jm1pbnVzOzE8XC9zdWI+LjxcL2xpPlxyXG5cdDxsaT5UaGUgKDNqICsgMyktcmQgbGluZSAoMCAmbGU7IGogJmxlOyBRICZtaW51czsgMSkgY29udGFpbnMgVDxzdWI+ajxcL3N1Yj4gc3BhY2Ugc2VwYXJhdGVkIGludGVnZXJzIFk8c3ViPmosMDxcL3N1Yj4sIC4gLiAuICwgWTxzdWI+aixUPHN1Yj5qPFwvc3ViPiZtaW51czsxPFwvc3ViPiwgd2hpY2ggbWVhbnMgdGhlIGNvbXBhbnkgVmogaGFzIGZhY3RvcmllcyBpbiB0aGUgY2l0aWVzIFk8c3ViPmosMDxcL3N1Yj4sIC4gLiAuICwgWTxzdWI+aixUPHN1Yj5qPFwvc3ViPiZtaW51czsxPFwvc3ViPi48XC9saT5cclxuPFwvdWw+XHJcblxyXG48cD5BbGwgaW5wdXQgZGF0YSBzYXRpc2Z5IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucy48XC9wPlxyXG5cclxuPHVsPlxyXG5cdDxsaT4yICZsZTsgTiAmbGU7IDUwMCAwMDAuPFwvbGk+XHJcblx0PGxpPjEgJmxlOyBRICZsZTsgMTAwIDAwMC48XC9saT5cclxuXHQ8bGk+MCAmbGU7IEE8c3ViPmk8XC9zdWI+ICZsZTsgTiAmbWludXM7IDEgKDAgJmxlOyBpICZsZTsgTiAmbWludXM7IDIpLjxcL2xpPlxyXG5cdDxsaT4wICZsZTsgQjxzdWI+aTxcL3N1Yj4gJmxlOyBOICZtaW51czsgMSAoMCAmbGU7IGkgJmxlOyBOICZtaW51czsgMikuPFwvbGk+XHJcblx0PGxpPjEgJmxlOyBEPHN1Yj5pPFwvc3ViPiAmbGU7IDEwMCAwMDAgMDAwICgwICZsZTsgaSAmbGU7IE4gJm1pbnVzOyAyKS48XC9saT5cclxuXHQ8bGk+QTxzdWI+aTxcL3N1Yj4gLCBCPHN1Yj5pPFwvc3ViPiAoMSAmbGU7IGkgJmxlOyBOICZtaW51czsgMikuPFwvbGk+XHJcblx0PGxpPllvdSBjYW4gdHJhdmVsIGZyb20gYW55IGNpdHkgdG8gYW55IG90aGVyIGNpdHkgdGhyb3VnaCBzb21lIG9mIHRoZXNlIHJvYWRzLjxcL2xpPlxyXG5cdDxsaT4xICZsZTsgUzxzdWI+ajxcL3N1Yj4gJmxlOyBOICZtaW51czsgMSAoMCAmbGU7IGogJmxlOyBRICZtaW51czsgMSkuPFwvbGk+XHJcblx0PGxpPjAgJmxlOyBYPHN1Yj5qLGs8XC9zdWI+ICZsZTsgTiAmbWludXM7IDEgKDAgJmxlOyBqICZsZTsgUSAmbWludXM7IDEsIDAgJmxlOyBrICZsZTsgUzxzdWI+ajxcL3N1Yj4gJm1pbnVzOyAxKS48XC9saT5cclxuXHQ8bGk+MSAmbGU7IFQ8c3ViPmo8XC9zdWI+ICZsZTsgTiAmbWludXM7IDEgKDAgJmxlOyBqICZsZTsgUSAmbWludXM7IDEpLjxcL2xpPlxyXG5cdDxsaT4wICZsZTsgWTxzdWI+aixrPFwvc3ViPiAmbGU7IE4gJm1pbnVzOyAxICgwICZsZTsgaiAmbGU7IFEgJm1pbnVzOyAxLCAwICZsZTsgayAmbGU7IFQ8c3ViPmo8XC9zdWI+ICZtaW51czsgMSkuPFwvbGk+XHJcblx0PGxpPlg8c3ViPmosMDxcL3N1Yj4sIFg8c3ViPmosMTxcL3N1Yj4sIC4gLiAuICwgWDxzdWI+aixTPHN1Yj5qPFwvc3ViPiZtaW51czsxPFwvc3ViPiwgWTxzdWI+aiwwPFwvc3ViPiwgWTxzdWI+aiwxPFwvc3ViPiwgLiAuIC4gLCBZPHN1Yj5qLFQ8c3ViPmo8XC9zdWI+Jm1pbnVzOzE8XC9zdWI+IGFyZSBkaWZmZXJlbnQgZnJvbSBlYWNoIG90aGVyICgwICZsZTsgaiAmbGU7IFEgJm1pbnVzOyAxKSBcdWZmMGU8XC9saT5cclxuXHQ8bGk+UzxzdWI+MDxcL3N1Yj4gKyBTPHN1Yj4xPFwvc3ViPiArICZtaWRkb3Q7ICZtaWRkb3Q7ICZtaWRkb3Q7ICsgUzxzdWI+USZtaW51czsxPFwvc3ViPiAmbGU7IDEgMDAwIDAwMC48XC9saT5cclxuXHQ8bGk+VDxzdWI+MDxcL3N1Yj4gKyBUPHN1Yj4xPFwvc3ViPiArICZtaWRkb3Q7ICZtaWRkb3Q7ICZtaWRkb3Q7ICsgVDxzdWI+USZtaW51czsxPFwvc3ViPiAmbGU7IDEgMDAwIDAwMC48XC9saT5cclxuPFwvdWw+XHJcbiIsIm91dHB1dCI6IjxwPldoZW4gdGhlIHByb2dyYW0gdGVybWluYXRlcyBzdWNjZXNzZnVsbHksIHRoZSBzYW1wbGUgZ3JhZGVyIHdyaXRlcyB0byB0aGUgc3RhbmRhcmQgb3V0cHV0IHRoZSB2YWx1ZXMgcmV0dXJuZWQgYnkgUXVlcnkgb25lIHBlciBsaW5lLjxcL3A+XHJcbiIsImhpbnQiOiI8cD5UaGVzZSBhcmUgc2FtcGxlIGlucHV0IGFuZCBzYW1wbGUgb3V0cHV0IG9mIHRoZSBzYW1wbGUgZ3JhZGVyLjxcL3A+XHJcblxyXG48dWw+XHJcblx0PGxpPkluIHRoZSBxdWVyeSAwLCB0aGUgY29tcGFueSBVPHN1Yj4wPFwvc3ViPiBoYXMgZmFjdG9yaWVzIGluIHRoZSBjaXRpZXMgMCwgNiwgYW5kIHRoZSBjb21wYW55IFY8c3ViPjA8XC9zdWI+IGhhcyBmYWN0b3JpZXMgaW4gdGhlIGNpdGVzIDMsIDQuIFRoZSBkaXN0YW5jZSBmcm9tIHRoZSBmYWN0b3J5IG9mIHRoZSBjb21wYW55IFY8c3ViPjA8XC9zdWI+IGluIHRoZSBjaXR5IDMgdG8gdGhlIGZhY3Rvcnkgb2YgdGhlIGNvbXBhbnkgVTxzdWI+MDxcL3N1Yj4gaW4gdGhlIGNpdHkgNiBpcyBtaW5pbXVtLiBUaGUgbWluaW11bSBkaXN0YW5jZSBpcyAxMi48XC9saT5cclxuXHQ8bGk+SW4gdGhlIHF1ZXJ5IDEsIHRoZSBjb21wYW55IFU8c3ViPjE8XC9zdWI+IGhhcyBmYWN0b3JpZXMgaW4gdGhlIGNpdGllcyAwLCAxLCAzLCBhbmQgdGhlIGNvbXBhbnkgVjxzdWI+MTxcL3N1Yj4gaGFzIGZhY3RvcmllcyBpbiB0aGUgY2l0ZXMgNCwgNi4gVGhlIGRpc3RhbmNlIGZyb20gdGhlIGZhY3Rvcnkgb2YgdGhlIGNvbXBhbnkgVjxzdWI+MTxcL3N1Yj4gaW4gdGhlIGNpdHkgNiB0byB0aGUgZmFjdG9yeSBvZiB0aGUgY29tcGFueSBVPHN1Yj4xPFwvc3ViPiBpbiB0aGUgY2l0eSAxIGlzIG1pbmltdW0uIFRoZSBtaW5pbXVtIGRpc3RhbmNlIGlzIDMuPFwvbGk+XHJcblx0PGxpPkluIHRoZSBxdWVyeSAyLCB0aGUgY29tcGFueSBVPHN1Yj4yPFwvc3ViPiBoYXMgZmFjdG9yaWVzIGluIHRoZSBjaXR5IDIsIGFuZCB0aGUgY29tcGFueSBWPHN1Yj4yPFwvc3ViPiBoYXMgZmFjdG9yaWVzIGluIHRoZSBjaXR5IDUuIFRoZSBkaXN0YW5jZSBmcm9tIHRoZSBmYWN0b3J5IG9mIHRoZSBjb21wYW55IFY8c3ViPjI8XC9zdWI+IGluIHRoZSBjaXR5IDUgdG8gdGhlIGZhY3Rvcnkgb2YgdGhlIGNvbXBhbnkgVTxzdWI+MjxcL3N1Yj4gaW4gdGhlIGNpdHkgMiBpcyBtaW5pbXVtLiBUaGUgbWluaW11bSBkaXN0YW5jZSBpcyAxMS48XC9saT5cclxuPFwvdWw+XHJcbiIsIm9yaWdpbmFsIjoiMSIsInByb2JsZW1fbGFuZ19jb2RlIjoiXHVjNjAxXHVjNWI0In1d

출처

Contest > JOI Open Contest > JOI Open Contest 2014 1번