시간 제한 메모리 제한 제출 정답 맞은 사람 정답 비율
2 초 128 MB 18 1 1 12.500%

문제

다음과 같은 가상의 프로그래밍 언어 L이 있다.

  1. L 프로그램의 각 줄은 순서대로 1부터 N(1≤N≤100,000)의 번호가 붙어 있다.
  2. 각 줄에는 정확히 한 개의 명령어만 들어간다.
  3. 프로그램은 첫 번째 줄부터 수행된다.
  4. 가능한 명령은 ifgo, jump, pass, loop, die의 다섯 가지만 있다.
  5. 각 줄을 수행할 때마다 그 줄의 번호가 출력된다. 그 명령이 입력을 받는 명령일 경우에도 줄 번호가 먼저 출력된다.
  6. ifgo 명령은 다른 명령의 줄 번호를 의미하는 한 개의 인자를 갖는다. 이 명령을 수행하면 한 비트의 입력을 받는다. 만약 입력이 1이면 명령에 지시된 줄 번호로 이동한다. 만약 입력이 0이면 다음 줄로 이동한다.
  7. jump 명령은 다른 명령의 줄 번호를 의미하는 한 개의 인자를 갖는다. 이 명령을 수행하면 명령에 지시된 줄 번호로 이동한다.
  8. pass 명령은 인자가 없는 명령이다. 이 명령을 수행하면 아무 것도 하지 않고, 줄 번호만 출력한 다음에 다음 줄로 이동한다.
  9. die 명령은 인자가 없는 명령이다. 이 명령을 수행하면 줄 번호를 출력한 다음에 프로그램이 끝난다. 이 명령은 반복문 안에서는 사용되지 않는다.
  10. loop 명령은 반복문을 수행할 때 사용되는데, 두 개의 인자 l, c를 갖는다. l은 반복문이 시작되는 줄 번호이고, c는 반복 회수이다. l은 항상 loop 명령이 있는 줄 번호보다 작은 값을 갖는다. 이 명령을 수행하면 l번째 줄부터 loop 명령이 있는 줄까지를 c-1번 수행한다. 반복문이 끝난 다음에는 그 다음 줄로 이동한다.
  11. ifgo, jump 명령은 그 명령이 있는 반복문의 범위에서만 이동할 수 있다. 즉, 두 명령이 반복문 안에 있는 경우, 그 반복문의 범위 밖으로 이동할 수 없다. 또한, 반복문 안에 두 명령어가 있고, 그 다음 줄에 또다른 반복문이 있는 경우, 안쪽 반복문 안으로 이동할 수는 없다. 예를 들면 다음과 같은 경우는 잘못된 프로그램이다.
  12. 반복문 안에 반복문이 들어갈 경우, 안쪽 반복문이 바깥쪽 반복문에 완전히 포함되어야 한다. 즉, 안쪽 반복문의 시작 줄 번호가 바깥쪽 반복문의 시작 줄 번호보다 커야 한다(같은 경우도 안 됨). 그 외의 형태로 두 반복문이 겹치는 경우는 없다.
  13. 프로그램의 제일 마지막 줄이 수행되었을 때, 그 명령이 die가 아닌 경우 프로그램은 첫 번째 줄부터 다시 수행된다.
  14. 프로그램을 알아보기 쉽게 하기 위해 각 줄에 스페이스나 탭이 여러 개 들어갈 수도 있다.
  15. 각 줄의 최대 길이는 스페이스나 탭을 포함하여 80자를 넘지 않는다.

L로 짠 프로그램이 주어졌을 때, 그 프로그램이 최대 몇 번이나 줄 번호를 출력하는지 계산하는 프로그램을 작성하시오. Ifgo 명령의 경우, 입력값에 따라서 출력 회수가 변할 수 있는데, 출력 회수가 최대가 되는 입력이 주어진다고 가정한다.

입력

첫째 줄에 N이 주어진다. 다음 N개의 줄에 L 프로그램이 첫째 줄부터 차례대로 주어진다.

출력

첫째 줄에 최대 출력 회수를 출력한다. 답은 항상 1,000,000,000이하이며, 이를 넘어가는 경우는 무한 번 수행되는 경우로 infinity를 출력하도록 한다.

예제 입력 1

8
	pass
		ifgo 4
		jump 5
		ifgo 3
	loop 2 2
	pass
loop 1 2
die

예제 출력 1

