시간 제한메모리 제한제출정답맞힌 사람정답 비율
4 초 512 MB151613732.456%

문제

상트페테르부르크 시의 수로 길이의 총합은 약 282 km이고, 도시 면적 중 물이 차지하는 비중은 약 7%이다.


Wikipedia

상트페테르부르크는 n개의 섬을 m개의 다리로 이어 만든 도시이다. 섬은 1부터 n까지 정수로 표현할 수 있고, 다리는 1부터 m까지 정수로 표현한다. 각각의 다리는 서로 다른 두 섬을 연결한다. 어떤 다리는 표트르 대제 시절에 만들었고, 어떤 다리는 만든지 얼마 되지 않는다. 그래서 다리들마다 다양한 무게 제한이 있다. 즉, 자동차가 다리 i를 지나려면 무게가 di 이하여야 한다. 때떄로 상트페테르부르크의 다리들을 보수할 때가 있다. 그렇지만 보수를 한다고 꼭 다리가 더 튼튼해지는 것은 아니어서, di 값이 늘 수도 있고 줄어들 수도 있다. 이 도시의 시민과 관광객을 위해서, 다음 두 가지 질의를 처리할 수 있는 프로그램이 있다면 좋을 것이다.

  1. 다리 bj의 무게 제한이 rj로 바뀌었다.
  2. 무게가 wj인 자동차로 섬 sj에서 출발해서 도착할 수 있는 섬의 수를 구하시오.

두번째 형태의 질의를 모두 답하시오.

입력

첫 번째 줄에는 두 정수 n, m가 주어진다. — 이는 각각 상트페테르부르크의 섬과 다리의 수이다. (1 ≤ n ≤ 50 000, 0 ≤ m ≤ 100 000)

다음 m 줄 중 i 번째 줄에는 세 정수 ui, vi, di가 주어지는데, 섬 ui과 섬 vi를 잇는 다리의 무게 제한은 최초에는 di라는 뜻이다. (1 ≤ ui, vi ≤ n; ui ≠ vi ; 1 ≤ di ≤ 109)

그 다음 줄에는 하나의 정수 q가 주어진다. — 이는 질의의 수이다. (1 ≤ q ≤ 100 000). 다음 q 줄에 질의가 주어진다.

각 질의는 정수 tj로 시작한다. (tj ∈ {1, 2})

만약 tj = 1이라면, 이 질의는 첫 번째 형태이고, 두 정수 bj와 rj가 뒤따라 주어지는데, 이는 다리 bj의 무게 제한이 rj로 바뀐다는 뜻이다. (1 ≤ bj ≤ m, 1 ≤ rj ≤ 109)

만약 tj = 2이면, 이 질의는 두번째 형태이고, 두 정수 sj와 wj가 뒤따라 주어지는데, 이는 무게가 wj인 자동차가 섬 sj에서 출발하여 도착할 수 있는 섬의 수를 구하라는 뜻이다. (1 ≤ sj ≤ n, 1 ≤ wj ≤ 109)

출력

두번째 형태의 질의 하나마다 한 줄에 하나씩 질의의 답을 출력한다.

예제 입력 1

3 4
1 2 5
2 3 2
3 1 4
2 3 8
5
2 1 5
1 4 1
2 2 5
1 1 1
2 3 2

예제 출력 1

3
2
3

예제 입력 2

7 8
1 2 5
1 6 5
2 3 5
2 7 5
3 4 5
4 5 5
5 6 5
6 7 5
12
2 1 6
1 1 1
2 1 2
1 2 3
2 2 2
1 5 2
1 3 1
2 2 4
2 4 2
1 8 1
2 1 1
2 1 3

예제 출력 2

1
7
7
5
7
7
4

힌트

녹색 에지는 질의에서 물어보는 자동차가 건널 수 있는 다리를 나타낸다. 녹색 노드는 이 자동차가 도착할 수 있는 섬을 나타낸다. 화살표가 가리키는 섬은 이 자동차가 처음에 있던 곳이다.

첫 번째 테스트 데이터

