<?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>174550</bug_id>
          
          <creation_ts>2017-07-15 16:50:20 -0700</creation_ts>
          <short_desc>[WebIDL] Rename JSCSSValueCustom.cpp to JSDeprecatedCSSOMValueCustom.cpp to match the underlying class</short_desc>
          <delta_ts>2017-07-17 11:18:14 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>New Bugs</component>
          <version>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="Sam Weinig">sam</reporter>
          <assigned_to name="Sam Weinig">sam</assigned_to>
          <cc>beidson</cc>
    
    <cc>commit-queue</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1329250</commentid>
    <comment_count>0</comment_count>
    <who name="Sam Weinig">sam</who>
    <bug_when>2017-07-15 16:50:20 -0700</bug_when>
    <thetext>[WebIDL] Rename JSCSSValueCustom.cpp to JSDeprecatedCSSOMValueCustom.cpp to match the underlying class</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1329251</commentid>
    <comment_count>1</comment_count>
      <attachid>315570</attachid>
    <who name="Sam Weinig">sam</who>
    <bug_when>2017-07-15 16:55:27 -0700</bug_when>
    <thetext>Created attachment 315570
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1329258</commentid>
    <comment_count>2</comment_count>
      <attachid>315574</attachid>
    <who name="Sam Weinig">sam</who>
    <bug_when>2017-07-15 17:47:52 -0700</bug_when>
    <thetext>Created attachment 315574
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1329259</commentid>
    <comment_count>3</comment_count>
      <attachid>315575</attachid>
    <who name="Sam Weinig">sam</who>
    <bug_when>2017-07-15 17:49:44 -0700</bug_when>
    <thetext>Created attachment 315575
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1329606</commentid>
    <comment_count>4</comment_count>
      <attachid>315575</attachid>
    <who name="Brady Eidson">beidson</who>
    <bug_when>2017-07-17 10:49:20 -0700</bug_when>
    <thetext>Comment on attachment 315575
Patch

rs=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1329626</commentid>
    <comment_count>5</comment_count>
      <attachid>315575</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2017-07-17 11:18:12 -0700</bug_when>
    <thetext>Comment on attachment 315575
Patch

Clearing flags on attachment: 315575

Committed r219565: &lt;http://trac.webkit.org/changeset/219565&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1329627</commentid>
    <comment_count>6</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2017-07-17 11:18:14 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>315570</attachid>
            <date>2017-07-15 16:55:27 -0700</date>
            <delta_ts>2017-07-15 17:47:52 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>patch2.diff</filename>
            <type>text/plain</type>
            <size>11309</size>
            <attacher name="Sam Weinig">sam</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDIxOTUzOSkKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDE3IEBACisyMDE3LTA3LTE1ICBTYW0gV2Vp
