<?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>183746</bug_id>
          
          <creation_ts>2018-03-19 10:52:53 -0700</creation_ts>
          <short_desc>FunctionPtr should be passed by value.</short_desc>
          <delta_ts>2018-03-19 13:22:36 -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>JavaScriptCore</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>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Mark Lam">mark.lam</reporter>
          <assigned_to name="Mark Lam">mark.lam</assigned_to>
          <cc>commit-queue</cc>
    
    <cc>fpizlo</cc>
    
    <cc>jfbastien</cc>
    
    <cc>keith_miller</cc>
    
    <cc>msaboff</cc>
    
    <cc>rmorisset</cc>
    
    <cc>saam</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1407390</commentid>
    <comment_count>0</comment_count>
    <who name="Mark Lam">mark.lam</who>
    <bug_when>2018-03-19 10:52:53 -0700</bug_when>
    <thetext>It&apos;s meant to be an encapsulation of a C/C++ function pointer.  There&apos;s no need to pass it by reference.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1407391</commentid>
    <comment_count>1</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2018-03-19 10:53:25 -0700</bug_when>
    <thetext>&lt;rdar://problem/38625311&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1407395</commentid>
    <comment_count>2</comment_count>
      <attachid>336056</attachid>
    <who name="Mark Lam">mark.lam</who>
    <bug_when>2018-03-19 11:02:04 -0700</bug_when>
    <thetext>Created attachment 336056
proposed patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1407397</commentid>
    <comment_count>3</comment_count>
      <attachid>336056</attachid>
    <who name="JF Bastien">jfbastien</who>
    <bug_when>2018-03-19 11:06:38 -0700</bug_when>
    <thetext>Comment on attachment 336056
proposed patch.

View in context: https://bugs.webkit.org/attachment.cgi?id=336056&amp;action=review

r=me with suggested assert.

&gt; Source/JavaScriptCore/assembler/MacroAssemblerCodeRef.h:129
&gt; +static_assert(sizeof(FunctionPtr) == sizeof(void*), &quot;&quot;);

You probably also want std::is_trivially_copyable&lt;FunctionPtr&gt;::value so that passing it by values is just a register thing.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1407429</commentid>
    <comment_count>4</comment_count>
      <attachid>336069</attachid>
    <who name="Mark Lam">mark.lam</who>
    <bug_when>2018-03-19 12:45:01 -0700</bug_when>
    <thetext>Created attachment 336069
patch for landing.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1407436</commentid>
    <comment_count>5</comment_count>
      <attachid>336069</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2018-03-19 13:22:35 -0700</bug_when>
    <thetext>Comment on attachment 336069
patch for landing.

Clearing flags on attachment: 336069

Committed r229709: &lt;https://trac.webkit.org/changeset/229709&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1407437</commentid>
    <comment_count>6</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2018-03-19 13:22:36 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>336056</attachid>
            <date>2018-03-19 11:02:04 -0700</date>
            <delta_ts>2018-03-19 12:45:01 -0700</delta_ts>
            <desc>proposed patch.</desc>
            <filename>bug-183746.patch</filename>
            <type>text/plain</type>
            <size>11294</size>
            <attacher name="Mark Lam">mark.lam</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291
cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwkocmV2aXNpb24gMjI5NzA2KQorKysgU291cmNl
L0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDM1IEBA
CisyMDE4LTAzLTE5ICBNYXJrIExhbSAgPG1hcmsubGFtQGFwcGxlLmNvbT4KKworICAgICAgICBG
dW5jdGlvblB0ciBzaG91bGQgYmUgcGFzc2VkIGJ5IHZhbHVlLgorICAgICAgICBodHRwczovL2J1
Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTgzNzQ2CisgICAgICAgIDxyZGFyOi8vcHJv
YmxlbS8zODYyNTMxMT4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKwor
ICAgICAgICBJdCdzIG1lYW50IHRvIGJlIGFuIGVuY2Fwc3VsYXRpb24gb2YgYSBDL0MrKyBmdW5j
dGlvbiBwb2ludGVyLiAgVGhlcmUgYXJlIGNhc2VzCisgICAgICAgIHdoZXJlIHdlIHVzZSBpdCB0
byBwYXNzIEpJVCBjb21waWxlZCBjb2RlIChlLmcuIHRoZSBWTSB0aHVua3Mvc3R1YnMpLCBidXQg
dGhleSBhcmUKKyAgICAgICAgdHJlYXRlZCBhcyBpZiB0aGV5IGFyZSBDL0MrKyBmdW5jdGlvbnMu
CisKKyAgICAgICAgUmVnYXJkbGVzcywgdGhlcmUncyBubyBuZWVkIHRvIHBhc3MgaXQgYnkgcmVm
ZXJlbmNlLgorCisgICAgICAgICogYXNzZW1ibGVyL01hY3JvQXNzZW1ibGVyQ29kZVJlZi5oOgor
ICAgICAgICAqIGRmZy9ERkdKSVRDb21waWxlci5oOgorICAgICAgICAoSlNDOjpERkc6OkpJVENv
bXBpbGVyOjphcHBlbmRDYWxsKToKKyAgICAgICAgKiBkZmcvREZHU3BlY3VsYXRpdmVKSVQuaDoK
KyAgICAgICAgKEpTQzo6REZHOjpTcGVjdWxhdGl2ZUpJVDo6YXBwZW5kQ2FsbCk6CisgICAgICAg
IChKU0M6OkRGRzo6U3BlY3VsYXRpdmVKSVQ6OmFwcGVuZENhbGxXaXRoQ2FsbEZyYW1lUm9sbGJh
Y2tPbkV4Y2VwdGlvbik6CisgICAgICAgIChKU0M6OkRGRzo6U3BlY3VsYXRpdmVKSVQ6OmFwcGVu
ZENhbGxXaXRoQ2FsbEZyYW1lUm9sbGJhY2tPbkV4Y2VwdGlvblNldFJlc3VsdCk6CisgICAgICAg
IChKU0M6OkRGRzo6U3BlY3VsYXRpdmVKSVQ6OmFwcGVuZENhbGxTZXRSZXN1bHQpOgorICAgICAg
ICAqIGppdC9KSVQuaDoKKyAgICAgICAgKEpTQzo6SklUOjphcHBlbmRDYWxsKToKKyAgICAgICAg
KEpTQzo6SklUOjphcHBlbmRDYWxsV2l0aFNsb3dQYXRoUmV0dXJuVHlwZSk6CisgICAgICAgICog
aml0L0pJVElubGluZXMuaDoKKyAgICAgICAgKEpTQzo6SklUOjphcHBlbmRDYWxsV2l0aEV4Y2Vw
dGlvbkNoZWNrKToKKyAgICAgICAgKEpTQzo6SklUOjphcHBlbmRDYWxsV2l0aEV4Y2VwdGlvbkNo
ZWNrQW5kU2xvd1BhdGhSZXR1cm5UeXBlKToKKyAgICAgICAgKEpTQzo6SklUOjphcHBlbmRDYWxs
V2l0aENhbGxGcmFtZVJvbGxiYWNrT25FeGNlcHRpb24pOgorICAgICAgICAoSlNDOjpKSVQ6OmFw
cGVuZENhbGxXaXRoRXhjZXB0aW9uQ2hlY2tTZXRKU1ZhbHVlUmVzdWx0KToKKyAgICAgICAgKEpT
Qzo6SklUOjphcHBlbmRDYWxsV2l0aEV4Y2VwdGlvbkNoZWNrU2V0SlNWYWx1ZVJlc3VsdFdpdGhQ
cm9maWxlKToKKwogMjAxOC0wMy0xNSAgUm9zcyBLaXJzbGluZyAgPHJvc3Mua2lyc2xpbmdAc29u
eS5jb20+CiAKICAgICAgICAgRml4IE1TVkMgcnVuLXRpbWUgY2hlY2sgYWZ0ZXIgcjIyOTM5MS4g
CkluZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvYXNzZW1ibGVyL01hY3JvQXNzZW1ibGVyQ29k
ZVJlZi5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9hc3NlbWJsZXIvTWFj
cm9Bc3NlbWJsZXJDb2RlUmVmLmgJKHJldmlzaW9uIDIyOTcwNSkKKysrIFNvdXJjZS9KYXZhU2Ny
aXB0Q29yZS9hc3NlbWJsZXIvTWFjcm9Bc3NlbWJsZXJDb2RlUmVmLmgJKHdvcmtpbmcgY29weSkK
QEAgLTEyNiw2ICsxMjYsOCBAQCBwcml2YXRlOgogICAgIHZvaWQqIG1fdmFsdWUgeyBudWxscHRy
IH07CiB9OwogCitzdGF0aWNfYXNzZXJ0KHNpemVvZihGdW5jdGlvblB0cikgPT0gc2l6ZW9mKHZv
aWQqKSwgIiIpOworCiAvLyBSZXR1cm5BZGRyZXNzUHRyOgogLy8KIC8vIFJldHVybkFkZHJlc3NQ
dHIgc2hvdWxkIGJlIHVzZWQgdG8gd3JhcCByZXR1cm4gYWRkcmVzc2VzIGdlbmVyYXRlZCBieSBw
cm9jZXNzb3IKSW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9kZmcvREZHSklUQ29tcGlsZXIu
aAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENvcmUvZGZnL0RGR0pJVENvbXBpbGVy
LmgJKHJldmlzaW9uIDIyOTcwNSkKKysrIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9kZmcvREZHSklU
Q29tcGlsZXIuaAkod29ya2luZyBjb3B5KQpAQCAtMTU2LDcgKzE1Niw3IEBAIHB1YmxpYzoKICAg
ICB9CiAKICAgICAvLyBBZGQgYSBjYWxsIG91dCBmcm9tIEpJVCBjb2RlLCB3aXRob3V0IGFuIGV4
Y2VwdGlvbiBjaGVjay4KLSAgICBDYWxsIGFwcGVuZENhbGwoY29uc3QgRnVuY3Rpb25QdHImIGZ1
bmN0aW9uKQorICAgIENhbGwgYXBwZW5kQ2FsbChjb25zdCBGdW5jdGlvblB0ciBmdW5jdGlvbikK
ICAgICB7CiAgICAgICAgIENhbGwgZnVuY3Rpb25DYWxsID0gY2FsbChOb1B0clRhZyk7CiAgICAg
ICAgIG1fY2FsbHMuYXBwZW5kKENhbGxMaW5rUmVjb3JkKGZ1bmN0aW9uQ2FsbCwgZnVuY3Rpb24p
KTsKSW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9kZmcvREZHU3BlY3VsYXRpdmVKSVQuaAo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENvcmUvZGZnL0RGR1NwZWN1bGF0aXZlSklU
LmgJKHJldmlzaW9uIDIyOTcwNSkKKysrIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9kZmcvREZHU3Bl
Y3VsYXRpdmVKSVQuaAkod29ya2luZyBjb3B5KQpAQCAtMTAwNywzOSArMTAwNywzOSBAQCBwdWJs
aWM6CiAjZW5kaWYKIAogICAgIC8vIFRoZXNlIG1ldGhvZHMgYWRkIGNhbGwgaW5zdHJ1Y3Rpb25z
LCBvcHRpb25hbGx5IHNldHRpbmcgcmVzdWx0cywgYW5kIG9wdGlvbmFsbHkgcm9sbGluZyBiYWNr
IHRoZSBjYWxsIGZyYW1lIG9uIGFuIGV4Y2VwdGlvbi4KLSAgICBKSVRDb21waWxlcjo6Q2FsbCBh
cHBlbmRDYWxsKGNvbnN0IEZ1bmN0aW9uUHRyJiBmdW5jdGlvbikKKyAgICBKSVRDb21waWxlcjo6
Q2FsbCBhcHBlbmRDYWxsKGNvbnN0IEZ1bmN0aW9uUHRyIGZ1bmN0aW9uKQogICAgIHsKICAgICAg
ICAgcHJlcGFyZUZvckV4dGVybmFsQ2FsbCgpOwogICAgICAgICBtX2ppdC5lbWl0U3RvcmVDb2Rl
T3JpZ2luKG1fY3VycmVudE5vZGUtPm9yaWdpbi5zZW1hbnRpYyk7CiAgICAgICAgIHJldHVybiBt
X2ppdC5hcHBlbmRDYWxsKGZ1bmN0aW9uKTsKICAgICB9Ci0gICAgSklUQ29tcGlsZXI6OkNhbGwg
YXBwZW5kQ2FsbFdpdGhDYWxsRnJhbWVSb2xsYmFja09uRXhjZXB0aW9uKGNvbnN0IEZ1bmN0aW9u
UHRyJiBmdW5jdGlvbikKKyAgICBKSVRDb21waWxlcjo6Q2FsbCBhcHBlbmRDYWxsV2l0aENhbGxG
cmFtZVJvbGxiYWNrT25FeGNlcHRpb24oY29uc3QgRnVuY3Rpb25QdHIgZnVuY3Rpb24pCiAgICAg
ewogICAgICAgICBKSVRDb21waWxlcjo6Q2FsbCBjYWxsID0gYXBwZW5kQ2FsbChmdW5jdGlvbik7
CiAgICAgICAgIG1faml0LmV4Y2VwdGlvbkNoZWNrV2l0aENhbGxGcmFtZVJvbGxiYWNrKCk7CiAg
ICAgICAgIHJldHVybiBjYWxsOwogICAgIH0KLSAgICBKSVRDb21waWxlcjo6Q2FsbCBhcHBlbmRD
YWxsV2l0aENhbGxGcmFtZVJvbGxiYWNrT25FeGNlcHRpb25TZXRSZXN1bHQoY29uc3QgRnVuY3Rp
b25QdHImIGZ1bmN0aW9uLCBHUFJSZWcgcmVzdWx0KQorICAgIEpJVENvbXBpbGVyOjpDYWxsIGFw
cGVuZENhbGxXaXRoQ2FsbEZyYW1lUm9sbGJhY2tPbkV4Y2VwdGlvblNldFJlc3VsdChjb25zdCBG
dW5jdGlvblB0ciBmdW5jdGlvbiwgR1BSUmVnIHJlc3VsdCkKICAgICB7CiAgICAgICAgIEpJVENv
bXBpbGVyOjpDYWxsIGNhbGwgPSBhcHBlbmRDYWxsV2l0aENhbGxGcmFtZVJvbGxiYWNrT25FeGNl
cHRpb24oZnVuY3Rpb24pOwogICAgICAgICBpZiAoKHJlc3VsdCAhPSBJbnZhbGlkR1BSUmVnKSAm
JiAocmVzdWx0ICE9IEdQUkluZm86OnJldHVyblZhbHVlR1BSKSkKICAgICAgICAgICAgIG1faml0
Lm1vdmUoR1BSSW5mbzo6cmV0dXJuVmFsdWVHUFIsIHJlc3VsdCk7CiAgICAgICAgIHJldHVybiBj
YWxsOwogICAgIH0KLSAgICBKSVRDb21waWxlcjo6Q2FsbCBhcHBlbmRDYWxsU2V0UmVzdWx0KGNv
bnN0IEZ1bmN0aW9uUHRyJiBmdW5jdGlvbiwgR1BSUmVnIHJlc3VsdCkKKyAgICBKSVRDb21waWxl
cjo6Q2FsbCBhcHBlbmRDYWxsU2V0UmVzdWx0KGNvbnN0IEZ1bmN0aW9uUHRyIGZ1bmN0aW9uLCBH
UFJSZWcgcmVzdWx0KQogICAgIHsKICAgICAgICAgSklUQ29tcGlsZXI6OkNhbGwgY2FsbCA9IGFw
cGVuZENhbGwoZnVuY3Rpb24pOwogICAgICAgICBpZiAocmVzdWx0ICE9IEludmFsaWRHUFJSZWcp
CiAgICAgICAgICAgICBtX2ppdC5tb3ZlKEdQUkluZm86OnJldHVyblZhbHVlR1BSLCByZXN1bHQp
OwogICAgICAgICByZXR1cm4gY2FsbDsKICAgICB9Ci0gICAgSklUQ29tcGlsZXI6OkNhbGwgYXBw
ZW5kQ2FsbFNldFJlc3VsdChjb25zdCBGdW5jdGlvblB0ciYgZnVuY3Rpb24sIEdQUlJlZyByZXN1
bHQxLCBHUFJSZWcgcmVzdWx0MikKKyAgICBKSVRDb21waWxlcjo6Q2FsbCBhcHBlbmRDYWxsU2V0
UmVzdWx0KGNvbnN0IEZ1bmN0aW9uUHRyIGZ1bmN0aW9uLCBHUFJSZWcgcmVzdWx0MSwgR1BSUmVn
IHJlc3VsdDIpCiAgICAgewogICAgICAgICBKSVRDb21waWxlcjo6Q2FsbCBjYWxsID0gYXBwZW5k
Q2FsbChmdW5jdGlvbik7CiAgICAgICAgIG1faml0LnNldHVwUmVzdWx0cyhyZXN1bHQxLCByZXN1
bHQyKTsKICAgICAgICAgcmV0dXJuIGNhbGw7CiAgICAgfQotICAgIEpJVENvbXBpbGVyOjpDYWxs
IGFwcGVuZENhbGxTZXRSZXN1bHQoY29uc3QgRnVuY3Rpb25QdHImIGZ1bmN0aW9uLCBKU1ZhbHVl
UmVncyByZXN1bHRSZWdzKQorICAgIEpJVENvbXBpbGVyOjpDYWxsIGFwcGVuZENhbGxTZXRSZXN1
bHQoY29uc3QgRnVuY3Rpb25QdHIgZnVuY3Rpb24sIEpTVmFsdWVSZWdzIHJlc3VsdFJlZ3MpCiAg
ICAgewogI2lmIFVTRShKU1ZBTFVFNjQpCiAgICAgICAgIHJldHVybiBhcHBlbmRDYWxsU2V0UmVz
dWx0KGZ1bmN0aW9uLCByZXN1bHRSZWdzLmdwcigpKTsKQEAgLTEwNDgsNyArMTA0OCw3IEBAIHB1
YmxpYzoKICNlbmRpZgogICAgIH0KICNpZiBDUFUoWDg2KQotICAgIEpJVENvbXBpbGVyOjpDYWxs
IGFwcGVuZENhbGxTZXRSZXN1bHQoY29uc3QgRnVuY3Rpb25QdHImIGZ1bmN0aW9uLCBGUFJSZWcg
cmVzdWx0KQorICAgIEpJVENvbXBpbGVyOjpDYWxsIGFwcGVuZENhbGxTZXRSZXN1bHQoY29uc3Qg
RnVuY3Rpb25QdHIgZnVuY3Rpb24sIEZQUlJlZyByZXN1bHQpCiAgICAgewogICAgICAgICBKSVRD
b21waWxlcjo6Q2FsbCBjYWxsID0gYXBwZW5kQ2FsbChmdW5jdGlvbik7CiAgICAgICAgIGlmIChy
ZXN1bHQgIT0gSW52YWxpZEZQUlJlZykgewpAQCAtMTA1OCw3ICsxMDU4LDcgQEAgcHVibGljOgog
ICAgICAgICByZXR1cm4gY2FsbDsKICAgICB9CiAjZWxpZiBDUFUoQVJNKSAmJiAhQ1BVKEFSTV9I
QVJERlApCi0gICAgSklUQ29tcGlsZXI6OkNhbGwgYXBwZW5kQ2FsbFNldFJlc3VsdChjb25zdCBG
dW5jdGlvblB0ciYgZnVuY3Rpb24sIEZQUlJlZyByZXN1bHQpCisgICAgSklUQ29tcGlsZXI6OkNh
bGwgYXBwZW5kQ2FsbFNldFJlc3VsdChjb25zdCBGdW5jdGlvblB0ciBmdW5jdGlvbiwgRlBSUmVn
IHJlc3VsdCkKICAgICB7CiAgICAgICAgIEpJVENvbXBpbGVyOjpDYWxsIGNhbGwgPSBhcHBlbmRD
YWxsKGZ1bmN0aW9uKTsKICAgICAgICAgaWYgKHJlc3VsdCAhPSBJbnZhbGlkRlBSUmVnKQpAQCAt
MTA2Niw3ICsxMDY2LDcgQEAgcHVibGljOgogICAgICAgICByZXR1cm4gY2FsbDsKICAgICB9CiAj
ZWxzZSAvLyBDUFUoWDg2XzY0KSB8fCAoQ1BVKEFSTSkgJiYgQ1BVKEFSTV9IQVJERlApKSB8fCBD
UFUoQVJNNjQpIHx8IENQVShNSVBTKQotICAgIEpJVENvbXBpbGVyOjpDYWxsIGFwcGVuZENhbGxT
ZXRSZXN1bHQoY29uc3QgRnVuY3Rpb25QdHImIGZ1bmN0aW9uLCBGUFJSZWcgcmVzdWx0KQorICAg
IEpJVENvbXBpbGVyOjpDYWxsIGFwcGVuZENhbGxTZXRSZXN1bHQoY29uc3QgRnVuY3Rpb25QdHIg
ZnVuY3Rpb24sIEZQUlJlZyByZXN1bHQpCiAgICAgewogICAgICAgICBKSVRDb21waWxlcjo6Q2Fs
bCBjYWxsID0gYXBwZW5kQ2FsbChmdW5jdGlvbik7CiAgICAgICAgIGlmIChyZXN1bHQgIT0gSW52
YWxpZEZQUlJlZykKSW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9qaXQvSklULmgKPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gU291cmNlL0phdmFTY3JpcHRDb3JlL2ppdC9KSVQuaAkocmV2aXNpb24gMjI5NzA1
KQorKysgU291cmNlL0phdmFTY3JpcHRDb3JlL2ppdC9KSVQuaAkod29ya2luZyBjb3B5KQpAQCAt
MjY3LDcgKzI2Nyw3IEBAIG5hbWVzcGFjZSBKU0MgewogICAgICAgICB2b2lkIHByaXZhdGVDb21w
aWxlUGF0Y2hHZXRBcnJheUxlbmd0aChSZXR1cm5BZGRyZXNzUHRyIHJldHVybkFkZHJlc3MpOwog
CiAgICAgICAgIC8vIEFkZCBhIGNhbGwgb3V0IGZyb20gSklUIGNvZGUsIHdpdGhvdXQgYW4gZXhj
ZXB0aW9uIGNoZWNrLgotICAgICAgICBDYWxsIGFwcGVuZENhbGwoY29uc3QgRnVuY3Rpb25QdHIm
IGZ1bmN0aW9uKQorICAgICAgICBDYWxsIGFwcGVuZENhbGwoY29uc3QgRnVuY3Rpb25QdHIgZnVu
Y3Rpb24pCiAgICAgICAgIHsKICAgICAgICAgICAgIENhbGwgZnVuY3Rpb25DYWxsID0gY2FsbChO
b1B0clRhZyk7CiAgICAgICAgICAgICBtX2NhbGxzLmFwcGVuZChDYWxsUmVjb3JkKGZ1bmN0aW9u
Q2FsbCwgbV9ieXRlY29kZU9mZnNldCwgZnVuY3Rpb24udmFsdWUoKSkpOwpAQCAtMjc1LDcgKzI3
NSw3IEBAIG5hbWVzcGFjZSBKU0MgewogICAgICAgICB9CiAKICNpZiBPUyhXSU5ET1dTKSAmJiBD
UFUoWDg2XzY0KQotICAgICAgICBDYWxsIGFwcGVuZENhbGxXaXRoU2xvd1BhdGhSZXR1cm5UeXBl
KGNvbnN0IEZ1bmN0aW9uUHRyJiBmdW5jdGlvbikKKyAgICAgICAgQ2FsbCBhcHBlbmRDYWxsV2l0
aFNsb3dQYXRoUmV0dXJuVHlwZShjb25zdCBGdW5jdGlvblB0ciBmdW5jdGlvbikKICAgICAgICAg
ewogICAgICAgICAgICAgQ2FsbCBmdW5jdGlvbkNhbGwgPSBjYWxsV2l0aFNsb3dQYXRoUmV0dXJu
VHlwZSgpOwogICAgICAgICAgICAgbV9jYWxscy5hcHBlbmQoQ2FsbFJlY29yZChmdW5jdGlvbkNh
bGwsIG1fYnl0ZWNvZGVPZmZzZXQsIGZ1bmN0aW9uLnZhbHVlKCkpKTsKQEAgLTcwNCwxMyArNzA0
LDEzIEBAIG5hbWVzcGFjZSBKU0MgewogICAgICAgICAgICAgbGlua0FsbFNsb3dDYXNlc0ZvckJ5
dGVjb2RlT2Zmc2V0KG1fc2xvd0Nhc2VzLCBpdGVyLCBtX2J5dGVjb2RlT2Zmc2V0KTsKICAgICAg
ICAgfQogCi0gICAgICAgIE1hY3JvQXNzZW1ibGVyOjpDYWxsIGFwcGVuZENhbGxXaXRoRXhjZXB0
aW9uQ2hlY2soY29uc3QgRnVuY3Rpb25QdHImKTsKKyAgICAgICAgTWFjcm9Bc3NlbWJsZXI6OkNh
bGwgYXBwZW5kQ2FsbFdpdGhFeGNlcHRpb25DaGVjayhjb25zdCBGdW5jdGlvblB0cik7CiAjaWYg
T1MoV0lORE9XUykgJiYgQ1BVKFg4Nl82NCkKLSAgICAgICAgTWFjcm9Bc3NlbWJsZXI6OkNhbGwg
YXBwZW5kQ2FsbFdpdGhFeGNlcHRpb25DaGVja0FuZFNsb3dQYXRoUmV0dXJuVHlwZShjb25zdCBG
dW5jdGlvblB0ciYpOworICAgICAgICBNYWNyb0Fzc2VtYmxlcjo6Q2FsbCBhcHBlbmRDYWxsV2l0
aEV4Y2VwdGlvbkNoZWNrQW5kU2xvd1BhdGhSZXR1cm5UeXBlKGNvbnN0IEZ1bmN0aW9uUHRyKTsK
ICNlbmRpZgotICAgICAgICBNYWNyb0Fzc2VtYmxlcjo6Q2FsbCBhcHBlbmRDYWxsV2l0aENhbGxG
cmFtZVJvbGxiYWNrT25FeGNlcHRpb24oY29uc3QgRnVuY3Rpb25QdHImKTsKLSAgICAgICAgTWFj
cm9Bc3NlbWJsZXI6OkNhbGwgYXBwZW5kQ2FsbFdpdGhFeGNlcHRpb25DaGVja1NldEpTVmFsdWVS
ZXN1bHQoY29uc3QgRnVuY3Rpb25QdHImLCBpbnQpOwotICAgICAgICBNYWNyb0Fzc2VtYmxlcjo6
Q2FsbCBhcHBlbmRDYWxsV2l0aEV4Y2VwdGlvbkNoZWNrU2V0SlNWYWx1ZVJlc3VsdFdpdGhQcm9m
aWxlKGNvbnN0IEZ1bmN0aW9uUHRyJiwgaW50KTsKKyAgICAgICAgTWFjcm9Bc3NlbWJsZXI6OkNh
bGwgYXBwZW5kQ2FsbFdpdGhDYWxsRnJhbWVSb2xsYmFja09uRXhjZXB0aW9uKGNvbnN0IEZ1bmN0
aW9uUHRyKTsKKyAgICAgICAgTWFjcm9Bc3NlbWJsZXI6OkNhbGwgYXBwZW5kQ2FsbFdpdGhFeGNl
cHRpb25DaGVja1NldEpTVmFsdWVSZXN1bHQoY29uc3QgRnVuY3Rpb25QdHIsIGludCk7CisgICAg
ICAgIE1hY3JvQXNzZW1ibGVyOjpDYWxsIGFwcGVuZENhbGxXaXRoRXhjZXB0aW9uQ2hlY2tTZXRK
U1ZhbHVlUmVzdWx0V2l0aFByb2ZpbGUoY29uc3QgRnVuY3Rpb25QdHIsIGludCk7CiAgICAgICAg
IAogICAgICAgICB0ZW1wbGF0ZTx0eXBlbmFtZSBPcGVyYXRpb25UeXBlLCB0eXBlbmFtZS4uLiBB
cmdzPgogICAgICAgICBzdGQ6OmVuYWJsZV9pZl90PEZ1bmN0aW9uVHJhaXRzPE9wZXJhdGlvblR5
cGU+OjpoYXNSZXN1bHQsIE1hY3JvQXNzZW1ibGVyOjpDYWxsPgpJbmRleDogU291cmNlL0phdmFT
Y3JpcHRDb3JlL2ppdC9KSVRJbmxpbmVzLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL0phdmFTY3Jp
cHRDb3JlL2ppdC9KSVRJbmxpbmVzLmgJKHJldmlzaW9uIDIyOTcwNSkKKysrIFNvdXJjZS9KYXZh
U2NyaXB0Q29yZS9qaXQvSklUSW5saW5lcy5oCSh3b3JraW5nIGNvcHkpCkBAIC0xNDksNyArMTQ5
LDcgQEAgQUxXQVlTX0lOTElORSB2b2lkIEpJVDo6dXBkYXRlVG9wQ2FsbEZyYQogICAgIHN0b3Jl
UHRyKGNhbGxGcmFtZVJlZ2lzdGVyLCAmbV92bS0+dG9wQ2FsbEZyYW1lKTsKIH0KIAotQUxXQVlT
X0lOTElORSBNYWNyb0Fzc2VtYmxlcjo6Q2FsbCBKSVQ6OmFwcGVuZENhbGxXaXRoRXhjZXB0aW9u
Q2hlY2soY29uc3QgRnVuY3Rpb25QdHImIGZ1bmN0aW9uKQorQUxXQVlTX0lOTElORSBNYWNyb0Fz
c2VtYmxlcjo6Q2FsbCBKSVQ6OmFwcGVuZENhbGxXaXRoRXhjZXB0aW9uQ2hlY2soY29uc3QgRnVu
Y3Rpb25QdHIgZnVuY3Rpb24pCiB7CiAgICAgdXBkYXRlVG9wQ2FsbEZyYW1lKCk7CiAgICAgTWFj
cm9Bc3NlbWJsZXI6OkNhbGwgY2FsbCA9IGFwcGVuZENhbGwoZnVuY3Rpb24pOwpAQCAtMTU4LDcg
KzE1OCw3IEBAIEFMV0FZU19JTkxJTkUgTWFjcm9Bc3NlbWJsZXI6OkNhbGwgSklUOjoKIH0KIAog
I2lmIE9TKFdJTkRPV1MpICYmIENQVShYODZfNjQpCi1BTFdBWVNfSU5MSU5FIE1hY3JvQXNzZW1i
bGVyOjpDYWxsIEpJVDo6YXBwZW5kQ2FsbFdpdGhFeGNlcHRpb25DaGVja0FuZFNsb3dQYXRoUmV0
dXJuVHlwZShjb25zdCBGdW5jdGlvblB0ciYgZnVuY3Rpb24pCitBTFdBWVNfSU5MSU5FIE1hY3Jv
QXNzZW1ibGVyOjpDYWxsIEpJVDo6YXBwZW5kQ2FsbFdpdGhFeGNlcHRpb25DaGVja0FuZFNsb3dQ
YXRoUmV0dXJuVHlwZShjb25zdCBGdW5jdGlvblB0ciBmdW5jdGlvbikKIHsKICAgICB1cGRhdGVU
b3BDYWxsRnJhbWUoKTsKICAgICBNYWNyb0Fzc2VtYmxlcjo6Q2FsbCBjYWxsID0gYXBwZW5kQ2Fs
bFdpdGhTbG93UGF0aFJldHVyblR5cGUoZnVuY3Rpb24pOwpAQCAtMTY3LDcgKzE2Nyw3IEBAIEFM
V0FZU19JTkxJTkUgTWFjcm9Bc3NlbWJsZXI6OkNhbGwgSklUOjoKIH0KICNlbmRpZgogCi1BTFdB
WVNfSU5MSU5FIE1hY3JvQXNzZW1ibGVyOjpDYWxsIEpJVDo6YXBwZW5kQ2FsbFdpdGhDYWxsRnJh
bWVSb2xsYmFja09uRXhjZXB0aW9uKGNvbnN0IEZ1bmN0aW9uUHRyJiBmdW5jdGlvbikKK0FMV0FZ
U19JTkxJTkUgTWFjcm9Bc3NlbWJsZXI6OkNhbGwgSklUOjphcHBlbmRDYWxsV2l0aENhbGxGcmFt
ZVJvbGxiYWNrT25FeGNlcHRpb24oY29uc3QgRnVuY3Rpb25QdHIgZnVuY3Rpb24pCiB7CiAgICAg
dXBkYXRlVG9wQ2FsbEZyYW1lKCk7IC8vIFRoZSBjYWxsZWUgaXMgcmVzcG9uc2libGUgZm9yIHNl
dHRpbmcgdG9wQ2FsbEZyYW1lIHRvIHRoZWlyIGNhbGxlcgogICAgIE1hY3JvQXNzZW1ibGVyOjpD
YWxsIGNhbGwgPSBhcHBlbmRDYWxsKGZ1bmN0aW9uKTsKQEAgLTE3NSw3ICsxNzUsNyBAQCBBTFdB
WVNfSU5MSU5FIE1hY3JvQXNzZW1ibGVyOjpDYWxsIEpJVDo6CiAgICAgcmV0dXJuIGNhbGw7CiB9
CiAKLUFMV0FZU19JTkxJTkUgTWFjcm9Bc3NlbWJsZXI6OkNhbGwgSklUOjphcHBlbmRDYWxsV2l0
aEV4Y2VwdGlvbkNoZWNrU2V0SlNWYWx1ZVJlc3VsdChjb25zdCBGdW5jdGlvblB0ciYgZnVuY3Rp
b24sIGludCBkc3QpCitBTFdBWVNfSU5MSU5FIE1hY3JvQXNzZW1ibGVyOjpDYWxsIEpJVDo6YXBw
ZW5kQ2FsbFdpdGhFeGNlcHRpb25DaGVja1NldEpTVmFsdWVSZXN1bHQoY29uc3QgRnVuY3Rpb25Q
dHIgZnVuY3Rpb24sIGludCBkc3QpCiB7CiAgICAgTWFjcm9Bc3NlbWJsZXI6OkNhbGwgY2FsbCA9
IGFwcGVuZENhbGxXaXRoRXhjZXB0aW9uQ2hlY2soZnVuY3Rpb24pOwogI2lmIFVTRShKU1ZBTFVF
NjQpCkBAIC0xODYsNyArMTg2LDcgQEAgQUxXQVlTX0lOTElORSBNYWNyb0Fzc2VtYmxlcjo6Q2Fs
bCBKSVQ6OgogICAgIHJldHVybiBjYWxsOwogfQogCi1BTFdBWVNfSU5MSU5FIE1hY3JvQXNzZW1i
bGVyOjpDYWxsIEpJVDo6YXBwZW5kQ2FsbFdpdGhFeGNlcHRpb25DaGVja1NldEpTVmFsdWVSZXN1
bHRXaXRoUHJvZmlsZShjb25zdCBGdW5jdGlvblB0ciYgZnVuY3Rpb24sIGludCBkc3QpCitBTFdB
WVNfSU5MSU5FIE1hY3JvQXNzZW1ibGVyOjpDYWxsIEpJVDo6YXBwZW5kQ2FsbFdpdGhFeGNlcHRp
b25DaGVja1NldEpTVmFsdWVSZXN1bHRXaXRoUHJvZmlsZShjb25zdCBGdW5jdGlvblB0ciBmdW5j
dGlvbiwgaW50IGRzdCkKIHsKICAgICBNYWNyb0Fzc2VtYmxlcjo6Q2FsbCBjYWxsID0gYXBwZW5k
Q2FsbFdpdGhFeGNlcHRpb25DaGVjayhmdW5jdGlvbik7CiAgICAgZW1pdFZhbHVlUHJvZmlsaW5n
U2l0ZSgpOwo=
</data>
<flag name="review"
          id="354592"
          type_id="1"
          status="+"
          setter="jfbastien"
    />
    <flag name="commit-queue"
          id="354596"
          type_id="3"
          status="-"
          setter="mark.lam"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>336069</attachid>
            <date>2018-03-19 12:45:01 -0700</date>
            <delta_ts>2018-03-19 13:22:35 -0700</delta_ts>
            <desc>patch for landing.</desc>
            <filename>bug-183746.patch</filename>
            <type>text/plain</type>
            <size>11358</size>
            <attacher name="Mark Lam">mark.lam</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291
cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwkocmV2aXNpb24gMjI5NzA3KQorKysgU291cmNl
L0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDM1IEBA
CisyMDE4LTAzLTE5ICBNYXJrIExhbSAgPG1hcmsubGFtQGFwcGxlLmNvbT4KKworICAgICAgICBG
dW5jdGlvblB0ciBzaG91bGQgYmUgcGFzc2VkIGJ5IHZhbHVlLgorICAgICAgICBodHRwczovL2J1
Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTgzNzQ2CisgICAgICAgIDxyZGFyOi8vcHJv
YmxlbS8zODYyNTMxMT4KKworICAgICAgICBSZXZpZXdlZCBieSBKRiBCYXN0aWVuLgorCisgICAg
ICAgIEl0J3MgbWVhbnQgdG8gYmUgYW4gZW5jYXBzdWxhdGlvbiBvZiBhIEMvQysrIGZ1bmN0aW9u
IHBvaW50ZXIuICBUaGVyZSBhcmUgY2FzZXMKKyAgICAgICAgd2hlcmUgd2UgdXNlIGl0IHRvIHBh
c3MgSklUIGNvbXBpbGVkIGNvZGUgKGUuZy4gdGhlIFZNIHRodW5rcy9zdHVicyksIGJ1dCB0aGV5
IGFyZQorICAgICAgICB0cmVhdGVkIGFzIGlmIHRoZXkgYXJlIEMvQysrIGZ1bmN0aW9ucy4KKwor
ICAgICAgICBSZWdhcmRsZXNzLCB0aGVyZSdzIG5vIG5lZWQgdG8gcGFzcyBpdCBieSByZWZlcmVu
Y2UuCisKKyAgICAgICAgKiBhc3NlbWJsZXIvTWFjcm9Bc3NlbWJsZXJDb2RlUmVmLmg6CisgICAg
ICAgICogZGZnL0RGR0pJVENvbXBpbGVyLmg6CisgICAgICAgIChKU0M6OkRGRzo6SklUQ29tcGls
ZXI6OmFwcGVuZENhbGwpOgorICAgICAgICAqIGRmZy9ERkdTcGVjdWxhdGl2ZUpJVC5oOgorICAg
ICAgICAoSlNDOjpERkc6OlNwZWN1bGF0aXZlSklUOjphcHBlbmRDYWxsKToKKyAgICAgICAgKEpT
Qzo6REZHOjpTcGVjdWxhdGl2ZUpJVDo6YXBwZW5kQ2FsbFdpdGhDYWxsRnJhbWVSb2xsYmFja09u
RXhjZXB0aW9uKToKKyAgICAgICAgKEpTQzo6REZHOjpTcGVjdWxhdGl2ZUpJVDo6YXBwZW5kQ2Fs
bFdpdGhDYWxsRnJhbWVSb2xsYmFja09uRXhjZXB0aW9uU2V0UmVzdWx0KToKKyAgICAgICAgKEpT
Qzo6REZHOjpTcGVjdWxhdGl2ZUpJVDo6YXBwZW5kQ2FsbFNldFJlc3VsdCk6CisgICAgICAgICog
aml0L0pJVC5oOgorICAgICAgICAoSlNDOjpKSVQ6OmFwcGVuZENhbGwpOgorICAgICAgICAoSlND
OjpKSVQ6OmFwcGVuZENhbGxXaXRoU2xvd1BhdGhSZXR1cm5UeXBlKToKKyAgICAgICAgKiBqaXQv
SklUSW5saW5lcy5oOgorICAgICAgICAoSlNDOjpKSVQ6OmFwcGVuZENhbGxXaXRoRXhjZXB0aW9u
Q2hlY2spOgorICAgICAgICAoSlNDOjpKSVQ6OmFwcGVuZENhbGxXaXRoRXhjZXB0aW9uQ2hlY2tB
bmRTbG93UGF0aFJldHVyblR5cGUpOgorICAgICAgICAoSlNDOjpKSVQ6OmFwcGVuZENhbGxXaXRo
Q2FsbEZyYW1lUm9sbGJhY2tPbkV4Y2VwdGlvbik6CisgICAgICAgIChKU0M6OkpJVDo6YXBwZW5k
Q2FsbFdpdGhFeGNlcHRpb25DaGVja1NldEpTVmFsdWVSZXN1bHQpOgorICAgICAgICAoSlNDOjpK
SVQ6OmFwcGVuZENhbGxXaXRoRXhjZXB0aW9uQ2hlY2tTZXRKU1ZhbHVlUmVzdWx0V2l0aFByb2Zp
bGUpOgorCiAyMDE4LTAzLTE1ICBSb3NzIEtpcnNsaW5nICA8cm9zcy5raXJzbGluZ0Bzb255LmNv
bT4KIAogICAgICAgICBGaXggTVNWQyBydW4tdGltZSBjaGVjayBhZnRlciByMjI5MzkxLiAKSW5k
ZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9hc3NlbWJsZXIvTWFjcm9Bc3NlbWJsZXJDb2RlUmVm
LmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gU291cmNlL0phdmFTY3JpcHRDb3JlL2Fzc2VtYmxlci9NYWNyb0Fz
c2VtYmxlckNvZGVSZWYuaAkocmV2aXNpb24gMjI5NzA3KQorKysgU291cmNlL0phdmFTY3JpcHRD
b3JlL2Fzc2VtYmxlci9NYWNyb0Fzc2VtYmxlckNvZGVSZWYuaAkod29ya2luZyBjb3B5KQpAQCAt
MTI2LDYgKzEyNiw5IEBAIHByaXZhdGU6CiAgICAgdm9pZCogbV92YWx1ZSB7IG51bGxwdHIgfTsK
IH07CiAKK3N0YXRpY19hc3NlcnQoc2l6ZW9mKEZ1bmN0aW9uUHRyKSA9PSBzaXplb2Yodm9pZCop
LCAiIik7CitzdGF0aWNfYXNzZXJ0KHN0ZDo6aXNfdHJpdmlhbGx5X2NvcHlhYmxlPEZ1bmN0aW9u
UHRyPjo6dmFsdWUsICIiKTsKKwogLy8gUmV0dXJuQWRkcmVzc1B0cjoKIC8vCiAvLyBSZXR1cm5B
ZGRyZXNzUHRyIHNob3VsZCBiZSB1c2VkIHRvIHdyYXAgcmV0dXJuIGFkZHJlc3NlcyBnZW5lcmF0
ZWQgYnkgcHJvY2Vzc29yCkluZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvZGZnL0RGR0pJVENv
bXBpbGVyLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL0phdmFTY3JpcHRDb3JlL2RmZy9ERkdKSVRD
b21waWxlci5oCShyZXZpc2lvbiAyMjk3MDcpCisrKyBTb3VyY2UvSmF2YVNjcmlwdENvcmUvZGZn
L0RGR0pJVENvbXBpbGVyLmgJKHdvcmtpbmcgY29weSkKQEAgLTE1Niw3ICsxNTYsNyBAQCBwdWJs
aWM6CiAgICAgfQogCiAgICAgLy8gQWRkIGEgY2FsbCBvdXQgZnJvbSBKSVQgY29kZSwgd2l0aG91
dCBhbiBleGNlcHRpb24gY2hlY2suCi0gICAgQ2FsbCBhcHBlbmRDYWxsKGNvbnN0IEZ1bmN0aW9u
UHRyJiBmdW5jdGlvbikKKyAgICBDYWxsIGFwcGVuZENhbGwoY29uc3QgRnVuY3Rpb25QdHIgZnVu
Y3Rpb24pCiAgICAgewogICAgICAgICBDYWxsIGZ1bmN0aW9uQ2FsbCA9IGNhbGwoTm9QdHJUYWcp
OwogICAgICAgICBtX2NhbGxzLmFwcGVuZChDYWxsTGlua1JlY29yZChmdW5jdGlvbkNhbGwsIGZ1
bmN0aW9uKSk7CkluZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvZGZnL0RGR1NwZWN1bGF0aXZl
SklULmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gU291cmNlL0phdmFTY3JpcHRDb3JlL2RmZy9ERkdTcGVjdWxh
dGl2ZUpJVC5oCShyZXZpc2lvbiAyMjk3MDcpCisrKyBTb3VyY2UvSmF2YVNjcmlwdENvcmUvZGZn
L0RGR1NwZWN1bGF0aXZlSklULmgJKHdvcmtpbmcgY29weSkKQEAgLTEwMDcsMzkgKzEwMDcsMzkg
QEAgcHVibGljOgogI2VuZGlmCiAKICAgICAvLyBUaGVzZSBtZXRob2RzIGFkZCBjYWxsIGluc3Ry
dWN0aW9ucywgb3B0aW9uYWxseSBzZXR0aW5nIHJlc3VsdHMsIGFuZCBvcHRpb25hbGx5IHJvbGxp
bmcgYmFjayB0aGUgY2FsbCBmcmFtZSBvbiBhbiBleGNlcHRpb24uCi0gICAgSklUQ29tcGlsZXI6
OkNhbGwgYXBwZW5kQ2FsbChjb25zdCBGdW5jdGlvblB0ciYgZnVuY3Rpb24pCisgICAgSklUQ29t
cGlsZXI6OkNhbGwgYXBwZW5kQ2FsbChjb25zdCBGdW5jdGlvblB0ciBmdW5jdGlvbikKICAgICB7
CiAgICAgICAgIHByZXBhcmVGb3JFeHRlcm5hbENhbGwoKTsKICAgICAgICAgbV9qaXQuZW1pdFN0
b3JlQ29kZU9yaWdpbihtX2N1cnJlbnROb2RlLT5vcmlnaW4uc2VtYW50aWMpOwogICAgICAgICBy
ZXR1cm4gbV9qaXQuYXBwZW5kQ2FsbChmdW5jdGlvbik7CiAgICAgfQotICAgIEpJVENvbXBpbGVy
OjpDYWxsIGFwcGVuZENhbGxXaXRoQ2FsbEZyYW1lUm9sbGJhY2tPbkV4Y2VwdGlvbihjb25zdCBG
dW5jdGlvblB0ciYgZnVuY3Rpb24pCisgICAgSklUQ29tcGlsZXI6OkNhbGwgYXBwZW5kQ2FsbFdp
dGhDYWxsRnJhbWVSb2xsYmFja09uRXhjZXB0aW9uKGNvbnN0IEZ1bmN0aW9uUHRyIGZ1bmN0aW9u
KQogICAgIHsKICAgICAgICAgSklUQ29tcGlsZXI6OkNhbGwgY2FsbCA9IGFwcGVuZENhbGwoZnVu
Y3Rpb24pOwogICAgICAgICBtX2ppdC5leGNlcHRpb25DaGVja1dpdGhDYWxsRnJhbWVSb2xsYmFj
aygpOwogICAgICAgICByZXR1cm4gY2FsbDsKICAgICB9Ci0gICAgSklUQ29tcGlsZXI6OkNhbGwg
YXBwZW5kQ2FsbFdpdGhDYWxsRnJhbWVSb2xsYmFja09uRXhjZXB0aW9uU2V0UmVzdWx0KGNvbnN0
IEZ1bmN0aW9uUHRyJiBmdW5jdGlvbiwgR1BSUmVnIHJlc3VsdCkKKyAgICBKSVRDb21waWxlcjo6
Q2FsbCBhcHBlbmRDYWxsV2l0aENhbGxGcmFtZVJvbGxiYWNrT25FeGNlcHRpb25TZXRSZXN1bHQo
Y29uc3QgRnVuY3Rpb25QdHIgZnVuY3Rpb24sIEdQUlJlZyByZXN1bHQpCiAgICAgewogICAgICAg
ICBKSVRDb21waWxlcjo6Q2FsbCBjYWxsID0gYXBwZW5kQ2FsbFdpdGhDYWxsRnJhbWVSb2xsYmFj
a09uRXhjZXB0aW9uKGZ1bmN0aW9uKTsKICAgICAgICAgaWYgKChyZXN1bHQgIT0gSW52YWxpZEdQ
UlJlZykgJiYgKHJlc3VsdCAhPSBHUFJJbmZvOjpyZXR1cm5WYWx1ZUdQUikpCiAgICAgICAgICAg
ICBtX2ppdC5tb3ZlKEdQUkluZm86OnJldHVyblZhbHVlR1BSLCByZXN1bHQpOwogICAgICAgICBy
ZXR1cm4gY2FsbDsKICAgICB9Ci0gICAgSklUQ29tcGlsZXI6OkNhbGwgYXBwZW5kQ2FsbFNldFJl
c3VsdChjb25zdCBGdW5jdGlvblB0ciYgZnVuY3Rpb24sIEdQUlJlZyByZXN1bHQpCisgICAgSklU
Q29tcGlsZXI6OkNhbGwgYXBwZW5kQ2FsbFNldFJlc3VsdChjb25zdCBGdW5jdGlvblB0ciBmdW5j
dGlvbiwgR1BSUmVnIHJlc3VsdCkKICAgICB7CiAgICAgICAgIEpJVENvbXBpbGVyOjpDYWxsIGNh
bGwgPSBhcHBlbmRDYWxsKGZ1bmN0aW9uKTsKICAgICAgICAgaWYgKHJlc3VsdCAhPSBJbnZhbGlk
R1BSUmVnKQogICAgICAgICAgICAgbV9qaXQubW92ZShHUFJJbmZvOjpyZXR1cm5WYWx1ZUdQUiwg
cmVzdWx0KTsKICAgICAgICAgcmV0dXJuIGNhbGw7CiAgICAgfQotICAgIEpJVENvbXBpbGVyOjpD
YWxsIGFwcGVuZENhbGxTZXRSZXN1bHQoY29uc3QgRnVuY3Rpb25QdHImIGZ1bmN0aW9uLCBHUFJS
ZWcgcmVzdWx0MSwgR1BSUmVnIHJlc3VsdDIpCisgICAgSklUQ29tcGlsZXI6OkNhbGwgYXBwZW5k
Q2FsbFNldFJlc3VsdChjb25zdCBGdW5jdGlvblB0ciBmdW5jdGlvbiwgR1BSUmVnIHJlc3VsdDEs
IEdQUlJlZyByZXN1bHQyKQogICAgIHsKICAgICAgICAgSklUQ29tcGlsZXI6OkNhbGwgY2FsbCA9
IGFwcGVuZENhbGwoZnVuY3Rpb24pOwogICAgICAgICBtX2ppdC5zZXR1cFJlc3VsdHMocmVzdWx0
MSwgcmVzdWx0Mik7CiAgICAgICAgIHJldHVybiBjYWxsOwogICAgIH0KLSAgICBKSVRDb21waWxl
cjo6Q2FsbCBhcHBlbmRDYWxsU2V0UmVzdWx0KGNvbnN0IEZ1bmN0aW9uUHRyJiBmdW5jdGlvbiwg
SlNWYWx1ZVJlZ3MgcmVzdWx0UmVncykKKyAgICBKSVRDb21waWxlcjo6Q2FsbCBhcHBlbmRDYWxs
U2V0UmVzdWx0KGNvbnN0IEZ1bmN0aW9uUHRyIGZ1bmN0aW9uLCBKU1ZhbHVlUmVncyByZXN1bHRS
ZWdzKQogICAgIHsKICNpZiBVU0UoSlNWQUxVRTY0KQogICAgICAgICByZXR1cm4gYXBwZW5kQ2Fs
bFNldFJlc3VsdChmdW5jdGlvbiwgcmVzdWx0UmVncy5ncHIoKSk7CkBAIC0xMDQ4LDcgKzEwNDgs
NyBAQCBwdWJsaWM6CiAjZW5kaWYKICAgICB9CiAjaWYgQ1BVKFg4NikKLSAgICBKSVRDb21waWxl
cjo6Q2FsbCBhcHBlbmRDYWxsU2V0UmVzdWx0KGNvbnN0IEZ1bmN0aW9uUHRyJiBmdW5jdGlvbiwg
RlBSUmVnIHJlc3VsdCkKKyAgICBKSVRDb21waWxlcjo6Q2FsbCBhcHBlbmRDYWxsU2V0UmVzdWx0
KGNvbnN0IEZ1bmN0aW9uUHRyIGZ1bmN0aW9uLCBGUFJSZWcgcmVzdWx0KQogICAgIHsKICAgICAg
ICAgSklUQ29tcGlsZXI6OkNhbGwgY2FsbCA9IGFwcGVuZENhbGwoZnVuY3Rpb24pOwogICAgICAg
ICBpZiAocmVzdWx0ICE9IEludmFsaWRGUFJSZWcpIHsKQEAgLTEwNTgsNyArMTA1OCw3IEBAIHB1
YmxpYzoKICAgICAgICAgcmV0dXJuIGNhbGw7CiAgICAgfQogI2VsaWYgQ1BVKEFSTSkgJiYgIUNQ
VShBUk1fSEFSREZQKQotICAgIEpJVENvbXBpbGVyOjpDYWxsIGFwcGVuZENhbGxTZXRSZXN1bHQo
Y29uc3QgRnVuY3Rpb25QdHImIGZ1bmN0aW9uLCBGUFJSZWcgcmVzdWx0KQorICAgIEpJVENvbXBp
bGVyOjpDYWxsIGFwcGVuZENhbGxTZXRSZXN1bHQoY29uc3QgRnVuY3Rpb25QdHIgZnVuY3Rpb24s
IEZQUlJlZyByZXN1bHQpCiAgICAgewogICAgICAgICBKSVRDb21waWxlcjo6Q2FsbCBjYWxsID0g
YXBwZW5kQ2FsbChmdW5jdGlvbik7CiAgICAgICAgIGlmIChyZXN1bHQgIT0gSW52YWxpZEZQUlJl
ZykKQEAgLTEwNjYsNyArMTA2Niw3IEBAIHB1YmxpYzoKICAgICAgICAgcmV0dXJuIGNhbGw7CiAg
ICAgfQogI2Vsc2UgLy8gQ1BVKFg4Nl82NCkgfHwgKENQVShBUk0pICYmIENQVShBUk1fSEFSREZQ
KSkgfHwgQ1BVKEFSTTY0KSB8fCBDUFUoTUlQUykKLSAgICBKSVRDb21waWxlcjo6Q2FsbCBhcHBl
bmRDYWxsU2V0UmVzdWx0KGNvbnN0IEZ1bmN0aW9uUHRyJiBmdW5jdGlvbiwgRlBSUmVnIHJlc3Vs
dCkKKyAgICBKSVRDb21waWxlcjo6Q2FsbCBhcHBlbmRDYWxsU2V0UmVzdWx0KGNvbnN0IEZ1bmN0
aW9uUHRyIGZ1bmN0aW9uLCBGUFJSZWcgcmVzdWx0KQogICAgIHsKICAgICAgICAgSklUQ29tcGls
ZXI6OkNhbGwgY2FsbCA9IGFwcGVuZENhbGwoZnVuY3Rpb24pOwogICAgICAgICBpZiAocmVzdWx0
ICE9IEludmFsaWRGUFJSZWcpCkluZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvaml0L0pJVC5o
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9qaXQvSklULmgJKHJldmlzaW9u
IDIyOTcwNykKKysrIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9qaXQvSklULmgJKHdvcmtpbmcgY29w
eSkKQEAgLTI2Nyw3ICsyNjcsNyBAQCBuYW1lc3BhY2UgSlNDIHsKICAgICAgICAgdm9pZCBwcml2
YXRlQ29tcGlsZVBhdGNoR2V0QXJyYXlMZW5ndGgoUmV0dXJuQWRkcmVzc1B0ciByZXR1cm5BZGRy
ZXNzKTsKIAogICAgICAgICAvLyBBZGQgYSBjYWxsIG91dCBmcm9tIEpJVCBjb2RlLCB3aXRob3V0
IGFuIGV4Y2VwdGlvbiBjaGVjay4KLSAgICAgICAgQ2FsbCBhcHBlbmRDYWxsKGNvbnN0IEZ1bmN0
aW9uUHRyJiBmdW5jdGlvbikKKyAgICAgICAgQ2FsbCBhcHBlbmRDYWxsKGNvbnN0IEZ1bmN0aW9u
UHRyIGZ1bmN0aW9uKQogICAgICAgICB7CiAgICAgICAgICAgICBDYWxsIGZ1bmN0aW9uQ2FsbCA9
IGNhbGwoTm9QdHJUYWcpOwogICAgICAgICAgICAgbV9jYWxscy5hcHBlbmQoQ2FsbFJlY29yZChm
dW5jdGlvbkNhbGwsIG1fYnl0ZWNvZGVPZmZzZXQsIGZ1bmN0aW9uLnZhbHVlKCkpKTsKQEAgLTI3
NSw3ICsyNzUsNyBAQCBuYW1lc3BhY2UgSlNDIHsKICAgICAgICAgfQogCiAjaWYgT1MoV0lORE9X
UykgJiYgQ1BVKFg4Nl82NCkKLSAgICAgICAgQ2FsbCBhcHBlbmRDYWxsV2l0aFNsb3dQYXRoUmV0
dXJuVHlwZShjb25zdCBGdW5jdGlvblB0ciYgZnVuY3Rpb24pCisgICAgICAgIENhbGwgYXBwZW5k
Q2FsbFdpdGhTbG93UGF0aFJldHVyblR5cGUoY29uc3QgRnVuY3Rpb25QdHIgZnVuY3Rpb24pCiAg
ICAgICAgIHsKICAgICAgICAgICAgIENhbGwgZnVuY3Rpb25DYWxsID0gY2FsbFdpdGhTbG93UGF0
aFJldHVyblR5cGUoKTsKICAgICAgICAgICAgIG1fY2FsbHMuYXBwZW5kKENhbGxSZWNvcmQoZnVu
Y3Rpb25DYWxsLCBtX2J5dGVjb2RlT2Zmc2V0LCBmdW5jdGlvbi52YWx1ZSgpKSk7CkBAIC03MDQs
MTMgKzcwNCwxMyBAQCBuYW1lc3BhY2UgSlNDIHsKICAgICAgICAgICAgIGxpbmtBbGxTbG93Q2Fz
ZXNGb3JCeXRlY29kZU9mZnNldChtX3Nsb3dDYXNlcywgaXRlciwgbV9ieXRlY29kZU9mZnNldCk7
CiAgICAgICAgIH0KIAotICAgICAgICBNYWNyb0Fzc2VtYmxlcjo6Q2FsbCBhcHBlbmRDYWxsV2l0
aEV4Y2VwdGlvbkNoZWNrKGNvbnN0IEZ1bmN0aW9uUHRyJik7CisgICAgICAgIE1hY3JvQXNzZW1i
bGVyOjpDYWxsIGFwcGVuZENhbGxXaXRoRXhjZXB0aW9uQ2hlY2soY29uc3QgRnVuY3Rpb25QdHIp
OwogI2lmIE9TKFdJTkRPV1MpICYmIENQVShYODZfNjQpCi0gICAgICAgIE1hY3JvQXNzZW1ibGVy
OjpDYWxsIGFwcGVuZENhbGxXaXRoRXhjZXB0aW9uQ2hlY2tBbmRTbG93UGF0aFJldHVyblR5cGUo
Y29uc3QgRnVuY3Rpb25QdHImKTsKKyAgICAgICAgTWFjcm9Bc3NlbWJsZXI6OkNhbGwgYXBwZW5k
Q2FsbFdpdGhFeGNlcHRpb25DaGVja0FuZFNsb3dQYXRoUmV0dXJuVHlwZShjb25zdCBGdW5jdGlv
blB0cik7CiAjZW5kaWYKLSAgICAgICAgTWFjcm9Bc3NlbWJsZXI6OkNhbGwgYXBwZW5kQ2FsbFdp
dGhDYWxsRnJhbWVSb2xsYmFja09uRXhjZXB0aW9uKGNvbnN0IEZ1bmN0aW9uUHRyJik7Ci0gICAg
ICAgIE1hY3JvQXNzZW1ibGVyOjpDYWxsIGFwcGVuZENhbGxXaXRoRXhjZXB0aW9uQ2hlY2tTZXRK
U1ZhbHVlUmVzdWx0KGNvbnN0IEZ1bmN0aW9uUHRyJiwgaW50KTsKLSAgICAgICAgTWFjcm9Bc3Nl
bWJsZXI6OkNhbGwgYXBwZW5kQ2FsbFdpdGhFeGNlcHRpb25DaGVja1NldEpTVmFsdWVSZXN1bHRX
aXRoUHJvZmlsZShjb25zdCBGdW5jdGlvblB0ciYsIGludCk7CisgICAgICAgIE1hY3JvQXNzZW1i
bGVyOjpDYWxsIGFwcGVuZENhbGxXaXRoQ2FsbEZyYW1lUm9sbGJhY2tPbkV4Y2VwdGlvbihjb25z
dCBGdW5jdGlvblB0cik7CisgICAgICAgIE1hY3JvQXNzZW1ibGVyOjpDYWxsIGFwcGVuZENhbGxX
aXRoRXhjZXB0aW9uQ2hlY2tTZXRKU1ZhbHVlUmVzdWx0KGNvbnN0IEZ1bmN0aW9uUHRyLCBpbnQp
OworICAgICAgICBNYWNyb0Fzc2VtYmxlcjo6Q2FsbCBhcHBlbmRDYWxsV2l0aEV4Y2VwdGlvbkNo
ZWNrU2V0SlNWYWx1ZVJlc3VsdFdpdGhQcm9maWxlKGNvbnN0IEZ1bmN0aW9uUHRyLCBpbnQpOwog
ICAgICAgICAKICAgICAgICAgdGVtcGxhdGU8dHlwZW5hbWUgT3BlcmF0aW9uVHlwZSwgdHlwZW5h
bWUuLi4gQXJncz4KICAgICAgICAgc3RkOjplbmFibGVfaWZfdDxGdW5jdGlvblRyYWl0czxPcGVy
YXRpb25UeXBlPjo6aGFzUmVzdWx0LCBNYWNyb0Fzc2VtYmxlcjo6Q2FsbD4KSW5kZXg6IFNvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9qaXQvSklUSW5saW5lcy5oCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9K
YXZhU2NyaXB0Q29yZS9qaXQvSklUSW5saW5lcy5oCShyZXZpc2lvbiAyMjk3MDcpCisrKyBTb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvaml0L0pJVElubGluZXMuaAkod29ya2luZyBjb3B5KQpAQCAtMTQ5
LDcgKzE0OSw3IEBAIEFMV0FZU19JTkxJTkUgdm9pZCBKSVQ6OnVwZGF0ZVRvcENhbGxGcmEKICAg
ICBzdG9yZVB0cihjYWxsRnJhbWVSZWdpc3RlciwgJm1fdm0tPnRvcENhbGxGcmFtZSk7CiB9CiAK
LUFMV0FZU19JTkxJTkUgTWFjcm9Bc3NlbWJsZXI6OkNhbGwgSklUOjphcHBlbmRDYWxsV2l0aEV4
Y2VwdGlvbkNoZWNrKGNvbnN0IEZ1bmN0aW9uUHRyJiBmdW5jdGlvbikKK0FMV0FZU19JTkxJTkUg
TWFjcm9Bc3NlbWJsZXI6OkNhbGwgSklUOjphcHBlbmRDYWxsV2l0aEV4Y2VwdGlvbkNoZWNrKGNv
bnN0IEZ1bmN0aW9uUHRyIGZ1bmN0aW9uKQogewogICAgIHVwZGF0ZVRvcENhbGxGcmFtZSgpOwog
ICAgIE1hY3JvQXNzZW1ibGVyOjpDYWxsIGNhbGwgPSBhcHBlbmRDYWxsKGZ1bmN0aW9uKTsKQEAg
LTE1OCw3ICsxNTgsNyBAQCBBTFdBWVNfSU5MSU5FIE1hY3JvQXNzZW1ibGVyOjpDYWxsIEpJVDo6
CiB9CiAKICNpZiBPUyhXSU5ET1dTKSAmJiBDUFUoWDg2XzY0KQotQUxXQVlTX0lOTElORSBNYWNy
b0Fzc2VtYmxlcjo6Q2FsbCBKSVQ6OmFwcGVuZENhbGxXaXRoRXhjZXB0aW9uQ2hlY2tBbmRTbG93
UGF0aFJldHVyblR5cGUoY29uc3QgRnVuY3Rpb25QdHImIGZ1bmN0aW9uKQorQUxXQVlTX0lOTElO
RSBNYWNyb0Fzc2VtYmxlcjo6Q2FsbCBKSVQ6OmFwcGVuZENhbGxXaXRoRXhjZXB0aW9uQ2hlY2tB
bmRTbG93UGF0aFJldHVyblR5cGUoY29uc3QgRnVuY3Rpb25QdHIgZnVuY3Rpb24pCiB7CiAgICAg
dXBkYXRlVG9wQ2FsbEZyYW1lKCk7CiAgICAgTWFjcm9Bc3NlbWJsZXI6OkNhbGwgY2FsbCA9IGFw
cGVuZENhbGxXaXRoU2xvd1BhdGhSZXR1cm5UeXBlKGZ1bmN0aW9uKTsKQEAgLTE2Nyw3ICsxNjcs
NyBAQCBBTFdBWVNfSU5MSU5FIE1hY3JvQXNzZW1ibGVyOjpDYWxsIEpJVDo6CiB9CiAjZW5kaWYK
IAotQUxXQVlTX0lOTElORSBNYWNyb0Fzc2VtYmxlcjo6Q2FsbCBKSVQ6OmFwcGVuZENhbGxXaXRo
Q2FsbEZyYW1lUm9sbGJhY2tPbkV4Y2VwdGlvbihjb25zdCBGdW5jdGlvblB0ciYgZnVuY3Rpb24p
CitBTFdBWVNfSU5MSU5FIE1hY3JvQXNzZW1ibGVyOjpDYWxsIEpJVDo6YXBwZW5kQ2FsbFdpdGhD
YWxsRnJhbWVSb2xsYmFja09uRXhjZXB0aW9uKGNvbnN0IEZ1bmN0aW9uUHRyIGZ1bmN0aW9uKQog
ewogICAgIHVwZGF0ZVRvcENhbGxGcmFtZSgpOyAvLyBUaGUgY2FsbGVlIGlzIHJlc3BvbnNpYmxl
IGZvciBzZXR0aW5nIHRvcENhbGxGcmFtZSB0byB0aGVpciBjYWxsZXIKICAgICBNYWNyb0Fzc2Vt
Ymxlcjo6Q2FsbCBjYWxsID0gYXBwZW5kQ2FsbChmdW5jdGlvbik7CkBAIC0xNzUsNyArMTc1LDcg
QEAgQUxXQVlTX0lOTElORSBNYWNyb0Fzc2VtYmxlcjo6Q2FsbCBKSVQ6OgogICAgIHJldHVybiBj
YWxsOwogfQogCi1BTFdBWVNfSU5MSU5FIE1hY3JvQXNzZW1ibGVyOjpDYWxsIEpJVDo6YXBwZW5k
Q2FsbFdpdGhFeGNlcHRpb25DaGVja1NldEpTVmFsdWVSZXN1bHQoY29uc3QgRnVuY3Rpb25QdHIm
IGZ1bmN0aW9uLCBpbnQgZHN0KQorQUxXQVlTX0lOTElORSBNYWNyb0Fzc2VtYmxlcjo6Q2FsbCBK
SVQ6OmFwcGVuZENhbGxXaXRoRXhjZXB0aW9uQ2hlY2tTZXRKU1ZhbHVlUmVzdWx0KGNvbnN0IEZ1
bmN0aW9uUHRyIGZ1bmN0aW9uLCBpbnQgZHN0KQogewogICAgIE1hY3JvQXNzZW1ibGVyOjpDYWxs
IGNhbGwgPSBhcHBlbmRDYWxsV2l0aEV4Y2VwdGlvbkNoZWNrKGZ1bmN0aW9uKTsKICNpZiBVU0Uo
SlNWQUxVRTY0KQpAQCAtMTg2LDcgKzE4Niw3IEBAIEFMV0FZU19JTkxJTkUgTWFjcm9Bc3NlbWJs
ZXI6OkNhbGwgSklUOjoKICAgICByZXR1cm4gY2FsbDsKIH0KIAotQUxXQVlTX0lOTElORSBNYWNy
b0Fzc2VtYmxlcjo6Q2FsbCBKSVQ6OmFwcGVuZENhbGxXaXRoRXhjZXB0aW9uQ2hlY2tTZXRKU1Zh
bHVlUmVzdWx0V2l0aFByb2ZpbGUoY29uc3QgRnVuY3Rpb25QdHImIGZ1bmN0aW9uLCBpbnQgZHN0
KQorQUxXQVlTX0lOTElORSBNYWNyb0Fzc2VtYmxlcjo6Q2FsbCBKSVQ6OmFwcGVuZENhbGxXaXRo
RXhjZXB0aW9uQ2hlY2tTZXRKU1ZhbHVlUmVzdWx0V2l0aFByb2ZpbGUoY29uc3QgRnVuY3Rpb25Q
dHIgZnVuY3Rpb24sIGludCBkc3QpCiB7CiAgICAgTWFjcm9Bc3NlbWJsZXI6OkNhbGwgY2FsbCA9
IGFwcGVuZENhbGxXaXRoRXhjZXB0aW9uQ2hlY2soZnVuY3Rpb24pOwogICAgIGVtaXRWYWx1ZVBy
b2ZpbGluZ1NpdGUoKTsK
</data>

          </attachment>
      

    </bug>

</bugzilla>