<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<!DOCTYPE bugzilla SYSTEM "https://bugs.webkit.org/page.cgi?id=bugzilla.dtd">

<bugzilla version="5.0.4.1"
          urlbase="https://bugs.webkit.org/"
          
          maintainer="admin@webkit.org"
>

    <bug>
          <bug_id>67122</bug_id>
          
          <creation_ts>2011-08-29 05:31:48 -0700</creation_ts>
          <short_desc>[Qt][WK2] Rename SGAgent to SGUpdateQueue to sharpen it&apos;s responsability.</short_desc>
          <delta_ts>2011-09-07 08:54:26 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>New Bugs</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Jocelyn Turcotte">jturcotte</reporter>
          <assigned_to name="Jocelyn Turcotte">jturcotte</assigned_to>
          <cc>noam</cc>
    
    <cc>ostap73</cc>
    
    <cc>vestbo</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>458180</commentid>
    <comment_count>0</comment_count>
    <who name="Jocelyn Turcotte">jturcotte</who>
    <bug_when>2011-08-29 05:31:48 -0700</bug_when>
    <thetext>[Qt][WK2] Rename SGAgent to SGUpdateQueue to sharpen it&apos;s responsability.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>458182</commentid>
    <comment_count>1</comment_count>
      <attachid>105481</attachid>
    <who name="Jocelyn Turcotte">jturcotte</who>
    <bug_when>2011-08-29 05:32:25 -0700</bug_when>
    <thetext>Created attachment 105481
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>458184</commentid>
    <comment_count>2</comment_count>
      <attachid>105481</attachid>
    <who name="Tor Arne Vestbø">vestbo</who>
    <bug_when>2011-08-29 05:42:44 -0700</bug_when>
    <thetext>Comment on attachment 105481
Patch

lgtm</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>463370</commentid>
    <comment_count>3</comment_count>
    <who name="Jocelyn Turcotte">jturcotte</who>
    <bug_when>2011-09-07 08:54:26 -0700</bug_when>
    <thetext>Committed r94672: &lt;http://trac.webkit.org/changeset/94672&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>105481</attachid>
            <date>2011-08-29 05:32:25 -0700</date>
            <delta_ts>2011-08-29 05:42:44 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-67122-20110829143223.patch</filename>
            <type>text/plain</type>
            <size>26418</size>
            <attacher name="Jocelyn Turcotte">jturcotte</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogOTM5NjUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZwppbmRleCA1ODYxNWVlOGVlNTY5ZjAw
