<?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>212437</bug_id>
          
          <creation_ts>2020-05-27 15:03:03 -0700</creation_ts>
          <short_desc>Limit memory used by wasm/references/multitable.js on memory limited devices</short_desc>
          <delta_ts>2020-05-27 17:47:19 -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="Saam Barati">saam</reporter>
          <assigned_to name="Saam Barati">saam</assigned_to>
          <cc>ews-watchlist</cc>
    
    <cc>keith_miller</cc>
    
    <cc>mark.lam</cc>
    
    <cc>msaboff</cc>
    
    <cc>ryanhaddad</cc>
    
    <cc>tzagallo</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1656607</commentid>
    <comment_count>0</comment_count>
    <who name="Saam Barati">saam</who>
    <bug_when>2020-05-27 15:03:03 -0700</bug_when>
    <thetext>...</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1656609</commentid>
    <comment_count>1</comment_count>
    <who name="Saam Barati">saam</who>
    <bug_when>2020-05-27 15:03:29 -0700</bug_when>
    <thetext>Currently uses 600MB and jetsams iOS tests</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1656662</commentid>
    <comment_count>2</comment_count>
      <attachid>400400</attachid>
    <who name="Saam Barati">saam</who>
    <bug_when>2020-05-27 16:11:13 -0700</bug_when>
    <thetext>Created attachment 400400
patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1656665</commentid>
    <comment_count>3</comment_count>
      <attachid>400400</attachid>
    <who name="Keith Miller">keith_miller</who>
    <bug_when>2020-05-27 16:13:38 -0700</bug_when>
    <thetext>Comment on attachment 400400
patch

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1656668</commentid>
    <comment_count>4</comment_count>
      <attachid>400400</attachid>
    <who name="Mark Lam">mark.lam</who>
    <bug_when>2020-05-27 16:18:46 -0700</bug_when>
    <thetext>Comment on attachment 400400
patch

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

&gt; JSTests/wasm/references/multitable.js:428
&gt; +          .End().WebAssembly().get())), Error, &quot;Table count of 1000000 is too big, maximum 1000000&quot;);

Parameterize on largeNumber too instead of hardcoding 1000000 in the message?

&gt; Source/JavaScriptCore/jsc.cpp:2497
&gt; +EncodedJSValue JSC_HOST_CALL functionIsMemoryLimited(JSGlobalObject*, CallFrame*)
&gt; +{
&gt; +#if PLATFORM(IOS) || PLATFORM(TVOS) || PLATFORM(WATCHOS)
&gt; +    return JSValue::encode(jsBoolean(true));
&gt; +#else
&gt; +    return JSValue::encode(jsBoolean(false));
&gt; +#endif
&gt; +}

Put this in $vm because it may be useful for LayoutTests too?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1656674</commentid>
    <comment_count>5</comment_count>
      <attachid>400400</attachid>
    <who name="Saam Barati">saam</who>
    <bug_when>2020-05-27 16:41:33 -0700</bug_when>
    <thetext>Comment on attachment 400400
patch

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

&gt;&gt; JSTests/wasm/references/multitable.js:428
&gt;&gt; +          .End().WebAssembly().get())), Error, &quot;Table count of 1000000 is too big, maximum 1000000&quot;);
&gt; 
&gt; Parameterize on largeNumber too instead of hardcoding 1000000 in the message?

this one is needed since it&apos;s an actual test that 1000000 exceeds the limit

&gt;&gt; Source/JavaScriptCore/jsc.cpp:2497
&gt;&gt; +}
&gt; 
&gt; Put this in $vm because it may be useful for LayoutTests too?

Yeah I can do that</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1656682</commentid>
    <comment_count>6</comment_count>
      <attachid>400404</attachid>
    <who name="Saam Barati">saam</who>
    <bug_when>2020-05-27 17:00:21 -0700</bug_when>
    <thetext>Created attachment 400404
patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1656683</commentid>
    <comment_count>7</comment_count>
      <attachid>400405</attachid>
    <who name="Saam Barati">saam</who>
    <bug_when>2020-05-27 17:04:00 -0700</bug_when>
    <thetext>Created attachment 400405
patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1656699</commentid>
    <comment_count>8</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2020-05-27 17:46:33 -0700</bug_when>
    <thetext>Committed r262227: &lt;https://trac.webkit.org/changeset/262227&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 400405.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1656700</commentid>
    <comment_count>9</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2020-05-27 17:47:19 -0700</bug_when>
    <thetext>&lt;rdar://problem/63698021&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>400400</attachid>
            <date>2020-05-27 16:11:13 -0700</date>
            <delta_ts>2020-05-27 17:00:21 -0700</delta_ts>
            <desc>patch</desc>
            <filename>b-backup.diff</filename>
            <type>text/plain</type>
            <size>6884</size>
            <attacher name="Saam Barati">saam</attacher>
            
              <data encoding="base64">SW5kZXg6IEpTVGVzdHMvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIEpTVGVzdHMvQ2hhbmdlTG9n
