<?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>76612</bug_id>
          
          <creation_ts>2012-01-19 01:57:05 -0800</creation_ts>
          <short_desc>Some perf tests time out when ran by run-perf-tests</short_desc>
          <delta_ts>2012-01-19 15:22:01 -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>Tools / Tests</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          <dependson>74649</dependson>
          <blocked>29229</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Ryosuke Niwa">rniwa</reporter>
          <assigned_to name="Ryosuke Niwa">rniwa</assigned_to>
          <cc>abarth</cc>
    
    <cc>dpranke</cc>
    
    <cc>eric</cc>
    
    <cc>loislo</cc>
    
    <cc>morrita</cc>
    
    <cc>ojan</cc>
    
    <cc>ossy</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>538560</commentid>
    <comment_count>0</comment_count>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2012-01-19 01:57:05 -0800</bug_when>
    <thetext>Fix perf tests to be ran by run-perf-tests</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>538599</commentid>
    <comment_count>1</comment_count>
      <attachid>123099</attachid>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2012-01-19 03:51:22 -0800</bug_when>
    <thetext>Created attachment 123099
fixes the bug</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>538873</commentid>
    <comment_count>2</comment_count>
      <attachid>123099</attachid>
    <who name="Dirk Pranke">dpranke</who>
    <bug_when>2012-01-19 11:56:23 -0800</bug_when>
    <thetext>Comment on attachment 123099
fixes the bug

The change looks fine, but do we really need/want no_timeout? Isn&apos;t using a really long timeout like you&apos;ve changed good enough?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>538879</commentid>
    <comment_count>3</comment_count>
      <attachid>123099</attachid>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2012-01-19 11:58:35 -0800</bug_when>
    <thetext>Comment on attachment 123099
fixes the bug

