<?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>160944</bug_id>
          
          <creation_ts>2016-08-17 11:33:54 -0700</creation_ts>
          <short_desc>Remove CSS_IMAGE_SET feature define</short_desc>
          <delta_ts>2016-08-17 12:58:08 -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>WebKit 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="Antti Koivisto">koivisto</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>bdakin</cc>
    
    <cc>commit-queue</cc>
    
    <cc>dino</cc>
    
    <cc>simon.fraser</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1220906</commentid>
    <comment_count>0</comment_count>
    <who name="Antti Koivisto">koivisto</who>
    <bug_when>2016-08-17 11:33:54 -0700</bug_when>
    <thetext>This seems to be enabled everywhere already (except Mac cmake build which it keep breaking).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1220912</commentid>
    <comment_count>1</comment_count>
      <attachid>286311</attachid>
    <who name="Antti Koivisto">koivisto</who>
    <bug_when>2016-08-17 11:58:43 -0700</bug_when>
    <thetext>Created attachment 286311
patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1220933</commentid>
    <comment_count>2</comment_count>
      <attachid>286311</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2016-08-17 12:58:04 -0700</bug_when>
    <thetext>Comment on attachment 286311
patch

Clearing flags on attachment: 286311

Committed r204566: &lt;http://trac.webkit.org/changeset/204566&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1220934</commentid>
    <comment_count>3</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2016-08-17 12:58:08 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>286311</attachid>
            <date>2016-08-17 11:58:43 -0700</date>
            <delta_ts>2016-08-17 12:58:04 -0700</delta_ts>
            <desc>patch</desc>
            <filename>cssimageset-define-remove.patch</filename>
            <type>text/plain</type>
            <size>28259</size>
            <attacher name="Antti Koivisto">koivisto</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XVEYvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvQ2hh
