<?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>218048</bug_id>
          
          <creation_ts>2020-10-21 13:22:00 -0700</creation_ts>
          <short_desc>Update FFTFrame::realData() / imagData() to return an AudioFloatArray</short_desc>
          <delta_ts>2020-11-03 14:08:57 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>Web Audio</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>
          
          <blocked>217890</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Chris Dumez">cdumez</reporter>
          <assigned_to name="Chris Dumez">cdumez</assigned_to>
          <cc>calvaris</cc>
    
    <cc>cdumez</cc>
    
    <cc>darin</cc>
    
    <cc>eric.carlson</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>ggaren</cc>
    
    <cc>glenn</cc>
    
    <cc>jer.noble</cc>
    
    <cc>philipj</cc>
    
    <cc>pnormand</cc>
    
    <cc>rs</cc>
    
    <cc>sam</cc>
    
    <cc>sergio</cc>
    
    <cc>vjaquez</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1700346</commentid>
    <comment_count>0</comment_count>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2020-10-21 13:22:00 -0700</bug_when>
    <thetext>Update FFTFrame::realData() / imagData() to return an AudioFloatArray instead of a float*. This is necessary because only the implementation of FFTFrame knew the actual size of the arrays returned. Cocoa ports use fftSize() as size for these arrays for the port using GStreamer don&apos;t.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1700363</commentid>
    <comment_count>1</comment_count>
      <attachid>412024</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2020-10-21 13:43:47 -0700</bug_when>
    <thetext>Created attachment 412024
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1700368</commentid>
    <comment_count>2</comment_count>
      <attachid>412028</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2020-10-21 13:49:20 -0700</bug_when>
    <thetext>Created attachment 412028
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1700393</commentid>
    <comment_count>3</comment_count>
      <attachid>412028</attachid>
    <who name="Philippe Normand">pnormand</who>
    <bug_when>2020-10-21 14:26:44 -0700</bug_when>
    <thetext>Comment on attachment 412028
Patch

Thanks for the patch Chris, I suspect this might fix a few other crashes in layout tests :)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1700397</commentid>
    <comment_count>4</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2020-10-21 14:33:10 -0700</bug_when>
    <thetext>Committed r268826: &lt;https://trac.webkit.org/changeset/268826&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 412028.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1700398</commentid>
    <comment_count>5</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2020-10-21 14:34:20 -0700</bug_when>
    <thetext>&lt;rdar://problem/70545640&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1704207</commentid>
    <comment_count>6</comment_count>
    <who name="David Kilzer (:ddkilzer)">ddkilzer</who>
    <bug_when>2020-11-03 14:08:57 -0800</bug_when>
    <thetext>*** Bug 217890 has been marked as a duplicate of this bug. ***</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>412024</attachid>
            <date>2020-10-21 13:43:47 -0700</date>
            <delta_ts>2020-10-21 13:52:08 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-218048-20201021134346.patch</filename>
            <type>text/plain</type>
            <size>15021</size>
            <attacher name="Chris Dumez">cdumez</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjY4ODE4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggM2NiMjc1NWQxYjIyMGRi