CShyZXZpc2lvbiAyNjIyMjEpCisrKyBKU1Rlc3RzL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpA
QCAtMSwzICsxLDE4IEBACisyMDIwLTA1LTI3ICBTYWFtIEJhcmF0aSAgPHNiYXJhdGlAYXBwbGUu
Y29tPgorCisgICAgICAgIExpbWl0IG1lbW9yeSB1c2VkIGJ5IHdhc20vcmVmZXJlbmNlcy9tdWx0
aXRhYmxlLmpzIG9uIG1lbW9yeSBsaW1pdGVkIGRldmljZXMKKyAgICAgICAgaHR0cHM6Ly9idWdz
LndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIxMjQzNworCisgICAgICAgIFJldmlld2VkIGJ5
IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIHdhc20vcmVmZXJlbmNlcy9tdWx0aXRhYmxlLmpz
IHdhcyB1c2luZyBhcm91bmQgfjcwME1CIG9mIG1lbW9yeS4KKyAgICAgICAgVGhpcyBsb29rcyBs
aWtlIGl0J3MgY2F1c2luZyBqZXRzYW1zIG9uIHNvbWUgb2Ygb3VyIGlPUyB0ZXN0IHJ1bm5lcnMu
CisgICAgICAgIFRoaXMgcGF0Y2ggbWFrZXMgdGhpcyB0ZXN0IHVzZSBsZXNzIG1lbW9yeSBvbiBt
ZW1vcnkgbGltaXRlZCBkZXZpY2VzLgorCisgICAgICAgICogd2FzbS9hc3NlcnQuanM6CisgICAg
ICAgICogd2FzbS9yZWZlcmVuY2VzL211bHRpdGFibGUuanM6CisgICAgICAgIChzdHJpbmdfYXBw
ZWFyZWRfaGVyZS50YWJsZUluc2FuaXR5KToKKwogMjAyMC0wNS0yNyAgS2VpdGggTWlsbGVyICA8
a2VpdGhfbWlsbGVyQGFwcGxlLmNvbT4KIAogICAgICAgICBVbnJldml3ZWQsIGNhdGNoIGV4cGVj
dGVkIGV4Y2VwdGlvbiBpbiBuZXcgdGVzdC4KSW5kZXg6IEpTVGVzdHMvd2FzbS9hc3NlcnQuanMK
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotLS0gSlNUZXN0cy93YXNtL2Fzc2VydC5qcwkocmV2aXNpb24gMjYyMjE5KQor
KysgSlNUZXN0cy93YXNtL2Fzc2VydC5qcwkod29ya2luZyBjb3B5KQpAQCAtMTI0LDE5ICsxMjQs
OCBAQCBjb25zdCBfdGhyb3dzID0gKGZ1bmMsIHR5cGUsIG1lc3NhZ2UsIC4uCiAgICAgdHJ5IHsK
ICAgICAgICAgZnVuYyguLi5hcmdzKTsKICAgICB9IGNhdGNoIChlKSB7Ci0gICAgICAgIGlmIChl
IGluc3RhbmNlb2YgdHlwZSkgewotICAgICAgICAgICAgaWYgKGUubWVzc2FnZSA9PT0gbWVzc2Fn
ZSkKLSAgICAgICAgICAgICAgICByZXR1cm4gZTsKLSAgICAgICAgICAgIC8vIElnbm9yZSBzb3Vy
Y2UgaW5mb3JtYXRpb24gYXQgdGhlIGVuZCBvZiB0aGUgZXJyb3IgbWVzc2FnZSBpZiB0aGUKLSAg
ICAgICAgICAgIC8vIGV4cGVjdGVkIG1lc3NhZ2UgZGlkbid0IHNwZWNpZnkgdGhhdCBpbmZvcm1h
dGlvbi4gU29tZXRpbWVzIGl0Ci0gICAgICAgICAgICAvLyBjaGFuZ2VzLCBvciBpdCdzIHRyaWNr
eSB0byBnZXQganVzdCByaWdodC4KLSAgICAgICAgICAgIGNvbnN0IGV2YWx1YXRpbmdJbmRleCA9
IGUubWVzc2FnZS5pbmRleE9mKCIgKGV2YWx1YXRpbmcgJyIpOwotICAgICAgICAgICAgaWYgKGV2
YWx1YXRpbmdJbmRleCAhPT0gLTEpIHsKLSAgICAgICAgICAgICAgICBjb25zdCBjbGVhbk1lc3Nh
Z2UgPSBlLm1lc3NhZ2Uuc3Vic3RyaW5nKDAsIGV2YWx1YXRpbmdJbmRleCk7Ci0gICAgICAgICAg
ICAgICAgaWYgKGNsZWFuTWVzc2FnZSA9PT0gbWVzc2FnZSkKLSAgICAgICAgICAgICAgICAgICAg
cmV0dXJuIGU7Ci0gICAgICAgICAgICB9Ci0gICAgICAgIH0KKyAgICAgICAgaWYgKGUgaW5zdGFu
Y2VvZiB0eXBlICYmIGUubWVzc2FnZS5pbmRleE9mKG1lc3NhZ2UpID49IDApCisgICAgICAgICAg
ICByZXR1cm4gZTsKICAgICAgICAgX2ZhaWwoYEV4cGVjdGVkIHRvIHRocm93IGEgJHt0eXBlLm5h
bWV9IHdpdGggbWVzc2FnZSAiJHttZXNzYWdlfSIsIGdvdCAke2UubmFtZX0gd2l0aCBtZXNzYWdl
ICIke2UubWVzc2FnZX0iYCk7CiAgICAgfQogICAgIF9mYWlsKGBFeHBlY3RlZCB0byB0aHJvdyBh
ICR7dHlwZS5uYW1lfSB3aXRoIG1lc3NhZ2UgIiR7bWVzc2FnZX0iYCk7CkluZGV4OiBKU1Rlc3Rz
L3dhc20vcmVmZXJlbmNlcy9tdWx0aXRhYmxlLmpzCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIEpTVGVzdHMvd2Fz
bS9yZWZlcmVuY2VzL211bHRpdGFibGUuanMJKHJldmlzaW9uIDI2MjIxOSkKKysrIEpTVGVzdHMv
d2FzbS9yZWZlcmVuY2VzL211bHRpdGFibGUuanMJKHdvcmtpbmcgY29weSkKQEAgLTQwNyw3ICs0
MDcsNyBAQCBhc3NlcnQudGhyb3dzKCgpID0+IG5ldyBXZWJBc3NlbWJseS5JbnN0CiAKIGZ1bmN0
aW9uIHRhYmxlSW5zYW5pdHkobnVtLCBiKSB7CiAgICAgYiA9IGIuSW1wb3J0KCkKLSAgICBmb3Ig
KGxldCBpPTA7IGk8MTAwMDAwLTE7ICsraSkKKyAgICBmb3IgKGxldCBpPTA7IGkgPCAoaXNNZW1v
cnlMaW1pdGVkKCkgPyAxMDAwIDogMTAwMDAwKSAtIDE7ICsraSkKICAgICAgICAgYiA9IGIuRnVu
Y3Rpb24oImltcCIsICJyZWYiLCB7IHBhcmFtczogW10sIHJldDogInZvaWQiIH0pCiAgICAgYiA9
IGIuRW5kKCkuRnVuY3Rpb24oKS5FbmQoKS5UYWJsZSgpCiAgICAgZm9yIChsZXQgaT0wOyBpPG51
bTsgKytpKQpAQCAtNDI1LDkgKzQyNSwxMSBAQCBhc3NlcnQudGhyb3dzKCgpID0+IG5ldyBXZWJB
c3NlbWJseS5JbnN0CiAgICAgICAgICAgICAgIC5HZXRMb2NhbCgwKQogICAgICAgICAgICAgICAu
VGFibGVTZXQoMSkKICAgICAgICAgICAgIC5FbmQoKQotICAgICAgICAgIC5FbmQoKS5XZWJBc3Nl
bWJseSgpLmdldCgpKSksIEVycm9yLCAiV2ViQXNzZW1ibHkuTW9kdWxlIGRvZXNuJ3QgcGFyc2Ug
YXQgYnl0ZSA1MDAwMDI3OiBUYWJsZSBjb3VudCBvZiAxMDAwMDAwIGlzIHRvbyBiaWcsIG1heGlt
dW0gMTAwMDAwMCAoZXZhbHVhdGluZyAnbmV3IFdlYkFzc2VtYmx5Lk1vZHVsZScpIikKKyAgICAg
ICAgICAuRW5kKCkuV2ViQXNzZW1ibHkoKS5nZXQoKSkpLCBFcnJvciwgIlRhYmxlIGNvdW50IG9m
IDEwMDAwMDAgaXMgdG9vIGJpZywgbWF4aW11bSAxMDAwMDAwIik7CisKIHsKLSAgICBjb25zdCAk
MSA9IG5ldyBXZWJBc3NlbWJseS5JbnN0YW5jZShuZXcgV2ViQXNzZW1ibHkuTW9kdWxlKHRhYmxl
SW5zYW5pdHkoMTAwMDAwMC0yLCAobmV3IEJ1aWxkZXIoKSkKKyAgICBjb25zdCBsYXJnZU51bWJl
ciA9IGlzTWVtb3J5TGltaXRlZCgpID8gMTAwMDAgOiAxMDAwMDAwOworICAgIGNvbnN0ICQxID0g
bmV3IFdlYkFzc2VtYmx5Lkluc3RhbmNlKG5ldyBXZWJBc3NlbWJseS5Nb2R1bGUodGFibGVJbnNh
bml0eShsYXJnZU51bWJlci0yLCAobmV3IEJ1aWxkZXIoKSkKICAgICAgICAgICAuVHlwZSgpLkVu
ZCgpKQogICAgICAgICAgICAgICAgIC5UYWJsZSh7aW5pdGlhbDogMywgbWF4aW11bTogMywgZWxl
bWVudDogImZ1bmNyZWYifSkKICAgICAgICAgICAgICAgICAuVGFibGUoe2luaXRpYWw6IDMsIG1h
eGltdW06IDMsIGVsZW1lbnQ6ICJhbnlyZWYifSkKQEAgLTQzOCwyMSArNDQwLDIxIEBAIGFzc2Vy
dC50aHJvd3MoKCkgPT4gbmV3IFdlYkFzc2VtYmx5Lkluc3QKICAgICAgICAgICAgICAgICAuRnVu
Y3Rpb24oImNhbGwiKQogICAgICAgICAgIC5FbmQoKQogICAgICAgICAgIC5FbGVtZW50KCkKLSAg
ICAgICAgICAgICAgICAuRWxlbWVudCh7dGFibGVJbmRleDogMTAwMDAwMC0yLCBvZmZzZXQ6IDAs
IGZ1bmN0aW9uSW5kaWNlczogWzBdfSkKKyAgICAgICAgICAgICAgICAuRWxlbWVudCh7dGFibGVJ
bmRleDogbGFyZ2VOdW1iZXItMiwgb2Zmc2V0OiAwLCBmdW5jdGlvbkluZGljZXM6IFswXX0pCiAg
ICAgICAgICAgLkVuZCgpCiAgICAgICAgICAgLkNvZGUoKQogICAgICAgICAgICAgLkZ1bmN0aW9u
KCJzZXRfdGJsIiwgeyBwYXJhbXM6IFsiYW55cmVmIl0sIHJldDogInZvaWQiIH0pCiAgICAgICAg
ICAgICAgIC5JMzJDb25zdCgwKQogICAgICAgICAgICAgICAuR2V0TG9jYWwoMCkKLSAgICAgICAg
ICAgICAgLlRhYmxlU2V0KDEwMDAwMDAtMSkKKyAgICAgICAgICAgICAgLlRhYmxlU2V0KGxhcmdl
TnVtYmVyLTEpCiAgICAgICAgICAgICAuRW5kKCkKICAgICAgICAgICAgIC5GdW5jdGlvbigiZ2V0
X3RibCIsIHsgcGFyYW1zOiBbXSwgcmV0OiAiYW55cmVmIiB9KQogICAgICAgICAgICAgICAuSTMy
Q29uc3QoMCkKLSAgICAgICAgICAgICAgLlRhYmxlR2V0KDEwMDAwMDAtMSkKKyAgICAgICAgICAg
ICAgLlRhYmxlR2V0KGxhcmdlTnVtYmVyLTEpCiAgICAgICAgICAgICAuRW5kKCkKICAgICAgICAg
ICAgIC5GdW5jdGlvbigiY2FsbCIsIHsgcGFyYW1zOiBbXSwgcmV0OiAidm9pZCIgfSkKICAgICAg
ICAgICAgICAgLkkzMkNvbnN0KDApCi0gICAgICAgICAgICAgIC5DYWxsSW5kaXJlY3QoMCwgMTAw
MDAwMC0yKQorICAgICAgICAgICAgICAuQ2FsbEluZGlyZWN0KDAsIGxhcmdlTnVtYmVyLTIpCiAg
ICAgICAgICAgICAuRW5kKCkKICAgICAgICAgICAuRW5kKCkuV2ViQXNzZW1ibHkoKS5nZXQoKSks
IHsgaW1wOiB7IHJlZjogZnVuY3Rpb24gKCkge30gfSB9KQogICAgICQxLmV4cG9ydHMuc2V0X3Ri
bCgiaGkiKQpJbmRleDogU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENvcmUvQ2hhbmdlTG9nCShyZXZpc2lvbiAyNjIyMTkpCisr
KyBTb3VyY2UvSmF2YVNjcmlwdENvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMg
KzEsMTMgQEAKKzIwMjAtMDUtMjcgIFNhYW0gQmFyYXRpICA8c2JhcmF0aUBhcHBsZS5jb20+CisK
KyAgICAgICAgTGltaXQgbWVtb3J5IHVzZWQgYnkgd2FzbS9yZWZlcmVuY2VzL211bHRpdGFibGUu
anMgb24gbWVtb3J5IGxpbWl0ZWQgZGV2aWNlcworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0
Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjEyNDM3CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZ
IChPT1BTISkuCisKKyAgICAgICAgKiBqc2MuY3BwOgorICAgICAgICAoZnVuY3Rpb25Jc01lbW9y
eUxpbWl0ZWQpOgorCiAyMDIwLTA1LTI3ICBNYXJrIExhbSAgPG1hcmsubGFtQGFwcGxlLmNvbT4K
IAogICAgICAgICBBZGQgbWlzc2luZyAjaW5jbHVkZSBmb3Igd2hlbiBMTElOVF9UUkFDSU5HIGlz
IGVuYWJsZWQuCkluZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvanNjLmNwcAo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENvcmUvanNjLmNwcAkocmV2aXNpb24gMjYyMjE5KQorKysg
U291cmNlL0phdmFTY3JpcHRDb3JlL2pzYy5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTM1NCw2ICsz
NTQsOCBAQCBzdGF0aWMgRW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBmdW5jCiBzdGF0aWMg
RW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBmdW5jdGlvblNldFVuaGFuZGxlZFJlamVjdGlv
bkNhbGxiYWNrKEpTR2xvYmFsT2JqZWN0KiwgQ2FsbEZyYW1lKik7CiBzdGF0aWMgRW5jb2RlZEpT
VmFsdWUgSlNDX0hPU1RfQ0FMTCBmdW5jdGlvbkFzRG91YmxlTnVtYmVyKEpTR2xvYmFsT2JqZWN0
KiwgQ2FsbEZyYW1lKik7CiAKK3N0YXRpYyBFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMIGZ1
bmN0aW9uSXNNZW1vcnlMaW1pdGVkKEpTR2xvYmFsT2JqZWN0KiwgQ2FsbEZyYW1lKik7CisKIHN0
cnVjdCBTY3JpcHQgewogICAgIGVudW0gY2xhc3MgU3RyaWN0TW9kZSB7CiAgICAgICAgIFN0cmlj
dCwKQEAgLTYyMyw2ICs2MjUsOCBAQCBwcml2YXRlOgogICAgICAgICBhZGRGdW5jdGlvbih2bSwg
InNldFVuaGFuZGxlZFJlamVjdGlvbkNhbGxiYWNrIiwgZnVuY3Rpb25TZXRVbmhhbmRsZWRSZWpl
Y3Rpb25DYWxsYmFjaywgMSk7CiAKICAgICAgICAgYWRkRnVuY3Rpb24odm0sICJhc0RvdWJsZU51
bWJlciIsIGZ1bmN0aW9uQXNEb3VibGVOdW1iZXIsIDEpOworCisgICAgICAgIGFkZEZ1bmN0aW9u
KHZtLCAiaXNNZW1vcnlMaW1pdGVkIiwgZnVuY3Rpb25Jc01lbW9yeUxpbWl0ZWQsIDApOwogICAg
IH0KICAgICAKICAgICB2b2lkIGFkZEZ1bmN0aW9uKFZNJiB2bSwgSlNPYmplY3QqIG9iamVjdCwg
Y29uc3QgY2hhciogbmFtZSwgTmF0aXZlRnVuY3Rpb24gZnVuY3Rpb24sIHVuc2lnbmVkIGFyZ3Vt
ZW50cykKQEAgLTI0ODMsNiArMjQ4NywxNSBAQCBFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxM
IGZ1bmN0aW9uQXNECiAgICAgcmV0dXJuIEpTVmFsdWU6OmVuY29kZShqc0RvdWJsZU51bWJlcihu
dW0pKTsKIH0KIAorRW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBmdW5jdGlvbklzTWVtb3J5
TGltaXRlZChKU0dsb2JhbE9iamVjdCosIENhbGxGcmFtZSopCit7CisjaWYgUExBVEZPUk0oSU9T
KSB8fCBQTEFURk9STShUVk9TKSB8fCBQTEFURk9STShXQVRDSE9TKQorICAgIHJldHVybiBKU1Zh
bHVlOjplbmNvZGUoanNCb29sZWFuKHRydWUpKTsKKyNlbHNlCisgICAgcmV0dXJuIEpTVmFsdWU6
OmVuY29kZShqc0Jvb2xlYW4oZmFsc2UpKTsKKyNlbmRpZgorfQorCiAvLyBVc2UgU0VIIGZvciBS
ZWxlYXNlIGJ1aWxkcyBvbmx5IHRvIGdldCByaWQgb2YgdGhlIGNyYXNoIHJlcG9ydCBkaWFsb2cK
IC8vIChsdWNraWx5IHRoZSBzYW1lIHRlc3RzIGZhaWwgaW4gUmVsZWFzZSBhbmQgRGVidWcgYnVp
bGRzIHNvIGZhcikuIE5lZWQgdG8KIC8vIGJlIGluIGEgc2VwYXJhdGUgbWFpbiBmdW5jdGlvbiBi
ZWNhdXNlIHRoZSBqc2NtYWluIGZ1bmN0aW9uIHJlcXVpcmVzIG9iamVjdAo=
</data>
<flag name="review"
          id="415816"
          type_id="1"
          status="+"
          setter="keith_miller"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>400404</attachid>
            <date>2020-05-27 17:00:21 -0700</date>
            <delta_ts>2020-05-27 17:04:00 -0700</delta_ts>
            <desc>patch for landing</desc>
            <filename>b-backup.diff</filename>
            <type>text/plain</type>
            <size>6420</size>
            <attacher name="Saam Barati">saam</attacher>
            
              <data encoding="base64">SW5kZXg6IEpTVGVzdHMvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIEpTVGVzdHMvQ2hhbmdlTG9n