두번째 테스트 데이터

W3sicHJvYmxlbV9pZCI6IjE3NjM1IiwicHJvYmxlbV9sYW5nIjoiMCIsInRpdGxlIjoiXHViMmU0XHViOWFjIiwiZGVzY3JpcHRpb24iOiI8YmxvY2txdW90ZT5cclxuPHAgc3R5bGU9XCJ0ZXh0LWFsaWduOiByaWdodDtcIj5cdWMwYzFcdWQyYjhcdWQzOThcdWQxNGNcdWI5NzRcdWJkODBcdWI5NzRcdWQwNmMgXHVjMmRjXHVjNzU4IFx1YzIxOFx1Yjg1YyBcdWFlMzhcdWM3NzRcdWM3NTggXHVjZDFkXHVkNTY5XHVjNzQwIFx1YzU3ZCAyODIga21cdWM3NzRcdWFjZTAsIFx1YjNjNFx1YzJkYyBcdWJhNzRcdWM4MDEgXHVjOTExIFx1YmIzY1x1Yzc3NCBcdWNjMjhcdWM5YzBcdWQ1NThcdWIyOTQgXHViZTQ0XHVjOTExXHVjNzQwIFx1YzU3ZCA3JVx1Yzc3NFx1YjJlNC48XC9wPlxyXG5cclxuPGhyIFwvPlxyXG48cCBzdHlsZT1cInRleHQtYWxpZ246IHJpZ2h0O1wiPldpa2lwZWRpYTxcL3A+XHJcbjxcL2Jsb2NrcXVvdGU+XHJcblxyXG48cD5cdWMwYzFcdWQyYjhcdWQzOThcdWQxNGNcdWI5NzRcdWJkODBcdWI5NzRcdWQwNmNcdWIyOTQgblx1YWMxY1x1Yzc1OCBcdWMxMmNcdWM3NDQgbVx1YWMxY1x1Yzc1OCBcdWIyZTRcdWI5YWNcdWI4NWMgXHVjNzc0XHVjNWI0IFx1YjljY1x1YjRlMCBcdWIzYzRcdWMyZGNcdWM3NzRcdWIyZTQuIFx1YzEyY1x1Yzc0MCAxXHViZDgwXHVkMTMwIG5cdWFlNGNcdWM5YzAgXHVjODE1XHVjMjE4XHViODVjIFx1ZDQ1Y1x1ZDYwNFx1ZDU2MCBcdWMyMTggXHVjNzg4XHVhY2UwLCBcdWIyZTRcdWI5YWNcdWIyOTQgMVx1YmQ4MFx1ZDEzMCBtXHVhZTRjXHVjOWMwIFx1YzgxNVx1YzIxOFx1Yjg1YyBcdWQ0NWNcdWQ2MDRcdWQ1NWNcdWIyZTQuIFx1YWMwMVx1YWMwMVx1Yzc1OCBcdWIyZTRcdWI5YWNcdWIyOTQgXHVjMTFjXHViODVjIFx1YjJlNFx1Yjk3OCBcdWI0NTAgXHVjMTJjXHVjNzQ0IFx1YzVmMFx1YWNiMFx1ZDU1Y1x1YjJlNC4gXHVjNWI0XHViNWE0IFx1YjJlNFx1YjlhY1x1YjI5NCBcdWQ0NWNcdWQyYjhcdWI5NzQgXHViMzAwXHVjODFjIFx1YzJkY1x1YzgwOFx1YzVkMCBcdWI5Y2NcdWI0ZTRcdWM1YzhcdWFjZTAsIFx1YzViNFx1YjVhNCBcdWIyZTRcdWI5YWNcdWIyOTQgXHViOWNjXHViNGUwXHVjOWMwIFx1YzViY1x1YjljOCBcdWI0MThcdWM5YzAgXHVjNTRhXHViMjk0XHViMmU0LiBcdWFkZjhcdWI3OThcdWMxMWMgXHViMmU0XHViOWFjXHViNGU0XHViOWM4XHViMmU0IFx1YjJlNFx1YzU5MVx1ZDU1YyBcdWJiMzRcdWFjOGMgXHVjODFjXHVkNTVjXHVjNzc0IFx1Yzc4OFx1YjJlNC4gXHVjOTg5LCBcdWM3OTBcdWIzZDlcdWNjMjhcdWFjMDAgXHViMmU0XHViOWFjIGlcdWI5N2MgXHVjOWMwXHViMDk4XHViODI0XHViYTc0IFx1YmIzNFx1YWM4Y1x1YWMwMCBkPHN1Yj5pPFwvc3ViPiBcdWM3NzRcdWQ1NThcdWM1ZWNcdWM1N2MgXHVkNTVjXHViMmU0LiBcdWI1NGNcdWI1ODRcdWI4NWMgXHVjMGMxXHVkMmI4XHVkMzk4XHVkMTRjXHViOTc0XHViZDgwXHViOTc0XHVkMDZjXHVjNzU4IFx1YjJlNFx1YjlhY1x1YjRlNFx1Yzc0NCBcdWJjZjRcdWMyMThcdWQ1NjAgXHViNTRjXHVhYzAwIFx1Yzc4OFx1YjJlNC4gXHVhZGY4XHViODA3XHVjOWMwXHViOWNjIFx1YmNmNFx1YzIxOFx1Yjk3YyBcdWQ1NWNcdWIyZTRcdWFjZTAgXHVhZjJkIFx1YjJlNFx1YjlhY1x1YWMwMCBcdWIzNTQgXHVkMmJjXHVkMmJjXHVkNTc0XHVjOWMwXHViMjk0IFx1YWM4M1x1Yzc0MCBcdWM1NDRcdWIyYzhcdWM1YjRcdWMxMWMsIGQ8c3ViPmk8XC9zdWI+IFx1YWMxMlx1Yzc3NCBcdWIyOTggXHVjMjE4XHViM2M0IFx1Yzc4OFx1YWNlMCBcdWM5MDRcdWM1YjRcdWI0ZTQgXHVjMjE4XHViM2M0IFx1Yzc4OFx1YjJlNC4gXHVjNzc0IFx1YjNjNFx1YzJkY1x1Yzc1OCBcdWMyZGNcdWJiZmNcdWFjZmMgXHVhZDAwXHVhZDExXHVhYzFkXHVjNzQ0IFx1YzcwNFx1ZDU3NFx1YzExYywgXHViMmU0XHVjNzRjIFx1YjQ1MCBcdWFjMDBcdWM5YzAgXHVjOWM4XHVjNzU4XHViOTdjIFx1Y2M5OFx1YjlhY1x1ZDU2MCBcdWMyMTggXHVjNzg4XHViMjk0IFx1ZDUwNFx1Yjg1Y1x1YWRmOFx1YjdhOFx1Yzc3NCBcdWM3ODhcdWIyZTRcdWJhNzQgXHVjODhiXHVjNzQ0IFx1YWM4M1x1Yzc3NFx1YjJlNC48XC9wPlxyXG5cclxuPG9sPlxyXG5cdDxsaT5cdWIyZTRcdWI5YWMgYjxzdWI+ajxcL3N1Yj5cdWM3NTggXHViYjM0XHVhYzhjIFx1YzgxY1x1ZDU1Y1x1Yzc3NCByPHN1Yj5qPFwvc3ViPlx1Yjg1YyBcdWJjMTRcdWIwMGNcdWM1YzhcdWIyZTQuPFwvbGk+XHJcblx0PGxpPlx1YmIzNFx1YWM4Y1x1YWMwMCB3PHN1Yj5qPFwvc3ViPlx1Yzc3OCBcdWM3OTBcdWIzZDlcdWNjMjhcdWI4NWMgXHVjMTJjIHM8c3ViPmo8XC9zdWI+XHVjNWQwXHVjMTFjIFx1Y2Q5Y1x1YmMxY1x1ZDU3NFx1YzExYyBcdWIzYzRcdWNjMjlcdWQ1NjAgXHVjMjE4IFx1Yzc4OFx1YjI5NCBcdWMxMmNcdWM3NTggXHVjMjE4XHViOTdjIFx1YWQ2Y1x1ZDU1OFx1YzJkY1x1YzYyNC48XC9saT5cclxuPFwvb2w+XHJcblxyXG48cD5cdWI0NTBcdWJjODhcdWM5ZjggXHVkNjE1XHVkMGRjXHVjNzU4IFx1YzljOFx1Yzc1OFx1Yjk3YyBcdWJhYThcdWI0NTAgXHViMmY1XHVkNTU4XHVjMmRjXHVjNjI0LjxcL3A+XHJcbiIsImlucHV0IjoiPHA+XHVjY2FiIFx1YmM4OFx1YzlmOCBcdWM5MDRcdWM1ZDBcdWIyOTQgXHViNDUwIFx1YzgxNVx1YzIxOCBuLCBtXHVhYzAwIFx1YzhmY1x1YzViNFx1YzljNFx1YjJlNC4gJm1kYXNoOyBcdWM3NzRcdWIyOTQgXHVhYzAxXHVhYzAxIFx1YzBjMVx1ZDJiOFx1ZDM5OFx1ZDE0Y1x1Yjk3NFx1YmQ4MFx1Yjk3NFx1ZDA2Y1x1Yzc1OCBcdWMxMmNcdWFjZmMgXHViMmU0XHViOWFjXHVjNzU4IFx1YzIxOFx1Yzc3NFx1YjJlNC4gKDEgJmxlOyBuICZsZTsgNTAgMDAwLCAwICZsZTsgbSAmbGU7IDEwMCAwMDApPFwvcD5cclxuXHJcbjxwPlx1YjJlNFx1Yzc0YyBtIFx1YzkwNCBcdWM5MTEgaSBcdWJjODhcdWM5ZjggXHVjOTA0XHVjNWQwXHViMjk0IFx1YzEzOCBcdWM4MTVcdWMyMTggdTxzdWI+aTxcL3N1Yj4sIHY8c3ViPmk8XC9zdWI+LCBkPHN1Yj5pPFwvc3ViPlx1YWMwMCBcdWM4ZmNcdWM1YjRcdWM5YzBcdWIyOTRcdWIzNzAsIFx1YzEyYyB1PHN1Yj5pPFwvc3ViPlx1YWNmYyBcdWMxMmMgdjxzdWI+aTxcL3N1Yj5cdWI5N2MgXHVjNzg3XHViMjk0IFx1YjJlNFx1YjlhY1x1Yzc1OCBcdWJiMzRcdWFjOGMgXHVjODFjXHVkNTVjXHVjNzQwIFx1Y2Q1Y1x1Y2QwOFx1YzVkMFx1YjI5NCBkPHN1Yj5pPFwvc3ViPlx1Yjc3Y1x1YjI5NCBcdWI3M2JcdWM3NzRcdWIyZTQuICgxICZsZTsgdTxzdWI+aTxcL3N1Yj4sIHY8c3ViPmk8XC9zdWI+ICZsZTsgbjsgdTxzdWI+aTxcL3N1Yj4mbmJzcDsmbmU7IHY8c3ViPmk8XC9zdWI+IDsgMSAmbGU7IGQ8c3ViPmk8XC9zdWI+ICZsZTsgMTA8c3VwPjk8XC9zdXA+KTxcL3A+XHJcblxyXG48cD5cdWFkZjggXHViMmU0XHVjNzRjIFx1YzkwNFx1YzVkMFx1YjI5NCBcdWQ1NThcdWIwOThcdWM3NTggXHVjODE1XHVjMjE4IHFcdWFjMDAgXHVjOGZjXHVjNWI0XHVjOWM0XHViMmU0LiAmbWRhc2g7IFx1Yzc3NFx1YjI5NCBcdWM5YzhcdWM3NThcdWM3NTggXHVjMjE4XHVjNzc0XHViMmU0LiAoMSAmbGU7IHEgJmxlOyAxMDAgMDAwKS4gXHViMmU0XHVjNzRjIHEgXHVjOTA0XHVjNWQwIFx1YzljOFx1Yzc1OFx1YWMwMCBcdWM4ZmNcdWM1YjRcdWM5YzRcdWIyZTQuPFwvcD5cclxuXHJcbjxwPlx1YWMwMSBcdWM5YzhcdWM3NThcdWIyOTQgXHVjODE1XHVjMjE4IHQ8c3ViPmo8XC9zdWI+XHViODVjIFx1YzJkY1x1Yzc5MVx1ZDU1Y1x1YjJlNC4gKHQ8c3ViPmo8XC9zdWI+ICZpc2luOyB7MSwgMn0pPFwvcD5cclxuXHJcbjxwPlx1YjljY1x1YzU3ZCB0PHN1Yj5qPFwvc3ViPiA9IDFcdWM3NzRcdWI3N2NcdWJhNzQsIFx1Yzc3NCBcdWM5YzhcdWM3NThcdWIyOTQgXHVjY2FiIFx1YmM4OFx1YzlmOCBcdWQ2MTVcdWQwZGNcdWM3NzRcdWFjZTAsIFx1YjQ1MCBcdWM4MTVcdWMyMTggYjxzdWI+ajxcL3N1Yj5cdWM2NDAgcjxzdWI+ajxcL3N1Yj5cdWFjMDAgXHViNGE0XHViNTMwXHViNzdjIFx1YzhmY1x1YzViNFx1YzljMFx1YjI5NFx1YjM3MCwgXHVjNzc0XHViMjk0IFx1YjJlNFx1YjlhYyBiPHN1Yj5qPFwvc3ViPlx1Yzc1OCBcdWJiMzRcdWFjOGMgXHVjODFjXHVkNTVjXHVjNzc0IHI8c3ViPmo8XC9zdWI+XHViODVjIFx1YmMxNFx1YjAxMFx1YjJlNFx1YjI5NCBcdWI3M2JcdWM3NzRcdWIyZTQuICgxICZsZTsgYjxzdWI+ajxcL3N1Yj4gJmxlOyBtLCAxICZsZTsgcjxzdWI+ajxcL3N1Yj4gJmxlOyAxMDxzdXA+OTxcL3N1cD4pPFwvcD5cclxuXHJcbjxwPlx1YjljY1x1YzU3ZCB0PHN1Yj5qPFwvc3ViPiA9IDJcdWM3NzRcdWJhNzQsIFx1Yzc3NCBcdWM5YzhcdWM3NThcdWIyOTQgXHViNDUwXHViYzg4XHVjOWY4IFx1ZDYxNVx1ZDBkY1x1Yzc3NFx1YWNlMCwgXHViNDUwIFx1YzgxNVx1YzIxOCBzPHN1Yj5qPFwvc3ViPlx1YzY0MCB3PHN1Yj5qPFwvc3ViPlx1YWMwMCBcdWI0YTRcdWI1MzBcdWI3N2MgXHVjOGZjXHVjNWI0XHVjOWMwXHViMjk0XHViMzcwLCBcdWM3NzRcdWIyOTQgXHViYjM0XHVhYzhjXHVhYzAwIHc8c3ViPmo8XC9zdWI+XHVjNzc4IFx1Yzc5MFx1YjNkOVx1Y2MyOFx1YWMwMCBcdWMxMmMgczxzdWI+ajxcL3N1Yj5cdWM1ZDBcdWMxMWMgXHVjZDljXHViYzFjXHVkNTU4XHVjNWVjIFx1YjNjNFx1Y2MyOVx1ZDU2MCBcdWMyMTggXHVjNzg4XHViMjk0IFx1YzEyY1x1Yzc1OCBcdWMyMThcdWI5N2MgXHVhZDZjXHVkNTU4XHViNzdjXHViMjk0IFx1YjczYlx1Yzc3NFx1YjJlNC4gKDEgJmxlOyBzPHN1Yj5qPFwvc3ViPiAmbGU7IG4sIDEgJmxlOyB3PHN1Yj5qPFwvc3ViPiAmbGU7IDEwPHN1cD45PFwvc3VwPik8XC9wPlxyXG4iLCJvdXRwdXQiOiI8cD5cdWI0NTBcdWJjODhcdWM5ZjggXHVkNjE1XHVkMGRjXHVjNzU4IFx1YzljOFx1Yzc1OCBcdWQ1NThcdWIwOThcdWI5YzhcdWIyZTQgXHVkNTVjIFx1YzkwNFx1YzVkMCBcdWQ1NThcdWIwOThcdWM1MjkgXHVjOWM4XHVjNzU4XHVjNzU4IFx1YjJmNVx1Yzc0NCBcdWNkOWNcdWI4MjVcdWQ1NWNcdWIyZTQuPFwvcD5cclxuIiwiaGludCI6IjxwPlx1YjE3OVx1YzBjOSBcdWM1ZDBcdWM5YzBcdWIyOTQgXHVjOWM4XHVjNzU4XHVjNWQwXHVjMTFjIFx1YmIzY1x1YzViNFx1YmNmNFx1YjI5NCBcdWM3OTBcdWIzZDlcdWNjMjhcdWFjMDAgXHVhYzc0XHViMTEwIFx1YzIxOCBcdWM3ODhcdWIyOTQgXHViMmU0XHViOWFjXHViOTdjIFx1YjA5OFx1ZDBjMFx1YjBiOFx1YjJlNC4gXHViMTc5XHVjMGM5IFx1YjE3OFx1YjRkY1x1YjI5NCBcdWM3NzQgXHVjNzkwXHViM2Q5XHVjYzI4XHVhYzAwIFx1YjNjNFx1Y2MyOVx1ZDU2MCBcdWMyMTggXHVjNzg4XHViMjk0IFx1YzEyY1x1Yzc0NCBcdWIwOThcdWQwYzBcdWIwYjhcdWIyZTQuIFx1ZDY1NFx1YzBiNFx1ZDQ1Y1x1YWMwMCBcdWFjMDBcdWI5YWNcdWQwYTRcdWIyOTQgXHVjMTJjXHVjNzQwIFx1Yzc3NCBcdWM3OTBcdWIzZDlcdWNjMjhcdWFjMDAgXHVjYzk4XHVjNzRjXHVjNWQwIFx1Yzc4OFx1YjM1OCBcdWFjZjNcdWM3NzRcdWIyZTQuPFwvcD5cclxuXHJcbjxwIHN0eWxlPVwidGV4dC1hbGlnbjogY2VudGVyO1wiPjxpbWcgYWx0PVwiXCIgc3JjPVwiaHR0cHM6XC9cL3VwbG9hZC5hY21pY3BjLm5ldFwvNThhYWExMTctMzg2NS00MGUyLWFiZGEtZDlkOTQ5YzhjNTBhXC8tXC9wcmV2aWV3XC9cIiBzdHlsZT1cIndpZHRoOiA1NjRweDsgaGVpZ2h0OiAxNzRweDtcIiBcLz48XC9wPlxyXG5cclxuPHAgc3R5bGU9XCJ0ZXh0LWFsaWduOiBjZW50ZXI7XCI+XHVjY2FiIFx1YmM4OFx1YzlmOCBcdWQxNGNcdWMyYTRcdWQyYjggXHViMzcwXHVjNzc0XHVkMTMwPFwvcD5cclxuXHJcbjxwIHN0eWxlPVwidGV4dC1hbGlnbjogY2VudGVyO1wiPjxpbWcgYWx0PVwiXCIgc3JjPVwiaHR0cHM6XC9cL3VwbG9hZC5hY21pY3BjLm5ldFwvZGEwODQwZDYtZTU0Ni00OTIwLWJkOTEtZTc2YTkzZWM5ZjE2XC8tXC9wcmV2aWV3XC9cIiBzdHlsZT1cIndpZHRoOiA1NTBweDsgaGVpZ2h0OiA0NzlweDtcIiBcLz48XC9wPlxyXG5cclxuPHAgc3R5bGU9XCJ0ZXh0LWFsaWduOiBjZW50ZXI7XCI+XHViNDUwXHViYzg4XHVjOWY4IFx1ZDE0Y1x1YzJhNFx1ZDJiOCBcdWIzNzBcdWM3NzRcdWQxMzA8XC9wPlxyXG4iLCJvcmlnaW5hbCI6IjEiLCJodG1sX3RpdGxlIjoiMCIsInByb2JsZW1fbGFuZ190Y29kZSI6IktvcmVhbiJ9LHsicHJvYmxlbV9pZCI6IjE3NjM1IiwicHJvYmxlbV9sYW5nIjoiMSIsInRpdGxlIjoiQnJpZGdlcyIsImRlc2NyaXB0aW9uIjoiPGJsb2NrcXVvdGU+XHJcbjxwIHN0eWxlPVwidGV4dC1hbGlnbjogcmlnaHQ7XCI+VGhlIGxlbmd0aCBvZiBhbGwgd2F0ZXJ3YXlzIGluIFN0LiBQZXRlcnNidXJnIGlzIGFib3V0IDI4MiBrbSwgYW5kIHRoZSB3YXRlciBzdXJmYWNlIGlzIGFib3V0IDcgJSBvZiBjaXR5IGFyZWEuPFwvcD5cclxuXHJcbjxociBcLz5cclxuPHAgc3R5bGU9XCJ0ZXh0LWFsaWduOiByaWdodDtcIj5XaWtpcGVkaWE8XC9wPlxyXG48XC9ibG9ja3F1b3RlPlxyXG5cclxuPHA+U3QuIFBldGVyc2J1cmcgaXMgbG9jYXRlZCBvbiBuIGlzbGFuZHMgdGhhdCBhcmUgY29ubmVjdGVkIGJ5IG0gYnJpZGdlcy4gSXNsYW5kcyBhcmUgbGFiZWxlZCBieSBpbnRlZ2VycyBmcm9tIDEgdG8gbiwgYW5kIGJyaWRnZXMgJm1kYXNoOyBmcm9tIDEgdG8gbS4gRXZlcnkgYnJpZGdlIGNvbm5lY3RzIHR3byBkaXN0aW5jdCBpc2xhbmRzLiBTb21lIGJyaWRnZXMgd2VyZSBidWlsdCBpbiBQZXRlciB0aGUgR3JlYXQgZXJhLCBhbmQgc29tZSBvZiB0aGVtIHdlcmUgYnVpbHQgcmVjZW50bHkuIFRoYXQmcnNxdW87cyB3aHkgZGlmZmVyZW50IGJyaWRnZXMgaGF2ZSBkaWZmZXJlbnQgd2VpZ2h0IGxpbWl0cy4gTmFtZWx5LCBvbmx5IHRoZSBjYXJzIHdpdGggd2VpZ2h0IG5vdCBleGNlZWRpbmcgZDxzdWI+aTxcL3N1Yj4gY2FuIGRyaXZlIHRocm91Z2ggdGhlIGktdGggYnJpZGdlLiBTb21ldGltZXMgc29tZSBvZiB0aGUgYnJpZGdlcyBpbiBTdC4gUGV0ZXJzYnVyZyBhcmUgYmVpbmcgcmVub3ZhdGVkLCBidXQgdGhpcyBkb2VzbiZyc3F1bzt0IG5lY2Vzc2FyaWx5IG1ha2UgdGhlIGJyaWRnZSBzdHJvbmdlciwgc28sIHNvbWUgb2YgZDxzdWI+aTxcL3N1Yj4gbWF5IGVpdGhlciBpbmNyZWFzZSBvciBkZWNyZWFzZS4gWW91IGRldmVsb3AgYSBwcm9kdWN0IHRoYXQgd2lsbCBoZWxwIGNpdGl6ZW5zIGFuZCBjaXR5IGd1ZXN0cy4gQ3VycmVudGx5LCB5b3UgZGV2ZWxvcCBhIG1vZHVsZSB0aGF0IGhhcyB0byBhbnN3ZXIgdHdvIHR5cGVzIG9mIHF1ZXJpZXM6PFwvcD5cclxuXHJcbjxvbD5cclxuXHQ8bGk+VGhlIHdlaWdodCBsaW1pdCBvZiBicmlkZ2UgYjxzdWI+ajxcL3N1Yj4gYmVjYW1lIGVxdWFsIHRvIHI8c3ViPmo8XC9zdWI+LjxcL2xpPlxyXG5cdDxsaT5Db3VudCB0aGUgbnVtYmVyIG9mIGlzbGFuZHMsIHRoYXQgY2FuIGJlIHJlYWNoZWQgYnkgdGhlIGNhciBvZiB3ZWlnaHQgZXF1YWwgdG8gdzxzdWI+ajxcL3N1Yj4gZnJvbSBpc2xhbmQgczxzdWI+ajxcL3N1Yj4uPFwvbGk+XHJcbjxcL29sPlxyXG5cclxuPHA+QW5zd2VyIGFsbCBxdWVyaWVzIG9mIHRoZSBzZWNvbmQgdHlwZS48XC9wPlxyXG4iLCJpbnB1dCI6IiIsIm91dHB1dCI6IiIsImhpbnQiOiI8cD5HcmVlbiBsaW5lcyByZXByZXNlbnQgYnJpZGdlcyB0aGF0IHRoZSBjYXIgZnJvbSB0aGUgcXVlcnkgY2FuIGRyaXZlIHRocm91Z2guIEdyZWVuIHZlcnRpY2VzIHJlcHJlc2VudCBpc2xhbmRzIHRoYXQgYXJlIHJlYWNoYWJsZSBieSB0aGlzIGNhci4gQXJyb3cgcG9pbnRzIHRvIHRoZSBpc2xhbmQsIHdoZXJlIHRoZSBjYXIgaXMgbG9jYXRlZCBpbml0aWFsbHkuPFwvcD5cclxuXHJcbjxwIHN0eWxlPVwidGV4dC1hbGlnbjogY2VudGVyO1wiPjxpbWcgYWx0PVwiXCIgc3JjPVwiaHR0cHM6XC9cL3VwbG9hZC5hY21pY3BjLm5ldFwvNThhYWExMTctMzg2NS00MGUyLWFiZGEtZDlkOTQ5YzhjNTBhXC8tXC9wcmV2aWV3XC9cIiBzdHlsZT1cIndpZHRoOiA1NjRweDsgaGVpZ2h0OiAxNzRweDtcIiBcLz48XC9wPlxyXG5cclxuPHAgc3R5bGU9XCJ0ZXh0LWFsaWduOiBjZW50ZXI7XCI+UGljdHVyZSBmb3IgdGhlIGZpcnN0IHRlc3Q8XC9wPlxyXG5cclxuPHAgc3R5bGU9XCJ0ZXh0LWFsaWduOiBjZW50ZXI7XCI+PGltZyBhbHQ9XCJcIiBzcmM9XCJodHRwczpcL1wvdXBsb2FkLmFjbWljcGMubmV0XC9kYTA4NDBkNi1lNTQ2LTQ5MjAtYmQ5MS1lNzZhOTNlYzlmMTZcLy1cL3ByZXZpZXdcL1wiIHN0eWxlPVwid2lkdGg6IDU1MHB4OyBoZWlnaHQ6IDQ3OXB4O1wiIFwvPjxcL3A+XHJcblxyXG48cCBzdHlsZT1cInRleHQtYWxpZ246IGNlbnRlcjtcIj5QaWN0dXJlIGZvciB0aGUgc2Vjb25kIHRlc3Q8XC9wPlxyXG4iLCJvcmlnaW5hbCI6IjAiLCJodG1sX3RpdGxlIjoiMCIsInByb2JsZW1fbGFuZ190Y29kZSI6IkVuZ2xpc2gifV0=