<?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>171141</bug_id>
          
          <creation_ts>2017-04-21 13:59:19 -0700</creation_ts>
          <short_desc>Remove LL/SC from Atomics</short_desc>
          <delta_ts>2017-04-25 10:21:39 -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="Keith Miller">keith_miller</reporter>
          <assigned_to name="Keith Miller">keith_miller</assigned_to>
          <cc>benjamin</cc>
    
    <cc>buildbot</cc>
    
    <cc>cdumez</cc>
    
    <cc>cmarcelo</cc>
    
    <cc>dbates</cc>
    
    <cc>jfbastien</cc>
    
    <cc>mark.lam</cc>
    
    <cc>msaboff</cc>
    
    <cc>saam</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1299860</commentid>
    <comment_count>0</comment_count>
    <who name="Keith Miller">keith_miller</who>
    <bug_when>2017-04-21 13:59:19 -0700</bug_when>
    <thetext>Remove LL/SC from Atomics</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1299863</commentid>
    <comment_count>1</comment_count>
      <attachid>307795</attachid>
    <who name="Keith Miller">keith_miller</who>
    <bug_when>2017-04-21 14:00:44 -0700</bug_when>
    <thetext>Created attachment 307795
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1299872</commentid>
    <comment_count>2</comment_count>
      <attachid>307797</attachid>
    <who name="Keith Miller">keith_miller</who>
    <bug_when>2017-04-21 14:07:34 -0700</bug_when>
    <thetext>Created attachment 307797
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1299873</commentid>
    <comment_count>3</comment_count>
      <attachid>307797</attachid>
    <who name="Saam Barati">saam</who>
    <bug_when>2017-04-21 14:08:19 -0700</bug_when>
    <thetext>Comment on attachment 307797
Patch

