VGhpcyBpcyBteSBhdHRlbXB0IHRvIHBvcnQgUFBDQm9vdCB0byB0aGUgaTM4NiBwbGF0Zm9ybS4gVGhpcwp3b3JrIHdhcyBzcG9uc29yZWQgYnkgbXkgZW1wbHllciwgT21pY3JvbiBDZXRpIEFCLiBodHRwOi8vd3d3Lm9taWNyb24uc2UKCkl0IGlzIGN1cnJlbnRseSBjYXBhYmxlIG9mIGJvb3RpbmcgYSBsaW51eCBiekltYWdlIGZyb20gZmxhc2ggb24KdGhlIEFNRCBTQzUyMCBDRFAgcGxhdGZvcm0uCgpJdCB3YXMgb3JpZ2luYWxseSBiYXNlZCBvbiBQUENCb290IHRha2VuIGZyb20gdGhlIENWUyBPY3RvYmVyIDI4IDIwMDIuICAKClRvIGNvbXBpbGU6CgoxKSBVbnBhY2sgdGhlIHNvdXJjZSB0cmVlLCBlaXRoZXIgZnJvbSB0aGUgY29tcGxldGUgdGFyYmFsbCBvcgogICBmcm9tIHRoZSB2aXJnaW4gc25hcHNob3QgKyB0aGUgcGF0Y2gKICAgCjIpIENvbmZpZ3VyZSB0aGUgc291cmNlCiAgICQgbWFrZSBzYzUyMF9jZHBfY29tZmlnCiAgICQgbWFrZQogICAKVG8gdXNlIHRoaXMgY29kZSBvbiB0aGUgQ0RQOgoxKSBNYWtlIGEgc3VpdGFibGUga2VybmVsLCBJIHVzZWQgMi40LjE5IHdpdGggdGhlIG10ZC1zdXBwb3J0IHVwZGF0ZWQKICAgZnJvbSB0aGUgTVREIENWUyBhbmQgYSBwYXRjaCB0byBhbGxvdyByb290PS9kZXYvbXRkYmxvY2sxIHdoaWNoIEkKICAgaW5jbHVkZWQgYXQgdGhlIGVuZCBvZiB0aGlzIGZpbGUuIAogICBUaGUgZm9sbG93aW5nIG9wdGlvbnMgaW4gdGhlIE1URCBzZWN0aW9uIG1pZ2h0IGJlIHVzZWZ1bDoKICAgCiAgIENPTkZJR19NVERfUEhZU01BUD15CiAgIENPTkZJR19NVERfUEhZU01BUF9TVEFSVD0zODEwMDAwMAogICBDT05GSUdfTVREX1BIWVNNQVBfTEVOPTdhMDAwMAogICBDT05GSUdfTVREX1BIWVNNQVBfQlVTV0lEVEg9MgoKCjIpIFByb2dyYW0gaXQgaW4gdG8gdGhlIENEUCBmbGFzaGJhbmsgd2l0aCByZW1vbgogICBwcGNib290LmJpbiBzaG91bGQgYmUgcHJvZ3JhbW1lZCBhdHQgb2Zmc2V0IDB4N2UwMDAgYW5kIHRoZSBrZXJuZWwgYXQKICAgb2Zmc2V0IDAuIElmIHlvdSB3YW50IHRvIHVzZSBhIGpmZnMyIHJvb3QgZmlsZSBzeXN0ZW0gKG5vdCBpbmNsdWRlZCBoZXJlKSwgCiAgIGl0IHNob3VsZCBiZSAgcHJvZ3JhbW1lZCB0byBvZmZzZXQgMHgxMDAwMDAuCiAgIAogICByZW1vbj4gegogICByZW1vbj4geWkKICAgcmVtb24+IG5zIHBwY2Jvb3QuYmluIDdlMDAwMAogICByZW1vbj4gbnMgYnpJbWFnZSAwCiAgIHJlbW9uPiBucyBpbWFnZS5qZmZzMiAxMDAwMDAKCjMpIENvbm5lY3QgYSB0ZXJtaW5hbCB0byB0aGUgMjVwaW4gc2VyaWFsIHBvcnQgYXQgOTYwMGJwcywgYW5kIHN0YXJ0IHRoZSBDRFAuCiAgIAogICByZW1vbj4gegogICByZW1vbj4gZwoKNCkgUFBDYm9vdCBzaG91bGQgb3V0cHV0IHNvbWUgbWVzc2FnZSBhbmQgYSBwcm9tcHQgb24gdGhlIHRlcm1pbmFsLCB0bwogICBzdGFydCB0aGUga2VybmVsIGlzc3VlIHRoZSBmb2xsb3dpbmcgY29tbWFuZDoKICAgCiAgIEJPT1Q+IGJvb3RtCiAgIAo1KSBUaGUga2VybmVsIHNob3VsZCBib290LCBhbmQgbW91bnQgdGhlIHJvb3QgZmlsZXN5c3RlbSBpZiBwcmVzZW50LgoKV2UgaG9wZSB5b3UgZmluZCB0aGlzIHN0dWZmIHVzZWZ1bApEYW5pZWwgRW5nc3Ry9m0sIE9taWNyb24gQ2V0aSBBQiwgZGFuaWVsQG9taWNyb24uc2UKCgoKLS0tIGxpbnV4LTIuNC4xOS1vcmlnL2luaXQvZG9fbW91bnRzLmMJU2F0IEF1ZyAgMyAwMjozOTo0NiAyMDAyCisrKyBsaW51eC0yLjQuMTkvaW5pdC9kb19tb3VudHMuYwlNb24gU2VwIDIzIDE2OjIxOjMzIDIwMDIKQEAgLTIyNCw2ICsyMjQsMTQgQEAKIAl7ICJmdGxjIiwgMHgyYzEwIH0sCiAJeyAiZnRsZCIsIDB4MmMxOCB9LAogCXsgIm10ZGJsb2NrIiwgMHgxZjAwIH0sCisJeyAibXRkYmxvY2swIiwgMHgxZjAwIH0sCisJeyAibXRkYmxvY2sxIiwgMHgxZjAxIH0sCisJeyAibXRkYmxvY2syIiwgMHgxZjAyIH0sCisJeyAibXRkYmxvY2szIiwgMHgxZjAzIH0sCisJeyAibXRkYmxvY2s0IiwgMHgxZjA0IH0sCisJeyAibXRkYmxvY2s1IiwgMHgxZjA1IH0sCisJeyAibXRkYmxvY2s2IiwgMHgxZjA2IH0sCisJeyAibXRkYmxvY2s3IiwgMHgxZjA3IH0sCiAJeyBOVUxMLCAwIH0KIH07CiAK