bmdlTG9nCShyZXZpc2lvbiAyMDQ1NjQpCisrKyBTb3VyY2UvV1RGL0NoYW5nZUxvZwkod29ya2lu
ZyBjb3B5KQpAQCAtMSwzICsxLDEyIEBACisyMDE2LTA4LTE3ICBBbnR0aSBLb2l2aXN0byAgPGFu
dHRpQGFwcGxlLmNvbT4KKworICAgICAgICBSZW1vdmUgQ1NTX0lNQUdFX1NFVCBmZWF0dXJlIGRl
ZmluZQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTYw
OTQ0CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiB3
dGYvRmVhdHVyZURlZmluZXMuaDoKKwogMjAxNi0wOC0xNiAgS2VpdGggTWlsbGVyICA8a2VpdGhf
bWlsbGVyQGFwcGxlLmNvbT4KIAogICAgICAgICBFbmFibGUgV2ViQXNzZW1ibHkgaW4gdGhlIGJ1
aWxkLgpJbmRleDogU291cmNlL1dURi93dGYvRmVhdHVyZURlZmluZXMuaAo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBTb3VyY2UvV1RGL3d0Zi9GZWF0dXJlRGVmaW5lcy5oCShyZXZpc2lvbiAyMDQ1NTkpCisrKyBT
b3VyY2UvV1RGL3d0Zi9GZWF0dXJlRGVmaW5lcy5oCSh3b3JraW5nIGNvcHkpCkBAIC02NiwxMCAr
NjYsNiBAQAogI2RlZmluZSBFTkFCTEVfQ09OVEVYVF9NRU5VUyAwCiAjZW5kaWYKIAotI2lmICFk
ZWZpbmVkKEVOQUJMRV9DU1NfSU1BR0VfU0VUKQotI2RlZmluZSBFTkFCTEVfQ1NTX0lNQUdFX1NF
VCAxCi0jZW5kaWYKLQogI2lmICFkZWZpbmVkKEVOQUJMRV9DVVJTT1JfU1VQUE9SVCkKICNkZWZp
bmUgRU5BQkxFX0NVUlNPUl9TVVBQT1JUIDAKICNlbmRpZgpAQCAtMTgxLDEwICsxNzcsNiBAQCB0
aGUgcHVibGljIGlPUyBTREsuIFdlIHdpbGwgYWxzbyBuZWVkIHRvCiAjZGVmaW5lIEVOQUJMRV9D
T05URU5UX0VYVEVOU0lPTlMgMQogI2VuZGlmCiAKLSNpZiAhZGVmaW5lZChFTkFCTEVfQ1NTX0lN
QUdFX1NFVCkKLSNkZWZpbmUgRU5BQkxFX0NTU19JTUFHRV9TRVQgMQotI2VuZGlmCi0KICNpZiAh
ZGVmaW5lZChFTkFCTEVfREFTSEJPQVJEX1NVUFBPUlQpCiAjZGVmaW5lIEVOQUJMRV9EQVNIQk9B
UkRfU1VQUE9SVCAxCiAjZW5kaWYKQEAgLTQxMiwxMCArNDA0LDYgQEAgdGhlIHB1YmxpYyBpT1Mg
U0RLLiBXZSB3aWxsIGFsc28gbmVlZCB0bwogI2RlZmluZSBFTkFCTEVfQ1NTX0lNQUdFX1JFU09M
VVRJT04gMAogI2VuZGlmCiAKLSNpZiAhZGVmaW5lZChFTkFCTEVfQ1NTX0lNQUdFX1NFVCkKLSNk
ZWZpbmUgRU5BQkxFX0NTU19JTUFHRV9TRVQgMAotI2VuZGlmCi0KICNpZiAhZGVmaW5lZChFTkFC
TEVfQ1VSU09SX1NVUFBPUlQpCiAjZGVmaW5lIEVOQUJMRV9DVVJTT1JfU1VQUE9SVCAxCiAjZW5k
aWYKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2Uv
V2ViQ29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDIwNDU2NCkKKysrIFNvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDYzIEBACisyMDE2LTA4LTE3ICBBbnR0
aSBLb2l2aXN0byAgPGFudHRpQGFwcGxlLmNvbT4KKworICAgICAgICBSZW1vdmUgQ1NTX0lNQUdF
X1NFVCBmZWF0dXJlIGRlZmluZQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9MTYwOTQ0CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISku
CisKKyAgICAgICAgVGhpcyBzZWVtcyB0byBiZSBlbmFibGVkIGV2ZXJ5d2hlcmUgYWxyZWFkeSAo
ZXhjZXB0IE1hYyBjbWFrZSBidWlsZCB3aGljaCBpdCBrZWVwIGJyZWFraW5nKS4KKworICAgICAg
ICAqIGNzcy9DU1NDdXJzb3JJbWFnZVZhbHVlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkNTU0N1
cnNvckltYWdlVmFsdWU6OkNTU0N1cnNvckltYWdlVmFsdWUpOgorICAgICAgICAoV2ViQ29yZTo6
Q1NTQ3Vyc29ySW1hZ2VWYWx1ZTo6Y2FjaGVkSW1hZ2UpOgorICAgICAgICAoV2ViQ29yZTo6Q1NT
Q3Vyc29ySW1hZ2VWYWx1ZTo6Y2FjaGVkT3JQZW5kaW5nSW1hZ2UpOgorICAgICAgICAqIGNzcy9D
U1NJbWFnZVNldFZhbHVlLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkNTU0ltYWdlU2V0VmFsdWU6
OmNsb25lRm9yQ1NTT00pOgorICAgICAgICAqIGNzcy9DU1NJbWFnZVNldFZhbHVlLmg6CisgICAg
ICAgICogY3NzL0NTU1BhcnNlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpDU1NQYXJzZXI6OnBh
cnNlVmFyaWFibGVEZXBlbmRlbnRWYWx1ZSk6CisgICAgICAgIChXZWJDb3JlOjppc0ltYWdlU2V0
RnVuY3Rpb25WYWx1ZSk6CisgICAgICAgIChXZWJDb3JlOjpDU1NQYXJzZXI6OnBhcnNlVmFsdWUp
OgorICAgICAgICAoV2ViQ29yZTo6Q1NTUGFyc2VyOjpwYXJzZUNvbnRlbnQpOgorICAgICAgICAo
V2ViQ29yZTo6Q1NTUGFyc2VyOjpwYXJzZUZpbGxJbWFnZSk6CisgICAgICAgIChXZWJDb3JlOjpD
U1NQYXJzZXI6OnBhcnNlQm9yZGVySW1hZ2UpOgorICAgICAgICAoV2ViQ29yZTo6Q1NTUGFyc2Vy
OjpwYXJzZUltYWdlUmVzb2x1dGlvbik6CisgICAgICAgIChXZWJDb3JlOjpDU1NQYXJzZXI6OnBh
cnNlSW1hZ2VTZXQpOgorICAgICAgICAqIGNzcy9DU1NQYXJzZXIuaDoKKyAgICAgICAgKiBjc3Mv
Q1NTVG9TdHlsZU1hcC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpDU1NUb1N0eWxlTWFwOjptYXBO
aW5lUGllY2VJbWFnZSk6CisgICAgICAgICogY3NzL0NTU1ZhbHVlLmNwcDoKKyAgICAgICAgKFdl
YkNvcmU6OkNTU1ZhbHVlOjp0cmF2ZXJzZVN1YnJlc291cmNlcyk6CisgICAgICAgIChXZWJDb3Jl
OjpDU1NWYWx1ZTo6ZXF1YWxzKToKKyAgICAgICAgKFdlYkNvcmU6OkNTU1ZhbHVlOjpjc3NUZXh0
KToKKyAgICAgICAgKFdlYkNvcmU6OkNTU1ZhbHVlOjpkZXN0cm95KToKKyAgICAgICAgKFdlYkNv
cmU6OkNTU1ZhbHVlOjpjbG9uZUZvckNTU09NKToKKyAgICAgICAgKiBjc3MvQ1NTVmFsdWUuaDoK
KyAgICAgICAgKFdlYkNvcmU6OkNTU1ZhbHVlOjppc0ltYWdlR2VuZXJhdG9yVmFsdWUpOgorICAg
ICAgICAoV2ViQ29yZTo6Q1NTVmFsdWU6OmlzR3JhZGllbnRWYWx1ZSk6CisgICAgICAgIChXZWJD
b3JlOjpDU1NWYWx1ZTo6aXNOYW1lZEltYWdlVmFsdWUpOgorICAgICAgICAoV2ViQ29yZTo6Q1NT
VmFsdWU6OmlzSW1hZ2VTZXRWYWx1ZSk6CisgICAgICAgIChXZWJDb3JlOjpDU1NWYWx1ZTo6aXNJ
bWFnZVZhbHVlKToKKyAgICAgICAgKFdlYkNvcmU6OkNTU1ZhbHVlOjppc0luaGVyaXRlZFZhbHVl
KToKKyAgICAgICAgKiBjc3MvU3R5bGVCdWlsZGVyQ29udmVydGVyLmg6CisgICAgICAgIChXZWJD
b3JlOjppc0ltYWdlU2hhcGUpOgorICAgICAgICAqIGNzcy9TdHlsZUJ1aWxkZXJDdXN0b20uaDoK
KyAgICAgICAgKFdlYkNvcmU6OlN0eWxlQnVpbGRlckN1c3RvbTo6YXBwbHlWYWx1ZUNvbnRlbnQp
OgorICAgICAgICAqIGNzcy9TdHlsZVJlc29sdmVyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlN0
eWxlUmVzb2x2ZXI6OnN0eWxlSW1hZ2UpOgorICAgICAgICAoV2ViQ29yZTo6U3R5bGVSZXNvbHZl
cjo6Z2VuZXJhdGVkT3JQZW5kaW5nRnJvbVZhbHVlKToKKyAgICAgICAgKFdlYkNvcmU6OlN0eWxl
UmVzb2x2ZXI6OnNldE9yUGVuZGluZ0Zyb21WYWx1ZSk6CisgICAgICAgIChXZWJDb3JlOjpTdHls
ZVJlc29sdmVyOjpjdXJzb3JPclBlbmRpbmdGcm9tVmFsdWUpOgorICAgICAgICAqIGNzcy9TdHls
ZVJlc29sdmVyLmg6CisgICAgICAgIChXZWJDb3JlOjpTdHlsZVJlc29sdmVyOjphcHBseVByb3Bl
cnR5VG9SZWd1bGFyU3R5bGUpOgorICAgICAgICAqIGNzcy9tYWtlcHJvcC5wbDoKKyAgICAgICAg
KGdlbmVyYXRlRmlsbExheWVyUHJvcGVydHlWYWx1ZVNldHRlcik6CisgICAgICAgICogcmVuZGVy
aW5nL3N0eWxlL1N0eWxlQ2FjaGVkSW1hZ2UuY3BwOgorICAgICAgICAoV2ViQ29yZTo6U3R5bGVD
YWNoZWRJbWFnZTo6Y3NzVmFsdWUpOgorICAgICAgICAqIHJlbmRlcmluZy9zdHlsZS9TdHlsZVBl
bmRpbmdJbWFnZS5oOgorICAgICAgICAqIHN0eWxlL1N0eWxlUGVuZGluZ1Jlc291cmNlcy5jcHA6
CisgICAgICAgIChXZWJDb3JlOjpTdHlsZTo6bG9hZFBlbmRpbmdJbWFnZSk6CisKIDIwMTYtMDgt
MTcgIEFudHRpIEtvaXZpc3RvICA8YW50dGlAYXBwbGUuY29tPgogCiAgICAgICAgIFRyeSB0byBm
aXggQ01ha2UgYnVpbGQuCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9jc3MvQ1NTQ3Vyc29ySW1hZ2VW
YWx1ZS5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvY3NzL0NTU0N1cnNvckltYWdl
VmFsdWUuY3BwCShyZXZpc2lvbiAyMDQ1NjApCisrKyBTb3VyY2UvV2ViQ29yZS9jc3MvQ1NTQ3Vy
c29ySW1hZ2VWYWx1ZS5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTM4LDEwICszOCw2IEBACiAjaW5j
bHVkZSA8d3RmL3RleHQvU3RyaW5nQnVpbGRlci5oPgogI2luY2x1ZGUgPHd0Zi90ZXh0L1dURlN0
cmluZy5oPgogCi0jaWYgRU5BQkxFKENTU19JTUFHRV9TRVQpCi0jaW5jbHVkZSAiQ1NTSW1hZ2VT
ZXRWYWx1ZS5oIgotI2VuZGlmCi0KIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogQ1NTQ3Vyc29ySW1h
Z2VWYWx1ZTo6Q1NTQ3Vyc29ySW1hZ2VWYWx1ZShSZWY8Q1NTVmFsdWU+JiYgaW1hZ2VWYWx1ZSwg
Ym9vbCBoYXNIb3RTcG90LCBjb25zdCBJbnRQb2ludCYgaG90U3BvdCkKQEAgLTExOCwxMCArMTE0
LDggQEAgdm9pZCBDU1NDdXJzb3JJbWFnZVZhbHVlOjpjdXJzb3JFbGVtZW50QwogCiBTdHlsZUlt
YWdlKiBDU1NDdXJzb3JJbWFnZVZhbHVlOjpjYWNoZWRJbWFnZShDYWNoZWRSZXNvdXJjZUxvYWRl
ciYgbG9hZGVyLCBjb25zdCBSZXNvdXJjZUxvYWRlck9wdGlvbnMmIG9wdGlvbnMpCiB7Ci0jaWYg
RU5BQkxFKENTU19JTUFHRV9TRVQpCiAgICAgaWYgKGlzPENTU0ltYWdlU2V0VmFsdWU+KG1faW1h
Z2VWYWx1ZS5nZXQoKSkpCiAgICAgICAgIHJldHVybiBkb3duY2FzdDxDU1NJbWFnZVNldFZhbHVl
PihtX2ltYWdlVmFsdWUuZ2V0KCkpLmJlc3RGaXRJbWFnZShsb2FkZXIsIG9wdGlvbnMpOwotI2Vu
ZGlmCiAKICAgICBhdXRvKiBjdXJzb3JFbGVtZW50ID0gbG9hZGVyLmRvY3VtZW50KCkgPyB1cGRh
dGVDdXJzb3JFbGVtZW50KCpsb2FkZXIuZG9jdW1lbnQoKSkgOiBudWxscHRyOwogCkBAIC0xNTIs
MTMgKzE0Niw5IEBAIFN0eWxlSW1hZ2UqIENTU0N1cnNvckltYWdlVmFsdWU6OmNhY2hlZEkKIAog
U3R5bGVJbWFnZSogQ1NTQ3Vyc29ySW1hZ2VWYWx1ZTo6Y2FjaGVkT3JQZW5kaW5nSW1hZ2UoY29u
c3QgRG9jdW1lbnQmIGRvY3VtZW50KQogewotI2lmIEVOQUJMRShDU1NfSU1BR0VfU0VUKQogICAg
IC8vIE5lZWQgdG8gZGVsZWdhdGUgY29tcGxldGVseSBzbyB0aGF0IGNoYW5nZXMgaW4gZGV2aWNl
IHNjYWxlIGZhY3RvciBjYW4gYmUgaGFuZGxlZCBhcHByb3ByaWF0ZWx5LgogICAgIGlmIChpczxD
U1NJbWFnZVNldFZhbHVlPihtX2ltYWdlVmFsdWUuZ2V0KCkpKQogICAgICAgICByZXR1cm4gZG93
bmNhc3Q8Q1NTSW1hZ2VTZXRWYWx1ZT4obV9pbWFnZVZhbHVlLmdldCgpKS5jYWNoZWRPclBlbmRp
bmdJbWFnZVNldChkb2N1bWVudCk7Ci0jZWxzZQotICAgIFVOVVNFRF9QQVJBTShkb2N1bWVudCk7
Ci0jZW5kaWYKIAogICAgIGlmICghbV9pbWFnZSkKICAgICAgICAgbV9pbWFnZSA9IFN0eWxlUGVu
ZGluZ0ltYWdlOjpjcmVhdGUodGhpcyk7CkluZGV4OiBTb3VyY2UvV2ViQ29yZS9jc3MvQ1NTSW1h
Z2VTZXRWYWx1ZS5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvY3NzL0NTU0ltYWdl
U2V0VmFsdWUuY3BwCShyZXZpc2lvbiAyMDQ1NjApCisrKyBTb3VyY2UvV2ViQ29yZS9jc3MvQ1NT
SW1hZ2VTZXRWYWx1ZS5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTI2LDggKzI2LDYgQEAKICNpbmNs
dWRlICJjb25maWcuaCIKICNpbmNsdWRlICJDU1NJbWFnZVNldFZhbHVlLmgiCiAKLSNpZiBFTkFC
TEUoQ1NTX0lNQUdFX1NFVCkKLQogI2luY2x1ZGUgIkNTU0ltYWdlVmFsdWUuaCIKICNpbmNsdWRl
ICJDU1NQcmltaXRpdmVWYWx1ZS5oIgogI2luY2x1ZGUgIkNhY2hlZEltYWdlLmgiCkBAIC0yMDQs
NSArMjAyLDMgQEAgUmVmPENTU0ltYWdlU2V0VmFsdWU+IENTU0ltYWdlU2V0VmFsdWU6OgogfQog
CiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCi0KLSNlbmRpZiAvLyBFTkFCTEUoQ1NTX0lNQUdFX1NF
VCkKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL2Nzcy9DU1NJbWFnZVNldFZhbHVlLmgKPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gU291cmNlL1dlYkNvcmUvY3NzL0NTU0ltYWdlU2V0VmFsdWUuaAkocmV2aXNpb24gMjA0
NTYwKQorKysgU291cmNlL1dlYkNvcmUvY3NzL0NTU0ltYWdlU2V0VmFsdWUuaAkod29ya2luZyBj
b3B5KQpAQCAtMjYsOCArMjYsNiBAQAogI2lmbmRlZiBDU1NJbWFnZVNldFZhbHVlX2gKICNkZWZp
bmUgQ1NTSW1hZ2VTZXRWYWx1ZV9oCiAKLSNpZiBFTkFCTEUoQ1NTX0lNQUdFX1NFVCkKLQogI2lu
Y2x1ZGUgIkNTU1ZhbHVlTGlzdC5oIgogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CkBAIC05MCw2ICs4
OCw0IEBAIHByaXZhdGU6CiAKIFNQRUNJQUxJWkVfVFlQRV9UUkFJVFNfQ1NTX1ZBTFVFKENTU0lt
YWdlU2V0VmFsdWUsIGlzSW1hZ2VTZXRWYWx1ZSgpKQogCi0jZW5kaWYgLy8gRU5BQkxFKENTU19J
TUFHRV9TRVQpCi0KICNlbmRpZiAvLyBDU1NJbWFnZVNldFZhbHVlX2gKSW5kZXg6IFNvdXJjZS9X
ZWJDb3JlL2Nzcy9DU1NQYXJzZXIuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL2Nz
cy9DU1NQYXJzZXIuY3BwCShyZXZpc2lvbiAyMDQ1NTkpCisrKyBTb3VyY2UvV2ViQ29yZS9jc3Mv
Q1NTUGFyc2VyLmNwcAkod29ya2luZyBjb3B5KQpAQCAtNDUsNiArNDUsNyBAQAogI2luY2x1ZGUg
IkNTU0ZvbnRWYWx1ZS5oIgogI2luY2x1ZGUgIkNTU0Z1bmN0aW9uVmFsdWUuaCIKICNpbmNsdWRl
ICJDU1NHcmFkaWVudFZhbHVlLmgiCisjaW5jbHVkZSAiQ1NTSW1hZ2VTZXRWYWx1ZS5oIgogI2lu
Y2x1ZGUgIkNTU0ltYWdlVmFsdWUuaCIKICNpbmNsdWRlICJDU1NJbmhlcml0ZWRWYWx1ZS5oIgog
I2luY2x1ZGUgIkNTU0luaXRpYWxWYWx1ZS5oIgpAQCAtMTE2LDEwICsxMTcsNiBAQAogI2luY2x1
ZGUgIkNTU0dyaWRUZW1wbGF0ZUFyZWFzVmFsdWUuaCIKICNlbmRpZgogCi0jaWYgRU5BQkxFKENT
U19JTUFHRV9TRVQpCi0jaW5jbHVkZSAiQ1NTSW1hZ2VTZXRWYWx1ZS5oIgotI2VuZGlmCi0KICNp
ZiBFTkFCTEUoQ1NTX1NDUk9MTF9TTkFQKQogI2luY2x1ZGUgIkxlbmd0aFJlcGVhdC5oIgogI2Vu
ZGlmCkBAIC0xODc4LDEyICsxODc1LDEwIEBAIFJlZlB0cjxDU1NWYWx1ZT4gQ1NTUGFyc2VyOjpw
YXJzZVZhcmlhYmwKICAgICByZXR1cm4gbnVsbHB0cjsKIH0KIAotI2lmIEVOQUJMRShDU1NfSU1B
R0VfU0VUKQogc3RhdGljIGJvb2wgaXNJbWFnZVNldEZ1bmN0aW9uVmFsdWUoY29uc3QgQ1NTUGFy
c2VyVmFsdWUmIHZhbHVlKQogewogICAgIHJldHVybiB2YWx1ZS51bml0ID09IENTU1BhcnNlclZh
bHVlOjpGdW5jdGlvbiAmJiAoZXF1YWxMZXR0ZXJzSWdub3JpbmdBU0NJSUNhc2UodmFsdWUuZnVu
Y3Rpb24tPm5hbWUsICJpbWFnZS1zZXQoIikgfHwgZXF1YWxMZXR0ZXJzSWdub3JpbmdBU0NJSUNh
c2UodmFsdWUuZnVuY3Rpb24tPm5hbWUsICItd2Via2l0LWltYWdlLXNldCgiKSk7CiB9Ci0jZW5k
aWYKIAogYm9vbCBDU1NQYXJzZXI6OnBhcnNlVmFsdWUoQ1NTUHJvcGVydHlJRCBwcm9wSWQsIGJv
b2wgaW1wb3J0YW50KQogewpAQCAtMjEwMCw3ICsyMDk1LDcgQEAgYm9vbCBDU1NQYXJzZXI6OnBh
cnNlVmFsdWUoQ1NTUHJvcGVydHlJRAogICAgICAgICAgICAgICAgIFN0cmluZyB1cmkgPSB2YWx1
ZS0+c3RyaW5nOwogICAgICAgICAgICAgICAgIGlmICghdXJpLmlzTnVsbCgpKQogICAgICAgICAg
ICAgICAgICAgICBpbWFnZSA9IENTU0ltYWdlVmFsdWU6OmNyZWF0ZShjb21wbGV0ZVVSTCh1cmkp
KTsKLSNpZiBFTkFCTEUoQ1NTX0lNQUdFX1NFVCkgJiYgRU5BQkxFKE1PVVNFX0NVUlNPUl9TQ0FM
RSkKKyNpZiBFTkFCTEUoTU9VU0VfQ1VSU09SX1NDQUxFKQogICAgICAgICAgICAgfSBlbHNlIGlm
IChpc0ltYWdlU2V0RnVuY3Rpb25WYWx1ZSgqdmFsdWUpKSB7CiAgICAgICAgICAgICAgICAgaW1h
Z2UgPSBwYXJzZUltYWdlU2V0KCk7CiAgICAgICAgICAgICAgICAgaWYgKCFpbWFnZSkKQEAgLTIy
MzIsMTUgKzIyMjcsMTIgQEAgYm9vbCBDU1NQYXJzZXI6OnBhcnNlVmFsdWUoQ1NTUHJvcGVydHlJ
RAogICAgICAgICAgICAgICAgIG1fdmFsdWVMaXN0LT5uZXh0KCk7CiAgICAgICAgICAgICBlbHNl
CiAgICAgICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwotICAgICAgICB9Ci0jaWYgRU5BQkxFKENT
U19JTUFHRV9TRVQpCi0gICAgICAgIGVsc2UgaWYgKGlzSW1hZ2VTZXRGdW5jdGlvblZhbHVlKHZh
bHVlV2l0aENhbGN1bGF0aW9uLnZhbHVlKCkpKSB7CisgICAgICAgIH0gZWxzZSBpZiAoaXNJbWFn
ZVNldEZ1bmN0aW9uVmFsdWUodmFsdWVXaXRoQ2FsY3VsYXRpb24udmFsdWUoKSkpIHsKICAgICAg
ICAgICAgIHBhcnNlZFZhbHVlID0gcGFyc2VJbWFnZVNldCgpOwogICAgICAgICAgICAgaWYgKCFw
YXJzZWRWYWx1ZSkKICAgICAgICAgICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgICAgICAgICBt
X3ZhbHVlTGlzdC0+bmV4dCgpOwogICAgICAgICB9Ci0jZW5kaWYKICAgICAgICAgYnJlYWs7CiAK
ICAgICBjYXNlIENTU1Byb3BlcnR5V2Via2l0VGV4dFN0cm9rZVdpZHRoOgpAQCAtNDI4OCwxMiAr
NDI4MCwxMCBAQCBib29sIENTU1BhcnNlcjo6cGFyc2VDb250ZW50KENTU1Byb3BlcnR5CiAgICAg
ICAgICAgICAgICAgcGFyc2VkVmFsdWUgPSBwYXJzZUNvdW50ZXJDb250ZW50KCphcmdzLCB0cnVl
KTsKICAgICAgICAgICAgICAgICBpZiAoIXBhcnNlZFZhbHVlKQogICAgICAgICAgICAgICAgICAg
ICByZXR1cm4gZmFsc2U7Ci0jaWYgRU5BQkxFKENTU19JTUFHRV9TRVQpCiAgICAgICAgICAgICB9
IGVsc2UgaWYgKGlzSW1hZ2VTZXRGdW5jdGlvblZhbHVlKCp2YWx1ZSkpIHsKICAgICAgICAgICAg
ICAgICBwYXJzZWRWYWx1ZSA9IHBhcnNlSW1hZ2VTZXQoKTsKICAgICAgICAgICAgICAgICBpZiAo
IXBhcnNlZFZhbHVlKQogICAgICAgICAgICAgICAgICAgICByZXR1cm4gZmFsc2U7Ci0jZW5kaWYK
ICAgICAgICAgICAgIH0gZWxzZSBpZiAoaXNHZW5lcmF0ZWRJbWFnZVZhbHVlKCp2YWx1ZSkpIHsK
ICAgICAgICAgICAgICAgICBpZiAoIXBhcnNlR2VuZXJhdGVkSW1hZ2UoKm1fdmFsdWVMaXN0LCBw
YXJzZWRWYWx1ZSkpCiAgICAgICAgICAgICAgICAgICAgIHJldHVybiBmYWxzZTsKQEAgLTQzODYs
MTMgKzQzNzYsMTEgQEAgYm9vbCBDU1NQYXJzZXI6OnBhcnNlRmlsbEltYWdlKENTU1BhcnNlcgog
ICAgIGlmIChpc0dlbmVyYXRlZEltYWdlVmFsdWUoKnZhbHVlTGlzdC5jdXJyZW50KCkpKQogICAg
ICAgICByZXR1cm4gcGFyc2VHZW5lcmF0ZWRJbWFnZSh2YWx1ZUxpc3QsIHZhbHVlKTsKICAgICAK
LSNpZiBFTkFCTEUoQ1NTX0lNQUdFX1NFVCkKICAgICBpZiAoaXNJbWFnZVNldEZ1bmN0aW9uVmFs
dWUoKnZhbHVlTGlzdC5jdXJyZW50KCkpKSB7CiAgICAgICAgIHZhbHVlID0gcGFyc2VJbWFnZVNl
dCgpOwogICAgICAgICBpZiAodmFsdWUpCiAgICAgICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICB9
Ci0jZW5kaWYKIAogICAgIHJldHVybiBmYWxzZTsKIH0KQEAgLTgzNDUsMTQgKzgzMzMsMTIgQEAg
Ym9vbCBDU1NQYXJzZXI6OnBhcnNlQm9yZGVySW1hZ2UoQ1NTUHJvcAogICAgICAgICAgICAgICAg
ICAgICBjb250ZXh0LmNvbW1pdEltYWdlKFdURk1vdmUodmFsdWUpKTsKICAgICAgICAgICAgICAg
ICBlbHNlCiAgICAgICAgICAgICAgICAgICAgIHJldHVybiBmYWxzZTsKLSNpZiBFTkFCTEUoQ1NT
X0lNQUdFX1NFVCkKICAgICAgICAgICAgIH0gZWxzZSBpZiAoaXNJbWFnZVNldEZ1bmN0aW9uVmFs
dWUoKmN1cnJlbnRWYWx1ZSkpIHsKICAgICAgICAgICAgICAgICBSZWZQdHI8Q1NTVmFsdWU+IHZh
bHVlID0gcGFyc2VJbWFnZVNldCgpOwogICAgICAgICAgICAgICAgIGlmICh2YWx1ZSkKICAgICAg
ICAgICAgICAgICAgICAgY29udGV4dC5jb21taXRJbWFnZSh2YWx1ZS5yZWxlYXNlTm9uTnVsbCgp
KTsKICAgICAgICAgICAgICAgICBlbHNlCiAgICAgICAgICAgICAgICAgICAgIHJldHVybiBmYWxz
ZTsKLSNlbmRpZgogICAgICAgICAgICAgfSBlbHNlIGlmIChjdXJyZW50VmFsdWUtPmlkID09IENT
U1ZhbHVlTm9uZSkKICAgICAgICAgICAgICAgICBjb250ZXh0LmNvbW1pdEltYWdlKENTU1ZhbHVl
UG9vbDo6c2luZ2xldG9uKCkuY3JlYXRlSWRlbnRpZmllclZhbHVlKENTU1ZhbHVlTm9uZSkpOwog
ICAgICAgICB9CkBAIC05NzA0LDcgKzk2OTAsNiBAQCBSZWZQdHI8Q1NTVmFsdWVMaXN0PiBDU1NQ
YXJzZXI6OnBhcnNlSW1hCiB9CiAjZW5kaWYKIAotI2lmIEVOQUJMRShDU1NfSU1BR0VfU0VUKQog
UmVmUHRyPENTU0ltYWdlU2V0VmFsdWU+IENTU1BhcnNlcjo6cGFyc2VJbWFnZVNldCgpCiB7CiAg
ICAgQ1NTUGFyc2VyVmFsdWUmIHZhbHVlID0gKm1fdmFsdWVMaXN0LT5jdXJyZW50KCk7CkBAIC05
NzU2LDcgKzk3NDEsNiBAQCBSZWZQdHI8Q1NTSW1hZ2VTZXRWYWx1ZT4gQ1NTUGFyc2VyOjpwYXJz
CiAKICAgICByZXR1cm4gV1RGTW92ZShpbWFnZVNldCk7CiB9Ci0jZW5kaWYKIAogY2xhc3MgVHJh
bnNmb3JtT3BlcmF0aW9uSW5mbyB7CiBwdWJsaWM6CkluZGV4OiBTb3VyY2UvV2ViQ29yZS9jc3Mv
Q1NTUGFyc2VyLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvY3NzL0NTU1BhcnNlci5o
CShyZXZpc2lvbiAyMDQ1NTkpCisrKyBTb3VyY2UvV2ViQ29yZS9jc3MvQ1NTUGFyc2VyLmgJKHdv
cmtpbmcgY29weSkKQEAgLTYxLDYgKzYxLDcgQEAgY2xhc3MgQ1NTQmFzaWNTaGFwZUluc2V0Owog
Y2xhc3MgQ1NTQmFzaWNTaGFwZVBhdGg7CiBjbGFzcyBDU1NCYXNpY1NoYXBlUG9seWdvbjsKIGNs
YXNzIENTU0dyaWRMaW5lTmFtZXNWYWx1ZTsKK2NsYXNzIENTU0ltYWdlU2V0VmFsdWU7CiBjbGFz
cyBDU1NWYXJpYWJsZURlcGVuZGVudFZhbHVlOwogY2xhc3MgRG9jdW1lbnQ7CiBjbGFzcyBFbGVt
ZW50OwpAQCAtODYsMTAgKzg3LDYgQEAgY2xhc3MgU3R5bGVTaGVldENvbnRlbnRzOwogY2xhc3Mg
U3R5bGVkRWxlbWVudDsKIGNsYXNzIFdlYktpdENTU1RyYW5zZm9ybVZhbHVlOwogCi0jaWYgRU5B
QkxFKENTU19JTUFHRV9TRVQpCi1jbGFzcyBDU1NJbWFnZVNldFZhbHVlOwotI2VuZGlmCi0KIGNs
YXNzIENTU1BhcnNlciB7CiAgICAgZnJpZW5kIGlubGluZSBpbnQgY3NzeXlsZXgodm9pZCosIENT
U1BhcnNlciopOwogCkBAIC0zMzQsOSArMzMxLDcgQEAgcHVibGljOgogICAgIFJlZlB0cjxDU1NW
YWx1ZUxpc3Q+IHBhcnNlSW1hZ2VSZXNvbHV0aW9uKCk7CiAjZW5kaWYKIAotI2lmIEVOQUJMRShD
U1NfSU1BR0VfU0VUKQogICAgIFJlZlB0cjxDU1NJbWFnZVNldFZhbHVlPiBwYXJzZUltYWdlU2V0
KCk7Ci0jZW5kaWYKIAogICAgIGJvb2wgcGFyc2VGaWx0ZXJJbWFnZShDU1NQYXJzZXJWYWx1ZUxp
c3QmLCBSZWZQdHI8Q1NTVmFsdWU+Jik7CiAKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL2Nzcy9DU1NU
b1N0eWxlTWFwLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9jc3MvQ1NTVG9TdHls
ZU1hcC5jcHAJKHJldmlzaW9uIDIwNDU1OSkKKysrIFNvdXJjZS9XZWJDb3JlL2Nzcy9DU1NUb1N0
eWxlTWFwLmNwcAkod29ya2luZyBjb3B5KQpAQCAtNTY3LDExICs1NjcsNyBAQCB2b2lkIENTU1Rv
U3R5bGVNYXA6Om1hcE5pbmVQaWVjZUltYWdlKENTCiAgICAgICAgIGltYWdlUHJvcGVydHkgPSBw
cm9wZXJ0eTsKIAogICAgIGZvciAoYXV0byYgY3VycmVudCA6IGJvcmRlckltYWdlKSB7Ci0gICAg
ICAgIGlmIChpczxDU1NJbWFnZVZhbHVlPihjdXJyZW50LmdldCgpKSB8fCBpczxDU1NJbWFnZUdl
bmVyYXRvclZhbHVlPihjdXJyZW50LmdldCgpKQotI2lmIEVOQUJMRShDU1NfSU1BR0VfU0VUKQot
ICAgICAgICAgICAgfHwgaXM8Q1NTSW1hZ2VTZXRWYWx1ZT4oY3VycmVudC5nZXQoKSkKLSNlbmRp
ZgotICAgICAgICAgICAgKQorICAgICAgICBpZiAoaXM8Q1NTSW1hZ2VWYWx1ZT4oY3VycmVudC5n
ZXQoKSkgfHwgaXM8Q1NTSW1hZ2VHZW5lcmF0b3JWYWx1ZT4oY3VycmVudC5nZXQoKSkgfHwgaXM8
Q1NTSW1hZ2VTZXRWYWx1ZT4oY3VycmVudC5nZXQoKSkpCiAgICAgICAgICAgICBpbWFnZS5zZXRJ
bWFnZShzdHlsZUltYWdlKGltYWdlUHJvcGVydHksIGN1cnJlbnQuZ2V0KCkpKTsKICAgICAgICAg
ZWxzZSBpZiAoaXM8Q1NTQm9yZGVySW1hZ2VTbGljZVZhbHVlPihjdXJyZW50LmdldCgpKSkKICAg
ICAgICAgICAgIG1hcE5pbmVQaWVjZUltYWdlU2xpY2UoY3VycmVudCwgaW1hZ2UpOwpJbmRleDog
U291cmNlL1dlYkNvcmUvY3NzL0NTU1ZhbHVlLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9jc3MvQ1NTVmFsdWUuY3BwCShyZXZpc2lvbiAyMDQ1NTkpCisrKyBTb3VyY2UvV2ViQ29y
ZS9jc3MvQ1NTVmFsdWUuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0xNTAsMTAgKzE1MCw4IEBAIGJv
b2wgQ1NTVmFsdWU6OnRyYXZlcnNlU3VicmVzb3VyY2VzKGNvbnMKICAgICAgICAgcmV0dXJuIGRv
d25jYXN0PENTU0Nyb3NzZmFkZVZhbHVlPigqdGhpcykudHJhdmVyc2VTdWJyZXNvdXJjZXMoaGFu
ZGxlcik7CiAgICAgaWYgKGlzPENTU0ZpbHRlckltYWdlVmFsdWU+KCp0aGlzKSkKICAgICAgICAg
cmV0dXJuIGRvd25jYXN0PENTU0ZpbHRlckltYWdlVmFsdWU+KCp0aGlzKS50cmF2ZXJzZVN1YnJl
c291cmNlcyhoYW5kbGVyKTsKLSNpZiBFTkFCTEUoQ1NTX0lNQUdFX1NFVCkKICAgICBpZiAoaXM8
Q1NTSW1hZ2VTZXRWYWx1ZT4oKnRoaXMpKQogICAgICAgICByZXR1cm4gZG93bmNhc3Q8Q1NTSW1h
Z2VTZXRWYWx1ZT4oKnRoaXMpLnRyYXZlcnNlU3VicmVzb3VyY2VzKGhhbmRsZXIpOwotI2VuZGlm
CiAgICAgcmV0dXJuIGZhbHNlOwogfQogCkBAIC0yMzgsMTAgKzIzNiw4IEBAIGJvb2wgQ1NTVmFs
dWU6OmVxdWFscyhjb25zdCBDU1NWYWx1ZSYgb3QKICAgICAgICAgICAgIHJldHVybiBjb21wYXJl
Q1NTVmFsdWVzPENTU0xpbmVCb3hDb250YWluVmFsdWU+KCp0aGlzLCBvdGhlcik7CiAgICAgICAg
IGNhc2UgQ2FsY3VsYXRpb25DbGFzczoKICAgICAgICAgICAgIHJldHVybiBjb21wYXJlQ1NTVmFs
dWVzPENTU0NhbGNWYWx1ZT4oKnRoaXMsIG90aGVyKTsKLSNpZiBFTkFCTEUoQ1NTX0lNQUdFX1NF
VCkKICAgICAgICAgY2FzZSBJbWFnZVNldENsYXNzOgogICAgICAgICAgICAgcmV0dXJuIGNvbXBh
cmVDU1NWYWx1ZXM8Q1NTSW1hZ2VTZXRWYWx1ZT4oKnRoaXMsIG90aGVyKTsKLSNlbmRpZgogICAg
ICAgICBjYXNlIFdlYktpdENTU0ZpbHRlckNsYXNzOgogICAgICAgICAgICAgcmV0dXJuIGNvbXBh
cmVDU1NWYWx1ZXM8V2ViS2l0Q1NTRmlsdGVyVmFsdWU+KCp0aGlzLCBvdGhlcik7CiAgICAgICAg
IGNhc2UgU1ZHQ29sb3JDbGFzczoKQEAgLTM0NiwxMCArMzQyLDggQEAgU3RyaW5nIENTU1ZhbHVl
Ojpjc3NUZXh0KCkgY29uc3QKICAgICAgICAgcmV0dXJuIGRvd25jYXN0PENTU0xpbmVCb3hDb250
YWluVmFsdWU+KCp0aGlzKS5jdXN0b21DU1NUZXh0KCk7CiAgICAgY2FzZSBDYWxjdWxhdGlvbkNs
YXNzOgogICAgICAgICByZXR1cm4gZG93bmNhc3Q8Q1NTQ2FsY1ZhbHVlPigqdGhpcykuY3VzdG9t
Q1NTVGV4dCgpOwotI2lmIEVOQUJMRShDU1NfSU1BR0VfU0VUKQogICAgIGNhc2UgSW1hZ2VTZXRD
bGFzczoKICAgICAgICAgcmV0dXJuIGRvd25jYXN0PENTU0ltYWdlU2V0VmFsdWU+KCp0aGlzKS5j
dXN0b21DU1NUZXh0KCk7Ci0jZW5kaWYKICAgICBjYXNlIFdlYktpdENTU0ZpbHRlckNsYXNzOgog
ICAgICAgICByZXR1cm4gZG93bmNhc3Q8V2ViS2l0Q1NTRmlsdGVyVmFsdWU+KCp0aGlzKS5jdXN0
b21DU1NUZXh0KCk7CiAgICAgY2FzZSBTVkdDb2xvckNsYXNzOgpAQCAtNDc5LDExICs0NzMsOSBA
QCB2b2lkIENTU1ZhbHVlOjpkZXN0cm95KCkKICAgICBjYXNlIENhbGN1bGF0aW9uQ2xhc3M6CiAg
ICAgICAgIGRlbGV0ZSBkb3duY2FzdDxDU1NDYWxjVmFsdWU+KHRoaXMpOwogICAgICAgICByZXR1
cm47Ci0jaWYgRU5BQkxFKENTU19JTUFHRV9TRVQpCiAgICAgY2FzZSBJbWFnZVNldENsYXNzOgog
ICAgICAgICBkZWxldGUgZG93bmNhc3Q8Q1NTSW1hZ2VTZXRWYWx1ZT4odGhpcyk7CiAgICAgICAg
IHJldHVybjsKLSNlbmRpZgogICAgIGNhc2UgRmlsdGVySW1hZ2VDbGFzczoKICAgICAgICAgZGVs
ZXRlIGRvd25jYXN0PENTU0ZpbHRlckltYWdlVmFsdWU+KHRoaXMpOwogICAgICAgICByZXR1cm47
CkBAIC01MzEsMTAgKzUyMyw4IEBAIFJlZlB0cjxDU1NWYWx1ZT4gQ1NTVmFsdWU6OmNsb25lRm9y
Q1NTT00KICAgICAgICAgcmV0dXJuIGRvd25jYXN0PFdlYktpdENTU0ZpbHRlclZhbHVlPigqdGhp
cykuY2xvbmVGb3JDU1NPTSgpOwogICAgIGNhc2UgV2ViS2l0Q1NTVHJhbnNmb3JtQ2xhc3M6CiAg
ICAgICAgIHJldHVybiBkb3duY2FzdDxXZWJLaXRDU1NUcmFuc2Zvcm1WYWx1ZT4oKnRoaXMpLmNs
b25lRm9yQ1NTT00oKTsKLSNpZiBFTkFCTEUoQ1NTX0lNQUdFX1NFVCkKICAgICBjYXNlIEltYWdl
U2V0Q2xhc3M6CiAgICAgICAgIHJldHVybiBkb3duY2FzdDxDU1NJbWFnZVNldFZhbHVlPigqdGhp
cykuY2xvbmVGb3JDU1NPTSgpOwotI2VuZGlmCiAgICAgY2FzZSBTVkdDb2xvckNsYXNzOgogICAg
ICAgICByZXR1cm4gZG93bmNhc3Q8U1ZHQ29sb3I+KCp0aGlzKS5jbG9uZUZvckNTU09NKCk7CiAg
ICAgY2FzZSBTVkdQYWludENsYXNzOgpJbmRleDogU291cmNlL1dlYkNvcmUvY3NzL0NTU1ZhbHVl
LmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvY3NzL0NTU1ZhbHVlLmgJKHJldmlzaW9u
IDIwNDU1OSkKKysrIFNvdXJjZS9XZWJDb3JlL2Nzcy9DU1NWYWx1ZS5oCSh3b3JraW5nIGNvcHkp
CkBAIC04OCw5ICs4OCw3IEBAIHB1YmxpYzoKICAgICBib29sIGlzSW1hZ2VHZW5lcmF0b3JWYWx1
ZSgpIGNvbnN0IHsgcmV0dXJuIG1fY2xhc3NUeXBlID49IENhbnZhc0NsYXNzICYmIG1fY2xhc3NU
eXBlIDw9IFJhZGlhbEdyYWRpZW50Q2xhc3M7IH0KICAgICBib29sIGlzR3JhZGllbnRWYWx1ZSgp
IGNvbnN0IHsgcmV0dXJuIG1fY2xhc3NUeXBlID49IExpbmVhckdyYWRpZW50Q2xhc3MgJiYgbV9j
bGFzc1R5cGUgPD0gUmFkaWFsR3JhZGllbnRDbGFzczsgfQogICAgIGJvb2wgaXNOYW1lZEltYWdl
VmFsdWUoKSBjb25zdCB7IHJldHVybiBtX2NsYXNzVHlwZSA9PSBOYW1lZEltYWdlQ2xhc3M7IH0K
LSNpZiBFTkFCTEUoQ1NTX0lNQUdFX1NFVCkKICAgICBib29sIGlzSW1hZ2VTZXRWYWx1ZSgpIGNv
bnN0IHsgcmV0dXJuIG1fY2xhc3NUeXBlID09IEltYWdlU2V0Q2xhc3M7IH0KLSNlbmRpZgogICAg
IGJvb2wgaXNJbWFnZVZhbHVlKCkgY29uc3QgeyByZXR1cm4gbV9jbGFzc1R5cGUgPT0gSW1hZ2VD
bGFzczsgfQogICAgIGJvb2wgaXNJbXBsaWNpdEluaXRpYWxWYWx1ZSgpIGNvbnN0OwogICAgIGJv
b2wgaXNJbmhlcml0ZWRWYWx1ZSgpIGNvbnN0IHsgcmV0dXJuIG1fY2xhc3NUeXBlID09IEluaGVy
aXRlZENsYXNzOyB9CkBAIC0yMDAsOSArMTk4LDcgQEAgcHJvdGVjdGVkOgogCiAgICAgICAgIC8v
IExpc3QgY2xhc3MgdHlwZXMgbXVzdCBhcHBlYXIgYWZ0ZXIgVmFsdWVMaXN0Q2xhc3MuCiAgICAg
ICAgIFZhbHVlTGlzdENsYXNzLAotI2lmIEVOQUJMRShDU1NfSU1BR0VfU0VUKQogICAgICAgICBJ
bWFnZVNldENsYXNzLAotI2VuZGlmCiAgICAgICAgIFdlYktpdENTU0ZpbHRlckNsYXNzLAogICAg
ICAgICBXZWJLaXRDU1NUcmFuc2Zvcm1DbGFzcywKICNpZiBFTkFCTEUoQ1NTX0dSSURfTEFZT1VU
KQpJbmRleDogU291cmNlL1dlYkNvcmUvY3NzL1N0eWxlQnVpbGRlckNvbnZlcnRlci5oCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL2Nzcy9TdHlsZUJ1aWxkZXJDb252ZXJ0ZXIuaAkocmV2
aXNpb24gMjA0NTU5KQorKysgU291cmNlL1dlYkNvcmUvY3NzL1N0eWxlQnVpbGRlckNvbnZlcnRl
ci5oCSh3b3JraW5nIGNvcHkpCkBAIC03MzAsMTEgKzczMCw3IEBAIGlubGluZSBUZXh0RGVjb3Jh
dGlvblNraXAgU3R5bGVCdWlsZGVyQ28KICNpZiBFTkFCTEUoQ1NTX1NIQVBFUykKIHN0YXRpYyBp
bmxpbmUgYm9vbCBpc0ltYWdlU2hhcGUoY29uc3QgQ1NTVmFsdWUmIHZhbHVlKQogewotICAgIHJl
dHVybiBpczxDU1NJbWFnZVZhbHVlPih2YWx1ZSkKLSNpZiBFTkFCTEUoQ1NTX0lNQUdFX1NFVCkK
LSAgICAgICAgfHwgaXM8Q1NTSW1hZ2VTZXRWYWx1ZT4odmFsdWUpCi0jZW5kaWYgCi0gICAgICAg
IHx8IGlzPENTU0ltYWdlR2VuZXJhdG9yVmFsdWU+KHZhbHVlKTsKKyAgICByZXR1cm4gaXM8Q1NT
SW1hZ2VWYWx1ZT4odmFsdWUpIHx8IGlzPENTU0ltYWdlU2V0VmFsdWU+KHZhbHVlKSB8fCBpczxD
U1NJbWFnZUdlbmVyYXRvclZhbHVlPih2YWx1ZSk7CiB9CiAKIGlubGluZSBQYXNzUmVmUHRyPFNo
YXBlVmFsdWU+IFN0eWxlQnVpbGRlckNvbnZlcnRlcjo6Y29udmVydFNoYXBlVmFsdWUoU3R5bGVS
ZXNvbHZlciYgc3R5bGVSZXNvbHZlciwgQ1NTVmFsdWUmIHZhbHVlKQpJbmRleDogU291cmNlL1dl
YkNvcmUvY3NzL1N0eWxlQnVpbGRlckN1c3RvbS5oCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJD
b3JlL2Nzcy9TdHlsZUJ1aWxkZXJDdXN0b20uaAkocmV2aXNpb24gMjA0NTU5KQorKysgU291cmNl
L1dlYkNvcmUvY3NzL1N0eWxlQnVpbGRlckN1c3RvbS5oCSh3b3JraW5nIGNvcHkpCkBAIC0xMzEy
LDExICsxMzEyLDkgQEAgaW5saW5lIHZvaWQgU3R5bGVCdWlsZGVyQ3VzdG9tOjphcHBseVZhbAog
ICAgICAgICAgICAgZWxzZQogICAgICAgICAgICAgICAgIHN0eWxlUmVzb2x2ZXIuc3R5bGUoKS0+
c2V0Q29udGVudChTdHlsZUdlbmVyYXRlZEltYWdlOjpjcmVhdGUoZG93bmNhc3Q8Q1NTSW1hZ2VH
ZW5lcmF0b3JWYWx1ZT4oaXRlbS5nZXQoKSkpLCBkaWRTZXQpOwogICAgICAgICAgICAgZGlkU2V0
ID0gdHJ1ZTsKLSNpZiBFTkFCTEUoQ1NTX0lNQUdFX1NFVCkKICAgICAgICAgfSBlbHNlIGlmIChp
czxDU1NJbWFnZVNldFZhbHVlPihpdGVtLmdldCgpKSkgewogICAgICAgICAgICAgc3R5bGVSZXNv
bHZlci5zdHlsZSgpLT5zZXRDb250ZW50KHN0eWxlUmVzb2x2ZXIuc2V0T3JQZW5kaW5nRnJvbVZh
bHVlKENTU1Byb3BlcnR5Q29udGVudCwgZG93bmNhc3Q8Q1NTSW1hZ2VTZXRWYWx1ZT4oaXRlbS5n
ZXQoKSkpLCBkaWRTZXQpOwogICAgICAgICAgICAgZGlkU2V0ID0gdHJ1ZTsKLSNlbmRpZgogICAg
ICAgICB9CiAKICAgICAgICAgaWYgKGlzPENTU0ltYWdlVmFsdWU+KGl0ZW0uZ2V0KCkpKSB7Cklu
ZGV4OiBTb3VyY2UvV2ViQ29yZS9jc3MvU3R5bGVSZXNvbHZlci5jcHAKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
U291cmNlL1dlYkNvcmUvY3NzL1N0eWxlUmVzb2x2ZXIuY3BwCShyZXZpc2lvbiAyMDQ1NjApCisr
KyBTb3VyY2UvV2ViQ29yZS9jc3MvU3R5bGVSZXNvbHZlci5jcHAJKHdvcmtpbmcgY29weSkKQEAg
LTQxLDYgKzQxLDcgQEAKICNpbmNsdWRlICJDU1NGb250U2VsZWN0b3IuaCIKICNpbmNsdWRlICJD
U1NGb250VmFsdWUuaCIKICNpbmNsdWRlICJDU1NGdW5jdGlvblZhbHVlLmgiCisjaW5jbHVkZSAi
Q1NTSW1hZ2VTZXRWYWx1ZS5oIgogI2luY2x1ZGUgIkNTU0luaGVyaXRlZFZhbHVlLmgiCiAjaW5j
bHVkZSAiQ1NTSW5pdGlhbFZhbHVlLmgiCiAjaW5jbHVkZSAiQ1NTS2V5ZnJhbWVSdWxlLmgiCkBA
IC0xNTIsMTAgKzE1Myw2IEBACiAjaW5jbHVkZSAiQ1NTR3JpZFRlbXBsYXRlQXJlYXNWYWx1ZS5o
IgogI2VuZGlmCiAKLSNpZiBFTkFCTEUoQ1NTX0lNQUdFX1NFVCkKLSNpbmNsdWRlICJDU1NJbWFn
ZVNldFZhbHVlLmgiCi0jZW5kaWYKLQogI2lmIEVOQUJMRShEQVNIQk9BUkRfU1VQUE9SVCkKICNp
bmNsdWRlICJEYXNoYm9hcmRSZWdpb24uaCIKICNlbmRpZgpAQCAtMTcxNSwxMCArMTcxMiw4IEBA
IFJlZlB0cjxTdHlsZUltYWdlPiBTdHlsZVJlc29sdmVyOjpzdHlsZUkKICAgICAgICAgcmV0dXJu
IGdlbmVyYXRlZE9yUGVuZGluZ0Zyb21WYWx1ZShwcm9wZXJ0eSwgZG93bmNhc3Q8Q1NTSW1hZ2VH
ZW5lcmF0b3JWYWx1ZT4odmFsdWUpKTsKICAgICB9CiAKLSNpZiBFTkFCTEUoQ1NTX0lNQUdFX1NF
VCkKICAgICBpZiAoaXM8Q1NTSW1hZ2VTZXRWYWx1ZT4odmFsdWUpKQogICAgICAgICByZXR1cm4g
c2V0T3JQZW5kaW5nRnJvbVZhbHVlKHByb3BlcnR5LCBkb3duY2FzdDxDU1NJbWFnZVNldFZhbHVl
Pih2YWx1ZSkpOwotI2VuZGlmCiAKICAgICBpZiAoaXM8Q1NTQ3Vyc29ySW1hZ2VWYWx1ZT4odmFs
dWUpKQogICAgICAgICByZXR1cm4gY3Vyc29yT3JQZW5kaW5nRnJvbVZhbHVlKHByb3BlcnR5LCBk
b3duY2FzdDxDU1NDdXJzb3JJbWFnZVZhbHVlPih2YWx1ZSkpOwpAQCAtMTc0OCw3ICsxNzQzLDYg
QEAgUmVmPFN0eWxlSW1hZ2U+IFN0eWxlUmVzb2x2ZXI6OmdlbmVyYXRlZAogICAgIHJldHVybiBT
dHlsZUdlbmVyYXRlZEltYWdlOjpjcmVhdGUodmFsdWUpOwogfQogCi0jaWYgRU5BQkxFKENTU19J
TUFHRV9TRVQpCiBSZWZQdHI8U3R5bGVJbWFnZT4gU3R5bGVSZXNvbHZlcjo6c2V0T3JQZW5kaW5n
RnJvbVZhbHVlKENTU1Byb3BlcnR5SUQgcHJvcGVydHksIENTU0ltYWdlU2V0VmFsdWUmIHZhbHVl
KQogewogICAgIFJlZlB0cjxTdHlsZUltYWdlPiBpbWFnZSA9IHZhbHVlLmNhY2hlZE9yUGVuZGlu
Z0ltYWdlU2V0KGRvY3VtZW50KCkpOwpAQCAtMTc1Niw3ICsxNzUwLDYgQEAgUmVmUHRyPFN0eWxl
SW1hZ2U+IFN0eWxlUmVzb2x2ZXI6OnNldE9yUAogICAgICAgICBtX3N0YXRlLmVuc3VyZVBlbmRp
bmdSZXNvdXJjZXMoKS5wZW5kaW5nSW1hZ2VzLnNldChwcm9wZXJ0eSwgJnZhbHVlKTsKICAgICBy
ZXR1cm4gaW1hZ2U7CiB9Ci0jZW5kaWYKIAogUmVmUHRyPFN0eWxlSW1hZ2U+IFN0eWxlUmVzb2x2
ZXI6OmN1cnNvck9yUGVuZGluZ0Zyb21WYWx1ZShDU1NQcm9wZXJ0eUlEIHByb3BlcnR5LCBDU1ND
dXJzb3JJbWFnZVZhbHVlJiB2YWx1ZSkKIHsKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL2Nzcy9TdHls
ZVJlc29sdmVyLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvY3NzL1N0eWxlUmVzb2x2
ZXIuaAkocmV2aXNpb24gMjA0NTU5KQorKysgU291cmNlL1dlYkNvcmUvY3NzL1N0eWxlUmVzb2x2
ZXIuaAkod29ya2luZyBjb3B5KQpAQCAtNDYwLDkgKzQ2MCw3IEBAIHB1YmxpYzoKICAgICBSZWZQ
dHI8U3R5bGVJbWFnZT4gc3R5bGVJbWFnZShDU1NQcm9wZXJ0eUlELCBDU1NWYWx1ZSYpOwogICAg
IFJlZjxTdHlsZUltYWdlPiBjYWNoZWRPclBlbmRpbmdGcm9tVmFsdWUoQ1NTUHJvcGVydHlJRCwg
Q1NTSW1hZ2VWYWx1ZSYpOwogICAgIFJlZjxTdHlsZUltYWdlPiBnZW5lcmF0ZWRPclBlbmRpbmdG
cm9tVmFsdWUoQ1NTUHJvcGVydHlJRCwgQ1NTSW1hZ2VHZW5lcmF0b3JWYWx1ZSYpOwotI2lmIEVO
QUJMRShDU1NfSU1BR0VfU0VUKQogICAgIFJlZlB0cjxTdHlsZUltYWdlPiBzZXRPclBlbmRpbmdG
cm9tVmFsdWUoQ1NTUHJvcGVydHlJRCwgQ1NTSW1hZ2VTZXRWYWx1ZSYpOwotI2VuZGlmCiAgICAg
UmVmUHRyPFN0eWxlSW1hZ2U+IGN1cnNvck9yUGVuZGluZ0Zyb21WYWx1ZShDU1NQcm9wZXJ0eUlE
LCBDU1NDdXJzb3JJbWFnZVZhbHVlJik7CiAKICAgICBib29sIGFwcGx5UHJvcGVydHlUb1JlZ3Vs
YXJTdHlsZSgpIGNvbnN0IHsgcmV0dXJuIG1fc3RhdGUuYXBwbHlQcm9wZXJ0eVRvUmVndWxhclN0
eWxlKCk7IH0KSW5kZXg6IFNvdXJjZS9XZWJDb3JlL2Nzcy9tYWtlcHJvcC5wbAo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci0tLSBTb3VyY2UvV2ViQ29yZS9jc3MvbWFrZXByb3AucGwJKHJldmlzaW9uIDIwNDU1OSkKKysr
IFNvdXJjZS9XZWJDb3JlL2Nzcy9tYWtlcHJvcC5wbAkod29ya2luZyBjb3B5KQpAQCAtNjU5LDEx
ICs2NTksNyBAQCBzdWIgZ2VuZXJhdGVGaWxsTGF5ZXJQcm9wZXJ0eVZhbHVlU2V0dGVyCiAgIG15
ICRzZXR0ZXJDb250ZW50ID0gIiI7CiAgICRzZXR0ZXJDb250ZW50IC49ICRpbmRlbnQgLiAiRmls
bExheWVyKiBjaGlsZCA9ICZzdHlsZVJlc29sdmVyLnN0eWxlKCktPiIgLiBnZXRMYXllcnNBY2Nl
c3NvckZ1bmN0aW9uKCRuYW1lKSAuICIoKTtcbiI7CiAgICRzZXR0ZXJDb250ZW50IC49ICRpbmRl
bnQgLiAiRmlsbExheWVyKiBwcmV2aW91c0NoaWxkID0gbnVsbHB0cjtcbiI7Ci0gICRzZXR0ZXJD
b250ZW50IC49ICRpbmRlbnQgLiAiaWYgKGlzPENTU1ZhbHVlTGlzdD4odmFsdWUpXG4iOwotICAk
c2V0dGVyQ29udGVudCAuPSAiI2lmIEVOQUJMRShDU1NfSU1BR0VfU0VUKVxuIjsKLSAgJHNldHRl
ckNvbnRlbnQgLj0gJGluZGVudCAuICImJiAhaXM8Q1NTSW1hZ2VTZXRWYWx1ZT4odmFsdWUpXG4i
OwotICAkc2V0dGVyQ29udGVudCAuPSAiI2VuZGlmXG4iOwotICAkc2V0dGVyQ29udGVudCAuPSAk
aW5kZW50IC4gIikge1xuIjsKKyAgJHNldHRlckNvbnRlbnQgLj0gJGluZGVudCAuICJpZiAoaXM8
Q1NTVmFsdWVMaXN0Pih2YWx1ZSkgJiYgIWlzPENTU0ltYWdlU2V0VmFsdWU+KHZhbHVlKSkge1xu
IjsKICAgJHNldHRlckNvbnRlbnQgLj0gJGluZGVudCAuICIgICAgLy8gV2FsayBlYWNoIHZhbHVl
IGFuZCBwdXQgaXQgaW50byBhIGxheWVyLCBjcmVhdGluZyBuZXcgbGF5ZXJzIGFzIG5lZWRlZC5c
biI7CiAgICRzZXR0ZXJDb250ZW50IC49ICRpbmRlbnQgLiAiICAgIGZvciAoYXV0byYgaXRlbSA6
IGRvd25jYXN0PENTU1ZhbHVlTGlzdD4odmFsdWUpKSB7XG4iOwogICAkc2V0dGVyQ29udGVudCAu
PSAkaW5kZW50IC4gIiAgICAgICAgaWYgKCFjaGlsZCkge1xuIjsKSW5kZXg6IFNvdXJjZS9XZWJD
b3JlL3JlbmRlcmluZy9zdHlsZS9TdHlsZUNhY2hlZEltYWdlLmNwcAo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBT
b3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvU3R5bGVDYWNoZWRJbWFnZS5jcHAJKHJldmlz
aW9uIDIwNDU2NCkKKysrIFNvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9TdHlsZUNhY2hl
ZEltYWdlLmNwcAkod29ya2luZyBjb3B5KQpAQCAtNDYsMTAgKzQ2LDggQEAgU3R5bGVDYWNoZWRJ
bWFnZTo6flN0eWxlQ2FjaGVkSW1hZ2UoKQogCiBQYXNzUmVmUHRyPENTU1ZhbHVlPiBTdHlsZUNh
Y2hlZEltYWdlOjpjc3NWYWx1ZSgpIGNvbnN0CiB7Ci0jaWYgRU5BQkxFKENTU19JTUFHRV9TRVQp
CiAgICAgaWYgKG1fY3NzSW1hZ2VTZXRWYWx1ZSkKICAgICAgICAgcmV0dXJuIGNvbnN0X2Nhc3Q8
Q1NTSW1hZ2VTZXRWYWx1ZSo+KG1fY3NzSW1hZ2VTZXRWYWx1ZSk7Ci0jZW5kaWYKICAgICByZXR1
cm4gQ1NTUHJpbWl0aXZlVmFsdWU6OmNyZWF0ZShtX2ltYWdlLT51cmwoKSwgQ1NTUHJpbWl0aXZl
VmFsdWU6OkNTU19VUkkpOwogfQogCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvc3R5
bGUvU3R5bGVQZW5kaW5nSW1hZ2UuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9yZW5k
ZXJpbmcvc3R5bGUvU3R5bGVQZW5kaW5nSW1hZ2UuaAkocmV2aXNpb24gMjA0NTU5KQorKysgU291
cmNlL1dlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1N0eWxlUGVuZGluZ0ltYWdlLmgJKHdvcmtpbmcg
Y29weSkKQEAgLTI4LDEzICsyOCwxMCBAQAogCiAjaW5jbHVkZSAiQ1NTQ3Vyc29ySW1hZ2VWYWx1
ZS5oIgogI2luY2x1ZGUgIkNTU0ltYWdlR2VuZXJhdG9yVmFsdWUuaCIKKyNpbmNsdWRlICJDU1NJ
bWFnZVNldFZhbHVlLmgiCiAjaW5jbHVkZSAiQ1NTSW1hZ2VWYWx1ZS5oIgogI2luY2x1ZGUgIlN0
eWxlSW1hZ2UuaCIKIAotI2lmIEVOQUJMRShDU1NfSU1BR0VfU0VUKQotI2luY2x1ZGUgIkNTU0lt
YWdlU2V0VmFsdWUuaCIKLSNlbmRpZgotCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKIC8vIFN0eWxl
UGVuZGluZ0ltYWdlIGlzIGEgcGxhY2Vob2xkZXIgU3R5bGVJbWFnZSB0aGF0IGlzIGVudGVyZWQg
aW50byB0aGUgUmVuZGVyU3R5bGUgZHVyaW5nCkBAIC00OCwxMCArNDUsNyBAQCBwdWJsaWM6CiAg
ICAgQ1NTSW1hZ2VWYWx1ZSogY3NzSW1hZ2VWYWx1ZSgpIGNvbnN0IHsgcmV0dXJuIGlzPENTU0lt
YWdlVmFsdWU+KG1fdmFsdWUpID8gZG93bmNhc3Q8Q1NTSW1hZ2VWYWx1ZT4obV92YWx1ZSkgOiBu
dWxscHRyOyB9CiAgICAgQ1NTSW1hZ2VHZW5lcmF0b3JWYWx1ZSogY3NzSW1hZ2VHZW5lcmF0b3JW
YWx1ZSgpIGNvbnN0IHsgcmV0dXJuIGlzPENTU0ltYWdlR2VuZXJhdG9yVmFsdWU+KG1fdmFsdWUp
ID8gc3RhdGljX2Nhc3Q8Q1NTSW1hZ2VHZW5lcmF0b3JWYWx1ZSo+KG1fdmFsdWUpIDogbnVsbHB0
cjsgfQogICAgIENTU0N1cnNvckltYWdlVmFsdWUqIGNzc0N1cnNvckltYWdlVmFsdWUoKSBjb25z
dCB7IHJldHVybiBpczxDU1NDdXJzb3JJbWFnZVZhbHVlPihtX3ZhbHVlKSA/IGRvd25jYXN0PENT
U0N1cnNvckltYWdlVmFsdWU+KG1fdmFsdWUpIDogbnVsbHB0cjsgfQotCi0jaWYgRU5BQkxFKENT
U19JTUFHRV9TRVQpCiAgICAgQ1NTSW1hZ2VTZXRWYWx1ZSogY3NzSW1hZ2VTZXRWYWx1ZSgpIGNv
bnN0IHsgcmV0dXJuIGlzPENTU0ltYWdlU2V0VmFsdWU+KG1fdmFsdWUpID8gZG93bmNhc3Q8Q1NT
SW1hZ2VTZXRWYWx1ZT4obV92YWx1ZSkgOiBudWxscHRyOyB9Ci0jZW5kaWYKIAogICAgIHZvaWQg
ZGV0YWNoRnJvbUNTU1ZhbHVlKCkgeyBtX3ZhbHVlID0gbnVsbHB0cjsgfQogCkluZGV4OiBTb3Vy
Y2UvV2ViQ29yZS9zdHlsZS9TdHlsZVBlbmRpbmdSZXNvdXJjZXMuY3BwCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IFNvdXJjZS9XZWJDb3JlL3N0eWxlL1N0eWxlUGVuZGluZ1Jlc291cmNlcy5jcHAJKHJldmlzaW9u
IDIwNDU2MCkKKysrIFNvdXJjZS9XZWJDb3JlL3N0eWxlL1N0eWxlUGVuZGluZ1Jlc291cmNlcy5j
cHAJKHdvcmtpbmcgY29weSkKQEAgLTY2LDEwICs2Niw4IEBAIHN0YXRpYyBSZWZQdHI8U3R5bGVJ
bWFnZT4gbG9hZFBlbmRpbmdJbWEKICAgICBpZiAoYXV0byBjdXJzb3JJbWFnZVZhbHVlID0gcGVu
ZGluZ0ltYWdlLmNzc0N1cnNvckltYWdlVmFsdWUoKSkKICAgICAgICAgcmV0dXJuIGN1cnNvcklt
YWdlVmFsdWUtPmNhY2hlZEltYWdlKGRvY3VtZW50LmNhY2hlZFJlc291cmNlTG9hZGVyKCksIG9w
dGlvbnMpOwogCi0jaWYgRU5BQkxFKENTU19JTUFHRV9TRVQpCiAgICAgaWYgKGF1dG8gaW1hZ2VT
ZXRWYWx1ZSA9IHBlbmRpbmdJbWFnZS5jc3NJbWFnZVNldFZhbHVlKCkpCiAgICAgICAgIHJldHVy
biBpbWFnZVNldFZhbHVlLT5iZXN0Rml0SW1hZ2UoZG9jdW1lbnQuY2FjaGVkUmVzb3VyY2VMb2Fk
ZXIoKSwgb3B0aW9ucyk7Ci0jZW5kaWYKIAogICAgIHJldHVybiBudWxscHRyOwogfQpJbmRleDog
U291cmNlL2NtYWtlL09wdGlvbnNFZmwuY21ha2UKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL2NtYWtl
L09wdGlvbnNFZmwuY21ha2UJKHJldmlzaW9uIDIwNDU1OSkKKysrIFNvdXJjZS9jbWFrZS9PcHRp
b25zRWZsLmNtYWtlCSh3b3JraW5nIGNvcHkpCkBAIC04NSw3ICs4NSw2IEBAIFdFQktJVF9PUFRJ
T05fREVGQVVMVF9QT1JUX1ZBTFVFKEVOQUJMRV8KIFdFQktJVF9PUFRJT05fREVGQVVMVF9QT1JU
X1ZBTFVFKEVOQUJMRV9DU1MzX1RFWFQgUFVCTElDIE9OKQogV0VCS0lUX09QVElPTl9ERUZBVUxU
X1BPUlRfVkFMVUUoRU5BQkxFX0NTU19ERVZJQ0VfQURBUFRBVElPTiBQVUJMSUMgT04pCiBXRUJL
SVRfT1BUSU9OX0RFRkFVTFRfUE9SVF9WQUxVRShFTkFCTEVfQ1NTX0dSSURfTEFZT1VUIFBVQkxJ
QyBPTikKLVdFQktJVF9PUFRJT05fREVGQVVMVF9QT1JUX1ZBTFVFKEVOQUJMRV9DU1NfSU1BR0Vf
U0VUIFBVQkxJQyBPTikKIFdFQktJVF9PUFRJT05fREVGQVVMVF9QT1JUX1ZBTFVFKEVOQUJMRV9D
U1NfUkVHSU9OUyBQVUJMSUMgT04pCiBXRUJLSVRfT1BUSU9OX0RFRkFVTFRfUE9SVF9WQUxVRShF
TkFCTEVfQ1NTX1NDUk9MTF9TTkFQIFBVQkxJQyBPRkYpCiBXRUJLSVRfT1BUSU9OX0RFRkFVTFRf
UE9SVF9WQUxVRShFTkFCTEVfQ1NTX1NFTEVDVE9SU19MRVZFTDQgUFVCTElDIE9OKQpJbmRleDog
U291cmNlL2NtYWtlL09wdGlvbnNHVEsuY21ha2UKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL2NtYWtl
L09wdGlvbnNHVEsuY21ha2UJKHJldmlzaW9uIDIwNDU1OSkKKysrIFNvdXJjZS9jbWFrZS9PcHRp
b25zR1RLLmNtYWtlCSh3b3JraW5nIGNvcHkpCkBAIC0xNTIsNyArMTUyLDYgQEAgV0VCS0lUX09Q
VElPTl9ERUZBVUxUX1BPUlRfVkFMVUUoVVNFX1NZUwogV0VCS0lUX09QVElPTl9ERUZBVUxUX1BP
UlRfVkFMVUUoRU5BQkxFXzNEX1RSQU5TRk9STVMgUFJJVkFURSBPTikKIFdFQktJVF9PUFRJT05f
REVGQVVMVF9QT1JUX1ZBTFVFKEVOQUJMRV9BQ0NFU1NJQklMSVRZIFBSSVZBVEUgT04pCiBXRUJL
SVRfT1BUSU9OX0RFRkFVTFRfUE9SVF9WQUxVRShFTkFCTEVfQ0FOVkFTX1BBVEggUFJJVkFURSBP
RkYpCi1XRUJLSVRfT1BUSU9OX0RFRkFVTFRfUE9SVF9WQUxVRShFTkFCTEVfQ1NTX0lNQUdFX1NF
VCBQUklWQVRFIE9OKQogV0VCS0lUX09QVElPTl9ERUZBVUxUX1BPUlRfVkFMVUUoRU5BQkxFX0NT
U19SRUdJT05TIFBSSVZBVEUgT04pCiBXRUJLSVRfT1BUSU9OX0RFRkFVTFRfUE9SVF9WQUxVRShF
TkFCTEVfQ1NTX1NFTEVDVE9SU19MRVZFTDQgUFJJVkFURSBPTikKIFdFQktJVF9PUFRJT05fREVG
QVVMVF9QT1JUX1ZBTFVFKEVOQUJMRV9EQVRBQkFTRV9QUk9DRVNTIFBSSVZBVEUgT04pCkluZGV4
OiBTb3VyY2UvY21ha2UvT3B0aW9uc01hYy5jbWFrZQo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvY21h
a2UvT3B0aW9uc01hYy5jbWFrZQkocmV2aXNpb24gMjA0NTU5KQorKysgU291cmNlL2NtYWtlL09w
dGlvbnNNYWMuY21ha2UJKHdvcmtpbmcgY29weSkKQEAgLTIwLDcgKzIwLDYgQEAgV0VCS0lUX09Q
VElPTl9ERUZBVUxUX1BPUlRfVkFMVUUoRU5BQkxFXwogV0VCS0lUX09QVElPTl9ERUZBVUxUX1BP
UlRfVkFMVUUoRU5BQkxFX0NTU19HUklEX0xBWU9VVCBQUklWQVRFIE9OKQogV0VCS0lUX09QVElP
Tl9ERUZBVUxUX1BPUlRfVkFMVUUoRU5BQkxFX0NTU19JTUFHRV9PUklFTlRBVElPTiBQUklWQVRF
IE9GRikKIFdFQktJVF9PUFRJT05fREVGQVVMVF9QT1JUX1ZBTFVFKEVOQUJMRV9DU1NfSU1BR0Vf
UkVTT0xVVElPTiBQUklWQVRFIE9GRikKLVdFQktJVF9PUFRJT05fREVGQVVMVF9QT1JUX1ZBTFVF
KEVOQUJMRV9DU1NfSU1BR0VfU0VUIFBSSVZBVEUgT04pCiBXRUJLSVRfT1BUSU9OX0RFRkFVTFRf
UE9SVF9WQUxVRShFTkFCTEVfQ1NTX1JFR0lPTlMgUFJJVkFURSBPTikKIFdFQktJVF9PUFRJT05f
REVGQVVMVF9QT1JUX1ZBTFVFKEVOQUJMRV9DU1NfU0NST0xMX1NOQVAgUFJJVkFURSBPTikKIFdF
QktJVF9PUFRJT05fREVGQVVMVF9QT1JUX1ZBTFVFKEVOQUJMRV9DU1NfU0hBUEVTIFBSSVZBVEUg
T04pCkluZGV4OiBTb3VyY2UvY21ha2UvT3B0aW9uc1dpbi5jbWFrZQo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBT
b3VyY2UvY21ha2UvT3B0aW9uc1dpbi5jbWFrZQkocmV2aXNpb24gMjA0NTU5KQorKysgU291cmNl
L2NtYWtlL09wdGlvbnNXaW4uY21ha2UJKHdvcmtpbmcgY29weSkKQEAgLTE1LDcgKzE1LDYgQEAg
V0VCS0lUX09QVElPTl9ERUZBVUxUX1BPUlRfVkFMVUUoRU5BQkxFXwogV0VCS0lUX09QVElPTl9E
RUZBVUxUX1BPUlRfVkFMVUUoRU5BQkxFX0NTU19CT1hfREVDT1JBVElPTl9CUkVBSyBQVUJMSUMg
T04pCiBXRUJLSVRfT1BUSU9OX0RFRkFVTFRfUE9SVF9WQUxVRShFTkFCTEVfQ1NTX0NPTVBPU0lU
SU5HIFBVQkxJQyBPRkYpCiBXRUJLSVRfT1BUSU9OX0RFRkFVTFRfUE9SVF9WQUxVRShFTkFCTEVf
Q1NTX0dSSURfTEFZT1VUIFBVQkxJQyBPTikKLVdFQktJVF9PUFRJT05fREVGQVVMVF9QT1JUX1ZB
TFVFKEVOQUJMRV9DU1NfSU1BR0VfU0VUIFBVQkxJQyBPTikKIFdFQktJVF9PUFRJT05fREVGQVVM
VF9QT1JUX1ZBTFVFKEVOQUJMRV9DU1NfUkVHSU9OUyBQVUJMSUMgT04pCiBXRUJLSVRfT1BUSU9O
X0RFRkFVTFRfUE9SVF9WQUxVRShFTkFCTEVfQ1NTX1NFTEVDVE9SU19MRVZFTDQgUFVCTElDIE9O
KQogV0VCS0lUX09QVElPTl9ERUZBVUxUX1BPUlRfVkFMVUUoRU5BQkxFX0NTU19TSEFQRVMgUFVC
TElDIE9OKQpJbmRleDogU291cmNlL2NtYWtlL1dlYktpdEZlYXR1cmVzLmNtYWtlCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIFNvdXJjZS9jbWFrZS9XZWJLaXRGZWF0dXJlcy5jbWFrZQkocmV2aXNpb24gMjA0NTU5
KQorKysgU291cmNlL2NtYWtlL1dlYktpdEZlYXR1cmVzLmNtYWtlCSh3b3JraW5nIGNvcHkpCkBA
IC05Miw3ICs5Miw2IEBAIG1hY3JvKFdFQktJVF9PUFRJT05fQkVHSU4pCiAgICAgV0VCS0lUX09Q
VElPTl9ERUZJTkUoRU5BQkxFX0NTU19HUklEX0xBWU9VVCAiVG9nZ2xlIENTUyBHcmlkIExheW91
dCBzdXBwb3J0IiBQUklWQVRFIE9OKQogICAgIFdFQktJVF9PUFRJT05fREVGSU5FKEVOQUJMRV9D
U1NfSU1BR0VfT1JJRU5UQVRJT04gIlRvZ2dsZSBDU1MgaW1hZ2Utb3JpZW50YXRpb24gc3VwcG9y
dCIgUFJJVkFURSBPRkYpCiAgICAgV0VCS0lUX09QVElPTl9ERUZJTkUoRU5BQkxFX0NTU19JTUFH
RV9SRVNPTFVUSU9OICJUb2dnbGUgQ1NTIGltYWdlLXJlc29sdXRpb24gc3VwcG9ydCIgUFJJVkFU
RSBPRkYpCi0gICAgV0VCS0lUX09QVElPTl9ERUZJTkUoRU5BQkxFX0NTU19JTUFHRV9TRVQgIlRv
Z2dsZSBDU1MgaW1hZ2Utc2V0IHN1cHBvcnQiIFBSSVZBVEUgT0ZGKQogICAgIFdFQktJVF9PUFRJ
T05fREVGSU5FKEVOQUJMRV9DU1NfUkVHSU9OUyAiVG9nZ2xlIENTUyByZWdpb25zIHN1cHBvcnQi
IFBSSVZBVEUgT0ZGKQogICAgIFdFQktJVF9PUFRJT05fREVGSU5FKEVOQUJMRV9DU1NfU0NST0xM
X1NOQVAgIlRvZ2dsZSBDU1Mgc25hcCBzY3JvbGwgc3VwcG9ydCIgUFJJVkFURSBPRkYpCiAgICAg
V0VCS0lUX09QVElPTl9ERUZJTkUoRU5BQkxFX0NTU19TRUxFQ1RPUlNfTEVWRUw0ICJUb2dnbGUg
Q1NTIFNlbGVjdG9ycyBMZXZlbCA0IHN1cHBvcnQiIFBSSVZBVEUgT0ZGKQo=
</data>

          </attachment>
      

    </bug>

</bugzilla>