시간 제한메모리 제한제출정답맞힌 사람정답 비율
3 초 1024 MB2411950.000%

문제

2차원 평면에서 보통 사용되는 거리 체계는 유클리드(Euclid) 거리다. 유클리드 거리에서 두 점 $(x_1, y_1)$과 $(x_2, y_2)$사이의 거리는 $\sqrt{(x_1 - x_2)^2 + (y_1 - y_2)^2}$로 나타낸다.

이 문제에서는 유클리드 거리 대신 체비쇼프(Chebyshev) 거리를 다룬다. 체비쇼프 거리에서 $(x_1, y_1)$과 $(x_2, y_2)$사이의 거리는 $\max{(|x_1 - x_2|, |y_1 - y_2|)}$로 나타낸다.

어떤 거리 체계에 대하여 반지름이 $r$인 은 특정한 점 $(x_c, y_c)$와의 거리가 $r$인 점 $(x,y)$의 집합이다. 원의 형태는 어떤 거리 체계를 쓰느냐 에 따라 다른데, (그림 1)에서 보이듯 유클리드 거리에서는 우리가 보통 아는 원형이고, 체비쇼프 거리에서는 한 변의 길이가 $2r$인 정사각형이 원이 된다.

그림 1 : 유클리드 거리와 체비쇼프 거리에서의 원

또한, 어떤 거리 체계에 대하여 안쪽 반지름이 $l$이고, 바깥쪽 반지름이 $r$인 도넛은 특정한 점 $(x_c, y_c)$와의 거리가 $l$이상 $r$이하인 점 $(x,y)$들의 집합이다.

(그림 2)에서 왼쪽은 유클리드 거리에서의 도넛이고, 오른쪽은 체비쇼프 거리에서의 도넛이다. 회색 영역이 도넛에 포함된 영역이다.

그림 2 : 유클리드 거리와 체비쇼프 거리에서의 도넛

범수는 $N$개의 점 $P_1$, $P_2$, $\cdots$, $P_N$과 체비쇼프 거리에서의 안쪽 반지름이 $L$이고 바깥쪽 반지름이 $R$인 도넛을 가지고 놀고 있다. $P_i$는 $(x_i, y_i)$에 위치하며, 도넛중심의 위치는 중심의 좌표를 격자점에 두는 것만 지키면, 범수가 마음껏 바꿀 수 있다. 만약 $P_i$가 도넛 영역에 들어가 있다면, 범수는 강제적으로 $S_i$점을 얻게 되고, 도넛 영역에 들어가 있지 않다면 아무 점수도 얻지 않는다. 이 때, 범수가 얻을 수 있는 점수의 최댓값을 구하는 프로그램을 작성하라.

입력

입력의 첫 번째 줄에는 세 정수 $N$, $L$, $R$($1 ≤ N ≤ 10^5$, $1 ≤ L ≤ R ≤ 10^9$)이 공백 하나로 구분되어 주어진다.

다음 $N$개의 줄의 $i$번째 줄에는 $x_i$, $y_i$, $S_i$($-10^9 ≤ x_i, y_i ≤ 10^9$, $-10^4 ≤ S_i ≤ 10^4$)가 공백 하나로 구분되어 주어진다. 같은 위치에 여러 점이 있을 수 있다.

출력

첫 번째 줄에 범수가 얻을 수 있는 점수의 최댓값을 출력한다.

예제 입력 1

4 1 1
0 1 1
0 -1 1
1 0 -100
-1 0 -100

예제 출력 1

2

예제 입력 2

4 1 2
0 1 1
0 -1 1
1 0 -100
-1 0 -100

예제 출력 2

1

힌트

첫 번째 예제는 도넛의 중심을 $(1,0)$이나 $(-1,0)$에 두면 된다.

두 번째 예제는 도넛이 너무 커졌기 때문에, $-100$을 피해서 $1$하나를 포함 시키는 것이 최적이다.

