시간 제한 메모리 제한 제출 정답 맞은 사람 정답 비율
1 초 128 MB 237 101 78 48.148%

문제

인류는 선사시대부터 물체와 건물을 장식해왔다. 이러한 장식에서 가장 중요한 요소는 기하학문양이다. 우리는 일상생활 속에서 기하학문양을 손쉽게 찾아볼 수 있다.

유명한 계산 기하학 전문가 수환이는 기하학문양이 그리드와 다양한 서브 그리드 위에서 매우 정교하게 만들어졌다는 사실을 알게 되었다. 수환이는 최근에 기하학문양을 자동으로 만들어주는 연구 프로젝트를 시작했다.

수환이가 관심을 갖는 그리드는 직사각형 그리드와 원형 그리드이다. m × n 직사각형 그리드는 한 평면 위에 있는 정점과 간선이 직사각형을 이루는 그래프이다. 그래프의 각 행에 있는 정점의 수는 n개, 각 열에 있는 정점의 수는 m개이다. 그래프의 정점은 {vji : 0 ≤ i ≤ m-1, 0 ≤ j ≤ n-1} 으로, 간선은 {(vji, vqp) : |i - p| + |j - q| = 1} 으로 나타낼 수 있다. m × n 원형 그리드는 m × n 직사각형 그리드에 간선을 추가해 동그랗게 만든 그래프이다. 즉, 모든 0 ≤ i ≤ m-1에 대해서, (vn-1i, v0i)를 추가한 그래프이다. 2 × 6 직사각형 그리드와 원형 그리드는 아래 그림 1과 2에 나와있다.

많은 기하학문양은 그리드 상에서 스패닝 트리를 이루고 있다. 스패닝 트리는 사이클 없이 모두 연결된 그래프이며, 그래프의 모든 정점과 일부 간선으로 이루어져 있다. 수환이는 2 × n 그리드에서 만들 수 있는 서로 다른 스패닝 트리의 개수를 세보려고 한다. 그래프의 각 정점은 다른 정점과 모두 구분된다. 그림 2에 나와있는 두 스패닝 트리는 다른 경우로 세야 한다.

n이 주어졌을 때, 2 × n 직사각형 그리드와 2 × n 원형 그리드에서 만들 수 있는 스패닝 트리의 개수를 구하는 프로그램을 작성하시오.

그림 1. 2 × 6 직사각형 그리드와 스패닝 트리 한 개

그림 2. 2 × 6 원형 그리드와 서로 다른 스패닝 트리 두 개

입력

첫째 줄에 테스트 케이스의 개수 T가 주어진다. 각 테스트 케이스는 한 줄로 이루어져 있고, 정수 n이 하나 주어진다. (3 ≤ n ≤ 50,000)

출력

각 테스트 케이스마다 Rn을 10,007로 나눈 나머지와 Cn을 10,007로 나눈 나머지를 출력한다. Rn은 2 × n 직사각형 그리드에서 만들 수 있는 스패닝 트리의 개수, Cn은 2 × n 원형 그리드에서 만들 수 있는 스패닝 트리의 개수이다.

예제 입력 1

3
3
4
10

예제 출력 1

