<?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>198988</bug_id>
          
          <creation_ts>2019-06-18 18:38:48 -0700</creation_ts>
          <short_desc>[WHLSL] The checker needs to resolve types for the anonymous variables in ReadModifyWrite expressions</short_desc>
          <delta_ts>2019-06-19 19:06:17 -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>WebGPU</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>P1</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>commit-queue</cc>
    
    <cc>dino</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>fpizlo</cc>
    
    <cc>jonlee</cc>
    
    <cc>justin_fan</cc>
    
    <cc>mmaxfield</cc>
    
    <cc>rmorisset</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1545927</commentid>
    <comment_count>0</comment_count>
    <who name="Saam Barati">saam</who>
    <bug_when>2019-06-18 18:38:48 -0700</bug_when>
    <thetext>float4 x;
x[1] += 20;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1546162</commentid>
    <comment_count>1</comment_count>
    <who name="Saam Barati">saam</who>
    <bug_when>2019-06-19 11:55:50 -0700</bug_when>
    <thetext>Seems like it’s actually name resolution for types</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1546280</commentid>
    <comment_count>2</comment_count>
    <who name="Saam Barati">saam</who>
    <bug_when>2019-06-19 16:44:52 -0700</bug_when>
    <thetext>patch forthcoming</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1546299</commentid>
    <comment_count>3</comment_count>
      <attachid>372501</attachid>
    <who name="Saam Barati">saam</who>
    <bug_when>2019-06-19 17:11:26 -0700</bug_when>
    <thetext>Created attachment 372501
patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1546303</commentid>
    <comment_count>4</comment_count>
    <who name="EWS Watchlist">ews-watchlist</who>
    <bug_when>2019-06-19 17:14:09 -0700</bug_when>
    <thetext>Attachment 372501 did not pass style-queue:


ERROR: Source/WebCore/ChangeLog:11:  Line contains tab character.  [whitespace/tab] [5]
Total errors found: 1 in 7 files


If any of these errors are false positives, please file a bug against check-webkit-style.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1546316</commentid>
    <comment_count>5</comment_count>
      <attachid>372501</attachid>
    <who name="Dean Jackson">dino</who>
    <bug_when>2019-06-19 17:24:26 -0700</bug_when>
    <thetext>Comment on attachment 372501
patch

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

&gt; Source/WebCore/ChangeLog:11
&gt; +        		

