<?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>103118</bug_id>
          
          <creation_ts>2012-11-23 03:42:39 -0800</creation_ts>
          <short_desc>Web Inspector: [Styles] Retain selector case as written in the source code</short_desc>
          <delta_ts>2012-12-03 03:58:26 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>Web Inspector (Deprecated)</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="Alexander Pavlov (apavlov)">apavlov</reporter>
          <assigned_to name="Alexander Pavlov (apavlov)">apavlov</assigned_to>
          <cc>apavlov</cc>
    
    <cc>cmarcelo</cc>
    
    <cc>keishi</cc>
    
    <cc>loislo</cc>
    
    <cc>macpherson</cc>
    
    <cc>menard</cc>
    
    <cc>ojan</cc>
    
    <cc>pfeldman</cc>
    
    <cc>pmuellr</cc>
    
    <cc>vsevik</cc>
    
    <cc>web-inspector-bugs</cc>
    
    <cc>webkit.review.bot</cc>
    
    <cc>yurys</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>774384</commentid>
    <comment_count>0</comment_count>
    <who name="Alexander Pavlov (apavlov)">apavlov</who>
    <bug_when>2012-11-23 03:42:39 -0800</bug_when>
    <thetext>Currently, the selector components and the entire selector text are provided from the WebCore CSS model rather than the source code.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>777881</commentid>
    <comment_count>1</comment_count>
      <attachid>176481</attachid>
    <who name="Alexander Pavlov (apavlov)">apavlov</who>
    <bug_when>2012-11-28 06:58:26 -0800</bug_when>
    <thetext>Created attachment 176481
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>777928</commentid>
    <comment_count>2</comment_count>
      <attachid>176481</attachid>
    <who name="Build Bot">buildbot</who>
    <bug_when>2012-11-28 08:24:09 -0800</bug_when>
    <thetext>Comment on attachment 176481
Patch

Attachment 176481 did not pass mac-ews (mac):
Output: http://queues.webkit.org/results/15018468</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>778995</commentid>
    <comment_count>3</comment_count>
      <attachid>176732</attachid>
    <who name="Alexander Pavlov (apavlov)">apavlov</who>
    <bug_when>2012-11-29 07:22:47 -0800</bug_when>
    <thetext>Created attachment 176732
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>781201</commentid>
    <comment_count>4</comment_count>
      <attachid>176732</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-12-03 00:52:01 -0800</bug_when>
    <thetext>Comment on attachment 176732
Patch

Clearing flags on attachment: 176732

Committed r136370: &lt;http://trac.webkit.org/changeset/136370&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>781202</commentid>
    <comment_count>5</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-12-03 00:52:05 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>781317</commentid>
    <comment_count>6</comment_count>
    <who name="Alexander Pavlov (apavlov)">apavlov</who>
    <bug_when>2012-12-03 03:58:26 -0800</bug_when>
    <thetext>Chromium issue: http://code.google.com/p/chromium/issues/detail?id=162840</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>176481</attachid>
            <date>2012-11-28 06:58:26 -0800</date>
            <delta_ts>2012-11-29 07:22:41 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-103118-20121128185601.patch</filename>
            <type>text/plain</type>
            <size>18067</size>
            <attacher name="Alexander Pavlov (apavlov)">apavlov</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTM1OTgxCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYjk4ZjZiOGE4NjhjNDE1