bmlnICA8c2FtQHdlYmtpdC5vcmc+CisKKyAgICAgICAgW1dlYklETF0gUmVuYW1lIEpTQ1NTVmFs
dWVDdXN0b20uY3BwIHRvIEpTRGVwcmVjYXRlZENTU09NVmFsdWVDdXN0b20uY3BwIHRvIG1hdGNo
IHRoZSB1bmRlcmx5aW5nIGNsYXNzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3No
b3dfYnVnLmNnaT9pZD0xNzQ1NTAKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMh
KS4KKworICAgICAgICAqIENNYWtlTGlzdHMudHh0OgorICAgICAgICAqIFdlYkNvcmUueGNvZGVw
cm9qL3Byb2plY3QucGJ4cHJvajoKKyAgICAgICAgKiBiaW5kaW5ncy9qcy9KU0JpbmRpbmdzQWxs
SW5PbmUuY3BwOgorICAgICAgICAqIGJpbmRpbmdzL2pzL0pTQ1NTVmFsdWVDdXN0b20uY3BwOiBS
ZW1vdmVkLgorICAgICAgICAqIGJpbmRpbmdzL2pzL0pTRGVwcmVjYXRlZENTU09NVmFsdWVDdXN0
b20uY3BwOiBSZW5hbWVkIGZyb20gYmluZGluZ3MvanMvSlNDU1NWYWx1ZUN1c3RvbS5jcHAuCisg
ICAgICAgIFJlbmFtZSBmaWxlIGFuZCB1cGRhdGUgcmVmZXJlbmNlcy4KKwogMjAxNy0wNy0xNSAg
TXlsZXMgQy4gTWF4ZmllbGQgIDxtbWF4ZmllbGRAYXBwbGUuY29tPgogCiAgICAgICAgIENsZWFu
IHVwIGxpbmUtaGVpZ2h0IGFuZCBtaW5pbXVtRm9udFNpemUgZnVuY3Rpb25zCkluZGV4OiBTb3Vy
Y2UvV2ViQ29yZS9DTWFrZUxpc3RzLnR4dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9D
TWFrZUxpc3RzLnR4dAkocmV2aXNpb24gMjE5NTM3KQorKysgU291cmNlL1dlYkNvcmUvQ01ha2VM
aXN0cy50eHQJKHdvcmtpbmcgY29weSkKQEAgLTExNTIsOSArMTE1Miw5IEBAIHNldChXZWJDb3Jl
X1NPVVJDRVMKICAgICBiaW5kaW5ncy9qcy9KU0RPTUNvbnZlcnRTdHJpbmdzLmNwcAogICAgIGJp
bmRpbmdzL2pzL0pTRE9NQ29udmVydFdlYkdMLmNwcAogICAgIGJpbmRpbmdzL2pzL0pTRE9NSXRl
cmF0b3IuY3BwCisgICAgYmluZGluZ3MvanMvSlNEZXByZWNhdGVkQ1NTT01WYWx1ZUN1c3RvbS5j
cHAKICAgICBiaW5kaW5ncy9qcy9KU0ZvbnRGYWNlQ3VzdG9tLmNwcAogICAgIGJpbmRpbmdzL2pz
L0pTRm9udEZhY2VTZXRDdXN0b20uY3BwCi0gICAgYmluZGluZ3MvanMvSlNDU1NWYWx1ZUN1c3Rv
bS5jcHAKICAgICBiaW5kaW5ncy9qcy9KU0NhbGxiYWNrRGF0YS5jcHAKICAgICBiaW5kaW5ncy9q
cy9KU0NhbnZhc1JlbmRlcmluZ0NvbnRleHQyREN1c3RvbS5jcHAKICAgICBiaW5kaW5ncy9qcy9K
U0NvbW1hbmRMaW5lQVBJSG9zdEN1c3RvbS5jcHAKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL1dlYkNv
cmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvago9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29y
ZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oJKHJldmlzaW9uIDIxOTUzNykKKysr
IFNvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagkod29ya2lu
ZyBjb3B5KQpAQCAtNTU3Myw3ICs1NTczLDcgQEAKIAkJQkMxQTdEOTgxOEZDQjVCMDAwNDIxODc5
IC8qIFJlbmRlck11bHRpQ29sdW1uU3Bhbm5lclBsYWNlaG9sZGVyLmggaW4gSGVhZGVycyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCQzFBN0Q5NjE4RkNCNUIwMDA0MjE4Nzkg
LyogUmVuZGVyTXVsdGlDb2x1bW5TcGFubmVyUGxhY2Vob2xkZXIuaCAqLzsgfTsKIAkJQkMxQkRG
MjQxNTZDMTg4MzAwMUMxMjQzIC8qIERPTUVycm9yLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEJDMUJERjIwMTU2QzE3QTkwMDFDMTI0MyAvKiBET01F
cnJvci5jcHAgKi87IH07CiAJCUJDMUJERjI1MTU2QzE4QzcwMDFDMTI0MyAvKiBET01FcnJvci5o
IGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQkMxQkRGMjEx
NTZDMTdBOTAwMUMxMjQzIC8qIERPTUVycm9yLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMg
PSAoUHJpdmF0ZSwgKTsgfTsgfTsKLQkJQkMyMEZCN0YwQzBFOEU2QzAwRDE0NDdGIC8qIEpTQ1NT
VmFsdWVDdXN0b20uY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gQkMyMEZCN0UwQzBFOEU2QzAwRDE0NDdGIC8qIEpTQ1NTVmFsdWVDdXN0b20uY3BwICov
OyB9OworCQlCQzIwRkI3RjBDMEU4RTZDMDBEMTQ0N0YgLyogSlNEZXByZWNhdGVkQ1NTT01WYWx1
ZUN1c3RvbS5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSBCQzIwRkI3RTBDMEU4RTZDMDBEMTQ0N0YgLyogSlNEZXByZWNhdGVkQ1NTT01WYWx1ZUN1c3Rv
bS5jcHAgKi87IH07CiAJCUJDMjI3Mjg3MEU4MkU3MDcwMEU3Rjk3NSAvKiBTdHlsZVJlZmxlY3Rp
b24uaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEJDMjI3
Mjg2MEU4MkU3MDcwMEU3Rjk3NSAvKiBTdHlsZVJlZmxlY3Rpb24uaCAqLzsgc2V0dGluZ3MgPSB7
QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwogCQlCQzIyNzJBMjBFODJFODdDMDBFN0Y5
NzUgLyogQ3Vyc29yRGF0YS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gQkMyMjcyQTEwRTgyRTg3QzAwRTdGOTc1IC8qIEN1cnNvckRhdGEuaCAqLzsgc2V0
dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwogCQlCQzIyNzJBRDBFODJF
OEYzMDBFN0Y5NzUgLyogQ3Vyc29yTGlzdC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gQkMyMjcyQUMwRTgyRThGMzAwRTdGOTc1IC8qIEN1cnNvckxpc3Qu
aCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwpAQCAtMTQw
MzksNyArMTQwMzksNyBAQAogCQlCQzFCREYyMDE1NkMxN0E5MDAxQzEyNDMgLyogRE9NRXJyb3Iu
Y3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gRE9NRXJyb3IuY3BwOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlCQzFCREYyMTE1NkMxN0E5MDAxQzEyNDMgLyog
RE9NRXJyb3IuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRE9NRXJyb3IuaDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQkMxQkRGMjIxNTZDMTdBOTAwMUMxMjQzIC8q
IERPTUVycm9yLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBET01FcnJvci5pZGw7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07Ci0JCUJDMjBGQjdFMEMwRThFNkMwMEQxNDQ3RiAvKiBKU0NT
U1ZhbHVlQ3VzdG9tLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBK
U0NTU1ZhbHVlQ3VzdG9tLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQkMyMEZC
N0UwQzBFOEU2QzAwRDE0NDdGIC8qIEpTRGVwcmVjYXRlZENTU09NVmFsdWVDdXN0b20uY3BwICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTRGVwcmVjYXRlZENTU09NVmFs
dWVDdXN0b20uY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlCQzIyNzI4NjBFODJF
NzA3MDBFN0Y5NzUgLyogU3R5bGVSZWZsZWN0aW9uLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMu
aDsgcGF0aCA9IFN0eWxlUmVmbGVjdGlvbi5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owog
CQlCQzIyNzJBMTBFODJFODdDMDBFN0Y5NzUgLyogQ3Vyc29yRGF0YS5oICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jLmg7IHBhdGggPSBDdXJzb3JEYXRhLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CiAJCUJDMjI3MkFDMEU4MkU4RjMwMEU3Rjk3NSAvKiBDdXJzb3JMaXN0LmggKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEN1cnNvckxpc3QuaDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKQEAgLTE5Njc5LDcgKzE5Njc5LDcgQEAKIAkJCQlCQzQ2QzFFRDBDMEREQkRGMDAy
MENGQzMgLyogSlNDU1NSdWxlQ3VzdG9tLmNwcCAqLywKIAkJCQlBRDcyNkZFOTE2RDlGNDBBMDAz
QTRFNkQgLyogSlNDU1NSdWxlQ3VzdG9tLmggKi8sCiAJCQkJOTM5MjI2MkUxMDMyMTA4NDAwNkU3
RDVEIC8qIEpTQ1NTUnVsZUxpc3RDdXN0b20uY3BwICovLAotCQkJCUJDMjBGQjdFMEMwRThFNkMw
MEQxNDQ3RiAvKiBKU0NTU1ZhbHVlQ3VzdG9tLmNwcCAqLywKKwkJCQlCQzIwRkI3RTBDMEU4RTZD
MDBEMTQ0N0YgLyogSlNEZXByZWNhdGVkQ1NTT01WYWx1ZUN1c3RvbS5jcHAgKi8sCiAJCQkJNDlD
N0JBOEMxMDQyRjVCMTAwMDlENDQ3IC8qIEpTRG9jdW1lbnRDdXN0b20uY3BwICovLAogCQkJCUFE
REE5NEJGMTk2ODZGODAwMDQ1MzAyOSAvKiBKU0RvY3VtZW50Q3VzdG9tLmggKi8sCiAJCQkJN0Mz
M0YzNjAxQjRBMDUwNDAwNTAyQ0FGIC8qIEpTRG9jdW1lbnRGcmFnbWVudEN1c3RvbS5jcHAgKi8s
CkBAIC0zMTgyNiw3ICszMTgyNiw3IEBACiAJCQkJQkM0NkMyMDYwQzBERENBMTAwMjBDRkMzIC8q
IEpTQ1NTU3R5bGVSdWxlLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCUJDQzVCRTAwMEMwRTkzMTEw
MDExQzJEQiAvKiBKU0NTU1N0eWxlU2hlZXQuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJRkQ2Nzc3
M0ExOTVDQjE0QTAwNzJFMEQzIC8qIEpTQ1NTU3VwcG9ydHNSdWxlLmNwcCBpbiBTb3VyY2VzICov
LAotCQkJCUJDMjBGQjdGMEMwRThFNkMwMEQxNDQ3RiAvKiBKU0NTU1ZhbHVlQ3VzdG9tLmNwcCBp
biBTb3VyY2VzICovLAorCQkJCUJDMjBGQjdGMEMwRThFNkMwMEQxNDQ3RiAvKiBKU0RlcHJlY2F0
ZWRDU1NPTVZhbHVlQ3VzdG9tLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTlCRDRFOTE2MUM0NjI4
NzIwMDUwNjVCQyAvKiBKU0N1c3RvbUVsZW1lbnRJbnRlcmZhY2UuY3BwIGluIFNvdXJjZXMgKi8s
CiAJCQkJOUJFNjcxMEIxRDVBRUIyMTAwMzQ1NTE0IC8qIEpTQ3VzdG9tRWxlbWVudFJlZ2lzdHJ5
LmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTlCQzVGOUUwMUQ1QUFGNkIwMDJCNzQ5RCAvKiBKU0N1
c3RvbUVsZW1lbnRSZWdpc3RyeUN1c3RvbS5jcHAgaW4gU291cmNlcyAqLywKSW5kZXg6IFNvdXJj
ZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTQmluZGluZ3NBbGxJbk9uZS5jcHAKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNCaW5kaW5nc0FsbEluT25lLmNwcAkocmV2
aXNpb24gMjE5NTM3KQorKysgU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNCaW5kaW5nc0Fs
bEluT25lLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMzYsNyArMzYsNiBAQAogI2luY2x1ZGUgIkpT
Q1NTUnVsZUN1c3RvbS5jcHAiCiAjaW5jbHVkZSAiSlNDU1NSdWxlTGlzdEN1c3RvbS5jcHAiCiAj
aW5jbHVkZSAiSlNDU1NTdHlsZURlY2xhcmF0aW9uQ3VzdG9tLmNwcCIKLSNpbmNsdWRlICJKU0NT
U1ZhbHVlQ3VzdG9tLmNwcCIKICNpbmNsdWRlICJKU0NhbGxiYWNrRGF0YS5jcHAiCiAjaW5jbHVk
ZSAiSlNDYW52YXNSZW5kZXJpbmdDb250ZXh0MkRDdXN0b20uY3BwIgogI2luY2x1ZGUgIkpTQ29t
bWFuZExpbmVBUElIb3N0Q3VzdG9tLmNwcCIKQEAgLTU2LDYgKzU1LDcgQEAKICNpbmNsdWRlICJK
U0RPTVdpbmRvd1Byb3h5LmNwcCIKICNpbmNsdWRlICJKU0RPTVdyYXBwZXIuY3BwIgogI2luY2x1
ZGUgIkpTRE9NV3JhcHBlckNhY2hlLmNwcCIKKyNpbmNsdWRlICJKU0RlcHJlY2F0ZWRDU1NPTVZh
bHVlQ3VzdG9tLmNwcCIKICNpbmNsdWRlICJKU0RvY3VtZW50Q3VzdG9tLmNwcCIKICNpbmNsdWRl
ICJKU0RvY3VtZW50RnJhZ21lbnRDdXN0b20uY3BwIgogI2luY2x1ZGUgIkpTRWxlbWVudEN1c3Rv
bS5jcHAiCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0NTU1ZhbHVlQ3VzdG9t
LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0NTU1ZhbHVl
Q3VzdG9tLmNwcAkocmV2aXNpb24gMjE5NTM3KQorKysgU291cmNlL1dlYkNvcmUvYmluZGluZ3Mv
anMvSlNDU1NWYWx1ZUN1c3RvbS5jcHAJKG5vbmV4aXN0ZW50KQpAQCAtMSw3MyArMCwwIEBACi0v
KgotICogQ29weXJpZ2h0IChDKSAyMDA3LCAyMDA4IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNl
cnZlZC4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5
IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBw
cm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1ldDoKLSAqIDEu
IFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29w
eXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9s
bG93aW5nIGRpc2NsYWltZXIuCi0gKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0g
bXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxp
c3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQotICog
ICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhl
IGRpc3RyaWJ1dGlvbi4KLSAqCi0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExF
IElOQy4gYGBBUyBJUycnIEFORCBBTlkKLSAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVT
LCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCi0gKiBJTVBMSUVEIFdBUlJBTlRJ
RVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKLSAqIFBV
UlBPU0UgQVJFIERJU0NMQUlNRUQuICBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SCi0g
KiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURF
TlRBTCwgU1BFQ0lBTCwKLSAqIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJ
TkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKLSAqIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRV
VEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUgotICogUFJPRklUUzsg
T1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9S
WQotICogT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZ
LCBPUiBUT1JUCi0gKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5H
IElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKLSAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYg
QURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCi0gKi8KLQotI2luY2x1
ZGUgImNvbmZpZy5oIgotCi0jaW5jbHVkZSAiRGVwcmVjYXRlZENTU09NUHJpbWl0aXZlVmFsdWUu
aCIKLSNpbmNsdWRlICJEZXByZWNhdGVkQ1NTT01WYWx1ZUxpc3QuaCIKLSNpbmNsdWRlICJKU0Rl
cHJlY2F0ZWRDU1NPTVByaW1pdGl2ZVZhbHVlLmgiCi0jaW5jbHVkZSAiSlNEZXByZWNhdGVkQ1NT
T01WYWx1ZS5oIgotI2luY2x1ZGUgIkpTRGVwcmVjYXRlZENTU09NVmFsdWVMaXN0LmgiCi0jaW5j
bHVkZSAiSlNOb2RlLmgiCi0KLXVzaW5nIG5hbWVzcGFjZSBKU0M7Ci0KLW5hbWVzcGFjZSBXZWJD
b3JlIHsKLQotYm9vbCBKU0RlcHJlY2F0ZWRDU1NPTVZhbHVlT3duZXI6OmlzUmVhY2hhYmxlRnJv
bU9wYXF1ZVJvb3RzKEpTQzo6SGFuZGxlPEpTQzo6VW5rbm93bj4gaGFuZGxlLCB2b2lkKiBjb250
ZXh0LCBTbG90VmlzaXRvciYgdmlzaXRvcikKLXsKLSAgICBKU0RlcHJlY2F0ZWRDU1NPTVZhbHVl
KiBqc0NTU1ZhbHVlID0ganNDYXN0PEpTRGVwcmVjYXRlZENTU09NVmFsdWUqPihoYW5kbGUuc2xv
dCgpLT5hc0NlbGwoKSk7Ci0gICAgaWYgKCFqc0NTU1ZhbHVlLT5oYXNDdXN0b21Qcm9wZXJ0aWVz
KCkpCi0gICAgICAgIHJldHVybiBmYWxzZTsKLSAgICBET01XcmFwcGVyV29ybGQqIHdvcmxkID0g
c3RhdGljX2Nhc3Q8RE9NV3JhcHBlcldvcmxkKj4oY29udGV4dCk7Ci0gICAgdm9pZCogcm9vdCA9
IHdvcmxkLT5tX2RlcHJlY2F0ZWRDU1NPTVZhbHVlUm9vdHMuZ2V0KCZqc0NTU1ZhbHVlLT53cmFw
cGVkKCkpOwotICAgIGlmICghcm9vdCkKLSAgICAgICAgcmV0dXJuIGZhbHNlOwotICAgIHJldHVy
biB2aXNpdG9yLmNvbnRhaW5zT3BhcXVlUm9vdChyb290KTsKLX0KLQotdm9pZCBKU0RlcHJlY2F0
ZWRDU1NPTVZhbHVlT3duZXI6OmZpbmFsaXplKEpTQzo6SGFuZGxlPEpTQzo6VW5rbm93bj4gaGFu
ZGxlLCB2b2lkKiBjb250ZXh0KQotewotICAgIEpTRGVwcmVjYXRlZENTU09NVmFsdWUqIGpzQ1NT
VmFsdWUgPSBzdGF0aWNfY2FzdDxKU0RlcHJlY2F0ZWRDU1NPTVZhbHVlKj4oaGFuZGxlLnNsb3Qo
KS0+YXNDZWxsKCkpOwotICAgIERPTVdyYXBwZXJXb3JsZCYgd29ybGQgPSAqc3RhdGljX2Nhc3Q8
RE9NV3JhcHBlcldvcmxkKj4oY29udGV4dCk7Ci0gICAgd29ybGQubV9kZXByZWNhdGVkQ1NTT01W
YWx1ZVJvb3RzLnJlbW92ZSgmanNDU1NWYWx1ZS0+d3JhcHBlZCgpKTsKLSAgICB1bmNhY2hlV3Jh
cHBlcih3b3JsZCwgJmpzQ1NTVmFsdWUtPndyYXBwZWQoKSwganNDU1NWYWx1ZSk7Ci19Ci0KLUpT
VmFsdWUgdG9KU05ld2x5Q3JlYXRlZChFeGVjU3RhdGUqLCBKU0RPTUdsb2JhbE9iamVjdCogZ2xv
YmFsT2JqZWN0LCBSZWY8RGVwcmVjYXRlZENTU09NVmFsdWU+JiYgdmFsdWUpCi17Ci0gICAgaWYg
KHZhbHVlLT5pc1ZhbHVlTGlzdCgpKQotICAgICAgICByZXR1cm4gY3JlYXRlV3JhcHBlcjxEZXBy
ZWNhdGVkQ1NTT01WYWx1ZUxpc3Q+KGdsb2JhbE9iamVjdCwgV1RGTW92ZSh2YWx1ZSkpOwotICAg
IGlmICh2YWx1ZS0+aXNQcmltaXRpdmVWYWx1ZSgpKQotICAgICAgICByZXR1cm4gY3JlYXRlV3Jh
cHBlcjxEZXByZWNhdGVkQ1NTT01QcmltaXRpdmVWYWx1ZT4oZ2xvYmFsT2JqZWN0LCBXVEZNb3Zl
KHZhbHVlKSk7Ci0gICAgcmV0dXJuIGNyZWF0ZVdyYXBwZXI8RGVwcmVjYXRlZENTU09NVmFsdWU+
KGdsb2JhbE9iamVjdCwgV1RGTW92ZSh2YWx1ZSkpOwotfQotCi1KU1ZhbHVlIHRvSlMoRXhlY1N0
YXRlKiBzdGF0ZSwgSlNET01HbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgRGVwcmVjYXRlZENT
U09NVmFsdWUmIHZhbHVlKQotewotICAgIHJldHVybiB3cmFwKHN0YXRlLCBnbG9iYWxPYmplY3Qs
IHZhbHVlKTsKLX0KLQotfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQoKUHJvcGVydHkgY2hhbmdlcyBv
bjogU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNDU1NWYWx1ZUN1c3RvbS5jcHAKX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fXwpEZWxldGVkOiBzdm46ZW9sLXN0eWxlCiMjIC0xICswLDAgIyMKLW5hdGl2ZQpcIE5vIG5l
d2xpbmUgYXQgZW5kIG9mIHByb3BlcnR5CkluZGV4OiBiaW5kaW5ncy9qcy9KU0RlcHJlY2F0ZWRD
U1NPTVZhbHVlQ3VzdG9tLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBiaW5kaW5ncy9qcy9KU0RlcHJlY2F0
ZWRDU1NPTVZhbHVlQ3VzdG9tLmNwcAkocmV2aXNpb24gMjE5NTM3KQkoZnJvbSBiaW5kaW5ncy9q
cy9KU0NTU1ZhbHVlQ3VzdG9tLmNwcDoyMTk1MzcpCisrKyBiaW5kaW5ncy9qcy9KU0RlcHJlY2F0
ZWRDU1NPTVZhbHVlQ3VzdG9tLmNwcAkod29ya2luZyBjb3B5KQpJbmRleDogU291cmNlL1dlYkNv
cmUvYmluZGluZ3MvanMvSlNEZXByZWNhdGVkQ1NTT01WYWx1ZUN1c3RvbS5jcHAKPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNEZXByZWNhdGVkQ1NTT01WYWx1ZUN1
c3RvbS5jcHAJKHJldmlzaW9uIDIxOTUzNykKKysrIFNvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pz
L0pTRGVwcmVjYXRlZENTU09NVmFsdWVDdXN0b20uY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yNCwx
MSArMjQsOSBAQAogICovCiAKICNpbmNsdWRlICJjb25maWcuaCIKKyNpbmNsdWRlICJKU0RlcHJl
Y2F0ZWRDU1NPTVZhbHVlLmgiCiAKLSNpbmNsdWRlICJEZXByZWNhdGVkQ1NTT01QcmltaXRpdmVW
YWx1ZS5oIgotI2luY2x1ZGUgIkRlcHJlY2F0ZWRDU1NPTVZhbHVlTGlzdC5oIgogI2luY2x1ZGUg
IkpTRGVwcmVjYXRlZENTU09NUHJpbWl0aXZlVmFsdWUuaCIKLSNpbmNsdWRlICJKU0RlcHJlY2F0
ZWRDU1NPTVZhbHVlLmgiCiAjaW5jbHVkZSAiSlNEZXByZWNhdGVkQ1NTT01WYWx1ZUxpc3QuaCIK
ICNpbmNsdWRlICJKU05vZGUuaCIKIAo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>315574</attachid>
            <date>2017-07-15 17:47:52 -0700</date>
            <delta_ts>2017-07-15 17:49:44 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>patch4.diff</filename>
            <type>text/plain</type>
            <size>11108</size>
            <attacher name="Sam Weinig">sam</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDIxOTUzOSkKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDE3IEBACisyMDE3LTA3LTE1ICBTYW0gV2Vp