23
W3sicHJvYmxlbV9pZCI6IjIxMTkiLCJwcm9ibGVtX2xhbmciOiIwIiwidGl0bGUiOiJcdWQ1MDRcdWI4NWNcdWFkZjhcdWI3OThcdWJjMGQgXHVjNWI4XHVjNWI0IEwiLCJkZXNjcmlwdGlvbiI6IjxwPlx1YjJlNFx1Yzc0Y1x1YWNmYyBcdWFjMTlcdWM3NDAgXHVhYzAwXHVjMGMxXHVjNzU4IFx1ZDUwNFx1Yjg1Y1x1YWRmOFx1Yjc5OFx1YmMwZCBcdWM1YjhcdWM1YjQgTFx1Yzc3NCBcdWM3ODhcdWIyZTQuPFwvcD5cclxuXHJcbjxvbD5cclxuXHQ8bGk+TCBcdWQ1MDRcdWI4NWNcdWFkZjhcdWI3YThcdWM3NTggXHVhYzAxIFx1YzkwNFx1Yzc0MCBcdWMyMWNcdWMxMWNcdWIzMDBcdWI4NWMgMVx1YmQ4MFx1ZDEzMCBOKDEmbGU7TiZsZTsxMDAsMDAwKVx1Yzc1OCBcdWJjODhcdWQ2MzhcdWFjMDAgXHViZDk5XHVjNWI0IFx1Yzc4OFx1YjJlNC48XC9saT5cclxuXHQ8bGk+XHVhYzAxIFx1YzkwNFx1YzVkMFx1YjI5NCBcdWM4MTVcdWQ2NTVcdWQ3ODggXHVkNTVjIFx1YWMxY1x1Yzc1OCBcdWJhODVcdWI4MzlcdWM1YjRcdWI5Y2MgXHViNGU0XHVjNWI0XHVhYzA0XHViMmU0LjxcL2xpPlxyXG5cdDxsaT5cdWQ1MDRcdWI4NWNcdWFkZjhcdWI3YThcdWM3NDAgXHVjY2FiIFx1YmM4OFx1YzlmOCBcdWM5MDRcdWJkODBcdWQxMzAgXHVjMjE4XHVkNTg5XHViNDFjXHViMmU0LjxcL2xpPlxyXG5cdDxsaT5cdWFjMDBcdWIyYTVcdWQ1NWMgXHViYTg1XHViODM5XHVjNzQwIGlmZ28sIGp1bXAsIHBhc3MsIGxvb3AsIGRpZVx1Yzc1OCBcdWIyZTRcdWMxMmYgXHVhYzAwXHVjOWMwXHViOWNjIFx1Yzc4OFx1YjJlNC48XC9saT5cclxuXHQ8bGk+XHVhYzAxIFx1YzkwNFx1Yzc0NCBcdWMyMThcdWQ1ODlcdWQ1NjAgXHViNTRjXHViOWM4XHViMmU0IFx1YWRmOCBcdWM5MDRcdWM3NTggXHViYzg4XHVkNjM4XHVhYzAwIFx1Y2Q5Y1x1YjgyNVx1YjQxY1x1YjJlNC4gXHVhZGY4IFx1YmE4NVx1YjgzOVx1Yzc3NCBcdWM3ODVcdWI4MjVcdWM3NDQgXHViYzFiXHViMjk0IFx1YmE4NVx1YjgzOVx1Yzc3YyBcdWFjYmRcdWM2YjBcdWM1ZDBcdWIzYzQgXHVjOTA0IFx1YmM4OFx1ZDYzOFx1YWMwMCBcdWJhM2NcdWM4MDAgXHVjZDljXHViODI1XHViNDFjXHViMmU0LjxcL2xpPlxyXG5cdDxsaT5pZmdvIFx1YmE4NVx1YjgzOVx1Yzc0MCBcdWIyZTRcdWI5NzggXHViYTg1XHViODM5XHVjNzU4IFx1YzkwNCBcdWJjODhcdWQ2MzhcdWI5N2MgXHVjNzU4XHViYmY4XHVkNTU4XHViMjk0IFx1ZDU1YyBcdWFjMWNcdWM3NTggXHVjNzc4XHVjNzkwXHViOTdjIFx1YWMxNlx1YjI5NFx1YjJlNC4gXHVjNzc0IFx1YmE4NVx1YjgzOVx1Yzc0NCBcdWMyMThcdWQ1ODlcdWQ1NThcdWJhNzQgXHVkNTVjIFx1YmU0NFx1ZDJiOFx1Yzc1OCBcdWM3ODVcdWI4MjVcdWM3NDQgXHViYzFiXHViMjk0XHViMmU0LiBcdWI5Y2NcdWM1N2QgXHVjNzg1XHViODI1XHVjNzc0IDFcdWM3NzRcdWJhNzQgXHViYTg1XHViODM5XHVjNWQwIFx1YzljMFx1YzJkY1x1YjQxYyBcdWM5MDQgXHViYzg4XHVkNjM4XHViODVjIFx1Yzc3NFx1YjNkOVx1ZDU1Y1x1YjJlNC4gXHViOWNjXHVjNTdkIFx1Yzc4NVx1YjgyNVx1Yzc3NCAwXHVjNzc0XHViYTc0IFx1YjJlNFx1Yzc0YyBcdWM5MDRcdWI4NWMgXHVjNzc0XHViM2Q5XHVkNTVjXHViMmU0LjxcL2xpPlxyXG5cdDxsaT5qdW1wIFx1YmE4NVx1YjgzOVx1Yzc0MCBcdWIyZTRcdWI5NzggXHViYTg1XHViODM5XHVjNzU4IFx1YzkwNCBcdWJjODhcdWQ2MzhcdWI5N2MgXHVjNzU4XHViYmY4XHVkNTU4XHViMjk0IFx1ZDU1YyBcdWFjMWNcdWM3NTggXHVjNzc4XHVjNzkwXHViOTdjIFx1YWMxNlx1YjI5NFx1YjJlNC4gXHVjNzc0IFx1YmE4NVx1YjgzOVx1Yzc0NCBcdWMyMThcdWQ1ODlcdWQ1NThcdWJhNzQgXHViYTg1XHViODM5XHVjNWQwIFx1YzljMFx1YzJkY1x1YjQxYyBcdWM5MDQgXHViYzg4XHVkNjM4XHViODVjIFx1Yzc3NFx1YjNkOVx1ZDU1Y1x1YjJlNC48XC9saT5cclxuXHQ8bGk+cGFzcyBcdWJhODVcdWI4MzlcdWM3NDAgXHVjNzc4XHVjNzkwXHVhYzAwIFx1YzVjNlx1YjI5NCBcdWJhODVcdWI4MzlcdWM3NzRcdWIyZTQuIFx1Yzc3NCBcdWJhODVcdWI4MzlcdWM3NDQgXHVjMjE4XHVkNTg5XHVkNTU4XHViYTc0IFx1YzU0NFx1YmIzNCBcdWFjODNcdWIzYzQgXHVkNTU4XHVjOWMwIFx1YzU0YVx1YWNlMCwgXHVjOTA0IFx1YmM4OFx1ZDYzOFx1YjljYyBcdWNkOWNcdWI4MjVcdWQ1NWMgXHViMmU0XHVjNzRjXHVjNWQwIFx1YjJlNFx1Yzc0YyBcdWM5MDRcdWI4NWMgXHVjNzc0XHViM2Q5XHVkNTVjXHViMmU0LjxcL2xpPlxyXG5cdDxsaT5kaWUgXHViYTg1XHViODM5XHVjNzQwIFx1Yzc3OFx1Yzc5MFx1YWMwMCBcdWM1YzZcdWIyOTQgXHViYTg1XHViODM5XHVjNzc0XHViMmU0LiBcdWM3NzQgXHViYTg1XHViODM5XHVjNzQ0IFx1YzIxOFx1ZDU4OVx1ZDU1OFx1YmE3NCBcdWM5MDQgXHViYzg4XHVkNjM4XHViOTdjIFx1Y2Q5Y1x1YjgyNVx1ZDU1YyBcdWIyZTRcdWM3NGNcdWM1ZDAgXHVkNTA0XHViODVjXHVhZGY4XHViN2E4XHVjNzc0IFx1YjA1ZFx1YjA5Y1x1YjJlNC4gXHVjNzc0IFx1YmE4NVx1YjgzOVx1Yzc0MCBcdWJjMThcdWJjZjVcdWJiMzggXHVjNTQ4XHVjNWQwXHVjMTFjXHViMjk0IFx1YzBhY1x1YzZhOVx1YjQxOFx1YzljMCBcdWM1NGFcdWIyOTRcdWIyZTQuPFwvbGk+XHJcblx0PGxpPmxvb3AgXHViYTg1XHViODM5XHVjNzQwIFx1YmMxOFx1YmNmNVx1YmIzOFx1Yzc0NCBcdWMyMThcdWQ1ODlcdWQ1NjAgXHViNTRjIFx1YzBhY1x1YzZhOVx1YjQxOFx1YjI5NFx1YjM3MCwgXHViNDUwIFx1YWMxY1x1Yzc1OCBcdWM3NzhcdWM3OTAgbCwgY1x1Yjk3YyBcdWFjMTZcdWIyOTRcdWIyZTQuIGxcdWM3NDAgXHViYzE4XHViY2Y1XHViYjM4XHVjNzc0IFx1YzJkY1x1Yzc5MVx1YjQxOFx1YjI5NCBcdWM5MDQgXHViYzg4XHVkNjM4XHVjNzc0XHVhY2UwLCBjXHViMjk0IFx1YmMxOFx1YmNmNSBcdWQ2OGNcdWMyMThcdWM3NzRcdWIyZTQuIGxcdWM3NDAgXHVkNTZkXHVjMGMxIGxvb3AgXHViYTg1XHViODM5XHVjNzc0IFx1Yzc4OFx1YjI5NCBcdWM5MDQgXHViYzg4XHVkNjM4XHViY2Y0XHViMmU0IFx1Yzc5MVx1Yzc0MCBcdWFjMTJcdWM3NDQgXHVhYzE2XHViMjk0XHViMmU0LiBcdWM3NzQgXHViYTg1XHViODM5XHVjNzQ0IFx1YzIxOFx1ZDU4OVx1ZDU1OFx1YmE3NCBsXHViYzg4XHVjOWY4IFx1YzkwNFx1YmQ4MFx1ZDEzMCBsb29wIFx1YmE4NVx1YjgzOVx1Yzc3NCBcdWM3ODhcdWIyOTQgXHVjOTA0XHVhZTRjXHVjOWMwXHViOTdjIGMtMVx1YmM4OCBcdWMyMThcdWQ1ODlcdWQ1NWNcdWIyZTQuIFx1YmMxOFx1YmNmNVx1YmIzOFx1Yzc3NCBcdWIwNWRcdWIwOWMgXHViMmU0XHVjNzRjXHVjNWQwXHViMjk0IFx1YWRmOCBcdWIyZTRcdWM3NGMgXHVjOTA0XHViODVjIFx1Yzc3NFx1YjNkOVx1ZDU1Y1x1YjJlNC48XC9saT5cclxuXHQ8bGk+aWZnbywganVtcCBcdWJhODVcdWI4MzlcdWM3NDAgXHVhZGY4IFx1YmE4NVx1YjgzOVx1Yzc3NCBcdWM3ODhcdWIyOTQgXHViYzE4XHViY2Y1XHViYjM4XHVjNzU4IFx1YmM5NFx1YzcwNFx1YzVkMFx1YzExY1x1YjljYyBcdWM3NzRcdWIzZDlcdWQ1NjAgXHVjMjE4IFx1Yzc4OFx1YjJlNC4gXHVjOTg5LCBcdWI0NTAgXHViYTg1XHViODM5XHVjNzc0IFx1YmMxOFx1YmNmNVx1YmIzOCBcdWM1NDhcdWM1ZDAgXHVjNzg4XHViMjk0IFx1YWNiZFx1YzZiMCwgXHVhZGY4IFx1YmMxOFx1YmNmNVx1YmIzOFx1Yzc1OCBcdWJjOTRcdWM3MDQgXHViYzE2XHVjNzNjXHViODVjIFx1Yzc3NFx1YjNkOVx1ZDU2MCBcdWMyMTggXHVjNWM2XHViMmU0LiBcdWI2MTBcdWQ1NWMsIFx1YmMxOFx1YmNmNVx1YmIzOCBcdWM1NDhcdWM1ZDAgXHViNDUwIFx1YmE4NVx1YjgzOVx1YzViNFx1YWMwMCBcdWM3ODhcdWFjZTAsIFx1YWRmOCBcdWIyZTRcdWM3NGMgXHVjOTA0XHVjNWQwIFx1YjYxMFx1YjJlNFx1Yjk3OCBcdWJjMThcdWJjZjVcdWJiMzhcdWM3NzQgXHVjNzg4XHViMjk0IFx1YWNiZFx1YzZiMCwgXHVjNTQ4XHVjYWJkIFx1YmMxOFx1YmNmNVx1YmIzOCBcdWM1NDhcdWM3M2NcdWI4NWMgXHVjNzc0XHViM2Q5XHVkNTYwIFx1YzIxOFx1YjI5NCBcdWM1YzZcdWIyZTQuIFx1YzYwOFx1Yjk3YyBcdWI0ZTRcdWJhNzQgXHViMmU0XHVjNzRjXHVhY2ZjIFx1YWMxOVx1Yzc0MCBcdWFjYmRcdWM2YjBcdWIyOTQgXHVjNzk4XHViYWJiXHViNDFjIFx1ZDUwNFx1Yjg1Y1x1YWRmOFx1YjdhOFx1Yzc3NFx1YjJlNC48XC9saT5cclxuXHQ8bGk+XHViYzE4XHViY2Y1XHViYjM4IFx1YzU0OFx1YzVkMCBcdWJjMThcdWJjZjVcdWJiMzhcdWM3NzQgXHViNGU0XHVjNWI0XHVhYzA4IFx1YWNiZFx1YzZiMCwgXHVjNTQ4XHVjYWJkIFx1YmMxOFx1YmNmNVx1YmIzOFx1Yzc3NCBcdWJjMTRcdWFlNjVcdWNhYmQgXHViYzE4XHViY2Y1XHViYjM4XHVjNWQwIFx1YzY0NFx1YzgwNFx1ZDc4OCBcdWQzZWNcdWQ1NjhcdWI0MThcdWM1YjRcdWM1N2MgXHVkNTVjXHViMmU0LiBcdWM5ODksIFx1YzU0OFx1Y2FiZCBcdWJjMThcdWJjZjVcdWJiMzhcdWM3NTggXHVjMmRjXHVjNzkxIFx1YzkwNCBcdWJjODhcdWQ2MzhcdWFjMDAgXHViYzE0XHVhZTY1XHVjYWJkIFx1YmMxOFx1YmNmNVx1YmIzOFx1Yzc1OCBcdWMyZGNcdWM3OTEgXHVjOTA0IFx1YmM4OFx1ZDYzOFx1YmNmNFx1YjJlNCBcdWNlZTRcdWM1N2MgXHVkNTVjXHViMmU0KFx1YWMxOVx1Yzc0MCBcdWFjYmRcdWM2YjBcdWIzYzQgXHVjNTQ4IFx1YjQyOCkuIFx1YWRmOCBcdWM2NzhcdWM3NTggXHVkNjE1XHVkMGRjXHViODVjIFx1YjQ1MCBcdWJjMThcdWJjZjVcdWJiMzhcdWM3NzQgXHVhY2I5XHVjZTU4XHViMjk0IFx1YWNiZFx1YzZiMFx1YjI5NCBcdWM1YzZcdWIyZTQuPFwvbGk+XHJcblx0PGxpPlx1ZDUwNFx1Yjg1Y1x1YWRmOFx1YjdhOFx1Yzc1OCBcdWM4MWNcdWM3N2MgXHViOWM4XHVjOWMwXHViOWM5IFx1YzkwNFx1Yzc3NCBcdWMyMThcdWQ1ODlcdWI0MThcdWM1YzhcdWM3NDQgXHViNTRjLCBcdWFkZjggXHViYTg1XHViODM5XHVjNzc0IGRpZVx1YWMwMCBcdWM1NDRcdWIyY2MgXHVhY2JkXHVjNmIwIFx1ZDUwNFx1Yjg1Y1x1YWRmOFx1YjdhOFx1Yzc0MCBcdWNjYWIgXHViYzg4XHVjOWY4IFx1YzkwNFx1YmQ4MFx1ZDEzMCBcdWIyZTRcdWMyZGMgXHVjMjE4XHVkNTg5XHViNDFjXHViMmU0LjxcL2xpPlxyXG5cdDxsaT5cdWQ1MDRcdWI4NWNcdWFkZjhcdWI3YThcdWM3NDQgXHVjNTRjXHVjNTQ0XHViY2Y0XHVhZTMwIFx1YzI3ZFx1YWM4YyBcdWQ1NThcdWFlMzAgXHVjNzA0XHVkNTc0IFx1YWMwMSBcdWM5MDRcdWM1ZDAgXHVjMmE0XHVkMzk4XHVjNzc0XHVjMmE0XHViMDk4IFx1ZDBlZFx1Yzc3NCBcdWM1ZWNcdWI3ZWMgXHVhYzFjIFx1YjRlNFx1YzViNFx1YWMwOCBcdWMyMThcdWIzYzQgXHVjNzg4XHViMmU0LjxcL2xpPlxyXG5cdDxsaT5cdWFjMDEgXHVjOTA0XHVjNzU4IFx1Y2Q1Y1x1YjMwMCBcdWFlMzhcdWM3NzRcdWIyOTQgXHVjMmE0XHVkMzk4XHVjNzc0XHVjMmE0XHViMDk4IFx1ZDBlZFx1Yzc0NCBcdWQzZWNcdWQ1NjhcdWQ1NThcdWM1ZWMgODBcdWM3OTBcdWI5N2MgXHViMTE4XHVjOWMwIFx1YzU0YVx1YjI5NFx1YjJlNC48XC9saT5cclxuPFwvb2w+XHJcblxyXG48cD5MXHViODVjIFx1YzllMCBcdWQ1MDRcdWI4NWNcdWFkZjhcdWI3YThcdWM3NzQgXHVjOGZjXHVjNWI0XHVjODRjXHVjNzQ0IFx1YjU0YywgXHVhZGY4IFx1ZDUwNFx1Yjg1Y1x1YWRmOFx1YjdhOFx1Yzc3NCBcdWNkNWNcdWIzMDAgXHViYTg3IFx1YmM4OFx1Yzc3NFx1YjA5OCBcdWM5MDQgXHViYzg4XHVkNjM4XHViOTdjIFx1Y2Q5Y1x1YjgyNVx1ZDU1OFx1YjI5NFx1YzljMCBcdWFjYzRcdWMwYjBcdWQ1NThcdWIyOTQgXHVkNTA0XHViODVjXHVhZGY4XHViN2E4XHVjNzQ0IFx1Yzc5MVx1YzEzMVx1ZDU1OFx1YzJkY1x1YzYyNC4gSWZnbyBcdWJhODVcdWI4MzlcdWM3NTggXHVhY2JkXHVjNmIwLCBcdWM3ODVcdWI4MjVcdWFjMTJcdWM1ZDAgXHViNTMwXHViNzdjXHVjMTFjIFx1Y2Q5Y1x1YjgyNSBcdWQ2OGNcdWMyMThcdWFjMDAgXHViY2MwXHVkNTYwIFx1YzIxOCBcdWM3ODhcdWIyOTRcdWIzNzAsIFx1Y2Q5Y1x1YjgyNSBcdWQ2OGNcdWMyMThcdWFjMDAgXHVjZDVjXHViMzAwXHVhYzAwIFx1YjQxOFx1YjI5NCBcdWM3ODVcdWI4MjVcdWM3NzQgXHVjOGZjXHVjNWI0XHVjOWM0XHViMmU0XHVhY2UwIFx1YWMwMFx1YzgxNVx1ZDU1Y1x1YjJlNC48XC9wPlxyXG4iLCJpbnB1dCI6IjxwPlx1Y2NhYlx1YzlmOCBcdWM5MDRcdWM1ZDAgTlx1Yzc3NCBcdWM4ZmNcdWM1YjRcdWM5YzRcdWIyZTQuIFx1YjJlNFx1Yzc0YyBOXHVhYzFjXHVjNzU4IFx1YzkwNFx1YzVkMCBMIFx1ZDUwNFx1Yjg1Y1x1YWRmOFx1YjdhOFx1Yzc3NCBcdWNjYWJcdWM5ZjggXHVjOTA0XHViZDgwXHVkMTMwIFx1Y2MyOFx1Yjg0MFx1YjMwMFx1Yjg1YyBcdWM4ZmNcdWM1YjRcdWM5YzRcdWIyZTQuPFwvcD5cclxuIiwib3V0cHV0IjoiPHA+XHVjY2FiXHVjOWY4IFx1YzkwNFx1YzVkMCBcdWNkNWNcdWIzMDAgXHVjZDljXHViODI1IFx1ZDY4Y1x1YzIxOFx1Yjk3YyBcdWNkOWNcdWI4MjVcdWQ1NWNcdWIyZTQuIFx1YjJmNVx1Yzc0MCBcdWQ1NmRcdWMwYzEgMSwwMDAsMDAwLDAwMFx1Yzc3NFx1ZDU1OFx1Yzc3NFx1YmE3MCwgXHVjNzc0XHViOTdjIFx1YjExOFx1YzViNFx1YWMwMFx1YjI5NCBcdWFjYmRcdWM2YjBcdWIyOTQgXHViYjM0XHVkNTVjIFx1YmM4OCBcdWMyMThcdWQ1ODlcdWI0MThcdWIyOTQgXHVhY2JkXHVjNmIwXHViODVjIGluZmluaXR5XHViOTdjIFx1Y2Q5Y1x1YjgyNVx1ZDU1OFx1YjNjNFx1Yjg1ZCBcdWQ1NWNcdWIyZTQuPFwvcD5cclxuIiwiaGludCI6IiIsIm9yaWdpbmFsIjoiMCIsInByb2JsZW1fbGFuZ19jb2RlIjoiXHVkNTVjXHVhZDZkXHVjNWI0In0seyJwcm9ibGVtX2lkIjoiMjExOSIsInByb2JsZW1fbGFuZyI6IjEiLCJ0aXRsZSI6IlRvbWF0byBBdXRvbWF0YSIsImRlc2NyaXB0aW9uIjoiPHA+VG9tYXRvIEF1dG9tYXRhIGFyZSBzbWFsbCBjb29sIHByb2dyYW1zLiBZb3UgZ2l2ZSB0aGVtIGFuIGluZmluaXRlIHNlcXVlbmNlIG9mIG9uZXMgYW5kIHplcm9zLCBhbmQgdGhleSBnaXZlIHlvdSBhIHNlcXVlbmNlIG9mIG51bWJlcnMuIFRoZXkgYXJlIHdpZGVseSB1c2VkIGluIHRoZSBTdGFuZXNjdSBPcGVyYXRpbmcgU3lzdGVtIChTT1MpLiBUaGV5IGFyZSB3cml0dGVuIGluIFRvbWF0byBQcm9ncmFtbWluZyBMYW5ndWFnZSB0aGF0IGlzIHZlcnkgc2ltcGxlLiBIZXJlIGlzIGl0cyBzcGVjaWZpY2F0aW9uLCB0dXRvcmlhbCBhbmQgcmVmZXJlbmNlOiZuYnNwOzxcL3A+XHJcblxyXG48b2w+XHJcblx0PGxpPlRvbWF0byBpcyBhIHZlcnkgc2ltcGxlIGJ1dCBwb3dlcmZ1bCBsYW5ndWFnZS4mbmJzcDs8XC9saT5cclxuXHQ8bGk+TGluZXMgaW4gYSBUb21hdG8gcHJvZ3JhbSBhcmUgbnVtZXJhdGVkIHdpdGggaW50ZWdlcnMgZnJvbSAxIHRvIE4gKE4mbGU7MTAwMDAwKSBpbiB0aGUgb3JkZXIgdGhleSBhcHBlYXIgaW4gdGhlIGlucHV0LiZuYnNwOzxcL2xpPlxyXG5cdDxsaT5UaGVyZSBpcyBleGFjdGx5IG9uZSBjb21tYW5kIG9uIGEgbGluZS4mbmJzcDs8XC9saT5cclxuXHQ8bGk+VGhlIGV4ZWN1dGlvbiBzdGFydHMgZnJvbSB0aGUgZmlyc3QgbGluZS4mbmJzcDs8XC9saT5cclxuXHQ8bGk+VGhlcmUgYXJlIGV4YWN0bHkgZml2ZSBUb21hdG8gY29tbWFuZHMgJm5kYXNoOyBpZmdvLCBqdW1wLCBwYXNzLCBsb29wLCBhbmQgZGllLjxcL2xpPlxyXG5cdDxsaT5XaGVuIGV4ZWN1dGVkLCBlYWNoIGNvbW1hbmQgcHJpbnRzIGl0cyBsaW5lIG51bWJlciAoaW50byB0aGUgb3V0cHV0IHNlcXVlbmNlKS4mbmJzcDs8XC9saT5cclxuXHQ8bGk+VGhlIGlmZ28gY29tbWFuZCBoYXMgb25lIGFyZ3VtZW50ICZuZGFzaDsgdGhlIGxpbmUgbnVtYmVyIG9mIGFub3RoZXIgaW5zdHJ1Y3Rpb24uIEl0IHJlYWRzIG9uZSBiaXQgZnJvbSB0aGUgaW5wdXQgc3RyZWFtLiBJZiB0aGUgYml0IGlzIG9uZSwgdGhlIGV4ZWN1dGlvbiBqdW1wcyB0byB0aGUgbGluZSB3aXRoIHRoZSBnaXZlbiBhcyBhcmd1bWVudCBsaW5lIG51bWJlci4gT3RoZXJ3aXNlIHRoZSBleGVjdXRpb24gY29udGludWVzIHdpdGggdGhlIG5leHQgbGluZS4mbmJzcDs8XC9saT5cclxuXHQ8bGk+VGhlIGp1bXAgY29tbWFuZCBoYXMgb25lIGFyZ3VtZW50ICZuZGFzaDsgdGhlIGxpbmUgbnVtYmVyIG9mIGFub3RoZXIgaW5zdHJ1Y3Rpb24uIFdoZW4gZXhlY3V0ZWQsIHRoZSBleGVjdXRpb24ganVtcHMgdG8gdGhlIGxpbmUgd2l0aCB0aGUgZ2l2ZW4gbGluZSBudW1iZXIuJm5ic3A7PFwvbGk+XHJcblx0PGxpPlRoZSBwYXNzIGNvbW1hbmQgaGFzIG5vIGFyZ3VtZW50cy4gSXQgZG9lcyBub3RoaW5nIChleGNlcHQgcHJpbnRpbmcgaXRzIGxpbmUgbnVtYmVyIGxpa2UgYWxsIG90aGVyIGNvbW1hbmRzKS4gVGhlbiB0aGUgZXhlY3V0aW9uIGNvbnRpbnVlcyB3aXRoIHRoZSBuZXh0IGxpbmUuJm5ic3A7PFwvbGk+XHJcblx0PGxpPlRoZSBkaWUgY29tbWFuZCBoYXMgbm8gYXJndW1lbnRzLiBJdCB0ZXJtaW5hdGVzIHRoZSBleGVjdXRpb24gb2YgdGhlIHByb2dyYW0gKHByaW50aW5nIGl0cyBsaW5lIG51bWJlciBiZWZvcmUgdGhhdCkuIFRoZSBkaWUgY29tbWFuZCBjYW4gbm90IGJlIHVzZWQgaW5zaWRlIGEgbG9vcC4mbmJzcDs8XC9saT5cclxuXHQ8bGk+VGhlIGxvb3AgY29tbWFuZCBpcyB0aGUgb25seSBvbmUgd2l0aCB0d28gYXJndW1lbnRzLiBJdCBtYXkgYmUgdXNlZCB0byBjb25zdHJ1Y3QgbG9vcHMuIFRoZSBmaXJzdCBhcmd1bWVudCBpcyB0aGUgc3RhcnRpbmcgbGluZSBudW1iZXIgJmx0O2xpbmUmZ3Q7IChsZXNzIHRoYW4gdGhlIGxpbmUgbnVtYmVyIG9mIHRoZSBsb29wIGNvbW1hbmQpLCBhbmQgdGhlIHNlY29uZCBpcyBhIHBvc2l0aXZlIGludGVnZXIgJmx0O2NvdW50Jmd0Oy4gV2hlbiBleGVjdXRlZCwgaXQgbG9vcHMgZnJvbSB0aGUgc3RhcnQgbGluZSBhICZsdDtjb3VudCZndDtcdTI1MDAxIG51bWJlciBvZiB0aW1lcyAoYmVjYXVzZSBpdCBpcyBhbHJlYWR5IGV4ZWN1dGVkIG9uY2UpLiBXaGVuIHRoZSBsb29wIGlzIGV4ZWN1dGVkIHRoZSBnaXZlbiBudW1iZXIgb2YgdGltZXMsIHRoZSBleGVjdXRpb24gY29udGludWVzIHdpdGggdGhlIG5leHQgbGluZS4mbmJzcDs8XC9saT5cclxuXHQ8bGk+VGhlIGp1bXAgYW5kIGlmZ28gY29tbWFuZHMgbXVzdCBiZSB1c2VkIG9ubHkgd2l0aCBsaW5lIG51bWJlcnMgaW4gdGhlIHNjb3BlIG9mIHRoZSBpbm5lcm1vc3QgbG9vcCBjb250YWluaW5nIHRoZW0gKHRoZXkgY2FuIG5vdCBqdW1wIG91dHNpZGUgb2YgdGhlIGlubmVybW9zdCBsb29wIG9yIGluc2lkZSBsb29wcyBuZXN0ZWQgaW4gdGhlIGlubmVybW9zdCBsb29wIHRoYXQgZG9lcyBub3QgY29udGFpbiB0aGUgY29tbWFuZCkuJm5ic3A7PFwvbGk+XHJcblx0PGxpPlRoZSBsb29wIGNvbW1hbmQgY2FuIG5vdCBiZSB1c2VkIHRvIGNyZWF0ZSBvdmVybGFwcGluZyBsb29wcy4gTmVzdGVkIGxvb3BzIG11c3QgYmUgc3RyaWN0bHkgbmVzdGVkICh0aGV5IGNhbiBub3QgdXNlIHRoZSBzYW1lIHN0YXJ0aW5nIGxpbmUpLiZuYnNwOzxcL2xpPlxyXG5cdDxsaT5XaGVuIHRoZSBsYXN0IGxpbmUgb2YgdGhlIHByb2dyYW0gaXMgZXhlY3V0ZWQsIHRoZSBleGVjdXRpb24gY29udGludWVzIGZyb20gdGhlIGZpcnN0IGV4Y2VwdCB3aGVuIHRoZSBsYXN0IGxpbmUgaXMgZGllIGNvbW1hbmQuJm5ic3A7PFwvbGk+XHJcblx0PGxpPldoaXRlIHNwYWNlcyBtYXkgb2NjdXIgZnJlZWx5IGJlZm9yZSBvciBhZnRlciB0aGUgY29tbWFuZCBuYW1lIGFuZCB0aGVpciBhcmd1bWVudHMuJm5ic3A7PFwvbGk+XHJcblx0PGxpPlRoZSBtYXhpbWFsIGxlbmd0aCBvZiBhIGxpbmUgaW4gVG9tYXRvIFByb2dyYW1taW5nIExhbmd1YWdlIGlzIDgwIGNoYXJhY3RlcnMgaW5jbHVkaW5nIHNwYWNlcy4mbmJzcDs8XC9saT5cclxuPFwvb2w+XHJcblxyXG48cD5TdGFuZXNjdSBoYXMgbG90cyBvZiBUb21hdG8gcHJvZ3JhbXMuIEhlIGlzIGludGVyZXN0ZWQgaW4gbWF4aW1hbCBsZW5ndGggb2Ygb3V0cHV0IHNlcXVlbmNlIHRoYXQgc3BlY2lmaWMgcHJvZ3JhbSBjYW4gZ2VuZXJhdGUsIHdoZXJlIHRoZSBsZW5ndGggaXMgdGhlIG51bWJlciBvZiBwcmludGVkIGxpbmUgbnVtYmVycy4gT2J2aW91c2x5LCBpdCBpcyBub3QgcG9zc2libGUgdG8gdGVzdCBlYWNoIHBvc3NpYmxlIGlucHV0IHNlcXVlbmNlIChvZiBvbmVzIGFuZCB6ZXJvcyksIHNvIGhlIG5lZWRzIGEgcHJvZ3JhbSB0aGF0IGNvbXB1dGVzIHRoaXMuJm5ic3A7PFwvcD5cclxuIiwiaW5wdXQiOiI8cD5UaGUgaW5wdXQgY29udGFpbnMgc2V2ZXJhbCBwcm9ncmFtcywgc2VwYXJhdGVkIHdpdGggYW4gZW1wdHkgbGluZS4gRWFjaCBvZiB0aGVtIGlzIGEgY29ycmVjdCBUb21hdG8gcHJvZ3JhbS4mbmJzcDs8XC9wPlxyXG4iLCJvdXRwdXQiOiI8cD5Gb3IgZWFjaCBnaXZlbiBwcm9ncmFtIHlvdXIgc29sdXRpb24gaGFzIHRvIHByaW50IG9uIGEgc2VwYXJhdGUgbGluZSB0aGUgbWF4aW1hbCBsZW5ndGggb2YgdGhlIG91dHB1dCBzZXF1ZW5jZSB0aGUgcHJvZ3JhbSBjb3VsZCBnZW5lcmF0ZS4gUHJpbnQgaW5maW5pdHkgaWYgdGhlcmUgaXMgbm8gbWF4aW1hbCBsZW5ndGggZm9yIHRoZSBvdXRwdXQgc2VxdWVuY2UuIFdoZW4gZmluaXRlLCB0aGUgbWF4aW1hbCBsZW5ndGggd2lsbCBub3QgZXhjZWVkIDEwPHN1cD45PFwvc3VwPi48XC9wPlxyXG4iLCJoaW50IjoiIiwib3JpZ2luYWwiOiIxIiwicHJvYmxlbV9sYW5nX2NvZGUiOiJcdWM2MDFcdWM1YjQifV0=