N2Q3YmQ4ZDcwMjA5ZGQ4MDg5YmQ3NjI3Yy4uM2M1YjQ5MTM0M2QyYjEyNzY2Nzc3MjY3NzVlMzQz
MTUwMmY1MDk3YSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQxIEBACisyMDEyLTExLTI4ICBBbGV4
YW5kZXIgUGF2bG92ICA8YXBhdmxvdkBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgV2ViIEluc3Bl
Y3RvcjogW1N0eWxlc10gUmV0YWluIHNlbGVjdG9yIGNhc2UgYXMgd3JpdHRlbiBpbiB0aGUgc291
cmNlIGNvZGUKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lk
PTEwMzExOAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAg
IFRoaXMgY2hhbmdlOgorICAgICAgICAtIGFkZHMgcGFyc2luZyBvZiBzZWxlY3RvciBncm91cCBj
b21wb25lbnRzIGluIHRoZSBDU1NQYXJzZXI7CisgICAgICAgIC0gYnVpbGRzIHRoZSBTZWxlY3Rv
ckxpc3Quc2VsZWN0b3JzIGJhc2VkIG9uIHRoZSBzb3VyY2UgY29kZSB3aGVuZXZlciBwb3NzaWJs
ZS4KKyAgICAgICAgICBTdHJpcHMgW211bHRpbGluZV0gY29tbWVudHMgYW5kIHdoaXRlc3BhY2U7
CisgICAgICAgIC0gYWRkcyB0aGUgTXVsdGlsaW5lTW9kZSB0byBSZWd1bGFyRXhwcmVzc2lvbi4K
KworICAgICAgICBUZXN0OiBpbnNwZWN0b3Ivc3R5bGVzL3NlbGVjdG9yLWxpc3QuaHRtbAorCisg
ICAgICAgICogY3NzL0NTU0dyYW1tYXIueS5pbjogQWRkIGludm9jYXRpb25zIGZvciBDU1NQYXJz
ZXI6Om1hcmtTZWxlY3RvcltTdGFydHxFbmRdKCkgYXMgcmVxdWlyZWQuCisgICAgICAgICogY3Nz
L0NTU1BhcnNlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpDU1NQYXJzZXI6Om1hcmtTZWxlY3Rv
clN0YXJ0KTogR2V0cyBpbnZva2VkIHRvIG1hcmsgYSBzZWxlY3RvciBncm91cCBpdGVtIHN0YXJ0
IG9mZnNldC4KKyAgICAgICAgKFdlYkNvcmU6OkNTU1BhcnNlcjo6bWFya1NlbGVjdG9yRW5kKTog
RGl0dG8gZm9yIHRoZSBlbmQgb2Zmc2V0LgorICAgICAgICAqIGNzcy9DU1NQYXJzZXIuaDogQWRk
IG5ldyBtZXRob2RzIGFuZCBhIFNvdXJjZVJhbmdlIHRyYWNraW5nIGZpZWxkLgorICAgICAgICAq
IGNzcy9DU1NQcm9wZXJ0eVNvdXJjZURhdGEuaDogQWRkIFNlbGVjdG9yUmFuZ2VMaXN0IHRvIHRo
ZSBDU1NSdWxlU291cmNlRGF0YS4KKyAgICAgICAgKiBpbnNwZWN0b3IvSW5zcGVjdG9yU3R5bGVT
aGVldC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpzZWxlY3RvcnNGcm9tU291cmNlKTogQnVpbGRz
IHRoZSBTZWxlY3Rvckxpc3QgYmFzZWQgb24gdGhlIHVuZGVybHlpbmcgc291cmNlIGRhdGEuCisg
ICAgICAgIFN0cmlwcyBjb21tZW50cyBhbmQgd2hpdGVzcGFjZSBmcm9tIHNlbGVjdG9ycy4KKyAg
ICAgICAgKFdlYkNvcmU6Okluc3BlY3RvclN0eWxlU2hlZXQ6OmJ1aWxkT2JqZWN0Rm9yU2VsZWN0
b3JMaXN0KToKKyAgICAgICAgQnVpbGRzIFNlbGVjdG9yTGlzdCBiYXNlZCBvbiB0aGUgYXZhaWxh
YmlsaXR5IG9mIHRoZSBzb3VyY2UgY29kZS4KKyAgICAgICAgKiBpbnNwZWN0b3IvZnJvbnQtZW5k
L1N0eWxlc1NpZGViYXJQYW5lLmpzOgorICAgICAgICAoV2ViSW5zcGVjdG9yLlN0eWxlUHJvcGVy
dGllc1NlY3Rpb24ucHJvdG90eXBlLl9tYXJrU2VsZWN0b3JNYXRjaGVzKToKKyAgICAgICAgVXBk
YXRlIHNlbGVjdG9ycyBpbiBhbGwgY2FzZXMgdG8gbWFrZSB1c2Ugb2YgdGhlIHNvdXJjZS1iYXNl
ZCBpbmZvcm1hdGlvbiB3aGVuZXZlciBwb3NzaWJsZS4KKyAgICAgICAgKiBwbGF0Zm9ybS90ZXh0
L1JlZ3VsYXJFeHByZXNzaW9uLmNwcDoKKyAgICAgICAgQWRkIHRoZSBNdWx0aWxpbmVNb2RlIHBh
cmFtZXRlciBpbnRvIHRoZSBjb25zdHJ1Y3Rvci9mYWN0b3J5IG1ldGhvZCBhbmQgdWx0aW1hdGVs
eSBwYXNzIGl0IGludG8gWWFyclBhdHRlcm4uCisgICAgICAgIChXZWJDb3JlOjpSZWd1bGFyRXhw
cmVzc2lvbjo6UHJpdmF0ZTo6Y3JlYXRlKTogU2VlIGFib3ZlLgorICAgICAgICAoV2ViQ29yZTo6
UmVndWxhckV4cHJlc3Npb246OlByaXZhdGU6OlByaXZhdGUpOiBTZWUgYWJvdmUuCisgICAgICAg
IChXZWJDb3JlOjpSZWd1bGFyRXhwcmVzc2lvbjo6UHJpdmF0ZTo6Y29tcGlsZSk6IFNlZSBhYm92
ZS4KKyAgICAgICAgKFdlYkNvcmU6OlJlZ3VsYXJFeHByZXNzaW9uOjpSZWd1bGFyRXhwcmVzc2lv
bik6IFNlZSBhYm92ZS4KKyAgICAgICAgKiBwbGF0Zm9ybS90ZXh0L1JlZ3VsYXJFeHByZXNzaW9u
Lmg6CisgICAgICAgIEFkZCBlbnVtIE11bHRpbGluZU1vZGUsIG1vZGlmeSBjb25zdHJ1Y3RvciBh
bmQgZmFjdG9yeSBtZXRob2Qgc2lnbmF0dXJlcyBhY2NvcmRpbmdseS4KKwogMjAxMi0xMS0yNyAg
TWlrZSBXZXN0ICA8bWt3c3RAY2hyb21pdW0ub3JnPgogCiAgICAgICAgIEltcHJvdmUgV2ViU29j
a2V0Q2hhbm5lbCBjb25uZWN0aW9uIGZhaWx1cmUgY29uc29sZSBtZXNzYWdlcy4KZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NHcmFtbWFyLnkuaW4gYi9Tb3VyY2UvV2ViQ29yZS9j
c3MvQ1NTR3JhbW1hci55LmluCmluZGV4IDIxYjAxNjEzNWJhNThlNGUyMDRlZjc2OWExOTdmMGI4
NzE0YjZlOTQuLjQ0ZGE1MjZlNzFiMTFlN2YwY2IyZTQ2ZTc1OGM5YjdiNzQyN2MwOGIgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NHcmFtbWFyLnkuaW4KKysrIGIvU291cmNlL1dl
YkNvcmUvY3NzL0NTU0dyYW1tYXIueS5pbgpAQCAtMTAyMCw2ICsxMDIwLDcgQEAgbWF5YmVfc3Bh
Y2VfYmVmb3JlX2RlY2xhcmF0aW9uOgogYmVmb3JlX3NlbGVjdG9yX2xpc3Q6CiAgICAgLyogZW1w
dHkgKi8gewogICAgICAgICBwYXJzZXItPm1hcmtSdWxlSGVhZGVyU3RhcnQoQ1NTUnVsZVNvdXJj
ZURhdGE6OlNUWUxFX1JVTEUpOworICAgICAgICBwYXJzZXItPm1hcmtTZWxlY3RvclN0YXJ0KCk7
CiAgICAgfQogICA7CiAKQEAgLTEwMjksMTIgKzEwMzAsMjMgQEAgYXRfcnVsZV9oZWFkZXJfZW5k
OgogICAgIH0KICAgOwogCithdF9zZWxlY3Rvcl9lbmQ6CisgICAgLyogZW1wdHkgKi8geworICAg
ICAgICBwYXJzZXItPm1hcmtTZWxlY3RvckVuZCgpOworICAgIH0KKyAgOworCiBydWxlc2V0Ogot
ICAgIGJlZm9yZV9zZWxlY3Rvcl9saXN0IHNlbGVjdG9yX2xpc3QgYXRfcnVsZV9oZWFkZXJfZW5k
ICd7JyBhdF9ydWxlX2JvZHlfc3RhcnQgbWF5YmVfc3BhY2VfYmVmb3JlX2RlY2xhcmF0aW9uIGRl
Y2xhcmF0aW9uX2xpc3QgY2xvc2luZ19icmFjZSB7CisgICAgYmVmb3JlX3NlbGVjdG9yX2xpc3Qg
c2VsZWN0b3JfbGlzdCBhdF9zZWxlY3Rvcl9lbmQgYXRfcnVsZV9oZWFkZXJfZW5kICd7JyBhdF9y
dWxlX2JvZHlfc3RhcnQgbWF5YmVfc3BhY2VfYmVmb3JlX2RlY2xhcmF0aW9uIGRlY2xhcmF0aW9u
X2xpc3QgY2xvc2luZ19icmFjZSB7CiAgICAgICAgICQkID0gcGFyc2VyLT5jcmVhdGVTdHlsZVJ1
bGUoJDIpOwogICAgIH0KICAgOwogCitiZWZvcmVfc2VsZWN0b3JfZ3JvdXBfaXRlbToKKyAgICAv
KiBlbXB0eSAqLyB7CisgICAgICAgIHBhcnNlci0+bWFya1NlbGVjdG9yU3RhcnQoKTsKKyAgICB9
CisKIHNlbGVjdG9yX2xpc3Q6CiAgICAgc2VsZWN0b3IgJXByZWMgVU5JTVBPUlRBTlRfVE9LIHsK
ICAgICAgICAgaWYgKCQxKSB7CkBAIC0xMDQ0LDEwICsxMDU2LDEwIEBAIHNlbGVjdG9yX2xpc3Q6
CiAgICAgICAgICAgICBwYXJzZXItPnVwZGF0ZUxhc3RTZWxlY3RvckxpbmVBbmRQb3NpdGlvbigp
OwogICAgICAgICB9CiAgICAgfQotICAgIHwgc2VsZWN0b3JfbGlzdCAnLCcgbWF5YmVfc3BhY2Ug
c2VsZWN0b3IgJXByZWMgVU5JTVBPUlRBTlRfVE9LIHsKLSAgICAgICAgaWYgKCQxICYmICQ0KSB7
CisgICAgfCBzZWxlY3Rvcl9saXN0IGF0X3NlbGVjdG9yX2VuZCAnLCcgbWF5YmVfc3BhY2UgYmVm
b3JlX3NlbGVjdG9yX2dyb3VwX2l0ZW0gc2VsZWN0b3IgJXByZWMgVU5JTVBPUlRBTlRfVE9LIHsK
KyAgICAgICAgaWYgKCQxICYmICQ2KSB7CiAgICAgICAgICAgICAkJCA9ICQxOwotICAgICAgICAg
ICAgJCQtPmFwcGVuZChwYXJzZXItPnNpbmtGbG9hdGluZ1NlbGVjdG9yKCQ0KSk7CisgICAgICAg
ICAgICAkJC0+YXBwZW5kKHBhcnNlci0+c2lua0Zsb2F0aW5nU2VsZWN0b3IoJDYpKTsKICAgICAg
ICAgICAgIHBhcnNlci0+dXBkYXRlTGFzdFNlbGVjdG9yTGluZUFuZFBvc2l0aW9uKCk7CiAgICAg
ICAgIH0gZWxzZQogICAgICAgICAgICAgJCQgPSAwOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvY3NzL0NTU1BhcnNlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTUGFyc2VyLmNwcApp
bmRleCAwYTBmMWQ0MTY0NTgzYzU4MTNhZTFkYzM3ZWMyMDdiOTIzNDU3NGQ0Li4zMjI2NmFkNTkx
ZWY4ZmRhOGY2Y2M0M2UyOWQ2MWQ3ODY0NWFmNjdhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9jc3MvQ1NTUGFyc2VyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTUGFyc2VyLmNw
cApAQCAtMTA3ODYsNiArMTA3ODYsMjggQEAgdm9pZCBDU1NQYXJzZXI6Om1hcmtSdWxlSGVhZGVy
RW5kKCkKICAgICAgICAgc2V0UnVsZUhlYWRlckVuZDxVQ2hhcj4obV9kYXRhU3RhcnQxNi5nZXQo
KSk7CiB9CiAKK3ZvaWQgQ1NTUGFyc2VyOjptYXJrU2VsZWN0b3JTdGFydCgpCit7CisgICAgaWYg
KCFpc0V4dHJhY3RpbmdTb3VyY2VEYXRhKCkpCisgICAgICAgIHJldHVybjsKKyAgICBBU1NFUlQo
IW1fc2VsZWN0b3JSYW5nZS5lbmQpOworCisgICAgbV9zZWxlY3RvclJhbmdlLnN0YXJ0ID0gdG9r
ZW5TdGFydE9mZnNldCgpOworfQorCit2b2lkIENTU1BhcnNlcjo6bWFya1NlbGVjdG9yRW5kKCkK
K3sKKyAgICBpZiAoIWlzRXh0cmFjdGluZ1NvdXJjZURhdGEoKSkKKyAgICAgICAgcmV0dXJuOwor
ICAgIEFTU0VSVCghbV9zZWxlY3RvclJhbmdlLmVuZCk7CisgICAgQVNTRVJUKG1fY3VycmVudFJ1
bGVEYXRhU3RhY2stPnNpemUoKSk7CisKKyAgICBtX3NlbGVjdG9yUmFuZ2UuZW5kID0gdG9rZW5T
dGFydE9mZnNldCgpOworICAgIG1fY3VycmVudFJ1bGVEYXRhU3RhY2stPmxhc3QoKS0+c2VsZWN0
b3JSYW5nZXMuYXBwZW5kKG1fc2VsZWN0b3JSYW5nZSk7CisgICAgbV9zZWxlY3RvclJhbmdlLnN0
YXJ0ID0gMDsKKyAgICBtX3NlbGVjdG9yUmFuZ2UuZW5kID0gMDsKK30KKwogdm9pZCBDU1NQYXJz
ZXI6Om1hcmtSdWxlQm9keVN0YXJ0KCkKIHsKICAgICBpZiAoIWlzRXh0cmFjdGluZ1NvdXJjZURh
dGEoKSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NQYXJzZXIuaCBiL1NvdXJj
ZS9XZWJDb3JlL2Nzcy9DU1NQYXJzZXIuaAppbmRleCBkMTJmNzJiYzUyZTZlNGEyNzY4ZTYzNDg4
ZWU1ZTNiNzE1NzRjNTFiLi44ZTE1NDZmYTExMmI4ZTcwMjA4ZGY2ZGY1OGU0MDAxNDQ1ZWIzNDU1
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTUGFyc2VyLmgKKysrIGIvU291cmNl
L1dlYkNvcmUvY3NzL0NTU1BhcnNlci5oCkBAIC0zNTAsNiArMzUwLDcgQEAgcHVibGljOgogCiAg
ICAgLy8gdG9rZW5pemVyIG1ldGhvZHMgYW5kIGRhdGEKICAgICBzaXplX3QgbV9wYXJzZWRUZXh0
UHJlZml4TGVuZ3RoOworICAgIFNvdXJjZVJhbmdlIG1fc2VsZWN0b3JSYW5nZTsKICAgICBTb3Vy
Y2VSYW5nZSBtX3Byb3BlcnR5UmFuZ2U7CiAgICAgT3duUHRyPFJ1bGVTb3VyY2VEYXRhTGlzdD4g
bV9jdXJyZW50UnVsZURhdGFTdGFjazsKICAgICBSZWZQdHI8Q1NTUnVsZVNvdXJjZURhdGE+IG1f
Y3VycmVudFJ1bGVEYXRhOwpAQCAtMzU4LDYgKzM1OSw4IEBAIHB1YmxpYzoKICAgICB2b2lkIGZp
eFVucGFyc2VkUHJvcGVydHlSYW5nZXMoQ1NTUnVsZVNvdXJjZURhdGEqKTsKICAgICB2b2lkIG1h
cmtSdWxlSGVhZGVyU3RhcnQoQ1NTUnVsZVNvdXJjZURhdGE6OlR5cGUpOwogICAgIHZvaWQgbWFy
a1J1bGVIZWFkZXJFbmQoKTsKKyAgICB2b2lkIG1hcmtTZWxlY3RvclN0YXJ0KCk7CisgICAgdm9p
ZCBtYXJrU2VsZWN0b3JFbmQoKTsKICAgICB2b2lkIG1hcmtSdWxlQm9keVN0YXJ0KCk7CiAgICAg
dm9pZCBtYXJrUnVsZUJvZHlFbmQoKTsKICAgICB2b2lkIG1hcmtQcm9wZXJ0eVN0YXJ0KCk7CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTUHJvcGVydHlTb3VyY2VEYXRhLmggYi9T
b3VyY2UvV2ViQ29yZS9jc3MvQ1NTUHJvcGVydHlTb3VyY2VEYXRhLmgKaW5kZXggODk4MmFjZjcz
MWUxODEwMWFmMDNmNmMxODExZjIzNmVkNGUzOTVjYy4uZTEyYWFhZTA0M2QyMjNhYjFhYTRhMWJi
MDZmNGM3YzAzZWFkOWFjMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU1Byb3Bl
cnR5U291cmNlRGF0YS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NQcm9wZXJ0eVNvdXJj
ZURhdGEuaApAQCAtODMsNiArODMsNyBAQCBzdHJ1Y3QgQ1NTU3R5bGVTb3VyY2VEYXRhIDogcHVi
bGljIFJlZkNvdW50ZWQ8Q1NTU3R5bGVTb3VyY2VEYXRhPiB7CiAKIHN0cnVjdCBDU1NSdWxlU291
cmNlRGF0YTsKIHR5cGVkZWYgVmVjdG9yPFJlZlB0cjxDU1NSdWxlU291cmNlRGF0YT4gPiBSdWxl
U291cmNlRGF0YUxpc3Q7Cit0eXBlZGVmIFZlY3RvcjxTb3VyY2VSYW5nZT4gU2VsZWN0b3JSYW5n
ZUxpc3Q7CiAKIHN0cnVjdCBDU1NSdWxlU291cmNlRGF0YSA6IHB1YmxpYyBSZWZDb3VudGVkPENT
U1J1bGVTb3VyY2VEYXRhPiB7CiAgICAgZW51bSBUeXBlIHsKQEAgLTEyNCw2ICsxMjUsOSBAQCBz
dHJ1Y3QgQ1NTUnVsZVNvdXJjZURhdGEgOiBwdWJsaWMgUmVmQ291bnRlZDxDU1NSdWxlU291cmNl
RGF0YT4gewogICAgIC8vIFJhbmdlIG9mIHRoZSBydWxlIGJvZHkgKGUuZy4gc3R5bGUgdGV4dCBm
b3Igc3R5bGUgcnVsZXMpIGluIHRoZSBlbmNsb3Npbmcgc291cmNlLgogICAgIFNvdXJjZVJhbmdl
IHJ1bGVCb2R5UmFuZ2U7CiAKKyAgICAvLyBPbmx5IGZvciBDU1NTdHlsZVJ1bGVzLgorICAgIFNl
bGVjdG9yUmFuZ2VMaXN0IHNlbGVjdG9yUmFuZ2VzOworCiAgICAgLy8gT25seSBmb3IgQ1NTU3R5
bGVSdWxlcywgQ1NTRm9udEZhY2VSdWxlcywgYW5kIENTU1BhZ2VSdWxlcy4KICAgICBSZWZQdHI8
Q1NTU3R5bGVTb3VyY2VEYXRhPiBzdHlsZVNvdXJjZURhdGE7CiAKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JTdHlsZVNoZWV0LmNwcCBiL1NvdXJjZS9XZWJD
b3JlL2luc3BlY3Rvci9JbnNwZWN0b3JTdHlsZVNoZWV0LmNwcAppbmRleCBlYWIyZWI0YTNhMTZl
ZjQ4NDFiNjhiMGJlOTdjNWY4MDU3ZTUwNWViLi5mNjczMTFlNzQ0MDYwNWY3YmI3ZDNhNTVmOTA4
Yzg0NjJmYTYzM2Y0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVj
dG9yU3R5bGVTaGVldC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3Rv
clN0eWxlU2hlZXQuY3BwCkBAIC00Nyw2ICs0Nyw3IEBACiAjaW5jbHVkZSAiSW5zcGVjdG9yUGFn
ZUFnZW50LmgiCiAjaW5jbHVkZSAiSW5zcGVjdG9yVmFsdWVzLmgiCiAjaW5jbHVkZSAiTm9kZS5o
IgorI2luY2x1ZGUgIlJlZ3VsYXJFeHByZXNzaW9uLmgiCiAjaW5jbHVkZSAiU1ZHTmFtZXMuaCIK
ICNpbmNsdWRlICJTdHlsZVJlc29sdmVyLmgiCiAjaW5jbHVkZSAiU3R5bGVSdWxlLmgiCkBAIC05
NTIsMjAgKzk1Myw0NCBAQCBQYXNzUmVmUHRyPFR5cGVCdWlsZGVyOjpDU1M6OkNTU1N0eWxlU2hl
ZXRIZWFkZXI+IEluc3BlY3RvclN0eWxlU2hlZXQ6OmJ1aWxkT2JqZQogICAgIHJldHVybiByZXN1
bHQucmVsZWFzZSgpOwogfQogCi1QYXNzUmVmUHRyPFR5cGVCdWlsZGVyOjpDU1M6OlNlbGVjdG9y
TGlzdD4gSW5zcGVjdG9yU3R5bGVTaGVldDo6YnVpbGRPYmplY3RGb3JTZWxlY3Rvckxpc3QoQ1NT
U3R5bGVSdWxlKiBydWxlKQorc3RhdGljIFBhc3NSZWZQdHI8VHlwZUJ1aWxkZXI6OkFycmF5PFN0
cmluZz4gPiBzZWxlY3RvcnNGcm9tU291cmNlKGNvbnN0IENTU1J1bGVTb3VyY2VEYXRhKiBzb3Vy
Y2VEYXRhLCBjb25zdCBTdHJpbmcmIHNoZWV0VGV4dCkKIHsKLSAgICBSZWZQdHI8VHlwZUJ1aWxk
ZXI6OkFycmF5PFN0cmluZz4gPiBzZWxlY3RvcnMgPSBUeXBlQnVpbGRlcjo6QXJyYXk8U3RyaW5n
Pjo6Y3JlYXRlKCk7Ci0gICAgY29uc3QgQ1NTU2VsZWN0b3JMaXN0JiBzZWxlY3Rvckxpc3QgPSBy
dWxlLT5zdHlsZVJ1bGUoKS0+c2VsZWN0b3JMaXN0KCk7Ci0gICAgZm9yIChDU1NTZWxlY3Rvciog
c2VsZWN0b3IgPSBzZWxlY3Rvckxpc3QuZmlyc3QoKTsgc2VsZWN0b3I7IHNlbGVjdG9yID0gQ1NT
U2VsZWN0b3JMaXN0OjpuZXh0KHNlbGVjdG9yKSkKLSAgICAgICAgc2VsZWN0b3JzLT5hZGRJdGVt
KHNlbGVjdG9yLT5zZWxlY3RvclRleHQoKSk7CisgICAgREVGSU5FX1NUQVRJQ19MT0NBTChSZWd1
bGFyRXhwcmVzc2lvbiwgY29tbWVudCwgKCIvXFwqW15dKj9cXCovIiwgVGV4dENhc2VTZW5zaXRp
dmUsIE11bHRpbGluZUVuYWJsZWQpKTsKKyAgICBSZWZQdHI8VHlwZUJ1aWxkZXI6OkFycmF5PFN0
cmluZz4gPiByZXN1bHQgPSBUeXBlQnVpbGRlcjo6QXJyYXk8U3RyaW5nPjo6Y3JlYXRlKCk7Cisg
ICAgY29uc3QgU2VsZWN0b3JSYW5nZUxpc3QmIHJhbmdlcyA9IHNvdXJjZURhdGEtPnNlbGVjdG9y
UmFuZ2VzOworICAgIGZvciAoc2l6ZV90IGkgPSAwLCBzaXplID0gcmFuZ2VzLnNpemUoKTsgaSA8
IHNpemU7ICsraSkgeworICAgICAgICBjb25zdCBTb3VyY2VSYW5nZSYgcmFuZ2UgPSByYW5nZXMu
YXQoaSk7CisgICAgICAgIFN0cmluZyBzZWxlY3RvciA9IHNoZWV0VGV4dC5zdWJzdHJpbmcocmFu
Z2Uuc3RhcnQsIHJhbmdlLmxlbmd0aCgpKTsKIAotICAgIFJlZlB0cjxUeXBlQnVpbGRlcjo6Q1NT
OjpTZWxlY3Rvckxpc3Q+IHJlc3VsdCA9IFR5cGVCdWlsZGVyOjpDU1M6OlNlbGVjdG9yTGlzdDo6
Y3JlYXRlKCkKLSAgICAgICAgLnNldFNlbGVjdG9ycyhzZWxlY3RvcnMpCi0gICAgICAgIC5zZXRU
ZXh0KHJ1bGUtPnNlbGVjdG9yVGV4dCgpKTsKKyAgICAgICAgLy8gV2UgZG9uJ3Qgd2FudCB0byBz
ZWUgYW55IGNvbW1lbnRzIGluIHRoZSBzZWxlY3RvciBjb21wb25lbnRzLCBvbmx5IHRoZSBtZWFu
aW5nZnVsIHBhcnRzLgorICAgICAgICByZXBsYWNlKHNlbGVjdG9yLCBjb21tZW50LCAiIik7Cisg
ICAgICAgIHJlc3VsdC0+YWRkSXRlbShzZWxlY3Rvci5zdHJpcFdoaXRlU3BhY2UoKSk7CisgICAg
fQorICAgIHJldHVybiByZXN1bHQucmVsZWFzZSgpOworfQogCitQYXNzUmVmUHRyPFR5cGVCdWls
ZGVyOjpDU1M6OlNlbGVjdG9yTGlzdD4gSW5zcGVjdG9yU3R5bGVTaGVldDo6YnVpbGRPYmplY3RG
b3JTZWxlY3Rvckxpc3QoQ1NTU3R5bGVSdWxlKiBydWxlKQorewogICAgIFJlZlB0cjxDU1NSdWxl
U291cmNlRGF0YT4gc291cmNlRGF0YTsKICAgICBpZiAoZW5zdXJlUGFyc2VkRGF0YVJlYWR5KCkp
CiAgICAgICAgIHNvdXJjZURhdGEgPSBydWxlU291cmNlRGF0YUZvcihydWxlLT5zdHlsZSgpKTsK
KyAgICBSZWZQdHI8VHlwZUJ1aWxkZXI6OkFycmF5PFN0cmluZz4gPiBzZWxlY3RvcnM7CisKKyAg
ICAvLyBUaGlzIGludGVudGlvbmFsbHkgZG9lcyBub3QgcmVseSBvbiB0aGUgc291cmNlIGRhdGEg
dG8gYXZvaWQgY2F0Y2hpbmcgdGhlIHRyYWlsaW5nIGNvbW1lbnRzIChiZWZvcmUgdGhlIGRlY2xh
cmF0aW9uIHN0YXJ0aW5nICd7JykuCisgICAgU3RyaW5nIHNlbGVjdG9yVGV4dCA9IHJ1bGUtPnNl
bGVjdG9yVGV4dCgpOworCisgICAgaWYgKHNvdXJjZURhdGEpCisgICAgICAgIHNlbGVjdG9ycyA9
IHNlbGVjdG9yc0Zyb21Tb3VyY2Uoc291cmNlRGF0YS5nZXQoKSwgbV9wYXJzZWRTdHlsZVNoZWV0
LT50ZXh0KCkpOworICAgIGVsc2UgeworICAgICAgICBzZWxlY3RvcnMgPSBUeXBlQnVpbGRlcjo6
QXJyYXk8U3RyaW5nPjo6Y3JlYXRlKCk7CisgICAgICAgIGNvbnN0IENTU1NlbGVjdG9yTGlzdCYg
c2VsZWN0b3JMaXN0ID0gcnVsZS0+c3R5bGVSdWxlKCktPnNlbGVjdG9yTGlzdCgpOworICAgICAg
ICBmb3IgKENTU1NlbGVjdG9yKiBzZWxlY3RvciA9IHNlbGVjdG9yTGlzdC5maXJzdCgpOyBzZWxl
Y3Rvcjsgc2VsZWN0b3IgPSBDU1NTZWxlY3Rvckxpc3Q6Om5leHQoc2VsZWN0b3IpKQorICAgICAg
ICAgICAgc2VsZWN0b3JzLT5hZGRJdGVtKHNlbGVjdG9yLT5zZWxlY3RvclRleHQoKSk7CisgICAg
fQorICAgIFJlZlB0cjxUeXBlQnVpbGRlcjo6Q1NTOjpTZWxlY3Rvckxpc3Q+IHJlc3VsdCA9IFR5
cGVCdWlsZGVyOjpDU1M6OlNlbGVjdG9yTGlzdDo6Y3JlYXRlKCkKKyAgICAgICAgLnNldFNlbGVj
dG9ycyhzZWxlY3RvcnMpCisgICAgICAgIC5zZXRUZXh0KHNlbGVjdG9yVGV4dCkKKyAgICAgICAg
LnJlbGVhc2UoKTsKICAgICBpZiAoc291cmNlRGF0YSkKICAgICAgICAgcmVzdWx0LT5zZXRSYW5n
ZShidWlsZFNvdXJjZVJhbmdlT2JqZWN0KHNvdXJjZURhdGEtPnJ1bGVIZWFkZXJSYW5nZSkpOwog
ICAgIHJldHVybiByZXN1bHQucmVsZWFzZSgpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
aW5zcGVjdG9yL2Zyb250LWVuZC9TdHlsZXNTaWRlYmFyUGFuZS5qcyBiL1NvdXJjZS9XZWJDb3Jl
L2luc3BlY3Rvci9mcm9udC1lbmQvU3R5bGVzU2lkZWJhclBhbmUuanMKaW5kZXggZjcxOTZhMWYy
NWVkNjQwZmE2ZjVkNjBjNTVlNjljOTFhOGU1ZGY1MC4uNjIzZTUyNDM5YzhhOWE4YTdhOWI3Nzcw
NDdjMDVhYTlmMWNhMDM0YiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL2Zy
b250LWVuZC9TdHlsZXNTaWRlYmFyUGFuZS5qcworKysgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0
b3IvZnJvbnQtZW5kL1N0eWxlc1NpZGViYXJQYW5lLmpzCkBAIC0xMDkwLDcgKzEwOTAsNyBAQCBX
ZWJJbnNwZWN0b3IuU3R5bGVQcm9wZXJ0aWVzU2VjdGlvbi5wcm90b3R5cGUgPSB7CiAKICAgICAg
ICAgdmFyIHNlbGVjdG9ycyA9IHJ1bGUuc2VsZWN0b3JzOwogICAgICAgICB2YXIgbWF0Y2hpbmdT
ZWxlY3RvcnMgPSBydWxlLm1hdGNoaW5nU2VsZWN0b3JzOwotICAgICAgICBpZiAoc2VsZWN0b3Jz
Lmxlbmd0aCA8IDIgfHwgIW1hdGNoaW5nU2VsZWN0b3JzKQorICAgICAgICBpZiAoIW1hdGNoaW5n
U2VsZWN0b3JzKQogICAgICAgICAgICAgcmV0dXJuOwogCiAgICAgICAgIHZhciBmcmFnbWVudCA9
IGRvY3VtZW50LmNyZWF0ZURvY3VtZW50RnJhZ21lbnQoKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL3RleHQvUmVndWxhckV4cHJlc3Npb24uY3BwIGIvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vdGV4dC9SZWd1bGFyRXhwcmVzc2lvbi5jcHAKaW5kZXggMjM2OTU5MDg1NTZl
OTUyMTdlNWU2OTY5ZDM0OTM4ZThhZGI5YzJiMy4uNzE1OTFhYTc0OTM2MDhlYTNhNjE3ZGM5MDg5
NzU2YTUyZjAyZWQwNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vdGV4dC9S
ZWd1bGFyRXhwcmVzc2lvbi5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vdGV4dC9S
ZWd1bGFyRXhwcmVzc2lvbi5jcHAKQEAgLTM2LDkgKzM2LDkgQEAgbmFtZXNwYWNlIFdlYkNvcmUg
ewogCiBjbGFzcyBSZWd1bGFyRXhwcmVzc2lvbjo6UHJpdmF0ZSA6IHB1YmxpYyBSZWZDb3VudGVk
PFJlZ3VsYXJFeHByZXNzaW9uOjpQcml2YXRlPiB7CiBwdWJsaWM6Ci0gICAgc3RhdGljIFBhc3NS
ZWZQdHI8UHJpdmF0ZT4gY3JlYXRlKGNvbnN0IFN0cmluZyYgcGF0dGVybiwgVGV4dENhc2VTZW5z
aXRpdml0eSBjYXNlU2Vuc2l0aXZpdHkpCisgICAgc3RhdGljIFBhc3NSZWZQdHI8UHJpdmF0ZT4g
Y3JlYXRlKGNvbnN0IFN0cmluZyYgcGF0dGVybiwgVGV4dENhc2VTZW5zaXRpdml0eSBjYXNlU2Vu
c2l0aXZpdHksIE11bHRpbGluZU1vZGUgbXVsdGlsaW5lTW9kZSkKICAgICB7Ci0gICAgICAgIHJl
dHVybiBhZG9wdFJlZihuZXcgUHJpdmF0ZShwYXR0ZXJuLCBjYXNlU2Vuc2l0aXZpdHkpKTsKKyAg
ICAgICAgcmV0dXJuIGFkb3B0UmVmKG5ldyBQcml2YXRlKHBhdHRlcm4sIGNhc2VTZW5zaXRpdml0
eSwgbXVsdGlsaW5lTW9kZSkpOwogICAgIH0KIAogICAgIGludCBsYXN0TWF0Y2hMZW5ndGg7CkBA
IC00NywxNiArNDcsMTYgQEAgcHVibGljOgogICAgIE93blB0cjxKU0M6OllhcnI6OkJ5dGVjb2Rl
UGF0dGVybj4gbV9yZWdFeHBCeXRlQ29kZTsKIAogcHJpdmF0ZToKLSAgICBQcml2YXRlKGNvbnN0
IFN0cmluZyYgcGF0dGVybiwgVGV4dENhc2VTZW5zaXRpdml0eSBjYXNlU2Vuc2l0aXZpdHkpCisg
ICAgUHJpdmF0ZShjb25zdCBTdHJpbmcmIHBhdHRlcm4sIFRleHRDYXNlU2Vuc2l0aXZpdHkgY2Fz
ZVNlbnNpdGl2aXR5LCBNdWx0aWxpbmVNb2RlIG11bHRpbGluZU1vZGUpCiAgICAgICAgIDogbGFz
dE1hdGNoTGVuZ3RoKC0xKQotICAgICAgICAsIG1fcmVnRXhwQnl0ZUNvZGUoY29tcGlsZShwYXR0
ZXJuLCBjYXNlU2Vuc2l0aXZpdHkpKQorICAgICAgICAsIG1fcmVnRXhwQnl0ZUNvZGUoY29tcGls
ZShwYXR0ZXJuLCBjYXNlU2Vuc2l0aXZpdHksIG11bHRpbGluZU1vZGUpKQogICAgICAgICAsIG1f
Y29uc3RydWN0aW9uRXJyb3IoMCkKICAgICB7CiAgICAgfQogCi0gICAgUGFzc093blB0cjxKU0M6
OllhcnI6OkJ5dGVjb2RlUGF0dGVybj4gY29tcGlsZShjb25zdCBTdHJpbmcmIHBhdHRlcm5TdHJp
bmcsIFRleHRDYXNlU2Vuc2l0aXZpdHkgY2FzZVNlbnNpdGl2aXR5KQorICAgIFBhc3NPd25QdHI8
SlNDOjpZYXJyOjpCeXRlY29kZVBhdHRlcm4+IGNvbXBpbGUoY29uc3QgU3RyaW5nJiBwYXR0ZXJu
U3RyaW5nLCBUZXh0Q2FzZVNlbnNpdGl2aXR5IGNhc2VTZW5zaXRpdml0eSwgTXVsdGlsaW5lTW9k
ZSBtdWx0aWxpbmVNb2RlKQogICAgIHsKLSAgICAgICAgSlNDOjpZYXJyOjpZYXJyUGF0dGVybiBw
YXR0ZXJuKHBhdHRlcm5TdHJpbmcsIChjYXNlU2Vuc2l0aXZpdHkgPT0gVGV4dENhc2VJbnNlbnNp
dGl2ZSksIGZhbHNlLCAmbV9jb25zdHJ1Y3Rpb25FcnJvcik7CisgICAgICAgIEpTQzo6WWFycjo6
WWFyclBhdHRlcm4gcGF0dGVybihwYXR0ZXJuU3RyaW5nLCAoY2FzZVNlbnNpdGl2aXR5ID09IFRl
eHRDYXNlSW5zZW5zaXRpdmUpLCAobXVsdGlsaW5lTW9kZSA9PSBNdWx0aWxpbmVFbmFibGVkKSwg
Jm1fY29uc3RydWN0aW9uRXJyb3IpOwogICAgICAgICBpZiAobV9jb25zdHJ1Y3Rpb25FcnJvcikg
ewogICAgICAgICAgICAgTE9HX0VSUk9SKCJSZWd1bGFyRXhwcmVzc2lvbjogWUFSUiBjb21waWxl
IGZhaWxlZCB3aXRoICclcyciLCBtX2NvbnN0cnVjdGlvbkVycm9yKTsKICAgICAgICAgICAgIHJl
dHVybiBudWxscHRyOwpAQCAtNzEsOCArNzEsOCBAQCBwcml2YXRlOgogICAgIGNvbnN0IGNoYXIq
IG1fY29uc3RydWN0aW9uRXJyb3I7CiB9OwogCi1SZWd1bGFyRXhwcmVzc2lvbjo6UmVndWxhckV4
cHJlc3Npb24oY29uc3QgU3RyaW5nJiBwYXR0ZXJuLCBUZXh0Q2FzZVNlbnNpdGl2aXR5IGNhc2VT
ZW5zaXRpdml0eSkKLSAgICA6IGQoUHJpdmF0ZTo6Y3JlYXRlKHBhdHRlcm4sIGNhc2VTZW5zaXRp
dml0eSkpCitSZWd1bGFyRXhwcmVzc2lvbjo6UmVndWxhckV4cHJlc3Npb24oY29uc3QgU3RyaW5n
JiBwYXR0ZXJuLCBUZXh0Q2FzZVNlbnNpdGl2aXR5IGNhc2VTZW5zaXRpdml0eSwgTXVsdGlsaW5l
TW9kZSBtdWx0aWxpbmVNb2RlKQorICAgIDogZChQcml2YXRlOjpjcmVhdGUocGF0dGVybiwgY2Fz
ZVNlbnNpdGl2aXR5LCBtdWx0aWxpbmVNb2RlKSkKIHsKIH0KIApkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vdGV4dC9SZWd1bGFyRXhwcmVzc2lvbi5oIGIvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vdGV4dC9SZWd1bGFyRXhwcmVzc2lvbi5oCmluZGV4IDdjNDhmYWFiZWVkNzhl
YTgxYmQ5ZWU2YWYyYWFjNDg1M2E0N2VhYTguLmM2MjhjZGI0NGJlMWEwOTYzYjVmZGU5NGEwM2Nk
YjhhZTdkNjFlY2QgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL3RleHQvUmVn
dWxhckV4cHJlc3Npb24uaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS90ZXh0L1JlZ3Vs
YXJFeHByZXNzaW9uLmgKQEAgLTMwLDEwICszMCwxNSBAQAogCiBuYW1lc3BhY2UgV2ViQ29yZSB7
CiAKK2VudW0gTXVsdGlsaW5lTW9kZSB7CisgICAgTXVsdGlsaW5lRGlzYWJsZWQsCisgICAgTXVs
dGlsaW5lRW5hYmxlZAorfTsKKwogY2xhc3MgUmVndWxhckV4cHJlc3Npb24gewogICAgIFdURl9N
QUtFX0ZBU1RfQUxMT0NBVEVEOwogcHVibGljOgotICAgIFJlZ3VsYXJFeHByZXNzaW9uKGNvbnN0
IFN0cmluZyYsIFRleHRDYXNlU2Vuc2l0aXZpdHkpOworICAgIFJlZ3VsYXJFeHByZXNzaW9uKGNv
bnN0IFN0cmluZyYsIFRleHRDYXNlU2Vuc2l0aXZpdHksIE11bHRpbGluZU1vZGUgPSBNdWx0aWxp
bmVEaXNhYmxlZCk7CiAgICAgflJlZ3VsYXJFeHByZXNzaW9uKCk7CiAKICAgICBSZWd1bGFyRXhw
cmVzc2lvbihjb25zdCBSZWd1bGFyRXhwcmVzc2lvbiYpOwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCmluZGV4IDI4OWQ4NmE1YzBiMGNj
MmYxYzBlZTBkMGVmYzZhNjc5ODE0NTc1MWIuLjFjNzUxZTQ4MGZlNjNmZTUwYzE1NWFhYWJjY2Zj
Zjc0OTIzMTgxNWMgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL0NoYW5nZUxvZworKysgYi9MYXlv
dXRUZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNCBAQAorMjAxMi0xMS0yOCAgQWxleGFuZGVy
IFBhdmxvdiAgPGFwYXZsb3ZAY2hyb21pdW0ub3JnPgorCisgICAgICAgIFdlYiBJbnNwZWN0b3I6
IFtTdHlsZXNdIFJldGFpbiBzZWxlY3RvciBjYXNlIGFzIHdyaXR0ZW4gaW4gdGhlIHNvdXJjZSBj
b2RlCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMDMx
MTgKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIGlu
c3BlY3Rvci9zdHlsZXMvc2VsZWN0b3ItbGlzdC1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAg
ICAqIGluc3BlY3Rvci9zdHlsZXMvc2VsZWN0b3ItbGlzdC5odG1sOiBBZGRlZC4KKyAgICAgICAg
KiBpbnNwZWN0b3Ivc3R5bGVzL3N0eWxlcy1hZGQtbmV3LXJ1bGUtZXhwZWN0ZWQudHh0OiBSZWJh
c2VsaW5lZC4KKwogMjAxMi0xMS0yNyAgTWlrZSBXZXN0ICA8bWt3c3RAY2hyb21pdW0ub3JnPgog
CiAgICAgICAgIEltcHJvdmUgV2ViU29ja2V0Q2hhbm5lbCBjb25uZWN0aW9uIGZhaWx1cmUgY29u
c29sZSBtZXNzYWdlcy4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2luc3BlY3Rvci9zdHlsZXMv
c2VsZWN0b3ItbGlzdC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbnNwZWN0b3Ivc3R5bGVz
L3NlbGVjdG9yLWxpc3QtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmUwZTA2YWYyNmQzODJlYmM2
N2MzZjE2NmFhZWFjZThjZGM4ZDhhY2YKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9p
bnNwZWN0b3Ivc3R5bGVzL3NlbGVjdG9yLWxpc3QtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsMzAg
QEAKK1Rlc3RzIHJlcHJlc2VudGF0aW9uIG9mIHNlbGVjdG9yIGxpc3RzIGluIHRoZSBwcm90b2Nv
bC4gQnVnIDEwMzExOC4KKworVGV4dAorW2V4cGFuZGVkXSAKK2VsZW1lbnQuc3R5bGUgIHsgKCkK
KworPT09PT09PT0gTWF0Y2hlZCBDU1MgUnVsZXMgPT09PT09PT0KK1tleHBhbmRlZF0gCitGT08g
YkFyLCAjaW5zcGVjdGVkLCBNT08+QkFSLCBodE1MIGRpdiwgRm9vfk1vbywgTU9PICB7IChzZWxl
Y3Rvci1saXN0Lmh0bWw6MTkpCitjb2xvcjogZ3JlZW47CisKK1tleHBhbmRlZF0gCisjaW5zcGVj
dGVkICB7IChzZWxlY3Rvci1saXN0Lmh0bWw6MTApCisKK1tleHBhbmRlZF0gCisjSW5TcEVjVGVE
ICB7IChzZWxlY3Rvci1saXN0Lmh0bWw6NykKKworW2V4cGFuZGVkXSAKKyNpbnNwZWN0ZWQgIHsg
KHNlbGVjdG9yLWxpc3QuaHRtbDo0KQorCitbZXhwYW5kZWRdIAorRk9PIGJBciwgI2luc3BlY3Rl
ZCwgTU9PPkJBUiwgaHRNTCBkaXYsIEZvb35Nb28sIE1PTyAgeyAoc2VsZWN0b3ItbGlzdC5odG1s
OjE5KQorLy0tIG92ZXJsb2FkZWQgLS0vIGNvbG9yOiBncmVlbjsKKworW2V4cGFuZGVkXSAKK2Rp
diAgeyAodXNlciBhZ2VudCBzdHlsZXNoZWV0KQorZGlzcGxheTogYmxvY2s7CisKKworCmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9pbnNwZWN0b3Ivc3R5bGVzL3NlbGVjdG9yLWxpc3QuaHRtbCBi
L0xheW91dFRlc3RzL2luc3BlY3Rvci9zdHlsZXMvc2VsZWN0b3ItbGlzdC5odG1sCm5ldyBmaWxl
IG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAuLjk1ZmVjNjY1ZTVhZDk3NzY4NDUwMjMyMThjOWI5NWQ3ZDBkZTRiNzMKLS0tIC9kZXYvbnVs
bAorKysgYi9MYXlvdXRUZXN0cy9pbnNwZWN0b3Ivc3R5bGVzL3NlbGVjdG9yLWxpc3QuaHRtbApA
QCAtMCwwICsxLDUxIEBACis8aHRtbD4KKzxoZWFkPgorPHN0eWxlPgorI2luc3BlY3RlZHsKK30K
KworI0luU3BFY1RlRCB7Cit9CisKKy8qICovI2luc3BlY3RlZC8qICovIHsKK30KKworLyogCisg
Ki8gRk9PLypTaW5nbGUtbGluZSAxKi8gYkFyLC8qIFNpbmdsZS1saW5lIDIqLyNpbnNwZWN0ZWQv
KgorICAgIE11bHRpbGluZSBjb21tZW50CisqLyAsTU9PPkJBUiwgLyoxKi9odE1MIC8qMgorKi9k
aXYvKjMqLywvKiovRm9vfi8qKkMqL01vbywvKiovTU9PIC8qIENvbW1lbnQKKyAqLyAKK3sKKyAg
Y29sb3I6IGdyZWVuOworfQorCis8L3N0eWxlPgorPHNjcmlwdCBzcmM9Ii4uLy4uL2h0dHAvdGVz
dHMvaW5zcGVjdG9yL2luc3BlY3Rvci10ZXN0LmpzIj48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIu
Li8uLi9odHRwL3Rlc3RzL2luc3BlY3Rvci9lbGVtZW50cy10ZXN0LmpzIj48L3NjcmlwdD4KKzxz
Y3JpcHQ+CisKK2Z1bmN0aW9uIHRlc3QoKQoreworICAgIFdlYkluc3BlY3Rvci5zaG93UGFuZWwo
ImVsZW1lbnRzIik7CisgICAgSW5zcGVjdG9yVGVzdC5zZWxlY3ROb2RlQW5kV2FpdEZvclN0eWxl
cygiaW5zcGVjdGVkIiwgc3RlcDEpOworCisgICAgZnVuY3Rpb24gc3RlcDEoKQorICAgIHsKKyAg
ICAgICAgSW5zcGVjdG9yVGVzdC5kdW1wU2VsZWN0ZWRFbGVtZW50U3R5bGVzKHRydWUpOworICAg
ICAgICBJbnNwZWN0b3JUZXN0LmNvbXBsZXRlVGVzdCgpOworICAgIH0KK30KKworPC9zY3JpcHQ+
Cis8L2hlYWQ+CisKKzxib2R5IG9ubG9hZD0icnVuVGVzdCgpIj4KKzxwPgorVGVzdHMgcmVwcmVz
ZW50YXRpb24gb2Ygc2VsZWN0b3IgbGlzdHMgaW4gdGhlIHByb3RvY29sLiA8YSBocmVmPSJodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTAzMTE4Ij5CdWcgMTAzMTE4PC9h
Pi4KKzwvcD4KKworPGRpdiBpZD0iaW5zcGVjdGVkIj5UZXh0PC9kaXY+CisKKzwvYm9keT4KKzwv
aHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2luc3BlY3Rvci9zdHlsZXMvc3R5bGVzLWFk
ZC1uZXctcnVsZS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbnNwZWN0b3Ivc3R5bGVzL3N0
eWxlcy1hZGQtbmV3LXJ1bGUtZXhwZWN0ZWQudHh0CmluZGV4IGI0Yzg5OWE0MTkxZDIzNDNmOWQy
NGRiZjA4M2IwNmQ5YzM4ODYwOTQuLmM0OGNkZGY4NjU5OWI0OWNlN2IyZTQ3ZDZjYWM2ZjQxODA3
ZTA5M2IgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2luc3BlY3Rvci9zdHlsZXMvc3R5bGVzLWFk
ZC1uZXctcnVsZS1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW5zcGVjdG9yL3N0eWxl
cy9zdHlsZXMtYWRkLW5ldy1ydWxlLWV4cGVjdGVkLnR4dApAQCAtMTMsNyArMTMsNyBAQCBmb28s
IFskI2luc3BlY3RlZCRdLCBiYXIgIHsgKGluc3BlY3Rvci1zdHlsZXNoZWV0OjEpCiBjb2xvcjog
bWFyb29uOwogCiBbZXhwYW5kZWRdIAotZGl2ICB7ICh1c2VyIGFnZW50IHN0eWxlc2hlZXQpCitb
JGRpdiRdICB7ICh1c2VyIGFnZW50IHN0eWxlc2hlZXQpCiBkaXNwbGF5OiBibG9jazsKIAogCg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>176732</attachid>
            <date>2012-11-29 07:22:47 -0800</date>
            <delta_ts>2012-12-03 00:52:01 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-103118-20121129192020.patch</filename>
            <type>text/plain</type>
            <size>18919</size>
            <attacher name="Alexander Pavlov (apavlov)">apavlov</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTM2MTI5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYWZhNzUyM2ZkZjVlNjMw