r=me
please also remove the code that defines HAVE_LL_SC unless it&apos;s used elsewhere.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1299876</commentid>
    <comment_count>4</comment_count>
    <who name="JF Bastien">jfbastien</who>
    <bug_when>2017-04-21 14:10:42 -0700</bug_when>
    <thetext>r=metoo</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1299881</commentid>
    <comment_count>5</comment_count>
    <who name="Keith Miller">keith_miller</who>
    <bug_when>2017-04-21 14:13:26 -0700</bug_when>
    <thetext>(In reply to Saam Barati from comment #3)
&gt; Comment on attachment 307797 [details]
&gt; Patch
&gt; 
&gt; r=me
&gt; please also remove the code that defines HAVE_LL_SC unless it&apos;s used
&gt; elsewhere.

done.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1301088</commentid>
    <comment_count>6</comment_count>
    <who name="Keith Miller">keith_miller</who>
    <bug_when>2017-04-25 10:21:39 -0700</bug_when>
    <thetext>Idk what happened to the changelog but this landed in: https://trac.webkit.org/changeset/215637/webkit</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>307795</attachid>
            <date>2017-04-21 14:00:44 -0700</date>
            <delta_ts>2017-04-21 14:07:31 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-171141-20170421170043.patch</filename>
            <type>text/plain</type>
            <size>14495</size>
            <attacher name="Keith Miller">keith_miller</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjE1NjIzCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCA3
ZTY4MDM4MjBiZGFjZDZkNTk2OTM5YzNjY2E5ZWFmNDA3NmVlNTM5Li5mMmM2YmM5MjRkNTBlODgz
NDY0OTEzMWY3Mzc4ZWUyNDc0NzlmZjUxIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
NSArMSwyMyBAQAogMjAxNy0wNC0yMSAgS2VpdGggTWlsbGVyICA8a2VpdGhfbWlsbGVyQGFwcGxl
LmNvbT4KIAorICAgICAgICBSZW1vdmUgTEwvU0MgZnJvbSBBdG9taWNzCisgICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNzExNDEKKworICAgICAgICBSZXZp
ZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBBZGRpaW5nIGxvYWQgbGluayBhbmQg
c3RvcmUgY29uZGl0aW9uYWxseSB3YXMgbm90IGFuIGFjdHVhbCBwcm9ncmVzc2lvbgorICAgICAg
ICBhbmQgdGhlIGV4aXN0aW5nIGNvZGUgaXMgY2F1c2luZyBwcm9ibGVtcyBmb3IgdXNlcnMgb2Yg
QXRvbWljcy4gU28gbGV0J3MKKyAgICAgICAgZ2V0IHJpZCBvZiBpdC4KKworICAgICAgICAqIGhl
YXAvTGFyZ2VBbGxvY2F0aW9uLmg6CisgICAgICAgIChKU0M6OkxhcmdlQWxsb2NhdGlvbjo6dGVz
dEFuZFNldE1hcmtlZCk6CisgICAgICAgICogaGVhcC9NYXJrZWRCbG9jay5oOgorICAgICAgICAo
SlNDOjpNYXJrZWRCbG9jazo6dGVzdEFuZFNldE1hcmtlZCk6CisgICAgICAgICogaGVhcC9TbG90
VmlzaXRvci5jcHA6CisgICAgICAgIChKU0M6OlNsb3RWaXNpdG9yOjpzZXRNYXJrZWRBbmRBcHBl
bmRUb01hcmtTdGFjayk6CisKKzIwMTctMDQtMjEgIEtlaXRoIE1pbGxlciAgPGtlaXRoX21pbGxl
ckBhcHBsZS5jb20+CisKICAgICAgICAgVW5yZXZpZXdlZCwgZml4IENsb29wIGJ1aWxkLgogCiAg
ICAgICAgICogaml0L0V4ZWN1dGFibGVBbGxvY2F0b3IuaDoKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
VEYvQ2hhbmdlTG9nIGIvU291cmNlL1dURi9DaGFuZ2VMb2cKaW5kZXggYmExNTMxNGEwNmZjNTk4
OWNmYmEzZDY4MzQ1MjRmYThmOTNkNDZjZC4uOWZjZWY2MDYyOGM1Yjc0YzRmYjE2YTgyOTg2ZDdj
ZmRiNGNkNTQ0MiAxMDA2NDQKLS0tIGEvU291cmNlL1dURi9DaGFuZ2VMb2cKKysrIGIvU291cmNl
L1dURi9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyOCBAQAorMjAxNy0wNC0yMSAgS2VpdGggTWlsbGVy
ICA8a2VpdGhfbWlsbGVyQGFwcGxlLmNvbT4KKworICAgICAgICBSZW1vdmUgTEwvU0MgZnJvbSBB
dG9taWNzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0x
NzExNDEKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBB
ZGRpaW5nIGxvYWQgbGluayBhbmQgc3RvcmUgY29uZGl0aW9uYWxseSB3YXMgbm90IGFuIGFjdHVh
bCBwcm9ncmVzc2lvbgorICAgICAgICBhbmQgdGhlIGV4aXN0aW5nIGNvZGUgaXMgY2F1c2luZyBw
cm9ibGVtcyBmb3IgdXNlcnMgb2YgQXRvbWljcy4gU28gbGV0J3MKKyAgICAgICAgZ2V0IHJpZCBv
ZiBpdC4KKworICAgICAgICAqIHd0Zi9BdG9taWNzLmg6CisgICAgICAgIChXVEY6Omhhc0ZlbmNl
KToKKyAgICAgICAgKFdURjo6QXRvbWljOjpleGNoYW5nZSk6CisgICAgICAgIChXVEY6OkF0b21p
Yzo6dHJhbnNhY3Rpb24pOgorICAgICAgICAoV1RGOjpBdG9taWM6OnRyYW5zYWN0aW9uUmVsYXhl
ZCk6CisgICAgICAgIChXVEY6OkF0b21pYzo6cHJlcGFyZSk6IERlbGV0ZWQuCisgICAgICAgIChX
VEY6OkF0b21pYzo6YXR0ZW1wdCk6IERlbGV0ZWQuCisgICAgICAgICogd3RmL0JpdG1hcC5oOgor
ICAgICAgICAoV1RGOjpXb3JkVHlwZT46OmNvbmN1cnJlbnRUZXN0QW5kU2V0KToKKyAgICAgICAg
KFdURjo6V29yZFR5cGU+Ojpjb25jdXJyZW50VGVzdEFuZENsZWFyKToKKyAgICAgICAgKiB3dGYv
TG9ja0FsZ29yaXRobS5oOgorICAgICAgICAoV1RGOjpMb2NrQWxnb3JpdGhtOjpsb2NrRmFzdCk6
CisgICAgICAgIChXVEY6OkxvY2tBbGdvcml0aG06OnVubG9ja0Zhc3QpOgorCiAyMDE3LTA0LTIw
ICBLZWl0aCBNaWxsZXIgIDxrZWl0aF9taWxsZXJAYXBwbGUuY29tPgogCiAgICAgICAgIEFkZCBz
aWduYWxpbmcgQVBJCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaGVhcC9MYXJn
ZUFsbG9jYXRpb24uaCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9oZWFwL0xhcmdlQWxsb2NhdGlv
bi5oCmluZGV4IGRmZDE4ZjNlNGQ0MjkyYjc3ZDgwNmEwN2MwMTNlN2FlYmEzZTIwYTAuLjliYzNh
OGI5ZDg4NTZmNjI3MDZiY2IxMWM0NzdhMzAxZmZjOWJhYzkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9oZWFwL0xhcmdlQWxsb2NhdGlvbi5oCisrKyBiL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9oZWFwL0xhcmdlQWxsb2NhdGlvbi5oCkBAIC0xMjEsNyArMTIxLDcgQEAgcHVibGlj
OgogICAgICAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgICAgIHJldHVybiBtX2lzTWFya2VkLmNv
bXBhcmVFeGNoYW5nZVN0cm9uZyhmYWxzZSwgdHJ1ZSk7CiAgICAgfQotICAgIEFMV0FZU19JTkxJ
TkUgYm9vbCB0ZXN0QW5kU2V0TWFya2VkKEhlYXBDZWxsKiwgRGVwZW5kZW5jeSwgVHJhbnNhY3Rp
b25BYm9ydExpa2VsaWhvb2QgPSBUcmFuc2FjdGlvbkFib3J0TGlrZWxpaG9vZDo6TGlrZWx5KSB7
IHJldHVybiB0ZXN0QW5kU2V0TWFya2VkKCk7IH0KKyAgICBBTFdBWVNfSU5MSU5FIGJvb2wgdGVz
dEFuZFNldE1hcmtlZChIZWFwQ2VsbCosIERlcGVuZGVuY3kpIHsgcmV0dXJuIHRlc3RBbmRTZXRN
YXJrZWQoKTsgfQogICAgIHZvaWQgY2xlYXJNYXJrZWQoKSB7IG1faXNNYXJrZWQuc3RvcmUoZmFs
c2UpOyB9CiAgICAgCiAgICAgdm9pZCBub3RlTWFya2VkKCkgeyB9CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvaGVhcC9NYXJrZWRCbG9jay5oIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL2hlYXAvTWFya2VkQmxvY2suaAppbmRleCBiNGQ0MWNiMzAxMmU1MTk1OWI4YTgxY2M3YWFl
ZDE5ZGFhYmI3NjViLi44MjFhZGY4MDU1MGYxMWJkNjkzOTQ3YzJjNzFhZDViYmFjNTFhZGE0IDEw
MDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaGVhcC9NYXJrZWRCbG9jay5oCisrKyBi
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9oZWFwL01hcmtlZEJsb2NrLmgKQEAgLTI1OSw3ICsyNTks
NyBAQCBwdWJsaWM6CiAgICAgYm9vbCBpc01hcmtlZChIZWFwVmVyc2lvbiBtYXJraW5nVmVyc2lv
biwgY29uc3Qgdm9pZCopOwogICAgIGJvb2wgaXNNYXJrZWRDb25jdXJyZW50bHkoSGVhcFZlcnNp
b24gbWFya2luZ1ZlcnNpb24sIGNvbnN0IHZvaWQqKTsKICAgICBib29sIGlzTWFya2VkKGNvbnN0
IHZvaWQqLCBEZXBlbmRlbmN5KTsKLSAgICBib29sIHRlc3RBbmRTZXRNYXJrZWQoY29uc3Qgdm9p
ZCosIERlcGVuZGVuY3ksIFRyYW5zYWN0aW9uQWJvcnRMaWtlbGlob29kID0gVHJhbnNhY3Rpb25B
Ym9ydExpa2VsaWhvb2Q6Okxpa2VseSk7CisgICAgYm9vbCB0ZXN0QW5kU2V0TWFya2VkKGNvbnN0
IHZvaWQqLCBEZXBlbmRlbmN5KTsKICAgICAgICAgCiAgICAgYm9vbCBpc0F0b20oY29uc3Qgdm9p
ZCopOwogICAgIHZvaWQgY2xlYXJNYXJrZWQoY29uc3Qgdm9pZCopOwpAQCAtNTM1LDEwICs1MzUs
MTAgQEAgaW5saW5lIGJvb2wgTWFya2VkQmxvY2s6OmlzTWFya2VkKGNvbnN0IHZvaWQqIHAsIERl
cGVuZGVuY3kgZGVwZW5kZW5jeSkKICAgICByZXR1cm4gbV9tYXJrcy5nZXQoYXRvbU51bWJlcihw
KSwgZGVwZW5kZW5jeSk7CiB9CiAKLWlubGluZSBib29sIE1hcmtlZEJsb2NrOjp0ZXN0QW5kU2V0
TWFya2VkKGNvbnN0IHZvaWQqIHAsIERlcGVuZGVuY3kgZGVwZW5kZW5jeSwgVHJhbnNhY3Rpb25B
Ym9ydExpa2VsaWhvb2QgYWJvcnRMaWtlbGlob29kKQoraW5saW5lIGJvb2wgTWFya2VkQmxvY2s6
OnRlc3RBbmRTZXRNYXJrZWQoY29uc3Qgdm9pZCogcCwgRGVwZW5kZW5jeSBkZXBlbmRlbmN5KQog
ewogICAgIGFzc2VydE1hcmtzTm90U3RhbGUoKTsKLSAgICByZXR1cm4gbV9tYXJrcy5jb25jdXJy
ZW50VGVzdEFuZFNldChhdG9tTnVtYmVyKHApLCBkZXBlbmRlbmN5LCBhYm9ydExpa2VsaWhvb2Qp
OworICAgIHJldHVybiBtX21hcmtzLmNvbmN1cnJlbnRUZXN0QW5kU2V0KGF0b21OdW1iZXIocCks
IGRlcGVuZGVuY3kpOwogfQogCiBpbmxpbmUgYm9vbCBNYXJrZWRCbG9jazo6SGFuZGxlOjppc05l
d2x5QWxsb2NhdGVkKGNvbnN0IHZvaWQqIHApCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvaGVhcC9TbG90VmlzaXRvci5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaGVhcC9T
bG90VmlzaXRvci5jcHAKaW5kZXggNjJmZTk4ZmE3MmE4MThhNTRkNGI2OTZjYTcxMjgyZjZkOWIz
ZmJlNS4uZjdiOGViNzQxOTJjNGZjOTY1M2U3YzM5MDNjYjNjMDM2NmNjYzFmMiAxMDA2NDQKLS0t
IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2hlYXAvU2xvdFZpc2l0b3IuY3BwCisrKyBiL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9oZWFwL1Nsb3RWaXNpdG9yLmNwcApAQCAtMjUyLDcgKzI1Miw3IEBA
IEFMV0FZU19JTkxJTkUgdm9pZCBTbG90VmlzaXRvcjo6YXBwZW5kSGlkZGVuU2xvd0ltcGwoSlND
ZWxsKiBjZWxsLCBEZXBlbmRlbmN5IGRlCiB0ZW1wbGF0ZTx0eXBlbmFtZSBDb250YWluZXJUeXBl
PgogQUxXQVlTX0lOTElORSB2b2lkIFNsb3RWaXNpdG9yOjpzZXRNYXJrZWRBbmRBcHBlbmRUb01h
cmtTdGFjayhDb250YWluZXJUeXBlJiBjb250YWluZXIsIEpTQ2VsbCogY2VsbCwgRGVwZW5kZW5j
eSBkZXBlbmRlbmN5KQogewotICAgIGlmIChjb250YWluZXIudGVzdEFuZFNldE1hcmtlZChjZWxs
LCBkZXBlbmRlbmN5LCBUcmFuc2FjdGlvbkFib3J0TGlrZWxpaG9vZDo6VW5saWtlbHkpKQorICAg
IGlmIChjb250YWluZXIudGVzdEFuZFNldE1hcmtlZChjZWxsLCBkZXBlbmRlbmN5KSkKICAgICAg
ICAgcmV0dXJuOwogICAgIAogICAgIEFTU0VSVChjZWxsLT5zdHJ1Y3R1cmUoKSk7CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV1RGL3d0Zi9BdG9taWNzLmggYi9Tb3VyY2UvV1RGL3d0Zi9BdG9taWNzLmgK
aW5kZXggOTkwN2IzMmJmNGU0YmMzNDA2YTA1YjM5ODBhYzdkM2MwNjNjZmQyOC4uYTVkNmY1Zjgw
NzBmZWE2ZDhiN2UzN2MzMjU3ZGM2NDkxY2Q2YTUwZSAxMDA2NDQKLS0tIGEvU291cmNlL1dURi93
dGYvQXRvbWljcy5oCisrKyBiL1NvdXJjZS9XVEYvd3RmL0F0b21pY3MuaApAQCAtNDQsMTEgKzQ0
LDYgQEAgQUxXQVlTX0lOTElORSBib29sIGhhc0ZlbmNlKHN0ZDo6bWVtb3J5X29yZGVyIG9yZGVy
KQogewogICAgIHJldHVybiBvcmRlciAhPSBzdGQ6Om1lbW9yeV9vcmRlcl9yZWxheGVkOwogfQot
Ci1lbnVtIGNsYXNzIFRyYW5zYWN0aW9uQWJvcnRMaWtlbGlob29kIHsKLSAgICBVbmxpa2VseSwK
LSAgICBMaWtlbHkKLX07CiAgICAgCiAvLyBBdG9taWMgd3JhcHMgYXJvdW5kIHN0ZDo6YXRvbWlj
IHdpdGggdGhlIHNvbGUgcHVycG9zZSBvZiBtYWtpbmcgdGhlIGNvbXBhcmVfZXhjaGFuZ2UKIC8v
IG9wZXJhdGlvbnMgbm90IGFsdGVyIHRoZSBleHBlY3RlZCB2YWx1ZS4gVGhpcyBpcyBtb3JlIGlu
IGxpbmUgd2l0aCBob3cgd2UgdHlwaWNhbGx5CkBAIC01OCw3ICs1Myw4IEBAIGVudW0gY2xhc3Mg
VHJhbnNhY3Rpb25BYm9ydExpa2VsaWhvb2QgewogLy8gaW5pdGlhbGl6ZWQgYXQgY29tcGlsZSB0
aW1lLgogCiB0ZW1wbGF0ZTx0eXBlbmFtZSBUPgotc3RydWN0IEF0b21pYyB7CitjbGFzcyBBdG9t
aWMgeworcHVibGljOgogICAgIC8vIERvbid0IHBhc3MgYSBub24tZGVmYXVsdCB2YWx1ZSBmb3Ig
dGhlIG9yZGVyIHBhcmFtZXRlciB1bmxlc3MgeW91IHJlYWxseSBrbm93CiAgICAgLy8gd2hhdCB5
b3UgYXJlIGRvaW5nIGFuZCBoYXZlIHRob3VnaHQgYWJvdXQgaXQgdmVyeSBoYXJkLiBUaGUgY29z
dCBvZiBzZXFfY3N0CiAgICAgLy8gaXMgdXN1YWxseSBub3QgaGlnaCBlbm91Z2ggdG8ganVzdGlm
eSB0aGUgcmlzay4KQEAgLTExNiw2MiArMTEyLDI0IEBAIHN0cnVjdCBBdG9taWMgewogICAgIEFM
V0FZU19JTkxJTkUgVCBleGNoYW5nZVhvcihVIG9wZXJhbmQsIHN0ZDo6bWVtb3J5X29yZGVyIG9y
ZGVyID0gc3RkOjptZW1vcnlfb3JkZXJfc2VxX2NzdCkgeyByZXR1cm4gdmFsdWUuZmV0Y2hfeG9y
KG9wZXJhbmQsIG9yZGVyKTsgfQogICAgIAogICAgIEFMV0FZU19JTkxJTkUgVCBleGNoYW5nZShU
IG5ld1ZhbHVlLCBzdGQ6Om1lbW9yeV9vcmRlciBvcmRlciA9IHN0ZDo6bWVtb3J5X29yZGVyX3Nl
cV9jc3QpIHsgcmV0dXJuIHZhbHVlLmV4Y2hhbmdlKG5ld1ZhbHVlLCBvcmRlcik7IH0KLSAgICAK
LSNpZiBIQVZFKExMX1NDKQotICAgIEFMV0FZU19JTkxJTkUgVCBsb2FkTGluayhzdGQ6Om1lbW9y
eV9vcmRlciBvcmRlciA9IHN0ZDo6bWVtb3J5X29yZGVyX3NlcV9jc3QpOwotICAgIEFMV0FZU19J
TkxJTkUgYm9vbCBzdG9yZUNvbmQoVCB2YWx1ZSwgIHN0ZDo6bWVtb3J5X29yZGVyIG9yZGVyID0g
c3RkOjptZW1vcnlfb3JkZXJfc2VxX2NzdCk7Ci0jZW5kaWYgLy8gSEFWRShMTF9TQykKLQotICAg
IEFMV0FZU19JTkxJTkUgVCBwcmVwYXJlKHN0ZDo6bWVtb3J5X29yZGVyIG9yZGVyID0gc3RkOjpt
ZW1vcnlfb3JkZXJfc2VxX2NzdCkKLSAgICB7Ci0jaWYgSEFWRShMTF9TQykKLSAgICAgICAgcmV0
dXJuIGxvYWRMaW5rKG9yZGVyKTsKLSNlbHNlCi0gICAgICAgIFVOVVNFRF9QQVJBTShvcmRlcik7
Ci0gICAgICAgIHJldHVybiBsb2FkKHN0ZDo6bWVtb3J5X29yZGVyX3JlbGF4ZWQpOwotI2VuZGlm
Ci0gICAgfQotICAgIAotI2lmIEhBVkUoTExfU0MpCi0gICAgc3RhdGljIGNvbnN0IGJvb2wgcHJl
cGFyZUlzRmFzdCA9IGZhbHNlOwotI2Vsc2UKLSAgICBzdGF0aWMgY29uc3QgYm9vbCBwcmVwYXJl
SXNGYXN0ID0gdHJ1ZTsKLSNlbmRpZgotCi0gICAgQUxXQVlTX0lOTElORSBib29sIGF0dGVtcHQo
VCBvbGRWYWx1ZSwgVCBuZXdWYWx1ZSwgc3RkOjptZW1vcnlfb3JkZXIgb3JkZXIgPSBzdGQ6Om1l
bW9yeV9vcmRlcl9zZXFfY3N0KQotICAgIHsKLSNpZiBIQVZFKExMX1NDKQotICAgICAgICBVTlVT
RURfUEFSQU0ob2xkVmFsdWUpOwotICAgICAgICByZXR1cm4gc3RvcmVDb25kKG5ld1ZhbHVlLCBv
cmRlcik7Ci0jZWxzZQotICAgICAgICByZXR1cm4gY29tcGFyZUV4Y2hhbmdlV2VhayhvbGRWYWx1
ZSwgbmV3VmFsdWUsIG9yZGVyKTsKLSNlbmRpZgotICAgIH0KIAogICAgIHRlbXBsYXRlPHR5cGVu
YW1lIEZ1bmM+Ci0gICAgQUxXQVlTX0lOTElORSBib29sIHRyYW5zYWN0aW9uKGNvbnN0IEZ1bmMm
IGZ1bmMsIHN0ZDo6bWVtb3J5X29yZGVyIG9yZGVyID0gc3RkOjptZW1vcnlfb3JkZXJfc2VxX2Nz
dCwgVHJhbnNhY3Rpb25BYm9ydExpa2VsaWhvb2QgYWJvcnRMaWtlbGlob29kID0gVHJhbnNhY3Rp
b25BYm9ydExpa2VsaWhvb2Q6Okxpa2VseSkKKyAgICBBTFdBWVNfSU5MSU5FIGJvb2wgdHJhbnNh
Y3Rpb24oY29uc3QgRnVuYyYgZnVuYywgc3RkOjptZW1vcnlfb3JkZXIgb3JkZXIgPSBzdGQ6Om1l
bW9yeV9vcmRlcl9zZXFfY3N0KQogICAgIHsKLSAgICAgICAgLy8gSWYgcHJlcGFyaW5nIGlzIG5v
dCBmYXN0IHRoZW4gd2Ugd2FudCB0byBza2lwIHRoZSBsb29wIHdoZW4gZnVuYyB3b3VsZCBmYWls
LgotICAgICAgICBpZiAoIXByZXBhcmVJc0Zhc3QgJiYgYWJvcnRMaWtlbGlob29kID09IFRyYW5z
YWN0aW9uQWJvcnRMaWtlbGlob29kOjpMaWtlbHkpIHsKLSAgICAgICAgICAgIFQgb2xkVmFsdWUg
PSBsb2FkKHN0ZDo6bWVtb3J5X29yZGVyX3JlbGF4ZWQpOwotICAgICAgICAgICAgLy8gTm90ZTog
bWFueSBmdW5jcyB3aWxsIGNvbnN0YW50LWZvbGQgdG8gdHJ1ZSwgd2hpY2ggd2lsbCBraWxsIGFs
bCBvZiB0aGlzIGNvZGUuCi0gICAgICAgICAgICBpZiAoIWZ1bmMob2xkVmFsdWUpKQotICAgICAg
ICAgICAgICAgIHJldHVybiBmYWxzZTsKLSAgICAgICAgfQogICAgICAgICBmb3IgKDs7KSB7Ci0g
ICAgICAgICAgICBUIG9sZFZhbHVlID0gcHJlcGFyZShvcmRlcik7CisgICAgICAgICAgICBUIG9s
ZFZhbHVlID0gbG9hZChzdGQ6Om1lbW9yeV9vcmRlcl9yZWxheGVkKTsKICAgICAgICAgICAgIFQg
bmV3VmFsdWUgPSBvbGRWYWx1ZTsKICAgICAgICAgICAgIGlmICghZnVuYyhuZXdWYWx1ZSkpCiAg
ICAgICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwotICAgICAgICAgICAgaWYgKGF0dGVtcHQob2xk
VmFsdWUsIG5ld1ZhbHVlLCBvcmRlcikpCisgICAgICAgICAgICBpZiAoY29tcGFyZUV4Y2hhbmdl
V2VhayhvbGRWYWx1ZSwgbmV3VmFsdWUsIG9yZGVyKSkKICAgICAgICAgICAgICAgICByZXR1cm4g
dHJ1ZTsKICAgICAgICAgfQogICAgIH0KIAogICAgIHRlbXBsYXRlPHR5cGVuYW1lIEZ1bmM+Ci0g
ICAgQUxXQVlTX0lOTElORSBib29sIHRyYW5zYWN0aW9uUmVsYXhlZChjb25zdCBGdW5jJiBmdW5j
LCBUcmFuc2FjdGlvbkFib3J0TGlrZWxpaG9vZCBhYm9ydExpa2VsaWhvb2QgPSBUcmFuc2FjdGlv
bkFib3J0TGlrZWxpaG9vZDo6TGlrZWx5KQorICAgIEFMV0FZU19JTkxJTkUgYm9vbCB0cmFuc2Fj
dGlvblJlbGF4ZWQoY29uc3QgRnVuYyYgZnVuYykKICAgICB7Ci0gICAgICAgIHJldHVybiB0cmFu
c2FjdGlvbihmdW5jLCBzdGQ6Om1lbW9yeV9vcmRlcl9yZWxheGVkLCBhYm9ydExpa2VsaWhvb2Qp
OworICAgICAgICByZXR1cm4gdHJhbnNhY3Rpb24oZnVuYywgc3RkOjptZW1vcnlfb3JkZXJfcmVs
YXhlZCk7CiAgICAgfQogCiAgICAgQXRvbWljKCkgPSBkZWZhdWx0OwpAQCAtMTgzLDcxICsxNDEs
NiBAQCBzdHJ1Y3QgQXRvbWljIHsKICAgICBzdGQ6OmF0b21pYzxUPiB2YWx1ZTsKIH07CiAKLSNp
ZiBDUFUoQVJNNjQpICYmIEhBVkUoTExfU0MpCi0jZGVmaW5lIERFRklORV9MTF9TQyh3aWR0aCwg
bW9kaWZpZXIsIHN1ZmZpeCkgICBcCi0gICAgdGVtcGxhdGU8PiBcCi0gICAgQUxXQVlTX0lOTElO
RSB1aW50ICMjIHdpZHRoICMjIF90IEF0b21pYzx1aW50ICMjIHdpZHRoICMjX3Q+Ojpsb2FkTGlu
ayhzdGQ6Om1lbW9yeV9vcmRlciBvcmRlcikgXAotICAgIHsgXAotICAgICAgICBpbnQgIyMgd2lk
dGggIyMgX3QgcmVzdWx0OyBcCi0gICAgICAgIGlmIChoYXNGZW5jZShvcmRlcikpIHsgXAotICAg
ICAgICAgICAgYXNtIHZvbGF0aWxlICggXAotICAgICAgICAgICAgICAgICJsZGF4ciIgc3VmZml4
ICIgJSIgbW9kaWZpZXIgIjAsIFslMV0iIFwKLSAgICAgICAgICAgICAgICA6ICI9ciIocmVzdWx0
KSBcCi0gICAgICAgICAgICAgICAgOiAiciIodGhpcykgXAotICAgICAgICAgICAgICAgIDogIm1l
bW9yeSIpOyBcCi0gICAgICAgIH0gZWxzZSB7IFwKLSAgICAgICAgICAgIGFzbSB2b2xhdGlsZSAo
IFwKLSAgICAgICAgICAgICAgICAibGR4ciIgc3VmZml4ICIgJSIgbW9kaWZpZXIgIjAsIFslMV0i
IFwKLSAgICAgICAgICAgICAgICA6ICI9ciIocmVzdWx0KSBcCi0gICAgICAgICAgICAgICAgOiAi
ciIodGhpcykgXAotICAgICAgICAgICAgICAgIDogIm1lbW9yeSIpOyBcCi0gICAgICAgIH0gXAot
ICAgICAgICByZXR1cm4gcmVzdWx0OyBcCi0gICAgfSBcCi0gICAgXAotICAgIHRlbXBsYXRlPD4g
XAotICAgIEFMV0FZU19JTkxJTkUgYm9vbCBBdG9taWM8dWludCAjIyB3aWR0aCAjIyBfdD46OnN0
b3JlQ29uZCh1aW50ICMjIHdpZHRoICMjIF90IHZhbHVlLCBzdGQ6Om1lbW9yeV9vcmRlciBvcmRl
cikgXAotICAgIHsgXAotICAgICAgICBib29sIHJlc3VsdDsgXAotICAgICAgICBpZiAoaGFzRmVu
Y2Uob3JkZXIpKSB7IFwKLSAgICAgICAgICAgIGFzbSB2b2xhdGlsZSAoIFwKLSAgICAgICAgICAg
ICAgICAic3RseHIiIHN1ZmZpeCAiICV3MCwgJSIgbW9kaWZpZXIgIjEsIFslMl0iIFwKLSAgICAg
ICAgICAgICAgICA6ICI9JnIiKHJlc3VsdCkgXAotICAgICAgICAgICAgICAgIDogInIiKHZhbHVl
KSwgInIiKHRoaXMpIFwKLSAgICAgICAgICAgICAgICA6ICJtZW1vcnkiKTsgXAotICAgICAgICB9
IGVsc2UgeyBcCi0gICAgICAgICAgICBhc20gdm9sYXRpbGUgKCBcCi0gICAgICAgICAgICAgICAg
InN0eHIiIHN1ZmZpeCAiICV3MCwgJSIgbW9kaWZpZXIgIjEsIFslMl0iIFwKLSAgICAgICAgICAg
ICAgICA6ICI9JnIiKHJlc3VsdCkgXAotICAgICAgICAgICAgICAgIDogInIiKHZhbHVlKSwgInIi
KHRoaXMpIFwKLSAgICAgICAgICAgICAgICA6ICJtZW1vcnkiKTsgXAotICAgICAgICB9IFwKLSAg
ICAgICAgcmV0dXJuICFyZXN1bHQ7IFwKLSAgICB9IFwKLSAgICBcCi0gICAgdGVtcGxhdGU8PiBc
Ci0gICAgQUxXQVlTX0lOTElORSBpbnQgIyMgd2lkdGggIyMgX3QgQXRvbWljPGludCAjIyB3aWR0
aCAjIyBfdD46OmxvYWRMaW5rKHN0ZDo6bWVtb3J5X29yZGVyIG9yZGVyKSBcCi0gICAgeyBcCi0g
ICAgICAgIHJldHVybiBiaXR3aXNlX2Nhc3Q8QXRvbWljPHVpbnQgIyMgd2lkdGggIyMgX3Q+Kj4o
dGhpcyktPmxvYWRMaW5rKG9yZGVyKTsgXAotICAgIH0gXAotICAgIFwKLSAgICB0ZW1wbGF0ZTw+
IFwKLSAgICBBTFdBWVNfSU5MSU5FIGJvb2wgQXRvbWljPGludCAjIyB3aWR0aCAjIyBfdD46OnN0
b3JlQ29uZChpbnQgIyMgd2lkdGggIyMgX3QgdmFsdWUsIHN0ZDo6bWVtb3J5X29yZGVyIG9yZGVy
KSBcCi0gICAgeyBcCi0gICAgICAgIHJldHVybiBiaXR3aXNlX2Nhc3Q8QXRvbWljPHVpbnQgIyMg
d2lkdGggIyMgX3Q+Kj4odGhpcyktPnN0b3JlQ29uZCh2YWx1ZSwgb3JkZXIpOyBcCi0gICAgfQot
Ci1ERUZJTkVfTExfU0MoOCwgInciLCAiYiIpCi1ERUZJTkVfTExfU0MoMTYsICJ3IiwgImgiKQot
REVGSU5FX0xMX1NDKDMyLCAidyIsICIiKQotREVGSU5FX0xMX1NDKDY0LCAiIiwgIiIpCi0jaWYg
T1MoREFSV0lOKQotREVGSU5FX0xMX1NDKHB0ciwgIiIsICIiKQotI2VuZGlmCi0KLSN1bmRlZiBE
RUZJTkVfTExfU0MKLSNlbmRpZiAvLyBDUFUoQVJNNjQpICYmIEhBVkUoTExfU0MpCi0KIHRlbXBs
YXRlPHR5cGVuYW1lIFQ+CiBpbmxpbmUgVCBhdG9taWNMb2FkKFQqIGxvY2F0aW9uLCBzdGQ6Om1l
bW9yeV9vcmRlciBvcmRlciA9IHN0ZDo6bWVtb3J5X29yZGVyX3NlcV9jc3QpCiB7CkBAIC01NDcs
NyArNDQwLDYgQEAgQUxXQVlTX0lOTElORSBUJiBlbnN1cmVQb2ludGVyKEF0b21pYzxUKj4mIHBv
aW50ZXIsIGNvbnN0IEZ1bmMmIGZ1bmMpCiB1c2luZyBXVEY6OkF0b21pYzsKIHVzaW5nIFdURjo6
RGVwZW5kZW5jeTsKIHVzaW5nIFdURjo6RGVwZW5kZW5jeVdpdGg7Ci11c2luZyBXVEY6OlRyYW5z
YWN0aW9uQWJvcnRMaWtlbGlob29kOwogdXNpbmcgV1RGOjpjb25zdW1lOwogdXNpbmcgV1RGOjpk
ZXBlbmRlbmN5OwogdXNpbmcgV1RGOjpkZXBlbmRlbmN5V2l0aDsKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XVEYvd3RmL0JpdG1hcC5oIGIvU291cmNlL1dURi93dGYvQml0bWFwLmgKaW5kZXggOThkN2Nm
N2MxYjgxZmI5YWFlODUzN2E2ODk3OTMxOTcwZjA1MzdlOS4uMWU3NTg1ZGQwZjVkNGU2MTNkMTEx
ZjYyNDk1OTM4OTllMjdmNWNjYyAxMDA2NDQKLS0tIGEvU291cmNlL1dURi93dGYvQml0bWFwLmgK
KysrIGIvU291cmNlL1dURi93dGYvQml0bWFwLmgKQEAgLTQ1LDggKzQ1LDggQEAgcHVibGljOgog
ICAgIHZvaWQgc2V0KHNpemVfdCwgYm9vbCk7CiAgICAgYm9vbCB0ZXN0QW5kU2V0KHNpemVfdCk7
CiAgICAgYm9vbCB0ZXN0QW5kQ2xlYXIoc2l6ZV90KTsKLSAgICBib29sIGNvbmN1cnJlbnRUZXN0
QW5kU2V0KHNpemVfdCwgRGVwZW5kZW5jeSA9IG51bGxEZXBlbmRlbmN5KCksIFRyYW5zYWN0aW9u
QWJvcnRMaWtlbGlob29kID0gVHJhbnNhY3Rpb25BYm9ydExpa2VsaWhvb2Q6Okxpa2VseSk7Ci0g
ICAgYm9vbCBjb25jdXJyZW50VGVzdEFuZENsZWFyKHNpemVfdCwgRGVwZW5kZW5jeSA9IG51bGxE
ZXBlbmRlbmN5KCksIFRyYW5zYWN0aW9uQWJvcnRMaWtlbGlob29kID0gVHJhbnNhY3Rpb25BYm9y
dExpa2VsaWhvb2Q6Okxpa2VseSk7CisgICAgYm9vbCBjb25jdXJyZW50VGVzdEFuZFNldChzaXpl
X3QsIERlcGVuZGVuY3kgPSBudWxsRGVwZW5kZW5jeSgpKTsKKyAgICBib29sIGNvbmN1cnJlbnRU
ZXN0QW5kQ2xlYXIoc2l6ZV90LCBEZXBlbmRlbmN5ID0gbnVsbERlcGVuZGVuY3koKSk7CiAgICAg
c2l6ZV90IG5leHRQb3NzaWJseVVuc2V0KHNpemVfdCkgY29uc3Q7CiAgICAgdm9pZCBjbGVhcihz
aXplX3QpOwogICAgIHZvaWQgY2xlYXJBbGwoKTsKQEAgLTE3Nyw3ICsxNzcsNyBAQCBpbmxpbmUg
Ym9vbCBCaXRtYXA8Yml0bWFwU2l6ZSwgV29yZFR5cGU+Ojp0ZXN0QW5kQ2xlYXIoc2l6ZV90IG4p
CiB9CiAKIHRlbXBsYXRlPHNpemVfdCBiaXRtYXBTaXplLCB0eXBlbmFtZSBXb3JkVHlwZT4KLUFM
V0FZU19JTkxJTkUgYm9vbCBCaXRtYXA8Yml0bWFwU2l6ZSwgV29yZFR5cGU+Ojpjb25jdXJyZW50
VGVzdEFuZFNldChzaXplX3QgbiwgRGVwZW5kZW5jeSBkZXBlbmRlbmN5LCBUcmFuc2FjdGlvbkFi
b3J0TGlrZWxpaG9vZCBhYm9ydExpa2VsaWhvb2QpCitBTFdBWVNfSU5MSU5FIGJvb2wgQml0bWFw
PGJpdG1hcFNpemUsIFdvcmRUeXBlPjo6Y29uY3VycmVudFRlc3RBbmRTZXQoc2l6ZV90IG4sIERl
cGVuZGVuY3kgZGVwZW5kZW5jeSkKIHsKICAgICBXb3JkVHlwZSBtYXNrID0gb25lIDw8IChuICUg
d29yZFNpemUpOwogICAgIHNpemVfdCBpbmRleCA9IG4gLyB3b3JkU2l6ZTsKQEAgLTE4OSwxMiAr
MTg5LDExIEBAIEFMV0FZU19JTkxJTkUgYm9vbCBCaXRtYXA8Yml0bWFwU2l6ZSwgV29yZFR5cGU+
Ojpjb25jdXJyZW50VGVzdEFuZFNldChzaXplX3QgbiwKICAgICAgICAgICAgIAogICAgICAgICAg
ICAgdmFsdWUgfD0gbWFzazsKICAgICAgICAgICAgIHJldHVybiB0cnVlOwotICAgICAgICB9LAot
ICAgICAgICBhYm9ydExpa2VsaWhvb2QpOworICAgICAgICB9KTsKIH0KIAogdGVtcGxhdGU8c2l6
ZV90IGJpdG1hcFNpemUsIHR5cGVuYW1lIFdvcmRUeXBlPgotQUxXQVlTX0lOTElORSBib29sIEJp
dG1hcDxiaXRtYXBTaXplLCBXb3JkVHlwZT46OmNvbmN1cnJlbnRUZXN0QW5kQ2xlYXIoc2l6ZV90
IG4sIERlcGVuZGVuY3kgZGVwZW5kZW5jeSwgVHJhbnNhY3Rpb25BYm9ydExpa2VsaWhvb2QgYWJv
cnRMaWtlbGlob29kKQorQUxXQVlTX0lOTElORSBib29sIEJpdG1hcDxiaXRtYXBTaXplLCBXb3Jk
VHlwZT46OmNvbmN1cnJlbnRUZXN0QW5kQ2xlYXIoc2l6ZV90IG4sIERlcGVuZGVuY3kgZGVwZW5k
ZW5jeSkKIHsKICAgICBXb3JkVHlwZSBtYXNrID0gb25lIDw8IChuICUgd29yZFNpemUpOwogICAg
IHNpemVfdCBpbmRleCA9IG4gLyB3b3JkU2l6ZTsKQEAgLTIwNiw4ICsyMDUsNyBAQCBBTFdBWVNf
SU5MSU5FIGJvb2wgQml0bWFwPGJpdG1hcFNpemUsIFdvcmRUeXBlPjo6Y29uY3VycmVudFRlc3RB
bmRDbGVhcihzaXplX3QgbgogICAgICAgICAgICAgCiAgICAgICAgICAgICB2YWx1ZSAmPSB+bWFz
azsKICAgICAgICAgICAgIHJldHVybiB0cnVlOwotICAgICAgICB9LAotICAgICAgICBhYm9ydExp
a2VsaWhvb2QpOworICAgICAgICB9KTsKIH0KIAogdGVtcGxhdGU8c2l6ZV90IGJpdG1hcFNpemUs
IHR5cGVuYW1lIFdvcmRUeXBlPgpkaWZmIC0tZ2l0IGEvU291cmNlL1dURi93dGYvTG9ja0FsZ29y
aXRobS5oIGIvU291cmNlL1dURi93dGYvTG9ja0FsZ29yaXRobS5oCmluZGV4IGUzNDdkMjAzYjA4
ZjFjMmFiMjExZjA4M2U2MjdhNDQ5ODVlOTljMjIuLjI1YTM3YTRmMmM4NTVlNjQyM2Y2YWJlOGM3
ZGRiMzU4YWYwZjg4OGUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XVEYvd3RmL0xvY2tBbGdvcml0aG0u
aAorKysgYi9Tb3VyY2UvV1RGL3d0Zi9Mb2NrQWxnb3JpdGhtLmgKQEAgLTU3LDggKzU3LDcgQEAg
cHVibGljOgogICAgICAgICAgICAgICAgIHZhbHVlIHw9IGlzSGVsZEJpdDsKICAgICAgICAgICAg
ICAgICByZXR1cm4gdHJ1ZTsKICAgICAgICAgICAgIH0sCi0gICAgICAgICAgICBzdGQ6Om1lbW9y
eV9vcmRlcl9hY3F1aXJlLAotICAgICAgICAgICAgVHJhbnNhY3Rpb25BYm9ydExpa2VsaWhvb2Q6
OlVubGlrZWx5KTsKKyAgICAgICAgICAgIHN0ZDo6bWVtb3J5X29yZGVyX2FjcXVpcmUpOwogICAg
IH0KICAgICAKICAgICBzdGF0aWMgdm9pZCBsb2NrKEF0b21pYzxMb2NrVHlwZT4mIGxvY2spCkBA
IC05Miw4ICs5MSw3IEBAIHB1YmxpYzoKICAgICAgICAgICAgICAgICB2YWx1ZSAmPSB+aXNIZWxk
Qml0OwogICAgICAgICAgICAgICAgIHJldHVybiB0cnVlOwogICAgICAgICAgICAgfSwKLSAgICAg
ICAgICAgIHN0ZDo6bWVtb3J5X29yZGVyX3JlbGF4ZWQsCi0gICAgICAgICAgICBUcmFuc2FjdGlv
bkFib3J0TGlrZWxpaG9vZDo6VW5saWtlbHkpOworICAgICAgICAgICAgc3RkOjptZW1vcnlfb3Jk
ZXJfcmVsYXhlZCk7CiAgICAgfQogICAgIAogICAgIHN0YXRpYyB2b2lkIHVubG9jayhBdG9taWM8
TG9ja1R5cGU+JiBsb2NrKQo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>307797</attachid>
            <date>2017-04-21 14:07:34 -0700</date>
            <delta_ts>2017-04-21 14:08:19 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-171141-20170421170732.patch</filename>
            <type>text/plain</type>
            <size>14112</size>
            <attacher name="Keith Miller">keith_miller</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjE1NjIzCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCA3
ZTY4MDM4MjBiZGFjZDZkNTk2OTM5YzNjY2E5ZWFmNDA3NmVlNTM5Li5mMmM2YmM5MjRkNTBlODgz
NDY0OTEzMWY3Mzc4ZWUyNDc0NzlmZjUxIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
NSArMSwyMyBAQAogMjAxNy0wNC0yMSAgS2VpdGggTWlsbGVyICA8a2VpdGhfbWlsbGVyQGFwcGxl
LmNvbT4KIAorICAgICAgICBSZW1vdmUgTEwvU0MgZnJvbSBBdG9taWNzCisgICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNzExNDEKKworICAgICAgICBSZXZp
ZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBBZGRpaW5nIGxvYWQgbGluayBhbmQg
c3RvcmUgY29uZGl0aW9uYWxseSB3YXMgbm90IGFuIGFjdHVhbCBwcm9ncmVzc2lvbgorICAgICAg
ICBhbmQgdGhlIGV4aXN0aW5nIGNvZGUgaXMgY2F1c2luZyBwcm9ibGVtcyBmb3IgdXNlcnMgb2Yg
QXRvbWljcy4gU28gbGV0J3MKKyAgICAgICAgZ2V0IHJpZCBvZiBpdC4KKworICAgICAgICAqIGhl
YXAvTGFyZ2VBbGxvY2F0aW9uLmg6CisgICAgICAgIChKU0M6OkxhcmdlQWxsb2NhdGlvbjo6dGVz
dEFuZFNldE1hcmtlZCk6CisgICAgICAgICogaGVhcC9NYXJrZWRCbG9jay5oOgorICAgICAgICAo
SlNDOjpNYXJrZWRCbG9jazo6dGVzdEFuZFNldE1hcmtlZCk6CisgICAgICAgICogaGVhcC9TbG90
VmlzaXRvci5jcHA6CisgICAgICAgIChKU0M6OlNsb3RWaXNpdG9yOjpzZXRNYXJrZWRBbmRBcHBl
bmRUb01hcmtTdGFjayk6CisKKzIwMTctMDQtMjEgIEtlaXRoIE1pbGxlciAgPGtlaXRoX21pbGxl
ckBhcHBsZS5jb20+CisKICAgICAgICAgVW5yZXZpZXdlZCwgZml4IENsb29wIGJ1aWxkLgogCiAg
ICAgICAgICogaml0L0V4ZWN1dGFibGVBbGxvY2F0b3IuaDoKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
VEYvQ2hhbmdlTG9nIGIvU291cmNlL1dURi9DaGFuZ2VMb2cKaW5kZXggYmExNTMxNGEwNmZjNTk4
OWNmYmEzZDY4MzQ1MjRmYThmOTNkNDZjZC4uOWZjZWY2MDYyOGM1Yjc0YzRmYjE2YTgyOTg2ZDdj
ZmRiNGNkNTQ0MiAxMDA2NDQKLS0tIGEvU291cmNlL1dURi9DaGFuZ2VMb2cKKysrIGIvU291cmNl
L1dURi9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyOCBAQAorMjAxNy0wNC0yMSAgS2VpdGggTWlsbGVy
ICA8a2VpdGhfbWlsbGVyQGFwcGxlLmNvbT4KKworICAgICAgICBSZW1vdmUgTEwvU0MgZnJvbSBB
dG9taWNzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0x
NzExNDEKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBB
ZGRpaW5nIGxvYWQgbGluayBhbmQgc3RvcmUgY29uZGl0aW9uYWxseSB3YXMgbm90IGFuIGFjdHVh
bCBwcm9ncmVzc2lvbgorICAgICAgICBhbmQgdGhlIGV4aXN0aW5nIGNvZGUgaXMgY2F1c2luZyBw
cm9ibGVtcyBmb3IgdXNlcnMgb2YgQXRvbWljcy4gU28gbGV0J3MKKyAgICAgICAgZ2V0IHJpZCBv
ZiBpdC4KKworICAgICAgICAqIHd0Zi9BdG9taWNzLmg6CisgICAgICAgIChXVEY6Omhhc0ZlbmNl
KToKKyAgICAgICAgKFdURjo6QXRvbWljOjpleGNoYW5nZSk6CisgICAgICAgIChXVEY6OkF0b21p
Yzo6dHJhbnNhY3Rpb24pOgorICAgICAgICAoV1RGOjpBdG9taWM6OnRyYW5zYWN0aW9uUmVsYXhl
ZCk6CisgICAgICAgIChXVEY6OkF0b21pYzo6cHJlcGFyZSk6IERlbGV0ZWQuCisgICAgICAgIChX
VEY6OkF0b21pYzo6YXR0ZW1wdCk6IERlbGV0ZWQuCisgICAgICAgICogd3RmL0JpdG1hcC5oOgor
ICAgICAgICAoV1RGOjpXb3JkVHlwZT46OmNvbmN1cnJlbnRUZXN0QW5kU2V0KToKKyAgICAgICAg
KFdURjo6V29yZFR5cGU+Ojpjb25jdXJyZW50VGVzdEFuZENsZWFyKToKKyAgICAgICAgKiB3dGYv
TG9ja0FsZ29yaXRobS5oOgorICAgICAgICAoV1RGOjpMb2NrQWxnb3JpdGhtOjpsb2NrRmFzdCk6
CisgICAgICAgIChXVEY6OkxvY2tBbGdvcml0aG06OnVubG9ja0Zhc3QpOgorCiAyMDE3LTA0LTIw
ICBLZWl0aCBNaWxsZXIgIDxrZWl0aF9taWxsZXJAYXBwbGUuY29tPgogCiAgICAgICAgIEFkZCBz
aWduYWxpbmcgQVBJCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaGVhcC9MYXJn
ZUFsbG9jYXRpb24uaCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9oZWFwL0xhcmdlQWxsb2NhdGlv
bi5oCmluZGV4IGRmZDE4ZjNlNGQ0MjkyYjc3ZDgwNmEwN2MwMTNlN2FlYmEzZTIwYTAuLjliYzNh
OGI5ZDg4NTZmNjI3MDZiY2IxMWM0NzdhMzAxZmZjOWJhYzkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9oZWFwL0xhcmdlQWxsb2NhdGlvbi5oCisrKyBiL1NvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9oZWFwL0xhcmdlQWxsb2NhdGlvbi5oCkBAIC0xMjEsNyArMTIxLDcgQEAgcHVibGlj
OgogICAgICAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgICAgIHJldHVybiBtX2lzTWFya2VkLmNv
bXBhcmVFeGNoYW5nZVN0cm9uZyhmYWxzZSwgdHJ1ZSk7CiAgICAgfQotICAgIEFMV0FZU19JTkxJ
TkUgYm9vbCB0ZXN0QW5kU2V0TWFya2VkKEhlYXBDZWxsKiwgRGVwZW5kZW5jeSwgVHJhbnNhY3Rp
b25BYm9ydExpa2VsaWhvb2QgPSBUcmFuc2FjdGlvbkFib3J0TGlrZWxpaG9vZDo6TGlrZWx5KSB7
IHJldHVybiB0ZXN0QW5kU2V0TWFya2VkKCk7IH0KKyAgICBBTFdBWVNfSU5MSU5FIGJvb2wgdGVz
dEFuZFNldE1hcmtlZChIZWFwQ2VsbCosIERlcGVuZGVuY3kpIHsgcmV0dXJuIHRlc3RBbmRTZXRN
YXJrZWQoKTsgfQogICAgIHZvaWQgY2xlYXJNYXJrZWQoKSB7IG1faXNNYXJrZWQuc3RvcmUoZmFs
c2UpOyB9CiAgICAgCiAgICAgdm9pZCBub3RlTWFya2VkKCkgeyB9CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvaGVhcC9NYXJrZWRCbG9jay5oIGIvU291cmNlL0phdmFTY3JpcHRD
b3JlL2hlYXAvTWFya2VkQmxvY2suaAppbmRleCBiNGQ0MWNiMzAxMmU1MTk1OWI4YTgxY2M3YWFl
ZDE5ZGFhYmI3NjViLi44MjFhZGY4MDU1MGYxMWJkNjkzOTQ3YzJjNzFhZDViYmFjNTFhZGE0IDEw
MDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaGVhcC9NYXJrZWRCbG9jay5oCisrKyBi
L1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9oZWFwL01hcmtlZEJsb2NrLmgKQEAgLTI1OSw3ICsyNTks
NyBAQCBwdWJsaWM6CiAgICAgYm9vbCBpc01hcmtlZChIZWFwVmVyc2lvbiBtYXJraW5nVmVyc2lv
biwgY29uc3Qgdm9pZCopOwogICAgIGJvb2wgaXNNYXJrZWRDb25jdXJyZW50bHkoSGVhcFZlcnNp
b24gbWFya2luZ1ZlcnNpb24sIGNvbnN0IHZvaWQqKTsKICAgICBib29sIGlzTWFya2VkKGNvbnN0
IHZvaWQqLCBEZXBlbmRlbmN5KTsKLSAgICBib29sIHRlc3RBbmRTZXRNYXJrZWQoY29uc3Qgdm9p
ZCosIERlcGVuZGVuY3ksIFRyYW5zYWN0aW9uQWJvcnRMaWtlbGlob29kID0gVHJhbnNhY3Rpb25B
Ym9ydExpa2VsaWhvb2Q6Okxpa2VseSk7CisgICAgYm9vbCB0ZXN0QW5kU2V0TWFya2VkKGNvbnN0
IHZvaWQqLCBEZXBlbmRlbmN5KTsKICAgICAgICAgCiAgICAgYm9vbCBpc0F0b20oY29uc3Qgdm9p
ZCopOwogICAgIHZvaWQgY2xlYXJNYXJrZWQoY29uc3Qgdm9pZCopOwpAQCAtNTM1LDEwICs1MzUs
MTAgQEAgaW5saW5lIGJvb2wgTWFya2VkQmxvY2s6OmlzTWFya2VkKGNvbnN0IHZvaWQqIHAsIERl
cGVuZGVuY3kgZGVwZW5kZW5jeSkKICAgICByZXR1cm4gbV9tYXJrcy5nZXQoYXRvbU51bWJlcihw
KSwgZGVwZW5kZW5jeSk7CiB9CiAKLWlubGluZSBib29sIE1hcmtlZEJsb2NrOjp0ZXN0QW5kU2V0
TWFya2VkKGNvbnN0IHZvaWQqIHAsIERlcGVuZGVuY3kgZGVwZW5kZW5jeSwgVHJhbnNhY3Rpb25B
Ym9ydExpa2VsaWhvb2QgYWJvcnRMaWtlbGlob29kKQoraW5saW5lIGJvb2wgTWFya2VkQmxvY2s6
OnRlc3RBbmRTZXRNYXJrZWQoY29uc3Qgdm9pZCogcCwgRGVwZW5kZW5jeSBkZXBlbmRlbmN5KQog
ewogICAgIGFzc2VydE1hcmtzTm90U3RhbGUoKTsKLSAgICByZXR1cm4gbV9tYXJrcy5jb25jdXJy
ZW50VGVzdEFuZFNldChhdG9tTnVtYmVyKHApLCBkZXBlbmRlbmN5LCBhYm9ydExpa2VsaWhvb2Qp
OworICAgIHJldHVybiBtX21hcmtzLmNvbmN1cnJlbnRUZXN0QW5kU2V0KGF0b21OdW1iZXIocCks
IGRlcGVuZGVuY3kpOwogfQogCiBpbmxpbmUgYm9vbCBNYXJrZWRCbG9jazo6SGFuZGxlOjppc05l
d2x5QWxsb2NhdGVkKGNvbnN0IHZvaWQqIHApCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvaGVhcC9TbG90VmlzaXRvci5jcHAgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaGVhcC9T
bG90VmlzaXRvci5jcHAKaW5kZXggNjJmZTk4ZmE3MmE4MThhNTRkNGI2OTZjYTcxMjgyZjZkOWIz
ZmJlNS4uZjdiOGViNzQxOTJjNGZjOTY1M2U3YzM5MDNjYjNjMDM2NmNjYzFmMiAxMDA2NDQKLS0t
IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2hlYXAvU2xvdFZpc2l0b3IuY3BwCisrKyBiL1NvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9oZWFwL1Nsb3RWaXNpdG9yLmNwcApAQCAtMjUyLDcgKzI1Miw3IEBA
IEFMV0FZU19JTkxJTkUgdm9pZCBTbG90VmlzaXRvcjo6YXBwZW5kSGlkZGVuU2xvd0ltcGwoSlND
ZWxsKiBjZWxsLCBEZXBlbmRlbmN5IGRlCiB0ZW1wbGF0ZTx0eXBlbmFtZSBDb250YWluZXJUeXBl
PgogQUxXQVlTX0lOTElORSB2b2lkIFNsb3RWaXNpdG9yOjpzZXRNYXJrZWRBbmRBcHBlbmRUb01h
cmtTdGFjayhDb250YWluZXJUeXBlJiBjb250YWluZXIsIEpTQ2VsbCogY2VsbCwgRGVwZW5kZW5j
eSBkZXBlbmRlbmN5KQogewotICAgIGlmIChjb250YWluZXIudGVzdEFuZFNldE1hcmtlZChjZWxs
LCBkZXBlbmRlbmN5LCBUcmFuc2FjdGlvbkFib3J0TGlrZWxpaG9vZDo6VW5saWtlbHkpKQorICAg
IGlmIChjb250YWluZXIudGVzdEFuZFNldE1hcmtlZChjZWxsLCBkZXBlbmRlbmN5KSkKICAgICAg
ICAgcmV0dXJuOwogICAgIAogICAgIEFTU0VSVChjZWxsLT5zdHJ1Y3R1cmUoKSk7CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV1RGL3d0Zi9BdG9taWNzLmggYi9Tb3VyY2UvV1RGL3d0Zi9BdG9taWNzLmgK
aW5kZXggOTkwN2IzMmJmNGU0YmMzNDA2YTA1YjM5ODBhYzdkM2MwNjNjZmQyOC4uNWIyNmIyYTUw
NDYzNjJmODFjOWVhODkwODQ2ZWM2YTgzNTcyYTkzZiAxMDA2NDQKLS0tIGEvU291cmNlL1dURi93
dGYvQXRvbWljcy5oCisrKyBiL1NvdXJjZS9XVEYvd3RmL0F0b21pY3MuaApAQCAtNDQsMTEgKzQ0
LDYgQEAgQUxXQVlTX0lOTElORSBib29sIGhhc0ZlbmNlKHN0ZDo6bWVtb3J5X29yZGVyIG9yZGVy
KQogewogICAgIHJldHVybiBvcmRlciAhPSBzdGQ6Om1lbW9yeV9vcmRlcl9yZWxheGVkOwogfQot
Ci1lbnVtIGNsYXNzIFRyYW5zYWN0aW9uQWJvcnRMaWtlbGlob29kIHsKLSAgICBVbmxpa2VseSwK
LSAgICBMaWtlbHkKLX07CiAgICAgCiAvLyBBdG9taWMgd3JhcHMgYXJvdW5kIHN0ZDo6YXRvbWlj
IHdpdGggdGhlIHNvbGUgcHVycG9zZSBvZiBtYWtpbmcgdGhlIGNvbXBhcmVfZXhjaGFuZ2UKIC8v
IG9wZXJhdGlvbnMgbm90IGFsdGVyIHRoZSBleHBlY3RlZCB2YWx1ZS4gVGhpcyBpcyBtb3JlIGlu
IGxpbmUgd2l0aCBob3cgd2UgdHlwaWNhbGx5CkBAIC0xMTYsNjIgKzExMSwyNCBAQCBzdHJ1Y3Qg
QXRvbWljIHsKICAgICBBTFdBWVNfSU5MSU5FIFQgZXhjaGFuZ2VYb3IoVSBvcGVyYW5kLCBzdGQ6
Om1lbW9yeV9vcmRlciBvcmRlciA9IHN0ZDo6bWVtb3J5X29yZGVyX3NlcV9jc3QpIHsgcmV0dXJu
IHZhbHVlLmZldGNoX3hvcihvcGVyYW5kLCBvcmRlcik7IH0KICAgICAKICAgICBBTFdBWVNfSU5M
SU5FIFQgZXhjaGFuZ2UoVCBuZXdWYWx1ZSwgc3RkOjptZW1vcnlfb3JkZXIgb3JkZXIgPSBzdGQ6
Om1lbW9yeV9vcmRlcl9zZXFfY3N0KSB7IHJldHVybiB2YWx1ZS5leGNoYW5nZShuZXdWYWx1ZSwg
b3JkZXIpOyB9Ci0gICAgCi0jaWYgSEFWRShMTF9TQykKLSAgICBBTFdBWVNfSU5MSU5FIFQgbG9h
ZExpbmsoc3RkOjptZW1vcnlfb3JkZXIgb3JkZXIgPSBzdGQ6Om1lbW9yeV9vcmRlcl9zZXFfY3N0
KTsKLSAgICBBTFdBWVNfSU5MSU5FIGJvb2wgc3RvcmVDb25kKFQgdmFsdWUsICBzdGQ6Om1lbW9y
eV9vcmRlciBvcmRlciA9IHN0ZDo6bWVtb3J5X29yZGVyX3NlcV9jc3QpOwotI2VuZGlmIC8vIEhB
VkUoTExfU0MpCi0KLSAgICBBTFdBWVNfSU5MSU5FIFQgcHJlcGFyZShzdGQ6Om1lbW9yeV9vcmRl
ciBvcmRlciA9IHN0ZDo6bWVtb3J5X29yZGVyX3NlcV9jc3QpCi0gICAgewotI2lmIEhBVkUoTExf
U0MpCi0gICAgICAgIHJldHVybiBsb2FkTGluayhvcmRlcik7Ci0jZWxzZQotICAgICAgICBVTlVT
RURfUEFSQU0ob3JkZXIpOwotICAgICAgICByZXR1cm4gbG9hZChzdGQ6Om1lbW9yeV9vcmRlcl9y
ZWxheGVkKTsKLSNlbmRpZgotICAgIH0KLSAgICAKLSNpZiBIQVZFKExMX1NDKQotICAgIHN0YXRp
YyBjb25zdCBib29sIHByZXBhcmVJc0Zhc3QgPSBmYWxzZTsKLSNlbHNlCi0gICAgc3RhdGljIGNv
bnN0IGJvb2wgcHJlcGFyZUlzRmFzdCA9IHRydWU7Ci0jZW5kaWYKLQotICAgIEFMV0FZU19JTkxJ
TkUgYm9vbCBhdHRlbXB0KFQgb2xkVmFsdWUsIFQgbmV3VmFsdWUsIHN0ZDo6bWVtb3J5X29yZGVy
IG9yZGVyID0gc3RkOjptZW1vcnlfb3JkZXJfc2VxX2NzdCkKLSAgICB7Ci0jaWYgSEFWRShMTF9T
QykKLSAgICAgICAgVU5VU0VEX1BBUkFNKG9sZFZhbHVlKTsKLSAgICAgICAgcmV0dXJuIHN0b3Jl
Q29uZChuZXdWYWx1ZSwgb3JkZXIpOwotI2Vsc2UKLSAgICAgICAgcmV0dXJuIGNvbXBhcmVFeGNo
YW5nZVdlYWsob2xkVmFsdWUsIG5ld1ZhbHVlLCBvcmRlcik7Ci0jZW5kaWYKLSAgICB9CiAKICAg
ICB0ZW1wbGF0ZTx0eXBlbmFtZSBGdW5jPgotICAgIEFMV0FZU19JTkxJTkUgYm9vbCB0cmFuc2Fj
dGlvbihjb25zdCBGdW5jJiBmdW5jLCBzdGQ6Om1lbW9yeV9vcmRlciBvcmRlciA9IHN0ZDo6bWVt
b3J5X29yZGVyX3NlcV9jc3QsIFRyYW5zYWN0aW9uQWJvcnRMaWtlbGlob29kIGFib3J0TGlrZWxp
aG9vZCA9IFRyYW5zYWN0aW9uQWJvcnRMaWtlbGlob29kOjpMaWtlbHkpCisgICAgQUxXQVlTX0lO
TElORSBib29sIHRyYW5zYWN0aW9uKGNvbnN0IEZ1bmMmIGZ1bmMsIHN0ZDo6bWVtb3J5X29yZGVy
IG9yZGVyID0gc3RkOjptZW1vcnlfb3JkZXJfc2VxX2NzdCkKICAgICB7Ci0gICAgICAgIC8vIElm
IHByZXBhcmluZyBpcyBub3QgZmFzdCB0aGVuIHdlIHdhbnQgdG8gc2tpcCB0aGUgbG9vcCB3aGVu
IGZ1bmMgd291bGQgZmFpbC4KLSAgICAgICAgaWYgKCFwcmVwYXJlSXNGYXN0ICYmIGFib3J0TGlr
ZWxpaG9vZCA9PSBUcmFuc2FjdGlvbkFib3J0TGlrZWxpaG9vZDo6TGlrZWx5KSB7Ci0gICAgICAg
ICAgICBUIG9sZFZhbHVlID0gbG9hZChzdGQ6Om1lbW9yeV9vcmRlcl9yZWxheGVkKTsKLSAgICAg
ICAgICAgIC8vIE5vdGU6IG1hbnkgZnVuY3Mgd2lsbCBjb25zdGFudC1mb2xkIHRvIHRydWUsIHdo
aWNoIHdpbGwga2lsbCBhbGwgb2YgdGhpcyBjb2RlLgotICAgICAgICAgICAgaWYgKCFmdW5jKG9s
ZFZhbHVlKSkKLSAgICAgICAgICAgICAgICByZXR1cm4gZmFsc2U7Ci0gICAgICAgIH0KICAgICAg
ICAgZm9yICg7OykgewotICAgICAgICAgICAgVCBvbGRWYWx1ZSA9IHByZXBhcmUob3JkZXIpOwor
ICAgICAgICAgICAgVCBvbGRWYWx1ZSA9IGxvYWQoc3RkOjptZW1vcnlfb3JkZXJfcmVsYXhlZCk7
CiAgICAgICAgICAgICBUIG5ld1ZhbHVlID0gb2xkVmFsdWU7CiAgICAgICAgICAgICBpZiAoIWZ1
bmMobmV3VmFsdWUpKQogICAgICAgICAgICAgICAgIHJldHVybiBmYWxzZTsKLSAgICAgICAgICAg
IGlmIChhdHRlbXB0KG9sZFZhbHVlLCBuZXdWYWx1ZSwgb3JkZXIpKQorICAgICAgICAgICAgaWYg
KGNvbXBhcmVFeGNoYW5nZVdlYWsob2xkVmFsdWUsIG5ld1ZhbHVlLCBvcmRlcikpCiAgICAgICAg
ICAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgICAgIH0KICAgICB9CiAKICAgICB0ZW1wbGF0ZTx0
eXBlbmFtZSBGdW5jPgotICAgIEFMV0FZU19JTkxJTkUgYm9vbCB0cmFuc2FjdGlvblJlbGF4ZWQo
Y29uc3QgRnVuYyYgZnVuYywgVHJhbnNhY3Rpb25BYm9ydExpa2VsaWhvb2QgYWJvcnRMaWtlbGlo
b29kID0gVHJhbnNhY3Rpb25BYm9ydExpa2VsaWhvb2Q6Okxpa2VseSkKKyAgICBBTFdBWVNfSU5M
SU5FIGJvb2wgdHJhbnNhY3Rpb25SZWxheGVkKGNvbnN0IEZ1bmMmIGZ1bmMpCiAgICAgewotICAg
ICAgICByZXR1cm4gdHJhbnNhY3Rpb24oZnVuYywgc3RkOjptZW1vcnlfb3JkZXJfcmVsYXhlZCwg
YWJvcnRMaWtlbGlob29kKTsKKyAgICAgICAgcmV0dXJuIHRyYW5zYWN0aW9uKGZ1bmMsIHN0ZDo6
bWVtb3J5X29yZGVyX3JlbGF4ZWQpOwogICAgIH0KIAogICAgIEF0b21pYygpID0gZGVmYXVsdDsK
QEAgLTE4Myw3MSArMTQwLDYgQEAgc3RydWN0IEF0b21pYyB7CiAgICAgc3RkOjphdG9taWM8VD4g
dmFsdWU7CiB9OwogCi0jaWYgQ1BVKEFSTTY0KSAmJiBIQVZFKExMX1NDKQotI2RlZmluZSBERUZJ
TkVfTExfU0Mod2lkdGgsIG1vZGlmaWVyLCBzdWZmaXgpICAgXAotICAgIHRlbXBsYXRlPD4gXAot
ICAgIEFMV0FZU19JTkxJTkUgdWludCAjIyB3aWR0aCAjIyBfdCBBdG9taWM8dWludCAjIyB3aWR0
aCAjI190Pjo6bG9hZExpbmsoc3RkOjptZW1vcnlfb3JkZXIgb3JkZXIpIFwKLSAgICB7IFwKLSAg
ICAgICAgaW50ICMjIHdpZHRoICMjIF90IHJlc3VsdDsgXAotICAgICAgICBpZiAoaGFzRmVuY2Uo
b3JkZXIpKSB7IFwKLSAgICAgICAgICAgIGFzbSB2b2xhdGlsZSAoIFwKLSAgICAgICAgICAgICAg
ICAibGRheHIiIHN1ZmZpeCAiICUiIG1vZGlmaWVyICIwLCBbJTFdIiBcCi0gICAgICAgICAgICAg
ICAgOiAiPXIiKHJlc3VsdCkgXAotICAgICAgICAgICAgICAgIDogInIiKHRoaXMpIFwKLSAgICAg
ICAgICAgICAgICA6ICJtZW1vcnkiKTsgXAotICAgICAgICB9IGVsc2UgeyBcCi0gICAgICAgICAg
ICBhc20gdm9sYXRpbGUgKCBcCi0gICAgICAgICAgICAgICAgImxkeHIiIHN1ZmZpeCAiICUiIG1v
ZGlmaWVyICIwLCBbJTFdIiBcCi0gICAgICAgICAgICAgICAgOiAiPXIiKHJlc3VsdCkgXAotICAg
ICAgICAgICAgICAgIDogInIiKHRoaXMpIFwKLSAgICAgICAgICAgICAgICA6ICJtZW1vcnkiKTsg
XAotICAgICAgICB9IFwKLSAgICAgICAgcmV0dXJuIHJlc3VsdDsgXAotICAgIH0gXAotICAgIFwK
LSAgICB0ZW1wbGF0ZTw+IFwKLSAgICBBTFdBWVNfSU5MSU5FIGJvb2wgQXRvbWljPHVpbnQgIyMg
d2lkdGggIyMgX3Q+OjpzdG9yZUNvbmQodWludCAjIyB3aWR0aCAjIyBfdCB2YWx1ZSwgc3RkOjpt
ZW1vcnlfb3JkZXIgb3JkZXIpIFwKLSAgICB7IFwKLSAgICAgICAgYm9vbCByZXN1bHQ7IFwKLSAg
ICAgICAgaWYgKGhhc0ZlbmNlKG9yZGVyKSkgeyBcCi0gICAgICAgICAgICBhc20gdm9sYXRpbGUg
KCBcCi0gICAgICAgICAgICAgICAgInN0bHhyIiBzdWZmaXggIiAldzAsICUiIG1vZGlmaWVyICIx
LCBbJTJdIiBcCi0gICAgICAgICAgICAgICAgOiAiPSZyIihyZXN1bHQpIFwKLSAgICAgICAgICAg
ICAgICA6ICJyIih2YWx1ZSksICJyIih0aGlzKSBcCi0gICAgICAgICAgICAgICAgOiAibWVtb3J5
Iik7IFwKLSAgICAgICAgfSBlbHNlIHsgXAotICAgICAgICAgICAgYXNtIHZvbGF0aWxlICggXAot
ICAgICAgICAgICAgICAgICJzdHhyIiBzdWZmaXggIiAldzAsICUiIG1vZGlmaWVyICIxLCBbJTJd
IiBcCi0gICAgICAgICAgICAgICAgOiAiPSZyIihyZXN1bHQpIFwKLSAgICAgICAgICAgICAgICA6
ICJyIih2YWx1ZSksICJyIih0aGlzKSBcCi0gICAgICAgICAgICAgICAgOiAibWVtb3J5Iik7IFwK
LSAgICAgICAgfSBcCi0gICAgICAgIHJldHVybiAhcmVzdWx0OyBcCi0gICAgfSBcCi0gICAgXAot
ICAgIHRlbXBsYXRlPD4gXAotICAgIEFMV0FZU19JTkxJTkUgaW50ICMjIHdpZHRoICMjIF90IEF0
b21pYzxpbnQgIyMgd2lkdGggIyMgX3Q+Ojpsb2FkTGluayhzdGQ6Om1lbW9yeV9vcmRlciBvcmRl
cikgXAotICAgIHsgXAotICAgICAgICByZXR1cm4gYml0d2lzZV9jYXN0PEF0b21pYzx1aW50ICMj
IHdpZHRoICMjIF90Pio+KHRoaXMpLT5sb2FkTGluayhvcmRlcik7IFwKLSAgICB9IFwKLSAgICBc
Ci0gICAgdGVtcGxhdGU8PiBcCi0gICAgQUxXQVlTX0lOTElORSBib29sIEF0b21pYzxpbnQgIyMg
d2lkdGggIyMgX3Q+OjpzdG9yZUNvbmQoaW50ICMjIHdpZHRoICMjIF90IHZhbHVlLCBzdGQ6Om1l
bW9yeV9vcmRlciBvcmRlcikgXAotICAgIHsgXAotICAgICAgICByZXR1cm4gYml0d2lzZV9jYXN0
PEF0b21pYzx1aW50ICMjIHdpZHRoICMjIF90Pio+KHRoaXMpLT5zdG9yZUNvbmQodmFsdWUsIG9y
ZGVyKTsgXAotICAgIH0KLQotREVGSU5FX0xMX1NDKDgsICJ3IiwgImIiKQotREVGSU5FX0xMX1ND
KDE2LCAidyIsICJoIikKLURFRklORV9MTF9TQygzMiwgInciLCAiIikKLURFRklORV9MTF9TQyg2
NCwgIiIsICIiKQotI2lmIE9TKERBUldJTikKLURFRklORV9MTF9TQyhwdHIsICIiLCAiIikKLSNl
bmRpZgotCi0jdW5kZWYgREVGSU5FX0xMX1NDCi0jZW5kaWYgLy8gQ1BVKEFSTTY0KSAmJiBIQVZF
KExMX1NDKQotCiB0ZW1wbGF0ZTx0eXBlbmFtZSBUPgogaW5saW5lIFQgYXRvbWljTG9hZChUKiBs
b2NhdGlvbiwgc3RkOjptZW1vcnlfb3JkZXIgb3JkZXIgPSBzdGQ6Om1lbW9yeV9vcmRlcl9zZXFf
Y3N0KQogewpAQCAtNTQ3LDcgKzQzOSw2IEBAIEFMV0FZU19JTkxJTkUgVCYgZW5zdXJlUG9pbnRl
cihBdG9taWM8VCo+JiBwb2ludGVyLCBjb25zdCBGdW5jJiBmdW5jKQogdXNpbmcgV1RGOjpBdG9t
aWM7CiB1c2luZyBXVEY6OkRlcGVuZGVuY3k7CiB1c2luZyBXVEY6OkRlcGVuZGVuY3lXaXRoOwot
dXNpbmcgV1RGOjpUcmFuc2FjdGlvbkFib3J0TGlrZWxpaG9vZDsKIHVzaW5nIFdURjo6Y29uc3Vt
ZTsKIHVzaW5nIFdURjo6ZGVwZW5kZW5jeTsKIHVzaW5nIFdURjo6ZGVwZW5kZW5jeVdpdGg7CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV1RGL3d0Zi9CaXRtYXAuaCBiL1NvdXJjZS9XVEYvd3RmL0JpdG1h
cC5oCmluZGV4IDk4ZDdjZjdjMWI4MWZiOWFhZTg1MzdhNjg5NzkzMTk3MGYwNTM3ZTkuLjFlNzU4
NWRkMGY1ZDRlNjEzZDExMWY2MjQ5NTkzODk5ZTI3ZjVjY2MgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
VEYvd3RmL0JpdG1hcC5oCisrKyBiL1NvdXJjZS9XVEYvd3RmL0JpdG1hcC5oCkBAIC00NSw4ICs0
NSw4IEBAIHB1YmxpYzoKICAgICB2b2lkIHNldChzaXplX3QsIGJvb2wpOwogICAgIGJvb2wgdGVz
dEFuZFNldChzaXplX3QpOwogICAgIGJvb2wgdGVzdEFuZENsZWFyKHNpemVfdCk7Ci0gICAgYm9v
bCBjb25jdXJyZW50VGVzdEFuZFNldChzaXplX3QsIERlcGVuZGVuY3kgPSBudWxsRGVwZW5kZW5j
eSgpLCBUcmFuc2FjdGlvbkFib3J0TGlrZWxpaG9vZCA9IFRyYW5zYWN0aW9uQWJvcnRMaWtlbGlo
b29kOjpMaWtlbHkpOwotICAgIGJvb2wgY29uY3VycmVudFRlc3RBbmRDbGVhcihzaXplX3QsIERl
cGVuZGVuY3kgPSBudWxsRGVwZW5kZW5jeSgpLCBUcmFuc2FjdGlvbkFib3J0TGlrZWxpaG9vZCA9
IFRyYW5zYWN0aW9uQWJvcnRMaWtlbGlob29kOjpMaWtlbHkpOworICAgIGJvb2wgY29uY3VycmVu
dFRlc3RBbmRTZXQoc2l6ZV90LCBEZXBlbmRlbmN5ID0gbnVsbERlcGVuZGVuY3koKSk7CisgICAg
Ym9vbCBjb25jdXJyZW50VGVzdEFuZENsZWFyKHNpemVfdCwgRGVwZW5kZW5jeSA9IG51bGxEZXBl
bmRlbmN5KCkpOwogICAgIHNpemVfdCBuZXh0UG9zc2libHlVbnNldChzaXplX3QpIGNvbnN0Owog
ICAgIHZvaWQgY2xlYXIoc2l6ZV90KTsKICAgICB2b2lkIGNsZWFyQWxsKCk7CkBAIC0xNzcsNyAr
MTc3LDcgQEAgaW5saW5lIGJvb2wgQml0bWFwPGJpdG1hcFNpemUsIFdvcmRUeXBlPjo6dGVzdEFu
ZENsZWFyKHNpemVfdCBuKQogfQogCiB0ZW1wbGF0ZTxzaXplX3QgYml0bWFwU2l6ZSwgdHlwZW5h
bWUgV29yZFR5cGU+Ci1BTFdBWVNfSU5MSU5FIGJvb2wgQml0bWFwPGJpdG1hcFNpemUsIFdvcmRU
eXBlPjo6Y29uY3VycmVudFRlc3RBbmRTZXQoc2l6ZV90IG4sIERlcGVuZGVuY3kgZGVwZW5kZW5j
eSwgVHJhbnNhY3Rpb25BYm9ydExpa2VsaWhvb2QgYWJvcnRMaWtlbGlob29kKQorQUxXQVlTX0lO
TElORSBib29sIEJpdG1hcDxiaXRtYXBTaXplLCBXb3JkVHlwZT46OmNvbmN1cnJlbnRUZXN0QW5k
U2V0KHNpemVfdCBuLCBEZXBlbmRlbmN5IGRlcGVuZGVuY3kpCiB7CiAgICAgV29yZFR5cGUgbWFz
ayA9IG9uZSA8PCAobiAlIHdvcmRTaXplKTsKICAgICBzaXplX3QgaW5kZXggPSBuIC8gd29yZFNp
emU7CkBAIC0xODksMTIgKzE4OSwxMSBAQCBBTFdBWVNfSU5MSU5FIGJvb2wgQml0bWFwPGJpdG1h
cFNpemUsIFdvcmRUeXBlPjo6Y29uY3VycmVudFRlc3RBbmRTZXQoc2l6ZV90IG4sCiAgICAgICAg
ICAgICAKICAgICAgICAgICAgIHZhbHVlIHw9IG1hc2s7CiAgICAgICAgICAgICByZXR1cm4gdHJ1
ZTsKLSAgICAgICAgfSwKLSAgICAgICAgYWJvcnRMaWtlbGlob29kKTsKKyAgICAgICAgfSk7CiB9
CiAKIHRlbXBsYXRlPHNpemVfdCBiaXRtYXBTaXplLCB0eXBlbmFtZSBXb3JkVHlwZT4KLUFMV0FZ
U19JTkxJTkUgYm9vbCBCaXRtYXA8Yml0bWFwU2l6ZSwgV29yZFR5cGU+Ojpjb25jdXJyZW50VGVz
dEFuZENsZWFyKHNpemVfdCBuLCBEZXBlbmRlbmN5IGRlcGVuZGVuY3ksIFRyYW5zYWN0aW9uQWJv
cnRMaWtlbGlob29kIGFib3J0TGlrZWxpaG9vZCkKK0FMV0FZU19JTkxJTkUgYm9vbCBCaXRtYXA8
Yml0bWFwU2l6ZSwgV29yZFR5cGU+Ojpjb25jdXJyZW50VGVzdEFuZENsZWFyKHNpemVfdCBuLCBE
ZXBlbmRlbmN5IGRlcGVuZGVuY3kpCiB7CiAgICAgV29yZFR5cGUgbWFzayA9IG9uZSA8PCAobiAl
IHdvcmRTaXplKTsKICAgICBzaXplX3QgaW5kZXggPSBuIC8gd29yZFNpemU7CkBAIC0yMDYsOCAr
MjA1LDcgQEAgQUxXQVlTX0lOTElORSBib29sIEJpdG1hcDxiaXRtYXBTaXplLCBXb3JkVHlwZT46
OmNvbmN1cnJlbnRUZXN0QW5kQ2xlYXIoc2l6ZV90IG4KICAgICAgICAgICAgIAogICAgICAgICAg
ICAgdmFsdWUgJj0gfm1hc2s7CiAgICAgICAgICAgICByZXR1cm4gdHJ1ZTsKLSAgICAgICAgfSwK
LSAgICAgICAgYWJvcnRMaWtlbGlob29kKTsKKyAgICAgICAgfSk7CiB9CiAKIHRlbXBsYXRlPHNp
emVfdCBiaXRtYXBTaXplLCB0eXBlbmFtZSBXb3JkVHlwZT4KZGlmZiAtLWdpdCBhL1NvdXJjZS9X
VEYvd3RmL0xvY2tBbGdvcml0aG0uaCBiL1NvdXJjZS9XVEYvd3RmL0xvY2tBbGdvcml0aG0uaApp
bmRleCBlMzQ3ZDIwM2IwOGYxYzJhYjIxMWYwODNlNjI3YTQ0OTg1ZTk5YzIyLi4yNWEzN2E0ZjJj
ODU1ZTY0MjNmNmFiZThjN2RkYjM1OGFmMGY4ODhlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV1RGL3d0
Zi9Mb2NrQWxnb3JpdGhtLmgKKysrIGIvU291cmNlL1dURi93dGYvTG9ja0FsZ29yaXRobS5oCkBA
IC01Nyw4ICs1Nyw3IEBAIHB1YmxpYzoKICAgICAgICAgICAgICAgICB2YWx1ZSB8PSBpc0hlbGRC
aXQ7CiAgICAgICAgICAgICAgICAgcmV0dXJuIHRydWU7CiAgICAgICAgICAgICB9LAotICAgICAg
ICAgICAgc3RkOjptZW1vcnlfb3JkZXJfYWNxdWlyZSwKLSAgICAgICAgICAgIFRyYW5zYWN0aW9u
QWJvcnRMaWtlbGlob29kOjpVbmxpa2VseSk7CisgICAgICAgICAgICBzdGQ6Om1lbW9yeV9vcmRl
cl9hY3F1aXJlKTsKICAgICB9CiAgICAgCiAgICAgc3RhdGljIHZvaWQgbG9jayhBdG9taWM8TG9j
a1R5cGU+JiBsb2NrKQpAQCAtOTIsOCArOTEsNyBAQCBwdWJsaWM6CiAgICAgICAgICAgICAgICAg
dmFsdWUgJj0gfmlzSGVsZEJpdDsKICAgICAgICAgICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICAg
ICAgICAgIH0sCi0gICAgICAgICAgICBzdGQ6Om1lbW9yeV9vcmRlcl9yZWxheGVkLAotICAgICAg
ICAgICAgVHJhbnNhY3Rpb25BYm9ydExpa2VsaWhvb2Q6OlVubGlrZWx5KTsKKyAgICAgICAgICAg
IHN0ZDo6bWVtb3J5X29yZGVyX3JlbGF4ZWQpOwogICAgIH0KICAgICAKICAgICBzdGF0aWMgdm9p
ZCB1bmxvY2soQXRvbWljPExvY2tUeXBlPiYgbG9jaykK
</data>
<flag name="review"
          id="329028"
          type_id="1"
          status="+"
          setter="saam"
    />
          </attachment>
      

    </bug>

</bugzilla>