YTJhNWZmOWFlMzI1MTBmNGIxNWVkNmUwZS4uOGJhYjJkZDU5ZTczMGZhNzNjZGVhNTNjZTU0N2Q4
NTc3ZTI2MTg3YiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQ1IEBACisyMDIwLTEwLTIxICBDaHJp
cyBEdW1leiAgPGNkdW1lekBhcHBsZS5jb20+CisKKyAgICAgICAgVXBkYXRlIEZGVEZyYW1lOjpy
ZWFsRGF0YSgpIC8gaW1hZ0RhdGEoKSB0byByZXR1cm4gYW4gQXVkaW9GbG9hdEFycmF5CisgICAg
ICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMTgwNDgKKworICAg
ICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBVcGRhdGUgRkZURnJh
bWU6OnJlYWxEYXRhKCkgLyBpbWFnRGF0YSgpIHRvIHJldHVybiBhbiBBdWRpb0Zsb2F0QXJyYXkg
aW5zdGVhZCBvZiBhIGZsb2F0Ki4KKyAgICAgICAgSXQgaXMgcmlza3kgdG8gZXhwb3NlIGEgZmxv
YXQqIHNpbmNlIHRoZSBjYWxsZXIgaGFzIG5vIHdheSB0byBrbm93IHRoZSBhY3R1YWwgc2l6ZSBv
ZiB0aGUKKyAgICAgICAgYXJyYXkuIEJ5IHJldHVybmluZyBhbiBBdWRpb0Zsb2F0QXJyYXksIHRo
ZSBjYWxsZXIgY2FuIHF1ZXJ5IEF1ZGlvRmxvYXRBcnJheTo6c2l6ZSgpIHRvCisgICAgICAgIGtu
b3cgdGhlIGFjdHVhbCBzaXplLiBOb3RlIHRoYXQgaXQgaXMgbm90IHNhZmUgdG8gYXNzdW1lIHRo
YXQgdGhlIHNpemUgb2YgdGhlc2UgYXJyYXlzCisgICAgICAgIGlzIEZGVEZyYW1lOjpmZnRTaXpl
KCkgYmVjYXVzZSB0aGlzIGlzIG5vdCB0cnVlIGZvciBwb3J0cyB1c2luZyBHU3RyZWFtZXIuCisK
KyAgICAgICAgKiBNb2R1bGVzL3dlYmF1ZGlvL1BlcmlvZGljV2F2ZS5jcHA6CisgICAgICAgIChX
ZWJDb3JlOjpQZXJpb2RpY1dhdmU6OmNyZWF0ZUJhbmRMaW1pdGVkVGFibGVzKToKKyAgICAgICAg
KiBNb2R1bGVzL3dlYmF1ZGlvL1JlYWx0aW1lQW5hbHlzZXIuY3BwOgorICAgICAgICAoV2ViQ29y
ZTo6UmVhbHRpbWVBbmFseXNlcjo6ZG9GRlRBbmFseXNpc0lmTmVjZXNzYXJ5KToKKyAgICAgICAg
KiBwbGF0Zm9ybS9hdWRpby9GRlRGcmFtZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpGRlRGcmFt
ZTo6aW50ZXJwb2xhdGVGcmVxdWVuY3lDb21wb25lbnRzKToKKyAgICAgICAgKFdlYkNvcmU6OkZG
VEZyYW1lOjpzY2FsZUZGVCk6CisgICAgICAgIChXZWJDb3JlOjpGRlRGcmFtZTo6bXVsdGlwbHkp
OgorICAgICAgICAoV2ViQ29yZTo6RkZURnJhbWU6OmV4dHJhY3RBdmVyYWdlR3JvdXBEZWxheSk6
CisgICAgICAgIChXZWJDb3JlOjpGRlRGcmFtZTo6YWRkQ29uc3RhbnRHcm91cERlbGF5KToKKyAg
ICAgICAgKFdlYkNvcmU6OkZGVEZyYW1lOjpwcmludCk6CisgICAgICAgICogcGxhdGZvcm0vYXVk
aW8vRkZURnJhbWUuaDoKKyAgICAgICAgKFdlYkNvcmU6OkZGVEZyYW1lOjpyZWFsRGF0YSk6Cisg
ICAgICAgIChXZWJDb3JlOjpGRlRGcmFtZTo6aW1hZ0RhdGEpOgorICAgICAgICAoV2ViQ29yZTo6
RkZURnJhbWU6OnJlYWxEYXRhIGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6OkZGVEZyYW1lOjpp
bWFnRGF0YSBjb25zdCk6CisgICAgICAgICogcGxhdGZvcm0vYXVkaW8vRkZURnJhbWVTdHViLmNw
cDoKKyAgICAgICAgKFdlYkNvcmU6OkZGVEZyYW1lOjpyZWFsRGF0YSBjb25zdCk6IERlbGV0ZWQu
CisgICAgICAgIChXZWJDb3JlOjpGRlRGcmFtZTo6aW1hZ0RhdGEgY29uc3QpOiBEZWxldGVkLgor
ICAgICAgICAqIHBsYXRmb3JtL2F1ZGlvL2dzdHJlYW1lci9GRlRGcmFtZUdTdHJlYW1lci5jcHA6
CisgICAgICAgIChXZWJDb3JlOjpGRlRGcmFtZTo6RkZURnJhbWUpOgorICAgICAgICAoV2ViQ29y
ZTo6RkZURnJhbWU6OnJlYWxEYXRhIGNvbnN0KTogRGVsZXRlZC4KKyAgICAgICAgKFdlYkNvcmU6
OkZGVEZyYW1lOjppbWFnRGF0YSBjb25zdCk6IERlbGV0ZWQuCisgICAgICAgICogcGxhdGZvcm0v
YXVkaW8vbWFjL0ZGVEZyYW1lTWFjLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkZGVEZyYW1lOjpG
RlRGcmFtZSk6CisgICAgICAgIChXZWJDb3JlOjpGRlRGcmFtZTo6ZG9GRlQpOgorICAgICAgICAo
V2ViQ29yZTo6RkZURnJhbWU6OnJlYWxEYXRhIGNvbnN0KTogRGVsZXRlZC4KKyAgICAgICAgKFdl
YkNvcmU6OkZGVEZyYW1lOjppbWFnRGF0YSBjb25zdCk6IERlbGV0ZWQuCisKIDIwMjAtMTAtMjEg
IEFudHRpIEtvaXZpc3RvICA8YW50dGlAYXBwbGUuY29tPgogCiAgICAgICAgIFtMRkNdW0ludGVn
cmF0aW9uXSBVcGRhdGUgc3R5bGUgb2YgY29udGFpbmVkIGxheW91dCBib3hlcwpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRpby9QZXJpb2RpY1dhdmUuY3BwIGIvU291
cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRpby9QZXJpb2RpY1dhdmUuY3BwCmluZGV4IDBhMGIz
MjFiZWJjMzQ5YzdhOWIxMGMzNzQyMGVjZjAyNmI1ZjRlMDUuLjk0ZDc1NGNlNThkZDY4MTcwNDY2
MmUzY2RjYjRiZjQ3ZDgwNzYxNTAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMv
d2ViYXVkaW8vUGVyaW9kaWNXYXZlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dl
YmF1ZGlvL1BlcmlvZGljV2F2ZS5jcHAKQEAgLTE5NiwxMiArMTk2LDE1IEBAIHZvaWQgUGVyaW9k
aWNXYXZlOjpjcmVhdGVCYW5kTGltaXRlZFRhYmxlcyhjb25zdCBmbG9hdCogcmVhbERhdGEsIGNv
bnN0IGZsb2F0KiBpCiAgICAgZm9yICh1bnNpZ25lZCByYW5nZUluZGV4ID0gMDsgcmFuZ2VJbmRl
eCA8IG1fbnVtYmVyT2ZSYW5nZXM7ICsrcmFuZ2VJbmRleCkgewogICAgICAgICAvLyBUaGlzIEZG
VEZyYW1lIGlzIHVzZWQgdG8gY3VsbCBwYXJ0aWFscyAocmVwcmVzZW50ZWQgYnkgZnJlcXVlbmN5
IGJpbnMpLgogICAgICAgICBGRlRGcmFtZSBmcmFtZShmZnRTaXplKTsKLSAgICAgICAgZmxvYXQq
IHJlYWxQID0gZnJhbWUucmVhbERhdGEoKTsKLSAgICAgICAgZmxvYXQqIGltYWdQID0gZnJhbWUu
aW1hZ0RhdGEoKTsKKyAgICAgICAgYXV0byYgcmVhbFAgPSBmcmFtZS5yZWFsRGF0YSgpOworICAg
ICAgICBhdXRvJiBpbWFnUCA9IGZyYW1lLmltYWdEYXRhKCk7CisKKyAgICAgICAgUkVMRUFTRV9B
U1NFUlQocmVhbFAuc2l6ZSgpID49IG51bWJlck9mQ29tcG9uZW50cyk7CisgICAgICAgIFJFTEVB
U0VfQVNTRVJUKGltYWdQLnNpemUoKSA+PSBudW1iZXJPZkNvbXBvbmVudHMpOwogCiAgICAgICAg
IC8vIENvcHkgZnJvbSBsb2FkZWQgZnJlcXVlbmN5IGRhdGEgYW5kIHNjYWxlLgotICAgICAgICBW
ZWN0b3JNYXRoOjptdWx0aXBseUJ5U2NhbGFyKHJlYWxEYXRhLCBmZnRTaXplLCByZWFsUCwgbnVt
YmVyT2ZDb21wb25lbnRzKTsKLSAgICAgICAgVmVjdG9yTWF0aDo6bXVsdGlwbHlCeVNjYWxhcihp
bWFnRGF0YSwgLXN0YXRpY19jYXN0PGZsb2F0PihmZnRTaXplKSwgaW1hZ1AsIG51bWJlck9mQ29t
cG9uZW50cyk7CisgICAgICAgIFZlY3Rvck1hdGg6Om11bHRpcGx5QnlTY2FsYXIocmVhbERhdGEs
IGZmdFNpemUsIHJlYWxQLmRhdGEoKSwgbnVtYmVyT2ZDb21wb25lbnRzKTsKKyAgICAgICAgVmVj
dG9yTWF0aDo6bXVsdGlwbHlCeVNjYWxhcihpbWFnRGF0YSwgLXN0YXRpY19jYXN0PGZsb2F0Pihm
ZnRTaXplKSwgaW1hZ1AuZGF0YSgpLCBudW1iZXJPZkNvbXBvbmVudHMpOwogCiAgICAgICAgIC8v
IEZpbmQgdGhlIHN0YXJ0aW5nIGJpbiB3aGVyZSB3ZSBzaG91bGQgc3RhcnQgY3VsbGluZy4KICAg
ICAgICAgLy8gV2UgbmVlZCB0byBjbGVhciBvdXQgdGhlIGhpZ2hlc3QgZnJlcXVlbmNpZXMgdG8g
YmFuZC1saW1pdCB0aGUgd2F2ZWZvcm0uCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1
bGVzL3dlYmF1ZGlvL1JlYWx0aW1lQW5hbHlzZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvTW9kdWxl
cy93ZWJhdWRpby9SZWFsdGltZUFuYWx5c2VyLmNwcAppbmRleCBlOWZkMjk5MjZkZjI1OTQzMjIw
ZDhkMGI1OGEzMzNiYjliZTc2Mjk1Li42YzFjOTQ0MDIyZWQ1M2YwOWI3OTM4MWRiOWMxYjhlNWQz
NjYyMzA4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmF1ZGlvL1JlYWx0
aW1lQW5hbHlzZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8vUmVh
bHRpbWVBbmFseXNlci5jcHAKQEAgLTE1NCw4ICsxNTQsOCBAQCB2b2lkIFJlYWx0aW1lQW5hbHlz
ZXI6OmRvRkZUQW5hbHlzaXNJZk5lY2Vzc2FyeSgpCiAgICAgLy8gRG8gdGhlIGFuYWx5c2lzLgog
ICAgIG1fYW5hbHlzaXNGcmFtZS0+ZG9GRlQodGVtcFApOwogCi0gICAgZmxvYXQqIHJlYWxQID0g
bV9hbmFseXNpc0ZyYW1lLT5yZWFsRGF0YSgpOwotICAgIGZsb2F0KiBpbWFnUCA9IG1fYW5hbHlz
aXNGcmFtZS0+aW1hZ0RhdGEoKTsKKyAgICBhdXRvJiByZWFsUCA9IG1fYW5hbHlzaXNGcmFtZS0+
cmVhbERhdGEoKTsKKyAgICBhdXRvJiBpbWFnUCA9IG1fYW5hbHlzaXNGcmFtZS0+aW1hZ0RhdGEo
KTsKIAogICAgIC8vIEJsb3cgYXdheSB0aGUgcGFja2VkIG55cXVpc3QgY29tcG9uZW50LgogICAg
IGltYWdQWzBdID0gMDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2F1ZGlv
L0F1ZGlvQXJyYXkuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2F1ZGlvL0F1ZGlvQXJyYXku
aAppbmRleCBjYjU1NjdjZjdiODc3OGVjYzMyZTk2ZGE0YjE5NzkyMzI3Y2FhMDE2Li5jZDFhMzE0
MWJiY2Q2MTE3YWVjODgzZjM1NDYzNTMyYWFhODk3MTNiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9hdWRpby9BdWRpb0FycmF5LmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vYXVkaW8vQXVkaW9BcnJheS5oCkBAIC04MSw3ICs4MSwxNiBAQCBwdWJsaWM6CiAgICAg
ICAgIHJldHVybiBkYXRhKClbaV07CiAgICAgfQogCisgICAgY29uc3QgVCYgYXQoc2l6ZV90IGkp
IGNvbnN0CisgICAgeworICAgICAgICAvLyBOb3RlIHRoYXQgYWx0aG91Z2ggaXQgaXMgYSBzaXpl
X3QsIG1fc2l6ZSBpcyBub3cgZ3VhcmFudGVlZCB0byBiZQorICAgICAgICAvLyBubyBncmVhdGVy
IHRoYW4gbWF4IHVuc2lnbmVkLiBUaGlzIGd1YXJhbnRlZSBpcyBlbmZvcmNlZCBpbiByZXNpemUo
KS4KKyAgICAgICAgQVNTRVJUX1dJVEhfU0VDVVJJVFlfSU1QTElDQVRJT04oaSA8IHNpemUoKSk7
CisgICAgICAgIHJldHVybiBkYXRhKClbaV07CisgICAgfQorCiAgICAgVCYgb3BlcmF0b3JbXShz
aXplX3QgaSkgeyByZXR1cm4gYXQoaSk7IH0KKyAgICBjb25zdCBUJiBvcGVyYXRvcltdKHNpemVf
dCBpKSBjb25zdCB7IHJldHVybiBhdChpKTsgfQogCiAgICAgdm9pZCB6ZXJvKCkKICAgICB7CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9hdWRpby9GRlRGcmFtZS5jcHAgYi9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9hdWRpby9GRlRGcmFtZS5jcHAKaW5kZXggYjY5YTgxYTlm
MGEyMDU5MzEzM2I2Zjg1Nzg2MzY0NmUzMDZmNjhlNi4uMjQzMGI5NjAxZmY4NDEwZjJjODk1NGIw
YWM1ZmE4NDEwNjRlNGI3ZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vYXVk
aW8vRkZURnJhbWUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2F1ZGlvL0ZGVEZy
YW1lLmNwcApAQCAtNzUsMTMgKzc1LDEzIEBAIHZvaWQgRkZURnJhbWU6OmludGVycG9sYXRlRnJl
cXVlbmN5Q29tcG9uZW50cyhjb25zdCBGRlRGcmFtZSYgZnJhbWUxLCBjb25zdCBGRlRGCiB7CiAg
ICAgLy8gRklYTUUgOiB3aXRoIHNvbWUgd29yaywgdGhpcyBtZXRob2QgY291bGQgYmUgb3B0aW1p
emVkCiAKLSAgICBmbG9hdCogcmVhbFAgPSByZWFsRGF0YSgpOwotICAgIGZsb2F0KiBpbWFnUCA9
IGltYWdEYXRhKCk7CisgICAgYXV0byYgcmVhbFAgPSByZWFsRGF0YSgpOworICAgIGF1dG8mIGlt
YWdQID0gaW1hZ0RhdGEoKTsKIAotICAgIGNvbnN0IGZsb2F0KiByZWFsUDEgPSBmcmFtZTEucmVh
bERhdGEoKTsKLSAgICBjb25zdCBmbG9hdCogaW1hZ1AxID0gZnJhbWUxLmltYWdEYXRhKCk7Ci0g
ICAgY29uc3QgZmxvYXQqIHJlYWxQMiA9IGZyYW1lMi5yZWFsRGF0YSgpOwotICAgIGNvbnN0IGZs
b2F0KiBpbWFnUDIgPSBmcmFtZTIuaW1hZ0RhdGEoKTsKKyAgICBjb25zdCBhdXRvJiByZWFsUDEg
PSBmcmFtZTEucmVhbERhdGEoKTsKKyAgICBjb25zdCBhdXRvJiBpbWFnUDEgPSBmcmFtZTEuaW1h
Z0RhdGEoKTsKKyAgICBjb25zdCBhdXRvJiByZWFsUDIgPSBmcmFtZTIucmVhbERhdGEoKTsKKyAg
ICBjb25zdCBhdXRvJiBpbWFnUDIgPSBmcmFtZTIuaW1hZ0RhdGEoKTsKIAogICAgIG1fRkZUU2l6
ZSA9IGZyYW1lMS5mZnRTaXplKCk7CiAgICAgbV9sb2cyRkZUU2l6ZSA9IGZyYW1lMS5sb2cyRkZU
U2l6ZSgpOwpAQCAtMTc1LDggKzE3NSw4IEBAIHZvaWQgRkZURnJhbWU6OmludGVycG9sYXRlRnJl
cXVlbmN5Q29tcG9uZW50cyhjb25zdCBGRlRGcmFtZSYgZnJhbWUxLCBjb25zdCBGRlRGCiAKIHZv
aWQgRkZURnJhbWU6OnNjYWxlRkZUKGZsb2F0IGZhY3RvcikKIHsKLSAgICBWZWN0b3JNYXRoOjpt
dWx0aXBseUJ5U2NhbGFyKHJlYWxEYXRhKCksIGZhY3RvciwgcmVhbERhdGEoKSwgZmZ0U2l6ZSgp
KTsKLSAgICBWZWN0b3JNYXRoOjptdWx0aXBseUJ5U2NhbGFyKGltYWdEYXRhKCksIGZhY3Rvciwg
aW1hZ0RhdGEoKSwgZmZ0U2l6ZSgpKTsKKyAgICBWZWN0b3JNYXRoOjptdWx0aXBseUJ5U2NhbGFy
KHJlYWxEYXRhKCkuZGF0YSgpLCBmYWN0b3IsIHJlYWxEYXRhKCkuZGF0YSgpLCByZWFsRGF0YSgp
LnNpemUoKSk7CisgICAgVmVjdG9yTWF0aDo6bXVsdGlwbHlCeVNjYWxhcihpbWFnRGF0YSgpLmRh
dGEoKSwgZmFjdG9yLCBpbWFnRGF0YSgpLmRhdGEoKSwgcmVhbERhdGEoKS5zaXplKCkpOwogfQog
CiB2b2lkIEZGVEZyYW1lOjptdWx0aXBseShjb25zdCBGRlRGcmFtZSYgZnJhbWUpCkBAIC0xODQs
MTcgKzE4NCwyMyBAQCB2b2lkIEZGVEZyYW1lOjptdWx0aXBseShjb25zdCBGRlRGcmFtZSYgZnJh
bWUpCiAgICAgRkZURnJhbWUmIGZyYW1lMSA9ICp0aGlzOwogICAgIGNvbnN0IEZGVEZyYW1lJiBm
cmFtZTIgPSBmcmFtZTsKIAotICAgIGZsb2F0KiByZWFsUDEgPSBmcmFtZTEucmVhbERhdGEoKTsK
LSAgICBmbG9hdCogaW1hZ1AxID0gZnJhbWUxLmltYWdEYXRhKCk7Ci0gICAgY29uc3QgZmxvYXQq
IHJlYWxQMiA9IGZyYW1lMi5yZWFsRGF0YSgpOwotICAgIGNvbnN0IGZsb2F0KiBpbWFnUDIgPSBm
cmFtZTIuaW1hZ0RhdGEoKTsKKyAgICBhdXRvJiByZWFsUDEgPSBmcmFtZTEucmVhbERhdGEoKTsK
KyAgICBhdXRvJiBpbWFnUDEgPSBmcmFtZTEuaW1hZ0RhdGEoKTsKKyAgICBjb25zdCBhdXRvJiBy
ZWFsUDIgPSBmcmFtZTIucmVhbERhdGEoKTsKKyAgICBjb25zdCBhdXRvJiBpbWFnUDIgPSBmcmFt
ZTIuaW1hZ0RhdGEoKTsKIAogICAgIHVuc2lnbmVkIGhhbGZTaXplID0gbV9GRlRTaXplIC8gMjsK
KworICAgIFJFTEVBU0VfQVNTRVJUKHJlYWxQMS5zaXplKCkgPj0gaGFsZlNpemUpOworICAgIFJF
TEVBU0VfQVNTRVJUKGltYWdQMS5zaXplKCkgPj0gaGFsZlNpemUpOworICAgIFJFTEVBU0VfQVNT
RVJUKHJlYWxQMi5zaXplKCkgPj0gaGFsZlNpemUpOworICAgIFJFTEVBU0VfQVNTRVJUKGltYWdQ
Mi5zaXplKCkgPj0gaGFsZlNpemUpOworCiAgICAgZmxvYXQgcmVhbDAgPSByZWFsUDFbMF07CiAg
ICAgZmxvYXQgaW1hZzAgPSBpbWFnUDFbMF07CiAKICAgICAvLyBDb21wbGV4IG11bHRpcGx5Ci0g
ICAgVmVjdG9yTWF0aDo6bXVsdGlwbHlDb21wbGV4KHJlYWxQMSwgaW1hZ1AxLCByZWFsUDIsIGlt
YWdQMiwgcmVhbFAxLCBpbWFnUDEsIGhhbGZTaXplKTsKKyAgICBWZWN0b3JNYXRoOjptdWx0aXBs
eUNvbXBsZXgocmVhbFAxLmRhdGEoKSwgaW1hZ1AxLmRhdGEoKSwgcmVhbFAyLmRhdGEoKSwgaW1h
Z1AyLmRhdGEoKSwgcmVhbFAxLmRhdGEoKSwgaW1hZ1AxLmRhdGEoKSwgaGFsZlNpemUpOwogCiAg
ICAgLy8gTXVsdGlwbHkgdGhlIHBhY2tlZCBEQy9ueXF1aXN0IGNvbXBvbmVudAogICAgIHJlYWxQ
MVswXSA9IHJlYWwwICogcmVhbFAyWzBdOwpAQCAtMjAzLDggKzIwOSw4IEBAIHZvaWQgRkZURnJh
bWU6Om11bHRpcGx5KGNvbnN0IEZGVEZyYW1lJiBmcmFtZSkKIAogZG91YmxlIEZGVEZyYW1lOjpl
eHRyYWN0QXZlcmFnZUdyb3VwRGVsYXkoKQogewotICAgIGZsb2F0KiByZWFsUCA9IHJlYWxEYXRh
KCk7Ci0gICAgZmxvYXQqIGltYWdQID0gaW1hZ0RhdGEoKTsKKyAgICBhdXRvJiByZWFsUCA9IHJl
YWxEYXRhKCk7CisgICAgYXV0byYgaW1hZ1AgPSBpbWFnRGF0YSgpOwogCiAgICAgZG91YmxlIGF2
ZVN1bSA9IDAuMDsKICAgICBkb3VibGUgd2VpZ2h0U3VtID0gMC4wOwpAQCAtMjU0LDggKzI2MCw4
IEBAIHZvaWQgRkZURnJhbWU6OmFkZENvbnN0YW50R3JvdXBEZWxheShkb3VibGUgc2FtcGxlRnJh
bWVEZWxheSkKIHsKICAgICBpbnQgaGFsZlNpemUgPSBmZnRTaXplKCkgLyAyOwogCi0gICAgZmxv
YXQqIHJlYWxQID0gcmVhbERhdGEoKTsKLSAgICBmbG9hdCogaW1hZ1AgPSBpbWFnRGF0YSgpOwor
ICAgIGF1dG8mIHJlYWxQID0gcmVhbERhdGEoKTsKKyAgICBhdXRvJiBpbWFnUCA9IGltYWdEYXRh
KCk7CiAKICAgICBjb25zdCBkb3VibGUga1NhbXBsZVBoYXNlRGVsYXkgPSAoMi4wICogcGlEb3Vi
bGUpIC8gZG91YmxlKGZmdFNpemUoKSk7CiAKQEAgLTI4MCw4ICsyODYsOCBAQCB2b2lkIEZGVEZy
YW1lOjphZGRDb25zdGFudEdyb3VwRGVsYXkoZG91YmxlIHNhbXBsZUZyYW1lRGVsYXkpCiB2b2lk
IEZGVEZyYW1lOjpwcmludCgpCiB7CiAgICAgRkZURnJhbWUmIGZyYW1lID0gKnRoaXM7Ci0gICAg
ZmxvYXQqIHJlYWxQID0gZnJhbWUucmVhbERhdGEoKTsKLSAgICBmbG9hdCogaW1hZ1AgPSBmcmFt
ZS5pbWFnRGF0YSgpOworICAgIGF1dG8mIHJlYWxQID0gZnJhbWUucmVhbERhdGEoKTsKKyAgICBh
dXRvJiBpbWFnUCA9IGZyYW1lLmltYWdEYXRhKCk7CiAgICAgTE9HKFdlYkF1ZGlvLCAiKioqKiBc
biIpOwogICAgIExPRyhXZWJBdWRpbywgIkRDID0gJWYgOiBueXF1aXN0ID0gJWZcbiIsIHJlYWxQ
WzBdLCBpbWFnUFswXSk7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2F1
ZGlvL0ZGVEZyYW1lLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9hdWRpby9GRlRGcmFtZS5o
CmluZGV4IDNiMWIwM2Y5M2VhMzEzN2MxNDhjOTljYjY1MzZhYTA0ZDdhZTEyZGMuLmNlZTg4YTk1
MGI4YzM3ZTA2OTcxNGU1NDI3OTYwZWU5ODk4Mzk0M2MgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL2F1ZGlvL0ZGVEZyYW1lLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vYXVkaW8vRkZURnJhbWUuaApAQCAtNjcsOCArNjcsMTAgQEAgcHVibGljOgogICAgIHZvaWQg
bXVsdGlwbHkoY29uc3QgRkZURnJhbWUmIGZyYW1lKTsgLy8gbXVsdGlwbGllcyBvdXJzZWxmIHdp
dGggZnJhbWUgOiBlZmZlY3RpdmVseSBvcGVyYXRvcio9KCkKICAgICB2b2lkIHNjYWxlRkZUKGZs
b2F0IGZhY3Rvcik7CiAKLSAgICBmbG9hdCogcmVhbERhdGEoKSBjb25zdDsKLSAgICBmbG9hdCog
aW1hZ0RhdGEoKSBjb25zdDsKKyAgICBBdWRpb0Zsb2F0QXJyYXkmIHJlYWxEYXRhKCkgeyByZXR1
cm4gbV9yZWFsRGF0YTsgfQorICAgIEF1ZGlvRmxvYXRBcnJheSYgaW1hZ0RhdGEoKSB7IHJldHVy
biBtX2ltYWdEYXRhOyB9CisgICAgY29uc3QgQXVkaW9GbG9hdEFycmF5JiByZWFsRGF0YSgpIGNv
bnN0IHsgcmV0dXJuIG1fcmVhbERhdGE7IH0KKyAgICBjb25zdCBBdWRpb0Zsb2F0QXJyYXkmIGlt
YWdEYXRhKCkgY29uc3QgeyByZXR1cm4gbV9pbWFnRGF0YTsgfQogCiAgICAgc3RhdGljIGludCBt
aW5GRlRTaXplKCk7CiAgICAgc3RhdGljIGludCBtYXhGRlRTaXplKCk7CkBAIC0xMDMsMTcgKzEw
NSwxNiBAQCBwcml2YXRlOgogICAgIEZGVFNldHVwIG1fRkZUU2V0dXA7CiAKICAgICBEU1BTcGxp
dENvbXBsZXggbV9mcmFtZTsKLSAgICBBdWRpb0Zsb2F0QXJyYXkgbV9yZWFsRGF0YTsKLSAgICBB
dWRpb0Zsb2F0QXJyYXkgbV9pbWFnRGF0YTsKICNlbmRpZgogCiAjaWYgVVNFKFdFQkFVRElPX0dT
VFJFQU1FUikKICAgICBHc3RGRlRGMzIqIG1fZmZ0OwogICAgIEdzdEZGVEYzMiogbV9pbnZlcnNl
RmZ0OwogICAgIFVuaXF1ZUFycmF5PEdzdEZGVEYzMkNvbXBsZXg+IG1fY29tcGxleERhdGE7Cisj
ZW5kaWYgLy8gVVNFKFdFQkFVRElPX0dTVFJFQU1FUikKKwogICAgIEF1ZGlvRmxvYXRBcnJheSBt
X3JlYWxEYXRhOwogICAgIEF1ZGlvRmxvYXRBcnJheSBtX2ltYWdEYXRhOwotI2VuZGlmIC8vIFVT
RShXRUJBVURJT19HU1RSRUFNRVIpCiB9OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9hdWRpby9GRlRGcmFtZVN0dWIuY3BwIGIv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vYXVkaW8vRkZURnJhbWVTdHViLmNwcAppbmRleCA3MzVl
Nzc2Mzc1ZDE5NzJjYWFkYWFjNTYyYjU1NTM5YzFiYTMzYzYzLi5lNjQxZGExOWNiMGY0ZjIxNTdj
NDQ1NWI4MDZlNDU1MzM4OGY4ZWJiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9hdWRpby9GRlRGcmFtZVN0dWIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2F1
ZGlvL0ZGVEZyYW1lU3R1Yi5jcHAKQEAgLTc4LDE4ICs3OCw2IEBAIHZvaWQgRkZURnJhbWU6Omlu
aXRpYWxpemUoKQogewogfQogCi1mbG9hdCogRkZURnJhbWU6OnJlYWxEYXRhKCkgY29uc3QKLXsK
LSAgICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKLSAgICByZXR1cm4gMDsKLX0KLQotZmxvYXQqIEZG
VEZyYW1lOjppbWFnRGF0YSgpIGNvbnN0Ci17Ci0gICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7Ci0g
ICAgcmV0dXJuIDA7Ci19Ci0KIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKIAogI2VuZGlmIC8vICFP
UyhEQVJXSU4pICYmICFVU0UoV0VCQVVESU9fR1NUUkVBTUVSKQpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vYXVkaW8vZ3N0cmVhbWVyL0ZGVEZyYW1lR1N0cmVhbWVyLmNwcCBi
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2F1ZGlvL2dzdHJlYW1lci9GRlRGcmFtZUdTdHJlYW1l
ci5jcHAKaW5kZXggOWVjNzZkOGU2YmRmZGI0N2Y1NTIwNGQ2ZDZiNTBkZjM4ZjE0MzMzNS4uMDgy
MjZjMGUzMTE2MTZkZDFkNGFlMWUwODZmNmFmNjY4YTQ0NmNlMSAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vYXVkaW8vZ3N0cmVhbWVyL0ZGVEZyYW1lR1N0cmVhbWVyLmNwcAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9hdWRpby9nc3RyZWFtZXIvRkZURnJhbWVHU3Ry
ZWFtZXIuY3BwCkBAIC03OSw4ICs3OSw4IEBAIEZGVEZyYW1lOjpGRlRGcmFtZShjb25zdCBGRlRG
cmFtZSYgZnJhbWUpCiAgICAgbV9pbnZlcnNlRmZ0ID0gZ3N0X2ZmdF9mMzJfbmV3KGZmdExlbmd0
aCwgVFJVRSk7CiAKICAgICAvLyBDb3B5L3NldHVwIGZyYW1lIGRhdGEuCi0gICAgbWVtY3B5KHJl
YWxEYXRhKCksIGZyYW1lLnJlYWxEYXRhKCksIHNpemVvZihmbG9hdCkgKiB1bnBhY2tlZEZGVERh
dGFTaXplKG1fRkZUU2l6ZSkpOwotICAgIG1lbWNweShpbWFnRGF0YSgpLCBmcmFtZS5pbWFnRGF0
YSgpLCBzaXplb2YoZmxvYXQpICogdW5wYWNrZWRGRlREYXRhU2l6ZShtX0ZGVFNpemUpKTsKKyAg
ICBtZW1jcHkocmVhbERhdGEoKS5kYXRhKCksIGZyYW1lLnJlYWxEYXRhKCksIHNpemVvZihmbG9h
dCkgKiByZWFsRGF0YSgpLnNpemUoKSk7CisgICAgbWVtY3B5KGltYWdEYXRhKCkuZGF0YSgpLCBm
cmFtZS5pbWFnRGF0YSgpLCBzaXplb2YoZmxvYXQpICogaW1hZ0RhdGEoKS5zaXplKCkpOwogfQog
CiB2b2lkIEZGVEZyYW1lOjppbml0aWFsaXplKCkKQEAgLTEyOCwxNiArMTI4LDYgQEAgdm9pZCBG
RlRGcmFtZTo6ZG9JbnZlcnNlRkZUKGZsb2F0KiBkYXRhKQogICAgIFZlY3Rvck1hdGg6Om11bHRp
cGx5QnlTY2FsYXIoZGF0YSwgMS4wIC8gbV9GRlRTaXplLCBkYXRhLCBtX0ZGVFNpemUpOwogfQog
Ci1mbG9hdCogRkZURnJhbWU6OnJlYWxEYXRhKCkgY29uc3QKLXsKLSAgICByZXR1cm4gY29uc3Rf
Y2FzdDxmbG9hdCo+KG1fcmVhbERhdGEuZGF0YSgpKTsKLX0KLQotZmxvYXQqIEZGVEZyYW1lOjpp
bWFnRGF0YSgpIGNvbnN0Ci17Ci0gICAgcmV0dXJuIGNvbnN0X2Nhc3Q8ZmxvYXQqPihtX2ltYWdE
YXRhLmRhdGEoKSk7Ci19Ci0KIGludCBGRlRGcmFtZTo6bWluRkZUU2l6ZSgpCiB7CiAgICAgcmV0
dXJuIDEgPDwga01pbkZGVFBvdzJTaXplOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vYXVkaW8vbWFjL0ZGVEZyYW1lTWFjLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2F1ZGlvL21hYy9GRlRGcmFtZU1hYy5jcHAKaW5kZXggNGNmZmM0NTU2NzMzMzMxODZhMzEwZmMz
MTU5MTFhZTM0OWQ5NjIyMy4uOGQ3OTkxNzg1NGMyM2JlMWEwMDUzYmMyZDQ5NDYxZDkwOWE1Yzcx
NiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vYXVkaW8vbWFjL0ZGVEZyYW1l
TWFjLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9hdWRpby9tYWMvRkZURnJhbWVN
YWMuY3BwCkBAIC02Niw4ICs2Niw2IEBAIEZGVEZyYW1lOjpGRlRGcmFtZSh1bnNpZ25lZCBmZnRT
aXplKQogCiAvLyBDcmVhdGVzIGEgYmxhbmsvZW1wdHkgZnJhbWUgKGludGVycG9sYXRlKCkgbXVz
dCBsYXRlciBiZSBjYWxsZWQpCiBGRlRGcmFtZTo6RkZURnJhbWUoKQotICAgIDogbV9yZWFsRGF0
YSgwKQotICAgICwgbV9pbWFnRGF0YSgwKQogewogICAgIC8vIExhdGVyIHdpbGwgYmUgc2V0IHRv
IGNvcnJlY3QgdmFsdWVzIHdoZW4gaW50ZXJwb2xhdGUoKSBpcyBjYWxsZWQKICAgICBtX2ZyYW1l
LnJlYWxwID0gMDsKQEAgLTkwLDkgKzg4LDggQEAgRkZURnJhbWU6OkZGVEZyYW1lKGNvbnN0IEZG
VEZyYW1lJiBmcmFtZSkKICAgICBtX2ZyYW1lLmltYWdwID0gbV9pbWFnRGF0YS5kYXRhKCk7CiAK
ICAgICAvLyBDb3B5L3NldHVwIGZyYW1lIGRhdGEKLSAgICB1bnNpZ25lZCBuYnl0ZXMgPSBzaXpl
b2YoZmxvYXQpICogbV9GRlRTaXplOwotICAgIG1lbWNweShyZWFsRGF0YSgpLCBmcmFtZS5tX2Zy
YW1lLnJlYWxwLCBuYnl0ZXMpOwotICAgIG1lbWNweShpbWFnRGF0YSgpLCBmcmFtZS5tX2ZyYW1l
LmltYWdwLCBuYnl0ZXMpOworICAgIG1lbWNweShyZWFsRGF0YSgpLmRhdGEoKSwgZnJhbWUubV9m
cmFtZS5yZWFscCwgc2l6ZW9mKGZsb2F0KSAqIHJlYWxEYXRhKCkuc2l6ZSgpKTsKKyAgICBtZW1j
cHkoaW1hZ0RhdGEoKS5kYXRhKCksIGZyYW1lLm1fZnJhbWUuaW1hZ3AsIHNpemVvZihmbG9hdCkg
KiBpbWFnRGF0YSgpLnNpemUoKSk7CiB9CiAKIEZGVEZyYW1lOjp+RkZURnJhbWUoKSA9IGRlZmF1
bHQ7CkBAIC0xMDMsMTMgKzEwMCwxNiBAQCB2b2lkIEZGVEZyYW1lOjpkb0ZGVChjb25zdCBmbG9h
dCogZGF0YSkKICAgICB2RFNQX2N0b3oocmVpbnRlcnByZXRfY2FzdDxjb25zdCBEU1BDb21wbGV4
Kj4oZGF0YSksIDIsICZtX2ZyYW1lLCAxLCBoYWxmU2l6ZSk7CiAgICAgdkRTUF9mZnRfenJpcCht
X0ZGVFNldHVwLCAmbV9mcmFtZSwgMSwgbV9sb2cyRkZUU2l6ZSwgRkZUX0ZPUldBUkQpOwogCisg
ICAgUkVMRUFTRV9BU1NFUlQocmVhbERhdGEoKS5zaXplKCkgPj0gaGFsZlNpemUpOworICAgIFJF
TEVBU0VfQVNTRVJUKGltYWdEYXRhKCkuc2l6ZSgpID49IGhhbGZTaXplKTsKKwogICAgIC8vIFRv
IHByb3ZpZGUgdGhlIGJlc3QgcG9zc2libGUgZXhlY3V0aW9uIHNwZWVkcywgdGhlIHZEU1AgbGli
cmFyeSdzIGZ1bmN0aW9ucyBkb24ndCBhbHdheXMgYWRoZXJlIHN0cmljdGx5CiAgICAgLy8gdG8g
dGV4dGJvb2sgZm9ybXVsYXMgZm9yIEZvdXJpZXIgdHJhbnNmb3JtcywgYW5kIG11c3QgYmUgc2Nh
bGVkIGFjY29yZGluZ2x5LgogICAgIC8vIChTZWUgaHR0cHM6Ly9kZXZlbG9wZXIuYXBwbGUuY29t
L2xpYnJhcnkvYXJjaGl2ZS9kb2N1bWVudGF0aW9uL1BlcmZvcm1hbmNlL0NvbmNlcHR1YWwvdkRT
UF9Qcm9ncmFtbWluZ19HdWlkZS9Vc2luZ0ZvdXJpZXJUcmFuc2Zvcm1zL1VzaW5nRm91cmllclRy
YW5zZm9ybXMuaHRtbCMvL2FwcGxlX3JlZi9kb2MvdWlkL1RQNDAwMDUxNDctQ0gzLVNXNSkKICAg
ICAvLyBJbiB0aGUgY2FzZSBvZiBhIFJlYWwgZm9yd2FyZCBUcmFuc2Zvcm0gbGlrZSBhYm92ZTog
UkZpbXAgPSBSRm1hdGggKiAyIHNvIHdlIG5lZWQgdG8gZGl2aWRlIHRoZSBvdXRwdXQKICAgICAv
LyBieSAyIHRvIGdldCB0aGUgY29ycmVjdCB2YWx1ZS4KLSAgICBWZWN0b3JNYXRoOjptdWx0aXBs
eUJ5U2NhbGFyKHJlYWxEYXRhKCksIDAuNSwgcmVhbERhdGEoKSwgaGFsZlNpemUpOwotICAgIFZl
Y3Rvck1hdGg6Om11bHRpcGx5QnlTY2FsYXIoaW1hZ0RhdGEoKSwgMC41LCBpbWFnRGF0YSgpLCBo
YWxmU2l6ZSk7CisgICAgVmVjdG9yTWF0aDo6bXVsdGlwbHlCeVNjYWxhcihyZWFsRGF0YSgpLmRh
dGEoKSwgMC41LCByZWFsRGF0YSgpLmRhdGEoKSwgaGFsZlNpemUpOworICAgIFZlY3Rvck1hdGg6
Om11bHRpcGx5QnlTY2FsYXIoaW1hZ0RhdGEoKS5kYXRhKCksIDAuNSwgaW1hZ0RhdGEoKS5kYXRh
KCksIGhhbGZTaXplKTsKIH0KIAogdm9pZCBGRlRGcmFtZTo6ZG9JbnZlcnNlRkZUKGZsb2F0KiBk
YXRhKQpAQCAtMTQ4LDE2ICsxNDgsNiBAQCB2b2lkIEZGVEZyYW1lOjppbml0aWFsaXplKCkKIHsK
IH0KIAotZmxvYXQqIEZGVEZyYW1lOjpyZWFsRGF0YSgpIGNvbnN0Ci17Ci0gICAgcmV0dXJuIG1f
ZnJhbWUucmVhbHA7Ci19Ci0gICAgCi1mbG9hdCogRkZURnJhbWU6OmltYWdEYXRhKCkgY29uc3QK
LXsKLSAgICByZXR1cm4gbV9mcmFtZS5pbWFncDsKLX0KLQogfSAvLyBuYW1lc3BhY2UgV2ViQ29y
ZQogCiAjZW5kaWYgLy8gI2lmIE9TKERBUldJTikK
</data>
<flag name="commit-queue"
          id="428379"
          type_id="3"
          status="-"
          setter="ews-feeder"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>412028</attachid>
            <date>2020-10-21 13:49:20 -0700</date>
            <delta_ts>2020-10-21 14:33:11 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-218048-20201021134919.patch</filename>
            <type>text/plain</type>
            <size>15035</size>
            <attacher name="Chris Dumez">cdumez</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjY4ODE4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggM2NiMjc1NWQxYjIyMGRi