MGQ0ZGQ0ODlkYjBkODNiYzk1OTg3MWYwMS4uY2Y0MjdlYzc1NjFiYTcyMzFkOWZjODcwYmVkOWFk
OWJmN2UzOWYyZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQyIEBACisyMDEyLTExLTI4ICBBbGV4
YW5kZXIgUGF2bG92ICA8YXBhdmxvdkBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgV2ViIEluc3Bl
Y3RvcjogW1N0eWxlc10gUmV0YWluIHNlbGVjdG9yIGNhc2UgYXMgd3JpdHRlbiBpbiB0aGUgc291
cmNlIGNvZGUKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lk
PTEwMzExOAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAg
IFRoaXMgY2hhbmdlOgorICAgICAgICAtIGFkZHMgcGFyc2luZyBvZiBzZWxlY3RvciBncm91cCBj
b21wb25lbnRzIGluIHRoZSBDU1NQYXJzZXI7CisgICAgICAgIC0gYnVpbGRzIHRoZSBTZWxlY3Rv
ckxpc3Quc2VsZWN0b3JzIGJhc2VkIG9uIHRoZSBzb3VyY2UgY29kZSB3aGVuZXZlciBwb3NzaWJs
ZS4KKyAgICAgICAgICBTdHJpcHMgW211bHRpbGluZV0gY29tbWVudHMgYW5kIHdoaXRlc3BhY2U7
CisgICAgICAgIC0gYWRkcyB0aGUgTXVsdGlsaW5lTW9kZSB0byBSZWd1bGFyRXhwcmVzc2lvbi4K
KworICAgICAgICBUZXN0OiBpbnNwZWN0b3Ivc3R5bGVzL3NlbGVjdG9yLWxpc3QuaHRtbAorCisg
ICAgICAgICogV2ViQ29yZS5leHAuaW46IFVwZGF0ZSB0aGUgZXhwb3J0ZWQgc3ltYm9sLgorICAg
ICAgICAqIGNzcy9DU1NHcmFtbWFyLnkuaW46IEFkZCBpbnZvY2F0aW9ucyBmb3IgQ1NTUGFyc2Vy
OjptYXJrU2VsZWN0b3JbU3RhcnR8RW5kXSgpIGFzIHJlcXVpcmVkLgorICAgICAgICAqIGNzcy9D
U1NQYXJzZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6Q1NTUGFyc2VyOjptYXJrU2VsZWN0b3JT
dGFydCk6IEdldHMgaW52b2tlZCB0byBtYXJrIGEgc2VsZWN0b3IgZ3JvdXAgaXRlbSBzdGFydCBv
ZmZzZXQuCisgICAgICAgIChXZWJDb3JlOjpDU1NQYXJzZXI6Om1hcmtTZWxlY3RvckVuZCk6IERp
dHRvIGZvciB0aGUgZW5kIG9mZnNldC4KKyAgICAgICAgKiBjc3MvQ1NTUGFyc2VyLmg6IEFkZCBu
ZXcgbWV0aG9kcyBhbmQgYSBTb3VyY2VSYW5nZSB0cmFja2luZyBmaWVsZC4KKyAgICAgICAgKiBj
c3MvQ1NTUHJvcGVydHlTb3VyY2VEYXRhLmg6IEFkZCBTZWxlY3RvclJhbmdlTGlzdCB0byB0aGUg
Q1NTUnVsZVNvdXJjZURhdGEuCisgICAgICAgICogaW5zcGVjdG9yL0luc3BlY3RvclN0eWxlU2hl
ZXQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6c2VsZWN0b3JzRnJvbVNvdXJjZSk6IEJ1aWxkcyB0
aGUgU2VsZWN0b3JMaXN0IGJhc2VkIG9uIHRoZSB1bmRlcmx5aW5nIHNvdXJjZSBkYXRhLgorICAg
ICAgICBTdHJpcHMgY29tbWVudHMgYW5kIHdoaXRlc3BhY2UgZnJvbSBzZWxlY3RvcnMuCisgICAg
ICAgIChXZWJDb3JlOjpJbnNwZWN0b3JTdHlsZVNoZWV0OjpidWlsZE9iamVjdEZvclNlbGVjdG9y
TGlzdCk6CisgICAgICAgIEJ1aWxkcyBTZWxlY3Rvckxpc3QgYmFzZWQgb24gdGhlIGF2YWlsYWJp
bGl0eSBvZiB0aGUgc291cmNlIGNvZGUuCisgICAgICAgICogaW5zcGVjdG9yL2Zyb250LWVuZC9T
dHlsZXNTaWRlYmFyUGFuZS5qczoKKyAgICAgICAgKFdlYkluc3BlY3Rvci5TdHlsZVByb3BlcnRp
ZXNTZWN0aW9uLnByb3RvdHlwZS5fbWFya1NlbGVjdG9yTWF0Y2hlcyk6CisgICAgICAgIFVwZGF0
ZSBzZWxlY3RvcnMgaW4gYWxsIGNhc2VzIHRvIG1ha2UgdXNlIG9mIHRoZSBzb3VyY2UtYmFzZWQg
aW5mb3JtYXRpb24gd2hlbmV2ZXIgcG9zc2libGUuCisgICAgICAgICogcGxhdGZvcm0vdGV4dC9S
ZWd1bGFyRXhwcmVzc2lvbi5jcHA6CisgICAgICAgIEFkZCB0aGUgTXVsdGlsaW5lTW9kZSBwYXJh
bWV0ZXIgaW50byB0aGUgY29uc3RydWN0b3IvZmFjdG9yeSBtZXRob2QgYW5kIHVsdGltYXRlbHkg
cGFzcyBpdCBpbnRvIFlhcnJQYXR0ZXJuLgorICAgICAgICAoV2ViQ29yZTo6UmVndWxhckV4cHJl
c3Npb246OlByaXZhdGU6OmNyZWF0ZSk6IFNlZSBhYm92ZS4KKyAgICAgICAgKFdlYkNvcmU6OlJl
Z3VsYXJFeHByZXNzaW9uOjpQcml2YXRlOjpQcml2YXRlKTogU2VlIGFib3ZlLgorICAgICAgICAo
V2ViQ29yZTo6UmVndWxhckV4cHJlc3Npb246OlByaXZhdGU6OmNvbXBpbGUpOiBTZWUgYWJvdmUu
CisgICAgICAgIChXZWJDb3JlOjpSZWd1bGFyRXhwcmVzc2lvbjo6UmVndWxhckV4cHJlc3Npb24p
OiBTZWUgYWJvdmUuCisgICAgICAgICogcGxhdGZvcm0vdGV4dC9SZWd1bGFyRXhwcmVzc2lvbi5o
OgorICAgICAgICBBZGQgZW51bSBNdWx0aWxpbmVNb2RlLCBtb2RpZnkgY29uc3RydWN0b3IgYW5k
IGZhY3RvcnkgbWV0aG9kIHNpZ25hdHVyZXMgYWNjb3JkaW5nbHkuCisKIDIwMTItMTEtMjkgIEZs
b3JpbiBNYWxpdGEgIDxmbWFsaXRhQGNocm9taXVtLm9yZz4KIAogICAgICAgICBbU2tpYV0gQWRk
IG1pc3NpbmcgT3BhcXVlUmVnaW9uU2tpYSBub3RpZmllciBjYWxscwpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvV2ViQ29yZS5leHAuaW4gYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLmV4cC5p
bgppbmRleCBhZjkxZDNkOTU1NDQ0YjJiYmM0NWU0NzgyMjUyODQ4OGY1ZTdhNDE1Li4zNjJkZjUw
N2RjZDI2ODAyMGU5Mjk5MTdjYmMxMDc4Mjc5OGVhM2EwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9XZWJDb3JlLmV4cC5pbgorKysgYi9Tb3VyY2UvV2ViQ29yZS9XZWJDb3JlLmV4cC5pbgpA
QCAtNDk3LDcgKzQ5Nyw3IEBAIF9fWk43V2ViQ29yZTE3SlNET01HbG9iYWxPYmplY3Q2c19pbmZv
RQogX19aTjdXZWJDb3JlMTdsYW5ndWFnZURpZENoYW5nZUV2CiBfX1pON1dlYkNvcmUxN01vdXNl
UmVsYXRlZEV2ZW50N29mZnNldFhFdgogX19aTjdXZWJDb3JlMTdNb3VzZVJlbGF0ZWRFdmVudDdv
ZmZzZXRZRXYKLV9fWk43V2ViQ29yZTE3UmVndWxhckV4cHJlc3Npb25DMUVSS04zV1RGNlN0cmlu
Z0VOUzFfMTlUZXh0Q2FzZVNlbnNpdGl2aXR5RQorX19aTjdXZWJDb3JlMTdSZWd1bGFyRXhwcmVz
c2lvbkMxRVJLTjNXVEY2U3RyaW5nRU5TMV8xOVRleHRDYXNlU2Vuc2l0aXZpdHlFTlNfMTNNdWx0
aWxpbmVNb2RlRQogX19aTjdXZWJDb3JlMTdSZWd1bGFyRXhwcmVzc2lvbkQxRXYKIF9fWk43V2Vi
Q29yZTE3U3VicmVzb3VyY2VMb2FkZXI2Y3JlYXRlRVBOU181RnJhbWVFUE5TXzE0Q2FjaGVkUmVz
b3VyY2VFUktOU18xNVJlc291cmNlUmVxdWVzdEVSS05TXzIxUmVzb3VyY2VMb2FkZXJPcHRpb25z
RQogX19aTjdXZWJDb3JlMTdWaWV3cG9ydEFyZ3VtZW50czE5ZGVwcmVjYXRlZFRhcmdldERQSUUK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NHcmFtbWFyLnkuaW4gYi9Tb3VyY2Uv
V2ViQ29yZS9jc3MvQ1NTR3JhbW1hci55LmluCmluZGV4IDIxYjAxNjEzNWJhNThlNGUyMDRlZjc2
OWExOTdmMGI4NzE0YjZlOTQuLjQ0ZGE1MjZlNzFiMTFlN2YwY2IyZTQ2ZTc1OGM5YjdiNzQyN2Mw
OGIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NHcmFtbWFyLnkuaW4KKysrIGIv
U291cmNlL1dlYkNvcmUvY3NzL0NTU0dyYW1tYXIueS5pbgpAQCAtMTAyMCw2ICsxMDIwLDcgQEAg
bWF5YmVfc3BhY2VfYmVmb3JlX2RlY2xhcmF0aW9uOgogYmVmb3JlX3NlbGVjdG9yX2xpc3Q6CiAg
ICAgLyogZW1wdHkgKi8gewogICAgICAgICBwYXJzZXItPm1hcmtSdWxlSGVhZGVyU3RhcnQoQ1NT
UnVsZVNvdXJjZURhdGE6OlNUWUxFX1JVTEUpOworICAgICAgICBwYXJzZXItPm1hcmtTZWxlY3Rv
clN0YXJ0KCk7CiAgICAgfQogICA7CiAKQEAgLTEwMjksMTIgKzEwMzAsMjMgQEAgYXRfcnVsZV9o
ZWFkZXJfZW5kOgogICAgIH0KICAgOwogCithdF9zZWxlY3Rvcl9lbmQ6CisgICAgLyogZW1wdHkg
Ki8geworICAgICAgICBwYXJzZXItPm1hcmtTZWxlY3RvckVuZCgpOworICAgIH0KKyAgOworCiBy
dWxlc2V0OgotICAgIGJlZm9yZV9zZWxlY3Rvcl9saXN0IHNlbGVjdG9yX2xpc3QgYXRfcnVsZV9o
ZWFkZXJfZW5kICd7JyBhdF9ydWxlX2JvZHlfc3RhcnQgbWF5YmVfc3BhY2VfYmVmb3JlX2RlY2xh
cmF0aW9uIGRlY2xhcmF0aW9uX2xpc3QgY2xvc2luZ19icmFjZSB7CisgICAgYmVmb3JlX3NlbGVj
dG9yX2xpc3Qgc2VsZWN0b3JfbGlzdCBhdF9zZWxlY3Rvcl9lbmQgYXRfcnVsZV9oZWFkZXJfZW5k
ICd7JyBhdF9ydWxlX2JvZHlfc3RhcnQgbWF5YmVfc3BhY2VfYmVmb3JlX2RlY2xhcmF0aW9uIGRl
Y2xhcmF0aW9uX2xpc3QgY2xvc2luZ19icmFjZSB7CiAgICAgICAgICQkID0gcGFyc2VyLT5jcmVh
dGVTdHlsZVJ1bGUoJDIpOwogICAgIH0KICAgOwogCitiZWZvcmVfc2VsZWN0b3JfZ3JvdXBfaXRl
bToKKyAgICAvKiBlbXB0eSAqLyB7CisgICAgICAgIHBhcnNlci0+bWFya1NlbGVjdG9yU3RhcnQo
KTsKKyAgICB9CisKIHNlbGVjdG9yX2xpc3Q6CiAgICAgc2VsZWN0b3IgJXByZWMgVU5JTVBPUlRB
TlRfVE9LIHsKICAgICAgICAgaWYgKCQxKSB7CkBAIC0xMDQ0LDEwICsxMDU2LDEwIEBAIHNlbGVj
dG9yX2xpc3Q6CiAgICAgICAgICAgICBwYXJzZXItPnVwZGF0ZUxhc3RTZWxlY3RvckxpbmVBbmRQ
b3NpdGlvbigpOwogICAgICAgICB9CiAgICAgfQotICAgIHwgc2VsZWN0b3JfbGlzdCAnLCcgbWF5
YmVfc3BhY2Ugc2VsZWN0b3IgJXByZWMgVU5JTVBPUlRBTlRfVE9LIHsKLSAgICAgICAgaWYgKCQx
ICYmICQ0KSB7CisgICAgfCBzZWxlY3Rvcl9saXN0IGF0X3NlbGVjdG9yX2VuZCAnLCcgbWF5YmVf
c3BhY2UgYmVmb3JlX3NlbGVjdG9yX2dyb3VwX2l0ZW0gc2VsZWN0b3IgJXByZWMgVU5JTVBPUlRB
TlRfVE9LIHsKKyAgICAgICAgaWYgKCQxICYmICQ2KSB7CiAgICAgICAgICAgICAkJCA9ICQxOwot
ICAgICAgICAgICAgJCQtPmFwcGVuZChwYXJzZXItPnNpbmtGbG9hdGluZ1NlbGVjdG9yKCQ0KSk7
CisgICAgICAgICAgICAkJC0+YXBwZW5kKHBhcnNlci0+c2lua0Zsb2F0aW5nU2VsZWN0b3IoJDYp
KTsKICAgICAgICAgICAgIHBhcnNlci0+dXBkYXRlTGFzdFNlbGVjdG9yTGluZUFuZFBvc2l0aW9u
KCk7CiAgICAgICAgIH0gZWxzZQogICAgICAgICAgICAgJCQgPSAwOwpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvY3NzL0NTU1BhcnNlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTUGFy
c2VyLmNwcAppbmRleCA0M2E4OWU0MjQwZDNiNzA1ZWUwMDI2YWY1NzgwMTYyZTk4ODg2NWE4Li5h
ZDZmZGFkY2RjMjk1NzRmYWYwZjZiZDI4Mjk5NTgzNzJhNWNkMTU1IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9jc3MvQ1NTUGFyc2VyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NT
UGFyc2VyLmNwcApAQCAtMTA3ODMsNiArMTA3ODMsMjggQEAgdm9pZCBDU1NQYXJzZXI6Om1hcmtS
dWxlSGVhZGVyRW5kKCkKICAgICAgICAgc2V0UnVsZUhlYWRlckVuZDxVQ2hhcj4obV9kYXRhU3Rh
cnQxNi5nZXQoKSk7CiB9CiAKK3ZvaWQgQ1NTUGFyc2VyOjptYXJrU2VsZWN0b3JTdGFydCgpCit7
CisgICAgaWYgKCFpc0V4dHJhY3RpbmdTb3VyY2VEYXRhKCkpCisgICAgICAgIHJldHVybjsKKyAg
ICBBU1NFUlQoIW1fc2VsZWN0b3JSYW5nZS5lbmQpOworCisgICAgbV9zZWxlY3RvclJhbmdlLnN0
YXJ0ID0gdG9rZW5TdGFydE9mZnNldCgpOworfQorCit2b2lkIENTU1BhcnNlcjo6bWFya1NlbGVj
dG9yRW5kKCkKK3sKKyAgICBpZiAoIWlzRXh0cmFjdGluZ1NvdXJjZURhdGEoKSkKKyAgICAgICAg
cmV0dXJuOworICAgIEFTU0VSVCghbV9zZWxlY3RvclJhbmdlLmVuZCk7CisgICAgQVNTRVJUKG1f
Y3VycmVudFJ1bGVEYXRhU3RhY2stPnNpemUoKSk7CisKKyAgICBtX3NlbGVjdG9yUmFuZ2UuZW5k
ID0gdG9rZW5TdGFydE9mZnNldCgpOworICAgIG1fY3VycmVudFJ1bGVEYXRhU3RhY2stPmxhc3Qo
KS0+c2VsZWN0b3JSYW5nZXMuYXBwZW5kKG1fc2VsZWN0b3JSYW5nZSk7CisgICAgbV9zZWxlY3Rv
clJhbmdlLnN0YXJ0ID0gMDsKKyAgICBtX3NlbGVjdG9yUmFuZ2UuZW5kID0gMDsKK30KKwogdm9p
ZCBDU1NQYXJzZXI6Om1hcmtSdWxlQm9keVN0YXJ0KCkKIHsKICAgICBpZiAoIWlzRXh0cmFjdGlu
Z1NvdXJjZURhdGEoKSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NQYXJzZXIu
aCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NQYXJzZXIuaAppbmRleCBkMTJmNzJiYzUyZTZlNGEy
NzY4ZTYzNDg4ZWU1ZTNiNzE1NzRjNTFiLi44ZTE1NDZmYTExMmI4ZTcwMjA4ZGY2ZGY1OGU0MDAx
NDQ1ZWIzNDU1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTUGFyc2VyLmgKKysr
IGIvU291cmNlL1dlYkNvcmUvY3NzL0NTU1BhcnNlci5oCkBAIC0zNTAsNiArMzUwLDcgQEAgcHVi
bGljOgogCiAgICAgLy8gdG9rZW5pemVyIG1ldGhvZHMgYW5kIGRhdGEKICAgICBzaXplX3QgbV9w
YXJzZWRUZXh0UHJlZml4TGVuZ3RoOworICAgIFNvdXJjZVJhbmdlIG1fc2VsZWN0b3JSYW5nZTsK
ICAgICBTb3VyY2VSYW5nZSBtX3Byb3BlcnR5UmFuZ2U7CiAgICAgT3duUHRyPFJ1bGVTb3VyY2VE
YXRhTGlzdD4gbV9jdXJyZW50UnVsZURhdGFTdGFjazsKICAgICBSZWZQdHI8Q1NTUnVsZVNvdXJj
ZURhdGE+IG1fY3VycmVudFJ1bGVEYXRhOwpAQCAtMzU4LDYgKzM1OSw4IEBAIHB1YmxpYzoKICAg
ICB2b2lkIGZpeFVucGFyc2VkUHJvcGVydHlSYW5nZXMoQ1NTUnVsZVNvdXJjZURhdGEqKTsKICAg
ICB2b2lkIG1hcmtSdWxlSGVhZGVyU3RhcnQoQ1NTUnVsZVNvdXJjZURhdGE6OlR5cGUpOwogICAg
IHZvaWQgbWFya1J1bGVIZWFkZXJFbmQoKTsKKyAgICB2b2lkIG1hcmtTZWxlY3RvclN0YXJ0KCk7
CisgICAgdm9pZCBtYXJrU2VsZWN0b3JFbmQoKTsKICAgICB2b2lkIG1hcmtSdWxlQm9keVN0YXJ0
KCk7CiAgICAgdm9pZCBtYXJrUnVsZUJvZHlFbmQoKTsKICAgICB2b2lkIG1hcmtQcm9wZXJ0eVN0
YXJ0KCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTUHJvcGVydHlTb3VyY2VE
YXRhLmggYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTUHJvcGVydHlTb3VyY2VEYXRhLmgKaW5kZXgg
ODk4MmFjZjczMWUxODEwMWFmMDNmNmMxODExZjIzNmVkNGUzOTVjYy4uZTEyYWFhZTA0M2QyMjNh
YjFhYTRhMWJiMDZmNGM3YzAzZWFkOWFjMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3Nz
L0NTU1Byb3BlcnR5U291cmNlRGF0YS5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NQcm9w
ZXJ0eVNvdXJjZURhdGEuaApAQCAtODMsNiArODMsNyBAQCBzdHJ1Y3QgQ1NTU3R5bGVTb3VyY2VE
YXRhIDogcHVibGljIFJlZkNvdW50ZWQ8Q1NTU3R5bGVTb3VyY2VEYXRhPiB7CiAKIHN0cnVjdCBD
U1NSdWxlU291cmNlRGF0YTsKIHR5cGVkZWYgVmVjdG9yPFJlZlB0cjxDU1NSdWxlU291cmNlRGF0
YT4gPiBSdWxlU291cmNlRGF0YUxpc3Q7Cit0eXBlZGVmIFZlY3RvcjxTb3VyY2VSYW5nZT4gU2Vs
ZWN0b3JSYW5nZUxpc3Q7CiAKIHN0cnVjdCBDU1NSdWxlU291cmNlRGF0YSA6IHB1YmxpYyBSZWZD
b3VudGVkPENTU1J1bGVTb3VyY2VEYXRhPiB7CiAgICAgZW51bSBUeXBlIHsKQEAgLTEyNCw2ICsx
MjUsOSBAQCBzdHJ1Y3QgQ1NTUnVsZVNvdXJjZURhdGEgOiBwdWJsaWMgUmVmQ291bnRlZDxDU1NS
dWxlU291cmNlRGF0YT4gewogICAgIC8vIFJhbmdlIG9mIHRoZSBydWxlIGJvZHkgKGUuZy4gc3R5
bGUgdGV4dCBmb3Igc3R5bGUgcnVsZXMpIGluIHRoZSBlbmNsb3Npbmcgc291cmNlLgogICAgIFNv
dXJjZVJhbmdlIHJ1bGVCb2R5UmFuZ2U7CiAKKyAgICAvLyBPbmx5IGZvciBDU1NTdHlsZVJ1bGVz
LgorICAgIFNlbGVjdG9yUmFuZ2VMaXN0IHNlbGVjdG9yUmFuZ2VzOworCiAgICAgLy8gT25seSBm
b3IgQ1NTU3R5bGVSdWxlcywgQ1NTRm9udEZhY2VSdWxlcywgYW5kIENTU1BhZ2VSdWxlcy4KICAg
ICBSZWZQdHI8Q1NTU3R5bGVTb3VyY2VEYXRhPiBzdHlsZVNvdXJjZURhdGE7CiAKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JTdHlsZVNoZWV0LmNwcCBiL1Nv
dXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JTdHlsZVNoZWV0LmNwcAppbmRleCBlYWIy
ZWI0YTNhMTZlZjQ4NDFiNjhiMGJlOTdjNWY4MDU3ZTUwNWViLi5mNjczMTFlNzQ0MDYwNWY3YmI3
ZDNhNTVmOTA4Yzg0NjJmYTYzM2Y0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0
b3IvSW5zcGVjdG9yU3R5bGVTaGVldC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9y
L0luc3BlY3RvclN0eWxlU2hlZXQuY3BwCkBAIC00Nyw2ICs0Nyw3IEBACiAjaW5jbHVkZSAiSW5z
cGVjdG9yUGFnZUFnZW50LmgiCiAjaW5jbHVkZSAiSW5zcGVjdG9yVmFsdWVzLmgiCiAjaW5jbHVk
ZSAiTm9kZS5oIgorI2luY2x1ZGUgIlJlZ3VsYXJFeHByZXNzaW9uLmgiCiAjaW5jbHVkZSAiU1ZH
TmFtZXMuaCIKICNpbmNsdWRlICJTdHlsZVJlc29sdmVyLmgiCiAjaW5jbHVkZSAiU3R5bGVSdWxl
LmgiCkBAIC05NTIsMjAgKzk1Myw0NCBAQCBQYXNzUmVmUHRyPFR5cGVCdWlsZGVyOjpDU1M6OkNT
U1N0eWxlU2hlZXRIZWFkZXI+IEluc3BlY3RvclN0eWxlU2hlZXQ6OmJ1aWxkT2JqZQogICAgIHJl
dHVybiByZXN1bHQucmVsZWFzZSgpOwogfQogCi1QYXNzUmVmUHRyPFR5cGVCdWlsZGVyOjpDU1M6
OlNlbGVjdG9yTGlzdD4gSW5zcGVjdG9yU3R5bGVTaGVldDo6YnVpbGRPYmplY3RGb3JTZWxlY3Rv
ckxpc3QoQ1NTU3R5bGVSdWxlKiBydWxlKQorc3RhdGljIFBhc3NSZWZQdHI8VHlwZUJ1aWxkZXI6
OkFycmF5PFN0cmluZz4gPiBzZWxlY3RvcnNGcm9tU291cmNlKGNvbnN0IENTU1J1bGVTb3VyY2VE
YXRhKiBzb3VyY2VEYXRhLCBjb25zdCBTdHJpbmcmIHNoZWV0VGV4dCkKIHsKLSAgICBSZWZQdHI8
VHlwZUJ1aWxkZXI6OkFycmF5PFN0cmluZz4gPiBzZWxlY3RvcnMgPSBUeXBlQnVpbGRlcjo6QXJy
YXk8U3RyaW5nPjo6Y3JlYXRlKCk7Ci0gICAgY29uc3QgQ1NTU2VsZWN0b3JMaXN0JiBzZWxlY3Rv
ckxpc3QgPSBydWxlLT5zdHlsZVJ1bGUoKS0+c2VsZWN0b3JMaXN0KCk7Ci0gICAgZm9yIChDU1NT
ZWxlY3Rvciogc2VsZWN0b3IgPSBzZWxlY3Rvckxpc3QuZmlyc3QoKTsgc2VsZWN0b3I7IHNlbGVj
dG9yID0gQ1NTU2VsZWN0b3JMaXN0OjpuZXh0KHNlbGVjdG9yKSkKLSAgICAgICAgc2VsZWN0b3Jz
LT5hZGRJdGVtKHNlbGVjdG9yLT5zZWxlY3RvclRleHQoKSk7CisgICAgREVGSU5FX1NUQVRJQ19M
T0NBTChSZWd1bGFyRXhwcmVzc2lvbiwgY29tbWVudCwgKCIvXFwqW15dKj9cXCovIiwgVGV4dENh
c2VTZW5zaXRpdmUsIE11bHRpbGluZUVuYWJsZWQpKTsKKyAgICBSZWZQdHI8VHlwZUJ1aWxkZXI6
OkFycmF5PFN0cmluZz4gPiByZXN1bHQgPSBUeXBlQnVpbGRlcjo6QXJyYXk8U3RyaW5nPjo6Y3Jl
YXRlKCk7CisgICAgY29uc3QgU2VsZWN0b3JSYW5nZUxpc3QmIHJhbmdlcyA9IHNvdXJjZURhdGEt
PnNlbGVjdG9yUmFuZ2VzOworICAgIGZvciAoc2l6ZV90IGkgPSAwLCBzaXplID0gcmFuZ2VzLnNp
emUoKTsgaSA8IHNpemU7ICsraSkgeworICAgICAgICBjb25zdCBTb3VyY2VSYW5nZSYgcmFuZ2Ug
PSByYW5nZXMuYXQoaSk7CisgICAgICAgIFN0cmluZyBzZWxlY3RvciA9IHNoZWV0VGV4dC5zdWJz
dHJpbmcocmFuZ2Uuc3RhcnQsIHJhbmdlLmxlbmd0aCgpKTsKIAotICAgIFJlZlB0cjxUeXBlQnVp
bGRlcjo6Q1NTOjpTZWxlY3Rvckxpc3Q+IHJlc3VsdCA9IFR5cGVCdWlsZGVyOjpDU1M6OlNlbGVj
dG9yTGlzdDo6Y3JlYXRlKCkKLSAgICAgICAgLnNldFNlbGVjdG9ycyhzZWxlY3RvcnMpCi0gICAg
ICAgIC5zZXRUZXh0KHJ1bGUtPnNlbGVjdG9yVGV4dCgpKTsKKyAgICAgICAgLy8gV2UgZG9uJ3Qg
d2FudCB0byBzZWUgYW55IGNvbW1lbnRzIGluIHRoZSBzZWxlY3RvciBjb21wb25lbnRzLCBvbmx5
IHRoZSBtZWFuaW5nZnVsIHBhcnRzLgorICAgICAgICByZXBsYWNlKHNlbGVjdG9yLCBjb21tZW50
LCAiIik7CisgICAgICAgIHJlc3VsdC0+YWRkSXRlbShzZWxlY3Rvci5zdHJpcFdoaXRlU3BhY2Uo
KSk7CisgICAgfQorICAgIHJldHVybiByZXN1bHQucmVsZWFzZSgpOworfQogCitQYXNzUmVmUHRy
PFR5cGVCdWlsZGVyOjpDU1M6OlNlbGVjdG9yTGlzdD4gSW5zcGVjdG9yU3R5bGVTaGVldDo6YnVp
bGRPYmplY3RGb3JTZWxlY3Rvckxpc3QoQ1NTU3R5bGVSdWxlKiBydWxlKQorewogICAgIFJlZlB0
cjxDU1NSdWxlU291cmNlRGF0YT4gc291cmNlRGF0YTsKICAgICBpZiAoZW5zdXJlUGFyc2VkRGF0
YVJlYWR5KCkpCiAgICAgICAgIHNvdXJjZURhdGEgPSBydWxlU291cmNlRGF0YUZvcihydWxlLT5z
dHlsZSgpKTsKKyAgICBSZWZQdHI8VHlwZUJ1aWxkZXI6OkFycmF5PFN0cmluZz4gPiBzZWxlY3Rv
cnM7CisKKyAgICAvLyBUaGlzIGludGVudGlvbmFsbHkgZG9lcyBub3QgcmVseSBvbiB0aGUgc291
cmNlIGRhdGEgdG8gYXZvaWQgY2F0Y2hpbmcgdGhlIHRyYWlsaW5nIGNvbW1lbnRzIChiZWZvcmUg
dGhlIGRlY2xhcmF0aW9uIHN0YXJ0aW5nICd7JykuCisgICAgU3RyaW5nIHNlbGVjdG9yVGV4dCA9
IHJ1bGUtPnNlbGVjdG9yVGV4dCgpOworCisgICAgaWYgKHNvdXJjZURhdGEpCisgICAgICAgIHNl
bGVjdG9ycyA9IHNlbGVjdG9yc0Zyb21Tb3VyY2Uoc291cmNlRGF0YS5nZXQoKSwgbV9wYXJzZWRT
dHlsZVNoZWV0LT50ZXh0KCkpOworICAgIGVsc2UgeworICAgICAgICBzZWxlY3RvcnMgPSBUeXBl
QnVpbGRlcjo6QXJyYXk8U3RyaW5nPjo6Y3JlYXRlKCk7CisgICAgICAgIGNvbnN0IENTU1NlbGVj
dG9yTGlzdCYgc2VsZWN0b3JMaXN0ID0gcnVsZS0+c3R5bGVSdWxlKCktPnNlbGVjdG9yTGlzdCgp
OworICAgICAgICBmb3IgKENTU1NlbGVjdG9yKiBzZWxlY3RvciA9IHNlbGVjdG9yTGlzdC5maXJz
dCgpOyBzZWxlY3Rvcjsgc2VsZWN0b3IgPSBDU1NTZWxlY3Rvckxpc3Q6Om5leHQoc2VsZWN0b3Ip
KQorICAgICAgICAgICAgc2VsZWN0b3JzLT5hZGRJdGVtKHNlbGVjdG9yLT5zZWxlY3RvclRleHQo
KSk7CisgICAgfQorICAgIFJlZlB0cjxUeXBlQnVpbGRlcjo6Q1NTOjpTZWxlY3Rvckxpc3Q+IHJl
c3VsdCA9IFR5cGVCdWlsZGVyOjpDU1M6OlNlbGVjdG9yTGlzdDo6Y3JlYXRlKCkKKyAgICAgICAg
LnNldFNlbGVjdG9ycyhzZWxlY3RvcnMpCisgICAgICAgIC5zZXRUZXh0KHNlbGVjdG9yVGV4dCkK
KyAgICAgICAgLnJlbGVhc2UoKTsKICAgICBpZiAoc291cmNlRGF0YSkKICAgICAgICAgcmVzdWx0
LT5zZXRSYW5nZShidWlsZFNvdXJjZVJhbmdlT2JqZWN0KHNvdXJjZURhdGEtPnJ1bGVIZWFkZXJS
YW5nZSkpOwogICAgIHJldHVybiByZXN1bHQucmVsZWFzZSgpOwpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9TdHlsZXNTaWRlYmFyUGFuZS5qcyBiL1NvdXJj
ZS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQvU3R5bGVzU2lkZWJhclBhbmUuanMKaW5kZXgg
ZjcxOTZhMWYyNWVkNjQwZmE2ZjVkNjBjNTVlNjljOTFhOGU1ZGY1MC4uNjIzZTUyNDM5YzhhOWE4
YTdhOWI3NzcwNDdjMDVhYTlmMWNhMDM0YiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaW5z
cGVjdG9yL2Zyb250LWVuZC9TdHlsZXNTaWRlYmFyUGFuZS5qcworKysgYi9Tb3VyY2UvV2ViQ29y
ZS9pbnNwZWN0b3IvZnJvbnQtZW5kL1N0eWxlc1NpZGViYXJQYW5lLmpzCkBAIC0xMDkwLDcgKzEw
OTAsNyBAQCBXZWJJbnNwZWN0b3IuU3R5bGVQcm9wZXJ0aWVzU2VjdGlvbi5wcm90b3R5cGUgPSB7
CiAKICAgICAgICAgdmFyIHNlbGVjdG9ycyA9IHJ1bGUuc2VsZWN0b3JzOwogICAgICAgICB2YXIg
bWF0Y2hpbmdTZWxlY3RvcnMgPSBydWxlLm1hdGNoaW5nU2VsZWN0b3JzOwotICAgICAgICBpZiAo
c2VsZWN0b3JzLmxlbmd0aCA8IDIgfHwgIW1hdGNoaW5nU2VsZWN0b3JzKQorICAgICAgICBpZiAo
IW1hdGNoaW5nU2VsZWN0b3JzKQogICAgICAgICAgICAgcmV0dXJuOwogCiAgICAgICAgIHZhciBm
cmFnbWVudCA9IGRvY3VtZW50LmNyZWF0ZURvY3VtZW50RnJhZ21lbnQoKTsKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL3RleHQvUmVndWxhckV4cHJlc3Npb24uY3BwIGIvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vdGV4dC9SZWd1bGFyRXhwcmVzc2lvbi5jcHAKaW5kZXggMjM2
OTU5MDg1NTZlOTUyMTdlNWU2OTY5ZDM0OTM4ZThhZGI5YzJiMy4uNzE1OTFhYTc0OTM2MDhlYTNh
NjE3ZGM5MDg5NzU2YTUyZjAyZWQwNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vdGV4dC9SZWd1bGFyRXhwcmVzc2lvbi5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vdGV4dC9SZWd1bGFyRXhwcmVzc2lvbi5jcHAKQEAgLTM2LDkgKzM2LDkgQEAgbmFtZXNwYWNl
IFdlYkNvcmUgewogCiBjbGFzcyBSZWd1bGFyRXhwcmVzc2lvbjo6UHJpdmF0ZSA6IHB1YmxpYyBS
ZWZDb3VudGVkPFJlZ3VsYXJFeHByZXNzaW9uOjpQcml2YXRlPiB7CiBwdWJsaWM6Ci0gICAgc3Rh
dGljIFBhc3NSZWZQdHI8UHJpdmF0ZT4gY3JlYXRlKGNvbnN0IFN0cmluZyYgcGF0dGVybiwgVGV4
dENhc2VTZW5zaXRpdml0eSBjYXNlU2Vuc2l0aXZpdHkpCisgICAgc3RhdGljIFBhc3NSZWZQdHI8
UHJpdmF0ZT4gY3JlYXRlKGNvbnN0IFN0cmluZyYgcGF0dGVybiwgVGV4dENhc2VTZW5zaXRpdml0
eSBjYXNlU2Vuc2l0aXZpdHksIE11bHRpbGluZU1vZGUgbXVsdGlsaW5lTW9kZSkKICAgICB7Ci0g
ICAgICAgIHJldHVybiBhZG9wdFJlZihuZXcgUHJpdmF0ZShwYXR0ZXJuLCBjYXNlU2Vuc2l0aXZp
dHkpKTsKKyAgICAgICAgcmV0dXJuIGFkb3B0UmVmKG5ldyBQcml2YXRlKHBhdHRlcm4sIGNhc2VT
ZW5zaXRpdml0eSwgbXVsdGlsaW5lTW9kZSkpOwogICAgIH0KIAogICAgIGludCBsYXN0TWF0Y2hM
ZW5ndGg7CkBAIC00NywxNiArNDcsMTYgQEAgcHVibGljOgogICAgIE93blB0cjxKU0M6OllhcnI6
OkJ5dGVjb2RlUGF0dGVybj4gbV9yZWdFeHBCeXRlQ29kZTsKIAogcHJpdmF0ZToKLSAgICBQcml2
YXRlKGNvbnN0IFN0cmluZyYgcGF0dGVybiwgVGV4dENhc2VTZW5zaXRpdml0eSBjYXNlU2Vuc2l0
aXZpdHkpCisgICAgUHJpdmF0ZShjb25zdCBTdHJpbmcmIHBhdHRlcm4sIFRleHRDYXNlU2Vuc2l0
aXZpdHkgY2FzZVNlbnNpdGl2aXR5LCBNdWx0aWxpbmVNb2RlIG11bHRpbGluZU1vZGUpCiAgICAg
ICAgIDogbGFzdE1hdGNoTGVuZ3RoKC0xKQotICAgICAgICAsIG1fcmVnRXhwQnl0ZUNvZGUoY29t
cGlsZShwYXR0ZXJuLCBjYXNlU2Vuc2l0aXZpdHkpKQorICAgICAgICAsIG1fcmVnRXhwQnl0ZUNv
ZGUoY29tcGlsZShwYXR0ZXJuLCBjYXNlU2Vuc2l0aXZpdHksIG11bHRpbGluZU1vZGUpKQogICAg
ICAgICAsIG1fY29uc3RydWN0aW9uRXJyb3IoMCkKICAgICB7CiAgICAgfQogCi0gICAgUGFzc093
blB0cjxKU0M6OllhcnI6OkJ5dGVjb2RlUGF0dGVybj4gY29tcGlsZShjb25zdCBTdHJpbmcmIHBh
dHRlcm5TdHJpbmcsIFRleHRDYXNlU2Vuc2l0aXZpdHkgY2FzZVNlbnNpdGl2aXR5KQorICAgIFBh
c3NPd25QdHI8SlNDOjpZYXJyOjpCeXRlY29kZVBhdHRlcm4+IGNvbXBpbGUoY29uc3QgU3RyaW5n
JiBwYXR0ZXJuU3RyaW5nLCBUZXh0Q2FzZVNlbnNpdGl2aXR5IGNhc2VTZW5zaXRpdml0eSwgTXVs
dGlsaW5lTW9kZSBtdWx0aWxpbmVNb2RlKQogICAgIHsKLSAgICAgICAgSlNDOjpZYXJyOjpZYXJy
UGF0dGVybiBwYXR0ZXJuKHBhdHRlcm5TdHJpbmcsIChjYXNlU2Vuc2l0aXZpdHkgPT0gVGV4dENh
c2VJbnNlbnNpdGl2ZSksIGZhbHNlLCAmbV9jb25zdHJ1Y3Rpb25FcnJvcik7CisgICAgICAgIEpT
Qzo6WWFycjo6WWFyclBhdHRlcm4gcGF0dGVybihwYXR0ZXJuU3RyaW5nLCAoY2FzZVNlbnNpdGl2
aXR5ID09IFRleHRDYXNlSW5zZW5zaXRpdmUpLCAobXVsdGlsaW5lTW9kZSA9PSBNdWx0aWxpbmVF
bmFibGVkKSwgJm1fY29uc3RydWN0aW9uRXJyb3IpOwogICAgICAgICBpZiAobV9jb25zdHJ1Y3Rp
b25FcnJvcikgewogICAgICAgICAgICAgTE9HX0VSUk9SKCJSZWd1bGFyRXhwcmVzc2lvbjogWUFS
UiBjb21waWxlIGZhaWxlZCB3aXRoICclcyciLCBtX2NvbnN0cnVjdGlvbkVycm9yKTsKICAgICAg
ICAgICAgIHJldHVybiBudWxscHRyOwpAQCAtNzEsOCArNzEsOCBAQCBwcml2YXRlOgogICAgIGNv
bnN0IGNoYXIqIG1fY29uc3RydWN0aW9uRXJyb3I7CiB9OwogCi1SZWd1bGFyRXhwcmVzc2lvbjo6
UmVndWxhckV4cHJlc3Npb24oY29uc3QgU3RyaW5nJiBwYXR0ZXJuLCBUZXh0Q2FzZVNlbnNpdGl2
aXR5IGNhc2VTZW5zaXRpdml0eSkKLSAgICA6IGQoUHJpdmF0ZTo6Y3JlYXRlKHBhdHRlcm4sIGNh
c2VTZW5zaXRpdml0eSkpCitSZWd1bGFyRXhwcmVzc2lvbjo6UmVndWxhckV4cHJlc3Npb24oY29u
c3QgU3RyaW5nJiBwYXR0ZXJuLCBUZXh0Q2FzZVNlbnNpdGl2aXR5IGNhc2VTZW5zaXRpdml0eSwg
TXVsdGlsaW5lTW9kZSBtdWx0aWxpbmVNb2RlKQorICAgIDogZChQcml2YXRlOjpjcmVhdGUocGF0
dGVybiwgY2FzZVNlbnNpdGl2aXR5LCBtdWx0aWxpbmVNb2RlKSkKIHsKIH0KIApkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vdGV4dC9SZWd1bGFyRXhwcmVzc2lvbi5oIGIvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vdGV4dC9SZWd1bGFyRXhwcmVzc2lvbi5oCmluZGV4IDdjNDhm
YWFiZWVkNzhlYTgxYmQ5ZWU2YWYyYWFjNDg1M2E0N2VhYTguLmM2MjhjZGI0NGJlMWEwOTYzYjVm
ZGU5NGEwM2NkYjhhZTdkNjFlY2QgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L3RleHQvUmVndWxhckV4cHJlc3Npb24uaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS90
ZXh0L1JlZ3VsYXJFeHByZXNzaW9uLmgKQEAgLTMwLDEwICszMCwxNSBAQAogCiBuYW1lc3BhY2Ug
V2ViQ29yZSB7CiAKK2VudW0gTXVsdGlsaW5lTW9kZSB7CisgICAgTXVsdGlsaW5lRGlzYWJsZWQs
CisgICAgTXVsdGlsaW5lRW5hYmxlZAorfTsKKwogY2xhc3MgUmVndWxhckV4cHJlc3Npb24gewog
ICAgIFdURl9NQUtFX0ZBU1RfQUxMT0NBVEVEOwogcHVibGljOgotICAgIFJlZ3VsYXJFeHByZXNz
aW9uKGNvbnN0IFN0cmluZyYsIFRleHRDYXNlU2Vuc2l0aXZpdHkpOworICAgIFJlZ3VsYXJFeHBy
ZXNzaW9uKGNvbnN0IFN0cmluZyYsIFRleHRDYXNlU2Vuc2l0aXZpdHksIE11bHRpbGluZU1vZGUg
PSBNdWx0aWxpbmVEaXNhYmxlZCk7CiAgICAgflJlZ3VsYXJFeHByZXNzaW9uKCk7CiAKICAgICBS
ZWd1bGFyRXhwcmVzc2lvbihjb25zdCBSZWd1bGFyRXhwcmVzc2lvbiYpOwpkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCmluZGV4IDhlOWVk
NzgyYWMzZWFlMmQ3NmRmYTczZDYxZjAwYjMwZDdkZjMzOGMuLjgzOWZiMjYzOWY5OTJmMGQyOGFj
ZWViNjNmYWQyNDNlYzZlMzIwZWEgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL0NoYW5nZUxvZwor
KysgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNCBAQAorMjAxMi0xMS0yOCAg
QWxleGFuZGVyIFBhdmxvdiAgPGFwYXZsb3ZAY2hyb21pdW0ub3JnPgorCisgICAgICAgIFdlYiBJ
bnNwZWN0b3I6IFtTdHlsZXNdIFJldGFpbiBzZWxlY3RvciBjYXNlIGFzIHdyaXR0ZW4gaW4gdGhl
IHNvdXJjZSBjb2RlCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNn
aT9pZD0xMDMxMTgKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAg
ICAgICAqIGluc3BlY3Rvci9zdHlsZXMvc2VsZWN0b3ItbGlzdC1leHBlY3RlZC50eHQ6IEFkZGVk
LgorICAgICAgICAqIGluc3BlY3Rvci9zdHlsZXMvc2VsZWN0b3ItbGlzdC5odG1sOiBBZGRlZC4K
KyAgICAgICAgKiBpbnNwZWN0b3Ivc3R5bGVzL3N0eWxlcy1hZGQtbmV3LXJ1bGUtZXhwZWN0ZWQu
dHh0OiBSZWJhc2VsaW5lZC4KKwogMjAxMi0xMS0yOSAgU3RlcGhlbiBDaGVubmV5ICA8c2NoZW5u
ZXlAY2hyb21pdW0ub3JnPgogCiAgICAgICAgIFVucmV2aWV3ZWQgQ2hyb21pdW0gZXhwZWN0YXRp
b25zIGNsZWFudXAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2luc3BlY3Rvci9zdHlsZXMvc2Vs
ZWN0b3ItbGlzdC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbnNwZWN0b3Ivc3R5bGVzL3Nl
bGVjdG9yLWxpc3QtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmUwZTA2YWYyNmQzODJlYmM2N2Mz
ZjE2NmFhZWFjZThjZGM4ZDhhY2YKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9pbnNw
ZWN0b3Ivc3R5bGVzL3NlbGVjdG9yLWxpc3QtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsMzAgQEAK
K1Rlc3RzIHJlcHJlc2VudGF0aW9uIG9mIHNlbGVjdG9yIGxpc3RzIGluIHRoZSBwcm90b2NvbC4g
QnVnIDEwMzExOC4KKworVGV4dAorW2V4cGFuZGVkXSAKK2VsZW1lbnQuc3R5bGUgIHsgKCkKKwor
PT09PT09PT0gTWF0Y2hlZCBDU1MgUnVsZXMgPT09PT09PT0KK1tleHBhbmRlZF0gCitGT08gYkFy
LCAjaW5zcGVjdGVkLCBNT08+QkFSLCBodE1MIGRpdiwgRm9vfk1vbywgTU9PICB7IChzZWxlY3Rv
ci1saXN0Lmh0bWw6MTkpCitjb2xvcjogZ3JlZW47CisKK1tleHBhbmRlZF0gCisjaW5zcGVjdGVk
ICB7IChzZWxlY3Rvci1saXN0Lmh0bWw6MTApCisKK1tleHBhbmRlZF0gCisjSW5TcEVjVGVEICB7
IChzZWxlY3Rvci1saXN0Lmh0bWw6NykKKworW2V4cGFuZGVkXSAKKyNpbnNwZWN0ZWQgIHsgKHNl
bGVjdG9yLWxpc3QuaHRtbDo0KQorCitbZXhwYW5kZWRdIAorRk9PIGJBciwgI2luc3BlY3RlZCwg
TU9PPkJBUiwgaHRNTCBkaXYsIEZvb35Nb28sIE1PTyAgeyAoc2VsZWN0b3ItbGlzdC5odG1sOjE5
KQorLy0tIG92ZXJsb2FkZWQgLS0vIGNvbG9yOiBncmVlbjsKKworW2V4cGFuZGVkXSAKK2RpdiAg
eyAodXNlciBhZ2VudCBzdHlsZXNoZWV0KQorZGlzcGxheTogYmxvY2s7CisKKworCmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9pbnNwZWN0b3Ivc3R5bGVzL3NlbGVjdG9yLWxpc3QuaHRtbCBiL0xh
eW91dFRlc3RzL2luc3BlY3Rvci9zdHlsZXMvc2VsZWN0b3ItbGlzdC5odG1sCm5ldyBmaWxlIG1v
ZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAu
Ljk1ZmVjNjY1ZTVhZDk3NzY4NDUwMjMyMThjOWI5NWQ3ZDBkZTRiNzMKLS0tIC9kZXYvbnVsbAor
KysgYi9MYXlvdXRUZXN0cy9pbnNwZWN0b3Ivc3R5bGVzL3NlbGVjdG9yLWxpc3QuaHRtbApAQCAt
MCwwICsxLDUxIEBACis8aHRtbD4KKzxoZWFkPgorPHN0eWxlPgorI2luc3BlY3RlZHsKK30KKwor
I0luU3BFY1RlRCB7Cit9CisKKy8qICovI2luc3BlY3RlZC8qICovIHsKK30KKworLyogCisgKi8g
Rk9PLypTaW5nbGUtbGluZSAxKi8gYkFyLC8qIFNpbmdsZS1saW5lIDIqLyNpbnNwZWN0ZWQvKgor
ICAgIE11bHRpbGluZSBjb21tZW50CisqLyAsTU9PPkJBUiwgLyoxKi9odE1MIC8qMgorKi9kaXYv
KjMqLywvKiovRm9vfi8qKkMqL01vbywvKiovTU9PIC8qIENvbW1lbnQKKyAqLyAKK3sKKyAgY29s
b3I6IGdyZWVuOworfQorCis8L3N0eWxlPgorPHNjcmlwdCBzcmM9Ii4uLy4uL2h0dHAvdGVzdHMv
aW5zcGVjdG9yL2luc3BlY3Rvci10ZXN0LmpzIj48L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIuLi8u
Li9odHRwL3Rlc3RzL2luc3BlY3Rvci9lbGVtZW50cy10ZXN0LmpzIj48L3NjcmlwdD4KKzxzY3Jp
cHQ+CisKK2Z1bmN0aW9uIHRlc3QoKQoreworICAgIFdlYkluc3BlY3Rvci5zaG93UGFuZWwoImVs
ZW1lbnRzIik7CisgICAgSW5zcGVjdG9yVGVzdC5zZWxlY3ROb2RlQW5kV2FpdEZvclN0eWxlcygi
aW5zcGVjdGVkIiwgc3RlcDEpOworCisgICAgZnVuY3Rpb24gc3RlcDEoKQorICAgIHsKKyAgICAg
ICAgSW5zcGVjdG9yVGVzdC5kdW1wU2VsZWN0ZWRFbGVtZW50U3R5bGVzKHRydWUpOworICAgICAg
ICBJbnNwZWN0b3JUZXN0LmNvbXBsZXRlVGVzdCgpOworICAgIH0KK30KKworPC9zY3JpcHQ+Cis8
L2hlYWQ+CisKKzxib2R5IG9ubG9hZD0icnVuVGVzdCgpIj4KKzxwPgorVGVzdHMgcmVwcmVzZW50
YXRpb24gb2Ygc2VsZWN0b3IgbGlzdHMgaW4gdGhlIHByb3RvY29sLiA8YSBocmVmPSJodHRwczov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTAzMTE4Ij5CdWcgMTAzMTE4PC9hPi4K
KzwvcD4KKworPGRpdiBpZD0iaW5zcGVjdGVkIj5UZXh0PC9kaXY+CisKKzwvYm9keT4KKzwvaHRt
bD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2luc3BlY3Rvci9zdHlsZXMvc3R5bGVzLWFkZC1u
ZXctcnVsZS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbnNwZWN0b3Ivc3R5bGVzL3N0eWxl
cy1hZGQtbmV3LXJ1bGUtZXhwZWN0ZWQudHh0CmluZGV4IGI0Yzg5OWE0MTkxZDIzNDNmOWQyNGRi
ZjA4M2IwNmQ5YzM4ODYwOTQuLmM0OGNkZGY4NjU5OWI0OWNlN2IyZTQ3ZDZjYWM2ZjQxODA3ZTA5
M2IgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2luc3BlY3Rvci9zdHlsZXMvc3R5bGVzLWFkZC1u
ZXctcnVsZS1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW5zcGVjdG9yL3N0eWxlcy9z
dHlsZXMtYWRkLW5ldy1ydWxlLWV4cGVjdGVkLnR4dApAQCAtMTMsNyArMTMsNyBAQCBmb28sIFsk
I2luc3BlY3RlZCRdLCBiYXIgIHsgKGluc3BlY3Rvci1zdHlsZXNoZWV0OjEpCiBjb2xvcjogbWFy
b29uOwogCiBbZXhwYW5kZWRdIAotZGl2ICB7ICh1c2VyIGFnZW50IHN0eWxlc2hlZXQpCitbJGRp
diRdICB7ICh1c2VyIGFnZW50IHN0eWxlc2hlZXQpCiBkaXNwbGF5OiBibG9jazsKIAogCg==
</data>

          </attachment>
      

    </bug>

</bugzilla>