QnJhenVjYXMsCgogICAgICAgIFF1ZSB0YWwgbm9zIGNvbXVuaWNhcm1vcyBpbiBFbmdsaXNoIHBh cmEgbyByZXN0byBkbyBwb3ZvIGFxdWkKbsOjbyBzZSBpcnJpdGFyPyA6LSkKCltdcwoKQWxiZXJ0 byBGYWJpYW5vCiMKYWxiZXJ0byBhdCAoY2NwcGJyYXNpbC5vcmcgIHwgY29tcHV0ZXIub3JnICkK YWxiZXJ0by5mYWJpYW5vIGF0IChpZWVlLm9yZyB8IGFjbS5vcmcpCgovKgojCiMgIFRoZSBiZXN0 IHdheSB0byBwcmVkaWN0IHRoZSBmdXR1cmUgaXMgdG8gaW52ZW50IGl0ICwgIEFsYW4gS2V5CiMK Ly8gIDB4NDIgMHg2OSAweDc0IDB4MjAgMHg0NiAweDYxIDB4NmUgICovCgoKCjIwMDkvNi8yMiBJ c2FhYyBNYXJpbm8gQmF2YXJlc2NvIDxpc2FhY2JhdmFyZXNjb0B5YWhvby5jb20uYnI+Ogo+IEFj aGFzdGUgbWFpcyB1bS4KPgo+IFJlZ2FyZHMsCj4KPiBJc2FhYwo+Cj4KPgo+IEJydW5vIEwuIEFs YnJlY2h0IFtHTUFJTF0gZXNjcmV2ZXU6Cj4+IHRjaMOqLCB0dSBtYW5kb3UgdW1hIG1zZyBlbSBw b3J0dWd1ZXMgcHJhIHVtYSBsaXN0YSBlbSBxIDk5LDklIGRvcyBwb3N0cwo+PiBzYW8gZW0gaW5n bGVzIGUgYWluZGEgZmFsYW5kbyBjb20gbyBib20gc290YXF1ZSBhcXVpIGRhIHRlcnJpbmhhIQo+ PiDDqSBzw7MgcHJhIGFjaGFyIG9zIGNvbnRlcnLDom5jZW9zLCBuZWg/Cj4+Cj4+IGhlaGVoZWgK Pj4KPj4gYWJyYcOnb3MhCj4+Cj4+IMKgIEJydW5vIEwuIEFsYnJlY2h0Cj4+IMKgIEVuZy4gZGEg Q29tcHV0YcOnw6NvLzA2Cj4+IMKgIEZhbGtlciBBdXRvbWHDp8OjbyBBZ3LDrWNvbGEgTHRkYS4K Pj4gwqAgaHR0cDovL3d3dy5mYWxrZXIuY29tLmJyCj4+Cj4+Cj4+Cj4+IE1hcmN1cyAtIFBQNU1T IGVzY3JldmV1Ogo+Pgo+Pj4gVGNow6osIHRpbmhhIHF1ZSB0ZXIgbyBwYXRyb2PDrW5pbyBkZSBh bGd1ZW0sIHTDoSBuYSBhc3NpbmF0dXJhLgo+Pj4KPj4+IE1hcyBtZXNtbyBhc3NpbSB0ZW0gbG91 Y28gcHJhIHR1ZG8sIGNlcnRvPwo+Pj4KPj4+IGh0dHA6Ly92aWRlby50ZWxlZ3JhcGguY28udWsv c2VydmljZXMvcGxheWVyL2JjcGlkMTEzNzg4MzM4MD9iY3RpZD0xNzA3NTY4NTAwMQo+Pj4KPj4+ IDczLAo+Pj4gTWFyY3VzCj4+Pgo+Cj4gX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX18KPiBGYcOnYSBsaWdhw6fDtWVzIHBhcmEgb3V0cm9zIGNvbXB1dGFk b3JlcyBjb20gbyBub3ZvIFlhaG9vISBNZXNzZW5nZXIKPiBodHRwOi8vYnIuYmV0YS5tZXNzZW5n ZXIueWFob28uY29tLwo+Cj4gLS0KPiBodHRwOi8vd3d3LnBpY2xpc3QuY29tIFBJQy9TWCBGQVEg JiBsaXN0IGFyY2hpdmUKPiBWaWV3L2NoYW5nZSB5b3VyIG1lbWJlcnNoaXAgb3B0aW9ucyBhdAo+ IGh0dHA6Ly9tYWlsbWFuLm1pdC5lZHUvbWFpbG1hbi9saXN0aW5mby9waWNsaXN0Cj4KCi0tIApo dHRwOi8vd3d3LnBpY2xpc3QuY29tIFBJQy9TWCBGQVEgJiBsaXN0IGFyY2hpdmUKVmlldy9jaGFu Z2UgeW91ciBtZW1iZXJzaGlwIG9wdGlvbnMgYXQKaHR0cDovL21haWxtYW4ubWl0LmVkdS9tYWls bWFuL2xpc3RpbmZvL3BpY2xpc3QK