IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIwojIENvcHlyaWdodCAoYykgMjAxNyBDRUEgTElTVC4KIyBBbGwgcmlnaHRzIHJlc2VydmVkLiBUaGlzIHByb2dyYW0gYW5kIHRoZSBhY2NvbXBhbnlpbmcgbWF0ZXJpYWxzCiMgYXJlIG1hZGUgYXZhaWxhYmxlIHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgRWNsaXBzZSBQdWJsaWMgTGljZW5zZSB2MS4wCiMgd2hpY2ggYWNjb21wYW5pZXMgdGhpcyBkaXN0cmlidXRpb24sIGFuZCBpcyBhdmFpbGFibGUgYXQKIyBodHRwOi8vd3d3LmVjbGlwc2Uub3JnL2xlZ2FsL2VwbC12MTAuaHRtbAojCiMgQ29udHJpYnV0b3JzOgojIAlT6WJhc3RpZW4gR2VyYXJkIChDRUEgTElTVCkgPHNlYmFzdGllbi5nZXJhcmRAY2VhLmZyPiAtIEluaXRpYWwgQVBJIGFuZCBpbXBsZW1lbnRhdGlvbgojICAgICBZdXBhbnF1aSBNdW5veiBKdWxobyAoQ0VBIExJU1QpIDx5dXBhbnF1aS5tdW5vemp1bGhvQGNlYS5mcj4gLSBpbml0aWFsIEFQSSBhbmQgaW1wbGVtZW50YXRpb24KIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIwojIENvcHlyaWdodCAoYykgMjAxNyBDRUEgTElTVC4KIyAKIyAgQWxsIHJpZ2h0cyByZXNlcnZlZC4gVGhpcyBwcm9ncmFtIGFuZCB0aGUgYWNjb21wYW55aW5nIG1hdGVyaWFscwojICBhcmUgbWFkZSBhdmFpbGFibGUgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBFY2xpcHNlIFB1YmxpYyBMaWNlbnNlIHYxLjAKIyAgd2hpY2ggYWNjb21wYW5pZXMgdGhpcyBkaXN0cmlidXRpb24sIGFuZCBpcyBhdmFpbGFibGUgYXQKIyAgaHR0cDovL3d3dy5lY2xpcHNlLm9yZy9sZWdhbC9lcGwtdjEwLmh0bWwKIyAKIyBDb250cmlidXRvcnM6CiMgICBT6WJhc3RpZW4gR2VyYXJkIChDRUEgTElTVCkgc2ViYXN0aWVuLmdlcmFyZEBjZWEuZnIgLSBJbml0aWFsIEFQSSBhbmQgaW1wbGVtZW50YXRpb24KIyAgIFl1cGFucXVpIE11bm96IEp1bGhvIChDRUEgTElTVCkgeXVwYW5xdWkubXVub3pqdWxob0BjZWEuZnIgLSBJbml0aWFsIEFQSSBhbmQgaW1wbGVtZW50YXRpb24KIyAKCmJpbi5pbmNsdWRlcyA9IC4sXAogICAgICAgICAgICAgICBNRVRBLUlORi8sXAogICAgICAgICAgICAgICBwbHVnaW4ueG1sLFwKICAgICAgICAgICAgICAgcGx1Z2luLnByb3BlcnRpZXMsXAogICAgICAgICAgICAgICByZXNvdXJjZXMvLFwKICAgICAgICAgICAgICAgYWJvdXQuaHRtbApqYXJzLmNvbXBpbGUub3JkZXIgPSAuCnNvdXJjZS4uID0gc3JjLWdlbi8sXAogICAgICAgICAgIHNyYy8Kb3V0cHV0Li4gPSBiaW4vCg==