OTZiOTYyNDk3Y2YzZWFhYTFiNTJkMWVkLi41ZWYyMzVkOTg1MjE2YmIzNmU1YWRhZjM1MzRiY2Uz
MTdiZmM5NzkxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKKysrIGIvU291
cmNlL1dlYktpdDIvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsNDEgQEAKKzIwMTEtMDgtMjkgIEpvY2Vs
eW4gVHVyY290dGUgIDxqb2NlbHluLnR1cmNvdHRlQG5va2lhLmNvbT4KKworICAgICAgICBbUXRd
W1dLMl0gUmVuYW1lIFNHQWdlbnQgdG8gU0dVcGRhdGVRdWV1ZSB0byBzaGFycGVuIGl0J3MgcmVz
cG9uc2FiaWxpdHkuCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNn
aT9pZD02NzEyMgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAg
ICAgICogVUlQcm9jZXNzL0FQSS9xdC9xdG91Y2h3ZWJwYWdlLmNwcDoKKyAgICAgICAgKFFUb3Vj
aFdlYlBhZ2U6OnVwZGF0ZVBhaW50Tm9kZSk6CisgICAgICAgIChRVG91Y2hXZWJQYWdlUHJpdmF0
ZTo6UVRvdWNoV2ViUGFnZVByaXZhdGUpOgorICAgICAgICAqIFVJUHJvY2Vzcy9BUEkvcXQvcXRv
dWNod2VicGFnZV9wLmg6CisgICAgICAgICogVUlQcm9jZXNzL3F0L1NHVXBkYXRlUXVldWUuY3Bw
OiBSZW5hbWVkIGZyb20gU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL3F0L1NHQWdlbnQuY3BwLgor
ICAgICAgICAoV2ViS2l0OjpOb2RlVXBkYXRlQ3JlYXRlVGlsZTo6Tm9kZVVwZGF0ZUNyZWF0ZVRp
bGUpOgorICAgICAgICAoV2ViS2l0OjpOb2RlVXBkYXRlUmVtb3ZlVGlsZTo6Tm9kZVVwZGF0ZVJl
bW92ZVRpbGUpOgorICAgICAgICAoV2ViS2l0OjpOb2RlVXBkYXRlU2V0QmFja0J1ZmZlcjo6Tm9k
ZVVwZGF0ZVNldEJhY2tCdWZmZXIpOgorICAgICAgICAoV2ViS2l0OjpOb2RlVXBkYXRlU3dhcFRp
bGVCdWZmZXJzOjpOb2RlVXBkYXRlU3dhcFRpbGVCdWZmZXJzKToKKyAgICAgICAgKFdlYktpdDo6
U0dVcGRhdGVRdWV1ZTo6U0dVcGRhdGVRdWV1ZSk6CisgICAgICAgIChXZWJLaXQ6OlNHVXBkYXRl
UXVldWU6OmNyZWF0ZVRpbGVOb2RlKToKKyAgICAgICAgKFdlYktpdDo6U0dVcGRhdGVRdWV1ZTo6
cmVtb3ZlVGlsZU5vZGUpOgorICAgICAgICAoV2ViS2l0OjpTR1VwZGF0ZVF1ZXVlOjpzZXROb2Rl
QmFja0J1ZmZlcik6CisgICAgICAgIChXZWJLaXQ6OlNHVXBkYXRlUXVldWU6OnN3YXBUaWxlQnVm
ZmVycyk6CisgICAgICAgIChXZWJLaXQ6OlNHVXBkYXRlUXVldWU6OmFwcGx5VXBkYXRlcyk6Cisg
ICAgICAgIChXZWJLaXQ6OlNHVXBkYXRlUXVldWU6OmdldFNjYWxlTm9kZSk6CisgICAgICAgICog
VUlQcm9jZXNzL3F0L1NHVXBkYXRlUXVldWUuaDogUmVuYW1lZCBmcm9tIFNvdXJjZS9XZWJLaXQy
L1VJUHJvY2Vzcy9xdC9TR0FnZW50LmguCisgICAgICAgIChXZWJLaXQ6OlNHVXBkYXRlUXVldWU6
OmlzU3dhcFBlbmRpbmcpOgorICAgICAgICAoV2ViS2l0OjpOb2RlVXBkYXRlOjpOb2RlVXBkYXRl
KToKKyAgICAgICAgKFdlYktpdDo6Tm9kZVVwZGF0ZTo6fk5vZGVVcGRhdGUpOgorICAgICAgICAq
IFVJUHJvY2Vzcy9xdC9UaWxlZERyYXdpbmdBcmVhUHJveHlRdC5jcHA6CisgICAgICAgIChXZWJL
aXQ6OlRpbGVkRHJhd2luZ0FyZWFQcm94eTo6dXBkYXRlV2ViVmlldyk6CisgICAgICAgIChXZWJL
aXQ6OlRpbGVkRHJhd2luZ0FyZWFQcm94eTo6Y3JlYXRlVGlsZSk6CisgICAgICAgIChXZWJLaXQ6
OlRpbGVkRHJhd2luZ0FyZWFQcm94eTo6dXBkYXRlVGlsZSk6CisgICAgICAgIChXZWJLaXQ6OlRp
bGVkRHJhd2luZ0FyZWFQcm94eTo6ZGlkUmVuZGVyRnJhbWUpOgorICAgICAgICAoV2ViS2l0OjpU
aWxlZERyYXdpbmdBcmVhUHJveHk6OnJlbW92ZVRpbGUpOgorICAgICAgICAqIFVJUHJvY2Vzcy9x
dC9Ub3VjaFZpZXdJbnRlcmZhY2UuY3BwOgorICAgICAgICAoV2ViS2l0OjpUb3VjaFZpZXdJbnRl
cmZhY2U6OnNjZW5lR3JhcGhVcGRhdGVRdWV1ZSk6CisgICAgICAgICogVUlQcm9jZXNzL3F0L1Rv
dWNoVmlld0ludGVyZmFjZS5oOgorICAgICAgICAqIFdlYktpdDIucHJvOgorCiAyMDExLTA4LTI5
ICBWYW1zaGlrcmlzaG5hIFllbGxlbmtpICA8dmFtc2hpQG1vdG9yb2xhLmNvbT4KIAogICAgICAg
ICBbR1RLXVtXSzJdIENvbXBpbGF0aW9uIGVycm9yIGluIFdlYktpdDIgR1RLIC0gUmV2aXNpb24g
OTM5NTMKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvcXQvcXRvdWNo
d2VicGFnZS5jcHAgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL3F0L3F0b3VjaHdlYnBh
Z2UuY3BwCmluZGV4IDQxYTVjM2NiY2ZkNmFlNjdiMjZkNjI5NjU1ODBkMTg3MGQyMmI2NjEuLjA5
NjcyYTA0OTgxMmUzZDdiZGU0MTNmNTA0OWFkNDQyMjc5Njg0ZjMgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvcXQvcXRvdWNod2VicGFnZS5jcHAKKysrIGIvU291cmNl
L1dlYktpdDIvVUlQcm9jZXNzL0FQSS9xdC9xdG91Y2h3ZWJwYWdlLmNwcApAQCAtNzIsMTYgKzcy
LDE2IEBAIFFTR05vZGUqIFFUb3VjaFdlYlBhZ2U6OnVwZGF0ZVBhaW50Tm9kZShRU0dOb2RlKiBv
bGROb2RlLCBVcGRhdGVQYWludE5vZGVEYXRhKikKICAgICBpZiAoIW9sZE5vZGUpCiAgICAgICAg
IG9sZE5vZGUgPSBuZXcgUVNHTm9kZTsKIAotICAgIC8vIEEgc3dhcCBpcyBvbiB0aGUgcXVldWUs
IGFuZCBTR0FnZW50Ojp1cGRhdGVQYWludE5vZGUgd2lsbCBlbXB0eSB0aGUgcXVldWUsIHNvIHdl
IGtub3cgdGhhdAorICAgIC8vIEEgc3dhcCBpcyBvbiB0aGUgcXVldWUsIGFuZCBTR1VwZGF0ZVF1
ZXVlOjphcHBseVVwZGF0ZXMgd2lsbCBlbXB0eSB0aGUgcXVldWUsIHNvIHdlIGtub3cgdGhhdAog
ICAgIC8vIHRoZSBvbGQgZnJhbWUncyBidWZmZXJzIHdvbid0IGJlIHVzZWQgYW55bW9yZSAoZm9y
IGJ1ZmZlcnMgdXNlZCBhbGwgdGhlIHdheSBmcm9tIHRoZSB3ZWIgcHJvY2VzcwogICAgIC8vIHRv
IHRoZSBncmFwaGljIGNhcmQpLiBOb3RpZnkgdGhlIHdlYiBwcm9jZXNzIHRoYXQgaXQgY2FuIHJl
bmRlciB0aGUgbmV4dCBmcmFtZS4KLSAgICBpZiAoZC0+c2dBZ2VudC5pc1N3YXBQZW5kaW5nKCkp
CisgICAgaWYgKGQtPnNnVXBkYXRlUXVldWUuaXNTd2FwUGVuZGluZygpKQogICAgICAgICAvLyBU
aGUgVUkgdGhyZWFkIGlzIGN1cnJlbnRseSBsb2NrZWQgYW5kIGNhbGxpbmcgdGhpcyBmcm9tIHRo
ZSByZW5kZXJpbmcgdGhyZWFkIGRpZG4ndCBjcmFzaAogICAgICAgICAvLyB5ZXQsIHNvIEknbSBh
c3N1bWluZyB0aGF0IHRoaXMgaXMgT0suIEVsc2Ugd2UgaGF2ZSB0byB3YWl0IHVudGlsIHRoZSBT
RyB1cGRhdGUgaXMgb3ZlcgogICAgICAgICAvLyBhbmQgdGhlIFVJIHRocmVhZCByZXR1cm5zIHRv
IHRoZSBldmVudCBsb29wIHBpY2tpbmcgb3VyIGV2ZW50IGJlZm9yZSBpdCBjYW4gYmUgc2VudCB0
bwogICAgICAgICAvLyB0aGUgd2ViIHByb2Nlc3MuIFRoaXMgd291bGQgaW5jcmVhc2Ugb3VyIGNo
YW5jZXMgb2YgbWlzc2luZyBhIGZyYW1lLgogICAgICAgICBkLT5wYWdlLT5yZW5kZXJOZXh0RnJh
bWUoKTsKLSAgICBkLT5zZ0FnZW50LnVwZGF0ZVBhaW50Tm9kZShvbGROb2RlKTsKKyAgICBkLT5z
Z1VwZGF0ZVF1ZXVlLmFwcGx5VXBkYXRlcyhvbGROb2RlKTsKIAogICAgIC8vIFFTR0l0ZW0gdGFr
ZXMgb3duZXJzaGlwIG9mIHRoaXMgcmV0dXJuIHZhbHVlIGFuZCBpdCdzIGNoaWxkcmVuIGJldHdl
ZW4gYW5kIGFmdGVyIHVwZGF0ZVBhaW50Tm9kZSBjYWxscy4KICAgICByZXR1cm4gb2xkTm9kZTsK
QEAgLTE1NSw3ICsxNTUsNyBAQCBRVG91Y2hXZWJQYWdlUHJpdmF0ZTo6UVRvdWNoV2ViUGFnZVBy
aXZhdGUoUVRvdWNoV2ViUGFnZSogdmlldykKICAgICA6IHEodmlldykKICAgICAsIHBhZ2UoMCkK
ICAgICAsIG5hdmlnYXRpb25Db250cm9sbGVyKDApCi0gICAgLCBzZ0FnZW50KHZpZXcpCisgICAg
LCBzZ1VwZGF0ZVF1ZXVlKHZpZXcpCiB7CiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQy
L1VJUHJvY2Vzcy9BUEkvcXQvcXRvdWNod2VicGFnZV9wLmggYi9Tb3VyY2UvV2ViS2l0Mi9VSVBy
b2Nlc3MvQVBJL3F0L3F0b3VjaHdlYnBhZ2VfcC5oCmluZGV4IGVkMTdiMGMzZjJkNzBiOGYyY2Ew
NDQyMTYzOGM1ODEyN2NiNDg4NzUuLmQ3MzhhMDAyNzZiMDI4N2Q2NzQ4MDM4OTUwZDI3MThkNWQ2
YjJmZTMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvcXQvcXRvdWNo
d2VicGFnZV9wLmgKKysrIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9xdC9xdG91Y2h3
ZWJwYWdlX3AuaApAQCAtMjEsNyArMjEsNyBAQAogI2lmbmRlZiBxdG91Y2h3ZWJwYWdlX3BfaAog
I2RlZmluZSBxdG91Y2h3ZWJwYWdlX3BfaAogCi0jaW5jbHVkZSAiU0dBZ2VudC5oIgorI2luY2x1
ZGUgIlNHVXBkYXRlUXVldWUuaCIKICNpbmNsdWRlICJxdG91Y2h3ZWJwYWdlLmgiCiAjaW5jbHVk
ZSAicXdlYm5hdmlnYXRpb25jb250cm9sbGVyLmgiCiAjaW5jbHVkZSA8UU1lbnU+CkBAIC00NSw3
ICs0NSw3IEBAIHB1YmxpYzoKICAgICBRVG91Y2hXZWJQYWdlKiBjb25zdCBxOwogICAgIFFUb3Vj
aFdlYlBhZ2VQcm94eSogcGFnZTsKICAgICBRV2ViTmF2aWdhdGlvbkNvbnRyb2xsZXIqIG5hdmln
YXRpb25Db250cm9sbGVyOwotICAgIFdlYktpdDo6U0dBZ2VudCBzZ0FnZW50OworICAgIFdlYktp
dDo6U0dVcGRhdGVRdWV1ZSBzZ1VwZGF0ZVF1ZXVlOwogfTsKIAogI2VuZGlmIC8qIHF0b3VjaHdl
YnBhZ2VfcF9oICovCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvcXQvU0dB
Z2VudC5jcHAgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvcXQvU0dBZ2VudC5jcHAKZGVsZXRl
ZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IGM5MzNjY2ViNGU4ODBkZDkzNmYzYjk2NTU5OWYzMGYw
ZDk3ZjdlOTIuLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKLS0tIGEv
U291cmNlL1dlYktpdDIvVUlQcm9jZXNzL3F0L1NHQWdlbnQuY3BwCisrKyAvZGV2L251bGwKQEAg
LTEsMTcwICswLDAgQEAKLS8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMTAsIDIwMTEgTm9raWEgQ29y
cG9yYXRpb24gYW5kL29yIGl0cyBzdWJzaWRpYXJ5KC1pZXMpCi0gKgotICogVGhpcyBsaWJyYXJ5
IGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vcgotICogbW9k
aWZ5IGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIExpYnJhcnkgR2VuZXJhbCBQdWJsaWMK
LSAqIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5IHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247
IGVpdGhlcgotICogdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBvciAoYXQgeW91ciBvcHRpb24p
IGFueSBsYXRlciB2ZXJzaW9uLgotICoKLSAqIFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBp
biB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAotICogYnV0IFdJVEhPVVQgQU5ZIFdB
UlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2YKLSAqIE1FUkNIQU5U
QUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUgR05V
Ci0gKiBMaWJyYXJ5IEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KLSAq
Ci0gKiBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgTGlicmFyeSBH
ZW5lcmFsIFB1YmxpYyBMaWNlbnNlCi0gKiBhbG9uZyB3aXRoIHRoaXMgcHJvZ3JhbTsgc2VlIHRo
ZSBmaWxlIENPUFlJTkcuTElCLiAgSWYgbm90LCB3cml0ZSB0bwotICogdGhlIEZyZWUgU29mdHdh
cmUgRm91bmRhdGlvbiwgSW5jLiwgNTEgRnJhbmtsaW4gU3RyZWV0LCBGaWZ0aCBGbG9vciwKLSAq
IEJvc3RvbiwgTUEgMDIxMTAtMTMwMSwgVVNBLgotICoKLSAqLwotCi0jaW5jbHVkZSAiY29uZmln
LmgiCi0jaW5jbHVkZSAiU0dBZ2VudC5oIgotCi0jaW5jbHVkZSAiUGFzc093blB0ci5oIgotI2lu
Y2x1ZGUgIlNHVGlsZU5vZGUuaCIKLSNpbmNsdWRlIDxRU0dJdGVtPgotCi1uYW1lc3BhY2UgV2Vi
S2l0IHsKLQotc3RydWN0IE5vZGVVcGRhdGVDcmVhdGVUaWxlIDogcHVibGljIE5vZGVVcGRhdGUg
ewotICAgIE5vZGVVcGRhdGVDcmVhdGVUaWxlKGludCBub2RlSUQsIGZsb2F0IHNjYWxlKQotICAg
ICAgICA6IE5vZGVVcGRhdGUoQ3JlYXRlVGlsZSkKLSAgICAgICAgLCBub2RlSUQobm9kZUlEKQot
ICAgICAgICAsIHNjYWxlKHNjYWxlKQotICAgIHsgfQotICAgIGludCBub2RlSUQ7Ci0gICAgZmxv
YXQgc2NhbGU7Ci19OwotCi1zdHJ1Y3QgTm9kZVVwZGF0ZVJlbW92ZVRpbGUgOiBwdWJsaWMgTm9k
ZVVwZGF0ZSB7Ci0gICAgTm9kZVVwZGF0ZVJlbW92ZVRpbGUoaW50IG5vZGVJRCkKLSAgICAgICAg
OiBOb2RlVXBkYXRlKFJlbW92ZVRpbGUpCi0gICAgICAgICwgbm9kZUlEKG5vZGVJRCkKLSAgICB7
IH0KLSAgICBpbnQgbm9kZUlEOwotfTsKLQotc3RydWN0IE5vZGVVcGRhdGVTZXRCYWNrQnVmZmVy
IDogcHVibGljIE5vZGVVcGRhdGUgewotICAgIE5vZGVVcGRhdGVTZXRCYWNrQnVmZmVyKGludCBu
b2RlSUQsIGNvbnN0IFFJbWFnZSYgYmFja0J1ZmZlciwgY29uc3QgUVJlY3QmIHNvdXJjZVJlY3Qs
IGNvbnN0IFFSZWN0JiB0YXJnZXRSZWN0KQotICAgICAgICA6IE5vZGVVcGRhdGUoU2V0QmFja0J1
ZmZlcikKLSAgICAgICAgLCBub2RlSUQobm9kZUlEKQotICAgICAgICAsIGJhY2tCdWZmZXIoYmFj
a0J1ZmZlcikKLSAgICAgICAgLCBzb3VyY2VSZWN0KHNvdXJjZVJlY3QpCi0gICAgICAgICwgdGFy
Z2V0UmVjdCh0YXJnZXRSZWN0KQotICAgIHsgfQotICAgIGludCBub2RlSUQ7Ci0gICAgUUltYWdl
IGJhY2tCdWZmZXI7Ci0gICAgUVJlY3Qgc291cmNlUmVjdDsKLSAgICBRUmVjdCB0YXJnZXRSZWN0
OwotfTsKLQotc3RydWN0IE5vZGVVcGRhdGVTd2FwVGlsZUJ1ZmZlcnMgOiBwdWJsaWMgTm9kZVVw
ZGF0ZSB7Ci0gICAgTm9kZVVwZGF0ZVN3YXBUaWxlQnVmZmVycygpCi0gICAgICAgIDogTm9kZVVw
ZGF0ZShTd2FwVGlsZUJ1ZmZlcnMpCi0gICAgeyB9Ci19OwotCi1TR0FnZW50OjpTR0FnZW50KFFT
R0l0ZW0qIGl0ZW0pCi0gICAgOiBpdGVtKGl0ZW0pCi0gICAgLCBsYXN0U2NhbGUoMCkKLSAgICAs
IGxhc3RTY2FsZU5vZGUoMCkKLSAgICAsIG5leHROb2RlSUQoMSkKLSAgICAsIG1faXNTd2FwUGVu
ZGluZyhmYWxzZSkKLXsKLX0KLQotaW50IFNHQWdlbnQ6OmNyZWF0ZVRpbGVOb2RlKGZsb2F0IHNj
YWxlKQotewotICAgIGludCBub2RlSUQgPSBuZXh0Tm9kZUlEKys7Ci0gICAgbm9kZVVwZGF0ZXNR
dWV1ZS5hcHBlbmQoYWRvcHRQdHIobmV3IE5vZGVVcGRhdGVDcmVhdGVUaWxlKG5vZGVJRCwgc2Nh
bGUpKSk7Ci0gICAgaXRlbS0+dXBkYXRlKCk7Ci0gICAgcmV0dXJuIG5vZGVJRDsKLX0KLQotdm9p
ZCBTR0FnZW50OjpyZW1vdmVUaWxlTm9kZShpbnQgbm9kZUlEKQotewotICAgIG5vZGVVcGRhdGVz
UXVldWUuYXBwZW5kKGFkb3B0UHRyKG5ldyBOb2RlVXBkYXRlUmVtb3ZlVGlsZShub2RlSUQpKSk7
Ci0gICAgaXRlbS0+dXBkYXRlKCk7Ci19Ci0KLXZvaWQgU0dBZ2VudDo6c2V0Tm9kZUJhY2tCdWZm
ZXIoaW50IG5vZGVJRCwgY29uc3QgUUltYWdlJiBiYWNrQnVmZmVyLCBjb25zdCBRUmVjdCYgc291
cmNlUmVjdCwgY29uc3QgUVJlY3QmIHRhcmdldFJlY3QpCi17Ci0gICAgbm9kZVVwZGF0ZXNRdWV1
ZS5hcHBlbmQoYWRvcHRQdHIobmV3IE5vZGVVcGRhdGVTZXRCYWNrQnVmZmVyKG5vZGVJRCwgYmFj
a0J1ZmZlciwgc291cmNlUmVjdCwgdGFyZ2V0UmVjdCkpKTsKLSAgICBpdGVtLT51cGRhdGUoKTsK
LX0KLQotdm9pZCBTR0FnZW50Ojpzd2FwVGlsZUJ1ZmZlcnMoKQotewotICAgIG5vZGVVcGRhdGVz
UXVldWUuYXBwZW5kKGFkb3B0UHRyKG5ldyBOb2RlVXBkYXRlU3dhcFRpbGVCdWZmZXJzKCkpKTsK
LSAgICBtX2lzU3dhcFBlbmRpbmcgPSB0cnVlOwotICAgIGl0ZW0tPnVwZGF0ZSgpOwotfQotCi12
b2lkIFNHQWdlbnQ6OnVwZGF0ZVBhaW50Tm9kZShRU0dOb2RlKiBpdGVtTm9kZSkKLXsKLSAgICB3
aGlsZSAoIW5vZGVVcGRhdGVzUXVldWUuaXNFbXB0eSgpKSB7Ci0gICAgICAgIE93blB0cjxOb2Rl
VXBkYXRlPiBub2RlVXBkYXRlKG5vZGVVcGRhdGVzUXVldWUudGFrZUZpcnN0KCkpOwotICAgICAg
ICBzd2l0Y2ggKG5vZGVVcGRhdGUtPnR5cGUpIHsKLSAgICAgICAgY2FzZSBOb2RlVXBkYXRlOjpD
cmVhdGVUaWxlOiB7Ci0gICAgICAgICAgICBOb2RlVXBkYXRlQ3JlYXRlVGlsZSogY3JlYXRlVGls
ZVVwZGF0ZSA9IHN0YXRpY19jYXN0PE5vZGVVcGRhdGVDcmVhdGVUaWxlKj4obm9kZVVwZGF0ZS5n
ZXQoKSk7Ci0gICAgICAgICAgICBTR1RpbGVOb2RlKiB0aWxlTm9kZSA9IG5ldyBTR1RpbGVOb2Rl
KGl0ZW0tPnNjZW5lR3JhcGhFbmdpbmUoKSk7Ci0gICAgICAgICAgICBnZXRTY2FsZU5vZGUoY3Jl
YXRlVGlsZVVwZGF0ZS0+c2NhbGUsIGl0ZW1Ob2RlKS0+cHJlcGVuZENoaWxkTm9kZSh0aWxlTm9k
ZSk7Ci0gICAgICAgICAgICBub2Rlcy5zZXQoY3JlYXRlVGlsZVVwZGF0ZS0+bm9kZUlELCB0aWxl
Tm9kZSk7Ci0gICAgICAgICAgICBicmVhazsKLSAgICAgICAgfQotICAgICAgICBjYXNlIE5vZGVV
cGRhdGU6OlJlbW92ZVRpbGU6IHsKLSAgICAgICAgICAgIE5vZGVVcGRhdGVSZW1vdmVUaWxlKiBy
ZW1vdmVVcGRhdGUgPSBzdGF0aWNfY2FzdDxOb2RlVXBkYXRlUmVtb3ZlVGlsZSo+KG5vZGVVcGRh
dGUuZ2V0KCkpOwotICAgICAgICAgICAgUVNHTm9kZSogbm9kZSA9IG5vZGVzLnRha2UocmVtb3Zl
VXBkYXRlLT5ub2RlSUQpOwotICAgICAgICAgICAgUVNHTm9kZSogc2NhbGVOb2RlID0gbm9kZS0+
cGFyZW50KCk7Ci0KLSAgICAgICAgICAgIHNjYWxlTm9kZS0+cmVtb3ZlQ2hpbGROb2RlKG5vZGUp
OwotICAgICAgICAgICAgaWYgKCFzY2FsZU5vZGUtPmNoaWxkQ291bnQoKSkgewotICAgICAgICAg
ICAgICAgIGlmIChzY2FsZU5vZGUgPT0gbGFzdFNjYWxlTm9kZSkgewotICAgICAgICAgICAgICAg
ICAgICBsYXN0U2NhbGUgPSAwOwotICAgICAgICAgICAgICAgICAgICBsYXN0U2NhbGVOb2RlID0g
MDsKLSAgICAgICAgICAgICAgICB9Ci0gICAgICAgICAgICAgICAgZGVsZXRlIHNjYWxlTm9kZTsK
LSAgICAgICAgICAgIH0KLSAgICAgICAgICAgIGRlbGV0ZSBub2RlOwotICAgICAgICAgICAgYnJl
YWs7Ci0gICAgICAgIH0KLSAgICAgICAgY2FzZSBOb2RlVXBkYXRlOjpTZXRCYWNrQnVmZmVyOiB7
Ci0gICAgICAgICAgICBOb2RlVXBkYXRlU2V0QmFja0J1ZmZlciogc2V0QmFja0J1ZmZlclVwZGF0
ZSA9IHN0YXRpY19jYXN0PE5vZGVVcGRhdGVTZXRCYWNrQnVmZmVyKj4obm9kZVVwZGF0ZS5nZXQo
KSk7Ci0gICAgICAgICAgICBTR1RpbGVOb2RlKiB0aWxlTm9kZSA9IG5vZGVzLmdldChzZXRCYWNr
QnVmZmVyVXBkYXRlLT5ub2RlSUQpOwotICAgICAgICAgICAgdGlsZU5vZGUtPnNldEJhY2tCdWZm
ZXIoc2V0QmFja0J1ZmZlclVwZGF0ZS0+YmFja0J1ZmZlciwgc2V0QmFja0J1ZmZlclVwZGF0ZS0+
c291cmNlUmVjdCwgc2V0QmFja0J1ZmZlclVwZGF0ZS0+dGFyZ2V0UmVjdCk7Ci0gICAgICAgICAg
ICBicmVhazsKLSAgICAgICAgfQotICAgICAgICBjYXNlIE5vZGVVcGRhdGU6OlN3YXBUaWxlQnVm
ZmVyczogewotICAgICAgICAgICAgSGFzaE1hcDxpbnQsIFNHVGlsZU5vZGUqPjo6aXRlcmF0b3Ig
ZW5kID0gbm9kZXMuZW5kKCk7Ci0gICAgICAgICAgICBmb3IgKEhhc2hNYXA8aW50LCBTR1RpbGVO
b2RlKj46Oml0ZXJhdG9yIGl0ID0gbm9kZXMuYmVnaW4oKTsgaXQgIT0gZW5kOyArK2l0KQotICAg
ICAgICAgICAgICAgIGl0LT5zZWNvbmQtPnN3YXBCdWZmZXJzSWZOZWVkZWQoKTsKLSAgICAgICAg
ICAgIG1faXNTd2FwUGVuZGluZyA9IGZhbHNlOwotICAgICAgICAgICAgYnJlYWs7Ci0gICAgICAg
IH0KLSAgICAgICAgZGVmYXVsdDoKLSAgICAgICAgICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgpOwot
ICAgICAgICB9Ci0gICAgfQotfQotCi1RU0dOb2RlKiBTR0FnZW50OjpnZXRTY2FsZU5vZGUoZmxv
YXQgc2NhbGUsIFFTR05vZGUqIGl0ZW1Ob2RlKQotewotICAgIGlmIChzY2FsZSA9PSBsYXN0U2Nh
bGUpCi0gICAgICAgIHJldHVybiBsYXN0U2NhbGVOb2RlOwotCi0gICAgUVNHVHJhbnNmb3JtTm9k
ZSogc2NhbGVOb2RlID0gbmV3IFFTR1RyYW5zZm9ybU5vZGU7Ci0gICAgUU1hdHJpeDR4NCBzY2Fs
ZU1hdHJpeDsKLSAgICAvLyBVc2Ugc2NhbGUoZmxvYXQsZmxvYXQpIHRvIHByZXZlbnQgc2NhbGlu
ZyB0aGUgWiBjb21wb25lbnQuCi0gICAgLy8gUmV2ZXJzZSB0aGUgaXRlbSdzIHRyYW5zZm9ybSBz
Y2FsZSBzaW5jZSBvdXIgdGlsZXMgd2VyZSBnZW5lcmF0ZWQgZm9yIHRoaXMgc3BlY2lmaWMgc2Nh
bGUuCi0gICAgc2NhbGVNYXRyaXguc2NhbGUoMSAvIHNjYWxlLCAxIC8gc2NhbGUpOwotICAgIHNj
YWxlTm9kZS0+c2V0TWF0cml4KHNjYWxlTWF0cml4KTsKLSAgICAvLyBQcmVwZW5kIGluc3RlYWQg
b2YgYXBwZW5kIHRvIHBhaW50IHRoZSBuZXcsIGluY29tcGxldGUsIHNjYWxlIGJlZm9yZS9iZWhp
bmQgdGhlIHByZXZpb3VzIG9uZS4KLSAgICBpdGVtTm9kZS0+cHJlcGVuZENoaWxkTm9kZShzY2Fs
ZU5vZGUpOwotCi0gICAgbGFzdFNjYWxlID0gc2NhbGU7Ci0gICAgbGFzdFNjYWxlTm9kZSA9IHNj
YWxlTm9kZTsKLSAgICByZXR1cm4gbGFzdFNjYWxlTm9kZTsKLX0KLQotfQpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYktpdDIvVUlQcm9jZXNzL3F0L1NHQWdlbnQuaCBiL1NvdXJjZS9XZWJLaXQyL1VJ
UHJvY2Vzcy9xdC9TR0FnZW50LmgKZGVsZXRlZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDA0MTFk
N2ExNGNlZTMwNjk5ZmVmYzI1Y2E2NmU4ZTQzYzBiZjBiODYuLjAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAKLS0tIGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL3F0L1NH
QWdlbnQuaAorKysgL2Rldi9udWxsCkBAIC0xLDgyICswLDAgQEAKLS8qCi0gKiBDb3B5cmlnaHQg
KEMpIDIwMTEgTm9raWEgQ29ycG9yYXRpb24gYW5kL29yIGl0cyBzdWJzaWRpYXJ5KC1pZXMpCi0g
KgotICogVGhpcyBsaWJyYXJ5IGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRl
IGl0IGFuZC9vcgotICogbW9kaWZ5IGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIExpYnJh
cnkgR2VuZXJhbCBQdWJsaWMKLSAqIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5IHRoZSBGcmVlIFNv
ZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlcgotICogdmVyc2lvbiAyIG9mIHRoZSBMaWNlbnNlLCBv
ciAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgotICoKLSAqIFRoaXMgcHJvZ3Jh
bSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLAotICog
YnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFu
dHkgb2YKLSAqIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVS
UE9TRS4gIFNlZSB0aGUgR05VCi0gKiBMaWJyYXJ5IEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9y
IG1vcmUgZGV0YWlscy4KLSAqCi0gKiBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9m
IHRoZSBHTlUgTGlicmFyeSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCi0gKiBhbG9uZyB3aXRoIHRo
aXMgcHJvZ3JhbTsgc2VlIHRoZSBmaWxlIENPUFlJTkcuTElCLiAgSWYgbm90LCB3cml0ZSB0bwot
ICogdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgSW5jLiwgNTEgRnJhbmtsaW4gU3RyZWV0
LCBGaWZ0aCBGbG9vciwKLSAqIEJvc3RvbiwgTUEgMDIxMTAtMTMwMSwgVVNBLgotICoKLSAqLwot
Ci0jaWZuZGVmIFNHQWdlbnRfaAotI2RlZmluZSBTR0FnZW50X2gKLQotI2luY2x1ZGUgIkRlcXVl
LmgiCi0jaW5jbHVkZSAiT3duUHRyLmgiCi0jaW5jbHVkZSAiSGFzaE1hcC5oIgotCi1jbGFzcyBR
SW1hZ2U7Ci1jbGFzcyBRUmVjdDsKLWNsYXNzIFFTR0l0ZW07Ci1jbGFzcyBRU0dOb2RlOwotY2xh
c3MgUVNpemU7Ci0KLW5hbWVzcGFjZSBXZWJLaXQgewotCi1jbGFzcyBOb2RlVXBkYXRlOwotY2xh
c3MgUGFnZU5vZGU7Ci1jbGFzcyBTR1RpbGVOb2RlOwotCi0vLyBUYWtlcyBjYXJlIG9mIHRha2lu
ZyB1cGRhdGUgcmVxdWVzdHMgdGhlbiBmdWxmaWxsaW5nIHRoZW0gYXN5bmNocm9ub3VzbHkgb24g
dGhlIHNjZW5lIGdyYXBoIHRocmVhZC4KLWNsYXNzIFNHQWdlbnQgewotcHVibGljOgotICAgIFNH
QWdlbnQoUVNHSXRlbSopOwotCi0gICAgaW50IGNyZWF0ZVRpbGVOb2RlKGZsb2F0IHNjYWxlKTsK
LSAgICB2b2lkIHJlbW92ZVRpbGVOb2RlKGludCBub2RlSUQpOwotICAgIHZvaWQgc2V0Tm9kZUJh
Y2tCdWZmZXIoaW50IG5vZGVJRCwgY29uc3QgUUltYWdlJiB0ZXh0dXJlLCBjb25zdCBRUmVjdCYg
c291cmNlUmVjdCwgY29uc3QgUVJlY3QmIHRhcmdldFJlY3QpOwotICAgIHZvaWQgc3dhcFRpbGVC
dWZmZXJzKCk7Ci0KLSAgICAvLyBDYWxsZWQgYnkgdGhlIFFTR0l0ZW0uCi0gICAgdm9pZCB1cGRh
dGVQYWludE5vZGUoUVNHTm9kZSogaXRlbU5vZGUpOwotICAgIGJvb2wgaXNTd2FwUGVuZGluZygp
IGNvbnN0IHsgcmV0dXJuIG1faXNTd2FwUGVuZGluZzsgfQotCi1wcml2YXRlOgotICAgIFFTR05v
ZGUqIGdldFNjYWxlTm9kZShmbG9hdCBzY2FsZSwgUVNHTm9kZSogaXRlbU5vZGUpOwotCi0gICAg
UVNHSXRlbSogaXRlbTsKLSAgICBEZXF1ZTxPd25QdHI8Tm9kZVVwZGF0ZT4gPiBub2RlVXBkYXRl
c1F1ZXVlOwotICAgIEhhc2hNYXA8aW50LCBTR1RpbGVOb2RlKj4gbm9kZXM7Ci0gICAgZmxvYXQg
bGFzdFNjYWxlOwotICAgIFFTR05vZGUqIGxhc3RTY2FsZU5vZGU7Ci0gICAgaW50IG5leHROb2Rl
SUQ7Ci0gICAgYm9vbCBtX2lzU3dhcFBlbmRpbmc7Ci19OwotCi1zdHJ1Y3QgTm9kZVVwZGF0ZSB7
Ci0gICAgZW51bSBUeXBlIHsKLSAgICAgICAgQ3JlYXRlVGlsZSwKLSAgICAgICAgUmVtb3ZlVGls
ZSwKLSAgICAgICAgU2V0QmFja0J1ZmZlciwKLSAgICAgICAgU3dhcFRpbGVCdWZmZXJzCi0gICAg
fTsKLSAgICBOb2RlVXBkYXRlKFR5cGUgdHlwZSkKLSAgICAgICAgOiB0eXBlKHR5cGUpCi0gICAg
eyB9Ci0gICAgdmlydHVhbCB+Tm9kZVVwZGF0ZSgpIHsgfQotICAgIFR5cGUgdHlwZTsKLX07Ci0K
LX0KLQotI2VuZGlmIC8qIFNHQWdlbnRfaCAqLwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIv
VUlQcm9jZXNzL3F0L1NHVXBkYXRlUXVldWUuY3BwIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNz
L3F0L1NHVXBkYXRlUXVldWUuY3BwCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmIzMTU0M2FjY2IxMjMzOWZkNjljZDMx
NGI2ZWQxOTIwNjU3M2JlZDcKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9VSVBy
b2Nlc3MvcXQvU0dVcGRhdGVRdWV1ZS5jcHAKQEAgLTAsMCArMSwxNzAgQEAKKy8qCisgKiBDb3B5
cmlnaHQgKEMpIDIwMTAsIDIwMTEgTm9raWEgQ29ycG9yYXRpb24gYW5kL29yIGl0cyBzdWJzaWRp
YXJ5KC1pZXMpCisgKgorICogVGhpcyBsaWJyYXJ5IGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4g
cmVkaXN0cmlidXRlIGl0IGFuZC9vcgorICogbW9kaWZ5IGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0
aGUgR05VIExpYnJhcnkgR2VuZXJhbCBQdWJsaWMKKyAqIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5
IHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlcgorICogdmVyc2lvbiAyIG9mIHRo
ZSBMaWNlbnNlLCBvciAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLgorICoKKyAq
IFRoaXMgcHJvZ3JhbSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUg
dXNlZnVsLAorICogYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGlt
cGxpZWQgd2FycmFudHkgb2YKKyAqIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBB
UlRJQ1VMQVIgUFVSUE9TRS4gIFNlZSB0aGUgR05VCisgKiBMaWJyYXJ5IEdlbmVyYWwgUHVibGlj
IExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KKyAqCisgKiBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2
ZWQgYSBjb3B5IG9mIHRoZSBHTlUgTGlicmFyeSBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlCisgKiBh
bG9uZyB3aXRoIHRoaXMgcHJvZ3JhbTsgc2VlIHRoZSBmaWxlIENPUFlJTkcuTElCLiAgSWYgbm90
LCB3cml0ZSB0bworICogdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgSW5jLiwgNTEgRnJh
bmtsaW4gU3RyZWV0LCBGaWZ0aCBGbG9vciwKKyAqIEJvc3RvbiwgTUEgMDIxMTAtMTMwMSwgVVNB
LgorICoKKyAqLworCisjaW5jbHVkZSAiY29uZmlnLmgiCisjaW5jbHVkZSAiU0dVcGRhdGVRdWV1
ZS5oIgorCisjaW5jbHVkZSAiUGFzc093blB0ci5oIgorI2luY2x1ZGUgIlNHVGlsZU5vZGUuaCIK
KyNpbmNsdWRlIDxRU0dJdGVtPgorCituYW1lc3BhY2UgV2ViS2l0IHsKKworc3RydWN0IE5vZGVV
cGRhdGVDcmVhdGVUaWxlIDogcHVibGljIE5vZGVVcGRhdGUgeworICAgIE5vZGVVcGRhdGVDcmVh
dGVUaWxlKGludCBub2RlSUQsIGZsb2F0IHNjYWxlKQorICAgICAgICA6IE5vZGVVcGRhdGUoQ3Jl
YXRlVGlsZSkKKyAgICAgICAgLCBub2RlSUQobm9kZUlEKQorICAgICAgICAsIHNjYWxlKHNjYWxl
KQorICAgIHsgfQorICAgIGludCBub2RlSUQ7CisgICAgZmxvYXQgc2NhbGU7Cit9OworCitzdHJ1
Y3QgTm9kZVVwZGF0ZVJlbW92ZVRpbGUgOiBwdWJsaWMgTm9kZVVwZGF0ZSB7CisgICAgTm9kZVVw
ZGF0ZVJlbW92ZVRpbGUoaW50IG5vZGVJRCkKKyAgICAgICAgOiBOb2RlVXBkYXRlKFJlbW92ZVRp
bGUpCisgICAgICAgICwgbm9kZUlEKG5vZGVJRCkKKyAgICB7IH0KKyAgICBpbnQgbm9kZUlEOwor
fTsKKworc3RydWN0IE5vZGVVcGRhdGVTZXRCYWNrQnVmZmVyIDogcHVibGljIE5vZGVVcGRhdGUg
eworICAgIE5vZGVVcGRhdGVTZXRCYWNrQnVmZmVyKGludCBub2RlSUQsIGNvbnN0IFFJbWFnZSYg
YmFja0J1ZmZlciwgY29uc3QgUVJlY3QmIHNvdXJjZVJlY3QsIGNvbnN0IFFSZWN0JiB0YXJnZXRS
ZWN0KQorICAgICAgICA6IE5vZGVVcGRhdGUoU2V0QmFja0J1ZmZlcikKKyAgICAgICAgLCBub2Rl
SUQobm9kZUlEKQorICAgICAgICAsIGJhY2tCdWZmZXIoYmFja0J1ZmZlcikKKyAgICAgICAgLCBz
b3VyY2VSZWN0KHNvdXJjZVJlY3QpCisgICAgICAgICwgdGFyZ2V0UmVjdCh0YXJnZXRSZWN0KQor
ICAgIHsgfQorICAgIGludCBub2RlSUQ7CisgICAgUUltYWdlIGJhY2tCdWZmZXI7CisgICAgUVJl
Y3Qgc291cmNlUmVjdDsKKyAgICBRUmVjdCB0YXJnZXRSZWN0OworfTsKKworc3RydWN0IE5vZGVV
cGRhdGVTd2FwVGlsZUJ1ZmZlcnMgOiBwdWJsaWMgTm9kZVVwZGF0ZSB7CisgICAgTm9kZVVwZGF0
ZVN3YXBUaWxlQnVmZmVycygpCisgICAgICAgIDogTm9kZVVwZGF0ZShTd2FwVGlsZUJ1ZmZlcnMp
CisgICAgeyB9Cit9OworCitTR1VwZGF0ZVF1ZXVlOjpTR1VwZGF0ZVF1ZXVlKFFTR0l0ZW0qIGl0
ZW0pCisgICAgOiBpdGVtKGl0ZW0pCisgICAgLCBsYXN0U2NhbGUoMCkKKyAgICAsIGxhc3RTY2Fs
ZU5vZGUoMCkKKyAgICAsIG5leHROb2RlSUQoMSkKKyAgICAsIG1faXNTd2FwUGVuZGluZyhmYWxz
ZSkKK3sKK30KKworaW50IFNHVXBkYXRlUXVldWU6OmNyZWF0ZVRpbGVOb2RlKGZsb2F0IHNjYWxl
KQoreworICAgIGludCBub2RlSUQgPSBuZXh0Tm9kZUlEKys7CisgICAgbm9kZVVwZGF0ZVF1ZXVl
LmFwcGVuZChhZG9wdFB0cihuZXcgTm9kZVVwZGF0ZUNyZWF0ZVRpbGUobm9kZUlELCBzY2FsZSkp
KTsKKyAgICBpdGVtLT51cGRhdGUoKTsKKyAgICByZXR1cm4gbm9kZUlEOworfQorCit2b2lkIFNH
VXBkYXRlUXVldWU6OnJlbW92ZVRpbGVOb2RlKGludCBub2RlSUQpCit7CisgICAgbm9kZVVwZGF0
ZVF1ZXVlLmFwcGVuZChhZG9wdFB0cihuZXcgTm9kZVVwZGF0ZVJlbW92ZVRpbGUobm9kZUlEKSkp
OworICAgIGl0ZW0tPnVwZGF0ZSgpOworfQorCit2b2lkIFNHVXBkYXRlUXVldWU6OnNldE5vZGVC
YWNrQnVmZmVyKGludCBub2RlSUQsIGNvbnN0IFFJbWFnZSYgYmFja0J1ZmZlciwgY29uc3QgUVJl
Y3QmIHNvdXJjZVJlY3QsIGNvbnN0IFFSZWN0JiB0YXJnZXRSZWN0KQoreworICAgIG5vZGVVcGRh
dGVRdWV1ZS5hcHBlbmQoYWRvcHRQdHIobmV3IE5vZGVVcGRhdGVTZXRCYWNrQnVmZmVyKG5vZGVJ
RCwgYmFja0J1ZmZlciwgc291cmNlUmVjdCwgdGFyZ2V0UmVjdCkpKTsKKyAgICBpdGVtLT51cGRh
dGUoKTsKK30KKwordm9pZCBTR1VwZGF0ZVF1ZXVlOjpzd2FwVGlsZUJ1ZmZlcnMoKQoreworICAg
IG5vZGVVcGRhdGVRdWV1ZS5hcHBlbmQoYWRvcHRQdHIobmV3IE5vZGVVcGRhdGVTd2FwVGlsZUJ1
ZmZlcnMoKSkpOworICAgIG1faXNTd2FwUGVuZGluZyA9IHRydWU7CisgICAgaXRlbS0+dXBkYXRl
KCk7Cit9CisKK3ZvaWQgU0dVcGRhdGVRdWV1ZTo6YXBwbHlVcGRhdGVzKFFTR05vZGUqIGl0ZW1O
b2RlKQoreworICAgIHdoaWxlICghbm9kZVVwZGF0ZVF1ZXVlLmlzRW1wdHkoKSkgeworICAgICAg
ICBPd25QdHI8Tm9kZVVwZGF0ZT4gbm9kZVVwZGF0ZShub2RlVXBkYXRlUXVldWUudGFrZUZpcnN0
KCkpOworICAgICAgICBzd2l0Y2ggKG5vZGVVcGRhdGUtPnR5cGUpIHsKKyAgICAgICAgY2FzZSBO
b2RlVXBkYXRlOjpDcmVhdGVUaWxlOiB7CisgICAgICAgICAgICBOb2RlVXBkYXRlQ3JlYXRlVGls
ZSogY3JlYXRlVGlsZVVwZGF0ZSA9IHN0YXRpY19jYXN0PE5vZGVVcGRhdGVDcmVhdGVUaWxlKj4o
bm9kZVVwZGF0ZS5nZXQoKSk7CisgICAgICAgICAgICBTR1RpbGVOb2RlKiB0aWxlTm9kZSA9IG5l
dyBTR1RpbGVOb2RlKGl0ZW0tPnNjZW5lR3JhcGhFbmdpbmUoKSk7CisgICAgICAgICAgICBnZXRT
Y2FsZU5vZGUoY3JlYXRlVGlsZVVwZGF0ZS0+c2NhbGUsIGl0ZW1Ob2RlKS0+cHJlcGVuZENoaWxk
Tm9kZSh0aWxlTm9kZSk7CisgICAgICAgICAgICBub2Rlcy5zZXQoY3JlYXRlVGlsZVVwZGF0ZS0+
bm9kZUlELCB0aWxlTm9kZSk7CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgfQorICAgICAg
ICBjYXNlIE5vZGVVcGRhdGU6OlJlbW92ZVRpbGU6IHsKKyAgICAgICAgICAgIE5vZGVVcGRhdGVS
ZW1vdmVUaWxlKiByZW1vdmVVcGRhdGUgPSBzdGF0aWNfY2FzdDxOb2RlVXBkYXRlUmVtb3ZlVGls
ZSo+KG5vZGVVcGRhdGUuZ2V0KCkpOworICAgICAgICAgICAgUVNHTm9kZSogbm9kZSA9IG5vZGVz
LnRha2UocmVtb3ZlVXBkYXRlLT5ub2RlSUQpOworICAgICAgICAgICAgUVNHTm9kZSogc2NhbGVO
b2RlID0gbm9kZS0+cGFyZW50KCk7CisKKyAgICAgICAgICAgIHNjYWxlTm9kZS0+cmVtb3ZlQ2hp
bGROb2RlKG5vZGUpOworICAgICAgICAgICAgaWYgKCFzY2FsZU5vZGUtPmNoaWxkQ291bnQoKSkg
eworICAgICAgICAgICAgICAgIGlmIChzY2FsZU5vZGUgPT0gbGFzdFNjYWxlTm9kZSkgeworICAg
ICAgICAgICAgICAgICAgICBsYXN0U2NhbGUgPSAwOworICAgICAgICAgICAgICAgICAgICBsYXN0
U2NhbGVOb2RlID0gMDsKKyAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAgICAgZGVsZXRl
IHNjYWxlTm9kZTsKKyAgICAgICAgICAgIH0KKyAgICAgICAgICAgIGRlbGV0ZSBub2RlOworICAg
ICAgICAgICAgYnJlYWs7CisgICAgICAgIH0KKyAgICAgICAgY2FzZSBOb2RlVXBkYXRlOjpTZXRC
YWNrQnVmZmVyOiB7CisgICAgICAgICAgICBOb2RlVXBkYXRlU2V0QmFja0J1ZmZlciogc2V0QmFj
a0J1ZmZlclVwZGF0ZSA9IHN0YXRpY19jYXN0PE5vZGVVcGRhdGVTZXRCYWNrQnVmZmVyKj4obm9k
ZVVwZGF0ZS5nZXQoKSk7CisgICAgICAgICAgICBTR1RpbGVOb2RlKiB0aWxlTm9kZSA9IG5vZGVz
LmdldChzZXRCYWNrQnVmZmVyVXBkYXRlLT5ub2RlSUQpOworICAgICAgICAgICAgdGlsZU5vZGUt
PnNldEJhY2tCdWZmZXIoc2V0QmFja0J1ZmZlclVwZGF0ZS0+YmFja0J1ZmZlciwgc2V0QmFja0J1
ZmZlclVwZGF0ZS0+c291cmNlUmVjdCwgc2V0QmFja0J1ZmZlclVwZGF0ZS0+dGFyZ2V0UmVjdCk7
CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgfQorICAgICAgICBjYXNlIE5vZGVVcGRhdGU6
OlN3YXBUaWxlQnVmZmVyczogeworICAgICAgICAgICAgSGFzaE1hcDxpbnQsIFNHVGlsZU5vZGUq
Pjo6aXRlcmF0b3IgZW5kID0gbm9kZXMuZW5kKCk7CisgICAgICAgICAgICBmb3IgKEhhc2hNYXA8
aW50LCBTR1RpbGVOb2RlKj46Oml0ZXJhdG9yIGl0ID0gbm9kZXMuYmVnaW4oKTsgaXQgIT0gZW5k
OyArK2l0KQorICAgICAgICAgICAgICAgIGl0LT5zZWNvbmQtPnN3YXBCdWZmZXJzSWZOZWVkZWQo
KTsKKyAgICAgICAgICAgIG1faXNTd2FwUGVuZGluZyA9IGZhbHNlOworICAgICAgICAgICAgYnJl
YWs7CisgICAgICAgIH0KKyAgICAgICAgZGVmYXVsdDoKKyAgICAgICAgICAgIEFTU0VSVF9OT1Rf
UkVBQ0hFRCgpOworICAgICAgICB9CisgICAgfQorfQorCitRU0dOb2RlKiBTR1VwZGF0ZVF1ZXVl
OjpnZXRTY2FsZU5vZGUoZmxvYXQgc2NhbGUsIFFTR05vZGUqIGl0ZW1Ob2RlKQoreworICAgIGlm
IChzY2FsZSA9PSBsYXN0U2NhbGUpCisgICAgICAgIHJldHVybiBsYXN0U2NhbGVOb2RlOworCisg
ICAgUVNHVHJhbnNmb3JtTm9kZSogc2NhbGVOb2RlID0gbmV3IFFTR1RyYW5zZm9ybU5vZGU7Cisg
ICAgUU1hdHJpeDR4NCBzY2FsZU1hdHJpeDsKKyAgICAvLyBVc2Ugc2NhbGUoZmxvYXQsZmxvYXQp
IHRvIHByZXZlbnQgc2NhbGluZyB0aGUgWiBjb21wb25lbnQuCisgICAgLy8gUmV2ZXJzZSB0aGUg
aXRlbSdzIHRyYW5zZm9ybSBzY2FsZSBzaW5jZSBvdXIgdGlsZXMgd2VyZSBnZW5lcmF0ZWQgZm9y
IHRoaXMgc3BlY2lmaWMgc2NhbGUuCisgICAgc2NhbGVNYXRyaXguc2NhbGUoMSAvIHNjYWxlLCAx
IC8gc2NhbGUpOworICAgIHNjYWxlTm9kZS0+c2V0TWF0cml4KHNjYWxlTWF0cml4KTsKKyAgICAv
LyBQcmVwZW5kIGluc3RlYWQgb2YgYXBwZW5kIHRvIHBhaW50IHRoZSBuZXcsIGluY29tcGxldGUs
IHNjYWxlIGJlZm9yZS9iZWhpbmQgdGhlIHByZXZpb3VzIG9uZS4KKyAgICBpdGVtTm9kZS0+cHJl
cGVuZENoaWxkTm9kZShzY2FsZU5vZGUpOworCisgICAgbGFzdFNjYWxlID0gc2NhbGU7CisgICAg
bGFzdFNjYWxlTm9kZSA9IHNjYWxlTm9kZTsKKyAgICByZXR1cm4gbGFzdFNjYWxlTm9kZTsKK30K
KworfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL3F0L1NHVXBkYXRlUXVl
dWUuaCBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9xdC9TR1VwZGF0ZVF1ZXVlLmgKbmV3IGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMC4uYmI1Yzc5ODFiMmRjOTRmNjA1NTE2MzcwMDEwNmZiZTc5NTQyNTRkNAotLS0gL2Rldi9u
dWxsCisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9xdC9TR1VwZGF0ZVF1ZXVlLmgKQEAg
LTAsMCArMSw4MiBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxMSBOb2tpYSBDb3Jwb3JhdGlv
biBhbmQvb3IgaXRzIHN1YnNpZGlhcnkoLWllcykKKyAqCisgKiBUaGlzIGxpYnJhcnkgaXMgZnJl
ZSBzb2Z0d2FyZTsgeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yCisgKiBtb2RpZnkgaXQg
dW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgTGlicmFyeSBHZW5lcmFsIFB1YmxpYworICogTGlj
ZW5zZSBhcyBwdWJsaXNoZWQgYnkgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVy
CisgKiB2ZXJzaW9uIDIgb2YgdGhlIExpY2Vuc2UsIG9yIChhdCB5b3VyIG9wdGlvbikgYW55IGxh
dGVyIHZlcnNpb24uCisgKgorICogVGhpcyBwcm9ncmFtIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBo
b3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsCisgKiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7
IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZgorICogTUVSQ0hBTlRBQklMSVRZ
IG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiAgU2VlIHRoZSBHTlUKKyAqIExp
YnJhcnkgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgorICoKKyAqIFlv
dSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBMaWJyYXJ5IEdlbmVyYWwg
UHVibGljIExpY2Vuc2UKKyAqIGFsb25nIHdpdGggdGhpcyBwcm9ncmFtOyBzZWUgdGhlIGZpbGUg
Q09QWUlORy5MSUIuICBJZiBub3QsIHdyaXRlIHRvCisgKiB0aGUgRnJlZSBTb2Z0d2FyZSBGb3Vu
ZGF0aW9uLCBJbmMuLCA1MSBGcmFua2xpbiBTdHJlZXQsIEZpZnRoIEZsb29yLAorICogQm9zdG9u
LCBNQSAwMjExMC0xMzAxLCBVU0EuCisgKgorICovCisKKyNpZm5kZWYgU0dVcGRhdGVRdWV1ZV9o
CisjZGVmaW5lIFNHVXBkYXRlUXVldWVfaAorCisjaW5jbHVkZSAiRGVxdWUuaCIKKyNpbmNsdWRl
ICJIYXNoTWFwLmgiCisjaW5jbHVkZSAiT3duUHRyLmgiCisKK2NsYXNzIFFJbWFnZTsKK2NsYXNz
IFFSZWN0OworY2xhc3MgUVNHSXRlbTsKK2NsYXNzIFFTR05vZGU7CitjbGFzcyBRU2l6ZTsKKwor
bmFtZXNwYWNlIFdlYktpdCB7CisKK2NsYXNzIE5vZGVVcGRhdGU7CitjbGFzcyBQYWdlTm9kZTsK
K2NsYXNzIFNHVGlsZU5vZGU7CisKKy8vIFRha2VzIGNhcmUgb2YgdGFraW5nIHVwZGF0ZSByZXF1
ZXN0cyB0aGVuIGZ1bGZpbGxpbmcgdGhlbSBhc3luY2hyb25vdXNseSBvbiB0aGUgc2NlbmUgZ3Jh
cGggdGhyZWFkLgorY2xhc3MgU0dVcGRhdGVRdWV1ZSB7CitwdWJsaWM6CisgICAgU0dVcGRhdGVR
dWV1ZShRU0dJdGVtKik7CisKKyAgICBpbnQgY3JlYXRlVGlsZU5vZGUoZmxvYXQgc2NhbGUpOwor
ICAgIHZvaWQgcmVtb3ZlVGlsZU5vZGUoaW50IG5vZGVJRCk7CisgICAgdm9pZCBzZXROb2RlQmFj
a0J1ZmZlcihpbnQgbm9kZUlELCBjb25zdCBRSW1hZ2UmIHRleHR1cmUsIGNvbnN0IFFSZWN0JiBz
b3VyY2VSZWN0LCBjb25zdCBRUmVjdCYgdGFyZ2V0UmVjdCk7CisgICAgdm9pZCBzd2FwVGlsZUJ1
ZmZlcnMoKTsKKworICAgIC8vIENhbGxlZCBieSB0aGUgUVNHSXRlbS4KKyAgICB2b2lkIGFwcGx5
VXBkYXRlcyhRU0dOb2RlKiBpdGVtTm9kZSk7CisgICAgYm9vbCBpc1N3YXBQZW5kaW5nKCkgY29u
c3QgeyByZXR1cm4gbV9pc1N3YXBQZW5kaW5nOyB9CisKK3ByaXZhdGU6CisgICAgUVNHTm9kZSog
Z2V0U2NhbGVOb2RlKGZsb2F0IHNjYWxlLCBRU0dOb2RlKiBpdGVtTm9kZSk7CisKKyAgICBRU0dJ
dGVtKiBpdGVtOworICAgIERlcXVlPE93blB0cjxOb2RlVXBkYXRlPiA+IG5vZGVVcGRhdGVRdWV1
ZTsKKyAgICBIYXNoTWFwPGludCwgU0dUaWxlTm9kZSo+IG5vZGVzOworICAgIGZsb2F0IGxhc3RT
Y2FsZTsKKyAgICBRU0dOb2RlKiBsYXN0U2NhbGVOb2RlOworICAgIGludCBuZXh0Tm9kZUlEOwor
ICAgIGJvb2wgbV9pc1N3YXBQZW5kaW5nOworfTsKKworc3RydWN0IE5vZGVVcGRhdGUgeworICAg
IGVudW0gVHlwZSB7CisgICAgICAgIENyZWF0ZVRpbGUsCisgICAgICAgIFJlbW92ZVRpbGUsCisg
ICAgICAgIFNldEJhY2tCdWZmZXIsCisgICAgICAgIFN3YXBUaWxlQnVmZmVycworICAgIH07Cisg
ICAgTm9kZVVwZGF0ZShUeXBlIHR5cGUpCisgICAgICAgIDogdHlwZSh0eXBlKQorICAgIHsgfQor
ICAgIHZpcnR1YWwgfk5vZGVVcGRhdGUoKSB7IH0KKyAgICBUeXBlIHR5cGU7Cit9OworCit9CisK
KyNlbmRpZiAvKiBTR1VwZGF0ZVF1ZXVlX2ggKi8KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQy
L1VJUHJvY2Vzcy9xdC9UaWxlZERyYXdpbmdBcmVhUHJveHlRdC5jcHAgYi9Tb3VyY2UvV2ViS2l0
Mi9VSVByb2Nlc3MvcXQvVGlsZWREcmF3aW5nQXJlYVByb3h5UXQuY3BwCmluZGV4IDk3ZGY2ZWM0
NGMxYzdkYjRiNTBhYWZlNDU3MGY3NjM1M2YxYjM0MjQuLjMyYzE3YTdlY2FlN2IxNjVhYWY3ZWY3
NTdmOTU0NjUxOWIxN2EzMTYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9x
dC9UaWxlZERyYXdpbmdBcmVhUHJveHlRdC5jcHAKKysrIGIvU291cmNlL1dlYktpdDIvVUlQcm9j
ZXNzL3F0L1RpbGVkRHJhd2luZ0FyZWFQcm94eVF0LmNwcApAQCAtMjYsNyArMjYsNyBAQAogI2lu
Y2x1ZGUgImNvbmZpZy5oIgogI2luY2x1ZGUgIlRpbGVkRHJhd2luZ0FyZWFQcm94eS5oIgogCi0j
aW5jbHVkZSAiU0dBZ2VudC5oIgorI2luY2x1ZGUgIlNHVXBkYXRlUXVldWUuaCIKICNpbmNsdWRl
ICJTaGFyZWFibGVCaXRtYXAuaCIKICNpbmNsdWRlICJUb3VjaFZpZXdJbnRlcmZhY2UuaCIKICNp
bmNsdWRlICJVcGRhdGVJbmZvLmgiCkBAIC00MSw3ICs0MSw3IEBAIG5hbWVzcGFjZSBXZWJLaXQg
ewogCiB2b2lkIFRpbGVkRHJhd2luZ0FyZWFQcm94eTo6dXBkYXRlV2ViVmlldyhjb25zdCBWZWN0
b3I8SW50UmVjdD4mIHBhaW50ZWRBcmVhKQogewotICAgIC8vIFNHIHVwZGF0ZXMgYXJlIHRyaWdn
ZXJlZCB0aHJvdWdoIFNHQWdlbnQuCisgICAgLy8gU0cgdXBkYXRlcyBhcmUgdHJpZ2dlcmVkIHRo
cm91Z2ggU0dVcGRhdGVRdWV1ZS4KIH0KIAogV2ViUGFnZVByb3h5KiBUaWxlZERyYXdpbmdBcmVh
UHJveHk6OnBhZ2UoKQpAQCAtNTEsNyArNTEsNyBAQCBXZWJQYWdlUHJveHkqIFRpbGVkRHJhd2lu
Z0FyZWFQcm94eTo6cGFnZSgpCiAKIHZvaWQgVGlsZWREcmF3aW5nQXJlYVByb3h5OjpjcmVhdGVU
aWxlKGludCB0aWxlSUQsIGNvbnN0IFVwZGF0ZUluZm8mIHVwZGF0ZUluZm8pCiB7Ci0gICAgaW50
IG5vZGVJRCA9IG1fd2ViVmlldy0+c2NlbmVHcmFwaEFnZW50KCktPmNyZWF0ZVRpbGVOb2RlKHVw
ZGF0ZUluZm8udXBkYXRlU2NhbGVGYWN0b3IpOworICAgIGludCBub2RlSUQgPSBtX3dlYlZpZXct
PnNjZW5lR3JhcGhVcGRhdGVRdWV1ZSgpLT5jcmVhdGVUaWxlTm9kZSh1cGRhdGVJbmZvLnVwZGF0
ZVNjYWxlRmFjdG9yKTsKICAgICBtX3RpbGVOb2RlTWFwLnNldCh0aWxlSUQsIG5vZGVJRCk7CiAg
ICAgdXBkYXRlVGlsZSh0aWxlSUQsIHVwZGF0ZUluZm8pOwogfQpAQCAtNjYsMTggKzY2LDE4IEBA
IHZvaWQgVGlsZWREcmF3aW5nQXJlYVByb3h5Ojp1cGRhdGVUaWxlKGludCB0aWxlSUQsIGNvbnN0
IFVwZGF0ZUluZm8mIHVwZGF0ZUluZm8pCiAgICAgLy8gQ3VycmVudGx5IHdvbid0IHdvcmsgc2lu
Y2UgdGhlIFNoYXJlZE1lbW9yeSBoYW5kbGUgaXMgb3duZWQgYnkgdXBkYXRlSW5mby4KICAgICBR
SW1hZ2UgaW1hZ2UoYml0bWFwLT5jcmVhdGVRSW1hZ2UoKS5jb3B5KCkpOwogICAgIFFSZWN0IHNv
dXJjZVJlY3QoMCwgMCwgdXBkYXRlSW5mby51cGRhdGVSZWN0Qm91bmRzLndpZHRoKCksIHVwZGF0
ZUluZm8udXBkYXRlUmVjdEJvdW5kcy5oZWlnaHQoKSk7Ci0gICAgbV93ZWJWaWV3LT5zY2VuZUdy
YXBoQWdlbnQoKS0+c2V0Tm9kZUJhY2tCdWZmZXIobm9kZUlELCBpbWFnZSwgc291cmNlUmVjdCwg
dXBkYXRlSW5mby51cGRhdGVSZWN0Qm91bmRzKTsKKyAgICBtX3dlYlZpZXctPnNjZW5lR3JhcGhV
cGRhdGVRdWV1ZSgpLT5zZXROb2RlQmFja0J1ZmZlcihub2RlSUQsIGltYWdlLCBzb3VyY2VSZWN0
LCB1cGRhdGVJbmZvLnVwZGF0ZVJlY3RCb3VuZHMpOwogfQogCiB2b2lkIFRpbGVkRHJhd2luZ0Fy
ZWFQcm94eTo6ZGlkUmVuZGVyRnJhbWUoKQogewotICAgIG1fd2ViVmlldy0+c2NlbmVHcmFwaEFn
ZW50KCktPnN3YXBUaWxlQnVmZmVycygpOworICAgIG1fd2ViVmlldy0+c2NlbmVHcmFwaFVwZGF0
ZVF1ZXVlKCktPnN3YXBUaWxlQnVmZmVycygpOwogfQogCiB2b2lkIFRpbGVkRHJhd2luZ0FyZWFQ
cm94eTo6cmVtb3ZlVGlsZShpbnQgdGlsZUlEKQogewogICAgIGludCBub2RlSUQgPSBtX3RpbGVO
b2RlTWFwLnRha2UodGlsZUlEKTsKLSAgICBtX3dlYlZpZXctPnNjZW5lR3JhcGhBZ2VudCgpLT5y
ZW1vdmVUaWxlTm9kZShub2RlSUQpOworICAgIG1fd2ViVmlldy0+c2NlbmVHcmFwaFVwZGF0ZVF1
ZXVlKCktPnJlbW92ZVRpbGVOb2RlKG5vZGVJRCk7CiB9CiAKIH0gLy8gbmFtZXNwYWNlIFdlYktp
dApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL3F0L1RvdWNoVmlld0ludGVy
ZmFjZS5jcHAgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvcXQvVG91Y2hWaWV3SW50ZXJmYWNl
LmNwcAppbmRleCAxYjM0YTM0MGMyNmY2NThjNDFmODc1ZTg2MGYxZjY4Y2M0MGRhMzI1Li45MTMz
NzAxMDZjM2RjMmY2YTJjYTg2MGU0NmFhOWVhNzY2M2FmNzYxIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViS2l0Mi9VSVByb2Nlc3MvcXQvVG91Y2hWaWV3SW50ZXJmYWNlLmNwcAorKysgYi9Tb3VyY2Uv
V2ViS2l0Mi9VSVByb2Nlc3MvcXQvVG91Y2hWaWV3SW50ZXJmYWNlLmNwcApAQCAtNDAsOSArNDAs
OSBAQCB2b2lkIFRvdWNoVmlld0ludGVyZmFjZTo6ZGlkRmluZFpvb21hYmxlQXJlYShjb25zdCBR
UG9pbnQmLCBjb25zdCBRUmVjdCYpCiB7CiB9CiAKLVNHQWdlbnQqIFRvdWNoVmlld0ludGVyZmFj
ZTo6c2NlbmVHcmFwaEFnZW50KCkgY29uc3QKK1NHVXBkYXRlUXVldWUqIFRvdWNoVmlld0ludGVy
ZmFjZTo6c2NlbmVHcmFwaFVwZGF0ZVF1ZXVlKCkgY29uc3QKIHsKLSAgICByZXR1cm4gJm1fcGFn
ZVZpZXctPmQtPnNnQWdlbnQ7CisgICAgcmV0dXJuICZtX3BhZ2VWaWV3LT5kLT5zZ1VwZGF0ZVF1
ZXVlOwogfQogCiB2b2lkIFRvdWNoVmlld0ludGVyZmFjZTo6c2V0Vmlld05lZWRzRGlzcGxheShj
b25zdCBRUmVjdCYpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvcXQvVG91
Y2hWaWV3SW50ZXJmYWNlLmggYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvcXQvVG91Y2hWaWV3
SW50ZXJmYWNlLmgKaW5kZXggOTcyOWQ2N2MxNDMzNTg0MmJiNjMwODU5ZWYyOTRiZTY2MGQ2MzM4
YS4uYzBkZjBmYjcwZDIzZjJiMGUyZDQ2YzY2YjQyY2QzYzlkZWNkZjIzOCAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYktpdDIvVUlQcm9jZXNzL3F0L1RvdWNoVmlld0ludGVyZmFjZS5oCisrKyBiL1Nv
dXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9xdC9Ub3VjaFZpZXdJbnRlcmZhY2UuaApAQCAtMzMsMTQg
KzMzLDE0IEBAIGNsYXNzIFZpZXdwb3J0QXJndW1lbnRzOwogCiBuYW1lc3BhY2UgV2ViS2l0IHsK
IAotY2xhc3MgU0dBZ2VudDsKK2NsYXNzIFNHVXBkYXRlUXVldWU7CiAKIGNsYXNzIFRvdWNoVmll
d0ludGVyZmFjZSA6IHB1YmxpYyBWaWV3SW50ZXJmYWNlCiB7CiBwdWJsaWM6CiAgICAgVG91Y2hW
aWV3SW50ZXJmYWNlKFFUb3VjaFdlYlZpZXcqIHZpZXdwb3J0VmlldywgUVRvdWNoV2ViUGFnZSog
cGFnZVZpZXcpOwogCi0gICAgU0dBZ2VudCogc2NlbmVHcmFwaEFnZW50KCkgY29uc3Q7CisgICAg
U0dVcGRhdGVRdWV1ZSogc2NlbmVHcmFwaFVwZGF0ZVF1ZXVlKCkgY29uc3Q7CiAKIHByaXZhdGU6
CiAgICAgLyogSW1wbGVtZW50YXRpb24gb2YgVmlld0ludGVyZmFjZSAqLwpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYktpdDIvV2ViS2l0Mi5wcm8gYi9Tb3VyY2UvV2ViS2l0Mi9XZWJLaXQyLnBybwpp
bmRleCA3NGQ4OGY2Yjk5MzY0NGMwNzg5M2EyNWFmYmEwMjY5NzBkMTk1ZDY4Li45M2I4YzFlYWEx
NmYwOWE4NDM2YWJhOGI0NjU2ODE5NTJjODZkYmM5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0
Mi9XZWJLaXQyLnBybworKysgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJLaXQyLnBybwpAQCAtMjQ4LDcg
KzI0OCw3IEBAIEhFQURFUlMgKz0gXAogICAgIFVJUHJvY2Vzcy9xdC9xd2toaXN0b3J5X3AuaCBc
CiAgICAgVUlQcm9jZXNzL3F0L3F3a3ByZWZlcmVuY2VzLmggXAogICAgIFVJUHJvY2Vzcy9xdC9x
d2twcmVmZXJlbmNlc19wLmggXAotICAgIFVJUHJvY2Vzcy9xdC9TR0FnZW50LmggXAorICAgIFVJ
UHJvY2Vzcy9xdC9TR1VwZGF0ZVF1ZXVlLmggXAogICAgIFVJUHJvY2Vzcy9xdC9TR1RpbGVOb2Rl
LmggXAogICAgIFVJUHJvY2Vzcy9xdC9WaWV3SW50ZXJmYWNlLmggXAogICAgIFVJUHJvY2Vzcy9x
dC9WaWV3cG9ydEludGVyYWN0aW9uRW5naW5lLmggXApAQCAtNDc3LDcgKzQ3Nyw3IEBAIFNPVVJD
RVMgKz0gXAogICAgIFVJUHJvY2Vzcy9xdC9RdFdlYlBhZ2VQcm94eS5jcHAgXAogICAgIFVJUHJv
Y2Vzcy9xdC9xd2toaXN0b3J5LmNwcCBcCiAgICAgVUlQcm9jZXNzL3F0L3F3a3ByZWZlcmVuY2Vz
LmNwcCBcCi0gICAgVUlQcm9jZXNzL3F0L1NHQWdlbnQuY3BwIFwKKyAgICBVSVByb2Nlc3MvcXQv
U0dVcGRhdGVRdWV1ZS5jcHAgXAogICAgIFVJUHJvY2Vzcy9xdC9TR1RpbGVOb2RlLmNwcCBcCiAg
ICAgVUlQcm9jZXNzL3F0L1RpbGVkRHJhd2luZ0FyZWFQcm94eVF0LmNwcCBcCiAgICAgVUlQcm9j
ZXNzL3F0L1RleHRDaGVja2VyUXQuY3BwIFwK
</data>
<flag name="review"
          id="101654"
          type_id="1"
          status="+"
          setter="vestbo"
    />
          </attachment>
      

    </bug>

</bugzilla>