bmlnICA8c2FtQHdlYmtpdC5vcmc+CisKKyAgICAgICAgW1dlYklETF0gUmVuYW1lIEpTQ1NTVmFs
dWVDdXN0b20uY3BwIHRvIEpTRGVwcmVjYXRlZENTU09NVmFsdWVDdXN0b20uY3BwIHRvIG1hdGNo
IHRoZSB1bmRlcmx5aW5nIGNsYXNzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3No
b3dfYnVnLmNnaT9pZD0xNzQ1NTAKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMh
KS4KKworICAgICAgICAqIENNYWtlTGlzdHMudHh0OgorICAgICAgICAqIFdlYkNvcmUueGNvZGVw
cm9qL3Byb2plY3QucGJ4cHJvajoKKyAgICAgICAgKiBiaW5kaW5ncy9qcy9KU0JpbmRpbmdzQWxs
SW5PbmUuY3BwOgorICAgICAgICAqIGJpbmRpbmdzL2pzL0pTQ1NTVmFsdWVDdXN0b20uY3BwOiBS
ZW1vdmVkLgorICAgICAgICAqIGJpbmRpbmdzL2pzL0pTRGVwcmVjYXRlZENTU09NVmFsdWVDdXN0
b20uY3BwOiBSZW5hbWVkIGZyb20gYmluZGluZ3MvanMvSlNDU1NWYWx1ZUN1c3RvbS5jcHAuCisg
ICAgICAgIFJlbmFtZSBmaWxlIGFuZCB1cGRhdGUgcmVmZXJlbmNlcy4KKwogMjAxNy0wNy0xNSAg
TXlsZXMgQy4gTWF4ZmllbGQgIDxtbWF4ZmllbGRAYXBwbGUuY29tPgogCiAgICAgICAgIENsZWFu
IHVwIGxpbmUtaGVpZ2h0IGFuZCBtaW5pbXVtRm9udFNpemUgZnVuY3Rpb25zCkluZGV4OiBTb3Vy
Y2UvV2ViQ29yZS9DTWFrZUxpc3RzLnR4dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9D
TWFrZUxpc3RzLnR4dAkocmV2aXNpb24gMjE5NTM3KQorKysgU291cmNlL1dlYkNvcmUvQ01ha2VM
aXN0cy50eHQJKHdvcmtpbmcgY29weSkKQEAgLTExNTIsOSArMTE1Miw5IEBAIHNldChXZWJDb3Jl
X1NPVVJDRVMKICAgICBiaW5kaW5ncy9qcy9KU0RPTUNvbnZlcnRTdHJpbmdzLmNwcAogICAgIGJp
bmRpbmdzL2pzL0pTRE9NQ29udmVydFdlYkdMLmNwcAogICAgIGJpbmRpbmdzL2pzL0pTRE9NSXRl
cmF0b3IuY3BwCisgICAgYmluZGluZ3MvanMvSlNEZXByZWNhdGVkQ1NTT01WYWx1ZUN1c3RvbS5j
cHAKICAgICBiaW5kaW5ncy9qcy9KU0ZvbnRGYWNlQ3VzdG9tLmNwcAogICAgIGJpbmRpbmdzL2pz
L0pTRm9udEZhY2VTZXRDdXN0b20uY3BwCi0gICAgYmluZGluZ3MvanMvSlNDU1NWYWx1ZUN1c3Rv
bS5jcHAKICAgICBiaW5kaW5ncy9qcy9KU0NhbGxiYWNrRGF0YS5jcHAKICAgICBiaW5kaW5ncy9q
cy9KU0NhbnZhc1JlbmRlcmluZ0NvbnRleHQyREN1c3RvbS5jcHAKICAgICBiaW5kaW5ncy9qcy9K
U0NvbW1hbmRMaW5lQVBJSG9zdEN1c3RvbS5jcHAKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL1dlYkNv
cmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvago9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29y
ZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oJKHJldmlzaW9uIDIxOTUzNykKKysr
IFNvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagkod29ya2lu
ZyBjb3B5KQpAQCAtNTU3Myw3ICs1NTczLDcgQEAKIAkJQkMxQTdEOTgxOEZDQjVCMDAwNDIxODc5
IC8qIFJlbmRlck11bHRpQ29sdW1uU3Bhbm5lclBsYWNlaG9sZGVyLmggaW4gSGVhZGVycyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCQzFBN0Q5NjE4RkNCNUIwMDA0MjE4Nzkg
LyogUmVuZGVyTXVsdGlDb2x1bW5TcGFubmVyUGxhY2Vob2xkZXIuaCAqLzsgfTsKIAkJQkMxQkRG
MjQxNTZDMTg4MzAwMUMxMjQzIC8qIERPTUVycm9yLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEJDMUJERjIwMTU2QzE3QTkwMDFDMTI0MyAvKiBET01F
cnJvci5jcHAgKi87IH07CiAJCUJDMUJERjI1MTU2QzE4QzcwMDFDMTI0MyAvKiBET01FcnJvci5o
IGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQkMxQkRGMjEx
NTZDMTdBOTAwMUMxMjQzIC8qIERPTUVycm9yLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMg
PSAoUHJpdmF0ZSwgKTsgfTsgfTsKLQkJQkMyMEZCN0YwQzBFOEU2QzAwRDE0NDdGIC8qIEpTQ1NT
VmFsdWVDdXN0b20uY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gQkMyMEZCN0UwQzBFOEU2QzAwRDE0NDdGIC8qIEpTQ1NTVmFsdWVDdXN0b20uY3BwICov
OyB9OworCQlCQzIwRkI3RjBDMEU4RTZDMDBEMTQ0N0YgLyogSlNEZXByZWNhdGVkQ1NTT01WYWx1
ZUN1c3RvbS5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSBCQzIwRkI3RTBDMEU4RTZDMDBEMTQ0N0YgLyogSlNEZXByZWNhdGVkQ1NTT01WYWx1ZUN1c3Rv
bS5jcHAgKi87IH07CiAJCUJDMjI3Mjg3MEU4MkU3MDcwMEU3Rjk3NSAvKiBTdHlsZVJlZmxlY3Rp
b24uaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEJDMjI3
Mjg2MEU4MkU3MDcwMEU3Rjk3NSAvKiBTdHlsZVJlZmxlY3Rpb24uaCAqLzsgc2V0dGluZ3MgPSB7
QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwogCQlCQzIyNzJBMjBFODJFODdDMDBFN0Y5
NzUgLyogQ3Vyc29yRGF0YS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gQkMyMjcyQTEwRTgyRTg3QzAwRTdGOTc1IC8qIEN1cnNvckRhdGEuaCAqLzsgc2V0
dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwogCQlCQzIyNzJBRDBFODJF
OEYzMDBFN0Y5NzUgLyogQ3Vyc29yTGlzdC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gQkMyMjcyQUMwRTgyRThGMzAwRTdGOTc1IC8qIEN1cnNvckxpc3Qu
aCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwpAQCAtMTQw
MzksNyArMTQwMzksNyBAQAogCQlCQzFCREYyMDE1NkMxN0E5MDAxQzEyNDMgLyogRE9NRXJyb3Iu
Y3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gRE9NRXJyb3IuY3BwOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlCQzFCREYyMTE1NkMxN0E5MDAxQzEyNDMgLyog
RE9NRXJyb3IuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRE9NRXJyb3IuaDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQkMxQkRGMjIxNTZDMTdBOTAwMUMxMjQzIC8q
IERPTUVycm9yLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBET01FcnJvci5pZGw7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07Ci0JCUJDMjBGQjdFMEMwRThFNkMwMEQxNDQ3RiAvKiBKU0NT
U1ZhbHVlQ3VzdG9tLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBK
U0NTU1ZhbHVlQ3VzdG9tLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQkMyMEZC
N0UwQzBFOEU2QzAwRDE0NDdGIC8qIEpTRGVwcmVjYXRlZENTU09NVmFsdWVDdXN0b20uY3BwICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTRGVwcmVjYXRlZENTU09NVmFs
dWVDdXN0b20uY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlCQzIyNzI4NjBFODJF
NzA3MDBFN0Y5NzUgLyogU3R5bGVSZWZsZWN0aW9uLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMu
aDsgcGF0aCA9IFN0eWxlUmVmbGVjdGlvbi5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owog
CQlCQzIyNzJBMTBFODJFODdDMDBFN0Y5NzUgLyogQ3Vyc29yRGF0YS5oICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jLmg7IHBhdGggPSBDdXJzb3JEYXRhLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CiAJCUJDMjI3MkFDMEU4MkU4RjMwMEU3Rjk3NSAvKiBDdXJzb3JMaXN0LmggKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEN1cnNvckxpc3QuaDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKQEAgLTE5Njc5LDcgKzE5Njc5LDcgQEAKIAkJCQlCQzQ2QzFFRDBDMEREQkRGMDAy
MENGQzMgLyogSlNDU1NSdWxlQ3VzdG9tLmNwcCAqLywKIAkJCQlBRDcyNkZFOTE2RDlGNDBBMDAz
QTRFNkQgLyogSlNDU1NSdWxlQ3VzdG9tLmggKi8sCiAJCQkJOTM5MjI2MkUxMDMyMTA4NDAwNkU3
RDVEIC8qIEpTQ1NTUnVsZUxpc3RDdXN0b20uY3BwICovLAotCQkJCUJDMjBGQjdFMEMwRThFNkMw
MEQxNDQ3RiAvKiBKU0NTU1ZhbHVlQ3VzdG9tLmNwcCAqLywKKwkJCQlCQzIwRkI3RTBDMEU4RTZD
MDBEMTQ0N0YgLyogSlNEZXByZWNhdGVkQ1NTT01WYWx1ZUN1c3RvbS5jcHAgKi8sCiAJCQkJNDlD
N0JBOEMxMDQyRjVCMTAwMDlENDQ3IC8qIEpTRG9jdW1lbnRDdXN0b20uY3BwICovLAogCQkJCUFE
REE5NEJGMTk2ODZGODAwMDQ1MzAyOSAvKiBKU0RvY3VtZW50Q3VzdG9tLmggKi8sCiAJCQkJN0Mz
M0YzNjAxQjRBMDUwNDAwNTAyQ0FGIC8qIEpTRG9jdW1lbnRGcmFnbWVudEN1c3RvbS5jcHAgKi8s
CkBAIC0zMTgyNiw3ICszMTgyNiw3IEBACiAJCQkJQkM0NkMyMDYwQzBERENBMTAwMjBDRkMzIC8q
IEpTQ1NTU3R5bGVSdWxlLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCUJDQzVCRTAwMEMwRTkzMTEw
MDExQzJEQiAvKiBKU0NTU1N0eWxlU2hlZXQuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJRkQ2Nzc3
M0ExOTVDQjE0QTAwNzJFMEQzIC8qIEpTQ1NTU3VwcG9ydHNSdWxlLmNwcCBpbiBTb3VyY2VzICov
LAotCQkJCUJDMjBGQjdGMEMwRThFNkMwMEQxNDQ3RiAvKiBKU0NTU1ZhbHVlQ3VzdG9tLmNwcCBp
biBTb3VyY2VzICovLAorCQkJCUJDMjBGQjdGMEMwRThFNkMwMEQxNDQ3RiAvKiBKU0RlcHJlY2F0
ZWRDU1NPTVZhbHVlQ3VzdG9tLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTlCRDRFOTE2MUM0NjI4
NzIwMDUwNjVCQyAvKiBKU0N1c3RvbUVsZW1lbnRJbnRlcmZhY2UuY3BwIGluIFNvdXJjZXMgKi8s
CiAJCQkJOUJFNjcxMEIxRDVBRUIyMTAwMzQ1NTE0IC8qIEpTQ3VzdG9tRWxlbWVudFJlZ2lzdHJ5
LmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTlCQzVGOUUwMUQ1QUFGNkIwMDJCNzQ5RCAvKiBKU0N1
c3RvbUVsZW1lbnRSZWdpc3RyeUN1c3RvbS5jcHAgaW4gU291cmNlcyAqLywKSW5kZXg6IFNvdXJj
ZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTQmluZGluZ3NBbGxJbk9uZS5jcHAKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNCaW5kaW5nc0FsbEluT25lLmNwcAkocmV2
aXNpb24gMjE5NTM3KQorKysgU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNCaW5kaW5nc0Fs
bEluT25lLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMzYsNyArMzYsNiBAQAogI2luY2x1ZGUgIkpT
Q1NTUnVsZUN1c3RvbS5jcHAiCiAjaW5jbHVkZSAiSlNDU1NSdWxlTGlzdEN1c3RvbS5jcHAiCiAj
aW5jbHVkZSAiSlNDU1NTdHlsZURlY2xhcmF0aW9uQ3VzdG9tLmNwcCIKLSNpbmNsdWRlICJKU0NT
U1ZhbHVlQ3VzdG9tLmNwcCIKICNpbmNsdWRlICJKU0NhbGxiYWNrRGF0YS5jcHAiCiAjaW5jbHVk
ZSAiSlNDYW52YXNSZW5kZXJpbmdDb250ZXh0MkRDdXN0b20uY3BwIgogI2luY2x1ZGUgIkpTQ29t
bWFuZExpbmVBUElIb3N0Q3VzdG9tLmNwcCIKQEAgLTU2LDYgKzU1LDcgQEAKICNpbmNsdWRlICJK
U0RPTVdpbmRvd1Byb3h5LmNwcCIKICNpbmNsdWRlICJKU0RPTVdyYXBwZXIuY3BwIgogI2luY2x1
ZGUgIkpTRE9NV3JhcHBlckNhY2hlLmNwcCIKKyNpbmNsdWRlICJKU0RlcHJlY2F0ZWRDU1NPTVZh
bHVlQ3VzdG9tLmNwcCIKICNpbmNsdWRlICJKU0RvY3VtZW50Q3VzdG9tLmNwcCIKICNpbmNsdWRl
ICJKU0RvY3VtZW50RnJhZ21lbnRDdXN0b20uY3BwIgogI2luY2x1ZGUgIkpTRWxlbWVudEN1c3Rv
bS5jcHAiCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0RlcHJlY2F0ZWRDU1NP
TVZhbHVlQ3VzdG9tLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9q
cy9KU0RlcHJlY2F0ZWRDU1NPTVZhbHVlQ3VzdG9tLmNwcAkocmV2aXNpb24gMjE5NTM3KQkoZnJv
bSBTb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0NTU1ZhbHVlQ3VzdG9tLmNwcDoyMTk1Mzcp
CisrKyBTb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0RlcHJlY2F0ZWRDU1NPTVZhbHVlQ3Vz
dG9tLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMCwwICsxLDczIEBACisvKgorICogQ29weXJpZ2h0
IChDKSAyMDA3LCAyMDA4IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBS
ZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9y
IHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRo
ZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9u
cyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBu
b3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWlt
ZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2Ug
dGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9u
cyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlv
biBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4K
KyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIElOQy4gYGBBUyBJUycn
IEFORCBBTlkKKyAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJV
VCBOT1QgTElNSVRFRCBUTywgVEhFCisgKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRB
QklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJU0NM
QUlNRUQuICBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SCisgKiBDT05UUklCVVRPUlMg
QkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwK
KyAqIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBO
T1QgTElNSVRFRCBUTywKKyAqIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VS
VklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUgorICogUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5U
RVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWQorICogT0YgTElBQklM
SVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisgKiAo
SU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VU
IE9GIFRIRSBVU0UKKyAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUg
UE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI2luY2x1ZGUgImNvbmZpZy5oIgor
CisjaW5jbHVkZSAiRGVwcmVjYXRlZENTU09NUHJpbWl0aXZlVmFsdWUuaCIKKyNpbmNsdWRlICJE
ZXByZWNhdGVkQ1NTT01WYWx1ZUxpc3QuaCIKKyNpbmNsdWRlICJKU0RlcHJlY2F0ZWRDU1NPTVBy
aW1pdGl2ZVZhbHVlLmgiCisjaW5jbHVkZSAiSlNEZXByZWNhdGVkQ1NTT01WYWx1ZS5oIgorI2lu
Y2x1ZGUgIkpTRGVwcmVjYXRlZENTU09NVmFsdWVMaXN0LmgiCisjaW5jbHVkZSAiSlNOb2RlLmgi
CisKK3VzaW5nIG5hbWVzcGFjZSBKU0M7CisKK25hbWVzcGFjZSBXZWJDb3JlIHsKKworYm9vbCBK
U0RlcHJlY2F0ZWRDU1NPTVZhbHVlT3duZXI6OmlzUmVhY2hhYmxlRnJvbU9wYXF1ZVJvb3RzKEpT
Qzo6SGFuZGxlPEpTQzo6VW5rbm93bj4gaGFuZGxlLCB2b2lkKiBjb250ZXh0LCBTbG90VmlzaXRv
ciYgdmlzaXRvcikKK3sKKyAgICBKU0RlcHJlY2F0ZWRDU1NPTVZhbHVlKiBqc0NTU1ZhbHVlID0g
anNDYXN0PEpTRGVwcmVjYXRlZENTU09NVmFsdWUqPihoYW5kbGUuc2xvdCgpLT5hc0NlbGwoKSk7
CisgICAgaWYgKCFqc0NTU1ZhbHVlLT5oYXNDdXN0b21Qcm9wZXJ0aWVzKCkpCisgICAgICAgIHJl
dHVybiBmYWxzZTsKKyAgICBET01XcmFwcGVyV29ybGQqIHdvcmxkID0gc3RhdGljX2Nhc3Q8RE9N
V3JhcHBlcldvcmxkKj4oY29udGV4dCk7CisgICAgdm9pZCogcm9vdCA9IHdvcmxkLT5tX2RlcHJl
Y2F0ZWRDU1NPTVZhbHVlUm9vdHMuZ2V0KCZqc0NTU1ZhbHVlLT53cmFwcGVkKCkpOworICAgIGlm
ICghcm9vdCkKKyAgICAgICAgcmV0dXJuIGZhbHNlOworICAgIHJldHVybiB2aXNpdG9yLmNvbnRh
aW5zT3BhcXVlUm9vdChyb290KTsKK30KKwordm9pZCBKU0RlcHJlY2F0ZWRDU1NPTVZhbHVlT3du
ZXI6OmZpbmFsaXplKEpTQzo6SGFuZGxlPEpTQzo6VW5rbm93bj4gaGFuZGxlLCB2b2lkKiBjb250
ZXh0KQoreworICAgIEpTRGVwcmVjYXRlZENTU09NVmFsdWUqIGpzQ1NTVmFsdWUgPSBzdGF0aWNf
Y2FzdDxKU0RlcHJlY2F0ZWRDU1NPTVZhbHVlKj4oaGFuZGxlLnNsb3QoKS0+YXNDZWxsKCkpOwor
ICAgIERPTVdyYXBwZXJXb3JsZCYgd29ybGQgPSAqc3RhdGljX2Nhc3Q8RE9NV3JhcHBlcldvcmxk
Kj4oY29udGV4dCk7CisgICAgd29ybGQubV9kZXByZWNhdGVkQ1NTT01WYWx1ZVJvb3RzLnJlbW92
ZSgmanNDU1NWYWx1ZS0+d3JhcHBlZCgpKTsKKyAgICB1bmNhY2hlV3JhcHBlcih3b3JsZCwgJmpz
Q1NTVmFsdWUtPndyYXBwZWQoKSwganNDU1NWYWx1ZSk7Cit9CisKK0pTVmFsdWUgdG9KU05ld2x5
Q3JlYXRlZChFeGVjU3RhdGUqLCBKU0RPTUdsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBSZWY8
RGVwcmVjYXRlZENTU09NVmFsdWU+JiYgdmFsdWUpCit7CisgICAgaWYgKHZhbHVlLT5pc1ZhbHVl
TGlzdCgpKQorICAgICAgICByZXR1cm4gY3JlYXRlV3JhcHBlcjxEZXByZWNhdGVkQ1NTT01WYWx1
ZUxpc3Q+KGdsb2JhbE9iamVjdCwgV1RGTW92ZSh2YWx1ZSkpOworICAgIGlmICh2YWx1ZS0+aXNQ
cmltaXRpdmVWYWx1ZSgpKQorICAgICAgICByZXR1cm4gY3JlYXRlV3JhcHBlcjxEZXByZWNhdGVk
Q1NTT01QcmltaXRpdmVWYWx1ZT4oZ2xvYmFsT2JqZWN0LCBXVEZNb3ZlKHZhbHVlKSk7CisgICAg
cmV0dXJuIGNyZWF0ZVdyYXBwZXI8RGVwcmVjYXRlZENTU09NVmFsdWU+KGdsb2JhbE9iamVjdCwg
V1RGTW92ZSh2YWx1ZSkpOworfQorCitKU1ZhbHVlIHRvSlMoRXhlY1N0YXRlKiBzdGF0ZSwgSlNE
T01HbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgRGVwcmVjYXRlZENTU09NVmFsdWUmIHZhbHVl
KQoreworICAgIHJldHVybiB3cmFwKHN0YXRlLCBnbG9iYWxPYmplY3QsIHZhbHVlKTsKK30KKwor
fSAvLyBuYW1lc3BhY2UgV2ViQ29yZQoKUHJvcGVydHkgY2hhbmdlcyBvbjogU291cmNlL1dlYkNv
cmUvYmluZGluZ3MvanMvSlNDU1NWYWx1ZUN1c3RvbS5jcHAKX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpBZGRlZDogc3Zu
OmVvbC1zdHlsZQojIyAtMCwwICsxICMjCituYXRpdmUKXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBw
cm9wZXJ0eQpJbmRleDogU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNEZXByZWNhdGVkQ1NT
T01WYWx1ZUN1c3RvbS5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvYmluZGluZ3Mv
anMvSlNEZXByZWNhdGVkQ1NTT01WYWx1ZUN1c3RvbS5jcHAJKHJldmlzaW9uIDIxOTUzNykKKysr
IFNvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRGVwcmVjYXRlZENTU09NVmFsdWVDdXN0b20u
Y3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yNCwxMSArMjQsOSBAQAogICovCiAKICNpbmNsdWRlICJj
b25maWcuaCIKKyNpbmNsdWRlICJKU0RlcHJlY2F0ZWRDU1NPTVZhbHVlLmgiCiAKLSNpbmNsdWRl
ICJEZXByZWNhdGVkQ1NTT01QcmltaXRpdmVWYWx1ZS5oIgotI2luY2x1ZGUgIkRlcHJlY2F0ZWRD
U1NPTVZhbHVlTGlzdC5oIgogI2luY2x1ZGUgIkpTRGVwcmVjYXRlZENTU09NUHJpbWl0aXZlVmFs
dWUuaCIKLSNpbmNsdWRlICJKU0RlcHJlY2F0ZWRDU1NPTVZhbHVlLmgiCiAjaW5jbHVkZSAiSlNE
ZXByZWNhdGVkQ1NTT01WYWx1ZUxpc3QuaCIKICNpbmNsdWRlICJKU05vZGUuaCIKIAo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>315575</attachid>
            <date>2017-07-15 17:49:44 -0700</date>
            <delta_ts>2017-07-17 11:18:12 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>patch4.diff</filename>
            <type>text/plain</type>
            <size>14831</size>
            <attacher name="Sam Weinig">sam</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDIxOTUzOSkKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDE3IEBACisyMDE3LTA3LTE1ICBTYW0gV2Vp
