《色情》 色情 第 1 部分阅读 ablo' DEVICE:'Diablo' DISPLAY:'Jelly Bean' FINGERPRINT:'TCT/Diablo/Diablo:4。1。1/JRO03C/vQ39…0:user/release…keys' HOST:'aclgcl…ubnt87' MANUFACTURER:'TCT' MODEL:'TCL S820' PRODUCT:'Diablo' TAGS:'release…keys' TYPE:'user' USER:'zxliu' BRAND:'TCT' c1'ARMv7 Processor rev 0 (v7l) ' c2'0' T923248;android…16_637732661_armeabi…v7a;anr;time_1451994275;error_I2NsaWVudC52ZXJzaW9uPTYzNzczMjY2MQojY2xpZW50LnZlcmhpc3Rvcnk9MjYwMjA1MzU7MjYwMzA1MzI7MjYwMzA3MzM7MjYwMzA3MzU7CiNhY2NpbmZvLnJldmlzaW9uPTljODFhNjE3NGVmNmMyNzFjMDg0NTMxNjY2M2ViZTFlNzE3NGM0MDAKI2FjY2luZm8udWluPTk3MDc2MjQwOAojYWNjaW5mby5kZXY9QWY4OTE0ZjE1MjIyYzY2MwojYWNjaW5mby5ydW50aW1lPTk4NDcyMzY5KGNvbS50ZW5jZW50Lm1tOnB1c2gpCiNhY2NpbmZvLmJ1aWxkPTExLzE2LzIwMTUgMDU6NTYgUE06YW1tZGV2OjAKI3Ficndvc2VyLmNvcmV2ZXI9MjU0NjkKI3Ficm93c2VyLnZlcj0yNTQzMwojYWNjaW5mby5lbnY9YjpNTUNyYXNoUmVwb3J0ZXJfcGFyc2VBTlJUcmFjZTp1bmtub3cKI2FjY2luZm8uZGF0YT02NE1CIC9kYXRhOjQwOTY6MzQzMTM5OTo5MDQxNzcgL3N0b3JhZ2Uvc2RjYXJkMDo0MDk2OjM0MzEzOTk6OTA0MTc3CiNhY2NpbmZvLmNyYXNoVGltZT0yMDE2LTAxLTA1IDE5OjQ0OjM1LjY0NiswODAwCiNjcmFzaENvbnRlbnQ9CioqKioqKiogQU5SIFRyYWNlICoqKioqKioKQU5SIGluIGNvbS50ZW5jZW50Lm1tOnRvb2xzIChjb20udGVuY2VudC5tbS8ucGx1Z2luLndlYnZpZXcudWkudG9vbHMuV2ViVmlld1VJKQpSZWFzb246IGtleURpc3BhdGNoaW5nVGltZWRPdXQKTG9hZDogMTUuMTYgLyAxMS42IC8gOC43NQpDUFUgdXNhZ2UgZnJvbSAxMjI2MG1zIHRvIDE4NTM4bXMgbGF0ZXI6CiAgNDElIDU3L21tY3FkLzA6IDAlIHVzZXIgKyA0MSUga2VybmVsCiAgNDAlIDM3MC9zeXN0ZW1fc2VydmVyOiAzNSUgdXNlciArIDUuMiUga2VybmVsIC8gZmF1bHRzOiA4MjUgbWlub3IgNyBtYWpvcgogIDM3JSAxNDc3MS9jb20udGVuY2VudC5tbTogMzAlIHVzZXIgKyA3LjYlIGtlcm5lbCAvIGZhdWx0czogMzYzMCBtaW5vciAxNyBtYWpvcgogIDUuNCUgMTMwNTkvY29tLmFuZHJvaWQuanJkZm90YTogMC45JSB1c2VyICsgNC40JSBrZXJuZWwKICA1LjIlIDYyODUvY29tLnRlbmNlbnQubW06c2FuZGJveDogNC42JSB1c2VyICsgMC42JSBrZXJuZWwgLyBmYXVsdHM6IDE1MDEgbWlub3IgNzQgbWFqb3IKICAzLjglIDU5NjAvb3JnLmNvY29zMmQuZmlzaGluZ2pveTMucWlodTogMC4xJSB1c2VyICsgMy42JSBrZXJuZWwgLyBmYXVsdHM6IDMgbWlub3IKICAzLjUlIDU5NjEvb3JnLmNvY29zMmQuZmlzaGluZ2pveTMucWlodTogMCUgdXNlciArIDMuNSUga2VybmVsIC8gZmF1bHRzOiAzIG1pbm9yCiAgMS41JSAxNDEvc2RjYXJkOiAwJSB1c2VyICsgMS41JSBrZXJuZWwgLyBmYXVsdHM6IDEyIG1pbm9yCiAgMS40JSAxOS9rc3dhcGQwOiAwJSB1c2VyICsgMS40JSBrZXJuZWwKICAxLjQlIDY2OC9jb20ucWlob28zNjAubW9iaWxlc2FmZTpHdWFyZFNlcnZpY2U6IDAuOSUgdXNlciArIDAuNCUga2VybmVsIC8gZmF1bHRzOiA0MDggbWlub3IgOCBtYWpvcgogIDEuMiUgNDM4OC9jb20ueW91a3UucGhvbmU6ZG93bmxvYWQ6IDAuNyUgdXNlciArIDAuNCUga2VybmVsIC8gZmF1bHRzOiAxMDQgbWlub3IgMSBtYWpvcgogIDEuMiUgNTU1NS90eF90aHJlYWQ6IDAlIHVzZXIgKyAxLjIlIGtlcm5lbAogIDAuMiUgNjQ1L2FuZHJvaWQucHJvY2Vzcy5hY29yZTogMC4xJSB1c2VyICsgMCUga2VybmVsIC8gZmF1bHRzOiAyMjMgbWlub3IgNCBtYWpvcgogIDAuNyUgNTg3NS9vcmcuY29jb3MyZC5maXNoaW5nam95My5xaWh1OiAwJSB1c2VyICsgMC43JSBrZXJuZWwgLyBmYXVsdHM6IDEzIG1pbm9yCiAgMC42JSA4Mi9qYmQyL21tY2JsazBwNy06IDAlIHVzZXIgKyAwLjYlIGtlcm5lbAogIDAuNiUgNjEyMS9jb20udGVuY2VudC5tbTp0b29sczogMC40JSB1c2VyICsgMC4xJSBrZXJuZWwgLyBmYXVsdHM6IDQyNiBtaW5vciA1IG1ham9yCiAgMC42JSAyMDg4NC9jb20udGVuY2VudC5tbTpwdXNoOiAwLjElIHVzZXIgKyAwLjQlIGtlcm5lbCAvIGZhdWx0czogMTY4IG1pbm9yIDIgbWFqb3IKICAwLjQlIDYxOTEva3dvcmtlci8wOjE6IDAlIHVzZXIgKyAwLjQlIGtlcm5lbAogIDAuMyUgNDUwL2NvbS5hbmRyb2lkLnN5c3RlbXVpOiAwLjMlIHVzZXIgKyAwJSBrZXJuZWwgLyBmYXVsdHM6IDI2NSBtaW5vciAxMSBtYWpvcgogIDAuMyUgNDk5L2NvbS5zb2h1LmlucHV0bWV0aG9kLnNvZ291OiAwLjMlIHVzZXIgKyAwJSBrZXJuZWwgLyBmYXVsdHM6IDYyIG1pbm9yCiAgMC4zJSA1MTkvY29tLmFuZHJvaWQucGhvbmU6IDAuMSUgdXNlciArIDAuMSUga2VybmVsIC8gZmF1bHRzOiA4MSBtaW5vcgogIDAuMyUgNTU1NC9rc2Rpb2lycWQvbW1jMjogMCUgdXNlciArIDAuMyUga2VybmVsCiAgMC4zJSA1NTU5L2NvbS5yeXRvbmcuYmFua3BzOiAwJSB1c2VyICsgMC4zJSBrZXJuZWwgLyBmYXVsdHM6IDQ3IG1pbm9yCiAgMC4zJSA4ODE1L2NvbS5rdWdvdS5hbmRyb2lkLnN1cHBvcnQ6IDAlIHVzZXIgKyAwLjMlIGtlcm5lbCAvIGZhdWx0czogMTMgbWlub3IKICAwJSAzL2tzb2Z0aXJxZC8wOiAwJSB1c2VyICsgMCUga2VybmVsCiAgMC4xJSA1NTUwL2t3b3JrZXIvMToyOiAwJSB1c2VyICsgMC4xJSBrZXJuZWwKICAwJSA1NTU3L3dwYV9zdXBwbGljYW50OiAwJSB1c2VyICsgMCUga2VybmVsIC8gZmF1bHRzOiA2NSBtaW5vciAyIG1ham9yCiAgMC4xJSAxMTQxMC9jb20udGVuY2VudC5xcWxpdmU6c2VydmljZXM6IDAlIHVzZXIgKyAwLjElIGtlcm5lbCAvIGZhdWx0czogMTEgbWlub3IKICAwLjElIDExNDYxL2NvbS50ZW5jZW50LnFxbGl2ZTp0bWFzc2lzdGFudHNkazogMC4xJSB1c2VyICsgMCUga2VybmVsIC8gZmF1bHRzOiAxMSBtaW5vcgogIDAlIDEyMTU5L2NvbS50ZW5jZW50Lm10dDogMCUgdXNlciArIDAlIGtlcm5lbCAvIGZhdWx0czogMTczIG1pbm9yIDUgbWFqb3IKOTglIFRPVEFMOiA0NCUgdXNlciArIDM3JSBrZXJuZWwgKyAxNSUgaW93YWl0ICsgMC4yJSBzb2Z0aXJxCgpDbWQgbGluZTogY29tLnRlbmNlbnQubW06dG9vbHMKCkRBTFZJSyBUSFJFQURTOgoobXV0ZXhlczogdGxsPTAgdHNsPTAgdHNjbD0wIGdobD0wKQoKIm1haW4iIHByaW89NSB0aWQ9MSBTVVNQRU5ERUQKICB8IGdyb3VwPSJtYWluIiBzQ291bnQ9MSBkc0NvdW50PTAgb2JqPTB4NDBkYmI5Nzggc2VsZj0weDRiZDVhMDEwCiAgfCBzeXNUaWQ9NjEyMSBuaWNlPTAgc2NoZWQ9MC8wIGNncnA9YXBwcyBoYW5kbGU9MTA3NDE4NzExMgogIHwgc2NoZWRzdGF0PSggMzMxMTIwMDUzNyAyMTM5NTIwMjU1IDE5MzI2ICkgdXRtPTMwMCBzdG09MzEgY29yZT0wCiAgYXQgY29tLnRlbmNlbnQubW0uc2RrLnBsYXRmb3JtdG9vbHMuei5nZXRQYWNrYWdlTmFtZShTb3VyY2VGaWxlOn41OSkKICBhdCBjb20udGVuY2VudC5tbS5wbHVnaW4ucmVwb3J0LnNlcnZpY2UuS1ZDb21tQ3Jvc3NQcm9jZXNzUmVjZWl2ZXIuYShTb3VyY2VGaWxlOjE0MikKICBhdCBjb20udGVuY2VudC5tbS5wbHVnaW4ucmVwb3J0LnNlcnZpY2UuaC5iKFNvdXJjZUZpbGU6MTA3KQogIGF0IGNvbS50ZW5jZW50Lm1tLnBsdWdpbi5yZXBvcnQuc2VydmljZS5oLmEoU291cmNlRmlsZToxOTQpCiAgYXQgY29tLnRlbmNlbnQubW0ucGx1Z2luc2RrLnVpLnRvb2xzLmouYkIoU291cmNlRmlsZTo0NSkKICBhdCBjb20udGVuY2VudC5tbS5wbHVnaW5zZGsudWkudG9vbHMuai5vZChTb3VyY2VGaWxlOjI5KQogIGF0IGNvbS50ZW5jZW50Lm1tLnBsdWdpbi53ZWJ2aWV3LnVpLnRvb2xzLldlYlZpZXdVSS5XTihTb3VyY2VGaWxlOjI5MTIpCiAgYXQgY29tLnRlbmNlbnQubW0ucGx1Z2luLndlYnZpZXcudWkudG9vbHMuV2ViVmlld1VJJDM0Lm9uU2VydmljZUNvbm5lY3RlZChTb3VyY2VGaWxlOjE0MDcpCiAgYXQgYW5kcm9pZC5hcHAuTG9hZGVkQXBrJFNlcnZpY2VEaXNwYXRjaGVyLmRvQ29ubmVjdGVkKExvYWRlZEFway5qYXZhOjExMjcpCiAgYXQgYW5kcm9pZC5hcHAuTG9hZGVkQXBrJFNlcnZpY2VEaXNwYXRjaGVyJFJ1bkNvbm5lY3Rpb24ucnVuKExvYWRlZEFway5qYXZhOjExNDQpCiAgYXQgYW5kcm9pZC5vcy5IYW5kbGVyLmhhbmRsZUNhbGxiYWNrKEhhbmRsZXIuamF2YTo2MTUpCiAgYXQgYW5kcm9pZC5vcy5IYW5kbGVyLmRpc3BhdGNoTWVzc2FnZShIYW5kbGVyLmphdmE6OTIpCiAgYXQgYW5kcm9pZC5vcy5Mb29wZXIubG9vcChMb29wZXIuamF2YToxNTMpCiAgYXQgYW5kcm9pZC5hcHAuQWN0aXZpdHlUaHJlYWQubWFpbihBY3Rpdml0eVRocmVhZC5qYXZhOjUwMzgpCiAgYXQgamF2YS5sYW5nLnJlZmxlY3QuTWV0aG9kLmludm9rZU5hdGl2ZShOYXRpdmUgTWV0aG9kKQogIGF0IGphdmEubGFuZy5yZWZsZWN0Lk1ldGhvZC5pbnZva2UoTWV0aG9kLmphdmE6NTExKQogIGF0IGNvbS5hbmRyb2lkLmludGVybmFsLm9zLlp5Z290ZUluaXQkTWV0aG9kQW5kQXJnc0NhbGxlci5ydW4oWnlnb3RlSW5pdC5qYXZhOjgyMSkKICBhdCBjb20uYW5kcm9pZC5pbnRlcm5hbC5vcy5aeWdvdGVJbml0Lm1haW4oWnlnb3RlSW5pdC5qYXZhOjU4NCkKICBhdCBkYWx2aWsuc3lzdGVtLk5hdGl2ZVN0YXJ0Lm1haW4oTmF0aXZlIE1ldGhvZCkKCiJyd3QiIHByaW89NSB0aWQ9NDEgTkFUSVZFCiAgfCBncm91cD0ic3lzdGVtIiBzQ291bnQ9MSBkc0NvdW50PTAgb2JqPTB4NDE2NzE0MDggc2VsZj0weDYxOGM4YzUwCiAgfCBzeXNUaWQ9NjI4MyBuaWNlPTAgc2NoZWQ9MC8wIGNncnA9YXBwcyBoYW5kbGU9MTYzNjYwNjY4OAogIHwgc2NoZWRzdGF0PSggNzQyNzkyMyA1NzYyOTIzIDkgKSB1dG09MCBzdG09MCBjb3JlPTEKICAjMDAgIHBjIDAwMDBkYWUwICAvc3lzdGVtL2xpYi9saWJjLnNvIChlcG9sbF93YWl0KzEyKQogICMwMSAgcGMgMDAwMTQ3YTEgIC9zeXN0ZW0vbGliL2xpYnV0aWxzLnNvIChhbmRyb2lkOjpMb29wZXI6OnBvbGxJbm5lcihpbnQpKzk2KQogICMwMiAgcGMgMDAwMTRhMDkgIC9zeXN0ZW0vbGliL2xpYnV0aWxzLnNvIChhbmRyb2lkOjpMb29wZXI6OnBvbGxPbmNlKGludCwgaW50KiwgaW50Kiwgdm9pZCoqKSsxMDQpCiAgIzAzICBwYyAwMDA2MGY4NyAgL3N5c3RlbS9saWIvbGliYW5kcm9pZF9ydW50aW1lLnNvIChhbmRyb2lkOjpOYXRpdmVNZXNzYWdlUXVldWU6OnBvbGxPbmNlKF9KTklFbnYqLCBpbnQpKzIyKQogICMwNCAgcGMgMDAwMWRlZjAgIC9zeXN0ZW0vbGliL2xpYmR2bS5zbyAoZHZtUGxhdGZvcm1JbnZva2UrMTEyKQogICMwNSAgcGMgMDAwNGNkYWQgIC9zeXN0ZW0vbGliL2xpYmR2bS5zbyAoZHZtQ2FsbEpOSU1ldGhvZCh1bnNpZ25lZCBpbnQgY29uc3QqLCBKVmFsdWUqLCBNZXRob2QgY29uc3QqLCBUaHJlYWQqKSs0OTIpCiAgIzA2ICBwYyAwMDAyNzMyMCAgL3N5c3RlbS9saWIvbGliZHZtLnNvCiAgIzA3ICBwYyAwMDAyYjM4YyAgL3N5c3RlbS9saWIvbGliZHZtLnNvIChkdm1JbnRlcnByZXQoVGhyZWFkKiwgTWV0aG9kIGNvbnN0KiwgSlZhbHVlKikrMTgwKQogICMwOCAgcGMgMDAwNWZiMTkgIC9zeXN0ZW0vbGliL2xpYmR2bS5zbyAoZHZtQ2FsbE1ldGhvZFYoVGhyZWFkKiwgTWV0aG9kIGNvbnN0KiwgT2JqZWN0KiwgYm9vbCwgSlZhbHVlKiwgc3RkOjpfX3ZhX2xpc3QpKzI3MikKICAjMDkgIHBjIDAwMDVmYjQzICAvc3lzdGVtL2xpYi9saWJkdm0uc28gKGR2bUNhbGxNZXRob2QoVGhyZWFkKiwgTWV0aG9kIGNvbnN0KiwgT2JqZWN0KiwgSlZhbHVlKiwgLi4uKSsyMCkKICAjMTAgIHBjIDAwMDU0NGExICAvc3lzdGVtL2xpYi9saWJkdm0uc28KICAjMTEgIHBjIDAwMDEyZDY0ICAvc3lzdGVtL2xpYi9saWJjLnNvIChfX3RocmVhZF9lbnRyeSs0OCkKICBhdCBhbmRyb2lkLm9zLk1lc3NhZ2VRdWV1ZS5uYXRpdmVQb2xsT25jZShOYXRpdmUgTWV0aG9kKQogIGF0IGFuZHJvaWQub3MuTWVzc2FnZVF1ZXVlLm5leHQoTWVzc2FnZVF1ZXVlLmphdmE6MTI1KQogIGF0IGFuZHJvaWQub3MuTG9vcGVyLmxvb3AoTG9vcGVyLmphdmE6MTQwKQogIGF0IGFuZHJvaWQub3MuSGFuZGxlclRocmVhZC5ydW4oSGFuZGxlclRocmVhZC5qYXZhOjYwKQoKInJ3dCIgcHJpbz01IHRpZD00MyBOQVRJVkUKICB8IGdyb3VwPSJzeXN0ZW0iIHNDb3VudD0xIGRzQ291bnQ9MCBvYmo9MHg0MTY3Mzg0MCBzZWxmPTB4NjE4Yzk1NDgKICB8IHN5c1RpZD02Mjc4IG5pY2U9MCBzY2hlZD0wLzAgY2dycD1hcHBzIGhhbmRsZT0xNjM2NjA0MzEyCiAgfCBzY2hlZHN0YXQ9KCA4NDE2MzA5IDM5OTY5MjEgMTMgKSB1dG09MCBzdG09MCBjb3JlPTEKICAjMDAgIHBjIDAwMDBkYWUwICAvc3lzdGVtL2xpYi9saWJjLnNvIChlcG9sbF93YWl0KzEyKQogICMwMSAgcGMgMDAwMTQ3YTEgIC9zeXN0ZW0vbGliL2xpYnV0aWxzLnNvIChhbmRyb2lkOjpMb29wZXI6OnBvbGxJbm5lcihpbnQpKzk2KQogICMwMiAgcGMgMDAwMTRhMDkgIC9zeXN0ZW0vbGliL2xpYnV0aWxzLnNvIChhbmRyb2lkOjpMb29wZXI6OnBvbGxPbmNlKGludCwgaW50KiwgaW50Kiwgdm9pZCoqKSsxMDQpCiAgIzAzICBwYyAwMDA2MGY4NyAgL3N5c3RlbS9saWIvbGliYW5kcm9pZF9ydW50aW1lLnNvIChhbmRyb2lkOjpOYXRpdmVNZXNzYWdlUXVldWU6OnBvbGxPbmNlKF9KTklFbnYqLCBpbnQpKzIyKQogICMwNCAgcGMgMDAwMWRlZjAgIC9zeXN0ZW0vbGliL2xpYmR2bS5zbyAoZHZtUGxhdGZvcm1JbnZva2UrMTEyKQogICMwNSAgcGMgMDAwNGNkYWQgIC9zeXN0ZW0vbGliL2xpYmR2bS5zbyAoZHZtQ2FsbEpOSU1ldGhvZCh1bnNpZ25lZCBpbnQgY29uc3QqLCBKVmFsdWUqLCBNZXRob2QgY29uc3QqLCBUaHJlYWQqKSs0OTIpCiAgIzA2ICBwYyAwMDAyNzMyMCAgL3N5c3RlbS9saWIvbGliZHZtLnNvCiAgIzA3ICBwYyAwMDAyYjM4YyAgL3N5c3RlbS9saWIvbGliZHZtLnNvIChkdm1JbnRlcnByZXQoVGhyZWFkKiwgTWV0aG9kIGNvbnN0KiwgSlZhbHVlKikrMTgwKQogICMwOCAgcGMgMDAwNWZiMTkgIC9zeXN0ZW0vbGliL2xpYmR2bS5zbyAoZHZtQ2FsbE1ldGhvZFYoVGhyZWFkKiwgTWV0aG9kIGNvbnN0KiwgT2JqZWN0KiwgYm9vbCwgSlZhbHVlKiwgc3RkOjpfX3ZhX2xpc3QpKzI3MikKICAjMDkgIHBjIDAwMDVmYjQzICAvc3lzdGVtL2xpYi9saWJkdm0uc28gKGR2bUNhbGxNZXRob2QoVGhyZWFkKiwgTWV0aG9kIGNvbnN0KiwgT2JqZWN0KiwgSlZhbHVlKiwgLi4uKSsyMCkKICAjMTAgIHBjIDAwMDU0NGExICAvc3lzdGVtL2xpYi9saWJkdm0uc28KICAjMTEgIHBjIDAwMDEyZDY0ICAvc3lzdGVtL2xpYi9saWJjLnNvIChfX3RocmVhZF9lbnRyeSs0OCkKICBhdCBhbmRyb2lkLm9zLk1lc3NhZ2VRdWV1ZS5uYXRpdmVQb2xsT25jZShOYXRpdmUgTWV0aG9kKQogIGF0IGFuZHJvaWQub3MuTWVzc2FnZVF1ZXVlLm5leHQoTWVzc2FnZVF1ZXVlLmphdmE6MTI1KQogIGF0IGFuZHJvaWQub3MuTG9vcGVyLmxvb3AoTG9vcGVyLmphdmE6MTQwKQogIGF0IGFuZHJvaWQub3MuSGFuZGxlclRocmVhZC5ydW4oSGFuZGxlclRocmVhZC5qYXZhOjYwKQoKInBvb2wtMS10aHJlYWQtMSIgcHJpbz01IHRpZD00MiBXQUlUCiAgfCBncm91cD0ic3lzdGVtIiBzQ291bnQ9MSBkc0NvdW50PTAgb2JqPTB4NDE2OGY2ZTAgc2VsZj0weDYxOGM5MGEwCiAgfCBzeXNUaWQ9NjI3NyBuaWNlPTAgc2NoZWQ9MC8wIGNncnA9YXBwcyBoYW5kbGU9MTYzNjQyMjE3NgogIHwgc2NoZWRzdGF0PSggODA5OTQ1NyAxMTIwOTIzNCAzMiApIHV0bT0wIHN0bT0wIGNvcmU9MAogIGF0IGphdmEubGFuZy5PYmplY3Qud2FpdChOYXRpdmUgTWV0aG9kKQogIC0gd2FpdGluZyBvbiA8MHg0MTZhNTEyOD4gKGEgamF2YS5sYW5nLlZNVGhyZWFkKSBoZWxkIGJ5IHRpZD00MiAocG9vbC0xLXRocmVhZC0xKQogIGF0IGphdmEubGFuZy5UaHJlYWQucGFya0ZvcihUaHJlYWQuamF2YToxMjMxKQogIGF0IHN1bi5taXNjLlVuc2FmZS5wYXJrKFVuc2FmZS5qYXZhOjMyMykKICBhdCBqYXZhLnV0aWwuY29uY3VycmVudC5sb2Nrcy5Mb2NrU3VwcG9ydC5wYXJrKExvY2tTdXBwb3J0LmphdmE6MTU3KQogIGF0IGphdmEudXRpbC5jb25jdXJyZW50LmxvY2tzLkFic3RyYWN0UXVldWVkU3luY2hyb25pemVyJENvbmRpdGlvbk9iamVjdC5hd2FpdChBYnN0cmFjdFF1ZXVlZFN5bmNocm9uaXplci5qYXZhOjIwMjIpCiAgYXQgamF2YS51dGlsLmNvbmN1cnJlbnQuTGlua2VkQmxvY2tpbmdRdWV1ZS50YWtlKExpbmtlZEJsb2NraW5nUXVldWUuamF2YTo0MTMpCiAgYXQgamF2YS51dGlsLmNvbmN1cnJlbnQuVGhyZWFkUG9vbEV4ZWN1dG9yLmdldFRhc2soVGhyZWFkUG9vbEV4ZWN1dG9yLmphdmE6MTAwOSkKICBhdCBqYXZhLnV0aWwuY29uY3VycmVudC5UaHJlYWRQb29sRXhlY3V0b3IucnVuV29ya2VyKFRocmVhZFBvb2xFeGVjdXRvci5qYXZhOjEwNjkpCiAgYXQgamF2YS51dGlsLmNvbmN1cnJlbnQuVGhyZWFkUG9vbEV4ZWN1dG9yJFdvcmtlci5ydW4oVGhyZWFkUG9vbEV4ZWN1dG9yLmphdmE6NTY5KQogIGF0IGphdmEubGFuZy5UaHJlYWQucnVuKFRocmVhZC5qYXZhOjg1NikKCiJGSU5EIiBwcmlvPTUgdGlkPTQwIE5BVElWRQogIHwgZ3JvdXA9InN5c3RlbSIgc0NvdW50PTEgZHNDb3VudD0wIG9iaj0weDQxODFkMjYwIHNlbGY9MHg2MTg5YTUzOAogIHwgc3lzVGlkPTYyNzUgbmljZT0wIHNjaGVkPTAvMCBjZ3JwPWFwcHMgaGFuZGxlPTE2MzY2NDc3OTIKICB8IHNjaGVkc3RhdD0oIDYwNjkzODUgMTY3NzY5IDMgKSB1dG09MCBzdG09MCBjb3JlPTEKICAjMDAgIHBjIDAwMDBkYWUwICAvc3lzdGVtL2xpYi9saWJjLnNvIChlcG9sbF93YWl0KzEyKQogICMwMSAgcGMgMDAwMTQ3YTEgIC9zeXN0ZW0vbGliL2xpYnV0aWxzLnNvIChhbmRyb2lkOjpMb29wZXI6OnBvbGxJbm5lcihpbnQpKzk2KQogICMwMiAgcGMgMDAwMTRhMDkgIC9zeXN0ZW0vbGliL2xpYnV0aWxzLnNvIChhbmRyb2lkOjpMb29wZXI6OnBvbGxPbmNlKGludCwgaW50KiwgaW50Kiwgdm9pZCoqKSsxMDQpCiAgIzAzICBwYyAwMDA2MGY4NyAgL3N5c3RlbS9saWIvbGliYW5kcm9pZF9ydW50aW1lLnNvIChhbmRyb2lkOjpOYXRpdmVNZXNzYWdlUXVldWU6OnBvbGxPbmNlKF9KTklFbnYqLCBpbnQpKzIyKQogICMwNCAgcGMgMDAwMWRlZjAgIC9zeXN0ZW0vbGliL2xpYmR2bS5zbyAoZHZtUGxhdGZvcm1JbnZva2UrMTEyKQogICMwNSAgcGMgMDAwNGNkYWQgIC9zeXN0ZW0vbGliL2xpYmR2bS5zbyAoZHZtQ2FsbEpOSU1ldGhvZCh1bnNpZ25lZCBpbnQgY29uc3QqLCBKVmFsdWUqLCBNZXRob2QgY29uc3QqLCBUaHJlYWQqKSs0OTIpCiAgIzA2ICBwYyAwMDAyNzMyMCAgL3N5c3RlbS9saWIvbGliZHZtLnNvCiAgIzA3ICBwYyAwMDAyYjM4YyAgL3N5c3RlbS9saWIvbGliZHZtLnNvIChkdm1JbnRlcnByZXQoVGhyZWFkKiwgTWV0aG9kIGNvbnN0KiwgSlZhbHVlKikrMTgwKQogICMwOCAgcGMgMDAwNWZiMTkgIC9zeXN0ZW0vbGliL2xpYmR2bS5zbyAoZHZtQ2FsbE1ldGhvZFYoVGhyZWFkKiwgTWV0aG9kIGNvbnN0KiwgT2JqZWN0KiwgYm9vbCwgSlZhbHVlKiwgc3RkOjpfX3ZhX2xpc3QpKzI3MikKICAjMDkgIHBjIDAwMDVmYjQzICAvc3lzdGVtL2xpYi9saWJkdm0uc28gKGR2bUNhbGxNZXRob2QoVGhyZWFkKiwgTWV0aG9kIGNvbnN0KiwgT2JqZWN0KiwgSlZhbHVlKiwgLi4uKSsyMCkKICAjMTAgIHBjIDAwMDU0NGExICAvc3lzdGVtL2xpYi9saWJkdm0uc28KICAjMTEgIHBjIDAwMDEyZDY0ICAvc3lzdGVtL2xpYi9saWJjLnNvIChfX3RocmVhZF9lbnRyeSs0OCkKICBhdCBhbmRyb2lkLm9zLk1lc3NhZ2VRdWV1ZS5uYXRpdmVQb2xsT25jZShOYXRpdmUgTWV0aG9kKQogIGF0IGFuZHJvaWQub3MuTWVzc2FnZVF1ZXVlLm5leHQoTWVzc2FnZVF1ZXVlLmphdmE6MTI1KQogIGF0IGFuZHJvaWQub3MuTG9vcGVyLmxvb3AoTG9vcGVyLmphdmE6MTQwKQogIGF0IGFuZHJvaWQub3MuSGFuZGxlclRocmVhZC5ydW4oSGFuZGxlclRocmVhZC5qYXZhOjYwKQoKIk1NX1RocmVhZF9Qb29sX0ZyZWVfSGFuZGxlcl9UaHJlYWQjMyNXZWJ2aWV3R2V0RG5zVGhyZWFkIiBwcmlvPTUgdGlkPTE2IFNVU1BFTkRFRAogIHwgZ3JvdXA9Im1haW4iIHNDb3VudD0xIGRzQ291bnQ9MCBvYmo9MHg0MThiNmNkMCBzZWxmPTB4NjMxOWUyNDAKICB8IHN5c1RpZD02MjU4IG5pY2U9MCBzY2hlZD0wLzAgY2dycD1hcHBzIGhhbmRsZT0xNjY0MTkwMjQwCiAgfCBzY2hlZHN0YXQ9KCAzNjkyODA2MiAxMTAyOTgzMjMgMTI1NyApIHV0bT0zIHN0bT0wIGNvcmU9MAogIGF0IGNvbS50ZW5jZW50Lm1tLnNkay5wbGF0Zm9ybXRvb2xzLnouZ2V0UGFja2FnZU5hbWUoU291cmNlRmlsZTp+NTkpCiAgYXQgY29tLnRlbmNlbnQubW0ucGx1Z2luLnJlcG9ydC5zZXJ2aWNlLktWQ29tbUNyb3NzUHJvY2Vzc1JlY2VpdmVyLmEoU291cmNlRmlsZToxNjUpCiAgYXQgY29tLnRlbmNlbnQubW0ucGx1Z2luLnJlcG9ydC5zZXJ2aWNlLmguYihTb3VyY2VGaWxlOjIzMikKICBhdCBjb20udGVuY2VudC5tbS5wbHVnaW4ud2Vidmlldy5jLmEkMS5ydW4oU291cmNlRmlsZToxMjEpCiAgYXQgY29tLnRlbmNlbnQubW0uc2RrLnBsYXRmb3JtdG9vbHMuYWgucnVuKFNvdXJjZUZpbGU6MTMyKQogIGF0IGFuZHJvaWQub3MuSGFuZGxlci5oYW5kbGVDYWxsYmFjayhIYW5kbGVyLmphdmE6NjE1KQogIGF0IGFuZHJvaWQub3MuSGFuZGxlci5kaXNwYXRjaE1lc3NhZ2UoSGFuZGxlci5qYXZhOjkyKQogIGF0IGNvbS50ZW5jZW50Lm1tLnNkay5wbGF0Zm9ybXRvb2xzLmFkLmRpc3BhdGNoTWVzc2FnZShTb3VyY2VGaWxlOjExNykKICBhdCBhbmRyb2lkLm9zLkxvb3Blci5sb29wKExvb3Blci5qYXZhOjE1MykKICBhdCBhbmRyb2lkLm9zLkhhbmRsZXJUaHJlYWQucnVuKEhhbmRsZXJUaHJlYWQuamF2YTo2MCkKICBhdCBjb20udGVuY2VudC5tbS5zZGsuaC5hJGEucnVuKFNvdXJjZUZpbGU6NzEpCgoiUHJlQ29ubmVjdEhhbmRsZXIiIHByaW89NSB0aWQ9MzkgTkFUSVZFCiAgfCBncm91cD0ibWFpbiIgc0NvdW50PTEgZHNDb3VudD0wIG9iaj0weDQxOTRiYzk4IHNlbGY9MHg2MzE3NGE2OAogIHwgc3lzVGlkPTYxODQgbmljZT0wIHNjaGVkPTAvMCBjZ3JwPWFwcHMgaGFuZGxlPTE2MzQxNjU0ODgKICB8IHNjaGVkc3RhdD0oIDY3MzA4NDcgMTIxNzI1MzggMyApIHV0bT0wIHN0bT0wIGNvcmU9MQogICMwMCAgcGMgMDAwMGRhZTAgIC9zeXN0ZW0vbGliL2xpYmMuc28gKGVwb2xsX3dhaXQrMTIpCiAgIzAxICBwYyAwMDAxNDdhMSAgL3N5c3RlbS9saWIvbGlidXRpbHMuc28gKGFuZHJvaWQ6Okxvb3Blcjo6cG9sbElubmVyKGludCkrOTYpCiAgIzAyICBwYyAwMDAxNGEwOSAgL3N5c3RlbS9saWIvbGlidXRpbHMuc28gKGFuZHJvaWQ6Okxvb3Blcjo6cG9sbE9uY2UoaW50LCBpbnQqLCBpbnQqLCB2b2lkKiopKzEwNCkKICAjMDMgIHBjIDAwMDYwZjg3ICAvc3lzdGVtL2xpYi9saWJhbmRyb2lkX3J1bnRpbWUuc28gKGFuZHJvaWQ6Ok5hdGl2ZU1lc3NhZ2VRdWV1ZTo6cG9sbE9uY2UoX0pOSUVudiosIGludCkrMjIpCiAgIzA0ICBwYyAwMDAxZGVmMCAgL3N5c3RlbS9saWIvbGliZHZtLnNvIChkdm1QbGF0Zm9ybUludm9rZSsxMTIpCiAgIzA1ICBwYyAwMDA0Y2RhZCAgL3N5c3RlbS9saWIvbGliZHZtLnNvIChkdm1DYWxsSk5JTWV0aG9kKHVuc2lnbmVkIGludCBjb25zdCosIEpWYWx1ZSosIE1ldGhvZCBjb25zdCosIFRocmVhZCopKzQ5MikKICAjMDYgIHBjIDAwMDI3MzIwICAvc3lzdGVtL2xpYi9saWJkdm0uc28KICAjMDcgIHBjIDAwMDJiMzhjICAvc3lzdGVtL2xpYi9saWJkdm0uc28gKGR2bUludGVycHJldChUaHJlYWQqLCBNZXRob2QgY29uc3QqLCBKVmFsdWUqKSsxODApCiAgIzA4ICBwYyAwMDA1ZmIxOSAgL3N5c3RlbS9saWIvbGliZHZtLnNvIChkdm1DYWxsTWV0aG9kVihUaHJlYWQqLCBNZXRob2QgY29uc3QqLCBPYmplY3QqLCBib29sLCBKVmFsdWUqLCBzdGQ6Ol9fdmFfbGlzdCkrMjcyKQogICMwOSAgcGMgMDAwNWZiNDMgIC9zeXN0ZW0vbGliL2xpYmR2bS5zbyAoZHZtQ2FsbE1ldGhvZChUaHJlYWQqLCBNZXRob2QgY29uc3QqLCBPYmplY3QqLCBKVmFsdWUqLCAuLi4pKzIwKQogICMxMCAgcGMgMDAwNTQ0YTEgIC9zeXN0ZW0vbGliL2xpYmR2bS5zbwogICMxMSAgcGMgMDAwMTJkNjQgIC9zeXN0ZW0vbGliL2xpYmMuc28gKF9fdGhyZWFkX2VudHJ5KzQ4KQogIGF0IGFuZHJvaWQub3MuTWVzc2FnZVF1ZXVlLm5hdGl2ZVBvbGxPbmNlKE5hdGl2ZSBNZXRob2QpCiAgYXQgYW5kcm9pZC5vcy5NZXNzYWdlUXVldWUubmV4dChNZXNzYWdlUXVldWUuamF2YToxMjUpCiAgYXQgYW5kcm9pZC5vcy5Mb29wZXIubG9vcChMb29wZXIuamF2YToxNDApCiAgYXQgYW5kcm9pZC5vcy5IYW5kbGVyVGhyZWFkLnJ1bihIYW5kbGVyVGhyZWFkLmphdmE6NjApCgoiQ29ubi1DcmVhdG9yLTQiIHByaW89NSB0aWQ9MzggV0FJVAogIHwgZ3JvdXA9Im1haW4iIHNDb3VudD0xIGRzQ291bnQ9MCBvYmo9MHg0MThkYTdlOCBzZWxmPTB4NjMxNzQ0MTAKICB8IHN5c1RpZD02MTgzIG5pY2U9MCBzY2hlZD0wLzAgY2dycD1hcHBzIGhhbmRsZT0xNjM0MTYxMDk2CiAgfCBzY2hlZHN0YXQ9KCA0MjYzMDcgNzM0MjM4NSA0ICkgdXRtPTAgc3RtPTAgY29yZT0xCiAgYXQgamF2YS5sYW5nLk9iamVjdC53YWl0KE5hdGl2ZSBNZXRob2QpCiAgLSB3YWl0aW5nIG9uIDwweDQxNzQzN2IwPiAoYSBqYXZhLmxhbmcuVk1UaHJlYWQpIGhlbGQgYnkgdGlkPTM4IChDb25uLUNyZWF0b3ItNCkKICBhdCBqYXZhLmxhbmcuVGhyZWFkLnBhcmtGb3IoVGhyZWFkLmphdmE6MTIzMSkKICBhdCBzdW4ubWlzYy5VbnNhZmUucGFyayhVbnNhZmUuamF2YTozMjMpCiAgYXQgamF2YS51dGlsLmNvbmN1cnJlbnQubG9ja3MuTG9ja1N1cHBvcnQucGFyayhMb2NrU3VwcG9ydC5qYXZhOjE1NykKICBhdCBqYXZhLnV0aWwuY29uY3VycmVudC5TeW5jaHJvbm91c1F1ZXVlJFRyYW5zZmVyU3RhY2suYXdhaXRGdWxmaWxsKFN5bmNocm9ub3VzUXVldWUuamF2YTo0MTkpCiAgYXQgamF2YS51dGlsLmNvbmN1cnJlbnQuU3luY2hyb25vdXNRdWV1ZSRUcmFuc2ZlclN0YWNrLnRyYW5zZmVyKFN5bmNocm9ub3VzUXVldWUuamF2YTozMjApCiAgYXQgamF2YS51dGlsLmNvbmN1cnJlbnQuU3luY2hyb25vdXNRdWV1ZS50YWtlKFN5bmNocm9ub3VzUXVldWUuamF2YTo4NTgpCiAgYXQgamF2YS51dGlsLmNvbmN1cnJlbnQuVGhyZWFkUG9vbEV4ZWN1dG9yLmdldFRhc2soVGhyZWFkUG9vbEV4ZWN1dG9yLmphdmE6MTAwOSkKICBhdCBqYXZhLnV0aWwuY29uY3VycmVudC5UaHJlYWRQb29sRXhlY3V0b3IucnVuV29ya2VyKFRocmVhZFBvb2xFeGVjdXRvci5qYXZhOjEwNjkpCiAgYXQgamF2YS51dGlsLmNvbmN1cnJlbnQuVGhyZWFkUG9vbEV4ZWN1dG9yJFdvcmtlci5ydW4oVGhyZWFkUG9vbEV4ZWN1dG9yLmphdmE6NTY5KQogIGF0IGphdmEubGFuZy5UaHJlYWQucnVuKFRocmVhZC5qYXZhOjg1NikKCiJDb25uLUNyZWF0b3ItMyIgcHJpbz01IHRpZD0zNyBXQUlUCiAgfCBncm91cD0ibWFpbiIgc0NvdW50PTEgZHNDb3VudD0wIG9iaj0weDQxOGRjYWM4IHNlbGY9MHg2MzE3M2RiOAogIHwgc3lzVGlkPTYxODIgbmljZT0wIHNjaGVkPTAvMCBjZ3JwPWFwcHMgaGFuZGxlPTE2MzQxNjU0MDAKICB8IHNjaGVkc3RhdD0oIDUyMTU0MSAzMTY2MDc1IDE5ICkgdXRtPTAgc3RtPTAgY29yZT0xCiAgYXQgamF2YS5sYW5nLk9iamVjdC53YWl0KE5hdGl2ZSBNZXRob2QpCiAgLSB3YWl0aW5nIG9uIDwweDQxNzQ0YWYwPiAoYSBqYXZhLmxhbmcuVk1UaHJlYWQpIGhlbGQgYnkgdGlkPTM3IChDb25uLUNyZWF0b3ItMykKICBhdCBqYXZhLmxhbmcuVGhyZWFkLnBhcmtGb3IoVGhyZWFkLmphdmE6MTIzMSkKICBhdCBzdW4ubWlzYy5VbnNhZmUucGFyayhVbnNhZmUuamF2YTozMjMpCiAgYXQgamF2YS51dGlsLmNvbmN1cnJlbnQubG9ja3MuTG9ja1N1cHBvcnQucGFyayhMb2NrU3VwcG9ydC5qYXZhOjE1NykKICBhdCBqYXZhLnV0aWwuY29uY3VycmVudC5TeW5jaHJvbm91c1F1ZXVlJFRyYW5zZmVyU3RhY2suYXdhaXRGdWxmaWxsKFN5bmNocm9ub3VzUXVldWUuamF2YTo0MTkpCiAgYXQgamF2YS51dGlsLmNvbmN1cnJlbnQuU3luY2hyb25vdXNRdWV1ZSRUcmFuc2ZlclN0YWNrLnRyYW5zZmVyKFN5bmNocm9ub3VzUXVldWUuamF2YTozMjApCiAgYXQgamF2YS51dGlsLmNvbmN1cnJlbnQuU3luY2hyb25vdXNRdWV1ZS50YWtlKFN5bmNocm9ub3VzUXVldWUuamF2YTo4NTgpCiAgYXQgamF2YS51dGlsLmNvbmN1cnJlbnQuVGhyZWFkUG9vbEV4ZWN1dG9yLmdldFRhc2soVGhyZWFkUG9vbEV4ZWN1dG9yLmphdmE6MTAwOSkKICBhdCBqYXZhLnV0aWwuY29uY3VycmVudC5UaHJlYWRQb29sRXhlY3V0b3IucnVuV29ya2VyKFRocmVhZFBvb2xFeGVjdXRvci5qYXZhOjEwNjkpCiAgYXQgamF2YS51dGlsLmNvbmN1cnJlbnQuVGhyZWFkUG9vbEV4ZWN1dG9yJFdvcmtlci5ydW4oVGhyZWFkUG9vbEV4ZWN1dG9yLmphdmE6NTY5KQogIGF0IGphdmEubGFuZy5UaHJlYWQucnVuKFRocmVhZC5qYXZhOjg1NikKCiJDb25uLUNyZWF0b3ItMiIgcHJpbz01IHRpZD0zNiBXQUlUCiAgfCBncm91cD0ibWFpbiIgc0NvdW50PTEgZHNDb3VudD0wIG9iaj0weDQxOGViZjc4IHNlbGY9MHg2MTY3MmY5OAogIHwgc3lzVGlkPTYxODEgbmljZT0wIHNjaGVkPTAvMCBjZ3JwPWFwcHMgaGFuZGxlPTE2MzQxODQ4MDAKICB8IHNjaGVkc3RhdD0oIDQ3NTIzMiAxMzA2MzA3IDUgKSB1dG09MCBzdG09MCBjb3JlPTEKICBhdCBqYXZhLmxhbmcuT2JqZWN0LndhaXQoTmF0aXZlIE1ldGhvZCkKICAtIHdhaXRpbmcgb24gPDB4NDE3NDZjZjA+IChhIGphdmEubGFuZy5WTVRocmVhZCkgaGVsZCBieSB0aWQ9MzYgKENvbm4tQ3JlYXRvci0yKQogIGF0IGphdmEubGFuZy5UaHJlYWQucGFya0ZvcihUaHJlYWQuamF2YToxMjMxKQogIGF0IHN1bi5taXNjLlVuc2FmZS5wYXJrKFVuc2FmZS5qYXZhOjMyMykKICBhdCBqYXZhLnV0aWwuY29uY3VycmVudC5sb2Nrcy5Mb2NrU3VwcG9ydC5wYXJrKExvY2tTdXBwb3J0LmphdmE6MTU3KQogIGF0IGphdmEudXRpbC5jb25jdXJyZW50LlN5bmNocm9ub3VzUXVldWUkVHJhbnNmZXJTdGFjay5hd2FpdEZ1bGZpbGwoU3luY2hyb25vdXNRdWV1ZS5qYXZhOjQxOSkKICBhdCBqYXZhLnV0aWwuY29uY3VycmVudC5TeW5jaHJvbm91c1F1ZXVlJFRyYW5zZmVyU3RhY2sudHJhbnNmZXIoU3luY2hyb25vdXNRdWV1ZS5qYXZhOjMyMCkKICBhdCBqYXZhLnV0aWwuY29uY3VycmVudC5TeW5jaHJvbm91c1F1ZXVlLnRha2UoU3luY2hyb25vdXNRdWV1ZS5qYXZhOjg1OCkKICBhdCBqYXZhLnV0aWwuY29uY3VycmVudC5UaHJlYWRQb29sRXhlY3V0b3IuZ2V0VGFzayhUaHJlYWRQb29sRXhlY3V0b3IuamF2YToxMDA5KQogIGF0IGphdmEudXRpbC5jb25jdXJyZW50LlRocmVhZFBvb2xFeGVjdXRvci5ydW5Xb3JrZXIoVGhyZWFkUG9vbEV4ZWN1dG9yLmphdmE6MTA2OSkKICBhdCBqYXZhLnV0aWwuY29uY3VycmVudC5UaHJlYWRQb29sRXhlY3V0b3IkV29ya2VyLnJ1bihUaHJlYWRQb29sRXhlY3V0b3IuamF2YTo1NjkpCiAgYXQgamF2YS5sYW5nLlRocmVhZC5ydW4oVGhyZWFkLmphdmE6ODU2KQoKIkNvbm4tQ3JlYXRvci0xIiBwcmlvPTUgdGlkPTM1IFdBSVQKICB8IGdyb3VwPSJtYWluIiBzQ291bnQ9MSBkc0NvdW50PTAgb2JqPTB4NDE4ZjM4NTggc2VsZj0weDYxNjcyYjQ4CiAgfCBzeXNUaWQ9NjE4MCBuaWNlPTAgc2NoZWQ9MC8wIGNncnA9YXBwcyBoYW5kbGU9MTYzNDI1NjE0NAogIHwgc2NoZWRzdGF0PSggMTA5OTE1NCAzMDE1NjEzIDMyICkgdXRtPTAgc3RtPTAgY29yZT0xCiAgYXQgamF2YS5sYW5nLk9iamVjdC53YWl0KE5hdGl2ZSBNZXRob2QpCiAgLSB3YWl0aW5nIG9uIDwweDQxNzQ4NTQ4PiAoYSBqYXZhLmxhbmcuVk1UaHJlYWQpIGhlbGQgYnkgdGlkPTM1IChDb25uLUNyZWF0b3ItMSkKICBhdCBqYXZhLmxhbmcuVGhyZWFkLnBhcmtGb3IoVGhyZWFkLmphdmE6MTIzMSkKICBhdCBzdW4ubWlzYy5VbnNhZmUucGFyayhVbnNhZmUuamF2YTozMjMpCiAgYXQgamF2YS51dGlsLmNvbmN1cnJlbnQubG9ja3MuTG9ja1N1cHBvcnQucGFyayhMb2NrU3VwcG9ydC5qYXZhOjE1NykKICBhdCBqYXZhLnV0aWwuY29uY3VycmVudC5TeW5jaHJvbm91c1F1ZXVlJFRyYW5zZmVyU3RhY2suYXdhaXRGdWxmaWxsKFN5bmNocm9ub3VzUXVldWUuamF2YTo0MTkpCiAgYXQgamF2YS51dGlsLmNvbmN1cnJlbnQuU3luY2hyb25vdXNRdWV1ZSRUcmFuc2ZlclN0YWNrLnRyYW5zZmVyKFN5bmNocm9ub3VzUXVldWUuamF2YTozMjApCiAgYXQgamF2YS51dGlsLmNvbmN1cnJlbnQuU3luY2hyb25vdXNRdWV1ZS50YWtlKFN5bmNocm9ub3VzUXVldWUuamF2YTo4NTgpCiAgYXQgamF2YS51dGlsLmNvbmN1cnJlbnQuVGhyZWFkUG9vbEV4ZWN1dG9yLmdldFRhc2soVGhyZWFkUG9vbEV4ZWN1dG9yLmphdmE6MTAwOSkKICBhdCBqYXZhLnV0aWwuY29uY3VycmVudC5UaHJlYWRQb29sRXhlY3V0b3IucnVuV29ya2VyKFRocmVhZFBvb2xFeGVjdXRvci5qYXZhOjEwNjkpCiAgYXQgamF2YS51dGlsLmNvbmN1cnJlbnQuVGhyZWFkUG9vbEV4ZWN1dG9yJFdvcmtlci5ydW4oVGhyZWFkUG9vbEV4ZWN1dG9yLmphdmE6NTY5KQogIGF0IGphdmEubGFuZy5UaHJlYWQucnVuKFRocmVhZC5qYXZhOjg1NikKCiJDb25uLUNyZWF0b3ItMCIgcHJpbz01IHRpZD0zNCBXQUlUCiAgfCBncm91cD0ibWFpbiIgc0NvdW50PTEgZHNDb3VudD0wIG9iaj0weDQxOTBhZmEwIHNlbGY9MHg2MzE3Mzk2OAogIHwgc3lzVGlkPTYxNzkgbmljZT0wIHNjaGVkPTAvMCBjZ3JwPWFwcHMgaGFuZGxlPTE2MzI3MjUxOTIKICB8IHNjaGVkc3RhdD0oIDkzNDE1NCAxMDMyMTYxNSA0ICkgdXRtPTAgc3RtPTAgY29yZT0xCiAgYXQgamF2YS5sYW5nLk9iamVjdC53YWl0KE5hdGl2ZSBNZXRob2QpCiAgLSB3YWl0aW5nIG9uIDwweDQxNjMyYTAwPiAoYSBqYXZhLmxhbmcuVk1UaHJlYWQpIGhlbGQgYnkgdGlkPTM0IChDb25uLUNyZWF0b3ItMCkKICBhdCBqYXZhLmxhbmcuVGhyZWFkLnBhcmtGb3IoVGhyZWFkLmphdmE6MTIzMSkKICBhdCBzdW4ubWlzYy5VbnNhZmUucGFyayhVbnNhZmUuamF2YTozMjMpCiAgYXQgamF2YS51dGlsLmNvbmN1cnJlbnQubG9ja3MuTG9ja1N1cHBvcnQucGFyayhMb2NrU3VwcG9ydC5qYXZhOjE1NykKICBhdCBqYXZhLnV0aWwuY29uY3VycmVudC5TeW5jaHJvbm91c1F1ZXVlJFRyYW5zZmVyU3RhY2suYXdhaXRGdWxmaWxsKFN5bmNocm9ub3VzUXVldWUuamF2YTo0MTkpCiAgYXQgamF2YS51dGlsLmNvbmN1cnJlbnQuU3luY2hyb25vdXNRdWV1ZSRUcmFuc2ZlclN0YWNrLnRyYW5zZmVyKFN5bmNocm9ub3VzUXVldWUuamF2YTozMjApCiAgYXQgamF2YS51dGlsLmNvbmN1cnJlbnQuU3luY2hyb25vdXNRdWV1ZS50YWtlKFN5bmNocm9ub3VzUXVldWUuamF2YTo4NTgpCiAgYXQgamF2YS51dGlsLmNvbmN1cnJlbnQuVGhyZWFkUG9vbEV4ZWN1dG9yLmdldFRhc2soVGhyZWFkUG9vbEV4ZWN1dG9yLmphdmE6MTAwOSkKICBhdCBqYXZhLnV0aWwuY29uY3VycmVudC5UaHJlYWRQb29sRXhlY3V0b3IucnVuV29ya2VyKFRocmVhZFBvb2xFeGVjdXRvci5qYXZhOjEwNjkpCiAgYXQgamF2YS51dGlsLmNvbmN1cnJlbnQuVGhyZWFkUG9vbEV4ZWN1dG9yJFdvcmtlci5ydW4oVGhyZWFkUG9vbEV4ZWN1dG9yLmphdmE6NTY5KQogIGF0IGphdmEubGFuZy5UaHJlYWQucnVuKFRocmVhZC5qYXZhOjg1NikKCiJsb2ctaGFuZGxlciIgcHJpbz01IHRpZD0zMyBOQVRJVkUKICB8IGdyb3VwPSJtYWluIiBzQ291bnQ9MSBkc0NvdW50PTAgb2JqPTB4NDE4ZWE1YTggc2VsZj0weDYyMTU3OTI4CiAgfCBzeXNUaWQ9NjE3OCBuaWNlPTAgc2NoZWQ9MC8wIGNncnA9YXBwcyBoYW5kbGU9MTY0NTU3NTU0NAogIHwgc2NoZWRzdGF0PSggOTc0MjYxMSA2Mjc3MzA5IDIwMiApIHV0bT0wIHN0bT0wIGNvcmU9MQogICMwMCAgcGMgMDAwMGRhZTAgIC9zeXN0ZW0vbGliL2xpYmMuc28gKGVwb2xsX3dhaXQrMTIpCiAgIzAxICBwYyAwMDAxNDdhMSAgL3N5c3RlbS9saWIvbGlidXRpbHMuc28gKGFuZHJvaWQ6Okxvb3Blcjo6cG9sbElubmVyKGludCkrOTYpCiAgIzAyICBwYyAwMDAxNGEwOSAgL3N5c3RlbS9saWIvbGlidXRpbHMuc28gKGFuZHJvaWQ6Okxvb3Blcjo6cG9sbE9uY2UoaW50LCBpbnQqLCBpbnQqLCB2b2lkKiopKzEwNCkKICAjMDMgIHBjIDAwMDYwZjg3ICAvc3lzdGVtL2xpYi9saWJhbmRyb2lkX3J1bnRpbWUuc28gKGFuZHJvaWQ6Ok5hdGl2ZU1lc3NhZ2VRdWV1ZTo6cG9sbE9uY2UoX0pOSUVudiosIGludCkrMjIpCiAgIzA0ICBwYyAwMDAxZGVmMCAgL3N5c3RlbS9saWIvbGliZHZtLnNvIChkdm1QbGF0Zm9ybUludm9rZSsxMTIpCiAgIzA1ICBwYyAwMDA0Y2RhZCAgL3N5c3RlbS9saWIvbGliZHZtLnNvIChkdm1DYWxsSk5JTWV0aG9kKHVuc2lnbmVkIGludCBjb25zdCosIEpWYWx1ZSosIE1ldGhvZCBjb25zdCosIFRocmVhZCopKzQ5MikKICAjMDYgIHBjIDAwMDI3MzIwICAvc3lzdGVtL2xpYi9saWJkdm0uc28KICAjMDcgIHBjIDAwMDJiMzhjICAvc3lzdGVtL2xpYi9saWJkdm0uc28gKGR2bUludGVycHJldChUaHJlYWQqLCBNZXRob2QgY29uc3QqLCBKVmFsdWUqKSsxODApCiAgIzA4ICBwYyAwMDA1ZmIxOSAgL3N5c3RlbS9saWIvbGliZHZtLnNvIChkdm1DYWxsTWV0aG9kVihUaHJlYWQqLCBNZXRob2QgY29uc3QqLCBPYmplY3QqLCBib29sLCBKVmFsdWUqLCBzdGQ6Ol9fdmFfbGlzdCkrMjcyKQogICMwOSAgcGMgMDAwNWZiNDMgIC9zeXN0ZW0vbGliL2xpYmR2bS5zbyAoZHZtQ2FsbE1ldGhvZChUaHJlYWQqLCBNZXRob2QgY29uc3QqLCBPYmplY3QqLCBKVmFsdWUqLCAuLi4pKzIwKQogICMxMCAgcGMgMDAwNTQ0YTEgIC9zeXN0ZW0vbGliL2xpYmR2bS5zbwogICMxMSAgcGMgMDAwMTJkNjQgIC9zeXN0ZW0vbGliL2xpYmMuc28gKF9fdGhyZWFkX2VudHJ5KzQ4KQogIGF0IGFuZHJvaWQub3MuTWVzc2FnZVF1ZXVlLm5hdGl2ZVBvbGxPbmNlKE5hdGl2ZSBNZXRob2QpCiAgYXQgYW5kcm9pZC5vcy5NZXNzYWdlUXVldWUubmV4dChNZXNzYWdlUXVldWUuamF2YToxMjUpCiAgYXQgYW5kcm9pZC5vcy5Mb29wZXIubG9vcChMb29wZXIuamF2YToxNDApCiAgYXQgYW5kcm9pZC5vcy5IYW5kbGVyVGhyZWFkLnJ1bihIYW5kbGVyVGhyZWFkLmphdmE6N 色情 第 2 部分阅读 G9vcChMb29wZXIuamF2YToxNDApCiAgYXQgYW5kcm9pZC5vcy5IYW5kbGVyVGhyZWFkLnJ1bihIYW5kbGVyVGhyZWFkLmphdmE6NjApCgoiaHR0cDYiIHByaW89NSB0aWQ9MzIgV0FJVAogIHwgZ3JvdXA9Im1haW4iIHNDb3VudD0xIGRzQ291bnQ9MCBvYmo9MHg0MTg2NGVhMCBzZWxmPTB4NjIxNTcxNjgKICB8IHN5c1RpZD02MTc3IG5pY2U9MCBzY2hlZD0wLzAgY2dycD1hcHBzIGhhbmRsZT0xNjQ1NTczNTkyCiAgfCBzY2hlZHN0YXQ9KCAyMTAwMDAgMTI5NjYxNSA0ICkgdXRtPTAgc3RtPTAgY29yZT0wCiAgYXQgamF2YS5sYW5nLk9iamVjdC53YWl0KE5hdGl2ZSBNZXRob2QpCiAgLSB3YWl0aW5nIG9uIDwweDQxNjZjN2MwPiAoYSBjb20udGVuY2VudC5zbXR0Lm5ldC5odHRwLlJlcXVlc3RRdWV1ZSkKICBhdCBqYXZhLmxhbmcuT2JqZWN0LndhaXQoT2JqZWN0LmphdmE6MzY0KQogIGF0IGNvbS50ZW5jZW50LnNtdHQubmV0Lmh0dHAubC5ydW4oKG51bGwpOi0xKQoKImh0dHA1IiBwcmlvPTUgdGlkPTMxIFdBSVQKICB8IGdyb3VwPSJtYWluIiBzQ291bnQ9MSBkc0NvdW50PTAgb2JqPTB4NDE4ZjM3ZDggc2VsZj0weDYyMTU2YTI4CiAgfCBzeXNUaWQ9NjE3NiBuaWNlPTAgc2NoZWQ9MC8wIGNncnA9YXBwcyBoYW5kbGU9MTY0NTU3MTcwNAogIHwgc2NoZWRzdGF0PSggMTUxMDc3IDE4MTc2OTIgMyApIHV0bT0wIHN0bT0wIGNvcmU9MAogIGF0IGphdmEubGFuZy5PYmplY3Qud2FpdChOYXRpdmUgTWV0aG9kKQogIC0gd2FpdGluZyBvbiA8MHg0MTY2YzdjMD4gKGEgY29tLnRlbmNlbnQuc210dC5uZXQuaHR0cC5SZXF1ZXN0UXVldWUpCiAgYXQgamF2YS5sYW5nLk9iamVjdC53YWl0KE9iamVjdC5qYXZhOjM2NCkKICBhdCBjb20udGVuY2VudC5zbXR0Lm5ldC5odHRwLmwucnVuKChudWxsKTotMSkKCiJodHRwNCIgcHJpbz01IHRpZD0zMCBXQUlUCiAgfCBncm91cD0ibWFpbiIgc0NvdW50PTEgZHNDb3VudD0wIG9iaj0weDQxOGRjYTQ4IHNlbGY9MHg2MjE1NjJlOAogIHwgc3lzVGlkPTYxNzUgbmljZT0wIHNjaGVkPTAvMCBjZ3JwPWFwcHMgaGFuZGxlPTE2NDU1Njk4ODAKICB8IHNjaGVkc3RhdD0oIDUzNzYxMCAxMjQ1NjIwIDcwICkgdXRtPTAgc3RtPTAgY29yZT0wCiAgYXQgamF2YS5sYW5nLk9iamVjdC53YWl0KE5hdGl2ZSBNZXRob2QpCiAgLSB3YWl0aW5nIG9uIDwweDQxNjZjN2MwPiAoYSBjb20udGVuY2VudC5zbXR0Lm5ldC5odHRwLlJlcXVlc3RRdWV1ZSkKICBhdCBqYXZhLmxhbmcuT2JqZWN0LndhaXQoT2JqZWN0LmphdmE6MzY0KQogIGF0IGNvbS50ZW5jZW50LnNtdHQubmV0Lmh0dHAubC5ydW4oKG51bGwpOi0xKQoKImh0dHAzIiBwcmlvPTUgdGlkPTI5IFdBSVQKICB8IGdyb3VwPSJtYWluIiBzQ291bnQ9MSBkc0NvdW50PTAgb2JqPTB4NDE4ZGE3Njggc2VsZj0weDYyMTU1YmM4CiAgfCBzeXNUaWQ9NjE3NCBuaWNlPTAgc2NoZWQ9MC8wIGNncnA9YXBwcyBoYW5kbGU9MTY0NTU2ODAyNAogIHwgc2NoZWRzdGF0PSggMTk5MjMxIDU0MjQ2MSAzICkgdXRtPTAgc3RtPTAgY29yZT0wCiAgYXQgamF2YS5sYW5nLk9iamVjdC53YWl0KE5hdGl2ZSBNZXRob2QpCiAgLSB3YWl0aW5nIG9uIDwweDQxNjZjN2MwPiAoYSBjb20udGVuY2VudC5zbXR0Lm5ldC5odHRwLlJlcXVlc3RRdWV1ZSkKICBhdCBqYXZhLmxhbmcuT2JqZWN0LndhaXQoT2JqZWN0LmphdmE6MzY0KQogIGF0IGNvbS50ZW5jZW50LnNtdHQubmV0Lmh0dHAubC5ydW4oKG51bGwpOi0xKQoKImh0dHAyIiBwcmlvPTUgdGlkPTI4IFdBSVQKICB8IGdyb3VwPSJtYWluIiBzQ291bnQ9MSBkc0NvdW50PTAgb2JqPTB4NDE4ZDYwZjggc2VsZj0weDYyMTU1NGM4CiAgfCBzeXNUaWQ9NjE3MyBuaWNlPTAgc2NoZWQ9MC8wIGNncnA9YXBwcyBoYW5kbGU9MTY0NTU2NDc3NgogIHwgc2NoZWRzdGF0PSggMTU0MDc3IDAgMyApIHV0bT0wIHN0bT0wIGNvcmU9MAogIGF0IGphdmEubGFuZy5PYmplY3Qud2FpdChOYXRpdmUgTWV0aG9kKQogIC0gd2FpdGluZyBvbiA8MHg0MTY2YzdjMD4gKGEgY29tLnRlbmNlbnQuc210dC5uZXQuaHR0cC5SZXF1ZXN0UXVldWUpCiAgYXQgamF2YS5sYW5nLk9iamVjdC53YWl0KE9iamVjdC5qYXZhOjM2NCkKICBhdCBjb20udGVuY2VudC5zbXR0Lm5ldC5odHRwLmwucnVuKChudWxsKTotMSkKCiJodHRwMSIgcHJpbz01IHRpZD0yNyBXQUlUCiAgfCBncm91cD0ibWFpbiIgc0NvdW50PTEgZHNDb3VudD0wIG9iaj0weDQxOGQzYWM4IHNlbGY9MHg2MjE1MDBmOAogIHwgc3lzVGlkPTYxNzIgbmljZT0wIHNjaGVkPTAvMCBjZ3JwPWFwcHMgaGFuZGxlPTE2NDU1NjM2MDgKICB8IHNjaGVkc3RhdD0oIDE4NDAwMSAzMDYzMDggMyApIHV0bT0wIHN0bT0wIGNvcmU9MAogIGF0IGphdmEubGFuZy5PYmplY3Qud2FpdChOYXRpdmUgTWV0aG9kKQogIC0gd2FpdGluZyBvbiA8MHg0MTY2YzdjMD4gKGEgY29tLnRlbmNlbnQuc210dC5uZXQuaHR0cC5SZXF1ZXN0UXVldWUpCiAgYXQgamF2YS5sYW5nLk9iamVjdC53YWl0KE9iamVjdC5qYXZhOjM2NCkKICBhdCBjb20udGVuY2VudC5zbXR0Lm5ldC5odHRwLmwucnVuKChudWxsKTotMSkKCiJodHRwMCIgcHJpbz01IHRpZD0yNiBXQUlUCiAgfCBncm91cD0ibWFpbiIgc0NvdW50PTEgZHNDb3VudD0wIG9iaj0weDQxOGQyZDI4IHNlbGY9MHg2MjE1MzdlOAogIHwgc3lzVGlkPTYxNzEgbmljZT0wIHNjaGVkPTAvMCBjZ3JwPWFwcHMgaGFuZGxlPTE2NDU1NjA1NTIKICB8IHNjaGVkc3RhdD0oIDE1MjQ2MiA0MjY0NjEgMyApIHV0bT0wIHN0bT0wIGNvcmU9MAogIGF0IGphdmEubGFuZy5PYmplY3Qud2FpdChOYXRpdmUgTWV0aG9kKQogIC0gd2FpdGluZyBvbiA8MHg0MTY2YzdjMD4gKGEgY29tLnRlbmNlbnQuc210dC5uZXQuaHR0cC5SZXF1ZXN0UXVldWUpCiAgYXQgamF2YS5sYW5nLk9iamVjdC53YWl0KE9iamVjdC5qYXZhOjM2NCkKICBhdCBjb20udGVuY2VudC5zbXR0Lm5ldC5odHRwLmwucnVuKChudWxsKTotMSkKCiJXZWJWaWV3V29ya2VyVGhyZWFkIiBwcmlvPTUgdGlkPTI1IE5BVElWRQogIHwgZ3JvdXA9Im1haW4iIHNDb3VudD0xIGRzQ291bnQ9MCBvYmo9MHg0MTdiYTc3OCBzZWxmPTB4NjIxNGZhYTAKICB8IHN5c1RpZD02MTcwIG5pY2U9MTEgc2NoZWQ9MC8wIGNncnA9YXBwcy9iZ19ub25faW50ZXJhY3RpdmUgaGFuZGxlPTEzNzE5MjczMjAKICB8IHNjaGVkc3RhdD0oIDcwOTUwNzcgMTgxMTIzMiAzNyApIHV0bT0wIHN0bT0wIGNvcmU9MQogICMwMCAgcGMgMDAwMGRhZTAgIC9zeXN0ZW0vbGliL2xpYmMuc28gKGVwb2xsX3dhaXQrMTIpCiAgIzAxICBwYyAwMDAxNDdhMSAgL3N5c3RlbS9saWIvbGlidXRpbHMuc28gKGFuZHJvaWQ6Okxvb3Blcjo6cG9sbElubmVyKGludCkrOTYpCiAgIzAyICBwYyAwMDAxNGEwOSAgL3N5c3RlbS9saWIvbGlidXRpbHMuc28gKGFuZHJvaWQ6Okxvb3Blcjo6cG9sbE9uY2UoaW50LCBpbnQqLCBpbnQqLCB2b2lkKiopKzEwNCkKICAjMDMgIHBjIDAwMDYwZjg3ICAvc3lzdGVtL2xpYi9saWJhbmRyb2lkX3J1bnRpbWUuc28gKGFuZHJvaWQ6Ok5hdGl2ZU1lc3NhZ2VRdWV1ZTo6cG9sbE9uY2UoX0pOSUVudiosIGludCkrMjIpCiAgIzA0ICBwYyAwMDAxZGVmMCAgL3N5c3RlbS9saWIvbGliZHZtLnNvIChkdm1QbGF0Zm9ybUludm9rZSsxMTIpCiAgIzA1ICBwYyAwMDA0Y2RhZCAgL3N5c3RlbS9saWIvbGliZHZtLnNvIChkdm1DYWxsSk5JTWV0aG9kKHVuc2lnbmVkIGludCBjb25zdCosIEpWYWx1ZSosIE1ldGhvZCBjb25zdCosIFRocmVhZCopKzQ5MikKICAjMDYgIHBjIDAwMDI3MzIwICAvc3lzdGVtL2xpYi9saWJkdm0uc28KICAjMDcgIHBjIDAwMDJiMzhjICAvc3lzdGVtL2xpYi9saWJkdm0uc28gKGR2bUludGVycHJldChUaHJlYWQqLCBNZXRob2QgY29uc3QqLCBKVmFsdWUqKSsxODApCiAgIzA4ICBwYyAwMDA1ZmIxOSAgL3N5c3RlbS9saWIvbGliZHZtLnNvIChkdm1DYWxsTWV0aG9kVihUaHJlYWQqLCBNZXRob2QgY29uc3QqLCBPYmplY3QqLCBib29sLCBKVmFsdWUqLCBzdGQ6Ol9fdmFfbGlzdCkrMjcyKQogICMwOSAgcGMgMDAwNWZiNDMgIC9zeXN0ZW0vbGliL2xpYmR2bS5zbyAoZHZtQ2FsbE1ldGhvZChUaHJlYWQqLCBNZXRob2QgY29uc3QqLCBPYmplY3QqLCBKVmFsdWUqLCAuLi4pKzIwKQogICMxMCAgcGMgMDAwNTQ0YTEgIC9zeXN0ZW0vbGliL2xpYmR2bS5zbwogICMxMSAgcGMgMDAwMTJkNjQgIC9zeXN0ZW0vbGliL2xpYmMuc28gKF9fdGhyZWFkX2VudHJ5KzQ4KQogIGF0IGFuZHJvaWQub3MuTWVzc2FnZVF1ZXVlLm5hdGl2ZVBvbGxPbmNlKE5hdGl2ZSBNZXRob2QpCiAgYXQgYW5kcm9pZC5vcy5NZXNzYWdlUXVldWUubmV4dChNZXNzYWdlUXVldWUuamF2YToxMjUpCiAgYXQgYW5kcm9pZC5vcy5Mb29wZXIubG9vcChMb29wZXIuamF2YToxNDApCiAgYXQgYW5kcm9pZC5vcy5IYW5kbGVyVGhyZWFkLnJ1bihIYW5kbGVyVGhyZWFkLmphdmE6NjApCgoiV2ViVmlld05ldFdvcmtlclRocmVhZCIgcHJpbz01IHRpZD0yNCBOQVRJVkUKICB8IGdyb3VwPSJtYWluIiBzQ291bnQ9MSBkc0NvdW50PTAgb2JqPTB4NDE4ZjJlNTAgc2VsZj0weDYyMTUxMjY4CiAgfCBzeXNUaWQ9NjE2OSBuaWNlPS0yIHNjaGVkPTAvMCBjZ3JwPWFwcHMgaGFuZGxlPTE2NDU1NDYzMjAKICB8IHNjaGVkc3RhdD0oIDcwODAxNTIgMTI1ODA3OCA4ICkgdXRtPTAgc3RtPTAgY29yZT0xCiAgIzAwICBwYyAwMDAwZGFlMCAgL3N5c3RlbS9saWIvbGliYy5zbyAoZXBvbGxfd2FpdCsxMikKICAjMDEgIHBjIDAwMDE0N2ExICAvc3lzdGVtL2xpYi9saWJ1dGlscy5zbyAoYW5kcm9pZDo6TG9vcGVyOjpwb2xsSW5uZXIoaW50KSs5NikKICAjMDIgIHBjIDAwMDE0YTA5ICAvc3lzdGVtL2xpYi9saWJ1dGlscy5zbyAoYW5kcm9pZDo6TG9vcGVyOjpwb2xsT25jZShpbnQsIGludCosIGludCosIHZvaWQqKikrMTA0KQogICMwMyAgcGMgMDAwNjBmODcgIC9zeXN0ZW0vbGliL2xpYmFuZHJvaWRfcnVudGltZS5zbyAoYW5kcm9pZDo6TmF0aXZlTWVzc2FnZVF1ZXVlOjpwb2xsT25jZShfSk5JRW52KiwgaW50KSsyMikKICAjMDQgIHBjIDAwMDFkZWYwICAvc3lzdGVtL2xpYi9saWJkdm0uc28gKGR2bVBsYXRmb3JtSW52b2tlKzExMikKICAjMDUgIHBjIDAwMDRjZGFkICAvc3lzdGVtL2xpYi9saWJkdm0uc28gKGR2bUNhbGxKTklNZXRob2QodW5zaWduZWQgaW50IGNvbnN0KiwgSlZhbHVlKiwgTWV0aG9kIGNvbnN0KiwgVGhyZWFkKikrNDkyKQogICMwNiAgcGMgMDAwMjczMjAgIC9zeXN0ZW0vbGliL2xpYmR2bS5zbwogICMwNyAgcGMgMDAwMmIzOGMgIC9zeXN0ZW0vbGliL2xpYmR2bS5zbyAoZHZtSW50ZXJwcmV0KFRocmVhZCosIE1ldGhvZCBjb25zdCosIEpWYWx1ZSopKzE4MCkKICAjMDggIHBjIDAwMDVmYjE5ICAvc3lzdGVtL2xpYi9saWJkdm0uc28gKGR2bUNhbGxNZXRob2RWKFRocmVhZCosIE1ldGhvZCBjb25zdCosIE9iamVjdCosIGJvb2wsIEpWYWx1ZSosIHN0ZDo6X192YV9saXN0KSsyNzIpCiAgIzA5ICBwYyAwMDA1ZmI0MyAgL3N5c3RlbS9saWIvbGliZHZtLnNvIChkdm1DYWxsTWV0aG9kKFRocmVhZCosIE1ldGhvZCBjb25zdCosIE9iamVjdCosIEpWYWx1ZSosIC4uLikrMjApCiAgIzEwICBwYyAwMDA1NDRhMSAgL3N5c3RlbS9saWIvbGliZHZtLnNvCiAgIzExICBwYyAwMDAxMmQ2NCAgL3N5c3RlbS9saWIvbGliYy5zbyAoX190aHJlYWRfZW50cnkrNDgpCiAgYXQgYW5kcm9pZC5vcy5NZXNzYWdlUXVldWUubmF0aXZlUG9sbE9uY2UoTmF0aXZlIE1ldGhvZCkKICBhdCBhbmRyb2lkLm9zLk1lc3NhZ2VRdWV1ZS5uZXh0KE1lc3NhZ2VRdWV1ZS5qYXZhOjEyNSkKICBhdCBhbmRyb2lkLm9zLkxvb3Blci5sb29wKExvb3Blci5qYXZhOjE0MCkKICBhdCBhbmRyb2lkLm9zLkhhbmRsZXJUaHJlYWQucnVuKEhhbmRsZXJUaHJlYWQuamF2YTo2MCkKCiJUaW1lci0xIiBwcmlvPTUgdGlkPTIzIFRJTUVEX1dBSVQKICB8IGdyb3VwPSJtYWluIiBzQ291bnQ9MSBkc0NvdW50PTAgb2JqPTB4NDE3ZGY2Yzggc2VsZj0weDYyMTNlN2U4CiAgfCBzeXNUaWQ9NjE2NiBuaWNlPTAgc2NoZWQ9MC8wIGNncnA9YXBwcyBoYW5kbGU9MTY0NTQ3MjgyNAogIHwgc2NoZWRzdGF0PSggNTQ3NTM5IDUwMTkyNCA4ICkgdXRtPTAgc3RtPTAgY29yZT0wCiAgYXQgamF2YS5sYW5nLk9iamVjdC53YWl0KE5hdGl2ZSBNZXRob2QpCiAgLSB3YWl0aW5nIG9uIDwweDQxN2RmNmM4PiAoYSBqYXZhLnV0aWwuVGltZXIkVGltZXJJbXBsKQogIGF0IGphdmEubGFuZy5PYmplY3Qud2FpdChPYmplY3QuamF2YTo0MDEpCiAgYXQgamF2YS51dGlsLlRpbWVyJFRpbWVySW1wbC5ydW4oVGltZXIuamF2YToyMzgpCgoiQXN5bmNUYXNrICMxIiBwcmlvPTUgdGlkPTIyIFdBSVQKICB8IGdyb3VwPSJtYWluIiBzQ291bnQ9MSBkc0NvdW50PTAgb2JqPTB4NDE3ODc3Njggc2VsZj0weDYxNjc5MTc4CiAgfCBzeXNUaWQ9NjE2NCBuaWNlPTEwIHNjaGVkPTAvMCBjZ3JwPWFwcHMvYmdfbm9uX2ludGVyYWN0aXZlIGhhbmRsZT0xNjM0MTYyMTc2CiAgfCBzY2hlZHN0YXQ9KCA3Mjk5OTggMTYwNDE1NiA5ICkgdXRtPTAgc3RtPTAgY29yZT0wCiAgYXQgamF2YS5sYW5nLk9iamVjdC53YWl0KE5hdGl2ZSBNZXRob2QpCiAgLSB3YWl0aW5nIG9uIDwweDQxODg3NWY4PiAoYSBqYXZhLmxhbmcuVk1UaHJlYWQpIGhlbGQgYnkgdGlkPTIyIChBc3luY1Rhc2sgIzEpCiAgYXQgamF2YS5sYW5nLlRocmVhZC5wYXJrRm9yKFRocmVhZC5qYXZhOjEyMzEpCiAgYXQgc3VuLm1pc2MuVW5zYWZlLnBhcmsoVW5zYWZlLmphdmE6MzIzKQogIGF0IGphdmEudXRpbC5jb25jdXJyZW50LmxvY2tzLkxvY2tTdXBwb3J0LnBhcmsoTG9ja1N1cHBvcnQuamF2YToxNTcpCiAgYXQgamF2YS51dGlsLmNvbmN1cnJlbnQubG9ja3MuQWJzdHJhY3RRdWV1ZWRTeW5jaHJvbml6ZXIkQ29uZGl0aW9uT2JqZWN0LmF3YWl0KEFic3RyYWN0UXVldWVkU3luY2hyb25pemVyLmphdmE6MjAyMikKICBhdCBqYXZhLnV0aWwuY29uY3VycmVudC5MaW5rZWRCbG9ja2luZ1F1ZXVlLnRha2UoTGlua2VkQmxvY2tpbmdRdWV1ZS5qYXZhOjQxMykKICBhdCBqYXZhLnV0aWwuY29uY3VycmVudC5UaHJlYWRQb29sRXhlY3V0b3IuZ2V0VGFzayhUaHJlYWRQb29sRXhlY3V0b3IuamF2YToxMDA5KQogIGF0IGphdmEudXRpbC5jb25jdXJyZW50LlRocmVhZFBvb2xFeGVjdXRvci5ydW5Xb3JrZXIoVGhyZWFkUG9vbEV4ZWN1dG9yLmphdmE6MTA2OSkKICBhdCBqYXZhLnV0aWwuY29uY3VycmVudC5UaHJlYWRQb29sRXhlY3V0b3IkV29ya2VyLnJ1bihUaHJlYWRQb29sRXhlY3V0b3IuamF2YTo1NjkpCiAgYXQgamF2YS5sYW5nLlRocmVhZC5ydW4oVGhyZWFkLmphdmE6ODU2KQoKIldlYlZpZXdDb3JlVGhyZWFkIiBwcmlvPTUgdGlkPTIxIE5BVElWRQogIHwgZ3JvdXA9Im1haW4iIHNDb3VudD0xIGRzQ291bnQ9MCBvYmo9MHg0MTc4MmEzMCBzZWxmPTB4NjE2NzRhMDAKICB8IHN5c1RpZD02MTYyIG5pY2U9LTEgc2NoZWQ9MC8wIGNncnA9YXBwcyBoYW5kbGU9MTYzNDE1OTAyNAogIHwgc2NoZWRzdGF0PSggMjY2MDMwNjk1IDE0MjY2MDIyNiAxNDkzICkgdXRtPTE5IHN0bT03IGNvcmU9MQogICMwMCAgcGMgMDAwMGRhZTAgIC9zeXN0ZW0vbGliL2xpYmMuc28gKGVwb2xsX3dhaXQrMTIpCiAgIzAxICBwYyAwMDAxNDdhMSAgL3N5c3RlbS9saWIvbGlidXRpbHMuc28gKGFuZHJvaWQ6Okxvb3Blcjo6cG9sbElubmVyKGludCkrOTYpCiAgIzAyICBwYyAwMDAxNGEwOSAgL3N5c3RlbS9saWIvbGlidXRpbHMuc28gKGFuZHJvaWQ6Okxvb3Blcjo6cG9sbE9uY2UoaW50LCBpbnQqLCBpbnQqLCB2b2lkKiopKzEwNCkKICAjMDMgIHBjIDAwMDYwZjg3ICAvc3lzdGVtL2xpYi9saWJhbmRyb2lkX3J1bnRpbWUuc28gKGFuZHJvaWQ6Ok5hdGl2ZU1lc3NhZ2VRdWV1ZTo6cG9sbE9uY2UoX0pOSUVudiosIGludCkrMjIpCiAgIzA0ICBwYyAwMDAxZGVmMCAgL3N5c3RlbS9saWIvbGliZHZtLnNvIChkdm1QbGF0Zm9ybUludm9rZSsxMTIpCiAgIzA1ICBwYyAwMDA0Y2RhZCAgL3N5c3RlbS9saWIvbGliZHZtLnNvIChkdm1DYWxsSk5JTWV0aG9kKHVuc2lnbmVkIGludCBjb25zdCosIEpWYWx1ZSosIE1ldGhvZCBjb25zdCosIFRocmVhZCopKzQ5MikKICAjMDYgIHBjIDAwMDI3MzIwICAvc3lzdGVtL2xpYi9saWJkdm0uc28KICAjMDcgIHBjIDAwMDJiMzhjICAvc3lzdGVtL2xpYi9saWJkdm0uc28gKGR2bUludGVycHJldChUaHJlYWQqLCBNZXRob2QgY29uc3QqLCBKVmFsdWUqKSsxODApCiAgIzA4ICBwYyAwMDA1ZmIxOSAgL3N5c3RlbS9saWIvbGliZHZtLnNvIChkdm1DYWxsTWV0aG9kVihUaHJlYWQqLCBNZXRob2QgY29uc3QqLCBPYmplY3QqLCBib29sLCBKVmFsdWUqLCBzdGQ6Ol9fdmFfbGlzdCkrMjcyKQogICMwOSAgcGMgMDAwNWZiNDMgIC9zeXN0ZW0vbGliL2xpYmR2bS5zbyAoZHZtQ2FsbE1ldGhvZChUaHJlYWQqLCBNZXRob2QgY29uc3QqLCBPYmplY3QqLCBKVmFsdWUqLCAuLi4pKzIwKQogICMxMCAgcGMgMDAwNTQ0YTEgIC9zeXN0ZW0vbGliL2xpYmR2bS5zbwogICMxMSAgcGMgMDAwMTJkNjQgIC9zeXN0ZW0vbGliL2xpYmMuc28gKF9fdGhyZWFkX2VudHJ5KzQ4KQogIGF0IGFuZHJvaWQub3MuTWVzc2FnZVF1ZXVlLm5hdGl2ZVBvbGxPbmNlKE5hdGl2ZSBNZXRob2QpCiAgYXQgYW5kcm9pZC5vcy5NZXNzYWdlUXVldWUubmV4dChNZXNzYWdlUXVldWUuamF2YToxMjUpCiAgYXQgYW5kcm9pZC5vcy5Mb29wZXIubG9vcChMb29wZXIuamF2YToxNDApCiAgYXQgY29tLnRlbmNlbnQuc210dC53ZWJraXQuV2ViVmlld0NvcmUkV2ViQ29yZVRocmVhZC5ydW4oKG51bGwpOi0xKQogIGF0IGphdmEubGFuZy5UaHJlYWQucnVuKFRocmVhZC5qYXZhOjg1NikKCiJEZWVwbGlua1JlcXVlc3RRdWV1ZVRocmVhZCIgcHJpbz01IHRpZD0xNCBOQVRJVkUKICB8IGdyb3VwPSJtYWluIiBzQ291bnQ9MSBkc0NvdW50PTAgb2JqPTB4NDE4MWM2Mjggc2VsZj0weDYxNjczN2QwCiAgfCBzeXNUaWQ9NjE2MSBuaWNlPTAgc2NoZWQ9MC8wIGNncnA9YXBwcyBoYW5kbGU9MTY0NTQxMTAwOAogIHwgc2NoZWRzdGF0PSggNzA4MjUzOCAyMDkwMDEgNSApIHV0bT0wIHN0bT0wIGNvcmU9MAogICMwMCAgcGMgMDAwMGRhZTAgIC9zeXN0ZW0vbGliL2xpYmMuc28gKGVwb2xsX3dhaXQrMTIpCiAgIzAxICBwYyAwMDAxNDdhMSAgL3N5c3RlbS9saWIvbGlidXRpbHMuc28gKGFuZHJvaWQ6Okxvb3Blcjo6cG9sbElubmVyKGludCkrOTYpCiAgIzAyICBwYyAwMDAxNGEwOSAgL3N5c3RlbS9saWIvbGlidXRpbHMuc28gKGFuZHJvaWQ6Okxvb3Blcjo6cG9sbE9uY2UoaW50LCBpbnQqLCBpbnQqLCB2b2lkKiopKzEwNCkKICAjMDMgIHBjIDAwMDYwZjg3ICAvc3lzdGVtL2xpYi9saWJhbmRyb2lkX3J1bnRpbWUuc28gKGFuZHJvaWQ6Ok5hdGl2ZU1lc3NhZ2VRdWV1ZTo6cG9sbE9uY2UoX0pOSUVudiosIGludCkrMjIpCiAgIzA0ICBwYyAwMDAxZGVmMCAgL3N5c3RlbS9saWIvbGliZHZtLnNvIChkdm1QbGF0Zm9ybUludm9rZSsxMTIpCiAgIzA1ICBwYyAwMDA0Y2RhZCAgL3N5c3RlbS9saWIvbGliZHZtLnNvIChkdm1DYWxsSk5JTWV0aG9kKHVuc2lnbmVkIGludCBjb25zdCosIEpWYWx1ZSosIE1ldGhvZCBjb25zdCosIFRocmVhZCopKzQ5MikKICAjMDYgIHBjIDAwMDI3MzIwICAvc3lzdGVtL2xpYi9saWJkdm0uc28KICAjMDcgIHBjIDAwMDJiMzhjICAvc3lzdGVtL2xpYi9saWJkdm0uc28gKGR2bUludGVycHJldChUaHJlYWQqLCBNZXRob2QgY29uc3QqLCBKVmFsdWUqKSsxODApCiAgIzA4ICBwYyAwMDA1ZmIxOSAgL3N5c3RlbS9saWIvbGliZHZtLnNvIChkdm1DYWxsTWV0aG9kVihUaHJlYWQqLCBNZXRob2QgY29uc3QqLCBPYmplY3QqLCBib29sLCBKVmFsdWUqLCBzdGQ6Ol9fdmFfbGlzdCkrMjcyKQogICMwOSAgcGMgMDAwNWZiNDMgIC9zeXN0ZW0vbGliL2xpYmR2bS5zbyAoZHZtQ2FsbE1ldGhvZChUaHJlYWQqLCBNZXRob2QgY29uc3QqLCBPYmplY3QqLCBKVmFsdWUqLCAuLi4pKzIwKQogICMxMCAgcGMgMDAwNTQ0YTEgIC9zeXN0ZW0vbGliL2xpYmR2bS5zbwogICMxMSAgcGMgMDAwMTJkNjQgIC9zeXN0ZW0vbGliL2xpYmMuc28gKF9fdGhyZWFkX2VudHJ5KzQ4KQogIGF0IGFuZHJvaWQub3MuTWVzc2FnZVF1ZXVlLm5hdGl2ZVBvbGxPbmNlKE5hdGl2ZSBNZXRob2QpCiAgYXQgYW5kcm9pZC5vcy5NZXNzYWdlUXVldWUubmV4dChNZXNzYWdlUXVldWUuamF2YToxMjUpCiAgYXQgYW5kcm9pZC5vcy5Mb29wZXIubG9vcChMb29wZXIuamF2YToxNDApCiAgYXQgYW5kcm9pZC5vcy5IYW5kbGVyVGhyZWFkLnJ1bihIYW5kbGVyVGhyZWFkLmphdmE6NjApCgoiQ29va2llU3luY01hbmFnZXIiIHByaW89NSB0aWQ9MjAgTkFUSVZFCiAgfCBncm91cD0ibWFpbiIgc0NvdW50PTEgZHNDb3VudD0wIG9iaj0weDQxNjhiNDQ4IHNlbGY9MHg2MTY1NjFiMAogIHwgc3lzVGlkPTYxNTkgbmljZT0xMCBzY2hlZD0wLzAgY2dycD1hcHBzL2JnX25vbl9pbnRlcmFjdGl2ZSBoYW5kbGU9MTYzNDA0Nzk1MgogIHwgc2NoZWRzdGF0PSggNjUxOTkyNCA5NTk0NjEgMTQgKSB1dG09MCBzdG09MCBjb3JlPTEKICAjMDAgIHBjIDAwMDBkYWUwICAvc3lzdGVtL2xpYi9saWJjLnNvIChlcG9sbF93YWl0KzEyKQogICMwMSAgcGMgMDAwMTQ3YTEgIC9zeXN0ZW0vbGliL2xpYnV0aWxzLnNvIChhbmRyb2lkOjpMb29wZXI6OnBvbGxJbm5lcihpbnQpKzk2KQogICMwMiAgcGMgMDAwMTRhMDkgIC9zeXN0ZW0vbGliL2xpYnV0aWxzLnNvIChhbmRyb2lkOjpMb29wZXI6OnBvbGxPbmNlKGludCwgaW50KiwgaW50Kiwgdm9pZCoqKSsxMDQpCiAgIzAzICBwYyAwMDA2MGY4NyAgL3N5c3RlbS9saWIvbGliYW5kcm9pZF9ydW50aW1lLnNvIChhbmRyb2lkOjpOYXRpdmVNZXNzYWdlUXVldWU6OnBvbGxPbmNlKF9KTklFbnYqLCBpbnQpKzIyKQogICMwNCAgcGMgMDAwMWRlZjAgIC9zeXN0ZW0vbGliL2xpYmR2bS5zbyAoZHZtUGxhdGZvcm1JbnZva2UrMTEyKQogICMwNSAgcGMgMDAwNGNkYWQgIC9zeXN0ZW0vbGliL2xpYmR2bS5zbyAoZHZtQ2FsbEpOSU1ldGhvZCh1bnNpZ25lZCBpbnQgY29uc3QqLCBKVmFsdWUqLCBNZXRob2QgY29uc3QqLCBUaHJlYWQqKSs0OTIpCiAgIzA2ICBwYyAwMDAyNzMyMCAgL3N5c3RlbS9saWIvbGliZHZtLnNvCiAgIzA3ICBwYyAwMDAyYjM4YyAgL3N5c3RlbS9saWIvbGliZHZtLnNvIChkdm1JbnRlcnByZXQoVGhyZWFkKiwgTWV0aG9kIGNvbnN0KiwgSlZhbHVlKikrMTgwKQogICMwOCAgcGMgMDAwNWZiMTkgIC9zeXN0ZW0vbGliL2xpYmR2bS5zbyAoZHZtQ2FsbE1ldGhvZFYoVGhyZWFkKiwgTWV0aG9kIGNvbnN0KiwgT2JqZWN0KiwgYm9vbCwgSlZhbHVlKiwgc3RkOjpfX3ZhX2xpc3QpKzI3MikKICAjMDkgIHBjIDAwMDVmYjQzICAvc3lzdGVtL2xpYi9saWJkdm0uc28gKGR2bUNhbGxNZXRob2QoVGhyZWFkKiwgTWV0aG9kIGNvbnN0KiwgT2JqZWN0KiwgSlZhbHVlKiwgLi4uKSsyMCkKICAjMTAgIHBjIDAwMDU0NGExICAvc3lzdGVtL2xpYi9saWJkdm0uc28KICAjMTEgIHBjIDAwMDEyZDY0ICAvc3lzdGVtL2xpYi9saWJjLnNvIChfX3RocmVhZF9lbnRyeSs0OCkKICBhdCBhbmRyb2lkLm9zLk1lc3NhZ2VRdWV1ZS5uYXRpdmVQb2xsT25jZShOYXRpdmUgTWV0aG9kKQogIGF0IGFuZHJvaWQub3MuTWVzc2FnZVF1ZXVlLm5leHQoTWVzc2FnZVF1ZXVlLmphdmE6MTI1KQogIGF0IGFuZHJvaWQub3MuTG9vcGVyLmxvb3AoTG9vcGVyLmphdmE6MTQwKQogIGF0IGNvbS50ZW5jZW50LnNtdHQud2Via2l0LldlYlN5bmNNYW5hZ2VyLnJ1bigobnVsbCk6LTEpCiAgYXQgY29tLnRlbmNlbnQuc210dC53ZWJraXQuQ29va2llU3luY01hbmFnZXIucnVuKChudWxsKTotMSkKICBhdCBqYXZhLmxhbmcuVGhyZWFkLnJ1bihUaHJlYWQuamF2YTo4NTYpCgoiVGhyZWFkLTU4NDYiIHByaW89NSB0aWQ9MTkgTkFUSVZFCiAgfCBncm91cD0ibWFpbiIgc0NvdW50PTEgZHNDb3VudD0wIG9iaj0weDQxOTU2NzgwIHNlbGY9MHg2MTY2NTlmOAogIHwgc3lzVGlkPTYxNTggbmljZT0wIHNjaGVkPTAvMCBjZ3JwPWFwcHMgaGFuZGxlPTE2MzQwNTkwNjQKICB8IHNjaGVkc3RhdD0oIDY5NTM2ODkgMzI0MjU0MiAxOTggKSB1dG09MCBzdG09MCBjb3JlPTEKICAjMDAgIHBjIDAwMDBkYWUwICAvc3lzdGVtL2xpYi9saWJjLnNvIChlcG9sbF93YWl0KzEyKQogICMwMSAgcGMgMDAwMTQ3YTEgIC9zeXN0ZW0vbGliL2xpYnV0aWxzLnNvIChhbmRyb2lkOjpMb29wZXI6OnBvbGxJbm5lcihpbnQpKzk2KQogICMwMiAgcGMgMDAwMTRhMDkgIC9zeXN0ZW0vbGliL2xpYnV0aWxzLnNvIChhbmRyb2lkOjpMb29wZXI6OnBvbGxPbmNlKGludCwgaW50KiwgaW50Kiwgdm9pZCoqKSsxMDQpCiAgIzAzICBwYyAwMDA2MGY4NyAgL3N5c3RlbS9saWIvbGliYW5kcm9pZF9ydW50aW1lLnNvIChhbmRyb2lkOjpOYXRpdmVNZXNzYWdlUXVldWU6OnBvbGxPbmNlKF9KTklFbnYqLCBpbnQpKzIyKQogICMwNCAgcGMgMDAwMWRlZjAgIC9zeXN0ZW0vbGliL2xpYmR2bS5zbyAoZHZtUGxhdGZvcm1JbnZva2UrMTEyKQogICMwNSAgcGMgMDAwNGNkYWQgIC9zeXN0ZW0vbGliL2xpYmR2bS5zbyAoZHZtQ2FsbEpOSU1ldGhvZCh1bnNpZ25lZCBpbnQgY29uc3QqLCBKVmFsdWUqLCBNZXRob2QgY29uc3QqLCBUaHJlYWQqKSs0OTIpCiAgIzA2ICBwYyAwMDAyNzMyMCAgL3N5c3RlbS9saWIvbGliZHZtLnNvCiAgIzA3ICBwYyAwMDAyYjM4YyAgL3N5c3RlbS9saWIvbGliZHZtLnNvIChkdm1JbnRlcnByZXQoVGhyZWFkKiwgTWV0aG9kIGNvbnN0KiwgSlZhbHVlKikrMTgwKQogICMwOCAgcGMgMDAwNWZiMTkgIC9zeXN0ZW0vbGliL2xpYmR2bS5zbyAoZHZtQ2FsbE1ldGhvZFYoVGhyZWFkKiwgTWV0aG9kIGNvbnN0KiwgT2JqZWN0KiwgYm9vbCwgSlZhbHVlKiwgc3RkOjpfX3ZhX2xpc3QpKzI3MikKICAjMDkgIHBjIDAwMDVmYjQzICAvc3lzdGVtL2xpYi9saWJkdm0uc28gKGR2bUNhbGxNZXRob2QoVGhyZWFkKiwgTWV0aG9kIGNvbnN0KiwgT2JqZWN0KiwgSlZhbHVlKiwgLi4uKSsyMCkKICAjMTAgIHBjIDAwMDU0NGExICAvc3lzdGVtL2xpYi9saWJkdm0uc28KICAjMTEgIHBjIDAwMDEyZDY0ICAvc3lzdGVtL2xpYi9saWJjLnNvIChfX3RocmVhZF9lbnRyeSs0OCkKICBhdCBhbmRyb2lkLm9zLk1lc3NhZ2VRdWV1ZS5uYXRpdmVQb2xsT25jZShOYXRpdmUgTWV0aG9kKQogIGF0IGFuZHJvaWQub3MuTWVzc2FnZVF1ZXVlLm5leHQoTWVzc2FnZVF1ZXVlLmphdmE6MTI1KQogIGF0IGFuZHJvaWQub3MuTG9vcGVyLmxvb3AoTG9vcGVyLmphdmE6MTQwKQogIGF0IGNvbS50ZW5jZW50Lmtpbmdrb25nLmEucnVuKChudWxsKTotMSkKCiJHVUlEX1dPUktFUiIgcHJpbz01IHRpZD0xOCBOQVRJVkUKICB8IGdyb3VwPSJtYWluIiBzQ291bnQ9MSBkc0NvdW50PTAgb2JqPTB4NDE5M2JmNzggc2VsZj0weDYxNjJiNzY4CiAgfCBzeXNUaWQ9NjE1NSBuaWNlPTAgc2NoZWQ9MC8wIGNncnA9YXBwcyBoYW5kbGU9MTYzMzgxNjEwNAogIHwgc2NoZWRzdGF0PSggNDk4ODQxNDggNDM5NDcyMzIgMjA2ICkgdXRtPTMgc3RtPTEgY29yZT0xCiAgIzAwICBwYyAwMDAwZGFlMCAgL3N5c3RlbS9saWIvbGliYy5zbyAoZXBvbGxfd2FpdCsxMikKICAjMDEgIHBjIDAwMDE0N2ExICAvc3lzdGVtL2xpYi9saWJ1dGlscy5zbyAoYW5kcm9pZDo6TG9vcGVyOjpwb2xsSW5uZXIoaW50KSs5NikKICAjMDIgIHBjIDAwMDE0YTA5ICAvc3lzdGVtL2xpYi9saWJ1dGlscy5zbyAoYW5kcm9pZDo6TG9vcGVyOjpwb2xsT25jZShpbnQsIGludCosIGludCosIHZvaWQqKikrMTA0KQogICMwMyAgcGMgMDAwNjBmODcgIC9zeXN0ZW0vbGliL2xpYmFuZHJvaWRfcnVudGltZS5zbyAoYW5kcm9pZDo6TmF0aXZlTWVzc2FnZVF1ZXVlOjpwb2xsT25jZShfSk5JRW52KiwgaW50KSsyMikKICAjMDQgIHBjIDAwMDFkZWYwICAvc3lzdGVtL2xpYi9saWJkdm0uc28gKGR2bVBsYXRmb3JtSW52b2tlKzExMikKICAjMDUgIHBjIDAwMDRjZGFkICAvc3lzdGVtL2xpYi9saWJkdm0uc28gKGR2bUNhbGxKTklNZXRob2QodW5zaWduZWQgaW50IGNvbnN0KiwgSlZhbHVlKiwgTWV0aG9kIGNvbnN0KiwgVGhyZWFkKikrNDkyKQogICMwNiAgcGMgMDAwMjczMjAgIC9zeXN0ZW0vbGliL2xpYmR2bS5zbwogICMwNyAgcGMgMDAwMmIzOGMgIC9zeXN0ZW0vbGliL2xpYmR2bS5zbyAoZHZtSW50ZXJwcmV0KFRocmVhZCosIE1ldGhvZCBjb25zdCosIEpWYWx1ZSopKzE4MCkKICAjMDggIHBjIDAwMDVmYjE5ICAvc3lzdGVtL2xpYi9saWJkdm0uc28gKGR2bUNhbGxNZXRob2RWKFRocmVhZCosIE1ldGhvZCBjb25zdCosIE9iamVjdCosIGJvb2wsIEpWYWx1ZSosIHN0ZDo6X192YV9saXN0KSsyNzIpCiAgIzA5ICBwYyAwMDA1ZmI0MyAgL3N5c3RlbS9saWIvbGliZHZtLnNvIChkdm1DYWxsTWV0aG9kKFRocmVhZCosIE1ldGhvZCBjb25zdCosIE9iamVjdCosIEpWYWx1ZSosIC4uLikrMjApCiAgIzEwICBwYyAwMDA1NDRhMSAgL3N5c3RlbS9saWIvbGliZHZtLnNvCiAgIzExICBwYyAwMDAxMmQ2NCAgL3N5c3RlbS9saWIvbGliYy5zbyAoX190aHJlYWRfZW50cnkrNDgpCiAgYXQgYW5kcm9pZC5vcy5NZXNzYWdlUXVldWUubmF0aXZlUG9sbE9uY2UoTmF0aXZlIE1ldGhvZCkKICBhdCBhbmRyb2lkLm9zLk1lc3NhZ2VRdWV1ZS5uZXh0KE1lc3NhZ2VRdWV1ZS5qYXZhOjEyNSkKICBhdCBhbmRyb2lkLm9zLkxvb3Blci5sb29wKExvb3Blci5qYXZhOjE0MCkKICBhdCBhbmRyb2lkLm9zLkhhbmRsZXJUaHJlYWQucnVuKEhhbmRsZXJUaHJlYWQuamF2YTo2MCkKCiJXaWZpU1NJRERldGVjb3IiIHByaW89NSB0aWQ9MTcgTkFUSVZFCiAgfCBncm91cD0ibWFpbiIgc0NvdW50PTEgZHNDb3VudD0wIG9iaj0weDQxOTBiZjg4IHNlbGY9MHg2MTYxODQzMAogIHwgc3lzVGlkPTYxNTQgbmljZT0xMCBzY2hlZD0wLzAgY2dycD1hcHBzL2JnX25vbl9pbnRlcmFjdGl2ZSBoYW5kbGU9MTYzMzc4MDMyMAogIHwgc2NoZWRzdGF0PSggMTExNjcyMzEgMjg3NzUzMDYgMjkgKSB1dG09MCBzdG09MSBjb3JlPTEKICAjMDAgIHBjIDAwMDBkYWUwICAvc3lzdGVtL2xpYi9saWJjLnNvIChlcG9sbF93YWl0KzEyKQogICMwMSAgcGMgMDAwMTQ3YTEgIC9zeXN0ZW0vbGliL2xpYnV0aWxzLnNvIChhbmRyb2lkOjpMb29wZXI6OnBvbGxJbm5lcihpbnQpKzk2KQogICMwMiAgcGMgMDAwMTRhMDkgIC9zeXN0ZW0vbGliL2xpYnV0aWxzLnNvIChhbmRyb2lkOjpMb29wZXI6OnBvbGxPbmNlKGludCwgaW50KiwgaW50Kiwgdm9pZCoqKSsxMDQpCiAgIzAzICBwYyAwMDA2MGY4NyAgL3N5c3RlbS9saWIvbGliYW5kcm9pZF9ydW50aW1lLnNvIChhbmRyb2lkOjpOYXRpdmVNZXNzYWdlUXVldWU6OnBvbGxPbmNlKF9KTklFbnYqLCBpbnQpKzIyKQogICMwNCAgcGMgMDAwMWRlZjAgIC9zeXN0ZW0vbGliL2xpYmR2bS5zbyAoZHZtUGxhdGZvcm1JbnZva2UrMTEyKQogICMwNSAgcGMgMDAwNGNkYWQgIC9zeXN0ZW0vbGliL2xpYmR2bS5zbyAoZHZtQ2FsbEpOSU1ldGhvZCh1bnNpZ25lZCBpbnQgY29uc3QqLCBKVmFsdWUqLCBNZXRob2QgY29uc3QqLCBUaHJlYWQqKSs0OTIpCiAgIzA2ICBwYyAwMDAyNzMyMCAgL3N5c3RlbS9saWIvbGliZHZtLnNvCiAgIzA3ICBwYyAwMDAyYjM4YyAgL3N5c3RlbS9saWIvbGliZHZtLnNvIChkdm1JbnRlcnByZXQoVGhyZWFkKiwgTWV0aG9kIGNvbnN0KiwgSlZhbHVlKikrMTgwKQogICMwOCAgcGMgMDAwNWZiMTkgIC9zeXN0ZW0vbGliL2xpYmR2bS5zbyAoZHZtQ2FsbE1ldGhvZFYoVGhyZWFkKiwgTWV0aG9kIGNvbnN0KiwgT2JqZWN0KiwgYm9vbCwgSlZhbHVlKiwgc3RkOjpfX3ZhX2xpc3QpKzI3MikKICAjMDkgIHBjIDAwMDVmYjQzICAvc3lzdGVtL2xpYi9saWJkdm0uc28gKGR2bUNhbGxNZXRob2QoVGhyZWFkKiwgTWV0aG9kIGNvbnN0KiwgT2JqZWN0KiwgSlZhbHVlKiwgLi4uKSsyMCkKICAjMTAgIHBjIDAwMDU0NGExICAvc3lzdGVtL2xpYi9saWJkdm0uc28KICAjMTEgIHBjIDAwMDEyZDY0ICAvc3lzdGVtL2xpYi9saWJjLnNvIChfX3RocmVhZF9lbnRyeSs0OCkKICBhdCBhbmRyb2lkLm9zLk1lc3NhZ2VRdWV1ZS5uYXRpdmVQb2xsT25jZShOYXRpdmUgTWV0aG9kKQogIGF0IGFuZHJvaWQub3MuTWVzc2FnZVF1ZXVlLm5leHQoTWVzc2FnZVF1ZXVlLmphdmE6MTI1KQogIGF0IGFuZHJvaWQub3MuTG9vcGVyLmxvb3AoTG9vcGVyLmphdmE6MTQwKQogIGF0IGFuZHJvaWQub3MuSGFuZGxlclRocmVhZC5ydW4oSGFuZGxlclRocmVhZC5qYXZhOjYwKQoKIlRic0hhbmRsZXJUaHJlYWQiIHByaW89NSB0aWQ9MTUgTkFUSVZFCiAgfCBncm91cD0ibWFpbiIgc0NvdW50PTEgZHNDb3VudD0wIG9iaj0weDQxOGZjMzUwIHNlbGY9MHg1MWNhZDdhOAogIHwgc3lzVGlkPTYxNTEgbmljZT0wIHNjaGVkPTAvMCBjZ3JwPWFwcHMgaGFuZGxlPTEzNzIwMDY2MTYKICB8IHNjaGVkc3RhdD0oIDEyMjUzMDAxIDE2NjY2ODQ2IDEyMDkgKSB1dG09MSBzdG09MCBjb3JlPTAKICAjMDAgIHBjIDAwMDBkYWUwICAvc3lzdGVtL2xpYi9saWJjLnNvIChlcG9sbF93YWl0KzEyKQogICMwMSAgcGMgMDAwMTQ3YTEgIC9zeXN0ZW0vbGliL2xpYnV0aWxzLnNvIChhbmRyb2lkOjpMb29wZXI6OnBvbGxJbm5lcihpbnQpKzk2KQogICMwMiAgcGMgMDAwMTRhMDkgIC9zeXN0ZW0vbGliL2xpYnV0aWxzLnNvIChhbmRyb2lkOjpMb29wZXI6OnBvbGxPbmNlKGludCwgaW50KiwgaW50Kiwgdm9pZCoqKSsxMDQpCiAgIzAzICBwYyAwMDA2MGY4NyAgL3N5c3RlbS9saWIvbGliYW5kcm9pZF9ydW50aW1lLnNvIChhbmRyb2lkOjpOYXRpdmVNZXNzYWdlUXVldWU6OnBvbGxPbmNlKF9KTklFbnYqLCBpbnQpKzIyKQogICMwNCAgcGMgMDAwMWRlZjAgIC9zeXN0ZW0vbGliL2xpYmR2bS5zbyAoZHZtUGxhdGZvcm1JbnZva2UrMTEyKQogICMwNSAgcGMgMDAwNGNkYWQgIC9zeXN0ZW0vbGliL2xpYmR2bS5zbyAoZHZtQ2FsbEpOSU1ldGhvZCh1bnNpZ25lZCBpbnQgY29uc3QqLCBKVmFsdWUqLCBNZXRob2QgY29uc3QqLCBUaHJlYWQqKSs0OTIpCiAgIzA2ICBwYyAwMDAyNzMyMCAgL3N5c3RlbS9saWIvbGliZHZtLnNvCiAgIzA3ICBwYyAwMDAyYjM4YyAgL3N5c3RlbS9saWIvbGliZHZtLnNvIChkdm1JbnRlcnByZXQoVGhyZWFkKiwgTWV0aG9kIGNvbnN0KiwgSlZhbHVlKikrMTgwKQogICMwOCAgcGMgMDAwNWZiMTkgIC9zeXN0ZW0vbGliL2xpYmR2bS5zbyAoZHZtQ2FsbE1ldGhvZFYoVGhyZWFkKiwgTWV0aG9kIGNvbnN0KiwgT2JqZWN0KiwgYm9vbCwgSlZhbHVlKiwgc3RkOjpfX3ZhX2xpc3QpKzI3MikKICAjMDkgIHBjIDAwMDVmYjQzICAvc3lzdGVtL2xpYi9saWJkdm0uc28gKGR2bUNhbGxNZXRob2QoVGhyZWFkKiwgTWV0aG9kIGNvbnN0KiwgT2JqZWN0KiwgSlZhbHVlKiwgLi4uKSsyMCkKICAjMTAgIHBjIDAwMDU0NGExICAvc3lzdGVtL2xpYi9saWJkdm0uc28KICAjMTEgIHBjIDAwMDEyZDY0ICAvc3lzdGVtL2xpYi9saWJjLnNvIChfX3RocmVhZF9lbnRyeSs0OCkKICBhdCBhbmRyb2lkLm9zLk1lc3NhZ2VRdWV1ZS5uYXRpdmVQb2xsT25jZShOYXRpdmUgTWV0aG9kKQogIGF0IGFuZHJvaWQub3MuTWVzc2FnZVF1ZXVlLm5leHQoTWVzc2FnZVF1ZXVlLmphdmE6MTI1KQogIGF0IGFuZHJvaWQub3MuTG9vcGVyLmxvb3AoTG9vcGVyLmphdmE6MTQwKQogIGF0IGFuZHJvaWQub3MuSGFuZGxlclRocmVhZC5ydW4oSGFuZGxlclRocmVhZC5qYXZhOjYwKQoKIkJpbmRlcl8zIiBwcmlvPTUgdGlkPTEzIE5BVElWRQogIHwgZ3JvdXA9Im1haW4iIHNDb3VudD0xIGRzQ291bnQ9MCBvYmo9MHg0MTg4ZTBhOCBzZWxmPTB4NTFjN2MxNjAKICB8IHN5c1RpZD02MTQ2IG5pY2U9MCBzY2hlZD0wLzAgY2dycD1hcHBzIGhhbmRsZT0xMzcyMTg5NDgwCiAgfCBzY2hlZHN0YXQ9KCA2MjU0MDc4IDcyMDk4NDYgMzMgKSB1dG09MCBzdG09MCBjb3JlPTAKICAjMDAgIHBjIDAwMDBjYzAwICAvc3lzdGVtL2xpYi9saWJjLnNvIChfX2lvY3RsKzgpCiAgIzAxICBwYyAwMDAzYzJjOCAgL3N5c3RlbS9saWIvbGliYy5zbyAoaW9jdGwrMjgpCiAgIzAyICBwYyAwMDAxNmJjMSAgL3N5c3RlbS9saWIvbGliYmluZGVyLnNvIChhbmRyb2lkOjpJUENUaHJlYWRTdGF0ZTo6dGFsa1dpdGhEcml2ZXIoYm9vbCkrMTI0KQogICMwMyAgcGMgMDAwMTczYTcgIC9zeXN0ZW0vbGliL2xpYmJpbmRlci5zbyAoYW5kcm9pZDo6SVBDVGhyZWFkU3RhdGU6OmpvaW5UaHJlYWRQb29sKGJvb2wpKzE1NCkKICAjMDQgIHBjIDAwMDFiMjExICAvc3lzdGVtL2xpYi9saWJiaW5kZXIuc28KICAjMDUgIHBjIDAwMDEwZjU3ICAvc3lzdGVtL2xpYi9saWJ1dGlscy5zbyAoYW5kcm9pZDo6VGhyZWFkOjpfdGhyZWFkTG9vcCh2b2lkKikrMTE0KQogICMwNiAgcGMgMDAwNGEyY2YgIC9zeXN0ZW0vbGliL2xpYmFuZHJvaWRfcnVudGltZS5zbyAoYW5kcm9pZDo6QW5kcm9pZFJ1bnRpbWU6OmphdmFUaHJlYWRTaGVsbCh2b2lkKikrMTUwKQogICMwNyAgcGMgMDAwMTBhYmQgIC9zeXN0ZW0vbGliL2xpYnV0aWxzLnNvCiAgIzA4ICBwYyAwMDAxMmQ2NCAgL3N5c3RlbS9saWIvbGliYy5zbyAoX190aHJlYWRfZW50cnkrNDgpCiAgYXQgZGFsdmlrLnN5c3RlbS5OYXRpdmVTdGFydC5ydW4oTmF0aXZlIE1ldGhvZCkKCiJqYXZhLmxhbmcuUHJvY2Vzc01hbmFnZXIiIGRhZW1vbiBwcmlvPTUgdGlkPTEyIFdBSVQKICB8IGdyb3VwPSJtYWluIiBzQ291bnQ9MSBkc0NvdW50PTAgb2JqPTB4NDE4OGRlYjAgc2VsZj0weDUxY2E3YmU4CiAgfCBzeXNUaWQ9NjE0NCBuaWNlPTAgc2NoZWQ9MC8wIGNncnA9YXBwcyBoYW5kbGU9MTM3MTkyNDI2NAogIHwgc2NoZWRzdGF0PSggNzc0NjkzIDI2MDY5MyAxMiApIHV0bT0wIHN0bT0wIGNvcmU9MAogIGF0IGphdmEubGFuZy5PYmplY3Qud2FpdChOYXRpdmUgTWV0aG9kKQogIC0gd2FpdGluZyBvbiA8MHg0MTg4ZGQyOD4gKGEgamF2YS51dGlsLkhhc2hNYXApCiAgYXQgamF2YS5sYW5nLk9iamVjdC53YWl0KE9iamVjdC5qYXZhOjM2NCkKICBhdCBqYXZhLmxhbmcuUHJvY2Vzc01hbmFnZXIud2FpdEZvck1vcmVDaGlsZHJlbihQcm9jZXNzTWFuYWdlci5qYXZhOjE0MCkKICBhdCBqYXZhLmxhbmcuUHJvY2Vzc01hbmFnZXIud2F0Y2hDaGlsZHJlbihQcm9jZXNzTWFuYWdlci5qYXZhOjEwNSkKICBhdCBqYXZhLmxhbmcuUHJvY2Vzc01hbmFnZXIuYWNjZXNzJDAwMChQcm9jZXNzTWFuYWdlci5qYXZhOjQwKQogIGF0IGphdmEubGFuZy5Qcm9jZXNzTWFuYWdlciQxLnJ1bihQcm9jZXNzTWFuYWdlci5qYXZhOjU4KQoKIk1NX1RocmVhZF9Qb29sX0ZyZWVfSGFuZGxlc 色情 第 3 部分阅读 y5Qcm9jZXNzTWFuYWdlciQxLnJ1bihQcm9jZXNzTWFuYWdlci5qYXZhOjU4KQoKIk1NX1RocmVhZF9Qb29sX0ZyZWVfSGFuZGxlcl9UaHJlYWQjMiNUSFJFQURfUE9PTF9IQU5ETEVSIiBwcmlvPTUgdGlkPTExIE5BVElWRQogIHwgZ3JvdXA9Im1haW4iIHNDb3VudD0xIGRzQ291bnQ9MCBvYmo9MHg0MTg2MjYzMCBzZWxmPTB4NTFjN2IwMTAKICB8IHN5c1RpZD02MTQyIG5pY2U9MCBzY2hlZD0wLzAgY2dycD1hcHBzIGhhbmRsZT0xMzcyMDMzOTA0CiAgfCBzY2hlZHN0YXQ9KCA4NzEwODQ0IDcyNjI2MTggMzQgKSB1dG09MCBzdG09MCBjb3JlPTAKICAjMDAgIHBjIDAwMDBkYWUwICAvc3lzdGVtL2xpYi9saWJjLnNvIChlcG9sbF93YWl0KzEyKQogICMwMSAgcGMgMDAwMTQ3YTEgIC9zeXN0ZW0vbGliL2xpYnV0aWxzLnNvIChhbmRyb2lkOjpMb29wZXI6OnBvbGxJbm5lcihpbnQpKzk2KQogICMwMiAgcGMgMDAwMTRhMDkgIC9zeXN0ZW0vbGliL2xpYnV0aWxzLnNvIChhbmRyb2lkOjpMb29wZXI6OnBvbGxPbmNlKGludCwgaW50KiwgaW50Kiwgdm9pZCoqKSsxMDQpCiAgIzAzICBwYyAwMDA2MGY4NyAgL3N5c3RlbS9saWIvbGliYW5kcm9pZF9ydW50aW1lLnNvIChhbmRyb2lkOjpOYXRpdmVNZXNzYWdlUXVldWU6OnBvbGxPbmNlKF9KTklFbnYqLCBpbnQpKzIyKQogICMwNCAgcGMgMDAwMWRlZjAgIC9zeXN0ZW0vbGliL2xpYmR2bS5zbyAoZHZtUGxhdGZvcm1JbnZva2UrMTEyKQogICMwNSAgcGMgMDAwNGNkYWQgIC9zeXN0ZW0vbGliL2xpYmR2bS5zbyAoZHZtQ2FsbEpOSU1ldGhvZCh1bnNpZ25lZCBpbnQgY29uc3QqLCBKVmFsdWUqLCBNZXRob2QgY29uc3QqLCBUaHJlYWQqKSs0OTIpCiAgIzA2ICBwYyAwMDAyNzMyMCAgL3N5c3RlbS9saWIvbGliZHZtLnNvCiAgIzA3ICBwYyAwMDAyYjM4YyAgL3N5c3RlbS9saWIvbGliZHZtLnNvIChkdm1JbnRlcnByZXQoVGhyZWFkKiwgTWV0aG9kIGNvbnN0KiwgSlZhbHVlKikrMTgwKQogICMwOCAgcGMgMDAwNWZiMTkgIC9zeXN0ZW0vbGliL2xpYmR2bS5zbyAoZHZtQ2FsbE1ldGhvZFYoVGhyZWFkKiwgTWV0aG9kIGNvbnN0KiwgT2JqZWN0KiwgYm9vbCwgSlZhbHVlKiwgc3RkOjpfX3ZhX2xpc3QpKzI3MikKICAjMDkgIHBjIDAwMDVmYjQzICAvc3lzdGVtL2xpYi9saWJkdm0uc28gKGR2bUNhbGxNZXRob2QoVGhyZWFkKiwgTWV0aG9kIGNvbnN0KiwgT2JqZWN0KiwgSlZhbHVlKiwgLi4uKSsyMCkKICAjMTAgIHBjIDAwMDU0NGExICAvc3lzdGVtL2xpYi9saWJkdm0uc28KICAjMTEgIHBjIDAwMDEyZDY0ICAvc3lzdGVtL2xpYi9saWJjLnNvIChfX3RocmVhZF9lbnRyeSs0OCkKICBhdCBhbmRyb2lkLm9zLk1lc3NhZ2VRdWV1ZS5uYXRpdmVQb2xsT25jZShOYXRpdmUgTWV0aG9kKQogIGF0IGFuZHJvaWQub3MuTWVzc2FnZVF1ZXVlLm5leHQoTWVzc2FnZVF1ZXVlLmphdmE6MTI1KQogIGF0IGFuZHJvaWQub3MuTG9vcGVyLmxvb3AoTG9vcGVyLmphdmE6MTQwKQogIGF0IGFuZHJvaWQub3MuSGFuZGxlclRocmVhZC5ydW4oSGFuZGxlclRocmVhZC5qYXZhOjYwKQogIGF0IGNvbS50ZW5jZW50Lm1tLnNkay5oLmEkYS5ydW4oU291cmNlRmlsZTo3MSkKCiJNTV9UaHJlYWRfUG9vbF9GcmVlX0hhbmRsZXJfVGhyZWFkIzEjU1ZHIFJlc291cmNlIFJlcG9ydCBAamFja3Nnb25nIiBwcmlvPTUgdGlkPTEwIE5BVElWRQogIHwgZ3JvdXA9Im1haW4iIHNDb3VudD0xIGRzQ291bnQ9MCBvYmo9MHg0MTg0MjBmMCBzZWxmPTB4NGVlOGIxZDAKICB8IHN5c1RpZD02MTQwIG5pY2U9MCBzY2hlZD0wLzAgY2dycD1hcHBzIGhhbmRsZT0xMzMzNzM1OTIwCiAgfCBzY2hlZHN0YXQ9KCA3NzY1MzA4IDY1NzY5MiA2ICkgdXRtPTAgc3RtPTAgY29yZT0xCiAgIzAwICBwYyAwMDAwZGFlMCAgL3N5c3RlbS9saWIvbGliYy5zbyAoZXBvbGxfd2FpdCsxMikKICAjMDEgIHBjIDAwMDE0N2ExICAvc3lzdGVtL2xpYi9saWJ1dGlscy5zbyAoYW5kcm9pZDo6TG9vcGVyOjpwb2xsSW5uZXIoaW50KSs5NikKICAjMDIgIHBjIDAwMDE0YTA5ICAvc3lzdGVtL2xpYi9saWJ1dGlscy5zbyAoYW5kcm9pZDo6TG9vcGVyOjpwb2xsT25jZShpbnQsIGludCosIGludCosIHZvaWQqKikrMTA0KQogICMwMyAgcGMgMDAwNjBmODcgIC9zeXN0ZW0vbGliL2xpYmFuZHJvaWRfcnVudGltZS5zbyAoYW5kcm9pZDo6TmF0aXZlTWVzc2FnZVF1ZXVlOjpwb2xsT25jZShfSk5JRW52KiwgaW50KSsyMikKICAjMDQgIHBjIDAwMDFkZWYwICAvc3lzdGVtL2xpYi9saWJkdm0uc28gKGR2bVBsYXRmb3JtSW52b2tlKzExMikKICAjMDUgIHBjIDAwMDRjZGFkICAvc3lzdGVtL2xpYi9saWJkdm0uc28gKGR2bUNhbGxKTklNZXRob2QodW5zaWduZWQgaW50IGNvbnN0KiwgSlZhbHVlKiwgTWV0aG9kIGNvbnN0KiwgVGhyZWFkKikrNDkyKQogICMwNiAgcGMgMDAwMjczMjAgIC9zeXN0ZW0vbGliL2xpYmR2bS5zbwogICMwNyAgcGMgMDAwMmIzOGMgIC9zeXN0ZW0vbGliL2xpYmR2bS5zbyAoZHZtSW50ZXJwcmV0KFRocmVhZCosIE1ldGhvZCBjb25zdCosIEpWYWx1ZSopKzE4MCkKICAjMDggIHBjIDAwMDVmYjE5ICAvc3lzdGVtL2xpYi9saWJkdm0uc28gKGR2bUNhbGxNZXRob2RWKFRocmVhZCosIE1ldGhvZCBjb25zdCosIE9iamVjdCosIGJvb2wsIEpWYWx1ZSosIHN0ZDo6X192YV9saXN0KSsyNzIpCiAgIzA5ICBwYyAwMDA1ZmI0MyAgL3N5c3RlbS9saWIvbGliZHZtLnNvIChkdm1DYWxsTWV0aG9kKFRocmVhZCosIE1ldGhvZCBjb25zdCosIE9iamVjdCosIEpWYWx1ZSosIC4uLikrMjApCiAgIzEwICBwYyAwMDA1NDRhMSAgL3N5c3RlbS9saWIvbGliZHZtLnNvCiAgIzExICBwYyAwMDAxMmQ2NCAgL3N5c3RlbS9saWIvbGliYy5zbyAoX190aHJlYWRfZW50cnkrNDgpCiAgYXQgYW5kcm9pZC5vcy5NZXNzYWdlUXVldWUubmF0aXZlUG9sbE9uY2UoTmF0aXZlIE1ldGhvZCkKICBhdCBhbmRyb2lkLm9zLk1lc3NhZ2VRdWV1ZS5uZXh0KE1lc3NhZ2VRdWV1ZS5qYXZhOjEyNSkKICBhdCBhbmRyb2lkLm9zLkxvb3Blci5sb29wKExvb3Blci5qYXZhOjE0MCkKICBhdCBhbmRyb2lkLm9zLkhhbmRsZXJUaHJlYWQucnVuKEhhbmRsZXJUaHJlYWQuamF2YTo2MCkKICBhdCBjb20udGVuY2VudC5tbS5zZGsuaC5hJGEucnVuKFNvdXJjZUZpbGU6NzEpCgoiQmluZGVyXzIiIHByaW89NSB0aWQ9OSBOQVRJVkUKICB8IGdyb3VwPSJtYWluIiBzQ291bnQ9MSBkc0NvdW50PTAgb2JqPTB4NDE1ZTZiNDAgc2VsZj0weDUxY2I5MjY4CiAgfCBzeXNUaWQ9NjEzMiBuaWNlPTAgc2NoZWQ9MC8wIGNncnA9YXBwcyBoYW5kbGU9MTMzMzc0MjQ3MgogIHwgc2NoZWRzdGF0PSggMjM4MjkyMyA3MTY4OTk5IDkgKSB1dG09MCBzdG09MCBjb3JlPTEKICAjMDAgIHBjIDAwMDBjYzAwICAvc3lzdGVtL2xpYi9saWJjLnNvIChfX2lvY3RsKzgpCiAgIzAxICBwYyAwMDAzYzJjOCAgL3N5c3RlbS9saWIvbGliYy5zbyAoaW9jdGwrMjgpCiAgIzAyICBwYyAwMDAxNmJjMSAgL3N5c3RlbS9saWIvbGliYmluZGVyLnNvIChhbmRyb2lkOjpJUENUaHJlYWRTdGF0ZTo6dGFsa1dpdGhEcml2ZXIoYm9vbCkrMTI0KQogICMwMyAgcGMgMDAwMTczYTcgIC9zeXN0ZW0vbGliL2xpYmJpbmRlci5zbyAoYW5kcm9pZDo6SVBDVGhyZWFkU3RhdGU6OmpvaW5UaHJlYWRQb29sKGJvb2wpKzE1NCkKICAjMDQgIHBjIDAwMDFiMjExICAvc3lzdGVtL2xpYi9saWJiaW5kZXIuc28KICAjMDUgIHBjIDAwMDEwZjU3ICAvc3lzdGVtL2xpYi9saWJ1dGlscy5zbyAoYW5kcm9pZDo6VGhyZWFkOjpfdGhyZWFkTG9vcCh2b2lkKikrMTE0KQogICMwNiAgcGMgMDAwNGEyY2YgIC9zeXN0ZW0vbGliL2xpYmFuZHJvaWRfcnVudGltZS5zbyAoYW5kcm9pZDo6QW5kcm9pZFJ1bnRpbWU6OmphdmFUaHJlYWRTaGVsbCh2b2lkKikrMTUwKQogICMwNyAgcGMgMDAwMTBhYmQgIC9zeXN0ZW0vbGliL2xpYnV0aWxzLnNvCiAgIzA4ICBwYyAwMDAxMmQ2NCAgL3N5c3RlbS9saWIvbGliYy5zbyAoX190aHJlYWRfZW50cnkrNDgpCiAgYXQgZGFsdmlrLnN5c3RlbS5OYXRpdmVTdGFydC5ydW4oTmF0aXZlIE1ldGhvZCkKCiJCaW5kZXJfMSIgcHJpbz01IHRpZD04IE5BVElWRQogIHwgZ3JvdXA9Im1haW4iIHNDb3VudD0xIGRzQ291bnQ9MCBvYmo9MHg0MTVlNjlhMCBzZWxmPTB4NTFjNzdhMzAKICB8IHN5c1RpZD02MTMxIG5pY2U9MCBzY2hlZD0wLzAgY2dycD1hcHBzIGhhbmRsZT0xMzcxOTczMzYwCiAgfCBzY2hlZHN0YXQ9KCA1MjgyNjE2IDY2MDIyMzEgMjcgKSB1dG09MCBzdG09MCBjb3JlPTEKICAjMDAgIHBjIDAwMDBjYzAwICAvc3lzdGVtL2xpYi9saWJjLnNvIChfX2lvY3RsKzgpCiAgIzAxICBwYyAwMDAzYzJjOCAgL3N5c3RlbS9saWIvbGliYy5zbyAoaW9jdGwrMjgpCiAgIzAyICBwYyAwMDAxNmJjMSAgL3N5c3RlbS9saWIvbGliYmluZGVyLnNvIChhbmRyb2lkOjpJUENUaHJlYWRTdGF0ZTo6dGFsa1dpdGhEcml2ZXIoYm9vbCkrMTI0KQogICMwMyAgcGMgMDAwMTczYTcgIC9zeXN0ZW0vbGliL2xpYmJpbmRlci5zbyAoYW5kcm9pZDo6SVBDVGhyZWFkU3RhdGU6OmpvaW5UaHJlYWRQb29sKGJvb2wpKzE1NCkKICAjMDQgIHBjIDAwMDFiMjExICAvc3lzdGVtL2xpYi9saWJiaW5kZXIuc28KICAjMDUgIHBjIDAwMDEwZjU3ICAvc3lzdGVtL2xpYi9saWJ1dGlscy5zbyAoYW5kcm9pZDo6VGhyZWFkOjpfdGhyZWFkTG9vcCh2b2lkKikrMTE0KQogICMwNiAgcGMgMDAwNGEyY2YgIC9zeXN0ZW0vbGliL2xpYmFuZHJvaWRfcnVudGltZS5zbyAoYW5kcm9pZDo6QW5kcm9pZFJ1bnRpbWU6OmphdmFUaHJlYWRTaGVsbCh2b2lkKikrMTUwKQogICMwNyAgcGMgMDAwMTBhYmQgIC9zeXN0ZW0vbGliL2xpYnV0aWxzLnNvCiAgIzA4ICBwYyAwMDAxMmQ2NCAgL3N5c3RlbS9saWIvbGliYy5zbyAoX190aHJlYWRfZW50cnkrNDgpCiAgYXQgZGFsdmlrLnN5c3RlbS5OYXRpdmVTdGFydC5ydW4oTmF0aXZlIE1ldGhvZCkKCiJGaW5hbGl6ZXJXYXRjaGRvZ0RhZW1vbiIgZGFlbW9uIHByaW89NSB0aWQ9NyBUSU1FRF9XQUlUCiAgfCBncm91cD0ic3lzdGVtIiBzQ291bnQ9MSBkc0NvdW50PTAgb2JqPTB4NDE1ZTM4YTAgc2VsZj0weDUxYzc4ZGQwCiAgfCBzeXNUaWQ9NjEzMCBuaWNlPTAgc2NoZWQ9MC8wIGNncnA9YXBwcyBoYW5kbGU9MTM3MTk0NzY0MAogIHwgc2NoZWRzdGF0PSggMzc2MjI5IDYzNzA2OTIgMTAgKSB1dG09MCBzdG09MCBjb3JlPTEKICBhdCBqYXZhLmxhbmcuVk1UaHJlYWQuc2xlZXAoTmF0aXZlIE1ldGhvZCkKICBhdCBqYXZhLmxhbmcuVGhyZWFkLnNsZWVwKFRocmVhZC5qYXZhOjEwMzEpCiAgYXQgamF2YS5sYW5nLlRocmVhZC5zbGVlcChUaHJlYWQuamF2YToxMDEzKQogIGF0IGphdmEubGFuZy5EYWVtb25zJEZpbmFsaXplcldhdGNoZG9nRGFlbW9uLnNsZWVwRm9yKERhZW1vbnMuamF2YToyNTMpCiAgYXQgamF2YS5sYW5nLkRhZW1vbnMkRmluYWxpemVyV2F0Y2hkb2dEYWVtb24ud2FpdEZvckZpbmFsaXphdGlvbihEYWVtb25zLmphdmE6MjYzKQogIGF0IGphdmEubGFuZy5EYWVtb25zJEZpbmFsaXplcldhdGNoZG9nRGFlbW9uLnJ1bihEYWVtb25zLmphdmE6MjE3KQogIGF0IGphdmEubGFuZy5UaHJlYWQucnVuKFRocmVhZC5qYXZhOjg1NikKCiJGaW5hbGl6ZXJEYWVtb24iIGRhZW1vbiBwcmlvPTUgdGlkPTYgV0FJVAogIHwgZ3JvdXA9InN5c3RlbSIgc0NvdW50PTEgZHNDb3VudD0wIG9iaj0weDQxNWUzNzQ4IHNlbGY9MHg1MWM3YzdlOAogIHwgc3lzVGlkPTYxMjkgbmljZT0wIHNjaGVkPTAvMCBjZ3JwPWFwcHMgaGFuZGxlPTEzNzIwOTM4MjQKICB8IHNjaGVkc3RhdD0oIDUxNDk5NTY1IDQzNTg1MzU4IDg1OSApIHV0bT00IHN0bT0xIGNvcmU9MAogIGF0IGphdmEubGFuZy5PYmplY3Qud2FpdChOYXRpdmUgTWV0aG9kKQogIC0gd2FpdGluZyBvbiA8MHg0MGRiMTVlOD4gKGEgamF2YS5sYW5nLnJlZi5SZWZlcmVuY2VRdWV1ZSkKICBhdCBqYXZhLmxhbmcuT2JqZWN0LndhaXQoT2JqZWN0LmphdmE6NDAxKQogIGF0IGphdmEubGFuZy5yZWYuUmVmZXJlbmNlUXVldWUucmVtb3ZlKFJlZmVyZW5jZVF1ZXVlLmphdmE6MTAyKQogIGF0IGphdmEubGFuZy5yZWYuUmVmZXJlbmNlUXVldWUucmVtb3ZlKFJlZmVyZW5jZVF1ZXVlLmphdmE6NzMpCiAgYXQgamF2YS5sYW5nLkRhZW1vbnMkRmluYWxpemVyRGFlbW9uLnJ1bihEYWVtb25zLmphdmE6MTc1KQogIGF0IGphdmEubGFuZy5UaHJlYWQucnVuKFRocmVhZC5qYXZhOjg1NikKCiJSZWZlcmVuY2VRdWV1ZURhZW1vbiIgZGFlbW9uIHByaW89NSB0aWQ9NSBXQUlUCiAgfCBncm91cD0ic3lzdGVtIiBzQ291bnQ9MSBkc0NvdW50PTAgb2JqPTB4NDE1ZTM1ZTAgc2VsZj0weDUxYzY3MDEwCiAgfCBzeXNUaWQ9NjEyOCBuaWNlPTAgc2NoZWQ9MC8wIGNncnA9YXBwcyBoYW5kbGU9MTM3MjA5MzIwMAogIHwgc2NoZWRzdGF0PSggMjc5MzE1NSAyNzgzOTIzIDQ1ICkgdXRtPTAgc3RtPTAgY29yZT0xCiAgYXQgamF2YS5sYW5nLk9iamVjdC53YWl0KE5hdGl2ZSBNZXRob2QpCiAgLSB3YWl0aW5nIG9uIDwweDQwZGIxNTEwPiAKICBhdCBqYXZhLmxhbmcuT2JqZWN0LndhaXQoT2JqZWN0LmphdmE6MzY0KQogIGF0IGphdmEubGFuZy5EYWVtb25zJFJlZmVyZW5jZVF1ZXVlRGFlbW9uLnJ1bihEYWVtb25zLmphdmE6MTM1KQogIGF0IGphdmEubGFuZy5UaHJlYWQucnVuKFRocmVhZC5qYXZhOjg1NikKCiJDb21waWxlciIgZGFlbW9uIHByaW89NSB0aWQ9NCBWTVdBSVQKICB8IGdyb3VwPSJzeXN0ZW0iIHNDb3VudD0xIGRzQ291bnQ9MCBvYmo9MHg0MTVlMzRmMCBzZWxmPTB4NTFjNzY1ZjgKICB8IHN5c1RpZD02MTI3IG5pY2U9MCBzY2hlZD0wLzAgY2dycD1hcHBzIGhhbmRsZT0xMzcxOTc3MzUyCiAgfCBzY2hlZHN0YXQ9KCAyMDgwNzg3NzEgMjMzNTkzOTI2IDY1NzYgKSB1dG09MTEgc3RtPTkgY29yZT0xCiAgIzAwICBwYyAwMDAwZGQxMCAgL3N5c3RlbS9saWIvbGliYy5zbyAoX19mdXRleF9zeXNjYWxsMys4KQogICMwMSAgcGMgMDAwMTJkYTggIC9zeXN0ZW0vbGliL2xpYmMuc28gKF9fcHRocmVhZF9jb25kX3RpbWVkd2FpdF9yZWxhdGl2ZSs0OCkKICAjMDIgIHBjIDAwMDEyZTA0ICAvc3lzdGVtL2xpYi9saWJjLnNvIChfX3B0aHJlYWRfY29uZF90aW1lZHdhaXQrNjApCiAgIzAzICBwYyAwMDA2ZmYyMSAgL3N5c3RlbS9saWIvbGliZHZtLnNvCiAgIzA0ICBwYyAwMDA1M2MxYiAgL3N5c3RlbS9saWIvbGliZHZtLnNvCiAgIzA1ICBwYyAwMDAxMmQ2NCAgL3N5c3RlbS9saWIvbGliYy5zbyAoX190aHJlYWRfZW50cnkrNDgpCiAgYXQgZGFsdmlrLnN5c3RlbS5OYXRpdmVTdGFydC5ydW4oTmF0aXZlIE1ldGhvZCkKCiJTaWduYWwgQ2F0Y2hlciIgZGFlbW9uIHByaW89NSB0aWQ9MyBSVU5OQUJMRQogIHwgZ3JvdXA9InN5c3RlbSIgc0NvdW50PTAgZHNDb3VudD0wIG9iaj0weDQxNWUzM2Y4IHNlbGY9MHg1MWM3MjlhMAogIHwgc3lzVGlkPTYxMjYgbmljZT0tOCBzY2hlZD0wLzAgY2dycD1hcHBzIGhhbmRsZT0xMzYyODU5NjcyCiAgfCBzY2hlZHN0YXQ9KCA3MjA0OTIyNCA2Mjk2NzU0NSAxNjk3ICkgdXRtPTAgc3RtPTcgY29yZT0wCiAgYXQgZGFsdmlrLnN5c3RlbS5OYXRpdmVTdGFydC5ydW4oTmF0aXZlIE1ldGhvZCkKCiJHQyIgZGFlbW9uIHByaW89NSB0aWQ9MiBWTVdBSVQKICB8IGdyb3VwPSJzeXN0ZW0iIHNDb3VudD0xIGRzQ291bnQ9MCBvYmo9MHg0MTVlMzMxOCBzZWxmPTB4NGVlOTM1ZDAKICB8IHN5c1RpZD02MTI1IG5pY2U9MCBzY2hlZD0wLzAgY2dycD1hcHBzIGhhbmRsZT0xMjkzOTQ2NDE2CiAgfCBzY2hlZHN0YXQ9KCAxNDM2Nzk5ODYgODgzOTQwMTQgMjU2OCApIHV0bT0xMSBzdG09MyBjb3JlPTEKICAjMDAgIHBjIDAwMDBkZDEwICAvc3lzdGVtL2xpYi9saWJjLnNvIChfX2Z1dGV4X3N5c2NhbGwzKzgpCiAgIzAxICBwYyAwMDAxMmRhOCAgL3N5c3RlbS9saWIvbGliYy5zbyAoX19wdGhyZWFkX2NvbmRfdGltZWR3YWl0X3JlbGF0aXZlKzQ4KQogICMwMiAgcGMgMDAwMTJlMDQgIC9zeXN0ZW0vbGliL2xpYmMuc28gKF9fcHRocmVhZF9jb25kX3RpbWVkd2FpdCs2MCkKICAjMDMgIHBjIDAwMDZlZDMxICAvc3lzdGVtL2xpYi9saWJkdm0uc28KICAjMDQgIHBjIDAwMDUzYzFiICAvc3lzdGVtL2xpYi9saWJkdm0uc28KICAjMDUgIHBjIDAwMDEyZDY0ICAvc3lzdGVtL2xpYi9saWJjLnNvIChfX3RocmVhZF9lbnRyeSs0OCkKICBhdCBkYWx2aWsuc3lzdGVtLk5hdGl2ZVN0YXJ0LnJ1bihOYXRpdmUgTWV0aG9kKQoKTkFUSVZFIFRIUkVBRFM6CiJlbmNlbnQubW06dG9vbHMiIHN5c1RpZD02MTQ4IG5pY2U9MCBzY2hlZD0wLzAgY2dycD1hcHBzCiAgfCBzY2hlZHN0YXQ9KCA5OTY5MyA2MzgyMzA3IDEgKSB1dG09MCBzdG09MCBjb3JlPTAKCiJlbmNlbnQubW06dG9vbHMiIHN5c1RpZD02MTQ5IG5pY2U9MCBzY2hlZD0wLzAgY2dycD1hcHBzCiAgfCBzY2hlZHN0YXQ9KCA0NTc3MCAxNzcwMDE1MyAxICkgdXRtPTAgc3RtPTAgY29yZT0wCgoiVGV4dHVyZXNHZW5lcmF0IiBzeXNUaWQ9NjE2MyBuaWNlPTAgc2NoZWQ9MC8wIGNncnA9YXBwcwogIHwgc2NoZWRzdGF0PSggMzE4NjkyIDAgMiApIHV0bT0wIHN0bT0wIGNvcmU9MQoKIlNpZ25hbFNlbmRlciIgc3lzVGlkPTYxNjUgbmljZT0wIHNjaGVkPTAvMCBjZ3JwPWFwcHMKICB8IHNjaGVkc3RhdD0oIDgyMDAwIDAgMiApIHV0bT0wIHN0bT0wIGNvcmU9MQoK T923248;android…16_637732661_armeabi…v7a;anr;time_1451994318;error_I2NsaWVudC52ZXJzaW9uPTYzNzczMjY2MQojY2xpZW50LnZlcmhpc3Rvcnk9MjYwMjA1MzU7MjYwMzA1MzI7MjYwMzA3MzM7MjYwMzA3MzU7CiNhY2NpbmZvLnJldmlzaW9uPTljODFhNjE3NGVmNmMyNzFjMDg0NTMxNjY2M2ViZTFlNzE3NGM0MDAKI2FjY2luZm8udWluPTk3MDc2MjQwOAojYWNjaW5mby5kZXY9QWY4OTE0ZjE1MjIyYzY2MwojYWNjaW5mby5ydW50aW1lPTk4NDcyMzY5KGNvbS50ZW5jZW50Lm1tOnB1c2gpCiNhY2NpbmZvLmJ1aWxkPTExLzE2LzIwMTUgMDU6NTYgUE06YW1tZGV2OjAKI3Ficndvc2VyLmNvcmV2ZXI9MjU0NjkKI3Ficm93c2VyLnZlcj0yNTQzMwojYWNjaW5mby5lbnY9YjpNTUNyYXNoUmVwb3J0ZXJfcGFyc2VBTlJUcmFjZTp1bmtub3cKI2FjY2luZm8uZGF0YT02NE1CIC9kYXRhOjQwOTY6MzQzMTM5OTo5MDQxNzcgL3N0b3JhZ2Uvc2RjYXJkMDo0MDk2OjM0MzEzOTk6OTA0MTc3CiNhY2NpbmZvLmNyYXNoVGltZT0yMDE2LTAxLTA1IDE5OjQ0OjM1LjY0NiswODAwCiNjcmFzaENvbnRlbnQ9CioqKioqKiogQU5SIFRyYWNlICoqKioqKioKQU5SIGluIGNvbS50ZW5jZW50Lm1tOnRvb2xzIChjb20udGVuY2VudC5tbS8ucGx1Z2luLndlYnZpZXcudWkudG9vbHMuV2ViVmlld1VJKQpSZWFzb246IGtleURpc3BhdGNoaW5nVGltZWRPdXQKTG9hZDogMTUuMTYgLyAxMS42IC8gOC43NQpDUFUgdXNhZ2UgZnJvbSAxMjI2MG1zIHRvIDE4NTM4bXMgbGF0ZXI6CiAgNDElIDU3L21tY3FkLzA6IDAlIHVzZXIgKyA0MSUga2VybmVsCiAgNDAlIDM3MC9zeXN0ZW1fc2VydmVyOiAzNSUgdXNlciArIDUuMiUga2VybmVsIC8gZmF1bHRzOiA4MjUgbWlub3IgNyBtYWpvcgogIDM3JSAxNDc3MS9jb20udGVuY2VudC5tbTogMzAlIHVzZXIgKyA3LjYlIGtlcm5lbCAvIGZhdWx0czogMzYzMCBtaW5vciAxNyBtYWpvcgogIDUuNCUgMTMwNTkvY29tLmFuZHJvaWQuanJkZm90YTogMC45JSB1c2VyICsgNC40JSBrZXJuZWwKICA1LjIlIDYyODUvY29tLnRlbmNlbnQubW06c2FuZGJveDogNC42JSB1c2VyICsgMC42JSBrZXJuZWwgLyBmYXVsdHM6IDE1MDEgbWlub3IgNzQgbWFqb3IKICAzLjglIDU5NjAvb3JnLmNvY29zMmQuZmlzaGluZ2pveTMucWlodTogMC4xJSB1c2VyICsgMy42JSBrZXJuZWwgLyBmYXVsdHM6IDMgbWlub3IKICAzLjUlIDU5NjEvb3JnLmNvY29zMmQuZmlzaGluZ2pveTMucWlodTogMCUgdXNlciArIDMuNSUga2VybmVsIC8gZmF1bHRzOiAzIG1pbm9yCiAgMS41JSAxNDEvc2RjYXJkOiAwJSB1c2VyICsgMS41JSBrZXJuZWwgLyBmYXVsdHM6IDEyIG1pbm9yCiAgMS40JSAxOS9rc3dhcGQwOiAwJSB1c2VyICsgMS40JSBrZXJuZWwKICAxLjQlIDY2OC9jb20ucWlob28zNjAubW9iaWxlc2FmZTpHdWFyZFNlcnZpY2U6IDAuOSUgdXNlciArIDAuNCUga2VybmVsIC8gZmF1bHRzOiA0MDggbWlub3IgOCBtYWpvcgogIDEuMiUgNDM4OC9jb20ueW91a3UucGhvbmU6ZG93bmxvYWQ6IDAuNyUgdXNlciArIDAuNCUga2VybmVsIC8gZmF1bHRzOiAxMDQgbWlub3IgMSBtYWpvcgogIDEuMiUgNTU1NS90eF90aHJlYWQ6IDAlIHVzZXIgKyAxLjIlIGtlcm5lbAogIDAuMiUgNjQ1L2FuZHJvaWQucHJvY2Vzcy5hY29yZTogMC4xJSB1c2VyICsgMCUga2VybmVsIC8gZmF1bHRzOiAyMjMgbWlub3IgNCBtYWpvcgogIDAuNyUgNTg3NS9vcmcuY29jb3MyZC5maXNoaW5nam95My5xaWh1OiAwJSB1c2VyICsgMC43JSBrZXJuZWwgLyBmYXVsdHM6IDEzIG1pbm9yCiAgMC42JSA4Mi9qYmQyL21tY2JsazBwNy06IDAlIHVzZXIgKyAwLjYlIGtlcm5lbAogIDAuNiUgNjEyMS9jb20udGVuY2VudC5tbTp0b29sczogMC40JSB1c2VyICsgMC4xJSBrZXJuZWwgLyBmYXVsdHM6IDQyNiBtaW5vciA1IG1ham9yCiAgMC42JSAyMDg4NC9jb20udGVuY2VudC5tbTpwdXNoOiAwLjElIHVzZXIgKyAwLjQlIGtlcm5lbCAvIGZhdWx0czogMTY4IG1pbm9yIDIgbWFqb3IKICAwLjQlIDYxOTEva3dvcmtlci8wOjE6IDAlIHVzZXIgKyAwLjQlIGtlcm5lbAogIDAuMyUgNDUwL2NvbS5hbmRyb2lkLnN5c3RlbXVpOiAwLjMlIHVzZXIgKyAwJSBrZXJuZWwgLyBmYXVsdHM6IDI2NSBtaW5vciAxMSBtYWpvcgogIDAuMyUgNDk5L2NvbS5zb2h1LmlucHV0bWV0aG9kLnNvZ291OiAwLjMlIHVzZXIgKyAwJSBrZXJuZWwgLyBmYXVsdHM6IDYyIG1pbm9yCiAgMC4zJSA1MTkvY29tLmFuZHJvaWQucGhvbmU6IDAuMSUgdXNlciArIDAuMSUga2VybmVsIC8gZmF1bHRzOiA4MSBtaW5vcgogIDAuMyUgNTU1NC9rc2Rpb2lycWQvbW1jMjogMCUgdXNlciArIDAuMyUga2VybmVsCiAgMC4zJSA1NTU5L2NvbS5yeXRvbmcuYmFua3BzOiAwJSB1c2VyICsgMC4zJSBrZXJuZWwgLyBmYXVsdHM6IDQ3IG1pbm9yCiAgMC4zJSA4ODE1L2NvbS5rdWdvdS5hbmRyb2lkLnN1cHBvcnQ6IDAlIHVzZXIgKyAwLjMlIGtlcm5lbCAvIGZhdWx0czogMTMgbWlub3IKICAwJSAzL2tzb2Z0aXJxZC8wOiAwJSB1c2VyICsgMCUga2VybmVsCiAgMC4xJSA1NTUwL2t3b3JrZXIvMToyOiAwJSB1c2VyICsgMC4xJSBrZXJuZWwKICAwJSA1NTU3L3dwYV9zdXBwbGljYW50OiAwJSB1c2VyICsgMCUga2VybmVsIC8gZmF1bHRzOiA2NSBtaW5vciAyIG1ham9yCiAgMC4xJSAxMTQxMC9jb20udGVuY2VudC5xcWxpdmU6c2VydmljZXM6IDAlIHVzZXIgKyAwLjElIGtlcm5lbCAvIGZhdWx0czogMTEgbWlub3IKICAwLjElIDExNDYxL2NvbS50ZW5jZW50LnFxbGl2ZTp0bWFzc2lzdGFudHNkazogMC4xJSB1c2VyICsgMCUga2VybmVsIC8gZmF1bHRzOiAxMSBtaW5vcgogIDAlIDEyMTU5L2NvbS50ZW5jZW50Lm10dDogMCUgdXNlciArIDAlIGtlcm5lbCAvIGZhdWx0czogMTczIG1pbm9yIDUgbWFqb3IKOTglIFRPVEFMOiA0NCUgdXNlciArIDM3JSBrZXJuZWwgKyAxNSUgaW93YWl0ICsgMC4yJSBzb2Z0aXJxCgpDbWQgbGluZTogY29tLnRlbmNlbnQubW06dG9vbHMKCkRBTFZJSyBUSFJFQURTOgoobXV0ZXhlczogdGxsPTAgdHNsPTAgdHNjbD0wIGdobD0wKQoKIm1haW4iIHByaW89NSB0aWQ9MSBTVVNQRU5ERUQKICB8IGdyb3VwPSJtYWluIiBzQ291bnQ9MSBkc0NvdW50PTAgb2JqPTB4NDBkYmI5Nzggc2VsZj0weDRiZDVhMDEwCiAgfCBzeXNUaWQ9NjEyMSBuaWNlPTAgc2NoZWQ9MC8wIGNncnA9YXBwcyBoYW5kbGU9MTA3NDE4NzExMgogIHwgc2NoZWRzdGF0PSggMzMxMTIwMDUzNyAyMTM5NTIwMjU1IDE5MzI2ICkgdXRtPTMwMCBzdG09MzEgY29yZT0wCiAgYXQgY29tLnRlbmNlbnQubW0uc2RrLnBsYXRmb3JtdG9vbHMuei5nZXRQYWNrYWdlTmFtZShTb3VyY2VGaWxlOn41OSkKICBhdCBjb20udGVuY2VudC5tbS5wbHVnaW4ucmVwb3J0LnNlcnZpY2UuS1ZDb21tQ3Jvc3NQcm9jZXNzUmVjZWl2ZXIuYShTb3VyY2VGaWxlOjE0MikKICBhdCBjb20udGVuY2VudC5tbS5wbHVnaW4ucmVwb3J0LnNlcnZpY2UuaC5iKFNvdXJjZUZpbGU6MTA3KQogIGF0IGNvbS50ZW5jZW50Lm1tLnBsdWdpbi5yZXBvcnQuc2VydmljZS5oLmEoU291cmNlRmlsZToxOTQpCiAgYXQgY29tLnRlbmNlbnQubW0ucGx1Z2luc2RrLnVpLnRvb2xzLmouYkIoU291cmNlRmlsZTo0NSkKICBhdCBjb20udGVuY2VudC5tbS5wbHVnaW5zZGsudWkudG9vbHMuai5vZChTb3VyY2VGaWxlOjI5KQogIGF0IGNvbS50ZW5jZW50Lm1tLnBsdWdpbi53ZWJ2aWV3LnVpLnRvb2xzLldlYlZpZXdVSS5XTihTb3VyY2VGaWxlOjI5MTIpCiAgYXQgY29tLnRlbmNlbnQubW0ucGx1Z2luLndlYnZpZXcudWkudG9vbHMuV2ViVmlld1VJJDM0Lm9uU2VydmljZUNvbm5lY3RlZChTb3VyY2VGaWxlOjE0MDcpCiAgYXQgYW5kcm9pZC5hcHAuTG9hZGVkQXBrJFNlcnZpY2VEaXNwYXRjaGVyLmRvQ29ubmVjdGVkKExvYWRlZEFway5qYXZhOjExMjcpCiAgYXQgYW5kcm9pZC5hcHAuTG9hZGVkQXBrJFNlcnZpY2VEaXNwYXRjaGVyJFJ1bkNvbm5lY3Rpb24ucnVuKExvYWRlZEFway5qYXZhOjExNDQpCiAgYXQgYW5kcm9pZC5vcy5IYW5kbGVyLmhhbmRsZUNhbGxiYWNrKEhhbmRsZXIuamF2YTo2MTUpCiAgYXQgYW5kcm9pZC5vcy5IYW5kbGVyLmRpc3BhdGNoTWVzc2FnZShIYW5kbGVyLmphdmE6OTIpCiAgYXQgYW5kcm9pZC5vcy5Mb29wZXIubG9vcChMb29wZXIuamF2YToxNTMpCiAgYXQgYW5kcm9pZC5hcHAuQWN0aXZpdHlUaHJlYWQubWFpbihBY3Rpdml0eVRocmVhZC5qYXZhOjUwMzgpCiAgYXQgamF2YS5sYW5nLnJlZmxlY3QuTWV0aG9kLmludm9rZU5hdGl2ZShOYXRpdmUgTWV0aG9kKQogIGF0IGphdmEubGFuZy5yZWZsZWN0Lk1ldGhvZC5pbnZva2UoTWV0aG9kLmphdmE6NTExKQogIGF0IGNvbS5hbmRyb2lkLmludGVybmFsLm9zLlp5Z290ZUluaXQkTWV0aG9kQW5kQXJnc0NhbGxlci5ydW4oWnlnb3RlSW5pdC5qYXZhOjgyMSkKICBhdCBjb20uYW5kcm9pZC5pbnRlcm5hbC5vcy5aeWdvdGVJbml0Lm1haW4oWnlnb3RlSW5pdC5qYXZhOjU4NCkKICBhdCBkYWx2aWsuc3lzdGVtLk5hdGl2ZVN0YXJ0Lm1haW4oTmF0aXZlIE1ldGhvZCkKCiJyd3QiIHByaW89NSB0aWQ9NDEgTkFUSVZFCiAgfCBncm91cD0ic3lzdGVtIiBzQ291bnQ9MSBkc0NvdW50PTAgb2JqPTB4NDE2NzE0MDggc2VsZj0weDYxOGM4YzUwCiAgfCBzeXNUaWQ9NjI4MyBuaWNlPTAgc2NoZWQ9MC8wIGNncnA9YXBwcyBoYW5kbGU9MTYzNjYwNjY4OAogIHwgc2NoZWRzdGF0PSggNzQyNzkyMyA1NzYyOTIzIDkgKSB1dG09MCBzdG09MCBjb3JlPTEKICAjMDAgIHBjIDAwMDBkYWUwICAvc3lzdGVtL2xpYi9saWJjLnNvIChlcG9sbF93YWl0KzEyKQogICMwMSAgcGMgMDAwMTQ3YTEgIC9zeXN0ZW0vbGliL2xpYnV0aWxzLnNvIChhbmRyb2lkOjpMb29wZXI6OnBvbGxJbm5lcihpbnQpKzk2KQogICMwMiAgcGMgMDAwMTRhMDkgIC9zeXN0ZW0vbGliL2xpYnV0aWxzLnNvIChhbmRyb2lkOjpMb29wZXI6OnBvbGxPbmNlKGludCwgaW50KiwgaW50Kiwgdm9pZCoqKSsxMDQpCiAgIzAzICBwYyAwMDA2MGY4NyAgL3N5c3RlbS9saWIvbGliYW5kcm9pZF9ydW50aW1lLnNvIChhbmRyb2lkOjpOYXRpdmVNZXNzYWdlUXVldWU6OnBvbGxPbmNlKF9KTklFbnYqLCBpbnQpKzIyKQogICMwNCAgcGMgMDAwMWRlZjAgIC9zeXN0ZW0vbGliL2xpYmR2bS5zbyAoZHZtUGxhdGZvcm1JbnZva2UrMTEyKQogICMwNSAgcGMgMDAwNGNkYWQgIC9zeXN0ZW0vbGliL2xpYmR2bS5zbyAoZHZtQ2FsbEpOSU1ldGhvZCh1bnNpZ25lZCBpbnQgY29uc3QqLCBKVmFsdWUqLCBNZXRob2QgY29uc3QqLCBUaHJlYWQqKSs0OTIpCiAgIzA2ICBwYyAwMDAyNzMyMCAgL3N5c3RlbS9saWIvbGliZHZtLnNvCiAgIzA3ICBwYyAwMDAyYjM4YyAgL3N5c3RlbS9saWIvbGliZHZtLnNvIChkdm1JbnRlcnByZXQoVGhyZWFkKiwgTWV0aG9kIGNvbnN0KiwgSlZhbHVlKikrMTgwKQogICMwOCAgcGMgMDAwNWZiMTkgIC9zeXN0ZW0vbGliL2xpYmR2bS5zbyAoZHZtQ2FsbE1ldGhvZFYoVGhyZWFkKiwgTWV0aG9kIGNvbnN0KiwgT2JqZWN0KiwgYm9vbCwgSlZhbHVlKiwgc3RkOjpfX3ZhX2xpc3QpKzI3MikKICAjMDkgIHBjIDAwMDVmYjQzICAvc3lzdGVtL2xpYi9saWJkdm0uc28gKGR2bUNhbGxNZXRob2QoVGhyZWFkKiwgTWV0aG9kIGNvbnN0KiwgT2JqZWN0KiwgSlZhbHVlKiwgLi4uKSsyMCkKICAjMTAgIHBjIDAwMDU0NGExICAvc3lzdGVtL2xpYi9saWJkdm0uc28KICAjMTEgIHBjIDAwMDEyZDY0ICAvc3lzdGVtL2xpYi9saWJjLnNvIChfX3RocmVhZF9lbnRyeSs0OCkKICBhdCBhbmRyb2lkLm9zLk1lc3NhZ2VRdWV1ZS5uYXRpdmVQb2xsT25jZShOYXRpdmUgTWV0aG9kKQogIGF0IGFuZHJvaWQub3MuTWVzc2FnZVF1ZXVlLm5leHQoTWVzc2FnZVF1ZXVlLmphdmE6MTI1KQogIGF0IGFuZHJvaWQub3MuTG9vcGVyLmxvb3AoTG9vcGVyLmphdmE6MTQwKQogIGF0IGFuZHJvaWQub3MuSGFuZGxlclRocmVhZC5ydW4oSGFuZGxlclRocmVhZC5qYXZhOjYwKQoKInJ3dCIgcHJpbz01IHRpZD00MyBOQVRJVkUKICB8IGdyb3VwPSJzeXN0ZW0iIHNDb3VudD0xIGRzQ291bnQ9MCBvYmo9MHg0MTY3Mzg0MCBzZWxmPTB4NjE4Yzk1NDgKICB8IHN5c1RpZD02Mjc4IG5pY2U9MCBzY2hlZD0wLzAgY2dycD1hcHBzIGhhbmRsZT0xNjM2NjA0MzEyCiAgfCBzY2hlZHN0YXQ9KCA4NDE2MzA5IDM5OTY5MjEgMTMgKSB1dG09MCBzdG09MCBjb3JlPTEKICAjMDAgIHBjIDAwMDBkYWUwICAvc3lzdGVtL2xpYi9saWJjLnNvIChlcG9sbF93YWl0KzEyKQogICMwMSAgcGMgMDAwMTQ3YTEgIC9zeXN0ZW0vbGliL2xpYnV0aWxzLnNvIChhbmRyb2lkOjpMb29wZXI6OnBvbGxJbm5lcihpbnQpKzk2KQogICMwMiAgcGMgMDAwMTRhMDkgIC9zeXN0ZW0vbGliL2xpYnV0aWxzLnNvIChhbmRyb2lkOjpMb29wZXI6OnBvbGxPbmNlKGludCwgaW50KiwgaW50Kiwgdm9pZCoqKSsxMDQpCiAgIzAzICBwYyAwMDA2MGY4NyAgL3N5c3RlbS9saWIvbGliYW5kcm9pZF9ydW50aW1lLnNvIChhbmRyb2lkOjpOYXRpdmVNZXNzYWdlUXVldWU6OnBvbGxPbmNlKF9KTklFbnYqLCBpbnQpKzIyKQogICMwNCAgcGMgMDAwMWRlZjAgIC9zeXN0ZW0vbGliL2xpYmR2bS5zbyAoZHZtUGxhdGZvcm1JbnZva2UrMTEyKQogICMwNSAgcGMgMDAwNGNkYWQgIC9zeXN0ZW0vbGliL2xpYmR2bS5zbyAoZHZtQ2FsbEpOSU1ldGhvZCh1bnNpZ25lZCBpbnQgY29uc3QqLCBKVmFsdWUqLCBNZXRob2QgY29uc3QqLCBUaHJlYWQqKSs0OTIpCiAgIzA2ICBwYyAwMDAyNzMyMCAgL3N5c3RlbS9saWIvbGliZHZtLnNvCiAgIzA3ICBwYyAwMDAyYjM4YyAgL3N5c3RlbS9saWIvbGliZHZtLnNvIChkdm1JbnRlcnByZXQoVGhyZWFkKiwgTWV0aG9kIGNvbnN0KiwgSlZhbHVlKikrMTgwKQogICMwOCAgcGMgMDAwNWZiMTkgIC9zeXN0ZW0vbGliL2xpYmR2bS5zbyAoZHZtQ2FsbE1ldGhvZFYoVGhyZWFkKiwgTWV0aG9kIGNvbnN0KiwgT2JqZWN0KiwgYm9vbCwgSlZhbHVlKiwgc3RkOjpfX3ZhX2xpc3QpKzI3MikKICAjMDkgIHBjIDAwMDVmYjQzICAvc3lzdGVtL2xpYi9saWJkdm0uc28gKGR2bUNhbGxNZXRob2QoVGhyZWFkKiwgTWV0aG9kIGNvbnN0KiwgT2JqZWN0KiwgSlZhbHVlKiwgLi4uKSsyMCkKICAjMTAgIHBjIDAwMDU0NGExICAvc3lzdGVtL2xpYi9saWJkdm0uc28KICAjMTEgIHBjIDAwMDEyZDY0ICAvc3lzdGVtL2xpYi9saWJjLnNvIChfX3RocmVhZF9lbnRyeSs0OCkKICBhdCBhbmRyb2lkLm9zLk1lc3NhZ2VRdWV1ZS5uYXRpdmVQb2xsT25jZShOYXRpdmUgTWV0aG9kKQogIGF0IGFuZHJvaWQub3MuTWVzc2FnZVF1ZXVlLm5leHQoTWVzc2FnZVF1ZXVlLmphdmE6MTI1KQogIGF0IGFuZHJvaWQub3MuTG9vcGVyLmxvb3AoTG9vcGVyLmphdmE6MTQwKQogIGF0IGFuZHJvaWQub3MuSGFuZGxlclRocmVhZC5ydW4oSGFuZGxlclRocmVhZC5qYXZhOjYwKQoKInBvb2wtMS10aHJlYWQtMSIgcHJpbz01IHRpZD00MiBXQUlUCiAgfCBncm91cD0ic3lzdGVtIiBzQ291bnQ9MSBkc0NvdW50PTAgb2JqPTB4NDE2OGY2ZTAgc2VsZj0weDYxOGM5MGEwCiAgfCBzeXNUaWQ9NjI3NyBuaWNlPTAgc2NoZWQ9MC8wIGNncnA9YXBwcyBoYW5kbGU9MTYzNjQyMjE3NgogIHwgc2NoZWRzdGF0PSggODA5OTQ1NyAxMTIwOTIzNCAzMiApIHV0bT0wIHN0bT0wIGNvcmU9MAogIGF0IGphdmEubGFuZy5PYmplY3Qud2FpdChOYXRpdmUgTWV0aG9kKQogIC0gd2FpdGluZyBvbiA8MHg0MTZhNTEyOD4gKGEgamF2YS5sYW5nLlZNVGhyZWFkKSBoZWxkIGJ5IHRpZD00MiAocG9vbC0xLXRocmVhZC0xKQogIGF0IGphdmEubGFuZy5UaHJlYWQucGFya0ZvcihUaHJlYWQuamF2YToxMjMxKQogIGF0IHN1bi5taXNjLlVuc2FmZS5wYXJrKFVuc2FmZS5qYXZhOjMyMykKICBhdCBqYXZhLnV0aWwuY29uY3VycmVudC5sb2Nrcy5Mb2NrU3VwcG9ydC5wYXJrKExvY2tTdXBwb3J0LmphdmE6MTU3KQogIGF0IGphdmEudXRpbC5jb25jdXJyZW50LmxvY2tzLkFic3RyYWN0UXVldWVkU3luY2hyb25pemVyJENvbmRpdGlvbk9iamVjdC5hd2FpdChBYnN0cmFjdFF1ZXVlZFN5bmNocm9uaXplci5qYXZhOjIwMjIpCiAgYXQgamF2YS51dGlsLmNvbmN1cnJlbnQuTGlua2VkQmxvY2tpbmdRdWV1ZS50YWtlKExpbmtlZEJsb2NraW5nUXVldWUuamF2YTo0MTMpCiAgYXQgamF2YS51dGlsLmNvbmN1cnJlbnQuVGhyZWFkUG9vbEV4ZWN1dG9yLmdldFRhc2soVGhyZWFkUG9vbEV4ZWN1dG9yLmphdmE6MTAwOSkKICBhdCBqYXZhLnV0aWwuY29uY3VycmVudC5UaHJlYWRQb29sRXhlY3V0b3IucnVuV29ya2VyKFRocmVhZFBvb2xFeGVjdXRvci5qYXZhOjEwNjkpCiAgYXQgamF2YS51dGlsLmNvbmN1cnJlbnQuVGhyZWFkUG9vbEV4ZWN1dG9yJFdvcmtlci5ydW4oVGhyZWFkUG9vbEV4ZWN1dG9yLmphdmE6NTY5KQogIGF0IGphdmEubGFuZy5UaHJlYWQucnVuKFRocmVhZC5qYXZhOjg1NikKCiJGSU5EIiBwcmlvPTUgdGlkPTQwIE5BVElWRQogIHwgZ3JvdXA9InN5c3RlbSIgc0NvdW50PTEgZHNDb3VudD0wIG9iaj0weDQxODFkMjYwIHNlbGY9MHg2MTg5YTUzOAogIHwgc3lzVGlkPTYyNzUgbmljZT0wIHNjaGVkPTAvMCBjZ3JwPWFwcHMgaGFuZGxlPTE2MzY2NDc3OTIKICB8IHNjaGVkc3RhdD0oIDYwNjkzODUgMTY3NzY5IDMgKSB1dG09MCBzdG09MCBjb3JlPTEKICAjMDAgIHBjIDAwMDBkYWUwICAvc3lzdGVtL2xpYi9saWJjLnNvIChlcG9sbF93YWl0KzEyKQogICMwMSAgcGMgMDAwMTQ3YTEgIC9zeXN0ZW0vbGliL2xpYnV0aWxzLnNvIChhbmRyb2lkOjpMb29wZXI6OnBvbGxJbm5lcihpbnQpKzk2KQogICMwMiAgcGMgMDAwMTRhMDkgIC9zeXN0ZW0vbGliL2xpYnV0aWxzLnNvIChhbmRyb2lkOjpMb29wZXI6OnBvbGxPbmNlKGludCwgaW50KiwgaW50Kiwgdm9pZCoqKSsxMDQpCiAgIzAzICBwYyAwMDA2MGY4NyAgL3N5c3RlbS9saWIvbGliYW5kcm9pZF9ydW50aW1lLnNvIChhbmRyb2lkOjpOYXRpdmVNZXNzYWdlUXVldWU6OnBvbGxPbmNlKF9KTklFbnYqLCBpbnQpKzIyKQogICMwNCAgcGMgMDAwMWRlZjAgIC9zeXN0ZW0vbGliL2xpYmR2bS5zbyAoZHZtUGxhdGZvcm1JbnZva2UrMTEyKQogICMwNSAgcGMgMDAwNGNkYWQgIC9zeXN0ZW0vbGliL2xpYmR2bS5zbyAoZHZtQ2FsbEpOSU1ldGhvZCh1bnNpZ25lZCBpbnQgY29uc3QqLCBKVmFsdWUqLCBNZXRob2QgY29uc3QqLCBUaHJlYWQqKSs0OTIpCiAgIzA2ICBwYyAwMDAyNzMyMCAgL3N5c3RlbS9saWIvbGliZHZtLnNvCiAgIzA3ICBwYyAwMDAyYjM4YyAgL3N5c3RlbS9saWIvbGliZHZtLnNvIChkdm1JbnRlcnByZXQoVGhyZWFkKiwgTWV0aG9kIGNvbnN0KiwgSlZhbHVlKikrMTgwKQogICMwOCAgcGMgMDAwNWZiMTkgIC9zeXN0ZW0vbGliL2xpYmR2bS5zbyAoZHZtQ2FsbE1ldGhvZFYoVGhyZWFkKiwgTWV0aG9kIGNvbnN0KiwgT2JqZWN0KiwgYm9vbCwgSlZhbHVlKiwgc3RkOjpfX3ZhX2xpc3QpKzI3MikKICAjMDkgIHBjIDAwMDVmYjQzICAvc3lzdGVtL2xpYi9saWJkdm0uc28gKGR2bUNhbGxNZXRob2QoVGhyZWFkKiwgTWV0aG9kIGNvbnN0KiwgT2JqZWN0KiwgSlZhbHVlKiwgLi4uKSsyMCkKICAjMTAgIHBjIDAwMDU0NGExICAvc3lzdGVtL2xpYi9saWJkdm0uc28KICAjMTEgIHBjIDAwMDEyZDY0ICAvc3lzdGVtL2xpYi9saWJjLnNvIChfX3RocmVhZF9lbnRyeSs0OCkKICBhdCBhbmRyb2lkLm9zLk1lc3NhZ2VRdWV1ZS5uYXRpdmVQb2xsT25jZShOYXRpdmUgTWV0aG9kKQogIGF0IGFuZHJvaWQub3MuTWVzc2FnZVF1ZXVlLm5leHQoTWVzc2FnZVF1ZXVlLmphdmE6MTI1KQogIGF0IGFuZHJvaWQub3MuTG9vcGVyLmxvb3AoTG9vcGVyLmphdmE6MTQwKQogIGF0IGFuZHJvaWQub3MuSGFuZGxlclRocmVhZC5ydW4oSGFuZGxlclRocmVhZC5qYXZhOjYwKQoKIk1NX1RocmVhZF9Qb29sX0ZyZWVfSGFuZGxlcl9UaHJlYWQjMyNXZWJ2aWV3R2V0RG5zVGhyZWFkIiBwcmlvPTUgdGlkPTE2IFNVU1BFTkRFRAogIHwgZ3JvdXA9Im1haW4iIHNDb3VudD0xIGRzQ291bnQ9MCBvYmo9MHg0MThiNmNkMCBzZWxmPTB4NjMxOWUyNDAKICB8IHN5c1RpZD02MjU4IG5pY2U9MCBzY2hlZD0wLzAgY2dycD1hcHBzIGhhbmRsZT0xNjY0MTkwMjQwCiAgfCBzY2hlZHN0YXQ9KCAzNjkyODA2MiAxMTAyOTgzMjMgMTI1NyApIHV0bT0zIHN0bT0wIGNvcmU9MAogIGF0IGNvbS50ZW5jZW50Lm1tLnNkay5wbGF0Zm9ybXRvb2xzLnouZ2V0UGFja2FnZU5hbWUoU291cmNlRmlsZTp+NTkpCiAgYXQgY29tLnRlbmNlbnQubW0ucGx1Z2luLnJlcG9ydC5zZXJ2aWNlLktWQ29tbUNyb3NzUHJvY2Vzc1JlY2VpdmVyLmEoU291cmNlRmlsZToxNjUpCiAgYXQgY29tLnRlbmNlbnQubW0ucGx1Z2luLnJlcG9ydC5zZXJ2aWNlLmguYihTb3VyY2VGaWxlOjIzMikKICBhdCBjb20udGVuY2VudC5tbS5wbHVnaW4ud2Vidmlldy5jLmEkMS5ydW4oU291cmNlRmlsZToxMjEpCiAgYXQgY29tLnRlbmNlbnQubW0uc2RrLnBsYXRmb3JtdG9vbHMuYWgucnVuKFNvdXJjZUZpbGU6MTMyKQogIGF0IGFuZHJvaWQub3MuSGFuZGxlci5oYW5kbGVDYWxsYmFjayhIYW5kbGVyLmphdmE6NjE1KQogIGF0IGFuZHJvaWQub3MuSGFuZGxlci5kaXNwYXRjaE1lc3NhZ2UoSGFuZGxlci5qYXZhOjkyK 色情 第 4 部分阅读 yhIYW5kbGVyLmphdmE6NjE1KQogIGF0IGFuZHJvaWQub3MuSGFuZGxlci5kaXNwYXRjaE1lc3NhZ2UoSGFuZGxlci5qYXZhOjkyKQogIGF0IGNvbS50ZW5jZW50Lm1tLnNkay5wbGF0Zm9ybXRvb2xzLmFkLmRpc3BhdGNoTWVzc2FnZShTb3VyY2VGaWxlOjExNykKICBhdCBhbmRyb2lkLm9zLkxvb3Blci5sb29wKExvb3Blci5qYXZhOjE1MykKICBhdCBhbmRyb2lkLm9zLkhhbmRsZXJUaHJlYWQucnVuKEhhbmRsZXJUaHJlYWQuamF2YTo2MCkKICBhdCBjb20udGVuY2VudC5tbS5zZGsuaC5hJGEucnVuKFNvdXJjZUZpbGU6NzEpCgoiUHJlQ29ubmVjdEhhbmRsZXIiIHByaW89NSB0aWQ9MzkgTkFUSVZFCiAgfCBncm91cD0ibWFpbiIgc0NvdW50PTEgZHNDb3VudD0wIG9iaj0weDQxOTRiYzk4IHNlbGY9MHg2MzE3NGE2OAogIHwgc3lzVGlkPTYxODQgbmljZT0wIHNjaGVkPTAvMCBjZ3JwPWFwcHMgaGFuZGxlPTE2MzQxNjU0ODgKICB8IHNjaGVkc3RhdD0oIDY3MzA4NDcgMTIxNzI1MzggMyApIHV0bT0wIHN0bT0wIGNvcmU9MQogICMwMCAgcGMgMDAwMGRhZTAgIC9zeXN0ZW0vbGliL2xpYmMuc28gKGVwb2xsX3dhaXQrMTIpCiAgIzAxICBwYyAwMDAxNDdhMSAgL3N5c3RlbS9saWIvbGlidXRpbHMuc28gKGFuZHJvaWQ6Okxvb3Blcjo6cG9sbElubmVyKGludCkrOTYpCiAgIzAyICBwYyAwMDAxNGEwOSAgL3N5c3RlbS9saWIvbGlidXRpbHMuc28gKGFuZHJvaWQ6Okxvb3Blcjo6cG9sbE9uY2UoaW50LCBpbnQqLCBpbnQqLCB2b2lkKiopKzEwNCkKICAjMDMgIHBjIDAwMDYwZjg3ICAvc3lzdGVtL2xpYi9saWJhbmRyb2lkX3J1bnRpbWUuc28gKGFuZHJvaWQ6Ok5hdGl2ZU1lc3NhZ2VRdWV1ZTo6cG9sbE9uY2UoX0pOSUVudiosIGludCkrMjIpCiAgIzA0ICBwYyAwMDAxZGVmMCAgL3N5c3RlbS9saWIvbGliZHZtLnNvIChkdm1QbGF0Zm9ybUludm9rZSsxMTIpCiAgIzA1ICBwYyAwMDA0Y2RhZCAgL3N5c3RlbS9saWIvbGliZHZtLnNvIChkdm1DYWxsSk5JTWV0aG9kKHVuc2lnbmVkIGludCBjb25zdCosIEpWYWx1ZSosIE1ldGhvZCBjb25zdCosIFRocmVhZCopKzQ5MikKICAjMDYgIHBjIDAwMDI3MzIwICAvc3lzdGVtL2xpYi9saWJkdm0uc28KICAjMDcgIHBjIDAwMDJiMzhjICAvc3lzdGVtL2xpYi9saWJkdm0uc28gKGR2bUludGVycHJldChUaHJlYWQqLCBNZXRob2QgY29uc3QqLCBKVmFsdWUqKSsxODApCiAgIzA4ICBwYyAwMDA1ZmIxOSAgL3N5c3RlbS9saWIvbGliZHZtLnNvIChkdm1DYWxsTWV0aG9kVihUaHJlYWQqLCBNZXRob2QgY29uc3QqLCBPYmplY3QqLCBib29sLCBKVmFsdWUqLCBzdGQ6Ol9fdmFfbGlzdCkrMjcyKQogICMwOSAgcGMgMDAwNWZiNDMgIC9zeXN0ZW0vbGliL2xpYmR2bS5zbyAoZHZtQ2FsbE1ldGhvZChUaHJlYWQqLCBNZXRob2QgY29uc3QqLCBPYmplY3QqLCBKVmFsdWUqLCAuLi4pKzIwKQogICMxMCAgcGMgMDAwNTQ0YTEgIC9zeXN0ZW0vbGliL2xpYmR2bS5zbwogICMxMSAgcGMgMDAwMTJkNjQgIC9zeXN0ZW0vbGliL2xpYmMuc28gKF9fdGhyZWFkX2VudHJ5KzQ4KQogIGF0IGFuZHJvaWQub3MuTWVzc2FnZVF1ZXVlLm5hdGl2ZVBvbGxPbmNlKE5hdGl2ZSBNZXRob2QpCiAgYXQgYW5kcm9pZC5vcy5NZXNzYWdlUXVldWUubmV4dChNZXNzYWdlUXVldWUuamF2YToxMjUpCiAgYXQgYW5kcm9pZC5vcy5Mb29wZXIubG9vcChMb29wZXIuamF2YToxNDApCiAgYXQgYW5kcm9pZC5vcy5IYW5kbGVyVGhyZWFkLnJ1bihIYW5kbGVyVGhyZWFkLmphdmE6NjApCgoiQ29ubi1DcmVhdG9yLTQiIHByaW89NSB0aWQ9MzggV0FJVAogIHwgZ3JvdXA9Im1haW4iIHNDb3VudD0xIGRzQ291bnQ9MCBvYmo9MHg0MThkYTdlOCBzZWxmPTB4NjMxNzQ0MTAKICB8IHN5c1RpZD02MTgzIG5pY2U9MCBzY2hlZD0wLzAgY2dycD1hcHBzIGhhbmRsZT0xNjM0MTYxMDk2CiAgfCBzY2hlZHN0YXQ9KCA0MjYzMDcgNzM0MjM4NSA0ICkgdXRtPTAgc3RtPTAgY29yZT0xCiAgYXQgamF2YS5sYW5nLk9iamVjdC53YWl0KE5hdGl2ZSBNZXRob2QpCiAgLSB3YWl0aW5nIG9uIDwweDQxNzQzN2IwPiAoYSBqYXZhLmxhbmcuVk1UaHJlYWQpIGhlbGQgYnkgdGlkPTM4IChDb25uLUNyZWF0b3ItNCkKICBhdCBqYXZhLmxhbmcuVGhyZWFkLnBhcmtGb3IoVGhyZWFkLmphdmE6MTIzMSkKICBhdCBzdW4ubWlzYy5VbnNhZmUucGFyayhVbnNhZmUuamF2YTozMjMpCiAgYXQgamF2YS51dGlsLmNvbmN1cnJlbnQubG9ja3MuTG9ja1N1cHBvcnQucGFyayhMb2NrU3VwcG9ydC5qYXZhOjE1NykKICBhdCBqYXZhLnV0aWwuY29uY3VycmVudC5TeW5jaHJvbm91c1F1ZXVlJFRyYW5zZmVyU3RhY2suYXdhaXRGdWxmaWxsKFN5bmNocm9ub3VzUXVldWUuamF2YTo0MTkpCiAgYXQgamF2YS51dGlsLmNvbmN1cnJlbnQuU3luY2hyb25vdXNRdWV1ZSRUcmFuc2ZlclN0YWNrLnRyYW5zZmVyKFN5bmNocm9ub3VzUXVldWUuamF2YTozMjApCiAgYXQgamF2YS51dGlsLmNvbmN1cnJlbnQuU3luY2hyb25vdXNRdWV1ZS50YWtlKFN5bmNocm9ub3VzUXVldWUuamF2YTo4NTgpCiAgYXQgamF2YS51dGlsLmNvbmN1cnJlbnQuVGhyZWFkUG9vbEV4ZWN1dG9yLmdldFRhc2soVGhyZWFkUG9vbEV4ZWN1dG9yLmphdmE6MTAwOSkKICBhdCBqYXZhLnV0aWwuY29uY3VycmVudC5UaHJlYWRQb29sRXhlY3V0b3IucnVuV29ya2VyKFRocmVhZFBvb2xFeGVjdXRvci5qYXZhOjEwNjkpCiAgYXQgamF2YS51dGlsLmNvbmN1cnJlbnQuVGhyZWFkUG9vbEV4ZWN1dG9yJFdvcmtlci5ydW4oVGhyZWFkUG9vbEV4ZWN1dG9yLmphdmE6NTY5KQogIGF0IGphdmEubGFuZy5UaHJlYWQucnVuKFRocmVhZC5qYXZhOjg1NikKCiJDb25uLUNyZWF0b3ItMyIgcHJpbz01IHRpZD0zNyBXQUlUCiAgfCBncm91cD0ibWFpbiIgc0NvdW50PTEgZHNDb3VudD0wIG9iaj0weDQxOGRjYWM4IHNlbGY9MHg2MzE3M2RiOAogIHwgc3lzVGlkPTYxODIgbmljZT0wIHNjaGVkPTAvMCBjZ3JwPWFwcHMgaGFuZGxlPTE2MzQxNjU0MDAKICB8IHNjaGVkc3RhdD0oIDUyMTU0MSAzMTY2MDc1IDE5ICkgdXRtPTAgc3RtPTAgY29yZT0xCiAgYXQgamF2YS5sYW5nLk9iamVjdC53YWl0KE5hdGl2ZSBNZXRob2QpCiAgLSB3YWl0aW5nIG9uIDwweDQxNzQ0YWYwPiAoYSBqYXZhLmxhbmcuVk1UaHJlYWQpIGhlbGQgYnkgdGlkPTM3IChDb25uLUNyZWF0b3ItMykKICBhdCBqYXZhLmxhbmcuVGhyZWFkLnBhcmtGb3IoVGhyZWFkLmphdmE6MTIzMSkKICBhdCBzdW4ubWlzYy5VbnNhZmUucGFyayhVbnNhZmUuamF2YTozMjMpCiAgYXQgamF2YS51dGlsLmNvbmN1cnJlbnQubG9ja3MuTG9ja1N1cHBvcnQucGFyayhMb2NrU3VwcG9ydC5qYXZhOjE1NykKICBhdCBqYXZhLnV0aWwuY29uY3VycmVudC5TeW5jaHJvbm91c1F1ZXVlJFRyYW5zZmVyU3RhY2suYXdhaXRGdWxmaWxsKFN5bmNocm9ub3VzUXVldWUuamF2YTo0MTkpCiAgYXQgamF2YS51dGlsLmNvbmN1cnJlbnQuU3luY2hyb25vdXNRdWV1ZSRUcmFuc2ZlclN0YWNrLnRyYW5zZmVyKFN5bmNocm9ub3VzUXVldWUuamF2YTozMjApCiAgYXQgamF2YS51dGlsLmNvbmN1cnJlbnQuU3luY2hyb25vdXNRdWV1ZS50YWtlKFN5bmNocm9ub3VzUXVldWUuamF2YTo4NTgpCiAgYXQgamF2YS51dGlsLmNvbmN1cnJlbnQuVGhyZWFkUG9vbEV4ZWN1dG9yLmdldFRhc2soVGhyZWFkUG9vbEV4ZWN1dG9yLmphdmE6MTAwOSkKICBhdCBqYXZhLnV0aWwuY29uY3VycmVudC5UaHJlYWRQb29sRXhlY3V0b3IucnVuV29ya2VyKFRocmVhZFBvb2xFeGVjdXRvci5qYXZhOjEwNjkpCiAgYXQgamF2YS51dGlsLmNvbmN1cnJlbnQuVGhyZWFkUG9vbEV4ZWN1dG9yJFdvcmtlci5ydW4oVGhyZWFkUG9vbEV4ZWN1dG9yLmphdmE6NTY5KQogIGF0IGphdmEubGFuZy5UaHJlYWQucnVuKFRocmVhZC5qYXZhOjg1NikKCiJDb25uLUNyZWF0b3ItMiIgcHJpbz01IHRpZD0zNiBXQUlUCiAgfCBncm91cD0ibWFpbiIgc0NvdW50PTEgZHNDb3VudD0wIG9iaj0weDQxOGViZjc4IHNlbGY9MHg2MTY3MmY5OAogIHwgc3lzVGlkPTYxODEgbmljZT0wIHNjaGVkPTAvMCBjZ3JwPWFwcHMgaGFuZGxlPTE2MzQxODQ4MDAKICB8IHNjaGVkc3RhdD0oIDQ3NTIzMiAxMzA2MzA3IDUgKSB1dG09MCBzdG09MCBjb3JlPTEKICBhdCBqYXZhLmxhbmcuT2JqZWN0LndhaXQoTmF0aXZlIE1ldGhvZCkKICAtIHdhaXRpbmcgb24gPDB4NDE3NDZjZjA+IChhIGphdmEubGFuZy5WTVRocmVhZCkgaGVsZCBieSB0aWQ9MzYgKENvbm4tQ3JlYXRvci0yKQogIGF0IGphdmEubGFuZy5UaHJlYWQucGFya0ZvcihUaHJlYWQuamF2YToxMjMxKQogIGF0IHN1bi5taXNjLlVuc2FmZS5wYXJrKFVuc2FmZS5qYXZhOjMyMykKICBhdCBqYXZhLnV0aWwuY29uY3VycmVudC5sb2Nrcy5Mb2NrU3VwcG9ydC5wYXJrKExvY2tTdXBwb3J0LmphdmE6MTU3KQogIGF0IGphdmEudXRpbC5jb25jdXJyZW50LlN5bmNocm9ub3VzUXVldWUkVHJhbnNmZXJTdGFjay5hd2FpdEZ1bGZpbGwoU3luY2hyb25vdXNRdWV1ZS5qYXZhOjQxOSkKICBhdCBqYXZhLnV0aWwuY29uY3VycmVudC5TeW5jaHJvbm91c1F1ZXVlJFRyYW5zZmVyU3RhY2sudHJhbnNmZXIoU3luY2hyb25vdXNRdWV1ZS5qYXZhOjMyMCkKICBhdCBqYXZhLnV0aWwuY29uY3VycmVudC5TeW5jaHJvbm91c1F1ZXVlLnRha2UoU3luY2hyb25vdXNRdWV1ZS5qYXZhOjg1OCkKICBhdCBqYXZhLnV0aWwuY29uY3VycmVudC5UaHJlYWRQb29sRXhlY3V0b3IuZ2V0VGFzayhUaHJlYWRQb29sRXhlY3V0b3IuamF2YToxMDA5KQogIGF0IGphdmEudXRpbC5jb25jdXJyZW50LlRocmVhZFBvb2xFeGVjdXRvci5ydW5Xb3JrZXIoVGhyZWFkUG9vbEV4ZWN1dG9yLmphdmE6MTA2OSkKICBhdCBqYXZhLnV0aWwuY29uY3VycmVudC5UaHJlYWRQb29sRXhlY3V0b3IkV29ya2VyLnJ1bihUaHJlYWRQb29sRXhlY3V0b3IuamF2YTo1NjkpCiAgYXQgamF2YS5sYW5nLlRocmVhZC5ydW4oVGhyZWFkLmphdmE6ODU2KQoKIkNvbm4tQ3JlYXRvci0xIiBwcmlvPTUgdGlkPTM1IFdBSVQKICB8IGdyb3VwPSJtYWluIiBzQ291bnQ9MSBkc0NvdW50PTAgb2JqPTB4NDE4ZjM4NTggc2VsZj0weDYxNjcyYjQ4CiAgfCBzeXNUaWQ9NjE4MCBuaWNlPTAgc2NoZWQ9MC8wIGNncnA9YXBwcyBoYW5kbGU9MTYzNDI1NjE0NAogIHwgc2NoZWRzdGF0PSggMTA5OTE1NCAzMDE1NjEzIDMyICkgdXRtPTAgc3RtPTAgY29yZT0xCiAgYXQgamF2YS5sYW5nLk9iamVjdC53YWl0KE5hdGl2ZSBNZXRob2QpCiAgLSB3YWl0aW5nIG9uIDwweDQxNzQ4NTQ4PiAoYSBqYXZhLmxhbmcuVk1UaHJlYWQpIGhlbGQgYnkgdGlkPTM1IChDb25uLUNyZWF0b3ItMSkKICBhdCBqYXZhLmxhbmcuVGhyZWFkLnBhcmtGb3IoVGhyZWFkLmphdmE6MTIzMSkKICBhdCBzdW4ubWlzYy5VbnNhZmUucGFyayhVbnNhZmUuamF2YTozMjMpCiAgYXQgamF2YS51dGlsLmNvbmN1cnJlbnQubG9ja3MuTG9ja1N1cHBvcnQucGFyayhMb2NrU3VwcG9ydC5qYXZhOjE1NykKICBhdCBqYXZhLnV0aWwuY29uY3VycmVudC5TeW5jaHJvbm91c1F1ZXVlJFRyYW5zZmVyU3RhY2suYXdhaXRGdWxmaWxsKFN5bmNocm9ub3VzUXVldWUuamF2YTo0MTkpCiAgYXQgamF2YS51dGlsLmNvbmN1cnJlbnQuU3luY2hyb25vdXNRdWV1ZSRUcmFuc2ZlclN0YWNrLnRyYW5zZmVyKFN5bmNocm9ub3VzUXVldWUuamF2YTozMjApCiAgYXQgamF2YS51dGlsLmNvbmN1cnJlbnQuU3luY2hyb25vdXNRdWV1ZS50YWtlKFN5bmNocm9ub3VzUXVldWUuamF2YTo4NTgpCiAgYXQgamF2YS51dGlsLmNvbmN1cnJlbnQuVGhyZWFkUG9vbEV4ZWN1dG9yLmdldFRhc2soVGhyZWFkUG9vbEV4ZWN1dG9yLmphdmE6MTAwOSkKICBhdCBqYXZhLnV0aWwuY29uY3VycmVudC5UaHJlYWRQb29sRXhlY3V0b3IucnVuV29ya2VyKFRocmVhZFBvb2xFeGVjdXRvci5qYXZhOjEwNjkpCiAgYXQgamF2YS51dGlsLmNvbmN1cnJlbnQuVGhyZWFkUG9vbEV4ZWN1dG9yJFdvcmtlci5ydW4oVGhyZWFkUG9vbEV4ZWN1dG9yLmphdmE6NTY5KQogIGF0IGphdmEubGFuZy5UaHJlYWQucnVuKFRocmVhZC5qYXZhOjg1NikKCiJDb25uLUNyZWF0b3ItMCIgcHJpbz01IHRpZD0zNCBXQUlUCiAgfCBncm91cD0ibWFpbiIgc0NvdW50PTEgZHNDb3VudD0wIG9iaj0weDQxOTBhZmEwIHNlbGY9MHg2MzE3Mzk2OAogIHwgc3lzVGlkPTYxNzkgbmljZT0wIHNjaGVkPTAvMCBjZ3JwPWFwcHMgaGFuZGxlPTE2MzI3MjUxOTIKICB8IHNjaGVkc3RhdD0oIDkzNDE1NCAxMDMyMTYxNSA0ICkgdXRtPTAgc3RtPTAgY29yZT0xCiAgYXQgamF2YS5sYW5nLk9iamVjdC53YWl0KE5hdGl2ZSBNZXRob2QpCiAgLSB3YWl0aW5nIG9uIDwweDQxNjMyYTAwPiAoYSBqYXZhLmxhbmcuVk1UaHJlYWQpIGhlbGQgYnkgdGlkPTM0IChDb25uLUNyZWF0b3ItMCkKICBhdCBqYXZhLmxhbmcuVGhyZWFkLnBhcmtGb3IoVGhyZWFkLmphdmE6MTIzMSkKICBhdCBzdW4ubWlzYy5VbnNhZmUucGFyayhVbnNhZmUuamF2YTozMjMpCiAgYXQgamF2YS51dGlsLmNvbmN1cnJlbnQubG9ja3MuTG9ja1N1cHBvcnQucGFyayhMb2NrU3VwcG9ydC5qYXZhOjE1NykKICBhdCBqYXZhLnV0aWwuY29uY3VycmVudC5TeW5jaHJvbm91c1F1ZXVlJFRyYW5zZmVyU3RhY2suYXdhaXRGdWxmaWxsKFN5bmNocm9ub3VzUXVldWUuamF2YTo0MTkpCiAgYXQgamF2YS51dGlsLmNvbmN1cnJlbnQuU3luY2hyb25vdXNRdWV1ZSRUcmFuc2ZlclN0YWNrLnRyYW5zZmVyKFN5bmNocm9ub3VzUXVldWUuamF2YTozMjApCiAgYXQgamF2YS51dGlsLmNvbmN1cnJlbnQuU3luY2hyb25vdXNRdWV1ZS50YWtlKFN5bmNocm9ub3VzUXVldWUuamF2YTo4NTgpCiAgYXQgamF2YS51dGlsLmNvbmN1cnJlbnQuVGhyZWFkUG9vbEV4ZWN1dG9yLmdldFRhc2soVGhyZWFkUG9vbEV4ZWN1dG9yLmphdmE6MTAwOSkKICBhdCBqYXZhLnV0aWwuY29uY3VycmVudC5UaHJlYWRQb29sRXhlY3V0b3IucnVuV29ya2VyKFRocmVhZFBvb2xFeGVjdXRvci5qYXZhOjEwNjkpCiAgYXQgamF2YS51dGlsLmNvbmN1cnJlbnQuVGhyZWFkUG9vbEV4ZWN1dG9yJFdvcmtlci5ydW4oVGhyZWFkUG9vbEV4ZWN1dG9yLmphdmE6NTY5KQogIGF0IGphdmEubGFuZy5UaHJlYWQucnVuKFRocmVhZC5qYXZhOjg1NikKCiJsb2ctaGFuZGxlciIgcHJpbz01IHRpZD0zMyBOQVRJVkUKICB8IGdyb3VwPSJtYWluIiBzQ291bnQ9MSBkc0NvdW50PTAgb2JqPTB4NDE4ZWE1YTggc2VsZj0weDYyMTU3OTI4CiAgfCBzeXNUaWQ9NjE3OCBuaWNlPTAgc2NoZWQ9MC8wIGNncnA9YXBwcyBoYW5kbGU9MTY0NTU3NTU0NAogIHwgc2NoZWRzdGF0PSggOTc0MjYxMSA2Mjc3MzA5IDIwMiApIHV0bT0wIHN0bT0wIGNvcmU9MQogICMwMCAgcGMgMDAwMGRhZTAgIC9zeXN0ZW0vbGliL2xpYmMuc28gKGVwb2xsX3dhaXQrMTIpCiAgIzAxICBwYyAwMDAxNDdhMSAgL3N5c3RlbS9saWIvbGlidXRpbHMuc28gKGFuZHJvaWQ6Okxvb3Blcjo6cG9sbElubmVyKGludCkrOTYpCiAgIzAyICBwYyAwMDAxNGEwOSAgL3N5c3RlbS9saWIvbGlidXRpbHMuc28gKGFuZHJvaWQ6Okxvb3Blcjo6cG9sbE9uY2UoaW50LCBpbnQqLCBpbnQqLCB2b2lkKiopKzEwNCkKICAjMDMgIHBjIDAwMDYwZjg3ICAvc3lzdGVtL2xpYi9saWJhbmRyb2lkX3J1bnRpbWUuc28gKGFuZHJvaWQ6Ok5hdGl2ZU1lc3NhZ2VRdWV1ZTo6cG9sbE9uY2UoX0pOSUVudiosIGludCkrMjIpCiAgIzA0ICBwYyAwMDAxZGVmMCAgL3N5c3RlbS9saWIvbGliZHZtLnNvIChkdm1QbGF0Zm9ybUludm9rZSsxMTIpCiAgIzA1ICBwYyAwMDA0Y2RhZCAgL3N5c3RlbS9saWIvbGliZHZtLnNvIChkdm1DYWxsSk5JTWV0aG9kKHVuc2lnbmVkIGludCBjb25zdCosIEpWYWx1ZSosIE1ldGhvZCBjb25zdCosIFRocmVhZCopKzQ5MikKICAjMDYgIHBjIDAwMDI3MzIwICAvc3lzdGVtL2xpYi9saWJkdm0uc28KICAjMDcgIHBjIDAwMDJiMzhjICAvc3lzdGVtL2xpYi9saWJkdm0uc28gKGR2bUludGVycHJldChUaHJlYWQqLCBNZXRob2QgY29uc3QqLCBKVmFsdWUqKSsxODApCiAgIzA4ICBwYyAwMDA1ZmIxOSAgL3N5c3RlbS9saWIvbGliZHZtLnNvIChkdm1DYWxsTWV0aG9kVihUaHJlYWQqLCBNZXRob2QgY29uc3QqLCBPYmplY3QqLCBib29sLCBKVmFsdWUqLCBzdGQ6Ol9fdmFfbGlzdCkrMjcyKQogICMwOSAgcGMgMDAwNWZiNDMgIC9zeXN0ZW0vbGliL2xpYmR2bS5zbyAoZHZtQ2FsbE1ldGhvZChUaHJlYWQqLCBNZXRob2QgY29uc3QqLCBPYmplY3QqLCBKVmFsdWUqLCAuLi4pKzIwKQogICMxMCAgcGMgMDAwNTQ0YTEgIC9zeXN0ZW0vbGliL2xpYmR2bS5zbwogICMxMSAgcGMgMDAwMTJkNjQgIC9zeXN0ZW0vbGliL2xpYmMuc28gKF9fdGhyZWFkX2VudHJ5KzQ4KQogIGF0IGFuZHJvaWQub3MuTWVzc2FnZVF1ZXVlLm5hdGl2ZVBvbGxPbmNlKE5hdGl2ZSBNZXRob2QpCiAgYXQgYW5kcm9pZC5vcy5NZXNzYWdlUXVldWUubmV4dChNZXNzYWdlUXVldWUuamF2YToxMjUpCiAgYXQgYW5kcm9pZC5vcy5Mb29wZXIubG9vcChMb29wZXIuamF2YToxNDApCiAgYXQgYW5kcm9pZC5vcy5IYW5kbGVyVGhyZWFkLnJ1bihIYW5kbGVyVGhyZWFkLmphdmE6NjApCgoiaHR0cDYiIHByaW89NSB0aWQ9MzIgV0FJVAogIHwgZ3JvdXA9Im1haW4iIHNDb3VudD0xIGRzQ291bnQ9MCBvYmo9MHg0MTg2NGVhMCBzZWxmPTB4NjIxNTcxNjgKICB8IHN5c1RpZD02MTc3IG5pY2U9MCBzY2hlZD0wLzAgY2dycD1hcHBzIGhhbmRsZT0xNjQ1NTczNTkyCiAgfCBzY2hlZHN0YXQ9KCAyMTAwMDAgMTI5NjYxNSA0ICkgdXRtPTAgc3RtPTAgY29yZT0wCiAgYXQgamF2YS5sYW5nLk9iamVjdC53YWl0KE5hdGl2ZSBNZXRob2QpCiAgLSB3YWl0aW5nIG9uIDwweDQxNjZjN2MwPiAoYSBjb20udGVuY2VudC5zbXR0Lm5ldC5odHRwLlJlcXVlc3RRdWV1ZSkKICBhdCBqYXZhLmxhbmcuT2JqZWN0LndhaXQoT2JqZWN0LmphdmE6MzY0KQogIGF0IGNvbS50ZW5jZW50LnNtdHQubmV0Lmh0dHAubC5ydW4oKG51bGwpOi0xKQoKImh0dHA1IiBwcmlvPTUgdGlkPTMxIFdBSVQKICB8IGdyb3VwPSJtYWluIiBzQ291bnQ9MSBkc0NvdW50PTAgb2JqPTB4NDE4ZjM3ZDggc2VsZj0weDYyMTU2YTI4CiAgfCBzeXNUaWQ9NjE3NiBuaWNlPTAgc2NoZWQ9MC8wIGNncnA9YXBwcyBoYW5kbGU9MTY0NTU3MTcwNAogIHwgc2NoZWRzdGF0PSggMTUxMDc3IDE4MTc2OTIgMyApIHV0bT0wIHN0bT0wIGNvcmU9MAogIGF0IGphdmEubGFuZy5PYmplY3Qud2FpdChOYXRpdmUgTWV0aG9kKQogIC0gd2FpdGluZyBvbiA8MHg0MTY2YzdjMD4gKGEgY29tLnRlbmNlbnQuc210dC5uZXQuaHR0cC5SZXF1ZXN0UXVldWUpCiAgYXQgamF2YS5sYW5nLk9iamVjdC53YWl0KE9iamVjdC5qYXZhOjM2NCkKICBhdCBjb20udGVuY2VudC5zbXR0Lm5ldC5odHRwLmwucnVuKChudWxsKTotMSkKCiJodHRwNCIgcHJpbz01IHRpZD0zMCBXQUlUCiAgfCBncm91cD0ibWFpbiIgc0NvdW50PTEgZHNDb3VudD0wIG9iaj0weDQxOGRjYTQ4IHNlbGY9MHg2MjE1NjJlOAogIHwgc3lzVGlkPTYxNzUgbmljZT0wIHNjaGVkPTAvMCBjZ3JwPWFwcHMgaGFuZGxlPTE2NDU1Njk4ODAKICB8IHNjaGVkc3RhdD0oIDUzNzYxMCAxMjQ1NjIwIDcwICkgdXRtPTAgc3RtPTAgY29yZT0wCiAgYXQgamF2YS5sYW5nLk9iamVjdC53YWl0KE5hdGl2ZSBNZXRob2QpCiAgLSB3YWl0aW5nIG9uIDwweDQxNjZjN2MwPiAoYSBjb20udGVuY2VudC5zbXR0Lm5ldC5odHRwLlJlcXVlc3RRdWV1ZSkKICBhdCBqYXZhLmxhbmcuT2JqZWN0LndhaXQoT2JqZWN0LmphdmE6MzY0KQogIGF0IGNvbS50ZW5jZW50LnNtdHQubmV0Lmh0dHAubC5ydW4oKG51bGwpOi0xKQoKImh0dHAzIiBwcmlvPTUgdGlkPTI5IFdBSVQKICB8IGdyb3VwPSJtYWluIiBzQ291bnQ9MSBkc0NvdW50PTAgb2JqPTB4NDE4ZGE3Njggc2VsZj0weDYyMTU1YmM4CiAgfCBzeXNUaWQ9NjE3NCBuaWNlPTAgc2NoZWQ9MC8wIGNncnA9YXBwcyBoYW5kbGU9MTY0NTU2ODAyNAogIHwgc2NoZWRzdGF0PSggMTk5MjMxIDU0MjQ2MSAzICkgdXRtPTAgc3RtPTAgY29yZT0wCiAgYXQgamF2YS5sYW5nLk9iamVjdC53YWl0KE5hdGl2ZSBNZXRob2QpCiAgLSB3YWl0aW5nIG9uIDwweDQxNjZjN2MwPiAoYSBjb20udGVuY2VudC5zbXR0Lm5ldC5odHRwLlJlcXVlc3RRdWV1ZSkKICBhdCBqYXZhLmxhbmcuT2JqZWN0LndhaXQoT2JqZWN0LmphdmE6MzY0KQogIGF0IGNvbS50ZW5jZW50LnNtdHQubmV0Lmh0dHAubC5ydW4oKG51bGwpOi0xKQoKImh0dHAyIiBwcmlvPTUgdGlkPTI4IFdBSVQKICB8IGdyb3VwPSJtYWluIiBzQ291bnQ9MSBkc0NvdW50PTAgb2JqPTB4NDE4ZDYwZjggc2VsZj0weDYyMTU1NGM4CiAgfCBzeXNUaWQ9NjE3MyBuaWNlPTAgc2NoZWQ9MC8wIGNncnA9YXBwcyBoYW5kbGU9MTY0NTU2NDc3NgogIHwgc2NoZWRzdGF0PSggMTU0MDc3IDAgMyApIHV0bT0wIHN0bT0wIGNvcmU9MAogIGF0IGphdmEubGFuZy5PYmplY3Qud2FpdChOYXRpdmUgTWV0aG9kKQogIC0gd2FpdGluZyBvbiA8MHg0MTY2YzdjMD4gKGEgY29tLnRlbmNlbnQuc210dC5uZXQuaHR0cC5SZXF1ZXN0UXVldWUpCiAgYXQgamF2YS5sYW5nLk9iamVjdC53YWl0KE9iamVjdC5qYXZhOjM2NCkKICBhdCBjb20udGVuY2VudC5zbXR0Lm5ldC5odHRwLmwucnVuKChudWxsKTotMSkKCiJodHRwMSIgcHJpbz01IHRpZD0yNyBXQUlUCiAgfCBncm91cD0ibWFpbiIgc0NvdW50PTEgZHNDb3VudD0wIG9iaj0weDQxOGQzYWM4IHNlbGY9MHg2MjE1MDBmOAogIHwgc3lzVGlkPTYxNzIgbmljZT0wIHNjaGVkPTAvMCBjZ3JwPWFwcHMgaGFuZGxlPTE2NDU1NjM2MDgKICB8IHNjaGVkc3RhdD0oIDE4NDAwMSAzMDYzMDggMyApIHV0bT0wIHN0bT0wIGNvcmU9MAogIGF0IGphdmEubGFuZy5PYmplY3Qud2FpdChOYXRpdmUgTWV0aG9kKQogIC0gd2FpdGluZyBvbiA8MHg0MTY2YzdjMD4gKGEgY29tLnRlbmNlbnQuc210dC5uZXQuaHR0cC5SZXF1ZXN0UXVldWUpCiAgYXQgamF2YS5sYW5nLk9iamVjdC53YWl0KE9iamVjdC5qYXZhOjM2NCkKICBhdCBjb20udGVuY2VudC5zbXR0Lm5ldC5odHRwLmwucnVuKChudWxsKTotMSkKCiJodHRwMCIgcHJpbz01IHRpZD0yNiBXQUlUCiAgfCBncm91cD0ibWFpbiIgc0NvdW50PTEgZHNDb3VudD0wIG9iaj0weDQxOGQyZDI4IHNlbGY9MHg2MjE1MzdlOAogIHwgc3lzVGlkPTYxNzEgbmljZT0wIHNjaGVkPTAvMCBjZ3JwPWFwcHMgaGFuZGxlPTE2NDU1NjA1NTIKICB8IHNjaGVkc3RhdD0oIDE1MjQ2MiA0MjY0NjEgMyApIHV0bT0wIHN0bT0wIGNvcmU9MAogIGF0IGphdmEubGFuZy5PYmplY3Qud2FpdChOYXRpdmUgTWV0aG9kKQogIC0gd2FpdGluZyBvbiA8MHg0MTY2YzdjMD4gKGEgY29tLnRlbmNlbnQuc210dC5uZXQuaHR0cC5SZXF1ZXN0UXVldWUpCiAgYXQgamF2YS5sYW5nLk9iamVjdC53YWl0KE9iamVjdC5qYXZhOjM2NCkKICBhdCBjb20udGVuY2VudC5zbXR0Lm5ldC5odHRwLmwucnVuKChudWxsKTotMSkKCiJXZWJWaWV3V29ya2VyVGhyZWFkIiBwcmlvPTUgdGlkPTI1IE5BVElWRQogIHwgZ3JvdXA9Im1haW4iIHNDb3VudD0xIGRzQ291bnQ9MCBvYmo9MHg0MTdiYTc3OCBzZWxmPTB4NjIxNGZhYTAKICB8IHN5c1RpZD02MTcwIG5pY2U9MTEgc2NoZWQ9MC8wIGNncnA9YXBwcy9iZ19ub25faW50ZXJhY3RpdmUgaGFuZGxlPTEzNzE5MjczMjAKICB8IHNjaGVkc3RhdD0oIDcwOTUwNzcgMTgxMTIzMiAzNyApIHV0bT0wIHN0bT0wIGNvcmU9MQogICMwMCAgcGMgMDAwMGRhZTAgIC9zeXN0ZW0vbGliL2xpYmMuc28gKGVwb2xsX3dhaXQrMTIpCiAgIzAxICBwYyAwMDAxNDdhMSAgL3N5c3RlbS9saWIvbGlidXRpbHMuc28gKGFuZHJvaWQ6Okxvb3Blcjo6cG9sbElubmVyKGludCkrOTYpCiAgIzAyICBwYyAwMDAxNGEwOSAgL3N5c3RlbS9saWIvbGlidXRpbHMuc28gKGFuZHJvaWQ6Okxvb3Blcjo6cG9sbE9uY2UoaW50LCBpbnQqLCBpbnQqLCB2b2lkKiopKzEwNCkKICAjMDMgIHBjIDAwMDYwZjg3ICAvc3lzdGVtL2xpYi9saWJhbmRyb2lkX3J1bnRpbWUuc28gKGFuZHJvaWQ6Ok5hdGl2ZU1lc3NhZ2VRdWV1ZTo6cG9sbE9uY2UoX0pOSUVudiosIGludCkrMjIpCiAgIzA0ICBwYyAwMDAxZGVmMCAgL3N5c3RlbS9saWIvbGliZHZtLnNvIChkdm1QbGF0Zm9ybUludm9rZSsxMTIpCiAgIzA1ICBwYyAwMDA0Y2RhZCAgL3N5c3RlbS9saWIvbGliZHZtLnNvIChkdm1DYWxsSk5JTWV0aG9kKHVuc2lnbmVkIGludCBjb25zdCosIEpWYWx1ZSosIE1ldGhvZCBjb25zdCosIFRocmVhZCopKzQ5MikKICAjMDYgIHBjIDAwMDI3MzIwICAvc3lzdGVtL2xpYi9saWJkdm0uc28KICAjMDcgIHBjIDAwMDJiMzhjICAvc3lzdGVtL2xpYi9saWJkdm0uc28gKGR2bUludGVycHJldChUaHJlYWQqLCBNZXRob2QgY29uc3QqLCBKVmFsdWUqKSsxODApCiAgIzA4ICBwYyAwMDA1ZmIxOSAgL3N5c3RlbS9saWIvbGliZHZtLnNvIChkdm1DYWxsTWV0aG9kVihUaHJlYWQqLCBNZXRob2QgY29uc3QqLCBPYmplY3QqLCBib29sLCBKVmFsdWUqLCBzdGQ6Ol9fdmFfbGlzdCkrMjcyKQogICMwOSAgcGMgMDAwNWZiNDMgIC9zeXN0ZW0vbGliL2xpYmR2bS5zbyAoZHZtQ2FsbE1ldGhvZChUaHJlYWQqLCBNZXRob2QgY29uc3QqLCBPYmplY3QqLCBKVmFsdWUqLCAuLi4pKzIwKQogICMxMCAgcGMgMDAwNTQ0YTEgIC9zeXN0ZW0vbGliL2xpYmR2bS5zbwogICMxMSAgcGMgMDAwMTJkNjQgIC9zeXN0ZW0vbGliL2xpYmMuc28gKF9fdGhyZWFkX2VudHJ5KzQ4KQogIGF0IGFuZHJvaWQub3MuTWVzc2FnZVF1ZXVlLm5hdGl2ZVBvbGxPbmNlKE5hdGl2ZSBNZXRob2QpCiAgYXQgYW5kcm9pZC5vcy5NZXNzYWdlUXVldWUubmV4dChNZXNzYWdlUXVldWUuamF2YToxMjUpCiAgYXQgYW5kcm9pZC5vcy5Mb29wZXIubG9vcChMb29wZXIuamF2YToxNDApCiAgYXQgYW5kcm9pZC5vcy5IYW5kbGVyVGhyZWFkLnJ1bihIYW5kbGVyVGhyZWFkLmphdmE6NjApCgoiV2ViVmlld05ldFdvcmtlclRocmVhZCIgcHJpbz01IHRpZD0yNCBOQVRJVkUKICB8IGdyb3VwPSJtYWluIiBzQ291bnQ9MSBkc0NvdW50PTAgb2JqPTB4NDE4ZjJlNTAgc2VsZj0weDYyMTUxMjY4CiAgfCBzeXNUaWQ9NjE2OSBuaWNlPS0yIHNjaGVkPTAvMCBjZ3JwPWFwcHMgaGFuZGxlPTE2NDU1NDYzMjAKICB8IHNjaGVkc3RhdD0oIDcwODAxNTIgMTI1ODA3OCA4ICkgdXRtPTAgc3RtPTAgY29yZT0xCiAgIzAwICBwYyAwMDAwZGFlMCAgL3N5c3RlbS9saWIvbGliYy5zbyAoZXBvbGxfd2FpdCsxMikKICAjMDEgIHBjIDAwMDE0N2ExICAvc3lzdGVtL2xpYi9saWJ1dGlscy5zbyAoYW5kcm9pZDo6TG9vcGVyOjpwb2xsSW5uZXIoaW50KSs5NikKICAjMDIgIHBjIDAwMDE0YTA5ICAvc3lzdGVtL2xpYi9saWJ1dGlscy5zbyAoYW5kcm9pZDo6TG9vcGVyOjpwb2xsT25jZShpbnQsIGludCosIGludCosIHZvaWQqKikrMTA0KQogICMwMyAgcGMgMDAwNjBmODcgIC9zeXN0ZW0vbGliL2xpYmFuZHJvaWRfcnVudGltZS5zbyAoYW5kcm9pZDo6TmF0aXZlTWVzc2FnZVF1ZXVlOjpwb2xsT25jZShfSk5JRW52KiwgaW50KSsyMikKICAjMDQgIHBjIDAwMDFkZWYwICAvc3lzdGVtL2xpYi9saWJkdm0uc28gKGR2bVBsYXRmb3JtSW52b2tlKzExMikKICAjMDUgIHBjIDAwMDRjZGFkICAvc3lzdGVtL2xpYi9saWJkdm0uc28gKGR2bUNhbGxKTklNZXRob2QodW5zaWduZWQgaW50IGNvbnN0KiwgSlZhbHVlKiwgTWV0aG9kIGNvbnN0KiwgVGhyZWFkKikrNDkyKQogICMwNiAgcGMgMDAwMjczMjAgIC9zeXN0ZW0vbGliL2xpYmR2bS5zbwogICMwNyAgcGMgMDAwMmIzOGMgIC9zeXN0ZW0vbGliL2xpYmR2bS5zbyAoZHZtSW50ZXJwcmV0KFRocmVhZCosIE1ldGhvZCBjb25zdCosIEpWYWx1ZSopKzE4MCkKICAjMDggIHBjIDAwMDVmYjE5ICAvc3lzdGVtL2xpYi9saWJkdm0uc28gKGR2bUNhbGxNZXRob2RWKFRocmVhZCosIE1ldGhvZCBjb25zdCosIE9iamVjdCosIGJvb2wsIEpWYWx1ZSosIHN0ZDo6X192YV9saXN0KSsyNzIpCiAgIzA5ICBwYyAwMDA1ZmI0MyAgL3N5c3RlbS9saWIvbGliZHZtLnNvIChkdm1DYWxsTWV0aG9kKFRocmVhZCosIE1ldGhvZCBjb25zdCosIE9iamVjdCosIEpWYWx1ZSosIC4uLikrMjApCiAgIzEwICBwYyAwMDA1NDRhMSAgL3N5c3RlbS9saWIvbGliZHZtLnNvCiAgIzExICBwYyAwMDAxMmQ2NCAgL3N5c3RlbS9saWIvbGliYy5zbyAoX190aHJlYWRfZW50cnkrNDgpCiAgYXQgYW5kcm9pZC5vcy5NZXNzYWdlUXVldWUubmF0aXZlUG9sbE9uY2UoTmF0aXZlIE1ldGhvZCkKICBhdCBhbmRyb2lkLm9zLk1lc3NhZ2VRdWV1ZS5uZXh0KE1lc3NhZ2VRdWV1ZS5qYXZhOjEyNSkKICBhdCBhbmRyb2lkLm9zLkxvb3Blci5sb29wKExvb3Blci5qYXZhOjE0MCkKICBhdCBhbmRyb2lkLm9zLkhhbmRsZXJUaHJlYWQucnVuKEhhbmRsZXJUaHJlYWQuamF2YTo2MCkKCiJUaW1lci0xIiBwcmlvPTUgdGlkPTIzIFRJTUVEX1dBSVQKICB8IGdyb3VwPSJtYWluIiBzQ291bnQ9MSBkc0NvdW50PTAgb2JqPTB4NDE3ZGY2Yzggc2VsZj0weDYyMTNlN2U4CiAgfCBzeXNUaWQ9NjE2NiBuaWNlPTAgc2NoZWQ9MC8wIGNncnA9YXBwcyBoYW5kbGU9MTY0NTQ3MjgyNAogIHwgc2NoZWRzdGF0PSggNTQ3NTM5IDUwMTkyNCA4ICkgdXRtPTAgc3RtPTAgY29yZT0wCiAgYXQgamF2YS5sYW5nLk9iamVjdC53YWl0KE5hdGl2ZSBNZXRob2QpCiAgLSB3YWl0aW5nIG9uIDwweDQxN2RmNmM4PiAoYSBqYXZhLnV0aWwuVGltZXIkVGltZXJJbXBsKQogIGF0IGphdmEubGFuZy5PYmplY3Qud2FpdChPYmplY3QuamF2YTo0MDEpCiAgYXQgamF2YS51dGlsLlRpbWVyJFRpbWVySW1wbC5ydW4oVGltZXIuamF2YToyMzgpCgoiQXN5bmNUYXNrICMxIiBwcmlvPTUgdGlkPTIyIFdBSVQKICB8IGdyb3VwPSJtYWluIiBzQ291bnQ9MSBkc0NvdW50PTAgb2JqPTB4NDE3ODc3Njggc2VsZj0weDYxNjc5MTc4CiAgfCBzeXNUaWQ9NjE2NCBuaWNlPTEwIHNjaGVkPTAvMCBjZ3JwPWFwcHMvYmdfbm9uX2ludGVyYWN0aXZlIGhhbmRsZT0xNjM0MTYyMTc2CiAgfCBzY2hlZHN0YXQ9KCA3Mjk5OTggMTYwNDE1NiA5ICkgdXRtPTAgc3RtPTAgY29yZT0wCiAgYXQgamF2YS5sYW5nLk9iamVjdC53YWl0KE5hdGl2ZSBNZXRob2QpCiAgLSB3YWl0aW5nIG9uIDwweDQxODg3NWY4PiAoYSBqYXZhLmxhbmcuVk1UaHJlYWQpIGhlbGQgYnkgdGlkPTIyIChBc3luY1Rhc2sgIzEpCiAgYXQgamF2YS5sYW5nLlRocmVhZC5wYXJrRm9yKFRocmVhZC5qYXZhOjEyMzEpCiAgYXQgc3VuLm1pc2MuVW5zYWZlLnBhcmsoVW5zYWZlLmphdmE6MzIzKQogIGF0IGphdmEudXRpbC5jb25jdXJyZW50LmxvY2tzLkxvY2tTdXBwb3J0LnBhcmsoTG9ja1N1cHBvcnQuamF2YToxNTcpCiAgYXQgamF2YS51dGlsLmNvbmN1cnJlbnQubG9ja3MuQWJzdHJhY3RRdWV1ZWRTeW5jaHJvbml6ZXIkQ29uZGl0aW9uT2JqZWN0LmF3YWl0KEFic3RyYWN0UXVldWVkU3luY2hyb25pemVyLmphdmE6MjAyMikKICBhdCBqYXZhLnV0aWwuY29uY3VycmVudC5MaW5rZWRCbG9ja2luZ1F1ZXVlLnRha2UoTGlua2VkQmxvY2tpbmdRdWV1ZS5qYXZhOjQxMykKICBhdCBqYXZhLnV0aWwuY29uY3VycmVudC5UaHJlYWRQb29sRXhlY3V0b3IuZ2V0VGFzayhUaHJlYWRQb29sRXhlY3V0b3IuamF2YToxMDA5KQogIGF0IGphdmEudXRpbC5jb25jdXJyZW50LlRocmVhZFBvb2xFeGVjdXRvci5ydW5Xb3JrZXIoVGhyZWFkUG9vbEV4ZWN1dG9yLmphdmE6MTA2OSkKICBhdCBqYXZhLnV0aWwuY29uY3VycmVudC5UaHJlYWRQb29sRXhlY3V0b3IkV29ya2VyLnJ1bihUaHJlYWRQb29sRXhlY3V0b3IuamF2YTo1NjkpCiAgYXQgamF2YS5sYW5nLlRocmVhZC5ydW4oVGhyZWFkLmphdmE6ODU2KQoKIldlYlZpZXdDb3JlVGhyZWFkIiBwcmlvPTUgdGlkPTIxIE5BVElWRQogIHwgZ3JvdXA9Im1haW4iIHNDb3VudD0xIGRzQ291bnQ9MCBvYmo9MHg0MTc4MmEzMCBzZWxmPTB4NjE2NzRhMDAKICB8IHN5c1RpZD02MTYyIG5pY2U9LTEgc2NoZWQ9MC8wIGNncnA9YXBwcyBoYW5kbGU9MTYzNDE1OTAyNAogIHwgc2NoZWRzdGF0PSggMjY2MDMwNjk1IDE0MjY2MDIyNiAxNDkzICkgdXRtPTE5IHN0bT03IGNvcmU9MQogICMwMCAgcGMgMDAwMGRhZTAgIC9zeXN0ZW0vbGliL2xpYmMuc28gKGVwb2xsX3dhaXQrMTIpCiAgIzAxICBwYyAwMDAxNDdhMSAgL3N5c3RlbS9saWIvbGlidXRpbHMuc28gKGFuZHJvaWQ6Okxvb3Blcjo6cG9sbElubmVyKGludCkrOTYpCiAgIzAyICBwYyAwMDAxNGEwOSAgL3N5c3RlbS9saWIvbGlidXRpbHMuc28gKGFuZHJvaWQ6Okxvb3Blcjo6cG9sbE9uY2UoaW50LCBpbnQqLCBpbnQqLCB2b2lkKiopKzEwNCkKICAjMDMgIHBjIDAwMDYwZjg3ICAvc3lzdGVtL2xpYi9saWJhbmRyb2lkX3J1bnRpbWUuc28gKGFuZHJvaWQ6Ok5hdGl2ZU1lc3NhZ2VRdWV1ZTo6cG9sbE9uY2UoX0pOSUVudiosIGludCkrMjIpCiAgIzA0ICBwYyAwMDAxZGVmMCAgL3N5c3RlbS9saWIvbGliZHZtLnNvIChkdm1QbGF0Zm9ybUludm9rZSsxMTIpCiAgIzA1ICBwYyAwMDA0Y2RhZCAgL3N5c3RlbS9saWIvbGliZHZtLnNvIChkdm1DYWxsSk5JTWV0aG9kKHVuc2lnbmVkIGludCBjb25zdCosIEpWYWx1ZSosIE1ldGhvZCBjb25zdCosIFRocmVhZCopKzQ5MikKICAjMDYgIHBjIDAwMDI3MzIwICAvc3lzdGVtL2xpYi9saWJkdm0uc28KICAjMDcgIHBjIDAwMDJiMzhjICAvc3lzdGVtL2xpYi9saWJkdm0uc28gKGR2bUludGVycHJldChUaHJlYWQqLCBNZXRob2QgY29uc3QqLCBKVmFsdWUqKSsxODApCiAgIzA4ICBwYyAwMDA1ZmIxOSAgL3N5c3RlbS9saWIvbGliZHZtLnNvIChkdm1DYWxsTWV0aG9kVihUaHJlYWQqLCBNZXRob2QgY29uc3QqLCBPYmplY3QqLCBib29sLCBKVmFsdWUqLCBzdGQ6Ol9fdmFfbGlzdCkrMjcyKQogICMwOSAgcGMgMDAwNWZiNDMgIC9zeXN0ZW0vbGliL2xpYmR2bS5zbyAoZHZtQ2FsbE1ldGhvZChUaHJlYWQqLCBNZXRob2QgY29uc3QqLCBPYmplY3QqLCBKVmFsdWUqLCAuLi4pKzIwKQogICMxMCAgcGMgMDAwNTQ0YTEgIC9zeXN0ZW0vbGliL2xpYmR2bS5zbwogICMxMSAgcGMgMDAwMTJkNjQgIC9zeXN0ZW0vbGliL2xpYmMuc28gKF9fdGhyZWFkX2VudHJ5KzQ4KQogIGF0IGFuZHJvaWQub3MuTWVzc2FnZVF1ZXVlLm5hdGl2ZVBvbGxPbmNlKE5hdGl2ZSBNZXRob2QpCiAgYXQgYW5kcm9pZC5vcy5NZXNzYWdlUXVldWUubmV4dChNZXNzYWdlUXVldWUuamF2YToxMjUpCiAgYXQgYW5kcm9pZC5vcy5Mb29wZXIubG9vcChMb29wZXIuamF2YToxNDApCiAgYXQgY29tLnRlbmNlbnQuc210dC53ZWJraXQuV2ViVmlld0NvcmUkV2ViQ29yZVRocmVhZC5ydW4oKG51bGwpOi0xKQogIGF0IGphdmEubGFuZy5UaHJlYWQucnVuKFRocmVhZC5qYXZhOjg1NikKCiJEZWVwbGlua1JlcXVlc3RRdWV1ZVRocmVhZCIgcHJpbz01IHRpZD0xNCBOQVRJVkUKICB8IGdyb3VwPSJtYWluIiBzQ291bnQ9MSBkc0NvdW50PTAgb2JqPTB4NDE4MWM2Mjggc2VsZj0weDYxNjczN2QwCiAgfCBzeXNUaWQ9NjE2MSBuaWNlPTAgc2NoZWQ9MC8wIGNncnA9YXBwcyBoYW5kbGU9MTY0NTQxMTAwOAogIHwgc2NoZWRzdGF0PSggNzA4MjUzOCAyMDkwMDEgNSApIHV0bT0wIHN0bT0wIGNvcmU9MAogICMwMCAgcGMgMDAwMGRhZTAgIC9zeXN0ZW0vbGliL2xpYmMuc28gKGVwb2xsX3dhaXQrMTIpCiAgIzAxICBwYyAwMDAxNDdhMSAgL3N5c3RlbS9saWIvbGlidXRpbHMuc28gKGFuZHJvaWQ6Okxvb3Blcjo6cG9sbElubmVyKGludCkrOTYpCiAgIzAyICBwYyAwMDAxNGEwOSAgL3N5c3RlbS9saWIvbGlidXRpbHMuc28gKGFuZHJvaWQ6Okxvb3Blcjo6cG9sbE9uY2UoaW50LCBpbnQqLCBpbnQqLCB2b2lkKiopKzEwNCkKICAjMDMgIHBjIDAwMDYwZjg3ICAvc3lzdGVtL2xpYi9saWJhbmRyb2lkX3J1bnRpbWUuc28gKGFuZHJvaWQ6Ok5hdGl2ZU1lc3NhZ2VRdWV1ZTo6cG9sbE9uY2UoX0pOSUVudiosIGludCkrMjIpCiAgIzA0ICBwYyAwMDAxZGVmMCAgL3N5c3RlbS9saWIvbGliZHZtLnNvIChkdm1QbGF0Zm9ybUludm9rZSsxMTIpCiAgIzA1ICBwYyAwMDA0Y2RhZCAgL3N5c3RlbS9saWIvbGliZHZtLnNvIChkdm1DYWxsSk5JTWV0aG9kKHVuc2lnbmVkIGludCBjb25zdCosIEpWYWx1ZSosIE1ldGhvZCBjb25zdCosIFRocmVhZCopKzQ5MikKICAjMDYgIHBjIDAwMDI3MzIwICAvc3lzdGVtL2xpYi9saWJkdm0uc28KICAjMDcgIHBjIDAwMDJiMzhjICAvc3lzdGVtL2xpYi9saWJkdm0uc28gKGR2bUludGVycHJldChUaHJlYWQqLCBNZXRob2QgY29uc3QqLCBKVmFsdWUqKSsxODApCiAgIzA4ICBwYyAwMDA1ZmIxOSAgL3N5c3RlbS9saWIvbGliZHZtLnNvIChkdm1DYWxsTWV0aG9kVihUaHJlYWQqLCBNZXRob2QgY29uc3QqLCBPYmplY3QqLCBib29sLCBKVmFsdWUqLCBzdGQ6Ol9fdmFfbGlzdCkrMjcyKQogICMwOSAgcGMgMDAwNWZiNDMgIC9zeXN0ZW0vbGliL2xpYmR2bS5zbyAoZHZtQ2FsbE1ldGhvZChUaHJlYWQqLCBNZXRob2QgY29uc3QqLCBPYmplY3QqLCBKVmFsdWUqLCAuLi4pKzIwKQogICMxMCAgcGMgMDAwNTQ0YTEgIC9zeXN0ZW0vbGliL2xpYmR2bS5zbwogICMxMSAgcGMgMDAwMTJkNjQgIC9zeXN0ZW0vbGliL2xpYmMuc28gKF9fdGhyZWFkX2VudHJ5KzQ4KQogIGF0IGFuZHJvaWQub3MuTWVzc2FnZVF1ZXVlLm5hdGl2ZVBvbGxPbmNlKE5hdGl2ZSBNZXRob2QpCiAgYXQgYW5kcm9pZC5vcy5NZXNzYWdlUXVldWUubmV4dChNZXNzYWdlUXVldWUuamF2YToxMjUpCiAgYXQgYW5kcm9pZC5vcy5Mb29wZXIubG9vcChMb29wZXIuamF2YToxNDApCiAgYXQgYW5kcm9pZC5vcy5IYW5kbGVyVGhyZWFkLnJ1bihIYW5kbGVyVGhyZWFkLmphdmE6NjApCgoiQ29va2llU3luY01hbmFnZXIiIHByaW89NSB0aWQ9MjAgTkFUSVZFCiAgfCBncm91cD0ibWFpbiIgc0NvdW50PTEgZHNDb3VudD0wIG9iaj0weDQxNjhiNDQ4IHNlbGY9MHg2MTY1NjFiMAogIHwgc3lzVGlkPTYxNTkgbmljZT0xMCBzY2hlZD0wLzAgY2dycD1hcHBzL2JnX25vbl9pbnRlcmFjdGl2ZSBoYW5kbGU9MTYzNDA0Nzk1MgogIHwgc2NoZWRzdGF0PSggNjUxOTkyNCA5NTk0NjEgMTQgKSB1dG09MCBzdG09MCBjb3JlPTEKICAjMDAgIHBjIDAwMDBkYWUwICAvc3lzdGVtL2xpYi9saWJjLnNvIChlcG9sbF93YWl0KzEyKQogICMwMSAgcGMgMDAwMTQ3YTEgIC9zeXN0ZW0vbGliL2xpYnV0aWxzLnNvIChhbmRyb2lkOjpMb29wZXI6OnBvbGxJbm5lcihpbnQpKzk2KQogICMwMiAgcGMgMDAwMTRhMDkgIC9zeXN0ZW0vbGliL2xpYnV0aWxzLnNvIChhbmRyb2lkOjpMb29wZXI6OnBvbGxPbmNlKGludCwgaW50KiwgaW50Kiwgdm9pZCoqKSsxMDQpCiAgIzAzICBwYyAwMDA2MGY4NyAgL 色情 第 5 部分阅读 mRyb2lkOjpMb29wZXI6OnBvbGxPbmNlKGludCwgaW50KiwgaW50Kiwgdm9pZCoqKSsxMDQpCiAgIzAzICBwYyAwMDA2MGY4NyAgL3N5c3RlbS9saWIvbGliYW5kcm9pZF9ydW50aW1lLnNvIChhbmRyb2lkOjpOYXRpdmVNZXNzYWdlUXVldWU6OnBvbGxPbmNlKF9KTklFbnYqLCBpbnQpKzIyKQogICMwNCAgcGMgMDAwMWRlZjAgIC9zeXN0ZW0vbGliL2xpYmR2bS5zbyAoZHZtUGxhdGZvcm1JbnZva2UrMTEyKQogICMwNSAgcGMgMDAwNGNkYWQgIC9zeXN0ZW0vbGliL2xpYmR2bS5zbyAoZHZtQ2FsbEpOSU1ldGhvZCh1bnNpZ25lZCBpbnQgY29uc3QqLCBKVmFsdWUqLCBNZXRob2QgY29uc3QqLCBUaHJlYWQqKSs0OTIpCiAgIzA2ICBwYyAwMDAyNzMyMCAgL3N5c3RlbS9saWIvbGliZHZtLnNvCiAgIzA3ICBwYyAwMDAyYjM4YyAgL3N5c3RlbS9saWIvbGliZHZtLnNvIChkdm1JbnRlcnByZXQoVGhyZWFkKiwgTWV0aG9kIGNvbnN0KiwgSlZhbHVlKikrMTgwKQogICMwOCAgcGMgMDAwNWZiMTkgIC9zeXN0ZW0vbGliL2xpYmR2bS5zbyAoZHZtQ2FsbE1ldGhvZFYoVGhyZWFkKiwgTWV0aG9kIGNvbnN0KiwgT2JqZWN0KiwgYm9vbCwgSlZhbHVlKiwgc3RkOjpfX3ZhX2xpc3QpKzI3MikKICAjMDkgIHBjIDAwMDVmYjQzICAvc3lzdGVtL2xpYi9saWJkdm0uc28gKGR2bUNhbGxNZXRob2QoVGhyZWFkKiwgTWV0aG9kIGNvbnN0KiwgT2JqZWN0KiwgSlZhbHVlKiwgLi4uKSsyMCkKICAjMTAgIHBjIDAwMDU0NGExICAvc3lzdGVtL2xpYi9saWJkdm0uc28KICAjMTEgIHBjIDAwMDEyZDY0ICAvc3lzdGVtL2xpYi9saWJjLnNvIChfX3RocmVhZF9lbnRyeSs0OCkKICBhdCBhbmRyb2lkLm9zLk1lc3NhZ2VRdWV1ZS5uYXRpdmVQb2xsT25jZShOYXRpdmUgTWV0aG9kKQogIGF0IGFuZHJvaWQub3MuTWVzc2FnZVF1ZXVlLm5leHQoTWVzc2FnZVF1ZXVlLmphdmE6MTI1KQogIGF0IGFuZHJvaWQub3MuTG9vcGVyLmxvb3AoTG9vcGVyLmphdmE6MTQwKQogIGF0IGNvbS50ZW5jZW50LnNtdHQud2Via2l0LldlYlN5bmNNYW5hZ2VyLnJ1bigobnVsbCk6LTEpCiAgYXQgY29tLnRlbmNlbnQuc210dC53ZWJraXQuQ29va2llU3luY01hbmFnZXIucnVuKChudWxsKTotMSkKICBhdCBqYXZhLmxhbmcuVGhyZWFkLnJ1bihUaHJlYWQuamF2YTo4NTYpCgoiVGhyZWFkLTU4NDYiIHByaW89NSB0aWQ9MTkgTkFUSVZFCiAgfCBncm91cD0ibWFpbiIgc0NvdW50PTEgZHNDb3VudD0wIG9iaj0weDQxOTU2NzgwIHNlbGY9MHg2MTY2NTlmOAogIHwgc3lzVGlkPTYxNTggbmljZT0wIHNjaGVkPTAvMCBjZ3JwPWFwcHMgaGFuZGxlPTE2MzQwNTkwNjQKICB8IHNjaGVkc3RhdD0oIDY5NTM2ODkgMzI0MjU0MiAxOTggKSB1dG09MCBzdG09MCBjb3JlPTEKICAjMDAgIHBjIDAwMDBkYWUwICAvc3lzdGVtL2xpYi9saWJjLnNvIChlcG9sbF93YWl0KzEyKQogICMwMSAgcGMgMDAwMTQ3YTEgIC9zeXN0ZW0vbGliL2xpYnV0aWxzLnNvIChhbmRyb2lkOjpMb29wZXI6OnBvbGxJbm5lcihpbnQpKzk2KQogICMwMiAgcGMgMDAwMTRhMDkgIC9zeXN0ZW0vbGliL2xpYnV0aWxzLnNvIChhbmRyb2lkOjpMb29wZXI6OnBvbGxPbmNlKGludCwgaW50KiwgaW50Kiwgdm9pZCoqKSsxMDQpCiAgIzAzICBwYyAwMDA2MGY4NyAgL3N5c3RlbS9saWIvbGliYW5kcm9pZF9ydW50aW1lLnNvIChhbmRyb2lkOjpOYXRpdmVNZXNzYWdlUXVldWU6OnBvbGxPbmNlKF9KTklFbnYqLCBpbnQpKzIyKQogICMwNCAgcGMgMDAwMWRlZjAgIC9zeXN0ZW0vbGliL2xpYmR2bS5zbyAoZHZtUGxhdGZvcm1JbnZva2UrMTEyKQogICMwNSAgcGMgMDAwNGNkYWQgIC9zeXN0ZW0vbGliL2xpYmR2bS5zbyAoZHZtQ2FsbEpOSU1ldGhvZCh1bnNpZ25lZCBpbnQgY29uc3QqLCBKVmFsdWUqLCBNZXRob2QgY29uc3QqLCBUaHJlYWQqKSs0OTIpCiAgIzA2ICBwYyAwMDAyNzMyMCAgL3N5c3RlbS9saWIvbGliZHZtLnNvCiAgIzA3ICBwYyAwMDAyYjM4YyAgL3N5c3RlbS9saWIvbGliZHZtLnNvIChkdm1JbnRlcnByZXQoVGhyZWFkKiwgTWV0aG9kIGNvbnN0KiwgSlZhbHVlKikrMTgwKQogICMwOCAgcGMgMDAwNWZiMTkgIC9zeXN0ZW0vbGliL2xpYmR2bS5zbyAoZHZtQ2FsbE1ldGhvZFYoVGhyZWFkKiwgTWV0aG9kIGNvbnN0KiwgT2JqZWN0KiwgYm9vbCwgSlZhbHVlKiwgc3RkOjpfX3ZhX2xpc3QpKzI3MikKICAjMDkgIHBjIDAwMDVmYjQzICAvc3lzdGVtL2xpYi9saWJkdm0uc28gKGR2bUNhbGxNZXRob2QoVGhyZWFkKiwgTWV0aG9kIGNvbnN0KiwgT2JqZWN0KiwgSlZhbHVlKiwgLi4uKSsyMCkKICAjMTAgIHBjIDAwMDU0NGExICAvc3lzdGVtL2xpYi9saWJkdm0uc28KICAjMTEgIHBjIDAwMDEyZDY0ICAvc3lzdGVtL2xpYi9saWJjLnNvIChfX3RocmVhZF9lbnRyeSs0OCkKICBhdCBhbmRyb2lkLm9zLk1lc3NhZ2VRdWV1ZS5uYXRpdmVQb2xsT25jZShOYXRpdmUgTWV0aG9kKQogIGF0IGFuZHJvaWQub3MuTWVzc2FnZVF1ZXVlLm5leHQoTWVzc2FnZVF1ZXVlLmphdmE6MTI1KQogIGF0IGFuZHJvaWQub3MuTG9vcGVyLmxvb3AoTG9vcGVyLmphdmE6MTQwKQogIGF0IGNvbS50ZW5jZW50Lmtpbmdrb25nLmEucnVuKChudWxsKTotMSkKCiJHVUlEX1dPUktFUiIgcHJpbz01IHRpZD0xOCBOQVRJVkUKICB8IGdyb3VwPSJtYWluIiBzQ291bnQ9MSBkc0NvdW50PTAgb2JqPTB4NDE5M2JmNzggc2VsZj0weDYxNjJiNzY4CiAgfCBzeXNUaWQ9NjE1NSBuaWNlPTAgc2NoZWQ9MC8wIGNncnA9YXBwcyBoYW5kbGU9MTYzMzgxNjEwNAogIHwgc2NoZWRzdGF0PSggNDk4ODQxNDggNDM5NDcyMzIgMjA2ICkgdXRtPTMgc3RtPTEgY29yZT0xCiAgIzAwICBwYyAwMDAwZGFlMCAgL3N5c3RlbS9saWIvbGliYy5zbyAoZXBvbGxfd2FpdCsxMikKICAjMDEgIHBjIDAwMDE0N2ExICAvc3lzdGVtL2xpYi9saWJ1dGlscy5zbyAoYW5kcm9pZDo6TG9vcGVyOjpwb2xsSW5uZXIoaW50KSs5NikKICAjMDIgIHBjIDAwMDE0YTA5ICAvc3lzdGVtL2xpYi9saWJ1dGlscy5zbyAoYW5kcm9pZDo6TG9vcGVyOjpwb2xsT25jZShpbnQsIGludCosIGludCosIHZvaWQqKikrMTA0KQogICMwMyAgcGMgMDAwNjBmODcgIC9zeXN0ZW0vbGliL2xpYmFuZHJvaWRfcnVudGltZS5zbyAoYW5kcm9pZDo6TmF0aXZlTWVzc2FnZVF1ZXVlOjpwb2xsT25jZShfSk5JRW52KiwgaW50KSsyMikKICAjMDQgIHBjIDAwMDFkZWYwICAvc3lzdGVtL2xpYi9saWJkdm0uc28gKGR2bVBsYXRmb3JtSW52b2tlKzExMikKICAjMDUgIHBjIDAwMDRjZGFkICAvc3lzdGVtL2xpYi9saWJkdm0uc28gKGR2bUNhbGxKTklNZXRob2QodW5zaWduZWQgaW50IGNvbnN0KiwgSlZhbHVlKiwgTWV0aG9kIGNvbnN0KiwgVGhyZWFkKikrNDkyKQogICMwNiAgcGMgMDAwMjczMjAgIC9zeXN0ZW0vbGliL2xpYmR2bS5zbwogICMwNyAgcGMgMDAwMmIzOGMgIC9zeXN0ZW0vbGliL2xpYmR2bS5zbyAoZHZtSW50ZXJwcmV0KFRocmVhZCosIE1ldGhvZCBjb25zdCosIEpWYWx1ZSopKzE4MCkKICAjMDggIHBjIDAwMDVmYjE5ICAvc3lzdGVtL2xpYi9saWJkdm0uc28gKGR2bUNhbGxNZXRob2RWKFRocmVhZCosIE1ldGhvZCBjb25zdCosIE9iamVjdCosIGJvb2wsIEpWYWx1ZSosIHN0ZDo6X192YV9saXN0KSsyNzIpCiAgIzA5ICBwYyAwMDA1ZmI0MyAgL3N5c3RlbS9saWIvbGliZHZtLnNvIChkdm1DYWxsTWV0aG9kKFRocmVhZCosIE1ldGhvZCBjb25zdCosIE9iamVjdCosIEpWYWx1ZSosIC4uLikrMjApCiAgIzEwICBwYyAwMDA1NDRhMSAgL3N5c3RlbS9saWIvbGliZHZtLnNvCiAgIzExICBwYyAwMDAxMmQ2NCAgL3N5c3RlbS9saWIvbGliYy5zbyAoX190aHJlYWRfZW50cnkrNDgpCiAgYXQgYW5kcm9pZC5vcy5NZXNzYWdlUXVldWUubmF0aXZlUG9sbE9uY2UoTmF0aXZlIE1ldGhvZCkKICBhdCBhbmRyb2lkLm9zLk1lc3NhZ2VRdWV1ZS5uZXh0KE1lc3NhZ2VRdWV1ZS5qYXZhOjEyNSkKICBhdCBhbmRyb2lkLm9zLkxvb3Blci5sb29wKExvb3Blci5qYXZhOjE0MCkKICBhdCBhbmRyb2lkLm9zLkhhbmRsZXJUaHJlYWQucnVuKEhhbmRsZXJUaHJlYWQuamF2YTo2MCkKCiJXaWZpU1NJRERldGVjb3IiIHByaW89NSB0aWQ9MTcgTkFUSVZFCiAgfCBncm91cD0ibWFpbiIgc0NvdW50PTEgZHNDb3VudD0wIG9iaj0weDQxOTBiZjg4IHNlbGY9MHg2MTYxODQzMAogIHwgc3lzVGlkPTYxNTQgbmljZT0xMCBzY2hlZD0wLzAgY2dycD1hcHBzL2JnX25vbl9pbnRlcmFjdGl2ZSBoYW5kbGU9MTYzMzc4MDMyMAogIHwgc2NoZWRzdGF0PSggMTExNjcyMzEgMjg3NzUzMDYgMjkgKSB1dG09MCBzdG09MSBjb3JlPTEKICAjMDAgIHBjIDAwMDBkYWUwICAvc3lzdGVtL2xpYi9saWJjLnNvIChlcG9sbF93YWl0KzEyKQogICMwMSAgcGMgMDAwMTQ3YTEgIC9zeXN0ZW0vbGliL2xpYnV0aWxzLnNvIChhbmRyb2lkOjpMb29wZXI6OnBvbGxJbm5lcihpbnQpKzk2KQogICMwMiAgcGMgMDAwMTRhMDkgIC9zeXN0ZW0vbGliL2xpYnV0aWxzLnNvIChhbmRyb2lkOjpMb29wZXI6OnBvbGxPbmNlKGludCwgaW50KiwgaW50Kiwgdm9pZCoqKSsxMDQpCiAgIzAzICBwYyAwMDA2MGY4NyAgL3N5c3RlbS9saWIvbGliYW5kcm9pZF9ydW50aW1lLnNvIChhbmRyb2lkOjpOYXRpdmVNZXNzYWdlUXVldWU6OnBvbGxPbmNlKF9KTklFbnYqLCBpbnQpKzIyKQogICMwNCAgcGMgMDAwMWRlZjAgIC9zeXN0ZW0vbGliL2xpYmR2bS5zbyAoZHZtUGxhdGZvcm1JbnZva2UrMTEyKQogICMwNSAgcGMgMDAwNGNkYWQgIC9zeXN0ZW0vbGliL2xpYmR2bS5zbyAoZHZtQ2FsbEpOSU1ldGhvZCh1bnNpZ25lZCBpbnQgY29uc3QqLCBKVmFsdWUqLCBNZXRob2QgY29uc3QqLCBUaHJlYWQqKSs0OTIpCiAgIzA2ICBwYyAwMDAyNzMyMCAgL3N5c3RlbS9saWIvbGliZHZtLnNvCiAgIzA3ICBwYyAwMDAyYjM4YyAgL3N5c3RlbS9saWIvbGliZHZtLnNvIChkdm1JbnRlcnByZXQoVGhyZWFkKiwgTWV0aG9kIGNvbnN0KiwgSlZhbHVlKikrMTgwKQogICMwOCAgcGMgMDAwNWZiMTkgIC9zeXN0ZW0vbGliL2xpYmR2bS5zbyAoZHZtQ2FsbE1ldGhvZFYoVGhyZWFkKiwgTWV0aG9kIGNvbnN0KiwgT2JqZWN0KiwgYm9vbCwgSlZhbHVlKiwgc3RkOjpfX3ZhX2xpc3QpKzI3MikKICAjMDkgIHBjIDAwMDVmYjQzICAvc3lzdGVtL2xpYi9saWJkdm0uc28gKGR2bUNhbGxNZXRob2QoVGhyZWFkKiwgTWV0aG9kIGNvbnN0KiwgT2JqZWN0KiwgSlZhbHVlKiwgLi4uKSsyMCkKICAjMTAgIHBjIDAwMDU0NGExICAvc3lzdGVtL2xpYi9saWJkdm0uc28KICAjMTEgIHBjIDAwMDEyZDY0ICAvc3lzdGVtL2xpYi9saWJjLnNvIChfX3RocmVhZF9lbnRyeSs0OCkKICBhdCBhbmRyb2lkLm9zLk1lc3NhZ2VRdWV1ZS5uYXRpdmVQb2xsT25jZShOYXRpdmUgTWV0aG9kKQogIGF0IGFuZHJvaWQub3MuTWVzc2FnZVF1ZXVlLm5leHQoTWVzc2FnZVF1ZXVlLmphdmE6MTI1KQogIGF0IGFuZHJvaWQub3MuTG9vcGVyLmxvb3AoTG9vcGVyLmphdmE6MTQwKQogIGF0IGFuZHJvaWQub3MuSGFuZGxlclRocmVhZC5ydW4oSGFuZGxlclRocmVhZC5qYXZhOjYwKQoKIlRic0hhbmRsZXJUaHJlYWQiIHByaW89NSB0aWQ9MTUgTkFUSVZFCiAgfCBncm91cD0ibWFpbiIgc0NvdW50PTEgZHNDb3VudD0wIG9iaj0weDQxOGZjMzUwIHNlbGY9MHg1MWNhZDdhOAogIHwgc3lzVGlkPTYxNTEgbmljZT0wIHNjaGVkPTAvMCBjZ3JwPWFwcHMgaGFuZGxlPTEzNzIwMDY2MTYKICB8IHNjaGVkc3RhdD0oIDEyMjUzMDAxIDE2NjY2ODQ2IDEyMDkgKSB1dG09MSBzdG09MCBjb3JlPTAKICAjMDAgIHBjIDAwMDBkYWUwICAvc3lzdGVtL2xpYi9saWJjLnNvIChlcG9sbF93YWl0KzEyKQogICMwMSAgcGMgMDAwMTQ3YTEgIC9zeXN0ZW0vbGliL2xpYnV0aWxzLnNvIChhbmRyb2lkOjpMb29wZXI6OnBvbGxJbm5lcihpbnQpKzk2KQogICMwMiAgcGMgMDAwMTRhMDkgIC9zeXN0ZW0vbGliL2xpYnV0aWxzLnNvIChhbmRyb2lkOjpMb29wZXI6OnBvbGxPbmNlKGludCwgaW50KiwgaW50Kiwgdm9pZCoqKSsxMDQpCiAgIzAzICBwYyAwMDA2MGY4NyAgL3N5c3RlbS9saWIvbGliYW5kcm9pZF9ydW50aW1lLnNvIChhbmRyb2lkOjpOYXRpdmVNZXNzYWdlUXVldWU6OnBvbGxPbmNlKF9KTklFbnYqLCBpbnQpKzIyKQogICMwNCAgcGMgMDAwMWRlZjAgIC9zeXN0ZW0vbGliL2xpYmR2bS5zbyAoZHZtUGxhdGZvcm1JbnZva2UrMTEyKQogICMwNSAgcGMgMDAwNGNkYWQgIC9zeXN0ZW0vbGliL2xpYmR2bS5zbyAoZHZtQ2FsbEpOSU1ldGhvZCh1bnNpZ25lZCBpbnQgY29uc3QqLCBKVmFsdWUqLCBNZXRob2QgY29uc3QqLCBUaHJlYWQqKSs0OTIpCiAgIzA2ICBwYyAwMDAyNzMyMCAgL3N5c3RlbS9saWIvbGliZHZtLnNvCiAgIzA3ICBwYyAwMDAyYjM4YyAgL3N5c3RlbS9saWIvbGliZHZtLnNvIChkdm1JbnRlcnByZXQoVGhyZWFkKiwgTWV0aG9kIGNvbnN0KiwgSlZhbHVlKikrMTgwKQogICMwOCAgcGMgMDAwNWZiMTkgIC9zeXN0ZW0vbGliL2xpYmR2bS5zbyAoZHZtQ2FsbE1ldGhvZFYoVGhyZWFkKiwgTWV0aG9kIGNvbnN0KiwgT2JqZWN0KiwgYm9vbCwgSlZhbHVlKiwgc3RkOjpfX3ZhX2xpc3QpKzI3MikKICAjMDkgIHBjIDAwMDVmYjQzICAvc3lzdGVtL2xpYi9saWJkdm0uc28gKGR2bUNhbGxNZXRob2QoVGhyZWFkKiwgTWV0aG9kIGNvbnN0KiwgT2JqZWN0KiwgSlZhbHVlKiwgLi4uKSsyMCkKICAjMTAgIHBjIDAwMDU0NGExICAvc3lzdGVtL2xpYi9saWJkdm0uc28KICAjMTEgIHBjIDAwMDEyZDY0ICAvc3lzdGVtL2xpYi9saWJjLnNvIChfX3RocmVhZF9lbnRyeSs0OCkKICBhdCBhbmRyb2lkLm9zLk1lc3NhZ2VRdWV1ZS5uYXRpdmVQb2xsT25jZShOYXRpdmUgTWV0aG9kKQogIGF0IGFuZHJvaWQub3MuTWVzc2FnZVF1ZXVlLm5leHQoTWVzc2FnZVF1ZXVlLmphdmE6MTI1KQogIGF0IGFuZHJvaWQub3MuTG9vcGVyLmxvb3AoTG9vcGVyLmphdmE6MTQwKQogIGF0IGFuZHJvaWQub3MuSGFuZGxlclRocmVhZC5ydW4oSGFuZGxlclRocmVhZC5qYXZhOjYwKQoKIkJpbmRlcl8zIiBwcmlvPTUgdGlkPTEzIE5BVElWRQogIHwgZ3JvdXA9Im1haW4iIHNDb3VudD0xIGRzQ291bnQ9MCBvYmo9MHg0MTg4ZTBhOCBzZWxmPTB4NTFjN2MxNjAKICB8IHN5c1RpZD02MTQ2IG5pY2U9MCBzY2hlZD0wLzAgY2dycD1hcHBzIGhhbmRsZT0xMzcyMTg5NDgwCiAgfCBzY2hlZHN0YXQ9KCA2MjU0MDc4IDcyMDk4NDYgMzMgKSB1dG09MCBzdG09MCBjb3JlPTAKICAjMDAgIHBjIDAwMDBjYzAwICAvc3lzdGVtL2xpYi9saWJjLnNvIChfX2lvY3RsKzgpCiAgIzAxICBwYyAwMDAzYzJjOCAgL3N5c3RlbS9saWIvbGliYy5zbyAoaW9jdGwrMjgpCiAgIzAyICBwYyAwMDAxNmJjMSAgL3N5c3RlbS9saWIvbGliYmluZGVyLnNvIChhbmRyb2lkOjpJUENUaHJlYWRTdGF0ZTo6dGFsa1dpdGhEcml2ZXIoYm9vbCkrMTI0KQogICMwMyAgcGMgMDAwMTczYTcgIC9zeXN0ZW0vbGliL2xpYmJpbmRlci5zbyAoYW5kcm9pZDo6SVBDVGhyZWFkU3RhdGU6OmpvaW5UaHJlYWRQb29sKGJvb2wpKzE1NCkKICAjMDQgIHBjIDAwMDFiMjExICAvc3lzdGVtL2xpYi9saWJiaW5kZXIuc28KICAjMDUgIHBjIDAwMDEwZjU3ICAvc3lzdGVtL2xpYi9saWJ1dGlscy5zbyAoYW5kcm9pZDo6VGhyZWFkOjpfdGhyZWFkTG9vcCh2b2lkKikrMTE0KQogICMwNiAgcGMgMDAwNGEyY2YgIC9zeXN0ZW0vbGliL2xpYmFuZHJvaWRfcnVudGltZS5zbyAoYW5kcm9pZDo6QW5kcm9pZFJ1bnRpbWU6OmphdmFUaHJlYWRTaGVsbCh2b2lkKikrMTUwKQogICMwNyAgcGMgMDAwMTBhYmQgIC9zeXN0ZW0vbGliL2xpYnV0aWxzLnNvCiAgIzA4ICBwYyAwMDAxMmQ2NCAgL3N5c3RlbS9saWIvbGliYy5zbyAoX190aHJlYWRfZW50cnkrNDgpCiAgYXQgZGFsdmlrLnN5c3RlbS5OYXRpdmVTdGFydC5ydW4oTmF0aXZlIE1ldGhvZCkKCiJqYXZhLmxhbmcuUHJvY2Vzc01hbmFnZXIiIGRhZW1vbiBwcmlvPTUgdGlkPTEyIFdBSVQKICB8IGdyb3VwPSJtYWluIiBzQ291bnQ9MSBkc0NvdW50PTAgb2JqPTB4NDE4OGRlYjAgc2VsZj0weDUxY2E3YmU4CiAgfCBzeXNUaWQ9NjE0NCBuaWNlPTAgc2NoZWQ9MC8wIGNncnA9YXBwcyBoYW5kbGU9MTM3MTkyNDI2NAogIHwgc2NoZWRzdGF0PSggNzc0NjkzIDI2MDY5MyAxMiApIHV0bT0wIHN0bT0wIGNvcmU9MAogIGF0IGphdmEubGFuZy5PYmplY3Qud2FpdChOYXRpdmUgTWV0aG9kKQogIC0gd2FpdGluZyBvbiA8MHg0MTg4ZGQyOD4gKGEgamF2YS51dGlsLkhhc2hNYXApCiAgYXQgamF2YS5sYW5nLk9iamVjdC53YWl0KE9iamVjdC5qYXZhOjM2NCkKICBhdCBqYXZhLmxhbmcuUHJvY2Vzc01hbmFnZXIud2FpdEZvck1vcmVDaGlsZHJlbihQcm9jZXNzTWFuYWdlci5qYXZhOjE0MCkKICBhdCBqYXZhLmxhbmcuUHJvY2Vzc01hbmFnZXIud2F0Y2hDaGlsZHJlbihQcm9jZXNzTWFuYWdlci5qYXZhOjEwNSkKICBhdCBqYXZhLmxhbmcuUHJvY2Vzc01hbmFnZXIuYWNjZXNzJDAwMChQcm9jZXNzTWFuYWdlci5qYXZhOjQwKQogIGF0IGphdmEubGFuZy5Qcm9jZXNzTWFuYWdlciQxLnJ1bihQcm9jZXNzTWFuYWdlci5qYXZhOjU4KQoKIk1NX1RocmVhZF9Qb29sX0ZyZWVfSGFuZGxlcl9UaHJlYWQjMiNUSFJFQURfUE9PTF9IQU5ETEVSIiBwcmlvPTUgdGlkPTExIE5BVElWRQogIHwgZ3JvdXA9Im1haW4iIHNDb3VudD0xIGRzQ291bnQ9MCBvYmo9MHg0MTg2MjYzMCBzZWxmPTB4NTFjN2IwMTAKICB8IHN5c1RpZD02MTQyIG5pY2U9MCBzY2hlZD0wLzAgY2dycD1hcHBzIGhhbmRsZT0xMzcyMDMzOTA0CiAgfCBzY2hlZHN0YXQ9KCA4NzEwODQ0IDcyNjI2MTggMzQgKSB1dG09MCBzdG09MCBjb3JlPTAKICAjMDAgIHBjIDAwMDBkYWUwICAvc3lzdGVtL2xpYi9saWJjLnNvIChlcG9sbF93YWl0KzEyKQogICMwMSAgcGMgMDAwMTQ3YTEgIC9zeXN0ZW0vbGliL2xpYnV0aWxzLnNvIChhbmRyb2lkOjpMb29wZXI6OnBvbGxJbm5lcihpbnQpKzk2KQogICMwMiAgcGMgMDAwMTRhMDkgIC9zeXN0ZW0vbGliL2xpYnV0aWxzLnNvIChhbmRyb2lkOjpMb29wZXI6OnBvbGxPbmNlKGludCwgaW50KiwgaW50Kiwgdm9pZCoqKSsxMDQpCiAgIzAzICBwYyAwMDA2MGY4NyAgL3N5c3RlbS9saWIvbGliYW5kcm9pZF9ydW50aW1lLnNvIChhbmRyb2lkOjpOYXRpdmVNZXNzYWdlUXVldWU6OnBvbGxPbmNlKF9KTklFbnYqLCBpbnQpKzIyKQogICMwNCAgcGMgMDAwMWRlZjAgIC9zeXN0ZW0vbGliL2xpYmR2bS5zbyAoZHZtUGxhdGZvcm1JbnZva2UrMTEyKQogICMwNSAgcGMgMDAwNGNkYWQgIC9zeXN0ZW0vbGliL2xpYmR2bS5zbyAoZHZtQ2FsbEpOSU1ldGhvZCh1bnNpZ25lZCBpbnQgY29uc3QqLCBKVmFsdWUqLCBNZXRob2QgY29uc3QqLCBUaHJlYWQqKSs0OTIpCiAgIzA2ICBwYyAwMDAyNzMyMCAgL3N5c3RlbS9saWIvbGliZHZtLnNvCiAgIzA3ICBwYyAwMDAyYjM4YyAgL3N5c3RlbS9saWIvbGliZHZtLnNvIChkdm1JbnRlcnByZXQoVGhyZWFkKiwgTWV0aG9kIGNvbnN0KiwgSlZhbHVlKikrMTgwKQogICMwOCAgcGMgMDAwNWZiMTkgIC9zeXN0ZW0vbGliL2xpYmR2bS5zbyAoZHZtQ2FsbE1ldGhvZFYoVGhyZWFkKiwgTWV0aG9kIGNvbnN0KiwgT2JqZWN0KiwgYm9vbCwgSlZhbHVlKiwgc3RkOjpfX3ZhX2xpc3QpKzI3MikKICAjMDkgIHBjIDAwMDVmYjQzICAvc3lzdGVtL2xpYi9saWJkdm0uc28gKGR2bUNhbGxNZXRob2QoVGhyZWFkKiwgTWV0aG9kIGNvbnN0KiwgT2JqZWN0KiwgSlZhbHVlKiwgLi4uKSsyMCkKICAjMTAgIHBjIDAwMDU0NGExICAvc3lzdGVtL2xpYi9saWJkdm0uc28KICAjMTEgIHBjIDAwMDEyZDY0ICAvc3lzdGVtL2xpYi9saWJjLnNvIChfX3RocmVhZF9lbnRyeSs0OCkKICBhdCBhbmRyb2lkLm9zLk1lc3NhZ2VRdWV1ZS5uYXRpdmVQb2xsT25jZShOYXRpdmUgTWV0aG9kKQogIGF0IGFuZHJvaWQub3MuTWVzc2FnZVF1ZXVlLm5leHQoTWVzc2FnZVF1ZXVlLmphdmE6MTI1KQogIGF0IGFuZHJvaWQub3MuTG9vcGVyLmxvb3AoTG9vcGVyLmphdmE6MTQwKQogIGF0IGFuZHJvaWQub3MuSGFuZGxlclRocmVhZC5ydW4oSGFuZGxlclRocmVhZC5qYXZhOjYwKQogIGF0IGNvbS50ZW5jZW50Lm1tLnNkay5oLmEkYS5ydW4oU291cmNlRmlsZTo3MSkKCiJNTV9UaHJlYWRfUG9vbF9GcmVlX0hhbmRsZXJfVGhyZWFkIzEjU1ZHIFJlc291cmNlIFJlcG9ydCBAamFja3Nnb25nIiBwcmlvPTUgdGlkPTEwIE5BVElWRQogIHwgZ3JvdXA9Im1haW4iIHNDb3VudD0xIGRzQ291bnQ9MCBvYmo9MHg0MTg0MjBmMCBzZWxmPTB4NGVlOGIxZDAKICB8IHN5c1RpZD02MTQwIG5pY2U9MCBzY2hlZD0wLzAgY2dycD1hcHBzIGhhbmRsZT0xMzMzNzM1OTIwCiAgfCBzY2hlZHN0YXQ9KCA3NzY1MzA4IDY1NzY5MiA2ICkgdXRtPTAgc3RtPTAgY29yZT0xCiAgIzAwICBwYyAwMDAwZGFlMCAgL3N5c3RlbS9saWIvbGliYy5zbyAoZXBvbGxfd2FpdCsxMikKICAjMDEgIHBjIDAwMDE0N2ExICAvc3lzdGVtL2xpYi9saWJ1dGlscy5zbyAoYW5kcm9pZDo6TG9vcGVyOjpwb2xsSW5uZXIoaW50KSs5NikKICAjMDIgIHBjIDAwMDE0YTA5ICAvc3lzdGVtL2xpYi9saWJ1dGlscy5zbyAoYW5kcm9pZDo6TG9vcGVyOjpwb2xsT25jZShpbnQsIGludCosIGludCosIHZvaWQqKikrMTA0KQogICMwMyAgcGMgMDAwNjBmODcgIC9zeXN0ZW0vbGliL2xpYmFuZHJvaWRfcnVudGltZS5zbyAoYW5kcm9pZDo6TmF0aXZlTWVzc2FnZVF1ZXVlOjpwb2xsT25jZShfSk5JRW52KiwgaW50KSsyMikKICAjMDQgIHBjIDAwMDFkZWYwICAvc3lzdGVtL2xpYi9saWJkdm0uc28gKGR2bVBsYXRmb3JtSW52b2tlKzExMikKICAjMDUgIHBjIDAwMDRjZGFkICAvc3lzdGVtL2xpYi9saWJkdm0uc28gKGR2bUNhbGxKTklNZXRob2QodW5zaWduZWQgaW50IGNvbnN0KiwgSlZhbHVlKiwgTWV0aG9kIGNvbnN0KiwgVGhyZWFkKikrNDkyKQogICMwNiAgcGMgMDAwMjczMjAgIC9zeXN0ZW0vbGliL2xpYmR2bS5zbwogICMwNyAgcGMgMDAwMmIzOGMgIC9zeXN0ZW0vbGliL2xpYmR2bS5zbyAoZHZtSW50ZXJwcmV0KFRocmVhZCosIE1ldGhvZCBjb25zdCosIEpWYWx1ZSopKzE4MCkKICAjMDggIHBjIDAwMDVmYjE5ICAvc3lzdGVtL2xpYi9saWJkdm0uc28gKGR2bUNhbGxNZXRob2RWKFRocmVhZCosIE1ldGhvZCBjb25zdCosIE9iamVjdCosIGJvb2wsIEpWYWx1ZSosIHN0ZDo6X192YV9saXN0KSsyNzIpCiAgIzA5ICBwYyAwMDA1ZmI0MyAgL3N5c3RlbS9saWIvbGliZHZtLnNvIChkdm1DYWxsTWV0aG9kKFRocmVhZCosIE1ldGhvZCBjb25zdCosIE9iamVjdCosIEpWYWx1ZSosIC4uLikrMjApCiAgIzEwICBwYyAwMDA1NDRhMSAgL3N5c3RlbS9saWIvbGliZHZtLnNvCiAgIzExICBwYyAwMDAxMmQ2NCAgL3N5c3RlbS9saWIvbGliYy5zbyAoX190aHJlYWRfZW50cnkrNDgpCiAgYXQgYW5kcm9pZC5vcy5NZXNzYWdlUXVldWUubmF0aXZlUG9sbE9uY2UoTmF0aXZlIE1ldGhvZCkKICBhdCBhbmRyb2lkLm9zLk1lc3NhZ2VRdWV1ZS5uZXh0KE1lc3NhZ2VRdWV1ZS5qYXZhOjEyNSkKICBhdCBhbmRyb2lkLm9zLkxvb3Blci5sb29wKExvb3Blci5qYXZhOjE0MCkKICBhdCBhbmRyb2lkLm9zLkhhbmRsZXJUaHJlYWQucnVuKEhhbmRsZXJUaHJlYWQuamF2YTo2MCkKICBhdCBjb20udGVuY2VudC5tbS5zZGsuaC5hJGEucnVuKFNvdXJjZUZpbGU6NzEpCgoiQmluZGVyXzIiIHByaW89NSB0aWQ9OSBOQVRJVkUKICB8IGdyb3VwPSJtYWluIiBzQ291bnQ9MSBkc0NvdW50PTAgb2JqPTB4NDE1ZTZiNDAgc2VsZj0weDUxY2I5MjY4CiAgfCBzeXNUaWQ9NjEzMiBuaWNlPTAgc2NoZWQ9MC8wIGNncnA9YXBwcyBoYW5kbGU9MTMzMzc0MjQ3MgogIHwgc2NoZWRzdGF0PSggMjM4MjkyMyA3MTY4OTk5IDkgKSB1dG09MCBzdG09MCBjb3JlPTEKICAjMDAgIHBjIDAwMDBjYzAwICAvc3lzdGVtL2xpYi9saWJjLnNvIChfX2lvY3RsKzgpCiAgIzAxICBwYyAwMDAzYzJjOCAgL3N5c3RlbS9saWIvbGliYy5zbyAoaW9jdGwrMjgpCiAgIzAyICBwYyAwMDAxNmJjMSAgL3N5c3RlbS9saWIvbGliYmluZGVyLnNvIChhbmRyb2lkOjpJUENUaHJlYWRTdGF0ZTo6dGFsa1dpdGhEcml2ZXIoYm9vbCkrMTI0KQogICMwMyAgcGMgMDAwMTczYTcgIC9zeXN0ZW0vbGliL2xpYmJpbmRlci5zbyAoYW5kcm9pZDo6SVBDVGhyZWFkU3RhdGU6OmpvaW5UaHJlYWRQb29sKGJvb2wpKzE1NCkKICAjMDQgIHBjIDAwMDFiMjExICAvc3lzdGVtL2xpYi9saWJiaW5kZXIuc28KICAjMDUgIHBjIDAwMDEwZjU3ICAvc3lzdGVtL2xpYi9saWJ1dGlscy5zbyAoYW5kcm9pZDo6VGhyZWFkOjpfdGhyZWFkTG9vcCh2b2lkKikrMTE0KQogICMwNiAgcGMgMDAwNGEyY2YgIC9zeXN0ZW0vbGliL2xpYmFuZHJvaWRfcnVudGltZS5zbyAoYW5kcm9pZDo6QW5kcm9pZFJ1bnRpbWU6OmphdmFUaHJlYWRTaGVsbCh2b2lkKikrMTUwKQogICMwNyAgcGMgMDAwMTBhYmQgIC9zeXN0ZW0vbGliL2xpYnV0aWxzLnNvCiAgIzA4ICBwYyAwMDAxMmQ2NCAgL3N5c3RlbS9saWIvbGliYy5zbyAoX190aHJlYWRfZW50cnkrNDgpCiAgYXQgZGFsdmlrLnN5c3RlbS5OYXRpdmVTdGFydC5ydW4oTmF0aXZlIE1ldGhvZCkKCiJCaW5kZXJfMSIgcHJpbz01IHRpZD04IE5BVElWRQogIHwgZ3JvdXA9Im1haW4iIHNDb3VudD0xIGRzQ291bnQ9MCBvYmo9MHg0MTVlNjlhMCBzZWxmPTB4NTFjNzdhMzAKICB8IHN5c1RpZD02MTMxIG5pY2U9MCBzY2hlZD0wLzAgY2dycD1hcHBzIGhhbmRsZT0xMzcxOTczMzYwCiAgfCBzY2hlZHN0YXQ9KCA1MjgyNjE2IDY2MDIyMzEgMjcgKSB1dG09MCBzdG09MCBjb3JlPTEKICAjMDAgIHBjIDAwMDBjYzAwICAvc3lzdGVtL2xpYi9saWJjLnNvIChfX2lvY3RsKzgpCiAgIzAxICBwYyAwMDAzYzJjOCAgL3N5c3RlbS9saWIvbGliYy5zbyAoaW9jdGwrMjgpCiAgIzAyICBwYyAwMDAxNmJjMSAgL3N5c3RlbS9saWIvbGliYmluZGVyLnNvIChhbmRyb2lkOjpJUENUaHJlYWRTdGF0ZTo6dGFsa1dpdGhEcml2ZXIoYm9vbCkrMTI0KQogICMwMyAgcGMgMDAwMTczYTcgIC9zeXN0ZW0vbGliL2xpYmJpbmRlci5zbyAoYW5kcm9pZDo6SVBDVGhyZWFkU3RhdGU6OmpvaW5UaHJlYWRQb29sKGJvb2wpKzE1NCkKICAjMDQgIHBjIDAwMDFiMjExICAvc3lzdGVtL2xpYi9saWJiaW5kZXIuc28KICAjMDUgIHBjIDAwMDEwZjU3ICAvc3lzdGVtL2xpYi9saWJ1dGlscy5zbyAoYW5kcm9pZDo6VGhyZWFkOjpfdGhyZWFkTG9vcCh2b2lkKikrMTE0KQogICMwNiAgcGMgMDAwNGEyY2YgIC9zeXN0ZW0vbGliL2xpYmFuZHJvaWRfcnVudGltZS5zbyAoYW5kcm9pZDo6QW5kcm9pZFJ1bnRpbWU6OmphdmFUaHJlYWRTaGVsbCh2b2lkKikrMTUwKQogICMwNyAgcGMgMDAwMTBhYmQgIC9zeXN0ZW0vbGliL2xpYnV0aWxzLnNvCiAgIzA4ICBwYyAwMDAxMmQ2NCAgL3N5c3RlbS9saWIvbGliYy5zbyAoX190aHJlYWRfZW50cnkrNDgpCiAgYXQgZGFsdmlrLnN5c3RlbS5OYXRpdmVTdGFydC5ydW4oTmF0aXZlIE1ldGhvZCkKCiJGaW5hbGl6ZXJXYXRjaGRvZ0RhZW1vbiIgZGFlbW9uIHByaW89NSB0aWQ9NyBUSU1FRF9XQUlUCiAgfCBncm91cD0ic3lzdGVtIiBzQ291bnQ9MSBkc0NvdW50PTAgb2JqPTB4NDE1ZTM4YTAgc2VsZj0weDUxYzc4ZGQwCiAgfCBzeXNUaWQ9NjEzMCBuaWNlPTAgc2NoZWQ9MC8wIGNncnA9YXBwcyBoYW5kbGU9MTM3MTk0NzY0MAogIHwgc2NoZWRzdGF0PSggMzc2MjI5IDYzNzA2OTIgMTAgKSB1dG09MCBzdG09MCBjb3JlPTEKICBhdCBqYXZhLmxhbmcuVk1UaHJlYWQuc2xlZXAoTmF0aXZlIE1ldGhvZCkKICBhdCBqYXZhLmxhbmcuVGhyZWFkLnNsZWVwKFRocmVhZC5qYXZhOjEwMzEpCiAgYXQgamF2YS5sYW5nLlRocmVhZC5zbGVlcChUaHJlYWQuamF2YToxMDEzKQogIGF0IGphdmEubGFuZy5EYWVtb25zJEZpbmFsaXplcldhdGNoZG9nRGFlbW9uLnNsZWVwRm9yKERhZW1vbnMuamF2YToyNTMpCiAgYXQgamF2YS5sYW5nLkRhZW1vbnMkRmluYWxpemVyV2F0Y2hkb2dEYWVtb24ud2FpdEZvckZpbmFsaXphdGlvbihEYWVtb25zLmphdmE6MjYzKQogIGF0IGphdmEubGFuZy5EYWVtb25zJEZpbmFsaXplcldhdGNoZG9nRGFlbW9uLnJ1bihEYWVtb25zLmphdmE6MjE3KQogIGF0IGphdmEubGFuZy5UaHJlYWQucnVuKFRocmVhZC5qYXZhOjg1NikKCiJGaW5hbGl6ZXJEYWVtb24iIGRhZW1vbiBwcmlvPTUgdGlkPTYgV0FJVAogIHwgZ3JvdXA9InN5c3RlbSIgc0NvdW50PTEgZHNDb3VudD0wIG9iaj0weDQxNWUzNzQ4IHNlbGY9MHg1MWM3YzdlOAogIHwgc3lzVGlkPTYxMjkgbmljZT0wIHNjaGVkPTAvMCBjZ3JwPWFwcHMgaGFuZGxlPTEzNzIwOTM4MjQKICB8IHNjaGVkc3RhdD0oIDUxNDk5NTY1IDQzNTg1MzU4IDg1OSApIHV0bT00IHN0bT0xIGNvcmU9MAogIGF0IGphdmEubGFuZy5PYmplY3Qud2FpdChOYXRpdmUgTWV0aG9kKQogIC0gd2FpdGluZyBvbiA8MHg0MGRiMTVlOD4gKGEgamF2YS5sYW5nLnJlZi5SZWZlcmVuY2VRdWV1ZSkKICBhdCBqYXZhLmxhbmcuT2JqZWN0LndhaXQoT2JqZWN0LmphdmE6NDAxKQogIGF0IGphdmEubGFuZy5yZWYuUmVmZXJlbmNlUXVldWUucmVtb3ZlKFJlZmVyZW5jZVF1ZXVlLmphdmE6MTAyKQogIGF0IGphdmEubGFuZy5yZWYuUmVmZXJlbmNlUXVldWUucmVtb3ZlKFJlZmVyZW5jZVF1ZXVlLmphdmE6NzMpCiAgYXQgamF2YS5sYW5nLkRhZW1vbnMkRmluYWxpemVyRGFlbW9uLnJ1bihEYWVtb25zLmphdmE6MTc1KQogIGF0IGphdmEubGFuZy5UaHJlYWQucnVuKFRocmVhZC5qYXZhOjg1NikKCiJSZWZlcmVuY2VRdWV1ZURhZW1vbiIgZGFlbW9uIHByaW89NSB0aWQ9NSBXQUlUCiAgfCBncm91cD0ic3lzdGVtIiBzQ291bnQ9MSBkc0NvdW50PTAgb2JqPTB4NDE1ZTM1ZTAgc2VsZj0weDUxYzY3MDEwCiAgfCBzeXNUaWQ9NjEyOCBuaWNlPTAgc2NoZWQ9MC8wIGNncnA9YXBwcyBoYW5kbGU9MTM3MjA5MzIwMAogIHwgc2NoZWRzdGF0PSggMjc5MzE1NSAyNzgzOTIzIDQ1ICkgdXRtPTAgc3RtPTAgY29yZT0xCiAgYXQgamF2YS5sYW5nLk9iamVjdC53YWl0KE5hdGl2ZSBNZXRob2QpCiAgLSB3YWl0aW5nIG9uIDwweDQwZGIxNTEwPiAKICBhdCBqYXZhLmxhbmcuT2JqZWN0LndhaXQoT2JqZWN0LmphdmE6MzY0KQogIGF0IGphdmEubGFuZy5EYWVtb25zJFJlZmVyZW5jZVF1ZXVlRGFlbW9uLnJ1bihEYWVtb25zLmphdmE6MTM1KQogIGF0IGphdmEubGFuZy5UaHJlYWQucnVuKFRocmVhZC5qYXZhOjg1NikKCiJDb21waWxlciIgZGFlbW9uIHByaW89NSB0aWQ9NCBWTVdBSVQKICB8IGdyb3VwPSJzeXN0ZW0iIHNDb3VudD0xIGRzQ291bnQ9MCBvYmo9MHg0MTVlMzRmMCBzZWxmPTB4NTFjNzY1ZjgKICB8IHN5c1RpZD02MTI3IG5pY2U9MCBzY2hlZD0wLzAgY2dycD1hcHBzIGhhbmRsZT0xMzcxOTc3MzUyCiAgfCBzY2hlZHN0YXQ9KCAyMDgwNzg3NzEgMjMzNTkzOTI2IDY1NzYgKSB1dG09MTEgc3RtPTkgY29yZT0xCiAgIzAwICBwYyAwMDAwZGQxMCAgL3N5c3RlbS9saWIvbGliYy5zbyAoX19mdXRleF9zeXNjYWxsMys4KQogICMwMSAgcGMgMDAwMTJkYTggIC9zeXN0ZW0vbGliL2xpYmMuc28gKF9fcHRocmVhZF9jb25kX3RpbWVkd2FpdF9yZWxhdGl2ZSs0OCkKICAjMDIgIHBjIDAwMDEyZTA0ICAvc3lzdGVtL2xpYi9saWJjLnNvIChfX3B0aHJlYWRfY29uZF90aW1lZHdhaXQrNjApCiAgIzAzICBwYyAwMDA2ZmYyMSAgL3N5c3RlbS9saWIvbGliZHZtLnNvCiAgIzA0ICBwYyAwMDA1M2MxYiAgL3N5c3RlbS9saWIvbGliZHZtLnNvCiAgIzA1ICBwYyAwMDAxMmQ2NCAgL3N5c3RlbS9saWIvbGliYy5zbyAoX190aHJlYWRfZW50cnkrNDgpCiAgYXQgZGFsdmlrLnN5c3RlbS5OYXRpdmVTdGFydC5ydW4oTmF0aXZlIE1ldGhvZCkKCiJTaWduYWwgQ2F0Y2hlciIgZGFlbW9uIHByaW89NSB0aWQ9MyBSVU5OQUJMRQogIHwgZ3JvdXA9InN5c3RlbSIgc0NvdW50PTAgZHNDb3VudD0wIG9iaj0weDQxNWUzM2Y4IHNlbGY9MHg1MWM3MjlhMAogIHwgc3lzVGlkPTYxMjYgbmljZT0tOCBzY2hlZD0wLzAgY2dycD1hcHBzIGhhbmRsZT0xMzYyODU5NjcyCiAgfCBzY2hlZHN0YXQ9KCA3MjA0OTIyNCA2Mjk2NzU0NSAxNjk3ICkgdXRtPTAgc3RtPTcgY29yZT0wCiAgYXQgZGFsdmlrLnN5c3RlbS5OYXRpdmVTdGFydC5ydW4oTmF0aXZlIE1ldGhvZCkKCiJHQyIgZGFlbW9uIHByaW89NSB0aWQ9MiBWTVdBSVQKICB8IGdyb3VwPSJzeXN0ZW0iIHNDb3VudD0xIGRzQ291bnQ9MCBvYmo9MHg0MTVlMzMxOCBzZWxmPTB4NGVlOTM1ZDAKICB8IHN5c1RpZD02MTI1IG5pY2U9MCBzY2hlZD0wLzAgY2dycD1hcHBzIGhhbmRsZT0xMjkzOTQ2NDE2CiAgfCBzY2hlZHN0YXQ9KCAxNDM2Nzk5ODYgODgzOTQwMTQgMjU2OCApIHV0bT0xMSBzdG09MyBjb3JlPTEKICAjMDAgIHBjIDAwMDBkZDEwICAvc3lzdGVtL2xpYi9saWJjLnNvIChfX2Z1dGV4X3N5c2NhbGwzKzgpCiAgIzAxICBwYyAwMDAxMmRhOCAgL3N5c3RlbS9saWIvbGliYy5zbyAoX19wdGhyZWFkX2NvbmRfdGltZWR3YWl0X3JlbGF0aXZlKzQ4KQogICMwMiAgcGMgMDAwMTJlMDQgIC9zeXN0ZW0vbGliL2xpYmMuc28gKF9fcHRocmVhZF9jb25kX3RpbWVkd2FpdCs2MCkKICAjMDMgIHBjIDAwMDZlZDMxICAvc3lzdGVtL2xpYi9saWJkdm0uc28KICAjMDQgIHBjIDAwMDUzYzFiICAvc3lzdGVtL2xpYi9saWJkdm0uc28KICAjMDUgIHBjIDAwMDEyZDY0ICAvc3lzdGVtL2xpYi9saWJjLnNvIChfX3RocmVhZF9lbnRyeSs0OCkKICBhdCBkYWx2aWsuc3lzdGVtLk5hdGl2ZVN0YXJ0LnJ1bihOYXRpdmUgTWV0aG9kKQoKTkFUSVZFIFRIUkVBRFM6CiJlbmNlbnQubW06dG9vbHMiIHN5c1RpZD02MTQ4IG5pY2U9MCBzY2hlZD0wLzAgY2dycD1hcHBzCiAgfCBzY2hlZHN0YXQ9KCA5OTY5MyA2MzgyMzA3IDEgKSB1dG09MCBzdG09MCBjb3JlPTAKCiJlbmNlbnQubW06dG9vbHMiIHN5c1RpZD02MTQ5IG5pY2U9MCBzY2hlZD0wLzAgY2dycD1hcHBzCiAgfCBzY2hlZHN0YXQ9KCA0NTc3MCAxNzcwMDE1MyAxICkgdXRtPTAgc3RtPTAgY29yZT0wCgoiVGV4dHVyZXNHZW5lcmF0IiBzeXNUaWQ9NjE2MyBuaWNlPTAgc2NoZWQ9MC8wIGNncnA9YXBwcwogIHwgc2NoZWRzdGF0PSggMzE4NjkyIDAgMiApIHV0bT0wIHN0bT0wIGNvcmU9MQoKIlNpZ25hbFNlbmRlciIgc3lzVGlkPTYxNjUgbmljZT0wIHNjaGVkPTAvMCBjZ3JwPWFwcHMKICB8IHNjaGVkc3RhdD0oIDgyMDAwIDAgMiApIHV0bT0wIHN0bT0wIGNvcmU9MQoK