No, I don&apos;t like this change.  I don&apos;t like modifying the html5 spec, if we don&apos;t have to.  DRT normally blocks external loads...</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>538880</commentid>
    <comment_count>4</comment_count>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2012-01-19 11:59:02 -0800</bug_when>
    <thetext>(In reply to comment #2)
&gt; (From update of attachment 123099 [details])
&gt; The change looks fine, but do we really need/want no_timeout? Isn&apos;t using a really long timeout like you&apos;ve changed good enough?

Yes. Otherwise DRT&apos;s watchdog timer will fail and DRT times out.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>538884</commentid>
    <comment_count>5</comment_count>
      <attachid>123099</attachid>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2012-01-19 12:00:24 -0800</bug_when>
    <thetext>Comment on attachment 123099
fixes the bug

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

&gt; Tools/Scripts/webkitpy/layout_tests/port/webkit_unittest.py:291
&gt; +        self.assertEquals(driver.cmd_line(), [&apos;MOCK output of child process/DumpRenderTree&apos;, &apos;--pixel-tests&apos;, &apos;--no-timeout&apos;, &apos;-&apos;])

What ports support --no-timeout?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>538887</commentid>
    <comment_count>6</comment_count>
    <who name="Dirk Pranke">dpranke</who>
    <bug_when>2012-01-19 12:01:42 -0800</bug_when>
    <thetext>(In reply to comment #4)
&gt; (In reply to comment #2)
&gt; &gt; (From update of attachment 123099 [details] [details])
&gt; &gt; The change looks fine, but do we really need/want no_timeout? Isn&apos;t using a really long timeout like you&apos;ve changed good enough?
&gt; 
&gt; Yes. Otherwise DRT&apos;s watchdog timer will fail and DRT times out.

Which DRT? The Mac DRT, or the Chromium DRT? If it&apos;s the Mac DRT, that seems like a bug that should be fixed (it should be taking the passed in timeout), but that doesn&apos;t have to block this (i.e., we can land this as-is, and then file a bug to fix the Mac DRT and remove the no_timeout later).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>538889</commentid>
    <comment_count>7</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2012-01-19 12:02:17 -0800</bug_when>
    <thetext>See also my attempt at this in bug 74649.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>538890</commentid>
    <comment_count>8</comment_count>
      <attachid>123099</attachid>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2012-01-19 12:02:46 -0800</bug_when>
    <thetext>Comment on attachment 123099
fixes the bug

I dont&apos; want to change html5.html unless we have to.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>538892</commentid>
    <comment_count>9</comment_count>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2012-01-19 12:02:58 -0800</bug_when>
    <thetext>(In reply to comment #3)
&gt; (From update of attachment 123099 [details])
&gt; No, I don&apos;t like this change.  I don&apos;t like modifying the html5 spec, if we don&apos;t have to.  DRT normally blocks external loads...

It does block and spits out a hundreds of errors about it. This patch removes those error messages. Also, isn&apos;t it better to load actual images as supposed to being blocked? e.g. if you open the spec on Safari/Chrome, those external images are loaded and affects the layout/loader behavior. My intention was to make the test&apos;s behavior on Safari/Chrome and DRT as close as possible. An alternatively we can make local copies of these images into our repository under images.whatwg.org and remove http://</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>538920</commentid>
    <comment_count>10</comment_count>
      <attachid>123099</attachid>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2012-01-19 12:24:19 -0800</bug_when>
    <thetext>Comment on attachment 123099
fixes the bug

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

I think this is OK, after further discussion over IRC.

&gt; Tools/Scripts/webkitpy/layout_tests/port/webkit.py:452
&gt; +        Driver.__init__(self, port, worker_number, pixel_tests, no_timeout)

I thought we got the &quot;options&quot; element off the port object?  (I&apos;m not saying that&apos;s necessarily a good thing,b ut I thought that was the status quo?)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>538928</commentid>
    <comment_count>11</comment_count>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2012-01-19 12:29:47 -0800</bug_when>
    <thetext>(In reply to comment #10)
&gt; (From update of attachment 123099 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=123099&amp;action=review
&gt; 
&gt; I think this is OK, after further discussion over IRC.
&gt; 
&gt; &gt; Tools/Scripts/webkitpy/layout_tests/port/webkit.py:452
&gt; &gt; +        Driver.__init__(self, port, worker_number, pixel_tests, no_timeout)
&gt; 
&gt; I thought we got the &quot;options&quot; element off the port object?  (I&apos;m not saying that&apos;s necessarily a good thing,b ut I thought that was the status quo?)

It appears that port&apos;s options object is passed down from the command line argument so I didn&apos;t think sticking a random argument there was a good idea. Of course, we could make --no-timeout a command line argument and set it by default but there&apos;s not much use in run-perf-tests if no_timeout was False since DRT ends up timing out in a number of tests (2-3 on my MacPro but probably more on slower machines or on slower DRTs).

But I can change if you strongly feel about it. FWIW, it makes my patch smaller since I won&apos;t have to pass no_timeout argument everywhere.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>538931</commentid>
    <comment_count>12</comment_count>
      <attachid>123099</attachid>
    <who name="Dirk Pranke">dpranke</who>
    <bug_when>2012-01-19 12:31:24 -0800</bug_when>
    <thetext>Comment on attachment 123099
fixes the bug

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

&gt;&gt; Tools/Scripts/webkitpy/layout_tests/port/webkit.py:452
&gt;&gt; +        Driver.__init__(self, port, worker_number, pixel_tests, no_timeout)
&gt; 
&gt; I thought we got the &quot;options&quot; element off the port object?  (I&apos;m not saying that&apos;s necessarily a good thing,b ut I thought that was the status quo?)

We do, normally, but unless I&apos;m missing something there is no options.no_timeout, so this is correct. (Or we could add one, but I&apos;d rather see us just fix DRTs to take arbitrarily long timeouts).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>538935</commentid>
    <comment_count>13</comment_count>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2012-01-19 12:34:03 -0800</bug_when>
    <thetext>(In reply to comment #12)
&gt; (From update of attachment 123099 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=123099&amp;action=review
&gt; 
&gt; &gt;&gt; Tools/Scripts/webkitpy/layout_tests/port/webkit.py:452
&gt; &gt;&gt; +        Driver.__init__(self, port, worker_number, pixel_tests, no_timeout)
&gt; &gt; 
&gt; &gt; I thought we got the &quot;options&quot; element off the port object?  (I&apos;m not saying that&apos;s necessarily a good thing,b ut I thought that was the status quo?)
&gt; 
&gt; We do, normally, but unless I&apos;m missing something there is no options.no_timeout, so this is correct. (Or we could add one, but I&apos;d rather see us just fix DRTs to take arbitrarily long timeouts).

DRT DOES take arbitrarily long timeouts. It&apos;s just that some DRTs have &quot;watchdog&quot; timer as well, and --no-timeout will disable that.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>539002</commentid>
    <comment_count>14</comment_count>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2012-01-19 13:50:58 -0800</bug_when>
    <thetext>Committed r105443: &lt;http://trac.webkit.org/changeset/105443&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>539038</commentid>
    <comment_count>15</comment_count>
    <who name="Csaba Osztrogonác">ossy</who>
    <bug_when>2012-01-19 14:29:47 -0800</bug_when>
    <thetext>It broke NRWT on GTK and on Qt:
http://build.webkit.org/results/GTK%20Linux%2064-bit%20Release/r105444%20%2816569%29/results.html

Could you fix it?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>539073</commentid>
    <comment_count>16</comment_count>
    <who name="Ryosuke Niwa">rniwa</who>
    <bug_when>2012-01-19 15:22:01 -0800</bug_when>
    <thetext>Fixed the regression in http://trac.webkit.org/changeset/105450.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>123099</attachid>
            <date>2012-01-19 03:51:22 -0800</date>
            <delta_ts>2012-01-19 12:31:24 -0800</delta_ts>
            <desc>fixes the bug</desc>
            <filename>bug-76612-20120119035121.patch</filename>
            <type>text/plain</type>
            <size>35756</size>
            <attacher name="Ryosuke Niwa">rniwa</attacher>
            
              <data encoding="base64">SW5kZXg6IFBlcmZvcm1hbmNlVGVzdHMvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFBlcmZvcm1h
bmNlVGVzdHMvQ2hhbmdlTG9nCShyZXZpc2lvbiAxMDUzOTcpCisrKyBQZXJmb3JtYW5jZVRlc3Rz
L0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDIxIEBACisyMDEyLTAxLTE5ICBS
eW9zdWtlIE5pd2EgIDxybml3YUB3ZWJraXQub3JnPgorCisgICAgICAgIFNvbWUgcGVyZiB0ZXN0
cyB0aW1lIG91dCB3aGVuIHJhbiBieSBydW4tcGVyZi10ZXN0cworICAgICAgICBodHRwczovL2J1
Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NzY2MTIKKworICAgICAgICBSZXZpZXdlZCBi
eSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBSZXBsYWNlIGFsbCBpbWFnZXMgaW4gaHRtbDUu
aHRtbCBieSBnZWVuYm94LnBuZyB0byBhdm9pZCBhY2Nlc3Npbmcgd2hhdHdnLm9yZyB3aGVuCisg
ICAgICAgIHJ1bm5pbmcgdGhlIHBhcnNlciB0ZXN0cy4gQWxzbyBjYWxsIGR1bXBBc1RleHQsIHdh
aXRVbnRpbERvbmUsIGFuZCBub3RpZnlEb25lIGF1dG9tYXRpY2FsbHkKKyAgICAgICAgaW5zaWRl
IHJ1bm5lci5qcyB0byBhdm9pZCBoYXZpbmcgdG8gY2FsbCB0aGVtIGluIGluZGl2aWR1YWwgdGVz
dHMuCisKKyAgICAgICAgKiBCaW5kaW5ncy9ldmVudC10YXJnZXQtd3JhcHBlci5odG1sOiBSZW1v
dmVkIGNhbGxzIHRvIGxheW91dFRlc3RDb250cm9sbGVyIG1ldGhvZHMgc2luY2UKKyAgICAgICAg
dGhleSBhcmUgbm93IGNhbGxlZCBieSBydW5uZXIuanMgYXV0b21hdGljYWxseS4KKyAgICAgICAg
KiBQYXJzZXIvcmVzb3VyY2VzL2dyZWVuYm94LnBuZzogQ29waWVkIGZyb20gTGF5b3V0VGVzdHMv
ZmFzdC9jc3MvcmVzb3VyY2VzL2dyZWVuYm94LnBuZy4KKyAgICAgICAgKiBQYXJzZXIvcmVzb3Vy
Y2VzL2h0bWw1Lmh0bWw6CisgICAgICAgICogUGFyc2VyL3Jlc291cmNlcy9ydW5uZXIuanM6Cisg
ICAgICAgIChydW5Mb29wKToKKwogMjAxMi0wMS0xOCAgUnlvc3VrZSBOaXdhICA8cm5pd2FAd2Vi
a2l0Lm9yZz4KIAogICAgICAgICBydW4tcGVyZi10ZXN0cyBzaG91bGQgc3VwcG9ydCBTa2lwcGVk
IGxpc3QKSW5kZXg6IFBlcmZvcm1hbmNlVGVzdHMvQmluZGluZ3MvZXZlbnQtdGFyZ2V0LXdyYXBw
ZXIuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBQZXJmb3JtYW5jZVRlc3RzL0JpbmRpbmdzL2V2ZW50LXRh
cmdldC13cmFwcGVyLmh0bWwJKHJldmlzaW9uIDEwNTM4MykKKysrIFBlcmZvcm1hbmNlVGVzdHMv
QmluZGluZ3MvZXZlbnQtdGFyZ2V0LXdyYXBwZXIuaHRtbAkod29ya2luZyBjb3B5KQpAQCAtMTgs
MTkgKzE4LDExIEBAIGxpbmsuYWRkRXZlbnRMaXN0ZW5lcignY2xpY2snLCBmdW5jdGlvbigKICAg
ICAgICAgZm9yICh2YXIgeCA9IDA7IHggPCBrSXRlcmF0b25zUGVyVGVzdDsgeCsrKSB7CiAgICAg
ICAgICAgICBlLnRhcmdldDsKICAgICAgICAgfQotICAgIH0sIDEwLCBmdW5jdGlvbigpIHsKLSAg
ICAgICAgaWYgKHdpbmRvdy5sYXlvdXRUZXN0Q29udHJvbGxlcikKLSAgICAgICAgICAgIGxheW91
dFRlc3RDb250cm9sbGVyLm5vdGlmeURvbmUoKTsKLSAgICB9KTsKKyAgICB9LCAxMCk7CiAKICAg
ICByZXR1cm4gZmFsc2U7CiB9LCBmYWxzZSk7CiAKLWlmICh3aW5kb3cubGF5b3V0VGVzdENvbnRy
b2xsZXIpIHsKLSAgICBsYXlvdXRUZXN0Q29udHJvbGxlci53YWl0VW50aWxEb25lKCk7Ci0gICAg
bGF5b3V0VGVzdENvbnRyb2xsZXIuZHVtcEFzVGV4dCgpOwotfQotCiBpZiAod2luZG93LmV2ZW50
U2VuZGVyKSB7CiAgICAgZXZlbnRTZW5kZXIubW91c2VNb3ZlVG8obGluay5vZmZzZXRMZWZ0ICsg
NSwgbGluay5vZmZzZXRUb3AgKyA1KTsKICAgICBldmVudFNlbmRlci5tb3VzZURvd24oKTsKSW5k
ZXg6IFBlcmZvcm1hbmNlVGVzdHMvUGFyc2VyL3Jlc291cmNlcy9odG1sNS5odG1sCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIFBlcmZvcm1hbmNlVGVzdHMvUGFyc2VyL3Jlc291cmNlcy9odG1sNS5odG1sCShyZXZp
c2lvbiAxMDUzODMpCisrKyBQZXJmb3JtYW5jZVRlc3RzL1BhcnNlci9yZXNvdXJjZXMvaHRtbDUu
aHRtbAkod29ya2luZyBjb3B5KQpAQCAtMTY5OCw3ICsxNjk4LDcgQEAKICAgcmVsYXRpdmUgdG8g
b3RoZXIgc3BlY2lmaWNhdGlvbnMgY2FuIGJlIGJlc3Qgc3VtbWVkIHVwIGFzCiAgIGZvbGxvd3M6
PC9wPgogCi0gIDxwPjxpbWcgYWx0PSJJdCBjb25zaXN0cyBvZiBldmVyeXRoaW5nIGVsc2UsIGFi
b3ZlIHN1Y2ggY29yZSB0ZWNobm9sb2dpZXMgYXMgSFRUUCwgVVJJL0lSSXMsIERPTSBDb3JlLCBY
TUwsIFVuaWNvZGUsIGFuZCBFQ01BU2NyaXB0OyBiZWxvdyBwcmVzZW50YXRpb24tbGF5ZXIgdGVj
aG5vbG9naWVzIGxpa2UgQ1NTLCBYQkwsIGFuZCB0aGUgTlBBUEk7IGFuZCB0byB0aGUgc2lkZSBv
ZiB0ZWNobm9sb2dpZXMgbGlrZSBHZW9sb2NhdGlvbiwgU1ZHLCBNYXRoTUwsIGFuZCBYSFIuIiBo
ZWlnaHQ9MzU5IHNyYz1odHRwOi8vaW1hZ2VzLndoYXR3Zy5vcmcvYWJzdHJhY3QucG5nIHdpZHRo
PTM5OD48L3A+CisgIDxwPjxpbWcgYWx0PSJJdCBjb25zaXN0cyBvZiBldmVyeXRoaW5nIGVsc2Us
IGFib3ZlIHN1Y2ggY29yZSB0ZWNobm9sb2dpZXMgYXMgSFRUUCwgVVJJL0lSSXMsIERPTSBDb3Jl
LCBYTUwsIFVuaWNvZGUsIGFuZCBFQ01BU2NyaXB0OyBiZWxvdyBwcmVzZW50YXRpb24tbGF5ZXIg
dGVjaG5vbG9naWVzIGxpa2UgQ1NTLCBYQkwsIGFuZCB0aGUgTlBBUEk7IGFuZCB0byB0aGUgc2lk
ZSBvZiB0ZWNobm9sb2dpZXMgbGlrZSBHZW9sb2NhdGlvbiwgU1ZHLCBNYXRoTUwsIGFuZCBYSFIu
IiBoZWlnaHQ9MzU5IHNyYz1ncmVlbmJveC5wbmcgd2lkdGg9Mzk4PjwvcD4KIAogCiAKQEAgLTEx
MjA3LDcgKzExMjA3LDcgQEAgVHJhbnNwb3J0IFByb3RvY29sIiZndDtIVFRQJmx0Oy9hYmJyJmd0
OwogICAgPGk+c3RhcnQgZWRnZTwvaT4gb2YgdGhlIHBhcmFncmFwaCwgdGhlIHJlc3VsdGluZyBy
ZW5kZXJpbmcgY291bGQKICAgIGJlIGFzIGZvbGxvd3M6PC9wPgogCi0gICA8cD48aW1nIGFsdD0i
RWFjaCBwYXJhZ3JhcGggcmVuZGVyZWQgYXMgYSBzZXBhcmF0ZSBibG9jaywgd2l0aCB0aGUgcGFy
YWdyYXBocyBsZWZ0LWFsaWduZWQgZXhjZXB0IHRoZSBzZWNvbmQgcGFyYWdyYXBoIGFuZCB0aGUg
bGFzdCBvbmUsIHdoaWNoIHdvdWxkICBiZSByaWdodCBhbGlnbmVkLCB3aXRoIHRoZSB1c2VybmFt
ZXMgKCdTdHVkZW50JyBhbmQgJ1RlYWNoZXInIGluIHRoaXMgZXhhbXBsZSkgZmx1c2ggcmlnaHQs
IHdpdGggYSBjb2xvbiB0byB0aGVpciBsZWZ0LCBhbmQgdGhlIHRleHQgZmlyc3QgdG8gdGhlIGxl
ZnQgb2YgdGhhdC4iIHNyYz1odHRwOi8vaW1hZ2VzLndoYXR3Zy5vcmcvaW0ucG5nPjwvcD4KKyAg
IDxwPjxpbWcgYWx0PSJFYWNoIHBhcmFncmFwaCByZW5kZXJlZCBhcyBhIHNlcGFyYXRlIGJsb2Nr
LCB3aXRoIHRoZSBwYXJhZ3JhcGhzIGxlZnQtYWxpZ25lZCBleGNlcHQgdGhlIHNlY29uZCBwYXJh
Z3JhcGggYW5kIHRoZSBsYXN0IG9uZSwgd2hpY2ggd291bGQgIGJlIHJpZ2h0IGFsaWduZWQsIHdp
dGggdGhlIHVzZXJuYW1lcyAoJ1N0dWRlbnQnIGFuZCAnVGVhY2hlcicgaW4gdGhpcyBleGFtcGxl
KSBmbHVzaCByaWdodCwgd2l0aCBhIGNvbG9uIHRvIHRoZWlyIGxlZnQsIGFuZCB0aGUgdGV4dCBm
aXJzdCB0byB0aGUgbGVmdCBvZiB0aGF0LiIgc3JjPWdyZWVuYm94LnBuZz48L3A+CiAKICAgIDxw
PkFzIG5vdGVkIGVhcmxpZXIsIHRoZSA8Y29kZSB0aXRsZT1hdHRyLWRpci1hdXRvPjxhIGhyZWY9
I2F0dHItZGlyLWF1dG8+YXV0bzwvYT48L2NvZGU+CiAgICB2YWx1ZSBpcyBub3QgYSBwYW5hY2Vh
LiBUaGUgZmluYWwgcGFyYWdyYXBoIGluIHRoaXMgZXhhbXBsZSBpcwpAQCAtMTE2NzUsNyArMTE2
NzUsNyBAQCBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCImZ3Q7Ymx1ZSZsdDsvc3BhCiAKICAgPHA+
PG9iamVjdCBkYXRhPWltYWdlcy9jb250ZW50LXZlbm4uc3ZnIGhlaWdodD0yODggd2lkdGg9MTAw
MD48aW1nIGFsdD0iU2VjdGlvbmluZyBjb250ZW50LCBoZWFkaW5nIGNvbnRlbnQsIHBocmFzaW5n
IGNvbnRlbnQsIGFuZAogICBlbWJlZGRlZCBjb250ZW50IGFyZSBhbGwgdHlwZXMgb2YgZmxvdyBj
b250ZW50LiBFbWJlZGRlZCBjb250ZW50IGlzCi0gIGFsc28gYSB0eXBlIG9mIHBocmFzaW5nIGNv
bnRlbnQuIiBzcmM9aHR0cDovL2ltYWdlcy53aGF0d2cub3JnL2NvbnRlbnQtdmVubi5wbmc+PC9v
YmplY3Q+PC9wPgorICBhbHNvIGEgdHlwZSBvZiBwaHJhc2luZyBjb250ZW50LiIgc3JjPWdyZWVu
Ym94LnBuZz48L29iamVjdD48L3A+CiAKICAgPHA+T3RoZXIgY2F0ZWdvcmllcyBhcmUgYWxzbyB1
c2VkIGZvciBzcGVjaWZpYyBwdXJwb3NlcywgZS5nLiBmb3JtCiAgIGNvbnRyb2xzIGFyZSBzcGVj
aWZpZWQgdXNpbmcgYSBudW1iZXIgb2YgY2F0ZWdvcmllcyB0byBkZWZpbmUgY29tbW9uCkBAIC0y
MTQ2MSw3ICsyMTQ2MSw3IEBAIHdvcm1ob2xlIGNvbm5lY3Rpb24uJmx0Oy9tYXJrJmd0OyZsdDsv
cCYKIAogICAgPHA+VGhpcyBtaWdodCBiZSByZW5kZXJlZCBhczo8L3A+CiAKLSAgIDxwPjxpbWcg
YWx0PSJUaGUgdHdvIG1haW4gaWRlb2dyYXBocywgZWFjaCB3aXRoIGl0cyBhbm5vdGF0aW9uIGlu
IGhpcmFnYW5hIHJlbmRlcmVkIGluIGEgc21hbGxlciBmb250IGFib3ZlIGl0LiIgaGVpZ2h0PTc4
IHNyYz1odHRwOi8vaW1hZ2VzLndoYXR3Zy5vcmcvc2FtcGxlLXJ1YnktamEucG5nIHdpZHRoPTE3
MT48L3A+CisgICA8cD48aW1nIGFsdD0iVGhlIHR3byBtYWluIGlkZW9ncmFwaHMsIGVhY2ggd2l0
aCBpdHMgYW5ub3RhdGlvbiBpbiBoaXJhZ2FuYSByZW5kZXJlZCBpbiBhIHNtYWxsZXIgZm9udCBh
Ym92ZSBpdC4iIGhlaWdodD03OCBzcmM9Z3JlZW5ib3gucG5nIHdpZHRoPTE3MT48L3A+CiAKICAg
PC9kaXY+CiAKQEAgLTIxNDc3LDcgKzIxNDc3LDcgQEAgd29ybWhvbGUgY29ubmVjdGlvbi4mbHQ7
L21hcmsmZ3Q7Jmx0Oy9wJgogCiAgICA8cD5UaGlzIG1pZ2h0IGJlIHJlbmRlcmVkIGFzOjwvcD4K
IAotICAgPHA+PGltZyBhbHQ9IlRoZSB0d28gbWFpbiBpZGVvZ3JhcGhzLCBlYWNoIHdpdGggaXRz
IGJvcG9tb2ZvIGFubm90YXRpb24gcmVuZGVyZWQgaW4gYSBzbWFsbGVyIGZvbnQgbmV4dCB0byBp
dC4iIGhlaWdodD0xMDAgc3JjPWh0dHA6Ly9pbWFnZXMud2hhdHdnLm9yZy9zYW1wbGUtcnVieS1i
b3BvbW9mby5wbmcgd2lkdGg9Nzg+PC9wPgorICAgPHA+PGltZyBhbHQ9IlRoZSB0d28gbWFpbiBp
ZGVvZ3JhcGhzLCBlYWNoIHdpdGggaXRzIGJvcG9tb2ZvIGFubm90YXRpb24gcmVuZGVyZWQgaW4g
YSBzbWFsbGVyIGZvbnQgbmV4dCB0byBpdC4iIGhlaWdodD0xMDAgc3JjPWdyZWVuYm94LnBuZyB3
aWR0aD03OD48L3A+CiAKICAgPC9kaXY+CiAKQEAgLTIxNDkzLDcgKzIxNDkzLDcgQEAgd29ybWhv
bGUgY29ubmVjdGlvbi4mbHQ7L21hcmsmZ3Q7Jmx0Oy9wJgogCiAgICA8cD5UaGlzIG1pZ2h0IGJl
IHJlbmRlcmVkIGFzOjwvcD4KIAotICAgPHA+PGltZyBhbHQ9IlRoZSB0d28gbWFpbiBpZGVvZ3Jh
cGhzLCBlYWNoIHdpdGggaXRzIHBpbnlpbiBhbm5vdGF0aW9uIHJlbmRlcmVkIGluIGEgc21hbGxl
ciBmb250IGFib3ZlIGl0LiIgaGVpZ2h0PTc5IHNyYz1odHRwOi8vaW1hZ2VzLndoYXR3Zy5vcmcv
c2FtcGxlLXJ1YnktcGlueWluLnBuZyB3aWR0aD0xNzM+PC9wPgorICAgPHA+PGltZyBhbHQ9IlRo
ZSB0d28gbWFpbiBpZGVvZ3JhcGhzLCBlYWNoIHdpdGggaXRzIHBpbnlpbiBhbm5vdGF0aW9uIHJl
bmRlcmVkIGluIGEgc21hbGxlciBmb250IGFib3ZlIGl0LiIgaGVpZ2h0PTc5IHNyYz1ncmVlbmJv
eC5wbmcgd2lkdGg9MTczPjwvcD4KIAogICA8L2Rpdj4KIApAQCAtMzc1NTcsNyArMzc1NTcsNyBA
QCBoYWlybGluZSB3aWR0aCB3aXRoIHRyYW5zZm9ybS4gYWNrIFNoYXVuCiAKICAgPCEtLSB0aGlz
IGlzIGZpbGxlciB0byBtYWtlIHN1cmUgdGhlIFRDUCBwYWNrZXQgYm91bmRhcnkgZG9lc24ndCBm
YWxsIGluIHRoZSBtaWRkbGUgb2Ygb25lIG9mIHRoZSBOQ1JzIGJlbG93IC0tPgogICA8IS0tIChi
ZWNhdXNlIG90aGVyd2lzZSB0aGUgcGFyc2VyIGluIGFub2xpcyBzY3Jld3MgaXQgdXApIC0tPgot
ICA8cD48aW1nIGFsdD0iVGhlIHRvcCBvZiB0aGUgZW0gc3F1YXJlIGlzIHJvdWdobHkgYXQgdGhl
IHRvcCBvZiB0aGUgZ2x5cGhzIGluIGEgZm9udCwgdGhlIGhhbmdpbmcgYmFzZWxpbmUgaXMgd2hl
cmUgc29tZSBnbHlwaHMgbGlrZSAmIzIzMTA7IGFyZSBhbmNob3JlZCwgdGhlIG1pZGRsZSBpcyBo
YWxmLXdheSBiZXR3ZWVuIHRoZSB0b3Agb2YgdGhlIGVtIHNxdWFyZSBhbmQgdGhlIGJvdHRvbSBv
ZiB0aGUgZW0gc3F1YXJlLCB0aGUgYWxwaGFiZXRpYyBiYXNlbGluZSBpcyB3aGVyZSBjaGFyYWN0
ZXJzIGxpa2UgJkFhY3V0ZTssICZ5dW1sOywgZiwgYW5kICZPbWVnYTsgYXJlIGFuY2hvcmVkLCB0
aGUgaWRlb2dyYXBoaWMgYmFzZWxpbmUgaXMgd2hlcmUgZ2x5cGhzIGxpa2UgJiMzMTE2OTsgYW5k
ICYjMzY5NDg7IGFyZSBhbmNob3JlZCwgYW5kIHRoZSBib3R0b20gb2YgdGhlIGVtIHNxdWFyZSBp
cyByb3VnaGx5IGF0IHRoZSBib3R0b20gb2YgdGhlIGdseXBocyBpbiBhIGZvbnQuIFRoZSB0b3Ag
YW5kIGJvdHRvbSBvZiB0aGUgYm91bmRpbmcgYm94IGNhbiBiZSBmYXIgZnJvbSB0aGVzZSBiYXNl
bGluZXMsIGR1ZSB0byBnbHlwaHMgZXh0ZW5kaW5nIGZhciBvdXRzaWRlIHRoZSBlbSBzcXVhcmUu
IiBoZWlnaHQ9MzAwIHNyYz1odHRwOi8vaW1hZ2VzLndoYXR3Zy5vcmcvYmFzZWxpbmVzLnBuZyB3
aWR0aD03Mzg+PC9wPgorICA8cD48aW1nIGFsdD0iVGhlIHRvcCBvZiB0aGUgZW0gc3F1YXJlIGlz
IHJvdWdobHkgYXQgdGhlIHRvcCBvZiB0aGUgZ2x5cGhzIGluIGEgZm9udCwgdGhlIGhhbmdpbmcg
YmFzZWxpbmUgaXMgd2hlcmUgc29tZSBnbHlwaHMgbGlrZSAmIzIzMTA7IGFyZSBhbmNob3JlZCwg
dGhlIG1pZGRsZSBpcyBoYWxmLXdheSBiZXR3ZWVuIHRoZSB0b3Agb2YgdGhlIGVtIHNxdWFyZSBh
bmQgdGhlIGJvdHRvbSBvZiB0aGUgZW0gc3F1YXJlLCB0aGUgYWxwaGFiZXRpYyBiYXNlbGluZSBp
cyB3aGVyZSBjaGFyYWN0ZXJzIGxpa2UgJkFhY3V0ZTssICZ5dW1sOywgZiwgYW5kICZPbWVnYTsg
YXJlIGFuY2hvcmVkLCB0aGUgaWRlb2dyYXBoaWMgYmFzZWxpbmUgaXMgd2hlcmUgZ2x5cGhzIGxp
a2UgJiMzMTE2OTsgYW5kICYjMzY5NDg7IGFyZSBhbmNob3JlZCwgYW5kIHRoZSBib3R0b20gb2Yg
dGhlIGVtIHNxdWFyZSBpcyByb3VnaGx5IGF0IHRoZSBib3R0b20gb2YgdGhlIGdseXBocyBpbiBh
IGZvbnQuIFRoZSB0b3AgYW5kIGJvdHRvbSBvZiB0aGUgYm91bmRpbmcgYm94IGNhbiBiZSBmYXIg
ZnJvbSB0aGVzZSBiYXNlbGluZXMsIGR1ZSB0byBnbHlwaHMgZXh0ZW5kaW5nIGZhciBvdXRzaWRl
IHRoZSBlbSBzcXVhcmUuIiBoZWlnaHQ9MzAwIHNyYz1ncmVlbmJveC5wbmcgd2lkdGg9NzM4Pjwv
cD4KIAogICA8cD5UaGUga2V5d29yZHMgbWFwIHRvIHRoZXNlIGFsaWdubWVudCBwb2ludHMgYXMg
Zm9sbG93czo8L3A+CiAKQEAgLTM3OTM5LDcgKzM3OTM5LDcgQEAgdjZEVlQgKGFsc28gY2hlY2sg
Zm9yICctIC0nIGJpdHMgaW4gdGhlIAogICAgIDxwPkRyYXdzIHRoZSBnaXZlbiBpbWFnZSBvbnRv
IHRoZSBjYW52YXMuIFRoZSBhcmd1bWVudHMgYXJlCiAgICAgaW50ZXJwcmV0ZWQgYXMgZm9sbG93
czo8L3A+CiAKLSAgICA8cD48aW1nIGFsdD0iVGhlIHN4IGFuZCBzeSBwYXJhbWV0ZXJzIGdpdmUg
dGhlIHggYW5kIHkgY29vcmRpbmF0ZXMgb2YgdGhlIHNvdXJjZSByZWN0YW5nbGU7IHRoZSBzdyBh
bmQgc2ggYXJndW1lbnRzIGdpdmUgdGhlIHdpZHRoIGFuZCBoZWlnaHQgb2YgdGhlIHNvdXJjZSBy
ZWN0YW5nbGU7IHRoZSBkeCBhbmQgZHkgZ2l2ZSB0aGUgeCBhbmQgeSBjb29yZGluYXRlcyBvZiB0
aGUgZGVzdGluYXRpb24gcmVjdGFuZ2xlOyBhbmQgdGhlIGR3IGFuZCBkaCBhcmd1bWVudHMgZ2l2
ZSB0aGUgd2lkdGggYW5kIGhlaWdodCBvZiB0aGUgZGVzdGluYXRpb24gcmVjdGFuZ2xlLiIgaGVp
Z2h0PTM1NiBzcmM9aHR0cDovL2ltYWdlcy53aGF0d2cub3JnL2RyYXdJbWFnZS5wbmcgd2lkdGg9
MzU2PjwvcD4KKyAgICA8cD48aW1nIGFsdD0iVGhlIHN4IGFuZCBzeSBwYXJhbWV0ZXJzIGdpdmUg
dGhlIHggYW5kIHkgY29vcmRpbmF0ZXMgb2YgdGhlIHNvdXJjZSByZWN0YW5nbGU7IHRoZSBzdyBh
bmQgc2ggYXJndW1lbnRzIGdpdmUgdGhlIHdpZHRoIGFuZCBoZWlnaHQgb2YgdGhlIHNvdXJjZSBy
ZWN0YW5nbGU7IHRoZSBkeCBhbmQgZHkgZ2l2ZSB0aGUgeCBhbmQgeSBjb29yZGluYXRlcyBvZiB0
aGUgZGVzdGluYXRpb24gcmVjdGFuZ2xlOyBhbmQgdGhlIGR3IGFuZCBkaCBhcmd1bWVudHMgZ2l2
ZSB0aGUgd2lkdGggYW5kIGhlaWdodCBvZiB0aGUgZGVzdGluYXRpb24gcmVjdGFuZ2xlLiIgaGVp
Z2h0PTM1NiBzcmM9Z3JlZW5ib3gucG5nIHdpZHRoPTM1Nj48L3A+CiAKICAgICA8cD5JZiB0aGUg
Zmlyc3QgYXJndW1lbnQgaXNuJ3QgYW4gPGNvZGU+PGEgaHJlZj0jdGhlLWltZy1lbGVtZW50Pmlt
ZzwvYT48L2NvZGU+LAogICAgIDxjb2RlPjxhIGhyZWY9I3RoZS1jYW52YXMtZWxlbWVudD5jYW52
YXM8L2E+PC9jb2RlPiwgb3IgPGNvZGU+PGEgaHJlZj0jdGhlLXZpZGVvLWVsZW1lbnQ+dmlkZW88
L2E+PC9jb2RlPiBlbGVtZW50LCB0aHJvd3MgYQpAQCAtMzkwNDgsNyArMzkwNDgsNyBAQCBmdW5j
dGlvbiBBZGRDbG91ZChkYXRhLCB4LCB5KSB7IC4uLiB9PC9wCiAKICAgIDxwPkNvbnNpZGVyIGFu
IGltYWdlIHRoYXQgbG9va3MgYXMgZm9sbG93czo8L3A+CiAKLSAgIDxwPjxpbWcgYWx0PSJBIGxp
bmUgd2l0aCBmb3VyIHNoYXBlcyBpbiBpdCwgZXF1YWxseSBzcGFjZWQ6IGEgcmVkIGhvbGxvdyBi
b3gsIGEgZ3JlZW4gY2lyY2xlLCBhIGJsdWUgdHJpYW5nbGUsIGFuZCBhIHllbGxvdyBmb3VyLXBv
aW50ZWQgc3Rhci4iIGhlaWdodD0xNTAgc3JjPWh0dHA6Ly9pbWFnZXMud2hhdHdnLm9yZy9zYW1w
bGUtdXNlbWFwLnBuZyB3aWR0aD02MDA+PC9wPgorICAgPHA+PGltZyBhbHQ9IkEgbGluZSB3aXRo
IGZvdXIgc2hhcGVzIGluIGl0LCBlcXVhbGx5IHNwYWNlZDogYSByZWQgaG9sbG93IGJveCwgYSBn
cmVlbiBjaXJjbGUsIGEgYmx1ZSB0cmlhbmdsZSwgYW5kIGEgeWVsbG93IGZvdXItcG9pbnRlZCBz
dGFyLiIgaGVpZ2h0PTE1MCBzcmM9Z3JlZW5ib3gucG5nIHdpZHRoPTYwMD48L3A+CiAKICAgIDxw
PklmIHdlIHdhbnRlZCBqdXN0IHRoZSBjb2xvcmVkIGFyZWFzIHRvIGJlIGNsaWNrYWJsZSwgd2Ug
Y291bGQKICAgIGRvIGl0IGFzIGZvbGxvd3M6PC9wPgpAQCAtNDA4MTksNyArNDA4MTksNyBAQCB0
aGUgY2VsbCB0aGF0IGNvcnJlc3BvbmRzIHRvIHRoZSB2YWx1ZXMgCiAgICB0aGVtLjwvcD4KIAog
ICAgPCEtLSBpbWFnZSBzb3VyY2U6IGh0dHA6Ly9zb2Z0d2FyZS5oaXhpZS5jaC91dGlsaXRpZXMv
anMvbGl2ZS1kb20tdmlld2VyL3NhdmVkLzE1MSAtLT4KLSAgIDxpbWcgYWx0PSIiIGhlaWdodD0y
NTYgc3JjPWh0dHA6Ly9pbWFnZXMud2hhdHdnLm9yZy90YWJsZS1zY29wZS1kaWFncmFtLnBuZyB3
aWR0aD00NTk+PCEtLSAoYWx0IGlzIGVtcHR5IGJlY2F1c2UgdGhlIGRpYWdyYW0gaXMgY29tcGxl
dGVseSBkZXNjcmliZWQgYnkgdGhlIHByZXZpb3VzIHBhcmFncmFwaHMpIC0tPjwvZGl2PgorICAg
PGltZyBhbHQ9IiIgaGVpZ2h0PTI1NiBzcmM9Z3JlZW5ib3gucG5nIHdpZHRoPTQ1OT48IS0tIChh
bHQgaXMgZW1wdHkgYmVjYXVzZSB0aGUgZGlhZ3JhbSBpcyBjb21wbGV0ZWx5IGRlc2NyaWJlZCBi
eSB0aGUgcHJldmlvdXMgcGFyYWdyYXBocykgLS0+PC9kaXY+CiAKIAogCkBAIC00NTAzMiw3ICs0
NTAzMiw3IEBAIGludGVyZmFjZSA8ZGZuIGlkPWh0bWxmb3JtZWxlbWVudD5IVE1MRm8KICAgIDxj
b2RlPmh0dHA6Ly93d3cudzMub3JnL1RSL1hGb3Jtcy88L2NvZGU+IGluIHRoZSByZWNlbnQgcGFz
dCwgdGhlbgogICAgdGhlIHJlbmRlcmluZyBtaWdodCBsb29rIGxpa2UgdGhpczo8L3A+CiAKLSAg
IDxwPjxpbWcgYWx0PSdBIHRleHQgYm94IHdpdGggYW4gaWNvbiBvbiB0aGUgbGVmdCBmb2xsb3dl
ZCBieSB0aGUgdGV4dCAid3d3LnczIiBhbmQgYSBjdXJzb3IsIHdpdGggYSBkcm9wIGRvd24gYnV0
dG9uIG9uIHRoZSByaWdodCBoYW5kIHNpZGU7IHdpdGgsIGJlbG93LCBhIGRyb3AgZG93biBib3gg
Y29udGFpbmluZyBhIGxpc3Qgb2Ygc2l4IFVSTHMgb24gdGhlIGxlZnQsIHdpdGggdGhlIGZpcnN0
IGZvdXIgaGF2aW5nIGdyYXllZCBvdXQgbGFiZWxzIG9uIHRoZSByaWdodDsgYW5kIGEgc2Nyb2xs
IGJhciB0byB0aGUgcmlnaHQgb2YgdGhlIGRyb3cgZG93biBib3gsIGluZGljYXRpbmcgZnVydGhl
ciB2YWx1ZXMgYXJlIGF2YWlsYWJsZS4nIGhlaWdodD0xMzQgc3JjPWh0dHA6Ly9pbWFnZXMud2hh
dHdnLm9yZy9zYW1wbGUtdXJsLnBuZyB3aWR0aD00NzI+PC9wPgorICAgPHA+PGltZyBhbHQ9J0Eg
dGV4dCBib3ggd2l0aCBhbiBpY29uIG9uIHRoZSBsZWZ0IGZvbGxvd2VkIGJ5IHRoZSB0ZXh0ICJ3
d3cudzMiIGFuZCBhIGN1cnNvciwgd2l0aCBhIGRyb3AgZG93biBidXR0b24gb24gdGhlIHJpZ2h0
IGhhbmQgc2lkZTsgd2l0aCwgYmVsb3csIGEgZHJvcCBkb3duIGJveCBjb250YWluaW5nIGEgbGlz
dCBvZiBzaXggVVJMcyBvbiB0aGUgbGVmdCwgd2l0aCB0aGUgZmlyc3QgZm91ciBoYXZpbmcgZ3Jh
eWVkIG91dCBsYWJlbHMgb24gdGhlIHJpZ2h0OyBhbmQgYSBzY3JvbGwgYmFyIHRvIHRoZSByaWdo
dCBvZiB0aGUgZHJvdyBkb3duIGJveCwgaW5kaWNhdGluZyBmdXJ0aGVyIHZhbHVlcyBhcmUgYXZh
aWxhYmxlLicgaGVpZ2h0PTEzNCBzcmM9Z3JlZW5ib3gucG5nIHdpZHRoPTQ3Mj48L3A+CiAKICAg
IDxwPlRoZSBmaXJzdCBmb3VyIFVSTHMgaW4gdGhpcyBzYW1wbGUgY29uc2lzdCBvZiB0aGUgZm91
ciBVUkxzIGluCiAgICB0aGUgYXV0aG9yLXNwZWNpZmllZCBsaXN0IHRoYXQgbWF0Y2ggdGhlIHRl
eHQgdGhlIHVzZXIgaGFzIGVudGVyZWQsCkBAIC00NjY4MCw3ICs0NjY4MCw3IEBAIGludGVyZmFj
ZSA8ZGZuIGlkPWh0bWxmb3JtZWxlbWVudD5IVE1MRm8KIAogICAgPHA+Li4ubWlnaHQgcmVuZGVy
IGFzOjwvcD4KIAotICAgPHA+PGltZyBhbHQ9IkEgdmVydGljYWwgc2xpZGVyIGNvbnRyb2wgd2hv
c2UgcHJpbWFyeSBjb2xvciBpcyBibGFjayBhbmQgd2hvc2UgYmFja2dyb3VuZCBjb2xvciBpcyBi
ZWlnZSwgd2l0aCB0aGUgc2xpZGVyIGhhdmluZyBmaXZlIHRpY2sgbWFya3MsIG9uZSBsb25nIG9u
ZSBhdCBlYWNoIGV4dHJlbWl0eSwgYW5kIHRocmVlIHNob3J0IG9uZXMgY2x1c3RlcmVkIGFyb3Vu
ZCB0aGUgbWlkcG9pbnQuIiBoZWlnaHQ9NzUgc3JjPWh0dHA6Ly9pbWFnZXMud2hhdHdnLm9yZy9z
YW1wbGUtcmFuZ2UucG5nIHdpZHRoPTQ5PjxwPk5vdGUgaG93IHRoZSBVQSBkZXRlcm1pbmVkIHRo
ZSBvcmllbnRhdGlvbiBvZiB0aGUgY29udHJvbCBmcm9tCisgICA8cD48aW1nIGFsdD0iQSB2ZXJ0
aWNhbCBzbGlkZXIgY29udHJvbCB3aG9zZSBwcmltYXJ5IGNvbG9yIGlzIGJsYWNrIGFuZCB3aG9z
ZSBiYWNrZ3JvdW5kIGNvbG9yIGlzIGJlaWdlLCB3aXRoIHRoZSBzbGlkZXIgaGF2aW5nIGZpdmUg
dGljayBtYXJrcywgb25lIGxvbmcgb25lIGF0IGVhY2ggZXh0cmVtaXR5LCBhbmQgdGhyZWUgc2hv
cnQgb25lcyBjbHVzdGVyZWQgYXJvdW5kIHRoZSBtaWRwb2ludC4iIGhlaWdodD03NSBzcmM9Z3Jl
ZW5ib3gucG5nIHdpZHRoPTQ5PjxwPk5vdGUgaG93IHRoZSBVQSBkZXRlcm1pbmVkIHRoZSBvcmll
bnRhdGlvbiBvZiB0aGUgY29udHJvbCBmcm9tCiAgICB0aGUgcmF0aW8gb2YgdGhlIHN0eWxlLXNo
ZWV0LXNwZWNpZmllZCBoZWlnaHQgYW5kIHdpZHRoIHByb3BlcnRpZXMuCiAgICBUaGUgY29sb3Jz
IHdlcmUgc2ltaWxpYXJseSBkZXJpdmVkIGZyb20gdGhlIHN0eWxlIHNoZWV0LiBUaGUgdGljawog
ICAgbWFya3MsIGhvd2V2ZXIsIHdlcmUgZGVyaXZlZCBmcm9tIHRoZSBtYXJrdXAuIEluIHBhcnRp
Y3VsYXIsIHRoZQpAQCAtNDY3MDIsMTEgKzQ2NzAyLDExIEBAIGludGVyZmFjZSA8ZGZuIGlkPWh0
bWxmb3JtZWxlbWVudD5IVE1MRm8KIAogICAgPHA+QSB1c2VyIGFnZW50IGNvdWxkIGRpc3BsYXkg
aW4gYSB2YXJpZXR5IG9mIHdheXMsIGZvciBpbnN0YW5jZTo8L3A+CiAKLSAgIDxwPjxpbWcgYWx0
PSJBcyBhIGRpYWwuIiBoZWlnaHQ9NTcgc3JjPWh0dHA6Ly9pbWFnZXMud2hhdHdnLm9yZy9zYW1w
bGUtcmFuZ2UtMmEucG5nIHdpZHRoPTIzMT48L3A+CisgICA8cD48aW1nIGFsdD0iQXMgYSBkaWFs
LiIgaGVpZ2h0PTU3IHNyYz1ncmVlbmJveC5wbmcgd2lkdGg9MjMxPjwvcD4KIAogICAgPHA+T3Is
IGFsdGVybmF0aXZlbHksIGZvciBpbnN0YW5jZTo8L3A+CiAKLSAgIDxwPjxpbWcgYWx0PSJBcyBh
IGxvbmcgaG9yaXpvbnRhbCBzbGlkZXIgd2l0aCB0aWNrIG1hcmtzLiIgaGVpZ2h0PTU2IHNyYz1o
dHRwOi8vaW1hZ2VzLndoYXR3Zy5vcmcvc2FtcGxlLXJhbmdlLTJiLnBuZyB3aWR0aD00NDU+PC9w
PgorICAgPHA+PGltZyBhbHQ9IkFzIGEgbG9uZyBob3Jpem9udGFsIHNsaWRlciB3aXRoIHRpY2sg
bWFya3MuIiBoZWlnaHQ9NTYgc3JjPWdyZWVuYm94LnBuZyB3aWR0aD00NDU+PC9wPgogCiAgICA8
cD5UaGUgdXNlciBhZ2VudCBjb3VsZCBwaWNrIHdoaWNoIG9uZSB0byBkaXNwbGF5IGJhc2VkIG9u
IHRoZQogICAgZGltZW5zaW9ucyBnaXZlbiBpbiB0aGUgc3R5bGUgc2hlZXQuIFRoaXMgd291bGQg
YWxsb3cgaXQgdG8KQEAgLTQ4MTkyLDcgKzQ4MTkyLDcgQEAgaW50ZXJmYWNlIDxkZm4gaWQ9aHRt
bGZvcm1lbGVtZW50PkhUTUxGbwogICAgdXNlciBhZ2VudCBtaWdodCBzdWdnZXN0IHRoZXNlIHR3
byBlLW1haWwgYWRkcmVzc2VzIHRvIHRoZQogICAgdXNlci48L3A+CiAKLSAgIDxwPjxpbWcgYWx0
PSIiIGhlaWdodD0xNDAgc3JjPWh0dHA6Ly9pbWFnZXMud2hhdHdnLm9yZy9zYW1wbGUtZW1haWwt
MS5wbmcgd2lkdGg9NTAwPjwvcD4KKyAgIDxwPjxpbWcgYWx0PSIiIGhlaWdodD0xNDAgc3JjPWdy
ZWVuYm94LnBuZyB3aWR0aD01MDA+PC9wPgogCiAgICA8cD5UaGUgcGFnZSBjb3VsZCBhbHNvIGxp
bmsgaW4gdGhlIHVzZXIncyBjb250YWN0cyBkYXRhYmFzZSBmcm9tIHRoZSBzaXRlOjwvcD4KIApA
QCAtNDgyMTEsNyArNDgyMTEsNyBAQCBpbnRlcmZhY2UgPGRmbiBpZD1odG1sZm9ybWVsZW1lbnQ+
SFRNTEZvCiAgICBlYXJsaWVyLCBhcyB3ZWxsIGFzIHRoZSAiYXN0cm9waHkiIGFuZCAiYXN0cm9u
b215IiB2YWx1ZXMgZ2l2ZW4gaW4KICAgIHRoZSA8Y29kZT48YSBocmVmPSN0aGUtZGF0YWxpc3Qt
ZWxlbWVudD5kYXRhbGlzdDwvYT48L2NvZGU+IGVsZW1lbnQuPC9wPgogCi0gICA8cD48aW1nIGFs
dD0iIiBoZWlnaHQ9MTcxIHNyYz1odHRwOi8vaW1hZ2VzLndoYXR3Zy5vcmcvc2FtcGxlLWVtYWls
LTIucG5nIHdpZHRoPTUwMD48L3A+CisgICA8cD48aW1nIGFsdD0iIiBoZWlnaHQ9MTcxIHNyYz1n
cmVlbmJveC5wbmcgd2lkdGg9NTAwPjwvcD4KIAogICA8L2Rpdj4KIApAQCAtNTEyODUsNyArNTEy
ODUsNyBAQCBhbmQgYSBoZWlnaHQgb2YgJmx0O21ldGVyIHZhbHVlPTImZ3Q7MmNtCiAgJmx0Oy9s
aSZndDsKICZsdDsvdWwmZ3Q7PC9wcmU+CiAgICA8cD5NaWdodCBiZSByZW5kZXJlZCBhcyBmb2xs
b3dzOjwvcD4KLSAgIDxwPjxpbWcgYWx0PSJXaXRoIHRoZSA8bWV0ZXI+IGVsZW1lbnRzIHJlbmRl
cmVkIGFzIGlubGluZSBncmVlbiBiYXJzIG9mIHZhcnlpbmcgbGVuZ3Rocy4iIGhlaWdodD0xNzgg
c3JjPWh0dHA6Ly9pbWFnZXMud2hhdHdnLm9yZy9zYW1wbGUtbWV0ZXIucG5nIHdpZHRoPTMzMj48
L3A+CisgICA8cD48aW1nIGFsdD0iV2l0aCB0aGUgPG1ldGVyPiBlbGVtZW50cyByZW5kZXJlZCBh
cyBpbmxpbmUgZ3JlZW4gYmFycyBvZiB2YXJ5aW5nIGxlbmd0aHMuIiBoZWlnaHQ9MTc4IHNyYz1n
cmVlbmJveC5wbmcgd2lkdGg9MzMyPjwvcD4KICAgPC9kaXY+CiAKICAgPHA+VXNlciBhZ2VudHMg
PHNwYW4gY2xhc3M9aW1wbD5tYXk8L3NwYW4+IGNvbWJpbmUgdGhlIHZhbHVlIG9mCkBAIC01MzY0
OSw3ICs1MzY0OSw3IEBAIGZ1cgogICAgaW4gYSBsaXN0IHRvIGFsbG93IHRoZSB1c2VyIHRvIGNv
bGxhcHNlIGEgc2V0IG9mIGZpZWxkcyBkb3duIHRvIGEKICAgIHNtYWxsIHNldCBvZiBoZWFkaW5n
cywgd2l0aCB0aGUgYWJpbGl0eSB0byBvcGVuIGVhY2ggb25lLjwvcD4KIAotICAgPHAgY2xhc3M9
ZGV0YWlscy1leGFtcGxlPjxpbWcgYWx0PSIiIGhlaWdodD02MTEgc3JjPWh0dHA6Ly9pbWFnZXMu
d2hhdHdnLm9yZy9zYW1wbGUtZGV0YWlscy0xLnBuZyB3aWR0aD0zNDU+PGltZyBhbHQ9IiIgaGVp
Z2h0PTY2NiBzcmM9aHR0cDovL2ltYWdlcy53aGF0d2cub3JnL3NhbXBsZS1kZXRhaWxzLTIucG5n
IHdpZHRoPTM0NT48L3A+CisgICA8cCBjbGFzcz1kZXRhaWxzLWV4YW1wbGU+PGltZyBhbHQ9IiIg
aGVpZ2h0PTYxMSBzcmM9Z3JlZW5ib3gucG5nIHdpZHRoPTM0NT48aW1nIGFsdD0iIiBoZWlnaHQ9
NjY2IHNyYz1ncmVlbmJveC5wbmcgd2lkdGg9MzQ1PjwvcD4KIAogICAgPHA+SW4gdGhlc2UgZXhh
bXBsZXMsIHRoZSBzdW1tYXJ5IHJlYWxseSBqdXN0IHN1bW1hcmlzZXMgd2hhdCB0aGUKICAgIGNv
bnRyb2xzIGNhbiBjaGFuZ2UsIGFuZCBub3QgdGhlIGFjdHVhbCB2YWx1ZXMsIHdoaWNoIGlzIGxl
c3MgdGhhbgpAQCAtNTQwMjQsNyArNTQwMjQsNyBAQCBmdXIKIAogICA8cD5JbiBhIHN1cHBvcnRp
bmcgdXNlciBhZ2VudCwgdGhpcyBtaWdodCBsb29rIGxpa2UgdGhpczo8L3A+CiAKLSAgPHA+PGlt
ZyBhbHQ9IkEgdG9vbGJhciB3aXRoIHRocmVlIGJ1dHRvbnMsIGxhYmVsZWQgJ0ZpbGUnLCAnRWRp
dCcsIGFuZCAnSGVscCc7IHdoZXJlIGlmIHlvdSBzZWxlY3QgdGhlICdFZGl0JyBidXR0b24geW91
IGdldCBhIGRyb3AtZG93biBtZW51IHdpdGggdGhyZWUgbW9yZSBvcHRpb25zLCAnQ29weScsICdD
dXQnLCBhbmQgJ1Bhc3RlJy4iIGhlaWdodD0xMDEgc3JjPWh0dHA6Ly9pbWFnZXMud2hhdHdnLm9y
Zy9zYW1wbGUtdG9vbGJhci0xLnBuZyB3aWR0aD0zMDM+PC9wPgorICA8cD48aW1nIGFsdD0iQSB0
b29sYmFyIHdpdGggdGhyZWUgYnV0dG9ucywgbGFiZWxlZCAnRmlsZScsICdFZGl0JywgYW5kICdI
ZWxwJzsgd2hlcmUgaWYgeW91IHNlbGVjdCB0aGUgJ0VkaXQnIGJ1dHRvbiB5b3UgZ2V0IGEgZHJv
cC1kb3duIG1lbnUgd2l0aCB0aHJlZSBtb3JlIG9wdGlvbnMsICdDb3B5JywgJ0N1dCcsIGFuZCAn
UGFzdGUnLiIgaGVpZ2h0PTEwMSBzcmM9Z3JlZW5ib3gucG5nIHdpZHRoPTMwMz48L3A+CiAKICAg
PHA+SW4gYSBsZWdhY3kgdXNlciBhZ2VudCwgdGhlIGFib3ZlIHdvdWxkIGxvb2sgbGlrZSBhIGJ1
bGxldGVkIGxpc3QKICAgd2l0aCB0aHJlZSBpdGVtcywgdGhlIGZpcnN0IG9mIHdoaWNoIGhhcyBm
b3VyIGJ1dHRvbnMsIHRoZSBzZWNvbmQgb2YKQEAgLTcxMjk4LDcgKzcxMjk4LDcgQEAgaW50ZXJm
YWNlIDxkZm4gaWQ9bmF2aWdhdG9yY29udGVudHV0aWxzPgogICA8cD5UaGUgPGNvZGUgdGl0bGU9
ZG9tLW5hdmlnYXRvci1yZWdpc3RlckNvbnRlbnRIYW5kbGVyPjxhIGhyZWY9I2RvbS1uYXZpZ2F0
b3ItcmVnaXN0ZXJjb250ZW50aGFuZGxlcj5yZWdpc3RlckNvbnRlbnRIYW5kbGVyKCk8L2E+PC9j
b2RlPgogICBtZXRob2QgY291bGQgZGlzcGxheSBhIG1vZGFsIGRpYWxvZyBib3g6PC9wPgogCi0g
IDxwPjxpbWcgYWx0PSJUaGUgbW9kYWwgZGlhbG9nIGJveCBjb3VsZCBoYXZlIHRoZSB0aXRsZSAn
Q29udGVudCBIYW5kbGVyIFJlZ2lzdHJhdGlvbicsIGFuZCBjb3VsZCBzYXkgJ1RoaXMgV2ViIHBh
Z2U6IEtpdHRlbnMgYXQgd29yayBodHRwOi8va2l0dGVucy5leGFtcGxlLm9yZy8gLi4ud291bGQg
bGlrZSBwZXJtaXNzaW9uIHRvIGhhbmRsZSBmaWxlcyBvZiB0eXBlOiBhcHBsaWNhdGlvbi94LW1l
b3dtZW93IHVzaW5nIHRoZSBmb2xsb3dpbmcgV2ViLWJhc2VkIGFwcGxpY2F0aW9uOiBLaXR0ZW5z
LWF0LXdvcmsgZGlzcGxheWVyIGh0dHA6Ly9raXR0ZW5zLmV4YW1wbGUub3JnLz9zaG93PSVzIERv
IHlvdSB0cnVzdCB0aGUgYWRtaW5pc3RyYXRvcnMgb2YgdGhlICZxdW90O2tpdHRlbnMuZXhhbXBs
ZS5vcmcmcXVvdDsgZG9tYWluPycgd2l0aCB0d28gYnV0dG9ucywgJ1RydXN0IGtpdHRlbnMuZXhh
bXBsZS5vcmcnIGFuZCAnQ2FuY2VsJy4iIGhlaWdodD0zNzQgc3JjPWh0dHA6Ly9pbWFnZXMud2hh
dHdnLm9yZy9zYW1wbGUtY29udGVudC1oYW5kbGVyLXJlZ2lzdHJhdGlvbi5wbmcgd2lkdGg9NTM0
PjwvcD4KKyAgPHA+PGltZyBhbHQ9IlRoZSBtb2RhbCBkaWFsb2cgYm94IGNvdWxkIGhhdmUgdGhl
IHRpdGxlICdDb250ZW50IEhhbmRsZXIgUmVnaXN0cmF0aW9uJywgYW5kIGNvdWxkIHNheSAnVGhp
cyBXZWIgcGFnZTogS2l0dGVucyBhdCB3b3JrIGh0dHA6Ly9raXR0ZW5zLmV4YW1wbGUub3JnLyAu
Li53b3VsZCBsaWtlIHBlcm1pc3Npb24gdG8gaGFuZGxlIGZpbGVzIG9mIHR5cGU6IGFwcGxpY2F0
aW9uL3gtbWVvd21lb3cgdXNpbmcgdGhlIGZvbGxvd2luZyBXZWItYmFzZWQgYXBwbGljYXRpb246
IEtpdHRlbnMtYXQtd29yayBkaXNwbGF5ZXIgaHR0cDovL2tpdHRlbnMuZXhhbXBsZS5vcmcvP3No
b3c9JXMgRG8geW91IHRydXN0IHRoZSBhZG1pbmlzdHJhdG9ycyBvZiB0aGUgJnF1b3Q7a2l0dGVu
cy5leGFtcGxlLm9yZyZxdW90OyBkb21haW4/JyB3aXRoIHR3byBidXR0b25zLCAnVHJ1c3Qga2l0
dGVucy5leGFtcGxlLm9yZycgYW5kICdDYW5jZWwnLiIgaGVpZ2h0PTM3NCBzcmM9Z3JlZW5ib3gu
cG5nIHdpZHRoPTUzND48L3A+CiAKICAgPHA+SW4gdGhpcyBkaWFsb2cgYm94LCAiS2l0dGVucyBh
dCB3b3JrIiBpcyB0aGUgdGl0bGUgb2YgdGhlIHBhZ2UKICAgdGhhdCBpbnZva2VkIHRoZSBtZXRo
b2QsICJodHRwOi8va2l0dGVucy5leGFtcGxlLm9yZy8iIGlzIHRoZSBVUkwgb2YKQEAgLTcxMzE2
LDcgKzcxMzE2LDcgQEAgaW50ZXJmYWNlIDxkZm4gaWQ9bmF2aWdhdG9yY29udGVudHV0aWxzPgog
ICAiYXBwbGljYXRpb24veC1tZW93bWVvdyIgPGEgaHJlZj0jbWltZS10eXBlPk1JTUUgdHlwZTwv
YT4sIHRoZW4gaXQgbWlnaHQKICAgZGlzcGxheSBhIGRpYWxvZyBhcyBmb2xsb3dzOjwvcD4KIAot
ICA8cD48aW1nIGFsdD0iVGhlIGRpYWxvZyBib3ggY291bGQgaGF2ZSB0aGUgdGl0bGUgJ1Vua25v
d24gRmlsZSBUeXBlJyBhbmQgY291bGQgc2F5ICdZb3UgaGF2ZSBhdHRlbXB0ZWQgdG8gYWNjZXNz
OicgZm9sbG93ZWQgYnkgYSBVUkwsIGZvbGxvd2VkIGJ5IGEgcHJvbXB0IHN1Y2ggYXMgJ0hvdyB3
b3VsZCB5b3UgbGlrZSBGZXJyZXRCcm93c2VyIHRvIGhhbmRsZSB0aGlzIHJlc291cmNlPycgd2l0
aCB0aHJlZSByYWRpbyBidXR0b25zLCBvbmUgc2F5aW5nICdDb250YWN0IHRoZSBGZXJyZXRCcm93
c2VyIHBsdWdpbiByZWdpc3RyeSB0byBzZWUgaWYgdGhlcmUgaXMgYW4gb2ZmaWNpYWwgd2F5IHRv
IGhhbmRsZSB0aGlzIHJlc291cmNlLicsIG9uZSBzYXlpbmcgJ1Bhc3MgdGhpcyBVUkwgdG8gYSBs
b2NhbCBhcHBsaWNhdGlvbicgd2l0aCBhbiBhcHBsaWNhdGlvbiBzZWxlY3RvciwgYW5kIG9uZSBz
YXlpbmcgJ1Bhc3MgdGhpcyBVUkwgdG8gdGhlICZxdW90O0tpdHRlbnMtYXQtd29yayBkaXNwbGF5
ZXImcXVvdDsgYXBwbGljYXRpb24gYXQgJnF1b3Q7a2l0dGVucy5leGFtcGxlLm9yZyZxdW90Oycs
IHdpdGggYSBjaGVja2JveCBsYWJlbGVkICdBbHdheXMgZG8gdGhpcyBmb3IgcmVzb3VyY2VzIHVz
aW5nIHRoZSAmcXVvdDthcHBsaWNhdGlvbi94LW1lb3dtZW93JnF1b3Q7IHR5cGUgaW4gZnV0dXJl
LicsIGFuZCB3aXRoIHR3byBidXR0b25zLCAnT2snIGFuZCAnQ2FuY2VsJy4iIGhlaWdodD00Mjgg
c3JjPWh0dHA6Ly9pbWFnZXMud2hhdHdnLm9yZy9zYW1wbGUtY29udGVudC1oYW5kbGVyLnBuZyB3
aWR0aD01Nzc+PC9wPgorICA8cD48aW1nIGFsdD0iVGhlIGRpYWxvZyBib3ggY291bGQgaGF2ZSB0
aGUgdGl0bGUgJ1Vua25vd24gRmlsZSBUeXBlJyBhbmQgY291bGQgc2F5ICdZb3UgaGF2ZSBhdHRl
bXB0ZWQgdG8gYWNjZXNzOicgZm9sbG93ZWQgYnkgYSBVUkwsIGZvbGxvd2VkIGJ5IGEgcHJvbXB0
IHN1Y2ggYXMgJ0hvdyB3b3VsZCB5b3UgbGlrZSBGZXJyZXRCcm93c2VyIHRvIGhhbmRsZSB0aGlz
IHJlc291cmNlPycgd2l0aCB0aHJlZSByYWRpbyBidXR0b25zLCBvbmUgc2F5aW5nICdDb250YWN0
IHRoZSBGZXJyZXRCcm93c2VyIHBsdWdpbiByZWdpc3RyeSB0byBzZWUgaWYgdGhlcmUgaXMgYW4g
b2ZmaWNpYWwgd2F5IHRvIGhhbmRsZSB0aGlzIHJlc291cmNlLicsIG9uZSBzYXlpbmcgJ1Bhc3Mg
dGhpcyBVUkwgdG8gYSBsb2NhbCBhcHBsaWNhdGlvbicgd2l0aCBhbiBhcHBsaWNhdGlvbiBzZWxl
Y3RvciwgYW5kIG9uZSBzYXlpbmcgJ1Bhc3MgdGhpcyBVUkwgdG8gdGhlICZxdW90O0tpdHRlbnMt
YXQtd29yayBkaXNwbGF5ZXImcXVvdDsgYXBwbGljYXRpb24gYXQgJnF1b3Q7a2l0dGVucy5leGFt
cGxlLm9yZyZxdW90OycsIHdpdGggYSBjaGVja2JveCBsYWJlbGVkICdBbHdheXMgZG8gdGhpcyBm
b3IgcmVzb3VyY2VzIHVzaW5nIHRoZSAmcXVvdDthcHBsaWNhdGlvbi94LW1lb3dtZW93JnF1b3Q7
IHR5cGUgaW4gZnV0dXJlLicsIGFuZCB3aXRoIHR3byBidXR0b25zLCAnT2snIGFuZCAnQ2FuY2Vs
Jy4iIGhlaWdodD00Mjggc3JjPWdyZWVuYm94LnBuZyB3aWR0aD01Nzc+PC9wPgogCiAgIDxwPklu
IHRoaXMgZGlhbG9nLCB0aGUgdGhpcmQgb3B0aW9uIGlzIHRoZSBvbmUgdGhhdCB3YXMgcHJpbWVk
IGJ5CiAgIHRoZSBzaXRlIHJlZ2lzdGVyaW5nIGl0c2VsZiBlYXJsaWVyLjwvcD4KQEAgLTc1NDM1
LDcgKzc1NDM1LDcgQEAgaW50ZXJmYWNlIDxkZm4gaWQ9bmF2aWdhdG9ydXNlcm1lZGlhZXJybwog
ICBjaGFuZ2Ugd2hlbiB0aGUgcGFyZW50IGlzIGZpbmlzaGVkLikgV2hlbiBzdWNoIGEgZm9yaydz
IHBhcmVudAogICBmaW5pc2hlcywgdGhlIGZvcmsgaXMgYWxzbyBzYWlkIHRvIGhhdmUgZmluaXNo
ZWQuPC9wPgogCi0gIDxwPjxpbWcgYWx0PSIiIHNyYz1odHRwOi8vaW1hZ2VzLndoYXR3Zy5vcmcv
bWVkaWEtc3RyZWFtLTEucG5nPjwvcD48IS0tIG5vIGFsdCBzaW5jZQorICA8cD48aW1nIGFsdD0i
IiBzcmM9Z3JlZW5ib3gucG5nPjwvcD48IS0tIG5vIGFsdCBzaW5jZQogICBpdCdzIGFsbCBkZXNj
cmliZWQgaW4gdGhlIHByZXZpb3VzIHBhcmFncmFwaHM6IHRoaXMgaXMganVzdCBhCiAgIHN1bW1h
cnkgLS0+CiAKQEAgLTc1NTU1LDcgKzc1NTU1LDcgQEAgZnVuY3Rpb24gbWVkaWFTdHJlYW0oYyx4
LHksdmlkKSB7CiAgIHBlZXIgKGUuZy4gaW4gcmVzcG9uc2UgdG8gdGhlIHVzZXIgdXNpbmcgYSAi
dmlkZW8gbXV0ZSIKICAgZmVhdHVyZSkuPC9wPgogCi0gIDxwPjxpbWcgYWx0PSIiIHNyYz1odHRw
Oi8vaW1hZ2VzLndoYXR3Zy5vcmcvbWVkaWEtc3RyZWFtLTIucG5nPjwvcD48IS0tIGFnYWluLCBu
bworICA8cD48aW1nIGFsdD0iIiBzcmM9Z3JlZW5ib3gucG5nPjwvcD48IS0tIGFnYWluLCBubwog
ICBhbHQgc2luY2UgaXQncyBhbGwgZGVzY3JpYmVkIGluIHRoZSBwcmV2aW91cyBwYXJhZ3JhcGhz
OiB0aGlzIGlzCiAgIGp1c3QgYSBzdW1tYXJ5IC0tPgogCkBAIC04Mzc4NSw3ICs4Mzc4NSw3IEBA
IGRpY3Rpb25hcnkgPGRmbiBpZD1zdG9yYWdlZXZlbnRpbml0PlN0b3IKIAogICA8aDQgaWQ9b3Zl
cnZpZXctb2YtdGhlLXBhcnNpbmctbW9kZWw+PHNwYW4gY2xhc3M9c2Vjbm8+MTMuMi4xIDwvc3Bh
bj5PdmVydmlldyBvZiB0aGUgcGFyc2luZyBtb2RlbDwvaDQ+CiAKLSAgPHAgY2xhc3M9b3ZlcnZp
ZXc+PG9iamVjdCBkYXRhPWltYWdlcy9wYXJzaW5nLW1vZGVsLW92ZXJ2aWV3LnN2ZyBoZWlnaHQ9
NDUwIHdpZHRoPTM0NT48aW1nIGFsdD0iIiBoZWlnaHQ9NDUwIHNyYz1odHRwOi8vaW1hZ2VzLndo
YXR3Zy5vcmcvcGFyc2luZy1tb2RlbC1vdmVydmlldy5wbmcgd2lkdGg9MzQ1Pjwvb2JqZWN0Pjwv
cD4KKyAgPHAgY2xhc3M9b3ZlcnZpZXc+PG9iamVjdCBkYXRhPWltYWdlcy9wYXJzaW5nLW1vZGVs
LW92ZXJ2aWV3LnN2ZyBoZWlnaHQ9NDUwIHdpZHRoPTM0NT48aW1nIGFsdD0iIiBoZWlnaHQ9NDUw
IHNyYz1ncmVlbmJveC5wbmcgd2lkdGg9MzQ1Pjwvb2JqZWN0PjwvcD4KIAogICA8cD5UaGUgaW5w
dXQgdG8gdGhlIEhUTUwgcGFyc2luZyBwcm9jZXNzIGNvbnNpc3RzIG9mIGEgc3RyZWFtIG9mCiAg
IFVuaWNvZGUgY29kZSBwb2ludHMsIHdoaWNoIGlzIHBhc3NlZCB0aHJvdWdoIGEKQEAgLTk1MDM0
LDcgKzk1MDM0LDcgQEAgcHJvZ3Jlc3MgeyBiaW5kaW5nOiA8aSB0aXRsZT0iIj5wcm9ncmVzcwog
CiAgIDwhLS0gaHR0cDovL3NvZnR3YXJlLmhpeGllLmNoL3V0aWxpdGllcy9qcy9jYW52YXMvP2Mu
Y2xlYXJSZWN0KDAlMkMlMjAwJTJDJTIwNjQwJTJDJTIwNDgwKSUzQiUwQWMuc2F2ZSgpJTNCJTBB
dHJ5JTIweyUwQSUyMCUyMGMuZmlsbFN0eWxlJTIwJTNEJTIwJ2JsYWNrJyUzQiUwQSUyMCUyMGMu
Zm9udCUyMCUzRCUyMCc4cHglMjBzYW5zLXNlcmlmJyUzQiUwQSUyMCUyMGMuZmlsbFRleHQoJ1dp
ZGUnJTJDJTIwNDMlMkMxMDUpJTNCJTBBJTIwJTIwYy5maWxsVGV4dCgnVGFsbCclMkMlMjAxMDAl
MkMxMDUpJTNCJTBBJTIwJTIwYy5maWxsVGV4dCgnU3F1YXJlJyUyQyUyMDEyOCUyQzEwNSklM0Il
MEElMjAlMjBjLmZvbnQlMjAlM0QlMjAnNzAwJTIwMTBweCUyMHNhbnMtc2VyaWYnJTNCJTBBJTIw
JTIwYy5maWxsVGV4dCgnUHJvZ3Jlc3MlMjBCYXJzJyUyQyUyMDEzJTJDMzApJTNCJTBBJTIwJTIw
Yy5mb250JTIwJTNEJTIwJzEwMCUyMDEwcHglMjBzYW5zLXNlcmlmJyUzQiUwQSUyMCUyMGMuZmls
bFRleHQoJyg4MCUyNSknJTJDJTIwMzclMkM0NSklM0IlMEElMjAlMjBjLmJlZ2luUGF0aCgpJTNC
JTBBJTIwJTIwdmFyJTIwZyUyMCUzRCUyMGMuY3JlYXRlTGluZWFyR3JhZGllbnQoMTAlMkMwJTJD
ODAlMkMwKSUzQiUwQSUyMCUyMGcuYWRkQ29sb3JTdG9wKDAlMkMlMjAnJTIzMDBGRjAwJyklM0Il
MEElMjAlMjBnLmFkZENvbG9yU3RvcCgwLjglMkMlMjAnJTIzMDBGRjAwJyklM0IlMEElMjAlMjBn
LmFkZENvbG9yU3RvcCgwLjklMkMlMjAnJTIzRkZGRjAwJyklM0IlMEElMjAlMjBjLmZpbGxTdHls
ZSUyMCUzRCUyMGclM0IlMEElMjAlMjBjLnJlY3QoMTAlMkM4MCUyQzgwJTJDMTUpJTNCJTBBJTIw
JTIwYy5maWxsKCklM0IlMEElMjAlMjBjLnN0cm9rZVN0eWxlJTIwJTNEJTIwJ2JsYWNrJyUzQiUw
QSUyMCUyMGMuc3Ryb2tlKCklM0IlMEElMjAlMjBjLmJlZ2luUGF0aCgpJTNCJTBBJTIwJTIwdmFy
JTIwZyUyMCUzRCUyMGMuY3JlYXRlTGluZWFyR3JhZGllbnQoMCUyQzgwJTJDMCUyQzIwKSUzQiUw
QSUyMCUyMGcuYWRkQ29sb3JTdG9wKDAlMkMlMjAnJTIzMDBGRjAwJyklM0IlMEElMjAlMjBnLmFk
ZENvbG9yU3RvcCgwLjc1JTJDJTIwJyUyMzAwRkYwMCcpJTNCJTBBJTIwJTIwZy5hZGRDb2xvclN0
b3AoMC44NSUyQyUyMCclMjNGRkZGMDAnKSUzQiUwQSUyMCUyMGMuZmlsbFN0eWxlJTIwJTNEJTIw
ZyUzQiUwQSUyMCUyMGMucmVjdCgxMDAlMkMxNSUyQzE1JTJDODApJTNCJTBBJTIwJTIwYy5maWxs
KCklM0IlMEElMjAlMjBjLnN0cm9rZVN0eWxlJTIwJTNEJTIwJ2JsYWNrJyUzQiUwQSUyMCUyMGMu
c3Ryb2tlKCklM0IlMEElMEElMjAlMjBjLmJlZ2luUGF0aCgpJTNCJTBBJTIwJTIwYy5maWxsU3R5
bGUlMjAlM0QlMjAneWVsbG93JyUzQiUwQSUyMCUyMGMuYXJjKDE0MCUyQzgwJTJDMTUlMkMwJTJD
MipNYXRoLlBJJTJDJTIwdHJ1ZSklM0IlMEElMjAlMjBjLmZpbGwoKSUzQiUwQSUyMCUyMGMuYmVn
aW5QYXRoKCklM0IlMEElMjAlMjBjLmZpbGxTdHlsZSUyMCUzRCUyMCdsaW1lJyUzQiUwQSUyMCUy
MGMubW92ZVRvKDE0MCUyQzgwKSUzQiUwQSUyMCUyMGMuYXJjKDE0MCUyQzgwJTJDMTUlMkMtTWF0
aC5QSSUyRjIlMkMxLjIqTWF0aC5QSSUyQyUyMGZhbHNlKSUzQiUwQSUyMCUyMGMuZmlsbCgpJTNC
JTBBJTIwJTIwYy5iZWdpblBhdGgoKSUzQiUwQSUyMCUyMGMuYXJjKDE0MCUyQzgwJTJDMTUlMkMw
JTJDMipNYXRoLlBJJTJDJTIwdHJ1ZSklM0IlMEElMjAlMjBjLnN0cm9rZVN0eWxlJTIwJTNEJTIw
J2JsYWNrJyUzQiUwQSUyMCUyMGMuc3Ryb2tlKCklM0IlMEF9JTIwZmluYWxseSUyMHslMEElMjAl
MjBjLnJlc3RvcmUoKSUzQiUwQX0lMEEgLS0+CiAKLSAgPHA+IDxpbWcgYWx0PSIiIGNsYXNzPWV4
dHJhIHNyYz1odHRwOi8vaW1hZ2VzLndoYXR3Zy5vcmcvc2FtcGxlLXByb2dyZXNzLnBuZz4KKyAg
PHA+IDxpbWcgYWx0PSIiIGNsYXNzPWV4dHJhIHNyYz1ncmVlbmJveC5wbmc+CiAgIFdoZW4gdGhl
IGVsZW1lbnQgaXMgd2lkZXIgdGhhbiBpdCBpcyB0YWxsLCB0aGUgZWxlbWVudCBpcwogICBleHBl
Y3RlZCB0byBiZSBkZXBpY3RlZCBhcyBhIGhvcml6b250YWwgcHJvZ3Jlc3MgYmFyLCB3aXRoIHRo
ZSBzdGFydAogICBvbiB0aGUgcmlnaHQgYW5kIHRoZSBlbmQgb24gdGhlIGxlZnQgaWYgdGhlICdk
aXJlY3Rpb24nIHByb3BlcnR5IG9uCkBAIC05NTYzNSw3ICs5NTYzNSw3IEBAIHRpbWVbZGF0ZXRp
bWVdIHsgYmluZGluZzogPGkgdGl0bGU9IiI+dGkKICAgIHNhbWUgYm90aCBpbiB0aGUgZHJvcCBk
b3duLCBhbmQgaW4gdGhlIGJveCBzaG93aW5nIHRoZSBjdXJyZW50CiAgICBzZWxlY3Rpb24uPC9w
PgogCi0gICA8cD48aW1nIGFsdD0iIiBoZWlnaHQ9MTA1IHNyYz1odHRwOi8vaW1hZ2VzLndoYXR3
Zy5vcmcvYmlkaXNlbGVjdC5wbmcgd2lkdGg9MjA2PjwvcD4gPCEtLSBubyBuZWVkIGZvciBhbHQg
dGV4dCwgdGhlIHByZXZpb3VzIHBhcmFncmFwaAorICAgPHA+PGltZyBhbHQ9IiIgaGVpZ2h0PTEw
NSBzcmM9Z3JlZW5ib3gucG5nIHdpZHRoPTIwNj48L3A+IDwhLS0gbm8gbmVlZCBmb3IgYWx0IHRl
eHQsIHRoZSBwcmV2aW91cyBwYXJhZ3JhcGgKICAgIGRlc2NyaWJlcyBpdCBjb21wbGV0ZWx5IC0t
PgogCiAgIDwvZGl2PgpJbmRleDogUGVyZm9ybWFuY2VUZXN0cy9QYXJzZXIvcmVzb3VyY2VzL3J1
bm5lci5qcwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBQZXJmb3JtYW5jZVRlc3RzL1BhcnNlci9yZXNvdXJjZXMv
cnVubmVyLmpzCShyZXZpc2lvbiAxMDUzODMpCisrKyBQZXJmb3JtYW5jZVRlc3RzL1BhcnNlci9y
ZXNvdXJjZXMvcnVubmVyLmpzCSh3b3JraW5nIGNvcHkpCkBAIC03NCw2ICs3NCw4IEBAIGZ1bmN0
aW9uIHJ1bkxvb3AoKQogICAgIH0gZWxzZSB7CiAgICAgICAgIGxvZ1N0YXRpc3RpY3ModGltZXMp
OwogICAgICAgICB3aW5kb3cuZG9uZUZ1bmN0aW9uKCk7CisgICAgICAgIGlmICh3aW5kb3cubGF5
b3V0VGVzdENvbnRyb2xsZXIpCisgICAgICAgICAgICBsYXlvdXRUZXN0Q29udHJvbGxlci5ub3Rp
ZnlEb25lKCk7CiAgICAgfQogfQogCkBAIC0xMDEsMyArMTAzLDggQEAgZnVuY3Rpb24gc3RhcnQo
cnVuQ291bnQsIHJ1bkZ1bmN0aW9uLCBsbwogICAgIGxvZygiUnVubmluZyAiICsgcnVuQ291bnQg
KyAiIHRpbWVzIik7CiAgICAgcnVuTG9vcCgpOwogfQorCitpZiAod2luZG93LmxheW91dFRlc3RD
b250cm9sbGVyKSB7CisgICAgbGF5b3V0VGVzdENvbnRyb2xsZXIud2FpdFVudGlsRG9uZSgpOwor
ICAgIGxheW91dFRlc3RDb250cm9sbGVyLmR1bXBBc1RleHQoKTsKK30KSW5kZXg6IFRvb2xzL0No
YW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9DaGFuZ2VMb2cJKHJldmlzaW9uIDEwNTQwMCkK
KysrIFRvb2xzL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDM4IEBACisyMDEy
LTAxLTE5ICBSeW9zdWtlIE5pd2EgIDxybml3YUB3ZWJraXQub3JnPgorCisgICAgICAgIFNvbWUg
cGVyZiB0ZXN0cyB0aW1lIG91dCB3aGVuIHJhbiBieSBydW4tcGVyZi10ZXN0cworICAgICAgICBo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NzY2MTIKKworICAgICAgICBS
ZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBBbHdheXMgcGFzcyAtLW5vLXRp
bWVvdXQgdG8gRHVtcFJlbmRlclRyZWUgZnJvbSBydW4tcGVyZi10ZXN0cy4KKyAgICAgICAgT3Ro
ZXJ3aXNlIHNvbWUgdGVzdHMgc3VjaCBhcyBQYXJzZXIveG1sLXBhcnNlci5odG1sIHdpbGwgdGlt
ZW91dC4KKworICAgICAgICAtLW5vLXRpbWVvdXQgb3B0aW9uIGlzIGN1cnJlbnRseSBzdXBwb3J0
ZWQgYnkgQ2hyb21pdW0gYW5kIE1hYyBwb3J0cy4KKworICAgICAgICAqIFNjcmlwdHMvd2Via2l0
cHkvbGF5b3V0X3Rlc3RzL3BvcnQvYmFzZS5weToKKyAgICAgICAgKFBvcnQudG8uY3JlYXRlX2Ry
aXZlcik6CisgICAgICAgICogU2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvcG9ydC9jaHJv
bWl1bS5weToKKyAgICAgICAgKENocm9taXVtRHJpdmVyLl9faW5pdF9fKToKKyAgICAgICAgKENo
cm9taXVtRHJpdmVyLl93cmFwcGVyX29wdGlvbnMpOgorICAgICAgICAqIFNjcmlwdHMvd2Via2l0
cHkvbGF5b3V0X3Rlc3RzL3BvcnQvZHJpdmVyLnB5OgorICAgICAgICAoRHJpdmVyLl9faW5pdF9f
KToKKyAgICAgICAgKERyaXZlclByb3h5Ll9faW5pdF9fKToKKyAgICAgICAgKiBTY3JpcHRzL3dl
YmtpdHB5L2xheW91dF90ZXN0cy9wb3J0L3dlYmtpdC5weToKKyAgICAgICAgKFdlYktpdERyaXZl
ci5fX2luaXRfXyk6CisgICAgICAgIChXZWJLaXREcml2ZXIuY21kX2xpbmUpOgorICAgICAgICAq
IFNjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rlc3RzL3BvcnQvd2Via2l0X3VuaXR0ZXN0LnB5Ogor
ICAgICAgICAoV2ViS2l0RHJpdmVyVGVzdC50ZXN0X3JlYWRfYmluYXJ5X2Jsb2NrKToKKyAgICAg
ICAgKFdlYktpdERyaXZlclRlc3QpOgorICAgICAgICAoV2ViS2l0RHJpdmVyVGVzdC50ZXN0X25v
X3RpbWVvdXQpOgorICAgICAgICAqIFNjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rlc3RzL3J1bl93
ZWJraXRfdGVzdHNfaW50ZWdyYXRpb250ZXN0LnB5OgorICAgICAgICAoZ2V0X3Rlc3RzX3J1bi5S
ZWNvcmRpbmdUZXN0RHJpdmVyLl9faW5pdF9fKToKKyAgICAgICAgKiBTY3JpcHRzL3dlYmtpdHB5
L3BlcmZvcm1hbmNlX3Rlc3RzL3BlcmZ0ZXN0c3J1bm5lci5weToKKyAgICAgICAgKFBlcmZUZXN0
c1J1bm5lci5fcGFyc2VfYXJncyk6CisgICAgICAgIChQZXJmVGVzdHNSdW5uZXIuX3J1bl90ZXN0
c19zZXQpOgorICAgICAgICAqIFNjcmlwdHMvd2Via2l0cHkvcGVyZm9ybWFuY2VfdGVzdHMvcGVy
ZnRlc3RzcnVubmVyX3VuaXR0ZXN0LnB5OgorICAgICAgICAoY3JlYXRlX3J1bm5lcik6CisKIDIw
MTItMDEtMTkgIFRvciBBcm5lIFZlc3Riw7ggIDx0b3IuYXJuZS52ZXN0Ym9Abm9raWEuY29tPgog
CiAgICAgICAgIFtRdF0gRG8gZnVsbCBpbmNyZW1lbnRhbCBidWlsZHMgdW50aWwgYm90cyB1c2Ug
dXBkYXRlLXdlYmtpdApJbmRleDogVG9vbHMvU2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMv
cnVuX3dlYmtpdF90ZXN0c19pbnRlZ3JhdGlvbnRlc3QucHkKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gVG9vbHMv
U2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvcnVuX3dlYmtpdF90ZXN0c19pbnRlZ3JhdGlv
bnRlc3QucHkJKHJldmlzaW9uIDEwNTM4MykKKysrIFRvb2xzL1NjcmlwdHMvd2Via2l0cHkvbGF5
b3V0X3Rlc3RzL3J1bl93ZWJraXRfdGVzdHNfaW50ZWdyYXRpb250ZXN0LnB5CSh3b3JraW5nIGNv
cHkpCkBAIC0xNTAsNyArMTUwLDcgQEAgZGVmIGdldF90ZXN0c19ydW4oZXh0cmFfYXJncz1Ob25l
LCB0ZXN0cwogCiAgICAgY2xhc3MgUmVjb3JkaW5nVGVzdERyaXZlcihUZXN0RHJpdmVyKToKICAg
ICAgICAgZGVmIF9faW5pdF9fKHNlbGYsIHBvcnQsIHdvcmtlcl9udW1iZXIpOgotICAgICAgICAg
ICAgVGVzdERyaXZlci5fX2luaXRfXyhzZWxmLCBwb3J0LCB3b3JrZXJfbnVtYmVyLCBwaXhlbF90
ZXN0cz1wb3J0LmdldF9vcHRpb24oJ3BpeGVsX3Rlc3QnKSkKKyAgICAgICAgICAgIFRlc3REcml2
ZXIuX19pbml0X18oc2VsZiwgcG9ydCwgd29ya2VyX251bWJlciwgcGl4ZWxfdGVzdHM9cG9ydC5n
ZXRfb3B0aW9uKCdwaXhlbF90ZXN0JyksIG5vX3RpbWVvdXQ9RmFsc2UpCiAgICAgICAgICAgICBz
ZWxmLl9jdXJyZW50X3Rlc3RfYmF0Y2ggPSBOb25lCiAKICAgICAgICAgZGVmIHN0b3Aoc2VsZik6
CkluZGV4OiBUb29scy9TY3JpcHRzL3dlYmtpdHB5L2xheW91dF90ZXN0cy9wb3J0L2Jhc2UucHkK
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotLS0gVG9vbHMvU2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvcG9ydC9i
YXNlLnB5CShyZXZpc2lvbiAxMDUzODMpCisrKyBUb29scy9TY3JpcHRzL3dlYmtpdHB5L2xheW91
dF90ZXN0cy9wb3J0L2Jhc2UucHkJKHdvcmtpbmcgY29weSkKQEAgLTc0MCw5ICs3NDAsOSBAQCBj
bGFzcyBQb3J0KG9iamVjdCk6CiAgICAgICAgIHJlc3VsdHNfZmlsZW5hbWUgaW4gYSB1c2Vycycg
YnJvd3Nlci4iIiIKICAgICAgICAgcmV0dXJuIHNlbGYuaG9zdC51c2VyLm9wZW5fdXJsKHBhdGgu
YWJzcGF0aF90b191cmkocmVzdWx0c19maWxlbmFtZSkpCiAKLSAgICBkZWYgY3JlYXRlX2RyaXZl
cihzZWxmLCB3b3JrZXJfbnVtYmVyKToKKyAgICBkZWYgY3JlYXRlX2RyaXZlcihzZWxmLCB3b3Jr
ZXJfbnVtYmVyLCBub190aW1lb3V0PUZhbHNlKToKICAgICAgICAgIiIiUmV0dXJuIGEgbmV3bHkg
Y3JlYXRlZCBEcml2ZXIgc3ViY2xhc3MgZm9yIHN0YXJ0aW5nL3N0b3BwaW5nIHRoZSB0ZXN0IGRy
aXZlci4iIiIKLSAgICAgICAgcmV0dXJuIGRyaXZlci5Ecml2ZXJQcm94eShzZWxmLCB3b3JrZXJf
bnVtYmVyLCBzZWxmLl9kcml2ZXJfY2xhc3MoKSwgcGl4ZWxfdGVzdHM9c2VsZi5nZXRfb3B0aW9u
KCdwaXhlbF90ZXN0cycpKQorICAgICAgICByZXR1cm4gZHJpdmVyLkRyaXZlclByb3h5KHNlbGYs
IHdvcmtlcl9udW1iZXIsIHNlbGYuX2RyaXZlcl9jbGFzcygpLCBwaXhlbF90ZXN0cz1zZWxmLmdl
dF9vcHRpb24oJ3BpeGVsX3Rlc3RzJyksIG5vX3RpbWVvdXQ9bm9fdGltZW91dCkKIAogICAgIGRl
ZiBzdGFydF9oZWxwZXIoc2VsZik6CiAgICAgICAgICIiIklmIGEgcG9ydCBuZWVkcyB0byByZWNv
bmZpZ3VyZSBncmFwaGljcyBzZXR0aW5ncyBvciBkbyBvdGhlcgpJbmRleDogVG9vbHMvU2NyaXB0
cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvcG9ydC9jaHJvbWl1bS5weQo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBU
b29scy9TY3JpcHRzL3dlYmtpdHB5L2xheW91dF90ZXN0cy9wb3J0L2Nocm9taXVtLnB5CShyZXZp
c2lvbiAxMDUzODMpCisrKyBUb29scy9TY3JpcHRzL3dlYmtpdHB5L2xheW91dF90ZXN0cy9wb3J0
L2Nocm9taXVtLnB5CSh3b3JraW5nIGNvcHkpCkBAIC0zOTEsOCArMzkxLDggQEAgY2xhc3MgQ2hy
b21pdW1Qb3J0KFBvcnQpOgogCiAjIEZJWE1FOiBUaGlzIHNob3VsZCBpbmhlcml0IGZyb20gV2Vi
S2l0RHJpdmVyIG5vdyB0aGF0IENocm9taXVtIGhhcyBhIER1bXBSZW5kZXJUcmVlIHByb2Nlc3Mg
bGlrZSB0aGUgcmVzdCBvZiBXZWJLaXQuCiBjbGFzcyBDaHJvbWl1bURyaXZlcihEcml2ZXIpOgot
ICAgIGRlZiBfX2luaXRfXyhzZWxmLCBwb3J0LCB3b3JrZXJfbnVtYmVyLCBwaXhlbF90ZXN0cyk6
Ci0gICAgICAgIERyaXZlci5fX2luaXRfXyhzZWxmLCBwb3J0LCB3b3JrZXJfbnVtYmVyLCBwaXhl
bF90ZXN0cykKKyAgICBkZWYgX19pbml0X18oc2VsZiwgcG9ydCwgd29ya2VyX251bWJlciwgcGl4
ZWxfdGVzdHMsIG5vX3RpbWVvdXQ9RmFsc2UpOgorICAgICAgICBEcml2ZXIuX19pbml0X18oc2Vs
ZiwgcG9ydCwgd29ya2VyX251bWJlciwgcGl4ZWxfdGVzdHMsIG5vX3RpbWVvdXQpCiAgICAgICAg
IHNlbGYuX3Byb2MgPSBOb25lCiAgICAgICAgIHNlbGYuX2ltYWdlX3BhdGggPSBOb25lCiAgICAg
ICAgIGlmIHNlbGYuX3BpeGVsX3Rlc3RzOgpAQCAtNDA2LDYgKzQwNiw4IEBAIGNsYXNzIENocm9t
aXVtRHJpdmVyKERyaXZlcik6CiAgICAgICAgICMgRklYTUU6IFRoaXMgaXMgbm90IE5vbmUgc2hv
dWxkbid0IGJlIG5lY2Vzc2FyeSwgdW5sZXNzIC0tanMtZmxhZ3M9IicnIiBjaGFuZ2VzIGJlaGF2
aW9yIHNvbWVob3c/CiAgICAgICAgIGlmIHNlbGYuX3BvcnQuZ2V0X29wdGlvbignanNfZmxhZ3Mn
KSBpcyBub3QgTm9uZToKICAgICAgICAgICAgIGNtZC5hcHBlbmQoJy0tanMtZmxhZ3M9IicgKyBz
ZWxmLl9wb3J0LmdldF9vcHRpb24oJ2pzX2ZsYWdzJykgKyAnIicpCisgICAgICAgIGlmIHNlbGYu
X25vX3RpbWVvdXQ6CisgICAgICAgICAgICBjbWQuYXBwZW5kKCItLW5vLXRpbWVvdXQiKQogCiAg
ICAgICAgICMgRklYTUU6IFdlIHNob3VsZCBiZSBhYmxlIHRvIGJ1aWxkIHRoaXMgbGlzdCB1c2lu
ZyBvbmx5IGFuIGFycmF5IG9mCiAgICAgICAgICMgb3B0aW9uIG5hbWVzLCB0aGUgb3B0aW9ucyAo
b3B0cGFyc2UuVmFsdWVzKSBvYmplY3QsIGFuZCB0aGUgb3JpZ25hbApJbmRleDogVG9vbHMvU2Ny
aXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvcG9ydC9kcml2ZXIucHkKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
VG9vbHMvU2NyaXB0cy93ZWJraXRweS9sYXlvdXRfdGVzdHMvcG9ydC9kcml2ZXIucHkJKHJldmlz
aW9uIDEwNTM4MykKKysrIFRvb2xzL1NjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rlc3RzL3BvcnQv
ZHJpdmVyLnB5CSh3b3JraW5nIGNvcHkpCkBAIC02Myw3ICs2Myw3IEBAIGNsYXNzIERyaXZlck91
dHB1dChvYmplY3QpOgogY2xhc3MgRHJpdmVyKG9iamVjdCk6CiAgICAgIiIiQWJzdHJhY3QgaW50
ZXJmYWNlIGZvciB0aGUgRHVtcFJlbmRlclRyZWUgaW50ZXJmYWNlLiIiIgogCi0gICAgZGVmIF9f
aW5pdF9fKHNlbGYsIHBvcnQsIHdvcmtlcl9udW1iZXIsIHBpeGVsX3Rlc3RzKToKKyAgICBkZWYg
X19pbml0X18oc2VsZiwgcG9ydCwgd29ya2VyX251bWJlciwgcGl4ZWxfdGVzdHMsIG5vX3RpbWVv
dXQ9RmFsc2UpOgogICAgICAgICAiIiJJbml0aWFsaXplIGEgRHJpdmVyIHRvIHN1YnNlcXVlbnRs
eSBydW4gdGVzdHMuCiAKICAgICAgICAgVHlwaWNhbGx5IHRoaXMgcm91dGluZSB3aWxsIHNwYXdu
IER1bXBSZW5kZXJUcmVlIGluIGEgY29uZmlnCkBAIC03NSw2ICs3NSw3IEBAIGNsYXNzIERyaXZl
cihvYmplY3QpOgogICAgICAgICBzZWxmLl9wb3J0ID0gcG9ydAogICAgICAgICBzZWxmLl93b3Jr
ZXJfbnVtYmVyID0gd29ya2VyX251bWJlcgogICAgICAgICBzZWxmLl9waXhlbF90ZXN0cyA9IHBp
eGVsX3Rlc3RzCisgICAgICAgIHNlbGYuX25vX3RpbWVvdXQgPSBub190aW1lb3V0CiAKICAgICBk
ZWYgcnVuX3Rlc3Qoc2VsZiwgZHJpdmVyX2lucHV0KToKICAgICAgICAgIiIiUnVuIGEgc2luZ2xl
IHRlc3QgYW5kIHJldHVybiB0aGUgcmVzdWx0cy4KQEAgLTE0MiwxMiArMTQzLDEyIEBAIGNsYXNz
IERyaXZlclByb3h5KG9iamVjdCk6CiAgICAgb25lIHdpdGhvdXQuIFRoaXMgYWxsb3dzIHVzIHRv
IGhhbmRsZSBwbGFpbiB0ZXh0IHRlc3RzIGFuZCByZWYgdGVzdHMgd2l0aCBhCiAgICAgc2luZ2xl
IGRyaXZlci4iIiIKIAotICAgIGRlZiBfX2luaXRfXyhzZWxmLCBwb3J0LCB3b3JrZXJfbnVtYmVy
LCBkcml2ZXJfaW5zdGFuY2VfY29uc3RydWN0b3IsIHBpeGVsX3Rlc3RzKToKLSAgICAgICAgc2Vs
Zi5fZHJpdmVyID0gZHJpdmVyX2luc3RhbmNlX2NvbnN0cnVjdG9yKHBvcnQsIHdvcmtlcl9udW1i
ZXIsIHBpeGVsX3Rlc3RzKQorICAgIGRlZiBfX2luaXRfXyhzZWxmLCBwb3J0LCB3b3JrZXJfbnVt
YmVyLCBkcml2ZXJfaW5zdGFuY2VfY29uc3RydWN0b3IsIHBpeGVsX3Rlc3RzLCBub190aW1lb3V0
KToKKyAgICAgICAgc2VsZi5fZHJpdmVyID0gZHJpdmVyX2luc3RhbmNlX2NvbnN0cnVjdG9yKHBv
cnQsIHdvcmtlcl9udW1iZXIsIHBpeGVsX3Rlc3RzLCBub190aW1lb3V0KQogICAgICAgICBpZiBw
aXhlbF90ZXN0czoKICAgICAgICAgICAgIHNlbGYuX3JlZnRlc3RfZHJpdmVyID0gc2VsZi5fZHJp
dmVyCiAgICAgICAgIGVsc2U6Ci0gICAgICAgICAgICBzZWxmLl9yZWZ0ZXN0X2RyaXZlciA9IGRy
aXZlcl9pbnN0YW5jZV9jb25zdHJ1Y3Rvcihwb3J0LCB3b3JrZXJfbnVtYmVyLCBwaXhlbF90ZXN0
cz1UcnVlKQorICAgICAgICAgICAgc2VsZi5fcmVmdGVzdF9kcml2ZXIgPSBkcml2ZXJfaW5zdGFu
Y2VfY29uc3RydWN0b3IocG9ydCwgd29ya2VyX251bWJlciwgcGl4ZWxfdGVzdHMsIG5vX3RpbWVv
dXQpCiAKICAgICBkZWYgaXNfaHR0cF90ZXN0KHNlbGYsIHRlc3RfbmFtZSk6CiAgICAgICAgIHJl
dHVybiBzZWxmLl9kcml2ZXIuaXNfaHR0cF90ZXN0KHRlc3RfbmFtZSkKSW5kZXg6IFRvb2xzL1Nj
cmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rlc3RzL3BvcnQvd2Via2l0LnB5Cj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IFRvb2xzL1NjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rlc3RzL3BvcnQvd2Via2l0LnB5CShyZXZp
c2lvbiAxMDUzODMpCisrKyBUb29scy9TY3JpcHRzL3dlYmtpdHB5L2xheW91dF90ZXN0cy9wb3J0
L3dlYmtpdC5weQkod29ya2luZyBjb3B5KQpAQCAtNDQ4LDggKzQ0OCw4IEBAIGNsYXNzIFdlYktp
dFBvcnQoUG9ydCk6CiBjbGFzcyBXZWJLaXREcml2ZXIoRHJpdmVyKToKICAgICAiIiJXZWJLaXQg
aW1wbGVtZW50YXRpb24gb2YgdGhlIER1bXBSZW5kZXJUcmVlL1dlYktpdFRlc3RSdW5uZXIgaW50
ZXJmYWNlLiIiIgogCi0gICAgZGVmIF9faW5pdF9fKHNlbGYsIHBvcnQsIHdvcmtlcl9udW1iZXIs
IHBpeGVsX3Rlc3RzKToKLSAgICAgICAgRHJpdmVyLl9faW5pdF9fKHNlbGYsIHBvcnQsIHdvcmtl
cl9udW1iZXIsIHBpeGVsX3Rlc3RzKQorICAgIGRlZiBfX2luaXRfXyhzZWxmLCBwb3J0LCB3b3Jr
ZXJfbnVtYmVyLCBwaXhlbF90ZXN0cywgbm9fdGltZW91dD1GYWxzZSk6CisgICAgICAgIERyaXZl
ci5fX2luaXRfXyhzZWxmLCBwb3J0LCB3b3JrZXJfbnVtYmVyLCBwaXhlbF90ZXN0cywgbm9fdGlt
ZW91dCkKICAgICAgICAgc2VsZi5fZHJpdmVyX3RlbXBkaXIgPSBwb3J0Ll9maWxlc3lzdGVtLm1r
ZHRlbXAocHJlZml4PSclcy0nICUgc2VsZi5fcG9ydC5kcml2ZXJfbmFtZSgpKQogICAgICAgICAj
IFdlYktpdFRlc3RSdW5uZXIgY2FuIHJlcG9ydCBiYWNrIHN1YnByb2Nlc3MgY3Jhc2hlcyBieSBw
cmludGluZwogICAgICAgICAjICIjQ1JBU0hFRCAtIFBST0NFU1NOQU1FIi4gIFNpbmNlIHRob3Nl
IGNhbiBoYXBwZW4gYXQgYW55IHRpbWUKQEAgLTQ4MSw2ICs0ODEsOCBAQCBjbGFzcyBXZWJLaXRE
cml2ZXIoRHJpdmVyKToKICAgICAgICAgICAgIGNtZC5hcHBlbmQoJy0tY29tcGxleC10ZXh0JykK
ICAgICAgICAgaWYgc2VsZi5fcG9ydC5nZXRfb3B0aW9uKCd0aHJlYWRlZCcpOgogICAgICAgICAg
ICAgY21kLmFwcGVuZCgnLS10aHJlYWRlZCcpCisgICAgICAgIGlmIHNlbGYuX25vX3RpbWVvdXQ6
CisgICAgICAgICAgICBjbWQuYXBwZW5kKCctLW5vLXRpbWVvdXQnKQogICAgICAgICAjIEZJWE1F
OiBXZSBuZWVkIHRvIHBhc3MgLS10aW1lb3V0PVNFQ09ORFMgdG8gV2ViS2l0VGVzdFJ1bm5lciBm
b3IgV2ViS2l0Mi4KIAogICAgICAgICBjbWQuZXh0ZW5kKHNlbGYuX3BvcnQuZ2V0X29wdGlvbign
YWRkaXRpb25hbF9kcnRfZmxhZycsIFtdKSkKSW5kZXg6IFRvb2xzL1NjcmlwdHMvd2Via2l0cHkv
bGF5b3V0X3Rlc3RzL3BvcnQvd2Via2l0X3VuaXR0ZXN0LnB5Cj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFRvb2xz
L1NjcmlwdHMvd2Via2l0cHkvbGF5b3V0X3Rlc3RzL3BvcnQvd2Via2l0X3VuaXR0ZXN0LnB5CShy
ZXZpc2lvbiAxMDUzODMpCisrKyBUb29scy9TY3JpcHRzL3dlYmtpdHB5L2xheW91dF90ZXN0cy9w
b3J0L3dlYmtpdF91bml0dGVzdC5weQkod29ya2luZyBjb3B5KQpAQCAtMjg0LDMgKzI4NCw4IEBA
IGNsYXNzIFdlYktpdERyaXZlclRlc3QodW5pdHRlc3QuVGVzdENhc2UKICAgICAgICAgc2VsZi5h
c3NlcnRFcXVhbHMoY29udGVudF9ibG9jay5jb250ZW50X2hhc2gsICdhY3R1YWwnKQogICAgICAg
ICBzZWxmLmFzc2VydEVxdWFscyhjb250ZW50X2Jsb2NrLmNvbnRlbnQsICcxMjM0NTY3OCcpCiAg
ICAgICAgIHNlbGYuYXNzZXJ0RXF1YWxzKGNvbnRlbnRfYmxvY2suZGVjb2RlZF9jb250ZW50LCAn
MTIzNDU2NzgnKQorCisgICAgZGVmIHRlc3Rfbm9fdGltZW91dChzZWxmKToKKyAgICAgICAgcG9y
dCA9IFRlc3RXZWJLaXRQb3J0KCkKKyAgICAgICAgZHJpdmVyID0gV2ViS2l0RHJpdmVyKHBvcnQs
IDAsIHBpeGVsX3Rlc3RzPVRydWUsIG5vX3RpbWVvdXQ9VHJ1ZSkKKyAgICAgICAgc2VsZi5hc3Nl
cnRFcXVhbHMoZHJpdmVyLmNtZF9saW5lKCksIFsnTU9DSyBvdXRwdXQgb2YgY2hpbGQgcHJvY2Vz
cy9EdW1wUmVuZGVyVHJlZScsICctLXBpeGVsLXRlc3RzJywgJy0tbm8tdGltZW91dCcsICctJ10p
CkluZGV4OiBUb29scy9TY3JpcHRzL3dlYmtpdHB5L3BlcmZvcm1hbmNlX3Rlc3RzL3BlcmZ0ZXN0
c3J1bm5lci5weQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9TY3JpcHRzL3dlYmtpdHB5L3BlcmZvcm1h
bmNlX3Rlc3RzL3BlcmZ0ZXN0c3J1bm5lci5weQkocmV2aXNpb24gMTA1MzgzKQorKysgVG9vbHMv
U2NyaXB0cy93ZWJraXRweS9wZXJmb3JtYW5jZV90ZXN0cy9wZXJmdGVzdHNydW5uZXIucHkJKHdv
cmtpbmcgY29weSkKQEAgLTc5LDcgKzc5LDcgQEAgY2xhc3MgUGVyZlRlc3RzUnVubmVyKG9iamVj
dCk6CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlbHA9IkNoZWNrIHRvIGVuc3Vy
ZSB0aGUgRHVtcFJlbmRlclRyZWUgYnVpbGQgaXMgdXAtdG8tZGF0ZSAoZGVmYXVsdCkuIiksCiAg
ICAgICAgICAgICBvcHRwYXJzZS5tYWtlX29wdGlvbigiLS1idWlsZC1kaXJlY3RvcnkiLAogICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGVscD0iUGF0aCB0byB0aGUgZGlyZWN0b3J5
IHVuZGVyIHdoaWNoIGJ1aWxkIGZpbGVzIGFyZSBrZXB0IChzaG91bGQgbm90IGluY2x1ZGUgY29u
ZmlndXJhdGlvbikiKSwKLSAgICAgICAgICAgIG9wdHBhcnNlLm1ha2Vfb3B0aW9uKCItLXRpbWUt
b3V0LW1zIiwgZGVmYXVsdD0zMDAwMCwKKyAgICAgICAgICAgIG9wdHBhcnNlLm1ha2Vfb3B0aW9u
KCItLXRpbWUtb3V0LW1zIiwgZGVmYXVsdD02MDAgKiAxMDAwLAogICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgaGVscD0iU2V0IHRoZSB0aW1lb3V0IGZvciBlYWNoIHRlc3QiKSwKICAg
ICAgICAgICAgIG9wdHBhcnNlLm1ha2Vfb3B0aW9uKCItLW91dHB1dC1qc29uLXBhdGgiLAogICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGVscD0iRmlsZW5hbWUgb2YgdGhlIEpTT04g
ZmlsZSB0aGF0IHN1bW1hcmllcyB0aGUgcmVzdWx0cyIpLApAQCAtMTcxLDcgKzE3MSw3IEBAIGNs
YXNzIFBlcmZUZXN0c1J1bm5lcihvYmplY3QpOgogICAgICAgICAgICAgICAgIGRyaXZlci5zdG9w
KCkKICAgICAgICAgICAgICAgICBkcml2ZXIgPSBOb25lCiAgICAgICAgICAgICBpZiBub3QgZHJp
dmVyOgotICAgICAgICAgICAgICAgIGRyaXZlciA9IHBvcnQuY3JlYXRlX2RyaXZlcih3b3JrZXJf
bnVtYmVyPTEpCisgICAgICAgICAgICAgICAgZHJpdmVyID0gcG9ydC5jcmVhdGVfZHJpdmVyKHdv
cmtlcl9udW1iZXI9MSwgbm9fdGltZW91dD1UcnVlKQogCiAgICAgICAgICAgICByZWxhdGl2ZV90
ZXN0X3BhdGggPSBzZWxmLl9ob3N0LmZpbGVzeXN0ZW0ucmVscGF0aCh0ZXN0LCBzZWxmLl9iYXNl
X3BhdGgpCiAgICAgICAgICAgICBzZWxmLl9wcmludGVyLndyaXRlKCdSdW5uaW5nICVzICglZCBv
ZiAlZCknICUgKHJlbGF0aXZlX3Rlc3RfcGF0aCwgZXhwZWN0ZWQgKyB1bmV4cGVjdGVkICsgMSwg
bGVuKHRlc3RzKSkpCkluZGV4OiBUb29scy9TY3JpcHRzL3dlYmtpdHB5L3BlcmZvcm1hbmNlX3Rl
c3RzL3BlcmZ0ZXN0c3J1bm5lcl91bml0dGVzdC5weQo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBUb29scy9TY3Jp
cHRzL3dlYmtpdHB5L3BlcmZvcm1hbmNlX3Rlc3RzL3BlcmZ0ZXN0c3J1bm5lcl91bml0dGVzdC5w
eQkocmV2aXNpb24gMTA1MzgzKQorKysgVG9vbHMvU2NyaXB0cy93ZWJraXRweS9wZXJmb3JtYW5j
ZV90ZXN0cy9wZXJmdGVzdHNydW5uZXJfdW5pdHRlc3QucHkJKHdvcmtpbmcgY29weSkKQEAgLTEw
OCw3ICsxMDgsNyBAQCBtYXggMTEyMAogCiAgICAgICAgIG9wdGlvbnMsIHBhcnNlZF9hcmdzID0g
UGVyZlRlc3RzUnVubmVyLl9wYXJzZV9hcmdzKGFyZ3MpCiAgICAgICAgIHRlc3RfcG9ydCA9IFRl
c3RQb3J0KGhvc3Q9TW9ja0hvc3QoKSwgb3B0aW9ucz1vcHRpb25zKQotICAgICAgICB0ZXN0X3Bv
cnQuY3JlYXRlX2RyaXZlciA9IGxhbWJkYSB3b3JrZXJfbnVtYmVyPU5vbmU6IE1haW5UZXN0LlRl
c3REcml2ZXIoKQorICAgICAgICB0ZXN0X3BvcnQuY3JlYXRlX2RyaXZlciA9IGxhbWJkYSB3b3Jr
ZXJfbnVtYmVyPU5vbmUsIG5vX3RpbWVvdXQ9RmFsc2U6IE1haW5UZXN0LlRlc3REcml2ZXIoKQog
CiAgICAgICAgIHJ1bm5lciA9IFBlcmZUZXN0c1J1bm5lcihyZWd1bGFyX291dHB1dCwgYnVpbGRi
b3Rfb3V0cHV0LCBhcmdzPWFyZ3MsIHBvcnQ9dGVzdF9wb3J0KQogICAgICAgICBydW5uZXIuX2hv
c3QuZmlsZXN5c3RlbS5tYXliZV9tYWtlX2RpcmVjdG9yeShydW5uZXIuX2Jhc2VfcGF0aCwgJ2lu
c3BlY3RvcicpCkluZGV4OiBQZXJmb3JtYW5jZVRlc3RzL1BhcnNlci9yZXNvdXJjZXMvZ3JlZW5i
b3gucG5nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIFBlcmZvcm1hbmNlVGVzdHMvUGFyc2VyL3Jlc291cmNlcy9n
cmVlbmJveC5wbmcJKHJldmlzaW9uIDEwNTM4MykJKGZyb20gTGF5b3V0VGVzdHMvZmFzdC9jc3Mv
cmVzb3VyY2VzL2dyZWVuYm94LnBuZzoxMDUzODMpCisrKyBQZXJmb3JtYW5jZVRlc3RzL1BhcnNl
ci9yZXNvdXJjZXMvZ3JlZW5ib3gucG5nCSh3b3JraW5nIGNvcHkpCgpDYW5ub3QgZGlzcGxheTog
ZmlsZSBtYXJrZWQgYXMgYSBiaW5hcnkgdHlwZS4Kc3ZuOm1pbWUtdHlwZSA9IGltYWdlL3BuZwoK
aVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUJrQUFBQVpDQUlBQUFCTGl4STBBQUFBSmtsRVFWUjRu
R0pnK005QU5UUnExcWhabzJhTgptalZxMXFoWm8yWmhJQUFBQUFELy93TUExWEJ1cm8wenNva0FB
QUFBU1VWT1JLNUNZSUk9Cgo=
</data>
<flag name="review"
          id="124064"
          type_id="1"
          status="+"
          setter="eric"
    />
          </attachment>
      

    </bug>

</bugzilla>