YTJhNWZmOWFlMzI1MTBmNGIxNWVkNmUwZS4uOGJhYjJkZDU5ZTczMGZhNzNjZGVhNTNjZTU0N2Q4
NTc3ZTI2MTg3YiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQ1IEBACisyMDIwLTEwLTIxICBDaHJp
cyBEdW1leiAgPGNkdW1lekBhcHBsZS5jb20+CisKKyAgICAgICAgVXBkYXRlIEZGVEZyYW1lOjpy
ZWFsRGF0YSgpIC8gaW1hZ0RhdGEoKSB0byByZXR1cm4gYW4gQXVkaW9GbG9hdEFycmF5CisgICAg
ICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMTgwNDgKKworICAg
ICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBVcGRhdGUgRkZURnJh
bWU6OnJlYWxEYXRhKCkgLyBpbWFnRGF0YSgpIHRvIHJldHVybiBhbiBBdWRpb0Zsb2F0QXJyYXkg
aW5zdGVhZCBvZiBhIGZsb2F0Ki4KKyAgICAgICAgSXQgaXMgcmlza3kgdG8gZXhwb3NlIGEgZmxv
YXQqIHNpbmNlIHRoZSBjYWxsZXIgaGFzIG5vIHdheSB0byBrbm93IHRoZSBhY3R1YWwgc2l6ZSBv
ZiB0aGUKKyAgICAgICAgYXJyYXkuIEJ5IHJldHVybmluZyBhbiBBdWRpb0Zsb2F0QXJyYXksIHRo
ZSBjYWxsZXIgY2FuIHF1ZXJ5IEF1ZGlvRmxvYXRBcnJheTo6c2l6ZSgpIHRvCisgICAgICAgIGtu
b3cgdGhlIGFjdHVhbCBzaXplLiBOb3RlIHRoYXQgaXQgaXMgbm90IHNhZmUgdG8gYXNzdW1lIHRo
YXQgdGhlIHNpemUgb2YgdGhlc2UgYXJyYXlzCisgICAgICAgIGlzIEZGVEZyYW1lOjpmZnRTaXpl
KCkgYmVjYXVzZSB0aGlzIGlzIG5vdCB0cnVlIGZvciBwb3J0cyB1c2luZyBHU3RyZWFtZXIuCisK
KyAgICAgICAgKiBNb2R1bGVzL3dlYmF1ZGlvL1BlcmlvZGljV2F2ZS5jcHA6CisgICAgICAgIChX
ZWJDb3JlOjpQZXJpb2RpY1dhdmU6OmNyZWF0ZUJhbmRMaW1pdGVkVGFibGVzKToKKyAgICAgICAg
KiBNb2R1bGVzL3dlYmF1ZGlvL1JlYWx0aW1lQW5hbHlzZXIuY3BwOgorICAgICAgICAoV2ViQ29y
ZTo6UmVhbHRpbWVBbmFseXNlcjo6ZG9GRlRBbmFseXNpc0lmTmVjZXNzYXJ5KToKKyAgICAgICAg
KiBwbGF0Zm9ybS9hdWRpby9GRlRGcmFtZS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpGRlRGcmFt
ZTo6aW50ZXJwb2xhdGVGcmVxdWVuY3lDb21wb25lbnRzKToKKyAgICAgICAgKFdlYkNvcmU6OkZG
VEZyYW1lOjpzY2FsZUZGVCk6CisgICAgICAgIChXZWJDb3JlOjpGRlRGcmFtZTo6bXVsdGlwbHkp
OgorICAgICAgICAoV2ViQ29yZTo6RkZURnJhbWU6OmV4dHJhY3RBdmVyYWdlR3JvdXBEZWxheSk6
CisgICAgICAgIChXZWJDb3JlOjpGRlRGcmFtZTo6YWRkQ29uc3RhbnRHcm91cERlbGF5KToKKyAg
ICAgICAgKFdlYkNvcmU6OkZGVEZyYW1lOjpwcmludCk6CisgICAgICAgICogcGxhdGZvcm0vYXVk
aW8vRkZURnJhbWUuaDoKKyAgICAgICAgKFdlYkNvcmU6OkZGVEZyYW1lOjpyZWFsRGF0YSk6Cisg
ICAgICAgIChXZWJDb3JlOjpGRlRGcmFtZTo6aW1hZ0RhdGEpOgorICAgICAgICAoV2ViQ29yZTo6
RkZURnJhbWU6OnJlYWxEYXRhIGNvbnN0KToKKyAgICAgICAgKFdlYkNvcmU6OkZGVEZyYW1lOjpp
bWFnRGF0YSBjb25zdCk6CisgICAgICAgICogcGxhdGZvcm0vYXVkaW8vRkZURnJhbWVTdHViLmNw
cDoKKyAgICAgICAgKFdlYkNvcmU6OkZGVEZyYW1lOjpyZWFsRGF0YSBjb25zdCk6IERlbGV0ZWQu
CisgICAgICAgIChXZWJDb3JlOjpGRlRGcmFtZTo6aW1hZ0RhdGEgY29uc3QpOiBEZWxldGVkLgor
ICAgICAgICAqIHBsYXRmb3JtL2F1ZGlvL2dzdHJlYW1lci9GRlRGcmFtZUdTdHJlYW1lci5jcHA6
CisgICAgICAgIChXZWJDb3JlOjpGRlRGcmFtZTo6RkZURnJhbWUpOgorICAgICAgICAoV2ViQ29y
ZTo6RkZURnJhbWU6OnJlYWxEYXRhIGNvbnN0KTogRGVsZXRlZC4KKyAgICAgICAgKFdlYkNvcmU6
OkZGVEZyYW1lOjppbWFnRGF0YSBjb25zdCk6IERlbGV0ZWQuCisgICAgICAgICogcGxhdGZvcm0v
YXVkaW8vbWFjL0ZGVEZyYW1lTWFjLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkZGVEZyYW1lOjpG
RlRGcmFtZSk6CisgICAgICAgIChXZWJDb3JlOjpGRlRGcmFtZTo6ZG9GRlQpOgorICAgICAgICAo
V2ViQ29yZTo6RkZURnJhbWU6OnJlYWxEYXRhIGNvbnN0KTogRGVsZXRlZC4KKyAgICAgICAgKFdl
YkNvcmU6OkZGVEZyYW1lOjppbWFnRGF0YSBjb25zdCk6IERlbGV0ZWQuCisKIDIwMjAtMTAtMjEg
IEFudHRpIEtvaXZpc3RvICA8YW50dGlAYXBwbGUuY29tPgogCiAgICAgICAgIFtMRkNdW0ludGVn
cmF0aW9uXSBVcGRhdGUgc3R5bGUgb2YgY29udGFpbmVkIGxheW91dCBib3hlcwpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRpby9QZXJpb2RpY1dhdmUuY3BwIGIvU291
cmNlL1dlYkNvcmUvTW9kdWxlcy93ZWJhdWRpby9QZXJpb2RpY1dhdmUuY3BwCmluZGV4IDBhMGIz
MjFiZWJjMzQ5YzdhOWIxMGMzNzQyMGVjZjAyNmI1ZjRlMDUuLjk0ZDc1NGNlNThkZDY4MTcwNDY2
MmUzY2RjYjRiZjQ3ZDgwNzYxNTAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMv
d2ViYXVkaW8vUGVyaW9kaWNXYXZlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dl
YmF1ZGlvL1BlcmlvZGljV2F2ZS5jcHAKQEAgLTE5NiwxMiArMTk2LDE1IEBAIHZvaWQgUGVyaW9k
aWNXYXZlOjpjcmVhdGVCYW5kTGltaXRlZFRhYmxlcyhjb25zdCBmbG9hdCogcmVhbERhdGEsIGNv
bnN0IGZsb2F0KiBpCiAgICAgZm9yICh1bnNpZ25lZCByYW5nZUluZGV4ID0gMDsgcmFuZ2VJbmRl
eCA8IG1fbnVtYmVyT2ZSYW5nZXM7ICsrcmFuZ2VJbmRleCkgewogICAgICAgICAvLyBUaGlzIEZG
VEZyYW1lIGlzIHVzZWQgdG8gY3VsbCBwYXJ0aWFscyAocmVwcmVzZW50ZWQgYnkgZnJlcXVlbmN5
IGJpbnMpLgogICAgICAgICBGRlRGcmFtZSBmcmFtZShmZnRTaXplKTsKLSAgICAgICAgZmxvYXQq
IHJlYWxQID0gZnJhbWUucmVhbERhdGEoKTsKLSAgICAgICAgZmxvYXQqIGltYWdQID0gZnJhbWUu
aW1hZ0RhdGEoKTsKKyAgICAgICAgYXV0byYgcmVhbFAgPSBmcmFtZS5yZWFsRGF0YSgpOworICAg
ICAgICBhdXRvJiBpbWFnUCA9IGZyYW1lLmltYWdEYXRhKCk7CisKKyAgICAgICAgUkVMRUFTRV9B
U1NFUlQocmVhbFAuc2l6ZSgpID49IG51bWJlck9mQ29tcG9uZW50cyk7CisgICAgICAgIFJFTEVB
U0VfQVNTRVJUKGltYWdQLnNpemUoKSA+PSBudW1iZXJPZkNvbXBvbmVudHMpOwogCiAgICAgICAg
IC8vIENvcHkgZnJvbSBsb2FkZWQgZnJlcXVlbmN5IGRhdGEgYW5kIHNjYWxlLgotICAgICAgICBW
ZWN0b3JNYXRoOjptdWx0aXBseUJ5U2NhbGFyKHJlYWxEYXRhLCBmZnRTaXplLCByZWFsUCwgbnVt
YmVyT2ZDb21wb25lbnRzKTsKLSAgICAgICAgVmVjdG9yTWF0aDo6bXVsdGlwbHlCeVNjYWxhcihp
bWFnRGF0YSwgLXN0YXRpY19jYXN0PGZsb2F0PihmZnRTaXplKSwgaW1hZ1AsIG51bWJlck9mQ29t
cG9uZW50cyk7CisgICAgICAgIFZlY3Rvck1hdGg6Om11bHRpcGx5QnlTY2FsYXIocmVhbERhdGEs
IGZmdFNpemUsIHJlYWxQLmRhdGEoKSwgbnVtYmVyT2ZDb21wb25lbnRzKTsKKyAgICAgICAgVmVj
dG9yTWF0aDo6bXVsdGlwbHlCeVNjYWxhcihpbWFnRGF0YSwgLXN0YXRpY19jYXN0PGZsb2F0Pihm
ZnRTaXplKSwgaW1hZ1AuZGF0YSgpLCBudW1iZXJPZkNvbXBvbmVudHMpOwogCiAgICAgICAgIC8v
IEZpbmQgdGhlIHN0YXJ0aW5nIGJpbiB3aGVyZSB3ZSBzaG91bGQgc3RhcnQgY3VsbGluZy4KICAg
ICAgICAgLy8gV2UgbmVlZCB0byBjbGVhciBvdXQgdGhlIGhpZ2hlc3QgZnJlcXVlbmNpZXMgdG8g
YmFuZC1saW1pdCB0aGUgd2F2ZWZvcm0uCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1
bGVzL3dlYmF1ZGlvL1JlYWx0aW1lQW5hbHlzZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvTW9kdWxl
cy93ZWJhdWRpby9SZWFsdGltZUFuYWx5c2VyLmNwcAppbmRleCBlOWZkMjk5MjZkZjI1OTQzMjIw
ZDhkMGI1OGEzMzNiYjliZTc2Mjk1Li42YzFjOTQ0MDIyZWQ1M2YwOWI3OTM4MWRiOWMxYjhlNWQz
NjYyMzA4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3dlYmF1ZGlvL1JlYWx0
aW1lQW5hbHlzZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8vUmVh
bHRpbWVBbmFseXNlci5jcHAKQEAgLTE1NCw4ICsxNTQsOCBAQCB2b2lkIFJlYWx0aW1lQW5hbHlz
ZXI6OmRvRkZUQW5hbHlzaXNJZk5lY2Vzc2FyeSgpCiAgICAgLy8gRG8gdGhlIGFuYWx5c2lzLgog
ICAgIG1fYW5hbHlzaXNGcmFtZS0+ZG9GRlQodGVtcFApOwogCi0gICAgZmxvYXQqIHJlYWxQID0g
bV9hbmFseXNpc0ZyYW1lLT5yZWFsRGF0YSgpOwotICAgIGZsb2F0KiBpbWFnUCA9IG1fYW5hbHlz
aXNGcmFtZS0+aW1hZ0RhdGEoKTsKKyAgICBhdXRvJiByZWFsUCA9IG1fYW5hbHlzaXNGcmFtZS0+
cmVhbERhdGEoKTsKKyAgICBhdXRvJiBpbWFnUCA9IG1fYW5hbHlzaXNGcmFtZS0+aW1hZ0RhdGEo
KTsKIAogICAgIC8vIEJsb3cgYXdheSB0aGUgcGFja2VkIG55cXVpc3QgY29tcG9uZW50LgogICAg
IGltYWdQWzBdID0gMDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2F1ZGlv
L0F1ZGlvQXJyYXkuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2F1ZGlvL0F1ZGlvQXJyYXku
aAppbmRleCBjYjU1NjdjZjdiODc3OGVjYzMyZTk2ZGE0YjE5NzkyMzI3Y2FhMDE2Li5jZDFhMzE0
MWJiY2Q2MTE3YWVjODgzZjM1NDYzNTMyYWFhODk3MTNiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9hdWRpby9BdWRpb0FycmF5LmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vYXVkaW8vQXVkaW9BcnJheS5oCkBAIC04MSw3ICs4MSwxNiBAQCBwdWJsaWM6CiAgICAg
ICAgIHJldHVybiBkYXRhKClbaV07CiAgICAgfQogCisgICAgY29uc3QgVCYgYXQoc2l6ZV90IGkp
IGNvbnN0CisgICAgeworICAgICAgICAvLyBOb3RlIHRoYXQgYWx0aG91Z2ggaXQgaXMgYSBzaXpl
X3QsIG1fc2l6ZSBpcyBub3cgZ3VhcmFudGVlZCB0byBiZQorICAgICAgICAvLyBubyBncmVhdGVy
IHRoYW4gbWF4IHVuc2lnbmVkLiBUaGlzIGd1YXJhbnRlZSBpcyBlbmZvcmNlZCBpbiByZXNpemUo
KS4KKyAgICAgICAgQVNTRVJUX1dJVEhfU0VDVVJJVFlfSU1QTElDQVRJT04oaSA8IHNpemUoKSk7
CisgICAgICAgIHJldHVybiBkYXRhKClbaV07CisgICAgfQorCiAgICAgVCYgb3BlcmF0b3JbXShz
aXplX3QgaSkgeyByZXR1cm4gYXQoaSk7IH0KKyAgICBjb25zdCBUJiBvcGVyYXRvcltdKHNpemVf
dCBpKSBjb25zdCB7IHJldHVybiBhdChpKTsgfQogCiAgICAgdm9pZCB6ZXJvKCkKICAgICB7CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9hdWRpby9GRlRGcmFtZS5jcHAgYi9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9hdWRpby9GRlRGcmFtZS5jcHAKaW5kZXggYjY5YTgxYTlm
MGEyMDU5MzEzM2I2Zjg1Nzg2MzY0NmUzMDZmNjhlNi4uMjQzMGI5NjAxZmY4NDEwZjJjODk1NGIw
YWM1ZmE4NDEwNjRlNGI3ZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vYXVk
aW8vRkZURnJhbWUuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2F1ZGlvL0ZGVEZy
YW1lLmNwcApAQCAtNzUsMTMgKzc1LDEzIEBAIHZvaWQgRkZURnJhbWU6OmludGVycG9sYXRlRnJl
cXVlbmN5Q29tcG9uZW50cyhjb25zdCBGRlRGcmFtZSYgZnJhbWUxLCBjb25zdCBGRlRGCiB7CiAg
ICAgLy8gRklYTUUgOiB3aXRoIHNvbWUgd29yaywgdGhpcyBtZXRob2QgY291bGQgYmUgb3B0aW1p
emVkCiAKLSAgICBmbG9hdCogcmVhbFAgPSByZWFsRGF0YSgpOwotICAgIGZsb2F0KiBpbWFnUCA9
IGltYWdEYXRhKCk7CisgICAgYXV0byYgcmVhbFAgPSByZWFsRGF0YSgpOworICAgIGF1dG8mIGlt
YWdQID0gaW1hZ0RhdGEoKTsKIAotICAgIGNvbnN0IGZsb2F0KiByZWFsUDEgPSBmcmFtZTEucmVh
bERhdGEoKTsKLSAgICBjb25zdCBmbG9hdCogaW1hZ1AxID0gZnJhbWUxLmltYWdEYXRhKCk7Ci0g
ICAgY29uc3QgZmxvYXQqIHJlYWxQMiA9IGZyYW1lMi5yZWFsRGF0YSgpOwotICAgIGNvbnN0IGZs
b2F0KiBpbWFnUDIgPSBmcmFtZTIuaW1hZ0RhdGEoKTsKKyAgICBjb25zdCBhdXRvJiByZWFsUDEg
PSBmcmFtZTEucmVhbERhdGEoKTsKKyAgICBjb25zdCBhdXRvJiBpbWFnUDEgPSBmcmFtZTEuaW1h
Z0RhdGEoKTsKKyAgICBjb25zdCBhdXRvJiByZWFsUDIgPSBmcmFtZTIucmVhbERhdGEoKTsKKyAg
ICBjb25zdCBhdXRvJiBpbWFnUDIgPSBmcmFtZTIuaW1hZ0RhdGEoKTsKIAogICAgIG1fRkZUU2l6
ZSA9IGZyYW1lMS5mZnRTaXplKCk7CiAgICAgbV9sb2cyRkZUU2l6ZSA9IGZyYW1lMS5sb2cyRkZU
U2l6ZSgpOwpAQCAtMTc1LDggKzE3NSw4IEBAIHZvaWQgRkZURnJhbWU6OmludGVycG9sYXRlRnJl
cXVlbmN5Q29tcG9uZW50cyhjb25zdCBGRlRGcmFtZSYgZnJhbWUxLCBjb25zdCBGRlRGCiAKIHZv
aWQgRkZURnJhbWU6OnNjYWxlRkZUKGZsb2F0IGZhY3RvcikKIHsKLSAgICBWZWN0b3JNYXRoOjpt
dWx0aXBseUJ5U2NhbGFyKHJlYWxEYXRhKCksIGZhY3RvciwgcmVhbERhdGEoKSwgZmZ0U2l6ZSgp
KTsKLSAgICBWZWN0b3JNYXRoOjptdWx0aXBseUJ5U2NhbGFyKGltYWdEYXRhKCksIGZhY3Rvciwg
aW1hZ0RhdGEoKSwgZmZ0U2l6ZSgpKTsKKyAgICBWZWN0b3JNYXRoOjptdWx0aXBseUJ5U2NhbGFy
KHJlYWxEYXRhKCkuZGF0YSgpLCBmYWN0b3IsIHJlYWxEYXRhKCkuZGF0YSgpLCByZWFsRGF0YSgp
LnNpemUoKSk7CisgICAgVmVjdG9yTWF0aDo6bXVsdGlwbHlCeVNjYWxhcihpbWFnRGF0YSgpLmRh
dGEoKSwgZmFjdG9yLCBpbWFnRGF0YSgpLmRhdGEoKSwgcmVhbERhdGEoKS5zaXplKCkpOwogfQog
CiB2b2lkIEZGVEZyYW1lOjptdWx0aXBseShjb25zdCBGRlRGcmFtZSYgZnJhbWUpCkBAIC0xODQs
MTcgKzE4NCwyMyBAQCB2b2lkIEZGVEZyYW1lOjptdWx0aXBseShjb25zdCBGRlRGcmFtZSYgZnJh
bWUpCiAgICAgRkZURnJhbWUmIGZyYW1lMSA9ICp0aGlzOwogICAgIGNvbnN0IEZGVEZyYW1lJiBm
cmFtZTIgPSBmcmFtZTsKIAotICAgIGZsb2F0KiByZWFsUDEgPSBmcmFtZTEucmVhbERhdGEoKTsK
LSAgICBmbG9hdCogaW1hZ1AxID0gZnJhbWUxLmltYWdEYXRhKCk7Ci0gICAgY29uc3QgZmxvYXQq
IHJlYWxQMiA9IGZyYW1lMi5yZWFsRGF0YSgpOwotICAgIGNvbnN0IGZsb2F0KiBpbWFnUDIgPSBm
cmFtZTIuaW1hZ0RhdGEoKTsKKyAgICBhdXRvJiByZWFsUDEgPSBmcmFtZTEucmVhbERhdGEoKTsK
KyAgICBhdXRvJiBpbWFnUDEgPSBmcmFtZTEuaW1hZ0RhdGEoKTsKKyAgICBjb25zdCBhdXRvJiBy
ZWFsUDIgPSBmcmFtZTIucmVhbERhdGEoKTsKKyAgICBjb25zdCBhdXRvJiBpbWFnUDIgPSBmcmFt
ZTIuaW1hZ0RhdGEoKTsKIAogICAgIHVuc2lnbmVkIGhhbGZTaXplID0gbV9GRlRTaXplIC8gMjsK
KworICAgIFJFTEVBU0VfQVNTRVJUKHJlYWxQMS5zaXplKCkgPj0gaGFsZlNpemUpOworICAgIFJF
TEVBU0VfQVNTRVJUKGltYWdQMS5zaXplKCkgPj0gaGFsZlNpemUpOworICAgIFJFTEVBU0VfQVNT
RVJUKHJlYWxQMi5zaXplKCkgPj0gaGFsZlNpemUpOworICAgIFJFTEVBU0VfQVNTRVJUKGltYWdQ
Mi5zaXplKCkgPj0gaGFsZlNpemUpOworCiAgICAgZmxvYXQgcmVhbDAgPSByZWFsUDFbMF07CiAg
ICAgZmxvYXQgaW1hZzAgPSBpbWFnUDFbMF07CiAKICAgICAvLyBDb21wbGV4IG11bHRpcGx5Ci0g
ICAgVmVjdG9yTWF0aDo6bXVsdGlwbHlDb21wbGV4KHJlYWxQMSwgaW1hZ1AxLCByZWFsUDIsIGlt
YWdQMiwgcmVhbFAxLCBpbWFnUDEsIGhhbGZTaXplKTsKKyAgICBWZWN0b3JNYXRoOjptdWx0aXBs
eUNvbXBsZXgocmVhbFAxLmRhdGEoKSwgaW1hZ1AxLmRhdGEoKSwgcmVhbFAyLmRhdGEoKSwgaW1h
Z1AyLmRhdGEoKSwgcmVhbFAxLmRhdGEoKSwgaW1hZ1AxLmRhdGEoKSwgaGFsZlNpemUpOwogCiAg
ICAgLy8gTXVsdGlwbHkgdGhlIHBhY2tlZCBEQy9ueXF1aXN0IGNvbXBvbmVudAogICAgIHJlYWxQ
MVswXSA9IHJlYWwwICogcmVhbFAyWzBdOwpAQCAtMjAzLDggKzIwOSw4IEBAIHZvaWQgRkZURnJh
bWU6Om11bHRpcGx5KGNvbnN0IEZGVEZyYW1lJiBmcmFtZSkKIAogZG91YmxlIEZGVEZyYW1lOjpl
eHRyYWN0QXZlcmFnZUdyb3VwRGVsYXkoKQogewotICAgIGZsb2F0KiByZWFsUCA9IHJlYWxEYXRh
KCk7Ci0gICAgZmxvYXQqIGltYWdQID0gaW1hZ0RhdGEoKTsKKyAgICBhdXRvJiByZWFsUCA9IHJl
YWxEYXRhKCk7CisgICAgYXV0byYgaW1hZ1AgPSBpbWFnRGF0YSgpOwogCiAgICAgZG91YmxlIGF2
ZVN1bSA9IDAuMDsKICAgICBkb3VibGUgd2VpZ2h0U3VtID0gMC4wOwpAQCAtMjU0LDggKzI2MCw4
IEBAIHZvaWQgRkZURnJhbWU6OmFkZENvbnN0YW50R3JvdXBEZWxheShkb3VibGUgc2FtcGxlRnJh
bWVEZWxheSkKIHsKICAgICBpbnQgaGFsZlNpemUgPSBmZnRTaXplKCkgLyAyOwogCi0gICAgZmxv
YXQqIHJlYWxQID0gcmVhbERhdGEoKTsKLSAgICBmbG9hdCogaW1hZ1AgPSBpbWFnRGF0YSgpOwor
ICAgIGF1dG8mIHJlYWxQID0gcmVhbERhdGEoKTsKKyAgICBhdXRvJiBpbWFnUCA9IGltYWdEYXRh
KCk7CiAKICAgICBjb25zdCBkb3VibGUga1NhbXBsZVBoYXNlRGVsYXkgPSAoMi4wICogcGlEb3Vi
bGUpIC8gZG91YmxlKGZmdFNpemUoKSk7CiAKQEAgLTI4MCw4ICsyODYsOCBAQCB2b2lkIEZGVEZy
YW1lOjphZGRDb25zdGFudEdyb3VwRGVsYXkoZG91YmxlIHNhbXBsZUZyYW1lRGVsYXkpCiB2b2lk
IEZGVEZyYW1lOjpwcmludCgpCiB7CiAgICAgRkZURnJhbWUmIGZyYW1lID0gKnRoaXM7Ci0gICAg
ZmxvYXQqIHJlYWxQID0gZnJhbWUucmVhbERhdGEoKTsKLSAgICBmbG9hdCogaW1hZ1AgPSBmcmFt
ZS5pbWFnRGF0YSgpOworICAgIGF1dG8mIHJlYWxQID0gZnJhbWUucmVhbERhdGEoKTsKKyAgICBh
dXRvJiBpbWFnUCA9IGZyYW1lLmltYWdEYXRhKCk7CiAgICAgTE9HKFdlYkF1ZGlvLCAiKioqKiBc
biIpOwogICAgIExPRyhXZWJBdWRpbywgIkRDID0gJWYgOiBueXF1aXN0ID0gJWZcbiIsIHJlYWxQ
WzBdLCBpbWFnUFswXSk7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2F1
ZGlvL0ZGVEZyYW1lLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9hdWRpby9GRlRGcmFtZS5o
CmluZGV4IDNiMWIwM2Y5M2VhMzEzN2MxNDhjOTljYjY1MzZhYTA0ZDdhZTEyZGMuLmNlZTg4YTk1
MGI4YzM3ZTA2OTcxNGU1NDI3OTYwZWU5ODk4Mzk0M2MgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL2F1ZGlvL0ZGVEZyYW1lLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vYXVkaW8vRkZURnJhbWUuaApAQCAtNjcsOCArNjcsMTAgQEAgcHVibGljOgogICAgIHZvaWQg
bXVsdGlwbHkoY29uc3QgRkZURnJhbWUmIGZyYW1lKTsgLy8gbXVsdGlwbGllcyBvdXJzZWxmIHdp
dGggZnJhbWUgOiBlZmZlY3RpdmVseSBvcGVyYXRvcio9KCkKICAgICB2b2lkIHNjYWxlRkZUKGZs
b2F0IGZhY3Rvcik7CiAKLSAgICBmbG9hdCogcmVhbERhdGEoKSBjb25zdDsKLSAgICBmbG9hdCog
aW1hZ0RhdGEoKSBjb25zdDsKKyAgICBBdWRpb0Zsb2F0QXJyYXkmIHJlYWxEYXRhKCkgeyByZXR1
cm4gbV9yZWFsRGF0YTsgfQorICAgIEF1ZGlvRmxvYXRBcnJheSYgaW1hZ0RhdGEoKSB7IHJldHVy
biBtX2ltYWdEYXRhOyB9CisgICAgY29uc3QgQXVkaW9GbG9hdEFycmF5JiByZWFsRGF0YSgpIGNv
bnN0IHsgcmV0dXJuIG1fcmVhbERhdGE7IH0KKyAgICBjb25zdCBBdWRpb0Zsb2F0QXJyYXkmIGlt
YWdEYXRhKCkgY29uc3QgeyByZXR1cm4gbV9pbWFnRGF0YTsgfQogCiAgICAgc3RhdGljIGludCBt
aW5GRlRTaXplKCk7CiAgICAgc3RhdGljIGludCBtYXhGRlRTaXplKCk7CkBAIC0xMDMsMTcgKzEw
NSwxNiBAQCBwcml2YXRlOgogICAgIEZGVFNldHVwIG1fRkZUU2V0dXA7CiAKICAgICBEU1BTcGxp
dENvbXBsZXggbV9mcmFtZTsKLSAgICBBdWRpb0Zsb2F0QXJyYXkgbV9yZWFsRGF0YTsKLSAgICBB
dWRpb0Zsb2F0QXJyYXkgbV9pbWFnRGF0YTsKICNlbmRpZgogCiAjaWYgVVNFKFdFQkFVRElPX0dT
VFJFQU1FUikKICAgICBHc3RGRlRGMzIqIG1fZmZ0OwogICAgIEdzdEZGVEYzMiogbV9pbnZlcnNl
RmZ0OwogICAgIFVuaXF1ZUFycmF5PEdzdEZGVEYzMkNvbXBsZXg+IG1fY29tcGxleERhdGE7Cisj
ZW5kaWYgLy8gVVNFKFdFQkFVRElPX0dTVFJFQU1FUikKKwogICAgIEF1ZGlvRmxvYXRBcnJheSBt
X3JlYWxEYXRhOwogICAgIEF1ZGlvRmxvYXRBcnJheSBtX2ltYWdEYXRhOwotI2VuZGlmIC8vIFVT
RShXRUJBVURJT19HU1RSRUFNRVIpCiB9OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9hdWRpby9GRlRGcmFtZVN0dWIuY3BwIGIv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vYXVkaW8vRkZURnJhbWVTdHViLmNwcAppbmRleCA3MzVl
Nzc2Mzc1ZDE5NzJjYWFkYWFjNTYyYjU1NTM5YzFiYTMzYzYzLi5lNjQxZGExOWNiMGY0ZjIxNTdj
NDQ1NWI4MDZlNDU1MzM4OGY4ZWJiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9hdWRpby9GRlRGcmFtZVN0dWIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2F1
ZGlvL0ZGVEZyYW1lU3R1Yi5jcHAKQEAgLTc4LDE4ICs3OCw2IEBAIHZvaWQgRkZURnJhbWU6Omlu
aXRpYWxpemUoKQogewogfQogCi1mbG9hdCogRkZURnJhbWU6OnJlYWxEYXRhKCkgY29uc3QKLXsK
LSAgICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKLSAgICByZXR1cm4gMDsKLX0KLQotZmxvYXQqIEZG
VEZyYW1lOjppbWFnRGF0YSgpIGNvbnN0Ci17Ci0gICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7Ci0g
ICAgcmV0dXJuIDA7Ci19Ci0KIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKIAogI2VuZGlmIC8vICFP
UyhEQVJXSU4pICYmICFVU0UoV0VCQVVESU9fR1NUUkVBTUVSKQpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vYXVkaW8vZ3N0cmVhbWVyL0ZGVEZyYW1lR1N0cmVhbWVyLmNwcCBi
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2F1ZGlvL2dzdHJlYW1lci9GRlRGcmFtZUdTdHJlYW1l
ci5jcHAKaW5kZXggOWVjNzZkOGU2YmRmZGI0N2Y1NTIwNGQ2ZDZiNTBkZjM4ZjE0MzMzNS4uYWMw
OTcwM2ExZWZkZDZjNDA2YmZkNTAwZDYxZjIxMDJmNDkyMmU1NSAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vYXVkaW8vZ3N0cmVhbWVyL0ZGVEZyYW1lR1N0cmVhbWVyLmNwcAor
KysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9hdWRpby9nc3RyZWFtZXIvRkZURnJhbWVHU3Ry
ZWFtZXIuY3BwCkBAIC03OSw4ICs3OSw4IEBAIEZGVEZyYW1lOjpGRlRGcmFtZShjb25zdCBGRlRG
cmFtZSYgZnJhbWUpCiAgICAgbV9pbnZlcnNlRmZ0ID0gZ3N0X2ZmdF9mMzJfbmV3KGZmdExlbmd0
aCwgVFJVRSk7CiAKICAgICAvLyBDb3B5L3NldHVwIGZyYW1lIGRhdGEuCi0gICAgbWVtY3B5KHJl
YWxEYXRhKCksIGZyYW1lLnJlYWxEYXRhKCksIHNpemVvZihmbG9hdCkgKiB1bnBhY2tlZEZGVERh
dGFTaXplKG1fRkZUU2l6ZSkpOwotICAgIG1lbWNweShpbWFnRGF0YSgpLCBmcmFtZS5pbWFnRGF0
YSgpLCBzaXplb2YoZmxvYXQpICogdW5wYWNrZWRGRlREYXRhU2l6ZShtX0ZGVFNpemUpKTsKKyAg
ICBtZW1jcHkocmVhbERhdGEoKS5kYXRhKCksIGZyYW1lLnJlYWxEYXRhKCkuZGF0YSgpLCBzaXpl
b2YoZmxvYXQpICogcmVhbERhdGEoKS5zaXplKCkpOworICAgIG1lbWNweShpbWFnRGF0YSgpLmRh
dGEoKSwgZnJhbWUuaW1hZ0RhdGEoKS5kYXRhKCksIHNpemVvZihmbG9hdCkgKiBpbWFnRGF0YSgp
LnNpemUoKSk7CiB9CiAKIHZvaWQgRkZURnJhbWU6OmluaXRpYWxpemUoKQpAQCAtMTI4LDE2ICsx
MjgsNiBAQCB2b2lkIEZGVEZyYW1lOjpkb0ludmVyc2VGRlQoZmxvYXQqIGRhdGEpCiAgICAgVmVj
dG9yTWF0aDo6bXVsdGlwbHlCeVNjYWxhcihkYXRhLCAxLjAgLyBtX0ZGVFNpemUsIGRhdGEsIG1f
RkZUU2l6ZSk7CiB9CiAKLWZsb2F0KiBGRlRGcmFtZTo6cmVhbERhdGEoKSBjb25zdAotewotICAg
IHJldHVybiBjb25zdF9jYXN0PGZsb2F0Kj4obV9yZWFsRGF0YS5kYXRhKCkpOwotfQotCi1mbG9h
dCogRkZURnJhbWU6OmltYWdEYXRhKCkgY29uc3QKLXsKLSAgICByZXR1cm4gY29uc3RfY2FzdDxm
bG9hdCo+KG1faW1hZ0RhdGEuZGF0YSgpKTsKLX0KLQogaW50IEZGVEZyYW1lOjptaW5GRlRTaXpl
KCkKIHsKICAgICByZXR1cm4gMSA8PCBrTWluRkZUUG93MlNpemU7CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9hdWRpby9tYWMvRkZURnJhbWVNYWMuY3BwIGIvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vYXVkaW8vbWFjL0ZGVEZyYW1lTWFjLmNwcAppbmRleCA0Y2ZmYzQ1NTY3
MzMzMzE4NmEzMTBmYzMxNTkxMWFlMzQ5ZDk2MjIzLi44ZDc5OTE3ODU0YzIzYmUxYTAwNTNiYzJk
NDk0NjFkOTA5YTVjNzE2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9hdWRp
by9tYWMvRkZURnJhbWVNYWMuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2F1ZGlv
L21hYy9GRlRGcmFtZU1hYy5jcHAKQEAgLTY2LDggKzY2LDYgQEAgRkZURnJhbWU6OkZGVEZyYW1l
KHVuc2lnbmVkIGZmdFNpemUpCiAKIC8vIENyZWF0ZXMgYSBibGFuay9lbXB0eSBmcmFtZSAoaW50
ZXJwb2xhdGUoKSBtdXN0IGxhdGVyIGJlIGNhbGxlZCkKIEZGVEZyYW1lOjpGRlRGcmFtZSgpCi0g
ICAgOiBtX3JlYWxEYXRhKDApCi0gICAgLCBtX2ltYWdEYXRhKDApCiB7CiAgICAgLy8gTGF0ZXIg
d2lsbCBiZSBzZXQgdG8gY29ycmVjdCB2YWx1ZXMgd2hlbiBpbnRlcnBvbGF0ZSgpIGlzIGNhbGxl
ZAogICAgIG1fZnJhbWUucmVhbHAgPSAwOwpAQCAtOTAsOSArODgsOCBAQCBGRlRGcmFtZTo6RkZU
RnJhbWUoY29uc3QgRkZURnJhbWUmIGZyYW1lKQogICAgIG1fZnJhbWUuaW1hZ3AgPSBtX2ltYWdE
YXRhLmRhdGEoKTsKIAogICAgIC8vIENvcHkvc2V0dXAgZnJhbWUgZGF0YQotICAgIHVuc2lnbmVk
IG5ieXRlcyA9IHNpemVvZihmbG9hdCkgKiBtX0ZGVFNpemU7Ci0gICAgbWVtY3B5KHJlYWxEYXRh
KCksIGZyYW1lLm1fZnJhbWUucmVhbHAsIG5ieXRlcyk7Ci0gICAgbWVtY3B5KGltYWdEYXRhKCks
IGZyYW1lLm1fZnJhbWUuaW1hZ3AsIG5ieXRlcyk7CisgICAgbWVtY3B5KHJlYWxEYXRhKCkuZGF0
YSgpLCBmcmFtZS5tX2ZyYW1lLnJlYWxwLCBzaXplb2YoZmxvYXQpICogcmVhbERhdGEoKS5zaXpl
KCkpOworICAgIG1lbWNweShpbWFnRGF0YSgpLmRhdGEoKSwgZnJhbWUubV9mcmFtZS5pbWFncCwg
c2l6ZW9mKGZsb2F0KSAqIGltYWdEYXRhKCkuc2l6ZSgpKTsKIH0KIAogRkZURnJhbWU6On5GRlRG
cmFtZSgpID0gZGVmYXVsdDsKQEAgLTEwMywxMyArMTAwLDE2IEBAIHZvaWQgRkZURnJhbWU6OmRv
RkZUKGNvbnN0IGZsb2F0KiBkYXRhKQogICAgIHZEU1BfY3RveihyZWludGVycHJldF9jYXN0PGNv
bnN0IERTUENvbXBsZXgqPihkYXRhKSwgMiwgJm1fZnJhbWUsIDEsIGhhbGZTaXplKTsKICAgICB2
RFNQX2ZmdF96cmlwKG1fRkZUU2V0dXAsICZtX2ZyYW1lLCAxLCBtX2xvZzJGRlRTaXplLCBGRlRf
Rk9SV0FSRCk7CiAKKyAgICBSRUxFQVNFX0FTU0VSVChyZWFsRGF0YSgpLnNpemUoKSA+PSBoYWxm
U2l6ZSk7CisgICAgUkVMRUFTRV9BU1NFUlQoaW1hZ0RhdGEoKS5zaXplKCkgPj0gaGFsZlNpemUp
OworCiAgICAgLy8gVG8gcHJvdmlkZSB0aGUgYmVzdCBwb3NzaWJsZSBleGVjdXRpb24gc3BlZWRz
LCB0aGUgdkRTUCBsaWJyYXJ5J3MgZnVuY3Rpb25zIGRvbid0IGFsd2F5cyBhZGhlcmUgc3RyaWN0
bHkKICAgICAvLyB0byB0ZXh0Ym9vayBmb3JtdWxhcyBmb3IgRm91cmllciB0cmFuc2Zvcm1zLCBh
bmQgbXVzdCBiZSBzY2FsZWQgYWNjb3JkaW5nbHkuCiAgICAgLy8gKFNlZSBodHRwczovL2RldmVs
b3Blci5hcHBsZS5jb20vbGlicmFyeS9hcmNoaXZlL2RvY3VtZW50YXRpb24vUGVyZm9ybWFuY2Uv
Q29uY2VwdHVhbC92RFNQX1Byb2dyYW1taW5nX0d1aWRlL1VzaW5nRm91cmllclRyYW5zZm9ybXMv
VXNpbmdGb3VyaWVyVHJhbnNmb3Jtcy5odG1sIy8vYXBwbGVfcmVmL2RvYy91aWQvVFA0MDAwNTE0
Ny1DSDMtU1c1KQogICAgIC8vIEluIHRoZSBjYXNlIG9mIGEgUmVhbCBmb3J3YXJkIFRyYW5zZm9y
bSBsaWtlIGFib3ZlOiBSRmltcCA9IFJGbWF0aCAqIDIgc28gd2UgbmVlZCB0byBkaXZpZGUgdGhl
IG91dHB1dAogICAgIC8vIGJ5IDIgdG8gZ2V0IHRoZSBjb3JyZWN0IHZhbHVlLgotICAgIFZlY3Rv
ck1hdGg6Om11bHRpcGx5QnlTY2FsYXIocmVhbERhdGEoKSwgMC41LCByZWFsRGF0YSgpLCBoYWxm
U2l6ZSk7Ci0gICAgVmVjdG9yTWF0aDo6bXVsdGlwbHlCeVNjYWxhcihpbWFnRGF0YSgpLCAwLjUs
IGltYWdEYXRhKCksIGhhbGZTaXplKTsKKyAgICBWZWN0b3JNYXRoOjptdWx0aXBseUJ5U2NhbGFy
KHJlYWxEYXRhKCkuZGF0YSgpLCAwLjUsIHJlYWxEYXRhKCkuZGF0YSgpLCBoYWxmU2l6ZSk7Cisg
ICAgVmVjdG9yTWF0aDo6bXVsdGlwbHlCeVNjYWxhcihpbWFnRGF0YSgpLmRhdGEoKSwgMC41LCBp
bWFnRGF0YSgpLmRhdGEoKSwgaGFsZlNpemUpOwogfQogCiB2b2lkIEZGVEZyYW1lOjpkb0ludmVy
c2VGRlQoZmxvYXQqIGRhdGEpCkBAIC0xNDgsMTYgKzE0OCw2IEBAIHZvaWQgRkZURnJhbWU6Omlu
aXRpYWxpemUoKQogewogfQogCi1mbG9hdCogRkZURnJhbWU6OnJlYWxEYXRhKCkgY29uc3QKLXsK
LSAgICByZXR1cm4gbV9mcmFtZS5yZWFscDsKLX0KLSAgICAKLWZsb2F0KiBGRlRGcmFtZTo6aW1h
Z0RhdGEoKSBjb25zdAotewotICAgIHJldHVybiBtX2ZyYW1lLmltYWdwOwotfQotCiB9IC8vIG5h
bWVzcGFjZSBXZWJDb3JlCiAKICNlbmRpZiAvLyAjaWYgT1MoREFSV0lOKQo=
</data>

          </attachment>
      

    </bug>

</bugzilla>