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

문제

코로나 19이후 우울함에 빠져 있는 소년 짐(Jim)은 세상의 모든 짐을 지고 있는 느낌이다. 짐은 친구들의 행복 정도를 측정하고 싶어졌다. 짐이 생각한 한 가지 방법은 친구들이 보낸 문자메시지를 분석하여 친구들이 행복한지 판단하는 것이다. 문자 메시지의 글자가 단어 “HAPPY”에 나타나면 그 글자는 행복한 글자이고 단어 “SAD”에 나타나면 그 글자는 우울한 글자이다. 글자 ‘A’는 양쪽에 모두 나타나므로 행복하기도 하고 우울하기도 한 글자이다. 글자 ‘B’는 어느 쪽에도 나타나지 않으므로 행복하지도 않고 우울하지도 않은 글자이다.

메시지의 행복 지수는 행복 점수와 우울 점수를 이용하여 계산하는데, 행복 점수와 우울 점수는 글자가 행복한 글자인지 우울한 글자인지 여부에 따라 계산한다. 어떤 글자가 행복하면 행복 점수 $P_H$를 하나 증가시키고 어떤 글자가 우울하면 우울 점수 $P_G$를 하나 증가시킨다. 행복 지수 $H$는 다음과 같이 계산한다:

$$H = \frac{P_H}{P_H + P_G}$$

행복하지도 않고 우울하지도 않은 글자는 $P_H$나 $P_G$ 어느 쪽에도 계산하지 않는다. 행복 점수와 우울 점수가 모두 $0$인 경우($P_H = P_G = 0$)에 행복 지수는 $0.5$라고 가정한다.

예를 들어, 친구로부터 온 메시지가 다음과 같다고 하자.

“SAD MOVIES ALWAYS MAKE ME CRY”

AY가 각각 $4$회, $2$회 나타났으므로 행복 점수는 $6$이다 (ASAD에 한 번, ALWAYS에 두 번, MAKE에 한 번 나타나고, YALWAYSCRY에 각각 한 번씩 나타남). SA, D가 각각 $3$ 회, $4$ 회, $1$ 회 나타났으므로 우울 점수는 $8$이다 (SSADMOVIES, ALWAYS 에 각 한 번, $A$는 행복 점수 산출시와 마찬가지로 $4$번, DSAD에 한 번 나타남). $P_H = 6$이고 $P_G = 8$이므로 행복 지수는 $H = \frac{6}{14} = 0.4286$, 즉 $42.86\%$로 산출된다. 행복 지수가 $50\%$보다 낮으므로 친구는 우울하다.

짐의 친구의 문자 메시지가 주어졌을 때, 친구의 행복 지수를 계산하는 프로그램을 작성하라.

입력

입력은 표준 입력을 사용한다. 입력은 문자 메시지를 포함하는 한 행으로 구성된다. 메시지는 영문자 알파벳 단어로만 구성되는데, 단어는 공백으로 분리되어 주어진다. 각 단어는 대문자로만 구성된다. 단어의 최대 길이는 $20$이며 최대 단어 수는 $80$이다.

출력

출력은 표준 출력을 사용한다. 출력은 한 행으로 구성된다. 출력 행에는 산출된 행복 지수를 출력한다. 행복 지수는 백분율로 출력하되 백분율 기호(%)는 출력하지 않는다. 행복 지수는 소수점 이하 두 자리까지 반올림하여 출력한다. $P_H$와 $P_G$가 모두 $0$인 경우에 행복 지수는 $0.5$라는 점에주의하자.

예제 입력 1

SAD MOVIES ALWAYS MAKE ME CRY

예제 출력 1

42.86

예제 입력 2

ICPC PROGRAMMING

예제 출력 2

75.00

예제 입력 3

WRITING

예제 출력 3

