Li4gU2VxdWVuY2VzL1ZpZXdzLy9zaW5nbGVfdmlldwoKc2luZ2xlX3ZpZXcKPT09PT09PT09PT0KClN5bm9wc2lzCi0tLS0tLS0tCgouLiBwYXJzZWQtbGl0ZXJhbDo6CiAgICAKICAgIHRlbXBsYXRlPAogICAgICAgICAgdHlwZW5hbWUgVAogICAgICAgID4KICAgIHN0cnVjdCBzaW5nbGVfdmlldwogICAgewogICAgICAgIC8vIHx1bnNwZWNpZmllZHwKICAgICAgICAvLyB8Li4ufAogICAgfTsKCgoKRGVzY3JpcHRpb24KLS0tLS0tLS0tLS0KCkEgdmlldyBvbnRvIGFuIGFyYml0cmFyeSB0eXBlIGBgVGBgIGFzIG9uIGEgc2luZ2xlLWVsZW1lbnQgc2VxdWVuY2UuIAoKCkhlYWRlcgotLS0tLS0KCi4uIHBhcnNlZC1saXRlcmFsOjoKICAgIAogICAgI2luY2x1ZGUgPGJvb3N0L21wbC9zaW5nbGVfdmlldy5ocHA+CgoKTW9kZWwgb2YKLS0tLS0tLS0KCiogfFJhbmRvbSBBY2Nlc3MgU2VxdWVuY2V8CgoKUGFyYW1ldGVycwotLS0tLS0tLS0tCgorLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rCnwgUGFyYW1ldGVyICAgICB8IFJlcXVpcmVtZW50ICAgICAgIHwgRGVzY3JpcHRpb24gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKKz09PT09PT09PT09PT09PSs9PT09PT09PT09PT09PT09PT09Kz09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Kwp8IGBgVGBgICAgICAgICAgfCBBbnkgdHlwZSAgICAgICAgICB8IFRoZSB0eXBlIHRvIGJlIHdyYXBwZWQgaW4gYSBzZXF1ZW5jZS4gICAgICAgICB8CistLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLSstLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSsKCgpFeHByZXNzaW9uIHNlbWFudGljcwotLS0tLS0tLS0tLS0tLS0tLS0tLQoKfFNlbWFudGljcyBkaXNjbGFpbWVyLi4ufCB8UmFuZG9tIEFjY2VzcyBTZXF1ZW5jZXwuCgpJbiB0aGUgZm9sbG93aW5nIHRhYmxlLCBgYHZgYCBpcyBhbiBpbnN0YW5jZSBvZiBgYHNpbmdsZV92aWV3YGAsIGBgeGBgIGlzIGFuIGFyYml0cmFyeSB0eXBlLgoKKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0rCnwgRXhwcmVzc2lvbiAgICAgICAgICAgICAgICAgICAgfCBTZW1hbnRpY3MgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSs9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSsKfCAuLiBwYXJzZWQtbGl0ZXJhbDo6ICAgICAgICAgICB8IEEgc2luZ2xlLWVsZW1lbnQgfFJhbmRvbSBBY2Nlc3MgU2VxdWVuY2V8IGBgdmBgIHN1Y2ggdGhhdCB8CnwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCBgYGZyb250PHY+Ojp0eXBlYGAgaXMgaWRlbnRpY2FsIHRvIGBgeGBgLiAgICAgICAgICAgICAgICAgfAp8ICAgIHNpbmdsZV92aWV3PHg+ICAgICAgICAgICAgIHwgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKfCAgICBzaW5nbGVfdmlldzx4Pjo6dHlwZSAgICAgICB8ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CistLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKwp8IGBgc2l6ZTx2Pjo6dHlwZWBgICAgICAgICAgICAgIHwgVGhlIHNpemUgb2YgYGB2YGA7IGBgc2l6ZTx2Pjo6dmFsdWUgPT0gMWBgOyAgICAgICAgICAgICAgIHwKfCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8IHNlZSB8UmFuZG9tIEFjY2VzcyBTZXF1ZW5jZXwuICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8CistLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKwoKRXhhbXBsZQotLS0tLS0tCgouLiBwYXJzZWQtbGl0ZXJhbDo6CiAgICAKICAgIHR5cGVkZWYgc2luZ2xlX3ZpZXc8aW50PiB2aWV3OwogICAgdHlwZWRlZiBiZWdpbjx2aWV3Pjo6dHlwZSBmaXJzdDsKICAgIHR5cGVkZWYgZW5kPHZpZXc+Ojp0eXBlIGxhc3Q7CiAgICAKICAgIEJPT1NUX01QTF9BU1NFUlQoKCBpc19zYW1lPCBkZXJlZjxmaXJzdD46OnR5cGUsaW50ID4gKSk7CiAgICBCT09TVF9NUExfQVNTRVJUKCggaXNfc2FtZTwgbmV4dDxmaXJzdD46OnR5cGUsbGFzdCA+ICkpOwogICAgQk9PU1RfTVBMX0FTU0VSVCgoIGlzX3NhbWU8IHByaW9yPGxhc3Q+Ojp0eXBlLGZpcnN0ID4gKSk7CiAgICAKICAgIEJPT1NUX01QTF9BU1NFUlRfUkVMQVRJT04oIHNpemU8dmlldz46OnZhbHVlLCA9PSwgMSApOwoKClNlZSBhbHNvCi0tLS0tLS0tCgp8U2VxdWVuY2VzfCwgfFZpZXdzfCwgfGl0ZXJhdG9yX3JhbmdlfCwgfGZpbHRlcl92aWV3fCwgfHRyYW5zZm9ybV92aWV3fCwgfGpvaW50X3ZpZXd8LCB8emlwX3ZpZXd8CgoKLi4gY29weXJpZ2h0OjogQ29weXJpZ2h0IKkgIDIwMDEtMjAwOSBBbGVrc2V5IEd1cnRvdm95IGFuZCBEYXZpZCBBYnJhaGFtcwogICBEaXN0cmlidXRlZCB1bmRlciB0aGUgQm9vc3QgU29mdHdhcmUgTGljZW5zZSwgVmVyc2lvbiAxLjAuIChTZWUgYWNjb21wYW55aW5nCiAgIGZpbGUgTElDRU5TRV8xXzAudHh0IG9yIGNvcHkgYXQgaHR0cDovL3d3dy5ib29zdC5vcmcvTElDRU5TRV8xXzAudHh0KQo=