CShyZXZpc2lvbiAyNjIyMjUpCisrKyBKU1Rlc3RzL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpA
QCAtMSwzICsxLDE4IEBACisyMDIwLTA1LTI3ICBTYWFtIEJhcmF0aSAgPHNiYXJhdGlAYXBwbGUu
Y29tPgorCisgICAgICAgIExpbWl0IG1lbW9yeSB1c2VkIGJ5IHdhc20vcmVmZXJlbmNlcy9tdWx0
aXRhYmxlLmpzIG9uIG1lbW9yeSBsaW1pdGVkIGRldmljZXMKKyAgICAgICAgaHR0cHM6Ly9idWdz
LndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIxMjQzNworCisgICAgICAgIFJldmlld2VkIGJ5
IEtlaXRoIE1pbGxlci4KKworICAgICAgICB3YXNtL3JlZmVyZW5jZXMvbXVsdGl0YWJsZS5qcyB3
YXMgdXNpbmcgYXJvdW5kIH43MDBNQiBvZiBtZW1vcnkuCisgICAgICAgIFRoaXMgbG9va3MgbGlr
ZSBpdCdzIGNhdXNpbmcgamV0c2FtcyBvbiBzb21lIG9mIG91ciBpT1MgdGVzdCBydW5uZXJzLgor
ICAgICAgICBUaGlzIHBhdGNoIG1ha2VzIHRoaXMgdGVzdCB1c2UgbGVzcyBtZW1vcnkgb24gbWVt
b3J5IGxpbWl0ZWQgZGV2aWNlcy4KKworICAgICAgICAqIHdhc20vYXNzZXJ0LmpzOgorICAgICAg
ICAqIHdhc20vcmVmZXJlbmNlcy9tdWx0aXRhYmxlLmpzOgorICAgICAgICAoc3RyaW5nX2FwcGVh
cmVkX2hlcmUudGFibGVJbnNhbml0eSk6CisKIDIwMjAtMDUtMjcgIEtlaXRoIE1pbGxlciAgPGtl
aXRoX21pbGxlckBhcHBsZS5jb20+CiAKICAgICAgICAgVW5yZXZpd2VkLCBjYXRjaCBleHBlY3Rl
ZCBleGNlcHRpb24gaW4gbmV3IHRlc3QuCkluZGV4OiBKU1Rlc3RzL3dhc20vYXNzZXJ0LmpzCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIEpTVGVzdHMvd2FzbS9hc3NlcnQuanMJKHJldmlzaW9uIDI2MjIxOSkKKysr
IEpTVGVzdHMvd2FzbS9hc3NlcnQuanMJKHdvcmtpbmcgY29weSkKQEAgLTEyNCwxOSArMTI0LDgg
QEAgY29uc3QgX3Rocm93cyA9IChmdW5jLCB0eXBlLCBtZXNzYWdlLCAuLgogICAgIHRyeSB7CiAg
ICAgICAgIGZ1bmMoLi4uYXJncyk7CiAgICAgfSBjYXRjaCAoZSkgewotICAgICAgICBpZiAoZSBp
bnN0YW5jZW9mIHR5cGUpIHsKLSAgICAgICAgICAgIGlmIChlLm1lc3NhZ2UgPT09IG1lc3NhZ2Up
Ci0gICAgICAgICAgICAgICAgcmV0dXJuIGU7Ci0gICAgICAgICAgICAvLyBJZ25vcmUgc291cmNl
IGluZm9ybWF0aW9uIGF0IHRoZSBlbmQgb2YgdGhlIGVycm9yIG1lc3NhZ2UgaWYgdGhlCi0gICAg
ICAgICAgICAvLyBleHBlY3RlZCBtZXNzYWdlIGRpZG4ndCBzcGVjaWZ5IHRoYXQgaW5mb3JtYXRp
b24uIFNvbWV0aW1lcyBpdAotICAgICAgICAgICAgLy8gY2hhbmdlcywgb3IgaXQncyB0cmlja3kg
dG8gZ2V0IGp1c3QgcmlnaHQuCi0gICAgICAgICAgICBjb25zdCBldmFsdWF0aW5nSW5kZXggPSBl
Lm1lc3NhZ2UuaW5kZXhPZigiIChldmFsdWF0aW5nICciKTsKLSAgICAgICAgICAgIGlmIChldmFs
dWF0aW5nSW5kZXggIT09IC0xKSB7Ci0gICAgICAgICAgICAgICAgY29uc3QgY2xlYW5NZXNzYWdl
ID0gZS5tZXNzYWdlLnN1YnN0cmluZygwLCBldmFsdWF0aW5nSW5kZXgpOwotICAgICAgICAgICAg
ICAgIGlmIChjbGVhbk1lc3NhZ2UgPT09IG1lc3NhZ2UpCi0gICAgICAgICAgICAgICAgICAgIHJl
dHVybiBlOwotICAgICAgICAgICAgfQotICAgICAgICB9CisgICAgICAgIGlmIChlIGluc3RhbmNl
b2YgdHlwZSAmJiBlLm1lc3NhZ2UuaW5kZXhPZihtZXNzYWdlKSA+PSAwKQorICAgICAgICAgICAg
cmV0dXJuIGU7CiAgICAgICAgIF9mYWlsKGBFeHBlY3RlZCB0byB0aHJvdyBhICR7dHlwZS5uYW1l
fSB3aXRoIG1lc3NhZ2UgIiR7bWVzc2FnZX0iLCBnb3QgJHtlLm5hbWV9IHdpdGggbWVzc2FnZSAi
JHtlLm1lc3NhZ2V9ImApOwogICAgIH0KICAgICBfZmFpbChgRXhwZWN0ZWQgdG8gdGhyb3cgYSAk
e3R5cGUubmFtZX0gd2l0aCBtZXNzYWdlICIke21lc3NhZ2V9ImApOwpJbmRleDogSlNUZXN0cy93
YXNtL3JlZmVyZW5jZXMvbXVsdGl0YWJsZS5qcwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBKU1Rlc3RzL3dhc20v
cmVmZXJlbmNlcy9tdWx0aXRhYmxlLmpzCShyZXZpc2lvbiAyNjIyMTkpCisrKyBKU1Rlc3RzL3dh
c20vcmVmZXJlbmNlcy9tdWx0aXRhYmxlLmpzCSh3b3JraW5nIGNvcHkpCkBAIC00MDcsNyArNDA3
LDcgQEAgYXNzZXJ0LnRocm93cygoKSA9PiBuZXcgV2ViQXNzZW1ibHkuSW5zdAogCiBmdW5jdGlv
biB0YWJsZUluc2FuaXR5KG51bSwgYikgewogICAgIGIgPSBiLkltcG9ydCgpCi0gICAgZm9yIChs
ZXQgaT0wOyBpPDEwMDAwMC0xOyArK2kpCisgICAgZm9yIChsZXQgaT0wOyBpIDwgKCR2bS5pc01l
bW9yeUxpbWl0ZWQoKSA/IDEwMDAgOiAxMDAwMDApIC0gMTsgKytpKQogICAgICAgICBiID0gYi5G
dW5jdGlvbigiaW1wIiwgInJlZiIsIHsgcGFyYW1zOiBbXSwgcmV0OiAidm9pZCIgfSkKICAgICBi
ID0gYi5FbmQoKS5GdW5jdGlvbigpLkVuZCgpLlRhYmxlKCkKICAgICBmb3IgKGxldCBpPTA7IGk8
bnVtOyArK2kpCkBAIC00MjUsOSArNDI1LDExIEBAIGFzc2VydC50aHJvd3MoKCkgPT4gbmV3IFdl
YkFzc2VtYmx5Lkluc3QKICAgICAgICAgICAgICAgLkdldExvY2FsKDApCiAgICAgICAgICAgICAg
IC5UYWJsZVNldCgxKQogICAgICAgICAgICAgLkVuZCgpCi0gICAgICAgICAgLkVuZCgpLldlYkFz
c2VtYmx5KCkuZ2V0KCkpKSwgRXJyb3IsICJXZWJBc3NlbWJseS5Nb2R1bGUgZG9lc24ndCBwYXJz
ZSBhdCBieXRlIDUwMDAwMjc6IFRhYmxlIGNvdW50IG9mIDEwMDAwMDAgaXMgdG9vIGJpZywgbWF4
aW11bSAxMDAwMDAwIChldmFsdWF0aW5nICduZXcgV2ViQXNzZW1ibHkuTW9kdWxlJykiKQorICAg
ICAgICAgIC5FbmQoKS5XZWJBc3NlbWJseSgpLmdldCgpKSksIEVycm9yLCAiVGFibGUgY291bnQg
b2YgMTAwMDAwMCBpcyB0b28gYmlnLCBtYXhpbXVtIDEwMDAwMDAiKTsKKwogewotICAgIGNvbnN0
ICQxID0gbmV3IFdlYkFzc2VtYmx5Lkluc3RhbmNlKG5ldyBXZWJBc3NlbWJseS5Nb2R1bGUodGFi
bGVJbnNhbml0eSgxMDAwMDAwLTIsIChuZXcgQnVpbGRlcigpKQorICAgIGNvbnN0IGxhcmdlTnVt
YmVyID0gJHZtLmlzTWVtb3J5TGltaXRlZCgpID8gMTAwMDAgOiAxMDAwMDAwOworICAgIGNvbnN0
ICQxID0gbmV3IFdlYkFzc2VtYmx5Lkluc3RhbmNlKG5ldyBXZWJBc3NlbWJseS5Nb2R1bGUodGFi
bGVJbnNhbml0eShsYXJnZU51bWJlci0yLCAobmV3IEJ1aWxkZXIoKSkKICAgICAgICAgICAuVHlw
ZSgpLkVuZCgpKQogICAgICAgICAgICAgICAgIC5UYWJsZSh7aW5pdGlhbDogMywgbWF4aW11bTog
MywgZWxlbWVudDogImZ1bmNyZWYifSkKICAgICAgICAgICAgICAgICAuVGFibGUoe2luaXRpYWw6
IDMsIG1heGltdW06IDMsIGVsZW1lbnQ6ICJhbnlyZWYifSkKQEAgLTQzOCwyMSArNDQwLDIxIEBA
IGFzc2VydC50aHJvd3MoKCkgPT4gbmV3IFdlYkFzc2VtYmx5Lkluc3QKICAgICAgICAgICAgICAg
ICAuRnVuY3Rpb24oImNhbGwiKQogICAgICAgICAgIC5FbmQoKQogICAgICAgICAgIC5FbGVtZW50
KCkKLSAgICAgICAgICAgICAgICAuRWxlbWVudCh7dGFibGVJbmRleDogMTAwMDAwMC0yLCBvZmZz
ZXQ6IDAsIGZ1bmN0aW9uSW5kaWNlczogWzBdfSkKKyAgICAgICAgICAgICAgICAuRWxlbWVudCh7
dGFibGVJbmRleDogbGFyZ2VOdW1iZXItMiwgb2Zmc2V0OiAwLCBmdW5jdGlvbkluZGljZXM6IFsw
XX0pCiAgICAgICAgICAgLkVuZCgpCiAgICAgICAgICAgLkNvZGUoKQogICAgICAgICAgICAgLkZ1
bmN0aW9uKCJzZXRfdGJsIiwgeyBwYXJhbXM6IFsiYW55cmVmIl0sIHJldDogInZvaWQiIH0pCiAg
ICAgICAgICAgICAgIC5JMzJDb25zdCgwKQogICAgICAgICAgICAgICAuR2V0TG9jYWwoMCkKLSAg
ICAgICAgICAgICAgLlRhYmxlU2V0KDEwMDAwMDAtMSkKKyAgICAgICAgICAgICAgLlRhYmxlU2V0
KGxhcmdlTnVtYmVyLTEpCiAgICAgICAgICAgICAuRW5kKCkKICAgICAgICAgICAgIC5GdW5jdGlv
bigiZ2V0X3RibCIsIHsgcGFyYW1zOiBbXSwgcmV0OiAiYW55cmVmIiB9KQogICAgICAgICAgICAg
ICAuSTMyQ29uc3QoMCkKLSAgICAgICAgICAgICAgLlRhYmxlR2V0KDEwMDAwMDAtMSkKKyAgICAg
ICAgICAgICAgLlRhYmxlR2V0KGxhcmdlTnVtYmVyLTEpCiAgICAgICAgICAgICAuRW5kKCkKICAg
ICAgICAgICAgIC5GdW5jdGlvbigiY2FsbCIsIHsgcGFyYW1zOiBbXSwgcmV0OiAidm9pZCIgfSkK
ICAgICAgICAgICAgICAgLkkzMkNvbnN0KDApCi0gICAgICAgICAgICAgIC5DYWxsSW5kaXJlY3Qo
MCwgMTAwMDAwMC0yKQorICAgICAgICAgICAgICAuQ2FsbEluZGlyZWN0KDAsIGxhcmdlTnVtYmVy
LTIpCiAgICAgICAgICAgICAuRW5kKCkKICAgICAgICAgICAuRW5kKCkuV2ViQXNzZW1ibHkoKS5n
ZXQoKSksIHsgaW1wOiB7IHJlZjogZnVuY3Rpb24gKCkge30gfSB9KQogICAgICQxLmV4cG9ydHMu
c2V0X3RibCgiaGkiKQpJbmRleDogU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENvcmUvQ2hhbmdlTG9nCShyZXZpc2lvbiAyNjIy
MTkpCisrKyBTb3VyY2UvSmF2YVNjcmlwdENvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsMTQgQEAKKzIwMjAtMDUtMjcgIFNhYW0gQmFyYXRpICA8c2JhcmF0aUBhcHBsZS5j
b20+CisKKyAgICAgICAgTGltaXQgbWVtb3J5IHVzZWQgYnkgd2FzbS9yZWZlcmVuY2VzL211bHRp
dGFibGUuanMgb24gbWVtb3J5IGxpbWl0ZWQgZGV2aWNlcworICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjEyNDM3CisKKyAgICAgICAgUmV2aWV3ZWQgYnkg
S2VpdGggTWlsbGVyLgorCisgICAgICAgICogdG9vbHMvSlNEb2xsYXJWTS5jcHA6CisgICAgICAg
IChKU0M6OmZ1bmN0aW9uSXNNZW1vcnlMaW1pdGVkKToKKyAgICAgICAgKEpTQzo6SlNEb2xsYXJW
TTo6ZmluaXNoQ3JlYXRpb24pOgorCiAyMDIwLTA1LTI3ICBNYXJrIExhbSAgPG1hcmsubGFtQGFw
cGxlLmNvbT4KIAogICAgICAgICBBZGQgbWlzc2luZyAjaW5jbHVkZSBmb3Igd2hlbiBMTElOVF9U
UkFDSU5HIGlzIGVuYWJsZWQuCkluZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvdG9vbHMvSlNE
b2xsYXJWTS5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL0phdmFTY3JpcHRDb3JlL3Rvb2xzL0pT
RG9sbGFyVk0uY3BwCShyZXZpc2lvbiAyNjIyMTkpCisrKyBTb3VyY2UvSmF2YVNjcmlwdENvcmUv
dG9vbHMvSlNEb2xsYXJWTS5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTI5NzksNiArMjk3OSwxNiBA
QCBzdGF0aWMgRW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBmdW5jCiAgICAgcmV0dXJuIEpT
VmFsdWU6OmVuY29kZShqc0Jvb2xlYW4oQVNTRVJUX0VOQUJMRUQpKTsKIH0KIAorc3RhdGljIEVu
Y29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwgZnVuY3Rpb25Jc01lbW9yeUxpbWl0ZWQoSlNHbG9i
YWxPYmplY3QqLCBDYWxsRnJhbWUqKQoreworI2lmIFBMQVRGT1JNKElPUykgfHwgUExBVEZPUk0o
VFZPUykgfHwgUExBVEZPUk0oV0FUQ0hPUykKKyAgICByZXR1cm4gSlNWYWx1ZTo6ZW5jb2RlKGpz
Qm9vbGVhbih0cnVlKSk7CisjZWxzZQorICAgIHJldHVybiBKU1ZhbHVlOjplbmNvZGUoanNCb29s
ZWFuKGZhbHNlKSk7CisjZW5kaWYKK30KKworCiB2b2lkIEpTRG9sbGFyVk06OmZpbmlzaENyZWF0
aW9uKFZNJiB2bSkKIHsKICAgICBEb2xsYXJWTUFzc2VydFNjb3BlIGFzc2VydFNjb3BlOwpAQCAt
MzExOCw2ICszMTI4LDggQEAgdm9pZCBKU0RvbGxhclZNOjpmaW5pc2hDcmVhdGlvbihWTSYgdm0p
CiAKICAgICBhZGRGdW5jdGlvbih2bSwgImFzc2VydEVuYWJsZWQiLCBmdW5jdGlvbkFzc2VydEVu
YWJsZWQsIDApOwogCisgICAgYWRkRnVuY3Rpb24odm0sICJpc01lbW9yeUxpbWl0ZWQiLCBmdW5j
dGlvbklzTWVtb3J5TGltaXRlZCwgMCk7CisKICAgICBtX29iamVjdERvaW5nU2lkZUVmZmVjdFB1
dFdpdGhvdXRDb3JyZWN0U2xvdFN0YXR1c1N0cnVjdHVyZS5zZXQodm0sIHRoaXMsIE9iamVjdERv
aW5nU2lkZUVmZmVjdFB1dFdpdGhvdXRDb3JyZWN0U2xvdFN0YXR1czo6Y3JlYXRlU3RydWN0dXJl
KHZtLCBnbG9iYWxPYmplY3QsIGpzTnVsbCgpKSk7CiB9CiAK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>400405</attachid>
            <date>2020-05-27 17:04:00 -0700</date>
            <delta_ts>2020-05-27 17:46:34 -0700</delta_ts>
            <desc>patch for landing</desc>
            <filename>b-backup.diff</filename>
            <type>text/plain</type>
            <size>6418</size>
            <attacher name="Saam Barati">saam</attacher>
            
              <data encoding="base64">SW5kZXg6IEpTVGVzdHMvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIEpTVGVzdHMvQ2hhbmdlTG9n
