<?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>82941</bug_id>
          
          <creation_ts>2012-04-02 13:38:00 -0700</creation_ts>
          <short_desc>We should use CSSPropertyID rather than integers when manipulating CSS property ids.</short_desc>
          <delta_ts>2012-04-04 06:56:16 -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>CSS</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>All</rep_platform>
          <op_sys>All</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="Alexis Menard (darktears)">menard</reporter>
          <assigned_to name="Alexis Menard (darktears)">menard</assigned_to>
          <cc>kling</cc>
    
    <cc>koivisto</cc>
    
    <cc>macpherson</cc>
    
    <cc>tony</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>593779</commentid>
    <comment_count>0</comment_count>
    <who name="Alexis Menard (darktears)">menard</who>
    <bug_when>2012-04-02 13:38:00 -0700</bug_when>
    <thetext>We should use CSSPropertyID rather than integers when manipulating CSS property ids.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>593803</commentid>
    <comment_count>1</comment_count>
      <attachid>135177</attachid>
    <who name="Alexis Menard (darktears)">menard</who>
    <bug_when>2012-04-02 13:56:26 -0700</bug_when>
    <thetext>Created attachment 135177
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>593805</commentid>
    <comment_count>2</comment_count>
    <who name="Alexis Menard (darktears)">menard</who>
    <bug_when>2012-04-02 13:57:35 -0700</bug_when>
    <thetext>(In reply to comment #1)
&gt; Created an attachment (id=135177) [details]
&gt; Patch

It&apos;s quite a big change at the end, I&apos;m willing to it but I want to make sure people agree that it will make the code nicer.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>593807</commentid>
    <comment_count>3</comment_count>
    <who name="Alexis Menard (darktears)">menard</who>
    <bug_when>2012-04-02 13:58:05 -0700</bug_when>
    <thetext>(In reply to comment #2)
&gt; (In reply to comment #1)
&gt; &gt; Created an attachment (id=135177) [details] [details]
&gt; &gt; Patch
&gt; 
&gt; It&apos;s quite a big change at the end, I&apos;m willing to it but I want to make sure people agree that it will make the code nicer.

big change I mean because there will be more patches.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>593915</commentid>
    <comment_count>4</comment_count>
      <attachid>135177</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-04-02 15:30:22 -0700</bug_when>
    <thetext>Comment on attachment 135177
Patch

Clearing flags on attachment: 135177

Committed r112952: &lt;http://trac.webkit.org/changeset/112952&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>593916</commentid>
    <comment_count>5</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-04-02 15:30:27 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>595509</commentid>
    <comment_count>6</comment_count>
    <who name="Alexis Menard (darktears)">menard</who>
    <bug_when>2012-04-04 06:56:16 -0700</bug_when>
    <thetext>(In reply to comment #5)
&gt; All reviewed patches have been landed.  Closing bug.

https://bugs.webkit.org/show_bug.cgi?id=83151 fixes variable names removed too aggressively in some .h files.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>135177</attachid>
            <date>2012-04-02 13:56:26 -0700</date>
            <delta_ts>2012-04-02 15:30:21 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-82941-20120402175607.patch</filename>
            <type>text/plain</type>
            <size>22765</size>
            <attacher name="Alexis Menard (darktears)">menard</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTEyOTE0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYmM2YWViODExYTgyYjRj
NzIzZTBhNTQzZGYyYmFmN2I0NjVjYTgwZS4uYmI4MjE1NTZmZGQyMjdkN2E2Y2I5NGNlMGJmZWRh
YjU4NjE1MmJhZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSw1ICsxLDU4IEBACiAyMDEyLTA0LTAyICBBbGV4
aXMgTWVuYXJkICA8YWxleGlzLm1lbmFyZEBvcGVuYm9zc2Eub3JnPgogCisgICAgICAgIFdlIHNo
b3VsZCB1c2UgQ1NTUHJvcGVydHlJRCByYXRoZXIgdGhhbiBpbnRlZ2VycyB3aGVuIG1hbmlwdWxh
dGluZyBDU1MgcHJvcGVydHkgaWRzLgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9z
aG93X2J1Zy5jZ2k/aWQ9ODI5NDEKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMh
KS4KKworICAgICAgICBDU1NQcm9wZXJ0eUlEIGVudW0gaG9sZHMgYWxsIHRoZSBDU1MgcHJvcGVy
dHkgaWRzIGJ1dCBtYW55IHBhcnRzIG9mIFdlYktpdCB0cmVhdCB0aGUgaWRzCisgICAgICAgIGFz
IGludGVnZXJzLiBXaGlsZSBpdCdzIG5vdCBpbmNvcnJlY3QgaXQgaXMgbmljZXIgdG8gdXNlIHRo
ZSBlbnVtIGFzIGEgcGFyYW1ldGVyIG9mCisgICAgICAgIGZ1bmN0aW9ucyBtYW5pcHVsYXRpbmcg
cHJvcGVydHkgaWRzLCBhcyB3ZSBlbnN1cmUgdGhhdCB0aGUgdmFsdWUgcGFzc2VkIHdpbGwgYmUg
YW4KKyAgICAgICAgZXhpc3RpbmcgdmFsdWUuIEl0IHdpbGwgYWxzbyBmZWVsIG1vcmUgY29ycmVj
dCBhZnRlciB0aGlzIHBhdGNoIHRoYXQgQ1NTUHJvcGVydHk6OmlkKCkKKyAgICAgICAgcmV0dXJu
IGEgdmFsdWUgb2YgdGhlIGVudW0gcmF0aGVyIHRoYW4gYW4gaW50ZWdlci4gQXMgdGhpcyBtb2Rp
ZmljYXRpb24gaXMgcXVpdGUgYmlnIHRoaXMKKyAgICAgICAgaXMgdGhlIGZpcnN0IHBhcnQgb25s
eSBzbyBpdCB3aWxsIGJlIGVhc2llciB0byByZXZpZXcuCisKKyAgICAgICAgTm8gbmV3IHRlc3Rz
IDogVGhlcmUgc2hvdWxkIGJlIG5vIGJlaGF2aW9yIGNoYW5nZSBpbiB0aGlzIHBhdGNoLgorCisg
ICAgICAgICogY3NzL0NTU1BhcnNlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpjc3NQcm9wZXJ0
eUlEKToKKyAgICAgICAgKiBjc3MvQ1NTUGFyc2VyLmg6CisgICAgICAgIChXZWJDb3JlKToKKyAg
ICAgICAgKiBjc3MvQ1NTUHJvcGVydHkuY3BwOgorICAgICAgICAoV2ViQ29yZTo6Q1NTUHJvcGVy
dHk6OmNzc1RleHQpOgorICAgICAgICAqIGNzcy9DU1NQcm9wZXJ0eS5oOgorICAgICAgICAoV2Vi
Q29yZTo6Q1NTUHJvcGVydHk6OmlkKToKKyAgICAgICAgKFdlYkNvcmU6OkNTU1Byb3BlcnR5Ojpz
aG9ydGhhbmRJRCk6CisgICAgICAgICogY3NzL1Byb3BlcnR5U2V0Q1NTU3R5bGVEZWNsYXJhdGlv
bi5jcHA6CisgICAgICAgIChXZWJDb3JlOjpQcm9wZXJ0eVNldENTU1N0eWxlRGVjbGFyYXRpb246
Oml0ZW0pOgorICAgICAgICAoV2ViQ29yZTo6UHJvcGVydHlTZXRDU1NTdHlsZURlY2xhcmF0aW9u
OjpnZXRQcm9wZXJ0eUNTU1ZhbHVlKToKKyAgICAgICAgKFdlYkNvcmU6OlByb3BlcnR5U2V0Q1NT
U3R5bGVEZWNsYXJhdGlvbjo6Z2V0UHJvcGVydHlWYWx1ZSk6CisgICAgICAgIChXZWJDb3JlOjpQ
cm9wZXJ0eVNldENTU1N0eWxlRGVjbGFyYXRpb246OmdldFByb3BlcnR5UHJpb3JpdHkpOgorICAg
ICAgICAoV2ViQ29yZTo6UHJvcGVydHlTZXRDU1NTdHlsZURlY2xhcmF0aW9uOjpnZXRQcm9wZXJ0
eVNob3J0aGFuZCk6CisgICAgICAgIChXZWJDb3JlOjpQcm9wZXJ0eVNldENTU1N0eWxlRGVjbGFy
YXRpb246OmlzUHJvcGVydHlJbXBsaWNpdCk6CisgICAgICAgICogY3NzL1N0eWxlUHJvcGVydHlT
ZXQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6U3R5bGVQcm9wZXJ0eVNldDo6Z2V0UHJvcGVydHlW
YWx1ZSk6CisgICAgICAgIChXZWJDb3JlOjpTdHlsZVByb3BlcnR5U2V0OjphcHBlbmRGb250TG9u
Z2hhbmRWYWx1ZUlmRXhwbGljaXQpOgorICAgICAgICAoV2ViQ29yZTo6U3R5bGVQcm9wZXJ0eVNl
dDo6cHJvcGVydHlJc0ltcG9ydGFudCk6CisgICAgICAgIChXZWJDb3JlOjpTdHlsZVByb3BlcnR5
U2V0OjpnZXRQcm9wZXJ0eVNob3J0aGFuZCk6CisgICAgICAgIChXZWJDb3JlOjpTdHlsZVByb3Bl
cnR5U2V0Ojppc1Byb3BlcnR5SW1wbGljaXQpOgorICAgICAgICAoV2ViQ29yZTo6U3R5bGVQcm9w
ZXJ0eVNldDo6YXNUZXh0KToKKyAgICAgICAgKiBjc3MvU3R5bGVQcm9wZXJ0eVNldC5oOgorICAg
ICAgICAoU3R5bGVQcm9wZXJ0eVNldCk6CisgICAgICAgICogZWRpdGluZy9FZGl0aW5nU3R5bGUu
Y3BwOgorICAgICAgICAoV2ViQ29yZTo6RWRpdGluZ1N0eWxlOjpjb25mbGljdHNXaXRoSW5saW5l
U3R5bGVPZkVsZW1lbnQpOgorICAgICAgICAoV2ViQ29yZTo6cmVtb3ZlUHJvcGVydGllc0luU3R5
bGUpOgorICAgICAgICAoV2ViQ29yZTo6c2V0VGV4dERlY29yYXRpb25Qcm9wZXJ0eSk6CisgICAg
ICAgIChXZWJDb3JlOjpkaWZmVGV4dERlY29yYXRpb25zKToKKyAgICAgICAgKiBlZGl0aW5nL0Vk
aXRvci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpFZGl0b3I6OnNlbGVjdGlvblN0YXJ0Q1NTUHJv
cGVydHlWYWx1ZSk6CisgICAgICAgICogZWRpdGluZy9FZGl0b3IuaDoKKyAgICAgICAgKEVkaXRv
cik6CisgICAgICAgICogZWRpdGluZy9FZGl0b3JDb21tYW5kLmNwcDoKKyAgICAgICAgKFdlYkNv
cmU6OnZhbHVlU3R5bGUpOgorCisyMDEyLTA0LTAyICBBbGV4aXMgTWVuYXJkICA8YWxleGlzLm1l
bmFyZEBvcGVuYm9zc2Eub3JnPgorCiAgICAgICAgIFJlbmFtZSBDU1NQcm9wZXJ0eUxvbmdoYW5k
IGZpbGVzIHRvIFN0eWxlUHJvcGVydHlTaG9ydGhhbmQuCiAgICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD04MjkwNQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
S2l0L3F0L0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvcXQvQ2hhbmdlTG9nCmluZGV4IGFlYTZk
NTM3N2NkMThjNzY5MWVkNGQ3M2E0Yjg2NzU0YzlhYzNlZGMuLmVmMjdjMWMxMTg3MDcyMzllNDNl
MTQwMGZiYTZjYzYyZDI3NDlhZjQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvcXQvQ2hhbmdl
TG9nCisrKyBiL1NvdXJjZS9XZWJLaXQvcXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjEgQEAKKzIw
MTItMDQtMDIgIEFsZXhpcyBNZW5hcmQgIDxhbGV4aXMubWVuYXJkQG9wZW5ib3NzYS5vcmc+CisK
KyAgICAgICAgV2Ugc2hvdWxkIHVzZSBDU1NQcm9wZXJ0eUlEIHJhdGhlciB0aGFuIGludGVnZXJz
IHdoZW4gbWFuaXB1bGF0aW5nIENTUyBwcm9wZXJ0eSBpZHMuCisgICAgICAgIGh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD04Mjk0MQorCisgICAgICAgIFJldmlld2VkIGJ5
IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIENTU1Byb3BlcnR5SUQgZW51bSBob2xkcyBhbGwg
dGhlIENTUyBwcm9wZXJ0eSBpZHMgYnV0IG1hbnkgcGFydHMgb2YgV2ViS2l0IHRyZWF0IHRoZSBp
ZHMKKyAgICAgICAgYXMgaW50ZWdlcnMuIFdoaWxlIGl0J3Mgbm90IGluY29ycmVjdCBpdCBpcyBu
aWNlciB0byB1c2UgdGhlIGVudW0gYXMgYSBwYXJhbWV0ZXIgb2YKKyAgICAgICAgZnVuY3Rpb25z
IG1hbmlwdWxhdGluZyBwcm9wZXJ0eSBpZHMsIGFzIHdlIGVuc3VyZSB0aGF0IHRoZSB2YWx1ZSBw
YXNzZWQgd2lsbCBiZSBhbgorICAgICAgICBleGlzdGluZyB2YWx1ZS4gSXQgd2lsbCBhbHNvIGZl
ZWwgbW9yZSBjb3JyZWN0IGFmdGVyIHRoaXMgcGF0Y2ggdGhhdCBDU1NQcm9wZXJ0eTo6aWQoKQor
ICAgICAgICByZXR1cm4gYSB2YWx1ZSBvZiB0aGUgZW51bSByYXRoZXIgdGhhbiBhbiBpbnRlZ2Vy
LiBBcyB0aGlzIG1vZGlmaWNhdGlvbiBpcyBxdWl0ZSBiaWcgdGhpcworICAgICAgICBpcyB0aGUg
Zmlyc3QgcGFydCBvbmx5IHNvIGl0IHdpbGwgYmUgZWFzaWVyIHRvIHJldmlldy4KKworICAgICAg
ICAqIEFwaS9xd2ViZWxlbWVudC5jcHA6CisgICAgICAgIChRV2ViRWxlbWVudDo6c3R5bGVQcm9w
ZXJ0eSk6IEFkYXB0IHRvIHRoZSBBUEkgY2hhbmdlIGFuZCBhbHNvIHJlbW92ZSBhbiB1bmVjZXNz
YXJ5IG5hbWUtPmlkCisgICAgICAgIGNvbnZlcnNpb24uCisKIDIwMTItMDQtMDIgIENhc3BlciB2
YW4gRG9uZGVyZW4gIDxjYXNwZXIudmFuZG9uZGVyZW5Abm9raWEuY29tPgogCiAgICAgICAgIFF0
OiBEb2M6IEZpeCB0eXBvIHdoaWNoIG1hcmtzIGRvY3VtZW50IHRvIGJlIHByaW50ZWQgaW4gY29u
c29sZSBmb250LgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU1BhcnNlci5jcHAg
Yi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTUGFyc2VyLmNwcAppbmRleCBhMzNkYmRmODk2NDNkNWVm
YjhjMjZkYjExODhkOTBkMWY0NDQ3NDY2Li43OGMyOTVmYTJmM2NhOGY5NDAzMWJmNDI3YTBiZmYx
ODkzZjVhYjZhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTUGFyc2VyLmNwcAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTUGFyc2VyLmNwcApAQCAtOTM0MywxOSArOTM0Mywx
OSBAQCB2b2lkIENTU1BhcnNlcjo6bWFya1Byb3BlcnR5RW5kKGJvb2wgaXNJbXBvcnRhbnRGb3Vu
ZCwgYm9vbCBpc1Byb3BlcnR5UGFyc2VkKQogICAgIHJlc2V0UHJvcGVydHlNYXJrcygpOwogfQog
Ci1zdGF0aWMgaW50IGNzc1Byb3BlcnR5SUQoY29uc3QgVUNoYXIqIHByb3BlcnR5TmFtZSwgdW5z
aWduZWQgbGVuZ3RoKQorc3RhdGljIENTU1Byb3BlcnR5SUQgY3NzUHJvcGVydHlJRChjb25zdCBV
Q2hhciogcHJvcGVydHlOYW1lLCB1bnNpZ25lZCBsZW5ndGgpCiB7CiAgICAgaWYgKCFsZW5ndGgp
Ci0gICAgICAgIHJldHVybiAwOworICAgICAgICByZXR1cm4gQ1NTUHJvcGVydHlJbnZhbGlkOwog
ICAgIGlmIChsZW5ndGggPiBtYXhDU1NQcm9wZXJ0eU5hbWVMZW5ndGgpCi0gICAgICAgIHJldHVy
biAwOworICAgICAgICByZXR1cm4gQ1NTUHJvcGVydHlJbnZhbGlkOwogCiAgICAgY2hhciBidWZm
ZXJbbWF4Q1NTUHJvcGVydHlOYW1lTGVuZ3RoICsgMSArIDFdOyAvLyAxIHRvIHR1cm4gImFwcGxl
Ii8ia2h0bWwiIGludG8gIndlYmtpdCIsIDEgZm9yIG51bGwgY2hhcmFjdGVyCiAKICAgICBmb3Ig
KHVuc2lnbmVkIGkgPSAwOyBpICE9IGxlbmd0aDsgKytpKSB7CiAgICAgICAgIFVDaGFyIGMgPSBw
cm9wZXJ0eU5hbWVbaV07CiAgICAgICAgIGlmIChjID09IDAgfHwgYyA+PSAweDdGKQotICAgICAg
ICAgICAgcmV0dXJuIDA7IC8vIGlsbGVnYWwgY2hhcmFjdGVyCisgICAgICAgICAgICByZXR1cm4g
Q1NTUHJvcGVydHlJbnZhbGlkOyAvLyBpbGxlZ2FsIGNoYXJhY3RlcgogICAgICAgICBidWZmZXJb
aV0gPSB0b0FTQ0lJTG93ZXIoYyk7CiAgICAgfQogICAgIGJ1ZmZlcltsZW5ndGhdID0gJ1wwJzsK
QEAgLTkzNzUsMTUgKzkzNzUsMTUgQEAgc3RhdGljIGludCBjc3NQcm9wZXJ0eUlEKGNvbnN0IFVD
aGFyKiBwcm9wZXJ0eU5hbWUsIHVuc2lnbmVkIGxlbmd0aCkKICAgICB9CiAKICAgICBjb25zdCBQ
cm9wZXJ0eSogaGFzaFRhYmxlRW50cnkgPSBmaW5kUHJvcGVydHkobmFtZSwgbGVuZ3RoKTsKLSAg
ICByZXR1cm4gaGFzaFRhYmxlRW50cnkgPyBoYXNoVGFibGVFbnRyeS0+aWQgOiAwOworICAgIHJl
dHVybiBoYXNoVGFibGVFbnRyeSA/IHN0YXRpY19jYXN0PENTU1Byb3BlcnR5SUQ+KGhhc2hUYWJs
ZUVudHJ5LT5pZCkgOiBDU1NQcm9wZXJ0eUludmFsaWQ7CiB9CiAKLWludCBjc3NQcm9wZXJ0eUlE
KGNvbnN0IFN0cmluZyYgc3RyaW5nKQorQ1NTUHJvcGVydHlJRCBjc3NQcm9wZXJ0eUlEKGNvbnN0
IFN0cmluZyYgc3RyaW5nKQogewogICAgIHJldHVybiBjc3NQcm9wZXJ0eUlEKHN0cmluZy5jaGFy
YWN0ZXJzKCksIHN0cmluZy5sZW5ndGgoKSk7CiB9CiAKLWludCBjc3NQcm9wZXJ0eUlEKGNvbnN0
IENTU1BhcnNlclN0cmluZyYgc3RyaW5nKQorQ1NTUHJvcGVydHlJRCBjc3NQcm9wZXJ0eUlEKGNv
bnN0IENTU1BhcnNlclN0cmluZyYgc3RyaW5nKQogewogICAgIHJldHVybiBjc3NQcm9wZXJ0eUlE
KHN0cmluZy5jaGFyYWN0ZXJzLCBzdHJpbmcubGVuZ3RoKTsKIH0KZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL2Nzcy9DU1NQYXJzZXIuaCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NQYXJzZXIu
aAppbmRleCA5NTlkYjkyM2NkODk4YmQwZDUyZGQ2MWFkYTRiYWI0NzJmNzlhZDBjLi4xNWFjOTY4
ZmU0NTg1NGU2MDI4MzNkODU4MDg1ZjRiYmE4NDBjNGM0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9jc3MvQ1NTUGFyc2VyLmgKKysrIGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU1BhcnNlci5o
CkBAIC00NjMsOCArNDYzLDggQEAgcHJpdmF0ZToKICNlbmRpZgogfTsKIAotaW50IGNzc1Byb3Bl
cnR5SUQoY29uc3QgQ1NTUGFyc2VyU3RyaW5nJik7Ci1pbnQgY3NzUHJvcGVydHlJRChjb25zdCBT
dHJpbmcmKTsKK0NTU1Byb3BlcnR5SUQgY3NzUHJvcGVydHlJRChjb25zdCBDU1NQYXJzZXJTdHJp
bmcmKTsKK0NTU1Byb3BlcnR5SUQgY3NzUHJvcGVydHlJRChjb25zdCBTdHJpbmcmKTsKIGludCBj
c3NWYWx1ZUtleXdvcmRJRChjb25zdCBDU1NQYXJzZXJTdHJpbmcmKTsKICNpZiBQTEFURk9STShJ
T1MpCiB2b2lkIGNzc1Byb3BlcnR5TmFtZUlPU0FsaWFzaW5nKGNvbnN0IGNoYXIqIHByb3BlcnR5
TmFtZSwgY29uc3QgY2hhciomIHByb3BlcnR5TmFtZUFsaWFzLCB1bnNpZ25lZCYgbmV3TGVuZ3Ro
KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NQcm9wZXJ0eS5jcHAgYi9Tb3Vy
Y2UvV2ViQ29yZS9jc3MvQ1NTUHJvcGVydHkuY3BwCmluZGV4IDhjODEzNGVmZDI2YmZjODc4NTM4
ODAwODgyZjlhNTQ4N2ExMTFmNmIuLjE2MGYwMmRmZDZiYzhiNWNiYWM2YzgzMmM3NjIwZjljOWMw
MzZjNTYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NQcm9wZXJ0eS5jcHAKKysr
IGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU1Byb3BlcnR5LmNwcApAQCAtMjEsNyArMjEsNiBAQAog
I2luY2x1ZGUgImNvbmZpZy5oIgogI2luY2x1ZGUgIkNTU1Byb3BlcnR5LmgiCiAKLSNpbmNsdWRl
ICJDU1NQcm9wZXJ0eU5hbWVzLmgiCiAjaW5jbHVkZSAiQ1NTVmFsdWVMaXN0LmgiCiAjaW5jbHVk
ZSAiUGxhdGZvcm1TdHJpbmcuaCIKICNpbmNsdWRlICJSZW5kZXJTdHlsZUNvbnN0YW50cy5oIgpA
QCAtMzgsNyArMzcsNyBAQCBDT01QSUxFX0FTU0VSVChzaXplb2YoQ1NTUHJvcGVydHkpID09IHNp
emVvZihTYW1lU2l6ZUFzQ1NTUHJvcGVydHkpLCBDU1NQcm9wZXJ0eQogCiBTdHJpbmcgQ1NTUHJv
cGVydHk6OmNzc1RleHQoKSBjb25zdAogewotICAgIHJldHVybiBTdHJpbmcoZ2V0UHJvcGVydHlO
YW1lKHN0YXRpY19jYXN0PENTU1Byb3BlcnR5SUQ+KGlkKCkpKSkgKyAiOiAiICsgbV92YWx1ZS0+
Y3NzVGV4dCgpICsgKGlzSW1wb3J0YW50KCkgPyAiICFpbXBvcnRhbnQiIDogIiIpICsgIjsgIjsK
KyAgICByZXR1cm4gU3RyaW5nKGdldFByb3BlcnR5TmFtZShpZCgpKSkgKyAiOiAiICsgbV92YWx1
ZS0+Y3NzVGV4dCgpICsgKGlzSW1wb3J0YW50KCkgPyAiICFpbXBvcnRhbnQiIDogIiIpICsgIjsg
IjsKIH0KIAogdm9pZCBDU1NQcm9wZXJ0eTo6d3JhcFZhbHVlSW5Db21tYVNlcGFyYXRlZExpc3Qo
KQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU1Byb3BlcnR5LmggYi9Tb3VyY2Uv
V2ViQ29yZS9jc3MvQ1NTUHJvcGVydHkuaAppbmRleCBlYjVjODk2ODUzZjc3ZTVkOTUxOTQ1NTdh
ZGMxZjIxNGJlYzU5YzVjLi5iOTRmOTBhZDkwYzY3ZTFiZDRiY2ZjZGM0YTgyMTg3NTNjNTg4NTQ2
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTUHJvcGVydHkuaAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9jc3MvQ1NTUHJvcGVydHkuaApAQCAtMjEsNiArMjEsNyBAQAogI2lmbmRlZiBD
U1NQcm9wZXJ0eV9oCiAjZGVmaW5lIENTU1Byb3BlcnR5X2gKIAorI2luY2x1ZGUgIkNTU1Byb3Bl
cnR5TmFtZXMuaCIKICNpbmNsdWRlICJDU1NWYWx1ZS5oIgogI2luY2x1ZGUgIlJlbmRlclN0eWxl
Q29uc3RhbnRzLmgiCiAjaW5jbHVkZSAiVGV4dERpcmVjdGlvbi5oIgpAQCAtNDEsOCArNDIsOCBA
QCBwdWJsaWM6CiAgICAgewogICAgIH0KIAotICAgIGludCBpZCgpIGNvbnN0IHsgcmV0dXJuIG1f
aWQ7IH0KLSAgICBpbnQgc2hvcnRoYW5kSUQoKSBjb25zdCB7IHJldHVybiBtX3Nob3J0aGFuZElE
OyB9CisgICAgQ1NTUHJvcGVydHlJRCBpZCgpIGNvbnN0IHsgcmV0dXJuIHN0YXRpY19jYXN0PENT
U1Byb3BlcnR5SUQ+KG1faWQpOyB9CisgICAgQ1NTUHJvcGVydHlJRCBzaG9ydGhhbmRJRCgpIGNv
bnN0IHsgcmV0dXJuIHN0YXRpY19jYXN0PENTU1Byb3BlcnR5SUQ+KG1fc2hvcnRoYW5kSUQpOyB9
CiAKICAgICBib29sIGlzSW1wb3J0YW50KCkgY29uc3QgeyByZXR1cm4gbV9pbXBvcnRhbnQ7IH0K
ICAgICBib29sIGlzSW1wbGljaXQoKSBjb25zdCB7IHJldHVybiBtX2ltcGxpY2l0OyB9CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvUHJvcGVydHlTZXRDU1NTdHlsZURlY2xhcmF0aW9u
LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9Qcm9wZXJ0eVNldENTU1N0eWxlRGVjbGFyYXRpb24u
Y3BwCmluZGV4IGIyZDYzY2RhNjZiNTMyM2VhZGYxNDZhNDIwYjc1YzUzN2UxNGZiNDEuLjc4ZTM1
MTZjM2RjMDRkNzM2ODk5MmY4YWQyYjgwYWVjMjliNWZlMmEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL2Nzcy9Qcm9wZXJ0eVNldENTU1N0eWxlRGVjbGFyYXRpb24uY3BwCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL2Nzcy9Qcm9wZXJ0eVNldENTU1N0eWxlRGVjbGFyYXRpb24uY3BwCkBAIC0xMzgs
NyArMTM4LDcgQEAgU3RyaW5nIFByb3BlcnR5U2V0Q1NTU3R5bGVEZWNsYXJhdGlvbjo6aXRlbSh1
bnNpZ25lZCBpKSBjb25zdAogewogICAgIGlmIChpID49IG1fcHJvcGVydHlTZXQtPnByb3BlcnR5
Q291bnQoKSkKICAgICAgICAgcmV0dXJuICIiOwotICAgIHJldHVybiBnZXRQcm9wZXJ0eU5hbWUo
c3RhdGljX2Nhc3Q8Q1NTUHJvcGVydHlJRD4obV9wcm9wZXJ0eVNldC0+cHJvcGVydHlBdChpKS5p
ZCgpKSk7CisgICAgcmV0dXJuIGdldFByb3BlcnR5TmFtZShtX3Byb3BlcnR5U2V0LT5wcm9wZXJ0
eUF0KGkpLmlkKCkpOwogfQogCiBTdHJpbmcgUHJvcGVydHlTZXRDU1NTdHlsZURlY2xhcmF0aW9u
Ojpjc3NUZXh0KCkgY29uc3QKQEAgLTE2Myw3ICsxNjMsNyBAQCB2b2lkIFByb3BlcnR5U2V0Q1NT
U3R5bGVEZWNsYXJhdGlvbjo6c2V0Q3NzVGV4dChjb25zdCBTdHJpbmcmIHRleHQsIEV4Y2VwdGlv
bkNvZAogCiBQYXNzUmVmUHRyPENTU1ZhbHVlPiBQcm9wZXJ0eVNldENTU1N0eWxlRGVjbGFyYXRp
b246OmdldFByb3BlcnR5Q1NTVmFsdWUoY29uc3QgU3RyaW5nJiBwcm9wZXJ0eU5hbWUpCiB7Ci0g
ICAgaW50IHByb3BlcnR5SUQgPSBjc3NQcm9wZXJ0eUlEKHByb3BlcnR5TmFtZSk7CisgICAgQ1NT
UHJvcGVydHlJRCBwcm9wZXJ0eUlEID0gY3NzUHJvcGVydHlJRChwcm9wZXJ0eU5hbWUpOwogICAg
IGlmICghcHJvcGVydHlJRCkKICAgICAgICAgcmV0dXJuIDA7CiAgICAgcmV0dXJuIG1fcHJvcGVy
dHlTZXQtPmdldFByb3BlcnR5Q1NTVmFsdWUocHJvcGVydHlJRCk7CkBAIC0xNzEsNyArMTcxLDcg
QEAgUGFzc1JlZlB0cjxDU1NWYWx1ZT4gUHJvcGVydHlTZXRDU1NTdHlsZURlY2xhcmF0aW9uOjpn
ZXRQcm9wZXJ0eUNTU1ZhbHVlKGNvbnN0IFMKIAogU3RyaW5nIFByb3BlcnR5U2V0Q1NTU3R5bGVE
ZWNsYXJhdGlvbjo6Z2V0UHJvcGVydHlWYWx1ZShjb25zdCBTdHJpbmcgJnByb3BlcnR5TmFtZSkK
IHsKLSAgICBpbnQgcHJvcGVydHlJRCA9IGNzc1Byb3BlcnR5SUQocHJvcGVydHlOYW1lKTsKKyAg
ICBDU1NQcm9wZXJ0eUlEIHByb3BlcnR5SUQgPSBjc3NQcm9wZXJ0eUlEKHByb3BlcnR5TmFtZSk7
CiAgICAgaWYgKCFwcm9wZXJ0eUlEKQogICAgICAgICByZXR1cm4gU3RyaW5nKCk7CiAgICAgcmV0
dXJuIG1fcHJvcGVydHlTZXQtPmdldFByb3BlcnR5VmFsdWUocHJvcGVydHlJRCk7CkBAIC0xNzks
NyArMTc5LDcgQEAgU3RyaW5nIFByb3BlcnR5U2V0Q1NTU3R5bGVEZWNsYXJhdGlvbjo6Z2V0UHJv
cGVydHlWYWx1ZShjb25zdCBTdHJpbmcgJnByb3BlcnR5TmEKIAogU3RyaW5nIFByb3BlcnR5U2V0
Q1NTU3R5bGVEZWNsYXJhdGlvbjo6Z2V0UHJvcGVydHlQcmlvcml0eShjb25zdCBTdHJpbmcmIHBy
b3BlcnR5TmFtZSkKIHsKLSAgICBpbnQgcHJvcGVydHlJRCA9IGNzc1Byb3BlcnR5SUQocHJvcGVy
dHlOYW1lKTsKKyAgICBDU1NQcm9wZXJ0eUlEIHByb3BlcnR5SUQgPSBjc3NQcm9wZXJ0eUlEKHBy
b3BlcnR5TmFtZSk7CiAgICAgaWYgKCFwcm9wZXJ0eUlEKQogICAgICAgICByZXR1cm4gU3RyaW5n
KCk7CiAgICAgcmV0dXJuIG1fcHJvcGVydHlTZXQtPnByb3BlcnR5SXNJbXBvcnRhbnQocHJvcGVy
dHlJRCkgPyAiaW1wb3J0YW50IiA6ICIiOwpAQCAtMTg3LDE4ICsxODcsMTggQEAgU3RyaW5nIFBy
b3BlcnR5U2V0Q1NTU3R5bGVEZWNsYXJhdGlvbjo6Z2V0UHJvcGVydHlQcmlvcml0eShjb25zdCBT
dHJpbmcmIHByb3BlcnQKIAogU3RyaW5nIFByb3BlcnR5U2V0Q1NTU3R5bGVEZWNsYXJhdGlvbjo6
Z2V0UHJvcGVydHlTaG9ydGhhbmQoY29uc3QgU3RyaW5nJiBwcm9wZXJ0eU5hbWUpCiB7Ci0gICAg
aW50IHByb3BlcnR5SUQgPSBjc3NQcm9wZXJ0eUlEKHByb3BlcnR5TmFtZSk7CisgICAgQ1NTUHJv
cGVydHlJRCBwcm9wZXJ0eUlEID0gY3NzUHJvcGVydHlJRChwcm9wZXJ0eU5hbWUpOwogICAgIGlm
ICghcHJvcGVydHlJRCkKICAgICAgICAgcmV0dXJuIFN0cmluZygpOwotICAgIGludCBzaG9ydGhh
bmRJRCA9IG1fcHJvcGVydHlTZXQtPmdldFByb3BlcnR5U2hvcnRoYW5kKHByb3BlcnR5SUQpOwor
ICAgIENTU1Byb3BlcnR5SUQgc2hvcnRoYW5kSUQgPSBtX3Byb3BlcnR5U2V0LT5nZXRQcm9wZXJ0
eVNob3J0aGFuZChwcm9wZXJ0eUlEKTsKICAgICBpZiAoIXNob3J0aGFuZElEKQogICAgICAgICBy
ZXR1cm4gU3RyaW5nKCk7Ci0gICAgcmV0dXJuIGdldFByb3BlcnR5TmFtZShzdGF0aWNfY2FzdDxD
U1NQcm9wZXJ0eUlEPihzaG9ydGhhbmRJRCkpOworICAgIHJldHVybiBnZXRQcm9wZXJ0eU5hbWUo
c2hvcnRoYW5kSUQpOwogfQogCiBib29sIFByb3BlcnR5U2V0Q1NTU3R5bGVEZWNsYXJhdGlvbjo6
aXNQcm9wZXJ0eUltcGxpY2l0KGNvbnN0IFN0cmluZyYgcHJvcGVydHlOYW1lKQogewotICAgIGlu
dCBwcm9wZXJ0eUlEID0gY3NzUHJvcGVydHlJRChwcm9wZXJ0eU5hbWUpOworICAgIENTU1Byb3Bl
cnR5SUQgcHJvcGVydHlJRCA9IGNzc1Byb3BlcnR5SUQocHJvcGVydHlOYW1lKTsKICAgICBpZiAo
IXByb3BlcnR5SUQpCiAgICAgICAgIHJldHVybiBmYWxzZTsKICAgICByZXR1cm4gbV9wcm9wZXJ0
eVNldC0+aXNQcm9wZXJ0eUltcGxpY2l0KHByb3BlcnR5SUQpOwpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvY3NzL1N0eWxlUHJvcGVydHlTZXQuY3BwIGIvU291cmNlL1dlYkNvcmUvY3NzL1N0
eWxlUHJvcGVydHlTZXQuY3BwCmluZGV4IGQ3ZmYzYjhmM2RkN2UwZTViODE3MTRkMTg3NTAyOTg1
Y2RhYmZmMDAuLmE2Nzg3MTQxMTk0NDdhOGZhZWMyNmNmOWNhNTYwM2VhMTE5YzdhZmMgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9TdHlsZVByb3BlcnR5U2V0LmNwcAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9jc3MvU3R5bGVQcm9wZXJ0eVNldC5jcHAKQEAgLTkzLDcgKzkzLDcgQEAgdm9p
ZCBTdHlsZVByb3BlcnR5U2V0Ojpjb3B5UHJvcGVydGllc0Zyb20oY29uc3QgU3R5bGVQcm9wZXJ0
eVNldCYgb3RoZXIpCiAgICAgbV9wcm9wZXJ0aWVzID0gb3RoZXIubV9wcm9wZXJ0aWVzOwogfQog
Ci1TdHJpbmcgU3R5bGVQcm9wZXJ0eVNldDo6Z2V0UHJvcGVydHlWYWx1ZShpbnQgcHJvcGVydHlJ
RCkgY29uc3QKK1N0cmluZyBTdHlsZVByb3BlcnR5U2V0OjpnZXRQcm9wZXJ0eVZhbHVlKENTU1By
b3BlcnR5SUQgcHJvcGVydHlJRCkgY29uc3QKIHsKICAgICBSZWZQdHI8Q1NTVmFsdWU+IHZhbHVl
ID0gZ2V0UHJvcGVydHlDU1NWYWx1ZShwcm9wZXJ0eUlEKTsKICAgICBpZiAodmFsdWUpCkBAIC0x
NzEsOCArMTcxLDkgQEAgU3RyaW5nIFN0eWxlUHJvcGVydHlTZXQ6OmdldFByb3BlcnR5VmFsdWUo
aW50IHByb3BlcnR5SUQpIGNvbnN0CiAgICAgICAgICAgICByZXR1cm4gdmFsdWUtPmNzc1RleHQo
KTsKICAgICB9CiAjZW5kaWYKKyAgICBkZWZhdWx0OgorICAgICAgICAgIHJldHVybiBTdHJpbmco
KTsKICAgICB9Ci0gICAgcmV0dXJuIFN0cmluZygpOwogfQogCiBTdHJpbmcgU3R5bGVQcm9wZXJ0
eVNldDo6Ym9yZGVyU3BhY2luZ1ZhbHVlKGNvbnN0IFN0eWxlUHJvcGVydHlTaG9ydGhhbmQmIHNo
b3J0aGFuZCkgY29uc3QKQEAgLTE5MSw3ICsxOTIsNyBAQCBTdHJpbmcgU3R5bGVQcm9wZXJ0eVNl
dDo6Ym9yZGVyU3BhY2luZ1ZhbHVlKGNvbnN0IFN0eWxlUHJvcGVydHlTaG9ydGhhbmQmIHNob3J0
aAogICAgIHJldHVybiBob3Jpem9udGFsVmFsdWVDU1NUZXh0ICsgJyAnICsgdmVydGljYWxWYWx1
ZUNTU1RleHQ7CiB9CiAKLWJvb2wgU3R5bGVQcm9wZXJ0eVNldDo6YXBwZW5kRm9udExvbmdoYW5k
VmFsdWVJZkV4cGxpY2l0KGludCBwcm9wZXJ0eUlkLCBTdHJpbmdCdWlsZGVyJiByZXN1bHQpIGNv
bnN0Citib29sIFN0eWxlUHJvcGVydHlTZXQ6OmFwcGVuZEZvbnRMb25naGFuZFZhbHVlSWZFeHBs
aWNpdChDU1NQcm9wZXJ0eUlEIHByb3BlcnR5SWQsIFN0cmluZ0J1aWxkZXImIHJlc3VsdCkgY29u
c3QKIHsKICAgICBjb25zdCBDU1NQcm9wZXJ0eSogcHJvcGVydHkgPSBmaW5kUHJvcGVydHlXaXRo
SWQocHJvcGVydHlJZCk7CiAgICAgaWYgKCFwcm9wZXJ0eSkKQEAgLTQ1Miw3ICs0NTMsNyBAQCBi
b29sIFN0eWxlUHJvcGVydHlTZXQ6OnJlbW92ZVByb3BlcnR5KGludCBwcm9wZXJ0eUlELCBTdHJp
bmcqIHJldHVyblRleHQpCiAgICAgcmV0dXJuIHRydWU7CiB9CiAKLWJvb2wgU3R5bGVQcm9wZXJ0
eVNldDo6cHJvcGVydHlJc0ltcG9ydGFudChpbnQgcHJvcGVydHlJRCkgY29uc3QKK2Jvb2wgU3R5
bGVQcm9wZXJ0eVNldDo6cHJvcGVydHlJc0ltcG9ydGFudChDU1NQcm9wZXJ0eUlEIHByb3BlcnR5
SUQpIGNvbnN0CiB7CiAgICAgY29uc3QgQ1NTUHJvcGVydHkqIHByb3BlcnR5ID0gZmluZFByb3Bl
cnR5V2l0aElkKHByb3BlcnR5SUQpOwogICAgIGlmIChwcm9wZXJ0eSkKQEAgLTQ2OSwxMyArNDcw
LDEzIEBAIGJvb2wgU3R5bGVQcm9wZXJ0eVNldDo6cHJvcGVydHlJc0ltcG9ydGFudChpbnQgcHJv
cGVydHlJRCkgY29uc3QKICAgICByZXR1cm4gdHJ1ZTsKIH0KIAotaW50IFN0eWxlUHJvcGVydHlT
ZXQ6OmdldFByb3BlcnR5U2hvcnRoYW5kKGludCBwcm9wZXJ0eUlEKSBjb25zdAorQ1NTUHJvcGVy
dHlJRCBTdHlsZVByb3BlcnR5U2V0OjpnZXRQcm9wZXJ0eVNob3J0aGFuZChDU1NQcm9wZXJ0eUlE
IHByb3BlcnR5SUQpIGNvbnN0CiB7CiAgICAgY29uc3QgQ1NTUHJvcGVydHkqIHByb3BlcnR5ID0g
ZmluZFByb3BlcnR5V2l0aElkKHByb3BlcnR5SUQpOwotICAgIHJldHVybiBwcm9wZXJ0eSA/IHBy
b3BlcnR5LT5zaG9ydGhhbmRJRCgpIDogMDsKKyAgICByZXR1cm4gcHJvcGVydHkgPyBwcm9wZXJ0
eS0+c2hvcnRoYW5kSUQoKSA6IENTU1Byb3BlcnR5SW52YWxpZDsKIH0KIAotYm9vbCBTdHlsZVBy
b3BlcnR5U2V0Ojppc1Byb3BlcnR5SW1wbGljaXQoaW50IHByb3BlcnR5SUQpIGNvbnN0Citib29s
IFN0eWxlUHJvcGVydHlTZXQ6OmlzUHJvcGVydHlJbXBsaWNpdChDU1NQcm9wZXJ0eUlEIHByb3Bl
cnR5SUQpIGNvbnN0CiB7CiAgICAgY29uc3QgQ1NTUHJvcGVydHkqIHByb3BlcnR5ID0gZmluZFBy
b3BlcnR5V2l0aElkKHByb3BlcnR5SUQpOwogICAgIHJldHVybiBwcm9wZXJ0eSA/IHByb3BlcnR5
LT5pc0ltcGxpY2l0KCkgOiBmYWxzZTsKQEAgLTU3MSw4ICs1NzIsOCBAQCBTdHJpbmcgU3R5bGVQ
cm9wZXJ0eVNldDo6YXNUZXh0KCkgY29uc3QKICAgICB1bnNpZ25lZCBzaXplID0gbV9wcm9wZXJ0
aWVzLnNpemUoKTsKICAgICBmb3IgKHVuc2lnbmVkIG4gPSAwOyBuIDwgc2l6ZTsgKytuKSB7CiAg
ICAgICAgIGNvbnN0IENTU1Byb3BlcnR5JiBwcm9wID0gbV9wcm9wZXJ0aWVzW25dOwotICAgICAg
ICBpbnQgcHJvcGVydHlJRCA9IHByb3AuaWQoKTsKLSAgICAgICAgaW50IHNob3J0aGFuZFByb3Bl
cnR5SUQgPSAwOworICAgICAgICBDU1NQcm9wZXJ0eUlEIHByb3BlcnR5SUQgPSBwcm9wLmlkKCk7
CisgICAgICAgIENTU1Byb3BlcnR5SUQgc2hvcnRoYW5kUHJvcGVydHlJRCA9IENTU1Byb3BlcnR5
SW52YWxpZDsKIAogICAgICAgICBzd2l0Y2ggKHByb3BlcnR5SUQpIHsKICAgICAgICAgY2FzZSBD
U1NQcm9wZXJ0eUJhY2tncm91bmRQb3NpdGlvblg6CkBAIC02MTEsMTIgKzYxMiwxMiBAQCBTdHJp
bmcgU3R5bGVQcm9wZXJ0eVNldDo6YXNUZXh0KCkgY29uc3QKICAgICAgICAgICAgICAgICBTdHJp
bmcgY29tbW9uVmFsdWU7CiAgICAgICAgICAgICAgICAgYm9vbCBjb21tb25JbXBvcnRhbmNlID0g
ZmFsc2U7CiAgICAgICAgICAgICAgICAgZm9yIChzaXplX3QgaiA9IDA7IGogPCBzaG9ydGhhbmQu
bGVuZ3RoKCk7ICsraikgewotICAgICAgICAgICAgICAgICAgICBpbnQgaWQgPSBzaG9ydGhhbmQu
cHJvcGVydGllcygpW2pdOworICAgICAgICAgICAgICAgICAgICBDU1NQcm9wZXJ0eUlEIGlkID0g
c2hvcnRoYW5kLnByb3BlcnRpZXMoKVtqXTsKICAgICAgICAgICAgICAgICAgICAgUmVmUHRyPENT
U1ZhbHVlPiB2YWx1ZSA9IGdldFByb3BlcnR5Q1NTVmFsdWUoaWQpOwogICAgICAgICAgICAgICAg
ICAgICBTdHJpbmcgY3VycmVudFZhbHVlID0gdmFsdWUgPyB2YWx1ZS0+Y3NzVGV4dCgpIDogU3Ry
aW5nKCk7CiAgICAgICAgICAgICAgICAgICAgIGJvb2wgaXNJbXBvcnRhbnQgPSBwcm9wZXJ0eUlz
SW1wb3J0YW50KGlkKTsKICAgICAgICAgICAgICAgICAgICAgaWYgKGogJiYgKGN1cnJlbnRWYWx1
ZSAhPSBjb21tb25WYWx1ZSB8fCBjb21tb25JbXBvcnRhbmNlICE9IGlzSW1wb3J0YW50KSkgewot
ICAgICAgICAgICAgICAgICAgICAgICAgc2hvcnRoYW5kUHJvcGVydHlJRCA9IDA7CisgICAgICAg
ICAgICAgICAgICAgICAgICBzaG9ydGhhbmRQcm9wZXJ0eUlEID0gQ1NTUHJvcGVydHlJbnZhbGlk
OwogICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgICAgICAgIH0K
ICAgICAgICAgICAgICAgICAgICAgaWYgKCFqKSB7CkBAIC03MDUsNiArNzA2LDggQEAgU3RyaW5n
IFN0eWxlUHJvcGVydHlTZXQ6OmFzVGV4dCgpIGNvbnN0CiAgICAgICAgIGNhc2UgQ1NTUHJvcGVy
dHlXZWJraXRXcmFwUGFkZGluZzoKICAgICAgICAgICAgIHNob3J0aGFuZFByb3BlcnR5SUQgPSBD
U1NQcm9wZXJ0eVdlYmtpdFdyYXA7CiAgICAgICAgICAgICBicmVhazsKKyAgICAgICAgZGVmYXVs
dDoKKyAgICAgICAgICAgIGJyZWFrOwogICAgICAgICB9CiAKICAgICAgICAgU3RyaW5nIHZhbHVl
OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL1N0eWxlUHJvcGVydHlTZXQuaCBiL1Nv
dXJjZS9XZWJDb3JlL2Nzcy9TdHlsZVByb3BlcnR5U2V0LmgKaW5kZXggZmIxMGVlNTBlY2VlNTIx
ZGQ5NmYzMzYyNzI1OTVmZjJhOTQ4NGNhZS4uYTFhMTdmYjVkNzNkZjdkZWFmOWEwMjQ1YmU4Y2Zk
N2EwZTg4MTAyYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL1N0eWxlUHJvcGVydHlT
ZXQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvU3R5bGVQcm9wZXJ0eVNldC5oCkBAIC02Miwx
MCArNjIsMTAgQEAgcHVibGljOgogICAgIHZvaWQgc2hyaW5rVG9GaXQoKSB7IG1fcHJvcGVydGll
cy5zaHJpbmtUb0ZpdCgpOyB9CiAKICAgICBQYXNzUmVmUHRyPENTU1ZhbHVlPiBnZXRQcm9wZXJ0
eUNTU1ZhbHVlKGludCBwcm9wZXJ0eUlEKSBjb25zdDsKLSAgICBTdHJpbmcgZ2V0UHJvcGVydHlW
YWx1ZShpbnQgcHJvcGVydHlJRCkgY29uc3Q7Ci0gICAgYm9vbCBwcm9wZXJ0eUlzSW1wb3J0YW50
KGludCBwcm9wZXJ0eUlEKSBjb25zdDsKLSAgICBpbnQgZ2V0UHJvcGVydHlTaG9ydGhhbmQoaW50
IHByb3BlcnR5SUQpIGNvbnN0OwotICAgIGJvb2wgaXNQcm9wZXJ0eUltcGxpY2l0KGludCBwcm9w
ZXJ0eUlEKSBjb25zdDsKKyAgICBTdHJpbmcgZ2V0UHJvcGVydHlWYWx1ZShDU1NQcm9wZXJ0eUlE
KSBjb25zdDsKKyAgICBib29sIHByb3BlcnR5SXNJbXBvcnRhbnQoQ1NTUHJvcGVydHlJRCkgY29u
c3Q7CisgICAgQ1NTUHJvcGVydHlJRCBnZXRQcm9wZXJ0eVNob3J0aGFuZChDU1NQcm9wZXJ0eUlE
KSBjb25zdDsKKyAgICBib29sIGlzUHJvcGVydHlJbXBsaWNpdChDU1NQcm9wZXJ0eUlEKSBjb25z
dDsKIAogICAgIC8vIFRoZXNlIGV4cGFuZCBzaG9ydGhhbmQgcHJvcGVydGllcyBpbnRvIG11bHRp
cGxlIHByb3BlcnRpZXMuCiAgICAgYm9vbCBzZXRQcm9wZXJ0eShpbnQgcHJvcGVydHlJRCwgY29u
c3QgU3RyaW5nJiB2YWx1ZSwgYm9vbCBpbXBvcnRhbnQgPSBmYWxzZSwgQ1NTU3R5bGVTaGVldCog
Y29udGV4dFN0eWxlU2hlZXQgPSAwKTsKQEAgLTEyNiw3ICsxMjYsNyBAQCBwcml2YXRlOgogICAg
IFN0cmluZyBnZXQ0VmFsdWVzKGNvbnN0IFN0eWxlUHJvcGVydHlTaG9ydGhhbmQmKSBjb25zdDsK
ICAgICBTdHJpbmcgYm9yZGVyU3BhY2luZ1ZhbHVlKGNvbnN0IFN0eWxlUHJvcGVydHlTaG9ydGhh
bmQmKSBjb25zdDsKICAgICBTdHJpbmcgZm9udFZhbHVlKCkgY29uc3Q7Ci0gICAgYm9vbCBhcHBl
bmRGb250TG9uZ2hhbmRWYWx1ZUlmRXhwbGljaXQoaW50IHByb3BlcnR5SUQsIFN0cmluZ0J1aWxk
ZXImIHJlc3VsdCkgY29uc3Q7CisgICAgYm9vbCBhcHBlbmRGb250TG9uZ2hhbmRWYWx1ZUlmRXhw
bGljaXQoQ1NTUHJvcGVydHlJRCwgU3RyaW5nQnVpbGRlciYpIGNvbnN0OwogCiAgICAgYm9vbCBy
ZW1vdmVTaG9ydGhhbmRQcm9wZXJ0eShpbnQgcHJvcGVydHlJRCk7CiAgICAgYm9vbCBwcm9wZXJ0
eU1hdGNoZXMoY29uc3QgQ1NTUHJvcGVydHkqKSBjb25zdDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL2VkaXRpbmcvRWRpdGluZ1N0eWxlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2VkaXRpbmcv
RWRpdGluZ1N0eWxlLmNwcAppbmRleCAxZjEwZDAyMjY4NzVlYjlkMzhjOWEzYWU0MWNiNzJhNjE1
ODgzYWYxLi4wOWE0NTBkZDY5OGIwODI4NzI5MjU4MjgzYThmYTI2M2JkYjc1Mjg0IDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9lZGl0aW5nL0VkaXRpbmdTdHlsZS5jcHAKKysrIGIvU291cmNl
L1dlYkNvcmUvZWRpdGluZy9FZGl0aW5nU3R5bGUuY3BwCkBAIC02NzEsNyArNjcxLDcgQEAgYm9v
bCBFZGl0aW5nU3R5bGU6OmNvbmZsaWN0c1dpdGhJbmxpbmVTdHlsZU9mRWxlbWVudChTdHlsZWRF
bGVtZW50KiBlbGVtZW50LCBFZGkKIAogICAgIHVuc2lnbmVkIHByb3BlcnR5Q291bnQgPSBtX211
dGFibGVTdHlsZS0+cHJvcGVydHlDb3VudCgpOwogICAgIGZvciAodW5zaWduZWQgaSA9IDA7IGkg
PCBwcm9wZXJ0eUNvdW50OyArK2kpIHsKLSAgICAgICAgQ1NTUHJvcGVydHlJRCBwcm9wZXJ0eUlE
ID0gc3RhdGljX2Nhc3Q8Q1NTUHJvcGVydHlJRD4obV9tdXRhYmxlU3R5bGUtPnByb3BlcnR5QXQo
aSkuaWQoKSk7CisgICAgICAgIENTU1Byb3BlcnR5SUQgcHJvcGVydHlJRCA9IG1fbXV0YWJsZVN0
eWxlLT5wcm9wZXJ0eUF0KGkpLmlkKCk7CiAKICAgICAgICAgLy8gV2UgZG9uJ3Qgb3ZlcnJpZGUg
d2hpdGVzcGFjZSBwcm9wZXJ0eSBvZiBhIHRhYiBzcGFuIGJlY2F1c2UgdGhhdCB3b3VsZCBjb2xs
YXBzZSB0aGUgdGFiIGludG8gYSBzcGFjZS4KICAgICAgICAgaWYgKHByb3BlcnR5SUQgPT0gQ1NT
UHJvcGVydHlXaGl0ZVNwYWNlICYmIGlzVGFiU3Bhbk5vZGUoZWxlbWVudCkpCkBAIC0xMDg2LDcg
KzEwODYsNyBAQCBzdGF0aWMgdm9pZCByZW1vdmVQcm9wZXJ0aWVzSW5TdHlsZShTdHlsZVByb3Bl
cnR5U2V0KiBzdHlsZVRvUmVtb3ZlUHJvcGVydGllc0ZybwogICAgIHVuc2lnbmVkIHByb3BlcnR5
Q291bnQgPSBzdHlsZS0+cHJvcGVydHlDb3VudCgpOwogICAgIFZlY3RvcjxDU1NQcm9wZXJ0eUlE
PiBwcm9wZXJ0aWVzVG9SZW1vdmUocHJvcGVydHlDb3VudCk7CiAgICAgZm9yICh1bnNpZ25lZCBp
ID0gMDsgaSA8IHByb3BlcnR5Q291bnQ7ICsraSkKLSAgICAgICAgcHJvcGVydGllc1RvUmVtb3Zl
W2ldID0gc3RhdGljX2Nhc3Q8Q1NTUHJvcGVydHlJRD4oc3R5bGUtPnByb3BlcnR5QXQoaSkuaWQo
KSk7CisgICAgICAgIHByb3BlcnRpZXNUb1JlbW92ZVtpXSA9IHN0eWxlLT5wcm9wZXJ0eUF0KGkp
LmlkKCk7CiAKICAgICBzdHlsZVRvUmVtb3ZlUHJvcGVydGllc0Zyb20tPnJlbW92ZVByb3BlcnRp
ZXNJblNldChwcm9wZXJ0aWVzVG9SZW1vdmUuZGF0YSgpLCBwcm9wZXJ0aWVzVG9SZW1vdmUuc2l6
ZSgpKTsKIH0KQEAgLTEzMTksNyArMTMxOSw3IEBAIFN0eWxlQ2hhbmdlOjpTdHlsZUNoYW5nZShF
ZGl0aW5nU3R5bGUqIHN0eWxlLCBjb25zdCBQb3NpdGlvbiYgcG9zaXRpb24pCiAgICAgbV9jc3NT
dHlsZSA9IG11dGFibGVTdHlsZS0+YXNUZXh0KCkuc3RyaXBXaGl0ZVNwYWNlKCk7CiB9CiAKLXN0
YXRpYyB2b2lkIHNldFRleHREZWNvcmF0aW9uUHJvcGVydHkoU3R5bGVQcm9wZXJ0eVNldCogc3R5
bGUsIGNvbnN0IENTU1ZhbHVlTGlzdCogbmV3VGV4dERlY29yYXRpb24sIGludCBwcm9wZXJ0eUlE
KQorc3RhdGljIHZvaWQgc2V0VGV4dERlY29yYXRpb25Qcm9wZXJ0eShTdHlsZVByb3BlcnR5U2V0
KiBzdHlsZSwgY29uc3QgQ1NTVmFsdWVMaXN0KiBuZXdUZXh0RGVjb3JhdGlvbiwgQ1NTUHJvcGVy
dHlJRCBwcm9wZXJ0eUlEKQogewogICAgIGlmIChuZXdUZXh0RGVjb3JhdGlvbi0+bGVuZ3RoKCkp
CiAgICAgICAgIHN0eWxlLT5zZXRQcm9wZXJ0eShwcm9wZXJ0eUlELCBuZXdUZXh0RGVjb3JhdGlv
bi0+Y3NzVGV4dCgpLCBzdHlsZS0+cHJvcGVydHlJc0ltcG9ydGFudChwcm9wZXJ0eUlEKSk7CkBA
IC0xMzk1LDcgKzEzOTUsNyBAQCB2b2lkIFN0eWxlQ2hhbmdlOjpleHRyYWN0VGV4dFN0eWxlcyhE
b2N1bWVudCogZG9jdW1lbnQsIFN0eWxlUHJvcGVydHlTZXQqIHN0eWxlLAogICAgIH0KIH0KIAot
c3RhdGljIHZvaWQgZGlmZlRleHREZWNvcmF0aW9ucyhTdHlsZVByb3BlcnR5U2V0KiBzdHlsZSwg
aW50IHByb3BlcnRJRCwgQ1NTVmFsdWUqIHJlZlRleHREZWNvcmF0aW9uKQorc3RhdGljIHZvaWQg
ZGlmZlRleHREZWNvcmF0aW9ucyhTdHlsZVByb3BlcnR5U2V0KiBzdHlsZSwgQ1NTUHJvcGVydHlJ
RCBwcm9wZXJ0SUQsIENTU1ZhbHVlKiByZWZUZXh0RGVjb3JhdGlvbikKIHsKICAgICBSZWZQdHI8
Q1NTVmFsdWU+IHRleHREZWNvcmF0aW9uID0gc3R5bGUtPmdldFByb3BlcnR5Q1NTVmFsdWUocHJv
cGVydElEKTsKICAgICBpZiAoIXRleHREZWNvcmF0aW9uIHx8ICF0ZXh0RGVjb3JhdGlvbi0+aXNW
YWx1ZUxpc3QoKSB8fCAhcmVmVGV4dERlY29yYXRpb24gfHwgIXJlZlRleHREZWNvcmF0aW9uLT5p
c1ZhbHVlTGlzdCgpKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZWRpdGluZy9FZGl0b3Iu
Y3BwIGIvU291cmNlL1dlYkNvcmUvZWRpdGluZy9FZGl0b3IuY3BwCmluZGV4IDNkMzA4Y2IzMTEw
NjQ2NTNiYzAzMjg5OWJlNDAxZmI3ODA2NGIzNTYuLjFjYzE4Yjc5MjFlYzVlYzA1Y2U3M2JhMzE1
ZTEwMWNjOGFjM2M0NjcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2VkaXRpbmcvRWRpdG9y
LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9lZGl0aW5nL0VkaXRvci5jcHAKQEAgLTc0Miw3ICs3
NDIsNyBAQCBUcmlTdGF0ZSBFZGl0b3I6OnNlbGVjdGlvbkhhc1N0eWxlKGludCBwcm9wZXJ0eUlE
LCBjb25zdCBTdHJpbmcmIHZhbHVlKSBjb25zdAogICAgIHJldHVybiBFZGl0aW5nU3R5bGU6OmNy
ZWF0ZShwcm9wZXJ0eUlELCB2YWx1ZSktPnRyaVN0YXRlT2ZTdHlsZShtX2ZyYW1lLT5zZWxlY3Rp
b24oKS0+c2VsZWN0aW9uKCkpOwogfQogCi1TdHJpbmcgRWRpdG9yOjpzZWxlY3Rpb25TdGFydENT
U1Byb3BlcnR5VmFsdWUoaW50IHByb3BlcnR5SUQpCitTdHJpbmcgRWRpdG9yOjpzZWxlY3Rpb25T
dGFydENTU1Byb3BlcnR5VmFsdWUoQ1NTUHJvcGVydHlJRCBwcm9wZXJ0eUlEKQogewogICAgIFJl
ZlB0cjxFZGl0aW5nU3R5bGU+IHNlbGVjdGlvblN0eWxlID0gRWRpdGluZ1N0eWxlOjpzdHlsZUF0
U2VsZWN0aW9uU3RhcnQobV9mcmFtZS0+c2VsZWN0aW9uKCktPnNlbGVjdGlvbigpLAogICAgICAg
ICBwcm9wZXJ0eUlEID09IENTU1Byb3BlcnR5QmFja2dyb3VuZENvbG9yKTsKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL2VkaXRpbmcvRWRpdG9yLmggYi9Tb3VyY2UvV2ViQ29yZS9lZGl0aW5n
L0VkaXRvci5oCmluZGV4IDNjMjU0NGE3MTZjYWZkOGQ4ZDM0YTlmMzIwYWJhNTk4NTFmYjdhNmYu
LjJjNDNlMjYwMzhmYWM0ODM5ODU2ZTljMmQyYzFmOGJjYjQ4MDcxNTMgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL2VkaXRpbmcvRWRpdG9yLmgKKysrIGIvU291cmNlL1dlYkNvcmUvZWRpdGlu
Zy9FZGl0b3IuaApAQCAtMTM4LDcgKzEzOCw3IEBAIHB1YmxpYzoKIAogICAgIGJvb2wgc2VsZWN0
aW9uU3RhcnRIYXNTdHlsZShpbnQgcHJvcGVydHlJRCwgY29uc3QgU3RyaW5nJiB2YWx1ZSkgY29u
c3Q7CiAgICAgVHJpU3RhdGUgc2VsZWN0aW9uSGFzU3R5bGUoaW50IHByb3BlcnR5SUQsIGNvbnN0
IFN0cmluZyYgdmFsdWUpIGNvbnN0OwotICAgIFN0cmluZyBzZWxlY3Rpb25TdGFydENTU1Byb3Bl
cnR5VmFsdWUoaW50IHByb3BlcnR5SUQpOworICAgIFN0cmluZyBzZWxlY3Rpb25TdGFydENTU1By
b3BlcnR5VmFsdWUoQ1NTUHJvcGVydHlJRCk7CiAgICAgCiAgICAgVHJpU3RhdGUgc2VsZWN0aW9u
VW5vcmRlcmVkTGlzdFN0YXRlKCkgY29uc3Q7CiAgICAgVHJpU3RhdGUgc2VsZWN0aW9uT3JkZXJl
ZExpc3RTdGF0ZSgpIGNvbnN0OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvZWRpdGluZy9F
ZGl0b3JDb21tYW5kLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2VkaXRpbmcvRWRpdG9yQ29tbWFuZC5j
cHAKaW5kZXggYjlmMzRiOTgwNTllMGNmOGEyM2E0OGIwOGEwMzg3NmE0MTg4MjQ5MS4uMTk4Nzcy
OTJmZTJmNDBmNTkwYWQ3NTA3M2MzYWQ4YzA5NTRkYjhjOCAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvZWRpdGluZy9FZGl0b3JDb21tYW5kLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9lZGl0
aW5nL0VkaXRvckNvbW1hbmQuY3BwCkBAIC0yMzEsNyArMjMxLDcgQEAgc3RhdGljIFRyaVN0YXRl
IHN0YXRlU3R5bGUoRnJhbWUqIGZyYW1lLCBpbnQgcHJvcGVydHlJRCwgY29uc3QgY2hhciogZGVz
aXJlZFZhbHUKICAgICByZXR1cm4gZnJhbWUtPmVkaXRvcigpLT5zZWxlY3Rpb25IYXNTdHlsZShw
cm9wZXJ0eUlELCBkZXNpcmVkVmFsdWUpOwogfQogCi1zdGF0aWMgU3RyaW5nIHZhbHVlU3R5bGUo
RnJhbWUqIGZyYW1lLCBpbnQgcHJvcGVydHlJRCkKK3N0YXRpYyBTdHJpbmcgdmFsdWVTdHlsZShG
cmFtZSogZnJhbWUsIENTU1Byb3BlcnR5SUQgcHJvcGVydHlJRCkKIHsKICAgICAvLyBGSVhNRTog
UmF0aGVyIHRoYW4gcmV0cmlldmluZyB0aGUgc3R5bGUgYXQgdGhlIHN0YXJ0IG9mIHRoZSBjdXJy
ZW50IHNlbGVjdGlvbiwKICAgICAvLyB3ZSBzaG91bGQgcmV0cmlldmUgdGhlIHN0eWxlIHByZXNl
bnQgdGhyb3VnaG91dCB0aGUgc2VsZWN0aW9uIGZvciBub24tTWFjIHBsYXRmb3Jtcy4KZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJLaXQvcXQvQXBpL3F3ZWJlbGVtZW50LmNwcCBiL1NvdXJjZS9XZWJL
aXQvcXQvQXBpL3F3ZWJlbGVtZW50LmNwcAppbmRleCAwMTZkNWY2OWEzN2ZkMTlmMWUwMjI2ODM0
N2U5NWU1Yjg0NTM3NmNmLi5mYzcyY2E2ODZjYTYzMWUwMjhjM2EzZjllNzkzYjVjMWRiYTMxMjUz
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L3F0L0FwaS9xd2ViZWxlbWVudC5jcHAKKysrIGIv
U291cmNlL1dlYktpdC9xdC9BcGkvcXdlYmVsZW1lbnQuY3BwCkBAIC04MzksNyArODM5LDcgQEAg
UVN0cmluZyBRV2ViRWxlbWVudDo6c3R5bGVQcm9wZXJ0eShjb25zdCBRU3RyaW5nICZuYW1lLCBT
dHlsZVJlc29sdmVTdHJhdGVneSBzdHIKICAgICBpZiAoIW1fZWxlbWVudCB8fCAhbV9lbGVtZW50
LT5pc1N0eWxlZEVsZW1lbnQoKSkKICAgICAgICAgcmV0dXJuIFFTdHJpbmcoKTsKIAotICAgIGlu
dCBwcm9wSUQgPSBjc3NQcm9wZXJ0eUlEKG5hbWUpOworICAgIENTU1Byb3BlcnR5SUQgcHJvcElE
ID0gY3NzUHJvcGVydHlJRChuYW1lKTsKIAogICAgIGlmICghcHJvcElEKQogICAgICAgICByZXR1
cm4gUVN0cmluZygpOwpAQCAtODgxLDggKzg4MSw2IEBAIFFTdHJpbmcgUVdlYkVsZW1lbnQ6OnN0
eWxlUHJvcGVydHkoY29uc3QgUVN0cmluZyAmbmFtZSwgU3R5bGVSZXNvbHZlU3RyYXRlZ3kgc3Ry
CiAgICAgICAgIGlmICghbV9lbGVtZW50IHx8ICFtX2VsZW1lbnQtPmlzU3R5bGVkRWxlbWVudCgp
KQogICAgICAgICAgICAgcmV0dXJuIFFTdHJpbmcoKTsKIAotICAgICAgICBpbnQgcHJvcElEID0g
Y3NzUHJvcGVydHlJRChuYW1lKTsKLQogICAgICAgICBSZWZQdHI8Q1NTQ29tcHV0ZWRTdHlsZURl
Y2xhcmF0aW9uPiBzdHlsZSA9IENTU0NvbXB1dGVkU3R5bGVEZWNsYXJhdGlvbjo6Y3JlYXRlKG1f
ZWxlbWVudCwgdHJ1ZSk7CiAgICAgICAgIGlmICghcHJvcElEIHx8ICFzdHlsZSkKICAgICAgICAg
ICAgIHJldHVybiBRU3RyaW5nKCk7Cg==
</data>

          </attachment>
      

    </bug>

</bugzilla>