W3sicHJvYmxlbV9pZCI6IjE5MjkxIiwicHJvYmxlbV9sYW5nIjoiMCIsInRpdGxlIjoiRG9udXQtc2hhcGVkIEVuY2xvc3VyZSIsImRlc2NyaXB0aW9uIjoiPHA+Mlx1Y2MyOFx1YzZkMCBcdWQzYzlcdWJhNzRcdWM1ZDBcdWMxMWMgXHViY2Y0XHVkMWI1IFx1YzBhY1x1YzZhOVx1YjQxOFx1YjI5NCBcdWFjNzBcdWI5YWMgXHVjY2I0XHVhY2M0XHViMjk0IFx1YzcyMFx1ZDA3NFx1YjlhY1x1YjRkYyhFdWNsaWQpIFx1YWM3MFx1YjlhY1x1YjJlNC4gXHVjNzIwXHVkMDc0XHViOWFjXHViNGRjJm5ic3A7XHVhYzcwXHViOWFjXHVjNWQwXHVjMTFjIFx1YjQ1MCBcdWM4MTAgJCh4XzEsIHlfMSkkXHVhY2ZjICQoeF8yLCB5XzIpJFx1YzBhY1x1Yzc3NFx1Yzc1OCBcdWFjNzBcdWI5YWNcdWIyOTQgJFxcc3FydHsoeF8xIC0geF8yKV4yICsgKHlfMSAtIHlfMileMn0kXHViODVjIFx1YjA5OFx1ZDBjMFx1YjBiOFx1YjJlNC48XC9wPlxyXG5cclxuPHA+XHVjNzc0IFx1YmIzOFx1YzgxY1x1YzVkMFx1YzExY1x1YjI5NCBcdWM3MjBcdWQwNzRcdWI5YWNcdWI0ZGMgXHVhYzcwXHViOWFjIFx1YjMwMFx1YzJlMCBcdWNjYjRcdWJlNDRcdWMxZmNcdWQ1MDQoQ2hlYnlzaGV2KSBcdWFjNzBcdWI5YWNcdWI5N2MgXHViMmU0XHViOGVjXHViMmU0LiBcdWNjYjRcdWJlNDRcdWMxZmNcdWQ1MDQgXHVhYzcwXHViOWFjXHVjNWQwXHVjMTFjICQoeF8xLCB5XzEpJFx1YWNmYyAkKHhfMiwgeV8yKSRcdWMwYWNcdWM3NzRcdWM3NTggXHVhYzcwXHViOWFjXHViMjk0ICRcXG1heHsofHhfMSAtIHhfMnwsIHx5XzEgLSB5XzJ8KX0kXHViODVjIFx1YjA5OFx1ZDBjMFx1YjBiOFx1YjJlNC48XC9wPlxyXG5cclxuPHA+XHVjNWI0XHViNWE0IFx1YWM3MFx1YjlhYyBcdWNjYjRcdWFjYzRcdWM1ZDAgXHViMzAwXHVkNTU4XHVjNWVjIFx1YmMxOFx1YzljMFx1Yjk4NFx1Yzc3NCAkciRcdWM3NzggPHN0cm9uZz5cdWM2ZDA8XC9zdHJvbmc+XHVjNzQwIFx1ZDJiOVx1YzgxNVx1ZDU1YyBcdWM4MTAgJCh4X2MsIHlfYykkXHVjNjQwXHVjNzU4IFx1YWM3MFx1YjlhY1x1YWMwMCAkciRcdWM3NzggXHVjODEwICQoeCx5KSRcdWM3NTggXHVjOWQxXHVkNTY5XHVjNzc0XHViMmU0LiBcdWM2ZDBcdWM3NTggXHVkNjE1XHVkMGRjXHViMjk0IFx1YzViNFx1YjVhNCBcdWFjNzBcdWI5YWMgXHVjY2I0XHVhY2M0XHViOTdjIFx1YzRmMFx1YjI5MFx1YjBkMCBcdWM1ZDAgXHViNTMwXHViNzdjIFx1YjJlNFx1Yjk3OFx1YjM3MCwgKFx1YWRmOFx1YjliYyAxKVx1YzVkMFx1YzExYyBcdWJjZjRcdWM3NzRcdWI0ZWYgXHVjNzIwXHVkMDc0XHViOWFjXHViNGRjIFx1YWM3MFx1YjlhY1x1YzVkMFx1YzExY1x1YjI5NCBcdWM2YjBcdWI5YWNcdWFjMDAgXHViY2Y0XHVkMWI1IFx1YzU0NFx1YjI5NCBcdWM2ZDBcdWQ2MTVcdWM3NzRcdWFjZTAsJm5ic3A7XHVjY2I0XHViZTQ0XHVjMWZjXHVkNTA0IFx1YWM3MFx1YjlhY1x1YzVkMFx1YzExY1x1YjI5NCBcdWQ1NWMgXHViY2MwXHVjNzU4IFx1YWUzOFx1Yzc3NFx1YWMwMCAkMnIkXHVjNzc4Jm5ic3A7XHVjODE1XHVjMGFjXHVhYzAxXHVkNjE1XHVjNzc0IFx1YzZkMFx1Yzc3NCBcdWI0MWNcdWIyZTQuPFwvcD5cclxuXHJcbjxwIHN0eWxlPVwidGV4dC1hbGlnbjogY2VudGVyO1wiPjxpbWcgYWx0PVwiXCIgc3JjPVwiaHR0cHM6XC9cL3VwbG9hZC5hY21pY3BjLm5ldFwvNGQxN2FjNzMtNjVkMi00YjEwLTljNDUtOTdmNzRiOWJhZTc3XC8tXC9wcmV2aWV3XC9cIiBzdHlsZT1cIndpZHRoOiAzNjFweDsgaGVpZ2h0OiAxODNweDtcIiBcLz48XC9wPlxyXG5cclxuPHAgc3R5bGU9XCJ0ZXh0LWFsaWduOiBjZW50ZXI7XCI+XHVhZGY4XHViOWJjIDEgOiBcdWM3MjBcdWQwNzRcdWI5YWNcdWI0ZGMgXHVhYzcwXHViOWFjXHVjNjQwIFx1Y2NiNFx1YmU0NFx1YzFmY1x1ZDUwNCBcdWFjNzBcdWI5YWNcdWM1ZDBcdWMxMWNcdWM3NTggXHVjNmQwPFwvcD5cclxuXHJcbjxwPlx1YjYxMFx1ZDU1YywgXHVjNWI0XHViNWE0IFx1YWM3MFx1YjlhYyBcdWNjYjRcdWFjYzRcdWM1ZDAgXHViMzAwXHVkNTU4XHVjNWVjIFx1YzU0OFx1Y2FiZCBcdWJjMThcdWM5YzBcdWI5ODRcdWM3NzQgJGwkXHVjNzc0XHVhY2UwLCBcdWJjMTRcdWFlNjVcdWNhYmQgXHViYzE4XHVjOWMwXHViOTg0XHVjNzc0ICRyJFx1Yzc3OCA8c3Ryb25nPlx1YjNjNFx1YjExYjxcL3N0cm9uZz5cdWM3NDAgXHVkMmI5XHVjODE1XHVkNTVjIFx1YzgxMCAkKHhfYywgeV9jKSRcdWM2NDBcdWM3NTggXHVhYzcwXHViOWFjXHVhYzAwICRsJFx1Yzc3NFx1YzBjMSAkciRcdWM3NzRcdWQ1NThcdWM3NzggXHVjODEwICQoeCx5KSRcdWI0ZTRcdWM3NTggXHVjOWQxXHVkNTY5XHVjNzc0XHViMmU0LjxcL3A+XHJcblxyXG48cD4oXHVhZGY4XHViOWJjIDIpXHVjNWQwXHVjMTFjIFx1YzY3Y1x1Y2FiZFx1Yzc0MCBcdWM3MjBcdWQwNzRcdWI5YWNcdWI0ZGMgXHVhYzcwXHViOWFjXHVjNWQwXHVjMTFjXHVjNzU4IFx1YjNjNFx1YjExYlx1Yzc3NFx1YWNlMCwgXHVjNjI0XHViOTc4XHVjYWJkXHVjNzQwIFx1Y2NiNFx1YmU0NFx1YzFmY1x1ZDUwNCBcdWFjNzBcdWI5YWNcdWM1ZDBcdWMxMWNcdWM3NTggXHViM2M0XHViMTFiXHVjNzc0XHViMmU0LiBcdWQ2OGNcdWMwYzkgXHVjNjAxXHVjNWVkXHVjNzc0IFx1YjNjNFx1YjExYlx1YzVkMCBcdWQzZWNcdWQ1NjhcdWI0MWMgXHVjNjAxXHVjNWVkXHVjNzc0XHViMmU0LjxcL3A+XHJcblxyXG48cCBzdHlsZT1cInRleHQtYWxpZ246IGNlbnRlcjtcIj48aW1nIGFsdD1cIlwiIHNyYz1cImh0dHBzOlwvXC91cGxvYWQuYWNtaWNwYy5uZXRcL2NiN2EyYWYwLTcwNjYtNDA2Yy04MTE4LTcxZTY5YjEwZWM1YVwvLVwvcHJldmlld1wvXCIgc3R5bGU9XCJ3aWR0aDogMzgzcHg7IGhlaWdodDogMTk2cHg7XCIgXC8+PFwvcD5cclxuXHJcbjxwIHN0eWxlPVwidGV4dC1hbGlnbjogY2VudGVyO1wiPlx1YWRmOFx1YjliYyAyIDogXHVjNzIwXHVkMDc0XHViOWFjXHViNGRjIFx1YWM3MFx1YjlhY1x1YzY0MCBcdWNjYjRcdWJlNDRcdWMxZmNcdWQ1MDQgXHVhYzcwXHViOWFjXHVjNWQwXHVjMTFjXHVjNzU4IFx1YjNjNFx1YjExYjxcL3A+XHJcblxyXG48cD5cdWJjOTRcdWMyMThcdWIyOTQgJE4kXHVhYzFjXHVjNzU4IFx1YzgxMCAkUF8xJCwgJFBfMiQsICRcXGNkb3RzJCwgJFBfTiRcdWFjZmMgXHVjY2I0XHViZTQ0XHVjMWZjXHVkNTA0IFx1YWM3MFx1YjlhY1x1YzVkMFx1YzExY1x1Yzc1OCBcdWM1NDhcdWNhYmQgXHViYzE4XHVjOWMwXHViOTg0XHVjNzc0ICRMJFx1Yzc3NFx1YWNlMCBcdWJjMTRcdWFlNjVcdWNhYmQgXHViYzE4XHVjOWMwXHViOTg0XHVjNzc0ICRSJFx1Yzc3OCBcdWIzYzRcdWIxMWJcdWM3NDQgXHVhYzAwXHVjOWMwXHVhY2UwIFx1YjE4MFx1YWNlMCBcdWM3ODhcdWIyZTQuICRQX2kkXHViMjk0ICQoeF9pLCB5X2kpJFx1YzVkMCBcdWM3MDRcdWNlNThcdWQ1NThcdWJhNzAsIFx1YjNjNFx1YjExYlx1YzkxMVx1YzJlY1x1Yzc1OCBcdWM3MDRcdWNlNThcdWIyOTQgXHVjOTExXHVjMmVjXHVjNzU4IFx1Yzg4Y1x1ZDQ1Y1x1Yjk3YyBcdWFjYTlcdWM3OTBcdWM4MTBcdWM1ZDAgXHViNDUwXHViMjk0IFx1YWM4M1x1YjljYyBcdWM5YzBcdWQwYTRcdWJhNzQsIFx1YmM5NFx1YzIxOFx1YWMwMCBcdWI5YzhcdWM3NGNcdWFlY2YgXHViYzE0XHVhZmMwIFx1YzIxOCBcdWM3ODhcdWIyZTQuIFx1YjljY1x1YzU3ZCAkUF9pJFx1YWMwMCZuYnNwO1x1YjNjNFx1YjExYiBcdWM2MDFcdWM1ZWRcdWM1ZDAgXHViNGU0XHVjNWI0XHVhYzAwIFx1Yzc4OFx1YjJlNFx1YmE3NCwgXHViYzk0XHVjMjE4XHViMjk0IFx1YWMxNVx1YzgxY1x1YzgwMVx1YzczY1x1Yjg1YyAkU19pJFx1YzgxMFx1Yzc0NCBcdWM1YmJcdWFjOGMgXHViNDE4XHVhY2UwLCBcdWIzYzRcdWIxMWIgXHVjNjAxXHVjNWVkXHVjNWQwIFx1YjRlNFx1YzViNFx1YWMwMCBcdWM3ODhcdWM5YzAgXHVjNTRhXHViMmU0XHViYTc0IFx1YzU0NFx1YmIzNCBcdWM4MTBcdWMyMThcdWIzYzQgXHVjNWJiXHVjOWMwIFx1YzU0YVx1YjI5NFx1YjJlNC4gXHVjNzc0IFx1YjU0YywmbmJzcDtcdWJjOTRcdWMyMThcdWFjMDAgXHVjNWJiXHVjNzQ0IFx1YzIxOCBcdWM3ODhcdWIyOTQgXHVjODEwXHVjMjE4XHVjNzU4IFx1Y2Q1Y1x1YjMxM1x1YWMxMlx1Yzc0NCBcdWFkNmNcdWQ1NThcdWIyOTQgXHVkNTA0XHViODVjXHVhZGY4XHViN2E4XHVjNzQ0IFx1Yzc5MVx1YzEzMVx1ZDU1OFx1Yjc3Yy48XC9wPlxyXG4iLCJpbnB1dCI6IjxwPlx1Yzc4NVx1YjgyNVx1Yzc1OCBcdWNjYWIgXHViYzg4XHVjOWY4IFx1YzkwNFx1YzVkMFx1YjI5NCBcdWMxMzggXHVjODE1XHVjMjE4ICROJCwgJEwkLCAkUiQoJDEgJmxlOyBOICZsZTsgMTBeNSQsICQxICZsZTsgTCAmbGU7IFIgJmxlOyAxMF45JClcdWM3NzQgXHVhY2Y1XHViYzMxIFx1ZDU1OFx1YjA5OFx1Yjg1YyBcdWFkNmNcdWJkODRcdWI0MThcdWM1YjQgXHVjOGZjXHVjNWI0XHVjOWM0XHViMmU0LjxcL3A+XHJcblxyXG48cD5cdWIyZTRcdWM3NGMgJE4kXHVhYzFjXHVjNzU4IFx1YzkwNFx1Yzc1OCAkaSRcdWJjODhcdWM5ZjggXHVjOTA0XHVjNWQwXHViMjk0ICR4X2kkLCAkeV9pJCwgJFNfaSQoJC0xMF45ICZsZTsgeF9pLCB5X2kgJmxlOyAxMF45JCwgJC0xMF40ICZsZTsgU19pICZsZTsgMTBeNCQpXHVhYzAwJm5ic3A7XHVhY2Y1XHViYzMxIFx1ZDU1OFx1YjA5OFx1Yjg1YyBcdWFkNmNcdWJkODRcdWI0MThcdWM1YjQgXHVjOGZjXHVjNWI0XHVjOWM0XHViMmU0LiBcdWFjMTlcdWM3NDAgXHVjNzA0XHVjZTU4XHVjNWQwIFx1YzVlY1x1YjdlYyBcdWM4MTBcdWM3NzQgXHVjNzg4XHVjNzQ0IFx1YzIxOCBcdWM3ODhcdWIyZTQuPFwvcD5cclxuIiwib3V0cHV0IjoiPHA+XHVjY2FiIFx1YmM4OFx1YzlmOCBcdWM5MDRcdWM1ZDAgXHViYzk0XHVjMjE4XHVhYzAwIFx1YzViYlx1Yzc0NCBcdWMyMTggXHVjNzg4XHViMjk0IFx1YzgxMFx1YzIxOFx1Yzc1OCBcdWNkNWNcdWIzMTNcdWFjMTJcdWM3NDQgXHVjZDljXHViODI1XHVkNTVjXHViMmU0LjxcL3A+XHJcbiIsImhpbnQiOiI8cD5cdWNjYWIgXHViYzg4XHVjOWY4IFx1YzYwOFx1YzgxY1x1YjI5NCBcdWIzYzRcdWIxMWJcdWM3NTggXHVjOTExXHVjMmVjXHVjNzQ0ICQoMSwwKSRcdWM3NzRcdWIwOTggJCgtMSwwKSRcdWM1ZDAgXHViNDUwXHViYTc0IFx1YjQxY1x1YjJlNC48XC9wPlxyXG5cclxuPHA+XHViNDUwIFx1YmM4OFx1YzlmOCBcdWM2MDhcdWM4MWNcdWIyOTQgXHViM2M0XHViMTFiXHVjNzc0IFx1YjEwOFx1YmIzNCBcdWNlZTRcdWM4NGNcdWFlMzAgXHViNTRjXHViYjM4XHVjNWQwLCAkLTEwMCRcdWM3NDQgXHVkNTNjXHVkNTc0XHVjMTFjICQxJFx1ZDU1OFx1YjA5OFx1Yjk3YyBcdWQzZWNcdWQ1NjggXHVjMmRjXHVkMGE0XHViMjk0IFx1YWM4M1x1Yzc3NCBcdWNkNWNcdWM4MDFcdWM3NzRcdWIyZTQuPFwvcD5cclxuIiwib3JpZ2luYWwiOiIxIiwiaHRtbF90aXRsZSI6IjAiLCJwcm9ibGVtX2xhbmdfdGNvZGUiOiJLb3JlYW4ifSx7InByb2JsZW1faWQiOiIxOTI5MSIsInByb2JsZW1fbGFuZyI6IjEiLCJ0aXRsZSI6IkRvbnV0IiwiZGVzY3JpcHRpb24iOiI8cD5JbiB0aGlzIHByb2JsZW0sIHdlIHdpbGwgdXNlIENoZWJ5c2hldiBkaXN0YW5jZSBvbiBhIENhcnRlc2lhbiBwbGFuZS4gVGhlIENoZWJ5c2hldiBkaXN0YW5jZSBiZXR3ZWVuIHR3byBwb2ludHMgJChwX3gscF95KSQgYW5kICQocV94LHFfeSkkIG9uIHRoZSBwbGFuZSBpcyAkXFxtYXh7XFxiaWcofHBfeC1xX3h8LHxwX3ktcV95fFxcYmlnKX0kLjxcL3A+XHJcblxyXG48cD5MZXQgdXMgZGVmaW5lIGEgPHN0cm9uZz5kb251dDxcL3N0cm9uZz4mbmJzcDtvbiB0aGUgcGxhbmUgYXMgdGhlIHNldCBvZiBwb2ludHMgaW4gYSBjZXJ0YWluIGRpc3RhbmNlIHJhbmdlIGZyb20gYSBjZXJ0YWluIHBvaW50LCB0aGUgZG9udXQmIzM5O3MgY2VudGVyLiBNb3JlIGZvcm1hbGx5LCB0aGUgZG9udXQgd2l0aCBjZW50ZXIgJCh4X2MseV9jKSQsIGlubmVyIHJhZGl1cyAkbCQgYW5kIG91dGVyIHJhZGl1cyAkciQgaXMgdGhlIHNldCBvZiBwb2ludHMgJCh4LHkpJCBzdWNoIHRoYXQgJGwgXFxsZXEgXFxtYXh7XFxiaWcofHgteF9jfCx8eS15X2N8XFxiaWcpfSBcXGxlcSByJC48XC9wPlxyXG5cclxuPHA+VGhlcmUgYXJlICRuJCBwb2ludHMgc2VsZWN0ZWQgb24gdGhlIENhcnRlc2lhbiBwbGFuZS4gUG9pbnRzIGFyZSBudW1iZXJlZCBmcm9tICQxJCB0byAkbiQsIGFuZCBlYWNoIHBvaW50IGhhcyBhIHNjb3JlIGFzc29jaWF0ZWQgd2l0aCBpdC48XC9wPlxyXG5cclxuPHA+V2Ugd2FudCB0byBwbGFjZSBhIGRvbnV0IG9uIHRoZSBwbGFuZS4gVGhlIGlubmVyIHJhZGl1cyBvZiB0aGUgZG9udXQgd2lsbCBiZSAkbCQsIHRoZSBvdXRlciByYWRpdXMgd2lsbCBiZSAkciQsIGFuZCB0aGUgY2VudGVyIG9mIHRoZSBkb251dCBpcyBub3QgeWV0IGRldGVybWluZWQ6IHlvdSBoYXZlIHRvIGRlY2lkZSB3aGVyZSB0byBwbGFjZSBpdC4gSG93ZXZlciwgYm90aCBjb29yZGluYXRlcyBvZiB0aGUgY2VudGVyIG11c3QgYmUgaW50ZWdlcnMuIEFmdGVyIHlvdSBwbGFjZSB0aGUgZG9udXQsIGl0cyBzY29yZSB3aWxsIGJlIHRoZSBzdW0gb2YgdGhlIHNjb3JlcyBvZiBwb2ludHMgd2hpY2ggYmVsb25nIHRvIHRoZSBkb251dC48XC9wPlxyXG5cclxuPHA+WW91IGFyZSBnaXZlbiB0aGUgY29vcmRpbmF0ZXMgb2YgdGhlIHNlbGVjdGVkIHBvaW50cyBhbmQgdGhlIHNjb3JlIGFzc29jaWF0ZWQgd2l0aCBlYWNoIHBvaW50LiBDYWxjdWxhdGUgdGhlIG1heGltdW0gcG9zc2libGUgc2NvcmUgb2YgdGhlIGRvbnV0IHlvdSBjYW4gcGxhY2UuPFwvcD5cclxuIiwiaW5wdXQiOiI8cD5UaGUgZmlyc3QgbGluZSBjb250YWlucyB0aHJlZSBpbnRlZ2VyczogJG4kLCB0aGUgbnVtYmVyIG9mIHNlbGVjdGVkIHBvaW50cyBvbiB0aGUgcGxhbmUsICRsJCwgdGhlIGlubmVyIHJhZGl1cyBvZiB0aGUgZG9udXQsIGFuZCAkciQsIHRoZSBvdXRlciByYWRpdXMgb2YgdGhlIGRvbnV0ICgkMSBcXGxlcSBuIFxcbGVxIDEwXjUkLCAkMSBcXGxlcSBsIFxcbGVxIHIgXFxsZXEgMTBeOSQpLjxcL3A+XHJcblxyXG48cD5UaGUgZm9sbG93aW5nICRuJCBsaW5lcyBkZXNjcmliZXMgc2VsZWN0ZWQgcG9pbnRzLCBvbmUgcGVyIGxpbmUuIEVhY2ggb2YgdGhlc2UgbGluZXMgY29udGFpbnMgdGhyZWUgaW50ZWdlcnMgJHgkLCAkeSQsIGFuZCAkcyQ6IHRoZSBjb29yZGluYXRlcyBvZiB0aGUgcG9pbnQgYW5kIHRoZSBzY29yZSBhc3NvY2lhdGVkIHdpdGggaXQgKCQtMTBeOSBcXGxlcSB4LCB5IFxcbGVxIDEwXjkkLCAkLTEwXjQgXFxsZXEgcyBcXGxlcSAxMF40JCkuIE5vdGUgdGhhdCBzb21lIHBvaW50cyBtYXkgY29pbmNpZGUuPFwvcD5cclxuIiwib3V0cHV0IjoiPHA+UHJpbnQgdGhlIG1heGltdW0gc2NvcmUgb2YgdGhlIGRvbnV0LjxcL3A+XHJcbiIsImhpbnQiOiIiLCJvcmlnaW5hbCI6IjAiLCJodG1sX3RpdGxlIjoiMCIsInByb2JsZW1fbGFuZ190Y29kZSI6IkVuZ2xpc2gifV0=