VGhpcyBpcyBteSBhdHRlbXB0IHRvIHBvcnQgVS1Cb290IHRvIHRoZSB4ODYgcGxhdGZvcm0uIFRoaXMKd29yayB3YXMgc3BvbnNvcmVkIGJ5IG15IGVtcGx5ZXIsIE9taWNyb24gQ2V0aSBBQi4gaHR0cDovL3d3dy5vbWljcm9uLnNlCgpJdCBpcyBjdXJyZW50bHkgY2FwYWJsZSBvZiBib290aW5nIGEgbGludXggYnpJbWFnZSBmcm9tIGZsYXNoIG9uCnRoZSBBTUQgU0M1MjAgQ0RQIHBsYXRmb3JtLgoKSXQgd2FzIG9yaWdpbmFsbHkgYmFzZWQgb24gUFBDQm9vdCB0YWtlbiBmcm9tIHRoZSBDVlMgT2N0b2JlciAyOCAyMDAyLgoKVG8gY29tcGlsZToKCjEpIFVucGFjayB0aGUgc291cmNlIHRyZWUsIGVpdGhlciBmcm9tIHRoZSBjb21wbGV0ZSB0YXJiYWxsIG9yCiAgIGZyb20gdGhlIHZpcmdpbiBzbmFwc2hvdCArIHRoZSBwYXRjaAoKMikgQ29uZmlndXJlIHRoZSBzb3VyY2UKICAgJCBtYWtlIHNjNTIwX2NkcF9jb21maWcKICAgJCBtYWtlCgpUbyB1c2UgdGhpcyBjb2RlIG9uIHRoZSBDRFA6CjEpIE1ha2UgYSBzdWl0YWJsZSBrZXJuZWwsIEkgdXNlZCAyLjQuMTkgd2l0aCB0aGUgbXRkLXN1cHBvcnQgdXBkYXRlZAogICBmcm9tIHRoZSBNVEQgQ1ZTIGFuZCBhIHBhdGNoIHRvIGFsbG93IHJvb3Q9L2Rldi9tdGRibG9jazEgd2hpY2ggSQogICBpbmNsdWRlZCBhdCB0aGUgZW5kIG9mIHRoaXMgZmlsZS4KICAgVGhlIGZvbGxvd2luZyBvcHRpb25zIGluIHRoZSBNVEQgc2VjdGlvbiBtaWdodCBiZSB1c2VmdWw6CgogICBDT05GSUdfTVREX1BIWVNNQVA9eQogICBDT05GSUdfTVREX1BIWVNNQVBfU1RBUlQ9MzgxMDAwMDAKICAgQ09ORklHX01URF9QSFlTTUFQX0xFTj03YTAwMDAKICAgQ09ORklHX01URF9QSFlTTUFQX0JVU1dJRFRIPTIKCgoyKSBQcm9ncmFtIGl0IGluIHRvIHRoZSBDRFAgZmxhc2hiYW5rIHdpdGggcmVtb24KICAgdS1ib290LmJpbiBzaG91bGQgYmUgcHJvZ3JhbW1lZCBhdHQgb2Zmc2V0IDB4N2UwMDAgYW5kIHRoZSBrZXJuZWwgYXQKICAgb2Zmc2V0IDAuIElmIHlvdSB3YW50IHRvIHVzZSBhIGpmZnMyIHJvb3QgZmlsZSBzeXN0ZW0gKG5vdCBpbmNsdWRlZCBoZXJlKSwKICAgaXQgc2hvdWxkIGJlICBwcm9ncmFtbWVkIHRvIG9mZnNldCAweDEwMDAwMC4KCiAgIHJlbW9uPiB6CiAgIHJlbW9uPiB5aQogICByZW1vbj4gbnMgdS1ib290LmJpbiA3ZTAwMDAKICAgcmVtb24+IG5zIGJ6SW1hZ2UgMAogICByZW1vbj4gbnMgaW1hZ2UuamZmczIgMTAwMDAwCgozKSBDb25uZWN0IGEgdGVybWluYWwgdG8gdGhlIDI1cGluIHNlcmlhbCBwb3J0IGF0IDk2MDBicHMsIGFuZCBzdGFydCB0aGUgQ0RQLgoKICAgcmVtb24+IHoKICAgcmVtb24+IGcKCjQpIFUtQm9vdCBzaG91bGQgb3V0cHV0IHNvbWUgbWVzc2FnZSBhbmQgYSBwcm9tcHQgb24gdGhlIHRlcm1pbmFsLCB0bwogICBzdGFydCB0aGUga2VybmVsIGlzc3VlIHRoZSBmb2xsb3dpbmcgY29tbWFuZDoKCiAgIEJPT1Q+IGJvb3RtCgo1KSBUaGUga2VybmVsIHNob3VsZCBib290LCBhbmQgbW91bnQgdGhlIHJvb3QgZmlsZXN5c3RlbSBpZiBwcmVzZW50LgoKV2UgaG9wZSB5b3UgZmluZCB0aGlzIHN0dWZmIHVzZWZ1bApEYW5pZWwgRW5nc3Ry9m0sIE9taWNyb24gQ2V0aSBBQiwgZGFuaWVsQG9taWNyb24uc2UKCgotLS0gbGludXgtMi40LjE5LW9yaWcvaW5pdC9kb19tb3VudHMuYwlTYXQgQXVnICAzIDAyOjM5OjQ2IDIwMDIKKysrIGxpbnV4LTIuNC4xOS9pbml0L2RvX21vdW50cy5jCU1vbiBTZXAgMjMgMTY6MjE6MzMgMjAwMgpAQCAtMjI0LDYgKzIyNCwxNCBAQAoJeyAiZnRsYyIsIDB4MmMxMCB9LAoJeyAiZnRsZCIsIDB4MmMxOCB9LAoJeyAibXRkYmxvY2siLCAweDFmMDAgfSwKKwl7ICJtdGRibG9jazAiLCAweDFmMDAgfSwKKwl7ICJtdGRibG9jazEiLCAweDFmMDEgfSwKKwl7ICJtdGRibG9jazIiLCAweDFmMDIgfSwKKwl7ICJtdGRibG9jazMiLCAweDFmMDMgfSwKKwl7ICJtdGRibG9jazQiLCAweDFmMDQgfSwKKwl7ICJtdGRibG9jazUiLCAweDFmMDUgfSwKKwl7ICJtdGRibG9jazYiLCAweDFmMDYgfSwKKwl7ICJtdGRibG9jazciLCAweDFmMDcgfSwKCXsgTlVMTCwgMCB9CiB9OwoKLS0tLS0tLS0tLS0tLS0tLS0tLQo=