PCFET0NUWVBFIGh0bWwgUFVCTElDICItLy9XM0MvL0RURCBYSFRNTCAxLjAgVHJhbnNpdGlvbmFsLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL1RSL3hodG1sMS9EVEQveGh0bWwxLXRyYW5zaXRpb25hbC5kdGQiPjxodG1sPjxoZWFkPjx0aXRsZT5BcGFjaGUgU2FuZGVzaGEyL0MgLSBTYW5kZXNoYTIvQzogSW4gTWVtb3J5IFNlcXVlbmNlIE1hbmFnZXI8L3RpdGxlPjxzdHlsZSB0eXBlPSJ0ZXh0L2NzcyIgbWVkaWE9ImFsbCI+CiAgICAgICAgICBAaW1wb3J0IHVybCgiLi4vLi4vc3R5bGUvbWF2ZW4tYmFzZS5jc3MiKTsKICAgICAgICAgIAoJCQkgICAgQGltcG9ydCB1cmwoIi4uLy4uL3N0eWxlL21hdmVuLWNsYXNzaWMuY3NzIik7PC9zdHlsZT48bGluayByZWw9InN0eWxlc2hlZXQiIGhyZWY9Ii4uLy4uL3N0eWxlL3ByaW50LmNzcyIgdHlwZT0idGV4dC9jc3MiIG1lZGlhPSJwcmludCI+PC9saW5rPjxtZXRhIGh0dHAtZXF1aXY9IkNvbnRlbnQtVHlwZSIgY29udGVudD0idGV4dC9odG1sOyBjaGFyc2V0PUlTTy04ODU5LTEiPjwvbWV0YT48L2hlYWQ+PGJvZHkgY2xhc3M9ImNvbXBvc2l0ZSI+PGRpdiBpZD0iYmFubmVyIj48YSBocmVmPSJodHRwOi8vd3d3LmFwYWNoZS5vcmcvIiBpZD0ib3JnYW5pemF0aW9uTG9nbyI+PGltZyBhbHQ9IkFwYWNoZSBTb2Z0d2FyZSBGb3VuZGF0aW9uIiBzcmM9Imh0dHA6Ly93d3cuYXBhY2hlLm9yZy9pbWFnZXMvYXNmLWxvZ28uZ2lmIj48L2ltZz48L2E+PGEgaHJlZj0iaHR0cDovL3dzLmFwYWNoZS5vcmcvc2FuZGVzaGEyL2MiIGlkPSJwcm9qZWN0TG9nbyI+PGltZyBhbHQ9IkFwYWNoZSBTYW5kZXNoYTIvQyIgc3JjPSJodHRwOi8vd3MuYXBhY2hlLm9yZy9zYW5kZXNoYTIvYy9pbWFnZXMvc2FuZGVzaGEyY19sb2dvLmpwZyI+PC9pbWc+PC9hPjxkaXYgY2xhc3M9ImNsZWFyIj48aHI+PC9ocj48L2Rpdj48L2Rpdj48ZGl2IGlkPSJicmVhZGNydW1icyI+PGRpdiBjbGFzcz0ieGxlZnQiPgogICAgICAgICAgICAgICAgCUxhc3QgcHVibGlzaGVkOiAwNSBPY3RvYmVyIDIwMDcKICAgICAgICAgICAgICAgICAgfCBEb2MgZm9yIDAuOTE8L2Rpdj48ZGl2IGNsYXNzPSJ4cmlnaHQiPjwvZGl2PjxkaXYgY2xhc3M9ImNsZWFyIj48aHI+PC9ocj48L2Rpdj48L2Rpdj48ZGl2IGlkPSJsZWZ0Q29sdW1uIj48ZGl2IGlkPSJuYXZjb2x1bW4iPjxkaXYgaWQ9Im1lbnVBcGFjaGVfU2FuZGVzaGEyX0MiPjxoNT5BcGFjaGUgU2FuZGVzaGEyL0M8L2g1Pjx1bD48bGkgY2xhc3M9Im5vbmUiPjxhIGhyZWY9Ii4uLy4uL2luZGV4Lmh0bWwiPkFwYWNoZSBTYW5kZXNoYTIvQyBIb21lPC9hPjwvbGk+PGxpIGNsYXNzPSJleHBhbmRlZCI+PGEgaHJlZj0iLi4vLi4vZG93bmxvYWQuY2dpIj5Eb3dubG9hZCBTYW5kZXNoYTIvQzwvYT48dWw+PGxpIGNsYXNzPSJub25lIj48YSBocmVmPSIuLi8uLi9kb3dubG9hZC5jZ2kiPlJlbGVhc2VzPC9hPjwvbGk+PC91bD48L2xpPjxsaSBjbGFzcz0iZXhwYW5kZWQiPjxhIGhyZWY9Ii4uLy4uL2RvY3MvaW5kZXguaHRtbCI+RG9jdW1lbnRhdGlvbjwvYT48dWw+PGxpIGNsYXNzPSJub25lIj48YSBocmVmPSIuLi8uLi9kb2NzL2luc3RhbGxhdGlvbmd1aWRlLmh0bWwiPkluc3RhbGxhdGlvbiBHdWlkZTwvYT48L2xpPjxsaSBjbGFzcz0ibm9uZSI+PGEgaHJlZj0iLi4vLi4vZG9jcy9zYW5kZXNoYTJjX21hbnVhbC5odG1sIj5TYW5kZXNoYTIvQyBtYW51YWw8L2E+PC9saT48L3VsPjwvbGk+PGxpIGNsYXNzPSJleHBhbmRlZCI+PGEgaHJlZj0iLi4vLi4vbGlzdHNfaXNzdWVzLmh0bWwiPkdldCBJbnZvbHZlZDwvYT48dWw+PGxpIGNsYXNzPSJub25lIj48YSBocmVmPSIuLi8uLi9saXN0c19pc3N1ZXMuaHRtbCI+TWFpbGluZyBMaXN0cyAmYW1wOyBJc3N1ZSBUcmFja2luZzwvYT48L2xpPjxsaSBjbGFzcz0ibm9uZSI+PGEgaHJlZj0iLi4vLi4vc3ZuLmh0bWwiPkNoZWNrb3V0IFNvdXJjZSBDb2RlPC9hPjwvbGk+PC91bD48L2xpPjxsaSBjbGFzcz0iZXhwYW5kZWQiPjxhIGhyZWY9Ii4uLy4uL2NvZGluZ19jb252ZW50aW9ucy5odG1sIj5EZXZlbG9wZXIgR3VpZGVsaW5lczwvYT48dWw+PGxpIGNsYXNzPSJub25lIj48YSBocmVmPSIuLi8uLi9jb2RpbmdfY29udmVudGlvbnMuaHRtbCI+Q29kaW5nIENvbnZlbnRpb248L2E+PC9saT48bGkgY2xhc3M9Im5vbmUiPjxhIGhyZWY9Ii4uLy4uL3ZlcnNpb25pbmcuaHRtbCI+VmVyc2lvbm5pbmc8L2E+PC9saT48L3VsPjwvbGk+PGxpIGNsYXNzPSJleHBhbmRlZCI+PGEgaHJlZj0iLi4vLi4vdGVhbS1saXN0Lmh0bWwiPlByb2plY3QgSW5mb3JtYXRpb248L2E+PHVsPjxsaSBjbGFzcz0ibm9uZSI+PGEgaHJlZj0iLi4vLi4vdGVhbS1saXN0Lmh0bWwiPlByb2plY3QgVGVhbTwvYT48L2xpPjxsaSBjbGFzcz0ibm9uZSI+PGEgaHJlZj0iaHR0cDovL3N2bi5hcGFjaGUub3JnL3ZpZXd2Yy93ZWJzZXJ2aWNlcy9zYW5kZXNoYS90cnVuay9jLyIgY2xhc3M9ImV4dGVybmFsTGluayIgdGl0bGU9IkV4dGVybmFsIExpbmsiPlNvdXJjZSBDb2RlPC9hPjwvbGk+PC91bD48L2xpPjwvdWw+PC9kaXY+PGEgaHJlZj0iaHR0cDovL21hdmVuLmFwYWNoZS5vcmcvIiB0aXRsZT0iQnVpbHQgYnkgTWF2ZW4iIGlkPSJwb3dlcmVkQnkiPjxpbWcgYWx0PSJCdWlsdCBieSBNYXZlbiIgc3JjPSIuLi8uLi9pbWFnZXMvbG9nb3MvbWF2ZW4tYnV0dG9uLTEucG5nIj48L2ltZz48L2E+PC9kaXY+PC9kaXY+PGRpdiBpZD0iYm9keUNvbHVtbiI+PGRpdiBjbGFzcz0iY29udGVudEJveCI+PGRpdiBjbGFzcz0ic2VjdGlvbiI+PHA+CjxkaXYgY2xhc3M9InRhYnMiPgogIDx1bD4KICAgIDxsaT48YSBocmVmPSJpbmRleC5odG1sIj48c3Bhbj5NYWluoFBhZ2U8L3NwYW4+PC9hPjwvbGk+CiAgICA8bGk+PGEgaHJlZj0ibW9kdWxlcy5odG1sIj48c3Bhbj5Nb2R1bGVzPC9zcGFuPjwvYT48L2xpPgogICAgPGxpPjxhIGhyZWY9ImFubm90YXRlZC5odG1sIj48c3Bhbj5DbGFzc2VzPC9zcGFuPjwvYT48L2xpPgogICAgPGxpPjxhIGhyZWY9ImZpbGVzLmh0bWwiPjxzcGFuPkZpbGVzPC9zcGFuPjwvYT48L2xpPgogICAgPGxpPjxhIGhyZWY9ImRpcnMuaHRtbCI+PHNwYW4+RGlyZWN0b3JpZXM8L3NwYW4+PC9hPjwvbGk+CiAgPC91bD4KPC9kaXY+PC9wPjwvZGl2PjxkaXYgY2xhc3M9InNlY3Rpb24iPjxhIG5hbWU9IkluX01lbW9yeV9TZXF1ZW5jZV9NYW5hZ2VyIj48L2E+PGgyPkluIE1lbW9yeSBTZXF1ZW5jZSBNYW5hZ2VyPC9oMj48dGFibGUgY2xhc3M9ImJvZHlUYWJsZSI+PHRyIGNsYXNzPSJhIj48dGQ+PC90ZD48L3RyPjx0ciBjbGFzcz0iYiI+PHRkIGNvbHNwYW49IjIiPjxicj48L2JyPjxoMj5GdW5jdGlvbnM8L2gyPjwvdGQ+PC90cj48dHIgY2xhc3M9ImEiPjx0ZCBjbGFzcz0ibWVtSXRlbUxlZnQiIG5vd3JhcD0iIiBhbGlnbj0icmlnaHQiIHZhbGlnbj0idG9wIj48YSBjbGFzcz0iYW5jaG9yIiBuYW1lPSJnYjkzM2IxZTYwYTA2MWYyMmM1NzhmZGIzNDY3NWZkMWYiPjwvYT4KQVhJUzJfRVhURVJOIDxicj48L2JyPgpheGlzMl9jaGFyX3QgKqA8L3RkPjx0ZCBjbGFzcz0ibWVtSXRlbVJpZ2h0IiB2YWxpZ249ImJvdHRvbSI+PGI+c2FuZGVzaGEyX3NlcV9tZ3Jfc2V0dXBfbmV3X3NlcTwvYj4gKGNvbnN0IGF4dXRpbF9lbnZfdCAqZW52LCBzYW5kZXNoYTJfbXNnX2N0eF90ICpjcmVhdGVfc2VxX21zZywgc2FuZGVzaGEyX3N0b3JhZ2VfbWdyX3QgKnN0b3JhZ2VfbWdyKTwvdGQ+PC90cj48dHIgY2xhc3M9ImIiPjx0ZCBjbGFzcz0ibWVtSXRlbUxlZnQiIG5vd3JhcD0iIiBhbGlnbj0icmlnaHQiIHZhbGlnbj0idG9wIj5BWElTMl9FWFRFUk4gPGJyPjwvYnI+CmF4aXMyX3N0YXR1c190oDwvdGQ+PHRkIGNsYXNzPSJtZW1JdGVtUmlnaHQiIHZhbGlnbj0iYm90dG9tIj48YSBjbGFzcz0iZWwiIGhyZWY9Imdyb3VwX19zYW5kZXNoYTJfX3NlcV9fbWdyLmh0bWwjZ2U1YTU3NWZkNjQxNmJhYjNkZjk1N2I1ZmY0M2MwYjUzIj5zYW5kZXNoYTJfc2VxX21ncl91cGRhdGVfbGFzdF9hY3RpdmF0ZWRfdGltZTwvYT4gKGNvbnN0IGF4dXRpbF9lbnZfdCAqZW52LCBheGlzMl9jaGFyX3QgKnByb3BlcnR5X2tleSwgc2FuZGVzaGEyX3N0b3JhZ2VfbWdyX3QgKnN0b3JhZ2VfbWdyKTwvdGQ+PC90cj48dHIgY2xhc3M9ImEiPjx0ZCBjbGFzcz0ibWVtSXRlbUxlZnQiIG5vd3JhcD0iIiBhbGlnbj0icmlnaHQiIHZhbGlnbj0idG9wIj48YSBjbGFzcz0iYW5jaG9yIiBuYW1lPSJnMTdmMWZmMTUzOTM2MjgwMzVhYjI0NzFlMzI0YjcyNDAiPjwvYT4KQVhJUzJfRVhURVJOIGF4aXMyX2Jvb2xfdKA8L3RkPjx0ZCBjbGFzcz0ibWVtSXRlbVJpZ2h0IiB2YWxpZ249ImJvdHRvbSI+PGI+c2FuZGVzaGEyX3NlcV9tZ3JfaGFzX3NlcV90aW1lZG91dDwvYj4gKGNvbnN0IGF4dXRpbF9lbnZfdCAqZW52LCBheGlzMl9jaGFyX3QgKnByb3BlcnR5X2tleSwgc2FuZGVzaGEyX21zZ19jdHhfdCAqcm1fbXNnX2N0eCwgc2FuZGVzaGEyX3N0b3JhZ2VfbWdyX3QgKnN0b3JhZ2VfbWdyKTwvdGQ+PC90cj48dHIgY2xhc3M9ImIiPjx0ZCBjbGFzcz0ibWVtSXRlbUxlZnQiIG5vd3JhcD0iIiBhbGlnbj0icmlnaHQiIHZhbGlnbj0idG9wIj48YSBjbGFzcz0iYW5jaG9yIiBuYW1lPSJnNzZhNmRiMzBlMjAzZDdiYzY0ZmQ0YzVhMmE1NzQ0MTkiPjwvYT4KQVhJUzJfRVhURVJOIDxicj48L2JyPgpheGlzMl9zdGF0dXNfdKA8L3RkPjx0ZCBjbGFzcz0ibWVtSXRlbVJpZ2h0IiB2YWxpZ249ImJvdHRvbSI+PGI+c2FuZGVzaGEyX3NlcV9tZ3Jfc2V0dXBfbmV3X2NsaWVudF9zZXE8L2I+IChjb25zdCBheHV0aWxfZW52X3QgKmVudiwgYXhpczJfbXNnX2N0eF90ICpmaXJzdF9hcHBfbXNnLCBheGlzMl9jaGFyX3QgKmludF9zZXFfaWQsIGF4aXMyX2NoYXJfdCAqc3BlY192ZXJzaW9uLCBzYW5kZXNoYTJfc3RvcmFnZV9tZ3JfdCAqc3RvcmFnZV9tZ3IsIGNvbnN0IGF4aXMyX2Jvb2xfdCBwZXJzaXN0ZW50KTwvdGQ+PC90cj48L3RhYmxlPjwvZGl2PjxkaXYgY2xhc3M9InNlY3Rpb24iPjxkaXYgY2xhc3M9InN1YnNlY3Rpb24iPjxhIG5hbWU9IkZ1bmN0aW9uX0RvY3VtZW50YXRpb24iPjwvYT48aDM+RnVuY3Rpb24gRG9jdW1lbnRhdGlvbjwvaDM+PHA+PGEgY2xhc3M9ImFuY2hvciIgbmFtZT0iZ2U1YTU3NWZkNjQxNmJhYjNkZjk1N2I1ZmY0M2MwYjUzIj48L2E+CjxkaXYgY2xhc3M9Im1lbWl0ZW0iPgo8ZGl2IGNsYXNzPSJtZW1wcm90byI+CiAgICAgIDx0YWJsZSBjbGFzcz0iYm9keVRhYmxlIj48dHIgY2xhc3M9ImEiPjx0ZCBjbGFzcz0ibWVtbmFtZSI+QVhJUzJfRVhURVJOIGF4aXMyX3N0YXR1c190IHNhbmRlc2hhMl9zZXFfbWdyX3VwZGF0ZV9sYXN0X2FjdGl2YXRlZF90aW1lICAgICAgICAgICA8L3RkPjx0ZD4oPC90ZD48dGQgY2xhc3M9InBhcmFtdHlwZSI+Y29uc3QgYXh1dGlsX2Vudl90ICqgPC90ZD48dGQgY2xhc3M9InBhcmFtbmFtZSI+IDxlbT5lbnY8L2VtPiwgPC90ZD48L3RyPjx0ciBjbGFzcz0iYiI+PHRkIGNsYXNzPSJwYXJhbWtleSI+PC90ZD48dGQ+PC90ZD48dGQgY2xhc3M9InBhcmFtdHlwZSI+YXhpczJfY2hhcl90ICqgPC90ZD48dGQgY2xhc3M9InBhcmFtbmFtZSI+IDxlbT5wcm9wZXJ0eV9rZXk8L2VtPiwgPC90ZD48L3RyPjx0ciBjbGFzcz0iYSI+PHRkIGNsYXNzPSJwYXJhbWtleSI+PC90ZD48dGQ+PC90ZD48dGQgY2xhc3M9InBhcmFtdHlwZSI+c2FuZGVzaGEyX3N0b3JhZ2VfbWdyX3QgKqA8L3RkPjx0ZCBjbGFzcz0icGFyYW1uYW1lIj4gPGVtPnN0b3JhZ2VfbWdyPC9lbT48L3RkPjx0ZD6gPC90ZD48L3RyPjx0ciBjbGFzcz0iYiI+PHRkPjwvdGQ+PHRkPik8L3RkPjx0ZD48L3RkPjx0ZD48L3RkPjx0ZCB3aWR0aD0iMTAwJSI+PC90ZD48L3RyPjwvdGFibGU+CjwvZGl2Pgo8ZGl2IGNsYXNzPSJtZW1kb2MiPgoKPHA+ClRha2VzIHRoZSBpbnRlcm5hbF9zZXFfaWQgYXMgdGhlIHBhcmFtLiBOb3QgdGhlIHNlcV9pZCA8ZGwgY29tcGFjdD0iIj48ZHQ+PGI+UGFyYW1ldGVyczo8L2I+PC9kdD48ZGQ+CiAgPHRhYmxlIGNsYXNzPSJib2R5VGFibGUiPjx0ciBjbGFzcz0iYSI+PHRkIHZhbGlnbj0idG9wIj48L3RkPjx0ZCB2YWxpZ249InRvcCI+PGVtPmludGVybmFsX3NlcV9pZDwvZW0+oDwvdGQ+PHRkPjwvdGQ+PC90cj48dHIgY2xhc3M9ImIiPjx0ZCB2YWxpZ249InRvcCI+PC90ZD48dGQgdmFsaWduPSJ0b3AiPjxlbT5jb25maWdfY3R4PC9lbT6gPC90ZD48dGQ+PC90ZD48L3RyPjwvdGFibGU+CjwvZGQ+PC9kbD4KCjwvcD48L2Rpdj4KPC9kaXY+PC9wPjxwPgo8L3A+PC9kaXY+PC9kaXY+PGRpdiBjbGFzcz0ic2VjdGlvbiI+PGFkZHJlc3Mgc3R5bGU9InRleHQtYWxpZ246IHJpZ2h0OyI+PHNtYWxsPkdlbmVyYXRlZCBvbiBNb24gT2N0IDEgMTc6MTk6MDYgMjAwNyBmb3IgU2FuZGVzaGEyL0MgYnmgCjxhIGhyZWY9Imh0dHA6Ly93d3cuZG94eWdlbi5vcmcvaW5kZXguaHRtbCIgY2xhc3M9ImV4dGVybmFsTGluayIgdGl0bGU9IkV4dGVybmFsIExpbmsiPgo8aW1nIHNyYz0iZG94eWdlbi5wbmciIGFsdD0iZG94eWdlbiIgYWxpZ249Im1pZGRsZSIgYm9yZGVyPSIwIj48L2ltZz48L2E+IDEuNS4zIDwvc21hbGw+PC9hZGRyZXNzPjwvZGl2PjwvZGl2PjwvZGl2PjxkaXYgY2xhc3M9ImNsZWFyIj48aHI+PC9ocj48L2Rpdj48ZGl2IGlkPSJmb290ZXIiPjxkaXYgY2xhc3M9InhyaWdodCI+qSAyMDA1LTIwMDcsIEFwYWNoZSBTb2Z0d2FyZSBGb3VuZGF0aW9uPC9kaXY+PGRpdiBjbGFzcz0iY2xlYXIiPjxocj48L2hyPjwvZGl2PjwvZGl2PjwvYm9keT48L2h0bWw+