bmlnICA8c2FtQHdlYmtpdC5vcmc+CisKKyAgICAgICAgW1dlYklETF0gUmVuYW1lIEpTQ1NTVmFs
dWVDdXN0b20uY3BwIHRvIEpTRGVwcmVjYXRlZENTU09NVmFsdWVDdXN0b20uY3BwIHRvIG1hdGNo
IHRoZSB1bmRlcmx5aW5nIGNsYXNzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3No
b3dfYnVnLmNnaT9pZD0xNzQ1NTAKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMh
KS4KKworICAgICAgICAqIENNYWtlTGlzdHMudHh0OgorICAgICAgICAqIFdlYkNvcmUueGNvZGVw
cm9qL3Byb2plY3QucGJ4cHJvajoKKyAgICAgICAgKiBiaW5kaW5ncy9qcy9KU0JpbmRpbmdzQWxs
SW5PbmUuY3BwOgorICAgICAgICAqIGJpbmRpbmdzL2pzL0pTQ1NTVmFsdWVDdXN0b20uY3BwOiBS
ZW1vdmVkLgorICAgICAgICAqIGJpbmRpbmdzL2pzL0pTRGVwcmVjYXRlZENTU09NVmFsdWVDdXN0
b20uY3BwOiBSZW5hbWVkIGZyb20gYmluZGluZ3MvanMvSlNDU1NWYWx1ZUN1c3RvbS5jcHAuCisg
ICAgICAgIFJlbmFtZSBmaWxlIGFuZCB1cGRhdGUgcmVmZXJlbmNlcy4KKwogMjAxNy0wNy0xNSAg
TXlsZXMgQy4gTWF4ZmllbGQgIDxtbWF4ZmllbGRAYXBwbGUuY29tPgogCiAgICAgICAgIENsZWFu
IHVwIGxpbmUtaGVpZ2h0IGFuZCBtaW5pbXVtRm9udFNpemUgZnVuY3Rpb25zCkluZGV4OiBTb3Vy
Y2UvV2ViQ29yZS9DTWFrZUxpc3RzLnR4dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9D
TWFrZUxpc3RzLnR4dAkocmV2aXNpb24gMjE5NTM3KQorKysgU291cmNlL1dlYkNvcmUvQ01ha2VM
aXN0cy50eHQJKHdvcmtpbmcgY29weSkKQEAgLTExNTIsOSArMTE1Miw5IEBAIHNldChXZWJDb3Jl
X1NPVVJDRVMKICAgICBiaW5kaW5ncy9qcy9KU0RPTUNvbnZlcnRTdHJpbmdzLmNwcAogICAgIGJp
bmRpbmdzL2pzL0pTRE9NQ29udmVydFdlYkdMLmNwcAogICAgIGJpbmRpbmdzL2pzL0pTRE9NSXRl
cmF0b3IuY3BwCisgICAgYmluZGluZ3MvanMvSlNEZXByZWNhdGVkQ1NTT01WYWx1ZUN1c3RvbS5j
cHAKICAgICBiaW5kaW5ncy9qcy9KU0ZvbnRGYWNlQ3VzdG9tLmNwcAogICAgIGJpbmRpbmdzL2pz
L0pTRm9udEZhY2VTZXRDdXN0b20uY3BwCi0gICAgYmluZGluZ3MvanMvSlNDU1NWYWx1ZUN1c3Rv
bS5jcHAKICAgICBiaW5kaW5ncy9qcy9KU0NhbGxiYWNrRGF0YS5jcHAKICAgICBiaW5kaW5ncy9q
cy9KU0NhbnZhc1JlbmRlcmluZ0NvbnRleHQyREN1c3RvbS5jcHAKICAgICBiaW5kaW5ncy9qcy9K
U0NvbW1hbmRMaW5lQVBJSG9zdEN1c3RvbS5jcHAKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL1dlYkNv
cmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvago9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29y
ZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oJKHJldmlzaW9uIDIxOTUzNykKKysr
IFNvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagkod29ya2lu
ZyBjb3B5KQpAQCAtNTU3Myw3ICs1NTczLDcgQEAKIAkJQkMxQTdEOTgxOEZDQjVCMDAwNDIxODc5
IC8qIFJlbmRlck11bHRpQ29sdW1uU3Bhbm5lclBsYWNlaG9sZGVyLmggaW4gSGVhZGVycyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSBCQzFBN0Q5NjE4RkNCNUIwMDA0MjE4Nzkg
LyogUmVuZGVyTXVsdGlDb2x1bW5TcGFubmVyUGxhY2Vob2xkZXIuaCAqLzsgfTsKIAkJQkMxQkRG
MjQxNTZDMTg4MzAwMUMxMjQzIC8qIERPTUVycm9yLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9
IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEJDMUJERjIwMTU2QzE3QTkwMDFDMTI0MyAvKiBET01F
cnJvci5jcHAgKi87IH07CiAJCUJDMUJERjI1MTU2QzE4QzcwMDFDMTI0MyAvKiBET01FcnJvci5o
IGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gQkMxQkRGMjEx
NTZDMTdBOTAwMUMxMjQzIC8qIERPTUVycm9yLmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMg
PSAoUHJpdmF0ZSwgKTsgfTsgfTsKLQkJQkMyMEZCN0YwQzBFOEU2QzAwRDE0NDdGIC8qIEpTQ1NT
VmFsdWVDdXN0b20uY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gQkMyMEZCN0UwQzBFOEU2QzAwRDE0NDdGIC8qIEpTQ1NTVmFsdWVDdXN0b20uY3BwICov
OyB9OworCQlCQzIwRkI3RjBDMEU4RTZDMDBEMTQ0N0YgLyogSlNEZXByZWNhdGVkQ1NTT01WYWx1
ZUN1c3RvbS5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSBCQzIwRkI3RTBDMEU4RTZDMDBEMTQ0N0YgLyogSlNEZXByZWNhdGVkQ1NTT01WYWx1ZUN1c3Rv
bS5jcHAgKi87IH07CiAJCUJDMjI3Mjg3MEU4MkU3MDcwMEU3Rjk3NSAvKiBTdHlsZVJlZmxlY3Rp
b24uaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IEJDMjI3
Mjg2MEU4MkU3MDcwMEU3Rjk3NSAvKiBTdHlsZVJlZmxlY3Rpb24uaCAqLzsgc2V0dGluZ3MgPSB7
QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwogCQlCQzIyNzJBMjBFODJFODdDMDBFN0Y5
NzUgLyogQ3Vyc29yRGF0YS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gQkMyMjcyQTEwRTgyRTg3QzAwRTdGOTc1IC8qIEN1cnNvckRhdGEuaCAqLzsgc2V0
dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwogCQlCQzIyNzJBRDBFODJF
OEYzMDBFN0Y5NzUgLyogQ3Vyc29yTGlzdC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gQkMyMjcyQUMwRTgyRThGMzAwRTdGOTc1IC8qIEN1cnNvckxpc3Qu
aCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OwpAQCAtMTQw
MzksNyArMTQwMzksNyBAQAogCQlCQzFCREYyMDE1NkMxN0E5MDAxQzEyNDMgLyogRE9NRXJyb3Iu
Y3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gRE9NRXJyb3IuY3BwOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlCQzFCREYyMTE1NkMxN0E5MDAxQzEyNDMgLyog
RE9NRXJyb3IuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gRE9NRXJyb3IuaDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJQkMxQkRGMjIxNTZDMTdBOTAwMUMxMjQzIC8q
IERPTUVycm9yLmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IHBhdGggPSBET01FcnJvci5pZGw7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07Ci0JCUJDMjBGQjdFMEMwRThFNkMwMEQxNDQ3RiAvKiBKU0NT
U1ZhbHVlQ3VzdG9tLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rp
bmcgPSAzMDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBK
U0NTU1ZhbHVlQ3VzdG9tLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJQkMyMEZC
N0UwQzBFOEU2QzAwRDE0NDdGIC8qIEpTRGVwcmVjYXRlZENTU09NVmFsdWVDdXN0b20uY3BwICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDMwOyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTRGVwcmVjYXRlZENTU09NVmFs
dWVDdXN0b20uY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQlCQzIyNzI4NjBFODJF
NzA3MDBFN0Y5NzUgLyogU3R5bGVSZWZsZWN0aW9uLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMu
aDsgcGF0aCA9IFN0eWxlUmVmbGVjdGlvbi5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owog
CQlCQzIyNzJBMTBFODJFODdDMDBFN0Y5NzUgLyogQ3Vyc29yRGF0YS5oICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291
cmNlY29kZS5jLmg7IHBhdGggPSBDdXJzb3JEYXRhLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CiAJCUJDMjI3MkFDMEU4MkU4RjMwMEU3Rjk3NSAvKiBDdXJzb3JMaXN0LmggKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEN1cnNvckxpc3QuaDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKQEAgLTE5Njc5LDcgKzE5Njc5LDcgQEAKIAkJCQlCQzQ2QzFFRDBDMEREQkRGMDAy
MENGQzMgLyogSlNDU1NSdWxlQ3VzdG9tLmNwcCAqLywKIAkJCQlBRDcyNkZFOTE2RDlGNDBBMDAz
QTRFNkQgLyogSlNDU1NSdWxlQ3VzdG9tLmggKi8sCiAJCQkJOTM5MjI2MkUxMDMyMTA4NDAwNkU3
RDVEIC8qIEpTQ1NTUnVsZUxpc3RDdXN0b20uY3BwICovLAotCQkJCUJDMjBGQjdFMEMwRThFNkMw
MEQxNDQ3RiAvKiBKU0NTU1ZhbHVlQ3VzdG9tLmNwcCAqLywKKwkJCQlCQzIwRkI3RTBDMEU4RTZD
MDBEMTQ0N0YgLyogSlNEZXByZWNhdGVkQ1NTT01WYWx1ZUN1c3RvbS5jcHAgKi8sCiAJCQkJNDlD
N0JBOEMxMDQyRjVCMTAwMDlENDQ3IC8qIEpTRG9jdW1lbnRDdXN0b20uY3BwICovLAogCQkJCUFE
REE5NEJGMTk2ODZGODAwMDQ1MzAyOSAvKiBKU0RvY3VtZW50Q3VzdG9tLmggKi8sCiAJCQkJN0Mz
M0YzNjAxQjRBMDUwNDAwNTAyQ0FGIC8qIEpTRG9jdW1lbnRGcmFnbWVudEN1c3RvbS5jcHAgKi8s
CkBAIC0zMTgyNiw3ICszMTgyNiw3IEBACiAJCQkJQkM0NkMyMDYwQzBERENBMTAwMjBDRkMzIC8q
IEpTQ1NTU3R5bGVSdWxlLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCUJDQzVCRTAwMEMwRTkzMTEw
MDExQzJEQiAvKiBKU0NTU1N0eWxlU2hlZXQuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJRkQ2Nzc3
M0ExOTVDQjE0QTAwNzJFMEQzIC8qIEpTQ1NTU3VwcG9ydHNSdWxlLmNwcCBpbiBTb3VyY2VzICov
LAotCQkJCUJDMjBGQjdGMEMwRThFNkMwMEQxNDQ3RiAvKiBKU0NTU1ZhbHVlQ3VzdG9tLmNwcCBp
biBTb3VyY2VzICovLAorCQkJCUJDMjBGQjdGMEMwRThFNkMwMEQxNDQ3RiAvKiBKU0RlcHJlY2F0
ZWRDU1NPTVZhbHVlQ3VzdG9tLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTlCRDRFOTE2MUM0NjI4
NzIwMDUwNjVCQyAvKiBKU0N1c3RvbUVsZW1lbnRJbnRlcmZhY2UuY3BwIGluIFNvdXJjZXMgKi8s
CiAJCQkJOUJFNjcxMEIxRDVBRUIyMTAwMzQ1NTE0IC8qIEpTQ3VzdG9tRWxlbWVudFJlZ2lzdHJ5
LmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTlCQzVGOUUwMUQ1QUFGNkIwMDJCNzQ5RCAvKiBKU0N1
c3RvbUVsZW1lbnRSZWdpc3RyeUN1c3RvbS5jcHAgaW4gU291cmNlcyAqLywKSW5kZXg6IFNvdXJj
ZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTQmluZGluZ3NBbGxJbk9uZS5jcHAKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNCaW5kaW5nc0FsbEluT25lLmNwcAkocmV2
aXNpb24gMjE5NTM3KQorKysgU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNCaW5kaW5nc0Fs
bEluT25lLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMzYsNyArMzYsNiBAQAogI2luY2x1ZGUgIkpT
Q1NTUnVsZUN1c3RvbS5jcHAiCiAjaW5jbHVkZSAiSlNDU1NSdWxlTGlzdEN1c3RvbS5jcHAiCiAj
aW5jbHVkZSAiSlNDU1NTdHlsZURlY2xhcmF0aW9uQ3VzdG9tLmNwcCIKLSNpbmNsdWRlICJKU0NT
U1ZhbHVlQ3VzdG9tLmNwcCIKICNpbmNsdWRlICJKU0NhbGxiYWNrRGF0YS5jcHAiCiAjaW5jbHVk
ZSAiSlNDYW52YXNSZW5kZXJpbmdDb250ZXh0MkRDdXN0b20uY3BwIgogI2luY2x1ZGUgIkpTQ29t
bWFuZExpbmVBUElIb3N0Q3VzdG9tLmNwcCIKQEAgLTU2LDYgKzU1LDcgQEAKICNpbmNsdWRlICJK
U0RPTVdpbmRvd1Byb3h5LmNwcCIKICNpbmNsdWRlICJKU0RPTVdyYXBwZXIuY3BwIgogI2luY2x1
ZGUgIkpTRE9NV3JhcHBlckNhY2hlLmNwcCIKKyNpbmNsdWRlICJKU0RlcHJlY2F0ZWRDU1NPTVZh
bHVlQ3VzdG9tLmNwcCIKICNpbmNsdWRlICJKU0RvY3VtZW50Q3VzdG9tLmNwcCIKICNpbmNsdWRl
ICJKU0RvY3VtZW50RnJhZ21lbnRDdXN0b20uY3BwIgogI2luY2x1ZGUgIkpTRWxlbWVudEN1c3Rv
bS5jcHAiCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0NTU1ZhbHVlQ3VzdG9t
LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0NTU1ZhbHVl
Q3VzdG9tLmNwcAkocmV2aXNpb24gMjE5NTM3KQorKysgU291cmNlL1dlYkNvcmUvYmluZGluZ3Mv
anMvSlNDU1NWYWx1ZUN1c3RvbS5jcHAJKG5vbmV4aXN0ZW50KQpAQCAtMSw3MyArMCwwIEBACi0v
KgotICogQ29weXJpZ2h0IChDKSAyMDA3LCAyMDA4IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNl
cnZlZC4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5
IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBw
cm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotICogYXJlIG1ldDoKLSAqIDEu
IFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29w
eXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9s
bG93aW5nIGRpc2NsYWltZXIuCi0gKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0g
bXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxp
c3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQotICog
ICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhl
IGRpc3RyaWJ1dGlvbi4KLSAqCi0gKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExF
IElOQy4gYGBBUyBJUycnIEFORCBBTlkKLSAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVT
LCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCi0gKiBJTVBMSUVEIFdBUlJBTlRJ
RVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKLSAqIFBV
UlBPU0UgQVJFIERJU0NMQUlNRUQuICBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SCi0g
KiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURF
TlRBTCwgU1BFQ0lBTCwKLSAqIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJ
TkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKLSAqIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRV
VEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUgotICogUFJPRklUUzsg
T1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9S
WQotICogT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZ
LCBPUiBUT1JUCi0gKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5H
IElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKLSAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYg
QURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCi0gKi8KLQotI2luY2x1
ZGUgImNvbmZpZy5oIgotCi0jaW5jbHVkZSAiRGVwcmVjYXRlZENTU09NUHJpbWl0aXZlVmFsdWUu
aCIKLSNpbmNsdWRlICJEZXByZWNhdGVkQ1NTT01WYWx1ZUxpc3QuaCIKLSNpbmNsdWRlICJKU0Rl
cHJlY2F0ZWRDU1NPTVByaW1pdGl2ZVZhbHVlLmgiCi0jaW5jbHVkZSAiSlNEZXByZWNhdGVkQ1NT
T01WYWx1ZS5oIgotI2luY2x1ZGUgIkpTRGVwcmVjYXRlZENTU09NVmFsdWVMaXN0LmgiCi0jaW5j
bHVkZSAiSlNOb2RlLmgiCi0KLXVzaW5nIG5hbWVzcGFjZSBKU0M7Ci0KLW5hbWVzcGFjZSBXZWJD
b3JlIHsKLQotYm9vbCBKU0RlcHJlY2F0ZWRDU1NPTVZhbHVlT3duZXI6OmlzUmVhY2hhYmxlRnJv
bU9wYXF1ZVJvb3RzKEpTQzo6SGFuZGxlPEpTQzo6VW5rbm93bj4gaGFuZGxlLCB2b2lkKiBjb250
ZXh0LCBTbG90VmlzaXRvciYgdmlzaXRvcikKLXsKLSAgICBKU0RlcHJlY2F0ZWRDU1NPTVZhbHVl
KiBqc0NTU1ZhbHVlID0ganNDYXN0PEpTRGVwcmVjYXRlZENTU09NVmFsdWUqPihoYW5kbGUuc2xv
dCgpLT5hc0NlbGwoKSk7Ci0gICAgaWYgKCFqc0NTU1ZhbHVlLT5oYXNDdXN0b21Qcm9wZXJ0aWVz
KCkpCi0gICAgICAgIHJldHVybiBmYWxzZTsKLSAgICBET01XcmFwcGVyV29ybGQqIHdvcmxkID0g
c3RhdGljX2Nhc3Q8RE9NV3JhcHBlcldvcmxkKj4oY29udGV4dCk7Ci0gICAgdm9pZCogcm9vdCA9
IHdvcmxkLT5tX2RlcHJlY2F0ZWRDU1NPTVZhbHVlUm9vdHMuZ2V0KCZqc0NTU1ZhbHVlLT53cmFw
cGVkKCkpOwotICAgIGlmICghcm9vdCkKLSAgICAgICAgcmV0dXJuIGZhbHNlOwotICAgIHJldHVy
biB2aXNpdG9yLmNvbnRhaW5zT3BhcXVlUm9vdChyb290KTsKLX0KLQotdm9pZCBKU0RlcHJlY2F0
ZWRDU1NPTVZhbHVlT3duZXI6OmZpbmFsaXplKEpTQzo6SGFuZGxlPEpTQzo6VW5rbm93bj4gaGFu
ZGxlLCB2b2lkKiBjb250ZXh0KQotewotICAgIEpTRGVwcmVjYXRlZENTU09NVmFsdWUqIGpzQ1NT
VmFsdWUgPSBzdGF0aWNfY2FzdDxKU0RlcHJlY2F0ZWRDU1NPTVZhbHVlKj4oaGFuZGxlLnNsb3Qo
KS0+YXNDZWxsKCkpOwotICAgIERPTVdyYXBwZXJXb3JsZCYgd29ybGQgPSAqc3RhdGljX2Nhc3Q8
RE9NV3JhcHBlcldvcmxkKj4oY29udGV4dCk7Ci0gICAgd29ybGQubV9kZXByZWNhdGVkQ1NTT01W
YWx1ZVJvb3RzLnJlbW92ZSgmanNDU1NWYWx1ZS0+d3JhcHBlZCgpKTsKLSAgICB1bmNhY2hlV3Jh
cHBlcih3b3JsZCwgJmpzQ1NTVmFsdWUtPndyYXBwZWQoKSwganNDU1NWYWx1ZSk7Ci19Ci0KLUpT
VmFsdWUgdG9KU05ld2x5Q3JlYXRlZChFeGVjU3RhdGUqLCBKU0RPTUdsb2JhbE9iamVjdCogZ2xv
YmFsT2JqZWN0LCBSZWY8RGVwcmVjYXRlZENTU09NVmFsdWU+JiYgdmFsdWUpCi17Ci0gICAgaWYg
KHZhbHVlLT5pc1ZhbHVlTGlzdCgpKQotICAgICAgICByZXR1cm4gY3JlYXRlV3JhcHBlcjxEZXBy
ZWNhdGVkQ1NTT01WYWx1ZUxpc3Q+KGdsb2JhbE9iamVjdCwgV1RGTW92ZSh2YWx1ZSkpOwotICAg
IGlmICh2YWx1ZS0+aXNQcmltaXRpdmVWYWx1ZSgpKQotICAgICAgICByZXR1cm4gY3JlYXRlV3Jh
cHBlcjxEZXByZWNhdGVkQ1NTT01QcmltaXRpdmVWYWx1ZT4oZ2xvYmFsT2JqZWN0LCBXVEZNb3Zl
KHZhbHVlKSk7Ci0gICAgcmV0dXJuIGNyZWF0ZVdyYXBwZXI8RGVwcmVjYXRlZENTU09NVmFsdWU+
KGdsb2JhbE9iamVjdCwgV1RGTW92ZSh2YWx1ZSkpOwotfQotCi1KU1ZhbHVlIHRvSlMoRXhlY1N0
YXRlKiBzdGF0ZSwgSlNET01HbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgRGVwcmVjYXRlZENT
U09NVmFsdWUmIHZhbHVlKQotewotICAgIHJldHVybiB3cmFwKHN0YXRlLCBnbG9iYWxPYmplY3Qs
IHZhbHVlKTsKLX0KLQotfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQoKUHJvcGVydHkgY2hhbmdlcyBv
bjogU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNDU1NWYWx1ZUN1c3RvbS5jcHAKX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fXwpEZWxldGVkOiBzdm46ZW9sLXN0eWxlCiMjIC0xICswLDAgIyMKLW5hdGl2ZQpcIE5vIG5l
d2xpbmUgYXQgZW5kIG9mIHByb3BlcnR5CkluZGV4OiBTb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9q
cy9KU0RlcHJlY2F0ZWRDU1NPTVZhbHVlQ3VzdG9tLmNwcAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2Uv
V2ViQ29yZS9iaW5kaW5ncy9qcy9KU0RlcHJlY2F0ZWRDU1NPTVZhbHVlQ3VzdG9tLmNwcAkocmV2
aXNpb24gMjE5NTM3KQkoZnJvbSBTb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0NTU1ZhbHVl
Q3VzdG9tLmNwcDoyMTk1MzcpCisrKyBTb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0RlcHJl
Y2F0ZWRDU1NPTVZhbHVlQ3VzdG9tLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMCwwICsxLDczIEBA
CisvKgorICogQ29weXJpZ2h0IChDKSAyMDA3LCAyMDA4IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyBy
ZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmlu
YXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRl
ZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAq
IDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUg
Y29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUg
Zm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZv
cm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlz
IGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQor
ICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGgg
dGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQ
UExFIElOQy4gYGBBUyBJUycnIEFORCBBTlkKKyAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5U
SUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCisgKiBJTVBMSUVEIFdBUlJB
TlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAq
IFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuICBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9S
CisgKiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5D
SURFTlRBTCwgU1BFQ0lBTCwKKyAqIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VT
IChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFBST0NVUkVNRU5UIE9GIFNVQlNU
SVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUgorICogUFJPRklU
UzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRI
RU9SWQorICogT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklM
SVRZLCBPUiBUT1JUCisgKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklT
SU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKKyAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4g
SUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI2lu
Y2x1ZGUgImNvbmZpZy5oIgorCisjaW5jbHVkZSAiRGVwcmVjYXRlZENTU09NUHJpbWl0aXZlVmFs
dWUuaCIKKyNpbmNsdWRlICJEZXByZWNhdGVkQ1NTT01WYWx1ZUxpc3QuaCIKKyNpbmNsdWRlICJK
U0RlcHJlY2F0ZWRDU1NPTVByaW1pdGl2ZVZhbHVlLmgiCisjaW5jbHVkZSAiSlNEZXByZWNhdGVk
Q1NTT01WYWx1ZS5oIgorI2luY2x1ZGUgIkpTRGVwcmVjYXRlZENTU09NVmFsdWVMaXN0LmgiCisj
aW5jbHVkZSAiSlNOb2RlLmgiCisKK3VzaW5nIG5hbWVzcGFjZSBKU0M7CisKK25hbWVzcGFjZSBX
ZWJDb3JlIHsKKworYm9vbCBKU0RlcHJlY2F0ZWRDU1NPTVZhbHVlT3duZXI6OmlzUmVhY2hhYmxl
RnJvbU9wYXF1ZVJvb3RzKEpTQzo6SGFuZGxlPEpTQzo6VW5rbm93bj4gaGFuZGxlLCB2b2lkKiBj
b250ZXh0LCBTbG90VmlzaXRvciYgdmlzaXRvcikKK3sKKyAgICBKU0RlcHJlY2F0ZWRDU1NPTVZh
bHVlKiBqc0NTU1ZhbHVlID0ganNDYXN0PEpTRGVwcmVjYXRlZENTU09NVmFsdWUqPihoYW5kbGUu
c2xvdCgpLT5hc0NlbGwoKSk7CisgICAgaWYgKCFqc0NTU1ZhbHVlLT5oYXNDdXN0b21Qcm9wZXJ0
aWVzKCkpCisgICAgICAgIHJldHVybiBmYWxzZTsKKyAgICBET01XcmFwcGVyV29ybGQqIHdvcmxk
ID0gc3RhdGljX2Nhc3Q8RE9NV3JhcHBlcldvcmxkKj4oY29udGV4dCk7CisgICAgdm9pZCogcm9v
dCA9IHdvcmxkLT5tX2RlcHJlY2F0ZWRDU1NPTVZhbHVlUm9vdHMuZ2V0KCZqc0NTU1ZhbHVlLT53
cmFwcGVkKCkpOworICAgIGlmICghcm9vdCkKKyAgICAgICAgcmV0dXJuIGZhbHNlOworICAgIHJl
dHVybiB2aXNpdG9yLmNvbnRhaW5zT3BhcXVlUm9vdChyb290KTsKK30KKwordm9pZCBKU0RlcHJl
Y2F0ZWRDU1NPTVZhbHVlT3duZXI6OmZpbmFsaXplKEpTQzo6SGFuZGxlPEpTQzo6VW5rbm93bj4g
aGFuZGxlLCB2b2lkKiBjb250ZXh0KQoreworICAgIEpTRGVwcmVjYXRlZENTU09NVmFsdWUqIGpz
Q1NTVmFsdWUgPSBzdGF0aWNfY2FzdDxKU0RlcHJlY2F0ZWRDU1NPTVZhbHVlKj4oaGFuZGxlLnNs
b3QoKS0+YXNDZWxsKCkpOworICAgIERPTVdyYXBwZXJXb3JsZCYgd29ybGQgPSAqc3RhdGljX2Nh
c3Q8RE9NV3JhcHBlcldvcmxkKj4oY29udGV4dCk7CisgICAgd29ybGQubV9kZXByZWNhdGVkQ1NT
T01WYWx1ZVJvb3RzLnJlbW92ZSgmanNDU1NWYWx1ZS0+d3JhcHBlZCgpKTsKKyAgICB1bmNhY2hl
V3JhcHBlcih3b3JsZCwgJmpzQ1NTVmFsdWUtPndyYXBwZWQoKSwganNDU1NWYWx1ZSk7Cit9CisK
K0pTVmFsdWUgdG9KU05ld2x5Q3JlYXRlZChFeGVjU3RhdGUqLCBKU0RPTUdsb2JhbE9iamVjdCog
Z2xvYmFsT2JqZWN0LCBSZWY8RGVwcmVjYXRlZENTU09NVmFsdWU+JiYgdmFsdWUpCit7CisgICAg
aWYgKHZhbHVlLT5pc1ZhbHVlTGlzdCgpKQorICAgICAgICByZXR1cm4gY3JlYXRlV3JhcHBlcjxE
ZXByZWNhdGVkQ1NTT01WYWx1ZUxpc3Q+KGdsb2JhbE9iamVjdCwgV1RGTW92ZSh2YWx1ZSkpOwor
ICAgIGlmICh2YWx1ZS0+aXNQcmltaXRpdmVWYWx1ZSgpKQorICAgICAgICByZXR1cm4gY3JlYXRl
V3JhcHBlcjxEZXByZWNhdGVkQ1NTT01QcmltaXRpdmVWYWx1ZT4oZ2xvYmFsT2JqZWN0LCBXVEZN
b3ZlKHZhbHVlKSk7CisgICAgcmV0dXJuIGNyZWF0ZVdyYXBwZXI8RGVwcmVjYXRlZENTU09NVmFs
dWU+KGdsb2JhbE9iamVjdCwgV1RGTW92ZSh2YWx1ZSkpOworfQorCitKU1ZhbHVlIHRvSlMoRXhl
Y1N0YXRlKiBzdGF0ZSwgSlNET01HbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgRGVwcmVjYXRl
ZENTU09NVmFsdWUmIHZhbHVlKQoreworICAgIHJldHVybiB3cmFwKHN0YXRlLCBnbG9iYWxPYmpl
Y3QsIHZhbHVlKTsKK30KKworfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQoKUHJvcGVydHkgY2hhbmdl
cyBvbjogU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNDU1NWYWx1ZUN1c3RvbS5jcHAKX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fXwpBZGRlZDogc3ZuOmVvbC1zdHlsZQojIyAtMCwwICsxICMjCituYXRpdmUKXCBObyBu
ZXdsaW5lIGF0IGVuZCBvZiBwcm9wZXJ0eQpJbmRleDogU291cmNlL1dlYkNvcmUvYmluZGluZ3Mv
anMvSlNEZXByZWNhdGVkQ1NTT01WYWx1ZUN1c3RvbS5jcHAKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNl
L1dlYkNvcmUvYmluZGluZ3MvanMvSlNEZXByZWNhdGVkQ1NTT01WYWx1ZUN1c3RvbS5jcHAJKHJl
dmlzaW9uIDIxOTUzNykKKysrIFNvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRGVwcmVjYXRl
ZENTU09NVmFsdWVDdXN0b20uY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0yNCwxMSArMjQsOSBAQAog
ICovCiAKICNpbmNsdWRlICJjb25maWcuaCIKKyNpbmNsdWRlICJKU0RlcHJlY2F0ZWRDU1NPTVZh
bHVlLmgiCiAKLSNpbmNsdWRlICJEZXByZWNhdGVkQ1NTT01QcmltaXRpdmVWYWx1ZS5oIgotI2lu
Y2x1ZGUgIkRlcHJlY2F0ZWRDU1NPTVZhbHVlTGlzdC5oIgogI2luY2x1ZGUgIkpTRGVwcmVjYXRl
ZENTU09NUHJpbWl0aXZlVmFsdWUuaCIKLSNpbmNsdWRlICJKU0RlcHJlY2F0ZWRDU1NPTVZhbHVl
LmgiCiAjaW5jbHVkZSAiSlNEZXByZWNhdGVkQ1NTT01WYWx1ZUxpc3QuaCIKICNpbmNsdWRlICJK
U05vZGUuaCIKIAo=
</data>

          </attachment>
      

    </bug>

</bugzilla>