TAB!!!!!!! Security has been called.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1546327</commentid>
    <comment_count>6</comment_count>
    <who name="Saam Barati">saam</who>
    <bug_when>2019-06-19 17:48:02 -0700</bug_when>
    <thetext>(In reply to Dean Jackson from comment #5)
&gt; Comment on attachment 372501 [details]
&gt; patch
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=372501&amp;action=review
&gt; 
&gt; &gt; Source/WebCore/ChangeLog:11
&gt; &gt; +        		
&gt; 
&gt; TAB!!!!!!! Security has been called.

Vim likes to insert tabs when it auto indents changelog entries. It&apos;s super annoying.

Thanks for the review.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1546328</commentid>
    <comment_count>7</comment_count>
    <who name="Myles C. Maxfield">mmaxfield</who>
    <bug_when>2019-06-19 17:49:26 -0700</bug_when>
    <thetext>r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1546353</commentid>
    <comment_count>8</comment_count>
      <attachid>372510</attachid>
    <who name="Saam Barati">saam</who>
    <bug_when>2019-06-19 18:23:18 -0700</bug_when>
    <thetext>Created attachment 372510
patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1546369</commentid>
    <comment_count>9</comment_count>
      <attachid>372510</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2019-06-19 19:05:34 -0700</bug_when>
    <thetext>Comment on attachment 372510
patch for landing

Clearing flags on attachment: 372510

Committed r246625: &lt;https://trac.webkit.org/changeset/246625&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1546370</commentid>
    <comment_count>10</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2019-06-19 19:05:36 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1546371</commentid>
    <comment_count>11</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2019-06-19 19:06:17 -0700</bug_when>
    <thetext>&lt;rdar://problem/51924745&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>372501</attachid>
            <date>2019-06-19 17:11:26 -0700</date>
            <delta_ts>2019-06-19 18:23:18 -0700</delta_ts>
            <desc>patch</desc>
            <filename>c-backup.diff</filename>
            <type>text/plain</type>
            <size>10492</size>
            <attacher name="Saam Barati">saam</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDI0NjYxNSkKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDMxIEBACisyMDE5LTA2LTE5ICBTYWFtIEJh
cmF0aSAgPHNiYXJhdGlAYXBwbGUuY29tPgorCisgICAgICAgIFtXSExTTF0gVGhlIGNoZWNrZXIg
bmVlZHMgdG8gcmVzb2x2ZSB0eXBlcyBmb3IgdGhlIGFub255bW91cyB2YXJpYWJsZXMgaW4gUmVh
ZE1vZGlmeVdyaXRlIGV4cHJlc3Npb25zCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3Jn
L3Nob3dfYnVnLmNnaT9pZD0xOTg5ODgKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9P
UFMhKS4KKworICAgICAgICBUaGlzIHBhdGNoIG1ha2VzIGl0IHNvIHRoYXQgdGhlIENoZWNrZXIg
YXNzaWducyB0eXBlcyB0byB0aGUgaW50ZXJuYWwgdmFyaWFibGVzCisgICAgICAgIGluIGEgcmVh
ZCBtb2RpZnkgd3JpdGUgZXhwcmVzc2lvbi4gVGhlc2Ugd2VyZSB0aGUgb25seSB2YXJpYWJsZXMg
dGhhdCBkaWRuJ3QgaGF2ZQorICAgICAgICB0eXBlcyBhc2NyaWJlZCB0byB0aGVtLgorICAgICAg
ICAJCQorICAgICAgICBUaGlzIHBhdGNoIGFsc28gZG9lcyBhIGZseSBieSBmaXggd2hlcmUgd2Ug
a2VwdCBwb2ludGVycyB0byB2YWx1ZSB0eXBlcworICAgICAgICBpbiBhIEhhc2hNYXAgaW4gdGhl
IGNoZWNrZXIuIFRoaXMgaXMgd3JvbmcgcHJlY2lzZWx5IHdoZW4gdGhlIEhhc2hNYXAgZ2V0cwor
ICAgICAgICByZXNpemVkLiBJbnN0ZWFkLCB3ZSBub3cganVzdCBzdG9yZSB0aGUgdmFsdWUgaXRz
ZWxmIHNpbmNlIHdlJ3JlIGp1c3QKKyAgICAgICAgZGVhbGluZyB3aXRoIGEgc2ltcGxlIFZhcmlh
bnQgdGhhdCB3cmFwcyBlaXRoZXIgYW4gZW1wdHkgc3RydWN0IG9yIGFuCisgICAgICAgIGVudW0u
CisKKyAgICAgICAgVGVzdDogd2ViZ3B1L3dobHNsLWNoZWNrZXItc2hvdWxkLXNldC10eXBlLW9m
LXJlYWQtbW9kaWZ5LXdyaXRlLXZhcmlhYmxlcy5odG1sCisKKyAgICAgICAgKiBNb2R1bGVzL3dl
YmdwdS9XSExTTC9BU1QvV0hMU0xWYXJpYWJsZURlY2xhcmF0aW9uLmg6CisgICAgICAgIChXZWJD
b3JlOjpXSExTTDo6QVNUOjpWYXJpYWJsZURlY2xhcmF0aW9uOjpzZXRUeXBlKToKKyAgICAgICAg
KFdlYkNvcmU6OldITFNMOjpBU1Q6OlZhcmlhYmxlRGVjbGFyYXRpb246OnR5cGUgY29uc3QpOgor
ICAgICAgICAqIE1vZHVsZXMvd2ViZ3B1L1dITFNML1dITFNMQVNURHVtcGVyLmNwcDogTWFrZSBp
dCBvYnZpb3VzIHRoYXQgcmVhZAorICAgICAgICBtb2RpZnkgd3JpdGUgZXhwcmVzc2lvbnMgYXJl
IHN1Y2ggYnkgcHJlZml4aW5nIHRoZW0gd2l0aCAiUk1XIi4KKyAgICAgICAgKFdlYkNvcmU6OldI
TFNMOjpBU1REdW1wZXI6OnZpc2l0KToKKyAgICAgICAgKiBNb2R1bGVzL3dlYmdwdS9XSExTTC9X
SExTTENoZWNrZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6V0hMU0w6OkNoZWNrZXI6OnZpc2l0
KToKKwogMjAxOS0wNi0xOSAgSmVyIE5vYmxlICA8amVyLm5vYmxlQGFwcGxlLmNvbT4KIAogICAg
ICAgICBpT1MgMTIuMiBEcmF3aW5nIHBvcnRyYWl0IHZpZGVvIHRvIGNhbnZhcyBpcyBzaWRld2F5
cwpJbmRleDogU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJncHUvV0hMU0wvV0hMU0xBU1REdW1w
ZXIuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViZ3B1L1dITFNM
L1dITFNMQVNURHVtcGVyLmNwcAkocmV2aXNpb24gMjQ2NjEzKQorKysgU291cmNlL1dlYkNvcmUv
TW9kdWxlcy93ZWJncHUvV0hMU0wvV0hMU0xBU1REdW1wZXIuY3BwCSh3b3JraW5nIGNvcHkpCkBA
IC02MzksNyArNjM5LDcgQEAgdm9pZCBBU1REdW1wZXI6OnZpc2l0KEFTVDo6UmVhZE1vZGlmeVdy
aQogICAgIGF1dG8gb2xkVmFyaWFibGUgPSByZWFkTW9kaWZ5V3JpdGVFeHByZXNzaW9uLm9sZFZh
cmlhYmxlUmVmZXJlbmNlKCk7CiAgICAgYXV0byBuZXdWYXJpYWJsZSA9IHJlYWRNb2RpZnlXcml0
ZUV4cHJlc3Npb24ubmV3VmFyaWFibGVSZWZlcmVuY2UoKTsKIAotICAgIG1fb3V0LnByaW50KCIo
Iik7CisgICAgbV9vdXQucHJpbnQoIlJNVygiKTsKICAgICB2aXNpdChvbGRWYXJpYWJsZS5nZXQo
KSk7CiAgICAgbV9vdXQucHJpbnQoIiA9ICIpOwogICAgIHZpc2l0KHJlYWRNb2RpZnlXcml0ZUV4
cHJlc3Npb24ubGVmdFZhbHVlKCkpOwpJbmRleDogU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJn
cHUvV0hMU0wvV0hMU0xDaGVja2VyLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9N
b2R1bGVzL3dlYmdwdS9XSExTTC9XSExTTENoZWNrZXIuY3BwCShyZXZpc2lvbiAyNDY2MTMpCisr
KyBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmdwdS9XSExTTC9XSExTTENoZWNrZXIuY3BwCSh3
b3JraW5nIGNvcHkpCkBAIC00NjMsNyArNDYzLDcgQEAgcHJpdmF0ZToKICAgICBib29sIGlzQm9v
bFR5cGUoUmVzb2x2aW5nVHlwZSYpOwogICAgIHN0cnVjdCBSZWN1cnNlSW5mbyB7CiAgICAgICAg
IFJlc29sdmluZ1R5cGUmIHJlc29sdmluZ1R5cGU7Ci0gICAgICAgIEFTVDo6VHlwZUFubm90YXRp
b24mIHR5cGVBbm5vdGF0aW9uOworICAgICAgICBjb25zdCBBU1Q6OlR5cGVBbm5vdGF0aW9uIHR5
cGVBbm5vdGF0aW9uOwogICAgIH07CiAgICAgT3B0aW9uYWw8UmVjdXJzZUluZm8+IHJlY3Vyc2VB
bmRHZXRJbmZvKEFTVDo6RXhwcmVzc2lvbiYsIGJvb2wgcmVxdWlyZXNMZWZ0VmFsdWUgPSBmYWxz
ZSk7CiAgICAgT3B0aW9uYWw8UmVjdXJzZUluZm8+IGdldEluZm8oQVNUOjpFeHByZXNzaW9uJiwg
Ym9vbCByZXF1aXJlc0xlZnRWYWx1ZSA9IGZhbHNlKTsKQEAgLTg1OSwxMyArODU5LDE1IEBAIHZv
aWQgQ2hlY2tlcjo6dmlzaXQoQVNUOjpSZWFkTW9kaWZ5V3JpdGUKICAgICBpZiAoIWxlZnRWYWx1
ZUluZm8pCiAgICAgICAgIHJldHVybjsKIAotICAgIC8vIEZJWE1FOiBodHRwczovL2J1Z3Mud2Vi
a2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTk4MTY2IEZpZ3VyZSBvdXQgd2hhdCB0byBkbyB3aXRo
IHRoZSBSZWFkTW9kaWZ5V3JpdGVFeHByZXNzaW9uJ3MgQW5vbnltb3VzVmFyaWFibGVzLgorICAg
IHJlYWRNb2RpZnlXcml0ZUV4cHJlc3Npb24ub2xkVmFsdWUoKS5zZXRUeXBlKGxlZnRWYWx1ZUlu
Zm8tPnJlc29sdmluZ1R5cGUuZ2V0VW5uYW1lZFR5cGUoKS0+Y2xvbmUoKSk7CiAKICAgICBhdXRv
IG5ld1ZhbHVlSW5mbyA9IHJlY3Vyc2VBbmRHZXRJbmZvKHJlYWRNb2RpZnlXcml0ZUV4cHJlc3Np
b24ubmV3VmFsdWVFeHByZXNzaW9uKCkpOwogICAgIGlmICghbmV3VmFsdWVJbmZvKQogICAgICAg
ICByZXR1cm47CiAKLSAgICBpZiAoIW1hdGNoQW5kQ29tbWl0KGxlZnRWYWx1ZUluZm8tPnJlc29s
dmluZ1R5cGUsIG5ld1ZhbHVlSW5mby0+cmVzb2x2aW5nVHlwZSkpIHsKKyAgICBpZiAoT3B0aW9u
YWw8VW5pcXVlUmVmPEFTVDo6VW5uYW1lZFR5cGU+PiBtYXRjaGVkVHlwZSA9IG1hdGNoQW5kQ29t
bWl0KGxlZnRWYWx1ZUluZm8tPnJlc29sdmluZ1R5cGUsIG5ld1ZhbHVlSW5mby0+cmVzb2x2aW5n
VHlwZSkpCisgICAgICAgIHJlYWRNb2RpZnlXcml0ZUV4cHJlc3Npb24ubmV3VmFsdWUoKS5zZXRU
eXBlKFdURk1vdmUobWF0Y2hlZFR5cGUudmFsdWUoKSkpOworICAgIGVsc2UgewogICAgICAgICBz
ZXRFcnJvcigpOwogICAgICAgICByZXR1cm47CiAgICAgfQpAQCAtMTEzMSw4ICsxMTMzLDcgQEAg
dm9pZCBDaGVja2VyOjp2aXNpdChBU1Q6OlZhcmlhYmxlUmVmZXJlbgogICAgIEFTU0VSVCh2YXJp
YWJsZVJlZmVyZW5jZS52YXJpYWJsZSgpLT50eXBlKCkpOwogICAgIAogICAgIEFTVDo6VHlwZUFu
bm90YXRpb24gdHlwZUFubm90YXRpb24gPSBBU1Q6OlJpZ2h0VmFsdWUoKTsKLSAgICBpZiAoIXZh
cmlhYmxlUmVmZXJlbmNlLnZhcmlhYmxlKCktPmlzQW5vbnltb3VzKCkpIC8vIEZJWE1FOiBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTk4MTY2IFRoaXMgZG9lc24ndCBz
ZWVtIHJpZ2h0LgotICAgICAgICB0eXBlQW5ub3RhdGlvbiA9IEFTVDo6TGVmdFZhbHVlIHsgQVNU
OjpBZGRyZXNzU3BhY2U6OlRocmVhZCB9OworICAgIHR5cGVBbm5vdGF0aW9uID0gQVNUOjpMZWZ0
VmFsdWUgeyBBU1Q6OkFkZHJlc3NTcGFjZTo6VGhyZWFkIH07CiAgICAgYXNzaWduVHlwZSh2YXJp
YWJsZVJlZmVyZW5jZSwgdmFyaWFibGVSZWZlcmVuY2UudmFyaWFibGUoKS0+dHlwZSgpLT5jbG9u
ZSgpLCBXVEZNb3ZlKHR5cGVBbm5vdGF0aW9uKSk7CiB9CiAKSW5kZXg6IFNvdXJjZS9XZWJDb3Jl
L01vZHVsZXMvd2ViZ3B1L1dITFNML0FTVC9XSExTTFZhcmlhYmxlRGVjbGFyYXRpb24uaAo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmdwdS9XSExTTC9BU1QvV0hMU0xW
YXJpYWJsZURlY2xhcmF0aW9uLmgJKHJldmlzaW9uIDI0NjYxMykKKysrIFNvdXJjZS9XZWJDb3Jl
L01vZHVsZXMvd2ViZ3B1L1dITFNML0FTVC9XSExTTFZhcmlhYmxlRGVjbGFyYXRpb24uaAkod29y
a2luZyBjb3B5KQpAQCAtNjQsNyArNjQsMTUgQEAgcHVibGljOgogCiAgICAgU3RyaW5nJiBuYW1l
KCkgeyByZXR1cm4gbV9uYW1lOyB9CiAKLSAgICBjb25zdCBPcHRpb25hbDxVbmlxdWVSZWY8VW5u
YW1lZFR5cGU+PiYgdHlwZSgpIGNvbnN0IHsgcmV0dXJuIG1fdHlwZTsgfSAvLyBBbm9ueW1vdXMg
dmFyaWFibGVzIGluc2lkZSBSZWFkTW9kaWZ5V3JpdGVFeHByZXNzaW9ucyBoYXZlIHRoZWlyIHR5
cGUgc2V0IGJ5IHRoZSB0eXBlIGNoZWNrZXIuCisgICAgLy8gV2UgdXNlIHRoaXMgZm9yIFJlYWRN
b2RpZnlXcml0ZSBleHByZXNzaW9ucywgc2luY2Ugd2UgZG9uJ3Qga25vdyB0aGUgdHlwZSBvZiB0
aGVpcgorICAgIC8vIGludGVybmFsIHZhcmlhYmxlcyB1bnRpbCB0aGUgY2hlY2tlciBydW5zLiBB
bGwgb3RoZXIgdmFyaWFibGVzIHNob3VsZCBzdGFydCBsaWZlIG91dAorICAgIC8vIHdpdGggYSB0
eXBlLgorICAgIHZvaWQgc2V0VHlwZShVbmlxdWVSZWY8VW5uYW1lZFR5cGU+IHR5cGUpCisgICAg
eworICAgICAgICBBU1NFUlQoIW1fdHlwZSk7CisgICAgICAgIG1fdHlwZSA9IFdURk1vdmUodHlw
ZSk7CisgICAgfQorICAgIGNvbnN0IE9wdGlvbmFsPFVuaXF1ZVJlZjxVbm5hbWVkVHlwZT4+JiB0
eXBlKCkgY29uc3QgeyByZXR1cm4gbV90eXBlOyB9CiAgICAgVW5uYW1lZFR5cGUqIHR5cGUoKSB7
IHJldHVybiBtX3R5cGUgPyAmKm1fdHlwZSA6IG51bGxwdHI7IH0KICAgICBPcHRpb25hbDxTZW1h
bnRpYz4mIHNlbWFudGljKCkgeyByZXR1cm4gbV9zZW1hbnRpYzsgfQogICAgIEV4cHJlc3Npb24q
IGluaXRpYWxpemVyKCkgeyByZXR1cm4gbV9pbml0aWFsaXplciA/ICYqbV9pbml0aWFsaXplciA6
IG51bGxwdHI7IH0KSW5kZXg6IExheW91dFRlc3RzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBM
YXlvdXRUZXN0cy9DaGFuZ2VMb2cJKHJldmlzaW9uIDI0NjYxMykKKysrIExheW91dFRlc3RzL0No
YW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDEzIEBACisyMDE5LTA2LTE5ICBTYWFt
IEJhcmF0aSAgPHNiYXJhdGlAYXBwbGUuY29tPgorCisgICAgICAgIFtXSExTTF0gVGhlIGNoZWNr
ZXIgbmVlZHMgdG8gcmVzb2x2ZSB0eXBlcyBmb3IgdGhlIGFub255bW91cyB2YXJpYWJsZXMgaW4g
UmVhZE1vZGlmeVdyaXRlIGV4cHJlc3Npb25zCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQu
b3JnL3Nob3dfYnVnLmNnaT9pZD0xOTg5ODgKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkg
KE9PUFMhKS4KKworICAgICAgICAqIHdlYmdwdS93aGxzbC1jaGVja2VyLXNob3VsZC1zZXQtdHlw
ZS1vZi1yZWFkLW1vZGlmeS13cml0ZS12YXJpYWJsZXMtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAg
ICAgICAgKiB3ZWJncHUvd2hsc2wtY2hlY2tlci1zaG91bGQtc2V0LXR5cGUtb2YtcmVhZC1tb2Rp
Znktd3JpdGUtdmFyaWFibGVzLmh0bWw6IEFkZGVkLgorCiAyMDE5LTA2LTE5ICBKZXIgTm9ibGUg
IDxqZXIubm9ibGVAYXBwbGUuY29tPgogCiAgICAgICAgIGlPUyAxMi4yIERyYXdpbmcgcG9ydHJh
aXQgdmlkZW8gdG8gY2FudmFzIGlzIHNpZGV3YXlzCkluZGV4OiBMYXlvdXRUZXN0cy93ZWJncHUv
d2hsc2wtY2hlY2tlci1zaG91bGQtc2V0LXR5cGUtb2YtcmVhZC1tb2RpZnktd3JpdGUtdmFyaWFi
bGVzLWV4cGVjdGVkLnR4dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wt
Y2hlY2tlci1zaG91bGQtc2V0LXR5cGUtb2YtcmVhZC1tb2RpZnktd3JpdGUtdmFyaWFibGVzLWV4
cGVjdGVkLnR4dAkobm9uZXhpc3RlbnQpCisrKyBMYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wtY2hl
Y2tlci1zaG91bGQtc2V0LXR5cGUtb2YtcmVhZC1tb2RpZnktd3JpdGUtdmFyaWFibGVzLWV4cGVj
dGVkLnR4dAkod29ya2luZyBjb3B5KQpAQCAtMCwwICsxLDUgQEAKK1BBU1Mgc3VjY2Vzc2Z1bGx5
UGFyc2VkIGlzIHRydWUKKworVEVTVCBDT01QTEVURQorUEFTUyByZXN1bHRzRmxvYXQzMkFycmF5
WzBdIGlzIDQyCisKSW5kZXg6IExheW91dFRlc3RzL3dlYmdwdS93aGxzbC1jaGVja2VyLXNob3Vs
ZC1zZXQtdHlwZS1vZi1yZWFkLW1vZGlmeS13cml0ZS12YXJpYWJsZXMuaHRtbAo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci0tLSBMYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wtY2hlY2tlci1zaG91bGQtc2V0LXR5cGUtb2Yt
cmVhZC1tb2RpZnktd3JpdGUtdmFyaWFibGVzLmh0bWwJKG5vbmV4aXN0ZW50KQorKysgTGF5b3V0
VGVzdHMvd2ViZ3B1L3dobHNsLWNoZWNrZXItc2hvdWxkLXNldC10eXBlLW9mLXJlYWQtbW9kaWZ5
LXdyaXRlLXZhcmlhYmxlcy5odG1sCSh3b3JraW5nIGNvcHkpCkBAIC0wLDAgKzEsNzggQEAKKzwh
RE9DVFlQRSBodG1sPgorPGh0bWw+Cis8aGVhZD4KKzxzY3JpcHQgc3JjPSIuLi9yZXNvdXJjZXMv
anMtdGVzdC1wcmUuanMiPjwvc2NyaXB0PgorPC9oZWFkPgorPGJvZHk+Cis8c2NyaXB0PgorY29u
c3Qgc2hhZGVyU291cmNlID0gYAorW251bXRocmVhZHMoMSwgMSwgMSldCitjb21wdXRlIHZvaWQg
Y29tcHV0ZVNoYWRlcihkZXZpY2UgZmxvYXRbXSBidWZmZXIgOiByZWdpc3Rlcih1MCksIGZsb2F0
MyB0aHJlYWRJRCA6IFNWX0Rpc3BhdGNoVGhyZWFkSUQpIHsKKyAgICBmbG9hdDQgdmVjOworICAg
IHZlY1swXSArPSA0Mi4wOworICAgIGJ1ZmZlclt1aW50KHRocmVhZElELngpXSA9IHZlY1swXTsK
K30KK2A7CitsZXQgcmVzdWx0c0Zsb2F0MzJBcnJheTsKK2FzeW5jIGZ1bmN0aW9uIHN0YXJ0KCkg
eworICAgIGNvbnN0IGFkYXB0ZXIgPSBhd2FpdCBuYXZpZ2F0b3IuZ3B1LnJlcXVlc3RBZGFwdGVy
KCk7CisgICAgY29uc3QgZGV2aWNlID0gYXdhaXQgYWRhcHRlci5yZXF1ZXN0RGV2aWNlKCk7CisK
KyAgICBjb25zdCBzaGFkZXJNb2R1bGUgPSBkZXZpY2UuY3JlYXRlU2hhZGVyTW9kdWxlKHtjb2Rl
OiBzaGFkZXJTb3VyY2UsIGlzV0hMU0w6IHRydWV9KTsKKyAgICBjb25zdCBjb21wdXRlU3RhZ2Ug
PSB7bW9kdWxlOiBzaGFkZXJNb2R1bGUsIGVudHJ5UG9pbnQ6ICJjb21wdXRlU2hhZGVyIn07CisK
KyAgICBjb25zdCBiaW5kR3JvdXBMYXlvdXREZXNjcmlwdG9yID0ge2JpbmRpbmdzOiBbe2JpbmRp
bmc6IDAsIHZpc2liaWxpdHk6IDcsIHR5cGU6ICJzdG9yYWdlLWJ1ZmZlciJ9XX07CisgICAgY29u
c3QgYmluZEdyb3VwTGF5b3V0ID0gZGV2aWNlLmNyZWF0ZUJpbmRHcm91cExheW91dChiaW5kR3Jv
dXBMYXlvdXREZXNjcmlwdG9yKTsKKyAgICBjb25zdCBwaXBlbGluZUxheW91dERlc2NyaXB0b3Ig
PSB7YmluZEdyb3VwTGF5b3V0czogW2JpbmRHcm91cExheW91dF19OworICAgIGNvbnN0IHBpcGVs
aW5lTGF5b3V0ID0gZGV2aWNlLmNyZWF0ZVBpcGVsaW5lTGF5b3V0KHBpcGVsaW5lTGF5b3V0RGVz
Y3JpcHRvcik7CisKKyAgICBjb25zdCBjb21wdXRlUGlwZWxpbmVEZXNjcmlwdG9yID0ge2NvbXB1
dGVTdGFnZSwgbGF5b3V0OiBwaXBlbGluZUxheW91dH07CisgICAgY29uc3QgY29tcHV0ZVBpcGVs
aW5lID0gZGV2aWNlLmNyZWF0ZUNvbXB1dGVQaXBlbGluZShjb21wdXRlUGlwZWxpbmVEZXNjcmlw
dG9yKTsKKworICAgIGNvbnN0IHNpemUgPSBGbG9hdDMyQXJyYXkuQllURVNfUEVSX0VMRU1FTlQg
KiAxOworCisgICAgY29uc3QgYnVmZmVyRGVzY3JpcHRvciA9IHtzaXplLCB1c2FnZTogR1BVQnVm
ZmVyVXNhZ2UuTUFQX1dSSVRFIHwgR1BVQnVmZmVyVXNhZ2UuVFJBTlNGRVJfU1JDfTsKKyAgICBj
b25zdCBidWZmZXIgPSBkZXZpY2UuY3JlYXRlQnVmZmVyKGJ1ZmZlckRlc2NyaXB0b3IpOworICAg
IGNvbnN0IGJ1ZmZlckFycmF5QnVmZmVyID0gYXdhaXQgYnVmZmVyLm1hcFdyaXRlQXN5bmMoKTsK
KyAgICBjb25zdCBidWZmZXJGbG9hdDMyQXJyYXkgPSBuZXcgRmxvYXQzMkFycmF5KGJ1ZmZlckFy
cmF5QnVmZmVyKTsKKyAgICBidWZmZXJGbG9hdDMyQXJyYXlbMF0gPSAwOworICAgIGJ1ZmZlci51
bm1hcCgpOworCisgICAgY29uc3QgcmVzdWx0c0J1ZmZlckRlc2NyaXB0b3IgPSB7c2l6ZSwgdXNh
Z2U6IEdQVUJ1ZmZlclVzYWdlLlNUT1JBR0UgfCBHUFVCdWZmZXJVc2FnZS5UUkFOU0ZFUl9EU1Qg
fCBHUFVCdWZmZXJVc2FnZS5NQVBfUkVBRH07CisgICAgY29uc3QgcmVzdWx0c0J1ZmZlciA9IGRl
dmljZS5jcmVhdGVCdWZmZXIocmVzdWx0c0J1ZmZlckRlc2NyaXB0b3IpOworCisgICAgY29uc3Qg
YnVmZmVyQmluZGluZyA9IHtidWZmZXI6IHJlc3VsdHNCdWZmZXIsIHNpemV9OworICAgIGNvbnN0
IGJpbmRHcm91cEJpbmRpbmcgPSB7YmluZGluZzogMCwgcmVzb3VyY2U6IGJ1ZmZlckJpbmRpbmd9
OworICAgIGNvbnN0IGJpbmRHcm91cERlc2NyaXB0b3IgPSB7bGF5b3V0OiBiaW5kR3JvdXBMYXlv
dXQsIGJpbmRpbmdzOiBbYmluZEdyb3VwQmluZGluZ119OworICAgIGNvbnN0IGJpbmRHcm91cCA9
IGRldmljZS5jcmVhdGVCaW5kR3JvdXAoYmluZEdyb3VwRGVzY3JpcHRvcik7CisKKyAgICBjb25z
dCBjb21tYW5kRW5jb2RlciA9IGRldmljZS5jcmVhdGVDb21tYW5kRW5jb2RlcigpOyAvLyB7fQor
ICAgIGNvbW1hbmRFbmNvZGVyLmNvcHlCdWZmZXJUb0J1ZmZlcihidWZmZXIsIDAsIHJlc3VsdHNC
dWZmZXIsIDAsIHNpemUpOworICAgIGNvbnN0IGNvbXB1dGVQYXNzRW5jb2RlciA9IGNvbW1hbmRF
bmNvZGVyLmJlZ2luQ29tcHV0ZVBhc3MoKTsKKyAgICBjb21wdXRlUGFzc0VuY29kZXIuc2V0UGlw
ZWxpbmUoY29tcHV0ZVBpcGVsaW5lKTsKKyAgICBjb21wdXRlUGFzc0VuY29kZXIuc2V0QmluZEdy
b3VwKDAsIGJpbmRHcm91cCk7CisgICAgY29tcHV0ZVBhc3NFbmNvZGVyLmRpc3BhdGNoKDEsIDEs
IDEpOworICAgIGNvbXB1dGVQYXNzRW5jb2Rlci5lbmRQYXNzKCk7CisgICAgY29uc3QgY29tbWFu
ZEJ1ZmZlciA9IGNvbW1hbmRFbmNvZGVyLmZpbmlzaCgpOworICAgIGRldmljZS5nZXRRdWV1ZSgp
LnN1Ym1pdChbY29tbWFuZEJ1ZmZlcl0pOworCisgICAgY29uc3QgcmVzdWx0c0FycmF5QnVmZmVy
ID0gYXdhaXQgcmVzdWx0c0J1ZmZlci5tYXBSZWFkQXN5bmMoKTsKKyAgICByZXN1bHRzRmxvYXQz
MkFycmF5ID0gbmV3IEZsb2F0MzJBcnJheShyZXN1bHRzQXJyYXlCdWZmZXIpOworICAgIHNob3Vs
ZEJlKCJyZXN1bHRzRmxvYXQzMkFycmF5WzBdIiwgIjQyIik7CisgICAgcmVzdWx0c0J1ZmZlci51
bm1hcCgpOworfQoraWYgKHdpbmRvdy50ZXN0UnVubmVyKQorICAgIHRlc3RSdW5uZXIud2FpdFVu
dGlsRG9uZSgpOword2luZG93LmFkZEV2ZW50TGlzdGVuZXIoImxvYWQiLCBmdW5jdGlvbigpIHsK
KyAgICBzdGFydCgpLnRoZW4oZnVuY3Rpb24oKSB7CisgICAgICAgIGlmICh3aW5kb3cudGVzdFJ1
bm5lcikKKyAgICAgICAgICAgIHRlc3RSdW5uZXIubm90aWZ5RG9uZSgpOworICAgIH0sIGZ1bmN0
aW9uKCkgeworICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpCisgICAgICAgICAgICB0ZXN0
UnVubmVyLm5vdGlmeURvbmUoKTsKKyAgICB9KTsKK30pOworPC9zY3JpcHQ+Cis8c2NyaXB0IHNy
Yz0iLi4vcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Cis8L2JvZHk+Cis8L2h0
bWw+Cg==
</data>
<flag name="review"
          id="388301"
          type_id="1"
          status="+"
          setter="dino"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>372510</attachid>
            <date>2019-06-19 18:23:18 -0700</date>
            <delta_ts>2019-06-19 19:05:34 -0700</delta_ts>
            <desc>patch for landing</desc>
            <filename>patch.diff</filename>
            <type>text/plain</type>
            <size>10522</size>
            <attacher name="Saam Barati">saam</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDI0NjYxNSkKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDMxIEBACisyMDE5LTA2LTE5ICBTYWFtIEJh
cmF0aSAgPHNiYXJhdGlAYXBwbGUuY29tPgorCisgICAgICAgIFtXSExTTF0gVGhlIGNoZWNrZXIg
bmVlZHMgdG8gcmVzb2x2ZSB0eXBlcyBmb3IgdGhlIGFub255bW91cyB2YXJpYWJsZXMgaW4gUmVh
ZE1vZGlmeVdyaXRlIGV4cHJlc3Npb25zCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3Jn
L3Nob3dfYnVnLmNnaT9pZD0xOTg5ODgKKworICAgICAgICBSZXZpZXdlZCBieSBEZWFuIEphY2tz
b24gYW5kIE15bGVzIEMuIE1heGZpZWxkLgorCisgICAgICAgIFRoaXMgcGF0Y2ggbWFrZXMgaXQg
c28gdGhhdCB0aGUgQ2hlY2tlciBhc3NpZ25zIHR5cGVzIHRvIHRoZSBpbnRlcm5hbCB2YXJpYWJs
ZXMKKyAgICAgICAgaW4gYSByZWFkIG1vZGlmeSB3cml0ZSBleHByZXNzaW9uLiBUaGVzZSB3ZXJl
IHRoZSBvbmx5IHZhcmlhYmxlcyB0aGF0IGRpZG4ndCBoYXZlCisgICAgICAgIHR5cGVzIGFzY3Jp
YmVkIHRvIHRoZW0uCisKKyAgICAgICAgVGhpcyBwYXRjaCBhbHNvIGRvZXMgYSBmbHkgYnkgZml4
IHdoZXJlIHdlIGtlcHQgcG9pbnRlcnMgdG8gdmFsdWUgdHlwZXMKKyAgICAgICAgaW4gYSBIYXNo
TWFwIGluIHRoZSBjaGVja2VyLiBUaGlzIGlzIHdyb25nIHByZWNpc2VseSB3aGVuIHRoZSBIYXNo
TWFwIGdldHMKKyAgICAgICAgcmVzaXplZC4gSW5zdGVhZCwgd2Ugbm93IGp1c3Qgc3RvcmUgdGhl
IHZhbHVlIGl0c2VsZiBzaW5jZSB3ZSdyZSBqdXN0CisgICAgICAgIGRlYWxpbmcgd2l0aCBhIHNp
bXBsZSBWYXJpYW50IHRoYXQgd3JhcHMgZWl0aGVyIGFuIGVtcHR5IHN0cnVjdCBvciBhbgorICAg
ICAgICBlbnVtLgorCisgICAgICAgIFRlc3Q6IHdlYmdwdS93aGxzbC1jaGVja2VyLXNob3VsZC1z
ZXQtdHlwZS1vZi1yZWFkLW1vZGlmeS13cml0ZS12YXJpYWJsZXMuaHRtbAorCisgICAgICAgICog
TW9kdWxlcy93ZWJncHUvV0hMU0wvQVNUL1dITFNMVmFyaWFibGVEZWNsYXJhdGlvbi5oOgorICAg
ICAgICAoV2ViQ29yZTo6V0hMU0w6OkFTVDo6VmFyaWFibGVEZWNsYXJhdGlvbjo6c2V0VHlwZSk6
CisgICAgICAgIChXZWJDb3JlOjpXSExTTDo6QVNUOjpWYXJpYWJsZURlY2xhcmF0aW9uOjp0eXBl
IGNvbnN0KToKKyAgICAgICAgKiBNb2R1bGVzL3dlYmdwdS9XSExTTC9XSExTTEFTVER1bXBlci5j
cHA6IE1ha2UgaXQgb2J2aW91cyB0aGF0IHJlYWQKKyAgICAgICAgbW9kaWZ5IHdyaXRlIGV4cHJl
c3Npb25zIGFyZSBzdWNoIGJ5IHByZWZpeGluZyB0aGVtIHdpdGggIlJNVyIuCisgICAgICAgIChX
ZWJDb3JlOjpXSExTTDo6QVNURHVtcGVyOjp2aXNpdCk6CisgICAgICAgICogTW9kdWxlcy93ZWJn
cHUvV0hMU0wvV0hMU0xDaGVja2VyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OldITFNMOjpDaGVj
a2VyOjp2aXNpdCk6CisKIDIwMTktMDYtMTkgIEplciBOb2JsZSAgPGplci5ub2JsZUBhcHBsZS5j
b20+CiAKICAgICAgICAgaU9TIDEyLjIgRHJhd2luZyBwb3J0cmFpdCB2aWRlbyB0byBjYW52YXMg
aXMgc2lkZXdheXMKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViZ3B1L1dITFNML1dI
TFNMQVNURHVtcGVyLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dl
YmdwdS9XSExTTC9XSExTTEFTVER1bXBlci5jcHAJKHJldmlzaW9uIDI0NjYxMykKKysrIFNvdXJj
ZS9XZWJDb3JlL01vZHVsZXMvd2ViZ3B1L1dITFNML1dITFNMQVNURHVtcGVyLmNwcAkod29ya2lu
ZyBjb3B5KQpAQCAtNjM5LDcgKzYzOSw3IEBAIHZvaWQgQVNURHVtcGVyOjp2aXNpdChBU1Q6OlJl
YWRNb2RpZnlXcmkKICAgICBhdXRvIG9sZFZhcmlhYmxlID0gcmVhZE1vZGlmeVdyaXRlRXhwcmVz
c2lvbi5vbGRWYXJpYWJsZVJlZmVyZW5jZSgpOwogICAgIGF1dG8gbmV3VmFyaWFibGUgPSByZWFk
TW9kaWZ5V3JpdGVFeHByZXNzaW9uLm5ld1ZhcmlhYmxlUmVmZXJlbmNlKCk7CiAKLSAgICBtX291
dC5wcmludCgiKCIpOworICAgIG1fb3V0LnByaW50KCJSTVcoIik7CiAgICAgdmlzaXQob2xkVmFy
aWFibGUuZ2V0KCkpOwogICAgIG1fb3V0LnByaW50KCIgPSAiKTsKICAgICB2aXNpdChyZWFkTW9k
aWZ5V3JpdGVFeHByZXNzaW9uLmxlZnRWYWx1ZSgpKTsKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL01v
ZHVsZXMvd2ViZ3B1L1dITFNML1dITFNMQ2hlY2tlci5jcHAKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNl
L1dlYkNvcmUvTW9kdWxlcy93ZWJncHUvV0hMU0wvV0hMU0xDaGVja2VyLmNwcAkocmV2aXNpb24g
MjQ2NjEzKQorKysgU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJncHUvV0hMU0wvV0hMU0xDaGVj
a2VyLmNwcAkod29ya2luZyBjb3B5KQpAQCAtNDYzLDcgKzQ2Myw3IEBAIHByaXZhdGU6CiAgICAg
Ym9vbCBpc0Jvb2xUeXBlKFJlc29sdmluZ1R5cGUmKTsKICAgICBzdHJ1Y3QgUmVjdXJzZUluZm8g
ewogICAgICAgICBSZXNvbHZpbmdUeXBlJiByZXNvbHZpbmdUeXBlOwotICAgICAgICBBU1Q6OlR5
cGVBbm5vdGF0aW9uJiB0eXBlQW5ub3RhdGlvbjsKKyAgICAgICAgY29uc3QgQVNUOjpUeXBlQW5u
b3RhdGlvbiB0eXBlQW5ub3RhdGlvbjsKICAgICB9OwogICAgIE9wdGlvbmFsPFJlY3Vyc2VJbmZv
PiByZWN1cnNlQW5kR2V0SW5mbyhBU1Q6OkV4cHJlc3Npb24mLCBib29sIHJlcXVpcmVzTGVmdFZh
bHVlID0gZmFsc2UpOwogICAgIE9wdGlvbmFsPFJlY3Vyc2VJbmZvPiBnZXRJbmZvKEFTVDo6RXhw
cmVzc2lvbiYsIGJvb2wgcmVxdWlyZXNMZWZ0VmFsdWUgPSBmYWxzZSk7CkBAIC04NTksMTMgKzg1
OSwxNSBAQCB2b2lkIENoZWNrZXI6OnZpc2l0KEFTVDo6UmVhZE1vZGlmeVdyaXRlCiAgICAgaWYg
KCFsZWZ0VmFsdWVJbmZvKQogICAgICAgICByZXR1cm47CiAKLSAgICAvLyBGSVhNRTogaHR0cHM6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE5ODE2NiBGaWd1cmUgb3V0IHdoYXQg
dG8gZG8gd2l0aCB0aGUgUmVhZE1vZGlmeVdyaXRlRXhwcmVzc2lvbidzIEFub255bW91c1Zhcmlh
Ymxlcy4KKyAgICByZWFkTW9kaWZ5V3JpdGVFeHByZXNzaW9uLm9sZFZhbHVlKCkuc2V0VHlwZShs
ZWZ0VmFsdWVJbmZvLT5yZXNvbHZpbmdUeXBlLmdldFVubmFtZWRUeXBlKCktPmNsb25lKCkpOwog
CiAgICAgYXV0byBuZXdWYWx1ZUluZm8gPSByZWN1cnNlQW5kR2V0SW5mbyhyZWFkTW9kaWZ5V3Jp
dGVFeHByZXNzaW9uLm5ld1ZhbHVlRXhwcmVzc2lvbigpKTsKICAgICBpZiAoIW5ld1ZhbHVlSW5m
bykKICAgICAgICAgcmV0dXJuOwogCi0gICAgaWYgKCFtYXRjaEFuZENvbW1pdChsZWZ0VmFsdWVJ
bmZvLT5yZXNvbHZpbmdUeXBlLCBuZXdWYWx1ZUluZm8tPnJlc29sdmluZ1R5cGUpKSB7CisgICAg
aWYgKE9wdGlvbmFsPFVuaXF1ZVJlZjxBU1Q6OlVubmFtZWRUeXBlPj4gbWF0Y2hlZFR5cGUgPSBt
YXRjaEFuZENvbW1pdChsZWZ0VmFsdWVJbmZvLT5yZXNvbHZpbmdUeXBlLCBuZXdWYWx1ZUluZm8t
PnJlc29sdmluZ1R5cGUpKQorICAgICAgICByZWFkTW9kaWZ5V3JpdGVFeHByZXNzaW9uLm5ld1Zh
bHVlKCkuc2V0VHlwZShXVEZNb3ZlKG1hdGNoZWRUeXBlLnZhbHVlKCkpKTsKKyAgICBlbHNlIHsK
ICAgICAgICAgc2V0RXJyb3IoKTsKICAgICAgICAgcmV0dXJuOwogICAgIH0KQEAgLTExMzEsOCAr
MTEzMyw3IEBAIHZvaWQgQ2hlY2tlcjo6dmlzaXQoQVNUOjpWYXJpYWJsZVJlZmVyZW4KICAgICBB
U1NFUlQodmFyaWFibGVSZWZlcmVuY2UudmFyaWFibGUoKS0+dHlwZSgpKTsKICAgICAKICAgICBB
U1Q6OlR5cGVBbm5vdGF0aW9uIHR5cGVBbm5vdGF0aW9uID0gQVNUOjpSaWdodFZhbHVlKCk7Ci0g
ICAgaWYgKCF2YXJpYWJsZVJlZmVyZW5jZS52YXJpYWJsZSgpLT5pc0Fub255bW91cygpKSAvLyBG
SVhNRTogaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE5ODE2NiBUaGlz
IGRvZXNuJ3Qgc2VlbSByaWdodC4KLSAgICAgICAgdHlwZUFubm90YXRpb24gPSBBU1Q6OkxlZnRW
YWx1ZSB7IEFTVDo6QWRkcmVzc1NwYWNlOjpUaHJlYWQgfTsKKyAgICB0eXBlQW5ub3RhdGlvbiA9
IEFTVDo6TGVmdFZhbHVlIHsgQVNUOjpBZGRyZXNzU3BhY2U6OlRocmVhZCB9OwogICAgIGFzc2ln
blR5cGUodmFyaWFibGVSZWZlcmVuY2UsIHZhcmlhYmxlUmVmZXJlbmNlLnZhcmlhYmxlKCktPnR5
cGUoKS0+Y2xvbmUoKSwgV1RGTW92ZSh0eXBlQW5ub3RhdGlvbikpOwogfQogCkluZGV4OiBTb3Vy
Y2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmdwdS9XSExTTC9BU1QvV0hMU0xWYXJpYWJsZURlY2xhcmF0
aW9uLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJncHUvV0hMU0wv
QVNUL1dITFNMVmFyaWFibGVEZWNsYXJhdGlvbi5oCShyZXZpc2lvbiAyNDY2MTMpCisrKyBTb3Vy
Y2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmdwdS9XSExTTC9BU1QvV0hMU0xWYXJpYWJsZURlY2xhcmF0
aW9uLmgJKHdvcmtpbmcgY29weSkKQEAgLTY0LDcgKzY0LDE1IEBAIHB1YmxpYzoKIAogICAgIFN0
cmluZyYgbmFtZSgpIHsgcmV0dXJuIG1fbmFtZTsgfQogCi0gICAgY29uc3QgT3B0aW9uYWw8VW5p
cXVlUmVmPFVubmFtZWRUeXBlPj4mIHR5cGUoKSBjb25zdCB7IHJldHVybiBtX3R5cGU7IH0gLy8g
QW5vbnltb3VzIHZhcmlhYmxlcyBpbnNpZGUgUmVhZE1vZGlmeVdyaXRlRXhwcmVzc2lvbnMgaGF2
ZSB0aGVpciB0eXBlIHNldCBieSB0aGUgdHlwZSBjaGVja2VyLgorICAgIC8vIFdlIHVzZSB0aGlz
IGZvciBSZWFkTW9kaWZ5V3JpdGUgZXhwcmVzc2lvbnMsIHNpbmNlIHdlIGRvbid0IGtub3cgdGhl
IHR5cGUgb2YgdGhlaXIKKyAgICAvLyBpbnRlcm5hbCB2YXJpYWJsZXMgdW50aWwgdGhlIGNoZWNr
ZXIgcnVucy4gQWxsIG90aGVyIHZhcmlhYmxlcyBzaG91bGQgc3RhcnQgbGlmZSBvdXQKKyAgICAv
LyB3aXRoIGEgdHlwZS4KKyAgICB2b2lkIHNldFR5cGUoVW5pcXVlUmVmPFVubmFtZWRUeXBlPiB0
eXBlKQorICAgIHsKKyAgICAgICAgQVNTRVJUKCFtX3R5cGUpOworICAgICAgICBtX3R5cGUgPSBX
VEZNb3ZlKHR5cGUpOworICAgIH0KKyAgICBjb25zdCBPcHRpb25hbDxVbmlxdWVSZWY8VW5uYW1l
ZFR5cGU+PiYgdHlwZSgpIGNvbnN0IHsgcmV0dXJuIG1fdHlwZTsgfQogICAgIFVubmFtZWRUeXBl
KiB0eXBlKCkgeyByZXR1cm4gbV90eXBlID8gJiptX3R5cGUgOiBudWxscHRyOyB9CiAgICAgT3B0
aW9uYWw8U2VtYW50aWM+JiBzZW1hbnRpYygpIHsgcmV0dXJuIG1fc2VtYW50aWM7IH0KICAgICBF
eHByZXNzaW9uKiBpbml0aWFsaXplcigpIHsgcmV0dXJuIG1faW5pdGlhbGl6ZXIgPyAmKm1faW5p
dGlhbGl6ZXIgOiBudWxscHRyOyB9CkluZGV4OiBMYXlvdXRUZXN0cy9DaGFuZ2VMb2cKPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCShyZXZpc2lvbiAyNDY2MTMpCisrKyBMYXlv
dXRUZXN0cy9DaGFuZ2VMb2cJKHdvcmtpbmcgY29weSkKQEAgLTEsMyArMSwxMyBAQAorMjAxOS0w
Ni0xOSAgU2FhbSBCYXJhdGkgIDxzYmFyYXRpQGFwcGxlLmNvbT4KKworICAgICAgICBbV0hMU0xd
IFRoZSBjaGVja2VyIG5lZWRzIHRvIHJlc29sdmUgdHlwZXMgZm9yIHRoZSBhbm9ueW1vdXMgdmFy
aWFibGVzIGluIFJlYWRNb2RpZnlXcml0ZSBleHByZXNzaW9ucworICAgICAgICBodHRwczovL2J1
Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTk4OTg4CisKKyAgICAgICAgUmV2aWV3ZWQg
YnkgRGVhbiBKYWNrc29uIGFuZCBNeWxlcyBDLiBNYXhmaWVsZC4KKworICAgICAgICAqIHdlYmdw
dS93aGxzbC1jaGVja2VyLXNob3VsZC1zZXQtdHlwZS1vZi1yZWFkLW1vZGlmeS13cml0ZS12YXJp
YWJsZXMtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiB3ZWJncHUvd2hsc2wtY2hlY2tl
ci1zaG91bGQtc2V0LXR5cGUtb2YtcmVhZC1tb2RpZnktd3JpdGUtdmFyaWFibGVzLmh0bWw6IEFk
ZGVkLgorCiAyMDE5LTA2LTE5ICBKZXIgTm9ibGUgIDxqZXIubm9ibGVAYXBwbGUuY29tPgogCiAg
ICAgICAgIGlPUyAxMi4yIERyYXdpbmcgcG9ydHJhaXQgdmlkZW8gdG8gY2FudmFzIGlzIHNpZGV3
YXlzCkluZGV4OiBMYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wtY2hlY2tlci1zaG91bGQtc2V0LXR5
cGUtb2YtcmVhZC1tb2RpZnktd3JpdGUtdmFyaWFibGVzLWV4cGVjdGVkLnR4dAo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci0tLSBMYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wtY2hlY2tlci1zaG91bGQtc2V0LXR5cGUtb2Yt
cmVhZC1tb2RpZnktd3JpdGUtdmFyaWFibGVzLWV4cGVjdGVkLnR4dAkobm9uZXhpc3RlbnQpCisr
KyBMYXlvdXRUZXN0cy93ZWJncHUvd2hsc2wtY2hlY2tlci1zaG91bGQtc2V0LXR5cGUtb2YtcmVh
ZC1tb2RpZnktd3JpdGUtdmFyaWFibGVzLWV4cGVjdGVkLnR4dAkod29ya2luZyBjb3B5KQpAQCAt
MCwwICsxLDUgQEAKK1BBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKKworVEVTVCBDT01Q
TEVURQorUEFTUyByZXN1bHRzRmxvYXQzMkFycmF5WzBdIGlzIDQyCisKSW5kZXg6IExheW91dFRl
c3RzL3dlYmdwdS93aGxzbC1jaGVja2VyLXNob3VsZC1zZXQtdHlwZS1vZi1yZWFkLW1vZGlmeS13
cml0ZS12YXJpYWJsZXMuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy93ZWJncHUvd2hs
c2wtY2hlY2tlci1zaG91bGQtc2V0LXR5cGUtb2YtcmVhZC1tb2RpZnktd3JpdGUtdmFyaWFibGVz
Lmh0bWwJKG5vbmV4aXN0ZW50KQorKysgTGF5b3V0VGVzdHMvd2ViZ3B1L3dobHNsLWNoZWNrZXIt
c2hvdWxkLXNldC10eXBlLW9mLXJlYWQtbW9kaWZ5LXdyaXRlLXZhcmlhYmxlcy5odG1sCSh3b3Jr
aW5nIGNvcHkpCkBAIC0wLDAgKzEsNzggQEAKKzwhRE9DVFlQRSBodG1sPgorPGh0bWw+Cis8aGVh
ZD4KKzxzY3JpcHQgc3JjPSIuLi9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0Pgor
PC9oZWFkPgorPGJvZHk+Cis8c2NyaXB0PgorY29uc3Qgc2hhZGVyU291cmNlID0gYAorW251bXRo
cmVhZHMoMSwgMSwgMSldCitjb21wdXRlIHZvaWQgY29tcHV0ZVNoYWRlcihkZXZpY2UgZmxvYXRb
XSBidWZmZXIgOiByZWdpc3Rlcih1MCksIGZsb2F0MyB0aHJlYWRJRCA6IFNWX0Rpc3BhdGNoVGhy
ZWFkSUQpIHsKKyAgICBmbG9hdDQgdmVjOworICAgIHZlY1swXSArPSA0Mi4wOworICAgIGJ1ZmZl
clt1aW50KHRocmVhZElELngpXSA9IHZlY1swXTsKK30KK2A7CitsZXQgcmVzdWx0c0Zsb2F0MzJB
cnJheTsKK2FzeW5jIGZ1bmN0aW9uIHN0YXJ0KCkgeworICAgIGNvbnN0IGFkYXB0ZXIgPSBhd2Fp
dCBuYXZpZ2F0b3IuZ3B1LnJlcXVlc3RBZGFwdGVyKCk7CisgICAgY29uc3QgZGV2aWNlID0gYXdh
aXQgYWRhcHRlci5yZXF1ZXN0RGV2aWNlKCk7CisKKyAgICBjb25zdCBzaGFkZXJNb2R1bGUgPSBk
ZXZpY2UuY3JlYXRlU2hhZGVyTW9kdWxlKHtjb2RlOiBzaGFkZXJTb3VyY2UsIGlzV0hMU0w6IHRy
dWV9KTsKKyAgICBjb25zdCBjb21wdXRlU3RhZ2UgPSB7bW9kdWxlOiBzaGFkZXJNb2R1bGUsIGVu
dHJ5UG9pbnQ6ICJjb21wdXRlU2hhZGVyIn07CisKKyAgICBjb25zdCBiaW5kR3JvdXBMYXlvdXRE
ZXNjcmlwdG9yID0ge2JpbmRpbmdzOiBbe2JpbmRpbmc6IDAsIHZpc2liaWxpdHk6IDcsIHR5cGU6
ICJzdG9yYWdlLWJ1ZmZlciJ9XX07CisgICAgY29uc3QgYmluZEdyb3VwTGF5b3V0ID0gZGV2aWNl
LmNyZWF0ZUJpbmRHcm91cExheW91dChiaW5kR3JvdXBMYXlvdXREZXNjcmlwdG9yKTsKKyAgICBj
b25zdCBwaXBlbGluZUxheW91dERlc2NyaXB0b3IgPSB7YmluZEdyb3VwTGF5b3V0czogW2JpbmRH
cm91cExheW91dF19OworICAgIGNvbnN0IHBpcGVsaW5lTGF5b3V0ID0gZGV2aWNlLmNyZWF0ZVBp
cGVsaW5lTGF5b3V0KHBpcGVsaW5lTGF5b3V0RGVzY3JpcHRvcik7CisKKyAgICBjb25zdCBjb21w
dXRlUGlwZWxpbmVEZXNjcmlwdG9yID0ge2NvbXB1dGVTdGFnZSwgbGF5b3V0OiBwaXBlbGluZUxh
eW91dH07CisgICAgY29uc3QgY29tcHV0ZVBpcGVsaW5lID0gZGV2aWNlLmNyZWF0ZUNvbXB1dGVQ
aXBlbGluZShjb21wdXRlUGlwZWxpbmVEZXNjcmlwdG9yKTsKKworICAgIGNvbnN0IHNpemUgPSBG
bG9hdDMyQXJyYXkuQllURVNfUEVSX0VMRU1FTlQgKiAxOworCisgICAgY29uc3QgYnVmZmVyRGVz
Y3JpcHRvciA9IHtzaXplLCB1c2FnZTogR1BVQnVmZmVyVXNhZ2UuTUFQX1dSSVRFIHwgR1BVQnVm
ZmVyVXNhZ2UuVFJBTlNGRVJfU1JDfTsKKyAgICBjb25zdCBidWZmZXIgPSBkZXZpY2UuY3JlYXRl
QnVmZmVyKGJ1ZmZlckRlc2NyaXB0b3IpOworICAgIGNvbnN0IGJ1ZmZlckFycmF5QnVmZmVyID0g
YXdhaXQgYnVmZmVyLm1hcFdyaXRlQXN5bmMoKTsKKyAgICBjb25zdCBidWZmZXJGbG9hdDMyQXJy
YXkgPSBuZXcgRmxvYXQzMkFycmF5KGJ1ZmZlckFycmF5QnVmZmVyKTsKKyAgICBidWZmZXJGbG9h
dDMyQXJyYXlbMF0gPSAwOworICAgIGJ1ZmZlci51bm1hcCgpOworCisgICAgY29uc3QgcmVzdWx0
c0J1ZmZlckRlc2NyaXB0b3IgPSB7c2l6ZSwgdXNhZ2U6IEdQVUJ1ZmZlclVzYWdlLlNUT1JBR0Ug
fCBHUFVCdWZmZXJVc2FnZS5UUkFOU0ZFUl9EU1QgfCBHUFVCdWZmZXJVc2FnZS5NQVBfUkVBRH07
CisgICAgY29uc3QgcmVzdWx0c0J1ZmZlciA9IGRldmljZS5jcmVhdGVCdWZmZXIocmVzdWx0c0J1
ZmZlckRlc2NyaXB0b3IpOworCisgICAgY29uc3QgYnVmZmVyQmluZGluZyA9IHtidWZmZXI6IHJl
c3VsdHNCdWZmZXIsIHNpemV9OworICAgIGNvbnN0IGJpbmRHcm91cEJpbmRpbmcgPSB7YmluZGlu
ZzogMCwgcmVzb3VyY2U6IGJ1ZmZlckJpbmRpbmd9OworICAgIGNvbnN0IGJpbmRHcm91cERlc2Ny
aXB0b3IgPSB7bGF5b3V0OiBiaW5kR3JvdXBMYXlvdXQsIGJpbmRpbmdzOiBbYmluZEdyb3VwQmlu
ZGluZ119OworICAgIGNvbnN0IGJpbmRHcm91cCA9IGRldmljZS5jcmVhdGVCaW5kR3JvdXAoYmlu
ZEdyb3VwRGVzY3JpcHRvcik7CisKKyAgICBjb25zdCBjb21tYW5kRW5jb2RlciA9IGRldmljZS5j
cmVhdGVDb21tYW5kRW5jb2RlcigpOyAvLyB7fQorICAgIGNvbW1hbmRFbmNvZGVyLmNvcHlCdWZm
ZXJUb0J1ZmZlcihidWZmZXIsIDAsIHJlc3VsdHNCdWZmZXIsIDAsIHNpemUpOworICAgIGNvbnN0
IGNvbXB1dGVQYXNzRW5jb2RlciA9IGNvbW1hbmRFbmNvZGVyLmJlZ2luQ29tcHV0ZVBhc3MoKTsK
KyAgICBjb21wdXRlUGFzc0VuY29kZXIuc2V0UGlwZWxpbmUoY29tcHV0ZVBpcGVsaW5lKTsKKyAg
ICBjb21wdXRlUGFzc0VuY29kZXIuc2V0QmluZEdyb3VwKDAsIGJpbmRHcm91cCk7CisgICAgY29t
cHV0ZVBhc3NFbmNvZGVyLmRpc3BhdGNoKDEsIDEsIDEpOworICAgIGNvbXB1dGVQYXNzRW5jb2Rl
ci5lbmRQYXNzKCk7CisgICAgY29uc3QgY29tbWFuZEJ1ZmZlciA9IGNvbW1hbmRFbmNvZGVyLmZp
bmlzaCgpOworICAgIGRldmljZS5nZXRRdWV1ZSgpLnN1Ym1pdChbY29tbWFuZEJ1ZmZlcl0pOwor
CisgICAgY29uc3QgcmVzdWx0c0FycmF5QnVmZmVyID0gYXdhaXQgcmVzdWx0c0J1ZmZlci5tYXBS
ZWFkQXN5bmMoKTsKKyAgICByZXN1bHRzRmxvYXQzMkFycmF5ID0gbmV3IEZsb2F0MzJBcnJheShy
ZXN1bHRzQXJyYXlCdWZmZXIpOworICAgIHNob3VsZEJlKCJyZXN1bHRzRmxvYXQzMkFycmF5WzBd
IiwgIjQyIik7CisgICAgcmVzdWx0c0J1ZmZlci51bm1hcCgpOworfQoraWYgKHdpbmRvdy50ZXN0
UnVubmVyKQorICAgIHRlc3RSdW5uZXIud2FpdFVudGlsRG9uZSgpOword2luZG93LmFkZEV2ZW50
TGlzdGVuZXIoImxvYWQiLCBmdW5jdGlvbigpIHsKKyAgICBzdGFydCgpLnRoZW4oZnVuY3Rpb24o
KSB7CisgICAgICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikKKyAgICAgICAgICAgIHRlc3RSdW5u
ZXIubm90aWZ5RG9uZSgpOworICAgIH0sIGZ1bmN0aW9uKCkgeworICAgICAgICBpZiAod2luZG93
LnRlc3RSdW5uZXIpCisgICAgICAgICAgICB0ZXN0UnVubmVyLm5vdGlmeURvbmUoKTsKKyAgICB9
KTsKK30pOworPC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iLi4vcmVzb3VyY2VzL2pzLXRlc3QtcG9z
dC5qcyI+PC9zY3JpcHQ+Cis8L2JvZHk+Cis8L2h0bWw+Cg==
</data>

          </attachment>
      

    </bug>

</bugzilla>