CShyZXZpc2lvbiAyNjIyMjUpCisrKyBKU1Rlc3RzL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpA
QCAtMSwzICsxLDE4IEBACisyMDIwLTA1LTI3ICBTYWFtIEJhcmF0aSAgPHNiYXJhdGlAYXBwbGUu
Y29tPgorCisgICAgICAgIExpbWl0IG1lbW9yeSB1c2VkIGJ5IHdhc20vcmVmZXJlbmNlcy9tdWx0
aXRhYmxlLmpzIG9uIG1lbW9yeSBsaW1pdGVkIGRldmljZXMKKyAgICAgICAgaHR0cHM6Ly9idWdz
LndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIxMjQzNworCisgICAgICAgIFJldmlld2VkIGJ5
IEtlaXRoIE1pbGxlci4KKworICAgICAgICB3YXNtL3JlZmVyZW5jZXMvbXVsdGl0YWJsZS5qcyB3
YXMgdXNpbmcgYXJvdW5kIH43MDBNQiBvZiBtZW1vcnkuCisgICAgICAgIFRoaXMgbG9va3MgbGlr
ZSBpdCdzIGNhdXNpbmcgamV0c2FtcyBvbiBzb21lIG9mIG91ciBpT1MgdGVzdCBydW5uZXJzLgor
ICAgICAgICBUaGlzIHBhdGNoIG1ha2VzIHRoaXMgdGVzdCB1c2UgbGVzcyBtZW1vcnkgb24gbWVt
b3J5IGxpbWl0ZWQgZGV2aWNlcy4KKworICAgICAgICAqIHdhc20vYXNzZXJ0LmpzOgorICAgICAg
ICAqIHdhc20vcmVmZXJlbmNlcy9tdWx0aXRhYmxlLmpzOgorICAgICAgICAoc3RyaW5nX2FwcGVh
cmVkX2hlcmUudGFibGVJbnNhbml0eSk6CisKIDIwMjAtMDUtMjcgIEtlaXRoIE1pbGxlciAgPGtl
aXRoX21pbGxlckBhcHBsZS5jb20+CiAKICAgICAgICAgVW5yZXZpd2VkLCBjYXRjaCBleHBlY3Rl
ZCBleGNlcHRpb24gaW4gbmV3IHRlc3QuCkluZGV4OiBKU1Rlc3RzL3dhc20vYXNzZXJ0LmpzCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIEpTVGVzdHMvd2FzbS9hc3NlcnQuanMJKHJldmlzaW9uIDI2MjIxOSkKKysr
IEpTVGVzdHMvd2FzbS9hc3NlcnQuanMJKHdvcmtpbmcgY29weSkKQEAgLTEyNCwxOSArMTI0LDgg
QEAgY29uc3QgX3Rocm93cyA9IChmdW5jLCB0eXBlLCBtZXNzYWdlLCAuLgogICAgIHRyeSB7CiAg
ICAgICAgIGZ1bmMoLi4uYXJncyk7CiAgICAgfSBjYXRjaCAoZSkgewotICAgICAgICBpZiAoZSBp
bnN0YW5jZW9mIHR5cGUpIHsKLSAgICAgICAgICAgIGlmIChlLm1lc3NhZ2UgPT09IG1lc3NhZ2Up
Ci0gICAgICAgICAgICAgICAgcmV0dXJuIGU7Ci0gICAgICAgICAgICAvLyBJZ25vcmUgc291cmNl
IGluZm9ybWF0aW9uIGF0IHRoZSBlbmQgb2YgdGhlIGVycm9yIG1lc3NhZ2UgaWYgdGhlCi0gICAg
ICAgICAgICAvLyBleHBlY3RlZCBtZXNzYWdlIGRpZG4ndCBzcGVjaWZ5IHRoYXQgaW5mb3JtYXRp
b24uIFNvbWV0aW1lcyBpdAotICAgICAgICAgICAgLy8gY2hhbmdlcywgb3IgaXQncyB0cmlja3kg
dG8gZ2V0IGp1c3QgcmlnaHQuCi0gICAgICAgICAgICBjb25zdCBldmFsdWF0aW5nSW5kZXggPSBl
Lm1lc3NhZ2UuaW5kZXhPZigiIChldmFsdWF0aW5nICciKTsKLSAgICAgICAgICAgIGlmIChldmFs
dWF0aW5nSW5kZXggIT09IC0xKSB7Ci0gICAgICAgICAgICAgICAgY29uc3QgY2xlYW5NZXNzYWdl
ID0gZS5tZXNzYWdlLnN1YnN0cmluZygwLCBldmFsdWF0aW5nSW5kZXgpOwotICAgICAgICAgICAg
ICAgIGlmIChjbGVhbk1lc3NhZ2UgPT09IG1lc3NhZ2UpCi0gICAgICAgICAgICAgICAgICAgIHJl
dHVybiBlOwotICAgICAgICAgICAgfQotICAgICAgICB9CisgICAgICAgIGlmIChlIGluc3RhbmNl
b2YgdHlwZSAmJiBlLm1lc3NhZ2UuaW5kZXhPZihtZXNzYWdlKSA+PSAwKQorICAgICAgICAgICAg
cmV0dXJuIGU7CiAgICAgICAgIF9mYWlsKGBFeHBlY3RlZCB0byB0aHJvdyBhICR7dHlwZS5uYW1l
fSB3aXRoIG1lc3NhZ2UgIiR7bWVzc2FnZX0iLCBnb3QgJHtlLm5hbWV9IHdpdGggbWVzc2FnZSAi
JHtlLm1lc3NhZ2V9ImApOwogICAgIH0KICAgICBfZmFpbChgRXhwZWN0ZWQgdG8gdGhyb3cgYSAk
e3R5cGUubmFtZX0gd2l0aCBtZXNzYWdlICIke21lc3NhZ2V9ImApOwpJbmRleDogSlNUZXN0cy93
YXNtL3JlZmVyZW5jZXMvbXVsdGl0YWJsZS5qcwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBKU1Rlc3RzL3dhc20v
cmVmZXJlbmNlcy9tdWx0aXRhYmxlLmpzCShyZXZpc2lvbiAyNjIyMTkpCisrKyBKU1Rlc3RzL3dh
c20vcmVmZXJlbmNlcy9tdWx0aXRhYmxlLmpzCSh3b3JraW5nIGNvcHkpCkBAIC00MDcsNyArNDA3
LDcgQEAgYXNzZXJ0LnRocm93cygoKSA9PiBuZXcgV2ViQXNzZW1ibHkuSW5zdAogCiBmdW5jdGlv
biB0YWJsZUluc2FuaXR5KG51bSwgYikgewogICAgIGIgPSBiLkltcG9ydCgpCi0gICAgZm9yIChs
ZXQgaT0wOyBpPDEwMDAwMC0xOyArK2kpCisgICAgZm9yIChsZXQgaT0wOyBpIDwgKCR2bS5pc01l
bW9yeUxpbWl0ZWQoKSA/IDEwMDAgOiAxMDAwMDApIC0gMTsgKytpKQogICAgICAgICBiID0gYi5G
dW5jdGlvbigiaW1wIiwgInJlZiIsIHsgcGFyYW1zOiBbXSwgcmV0OiAidm9pZCIgfSkKICAgICBi
ID0gYi5FbmQoKS5GdW5jdGlvbigpLkVuZCgpLlRhYmxlKCkKICAgICBmb3IgKGxldCBpPTA7IGk8
bnVtOyArK2kpCkBAIC00MjUsOSArNDI1LDExIEBAIGFzc2VydC50aHJvd3MoKCkgPT4gbmV3IFdl
YkFzc2VtYmx5Lkluc3QKICAgICAgICAgICAgICAgLkdldExvY2FsKDApCiAgICAgICAgICAgICAg
IC5UYWJsZVNldCgxKQogICAgICAgICAgICAgLkVuZCgpCi0gICAgICAgICAgLkVuZCgpLldlYkFz
c2VtYmx5KCkuZ2V0KCkpKSwgRXJyb3IsICJXZWJBc3NlbWJseS5Nb2R1bGUgZG9lc24ndCBwYXJz
ZSBhdCBieXRlIDUwMDAwMjc6IFRhYmxlIGNvdW50IG9mIDEwMDAwMDAgaXMgdG9vIGJpZywgbWF4
aW11bSAxMDAwMDAwIChldmFsdWF0aW5nICduZXcgV2ViQXNzZW1ibHkuTW9kdWxlJykiKQorICAg
ICAgICAgIC5FbmQoKS5XZWJBc3NlbWJseSgpLmdldCgpKSksIEVycm9yLCAiVGFibGUgY291bnQg
b2YgMTAwMDAwMCBpcyB0b28gYmlnLCBtYXhpbXVtIDEwMDAwMDAiKTsKKwogewotICAgIGNvbnN0
ICQxID0gbmV3IFdlYkFzc2VtYmx5Lkluc3RhbmNlKG5ldyBXZWJBc3NlbWJseS5Nb2R1bGUodGFi
bGVJbnNhbml0eSgxMDAwMDAwLTIsIChuZXcgQnVpbGRlcigpKQorICAgIGNvbnN0IGxhcmdlTnVt
YmVyID0gJHZtLmlzTWVtb3J5TGltaXRlZCgpID8gMTAwMDAgOiAxMDAwMDAwOworICAgIGNvbnN0
ICQxID0gbmV3IFdlYkFzc2VtYmx5Lkluc3RhbmNlKG5ldyBXZWJBc3NlbWJseS5Nb2R1bGUodGFi
bGVJbnNhbml0eShsYXJnZU51bWJlci0yLCAobmV3IEJ1aWxkZXIoKSkKICAgICAgICAgICAuVHlw
ZSgpLkVuZCgpKQogICAgICAgICAgICAgICAgIC5UYWJsZSh7aW5pdGlhbDogMywgbWF4aW11bTog
MywgZWxlbWVudDogImZ1bmNyZWYifSkKICAgICAgICAgICAgICAgICAuVGFibGUoe2luaXRpYWw6
IDMsIG1heGltdW06IDMsIGVsZW1lbnQ6ICJhbnlyZWYifSkKQEAgLTQzOCwyMSArNDQwLDIxIEBA
IGFzc2VydC50aHJvd3MoKCkgPT4gbmV3IFdlYkFzc2VtYmx5Lkluc3QKICAgICAgICAgICAgICAg
ICAuRnVuY3Rpb24oImNhbGwiKQogICAgICAgICAgIC5FbmQoKQogICAgICAgICAgIC5FbGVtZW50
KCkKLSAgICAgICAgICAgICAgICAuRWxlbWVudCh7dGFibGVJbmRleDogMTAwMDAwMC0yLCBvZmZz
ZXQ6IDAsIGZ1bmN0aW9uSW5kaWNlczogWzBdfSkKKyAgICAgICAgICAgICAgICAuRWxlbWVudCh7
dGFibGVJbmRleDogbGFyZ2VOdW1iZXItMiwgb2Zmc2V0OiAwLCBmdW5jdGlvbkluZGljZXM6IFsw
XX0pCiAgICAgICAgICAgLkVuZCgpCiAgICAgICAgICAgLkNvZGUoKQogICAgICAgICAgICAgLkZ1
bmN0aW9uKCJzZXRfdGJsIiwgeyBwYXJhbXM6IFsiYW55cmVmIl0sIHJldDogInZvaWQiIH0pCiAg
ICAgICAgICAgICAgIC5JMzJDb25zdCgwKQogICAgICAgICAgICAgICAuR2V0TG9jYWwoMCkKLSAg
ICAgICAgICAgICAgLlRhYmxlU2V0KDEwMDAwMDAtMSkKKyAgICAgICAgICAgICAgLlRhYmxlU2V0
KGxhcmdlTnVtYmVyLTEpCiAgICAgICAgICAgICAuRW5kKCkKICAgICAgICAgICAgIC5GdW5jdGlv
bigiZ2V0X3RibCIsIHsgcGFyYW1zOiBbXSwgcmV0OiAiYW55cmVmIiB9KQogICAgICAgICAgICAg
ICAuSTMyQ29uc3QoMCkKLSAgICAgICAgICAgICAgLlRhYmxlR2V0KDEwMDAwMDAtMSkKKyAgICAg
ICAgICAgICAgLlRhYmxlR2V0KGxhcmdlTnVtYmVyLTEpCiAgICAgICAgICAgICAuRW5kKCkKICAg
ICAgICAgICAgIC5GdW5jdGlvbigiY2FsbCIsIHsgcGFyYW1zOiBbXSwgcmV0OiAidm9pZCIgfSkK
ICAgICAgICAgICAgICAgLkkzMkNvbnN0KDApCi0gICAgICAgICAgICAgIC5DYWxsSW5kaXJlY3Qo
MCwgMTAwMDAwMC0yKQorICAgICAgICAgICAgICAuQ2FsbEluZGlyZWN0KDAsIGxhcmdlTnVtYmVy
LTIpCiAgICAgICAgICAgICAuRW5kKCkKICAgICAgICAgICAuRW5kKCkuV2ViQXNzZW1ibHkoKS5n
ZXQoKSksIHsgaW1wOiB7IHJlZjogZnVuY3Rpb24gKCkge30gfSB9KQogICAgICQxLmV4cG9ydHMu
c2V0X3RibCgiaGkiKQpJbmRleDogU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENvcmUvQ2hhbmdlTG9nCShyZXZpc2lvbiAyNjIy
MTkpCisrKyBTb3VyY2UvSmF2YVNjcmlwdENvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsMTQgQEAKKzIwMjAtMDUtMjcgIFNhYW0gQmFyYXRpICA8c2JhcmF0aUBhcHBsZS5j
b20+CisKKyAgICAgICAgTGltaXQgbWVtb3J5IHVzZWQgYnkgd2FzbS9yZWZlcmVuY2VzL211bHRp
dGFibGUuanMgb24gbWVtb3J5IGxpbWl0ZWQgZGV2aWNlcworICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjEyNDM3CisKKyAgICAgICAgUmV2aWV3ZWQgYnkg
S2VpdGggTWlsbGVyLgorCisgICAgICAgICogdG9vbHMvSlNEb2xsYXJWTS5jcHA6CisgICAgICAg
IChKU0M6OmZ1bmN0aW9uSXNNZW1vcnlMaW1pdGVkKToKKyAgICAgICAgKEpTQzo6SlNEb2xsYXJW
TTo6ZmluaXNoQ3JlYXRpb24pOgorCiAyMDIwLTA1LTI3ICBNYXJrIExhbSAgPG1hcmsubGFtQGFw
cGxlLmNvbT4KIAogICAgICAgICBBZGQgbWlzc2luZyAjaW5jbHVkZSBmb3Igd2hlbiBMTElOVF9U
UkFDSU5HIGlzIGVuYWJsZWQuCkluZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvdG9vbHMvSlNE
b2xsYXJWTS5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL0phdmFTY3JpcHRDb3JlL3Rvb2xzL0pT
RG9sbGFyVk0uY3BwCShyZXZpc2lvbiAyNjIyMTkpCisrKyBTb3VyY2UvSmF2YVNjcmlwdENvcmUv
dG9vbHMvSlNEb2xsYXJWTS5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTI5NzksNiArMjk3OSwxNSBA
QCBzdGF0aWMgRW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBmdW5jCiAgICAgcmV0dXJuIEpT
VmFsdWU6OmVuY29kZShqc0Jvb2xlYW4oQVNTRVJUX0VOQUJMRUQpKTsKIH0KIAorc3RhdGljIEVu
Y29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwgZnVuY3Rpb25Jc01lbW9yeUxpbWl0ZWQoSlNHbG9i
YWxPYmplY3QqLCBDYWxsRnJhbWUqKQoreworI2lmIFBMQVRGT1JNKElPUykgfHwgUExBVEZPUk0o
VFZPUykgfHwgUExBVEZPUk0oV0FUQ0hPUykKKyAgICByZXR1cm4gSlNWYWx1ZTo6ZW5jb2RlKGpz
Qm9vbGVhbih0cnVlKSk7CisjZWxzZQorICAgIHJldHVybiBKU1ZhbHVlOjplbmNvZGUoanNCb29s
ZWFuKGZhbHNlKSk7CisjZW5kaWYKK30KKwogdm9pZCBKU0RvbGxhclZNOjpmaW5pc2hDcmVhdGlv
bihWTSYgdm0pCiB7CiAgICAgRG9sbGFyVk1Bc3NlcnRTY29wZSBhc3NlcnRTY29wZTsKQEAgLTMx
MTgsNiArMzEyNyw4IEBAIHZvaWQgSlNEb2xsYXJWTTo6ZmluaXNoQ3JlYXRpb24oVk0mIHZtKQog
CiAgICAgYWRkRnVuY3Rpb24odm0sICJhc3NlcnRFbmFibGVkIiwgZnVuY3Rpb25Bc3NlcnRFbmFi
bGVkLCAwKTsKIAorICAgIGFkZEZ1bmN0aW9uKHZtLCAiaXNNZW1vcnlMaW1pdGVkIiwgZnVuY3Rp
b25Jc01lbW9yeUxpbWl0ZWQsIDApOworCiAgICAgbV9vYmplY3REb2luZ1NpZGVFZmZlY3RQdXRX
aXRob3V0Q29ycmVjdFNsb3RTdGF0dXNTdHJ1Y3R1cmUuc2V0KHZtLCB0aGlzLCBPYmplY3REb2lu
Z1NpZGVFZmZlY3RQdXRXaXRob3V0Q29ycmVjdFNsb3RTdGF0dXM6OmNyZWF0ZVN0cnVjdHVyZSh2
bSwgZ2xvYmFsT2JqZWN0LCBqc051bGwoKSkpOwogfQogCg==
</data>

          </attachment>
      

    </bug>

</bugzilla>