15 75
56 384
1211 9033
W3sicHJvYmxlbV9pZCI6Ijk0NTciLCJwcm9ibGVtX2xhbmciOiIwIiwidGl0bGUiOiJcdWFlMzBcdWQ1NThcdWQ1NTlcdWJiMzhcdWM1OTEiLCJkZXNjcmlwdGlvbiI6IjxwPlx1Yzc3OFx1Yjk1OFx1YjI5NCBcdWMxMjBcdWMwYWNcdWMyZGNcdWIzMDBcdWJkODBcdWQxMzAgXHViYjNjXHVjY2I0XHVjNjQwIFx1YWM3NFx1YmIzY1x1Yzc0NCBcdWM3YTVcdWMyZGRcdWQ1NzRcdWM2NTRcdWIyZTQuIFx1Yzc3NFx1YjdlY1x1ZDU1YyBcdWM3YTVcdWMyZGRcdWM1ZDBcdWMxMWMgXHVhYzAwXHVjN2E1IFx1YzkxMVx1YzY5NFx1ZDU1YyBcdWM2OTRcdWMxOGNcdWIyOTQgXHVhZTMwXHVkNTU4XHVkNTU5XHViYjM4XHVjNTkxXHVjNzc0XHViMmU0LiBcdWM2YjBcdWI5YWNcdWIyOTQgXHVjNzdjXHVjMGMxXHVjMGRkXHVkNjVjIFx1YzE4ZFx1YzVkMFx1YzExYyBcdWFlMzBcdWQ1NThcdWQ1NTlcdWJiMzhcdWM1OTFcdWM3NDQgXHVjMTkwXHVjMjdkXHVhYzhjIFx1Y2MzZVx1YzU0NFx1YmNmYyBcdWMyMTggXHVjNzg4XHViMmU0LjxcL3A+XHJcblxyXG48cD5cdWM3MjBcdWJhODVcdWQ1NWMgXHVhY2M0XHVjMGIwIFx1YWUzMFx1ZDU1OFx1ZDU1OSBcdWM4MDRcdWJiMzhcdWFjMDAgXHVjMjE4XHVkNjU4XHVjNzc0XHViMjk0IFx1YWUzMFx1ZDU1OFx1ZDU1OVx1YmIzOFx1YzU5MVx1Yzc3NCBcdWFkZjhcdWI5YWNcdWI0ZGNcdWM2NDAgXHViMmU0XHVjNTkxXHVkNTVjIFx1YzExY1x1YmUwYyBcdWFkZjhcdWI5YWNcdWI0ZGMgXHVjNzA0XHVjNWQwXHVjMTFjIFx1YjllNFx1YzZiMCBcdWM4MTVcdWFkNTBcdWQ1NThcdWFjOGMgXHViOWNjXHViNGU0XHVjNWI0XHVjODRjXHViMmU0XHViMjk0IFx1YzBhY1x1YzJlNFx1Yzc0NCBcdWM1NGNcdWFjOGMgXHViNDE4XHVjNWM4XHViMmU0LiZuYnNwO1x1YzIxOFx1ZDY1OFx1Yzc3NFx1YjI5NCBcdWNkNWNcdWFkZmNcdWM1ZDAgXHVhZTMwXHVkNTU4XHVkNTU5XHViYjM4XHVjNTkxXHVjNzQ0IFx1Yzc5MFx1YjNkOVx1YzczY1x1Yjg1YyBcdWI5Y2NcdWI0ZTRcdWM1YjRcdWM4ZmNcdWIyOTQgXHVjNWYwXHVhZDZjIFx1ZDUwNFx1Yjg1Y1x1YzgxZFx1ZDJiOFx1Yjk3YyBcdWMyZGNcdWM3OTFcdWQ1ODhcdWIyZTQuPFwvcD5cclxuXHJcbjxwPlx1YzIxOFx1ZDY1OFx1Yzc3NFx1YWMwMCBcdWFkMDBcdWMyZWNcdWM3NDQgXHVhYzE2XHViMjk0IFx1YWRmOFx1YjlhY1x1YjRkY1x1YjI5NCBcdWM5YzFcdWMwYWNcdWFjMDFcdWQ2MTUgXHVhZGY4XHViOWFjXHViNGRjXHVjNjQwIFx1YzZkMFx1ZDYxNSBcdWFkZjhcdWI5YWNcdWI0ZGNcdWM3NzRcdWIyZTQuIG0gJnRpbWVzOyBuIFx1YzljMVx1YzBhY1x1YWMwMVx1ZDYxNSBcdWFkZjhcdWI5YWNcdWI0ZGNcdWIyOTQgXHVkNTVjIFx1ZDNjOVx1YmE3NCBcdWM3MDRcdWM1ZDAgXHVjNzg4XHViMjk0IFx1YzgxNVx1YzgxMFx1YWNmYyBcdWFjMDRcdWMxMjBcdWM3NzQgXHVjOWMxXHVjMGFjXHVhYzAxXHVkNjE1XHVjNzQ0IFx1Yzc3NFx1YjhlOFx1YjI5NCBcdWFkZjhcdWI3OThcdWQ1MDRcdWM3NzRcdWIyZTQuIFx1YWRmOFx1Yjc5OFx1ZDUwNFx1Yzc1OCZuYnNwO1x1YWMwMSBcdWQ1ODlcdWM1ZDAgXHVjNzg4XHViMjk0IFx1YzgxNVx1YzgxMFx1Yzc1OCBcdWMyMThcdWIyOTQgblx1YWMxYywgXHVhYzAxIFx1YzVmNFx1YzVkMCBcdWM3ODhcdWIyOTQgXHVjODE1XHVjODEwXHVjNzU4IFx1YzIxOFx1YjI5NCBtXHVhYzFjXHVjNzc0XHViMmU0LiBcdWFkZjhcdWI3OThcdWQ1MDRcdWM3NTggXHVjODE1XHVjODEwXHVjNzQwIHt2PHN1Yj5qPFwvc3ViPjxzdXA+aTxcL3N1cD4mbmJzcDs6IDAgJmxlOyBpICZsZTsgbS0xLCAwICZsZTsgaiAmbGU7IG4tMX0gXHVjNzNjXHViODVjLCBcdWFjMDRcdWMxMjBcdWM3NDAgeyh2PHN1Yj5qPFwvc3ViPjxzdXA+aTxcL3N1cD4sIHY8c3ViPnE8XC9zdWI+PHN1cD5wPFwvc3VwPikgOiB8aSAtIHB8ICsgfGogLSBxfCA9IDF9IFx1YzczY1x1Yjg1YyBcdWIwOThcdWQwYzBcdWIwYmMgXHVjMjE4IFx1Yzc4OFx1YjJlNC4gbSAmdGltZXM7IG4gXHVjNmQwXHVkNjE1IFx1YWRmOFx1YjlhY1x1YjRkY1x1YjI5NCBtICZ0aW1lczsgbiBcdWM5YzFcdWMwYWNcdWFjMDFcdWQ2MTUgXHVhZGY4XHViOWFjXHViNGRjXHVjNWQwIFx1YWMwNFx1YzEyMFx1Yzc0NCBcdWNkOTRcdWFjMDBcdWQ1NzQgXHViM2Q5XHVhZGY4XHViNzk3XHVhYzhjIFx1YjljY1x1YjRlMCBcdWFkZjhcdWI3OThcdWQ1MDRcdWM3NzRcdWIyZTQuIFx1Yzk4OSwgXHViYWE4XHViNGUwIDAgJmxlOyBpICZsZTsgbS0xXHVjNWQwIFx1YjMwMFx1ZDU3NFx1YzExYywgKHY8c3ViPm4tMTxcL3N1Yj48c3VwPmk8XC9zdXA+LCB2PHN1Yj4wPFwvc3ViPjxzdXA+aTxcL3N1cD4pXHViOTdjIFx1Y2Q5NFx1YWMwMFx1ZDU1YyBcdWFkZjhcdWI3OThcdWQ1MDRcdWM3NzRcdWIyZTQuIDIgJnRpbWVzOyA2IFx1YzljMVx1YzBhY1x1YWMwMVx1ZDYxNSBcdWFkZjhcdWI5YWNcdWI0ZGNcdWM2NDAgXHVjNmQwXHVkNjE1IFx1YWRmOFx1YjlhY1x1YjRkY1x1YjI5NCBcdWM1NDRcdWI3OTggXHVhZGY4XHViOWJjIDFcdWFjZmMgMlx1YzVkMCBcdWIwOThcdWM2NDBcdWM3ODhcdWIyZTQuPFwvcD5cclxuXHJcbjxwPlx1YjljZVx1Yzc0MCBcdWFlMzBcdWQ1NThcdWQ1NTlcdWJiMzhcdWM1OTFcdWM3NDAgXHVhZGY4XHViOWFjXHViNGRjIFx1YzBjMVx1YzVkMFx1YzExYyBcdWMyYTRcdWQzMjhcdWIyZGQgXHVkMmI4XHViOWFjXHViOTdjIFx1Yzc3NFx1YjhlOFx1YWNlMCBcdWM3ODhcdWIyZTQuIFx1YzJhNFx1ZDMyOFx1YjJkZCBcdWQyYjhcdWI5YWNcdWIyOTQgXHVjMGFjXHVjNzc0XHVkMDc0IFx1YzVjNlx1Yzc3NCBcdWJhYThcdWI0NTAgXHVjNWYwXHVhY2IwXHViNDFjIFx1YWRmOFx1Yjc5OFx1ZDUwNFx1Yzc3NFx1YmE3MCwgXHVhZGY4XHViNzk4XHVkNTA0XHVjNzU4IFx1YmFhOFx1YjRlMCBcdWM4MTVcdWM4MTBcdWFjZmMgXHVjNzdjXHViZDgwIFx1YWMwNFx1YzEyMFx1YzczY1x1Yjg1YyBcdWM3NzRcdWI4ZThcdWM1YjRcdWM4MzggXHVjNzg4XHViMmU0LiBcdWMyMThcdWQ2NThcdWM3NzRcdWIyOTQgMiAmdGltZXM7IG4gXHVhZGY4XHViOWFjXHViNGRjXHVjNWQwXHVjMTFjIFx1YjljY1x1YjRlNCBcdWMyMTggXHVjNzg4XHViMjk0IFx1YzExY1x1Yjg1YyBcdWIyZTRcdWI5NzggXHVjMmE0XHVkMzI4XHViMmRkIFx1ZDJiOFx1YjlhY1x1Yzc1OCBcdWFjMWNcdWMyMThcdWI5N2MgXHVjMTM4XHViY2Y0XHViODI0XHVhY2UwIFx1ZDU1Y1x1YjJlNC4gXHVhZGY4XHViNzk4XHVkNTA0XHVjNzU4IFx1YWMwMSBcdWM4MTVcdWM4MTBcdWM3NDAmbmJzcDtcdWIyZTRcdWI5NzggXHVjODE1XHVjODEwXHVhY2ZjIFx1YmFhOFx1YjQ1MCBcdWFkNmNcdWJkODRcdWI0MWNcdWIyZTQuIFx1YWRmOFx1YjliYyAyXHVjNWQwIFx1YjA5OFx1YzY0MFx1Yzc4OFx1YjI5NCBcdWI0NTAgXHVjMmE0XHVkMzI4XHViMmRkIFx1ZDJiOFx1YjlhY1x1YjI5NCBcdWIyZTRcdWI5NzggXHVhY2JkXHVjNmIwXHViODVjIFx1YzEzOFx1YzU3YyBcdWQ1NWNcdWIyZTQuPFwvcD5cclxuXHJcbjxwPm5cdWM3NzQgXHVjOGZjXHVjNWI0XHVjODRjXHVjNzQ0IFx1YjU0YywgMiAmdGltZXM7IG4gXHVjOWMxXHVjMGFjXHVhYzAxXHVkNjE1IFx1YWRmOFx1YjlhY1x1YjRkY1x1YzY0MCAyICZ0aW1lczsgbiBcdWM2ZDBcdWQ2MTUgXHVhZGY4XHViOWFjXHViNGRjXHVjNWQwXHVjMTFjIFx1YjljY1x1YjRlNCBcdWMyMTggXHVjNzg4XHViMjk0IFx1YzJhNFx1ZDMyOFx1YjJkZCBcdWQyYjhcdWI5YWNcdWM3NTggXHVhYzFjXHVjMjE4XHViOTdjIFx1YWQ2Y1x1ZDU1OFx1YjI5NCBcdWQ1MDRcdWI4NWNcdWFkZjhcdWI3YThcdWM3NDQgXHVjNzkxXHVjMTMxXHVkNTU4XHVjMmRjXHVjNjI0LjxcL3A+XHJcblxyXG48cCBzdHlsZT1cInRleHQtYWxpZ246Y2VudGVyXCI+PGltZyBhbHQ9XCJcIiBzcmM9XCJcL3VwbG9hZFwvaW1hZ2VzXC9yc3AucG5nXCIgc3R5bGU9XCJoZWlnaHQ6MTI2cHg7IHdpZHRoOjU1N3B4XCIgXC8+PFwvcD5cclxuXHJcbjxwIHN0eWxlPVwidGV4dC1hbGlnbjpjZW50ZXJcIj48c3Ryb25nPlx1YWRmOFx1YjliYyAxPFwvc3Ryb25nPi4gMiZuYnNwOyZ0aW1lczsgNiBcdWM5YzFcdWMwYWNcdWFjMDFcdWQ2MTUgXHVhZGY4XHViOWFjXHViNGRjXHVjNjQwIFx1YzJhNFx1ZDMyOFx1YjJkZCBcdWQyYjhcdWI5YWMgXHVkNTVjIFx1YWMxYzxcL3A+XHJcblxyXG48cCBzdHlsZT1cInRleHQtYWxpZ246Y2VudGVyXCI+PGltZyBhbHQ9XCJcIiBzcmM9XCJcL3VwbG9hZFwvaW1hZ2VzXC9jc3AucG5nXCIgc3R5bGU9XCJoZWlnaHQ6MjAwcHg7IHdpZHRoOjYxM3B4XCIgXC8+PFwvcD5cclxuXHJcbjxwIHN0eWxlPVwidGV4dC1hbGlnbjpjZW50ZXJcIj48c3Ryb25nPlx1YWRmOFx1YjliYyAyPFwvc3Ryb25nPi4gMiZuYnNwOyZ0aW1lczsgNiBcdWM2ZDBcdWQ2MTUgXHVhZGY4XHViOWFjXHViNGRjXHVjNjQwIFx1YzExY1x1Yjg1YyBcdWIyZTRcdWI5NzggXHVjMmE0XHVkMzI4XHViMmRkIFx1ZDJiOFx1YjlhYyBcdWI0NTAgXHVhYzFjPFwvcD5cclxuIiwiaW5wdXQiOiI8cD5cdWNjYWJcdWM5ZjggXHVjOTA0XHVjNWQwIFx1ZDE0Y1x1YzJhNFx1ZDJiOCBcdWNmMDBcdWM3NzRcdWMyYTRcdWM3NTggXHVhYzFjXHVjMjE4IFRcdWFjMDAgXHVjOGZjXHVjNWI0XHVjOWM0XHViMmU0LiBcdWFjMDEgXHVkMTRjXHVjMmE0XHVkMmI4IFx1Y2YwMFx1Yzc3NFx1YzJhNFx1YjI5NCBcdWQ1NWMgXHVjOTA0XHViODVjIFx1Yzc3NFx1YjhlOFx1YzViNFx1YzgzOCBcdWM3ODhcdWFjZTAsIFx1YzgxNVx1YzIxOCBuXHVjNzc0IFx1ZDU1OFx1YjA5OCBcdWM4ZmNcdWM1YjRcdWM5YzRcdWIyZTQuICgzICZsZTsgbiAmbGU7IDUwLDAwMCk8XC9wPlxyXG4iLCJvdXRwdXQiOiI8cD5cdWFjMDEgXHVkMTRjXHVjMmE0XHVkMmI4IFx1Y2YwMFx1Yzc3NFx1YzJhNFx1YjljOFx1YjJlNCBSPHN1Yj5uPFwvc3ViPlx1Yzc0NCAxMCwwMDdcdWI4NWMgXHViMDk4XHViMjA4IFx1YjA5OFx1YmEzOFx1YzljMFx1YzY0MCBDPHN1Yj5uPFwvc3ViPlx1Yzc0NCAxMCwwMDdcdWI4NWMgXHViMDk4XHViMjA4IFx1YjA5OFx1YmEzOFx1YzljMFx1Yjk3YyBcdWNkOWNcdWI4MjVcdWQ1NWNcdWIyZTQuIFI8c3ViPm48XC9zdWI+XHVjNzQwIDIgJnRpbWVzOyBuIFx1YzljMVx1YzBhY1x1YWMwMVx1ZDYxNSBcdWFkZjhcdWI5YWNcdWI0ZGNcdWM1ZDBcdWMxMWMgXHViOWNjXHViNGU0IFx1YzIxOCBcdWM3ODhcdWIyOTQgXHVjMmE0XHVkMzI4XHViMmRkIFx1ZDJiOFx1YjlhY1x1Yzc1OCBcdWFjMWNcdWMyMTgsIEM8c3ViPm48XC9zdWI+XHVjNzQwIDIgJnRpbWVzOyBuIFx1YzZkMFx1ZDYxNSBcdWFkZjhcdWI5YWNcdWI0ZGNcdWM1ZDBcdWMxMWMgXHViOWNjXHViNGU0IFx1YzIxOCBcdWM3ODhcdWIyOTQgXHVjMmE0XHVkMzI4XHViMmRkIFx1ZDJiOFx1YjlhY1x1Yzc1OCBcdWFjMWNcdWMyMThcdWM3NzRcdWIyZTQuPFwvcD5cclxuIiwiaGludCI6IiIsIm9yaWdpbmFsIjoiMCIsImh0bWxfdGl0bGUiOiIwIiwicHJvYmxlbV9sYW5nX2NvZGUiOiJcdWQ1NWNcdWFkNmRcdWM1YjQifSx7InByb2JsZW1faWQiOiI5NDU3IiwicHJvYmxlbV9sYW5nIjoiMSIsInRpdGxlIjoiR2VvbWV0cmljIE9ybmFtZW50cyIsImRlc2NyaXB0aW9uIjoiPHA+TWFua2luZCBoYXMgYmVlbiBkZWNvcmF0aW5nIGl0cyBvYmplY3RzLCBpdHMgYnVpbGRpbmdzLCBhbmQgaXRzZWxmIHRocm91Z2hvdXQgYWxsIG9mIGhpc3RvcnkgYW5kIGJhY2sgaW50byBwcmVoaXN0b3J5LiBHZW9tZXRyaWMgb3JuYW1lbnRzIGFyZSB0aGUgZXNzZW50aWFsIGVsZW1lbnRzIG9mIHN1Y2ggZGVjb3JhdGlvbi4gV2Ugc2VlIHRoZW0gZXZlcnkgZGF5IGFuZCBldmVyeXdoZXJlIGFyb3VuZCB1cy4gU29vaHdhbiwgd2hvIGlzIGEgZmFtb3VzIGNvbXB1dGF0aW9uYWwgZ2VvbWV0ZXIsIGhhcyByZWFsaXplZCB0aGF0IGdlb21ldHJpYyBvcm5hbWVudHMgYXJlIHZlcnkgcHJlY2lzZSBnZW9tZXRyaWMgY29uc3RydWN0aW9ucyBhbmQgdGhleSBhcmUgdXN1YWxseSBidWlsdCBvbiBhIGJhc2Ugb2YgZ3JpZHMgYW5kIG11bHRpcGxlIHN1YmdyaWRzLiBSZWNlbnRseSwgaGUgaW5pdGlhdGVkIGFuIGFtYml0aW91cyByZXNlYXJjaCBwcm9qZWN0IG9uIHRoZSBhdXRvbWF0aWMgZ2VuZXJhdGlvbiBvZiBnZW9tZXRyaWMgb3JuYW1lbnRzLiZuYnNwOzxcL3A+XHJcblxyXG48cD5BbW9uZyB2YXJpb3VzIGdyaWRzLCB0aGUgcmVjdGFuZ3VsYXIgZ3JpZCBhbmQgdGhlIGNpcmN1bGFyIGdyaWQgaGF2ZSBhdHRyYWN0ZWQgaGlzIGF0dGVudGlvbi4gQW4gbSAmdGltZXM7IG4gcmVjdGFuZ3VsYXIgZ3JpZCBpcyBhIGdyYXBoIHRoYXQgY2FuIGJlIGVtYmVkZGVkIGluIHRoZSBwbGFuZSBzbyB0aGF0IGl0cyB2ZXJ0aWNlcyBhbmQgZWRnZXMgZm9ybSBhIHJlY3Rhbmd1bGFyIGdyaWQgd2l0aCBuIHZlcnRpY2VzIGFwcGVhcmluZyBpbiBlYWNoIG9mIG0gcm93cyBhbmQgbSB2ZXJ0aWNlcyBhcHBlYXJpbmcgaW4gZWFjaCBvZiBuIGNvbHVtbnMuIE1vcmUgcHJlY2lzZWx5LCB0aGUgbSAmdGltZXM7IG4gcmVjdGFuZ3VsYXIgZ3JpZCBpcyB0aGUgZ3JhcGggd2hvc2UgdmVydGV4IHNldCBpcyB7djxzdWI+ajxcL3N1Yj48c3VwPmk8XC9zdXA+Jm5ic3A7OiAwICZsZTsgaSAmbGU7IG0tMSwgMCAmbGU7IGogJmxlOyBuLTF9Jm5ic3A7YW5kIHdob3NlIGVkZ2Ugc2V0IGlzIHsodjxzdWI+ajxcL3N1Yj48c3VwPmk8XC9zdXA+LCB2PHN1Yj5xPFwvc3ViPjxzdXA+cDxcL3N1cD4pIDogfGkgLSBwfCArIHxqIC0gcXwgPSAxfS4gVGhlIG0gJnRpbWVzOyBuIGNpcmN1bGFyIGdyaWQgaXMgb2J0YWluZWQgZnJvbSB0aGUgbSAmdGltZXM7IG4gcmVjdGFuZ3VsYXIgZ3JpZCBieSBhZGRpbmcgc28tY2FsbGVkIHdyYXBhcm91bmQgZWRnZXMgKHY8c3ViPm4tMTxcL3N1Yj48c3VwPmk8XC9zdXA+LCB2PHN1Yj4wPFwvc3ViPjxzdXA+aTxcL3N1cD4pIGZvciBldmVyeSAwICZsZTsgaSAmbGU7IG0tMS4gVGhlIDIgJnRpbWVzOyA2IHJlY3Rhbmd1bGFyIGdyaWQgYW5kIHRoZSAyICZ0aW1lczsgNiBjaXJjdWxhciBncmlkIGFyZSBzaG93biBpbiBGaWd1cmVzIDEgYW5kIDIsIHJlc3BlY3RpdmVseS4mbmJzcDs8XC9wPlxyXG5cclxuPHA+U29tZSBnZW9tZXRyaWMgb3JuYW1lbnRzIGZvcm0gc3Bhbm5pbmcgdHJlZXMgb2YgdGhlIHVuZGVybHlpbmcgZ3JpZCwgYXMgc2hvd24gaW4gRmlndXJlcyAxIGFuZCAyLiBIZXJlLCBhIHNwYW5uaW5nIHRyZWUgb2YgYSBncmlkIHJlZmVycyB0byBhIHRyZWUsIGEgY29ubmVjdGVkIGdyYXBoIHdpdGhvdXQgY3ljbGVzLCBjb21wb3NlZCBvZiBhbGwgdGhlIHZlcnRpY2VzIGFuZCBzb21lIGVkZ2VzIG9mIHRoZSBncmlkLiBTb29od2FuIHdhbnRzIHRvIGVudW1lcmF0ZSBhbGwgZGlmZmVyZW50IGxhYmVsZWQgc3Bhbm5pbmcgdHJlZXMgb2YgdGhlIDIgJnRpbWVzOyBuIGdyaWQsIHdoZXJlIHRoZSB2ZXJ0aWNlcyBhcmUgZGlzdGluZ3Vpc2hlZCBmcm9tIG9uZSBhbm90aGVyIGJ5IG5hbWVzLiAoRWFjaCB2ZXJ0ZXggaXMgYXNzaWduZWQgYSB1bmlxdWUgbmFtZSBpbiBhIGxhYmVsZWQgZ3JhcGggdG8gZGlzdGluZ3Vpc2ggaXQgZnJvbSBhbGwgb3RoZXIgdmVydGljZXMuKSBUaGUgdHdvIHNwYW5uaW5nIHRyZWVzIG9mIHRoZSAyICZ0aW1lczsgNiBjaXJjdWxhciBncmlkIGdpdmVuIGluIEZpZ3VyZSAyIHNob3VsZCBiZSBjb3VudGVkIHNlcGFyYXRlbHkuIFRvIHN1cHBvcnQgaGlzIHByb2plY3QsIHlvdSBhcmUgdG8gd3JpdGUgYSBwcm9ncmFtIHRvIGNvdW50IHRoZSBudW1iZXJzIG9mIGxhYmVsZWQgc3Bhbm5pbmcgdHJlZXMgb2YgdGhlIDIgJnRpbWVzOyBuIHJlY3Rhbmd1bGFyIGdyaWQgYW5kIG9mIHRoZSAyICZ0aW1lczsgbiBjaXJjdWxhciBncmlkLiZuYnNwOzxcL3A+XHJcblxyXG48cCBzdHlsZT1cInRleHQtYWxpZ246IGNlbnRlcjtcIj48aW1nIGFsdD1cIlwiIHNyYz1cIlwvdXBsb2FkXC9pbWFnZXNcL3JzcC5wbmdcIiBzdHlsZT1cImhlaWdodDoxMjZweDsgdGV4dC1hbGlnbjpjZW50ZXI7IHdpZHRoOjU1N3B4XCIgXC8+PFwvcD5cclxuXHJcbjxwIHN0eWxlPVwidGV4dC1hbGlnbjogY2VudGVyO1wiPjxzdHJvbmc+RmlndXJlIDE8XC9zdHJvbmc+LiBBIDIgJnRpbWVzOyA2IHJlY3Rhbmd1bGFyIGdyaWQgYW5kIG9uZSBvZiBpdHMgbGFiZWxlZCBzcGFubmluZyB0cmVlcy4mbmJzcDs8XC9wPlxyXG5cclxuPHAgc3R5bGU9XCJ0ZXh0LWFsaWduOiBjZW50ZXI7XCI+PGltZyBhbHQ9XCJcIiBzcmM9XCJcL3VwbG9hZFwvaW1hZ2VzXC9jc3AucG5nXCIgc3R5bGU9XCJoZWlnaHQ6MjAwcHg7IHRleHQtYWxpZ246Y2VudGVyOyB3aWR0aDo2MTNweFwiIFwvPjxcL3A+XHJcblxyXG48cCBzdHlsZT1cInRleHQtYWxpZ246IGNlbnRlcjtcIj48c3Ryb25nPkZpZ3VyZSAyPFwvc3Ryb25nPi4gQSAyICZ0aW1lczsgNiBjaXJjdWxhciBncmlkIGFuZCBpdHMgdHdvIGRpZmZlcmVudCBsYWJlbGVkIHNwYW5uaW5nIHRyZWVzLjxcL3A+XHJcbiIsImlucHV0IjoiPHA+WW91ciBwcm9ncmFtIGlzIHRvIHJlYWQgZnJvbSBzdGFuZGFyZCBpbnB1dC4gVGhlIGlucHV0IGNvbnNpc3RzIG9mIFQgdGVzdCBjYXNlcy4gVGhlIG51bWJlciBvZiB0ZXN0IGNhc2VzIFQgaXMgZ2l2ZW4gaW4gdGhlIGZpcnN0IGxpbmUgb2YgdGhlIGlucHV0LiBFYWNoIHRlc3QgY2FzZSBjb25zaXN0cyBvZiBhIHNpbmdsZSBsaW5lIGNvbnRhaW5pbmcgYW4gaW50ZWdlciBuLCBpbmRpY2F0aW5nIHRoYXQgdGhlIGRpbWVuc2lvbiBvZiB0aGUgdW5kZXJseWluZyBncmlkIGlzIDIgJnRpbWVzOyBuLCB3aGVyZSAzICZsZTsgbiAmbGU7IDUwLDAwMC48XC9wPlxyXG5cclxuPHA+Jm5ic3A7PFwvcD5cclxuIiwib3V0cHV0IjoiPHA+WW91ciBwcm9ncmFtIGlzIHRvIHdyaXRlIHRvIHN0YW5kYXJkIG91dHB1dC4gUHJpbnQgZXhhY3RseSBvbmUgbGluZSBmb3IgZWFjaCB0ZXN0IGNhc2UuIFRoZSBsaW5lIHNob3VsZCBjb250YWluIHR3byBpbnRlZ2VycywgUjxzdWI+bjxcL3N1Yj4gbW9kdWxvIDEwLDAwNyBhbmQgQzxzdWI+bjxcL3N1Yj4gbW9kdWxvIDEwLDAwNywgd2hlcmUgUjxzdWI+bjxcL3N1Yj4gYW5kIEM8c3ViPm48XC9zdWI+IGFyZSByZXNwZWN0aXZlbHkgdGhlIG51bWJlcnMgb2YgbGFiZWxlZCBzcGFubmluZyB0cmVlcyBvZiBhIDIgJnRpbWVzOyBuIHJlY3Rhbmd1bGFyIGdyaWQgYW5kIG9mIGEgMiAmdGltZXM7IG4gY2lyY3VsYXIgZ3JpZC4mbmJzcDs8XC9wPlxyXG4iLCJoaW50IjoiIiwib3JpZ2luYWwiOiIxIiwiaHRtbF90aXRsZSI6IjAiLCJwcm9ibGVtX2xhbmdfY29kZSI6Ilx1YzYwMVx1YzViNCJ9XQ==