PGh0bWw+CjxoZWFkPgoJPHRpdGxlPkJPT1NUX1BQX0xJU1RfU0laRV9EPC90aXRsZT4KCTxsaW5rIHJlbD0ic3R5bGVzaGVldCIgdHlwZT0idGV4dC9jc3MiIGhyZWY9Ii4uL3N0eWxlcy5jc3MiPgo8L2hlYWQ+Cjxib2R5PgoJPGRpdiBzdHlsZT0ibWFyZ2luLWxlZnQ6ICAwcHg7Ij4KCQlUaGUgPGI+Qk9PU1RfUFBfTElTVF9TSVpFX0Q8L2I+IG1hY3JvIGV4cGFuZHMgdG8gdGhlIHNpemUgb2YgYSA8aT5saXN0PC9pPi4mbmJzcDsKCQlJdCByZWVudGVycyA8Yj5CT09TVF9QUF9XSElMRTwvYj4gd2l0aCBtYXhpbXVtIGVmZmljaWVuY3kuCgk8L2Rpdj4KCTxoND5Vc2FnZTwvaDQ+CgkJPGRpdiBjbGFzcz0iY29kZSI+CgkJCTxiPkJPT1NUX1BQX0xJU1RfU0laRV9EPC9iPig8aT5kPC9pPiwgPGk+bGlzdDwvaT4pCgkJPC9kaXY+Cgk8aDQ+QXJndW1lbnRzPC9oND4KCQk8ZGw+CgkJCTxkdD5kPC9kdD4KCQkJPGRkPgoJCQkJVGhlIG5leHQgYXZhaWxhYmxlIDxiPkJPT1NUX1BQX1dISUxFPC9iPiBpdGVyYXRpb24uCgkJCTwvZGQ+CgkJCTxkdD5saXN0PC9kdD4KCQkJPGRkPgoJCQkJQSA8aT5saXN0PC9pPiB3aG9zZSBzaXplIGlzIHRvIGJlIGNhbGN1bGF0ZWQuCgkJCTwvZGQ+CgkJPC9kbD4KCTxoND5TZWUgQWxzbzwvaDQ+CgkJPHVsPgoJCQk8bGk+PGEgaHJlZj0ibGlzdF9zaXplLmh0bWwiPkJPT1NUX1BQX0xJU1RfU0laRTwvYT48L2xpPgoJCTwvdWw+Cgk8aDQ+UmVxdWlyZW1lbnRzPC9oND4KCQk8ZGl2PgoJCQk8Yj5IZWFkZXI6PC9iPiAmbmJzcDs8YSBocmVmPSIuLi9oZWFkZXJzL2xpc3Qvc2l6ZS5odG1sIj4mbHQ7Ym9vc3QvcHJlcHJvY2Vzc29yL2xpc3Qvc2l6ZS5ocHAmZ3Q7PC9hPgoJCTwvZGl2PgoJPGg0PlNhbXBsZSBDb2RlPC9oND4KPGRpdj48cHJlPgojaW5jbHVkZSAmbHQ7PGEgaHJlZj0iLi4vaGVhZGVycy9hcml0aG1ldGljL2FkZC5odG1sIj5ib29zdC9wcmVwcm9jZXNzb3IvYXJpdGhtZXRpYy9hZGQuaHBwPC9hPiZndDsKI2luY2x1ZGUgJmx0OzxhIGhyZWY9Ii4uL2hlYWRlcnMvbGlzdC9mb2xkX2xlZnQuaHRtbCI+Ym9vc3QvcHJlcHJvY2Vzc29yL2xpc3QvZm9sZF9sZWZ0LmhwcDwvYT4mZ3Q7CiNpbmNsdWRlICZsdDs8YSBocmVmPSIuLi9oZWFkZXJzL2xpc3Qvc2l6ZS5odG1sIj5ib29zdC9wcmVwcm9jZXNzb3IvbGlzdC9zaXplLmhwcDwvYT4mZ3Q7CgojZGVmaW5lIEwxIChhLCAoYiwgKGMsIDxhIGhyZWY9Im5pbC5odG1sIj5CT09TVF9QUF9OSUw8L2E+KSkpCiNkZWZpbmUgTDIgKHgsICh5LCA8YSBocmVmPSJuaWwuaHRtbCI+Qk9PU1RfUFBfTklMPC9hPikpCiNkZWZpbmUgTDMgKHAsIChxLCA8YSBocmVmPSJuaWwuaHRtbCI+Qk9PU1RfUFBfTklMPC9hPikpCgojZGVmaW5lIExJU1QgKEwxLCAoTDIsIChMMywgPGEgaHJlZj0ibmlsLmh0bWwiPkJPT1NUX1BQX05JTDwvYT4pKSkKCiNkZWZpbmUgT1AoZCwgc3RhdGUsIHgpIFwKICAgPGEgaHJlZj0iYWRkX2QuaHRtbCI+Qk9PU1RfUFBfQUREX0Q8L2E+KCBcCiAgICAgIGQsIHN0YXRlLCBcCiAgICAgIDxhIGhyZWY9Imxpc3Rfc2l6ZV9kLmh0bWwiPkJPT1NUX1BQX0xJU1RfU0laRV9EPC9hPihkLCB4KSBcCiAgICkgXAogICAvKiovCgo8YSBocmVmPSJsaXN0X2ZvbGRfbGVmdC5odG1sIj5CT09TVF9QUF9MSVNUX0ZPTERfTEVGVDwvYT4oT1AsIDAsIExJU1QpIC8vIGV4cGFuZHMgdG8gNwo8L3ByZT48L2Rpdj4KCTxociBzaXplPSIxIj4KCTxkaXYgc3R5bGU9Im1hcmdpbi1sZWZ0OiAwcHg7Ij4KCQk8aT6pIENvcHlyaWdodCA8YSBocmVmPSJodHRwOi8vd3d3LmhvdXNlbWFycXVlLmNvbSIgdGFyZ2V0PSJfdG9wIj5Ib3VzZW1hcnF1ZSBPeTwvYT4gMjAwMjwvaT4KCQk8L2JyPjxpPqkgQ29weXJpZ2h0IFBhdWwgTWVuc29uaWRlcyAyMDAyPC9pPgoJPC9kaXY+Cgk8ZGl2IHN0eWxlPSJtYXJnaW4tbGVmdDogMHB4OyI+CgkJPHA+PHNtYWxsPkRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBCb29zdCBTb2Z0d2FyZSBMaWNlbnNlLCBWZXJzaW9uIDEuMC4gKFNlZQoJCWFjY29tcGFueWluZyBmaWxlIDxhIGhyZWY9Ii4uLy4uLy4uLy4uL0xJQ0VOU0VfMV8wLnR4dCI+TElDRU5TRV8xXzAudHh0PC9hPiBvcgoJCWNvcHkgYXQgPGEgaHJlZj0KCQkiaHR0cDovL3d3dy5ib29zdC5vcmcvTElDRU5TRV8xXzAudHh0Ij53d3cuYm9vc3Qub3JnL0xJQ0VOU0VfMV8wLnR4dDwvYT4pPC9zbWFsbD48L3A+Cgk8L2Rpdj4KPC9ib2R5Pgo8L2h0bWw+Cg==