시간 제한 메모리 제한 제출 정답 맞은 사람 정답 비율
1 초 128 MB 41 15 15 37.500%

문제

댐은 n개의 수문을 가지고 있다. 각각의 수문은 자체 용량과 물길을 가지고 있고, 하류에 영향을 줄 수 있다. 

수문이 열렸을 때, 영향을 받는 지역은 홍수의 위험이 있다. 수문에 의한 예상 피해액은 지역의 인구의 수와 면적으로 계산할 수 있다.

수문 Gi의 유량이 Fi m3/hour 이고, 피해 비용이 Ci라고 하자. 댐에는 물이 Vm3 만큼 저장되어 있고, 이 물을 T시간 이내에 모두 비워내야 하는 상황이다. 이때, 수문을 어떻게 열어야 피해 비용이 최소가 되는지를 구하는 프로그램을 작성하시오.

예를 들어, 댐에 수문이 4개가 있고, 각 수문의 유량과 피해 비용이 아래와 같다고 하자.

수문 G1 G2 G3 G4
유량 (m3/hour) 720,000 50,000 130,000 1,200,000
비용 120,000 60,000 50,000 150,000

물 5백만 m3을 7시간 안에 비워내야 하는 경우에, G1을 7시간동안 열어 놓으면 되고, 비용은 120,000이 된다. 

물 5백만 m3을 30시간 안에 비워내야 하는 경우에는 G2를 29시간, G3를 28시간 동안 열어 놓으면 된다. 이때의 비용은 110,000이 된다.

모든 수문은 항상 독립적으로 동작하며, 수문은 항상 1시간 단위만큼 열 수 있다.

입력

첫째 줄에 수문의 개수 n이 주어진다. (1 ≤ n ≤ 20) 다음 n개 줄에는 각 수문 Gi의 유량 (m3/hour) Fi와 피해 비용 Ci가 주어진다. 다음 줄에는 테스트 케이스의 수 m (1 ≤ m ≤ 50)이 주어진다. 다음 m개 줄에는 V와 T가 주어지며, 물 V m3을 T시간 이내에 비워내야 한다는 뜻이다. (1 ≤ Fi, V, Ci ≤ 109, 1 ≤ T ≤ 1000)

출력

각 테스트 케이스마다, 최소 비용을 예제 출력과 같이 출력한다. 만약 물 V를 T시간 이내에 비워낼 수 없으면 "IMPOSSIBLE"을 출력한다.

예제 입력 1

4
720000 120000
50000 60000
130000 50000
1200000 150000
3
5000000 7
5000000 30
63000000 24

예제 출력 1