50.00
W3sicHJvYmxlbV9pZCI6IjMwNDQ1IiwicHJvYmxlbV9sYW5nIjoiMCIsInRpdGxlIjoiXHVkNTg5XHViY2Y1IFx1YzgxMFx1YzIxOCIsImRlc2NyaXB0aW9uIjoiPHA+XHVjZjU0XHViODVjXHViMDk4IDE5XHVjNzc0XHVkNmM0IFx1YzZiMFx1YzZiOFx1ZDU2OFx1YzVkMCBcdWJlNjBcdWM4MzggXHVjNzg4XHViMjk0IFx1YzE4Y1x1YjE0NCBcdWM5ZDAoSmltKVx1Yzc0MCBcdWMxMzhcdWMwYzFcdWM3NTggXHViYWE4XHViNGUwIFx1YzlkMFx1Yzc0NCBcdWM5YzBcdWFjZTAgXHVjNzg4XHViMjk0IFx1YjI5MFx1YjA4Y1x1Yzc3NFx1YjJlNC4gXHVjOWQwXHVjNzQwIFx1Y2U1Y1x1YWQ2Y1x1YjRlNFx1Yzc1OCBcdWQ1ODlcdWJjZjUgXHVjODE1XHViM2M0XHViOTdjIFx1Y2UyMVx1YzgxNVx1ZDU1OFx1YWNlMCBcdWMyZjZcdWM1YjRcdWM4NGNcdWIyZTQuIFx1YzlkMFx1Yzc3NCBcdWMwZGRcdWFjMDFcdWQ1NWMgXHVkNTVjIFx1YWMwMFx1YzljMCBcdWJjMjlcdWJjOTVcdWM3NDAgXHVjZTVjXHVhZDZjXHViNGU0XHVjNzc0IFx1YmNmNFx1YjBiOCBcdWJiMzhcdWM3OTBcdWJhNTRcdWMyZGNcdWM5YzBcdWI5N2MgXHViZDg0XHVjMTFkXHVkNTU4XHVjNWVjIFx1Y2U1Y1x1YWQ2Y1x1YjRlNFx1Yzc3NCBcdWQ1ODlcdWJjZjVcdWQ1NWNcdWM5YzAgXHVkMzEwXHViMmU4XHVkNTU4XHViMjk0IFx1YWM4M1x1Yzc3NFx1YjJlNC4gXHViYjM4XHVjNzkwIFx1YmE1NFx1YzJkY1x1YzljMFx1Yzc1OCBcdWFlMDBcdWM3OTBcdWFjMDAgXHViMmU4XHVjNWI0ICZsZHF1bzs8Y29kZT5IQVBQWTxcL2NvZGU+JnJkcXVvO1x1YzVkMCBcdWIwOThcdWQwYzBcdWIwOThcdWJhNzQgXHVhZGY4IFx1YWUwMFx1Yzc5MFx1YjI5NCBcdWQ1ODlcdWJjZjVcdWQ1NWMgXHVhZTAwXHVjNzkwXHVjNzc0XHVhY2UwIFx1YjJlOFx1YzViNCAmbGRxdW87PGNvZGU+U0FEPFwvY29kZT4mcmRxdW87XHVjNWQwIFx1YjA5OFx1ZDBjMFx1YjA5OFx1YmE3NCBcdWFkZjggXHVhZTAwXHVjNzkwXHViMjk0IFx1YzZiMFx1YzZiOFx1ZDU1YyBcdWFlMDBcdWM3OTBcdWM3NzRcdWIyZTQuIFx1YWUwMFx1Yzc5MCAmbHNxdW87PGNvZGU+QTxcL2NvZGU+JnJzcXVvO1x1YjI5NCBcdWM1OTFcdWNhYmRcdWM1ZDAgXHViYWE4XHViNDUwIFx1YjA5OFx1ZDBjMFx1YjA5OFx1YmJjMFx1Yjg1YyBcdWQ1ODlcdWJjZjVcdWQ1NThcdWFlMzBcdWIzYzQgXHVkNTU4XHVhY2UwIFx1YzZiMFx1YzZiOFx1ZDU1OFx1YWUzMFx1YjNjNCBcdWQ1NWMgXHVhZTAwXHVjNzkwXHVjNzc0XHViMmU0LiBcdWFlMDBcdWM3OTAgJmxzcXVvOzxjb2RlPkI8XC9jb2RlPiZyc3F1bztcdWIyOTQgXHVjNWI0XHViMjkwIFx1Y2FiZFx1YzVkMFx1YjNjNCBcdWIwOThcdWQwYzBcdWIwOThcdWM5YzAgXHVjNTRhXHVjNzNjXHViYmMwXHViODVjIFx1ZDU4OVx1YmNmNVx1ZDU1OFx1YzljMFx1YjNjNCBcdWM1NGFcdWFjZTAgXHVjNmIwXHVjNmI4XHVkNTU4XHVjOWMwXHViM2M0IFx1YzU0YVx1Yzc0MCBcdWFlMDBcdWM3OTBcdWM3NzRcdWIyZTQuPFwvcD5cclxuXHJcbjxwPlx1YmE1NFx1YzJkY1x1YzljMFx1Yzc1OCBcdWQ1ODlcdWJjZjUgXHVjOWMwXHVjMjE4XHViMjk0IFx1ZDU4OVx1YmNmNSBcdWM4MTBcdWMyMThcdWM2NDAgXHVjNmIwXHVjNmI4IFx1YzgxMFx1YzIxOFx1Yjk3YyBcdWM3NzRcdWM2YTlcdWQ1NThcdWM1ZWMgXHVhY2M0XHVjMGIwXHVkNTU4XHViMjk0XHViMzcwLCBcdWQ1ODlcdWJjZjUgXHVjODEwXHVjMjE4XHVjNjQwIFx1YzZiMFx1YzZiOCBcdWM4MTBcdWMyMThcdWIyOTQgXHVhZTAwXHVjNzkwXHVhYzAwIFx1ZDU4OVx1YmNmNVx1ZDU1YyBcdWFlMDBcdWM3OTBcdWM3NzhcdWM5YzAgXHVjNmIwXHVjNmI4XHVkNTVjIFx1YWUwMFx1Yzc5MFx1Yzc3OFx1YzljMCBcdWM1ZWNcdWJkODBcdWM1ZDAgXHViNTMwXHViNzdjIFx1YWNjNFx1YzBiMFx1ZDU1Y1x1YjJlNC4gXHVjNWI0XHViNWE0IFx1YWUwMFx1Yzc5MFx1YWMwMCBcdWQ1ODlcdWJjZjVcdWQ1NThcdWJhNzQgXHVkNTg5XHViY2Y1IFx1YzgxMFx1YzIxOCAkUF9IJFx1Yjk3YyBcdWQ1NThcdWIwOTggXHVjOTlkXHVhYzAwXHVjMmRjXHVkMGE0XHVhY2UwIFx1YzViNFx1YjVhNCBcdWFlMDBcdWM3OTBcdWFjMDAgXHVjNmIwXHVjNmI4XHVkNTU4XHViYTc0IFx1YzZiMFx1YzZiOCBcdWM4MTBcdWMyMTggJFBfRyRcdWI5N2MgXHVkNTU4XHViMDk4IFx1Yzk5ZFx1YWMwMFx1YzJkY1x1ZDBhOFx1YjJlNC4gXHVkNTg5XHViY2Y1IFx1YzljMFx1YzIxOCAkSCRcdWIyOTQgXHViMmU0XHVjNzRjXHVhY2ZjIFx1YWMxOVx1Yzc3NCBcdWFjYzRcdWMwYjBcdWQ1NWNcdWIyZTQ6PFwvcD5cclxuXHJcbjxwPiQkSCA9IFxcZnJhY3tQX0h9e1BfSCArIFBfR30kJDxcL3A+XHJcblxyXG48cD5cdWQ1ODlcdWJjZjVcdWQ1NThcdWM5YzBcdWIzYzQgXHVjNTRhXHVhY2UwIFx1YzZiMFx1YzZiOFx1ZDU1OFx1YzljMFx1YjNjNCBcdWM1NGFcdWM3NDAgXHVhZTAwXHVjNzkwXHViMjk0ICRQX0gkXHViMDk4ICRQX0ckIFx1YzViNFx1YjI5MCBcdWNhYmRcdWM1ZDBcdWIzYzQgXHVhY2M0XHVjMGIwXHVkNTU4XHVjOWMwIFx1YzU0YVx1YjI5NFx1YjJlNC4gXHVkNTg5XHViY2Y1IFx1YzgxMFx1YzIxOFx1YzY0MCBcdWM2YjBcdWM2YjggXHVjODEwXHVjMjE4XHVhYzAwIFx1YmFhOFx1YjQ1MCAkMCRcdWM3NzggXHVhY2JkXHVjNmIwKCRQX0ggPSBQX0cgPSAwJClcdWM1ZDAgXHVkNTg5XHViY2Y1IFx1YzljMFx1YzIxOFx1YjI5NCAkMC41JFx1Yjc3Y1x1YWNlMCBcdWFjMDBcdWM4MTVcdWQ1NWNcdWIyZTQuPFwvcD5cclxuXHJcbjxwPlx1YzYwOFx1Yjk3YyBcdWI0ZTRcdWM1YjQsIFx1Y2U1Y1x1YWQ2Y1x1Yjg1Y1x1YmQ4MFx1ZDEzMCBcdWM2MjggXHViYTU0XHVjMmRjXHVjOWMwXHVhYzAwIFx1YjJlNFx1Yzc0Y1x1YWNmYyBcdWFjMTlcdWIyZTRcdWFjZTAgXHVkNTU4XHVjNzkwLjxcL3A+XHJcblxyXG48YmxvY2txdW90ZT5cclxuPHA+PGNvZGU+JmxkcXVvO1NBRCBNT1ZJRVMgQUxXQVlTIE1BS0UgTUUgQ1JZJnJkcXVvOzxcL2NvZGU+PFwvcD5cclxuPFwvYmxvY2txdW90ZT5cclxuXHJcbjxwPjxjb2RlPkE8XC9jb2RlPlx1YzY0MCA8Y29kZT5ZPFwvY29kZT5cdWFjMDAgXHVhYzAxXHVhYzAxICQ0JFx1ZDY4YywgJDIkXHVkNjhjIFx1YjA5OFx1ZDBjMFx1YjBhY1x1YzczY1x1YmJjMFx1Yjg1YyBcdWQ1ODlcdWJjZjUgXHVjODEwXHVjMjE4XHViMjk0ICQ2JFx1Yzc3NFx1YjJlNCAoPGNvZGU+QTxcL2NvZGU+XHViMjk0IDxjb2RlPlNBRDxcL2NvZGU+XHVjNWQwIFx1ZDU1YyBcdWJjODgsIDxjb2RlPkFMV0FZUzxcL2NvZGU+XHVjNWQwIFx1YjQ1MCBcdWJjODgsIDxjb2RlPk1BS0U8XC9jb2RlPlx1YzVkMCBcdWQ1NWMgXHViYzg4IFx1YjA5OFx1ZDBjMFx1YjA5OFx1YWNlMCwgPGNvZGU+WTxcL2NvZGU+XHViMjk0IDxjb2RlPkFMV0FZUzxcL2NvZGU+XHVjNjQwIDxjb2RlPkNSWTxcL2NvZGU+XHVjNWQwIFx1YWMwMVx1YWMwMSBcdWQ1NWMgXHViYzg4XHVjNTI5IFx1YjA5OFx1ZDBjMFx1YjBhOCkuIDxjb2RlPlM8XC9jb2RlPlx1YzY0MCA8Y29kZT5BPFwvY29kZT4sIDxjb2RlPkQ8XC9jb2RlPlx1YWMwMCBcdWFjMDFcdWFjMDEgJDMkIFx1ZDY4YywgJDQkIFx1ZDY4YywgJDEkIFx1ZDY4YyBcdWIwOThcdWQwYzBcdWIwYWNcdWM3M2NcdWJiYzBcdWI4NWMgXHVjNmIwXHVjNmI4IFx1YzgxMFx1YzIxOFx1YjI5NCAkOCRcdWM3NzRcdWIyZTQgKDxjb2RlPlM8XC9jb2RlPlx1YjI5NCA8Y29kZT5TQUQ8XC9jb2RlPlx1YzY0MCA8Y29kZT5NT1ZJRVM8XC9jb2RlPiwgPGNvZGU+QUxXQVlTPFwvY29kZT4gXHVjNWQwIFx1YWMwMSBcdWQ1NWMgXHViYzg4LCAkQSRcdWIyOTQgXHVkNTg5XHViY2Y1IFx1YzgxMFx1YzIxOCBcdWMwYjBcdWNkOWNcdWMyZGNcdWM2NDAgXHViOWM4XHVjYzJjXHVhYzAwXHVjOWMwXHViODVjICQ0JFx1YmM4OCwgPGNvZGU+RDxcL2NvZGU+XHViMjk0IDxjb2RlPlNBRDxcL2NvZGU+XHVjNWQwIFx1ZDU1YyBcdWJjODggXHViMDk4XHVkMGMwXHViMGE4KS4gJFBfSCA9IDYkXHVjNzc0XHVhY2UwICRQX0cgPSA4JFx1Yzc3NFx1YmJjMFx1Yjg1YyBcdWQ1ODlcdWJjZjUgXHVjOWMwXHVjMjE4XHViMjk0ICRIID0gXFxmcmFjezZ9ezE0fSA9IDAuNDI4NiQsIFx1Yzk4OSAkNDIuODZcXCUkXHViODVjIFx1YzBiMFx1Y2Q5Y1x1YjQxY1x1YjJlNC4gXHVkNTg5XHViY2Y1IFx1YzljMFx1YzIxOFx1YWMwMCAkNTBcXCUkXHViY2Y0XHViMmU0IFx1YjBhZVx1YzczY1x1YmJjMFx1Yjg1YyBcdWNlNWNcdWFkNmNcdWIyOTQgXHVjNmIwXHVjNmI4XHVkNTU4XHViMmU0LjxcL3A+XHJcblxyXG48cD5cdWM5ZDBcdWM3NTggXHVjZTVjXHVhZDZjXHVjNzU4IFx1YmIzOFx1Yzc5MCBcdWJhNTRcdWMyZGNcdWM5YzBcdWFjMDAgXHVjOGZjXHVjNWI0XHVjODRjXHVjNzQ0IFx1YjU0YywgXHVjZTVjXHVhZDZjXHVjNzU4IFx1ZDU4OVx1YmNmNSBcdWM5YzBcdWMyMThcdWI5N2MgXHVhY2M0XHVjMGIwXHVkNTU4XHViMjk0IFx1ZDUwNFx1Yjg1Y1x1YWRmOFx1YjdhOFx1Yzc0NCBcdWM3OTFcdWMxMzFcdWQ1NThcdWI3N2MuPFwvcD5cclxuIiwiaW5wdXQiOiI8cD5cdWM3ODVcdWI4MjVcdWM3NDAgXHVkNDVjXHVjOTAwIFx1Yzc4NVx1YjgyNVx1Yzc0NCBcdWMwYWNcdWM2YTlcdWQ1NWNcdWIyZTQuIFx1Yzc4NVx1YjgyNVx1Yzc0MCBcdWJiMzhcdWM3OTAgXHViYTU0XHVjMmRjXHVjOWMwXHViOTdjIFx1ZDNlY1x1ZDU2OFx1ZDU1OFx1YjI5NCBcdWQ1NWMgXHVkNTg5XHVjNzNjXHViODVjIFx1YWQ2Y1x1YzEzMVx1YjQxY1x1YjJlNC4gXHViYTU0XHVjMmRjXHVjOWMwXHViMjk0IFx1YzYwMVx1YmIzOFx1Yzc5MCBcdWM1NGNcdWQzMGNcdWJjYjMgXHViMmU4XHVjNWI0XHViODVjXHViOWNjIFx1YWQ2Y1x1YzEzMVx1YjQxOFx1YjI5NFx1YjM3MCwgXHViMmU4XHVjNWI0XHViMjk0IFx1YWNmNVx1YmMzMVx1YzczY1x1Yjg1YyBcdWJkODRcdWI5YWNcdWI0MThcdWM1YjQgXHVjOGZjXHVjNWI0XHVjOWM0XHViMmU0LiBcdWFjMDEgXHViMmU4XHVjNWI0XHViMjk0IFx1YjMwMFx1YmIzOFx1Yzc5MFx1Yjg1Y1x1YjljYyBcdWFkNmNcdWMxMzFcdWI0MWNcdWIyZTQuIFx1YjJlOFx1YzViNFx1Yzc1OCBcdWNkNWNcdWIzMDAgXHVhZTM4XHVjNzc0XHViMjk0ICQyMCRcdWM3NzRcdWJhNzAgXHVjZDVjXHViMzAwIFx1YjJlOFx1YzViNCBcdWMyMThcdWIyOTQgJDgwJFx1Yzc3NFx1YjJlNC48XC9wPlxyXG4iLCJvdXRwdXQiOiI8cD5cdWNkOWNcdWI4MjVcdWM3NDAgXHVkNDVjXHVjOTAwIFx1Y2Q5Y1x1YjgyNVx1Yzc0NCBcdWMwYWNcdWM2YTlcdWQ1NWNcdWIyZTQuIFx1Y2Q5Y1x1YjgyNVx1Yzc0MCBcdWQ1NWMgXHVkNTg5XHVjNzNjXHViODVjIFx1YWQ2Y1x1YzEzMVx1YjQxY1x1YjJlNC4gXHVjZDljXHViODI1IFx1ZDU4OVx1YzVkMFx1YjI5NCBcdWMwYjBcdWNkOWNcdWI0MWMgXHVkNTg5XHViY2Y1IFx1YzljMFx1YzIxOFx1Yjk3YyBcdWNkOWNcdWI4MjVcdWQ1NWNcdWIyZTQuIFx1ZDU4OVx1YmNmNSBcdWM5YzBcdWMyMThcdWIyOTQgXHViYzMxXHViZDg0XHVjNzI4XHViODVjIFx1Y2Q5Y1x1YjgyNVx1ZDU1OFx1YjQxOCBcdWJjMzFcdWJkODRcdWM3MjggXHVhZTMwXHVkNjM4KCUpXHViMjk0IFx1Y2Q5Y1x1YjgyNVx1ZDU1OFx1YzljMCBcdWM1NGFcdWIyOTRcdWIyZTQuIFx1ZDU4OVx1YmNmNSBcdWM5YzBcdWMyMThcdWIyOTQgXHVjMThjXHVjMjE4XHVjODEwIFx1Yzc3NFx1ZDU1OCBcdWI0NTAgXHVjNzkwXHViOWFjXHVhZTRjXHVjOWMwIFx1YmMxOFx1YzYyY1x1YjliY1x1ZDU1OFx1YzVlYyBcdWNkOWNcdWI4MjVcdWQ1NWNcdWIyZTQuICRQX0gkXHVjNjQwICRQX0ckXHVhYzAwIFx1YmFhOFx1YjQ1MCAkMCRcdWM3NzggXHVhY2JkXHVjNmIwXHVjNWQwIFx1ZDU4OVx1YmNmNSBcdWM5YzBcdWMyMThcdWIyOTQgJDAuNSRcdWI3N2NcdWIyOTQgXHVjODEwXHVjNWQwXHVjOGZjXHVjNzU4XHVkNTU4XHVjNzkwLjxcL3A+XHJcbiIsImhpbnQiOiIiLCJvcmlnaW5hbCI6IjEiLCJodG1sX3RpdGxlIjoiMCIsInByb2JsZW1fbGFuZ190Y29kZSI6IktvcmVhbiJ9LHsicHJvYmxlbV9pZCI6IjMwNDQ1IiwicHJvYmxlbV9sYW5nIjoiMSIsInRpdGxlIjoiSGFwcHkgUG9pbnQiLCJkZXNjcmlwdGlvbiI6IjxwPkppbSwgYSBib3kgaW4gYSBnbG9vbXkgbW9vZCBhZnRlciB0aGUgQ09WSUQtMTkgcGFuZGVtaWMsIGhhcyBhIGZlZWxpbmcgdGhhdCBhbGwgdGhlIGJ1cmRlbiBpbiB0aGUgd29ybGQgaXMgaW4gaGlzIGJhY2suIEhlIHdhbnRzIHRvIG1lYXN1cmUgdGhlIGhhcHBpbmVzcyBvZiBoaXMgZnJpZW5kcy4gT25lIG1ldGhvZCBoZSBkZXZpc2VkIGlzIHRvIGFuYWx5emUgdGhlIHRleHQgbWVzc2FnZXMgZnJvbSBoaXMgZnJpZW5kcyB0byBkZXRlcm1pbmUgaWYgdGhlIGZyaWVuZHMgYXJlIGhhcHB5LiBJZiBhIGNoYXJhY3RlciBpbiB0aGUgbWVzc2FnZSBpcyBpbmNsdWRlZCBpbiB0aGUgd29yZCAmbGRxdW87PGNvZGU+SEFQUFk8XC9jb2RlPiwmcmRxdW87IGl0IGlzIGEgaGFwcHkgY2hhcmFjdGVyOyBpZiBhIGNoYXJhY3RlciBpcyBpbiB0aGUgd29yZCAmbGRxdW87PGNvZGU+U0FEPFwvY29kZT4sJnJkcXVvOyBpdCBpcyBhIGdsb29teSBvbmUuIFRoZSBjaGFyYWN0ZXIgJmxzcXVvOzxjb2RlPkE8XC9jb2RlPiZyc3F1bzsgaXMgaW5jbHVkZWQgaW4gYm90aCB3b3JkcywgYW5kIGl0IGlzIGEgaGFwcHkgYW5kIGdsb29teSBjaGFyYWN0ZXIuIFRoZSBjaGFyYWN0ZXIgJmxzcXVvOzxjb2RlPkI8XC9jb2RlPiZyc3F1bzsgaXMgaW5jbHVkZWQgaW4gbmVpdGhlciB3b3JkcywgYW5kIGl0IGlzIG5laXRoZXIgaGFwcHkgbm9yIGdsb29teS48XC9wPlxyXG5cclxuPHA+VGhlIGRlZ3JlZSBvZiBoYXBwaW5lc3Mgb2YgdGhlIG1lc3NhZ2UgaXMgY2FsY3VsYXRlZCBiYXNlZCBvbiB0aGUgbnVtYmVyIG9mIGhhcHB5IGFuZCBnbG9vbXkgY2hhcmFjdGVycyBvZiB0aGUgbWVzc2FnZS4gSWYgYSBjaGFyYWN0ZXIgaXMgaGFwcHksIHRoZSBoYXBweSBwb2ludCAkUF9IJCBpcyBpbmNyZW1lbnRlZCBieSBvbmU7IGlmIGEgY2hhcmFjdGVyIGlzIGdsb29teSwgdGhlIGdsb29teSBwb2ludCAkUF9HJCBpcyBpbmNyZW1lbnRlZCBieSBvbmUuIFRoZSBkZWdyZWUgb2YgaGFwcGluZXNzICRIJCBvZiBhIG1lc3NhZ2UgaXMgY2FsY3VsYXRlZCBhcyBmb2xsb3dzOjxcL3A+XHJcblxyXG48cD4kJEggPSBcXGZyYWN7UF9IfXtQX0ggKyBQX0d9JCQ8XC9wPlxyXG5cclxuPHA+SWYgYSBjaGFyYWN0ZXIgaXMgbmVpdGhlciBoYXBweSBub3IgZ2xvb215LCBpdCBpcyBub3QgY291bnRlZCBhcyBlaXRoZXIgJFBfSCQgb3IgJFBfRyQuIEFzc3VtZSB0aGF0IHRoZSBkZWdyZWUgb2YgaGFwcGluZXNzIGlzICQwLjUkIGlmIGJvdGggdGhlIGhhcHB5IHBvaW50IGFuZCB0aGUgZ2xvb215IHBvaW50IGFyZSB6ZXJvICgkUF9IID0gUF9HID0gMCQpLjxcL3A+XHJcblxyXG48cD5Gb3IgZXhhbXBsZSwgZ2l2ZW4gdGhlIG1lc3NhZ2UgZnJvbSBhIGZyaWVuZCBhcyBmb2xsb3dzOjxcL3A+XHJcblxyXG48YmxvY2txdW90ZT5cclxuPHA+PGNvZGU+JmxkcXVvO1NBRCBNT1ZJRVMgQUxXQVlTIE1BS0UgTUUgQ1JZJnJkcXVvOzxcL2NvZGU+PFwvcD5cclxuPFwvYmxvY2txdW90ZT5cclxuXHJcbjxwPnRoZSBoYXBweSBwb2ludCBvZiB0aGlzIG1lc3NhZ2UgY2FuIGJlIGNhbGN1bGF0ZWQgYXMgJDYkIHNpbmNlIDxjb2RlPkE8XC9jb2RlPiBhbmQgPGNvZGU+WTxcL2NvZGU+IGFwcGVhciBmb3VyIGFuZCB0d28gdGltZXMsIHJlc3BlY3RpdmVseTogZm9yIDxjb2RlPkE8XC9jb2RlPiwgb25lIGluIDxjb2RlPlNBRDxcL2NvZGU+LCB0d28gaW4gPGNvZGU+QUxXQVlTPFwvY29kZT4sIGFuZCBvbmUgaW4gPGNvZGU+TUFLRTxcL2NvZGU+OyBmb3IgPGNvZGU+WTxcL2NvZGU+LCBvbmUgaW4gZWFjaCBvZiA8Y29kZT5BTFdBWVM8XC9jb2RlPiBhbmQgPGNvZGU+Q1JZPFwvY29kZT4uIFRoZSBnbG9vbXkgcG9pbnQsIGhvd2V2ZXIsIGlzICQ4JCBzaW5jZSA8Y29kZT5TPFwvY29kZT4sIDxjb2RlPkE8XC9jb2RlPiwgYW5kIDxjb2RlPkQ8XC9jb2RlPiBhcHBlYXIgdGhyZWUsIGZvdXIsIGFuZCBvbmUgdGltZSwgcmVzcGVjdGl2ZWx5OiBmb3IgPGNvZGU+UzxcL2NvZGU+LCBvbmUgaW4gZWFjaCBvZiA8Y29kZT5TQUQ8XC9jb2RlPiwgPGNvZGU+TU9WSUVTPFwvY29kZT4sIGFuZCA8Y29kZT5BTFdBWVM8XC9jb2RlPjsgZm9yIDxjb2RlPkE8XC9jb2RlPiwgaXQgaXMgY2FsY3VsYXRlZCBhcyBzYW1lIGFzIHRoYXQgb2YgdGhlIGhhcHB5IHBvaW50OyBmb3IgPGNvZGU+RDxcL2NvZGU+LCBvbmUgaW4gPGNvZGU+U0FEPFwvY29kZT4uIFNpbmNlICRQX0ggPSA2JCBhbmQgJFBfRyA9IDgkLCB0aGUgZGVncmVlIG9mIGhhcHBpbmVzcyBpcyAkSCA9IFxcZnJhY3s2fXsxNH0gPSAwLjQyODYkLCB0aGF0IGlzICQ0Mi44NlxcJSQuIFRoZXJlZm9yZSwgdGhlIGZyaWVuZCBpcyBpbiBhIGdsb29teSBtb29kIHNpbmNlIHRoZSBkZWdyZWUgb2YgaGFwcGluZXNzIGlzIGxlc3MgdGhhbiAkNTBcXCUkLjxcL3A+XHJcblxyXG48cD5HaXZlbiBhIHRleHQgbWVzc2FnZSBmcm9tIEppbSZyc3F1bztzIGZyaWVuZCwgd3JpdGUgYSBwcm9ncmFtIHRvIGNhbGN1bGF0ZSB0aGUgZGVncmVlIG9mIGhhcHBpbmVzcyBvZiB0aGUgZnJpZW5kIGJhc2VkIG9uIHRoZSBtZXNzYWdlLjxcL3A+XHJcbiIsImlucHV0IjoiPHA+WW91ciBwcm9ncmFtIGlzIHRvIHJlYWQgZnJvbSBzdGFuZGFyZCBpbnB1dC4gVGhlIGlucHV0IGNvbnNpc3RzIG9mIGEgbGluZSBjb250YWluaW5nIHRoZSBtZXNzYWdlIGZyb20geW91ciBmcmllbmQuIFRoZSBtZXNzYWdlIGNvbnNpc3RzIG9mIGFscGhhYmV0aWMgd29yZHMgb25seS4gVGhlIHdvcmRzIGFyZSBzZXBhcmF0ZWQgYnkgYSBzcGFjZS4gRXZlcnkgd29yZCBjb25zaXN0cyBvZiBjYXBpdGFsIGxldHRlcnMgb25seS4gVGhlIG1heGltdW0gbGVuZ3RoIG9mIGEgd29yZCBpcyAkMjAkIGFuZCB0aGUgbWF4aW11bSBudW1iZXIgb2Ygd29yZHMgaXMgJDgwJC48XC9wPlxyXG4iLCJvdXRwdXQiOiI8cD5Zb3VyIHByb2dyYW0gaXMgdG8gd3JpdGUgdG8gc3RhbmRhcmQgb3V0cHV0LiBQcmludCBleGFjdGx5IG9uZSBsaW5lLiBUaGUgbGluZSBzaG91bGQgY29udGFpbiB0aGUgZGVncmVlIG9mIGhhcHBpbmVzcyBjYWxjdWxhdGVkLiBUaGUgZGVncmVlIG9mIGhhcHBpbmVzcyBzaG91bGQgYmUgcHJpbnRlZCBpbiBwZXJjZW50IHdpdGhvdXQgdGhlIHBlcmNlbnQgc3ltYm9sLiBUaGUgZGVncmVlIG9mIGhhcHBpbmVzcyBzaG91bGQgYmUgcm91bmRlZCB0byB0d28gZGVjaW1hbCBwbGFjZXMgYWZ0ZXIgdGhlIGRlY2ltYWwgcG9pbnQuIEJld2FyZSB0aGF0IHRoZSBkZWdyZWUgb2YgaGFwcGluZXNzIGlzICQwLjUkIGlmIGJvdGggdGhlIGhhcHB5IHBvaW50ICgkUF9IJCkgYW5kIHRoZSBnbG9vbXkgcG9pbnQgKCRQX0ckKSBhcmUgemVyby48XC9wPlxyXG4iLCJoaW50IjoiIiwib3JpZ2luYWwiOiIwIiwiaHRtbF90aXRsZSI6IjAiLCJwcm9ibGVtX2xhbmdfdGNvZGUiOiJFbmdsaXNoIn1d