ZGlmZiAtLWdpdCBhL2RvYy9odG1sL2Fib3V0Lmh0bWwgYi9kb2MvaHRtbC9hYm91dC5odG1sCmluZGV4IDNkNTAxYjAuLjMzZjVlNDMgMTAwNjQ0Ci0tLSBhL2RvYy9odG1sL2Fib3V0Lmh0bWwKKysrIGIvZG9jL2h0bWwvYWJvdXQuaHRtbApAQCAtOTYsNyArOTYsNyBAQAogPGIgY2xhc3M9Im5hdmxhYmVsIj5QcmV2aW91czo8L2I+IDxhIGNsYXNzPSJzZWN0cmVmIiBocmVmPSJzb2NrZXQtbWV0aG9kcy5odG1sIj40LjMgQWNlc3NpbmcgU29ja2V0IE1ldGhvZHM8L0E+CiA8YiBjbGFzcz0ibmF2bGFiZWwiPlVwOjwvYj4gPGEgY2xhc3M9InNlY3RyZWYiIEhSRUY9InB5T3BlblNTTC5odG1sIj5QeXRob24gT3BlblNTTCBNYW51YWw8L0E+CiA8aHI+Ci08c3BhbiBjbGFzcz0icmVsZWFzZS1pbmZvIj5SZWxlYXNlIDAuN2ExLjwvc3Bhbj4KKzxzcGFuIGNsYXNzPSJyZWxlYXNlLWluZm8iPlJlbGVhc2UgMC43YTIuPC9zcGFuPgogPC9ESVY+CiA8IS0tRW5kIG9mIE5hdmlnYXRpb24gUGFuZWwtLT4KIApkaWZmIC0tZ2l0IGEvZG9jL2h0bWwvYnVpbGRpbmctdW5peC5odG1sIGIvZG9jL2h0bWwvYnVpbGRpbmctdW5peC5odG1sCmluZGV4IGQ5NTMwMTcuLjZjYjg3N2UgMTAwNjQ0Ci0tLSBhL2RvYy9odG1sL2J1aWxkaW5nLXVuaXguaHRtbAorKysgYi9kb2MvaHRtbC9idWlsZGluZy11bml4Lmh0bWwKQEAgLTExNyw3ICsxMTcsNyBAQAogPGIgY2xhc3M9Im5hdmxhYmVsIj5VcDo8L2I+IDxhIGNsYXNzPSJzZWN0cmVmIiBocmVmPSJidWlsZGluZy5odG1sIj4yIEJ1aWxkaW5nIGFuZCBJbnN0YWxsaW5nPC9BPgogPGIgY2xhc3M9Im5hdmxhYmVsIj5OZXh0OjwvYj4gPGEgY2xhc3M9InNlY3RyZWYiIGhyZWY9ImJ1aWxkaW5nLXdpbmRvd3MuaHRtbCI+Mi4yIEJ1aWxkaW5nIHRoZSBNb2R1bGU8L0E+CiA8aHI+Ci08c3BhbiBjbGFzcz0icmVsZWFzZS1pbmZvIj5SZWxlYXNlIDAuN2ExLjwvc3Bhbj4KKzxzcGFuIGNsYXNzPSJyZWxlYXNlLWluZm8iPlJlbGVhc2UgMC43YTIuPC9zcGFuPgogPC9ESVY+CiA8IS0tRW5kIG9mIE5hdmlnYXRpb24gUGFuZWwtLT4KIApkaWZmIC0tZ2l0IGEvZG9jL2h0bWwvYnVpbGRpbmctd2luZG93cy5odG1sIGIvZG9jL2h0bWwvYnVpbGRpbmctd2luZG93cy5odG1sCmluZGV4IGQxNjJkY2EuLmIzMjMyMDIgMTAwNjQ0Ci0tLSBhL2RvYy9odG1sL2J1aWxkaW5nLXdpbmRvd3MuaHRtbAorKysgYi9kb2MvaHRtbC9idWlsZGluZy13aW5kb3dzLmh0bWwKQEAgLTEwOSw3ICsxMDksNyBAQAogPGIgY2xhc3M9Im5hdmxhYmVsIj5VcDo8L2I+IDxhIGNsYXNzPSJzZWN0cmVmIiBocmVmPSJidWlsZGluZy5odG1sIj4yIEJ1aWxkaW5nIGFuZCBJbnN0YWxsaW5nPC9BPgogPGIgY2xhc3M9Im5hdmxhYmVsIj5OZXh0OjwvYj4gPGEgY2xhc3M9InNlY3RyZWYiIGhyZWY9Im9wZW5zc2wuaHRtbCI+MyBPcGVuU1NMICA8L0E+CiA8aHI+Ci08c3BhbiBjbGFzcz0icmVsZWFzZS1pbmZvIj5SZWxlYXNlIDAuN2ExLjwvc3Bhbj4KKzxzcGFuIGNsYXNzPSJyZWxlYXNlLWluZm8iPlJlbGVhc2UgMC43YTIuPC9zcGFuPgogPC9ESVY+CiA8IS0tRW5kIG9mIE5hdmlnYXRpb24gUGFuZWwtLT4KIApkaWZmIC0tZ2l0IGEvZG9jL2h0bWwvYnVpbGRpbmcuaHRtbCBiL2RvYy9odG1sL2J1aWxkaW5nLmh0bWwKaW5kZXggYTNjZjg3Ni4uNmRmY2FjNyAxMDA2NDQKLS0tIGEvZG9jL2h0bWwvYnVpbGRpbmcuaHRtbAorKysgYi9kb2MvaHRtbC9idWlsZGluZy5odG1sCkBAIC05Nyw3ICs5Nyw3IEBACiA8YiBjbGFzcz0ibmF2bGFiZWwiPlVwOjwvYj4gPGEgY2xhc3M9InNlY3RyZWYiIEhSRUY9InB5T3BlblNTTC5odG1sIj5QeXRob24gT3BlblNTTCBNYW51YWw8L0E+CiA8YiBjbGFzcz0ibmF2bGFiZWwiPk5leHQ6PC9iPiA8YSBjbGFzcz0ic2VjdHJlZiIgaHJlZj0iYnVpbGRpbmctdW5peC5odG1sIj4yLjEgQnVpbGRpbmcgdGhlIE1vZHVsZTwvQT4KIDxocj4KLTxzcGFuIGNsYXNzPSJyZWxlYXNlLWluZm8iPlJlbGVhc2UgMC43YTEuPC9zcGFuPgorPHNwYW4gY2xhc3M9InJlbGVhc2UtaW5mbyI+UmVsZWFzZSAwLjdhMi48L3NwYW4+CiA8L0RJVj4KIDwhLS1FbmQgb2YgTmF2aWdhdGlvbiBQYW5lbC0tPgogCmRpZmYgLS1naXQgYS9kb2MvaHRtbC9jYWxsYmFja3MuaHRtbCBiL2RvYy9odG1sL2NhbGxiYWNrcy5odG1sCmluZGV4IGEwMmNmZWEuLmI4OTEyNTggMTAwNjQ0Ci0tLSBhL2RvYy9odG1sL2NhbGxiYWNrcy5odG1sCisrKyBiL2RvYy9odG1sL2NhbGxiYWNrcy5odG1sCkBAIC01Niw3ICs1Niw3IEBACiBQeXRob24gdGhyZWFkcyB0byBiZSBhYmxlIHRvIGRvIG90aGVyIHRoaW5ncy4gVGhlIHJlYWwgdHJvdWJsZSBpcyBpZiB5b3UndmUKIHJlbGVhc2VkIHRoZSB0aHJlYWQgbG9jayB0byBkbyBhIHBvdGVudGlhbGx5IGJsb2NraW5nIG9wZXJhdGlvbiwgYW5kIHRoZQogb3BlcmF0aW9uIGNhbGxzIGEgY2FsbGJhY2suIFRoZW4gd2UgbXVzdCB0YWtlIHRoZSB0aHJlYWQgbG9jayBiYWNrPEEgTkFNRT0idGV4Mmh0bWw2IgotICBIUkVGPSIjZm9vdDk2NiI+PFNVUD41PC9TVVA+PC9BPi4KKyAgSFJFRj0iI2Zvb3Q5NzAiPjxTVVA+NTwvU1VQPjwvQT4uCiAKIDxQPgogVGhlcmUgYXJlIHR3byBzb2x1dGlvbnMgdG8gdGhlIGZpcnN0IHByb2JsZW0sIGJvdGggb2Ygd2hpY2ggYXJlIG5lY2Vzc2FyeS4gVGhlCkBAIC04NCw3ICs4NCw3IEBACiA8UD4KIDxCUj48SFI+PEg0PkZvb3Rub3RlczwvSDQ+CiA8REw+Ci08RFQ+PEEgTkFNRT0iZm9vdDk2NiI+Li4uIGJhY2s8L0E+PEEKKzxEVD48QSBOQU1FPSJmb290OTcwIj4uLi4gYmFjazwvQT48QQogIGhyZWY9ImNhbGxiYWNrcy5odG1sI3RleDJodG1sNiI+PFNVUD41PC9TVVA+PC9BPjwvRFQ+CiA8REQ+SSdtCiBub3Qgc3VyZSB3aHkgdGhpcyBpcyBuZWNlc3NhcnksIGJ1dCBvdGhlcndpc2UgSSBnZXQgYSBzZWdtZW50YXRpb24gdmlvbGF0aW9uIG9uCkBAIC0xMjAsNyArMTIwLDcgQEAKIDxiIGNsYXNzPSJuYXZsYWJlbCI+VXA6PC9iPiA8YSBjbGFzcz0ic2VjdHJlZiIgaHJlZj0iaW50ZXJuYWxzLmh0bWwiPjQgSW50ZXJuYWxzPC9BPgogPGIgY2xhc3M9Im5hdmxhYmVsIj5OZXh0OjwvYj4gPGEgY2xhc3M9InNlY3RyZWYiIGhyZWY9InNvY2tldC1tZXRob2RzLmh0bWwiPjQuMyBBY2Vzc2luZyBTb2NrZXQgTWV0aG9kczwvQT4KIDxocj4KLTxzcGFuIGNsYXNzPSJyZWxlYXNlLWluZm8iPlJlbGVhc2UgMC43YTEuPC9zcGFuPgorPHNwYW4gY2xhc3M9InJlbGVhc2UtaW5mbyI+UmVsZWFzZSAwLjdhMi48L3NwYW4+CiA8L0RJVj4KIDwhLS1FbmQgb2YgTmF2aWdhdGlvbiBQYW5lbC0tPgogCmRpZmYgLS1naXQgYS9kb2MvaHRtbC9jb250ZW50cy5odG1sIGIvZG9jL2h0bWwvY29udGVudHMuaHRtbAppbmRleCBiZDM1YmQyLi5lZjAwZjQyIDEwMDY0NAotLS0gYS9kb2MvaHRtbC9jb250ZW50cy5odG1sCisrKyBiL2RvYy9odG1sL2NvbnRlbnRzLmh0bWwKQEAgLTEwNiw3ICsxMDYsNyBAQAogPGIgY2xhc3M9Im5hdmxhYmVsIj5VcDo8L2I+IDxhIGNsYXNzPSJzZWN0cmVmIiBIUkVGPSJweU9wZW5TU0wuaHRtbCI+UHl0aG9uIE9wZW5TU0wgTWFudWFsPC9BPgogPGIgY2xhc3M9Im5hdmxhYmVsIj5OZXh0OjwvYj4gPGEgY2xhc3M9InNlY3RyZWYiIGhyZWY9ImludHJvLmh0bWwiPjEgSW50cm9kdWN0aW9uPC9BPgogPGhyPgotPHNwYW4gY2xhc3M9InJlbGVhc2UtaW5mbyI+UmVsZWFzZSAwLjdhMS48L3NwYW4+Cis8c3BhbiBjbGFzcz0icmVsZWFzZS1pbmZvIj5SZWxlYXNlIDAuN2EyLjwvc3Bhbj4KIDwvRElWPgogPCEtLUVuZCBvZiBOYXZpZ2F0aW9uIFBhbmVsLS0+CiAKZGlmZiAtLWdpdCBhL2RvYy9odG1sL2V4Y2VwdGlvbnMuaHRtbCBiL2RvYy9odG1sL2V4Y2VwdGlvbnMuaHRtbAppbmRleCBmMzRhMzMzLi4zY2Y0ZDgyIDEwMDY0NAotLS0gYS9kb2MvaHRtbC9leGNlcHRpb25zLmh0bWwKKysrIGIvZG9jL2h0bWwvZXhjZXB0aW9ucy5odG1sCkBAIC04OSw3ICs4OSw3IEBACiA8YiBjbGFzcz0ibmF2bGFiZWwiPlVwOjwvYj4gPGEgY2xhc3M9InNlY3RyZWYiIGhyZWY9ImludGVybmFscy5odG1sIj40IEludGVybmFsczwvQT4KIDxiIGNsYXNzPSJuYXZsYWJlbCI+TmV4dDo8L2I+IDxhIGNsYXNzPSJzZWN0cmVmIiBocmVmPSJjYWxsYmFja3MuaHRtbCI+NC4yIENhbGxiYWNrczwvQT4KIDxocj4KLTxzcGFuIGNsYXNzPSJyZWxlYXNlLWluZm8iPlJlbGVhc2UgMC43YTEuPC9zcGFuPgorPHNwYW4gY2xhc3M9InJlbGVhc2UtaW5mbyI+UmVsZWFzZSAwLjdhMi48L3NwYW4+CiA8L0RJVj4KIDwhLS1FbmQgb2YgTmF2aWdhdGlvbiBQYW5lbC0tPgogCmRpZmYgLS1naXQgYS9kb2MvaHRtbC9pbmRleC5odG1sIGIvZG9jL2h0bWwvaW5kZXguaHRtbAppbmRleCA3MmRkY2JiLi5hZDBkZmI4IDEwMDY0NAotLS0gYS9kb2MvaHRtbC9pbmRleC5odG1sCisrKyBiL2RvYy9odG1sL2luZGV4Lmh0bWwKQEAgLTE1OSw3ICsxNTksNyBAQAogPC90cj48L3RhYmxlPgogPGIgY2xhc3M9Im5hdmxhYmVsIj5OZXh0OjwvYj4gPGEgY2xhc3M9InNlY3RyZWYiIGhyZWY9ImNvbnRlbnRzLmh0bWwiPkNvbnRlbnRzPC9BPgogPGhyPgotPHNwYW4gY2xhc3M9InJlbGVhc2UtaW5mbyI+UmVsZWFzZSAwLjdhMS48L3NwYW4+Cis8c3BhbiBjbGFzcz0icmVsZWFzZS1pbmZvIj5SZWxlYXNlIDAuN2EyLjwvc3Bhbj4KIDwvRElWPgogPCEtLUVuZCBvZiBOYXZpZ2F0aW9uIFBhbmVsLS0+CiAKZGlmZiAtLWdpdCBhL2RvYy9odG1sL2ludGVybmFscy5odG1sIGIvZG9jL2h0bWwvaW50ZXJuYWxzLmh0bWwKaW5kZXggZWMwMDQ2MC4uMTYzYmNhOSAxMDA2NDQKLS0tIGEvZG9jL2h0bWwvaW50ZXJuYWxzLmh0bWwKKysrIGIvZG9jL2h0bWwvaW50ZXJuYWxzLmh0bWwKQEAgLTk2LDcgKzk2LDcgQEAKIDxiIGNsYXNzPSJuYXZsYWJlbCI+VXA6PC9iPiA8YSBjbGFzcz0ic2VjdHJlZiIgSFJFRj0icHlPcGVuU1NMLmh0bWwiPlB5dGhvbiBPcGVuU1NMIE1hbnVhbDwvQT4KIDxiIGNsYXNzPSJuYXZsYWJlbCI+TmV4dDo8L2I+IDxhIGNsYXNzPSJzZWN0cmVmIiBocmVmPSJleGNlcHRpb25zLmh0bWwiPjQuMSBFeGNlcHRpb25zPC9BPgogPGhyPgotPHNwYW4gY2xhc3M9InJlbGVhc2UtaW5mbyI+UmVsZWFzZSAwLjdhMS48L3NwYW4+Cis8c3BhbiBjbGFzcz0icmVsZWFzZS1pbmZvIj5SZWxlYXNlIDAuN2EyLjwvc3Bhbj4KIDwvRElWPgogPCEtLUVuZCBvZiBOYXZpZ2F0aW9uIFBhbmVsLS0+CiAKZGlmZiAtLWdpdCBhL2RvYy9odG1sL2ludHJvLmh0bWwgYi9kb2MvaHRtbC9pbnRyby5odG1sCmluZGV4IDJlN2IzNDAuLjcyNGNjYzcgMTAwNjQ0Ci0tLSBhL2RvYy9odG1sL2ludHJvLmh0bWwKKysrIGIvZG9jL2h0bWwvaW50cm8uaHRtbApAQCAtNjAsOSArNjAsOSBAQAogdW5mb3J0dW5hdGVseSBpdHMgZXJyb3IgaGFuZGxpbmcgc3lzdGVtIGRvZXMgbm90IHNlZW0gdG8gYmUgZmluaXNoZWQsCiBlc3BlY2lhbGx5IGZvciBub24tYmxvY2tpbmcgSS9PLiAgSSB0aGluayB0aGF0IG11Y2ggb2YgdGhlIHJlYXNvbiBmb3IgdGhpcwogaXMgdGhhdCBNMkNyeXB0bzxBIE5BTUU9InRleDJodG1sMSIKLSAgSFJFRj0iI2Zvb3Q5MjYiPjxTVVA+MTwvU1VQPjwvQT4gaXMKKyAgSFJFRj0iI2Zvb3Q5MzAiPjxTVVA+MTwvU1VQPjwvQT4gaXMKIGRldmVsb3BlZCB1c2luZyBTV0lHPEEgTkFNRT0idGV4Mmh0bWwyIgotICBIUkVGPSIjZm9vdDkyNyI+PFNVUD4yPC9TVVA+PC9BPi4gIFRoaXMKKyAgSFJFRj0iI2Zvb3Q5MzEiPjxTVVA+MjwvU1VQPjwvQT4uICBUaGlzCiBtYWtlcyBpdCBhd2t3YXJkIHRvIGNyZWF0ZSBmdW5jdGlvbnMgdGhhdCBlLmcuIGNhbiByZXR1cm4gYm90aCBhbiBpbnRlZ2VyIGFuZAogTlVMTCBzaW5jZSAoYXMgZmFyIGFzIEkga25vdykgeW91IGJhc2ljYWxseSB3cml0ZSBDIGZ1bmN0aW9ucyBhbmQgU1dJRyBtYWtlcwogd3JhcHBlciBmdW5jdGlvbnMgdGhhdCBwYXJzZXMgdGhlIFB5dGhvbiBhcmd1bWVudCBsaXN0IGFuZCBjYWxscyB5b3VyIEMKQEAgLTcxLDEyICs3MSwxMiBAQAogPFA+CiA8QlI+PEhSPjxIND5Gb290bm90ZXM8L0g0PgogPERMPgotPERUPjxBIE5BTUU9ImZvb3Q5MjYiPi4uLiBNMkNyeXB0bzwvQT48QQorPERUPjxBIE5BTUU9ImZvb3Q5MzAiPi4uLiBNMkNyeXB0bzwvQT48QQogIGhyZWY9ImludHJvLmh0bWwjdGV4Mmh0bWwxIj48U1VQPjE8L1NVUD48L0E+PC9EVD4KIDxERD5TZWUgPGEgY2xhc3M9InVybCIgaHJlZj0iaHR0cDovL3d3dy5wb3N0MS5jb20vaG9tZS9uZ3BzL20yLyI+aHR0cDovL3d3dy5wb3N0MS5jb20vaG9tZS9uZ3BzL20yLzwvYT4KIAogPC9ERD4KLTxEVD48QSBOQU1FPSJmb290OTI3Ij4uLi4gU1dJRzwvQT48QQorPERUPjxBIE5BTUU9ImZvb3Q5MzEiPi4uLiBTV0lHPC9BPjxBCiAgaHJlZj0iaW50cm8uaHRtbCN0ZXgyaHRtbDIiPjxTVVA+MjwvU1VQPjwvQT48L0RUPgogPEREPlNlZSA8YSBjbGFzcz0idXJsIiBocmVmPSJodHRwOi8vc3dpZy5zb3VyY2Vmb3JnZS5uZXQvIj5odHRwOi8vc3dpZy5zb3VyY2Vmb3JnZS5uZXQvPC9hPgogCkBAIC0xMTAsNyArMTEwLDcgQEAKIDxiIGNsYXNzPSJuYXZsYWJlbCI+VXA6PC9iPiA8YSBjbGFzcz0ic2VjdHJlZiIgSFJFRj0icHlPcGVuU1NMLmh0bWwiPlB5dGhvbiBPcGVuU1NMIE1hbnVhbDwvQT4KIDxiIGNsYXNzPSJuYXZsYWJlbCI+TmV4dDo8L2I+IDxhIGNsYXNzPSJzZWN0cmVmIiBocmVmPSJidWlsZGluZy5odG1sIj4yIEJ1aWxkaW5nIGFuZCBJbnN0YWxsaW5nPC9BPgogPGhyPgotPHNwYW4gY2xhc3M9InJlbGVhc2UtaW5mbyI+UmVsZWFzZSAwLjdhMS48L3NwYW4+Cis8c3BhbiBjbGFzcz0icmVsZWFzZS1pbmZvIj5SZWxlYXNlIDAuN2EyLjwvc3Bhbj4KIDwvRElWPgogPCEtLUVuZCBvZiBOYXZpZ2F0aW9uIFBhbmVsLS0+CiAKZGlmZiAtLWdpdCBhL2RvYy9odG1sL29wZW5zc2wtNTA5ZXh0Lmh0bWwgYi9kb2MvaHRtbC9vcGVuc3NsLTUwOWV4dC5odG1sCmluZGV4IGVjYThiNDYuLmYxYTg0NzYgMTAwNjQ0Ci0tLSBhL2RvYy9odG1sL29wZW5zc2wtNTA5ZXh0Lmh0bWwKKysrIGIvZG9jL2h0bWwvb3BlbnNzbC01MDlleHQuaHRtbApAQCAtNTIsNyArNTIsNyBAQAogWDUwOUV4dGVuc2lvbiBvYmplY3RzIGN1cnJlbnRseSBvbmx5IGhhdmUgb25lIG1ldGhvZDoKIAogPFA+Ci08ZGw+PGR0PjxiPjxhIG5hbWU9J2wyaC04MCc+PHR0IGNsYXNzPSdtZXRob2QnPmdldF9jcml0aWNhbDwvdHQ+PC9hPjwvYj4oKQorPGRsPjxkdD48Yj48YSBuYW1lPSdsMmgtODEnPjx0dCBjbGFzcz0nbWV0aG9kJz5nZXRfY3JpdGljYWw8L3R0PjwvYT48L2I+KCkKIDxkZD4KIFJldHVybiB0aGUgY3JpdGljYWwgZmllbGQgb2YgdGhlIGV4dGVuc2lvbiBvYmplY3QuCiA8L2RsPgpAQCAtODcsNyArODcsNyBAQAogPGIgY2xhc3M9Im5hdmxhYmVsIj5VcDo8L2I+IDxhIGNsYXNzPSJzZWN0cmVmIiBocmVmPSJvcGVuc3NsLWNyeXB0by5odG1sIj4zLjEgY3J5cHRvICA8L0E+CiA8YiBjbGFzcz0ibmF2bGFiZWwiPk5leHQ6PC9iPiA8YSBjbGFzcz0ic2VjdHJlZiIgaHJlZj0ib3BlbnNzbC1uZXRzY2FwZS1zcGtpLmh0bWwiPjMuMS45IE5ldHNjYXBlU1BLSSBvYmplY3RzPC9BPgogPGhyPgotPHNwYW4gY2xhc3M9InJlbGVhc2UtaW5mbyI+UmVsZWFzZSAwLjdhMS48L3NwYW4+Cis8c3BhbiBjbGFzcz0icmVsZWFzZS1pbmZvIj5SZWxlYXNlIDAuN2EyLjwvc3Bhbj4KIDwvRElWPgogPCEtLUVuZCBvZiBOYXZpZ2F0aW9uIFBhbmVsLS0+CiAKZGlmZiAtLWdpdCBhL2RvYy9odG1sL29wZW5zc2wtY29ubmVjdGlvbi5odG1sIGIvZG9jL2h0bWwvb3BlbnNzbC1jb25uZWN0aW9uLmh0bWwKaW5kZXggZGEzYjdlZi4uOGQyYjhkYSAxMDA2NDQKLS0tIGEvZG9jL2h0bWwvb3BlbnNzbC1jb25uZWN0aW9uLmh0bWwKKysrIGIvZG9jL2h0bWwvb3BlbnNzbC1jb25uZWN0aW9uLmh0bWwKQEAgLTUxLDcgKzUxLDcgQEAKIENvbm5lY3Rpb24gb2JqZWN0cyBoYXZlIHRoZSBmb2xsb3dpbmcgbWV0aG9kczoKIAogPFA+Ci08ZGw+PGR0PjxiPjxhIG5hbWU9J2wyaC0xNDMnPjx0dCBjbGFzcz0nbWV0aG9kJz5hY2NlcHQ8L3R0PjwvYT48L2I+KCkKKzxkbD48ZHQ+PGI+PGEgbmFtZT0nbDJoLTE0NCc+PHR0IGNsYXNzPSdtZXRob2QnPmFjY2VwdDwvdHQ+PC9hPjwvYj4oKQogPGRkPgogQ2FsbCB0aGUgPHR0IGNsYXNzPSJtZXRob2QiPmFjY2VwdDwvdHQ+IG1ldGhvZCBvZiB0aGUgdW5kZXJseWluZyBzb2NrZXQgYW5kIHNldCB1cCBTU0wgb24gdGhlCiByZXR1cm5lZCBzb2NrZXQsIHVzaW5nIHRoZSBDb250ZXh0IG9iamVjdCBzdXBwbGllZCB0byB0aGlzIENvbm5lY3Rpb24gb2JqZWN0IGF0CkBAIC02MSwyMCArNjEsMjAgQEAKIDwvZGw+CiAKIDxQPgotPGRsPjxkdD48Yj48YSBuYW1lPSdsMmgtMTQ0Jz48dHQgY2xhc3M9J21ldGhvZCc+YmluZDwvdHQ+PC9hPjwvYj4oPHZhcj5hZGRyZXNzPC92YXI+KQorPGRsPjxkdD48Yj48YSBuYW1lPSdsMmgtMTQ1Jz48dHQgY2xhc3M9J21ldGhvZCc+YmluZDwvdHQ+PC9hPjwvYj4oPHZhcj5hZGRyZXNzPC92YXI+KQogPGRkPgogQ2FsbCB0aGUgPHR0IGNsYXNzPSJtZXRob2QiPmJpbmQ8L3R0PiBtZXRob2Qgb2YgdGhlIHVuZGVybHlpbmcgc29ja2V0LgogPC9kbD4KIAogPFA+Ci08ZGw+PGR0PjxiPjxhIG5hbWU9J2wyaC0xNDUnPjx0dCBjbGFzcz0nbWV0aG9kJz5jbG9zZTwvdHQ+PC9hPjwvYj4oKQorPGRsPjxkdD48Yj48YSBuYW1lPSdsMmgtMTQ2Jz48dHQgY2xhc3M9J21ldGhvZCc+Y2xvc2U8L3R0PjwvYT48L2I+KCkKIDxkZD4KIENhbGwgdGhlIDx0dCBjbGFzcz0ibWV0aG9kIj5jbG9zZTwvdHQ+IG1ldGhvZCBvZiB0aGUgdW5kZXJseWluZyBzb2NrZXQuIE5vdGU6IElmIHlvdSB3YW50CiBjb3JyZWN0IFNTTCBjbG9zdXJlLCB5b3UgbmVlZCB0byBjYWxsIHRoZSA8dHQgY2xhc3M9Im1ldGhvZCI+c2h1dGRvd248L3R0PiBtZXRob2QgZmlyc3QuCiA8L2RsPgogCiA8UD4KLTxkbD48ZHQ+PGI+PGEgbmFtZT0nbDJoLTE0Nic+PHR0IGNsYXNzPSdtZXRob2QnPmNvbm5lY3Q8L3R0PjwvYT48L2I+KDx2YXI+YWRkcmVzczwvdmFyPikKKzxkbD48ZHQ+PGI+PGEgbmFtZT0nbDJoLTE0Nyc+PHR0IGNsYXNzPSdtZXRob2QnPmNvbm5lY3Q8L3R0PjwvYT48L2I+KDx2YXI+YWRkcmVzczwvdmFyPikKIDxkZD4KIENhbGwgdGhlIDx0dCBjbGFzcz0ibWV0aG9kIj5jb25uZWN0PC90dD4gbWV0aG9kIG9mIHRoZSB1bmRlcmx5aW5nIHNvY2tldCBhbmQgc2V0IHVwIFNTTCBvbiB0aGUKIHNvY2tldCwgdXNpbmcgdGhlIENvbnRleHQgb2JqZWN0IHN1cHBsaWVkIHRvIHRoaXMgQ29ubmVjdGlvbiBvYmplY3QgYXQKQEAgLTgyLDcgKzgyLDcgQEAKIDwvZGw+CiAKIDxQPgotPGRsPjxkdD48Yj48YSBuYW1lPSdsMmgtMTQ3Jz48dHQgY2xhc3M9J21ldGhvZCc+Y29ubmVjdF9leDwvdHQ+PC9hPjwvYj4oPHZhcj5hZGRyZXNzPC92YXI+KQorPGRsPjxkdD48Yj48YSBuYW1lPSdsMmgtMTQ4Jz48dHQgY2xhc3M9J21ldGhvZCc+Y29ubmVjdF9leDwvdHQ+PC9hPjwvYj4oPHZhcj5hZGRyZXNzPC92YXI+KQogPGRkPgogQ2FsbCB0aGUgPHR0IGNsYXNzPSJtZXRob2QiPmNvbm5lY3RfZXg8L3R0PiBtZXRob2Qgb2YgdGhlIHVuZGVybHlpbmcgc29ja2V0IGFuZCBzZXQgdXAgU1NMIG9uCiB0aGUgc29ja2V0LCB1c2luZyB0aGUgQ29udGV4dCBvYmplY3Qgc3VwcGxpZWQgdG8gdGhpcyBDb25uZWN0aW9uIG9iamVjdCBhdApAQCAtOTEsNyArOTEsNyBAQAogPC9kbD4KIAogPFA+Ci08ZGw+PGR0PjxiPjxhIG5hbWU9J2wyaC0xNDgnPjx0dCBjbGFzcz0nbWV0aG9kJz5kb19oYW5kc2hha2U8L3R0PjwvYT48L2I+KCkKKzxkbD48ZHQ+PGI+PGEgbmFtZT0nbDJoLTE0OSc+PHR0IGNsYXNzPSdtZXRob2QnPmRvX2hhbmRzaGFrZTwvdHQ+PC9hPjwvYj4oKQogPGRkPgogUGVyZm9ybSBhbiBTU0wgaGFuZHNoYWtlICh1c3VhbGx5IGNhbGxlZCBhZnRlciA8dHQgY2xhc3M9Im1ldGhvZCI+cmVuZWdvdGlhdGU8L3R0PiBvciBvbmUgb2YKIDx0dCBjbGFzcz0ibWV0aG9kIj5zZXRfYWNjZXB0X3N0YXRlPC90dD4gb3IgPHR0IGNsYXNzPSJtZXRob2QiPnNldF9hY2NlcHRfc3RhdGU8L3R0PikuIFRoaXMgY2FuIHJhaXNlIHRoZQpAQCAtOTksMjUgKzk5LDI1IEBACiA8L2RsPgogCiA8UD4KLTxkbD48ZHQ+PGI+PGEgbmFtZT0nbDJoLTE0OSc+PHR0IGNsYXNzPSdtZXRob2QnPmZpbGVubzwvdHQ+PC9hPjwvYj4oKQorPGRsPjxkdD48Yj48YSBuYW1lPSdsMmgtMTUwJz48dHQgY2xhc3M9J21ldGhvZCc+ZmlsZW5vPC90dD48L2E+PC9iPigpCiA8ZGQ+CiBSZXRyaWV2ZSB0aGUgZmlsZSBkZXNjcmlwdG9yIG51bWJlciBmb3IgdGhlIHVuZGVybHlpbmcgc29ja2V0LgogPC9kbD4KIAogPFA+Ci08ZGw+PGR0PjxiPjxhIG5hbWU9J2wyaC0xNTAnPjx0dCBjbGFzcz0nbWV0aG9kJz5saXN0ZW48L3R0PjwvYT48L2I+KDx2YXI+YmFja2xvZzwvdmFyPikKKzxkbD48ZHQ+PGI+PGEgbmFtZT0nbDJoLTE1MSc+PHR0IGNsYXNzPSdtZXRob2QnPmxpc3RlbjwvdHQ+PC9hPjwvYj4oPHZhcj5iYWNrbG9nPC92YXI+KQogPGRkPgogQ2FsbCB0aGUgPHR0IGNsYXNzPSJtZXRob2QiPmxpc3RlbjwvdHQ+IG1ldGhvZCBvZiB0aGUgdW5kZXJseWluZyBzb2NrZXQuCiA8L2RsPgogCiA8UD4KLTxkbD48ZHQ+PGI+PGEgbmFtZT0nbDJoLTE1MSc+PHR0IGNsYXNzPSdtZXRob2QnPmdldF9hcHBfZGF0YTwvdHQ+PC9hPjwvYj4oKQorPGRsPjxkdD48Yj48YSBuYW1lPSdsMmgtMTUyJz48dHQgY2xhc3M9J21ldGhvZCc+Z2V0X2FwcF9kYXRhPC90dD48L2E+PC9iPigpCiA8ZGQ+CiBSZXRyaWV2ZSBhcHBsaWNhdGlvbiBkYXRhIGFzIHNldCBieSA8dHQgY2xhc3M9Im1ldGhvZCI+c2V0X2FwcF9kYXRhPC90dD4uCiA8L2RsPgogCiA8UD4KLTxkbD48ZHQ+PGI+PGEgbmFtZT0nbDJoLTE1Mic+PHR0IGNsYXNzPSdtZXRob2QnPmdldF9jaXBoZXJfbGlzdDwvdHQ+PC9hPjwvYj4oKQorPGRsPjxkdD48Yj48YSBuYW1lPSdsMmgtMTUzJz48dHQgY2xhc3M9J21ldGhvZCc+Z2V0X2NpcGhlcl9saXN0PC90dD48L2E+PC9iPigpCiA8ZGQ+CiBSZXRyaWV2ZSB0aGUgbGlzdCBvZiBjaXBoZXJzIHVzZWQgYnkgdGhlIENvbm5lY3Rpb24gb2JqZWN0LiBXQVJOSU5HOiBUaGlzIEFQSQogaGFzIGNoYW5nZWQuIEl0IHVzZWQgdG8gdGFrZSBhbiBvcHRpb25hbCBwYXJhbWV0ZXIgYW5kIGp1c3QgcmV0dXJuIGEgc3RyaW5nLApAQCAtMTI1LDQ0ICsxMjUsNDQgQEAKIDwvZGw+CiAKIDxQPgotPGRsPjxkdD48Yj48YSBuYW1lPSdsMmgtMTUzJz48dHQgY2xhc3M9J21ldGhvZCc+Z2V0X2NvbnRleHQ8L3R0PjwvYT48L2I+KCkKKzxkbD48ZHQ+PGI+PGEgbmFtZT0nbDJoLTE1NCc+PHR0IGNsYXNzPSdtZXRob2QnPmdldF9jb250ZXh0PC90dD48L2E+PC9iPigpCiA8ZGQ+CiBSZXRyaWV2ZSB0aGUgQ29udGV4dCBvYmplY3QgYXNzb2NpYXRlZCB3aXRoIHRoaXMgQ29ubmVjdGlvbi4KIDwvZGw+CiAKIDxQPgotPGRsPjxkdD48Yj48YSBuYW1lPSdsMmgtMTU0Jz48dHQgY2xhc3M9J21ldGhvZCc+Z2V0X3BlZXJfY2VydGlmaWNhdGU8L3R0PjwvYT48L2I+KCkKKzxkbD48ZHQ+PGI+PGEgbmFtZT0nbDJoLTE1NSc+PHR0IGNsYXNzPSdtZXRob2QnPmdldF9wZWVyX2NlcnRpZmljYXRlPC90dD48L2E+PC9iPigpCiA8ZGQ+CiBSZXRyaWV2ZSB0aGUgb3RoZXIgc2lkZSdzIGNlcnRpZmljYXRlIChpZiBhbnkpCiA8L2RsPgogCiA8UD4KLTxkbD48ZHQ+PGI+PGEgbmFtZT0nbDJoLTE1NSc+PHR0IGNsYXNzPSdtZXRob2QnPmdldHBlZXJuYW1lPC90dD48L2E+PC9iPigpCis8ZGw+PGR0PjxiPjxhIG5hbWU9J2wyaC0xNTYnPjx0dCBjbGFzcz0nbWV0aG9kJz5nZXRwZWVybmFtZTwvdHQ+PC9hPjwvYj4oKQogPGRkPgogQ2FsbCB0aGUgPHR0IGNsYXNzPSJtZXRob2QiPmdldHBlZXJuYW1lPC90dD4gbWV0aG9kIG9mIHRoZSB1bmRlcmx5aW5nIHNvY2tldC4KIDwvZGw+CiAKIDxQPgotPGRsPjxkdD48Yj48YSBuYW1lPSdsMmgtMTU2Jz48dHQgY2xhc3M9J21ldGhvZCc+Z2V0c29ja25hbWU8L3R0PjwvYT48L2I+KCkKKzxkbD48ZHQ+PGI+PGEgbmFtZT0nbDJoLTE1Nyc+PHR0IGNsYXNzPSdtZXRob2QnPmdldHNvY2tuYW1lPC90dD48L2E+PC9iPigpCiA8ZGQ+CiBDYWxsIHRoZSA8dHQgY2xhc3M9Im1ldGhvZCI+Z2V0c29ja25hbWU8L3R0PiBtZXRob2Qgb2YgdGhlIHVuZGVybHlpbmcgc29ja2V0LgogPC9kbD4KIAogPFA+Ci08ZGw+PGR0PjxiPjxhIG5hbWU9J2wyaC0xNTcnPjx0dCBjbGFzcz0nbWV0aG9kJz5nZXRzb2Nrb3B0PC90dD48L2E+PC9iPig8dmFyPmxldmVsLCBvcHRuYW1lPC92YXI+PGJpZz5bPC9iaWc+PHZhcj4sIGJ1ZmxlbjwvdmFyPjxiaWc+XTwvYmlnPikKKzxkbD48ZHQ+PGI+PGEgbmFtZT0nbDJoLTE1OCc+PHR0IGNsYXNzPSdtZXRob2QnPmdldHNvY2tvcHQ8L3R0PjwvYT48L2I+KDx2YXI+bGV2ZWwsIG9wdG5hbWU8L3Zhcj48YmlnPls8L2JpZz48dmFyPiwgYnVmbGVuPC92YXI+PGJpZz5dPC9iaWc+KQogPGRkPgogQ2FsbCB0aGUgPHR0IGNsYXNzPSJtZXRob2QiPmdldHNvY2tvcHQ8L3R0PiBtZXRob2Qgb2YgdGhlIHVuZGVybHlpbmcgc29ja2V0LgogPC9kbD4KIAogPFA+Ci08ZGw+PGR0PjxiPjxhIG5hbWU9J2wyaC0xNTgnPjx0dCBjbGFzcz0nbWV0aG9kJz5wZW5kaW5nPC90dD48L2E+PC9iPigpCis8ZGw+PGR0PjxiPjxhIG5hbWU9J2wyaC0xNTknPjx0dCBjbGFzcz0nbWV0aG9kJz5wZW5kaW5nPC90dD48L2E+PC9iPigpCiA8ZGQ+CiBSZXRyaWV2ZSB0aGUgbnVtYmVyIG9mIGJ5dGVzIHRoYXQgY2FuIGJlIHNhZmVseSByZWFkIGZyb20gdGhlIFNTTCBidWZmZXIKICg8aT5ub3Q8L2k+IHRoZSB1bmRlcmx5aW5nIHRyYW5zcG9ydCBidWZmZXIpLgogPC9kbD4KIAogPFA+Ci08ZGw+PGR0PjxiPjxhIG5hbWU9J2wyaC0xNTknPjx0dCBjbGFzcz0nbWV0aG9kJz5yZWN2PC90dD48L2E+PC9iPig8dmFyPmJ1ZnNpemU8L3Zhcj4pCis8ZGw+PGR0PjxiPjxhIG5hbWU9J2wyaC0xNjAnPjx0dCBjbGFzcz0nbWV0aG9kJz5yZWN2PC90dD48L2E+PC9iPig8dmFyPmJ1ZnNpemU8L3Zhcj4pCiA8ZGQ+CiBSZWNlaXZlIGRhdGEgZnJvbSB0aGUgQ29ubmVjdGlvbi4gVGhlIHJldHVybiB2YWx1ZSBpcyBhIHN0cmluZyByZXByZXNlbnRpbmcgdGhlCiBkYXRhIHJlY2VpdmVkLiBUaGUgbWF4aW11bSBhbW91bnQgb2YgZGF0YSB0byBiZSByZWNlaXZlZCBhdCBvbmNlLCBpcyBzcGVjaWZpZWQKQEAgLTE3MCwyMCArMTcwLDIwIEBACiA8L2RsPgogCiA8UD4KLTxkbD48ZHQ+PGI+PGEgbmFtZT0nbDJoLTE2MCc+PHR0IGNsYXNzPSdtZXRob2QnPnJlbmVnb3RpYXRlPC90dD48L2E+PC9iPigpCis8ZGw+PGR0PjxiPjxhIG5hbWU9J2wyaC0xNjEnPjx0dCBjbGFzcz0nbWV0aG9kJz5yZW5lZ290aWF0ZTwvdHQ+PC9hPjwvYj4oKQogPGRkPgogUmVuZWdvdGlhdGUgdGhlIFNTTCBzZXNzaW9uLiBDYWxsIHRoaXMgaWYgeW91IHdpc2ggdG8gY2hhbmdlIGNpcGhlciBzdWl0ZXMgb3IKIGFueXRoaW5nIGxpa2UgdGhhdC4KIDwvZGw+CiAKIDxQPgotPGRsPjxkdD48Yj48YSBuYW1lPSdsMmgtMTYxJz48dHQgY2xhc3M9J21ldGhvZCc+c2VuZDwvdHQ+PC9hPjwvYj4oPHZhcj5zdHJpbmc8L3Zhcj4pCis8ZGw+PGR0PjxiPjxhIG5hbWU9J2wyaC0xNjInPjx0dCBjbGFzcz0nbWV0aG9kJz5zZW5kPC90dD48L2E+PC9iPig8dmFyPnN0cmluZzwvdmFyPikKIDxkZD4KIFNlbmQgdGhlIDx2YXI+c3RyaW5nPC92YXI+IGRhdGEgdG8gdGhlIENvbm5lY3Rpb24uCiA8L2RsPgogCiA8UD4KLTxkbD48ZHQ+PGI+PGEgbmFtZT0nbDJoLTE2Mic+PHR0IGNsYXNzPSdtZXRob2QnPnNlbmRhbGw8L3R0PjwvYT48L2I+KDx2YXI+c3RyaW5nPC92YXI+KQorPGRsPjxkdD48Yj48YSBuYW1lPSdsMmgtMTYzJz48dHQgY2xhc3M9J21ldGhvZCc+c2VuZGFsbDwvdHQ+PC9hPjwvYj4oPHZhcj5zdHJpbmc8L3Zhcj4pCiA8ZGQ+CiBTZW5kIGFsbCBvZiB0aGUgPHZhcj5zdHJpbmc8L3Zhcj4gZGF0YSB0byB0aGUgQ29ubmVjdGlvbi4gVGhpcyBjYWxscyA8dHQgY2xhc3M9Im1ldGhvZCI+c2VuZDwvdHQ+CiByZXBlYXRlZGx5IHVudGlsIGFsbCBkYXRhIGlzIHNlbnQuIElmIGFuIGVycm9yIG9jY3VycywgaXQncyBpbXBvc3NpYmxlIHRvIHRlbGwKQEAgLTE5MSw0MCArMTkxLDQwIEBACiA8L2RsPgogCiA8UD4KLTxkbD48ZHQ+PGI+PGEgbmFtZT0nbDJoLTE2Myc+PHR0IGNsYXNzPSdtZXRob2QnPnNldF9hY2NlcHRfc3RhdGU8L3R0PjwvYT48L2I+KCkKKzxkbD48ZHQ+PGI+PGEgbmFtZT0nbDJoLTE2NCc+PHR0IGNsYXNzPSdtZXRob2QnPnNldF9hY2NlcHRfc3RhdGU8L3R0PjwvYT48L2I+KCkKIDxkZD4KIFNldCB0aGUgY29ubmVjdGlvbiB0byB3b3JrIGluIHNlcnZlciBtb2RlLiBUaGUgaGFuZHNoYWtlIHdpbGwgYmUgaGFuZGxlZAogYXV0b21hdGljYWxseSBieSByZWFkL3dyaXRlLgogPC9kbD4KIAogPFA+Ci08ZGw+PGR0PjxiPjxhIG5hbWU9J2wyaC0xNjQnPjx0dCBjbGFzcz0nbWV0aG9kJz5zZXRfYXBwX2RhdGE8L3R0PjwvYT48L2I+KDx2YXI+ZGF0YTwvdmFyPikKKzxkbD48ZHQ+PGI+PGEgbmFtZT0nbDJoLTE2NSc+PHR0IGNsYXNzPSdtZXRob2QnPnNldF9hcHBfZGF0YTwvdHQ+PC9hPjwvYj4oPHZhcj5kYXRhPC92YXI+KQogPGRkPgogQXNzb2NpYXRlIDx2YXI+ZGF0YTwvdmFyPiB3aXRoIHRoaXMgQ29ubmVjdGlvbiBvYmplY3QuIDx2YXI+ZGF0YTwvdmFyPiBjYW4gYmUgcmV0cmlldmVkCiBsYXRlciB1c2luZyB0aGUgPHR0IGNsYXNzPSJtZXRob2QiPmdldF9hcHBfZGF0YTwvdHQ+IG1ldGhvZC4KIDwvZGw+CiAKIDxQPgotPGRsPjxkdD48Yj48YSBuYW1lPSdsMmgtMTY1Jz48dHQgY2xhc3M9J21ldGhvZCc+c2V0X2Nvbm5lY3Rfc3RhdGU8L3R0PjwvYT48L2I+KCkKKzxkbD48ZHQ+PGI+PGEgbmFtZT0nbDJoLTE2Nic+PHR0IGNsYXNzPSdtZXRob2QnPnNldF9jb25uZWN0X3N0YXRlPC90dD48L2E+PC9iPigpCiA8ZGQ+CiBTZXQgdGhlIGNvbm5lY3Rpb24gdG8gd29yayBpbiBjbGllbnQgbW9kZS4gVGhlIGhhbmRzaGFrZSB3aWxsIGJlIGhhbmRsZWQKIGF1dG9tYXRpY2FsbHkgYnkgcmVhZC93cml0ZS4KIDwvZGw+CiAKIDxQPgotPGRsPjxkdD48Yj48YSBuYW1lPSdsMmgtMTY2Jz48dHQgY2xhc3M9J21ldGhvZCc+c2V0YmxvY2tpbmc8L3R0PjwvYT48L2I+KDx2YXI+ZmxhZzwvdmFyPikKKzxkbD48ZHQ+PGI+PGEgbmFtZT0nbDJoLTE2Nyc+PHR0IGNsYXNzPSdtZXRob2QnPnNldGJsb2NraW5nPC90dD48L2E+PC9iPig8dmFyPmZsYWc8L3Zhcj4pCiA8ZGQ+CiBDYWxsIHRoZSA8dHQgY2xhc3M9Im1ldGhvZCI+c2V0YmxvY2tpbmc8L3R0PiBtZXRob2Qgb2YgdGhlIHVuZGVybHlpbmcgc29ja2V0LgogPC9kbD4KIAogPFA+Ci08ZGw+PGR0PjxiPjxhIG5hbWU9J2wyaC0xNjcnPjx0dCBjbGFzcz0nbWV0aG9kJz5zZXRzb2Nrb3B0PC90dD48L2E+PC9iPig8dmFyPmxldmVsLCBvcHRuYW1lLCB2YWx1ZTwvdmFyPikKKzxkbD48ZHQ+PGI+PGEgbmFtZT0nbDJoLTE2OCc+PHR0IGNsYXNzPSdtZXRob2QnPnNldHNvY2tvcHQ8L3R0PjwvYT48L2I+KDx2YXI+bGV2ZWwsIG9wdG5hbWUsIHZhbHVlPC92YXI+KQogPGRkPgogQ2FsbCB0aGUgPHR0IGNsYXNzPSJtZXRob2QiPnNldHNvY2tvcHQ8L3R0PiBtZXRob2Qgb2YgdGhlIHVuZGVybHlpbmcgc29ja2V0LgogPC9kbD4KIAogPFA+Ci08ZGw+PGR0PjxiPjxhIG5hbWU9J2wyaC0xNjgnPjx0dCBjbGFzcz0nbWV0aG9kJz5zaHV0ZG93bjwvdHQ+PC9hPjwvYj4oKQorPGRsPjxkdD48Yj48YSBuYW1lPSdsMmgtMTY5Jz48dHQgY2xhc3M9J21ldGhvZCc+c2h1dGRvd248L3R0PjwvYT48L2I+KCkKIDxkZD4KIFNlbmQgdGhlIHNodXRkb3duIG1lc3NhZ2UgdG8gdGhlIENvbm5lY3Rpb24uIFJldHVybnMgdHJ1ZSBpZiB0aGUgc2h1dGRvd24KIG1lc3NhZ2UgZXhjaGFuZ2UgaXMgY29tcGxldGVkIGFuZCBmYWxzZSBvdGhlcndpc2UgKGluIHdoaWNoIGNhc2UgeW91IGNhbGwKQEAgLTIzMyw0MCArMjMzLDQwIEBACiA8L2RsPgogCiA8UD4KLTxkbD48ZHQ+PGI+PGEgbmFtZT0nbDJoLTE2OSc+PHR0IGNsYXNzPSdtZXRob2QnPmdldF9zaHV0ZG93bjwvdHQ+PC9hPjwvYj4oKQorPGRsPjxkdD48Yj48YSBuYW1lPSdsMmgtMTcwJz48dHQgY2xhc3M9J21ldGhvZCc+Z2V0X3NodXRkb3duPC90dD48L2E+PC9iPigpCiA8ZGQ+CiBHZXQgdGhlIHNodXRkb3duIHN0YXRlIG9mIHRoZSBDb25uZWN0aW9uLiAgUmV0dXJucyBhIGJpdHZlY3RvciBvZiBlaXRoZXIgb3IKIGJvdGggb2YgPHZhcj5TRU5UX1NIVVRET1dOPC92YXI+IGFuZCA8dmFyPlJFQ0VJVkVEX1NIVVRET1dOPC92YXI+LgogPC9kbD4KIAogPFA+Ci08ZGw+PGR0PjxiPjxhIG5hbWU9J2wyaC0xNzAnPjx0dCBjbGFzcz0nbWV0aG9kJz5zZXRfc2h1dGRvd248L3R0PjwvYT48L2I+KDx2YXI+c3RhdGU8L3Zhcj4pCis8ZGw+PGR0PjxiPjxhIG5hbWU9J2wyaC0xNzEnPjx0dCBjbGFzcz0nbWV0aG9kJz5zZXRfc2h1dGRvd248L3R0PjwvYT48L2I+KDx2YXI+c3RhdGU8L3Zhcj4pCiA8ZGQ+CiBTZXQgdGhlIHNodXRkb3duIHN0YXRlIG9mIHRoZSBDb25uZWN0aW9uLiAgPHZhcj5zdGF0ZTwvdmFyPiBpcyBhIGJpdHZlY3RvciBvZgogZWl0aGVyIG9yIGJvdGggb2YgPHZhcj5TRU5UX1NIVVRET1dOPC92YXI+IGFuZCA8dmFyPlJFQ0VJVkVEX1NIVVRET1dOPC92YXI+LgogPC9kbD4KIAogPFA+Ci08ZGw+PGR0PjxiPjxhIG5hbWU9J2wyaC0xNzEnPjx0dCBjbGFzcz0nbWV0aG9kJz5zb2NrX3NodXRkb3duPC90dD48L2E+PC9iPig8dmFyPmhvdzwvdmFyPikKKzxkbD48ZHQ+PGI+PGEgbmFtZT0nbDJoLTE3Mic+PHR0IGNsYXNzPSdtZXRob2QnPnNvY2tfc2h1dGRvd248L3R0PjwvYT48L2I+KDx2YXI+aG93PC92YXI+KQogPGRkPgogQ2FsbCB0aGUgPHR0IGNsYXNzPSJtZXRob2QiPnNodXRkb3duPC90dD4gbWV0aG9kIG9mIHRoZSB1bmRlcmx5aW5nIHNvY2tldC4KIDwvZGw+CiAKIDxQPgotPGRsPjxkdD48Yj48YSBuYW1lPSdsMmgtMTcyJz48dHQgY2xhc3M9J21ldGhvZCc+c3RhdGVfc3RyaW5nPC90dD48L2E+PC9iPigpCis8ZGw+PGR0PjxiPjxhIG5hbWU9J2wyaC0xNzMnPjx0dCBjbGFzcz0nbWV0aG9kJz5zdGF0ZV9zdHJpbmc8L3R0PjwvYT48L2I+KCkKIDxkZD4KIFJldHJpZXZlIGEgdmVyYm9zZSBzdHJpbmcgZGV0YWlsaW5nIHRoZSBzdGF0ZSBvZiB0aGUgQ29ubmVjdGlvbi4KIDwvZGw+CiAKIDxQPgotPGRsPjxkdD48Yj48YSBuYW1lPSdsMmgtMTczJz48dHQgY2xhc3M9J21ldGhvZCc+d2FudF9yZWFkPC90dD48L2E+PC9iPigpCis8ZGw+PGR0PjxiPjxhIG5hbWU9J2wyaC0xNzQnPjx0dCBjbGFzcz0nbWV0aG9kJz53YW50X3JlYWQ8L3R0PjwvYT48L2I+KCkKIDxkZD4KIENoZWNrcyBpZiBtb3JlIGRhdGEgaGFzIHRvIGJlIHJlYWQgZnJvbSB0aGUgdHJhbnNwb3J0IGxheWVyIHRvIGNvbXBsZXRlIGFuCiBvcGVyYXRpb24uCiA8L2RsPgogCiA8UD4KLTxkbD48ZHQ+PGI+PGEgbmFtZT0nbDJoLTE3NCc+PHR0IGNsYXNzPSdtZXRob2QnPndhbnRfd3JpdGU8L3R0PjwvYT48L2I+KCkKKzxkbD48ZHQ+PGI+PGEgbmFtZT0nbDJoLTE3NSc+PHR0IGNsYXNzPSdtZXRob2QnPndhbnRfd3JpdGU8L3R0PjwvYT48L2I+KCkKIDxkZD4KIENoZWNrcyBpZiB0aGVyZSBpcyBkYXRhIHRvIHdyaXRlIHRvIHRoZSB0cmFuc3BvcnQgbGF5ZXIgdG8gY29tcGxldGUgYW4KIG9wZXJhdGlvbi4KQEAgLTMwMiw3ICszMDIsNyBAQAogPGIgY2xhc3M9Im5hdmxhYmVsIj5VcDo8L2I+IDxhIGNsYXNzPSJzZWN0cmVmIiBocmVmPSJvcGVuc3NsLXNzbC5odG1sIj4zLjMgU1NMICA8L0E+CiA8YiBjbGFzcz0ibmF2bGFiZWwiPk5leHQ6PC9iPiA8YSBjbGFzcz0ic2VjdHJlZiIgaHJlZj0iaW50ZXJuYWxzLmh0bWwiPjQgSW50ZXJuYWxzPC9BPgogPGhyPgotPHNwYW4gY2xhc3M9InJlbGVhc2UtaW5mbyI+UmVsZWFzZSAwLjdhMS48L3NwYW4+Cis8c3BhbiBjbGFzcz0icmVsZWFzZS1pbmZvIj5SZWxlYXNlIDAuN2EyLjwvc3Bhbj4KIDwvRElWPgogPCEtLUVuZCBvZiBOYXZpZ2F0aW9uIFBhbmVsLS0+CiAKZGlmZiAtLWdpdCBhL2RvYy9odG1sL29wZW5zc2wtY29udGV4dC5odG1sIGIvZG9jL2h0bWwvb3BlbnNzbC1jb250ZXh0Lmh0bWwKaW5kZXggNWRlOGVhZi4uMTdmMDRmMSAxMDA2NDQKLS0tIGEvZG9jL2h0bWwvb3BlbnNzbC1jb250ZXh0Lmh0bWwKKysrIGIvZG9jL2h0bWwvb3BlbnNzbC1jb250ZXh0Lmh0bWwKQEAgLTUyLDcgKzUyLDcgQEAKIENvbnRleHQgb2JqZWN0cyBoYXZlIHRoZSBmb2xsb3dpbmcgbWV0aG9kczoKIAogPFA+Ci08ZGw+PGR0PjxiPjxhIG5hbWU9J2wyaC0xMTknPjx0dCBjbGFzcz0nbWV0aG9kJz5jaGVja19wcml2YXRla2V5PC90dD48L2E+PC9iPigpCis8ZGw+PGR0PjxiPjxhIG5hbWU9J2wyaC0xMjAnPjx0dCBjbGFzcz0nbWV0aG9kJz5jaGVja19wcml2YXRla2V5PC90dD48L2E+PC9iPigpCiA8ZGQ+CiBDaGVjayBpZiB0aGUgcHJpdmF0ZSBrZXkgKGxvYWRlZCB3aXRoIDx0dCBjbGFzcz0ibWV0aG9kIj51c2VfcHJpdmF0ZWtleTxiaWc+WzwvYmlnPl9maWxlPGJpZz5dPC9iaWc+PC90dD4pCiBtYXRjaGVzIHRoZSBjZXJ0aWZpY2F0ZSAobG9hZGVkIHdpdGggPHR0IGNsYXNzPSJtZXRob2QiPnVzZV9jZXJ0aWZpY2F0ZTxiaWc+WzwvYmlnPl9maWxlPGJpZz5dPC9iaWc+PC90dD4pLgpAQCAtNjAsMTMgKzYwLDEzIEBACiA8L2RsPgogCiA8UD4KLTxkbD48ZHQ+PGI+PGEgbmFtZT0nbDJoLTEyMCc+PHR0IGNsYXNzPSdtZXRob2QnPmdldF9hcHBfZGF0YTwvdHQ+PC9hPjwvYj4oKQorPGRsPjxkdD48Yj48YSBuYW1lPSdsMmgtMTIxJz48dHQgY2xhc3M9J21ldGhvZCc+Z2V0X2FwcF9kYXRhPC90dD48L2E+PC9iPigpCiA8ZGQ+CiBSZXRyaWV2ZSBhcHBsaWNhdGlvbiBkYXRhIGFzIHNldCBieSA8dHQgY2xhc3M9Im1ldGhvZCI+c2V0X2FwcF9kYXRhPC90dD4uCiA8L2RsPgogCiA8UD4KLTxkbD48ZHQ+PGI+PGEgbmFtZT0nbDJoLTEyMSc+PHR0IGNsYXNzPSdtZXRob2QnPmdldF9jZXJ0X3N0b3JlPC90dD48L2E+PC9iPigpCis8ZGw+PGR0PjxiPjxhIG5hbWU9J2wyaC0xMjInPjx0dCBjbGFzcz0nbWV0aG9kJz5nZXRfY2VydF9zdG9yZTwvdHQ+PC9hPjwvYj4oKQogPGRkPgogUmV0cmlldmUgdGhlIGNlcnRpZmljYXRlIHN0b3JlIChhIFg1MDlTdG9yZSBvYmplY3QpIHRoYXQgdGhlIGNvbnRleHQgdXNlcy4KIFRoaXMgY2FuIGJlIHVzZWQgdG8gYWRkICJ0cnVzdGVkIiBjZXJ0aWZpY2F0ZXMgd2l0aG91dCB1c2luZyB0aGUuCkBAIC03NCw2MSArNzQsNjEgQEAKIDwvZGw+CiAKIDxQPgotPGRsPjxkdD48Yj48YSBuYW1lPSdsMmgtMTIyJz48dHQgY2xhc3M9J21ldGhvZCc+Z2V0X3RpbWVvdXQ8L3R0PjwvYT48L2I+KCkKKzxkbD48ZHQ+PGI+PGEgbmFtZT0nbDJoLTEyMyc+PHR0IGNsYXNzPSdtZXRob2QnPmdldF90aW1lb3V0PC90dD48L2E+PC9iPigpCiA8ZGQ+CiBSZXRyaWV2ZSBzZXNzaW9uIHRpbWVvdXQsIGFzIHNldCBieSA8dHQgY2xhc3M9Im1ldGhvZCI+c2V0X3RpbWVvdXQ8L3R0Pi4gVGhlIGRlZmF1bHQgaXMgMzAwCiBzZWNvbmRzLgogPC9kbD4KIAogPFA+Ci08ZGw+PGR0PjxiPjxhIG5hbWU9J2wyaC0xMjMnPjx0dCBjbGFzcz0nbWV0aG9kJz5nZXRfdmVyaWZ5X2RlcHRoPC90dD48L2E+PC9iPigpCis8ZGw+PGR0PjxiPjxhIG5hbWU9J2wyaC0xMjQnPjx0dCBjbGFzcz0nbWV0aG9kJz5nZXRfdmVyaWZ5X2RlcHRoPC90dD48L2E+PC9iPigpCiA8ZGQ+CiBSZXRyaWV2ZSB0aGUgQ29udGV4dCBvYmplY3QncyB2ZXJpZnkgZGVwdGgsIGFzIHNldCBieQogPHR0IGNsYXNzPSJtZXRob2QiPnNldF92ZXJpZnlfZGVwdGg8L3R0Pi4KIDwvZGw+CiAKIDxQPgotPGRsPjxkdD48Yj48YSBuYW1lPSdsMmgtMTI0Jz48dHQgY2xhc3M9J21ldGhvZCc+Z2V0X3ZlcmlmeV9tb2RlPC90dD48L2E+PC9iPigpCis8ZGw+PGR0PjxiPjxhIG5hbWU9J2wyaC0xMjUnPjx0dCBjbGFzcz0nbWV0aG9kJz5nZXRfdmVyaWZ5X21vZGU8L3R0PjwvYT48L2I+KCkKIDxkZD4KIFJldHJpZXZlIHRoZSBDb250ZXh0IG9iamVjdCdzIHZlcmlmeSBtb2RlLCBhcyBzZXQgYnkgPHR0IGNsYXNzPSJtZXRob2QiPnNldF92ZXJpZnlfbW9kZTwvdHQ+LgogPC9kbD4KIAogPFA+Ci08ZGw+PGR0PjxiPjxhIG5hbWU9J2wyaC0xMjUnPjx0dCBjbGFzcz0nbWV0aG9kJz5sb2FkX2NsaWVudF9jYTwvdHQ+PC9hPjwvYj4oPHZhcj5wZW1maWxlPC92YXI+KQorPGRsPjxkdD48Yj48YSBuYW1lPSdsMmgtMTI2Jz48dHQgY2xhc3M9J21ldGhvZCc+bG9hZF9jbGllbnRfY2E8L3R0PjwvYT48L2I+KDx2YXI+cGVtZmlsZTwvdmFyPikKIDxkZD4KIFJlYWQgYSBmaWxlIHdpdGggUEVNLWZvcm1hdHRlZCBjZXJ0aWZpY2F0ZXMgdGhhdCB3aWxsIGJlIHNlbnQgdG8gdGhlIGNsaWVudAogd2hlbiByZXF1ZXN0aW5nIGEgY2xpZW50IGNlcnRpZmljYXRlLgogPC9kbD4KIAogPFA+Ci08ZGw+PGR0PjxiPjxhIG5hbWU9J2wyaC0xMjYnPjx0dCBjbGFzcz0nbWV0aG9kJz5sb2FkX3ZlcmlmeV9sb2NhdGlvbnM8L3R0PjwvYT48L2I+KDx2YXI+cGVtZmlsZTwvdmFyPikKKzxkbD48ZHQ+PGI+PGEgbmFtZT0nbDJoLTEyNyc+PHR0IGNsYXNzPSdtZXRob2QnPmxvYWRfdmVyaWZ5X2xvY2F0aW9uczwvdHQ+PC9hPjwvYj4oPHZhcj5wZW1maWxlPC92YXI+KQogPGRkPgogU3BlY2lmeSB3aGVyZSBDQSBjZXJ0aWZpY2F0ZXMgZm9yIHZlcmlmaWNhdGlvbiBwdXJwb3NlcyBhcmUgbG9jYXRlZC4gVGhlc2UgYXJlCiB0cnVzdGVkIGNlcnRpZmljYXRlcy4gTm90ZSB0aGF0IHRoZSBjZXJ0aWZpY2F0ZXMgaGF2ZSB0byBiZSBpbiBQRU0gZm9ybWF0LgogPC9kbD4KIAogPFA+Ci08ZGw+PGR0PjxiPjxhIG5hbWU9J2wyaC0xMjcnPjx0dCBjbGFzcz0nbWV0aG9kJz5sb2FkX3RtcF9kaDwvdHQ+PC9hPjwvYj4oPHZhcj5kaGZpbGU8L3Zhcj4pCis8ZGw+PGR0PjxiPjxhIG5hbWU9J2wyaC0xMjgnPjx0dCBjbGFzcz0nbWV0aG9kJz5sb2FkX3RtcF9kaDwvdHQ+PC9hPjwvYj4oPHZhcj5kaGZpbGU8L3Zhcj4pCiA8ZGQ+CiBMb2FkIHBhcmFtZXRlcnMgZm9yIEVwaGVtZXJhbCBEaWZmaWUtSGVsbG1hbiBmcm9tIDx2YXI+ZGhmaWxlPC92YXI+LgogPC9kbD4KIAogPFA+Ci08ZGw+PGR0PjxiPjxhIG5hbWU9J2wyaC0xMjgnPjx0dCBjbGFzcz0nbWV0aG9kJz5zZXRfYXBwX2RhdGE8L3R0PjwvYT48L2I+KDx2YXI+ZGF0YTwvdmFyPikKKzxkbD48ZHQ+PGI+PGEgbmFtZT0nbDJoLTEyOSc+PHR0IGNsYXNzPSdtZXRob2QnPnNldF9hcHBfZGF0YTwvdHQ+PC9hPjwvYj4oPHZhcj5kYXRhPC92YXI+KQogPGRkPgogQXNzb2NpYXRlIDx2YXI+ZGF0YTwvdmFyPiB3aXRoIHRoaXMgQ29udGV4dCBvYmplY3QuIDx2YXI+ZGF0YTwvdmFyPiBjYW4gYmUgcmV0cmlldmVkCiBsYXRlciB1c2luZyB0aGUgPHR0IGNsYXNzPSJtZXRob2QiPmdldF9hcHBfZGF0YTwvdHQ+IG1ldGhvZC4KIDwvZGw+CiAKIDxQPgotPGRsPjxkdD48Yj48YSBuYW1lPSdsMmgtMTI5Jz48dHQgY2xhc3M9J21ldGhvZCc+c2V0X2NpcGhlcl9saXN0PC90dD48L2E+PC9iPig8dmFyPmNpcGhlcnM8L3Zhcj4pCis8ZGw+PGR0PjxiPjxhIG5hbWU9J2wyaC0xMzAnPjx0dCBjbGFzcz0nbWV0aG9kJz5zZXRfY2lwaGVyX2xpc3Q8L3R0PjwvYT48L2I+KDx2YXI+Y2lwaGVyczwvdmFyPikKIDxkZD4KIFNldCB0aGUgbGlzdCBvZiBjaXBoZXJzIHRvIGJlIHVzZWQgaW4gdGhpcyBjb250ZXh0LiBTZWUgdGhlIE9wZW5TU0wgbWFudWFsIGZvcgogbW9yZSBpbmZvcm1hdGlvbiAoZS5nLiBjaXBoZXJzKDEpKQogPC9kbD4KIAogPFA+Ci08ZGw+PGR0PjxiPjxhIG5hbWU9J2wyaC0xMzAnPjx0dCBjbGFzcz0nbWV0aG9kJz5zZXRfaW5mb19jYWxsYmFjazwvdHQ+PC9hPjwvYj4oPHZhcj5jYWxsYmFjazwvdmFyPikKKzxkbD48ZHQ+PGI+PGEgbmFtZT0nbDJoLTEzMSc+PHR0IGNsYXNzPSdtZXRob2QnPnNldF9pbmZvX2NhbGxiYWNrPC90dD48L2E+PC9iPig8dmFyPmNhbGxiYWNrPC92YXI+KQogPGRkPgogU2V0IHRoZSBpbmZvcm1hdGlvbiBjYWxsYmFjayB0byA8dmFyPmNhbGxiYWNrPC92YXI+LiBUaGlzIGZ1bmN0aW9uIHdpbGwgYmUgY2FsbGVkCiBmcm9tIHRpbWUgdG8gdGltZSBkdXJpbmcgU1NMIGhhbmRzaGFrZXMuCkBAIC0xMzksMTQgKzEzOSwxNCBAQAogPC9kbD4KIAogPFA+Ci08ZGw+PGR0PjxiPjxhIG5hbWU9J2wyaC0xMzEnPjx0dCBjbGFzcz0nbWV0aG9kJz5zZXRfb3B0aW9uczwvdHQ+PC9hPjwvYj4oPHZhcj5vcHRpb25zPC92YXI+KQorPGRsPjxkdD48Yj48YSBuYW1lPSdsMmgtMTMyJz48dHQgY2xhc3M9J21ldGhvZCc+c2V0X29wdGlvbnM8L3R0PjwvYT48L2I+KDx2YXI+b3B0aW9uczwvdmFyPikKIDxkZD4KIEFkZCBTU0wgb3B0aW9ucy4gT3B0aW9ucyB5b3UgaGF2ZSBzZXQgYmVmb3JlIGFyZSBub3QgY2xlYXJlZCEKIFRoaXMgbWV0aG9kIHNob3VsZCBiZSB1c2VkIHdpdGggdGhlIDx0dCBjbGFzcz0iY29uc3RhbnQiPk9QXyo8L3R0PiBjb25zdGFudHMuCiA8L2RsPgogCiA8UD4KLTxkbD48ZHQ+PGI+PGEgbmFtZT0nbDJoLTEzMic+PHR0IGNsYXNzPSdtZXRob2QnPnNldF9wYXNzd2RfY2I8L3R0PjwvYT48L2I+KDx2YXI+Y2FsbGJhY2s8L3Zhcj48YmlnPls8L2JpZz48dmFyPiwgdXNlcmRhdGE8L3Zhcj48YmlnPl08L2JpZz4pCis8ZGw+PGR0PjxiPjxhIG5hbWU9J2wyaC0xMzMnPjx0dCBjbGFzcz0nbWV0aG9kJz5zZXRfcGFzc3dkX2NiPC90dD48L2E+PC9iPig8dmFyPmNhbGxiYWNrPC92YXI+PGJpZz5bPC9iaWc+PHZhcj4sIHVzZXJkYXRhPC92YXI+PGJpZz5dPC9iaWc+KQogPGRkPgogU2V0IHRoZSBwYXNzcGhyYXNlIGNhbGxiYWNrIHRvIDx2YXI+Y2FsbGJhY2s8L3Zhcj4uIFRoaXMgZnVuY3Rpb24gd2lsbCBiZSBjYWxsZWQKIHdoZW4gYSBwcml2YXRlIGtleSB3aXRoIGEgcGFzc3BocmFzZSBpcyBsb2FkZWQuCkBAIC0xNjAsNyArMTYwLDcgQEAKIDwvZGw+CiAKIDxQPgotPGRsPjxkdD48Yj48YSBuYW1lPSdsMmgtMTMzJz48dHQgY2xhc3M9J21ldGhvZCc+c2V0X3Nlc3Npb25faWQ8L3R0PjwvYT48L2I+KDx2YXI+bmFtZTwvdmFyPikKKzxkbD48ZHQ+PGI+PGEgbmFtZT0nbDJoLTEzNCc+PHR0IGNsYXNzPSdtZXRob2QnPnNldF9zZXNzaW9uX2lkPC90dD48L2E+PC9iPig8dmFyPm5hbWU8L3Zhcj4pCiA8ZGQ+CiBTZXQgdGhlIGNvbnRleHQgPHZhcj5uYW1lPC92YXI+IHdpdGhpbiB3aGljaCBhIHNlc3Npb24gY2FuIGJlIHJldXNlZCBmb3IgdGhpcwogQ29udGV4dCBvYmplY3QuIFRoaXMgaXMgbmVlZGVkIHdoZW4gZG9pbmcgc2Vzc2lvbiByZXN1bXB0aW9uLCBiZWNhdXNlIHRoZXJlIGlzCkBAIC0xNjksNyArMTY5LDcgQEAKIDwvZGw+CiAKIDxQPgotPGRsPjxkdD48Yj48YSBuYW1lPSdsMmgtMTM0Jz48dHQgY2xhc3M9J21ldGhvZCc+c2V0X3RpbWVvdXQ8L3R0PjwvYT48L2I+KDx2YXI+dGltZW91dDwvdmFyPikKKzxkbD48ZHQ+PGI+PGEgbmFtZT0nbDJoLTEzNSc+PHR0IGNsYXNzPSdtZXRob2QnPnNldF90aW1lb3V0PC90dD48L2E+PC9iPig8dmFyPnRpbWVvdXQ8L3Zhcj4pCiA8ZGQ+CiBTZXQgdGhlIHRpbWVvdXQgZm9yIG5ld2x5IGNyZWF0ZWQgc2Vzc2lvbnMgZm9yIHRoaXMgQ29udGV4dCBvYmplY3QgdG8KIDx2YXI+dGltZW91dDwvdmFyPi4gPHZhcj50aW1lb3V0PC92YXI+IG11c3QgYmUgZ2l2ZW4gaW4gKHdob2xlKSBzZWNvbmRzLiBUaGUgZGVmYXVsdApAQCAtMTc4LDcgKzE3OCw3IEBACiA8L2RsPgogCiA8UD4KLTxkbD48ZHQ+PGI+PGEgbmFtZT0nbDJoLTEzNSc+PHR0IGNsYXNzPSdtZXRob2QnPnNldF92ZXJpZnk8L3R0PjwvYT48L2I+KDx2YXI+bW9kZSwgY2FsbGJhY2s8L3Zhcj4pCis8ZGw+PGR0PjxiPjxhIG5hbWU9J2wyaC0xMzYnPjx0dCBjbGFzcz0nbWV0aG9kJz5zZXRfdmVyaWZ5PC90dD48L2E+PC9iPig8dmFyPm1vZGUsIGNhbGxiYWNrPC92YXI+KQogPGRkPgogU2V0IHRoZSB2ZXJpZmljYXRpb24gZmxhZ3MgZm9yIHRoaXMgQ29udGV4dCBvYmplY3QgdG8gPHZhcj5tb2RlPC92YXI+IGFuZCBzcGVjaWZ5CiB0aGF0IDx2YXI+Y2FsbGJhY2s8L3Zhcj4gc2hvdWxkIGJlIHVzZWQgZm9yIHZlcmlmaWNhdGlvbiBjYWxsYmFja3MuIDx2YXI+bW9kZTwvdmFyPgpAQCAtMTkzLDM5ICsxOTMsMzkgQEAKIDwvZGw+CiAKIDxQPgotPGRsPjxkdD48Yj48YSBuYW1lPSdsMmgtMTM2Jz48dHQgY2xhc3M9J21ldGhvZCc+c2V0X3ZlcmlmeV9kZXB0aDwvdHQ+PC9hPjwvYj4oPHZhcj5kZXB0aDwvdmFyPikKKzxkbD48ZHQ+PGI+PGEgbmFtZT0nbDJoLTEzNyc+PHR0IGNsYXNzPSdtZXRob2QnPnNldF92ZXJpZnlfZGVwdGg8L3R0PjwvYT48L2I+KDx2YXI+ZGVwdGg8L3Zhcj4pCiA8ZGQ+CiBTZXQgdGhlIG1heGltdW0gZGVwdGggZm9yIHRoZSBjZXJ0aWZpY2F0ZSBjaGFpbiB2ZXJpZmljYXRpb24gdGhhdCBzaGFsbCBiZQogYWxsb3dlZCBmb3IgdGhpcyBDb250ZXh0IG9iamVjdC4KIDwvZGw+CiAKIDxQPgotPGRsPjxkdD48Yj48YSBuYW1lPSdsMmgtMTM3Jz48dHQgY2xhc3M9J21ldGhvZCc+dXNlX2NlcnRpZmljYXRlPC90dD48L2E+PC9iPig8dmFyPmNlcnQ8L3Zhcj4pCis8ZGw+PGR0PjxiPjxhIG5hbWU9J2wyaC0xMzgnPjx0dCBjbGFzcz0nbWV0aG9kJz51c2VfY2VydGlmaWNhdGU8L3R0PjwvYT48L2I+KDx2YXI+Y2VydDwvdmFyPikKIDxkZD4KIFVzZSB0aGUgY2VydGlmaWNhdGUgPHZhcj5jZXJ0PC92YXI+IHdoaWNoIGhhcyB0byBiZSBhIFg1MDkgb2JqZWN0LgogPC9kbD4KIAogPFA+Ci08ZGw+PGR0PjxiPjxhIG5hbWU9J2wyaC0xMzgnPjx0dCBjbGFzcz0nbWV0aG9kJz5hZGRfZXh0cmFfY2hhaW5fY2VydDwvdHQ+PC9hPjwvYj4oPHZhcj5jZXJ0PC92YXI+KQorPGRsPjxkdD48Yj48YSBuYW1lPSdsMmgtMTM5Jz48dHQgY2xhc3M9J21ldGhvZCc+YWRkX2V4dHJhX2NoYWluX2NlcnQ8L3R0PjwvYT48L2I+KDx2YXI+Y2VydDwvdmFyPikKIDxkZD4KIEFkZHMgdGhlIGNlcnRpZmljYXRlIDx2YXI+Y2VydDwvdmFyPiwgd2hpY2ggaGFzIHRvIGJlIGEgWDUwOSBvYmplY3QsIHRvIHRoZQogY2VydGlmaWNhdGUgY2hhaW4gcHJlc2VudGVkIHRvZ2V0aGVyIHdpdGggdGhlIGNlcnRpZmljYXRlLgogPC9kbD4KIAogPFA+Ci08ZGw+PGR0PjxiPjxhIG5hbWU9J2wyaC0xMzknPjx0dCBjbGFzcz0nbWV0aG9kJz51c2VfY2VydGlmaWNhdGVfY2hhaW5fZmlsZTwvdHQ+PC9hPjwvYj4oPHZhcj5maWxlPC92YXI+KQorPGRsPjxkdD48Yj48YSBuYW1lPSdsMmgtMTQwJz48dHQgY2xhc3M9J21ldGhvZCc+dXNlX2NlcnRpZmljYXRlX2NoYWluX2ZpbGU8L3R0PjwvYT48L2I+KDx2YXI+ZmlsZTwvdmFyPikKIDxkZD4KIExvYWQgYSBjZXJ0aWZpY2F0ZSBjaGFpbiBmcm9tIDx2YXI+ZmlsZTwvdmFyPiB3aGljaCBtdXN0IGJlIFBFTSBlbmNvZGVkLgogPC9kbD4KIAogPFA+Ci08ZGw+PGR0PjxiPjxhIG5hbWU9J2wyaC0xNDAnPjx0dCBjbGFzcz0nbWV0aG9kJz51c2VfcHJpdmF0ZWtleTwvdHQ+PC9hPjwvYj4oPHZhcj5wa2V5PC92YXI+KQorPGRsPjxkdD48Yj48YSBuYW1lPSdsMmgtMTQxJz48dHQgY2xhc3M9J21ldGhvZCc+dXNlX3ByaXZhdGVrZXk8L3R0PjwvYT48L2I+KDx2YXI+cGtleTwvdmFyPikKIDxkZD4KIFVzZSB0aGUgcHJpdmF0ZSBrZXkgPHZhcj5wa2V5PC92YXI+IHdoaWNoIGhhcyB0byBiZSBhIFBLZXkgb2JqZWN0LgogPC9kbD4KIAogPFA+Ci08ZGw+PGR0PjxiPjxhIG5hbWU9J2wyaC0xNDEnPjx0dCBjbGFzcz0nbWV0aG9kJz51c2VfY2VydGlmaWNhdGVfZmlsZTwvdHQ+PC9hPjwvYj4oPHZhcj5maWxlPC92YXI+PGJpZz5bPC9iaWc+PHZhcj4sIGZvcm1hdDwvdmFyPjxiaWc+XTwvYmlnPikKKzxkbD48ZHQ+PGI+PGEgbmFtZT0nbDJoLTE0Mic+PHR0IGNsYXNzPSdtZXRob2QnPnVzZV9jZXJ0aWZpY2F0ZV9maWxlPC90dD48L2E+PC9iPig8dmFyPmZpbGU8L3Zhcj48YmlnPls8L2JpZz48dmFyPiwgZm9ybWF0PC92YXI+PGJpZz5dPC9iaWc+KQogPGRkPgogTG9hZCB0aGUgZmlyc3QgY2VydGlmaWNhdGUgZm91bmQgaW4gPHZhcj5maWxlPC92YXI+LiBUaGUgY2VydGlmaWNhdGUgbXVzdCBiZSBpbiB0aGUKIGZvcm1hdCBzcGVjaWZpZWQgYnkgPHZhcj5mb3JtYXQ8L3Zhcj4sIHdoaWNoIGlzIGVpdGhlciA8dHQgY2xhc3M9ImNvbnN0YW50Ij5GSUxFVFlQRV9QRU08L3R0PiBvcgpAQCAtMjMzLDcgKzIzMyw3IEBACiA8L2RsPgogCiA8UD4KLTxkbD48ZHQ+PGI+PGEgbmFtZT0nbDJoLTE0Mic+PHR0IGNsYXNzPSdtZXRob2QnPnVzZV9wcml2YXRla2V5X2ZpbGU8L3R0PjwvYT48L2I+KDx2YXI+ZmlsZTwvdmFyPjxiaWc+WzwvYmlnPjx2YXI+LCBmb3JtYXQ8L3Zhcj48YmlnPl08L2JpZz4pCis8ZGw+PGR0PjxiPjxhIG5hbWU9J2wyaC0xNDMnPjx0dCBjbGFzcz0nbWV0aG9kJz51c2VfcHJpdmF0ZWtleV9maWxlPC90dD48L2E+PC9iPig8dmFyPmZpbGU8L3Zhcj48YmlnPls8L2JpZz48dmFyPiwgZm9ybWF0PC92YXI+PGJpZz5dPC9iaWc+KQogPGRkPgogTG9hZCB0aGUgZmlyc3QgcHJpdmF0ZSBrZXkgZm91bmQgaW4gPHZhcj5maWxlPC92YXI+LiBUaGUgcHJpdmF0ZSBrZXkgbXVzdCBiZSBpbiB0aGUKIGZvcm1hdCBzcGVjaWZpZWQgYnkgPHZhcj5mb3JtYXQ8L3Zhcj4sIHdoaWNoIGlzIGVpdGhlciA8dHQgY2xhc3M9ImNvbnN0YW50Ij5GSUxFVFlQRV9QRU08L3R0PiBvcgpAQCAtMjcwLDcgKzI3MCw3IEBACiA8YiBjbGFzcz0ibmF2bGFiZWwiPlVwOjwvYj4gPGEgY2xhc3M9InNlY3RyZWYiIGhyZWY9Im9wZW5zc2wtc3NsLmh0bWwiPjMuMyBTU0wgIDwvQT4KIDxiIGNsYXNzPSJuYXZsYWJlbCI+TmV4dDo8L2I+IDxhIGNsYXNzPSJzZWN0cmVmIiBocmVmPSJvcGVuc3NsLWNvbm5lY3Rpb24uaHRtbCI+My4zLjIgQ29ubmVjdGlvbiBvYmplY3RzPC9BPgogPGhyPgotPHNwYW4gY2xhc3M9InJlbGVhc2UtaW5mbyI+UmVsZWFzZSAwLjdhMS48L3NwYW4+Cis8c3BhbiBjbGFzcz0icmVsZWFzZS1pbmZvIj5SZWxlYXNlIDAuN2EyLjwvc3Bhbj4KIDwvRElWPgogPCEtLUVuZCBvZiBOYXZpZ2F0aW9uIFBhbmVsLS0+CiAKZGlmZiAtLWdpdCBhL2RvYy9odG1sL29wZW5zc2wtY3J5cHRvLmh0bWwgYi9kb2MvaHRtbC9vcGVuc3NsLWNyeXB0by5odG1sCmluZGV4IGJkODIyYzUuLjI2YTE1MGUgMTAwNjQ0Ci0tLSBhL2RvYy9odG1sL29wZW5zc2wtY3J5cHRvLmh0bWwKKysrIGIvZG9jL2h0bWwvb3BlbnNzbC1jcnlwdG8uaHRtbApAQCAtMjg0LDcgKzI4NCw3IEBACiA8YiBjbGFzcz0ibmF2bGFiZWwiPlVwOjwvYj4gPGEgY2xhc3M9InNlY3RyZWYiIGhyZWY9Im9wZW5zc2wuaHRtbCI+MyBPcGVuU1NMICA8L0E+CiA8YiBjbGFzcz0ibmF2bGFiZWwiPk5leHQ6PC9iPiA8YSBjbGFzcz0ic2VjdHJlZiIgaHJlZj0ib3BlbnNzbC14NTA5Lmh0bWwiPjMuMS4xIFg1MDkgb2JqZWN0czwvQT4KIDxocj4KLTxzcGFuIGNsYXNzPSJyZWxlYXNlLWluZm8iPlJlbGVhc2UgMC43YTEuPC9zcGFuPgorPHNwYW4gY2xhc3M9InJlbGVhc2UtaW5mbyI+UmVsZWFzZSAwLjdhMi48L3NwYW4+CiA8L0RJVj4KIDwhLS1FbmQgb2YgTmF2aWdhdGlvbiBQYW5lbC0tPgogCmRpZmYgLS1naXQgYS9kb2MvaHRtbC9vcGVuc3NsLW5ldHNjYXBlLXNwa2kuaHRtbCBiL2RvYy9odG1sL29wZW5zc2wtbmV0c2NhcGUtc3BraS5odG1sCmluZGV4IDg5Y2UwNGUuLjIwMTUzODcgMTAwNjQ0Ci0tLSBhL2RvYy9odG1sL29wZW5zc2wtbmV0c2NhcGUtc3BraS5odG1sCisrKyBiL2RvYy9odG1sL29wZW5zc2wtbmV0c2NhcGUtc3BraS5odG1sCkBAIC01MSwzMSArNTEsMzEgQEAKIE5ldHNjYXBlU1BLSSBvYmplY3RzIGhhdmUgdGhlIGZvbGxvd2luZyBtZXRob2RzOgogCiA8UD4KLTxkbD48ZHQ+PGI+PGEgbmFtZT0nbDJoLTgxJz48dHQgY2xhc3M9J21ldGhvZCc+YjY0X2VuY29kZTwvdHQ+PC9hPjwvYj4oKQorPGRsPjxkdD48Yj48YSBuYW1lPSdsMmgtODInPjx0dCBjbGFzcz0nbWV0aG9kJz5iNjRfZW5jb2RlPC90dD48L2E+PC9iPigpCiA8ZGQ+CiBSZXR1cm4gYSBiYXNlNjQtZW5jb2RlZCBzdHJpbmcgcmVwcmVzZW50YXRpb24gb2YgdGhlIG9iamVjdC4KIDwvZGw+CiAKIDxQPgotPGRsPjxkdD48Yj48YSBuYW1lPSdsMmgtODInPjx0dCBjbGFzcz0nbWV0aG9kJz5nZXRfcHVia2V5PC90dD48L2E+PC9iPigpCis8ZGw+PGR0PjxiPjxhIG5hbWU9J2wyaC04Myc+PHR0IGNsYXNzPSdtZXRob2QnPmdldF9wdWJrZXk8L3R0PjwvYT48L2I+KCkKIDxkZD4KIFJldHVybiB0aGUgcHVibGljIGtleSBvZiBvYmplY3QuCiA8L2RsPgogCiA8UD4KLTxkbD48ZHQ+PGI+PGEgbmFtZT0nbDJoLTgzJz48dHQgY2xhc3M9J21ldGhvZCc+c2V0X3B1YmtleTwvdHQ+PC9hPjwvYj4oPHZhcj5rZXk8L3Zhcj4pCis8ZGw+PGR0PjxiPjxhIG5hbWU9J2wyaC04NCc+PHR0IGNsYXNzPSdtZXRob2QnPnNldF9wdWJrZXk8L3R0PjwvYT48L2I+KDx2YXI+a2V5PC92YXI+KQogPGRkPgogU2V0IHRoZSBwdWJsaWMga2V5IG9mIHRoZSBvYmplY3QgdG8gPHZhcj5rZXk8L3Zhcj4uCiA8L2RsPgogCiA8UD4KLTxkbD48ZHQ+PGI+PGEgbmFtZT0nbDJoLTg0Jz48dHQgY2xhc3M9J21ldGhvZCc+c2lnbjwvdHQ+PC9hPjwvYj4oPHZhcj5rZXksIGRpZ2VzdF9uYW1lPC92YXI+KQorPGRsPjxkdD48Yj48YSBuYW1lPSdsMmgtODUnPjx0dCBjbGFzcz0nbWV0aG9kJz5zaWduPC90dD48L2E+PC9iPig8dmFyPmtleSwgZGlnZXN0X25hbWU8L3Zhcj4pCiA8ZGQ+CiBTaWduIHRoZSBOZXRzY2FwZVNQS0kgb2JqZWN0IHVzaW5nIHRoZSBnaXZlbiA8dmFyPmtleTwvdmFyPiBhbmQgPHZhcj5kaWdlc3RfbmFtZTwvdmFyPi4KIDwvZGw+CiAKIDxQPgotPGRsPjxkdD48Yj48YSBuYW1lPSdsMmgtODUnPjx0dCBjbGFzcz0nbWV0aG9kJz52ZXJpZnk8L3R0PjwvYT48L2I+KDx2YXI+a2V5PC92YXI+KQorPGRsPjxkdD48Yj48YSBuYW1lPSdsMmgtODYnPjx0dCBjbGFzcz0nbWV0aG9kJz52ZXJpZnk8L3R0PjwvYT48L2I+KDx2YXI+a2V5PC92YXI+KQogPGRkPgogVmVyaWZ5IHRoZSBOZXRzY2FwZVNQS0kgb2JqZWN0IHVzaW5nIHRoZSBnaXZlbiA8dmFyPmtleTwvdmFyPi4KIDwvZGw+CkBAIC0xMTAsNyArMTEwLDcgQEAKIDxiIGNsYXNzPSJuYXZsYWJlbCI+VXA6PC9iPiA8YSBjbGFzcz0ic2VjdHJlZiIgaHJlZj0ib3BlbnNzbC1jcnlwdG8uaHRtbCI+My4xIGNyeXB0byAgPC9BPgogPGIgY2xhc3M9Im5hdmxhYmVsIj5OZXh0OjwvYj4gPGEgY2xhc3M9InNlY3RyZWYiIGhyZWY9Im9wZW5zc2wtcmFuZC5odG1sIj4zLjIgcmFuZCAgPC9BPgogPGhyPgotPHNwYW4gY2xhc3M9InJlbGVhc2UtaW5mbyI+UmVsZWFzZSAwLjdhMS48L3NwYW4+Cis8c3BhbiBjbGFzcz0icmVsZWFzZS1pbmZvIj5SZWxlYXNlIDAuN2EyLjwvc3Bhbj4KIDwvRElWPgogPCEtLUVuZCBvZiBOYXZpZ2F0aW9uIFBhbmVsLS0+CiAKZGlmZiAtLWdpdCBhL2RvYy9odG1sL29wZW5zc2wtcGtjczEyLmh0bWwgYi9kb2MvaHRtbC9vcGVuc3NsLXBrY3MxMi5odG1sCmluZGV4IDRlYjg5M2YuLjE0MzliNjEgMTAwNjQ0Ci0tLSBhL2RvYy9odG1sL29wZW5zc2wtcGtjczEyLmh0bWwKKysrIGIvZG9jL2h0bWwvb3BlbnNzbC1wa2NzMTIuaHRtbApAQCAtNTIsMTkgKzUyLDE5IEBACiBQS0NTMTIgb2JqZWN0cyBoYXZlIHRoZSBmb2xsb3dpbmcgbWV0aG9kczoKIAogPFA+Ci08ZGw+PGR0PjxiPjxhIG5hbWU9J2wyaC03Nyc+PHR0IGNsYXNzPSdtZXRob2QnPmdldF9jZXJ0aWZpY2F0ZTwvdHQ+PC9hPjwvYj4oKQorPGRsPjxkdD48Yj48YSBuYW1lPSdsMmgtNzgnPjx0dCBjbGFzcz0nbWV0aG9kJz5nZXRfY2VydGlmaWNhdGU8L3R0PjwvYT48L2I+KCkKIDxkZD4KIFJldHVybiBjZXJ0aWZpY2F0ZSBwb3J0aW9uIG9mIHRoZSBQS0NTMTIgc3RydWN0dXJlLgogPC9kbD4KIAogPFA+Ci08ZGw+PGR0PjxiPjxhIG5hbWU9J2wyaC03OCc+PHR0IGNsYXNzPSdtZXRob2QnPmdldF9wcml2YXRla2V5PC90dD48L2E+PC9iPigpCis8ZGw+PGR0PjxiPjxhIG5hbWU9J2wyaC03OSc+PHR0IGNsYXNzPSdtZXRob2QnPmdldF9wcml2YXRla2V5PC90dD48L2E+PC9iPigpCiA8ZGQ+CiBSZXR1cm4gcHJpdmF0ZSBrZXkgcG9ydGlvbiBvZiB0aGUgUEtDUzEyIHN0cnVjdHVyZQogPC9kbD4KIAogPFA+Ci08ZGw+PGR0PjxiPjxhIG5hbWU9J2wyaC03OSc+PHR0IGNsYXNzPSdtZXRob2QnPmdldF9jYV9jZXJ0aWZpY2F0ZXM8L3R0PjwvYT48L2I+KCkKKzxkbD48ZHQ+PGI+PGEgbmFtZT0nbDJoLTgwJz48dHQgY2xhc3M9J21ldGhvZCc+Z2V0X2NhX2NlcnRpZmljYXRlczwvdHQ+PC9hPjwvYj4oKQogPGRkPgogUmV0dXJuIENBIGNlcnRpZmljYXRlcyB3aXRoaW4gdGhlIFBLQ1MxMiBvYmplY3QgYXMgYSB0dXBsZS4gUmV0dXJucwogTm9uZSBpZiBubyBDQSBjZXJ0aWZpY2F0ZXMgYXJlIHByZXNlbnQuCkBAIC0xMDAsNyArMTAwLDcgQEAKIDxiIGNsYXNzPSJuYXZsYWJlbCI+VXA6PC9iPiA8YSBjbGFzcz0ic2VjdHJlZiIgaHJlZj0ib3BlbnNzbC1jcnlwdG8uaHRtbCI+My4xIGNyeXB0byAgPC9BPgogPGIgY2xhc3M9Im5hdmxhYmVsIj5OZXh0OjwvYj4gPGEgY2xhc3M9InNlY3RyZWYiIGhyZWY9Im9wZW5zc2wtNTA5ZXh0Lmh0bWwiPjMuMS44IFg1MDlFeHRlbnNpb24gb2JqZWN0czwvQT4KIDxocj4KLTxzcGFuIGNsYXNzPSJyZWxlYXNlLWluZm8iPlJlbGVhc2UgMC43YTEuPC9zcGFuPgorPHNwYW4gY2xhc3M9InJlbGVhc2UtaW5mbyI+UmVsZWFzZSAwLjdhMi48L3NwYW4+CiA8L0RJVj4KIDwhLS1FbmQgb2YgTmF2aWdhdGlvbiBQYW5lbC0tPgogCmRpZmYgLS1naXQgYS9kb2MvaHRtbC9vcGVuc3NsLXBrY3M3Lmh0bWwgYi9kb2MvaHRtbC9vcGVuc3NsLXBrY3M3Lmh0bWwKaW5kZXggMWRhNzk2NC4uODY1ZTEyYyAxMDA2NDQKLS0tIGEvZG9jL2h0bWwvb3BlbnNzbC1wa2NzNy5odG1sCisrKyBiL2RvYy9odG1sL29wZW5zc2wtcGtjczcuaHRtbApAQCAtNTIsMzEgKzUyLDMxIEBACiBQS0NTNyBvYmplY3RzIGhhdmUgdGhlIGZvbGxvd2luZyBtZXRob2RzOgogCiA8UD4KLTxkbD48ZHQ+PGI+PGEgbmFtZT0nbDJoLTcyJz48dHQgY2xhc3M9J21ldGhvZCc+dHlwZV9pc19zaWduZWQ8L3R0PjwvYT48L2I+KCkKKzxkbD48ZHQ+PGI+PGEgbmFtZT0nbDJoLTczJz48dHQgY2xhc3M9J21ldGhvZCc+dHlwZV9pc19zaWduZWQ8L3R0PjwvYT48L2I+KCkKIDxkZD4KIEZJWE1FCiA8L2RsPgogCiA8UD4KLTxkbD48ZHQ+PGI+PGEgbmFtZT0nbDJoLTczJz48dHQgY2xhc3M9J21ldGhvZCc+dHlwZV9pc19lbnZlbG9wZWQ8L3R0PjwvYT48L2I+KCkKKzxkbD48ZHQ+PGI+PGEgbmFtZT0nbDJoLTc0Jz48dHQgY2xhc3M9J21ldGhvZCc+dHlwZV9pc19lbnZlbG9wZWQ8L3R0PjwvYT48L2I+KCkKIDxkZD4KIEZJWE1FCiA8L2RsPgogCiA8UD4KLTxkbD48ZHQ+PGI+PGEgbmFtZT0nbDJoLTc0Jz48dHQgY2xhc3M9J21ldGhvZCc+dHlwZV9pc19zaWduZWRBbmRFbnZlbG9wZWQ8L3R0PjwvYT48L2I+KCkKKzxkbD48ZHQ+PGI+PGEgbmFtZT0nbDJoLTc1Jz48dHQgY2xhc3M9J21ldGhvZCc+dHlwZV9pc19zaWduZWRBbmRFbnZlbG9wZWQ8L3R0PjwvYT48L2I+KCkKIDxkZD4KIEZJWE1FCiA8L2RsPgogCiA8UD4KLTxkbD48ZHQ+PGI+PGEgbmFtZT0nbDJoLTc1Jz48dHQgY2xhc3M9J21ldGhvZCc+dHlwZV9pc19kYXRhPC90dD48L2E+PC9iPigpCis8ZGw+PGR0PjxiPjxhIG5hbWU9J2wyaC03Nic+PHR0IGNsYXNzPSdtZXRob2QnPnR5cGVfaXNfZGF0YTwvdHQ+PC9hPjwvYj4oKQogPGRkPgogRklYTUUKIDwvZGw+CiAKIDxQPgotPGRsPjxkdD48Yj48YSBuYW1lPSdsMmgtNzYnPjx0dCBjbGFzcz0nbWV0aG9kJz5nZXRfdHlwZV9uYW1lPC90dD48L2E+PC9iPigpCis8ZGw+PGR0PjxiPjxhIG5hbWU9J2wyaC03Nyc+PHR0IGNsYXNzPSdtZXRob2QnPmdldF90eXBlX25hbWU8L3R0PjwvYT48L2I+KCkKIDxkZD4KIEdldCB0aGUgdHlwZSBuYW1lIG9mIHRoZSBQS0NTNy4KIDwvZGw+CkBAIC0xMTEsNyArMTExLDcgQEAKIDxiIGNsYXNzPSJuYXZsYWJlbCI+VXA6PC9iPiA8YSBjbGFzcz0ic2VjdHJlZiIgaHJlZj0ib3BlbnNzbC1jcnlwdG8uaHRtbCI+My4xIGNyeXB0byAgPC9BPgogPGIgY2xhc3M9Im5hdmxhYmVsIj5OZXh0OjwvYj4gPGEgY2xhc3M9InNlY3RyZWYiIGhyZWY9Im9wZW5zc2wtcGtjczEyLmh0bWwiPjMuMS43IFBLQ1MxMiBvYmplY3RzPC9BPgogPGhyPgotPHNwYW4gY2xhc3M9InJlbGVhc2UtaW5mbyI+UmVsZWFzZSAwLjdhMS48L3NwYW4+Cis8c3BhbiBjbGFzcz0icmVsZWFzZS1pbmZvIj5SZWxlYXNlIDAuN2EyLjwvc3Bhbj4KIDwvRElWPgogPCEtLUVuZCBvZiBOYXZpZ2F0aW9uIFBhbmVsLS0+CiAKZGlmZiAtLWdpdCBhL2RvYy9odG1sL29wZW5zc2wtcGtleS5odG1sIGIvZG9jL2h0bWwvb3BlbnNzbC1wa2V5Lmh0bWwKaW5kZXggY2I5ZWNiZS4uNjg2YWIzMiAxMDA2NDQKLS0tIGEvZG9jL2h0bWwvb3BlbnNzbC1wa2V5Lmh0bWwKKysrIGIvZG9jL2h0bWwvb3BlbnNzbC1wa2V5Lmh0bWwKQEAgLTUyLDIwICs1MiwyMCBAQAogVGhlIFBLZXkgb2JqZWN0IGhhcyB0aGUgZm9sbG93aW5nIG1ldGhvZHM6CiAKIDxQPgotPGRsPjxkdD48Yj48YSBuYW1lPSdsMmgtNjknPjx0dCBjbGFzcz0nbWV0aG9kJz5iaXRzPC90dD48L2E+PC9iPigpCis8ZGw+PGR0PjxiPjxhIG5hbWU9J2wyaC03MCc+PHR0IGNsYXNzPSdtZXRob2QnPmJpdHM8L3R0PjwvYT48L2I+KCkKIDxkZD4KIFJldHVybiB0aGUgbnVtYmVyIG9mIGJpdHMgb2YgdGhlIGtleS4KIDwvZGw+CiAKIDxQPgotPGRsPjxkdD48Yj48YSBuYW1lPSdsMmgtNzAnPjx0dCBjbGFzcz0nbWV0aG9kJz5nZW5lcmF0ZV9rZXk8L3R0PjwvYT48L2I+KDx2YXI+dHlwZSwgYml0czwvdmFyPikKKzxkbD48ZHQ+PGI+PGEgbmFtZT0nbDJoLTcxJz48dHQgY2xhc3M9J21ldGhvZCc+Z2VuZXJhdGVfa2V5PC90dD48L2E+PC9iPig8dmFyPnR5cGUsIGJpdHM8L3Zhcj4pCiA8ZGQ+CiBHZW5lcmF0ZSBhIHB1YmxpYy9wcml2YXRlIGtleSBwYWlyIG9mIHRoZSB0eXBlIDx2YXI+dHlwZTwvdmFyPiAob25lIG9mCiA8dHQgY2xhc3M9ImNvbnN0YW50Ij5UWVBFX1JTQTwvdHQ+IGFuZCA8dHQgY2xhc3M9ImNvbnN0YW50Ij5UWVBFX0RTQTwvdHQ+KSB3aXRoIHRoZSBzaXplIDx2YXI+Yml0czwvdmFyPi4KIDwvZGw+CiAKIDxQPgotPGRsPjxkdD48Yj48YSBuYW1lPSdsMmgtNzEnPjx0dCBjbGFzcz0nbWV0aG9kJz50eXBlPC90dD48L2E+PC9iPigpCis8ZGw+PGR0PjxiPjxhIG5hbWU9J2wyaC03Mic+PHR0IGNsYXNzPSdtZXRob2QnPnR5cGU8L3R0PjwvYT48L2I+KCkKIDxkZD4KIFJldHVybiB0aGUgdHlwZSBvZiB0aGUga2V5LgogPC9kbD4KQEAgLTEwMCw3ICsxMDAsNyBAQAogPGIgY2xhc3M9Im5hdmxhYmVsIj5VcDo8L2I+IDxhIGNsYXNzPSJzZWN0cmVmIiBocmVmPSJvcGVuc3NsLWNyeXB0by5odG1sIj4zLjEgY3J5cHRvICA8L0E+CiA8YiBjbGFzcz0ibmF2bGFiZWwiPk5leHQ6PC9iPiA8YSBjbGFzcz0ic2VjdHJlZiIgaHJlZj0ib3BlbnNzbC1wa2NzNy5odG1sIj4zLjEuNiBQS0NTNyBvYmplY3RzPC9BPgogPGhyPgotPHNwYW4gY2xhc3M9InJlbGVhc2UtaW5mbyI+UmVsZWFzZSAwLjdhMS48L3NwYW4+Cis8c3BhbiBjbGFzcz0icmVsZWFzZS1pbmZvIj5SZWxlYXNlIDAuN2EyLjwvc3Bhbj4KIDwvRElWPgogPCEtLUVuZCBvZiBOYXZpZ2F0aW9uIFBhbmVsLS0+CiAKZGlmZiAtLWdpdCBhL2RvYy9odG1sL29wZW5zc2wtcmFuZC5odG1sIGIvZG9jL2h0bWwvb3BlbnNzbC1yYW5kLmh0bWwKaW5kZXggYjNiNzFjOC4uZmY4YTRiMSAxMDA2NDQKLS0tIGEvZG9jL2h0bWwvb3BlbnNzbC1yYW5kLmh0bWwKKysrIGIvZG9jL2h0bWwvb3BlbnNzbC1yYW5kLmh0bWwKQEAgLTU2LDUyICs1Niw1MiBAQAogZGVjbGFyZXMgdGhlIGZvbGxvd2luZzoKIAogPFA+Ci08ZGw+PGR0PjxiPjxhIG5hbWU9J2wyaC04Nyc+PHR0IGNsYXNzPSdmdW5jdGlvbic+YWRkPC90dD48L2E+PC9iPig8dmFyPnN0cmluZywgZW50cm9weTwvdmFyPikKKzxkbD48ZHQ+PGI+PGEgbmFtZT0nbDJoLTg4Jz48dHQgY2xhc3M9J2Z1bmN0aW9uJz5hZGQ8L3R0PjwvYT48L2I+KDx2YXI+c3RyaW5nLCBlbnRyb3B5PC92YXI+KQogPGRkPgogTWl4IGJ5dGVzIGZyb20gPHZhcj5zdHJpbmc8L3Zhcj4gaW50byB0aGUgUFJORyBzdGF0ZS4gVGhlIDx2YXI+ZW50cm9weTwvdmFyPiBhcmd1bWVudCBpcwogKHRoZSBsb3dlciBib3VuZCBvZikgYW4gZXN0aW1hdGUgb2YgaG93IG11Y2ggcmFuZG9tbmVzcyBpcyBjb250YWluZWQgaW4KLTx2YXI+c3RyaW5nPC92YXI+LCBtZWFzdXJlZCBpbiBieXRlcy4gRm9yIG1vcmUgaW5mb3JtYXRpb24sIHNlZSBlLmcuIDxhIGNsYXNzPSJyZmMiIG5hbWU9InJmY3JlZi0xODQ0IgorPHZhcj5zdHJpbmc8L3Zhcj4sIG1lYXN1cmVkIGluIGJ5dGVzLiBGb3IgbW9yZSBpbmZvcm1hdGlvbiwgc2VlIGUuZy4gPGEgY2xhc3M9InJmYyIgbmFtZT0icmZjcmVmLTE4NTEiCiBocmVmPSJodHRwOi8vd3d3LmlldGYub3JnL3JmYy9yZmMxNzUwLnR4dCI+UkZDIDE3NTA8L2E+LgogPC9kbD4KIAogPFA+Ci08ZGw+PGR0PjxiPjxhIG5hbWU9J2wyaC04OCc+PHR0IGNsYXNzPSdmdW5jdGlvbic+ZWdkPC90dD48L2E+PC9iPig8dmFyPnBhdGg8L3Zhcj48YmlnPls8L2JpZz48dmFyPiwgYnl0ZXM8L3Zhcj48YmlnPl08L2JpZz4pCis8ZGw+PGR0PjxiPjxhIG5hbWU9J2wyaC04OSc+PHR0IGNsYXNzPSdmdW5jdGlvbic+ZWdkPC90dD48L2E+PC9iPig8dmFyPnBhdGg8L3Zhcj48YmlnPls8L2JpZz48dmFyPiwgYnl0ZXM8L3Zhcj48YmlnPl08L2JpZz4pCiA8ZGQ+CiBRdWVyeSB0aGUgRW50cm9weSBHYXRoZXJpbmcgRGFlbW9uPEEgTkFNRT0idGV4Mmh0bWwzIgotICBIUkVGPSIjZm9vdDk0OCI+PFNVUD4zPC9TVVA+PC9BPiBvbiBzb2NrZXQgPHZhcj5wYXRoPC92YXI+IGZvciA8dmFyPmJ5dGVzPC92YXI+CisgIEhSRUY9IiNmb290OTUyIj48U1VQPjM8L1NVUD48L0E+IG9uIHNvY2tldCA8dmFyPnBhdGg8L3Zhcj4gZm9yIDx2YXI+Ynl0ZXM8L3Zhcj4KIGJ5dGVzIG9mIHJhbmRvbSBkYXRhIGFuZCBhbmQgdXNlcyA8dHQgY2xhc3M9ImZ1bmN0aW9uIj5hZGQ8L3R0PiB0byBzZWVkIHRoZSBQUk5HLiBUaGUgZGVmYXVsdAogdmFsdWUgb2YgPHZhcj5ieXRlczwvdmFyPiBpcyAyNTUuCiA8L2RsPgogCiA8UD4KLTxkbD48ZHQ+PGI+PGEgbmFtZT0nbDJoLTg5Jz48dHQgY2xhc3M9J2Z1bmN0aW9uJz5sb2FkX2ZpbGU8L3R0PjwvYT48L2I+KDx2YXI+cGF0aDwvdmFyPjxiaWc+WzwvYmlnPjx2YXI+LCBieXRlczwvdmFyPjxiaWc+XTwvYmlnPikKKzxkbD48ZHQ+PGI+PGEgbmFtZT0nbDJoLTkwJz48dHQgY2xhc3M9J2Z1bmN0aW9uJz5sb2FkX2ZpbGU8L3R0PjwvYT48L2I+KDx2YXI+cGF0aDwvdmFyPjxiaWc+WzwvYmlnPjx2YXI+LCBieXRlczwvdmFyPjxiaWc+XTwvYmlnPikKIDxkZD4KIFJlYWQgPHZhcj5ieXRlczwvdmFyPiBieXRlcyAob3IgYWxsIG9mIGl0LCBpZiA8dmFyPmJ5dGVzPC92YXI+IGlzIG5lZ2F0aXZlKSBvZiBkYXRhIGZyb20KIHRoZSBmaWxlIDx2YXI+cGF0aDwvdmFyPiB0byBzZWVkIHRoZSBQUk5HLiBUaGUgZGVmYXVsdCB2YWx1ZSBvZiA8dmFyPmJ5dGVzPC92YXI+IGlzIC0xLgogPC9kbD4KIAogPFA+Ci08ZGw+PGR0PjxiPjxhIG5hbWU9J2wyaC05MCc+PHR0IGNsYXNzPSdmdW5jdGlvbic+c2NyZWVuPC90dD48L2E+PC9iPigpCis8ZGw+PGR0PjxiPjxhIG5hbWU9J2wyaC05MSc+PHR0IGNsYXNzPSdmdW5jdGlvbic+c2NyZWVuPC90dD48L2E+PC9iPigpCiA8ZGQ+CiBBZGQgdGhlIGN1cnJlbnQgY29udGVudHMgb2YgdGhlIHNjcmVlbiB0byB0aGUgUFJORyBzdGF0ZS4KIEF2YWlsYWJpbGl0eTogV2luZG93cy4KIDwvZGw+CiAKIDxQPgotPGRsPjxkdD48Yj48YSBuYW1lPSdsMmgtOTEnPjx0dCBjbGFzcz0nZnVuY3Rpb24nPnNlZWQ8L3R0PjwvYT48L2I+KDx2YXI+c3RyaW5nPC92YXI+KQorPGRsPjxkdD48Yj48YSBuYW1lPSdsMmgtOTInPjx0dCBjbGFzcz0nZnVuY3Rpb24nPnNlZWQ8L3R0PjwvYT48L2I+KDx2YXI+c3RyaW5nPC92YXI+KQogPGRkPgogVGhpcyBpcyBlcXVpdmFsZW50IHRvIGNhbGxpbmcgPHR0IGNsYXNzPSJmdW5jdGlvbiI+YWRkPC90dD4gd2l0aCA8dmFyPmVudHJvcHk8L3Zhcj4gYXMgdGhlIGxlbmd0aAogb2YgdGhlIHN0cmluZy4KIDwvZGw+CiAKIDxQPgotPGRsPjxkdD48Yj48YSBuYW1lPSdsMmgtOTInPjx0dCBjbGFzcz0nZnVuY3Rpb24nPnN0YXR1czwvdHQ+PC9hPjwvYj4oKQorPGRsPjxkdD48Yj48YSBuYW1lPSdsMmgtOTMnPjx0dCBjbGFzcz0nZnVuY3Rpb24nPnN0YXR1czwvdHQ+PC9hPjwvYj4oKQogPGRkPgogUmV0dXJucyB0cnVlIGlmIHRoZSBQUk5HIGhhcyBiZWVuIHNlZWRlZCB3aXRoIGVub3VnaCBkYXRhLCBhbmQgZmFsc2Ugb3RoZXJ3aXNlLgogPC9kbD4KIAogPFA+Ci08ZGw+PGR0PjxiPjxhIG5hbWU9J2wyaC05Myc+PHR0IGNsYXNzPSdmdW5jdGlvbic+d3JpdGVfZmlsZTwvdHQ+PC9hPjwvYj4oPHZhcj5wYXRoPC92YXI+KQorPGRsPjxkdD48Yj48YSBuYW1lPSdsMmgtOTQnPjx0dCBjbGFzcz0nZnVuY3Rpb24nPndyaXRlX2ZpbGU8L3R0PjwvYT48L2I+KDx2YXI+cGF0aDwvdmFyPikKIDxkZD4KIFdyaXRlIGEgbnVtYmVyIG9mIHJhbmRvbSBieXRlcyAoY3VycmVudGx5IDEwMjQpIHRvIHRoZSBmaWxlIDx2YXI+cGF0aDwvdmFyPi4gVGhpcwogZmlsZSBjYW4gdGhlbiBiZSB1c2VkIHdpdGggPHR0IGNsYXNzPSJmdW5jdGlvbiI+bG9hZF9maWxlPC90dD4gdG8gc2VlZCB0aGUgUFJORyBhZ2Fpbi4KQEAgLTExMCw3ICsxMTAsNyBAQAogPFA+CiA8QlI+PEhSPjxIND5Gb290bm90ZXM8L0g0PgogPERMPgotPERUPjxBIE5BTUU9ImZvb3Q5NDgiPi4uLiBEYWVtb248L0E+PEEKKzxEVD48QSBOQU1FPSJmb290OTUyIj4uLi4gRGFlbW9uPC9BPjxBCiAgaHJlZj0ib3BlbnNzbC1yYW5kLmh0bWwjdGV4Mmh0bWwzIj48U1VQPjM8L1NVUD48L0E+PC9EVD4KIDxERD5TZWUKIDxhIGNsYXNzPSJ1cmwiIGhyZWY9Imh0dHA6Ly93d3cubG90aGFyLmNvbS90ZWNoL2NyeXB0by8iPmh0dHA6Ly93d3cubG90aGFyLmNvbS90ZWNoL2NyeXB0by88L2E+CkBAIC0xNDUsNyArMTQ1LDcgQEAKIDxiIGNsYXNzPSJuYXZsYWJlbCI+VXA6PC9iPiA8YSBjbGFzcz0ic2VjdHJlZiIgaHJlZj0ib3BlbnNzbC5odG1sIj4zIE9wZW5TU0wgIDwvQT4KIDxiIGNsYXNzPSJuYXZsYWJlbCI+TmV4dDo8L2I+IDxhIGNsYXNzPSJzZWN0cmVmIiBocmVmPSJvcGVuc3NsLXNzbC5odG1sIj4zLjMgU1NMICA8L0E+CiA8aHI+Ci08c3BhbiBjbGFzcz0icmVsZWFzZS1pbmZvIj5SZWxlYXNlIDAuN2ExLjwvc3Bhbj4KKzxzcGFuIGNsYXNzPSJyZWxlYXNlLWluZm8iPlJlbGVhc2UgMC43YTIuPC9zcGFuPgogPC9ESVY+CiA8IS0tRW5kIG9mIE5hdmlnYXRpb24gUGFuZWwtLT4KIApkaWZmIC0tZ2l0IGEvZG9jL2h0bWwvb3BlbnNzbC1zc2wuaHRtbCBiL2RvYy9odG1sL29wZW5zc2wtc3NsLmh0bWwKaW5kZXggOWExYjM3My4uZTNhYzBiYiAxMDA2NDQKLS0tIGEvZG9jL2h0bWwvb3BlbnNzbC1zc2wuaHRtbAorKysgYi9kb2MvaHRtbC9vcGVuc3NsLXNzbC5odG1sCkBAIC01NCwzOSArNTQsMzkgQEAKIENvbnRleHQsIENvbm5lY3Rpb24uCiAKIDxQPgotPGRsPjxkdD48Yj48YSBuYW1lPSdsMmgtOTUnPjx0dD5TU0x2Ml9NRVRIT0Q8L3R0PjwvYT48L2I+Cis8ZGw+PGR0PjxiPjxhIG5hbWU9J2wyaC05Nic+PHR0PlNTTHYyX01FVEhPRDwvdHQ+PC9hPjwvYj4KIDxkZD4KLTxkdD48Yj48YSBuYW1lPSdsMmgtMTA5Jz48dHQ+U1NMdjNfTUVUSE9EPC90dD48L2E+PC9iPjxkZD4KLTxkdD48Yj48YSBuYW1lPSdsMmgtMTEwJz48dHQ+U1NMdjIzX01FVEhPRDwvdHQ+PC9hPjwvYj48ZGQ+Ci08ZHQ+PGI+PGEgbmFtZT0nbDJoLTExMSc+PHR0PlRMU3YxX01FVEhPRDwvdHQ+PC9hPjwvYj48ZGQ+Cis8ZHQ+PGI+PGEgbmFtZT0nbDJoLTExMCc+PHR0PlNTTHYzX01FVEhPRDwvdHQ+PC9hPjwvYj48ZGQ+Cis8ZHQ+PGI+PGEgbmFtZT0nbDJoLTExMSc+PHR0PlNTTHYyM19NRVRIT0Q8L3R0PjwvYT48L2I+PGRkPgorPGR0PjxiPjxhIG5hbWU9J2wyaC0xMTInPjx0dD5UTFN2MV9NRVRIT0Q8L3R0PjwvYT48L2I+PGRkPgogVGhlc2UgY29uc3RhbnRzIHJlcHJlc2VudCB0aGUgZGlmZmVyZW50IFNTTCBtZXRob2RzIHRvIHVzZSB3aGVuIGNyZWF0aW5nIGEKIGNvbnRleHQgb2JqZWN0LgogPC9kbD4KIAogPFA+Ci08ZGw+PGR0PjxiPjxhIG5hbWU9J2wyaC05Nic+PHR0PlZFUklGWV9OT05FPC90dD48L2E+PC9iPgorPGRsPjxkdD48Yj48YSBuYW1lPSdsMmgtOTcnPjx0dD5WRVJJRllfTk9ORTwvdHQ+PC9hPjwvYj4KIDxkZD4KLTxkdD48Yj48YSBuYW1lPSdsMmgtMTEyJz48dHQ+VkVSSUZZX1BFRVI8L3R0PjwvYT48L2I+PGRkPgotPGR0PjxiPjxhIG5hbWU9J2wyaC0xMTMnPjx0dD5WRVJJRllfRkFJTF9JRl9OT19QRUVSX0NFUlQ8L3R0PjwvYT48L2I+PGRkPgorPGR0PjxiPjxhIG5hbWU9J2wyaC0xMTMnPjx0dD5WRVJJRllfUEVFUjwvdHQ+PC9hPjwvYj48ZGQ+Cis8ZHQ+PGI+PGEgbmFtZT0nbDJoLTExNCc+PHR0PlZFUklGWV9GQUlMX0lGX05PX1BFRVJfQ0VSVDwvdHQ+PC9hPjwvYj48ZGQ+CiBUaGVzZSBjb25zdGFudHMgcmVwcmVzZW50IHRoZSB2ZXJpZmljYXRpb24gbW9kZSB1c2VkIGJ5IHRoZSBDb250ZXh0CiBvYmplY3QncyA8dHQgY2xhc3M9Im1ldGhvZCI+c2V0X3ZlcmlmeTwvdHQ+IG1ldGhvZC4KIDwvZGw+CiAKIDxQPgotPGRsPjxkdD48Yj48YSBuYW1lPSdsMmgtOTcnPjx0dD5GSUxFVFlQRV9QRU08L3R0PjwvYT48L2I+Cis8ZGw+PGR0PjxiPjxhIG5hbWU9J2wyaC05OCc+PHR0PkZJTEVUWVBFX1BFTTwvdHQ+PC9hPjwvYj4KIDxkZD4KLTxkdD48Yj48YSBuYW1lPSdsMmgtMTE0Jz48dHQ+RklMRVRZUEVfQVNOMTwvdHQ+PC9hPjwvYj48ZGQ+Cis8ZHQ+PGI+PGEgbmFtZT0nbDJoLTExNSc+PHR0PkZJTEVUWVBFX0FTTjE8L3R0PjwvYT48L2I+PGRkPgogRmlsZSB0eXBlIGNvbnN0YW50cyB1c2VkIHdpdGggdGhlIDx0dCBjbGFzcz0ibWV0aG9kIj51c2VfY2VydGlmaWNhdGVfZmlsZTwvdHQ+IGFuZAogPHR0IGNsYXNzPSJtZXRob2QiPnVzZV9wcml2YXRla2V5X2ZpbGU8L3R0PiBtZXRob2RzIG9mIENvbnRleHQgb2JqZWN0cy4KIDwvZGw+CiAKIDxQPgotPGRsPjxkdD48Yj48YSBuYW1lPSdsMmgtOTgnPjx0dD5PUF9TSU5HTEVfREhfVVNFPC90dD48L2E+PC9iPgorPGRsPjxkdD48Yj48YSBuYW1lPSdsMmgtOTknPjx0dD5PUF9TSU5HTEVfREhfVVNFPC90dD48L2E+PC9iPgogPGRkPgotPGR0PjxiPjxhIG5hbWU9J2wyaC0xMTUnPjx0dD5PUF9FUEhFTUVSQUxfUlNBPC90dD48L2E+PC9iPjxkZD4KLTxkdD48Yj48YSBuYW1lPSdsMmgtMTE2Jz48dHQ+T1BfTk9fU1NMdjI8L3R0PjwvYT48L2I+PGRkPgotPGR0PjxiPjxhIG5hbWU9J2wyaC0xMTcnPjx0dD5PUF9OT19TU0x2MzwvdHQ+PC9hPjwvYj48ZGQ+Ci08ZHQ+PGI+PGEgbmFtZT0nbDJoLTExOCc+PHR0Pk9QX05PX1RMU3YxPC90dD48L2E+PC9iPjxkZD4KKzxkdD48Yj48YSBuYW1lPSdsMmgtMTE2Jz48dHQ+T1BfRVBIRU1FUkFMX1JTQTwvdHQ+PC9hPjwvYj48ZGQ+Cis8ZHQ+PGI+PGEgbmFtZT0nbDJoLTExNyc+PHR0Pk9QX05PX1NTTHYyPC90dD48L2E+PC9iPjxkZD4KKzxkdD48Yj48YSBuYW1lPSdsMmgtMTE4Jz48dHQ+T1BfTk9fU1NMdjM8L3R0PjwvYT48L2I+PGRkPgorPGR0PjxiPjxhIG5hbWU9J2wyaC0xMTknPjx0dD5PUF9OT19UTFN2MTwvdHQ+PC9hPjwvYj48ZGQ+CiBDb25zdGFudHMgdXNlZCB3aXRoIDx0dCBjbGFzcz0ibWV0aG9kIj5zZXRfb3B0aW9uczwvdHQ+IG9mIENvbnRleHQgb2JqZWN0cy4KIDx0dCBjbGFzcz0iY29uc3RhbnQiPk9QX1NJTkdMRV9ESF9VU0U8L3R0PiBtZWFucyB0byBhbHdheXMgY3JlYXRlIGEgbmV3IGtleSB3aGVuIHVzaW5nIGVwaGVtZXJhbAogRGlmZmllLUhlbGxtYW4uIDx0dCBjbGFzcz0iY29uc3RhbnQiPk9QX0VQSEVNRVJBTF9SU0E8L3R0PiBtZWFucyB0byBhbHdheXMgdXNlIGVwaGVtZXJhbCBSU0Ega2V5cwpAQCAtOTcsMTMgKzk3LDEzIEBACiA8L2RsPgogCiA8UD4KLTxkbD48ZHQ+PGI+PGEgbmFtZT0nbDJoLTk5Jz48dHQ+Q29udGV4dFR5cGU8L3R0PjwvYT48L2I+Cis8ZGw+PGR0PjxiPjxhIG5hbWU9J2wyaC0xMDAnPjx0dD5Db250ZXh0VHlwZTwvdHQ+PC9hPjwvYj4KIDxkZD4KIEEgUHl0aG9uIHR5cGUgb2JqZWN0IHJlcHJlc2VudGluZyB0aGUgQ29udGV4dCBvYmplY3QgdHlwZS4KIDwvZGw+CiAKIDxQPgotPGRsPjxkdD48Yj48YSBuYW1lPSdsMmgtMTAwJz48dHQgY2xhc3M9J2Z1bmN0aW9uJz5Db250ZXh0PC90dD48L2E+PC9iPig8dmFyPm1ldGhvZDwvdmFyPikKKzxkbD48ZHQ+PGI+PGEgbmFtZT0nbDJoLTEwMSc+PHR0IGNsYXNzPSdmdW5jdGlvbic+Q29udGV4dDwvdHQ+PC9hPjwvYj4oPHZhcj5tZXRob2Q8L3Zhcj4pCiA8ZGQ+CiBGYWN0b3J5IGZ1bmN0aW9uIHRoYXQgY3JlYXRlcyBhIG5ldyBDb250ZXh0IG9iamVjdCBnaXZlbiBhbiBTU0wgbWV0aG9kLiBUaGUKIG1ldGhvZCBzaG91bGQgYmUgPHR0IGNsYXNzPSJjb25zdGFudCI+U1NMdjJfTUVUSE9EPC90dD4sIDx0dCBjbGFzcz0iY29uc3RhbnQiPlNTTHYzX01FVEhPRDwvdHQ+LApAQCAtMTExLDIxICsxMTEsMjEgQEAKIDwvZGw+CiAKIDxQPgotPGRsPjxkdD48Yj48YSBuYW1lPSdsMmgtMTAxJz48dHQ+Q29ubmVjdGlvblR5cGU8L3R0PjwvYT48L2I+Cis8ZGw+PGR0PjxiPjxhIG5hbWU9J2wyaC0xMDInPjx0dD5Db25uZWN0aW9uVHlwZTwvdHQ+PC9hPjwvYj4KIDxkZD4KIEEgUHl0aG9uIHR5cGUgb2JqZWN0IHJlcHJlc2VudGluZyB0aGUgQ29ubmVjdGlvbiBvYmplY3QgdHlwZS4KIDwvZGw+CiAKIDxQPgotPGRsPjxkdD48Yj48YSBuYW1lPSdsMmgtMTAyJz48dHQgY2xhc3M9J2Z1bmN0aW9uJz5Db25uZWN0aW9uPC90dD48L2E+PC9iPig8dmFyPmNvbnRleHQsIHNvY2tldDwvdmFyPikKKzxkbD48ZHQ+PGI+PGEgbmFtZT0nbDJoLTEwMyc+PHR0IGNsYXNzPSdmdW5jdGlvbic+Q29ubmVjdGlvbjwvdHQ+PC9hPjwvYj4oPHZhcj5jb250ZXh0LCBzb2NrZXQ8L3Zhcj4pCiA8ZGQ+CiBGYWN0b3J5IGZ1Y25jdGlvbiB0aGF0IGNyZWF0ZXMgYSBuZXcgQ29ubmVjdGlvbiBvYmplY3QgZ2l2ZW4gYW4gU1NMIGNvbnRleHQgYW5kCiBhIHNvY2tldCA8QSBOQU1FPSJ0ZXgyaHRtbDUiCi0gIEhSRUY9IiNmb290OTUxIj48U1VQPjQ8L1NVUD48L0E+IG9iamVjdC4KKyAgSFJFRj0iI2Zvb3Q5NTUiPjxTVVA+NDwvU1VQPjwvQT4gb2JqZWN0LgogPC9kbD4KIAogPFA+Ci08ZGw+PGR0PjxiPmV4Y2VwdGlvbiA8YSBuYW1lPSdsMmgtMTAzJz48dHQgY2xhc3M9J2V4Y2VwdGlvbic+RXJyb3I8L3R0PjwvYT48L2I+Cis8ZGw+PGR0PjxiPmV4Y2VwdGlvbiA8YSBuYW1lPSdsMmgtMTA0Jz48dHQgY2xhc3M9J2V4Y2VwdGlvbic+RXJyb3I8L3R0PjwvYT48L2I+CiA8ZGQ+CiBUaGlzIGV4Y2VwdGlvbiBpcyB1c2VkIGFzIGEgYmFzZSBjbGFzcyBmb3IgdGhlIG90aGVyIFNTTC1yZWxhdGVkCiBleGNlcHRpb25zLCBidXQgbWF5IGFsc28gYmUgcmFpc2VkIGRpcmVjdGx5LgpAQCAtMTM5LDcgKzEzOSw3IEBACiA8L2RsPgogCiA8UD4KLTxkbD48ZHQ+PGI+ZXhjZXB0aW9uIDxhIG5hbWU9J2wyaC0xMDQnPjx0dCBjbGFzcz0nZXhjZXB0aW9uJz5aZXJvUmV0dXJuRXJyb3I8L3R0PjwvYT48L2I+Cis8ZGw+PGR0PjxiPmV4Y2VwdGlvbiA8YSBuYW1lPSdsMmgtMTA1Jz48dHQgY2xhc3M9J2V4Y2VwdGlvbic+WmVyb1JldHVybkVycm9yPC90dD48L2E+PC9iPgogPGRkPgogVGhpcyBleGNlcHRpb24gbWF0Y2hlcyB0aGUgZXJyb3IgcmV0dXJuIGNvZGUgPGNvZGU+U1NMX0VSUk9SX1pFUk9fUkVUVVJOPC9jb2RlPiwgYW5kCiBpcyByYWlzZWQgd2hlbiB0aGUgU1NMIENvbm5lY3Rpb24gaGFzIGJlZW4gY2xvc2VkLiBJbiBTU0wgMy4wIGFuZCBUTFMgMS4wLCB0aGlzCkBAIC0xNTMsNyArMTUzLDcgQEAKIDwvZGw+CiAKIDxQPgotPGRsPjxkdD48Yj5leGNlcHRpb24gPGEgbmFtZT0nbDJoLTEwNSc+PHR0IGNsYXNzPSdleGNlcHRpb24nPldhbnRSZWFkRXJyb3I8L3R0PjwvYT48L2I+Cis8ZGw+PGR0PjxiPmV4Y2VwdGlvbiA8YSBuYW1lPSdsMmgtMTA2Jz48dHQgY2xhc3M9J2V4Y2VwdGlvbic+V2FudFJlYWRFcnJvcjwvdHQ+PC9hPjwvYj4KIDxkZD4KIFRoZSBvcGVyYXRpb24gZGlkIG5vdCBjb21wbGV0ZTsgdGhlIHNhbWUgSS9PIG1ldGhvZCBzaG91bGQgYmUgY2FsbGVkIGFnYWluCiBsYXRlciwgd2l0aCB0aGUgc2FtZSBhcmd1bWVudHMuIEFueSBJL08gbWV0aG9kIGNhbiBsZWFkIHRvIHRoaXMgc2luY2UgbmV3CkBAIC0xNjEsMTMgKzE2MSwxMyBAQAogPC9kbD4KIAogPFA+Ci08ZGw+PGR0PjxiPmV4Y2VwdGlvbiA8YSBuYW1lPSdsMmgtMTA2Jz48dHQgY2xhc3M9J2V4Y2VwdGlvbic+V2FudFdyaXRlRXJyb3I8L3R0PjwvYT48L2I+Cis8ZGw+PGR0PjxiPmV4Y2VwdGlvbiA8YSBuYW1lPSdsMmgtMTA3Jz48dHQgY2xhc3M9J2V4Y2VwdGlvbic+V2FudFdyaXRlRXJyb3I8L3R0PjwvYT48L2I+CiA8ZGQ+CiBTZWUgPHR0IGNsYXNzPSJleGNlcHRpb24iPldhbnRSZWFkRXJyb3I8L3R0Pi4KIDwvZGw+CiAKIDxQPgotPGRsPjxkdD48Yj5leGNlcHRpb24gPGEgbmFtZT0nbDJoLTEwNyc+PHR0IGNsYXNzPSdleGNlcHRpb24nPldhbnRYNTA5TG9va3VwRXJyb3I8L3R0PjwvYT48L2I+Cis8ZGw+PGR0PjxiPmV4Y2VwdGlvbiA8YSBuYW1lPSdsMmgtMTA4Jz48dHQgY2xhc3M9J2V4Y2VwdGlvbic+V2FudFg1MDlMb29rdXBFcnJvcjwvdHQ+PC9hPjwvYj4KIDxkZD4KIFRoZSBvcGVyYXRpb24gZGlkIG5vdCBjb21wbGV0ZSBiZWNhdXNlIGFuIGFwcGxpY2F0aW9uIGNhbGxiYWNrIGhhcyBhc2tlZCB0byBiZQogY2FsbGVkIGFnYWluLiBUaGUgSS9PIG1ldGhvZCBzaG91bGQgYmUgY2FsbGVkIGFnYWluIGxhdGVyLCB3aXRoIHRoZSBzYW1lCkBAIC0xNzYsNyArMTc2LDcgQEAKIDwvZGw+CiAKIDxQPgotPGRsPjxkdD48Yj5leGNlcHRpb24gPGEgbmFtZT0nbDJoLTEwOCc+PHR0IGNsYXNzPSdleGNlcHRpb24nPlN5c0NhbGxFcnJvcjwvdHQ+PC9hPjwvYj4KKzxkbD48ZHQ+PGI+ZXhjZXB0aW9uIDxhIG5hbWU9J2wyaC0xMDknPjx0dCBjbGFzcz0nZXhjZXB0aW9uJz5TeXNDYWxsRXJyb3I8L3R0PjwvYT48L2I+CiA8ZGQ+CiBUaGUgPHR0IGNsYXNzPSJleGNlcHRpb24iPlN5c0NhbGxFcnJvcjwvdHQ+IG9jY3VycyB3aGVuIHRoZXJlJ3MgYW4gSS9PIGVycm9yIGFuZCBPcGVuU1NMJ3MKIGVycm9yIHF1ZXVlIGRvZXMgbm90IGNvbnRhaW4gYW55IGluZm9ybWF0aW9uLiBUaGlzIGNhbiBtZWFuIHR3byB0aGluZ3M6IEFuCkBAIC0xODgsNyArMTg4LDcgQEAKIDxQPgogPEJSPjxIUj48SDQ+Rm9vdG5vdGVzPC9IND4KIDxETD4KLTxEVD48QSBOQU1FPSJmb290OTUxIj4uLi4gc29ja2V0PC9BPjxBCis8RFQ+PEEgTkFNRT0iZm9vdDk1NSI+Li4uIHNvY2tldDwvQT48QQogIGhyZWY9Im9wZW5zc2wtc3NsLmh0bWwjdGV4Mmh0bWw1Ij48U1VQPjQ8L1NVUD48L0E+PC9EVD4KIDxERD5BY3R1YWxseSwgYWxsIHRoYXQgaXMgcmVxdWlyZWQgaXMgYW4gb2JqZWN0IHRoYXQKIDxpPmJlaGF2ZXM8L2k+IGxpa2UgYSBzb2NrZXQsIHlvdSBjb3VsZCBldmVuIHVzZSBmaWxlcywgZXZlbiB0aG91Z2ggaXQnZCBiZQpAQCAtMjM3LDcgKzIzNyw3IEBACiA8YiBjbGFzcz0ibmF2bGFiZWwiPlVwOjwvYj4gPGEgY2xhc3M9InNlY3RyZWYiIGhyZWY9Im9wZW5zc2wuaHRtbCI+MyBPcGVuU1NMICA8L0E+CiA8YiBjbGFzcz0ibmF2bGFiZWwiPk5leHQ6PC9iPiA8YSBjbGFzcz0ic2VjdHJlZiIgaHJlZj0ib3BlbnNzbC1jb250ZXh0Lmh0bWwiPjMuMy4xIENvbnRleHQgb2JqZWN0czwvQT4KIDxocj4KLTxzcGFuIGNsYXNzPSJyZWxlYXNlLWluZm8iPlJlbGVhc2UgMC43YTEuPC9zcGFuPgorPHNwYW4gY2xhc3M9InJlbGVhc2UtaW5mbyI+UmVsZWFzZSAwLjdhMi48L3NwYW4+CiA8L0RJVj4KIDwhLS1FbmQgb2YgTmF2aWdhdGlvbiBQYW5lbC0tPgogCmRpZmYgLS1naXQgYS9kb2MvaHRtbC9vcGVuc3NsLXg1MDkuaHRtbCBiL2RvYy9odG1sL29wZW5zc2wteDUwOS5odG1sCmluZGV4IDM1NzNjOGIuLmViYzViMTMgMTAwNjQ0Ci0tLSBhL2RvYy9odG1sL29wZW5zc2wteDUwOS5odG1sCisrKyBiL2RvYy9odG1sL29wZW5zc2wteDUwOS5odG1sCkBAIC0yMzUsNyArMjM1LDcgQEAKIDxiIGNsYXNzPSJuYXZsYWJlbCI+VXA6PC9iPiA8YSBjbGFzcz0ic2VjdHJlZiIgaHJlZj0ib3BlbnNzbC1jcnlwdG8uaHRtbCI+My4xIGNyeXB0byAgPC9BPgogPGIgY2xhc3M9Im5hdmxhYmVsIj5OZXh0OjwvYj4gPGEgY2xhc3M9InNlY3RyZWYiIGhyZWY9Im9wZW5zc2wteDUwOW5hbWUuaHRtbCI+My4xLjIgWDUwOU5hbWUgb2JqZWN0czwvQT4KIDxocj4KLTxzcGFuIGNsYXNzPSJyZWxlYXNlLWluZm8iPlJlbGVhc2UgMC43YTEuPC9zcGFuPgorPHNwYW4gY2xhc3M9InJlbGVhc2UtaW5mbyI+UmVsZWFzZSAwLjdhMi48L3NwYW4+CiA8L0RJVj4KIDwhLS1FbmQgb2YgTmF2aWdhdGlvbiBQYW5lbC0tPgogCmRpZmYgLS1naXQgYS9kb2MvaHRtbC9vcGVuc3NsLXg1MDluYW1lLmh0bWwgYi9kb2MvaHRtbC9vcGVuc3NsLXg1MDluYW1lLmh0bWwKaW5kZXggMjExYjdhZC4uMmNmMDM1MSAxMDA2NDQKLS0tIGEvZG9jL2h0bWwvb3BlbnNzbC14NTA5bmFtZS5odG1sCisrKyBiL2RvYy9odG1sL29wZW5zc2wteDUwOW5hbWUuaHRtbApAQCAtNTksNTIgKzU5LDU4IEBACiA8L2RsPgogCiA8UD4KKzxkbD48ZHQ+PGI+PGEgbmFtZT0nbDJoLTU2Jz48dHQgY2xhc3M9J21ldGhvZCc+ZGVyPC90dD48L2E+PC9iPigpCis8ZGQ+CitSZXR1cm4gYSBzdHJpbmcgZ2l2aW5nIHRoZSBERVIgcmVwcmVzZW50YXRpb24gb2YgdGhlIG5hbWUuCis8L2RsPgorCis8UD4KIFg1MDlOYW1lIG9iamVjdHMgaGF2ZSB0aGUgZm9sbG93aW5nIG1lbWJlcnM6CiAKIDxQPgotPGRsPjxkdD48Yj48YSBuYW1lPSdsMmgtNTYnPjx0dCBjbGFzcz0nbWVtYmVyJz5jb3VudHJ5TmFtZTwvdHQ+PC9hPjwvYj4KKzxkbD48ZHQ+PGI+PGEgbmFtZT0nbDJoLTU3Jz48dHQgY2xhc3M9J21lbWJlcic+Y291bnRyeU5hbWU8L3R0PjwvYT48L2I+CiA8ZGQ+CiBUaGUgY291bnRyeSBvZiB0aGUgZW50aXR5LiA8Y29kZT5DPC9jb2RlPiBtYXkgYmUgdXNlZCBhcyBhbiBhbGlhcyBmb3IKIDxjb2RlPmNvdW50cnlOYW1lPC9jb2RlPi4KIDwvZGw+CiAKIDxQPgotPGRsPjxkdD48Yj48YSBuYW1lPSdsMmgtNTcnPjx0dCBjbGFzcz0nbWVtYmVyJz5zdGF0ZU9yUHJvdmluY2VOYW1lPC90dD48L2E+PC9iPgorPGRsPjxkdD48Yj48YSBuYW1lPSdsMmgtNTgnPjx0dCBjbGFzcz0nbWVtYmVyJz5zdGF0ZU9yUHJvdmluY2VOYW1lPC90dD48L2E+PC9iPgogPGRkPgogVGhlIHN0YXRlIG9yIHByb3ZpbmNlIG9mIHRoZSBlbnRpdHkuIDxjb2RlPlNUPC9jb2RlPiBtYXkgYmUgdXNlZCBhcyBhbiBhbGlhcyBmb3IKIDxjb2RlPnN0YXRlT3JQcm92aW5jZU5hbWU8L2NvZGU+twogPC9kbD4KIAogPFA+Ci08ZGw+PGR0PjxiPjxhIG5hbWU9J2wyaC01OCc+PHR0IGNsYXNzPSdtZW1iZXInPmxvY2FsaXR5TmFtZTwvdHQ+PC9hPjwvYj4KKzxkbD48ZHQ+PGI+PGEgbmFtZT0nbDJoLTU5Jz48dHQgY2xhc3M9J21lbWJlcic+bG9jYWxpdHlOYW1lPC90dD48L2E+PC9iPgogPGRkPgogVGhlIGxvY2FsaXR5IG9mIHRoZSBlbnRpdHkuIDxjb2RlPkw8L2NvZGU+IG1heSBiZSB1c2VkIGFzIGFuIGFsaWFzIGZvcgogPGNvZGU+bG9jYWxpdHlOYW1lPC9jb2RlPi4KIDwvZGw+CiAKIDxQPgotPGRsPjxkdD48Yj48YSBuYW1lPSdsMmgtNTknPjx0dCBjbGFzcz0nbWVtYmVyJz5vcmdhbml6YXRpb25OYW1lPC90dD48L2E+PC9iPgorPGRsPjxkdD48Yj48YSBuYW1lPSdsMmgtNjAnPjx0dCBjbGFzcz0nbWVtYmVyJz5vcmdhbml6YXRpb25OYW1lPC90dD48L2E+PC9iPgogPGRkPgogVGhlIG9yZ2FuaXphdGlvbiBuYW1lIG9mIHRoZSBlbnRpdHkuIDxjb2RlPk88L2NvZGU+IG1heSBiZSB1c2VkIGFzIGFuIGFsaWFzIGZvcgogPGNvZGU+b3JnYW5pemF0aW9uTmFtZTwvY29kZT4uCiA8L2RsPgogCiA8UD4KLTxkbD48ZHQ+PGI+PGEgbmFtZT0nbDJoLTYwJz48dHQgY2xhc3M9J21lbWJlcic+b3JnYW5pemF0aW9uYWxVbml0TmFtZTwvdHQ+PC9hPjwvYj4KKzxkbD48ZHQ+PGI+PGEgbmFtZT0nbDJoLTYxJz48dHQgY2xhc3M9J21lbWJlcic+b3JnYW5pemF0aW9uYWxVbml0TmFtZTwvdHQ+PC9hPjwvYj4KIDxkZD4KIFRoZSBvcmdhbml6YXRpb25hbCB1bml0IG9mIHRoZSBlbnRpdHkuIDxjb2RlPk9VPC9jb2RlPiBtYXkgYmUgdXNlZCBhcyBhbiBhbGlhcyBmb3IKIDxjb2RlPm9yZ2FuaXphdGlvbmFsVW5pdE5hbWU8L2NvZGU+LgogPC9kbD4KIAogPFA+Ci08ZGw+PGR0PjxiPjxhIG5hbWU9J2wyaC02MSc+PHR0IGNsYXNzPSdtZW1iZXInPmNvbW1vbk5hbWU8L3R0PjwvYT48L2I+Cis8ZGw+PGR0PjxiPjxhIG5hbWU9J2wyaC02Mic+PHR0IGNsYXNzPSdtZW1iZXInPmNvbW1vbk5hbWU8L3R0PjwvYT48L2I+CiA8ZGQ+CiBUaGUgY29tbW9uIG5hbWUgb2YgdGhlIGVudGl0eS4gPGNvZGU+Q048L2NvZGU+IG1heSBiZSB1c2VkIGFzIGFuIGFsaWFzIGZvcgogPGNvZGU+Y29tbW9uTmFtZTwvY29kZT4uCiA8L2RsPgogCiA8UD4KLTxkbD48ZHQ+PGI+PGEgbmFtZT0nbDJoLTYyJz48dHQgY2xhc3M9J21lbWJlcic+ZW1haWxBZGRyZXNzPC90dD48L2E+PC9iPgorPGRsPjxkdD48Yj48YSBuYW1lPSdsMmgtNjMnPjx0dCBjbGFzcz0nbWVtYmVyJz5lbWFpbEFkZHJlc3M8L3R0PjwvYT48L2I+CiA8ZGQ+CiBUaGUgZS1tYWlsIGFkZHJlc3Mgb2YgdGhlIGVudGl0eS4KIDwvZGw+CkBAIC0xMzksNyArMTQ1LDcgQEAKIDxiIGNsYXNzPSJuYXZsYWJlbCI+VXA6PC9iPiA8YSBjbGFzcz0ic2VjdHJlZiIgaHJlZj0ib3BlbnNzbC1jcnlwdG8uaHRtbCI+My4xIGNyeXB0byAgPC9BPgogPGIgY2xhc3M9Im5hdmxhYmVsIj5OZXh0OjwvYj4gPGEgY2xhc3M9InNlY3RyZWYiIGhyZWY9Im9wZW5zc2wteDUwOXJlcS5odG1sIj4zLjEuMyBYNTA5UmVxIG9iamVjdHM8L0E+CiA8aHI+Ci08c3BhbiBjbGFzcz0icmVsZWFzZS1pbmZvIj5SZWxlYXNlIDAuN2ExLjwvc3Bhbj4KKzxzcGFuIGNsYXNzPSJyZWxlYXNlLWluZm8iPlJlbGVhc2UgMC43YTIuPC9zcGFuPgogPC9ESVY+CiA8IS0tRW5kIG9mIE5hdmlnYXRpb24gUGFuZWwtLT4KIApkaWZmIC0tZ2l0IGEvZG9jL2h0bWwvb3BlbnNzbC14NTA5cmVxLmh0bWwgYi9kb2MvaHRtbC9vcGVuc3NsLXg1MDlyZXEuaHRtbAppbmRleCBiMmVjZDI2Li42ZTY5NDQ0IDEwMDY0NAotLS0gYS9kb2MvaHRtbC9vcGVuc3NsLXg1MDlyZXEuaHRtbAorKysgYi9kb2MvaHRtbC9vcGVuc3NsLXg1MDlyZXEuaHRtbApAQCAtNTIsMzIgKzUyLDMyIEBACiBYNTA5UmVxIG9iamVjdHMgaGF2ZSB0aGUgZm9sbG93aW5nIG1ldGhvZHM6CiAKIDxQPgotPGRsPjxkdD48Yj48YSBuYW1lPSdsMmgtNjMnPjx0dCBjbGFzcz0nbWV0aG9kJz5nZXRfcHVia2V5PC90dD48L2E+PC9iPigpCis8ZGw+PGR0PjxiPjxhIG5hbWU9J2wyaC02NCc+PHR0IGNsYXNzPSdtZXRob2QnPmdldF9wdWJrZXk8L3R0PjwvYT48L2I+KCkKIDxkZD4KIFJldHVybiBhIFBLZXkgb2JqZWN0IHJlcHJlc2VudGluZyB0aGUgcHVibGljIGtleSBvZiB0aGUgY2VydGlmaWNhdGUgcmVxdWVzdC4KIDwvZGw+CiAKIDxQPgotPGRsPjxkdD48Yj48YSBuYW1lPSdsMmgtNjQnPjx0dCBjbGFzcz0nbWV0aG9kJz5nZXRfc3ViamVjdDwvdHQ+PC9hPjwvYj4oKQorPGRsPjxkdD48Yj48YSBuYW1lPSdsMmgtNjUnPjx0dCBjbGFzcz0nbWV0aG9kJz5nZXRfc3ViamVjdDwvdHQ+PC9hPjwvYj4oKQogPGRkPgogUmV0dXJuIGFuIFg1MDlOYW1lIG9iamVjdCByZXByZXNlbnRpbmcgdGhlIHN1YmplY3Qgb2YgdGhlIGNlcnRpZmljYXRlLgogPC9kbD4KIAogPFA+Ci08ZGw+PGR0PjxiPjxhIG5hbWU9J2wyaC02NSc+PHR0IGNsYXNzPSdtZXRob2QnPnNldF9wdWJrZXk8L3R0PjwvYT48L2I+KDx2YXI+cGtleTwvdmFyPikKKzxkbD48ZHQ+PGI+PGEgbmFtZT0nbDJoLTY2Jz48dHQgY2xhc3M9J21ldGhvZCc+c2V0X3B1YmtleTwvdHQ+PC9hPjwvYj4oPHZhcj5wa2V5PC92YXI+KQogPGRkPgogU2V0IHRoZSBwdWJsaWMga2V5IG9mIHRoZSBjZXJ0aWZpY2F0ZSByZXF1ZXN0IHRvIDx2YXI+cGtleTwvdmFyPi4KIDwvZGw+CiAKIDxQPgotPGRsPjxkdD48Yj48YSBuYW1lPSdsMmgtNjYnPjx0dCBjbGFzcz0nbWV0aG9kJz5zaWduPC90dD48L2E+PC9iPig8dmFyPnBrZXksIGRpZ2VzdDwvdmFyPikKKzxkbD48ZHQ+PGI+PGEgbmFtZT0nbDJoLTY3Jz48dHQgY2xhc3M9J21ldGhvZCc+c2lnbjwvdHQ+PC9hPjwvYj4oPHZhcj5wa2V5LCBkaWdlc3Q8L3Zhcj4pCiA8ZGQ+CiBTaWduIHRoZSBjZXJ0aWZpY2F0ZSByZXF1ZXN0LCB1c2luZyB0aGUga2V5IDx2YXI+cGtleTwvdmFyPiBhbmQgdGhlIG1lc3NhZ2UgZGlnZXN0CiBhbGdvcml0aG0gaWRlbnRpZmllZCBieSB0aGUgc3RyaW5nIDx2YXI+ZGlnZXN0PC92YXI+LgogPC9kbD4KIAogPFA+Ci08ZGw+PGR0PjxiPjxhIG5hbWU9J2wyaC02Nyc+PHR0IGNsYXNzPSdtZXRob2QnPnZlcmlmeTwvdHQ+PC9hPjwvYj4oPHZhcj5wa2V5PC92YXI+KQorPGRsPjxkdD48Yj48YSBuYW1lPSdsMmgtNjgnPjx0dCBjbGFzcz0nbWV0aG9kJz52ZXJpZnk8L3R0PjwvYT48L2I+KDx2YXI+cGtleTwvdmFyPikKIDxkZD4KIFZlcmlmeSBhIGNlcnRpZmljYXRlIHJlcXVlc3QgdXNpbmcgdGhlIHB1YmxpYyBrZXkgPHZhcj5wa2V5PC92YXI+LgogPC9kbD4KQEAgLTExMiw3ICsxMTIsNyBAQAogPGIgY2xhc3M9Im5hdmxhYmVsIj5VcDo8L2I+IDxhIGNsYXNzPSJzZWN0cmVmIiBocmVmPSJvcGVuc3NsLWNyeXB0by5odG1sIj4zLjEgY3J5cHRvICA8L0E+CiA8YiBjbGFzcz0ibmF2bGFiZWwiPk5leHQ6PC9iPiA8YSBjbGFzcz0ic2VjdHJlZiIgaHJlZj0ib3BlbnNzbC14NTA5c3RvcmUuaHRtbCI+My4xLjQgWDUwOVN0b3JlIG9iamVjdHM8L0E+CiA8aHI+Ci08c3BhbiBjbGFzcz0icmVsZWFzZS1pbmZvIj5SZWxlYXNlIDAuN2ExLjwvc3Bhbj4KKzxzcGFuIGNsYXNzPSJyZWxlYXNlLWluZm8iPlJlbGVhc2UgMC43YTIuPC9zcGFuPgogPC9ESVY+CiA8IS0tRW5kIG9mIE5hdmlnYXRpb24gUGFuZWwtLT4KIApkaWZmIC0tZ2l0IGEvZG9jL2h0bWwvb3BlbnNzbC14NTA5c3RvcmUuaHRtbCBiL2RvYy9odG1sL29wZW5zc2wteDUwOXN0b3JlLmh0bWwKaW5kZXggMjcyMGMxMS4uMmU1NWU5NSAxMDA2NDQKLS0tIGEvZG9jL2h0bWwvb3BlbnNzbC14NTA5c3RvcmUuaHRtbAorKysgYi9kb2MvaHRtbC9vcGVuc3NsLXg1MDlzdG9yZS5odG1sCkBAIC01Miw3ICs1Miw3IEBACiBUaGUgWDUwOVN0b3JlIG9iamVjdCBoYXMgY3VycmVudGx5IGp1c3Qgb25lIG1ldGhvZDoKIAogPFA+Ci08ZGw+PGR0PjxiPjxhIG5hbWU9J2wyaC02OCc+PHR0IGNsYXNzPSdtZXRob2QnPmFkZF9jZXJ0PC90dD48L2E+PC9iPig8dmFyPmNlcnQ8L3Zhcj4pCis8ZGw+PGR0PjxiPjxhIG5hbWU9J2wyaC02OSc+PHR0IGNsYXNzPSdtZXRob2QnPmFkZF9jZXJ0PC90dD48L2E+PC9iPig8dmFyPmNlcnQ8L3Zhcj4pCiA8ZGQ+CiBBZGQgdGhlIGNlcnRpZmljYXRlIDx2YXI+Y2VydDwvdmFyPiB0byB0aGUgY2VydGlmaWNhdGUgc3RvcmUuCiA8L2RsPgpAQCAtODcsNyArODcsNyBAQAogPGIgY2xhc3M9Im5hdmxhYmVsIj5VcDo8L2I+IDxhIGNsYXNzPSJzZWN0cmVmIiBocmVmPSJvcGVuc3NsLWNyeXB0by5odG1sIj4zLjEgY3J5cHRvICA8L0E+CiA8YiBjbGFzcz0ibmF2bGFiZWwiPk5leHQ6PC9iPiA8YSBjbGFzcz0ic2VjdHJlZiIgaHJlZj0ib3BlbnNzbC1wa2V5Lmh0bWwiPjMuMS41IFBLZXkgb2JqZWN0czwvQT4KIDxocj4KLTxzcGFuIGNsYXNzPSJyZWxlYXNlLWluZm8iPlJlbGVhc2UgMC43YTEuPC9zcGFuPgorPHNwYW4gY2xhc3M9InJlbGVhc2UtaW5mbyI+UmVsZWFzZSAwLjdhMi48L3NwYW4+CiA8L0RJVj4KIDwhLS1FbmQgb2YgTmF2aWdhdGlvbiBQYW5lbC0tPgogCmRpZmYgLS1naXQgYS9kb2MvaHRtbC9vcGVuc3NsLmh0bWwgYi9kb2MvaHRtbC9vcGVuc3NsLmh0bWwKaW5kZXggMTRiMWJkZi4uZjI1NDFiNCAxMDA2NDQKLS0tIGEvZG9jL2h0bWwvb3BlbnNzbC5odG1sCisrKyBiL2RvYy9odG1sL29wZW5zc2wuaHRtbApAQCAtMTQzLDcgKzE0Myw3IEBACiA8YiBjbGFzcz0ibmF2bGFiZWwiPlVwOjwvYj4gPGEgY2xhc3M9InNlY3RyZWYiIEhSRUY9InB5T3BlblNTTC5odG1sIj5QeXRob24gT3BlblNTTCBNYW51YWw8L0E+CiA8YiBjbGFzcz0ibmF2bGFiZWwiPk5leHQ6PC9iPiA8YSBjbGFzcz0ic2VjdHJlZiIgaHJlZj0ib3BlbnNzbC1jcnlwdG8uaHRtbCI+My4xIGNyeXB0byAgPC9BPgogPGhyPgotPHNwYW4gY2xhc3M9InJlbGVhc2UtaW5mbyI+UmVsZWFzZSAwLjdhMS48L3NwYW4+Cis8c3BhbiBjbGFzcz0icmVsZWFzZS1pbmZvIj5SZWxlYXNlIDAuN2EyLjwvc3Bhbj4KIDwvRElWPgogPCEtLUVuZCBvZiBOYXZpZ2F0aW9uIFBhbmVsLS0+CiAKZGlmZiAtLWdpdCBhL2RvYy9odG1sL3B5T3BlblNTTC5odG1sIGIvZG9jL2h0bWwvcHlPcGVuU1NMLmh0bWwKaW5kZXggNzJkZGNiYi4uYWQwZGZiOCAxMDA2NDQKLS0tIGEvZG9jL2h0bWwvcHlPcGVuU1NMLmh0bWwKKysrIGIvZG9jL2h0bWwvcHlPcGVuU1NMLmh0bWwKQEAgLTE1OSw3ICsxNTksNyBAQAogPC90cj48L3RhYmxlPgogPGIgY2xhc3M9Im5hdmxhYmVsIj5OZXh0OjwvYj4gPGEgY2xhc3M9InNlY3RyZWYiIGhyZWY9ImNvbnRlbnRzLmh0bWwiPkNvbnRlbnRzPC9BPgogPGhyPgotPHNwYW4gY2xhc3M9InJlbGVhc2UtaW5mbyI+UmVsZWFzZSAwLjdhMS48L3NwYW4+Cis8c3BhbiBjbGFzcz0icmVsZWFzZS1pbmZvIj5SZWxlYXNlIDAuN2EyLjwvc3Bhbj4KIDwvRElWPgogPCEtLUVuZCBvZiBOYXZpZ2F0aW9uIFBhbmVsLS0+CiAKZGlmZiAtLWdpdCBhL2RvYy9odG1sL3NvY2tldC1tZXRob2RzLmh0bWwgYi9kb2MvaHRtbC9zb2NrZXQtbWV0aG9kcy5odG1sCmluZGV4IDU0ZGEwOGQuLmVkZjFlMjQgMTAwNjQ0Ci0tLSBhL2RvYy9odG1sL3NvY2tldC1tZXRob2RzLmh0bWwKKysrIGIvZG9jL2h0bWwvc29ja2V0LW1ldGhvZHMuaHRtbApAQCAtMTExLDcgKzExMSw3IEBACiA8YiBjbGFzcz0ibmF2bGFiZWwiPlVwOjwvYj4gPGEgY2xhc3M9InNlY3RyZWYiIGhyZWY9ImludGVybmFscy5odG1sIj40IEludGVybmFsczwvQT4KIDxiIGNsYXNzPSJuYXZsYWJlbCI+TmV4dDo8L2I+IDxhIGNsYXNzPSJzZWN0cmVmIiBocmVmPSJhYm91dC5odG1sIj5BYm91dCB0aGlzIGRvY3VtZW50IC4uLjwvQT4KIDxocj4KLTxzcGFuIGNsYXNzPSJyZWxlYXNlLWluZm8iPlJlbGVhc2UgMC43YTEuPC9zcGFuPgorPHNwYW4gY2xhc3M9InJlbGVhc2UtaW5mbyI+UmVsZWFzZSAwLjdhMi48L3NwYW4+CiA8L0RJVj4KIDwhLS1FbmQgb2YgTmF2aWdhdGlvbiBQYW5lbC0tPgogCg==