Case 1: 120000
Case 2: 110000
Case 3: IMPOSSIBLE
W3sicHJvYmxlbV9pZCI6IjU2MzgiLCJwcm9ibGVtX2xhbmciOiIwIiwidGl0bGUiOiJcdWMyMThcdWJiMzgiLCJkZXNjcmlwdGlvbiI6IjxwPlx1YjMxMFx1Yzc0MCBuXHVhYzFjXHVjNzU4IFx1YzIxOFx1YmIzOFx1Yzc0NCBcdWFjMDBcdWM5YzBcdWFjZTAgXHVjNzg4XHViMmU0LiBcdWFjMDFcdWFjMDFcdWM3NTggXHVjMjE4XHViYjM4XHVjNzQwIFx1Yzc5MFx1Y2NiNCBcdWM2YTlcdWI3YzlcdWFjZmMgXHViYjNjXHVhZTM4XHVjNzQ0IFx1YWMwMFx1YzljMFx1YWNlMCBcdWM3ODhcdWFjZTAsIFx1ZDU1OFx1Yjk1OFx1YzVkMCBcdWM2MDFcdWQ1YTVcdWM3NDQgXHVjOTA0IFx1YzIxOCBcdWM3ODhcdWIyZTQuJm5ic3A7PFwvcD5cclxuXHJcbjxwPlx1YzIxOFx1YmIzOFx1Yzc3NCBcdWM1ZjRcdWI4MzhcdWM3NDQgXHViNTRjLCBcdWM2MDFcdWQ1YTVcdWM3NDQgXHViYzFiXHViMjk0IFx1YzljMFx1YzVlZFx1Yzc0MCBcdWQ2NGRcdWMyMThcdWM3NTggXHVjNzA0XHVkNWQ4XHVjNzc0IFx1Yzc4OFx1YjJlNC4gXHVjMjE4XHViYjM4XHVjNWQwIFx1Yzc1OFx1ZDU1YyBcdWM2MDhcdWMwYzEgXHVkNTNjXHVkNTc0XHVjNTYxXHVjNzQwIFx1YzljMFx1YzVlZFx1Yzc1OCBcdWM3NzhcdWFkNmNcdWM3NTggXHVjMjE4XHVjNjQwIFx1YmE3NFx1YzgwMVx1YzczY1x1Yjg1YyBcdWFjYzRcdWMwYjBcdWQ1NjAgXHVjMjE4IFx1Yzc4OFx1YjJlNC48XC9wPlxyXG5cclxuPHA+XHVjMjE4XHViYjM4IEc8c3ViPmk8XC9zdWI+XHVjNzU4IFx1YzcyMFx1YjdjOVx1Yzc3NCBGPHN1Yj5pPFwvc3ViPiBtPHN1cD4zPFwvc3VwPlwvaG91ciBcdWM3NzRcdWFjZTAsIFx1ZDUzY1x1ZDU3NCBcdWJlNDRcdWM2YTlcdWM3NzQgQzxzdWI+aTxcL3N1Yj5cdWI3N2NcdWFjZTAgXHVkNTU4XHVjNzkwLiBcdWIzMTBcdWM1ZDBcdWIyOTQgXHViYjNjXHVjNzc0IFZtPHN1cD4zPFwvc3VwPiBcdWI5Y2NcdWQwN2MgXHVjODAwXHVjN2E1XHViNDE4XHVjNWI0IFx1Yzc4OFx1YWNlMCwgXHVjNzc0IFx1YmIzY1x1Yzc0NCBUXHVjMmRjXHVhYzA0IFx1Yzc3NFx1YjBiNFx1YzVkMCBcdWJhYThcdWI0NTAgXHViZTQ0XHVjNmNjXHViMGI0XHVjNTdjIFx1ZDU1OFx1YjI5NCBcdWMwYzFcdWQ2NjlcdWM3NzRcdWIyZTQuIFx1Yzc3NFx1YjU0YywgXHVjMjE4XHViYjM4XHVjNzQ0IFx1YzViNFx1YjViYlx1YWM4YyBcdWM1ZjRcdWM1YjRcdWM1N2MgXHVkNTNjXHVkNTc0IFx1YmU0NFx1YzZhOVx1Yzc3NCBcdWNkNWNcdWMxOGNcdWFjMDAgXHViNDE4XHViMjk0XHVjOWMwXHViOTdjIFx1YWQ2Y1x1ZDU1OFx1YjI5NCBcdWQ1MDRcdWI4NWNcdWFkZjhcdWI3YThcdWM3NDQgXHVjNzkxXHVjMTMxXHVkNTU4XHVjMmRjXHVjNjI0LjxcL3A+XHJcblxyXG48cD5cdWM2MDhcdWI5N2MgXHViNGU0XHVjNWI0LCBcdWIzMTBcdWM1ZDAgXHVjMjE4XHViYjM4XHVjNzc0IDRcdWFjMWNcdWFjMDAgXHVjNzg4XHVhY2UwLCBcdWFjMDEgXHVjMjE4XHViYjM4XHVjNzU4IFx1YzcyMFx1YjdjOVx1YWNmYyBcdWQ1M2NcdWQ1NzQgXHViZTQ0XHVjNmE5XHVjNzc0IFx1YzU0NFx1Yjc5OFx1YzY0MCBcdWFjMTlcdWIyZTRcdWFjZTAgXHVkNTU4XHVjNzkwLjxcL3A+XHJcblxyXG48dGFibGUgY2xhc3M9XCJ0YWJsZSB0YWJsZS1ib3JkZXJlZFwiIHN0eWxlPVwid2lkdGg6NTAlXCI+XHJcblx0PHRoZWFkPlxyXG5cdFx0PHRyPlxyXG5cdFx0XHQ8dGggc3R5bGU9XCJ3aWR0aDoxMCVcIj5cdWMyMThcdWJiMzg8XC90aD5cclxuXHRcdFx0PHRoIHN0eWxlPVwid2lkdGg6MTAlXCI+RzxzdWI+MTxcL3N1Yj48XC90aD5cclxuXHRcdFx0PHRoIHN0eWxlPVwid2lkdGg6MTAlXCI+RzxzdWI+MjxcL3N1Yj48XC90aD5cclxuXHRcdFx0PHRoIHN0eWxlPVwid2lkdGg6MTAlXCI+RzxzdWI+MzxcL3N1Yj48XC90aD5cclxuXHRcdFx0PHRoIHN0eWxlPVwid2lkdGg6MTAlXCI+RzxzdWI+NDxcL3N1Yj48XC90aD5cclxuXHRcdDxcL3RyPlxyXG5cdDxcL3RoZWFkPlxyXG5cdDx0Ym9keT5cclxuXHRcdDx0cj5cclxuXHRcdFx0PHRkPlx1YzcyMFx1YjdjOSAobTxzdXA+MzxcL3N1cD5cL2hvdXIpPFwvdGQ+XHJcblx0XHRcdDx0ZD43MjAsMDAwPFwvdGQ+XHJcblx0XHRcdDx0ZD41MCwwMDA8XC90ZD5cclxuXHRcdFx0PHRkPjEzMCwwMDA8XC90ZD5cclxuXHRcdFx0PHRkPjEsMjAwLDAwMDxcL3RkPlxyXG5cdFx0PFwvdHI+XHJcblx0XHQ8dHI+XHJcblx0XHRcdDx0ZD5cdWJlNDRcdWM2YTk8XC90ZD5cclxuXHRcdFx0PHRkPjEyMCwwMDA8XC90ZD5cclxuXHRcdFx0PHRkPjYwLDAwMDxcL3RkPlxyXG5cdFx0XHQ8dGQ+NTAsMDAwPFwvdGQ+XHJcblx0XHRcdDx0ZD4xNTAsMDAwPFwvdGQ+XHJcblx0XHQ8XC90cj5cclxuXHQ8XC90Ym9keT5cclxuPFwvdGFibGU+XHJcblxyXG48cD5cdWJiM2MgNVx1YmMzMVx1YjljYyBtPHN1cD4zPFwvc3VwPlx1Yzc0NCA3XHVjMmRjXHVhYzA0IFx1YzU0OFx1YzVkMCBcdWJlNDRcdWM2Y2NcdWIwYjRcdWM1N2MgXHVkNTU4XHViMjk0IFx1YWNiZFx1YzZiMFx1YzVkMCwgRzxzdWI+MTxcL3N1Yj5cdWM3NDQgN1x1YzJkY1x1YWMwNFx1YjNkOVx1YzU0OCBcdWM1ZjRcdWM1YjQgXHViMTkzXHVjNzNjXHViYTc0IFx1YjQxOFx1YWNlMCwgXHViZTQ0XHVjNmE5XHVjNzQwIDEyMCwwMDBcdWM3NzQgXHViNDFjXHViMmU0LiZuYnNwOzxcL3A+XHJcblxyXG48cD5cdWJiM2MgNVx1YmMzMVx1YjljYyBtPHN1cD4zPFwvc3VwPlx1Yzc0NCAzMFx1YzJkY1x1YWMwNCBcdWM1NDhcdWM1ZDAgXHViZTQ0XHVjNmNjXHViMGI0XHVjNTdjIFx1ZDU1OFx1YjI5NCBcdWFjYmRcdWM2YjBcdWM1ZDBcdWIyOTQgRzxzdWI+MjxcL3N1Yj5cdWI5N2MgMjlcdWMyZGNcdWFjMDQsIEc8c3ViPjM8XC9zdWI+XHViOTdjIDI4XHVjMmRjXHVhYzA0IFx1YjNkOVx1YzU0OCBcdWM1ZjRcdWM1YjQgXHViMTkzXHVjNzNjXHViYTc0IFx1YjQxY1x1YjJlNC4gXHVjNzc0XHViNTRjXHVjNzU4IFx1YmU0NFx1YzZhOVx1Yzc0MCAxMTAsMDAwXHVjNzc0IFx1YjQxY1x1YjJlNC48XC9wPlxyXG5cclxuPHA+XHViYWE4XHViNGUwIFx1YzIxOFx1YmIzOFx1Yzc0MCBcdWQ1NmRcdWMwYzEgXHViM2M1XHViOWJkXHVjODAxXHVjNzNjXHViODVjIFx1YjNkOVx1Yzc5MVx1ZDU1OFx1YmE3MCwgXHVjMjE4XHViYjM4XHVjNzQwIFx1ZDU2ZFx1YzBjMSAxXHVjMmRjXHVhYzA0IFx1YjJlOFx1YzcwNFx1YjljY1x1ZDA3YyBcdWM1ZjQgXHVjMjE4IFx1Yzc4OFx1YjJlNC48XC9wPlxyXG4iLCJpbnB1dCI6IjxwPlx1Y2NhYlx1YzlmOCBcdWM5MDRcdWM1ZDAgXHVjMjE4XHViYjM4XHVjNzU4IFx1YWMxY1x1YzIxOCBuXHVjNzc0IFx1YzhmY1x1YzViNFx1YzljNFx1YjJlNC4gKDEgJmxlOyBuICZsZTsgMjApIFx1YjJlNFx1Yzc0YyBuXHVhYzFjIFx1YzkwNFx1YzVkMFx1YjI5NCBcdWFjMDEgXHVjMjE4XHViYjM4IEc8c3ViPmk8XC9zdWI+XHVjNzU4IFx1YzcyMFx1YjdjOSAobTxzdXA+MzxcL3N1cD5cL2hvdXIpIEY8c3ViPmk8XC9zdWI+XHVjNjQwIFx1ZDUzY1x1ZDU3NCBcdWJlNDRcdWM2YTkgQzxzdWI+aTxcL3N1Yj5cdWFjMDAgXHVjOGZjXHVjNWI0XHVjOWM0XHViMmU0LiBcdWIyZTRcdWM3NGMgXHVjOTA0XHVjNWQwXHViMjk0IFx1ZDE0Y1x1YzJhNFx1ZDJiOCBcdWNmMDBcdWM3NzRcdWMyYTRcdWM3NTggXHVjMjE4IG0gKDEgJmxlOyBtICZsZTsgNTApXHVjNzc0IFx1YzhmY1x1YzViNFx1YzljNFx1YjJlNC4gXHViMmU0XHVjNzRjIG1cdWFjMWMgXHVjOTA0XHVjNWQwXHViMjk0IFZcdWM2NDAgVFx1YWMwMCBcdWM4ZmNcdWM1YjRcdWM5YzBcdWJhNzAsIFx1YmIzYyBWIG08c3VwPjM8XC9zdXA+XHVjNzQ0IFRcdWMyZGNcdWFjMDQgXHVjNzc0XHViMGI0XHVjNWQwIFx1YmU0NFx1YzZjY1x1YjBiNFx1YzU3YyBcdWQ1NWNcdWIyZTRcdWIyOTQgXHViNzNiXHVjNzc0XHViMmU0LiAoMSAmbGU7IEY8c3ViPmk8XC9zdWI+LCBWLCBDPHN1Yj5pPFwvc3ViPiAmbGU7IDEwPHN1cD45PFwvc3VwPiwgMSAmbGU7IFQgJmxlOyAxMDAwKTxcL3A+XHJcbiIsIm91dHB1dCI6IjxwPlx1YWMwMSBcdWQxNGNcdWMyYTRcdWQyYjggXHVjZjAwXHVjNzc0XHVjMmE0XHViOWM4XHViMmU0LCBcdWNkNWNcdWMxOGMgXHViZTQ0XHVjNmE5XHVjNzQ0IFx1YzYwOFx1YzgxYyBcdWNkOWNcdWI4MjVcdWFjZmMgXHVhYzE5XHVjNzc0IFx1Y2Q5Y1x1YjgyNVx1ZDU1Y1x1YjJlNC4gXHViOWNjXHVjNTdkIFx1YmIzYyBWXHViOTdjIFRcdWMyZGNcdWFjMDQgXHVjNzc0XHViMGI0XHVjNWQwIFx1YmU0NFx1YzZjY1x1YjBiYyBcdWMyMTggXHVjNWM2XHVjNzNjXHViYTc0ICZxdW90O0lNUE9TU0lCTEUmcXVvdDtcdWM3NDQgXHVjZDljXHViODI1XHVkNTVjXHViMmU0LjxcL3A+XHJcbiIsImhpbnQiOiIiLCJvcmlnaW5hbCI6IjAiLCJwcm9ibGVtX2xhbmdfY29kZSI6Ilx1ZDU1Y1x1YWQ2ZFx1YzViNCJ9LHsicHJvYmxlbV9pZCI6IjU2MzgiLCJwcm9ibGVtX2xhbmciOiIxIiwidGl0bGUiOiJXYXRlciBHYXRlIE1hbmFnZW1lbnQiLCJkZXNjcmlwdGlvbiI6IjxwPkEgZGFtIGhhcyBuIHdhdGVyIGdhdGVzIHRvIGxldCBvdXQgd2F0ZXIgd2hlbiBuZWNlc3NhcnkuIEVhY2ggd2F0ZXIgZ2F0ZSBoYXMgaXRzIG93biBjYXBhY2l0eSwgd2F0ZXIgcGF0aCBhbmQgYWZmZWN0ZWQgYXJlYXMgaW4gdGhlIGRvd25zdHJlYW0uIFRoZSBhZmZlY3RlZCBhcmVhcyBtYXkgaGF2ZSBhIHJpc2sgb2YgZmxvb2Qgd2hlbiB0aGUgd2F0ZXIgZ2F0ZSBpcyBvcGVuLiBUaGUgY29zdCBvZiBwb3RlbnRpYWwgZGFtYWdlIGNhdXNlZCBieSBhIHdhdGVyIGdhdGUgaXMgbWVhc3VyZWQgaW4gbnVtYmVyIGNhbGN1bGF0ZWQgZnJvbSB0aGUgbnVtYmVyIG9mIHBlb3BsZSBhbmQgYXJlYXMgZXN0aW1hdGVkIHRvIGdldCBhZmZlY3RlZC4mbmJzcDs8XC9wPlxyXG5cclxuPHA+U3VwcG9zZSBhIHdhdGVyIGdhdGUgRzxzdWI+aTxcL3N1Yj4gaGFzIHRoZSB2b2x1bWV0cmljIGZsb3cgcmF0ZSBvZiBGPHN1Yj5pPFwvc3ViPiBtPHN1cD4zPFwvc3VwPlwvaG91ciBhbmQgdGhlIGRhbWFnZSBjb3N0IG9mIEM8c3ViPmk8XC9zdWI+LiBJbiBhIGNlcnRhaW4gc2l0dWF0aW9uLCB0aGUgZGFtIGhhcyB0aGUgdm9sdW1lIFYgbTxzdXA+MzxcL3N1cD4gb2Ygd2F0ZXIgdG8gZmx1c2ggb3V0IHdpdGhpbiBUIGhvdXJzLiBZb3VyIHRhc2sgaXMgdG8gbWFuYWdlIHRoZSBvcGVuaW5nIG9mIHRoZSB3YXRlciBnYXRlcyBpbiBvcmRlciB0byBnZXQgcmlkIG9mIGF0IGxlYXN0IHRoZSBzcGVjaWZpZWQgdm9sdW1lIG9mIHdhdGVyIHdpdGhpbiBhIGxpbWl0ZWQgdGltZSBpbiBjb25kaXRpb24gdGhhdCB0aGUgZGFtYWdlIGNvc3QgaXMgbWluaW1pemVkLiZuYnNwOzxcL3A+XHJcblxyXG48cD5Gb3IgZXhhbXBsZSwgYSBkYW0gaGFzIDQgd2F0ZXIgZ2F0ZXMgYW5kIHRoZWlyIHByb3BlcnRpZXMgYXJlIHNob3duIGluIHRoZSBmb2xsb3dpbmcgdGFibGUuPFwvcD5cclxuXHJcbjx0YWJsZSBjbGFzcz1cInRhYmxlIHRhYmxlLWJvcmRlcmVkXCIgc3R5bGU9XCJ3aWR0aDo2MCVcIj5cclxuXHQ8dGhlYWQ+XHJcblx0XHQ8dHI+XHJcblx0XHRcdDx0aCBzdHlsZT1cIndpZHRoOjIwJVwiPldhdGVyIEdhdGU8XC90aD5cclxuXHRcdFx0PHRoIHN0eWxlPVwid2lkdGg6MTAlXCI+RzxzdWI+MTxcL3N1Yj48XC90aD5cclxuXHRcdFx0PHRoIHN0eWxlPVwid2lkdGg6MTAlXCI+RzxzdWI+MjxcL3N1Yj48XC90aD5cclxuXHRcdFx0PHRoIHN0eWxlPVwid2lkdGg6MTAlXCI+RzxzdWI+MzxcL3N1Yj48XC90aD5cclxuXHRcdFx0PHRoIHN0eWxlPVwid2lkdGg6MTAlXCI+RzxzdWI+NDxcL3N1Yj48XC90aD5cclxuXHRcdDxcL3RyPlxyXG5cdDxcL3RoZWFkPlxyXG5cdDx0Ym9keT5cclxuXHRcdDx0cj5cclxuXHRcdFx0PHRkPkZsb3cgcmF0ZSAobTxzdXA+MzxcL3N1cD5cL2hvdXIpPFwvdGQ+XHJcblx0XHRcdDx0ZD43MjAsMDAwPFwvdGQ+XHJcblx0XHRcdDx0ZD41MCwwMDA8XC90ZD5cclxuXHRcdFx0PHRkPjEzMCwwMDA8XC90ZD5cclxuXHRcdFx0PHRkPjEsMjAwLDAwMDxcL3RkPlxyXG5cdFx0PFwvdHI+XHJcblx0XHQ8dHI+XHJcblx0XHRcdDx0ZD5Db3N0PFwvdGQ+XHJcblx0XHRcdDx0ZD4xMjAsMDAwPFwvdGQ+XHJcblx0XHRcdDx0ZD42MCwwMDA8XC90ZD5cclxuXHRcdFx0PHRkPjUwLDAwMDxcL3RkPlxyXG5cdFx0XHQ8dGQ+MTUwLDAwMDxcL3RkPlxyXG5cdFx0PFwvdHI+XHJcblx0PFwvdGJvZHk+XHJcbjxcL3RhYmxlPlxyXG5cclxuPHA+Q2FzZSAxOiBZb3UgaGF2ZSB0byBmbHVzaCBvdXQgdGhlIHdhdGVyIDUgbWlsbGlvbiBtPHN1cD4zPFwvc3VwPiB3aXRoaW4gNyBob3Vycy4gVGhlIG1pbmltdW0gY29zdCB3aWxsIGJlIDEyMCwwMDAgYnkgbGV0dGluZyB0aGUgd2F0ZXIgZ2F0ZSBHPHN1Yj4xPFwvc3ViPiBvcGVuIGZvciA3IGhvdXJzLiZuYnNwOzxcL3A+XHJcblxyXG48cD5DYXNlIDI6IFlvdSBoYXZlIHRvIGZsdXNoIG91dCB0aGUgd2F0ZXIgNSBtaWxsaW9uIG08c3VwPjM8XC9zdXA+IHdpdGhpbiAzMCBob3Vycy4gVGhlIG1pbmltdW0gY29zdCB3aWxsIGJlIDExMCwwMDAgYnkgbGV0dGluZyB0aGUgd2F0ZXIgZ2F0ZXMgRzxzdWI+MjxcL3N1Yj4gYW5kIEc8c3ViPjM8XC9zdWI+IG9wZW4sIGZvciBleGFtcGxlLCBHPHN1Yj4yPFwvc3ViPiBpcyBvcGVuIGZvciAyOSBob3VycyBhbmQgRzxzdWI+MzxcL3N1Yj4gaXMgb3BlbiBmb3IgMjggaG91cnMuJm5ic3A7PFwvcD5cclxuXHJcbjxwPk5vdGUgdGhhdCBlYWNoIHdhdGVyIGdhdGUgaXMgaW5kZXBlbmRlbnQgYW5kIGl0IGNhbiBiZSBvcGVuIG9ubHkgaW4gYSB1bml0IG9mIHdob2xlIGhvdXIgKG5vIGZyYWN0aW9uIG9mIGhvdXIpLiZuYnNwOzxcL3A+XHJcbiIsImlucHV0IjoiPHA+VGhlIGZpcnN0IGxpbmUgaW5jbHVkZXMgYW4gaW50ZWdlciBuIGluZGljYXRpbmcgbnVtYmVyIG9mIHdhdGVyIGdhdGVzICgxICZsZTsgbiAmbGU7IDIwKS4gVGhlbiB0aGUgbmV4dCBuIGxpbmVzIGNvbnRhaW4sIGluIGVhY2ggbGluZSwgdHdvIGludGVnZXJzOiBGPHN1Yj5pPFwvc3ViPiBhbmQgQzxzdWI+aTxcL3N1Yj4gY29ycmVzcG9uZGluZyB0byB0aGUgZmxvdyByYXRlIChtPHN1cD4zPFwvc3VwPlwvaG91cikgYW5kIHRoZSBkYW1hZ2UgY29zdCBvZiB0aGUgd2F0ZXIgZ2F0ZSBHPHN1Yj5pPFwvc3ViPiByZXNwZWN0aXZlbHkuIFRoZSBuZXh0IGxpbmUgY29udGFpbnMgdGhlIG51bWJlciBtIHdoaWNoIGlzIHRoZSBudW1iZXIgb2YgdGVzdCBjYXNlcyAoMSAmbGU7IG0gJmxlOyA1MCkuIFRoZSBmb2xsb3dpbmcgbSBsaW5lcyBjb250YWluLCBpbiBlYWNoIGxpbmUsIHR3byBpbnRlZ2VyczogViBhbmQgVCBjb3JyZXNwb25kaW5nIHRvIHRoZSB2b2x1bWUgKG08c3VwPjM8XC9zdXA+KSBvZiB3YXRlciB0byBsZXQgb3V0IHdpdGhpbiBUIGhvdXJzLiAxICZsZTsgRjxzdWI+aTxcL3N1Yj4gLFYsIEM8c3ViPmk8XC9zdWI+ICZsZTsgMTA8c3VwPjk8XC9zdXA+ICwgMSAmbGU7IFQgJmxlOyAxMDAwKSZuYnNwOzxcL3A+XHJcbiIsIm91dHB1dCI6IjxwPkZvciBlYWNoIHRlc3QgY2FzZSwgcHJpbnQgb3V0IHRoZSBtaW5pbXVtIGNvc3QgaW4gdGhlIGV4YWN0IGZvcm1hdCBzaG93biBpbiB0aGUgc2FtcGxlIG91dHB1dCBiZWxvdy4gSWYgaXQgaXMgbm90IHBvc3NpYmxlIHRvIGxldCBvdXQgdGhlIHdhdGVyIG9mIHZvbHVtZSBWIGluIFQgaG91cnMgZnJvbSB0aGUgZGFtLCBwcmludCBvdXQgJmxkcXVvO0lNUE9TU0lCTEUmcmRxdW87ICh3aXRob3V0IHF1b3RhdGlvbiBtYXJrcykuJm5ic3A7PFwvcD5cclxuIiwiaGludCI6IiIsIm9yaWdpbmFsIjoiMSIsInByb2JsZW1fbGFuZ19jb2RlIjoiXHVjNjAxXHVjNWI0In1d