<?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>226078</bug_id>
          
          <creation_ts>2021-05-21 05:15:33 -0700</creation_ts>
          <short_desc>MacOS WebM Format Reader returns enabled for tracks that do not have samples</short_desc>
          <delta_ts>2021-05-27 02:18:54 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>Media</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>macOS 10.15</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          <see_also>https://bugs.webkit.org/show_bug.cgi?id=226217</see_also>
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Kimmo Kinnunen">kkinnunen</reporter>
          <assigned_to name="Kimmo Kinnunen">kkinnunen</assigned_to>
          <cc>aestes</cc>
    
    <cc>eric.carlson</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>glenn</cc>
    
    <cc>jer.noble</cc>
    
    <cc>philipj</cc>
    
    <cc>sergio</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1762371</commentid>
    <comment_count>0</comment_count>
    <who name="Kimmo Kinnunen">kkinnunen</who>
    <bug_when>2021-05-21 05:15:33 -0700</bug_when>
    <thetext>WebM Format Reader returns enabled for tracks that do not have samples

Makes WebGL tests fail if WebM is enabled.
WebGL test suite uses red-green.webmvp8.webm which has empty but present audio track.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1762372</commentid>
    <comment_count>1</comment_count>
    <who name="Kimmo Kinnunen">kkinnunen</who>
    <bug_when>2021-05-21 05:17:26 -0700</bug_when>
    <thetext>&lt;rdar://74048072&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1762375</commentid>
    <comment_count>2</comment_count>
      <attachid>429286</attachid>
    <who name="Kimmo Kinnunen">kkinnunen</who>
    <bug_when>2021-05-21 05:28:44 -0700</bug_when>
    <thetext>Created attachment 429286
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1762457</commentid>
    <comment_count>3</comment_count>
    <who name="Andy Estes">aestes</who>
    <bug_when>2021-05-21 09:56:49 -0700</bug_when>
    <thetext>Did you find where the WebGL tests started failing? Was it a WebKit commit that caused them to start failing or a change in the operating system?

Does this change fix the WebGL test failures without re-introducing a hang when reloading a page with WebM content that was fixed in r274378?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1762483</commentid>
    <comment_count>4</comment_count>
    <who name="Kimmo Kinnunen">kkinnunen</who>
    <bug_when>2021-05-21 10:51:24 -0700</bug_when>
    <thetext>(In reply to Andy Estes from comment #3)
&gt; Did you find where the WebGL tests started failing? Was it a WebKit commit
&gt; that caused them to start failing or a change in the operating system?

Not yet. Does it matter? Is it correct to return “enabled” when we should return “disabled”? Why don’t we always return “enabled” then in the unknown-enabledness case?

&gt; Does this change fix the WebGL test failures without re-introducing a hang
&gt; when reloading a page with WebM content that was fixed in r274378?

It’s hard to know since no test was ever done!
I guess it’s now on me to write the test to get the bug off my priority list?
Do we have a existing case where we serve partial webm that I could start with?

If the parser cancel callback does not get run on load stop, then the hang is still there.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1762490</commentid>
    <comment_count>5</comment_count>
    <who name="Kimmo Kinnunen">kkinnunen</who>
    <bug_when>2021-05-21 10:55:31 -0700</bug_when>
    <thetext>Correct radar
&lt;rdar://77084155&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1762491</commentid>
    <comment_count>6</comment_count>
    <who name="Kimmo Kinnunen">kkinnunen</who>
    <bug_when>2021-05-21 11:02:09 -0700</bug_when>
    <thetext>(In reply to Andy Estes from comment #3)
&gt; Did you find where the WebGL tests started failing? Was it a WebKit commit
&gt; that caused them to start failing or a change in the operating system?

The patch  here is effectively revert of r274378 so I’d imagine that to be one potential WebKit rev that caused the tests to start failing on the grounds that they start passing after this..</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1762502</commentid>
    <comment_count>7</comment_count>
    <who name="Andy Estes">aestes</who>
    <bug_when>2021-05-21 11:44:41 -0700</bug_when>
    <thetext>(In reply to Kimmo Kinnunen from comment #4)
&gt; (In reply to Andy Estes from comment #3)

&gt; It’s hard to know since no test was ever done!
&gt; I guess it’s now on me to write the test to get the bug off my priority list?

No, it&apos;s not on you to write a test; I wasn&apos;t asking you to.

&gt; Do we have a existing case where we serve partial webm that I could start
&gt; with?

You can try manually testing with the reproduction steps in the radar associated with r274378 (rdar://75351029).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1763102</commentid>
    <comment_count>8</comment_count>
    <who name="Kimmo Kinnunen">kkinnunen</who>
    <bug_when>2021-05-24 06:24:28 -0700</bug_when>
    <thetext>(In reply to Andy Estes from comment #7)
&gt; (In reply to Kimmo Kinnunen from comment #4)
&gt; &gt; It’s hard to know since no test was ever done!
&gt; &gt; I guess it’s now on me to write the test to get the bug off my priority list?
&gt; No, it&apos;s not on you to write a test; I wasn&apos;t asking you to.
&gt; You can try manually testing with the reproduction steps in the radar
&gt; associated with r274378 (rdar://75351029).

Well it&apos;s not the kind of bug which manual reproing proves much? I could not trigger the bug manually with this patch.

I wrote the test and the hang triggers with and without this patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1763478</commentid>
    <comment_count>9</comment_count>
      <attachid>429644</attachid>
    <who name="Kimmo Kinnunen">kkinnunen</who>
    <bug_when>2021-05-25 05:13:44 -0700</bug_when>
    <thetext>Created attachment 429644
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1763631</commentid>
    <comment_count>10</comment_count>
    <who name="Jer Noble">jer.noble</who>
    <bug_when>2021-05-25 12:52:36 -0700</bug_when>
    <thetext>This seems like a very risky fix that could be as easily solved just by modifying the underlying WebM file to not have an audio track with no samples. After all, the failing tests are about painting to canvas, not about the robustness of our webm parser implementation. This change effectively forces the parser to parse the entire file, potentially blocked the entire time, before answering whether a given track is enabled or not.

Additionally, this won&apos;t help fix WebM files that _do_ have the enabled flag set on an audio track and yet still don&apos;t have any audio samples; those will still fail.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1763883</commentid>
    <comment_count>11</comment_count>
      <attachid>429751</attachid>
    <who name="Kimmo Kinnunen">kkinnunen</who>
    <bug_when>2021-05-26 05:46:55 -0700</bug_when>
    <thetext>Created attachment 429751
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1763885</commentid>
    <comment_count>12</comment_count>
    <who name="Kimmo Kinnunen">kkinnunen</who>
    <bug_when>2021-05-26 05:56:26 -0700</bug_when>
    <thetext>(In reply to Jer Noble from comment #10)
&gt; This seems like a very risky fix that could be as easily solved just by
&gt; modifying the underlying WebM file to not have an audio track with no
&gt; samples.

I don&apos;t necessarily agree that &quot;it&apos;s as easily solved..&quot;. There&apos;s significant churn to get the changes through legal, WebGL working group and back to WebKit.

&gt; After all, the failing tests are about painting to canvas, not
&gt; about the robustness of our webm parser implementation. This change
&gt; effectively forces the parser to parse the entire file, potentially blocked
&gt; the entire time, before answering whether a given track is enabled or not.

I&apos;d still, in my opinion, be better to work on fixing the actual problem than working on the churn while leaving the content regressed.

&gt; Additionally, this won&apos;t help fix WebM files that _do_ have the enabled flag
&gt; set on an audio track and yet still don&apos;t have any audio samples; those will
&gt; still fail.

I don&apos;t necessarily understand why a non-complete implementation is a blocker in my case, but non-complete, test-regressing implementation without tests was ok in r274378?

I do understand it&apos;s better to not load some content if the alternative is a hang in other content.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1764259</commentid>
    <comment_count>13</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2021-05-27 02:18:53 -0700</bug_when>
    <thetext>Committed r278155 (238199@main): &lt;https://commits.webkit.org/238199@main&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 429751.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>429286</attachid>
            <date>2021-05-21 05:28:44 -0700</date>
            <delta_ts>2021-05-25 05:13:39 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-226078-20210521152843.patch</filename>
            <type>text/plain</type>
            <size>14208</size>
            <attacher name="Kimmo Kinnunen">kkinnunen</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjc3ODUzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IDQxNzg0ZWQzNTY3ZTEwOTU2
ZTYyYzY5ZTg0MDM0YWVmMGVkNDk1YzMuLmIzZWU5ZDNiODNmZWYzNzIxN2YwZThlNGI4YjNkZTg0
YmMwNjE0ZTkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsNjUgQEAKKzIwMjEtMDUtMjEgIEtpbW1vIEtp
bm51bmVuICA8a2tpbm51bmVuQGFwcGxlLmNvbT4KKworICAgICAgICBNYWNPUyBXZWJNIEZvcm1h
dCBSZWFkZXIgcmV0dXJucyBlbmFibGVkIGZvciB0cmFja3MgdGhhdCBkbyBub3QgaGF2ZSBzYW1w
bGVzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjYw
NzgKKyAgICAgICAgPHJkYXI6Ly83NDA0ODA3Mj4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JP
RFkgKE9PUFMhKS4KKworICAgICAgICBJZiBXZWJNIGhhcyB0cmFjayBlbmFibGUvZGlzYWJsZSBz
dGF0ZSBkZWZpbmVkLCB1c2UgaXQgd2hlbiBDb3JlTWVkaWEgYXNrcy4KKyAgICAgICAgSWYgbm90
LCB3YWl0IHVudGlsIHRyYWNrIHJlY2VpdmVzIGFueSBzYW1wbGVzIG9yIHRyYWNrIHBhcnNpbmcg
ZmluaXNoZXMuCisgICAgICAgIFJldHVybiAiZW5hYmxlZCIgZm9yIGFueSBzYW1wbGVzIGNhc2Ug
YW5kICJkaXNhYmxlZCIgaWYgdGhlcmUgaXMgbm8gc2FtcGxlcy4KKyAgICAgICAgCisgICAgICAg
IEZpeGVzIG1hbnkgV2ViR0wgdGVzdHMgdGhhdCBsb2FkIHJlZC1ncmVlbi53ZWJtdnA4LndlYm0u
IFRoZSB2aWRlbyB3b3VsZCBoYXZlCisgICAgICAgIGF1ZGlvIHRyYWNrIG9mIGxlbmdodCAwLiBJ
ZiB0aGUgdHJhY2sgcmVhZGVyIHNheXMgdGhhdCB0aGUgYXVkaW8gdHJhY2sgaXMKKyAgICAgICAg
ZW5hYmxlZCwgdmlkZW8gbG9hZGluZyB3aWxsIGVuZCB1cCB3aXRoIG5ldHdvcmsgZXJyb3IuCisK
KyAgICAgICAgUGFzc2VzIHRlc3RzIHRoYXQgYXJlIGN1cnJlbnRseSBza2lwcGVkIGZvciBXZWJN
IGJ1aWxkIC1lbmFibGVkIGJ1aWxkczoKKyAgICAgICAgd2ViZ2wvMS4wLjMvY29uZm9ybWFuY2Uv
ZXh0ZW5zaW9ucy9vZXMtdGV4dHVyZS1mbG9hdC13aXRoLXZpZGVvLmh0bWwKKyAgICAgICAgd2Vi
Z2wvMS4wLjMvY29uZm9ybWFuY2UvZXh0ZW5zaW9ucy9vZXMtdGV4dHVyZS1oYWxmLWZsb2F0LXdp
dGgtdmlkZW8uaHRtbAorICAgICAgICB3ZWJnbC8xLjAuMy9jb25mb3JtYW5jZS90ZXh0dXJlcy90
ZXgtaW1hZ2UtYW5kLXN1Yi1pbWFnZS0yZC13aXRoLXZpZGVvLXJnYjU2NS5odG1sCisgICAgICAg
IHdlYmdsLzEuMC4zL2NvbmZvcm1hbmNlL3RleHR1cmVzL3RleC1pbWFnZS1hbmQtc3ViLWltYWdl
LTJkLXdpdGgtdmlkZW8tcmdiYTQ0NDQuaHRtbAorICAgICAgICB3ZWJnbC8xLjAuMy9jb25mb3Jt
YW5jZS90ZXh0dXJlcy90ZXgtaW1hZ2UtYW5kLXN1Yi1pbWFnZS0yZC13aXRoLXZpZGVvLXJnYmE1
NTUxLmh0bWwKKyAgICAgICAgd2ViZ2wvMS4wLjMvY29uZm9ybWFuY2UvdGV4dHVyZXMvdGV4LWlt
YWdlLWFuZC1zdWItaW1hZ2UtMmQtd2l0aC12aWRlby5odG1sCisgICAgICAgIHdlYmdsLzEuMC4z
L2NvbmZvcm1hbmNlL3RleHR1cmVzL3RleHR1cmUtdXBsb2FkLXNpemUuaHRtbAorICAgICAgICB3
ZWJnbC8yLjAuMC9jb25mb3JtYW5jZS9leHRlbnNpb25zL29lcy10ZXh0dXJlLWZsb2F0LXdpdGgt
dmlkZW8uaHRtbAorICAgICAgICB3ZWJnbC8yLjAuMC9jb25mb3JtYW5jZS9leHRlbnNpb25zL29l
cy10ZXh0dXJlLWhhbGYtZmxvYXQtd2l0aC12aWRlby5odG1sCisgICAgICAgIHdlYmdsLzIuMC4w
L2NvbmZvcm1hbmNlL3RleHR1cmVzL2ltYWdlX2JpdG1hcF9mcm9tX3ZpZGVvL3RleC0yZC1yZ2It
cmdiLXVuc2lnbmVkX2J5dGUuaHRtbAorICAgICAgICB3ZWJnbC8yLjAuMC9jb25mb3JtYW5jZS90
ZXh0dXJlcy9pbWFnZV9iaXRtYXBfZnJvbV92aWRlby90ZXgtMmQtcmdiLXJnYi11bnNpZ25lZF9z
aG9ydF81XzZfNS5odG1sCisgICAgICAgIHdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlL3RleHR1cmVz
L2ltYWdlX2JpdG1hcF9mcm9tX3ZpZGVvL3RleC0yZC1yZ2JhLXJnYmEtdW5zaWduZWRfYnl0ZS5o
dG1sCisgICAgICAgIHdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlL3RleHR1cmVzL2ltYWdlX2JpdG1h
cF9mcm9tX3ZpZGVvL3RleC0yZC1yZ2JhLXJnYmEtdW5zaWduZWRfc2hvcnRfNF80XzRfNC5odG1s
CisgICAgICAgIHdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlL3RleHR1cmVzL2ltYWdlX2JpdG1hcF9m
cm9tX3ZpZGVvL3RleC0yZC1yZ2JhLXJnYmEtdW5zaWduZWRfc2hvcnRfNV81XzVfMS5odG1sCisg
ICAgICAgIHdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlL3RleHR1cmVzL21pc2MvdGV4dHVyZS11cGxv
YWQtc2l6ZS5odG1sCisgICAgICAgIHdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlL3RleHR1cmVzL3Zp
ZGVvL3RleC0yZC1yZ2ItcmdiLXVuc2lnbmVkX2J5dGUuaHRtbAorICAgICAgICB3ZWJnbC8yLjAu
MC9jb25mb3JtYW5jZS90ZXh0dXJlcy92aWRlby90ZXgtMmQtcmdiLXJnYi11bnNpZ25lZF9zaG9y
dF81XzZfNS5odG1sCisgICAgICAgIHdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlL3RleHR1cmVzL3Zp
ZGVvL3RleC0yZC1yZ2JhLXJnYmEtdW5zaWduZWRfYnl0ZS5odG1sCisgICAgICAgIHdlYmdsLzIu
MC4wL2NvbmZvcm1hbmNlL3RleHR1cmVzL3ZpZGVvL3RleC0yZC1yZ2JhLXJnYmEtdW5zaWduZWRf
c2hvcnRfNF80XzRfNC5odG1sCisgICAgICAgIHdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlL3RleHR1
cmVzL3ZpZGVvL3RleC0yZC1yZ2JhLXJnYmEtdW5zaWduZWRfc2hvcnRfNV81XzVfMS5odG1sCisg
ICAgICAgIHdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlMi90ZXh0dXJlcy9pbWFnZV9iaXRtYXBfZnJv
bV92aWRlby90ZXgtMmQtcjExZl9nMTFmX2IxMGYtcmdiLWZsb2F0Lmh0bWwKKyAgICAgICAgd2Vi
Z2wvMi4wLjAvY29uZm9ybWFuY2UyL3RleHR1cmVzL2ltYWdlX2JpdG1hcF9mcm9tX3ZpZGVvL3Rl
eC0yZC1yMTFmX2cxMWZfYjEwZi1yZ2ItaGFsZl9mbG9hdC5odG1sCisgICAgICAgIHdlYmdsLzIu
MC4wL2NvbmZvcm1hbmNlMi90ZXh0dXJlcy9pbWFnZV9iaXRtYXBfZnJvbV92aWRlby90ZXgtMmQt
cjExZl9nMTFmX2IxMGYtcmdiLXVuc2lnbmVkX2ludF8xMGZfMTFmXzExZl9yZXYuaHRtbAorICAg
ICAgICB3ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIvdGV4dHVyZXMvaW1hZ2VfYml0bWFwX2Zyb21f
dmlkZW8vdGV4LTJkLXIxNmYtcmVkLWZsb2F0Lmh0bWwKKyAgICAgICAgd2ViZ2wvMi4wLjAvY29u
Zm9ybWFuY2UyL3RleHR1cmVzL2ltYWdlX2JpdG1hcF9mcm9tX3ZpZGVvL3RleC0yZC1yOC1yZWQt
dW5zaWduZWRfYnl0ZS5odG1sCisgICAgICAgIHdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlMi90ZXh0
dXJlcy9pbWFnZV9iaXRtYXBfZnJvbV92aWRlby90ZXgtMmQtcjh1aS1yZWRfaW50ZWdlci11bnNp
Z25lZF9ieXRlLmh0bWwKKyAgICAgICAgd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UyL3RleHR1cmVz
L21pc2MvdGV4LWltYWdlLXdpdGgtYmFkLWFyZ3MtZnJvbS1kb20tZWxlbWVudHMuaHRtbAorICAg
ICAgICB3ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIvdGV4dHVyZXMvdmlkZW8vdGV4LTJkLXIxMWZf
ZzExZl9iMTBmLXJnYi1mbG9hdC5odG1sCisgICAgICAgIHdlYmdsLzIuMC4wL2NvbmZvcm1hbmNl
Mi90ZXh0dXJlcy92aWRlby90ZXgtMmQtcjExZl9nMTFmX2IxMGYtcmdiLWhhbGZfZmxvYXQuaHRt
bAorICAgICAgICB3ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIvdGV4dHVyZXMvdmlkZW8vdGV4LTJk
LXIxMWZfZzExZl9iMTBmLXJnYi11bnNpZ25lZF9pbnRfMTBmXzExZl8xMWZfcmV2Lmh0bWwKKyAg
ICAgICAgd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UyL3RleHR1cmVzL3ZpZGVvL3RleC0yZC1yMTZm
LXJlZC1mbG9hdC5odG1sCisgICAgICAgIHdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlMi90ZXh0dXJl
cy92aWRlby90ZXgtMmQtcjgtcmVkLXVuc2lnbmVkX2J5dGUuaHRtbAorICAgICAgICB3ZWJnbC8y
LjAuMC9jb25mb3JtYW5jZTIvdGV4dHVyZXMvdmlkZW8vdGV4LTJkLXI4dWktcmVkX2ludGVnZXIt
dW5zaWduZWRfYnl0ZS5odG1sCisKKyAgICAgICAgKiBTaGFyZWQvbWFjL01lZGlhRm9ybWF0UmVh
ZGVyL01lZGlhVHJhY2tSZWFkZXIuY3BwOgorICAgICAgICAoV2ViS2l0OjpNZWRpYVRyYWNrUmVh
ZGVyOjpjcmVhdGUpOgorICAgICAgICAoV2ViS2l0OjpNZWRpYVRyYWNrUmVhZGVyOjpNZWRpYVRy
YWNrUmVhZGVyKToKKyAgICAgICAgKFdlYktpdDo6TWVkaWFUcmFja1JlYWRlcjo6Z3JlYXRlc3RQ
cmVzZW50YXRpb25UaW1lIGNvbnN0KToKKyAgICAgICAgKFdlYktpdDo6TWVkaWFUcmFja1JlYWRl
cjo6YWRkU2FtcGxlKToKKyAgICAgICAgKFdlYktpdDo6TWVkaWFUcmFja1JlYWRlcjo6d2FpdEZv
clNhbXBsZSBjb25zdCk6CisgICAgICAgIChXZWJLaXQ6Ok1lZGlhVHJhY2tSZWFkZXI6OmZpbmlz
aFBhcnNpbmcpOgorICAgICAgICAoV2ViS2l0OjpNZWRpYVRyYWNrUmVhZGVyOjpjb3B5UHJvcGVy
dHkpOgorICAgICAgICAoV2ViS2l0OjpNZWRpYVRyYWNrUmVhZGVyOjplbnN1cmVTYW1wbGVTdG9y
YWdlKToKKyAgICAgICAgKiBTaGFyZWQvbWFjL01lZGlhRm9ybWF0UmVhZGVyL01lZGlhVHJhY2tS
ZWFkZXIuaDoKKwogMjAyMS0wNS0yMSAgWW91ZW5uIEZhYmxldCAgPHlvdWVubkBhcHBsZS5jb20+
CiAKICAgICAgICAgSW1wbGVtZW50IGEgcmVtb3RlIEludGVybmFsIFVuaXQgaW4gR1BVUHJvY2Vz
cyBmb3IgYXVkaW8gTWVkaWFTdHJlYW1UcmFjayByZW5kZXJpbmcKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJLaXQvU2hhcmVkL21hYy9NZWRpYUZvcm1hdFJlYWRlci9NZWRpYVRyYWNrUmVhZGVyLmNw
cCBiL1NvdXJjZS9XZWJLaXQvU2hhcmVkL21hYy9NZWRpYUZvcm1hdFJlYWRlci9NZWRpYVRyYWNr
UmVhZGVyLmNwcAppbmRleCA5YWUzZDA1MDJhZGJkZWNmZWRiMmU2Y2JiZjdhZDYyZWUzZmI4ZTM0
Li5jZTdiNWIwMGVmNzEzNzdmMzE2MmRjODU1ODFlMzQ2NThiNGFjM2VkIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViS2l0L1NoYXJlZC9tYWMvTWVkaWFGb3JtYXRSZWFkZXIvTWVkaWFUcmFja1JlYWRl
ci5jcHAKKysrIGIvU291cmNlL1dlYktpdC9TaGFyZWQvbWFjL01lZGlhRm9ybWF0UmVhZGVyL01l
ZGlhVHJhY2tSZWFkZXIuY3BwCkBAIC01OSw5ICs1OSw5IEBAIENvcmVNZWRpYVdyYXBwZWQ8TWVk
aWFUcmFja1JlYWRlcj4qIE1lZGlhVHJhY2tSZWFkZXI6OnVud3JhcChDTUJhc2VPYmplY3RSZWYg
b2JqCiAgICAgcmV0dXJuIHVud3JhcChjaGVja2VkX2NmX2Nhc3Q8V3JhcHBlclJlZj4ob2JqZWN0
KSk7CiB9CiAKLVJlZlB0cjxNZWRpYVRyYWNrUmVhZGVyPiBNZWRpYVRyYWNrUmVhZGVyOjpjcmVh
dGUoQWxsb2NhdG9yJiYgYWxsb2NhdG9yLCBjb25zdCBNZWRpYUZvcm1hdFJlYWRlciYgZm9ybWF0
UmVhZGVyLCBDTU1lZGlhVHlwZSBtZWRpYVR5cGUsIHVpbnQ2NF90IHRyYWNrSUQsIE9wdGlvbmFs
PGJvb2w+IGVuYWJsZWQpCitSZWZQdHI8TWVkaWFUcmFja1JlYWRlcj4gTWVkaWFUcmFja1JlYWRl
cjo6Y3JlYXRlKEFsbG9jYXRvciYmIGFsbG9jYXRvciwgY29uc3QgTWVkaWFGb3JtYXRSZWFkZXIm
IGZvcm1hdFJlYWRlciwgQ01NZWRpYVR5cGUgbWVkaWFUeXBlLCB1aW50NjRfdCB0cmFja0lELCBP
cHRpb25hbDxib29sPiBpc0RlZmF1bHRFbmFibGVkKQogewotICAgIHJldHVybiBhZG9wdFJlZihu
ZXcgKGFsbG9jYXRvcikgTWVkaWFUcmFja1JlYWRlcihXVEZNb3ZlKGFsbG9jYXRvciksIGZvcm1h
dFJlYWRlciwgbWVkaWFUeXBlLCB0cmFja0lELCBlbmFibGVkKSk7CisgICAgcmV0dXJuIGFkb3B0
UmVmKG5ldyAoYWxsb2NhdG9yKSBNZWRpYVRyYWNrUmVhZGVyKFdURk1vdmUoYWxsb2NhdG9yKSwg
Zm9ybWF0UmVhZGVyLCBtZWRpYVR5cGUsIHRyYWNrSUQsIGlzRGVmYXVsdEVuYWJsZWQpKTsKIH0K
IAogV29ya1F1ZXVlJiBNZWRpYVRyYWNrUmVhZGVyOjpzdG9yYWdlUXVldWUoKQpAQCAtNzAsMjQg
KzcwLDIzIEBAIFdvcmtRdWV1ZSYgTWVkaWFUcmFja1JlYWRlcjo6c3RvcmFnZVF1ZXVlKCkKICAg
ICByZXR1cm4gcXVldWU7CiB9CiAKLU1lZGlhVHJhY2tSZWFkZXI6Ok1lZGlhVHJhY2tSZWFkZXIo
QWxsb2NhdG9yJiYgYWxsb2NhdG9yLCBjb25zdCBNZWRpYUZvcm1hdFJlYWRlciYgZm9ybWF0UmVh
ZGVyLCBDTU1lZGlhVHlwZSBtZWRpYVR5cGUsIHVpbnQ2NF90IHRyYWNrSUQsIE9wdGlvbmFsPGJv
b2w+IGVuYWJsZWQpCitNZWRpYVRyYWNrUmVhZGVyOjpNZWRpYVRyYWNrUmVhZGVyKEFsbG9jYXRv
ciYmIGFsbG9jYXRvciwgY29uc3QgTWVkaWFGb3JtYXRSZWFkZXImIGZvcm1hdFJlYWRlciwgQ01N
ZWRpYVR5cGUgbWVkaWFUeXBlLCB1aW50NjRfdCB0cmFja0lELCBPcHRpb25hbDxib29sPiBpc0Rl
ZmF1bHRFbmFibGVkKQogICAgIDogQ29yZU1lZGlhV3JhcHBlZChXVEZNb3ZlKGFsbG9jYXRvcikp
CiAgICAgLCBtX3RyYWNrSUQodHJhY2tJRCkKICAgICAsIG1fbWVkaWFUeXBlKG1lZGlhVHlwZSkK
ICAgICAsIG1fZHVyYXRpb24oZm9ybWF0UmVhZGVyLmR1cmF0aW9uKCkpCisgICAgLCBtX2lzRGVm
YXVsdEVuYWJsZWQoaXNEZWZhdWx0RW5hYmxlZCkKICAgICAsIG1fbG9nZ2VyKGZvcm1hdFJlYWRl
ci5sb2dnZXIoKSkKICAgICAsIG1fbG9nSWRlbnRpZmllcihmb3JtYXRSZWFkZXIubmV4dFRyYWNr
UmVhZGVyTG9nSWRlbnRpZmllcih0cmFja0lEKSkKIHsKICAgICBBU1NFUlQoIWlzTWFpblJ1bkxv
b3AoKSk7Ci0KICAgICBBTFdBWVNfTE9HKExPR0lERU5USUZJRVIsIG1lZGlhVHlwZVN0cmluZygp
LCAiICIsIHRyYWNrSUQpOwotICAgIGlmIChlbmFibGVkKQotICAgICAgICBtX2lzRW5hYmxlZCA9
IGVuYWJsZWQudmFsdWUoKSA/IEVuYWJsZWQ6OlRydWUgOiBFbmFibGVkOjpGYWxzZTsKIH0KIAog
TWVkaWFUaW1lIE1lZGlhVHJhY2tSZWFkZXI6OmdyZWF0ZXN0UHJlc2VudGF0aW9uVGltZSgpIGNv
bnN0CiB7CiAgICAgTG9ja2VyIGxvY2tlciB7IG1fc2FtcGxlU3RvcmFnZUxvY2sgfTsKKyAgICBB
U1NFUlQobV9zYW1wbGVTdG9yYWdlKTsKICAgICBhdXRvJiBzYW1wbGVNYXAgPSBtX3NhbXBsZVN0
b3JhZ2UtPnNhbXBsZU1hcDsKICAgICBpZiAoc2FtcGxlTWFwLmVtcHR5KCkpCiAgICAgICAgIHJl
dHVybiBNZWRpYVRpbWU6OmludmFsaWRUaW1lKCk7CkBAIC05OSwxMCArOTgsNiBAQCBNZWRpYVRp
bWUgTWVkaWFUcmFja1JlYWRlcjo6Z3JlYXRlc3RQcmVzZW50YXRpb25UaW1lKCkgY29uc3QKIHZv
aWQgTWVkaWFUcmFja1JlYWRlcjo6YWRkU2FtcGxlKFJlZjxNZWRpYVNhbXBsZT4mJiBzYW1wbGUs
IE1UUGx1Z2luQnl0ZVNvdXJjZVJlZiBieXRlU291cmNlKQogewogICAgIEFTU0VSVCghaXNNYWlu
UnVuTG9vcCgpKTsKLSAgICBMb2NrZXIgbG9ja2VyIHsgbV9zYW1wbGVTdG9yYWdlTG9jayB9Owot
ICAgIGlmICghbV9zYW1wbGVTdG9yYWdlKQotICAgICAgICBtX3NhbXBsZVN0b3JhZ2UgPSBtYWtl
VW5pcXVlPFNhbXBsZVN0b3JhZ2U+KCk7Ci0KICAgICBBU1NFUlQoIXNhbXBsZS0+aXNEaXZpc2Fi
bGUoKSAmJiBzYW1wbGUtPmJ5dGVSYW5nZSgpKTsKICAgICBhdXRvIHNhbXBsZVRvQWRkID0gTWVk
aWFTYW1wbGVCeXRlUmFuZ2U6OmNyZWF0ZShzYW1wbGUuZ2V0KCksIGJ5dGVTb3VyY2UsIG1fdHJh
Y2tJRCk7CiAKQEAgLTExMSwxOCArMTA2LDE3IEBAIHZvaWQgTWVkaWFUcmFja1JlYWRlcjo6YWRk
U2FtcGxlKFJlZjxNZWRpYVNhbXBsZT4mJiBzYW1wbGUsIE1UUGx1Z2luQnl0ZVNvdXJjZVJlCiAg
ICAgLy8gaW4gdGhlc2UgY2FzZXMsIGNvcnJ1cHRpbmcgYWxsIHN1YnNlcXVlbnQgbm9uLWtleSBm
cmFtZXMuIEZpbmQgYSB3YXkgdG8gc3RvcmUgZnJhbWVzIHdpdGgKICAgICAvLyBkdXBsaWNhdGUg
cHJlc2VudGF0aW9uIHRpbWVzLgogCi0gICAgbV9zYW1wbGVTdG9yYWdlLT5zYW1wbGVNYXAuYWRk
U2FtcGxlKHNhbXBsZVRvQWRkLmdldCgpKTsKKyAgICBMb2NrZXIgbG9ja2VyIHsgbV9zYW1wbGVT
dG9yYWdlTG9jayB9OworICAgIGVuc3VyZVNhbXBsZVN0b3JhZ2UoKS5zYW1wbGVNYXAuYWRkU2Ft
cGxlKHNhbXBsZVRvQWRkLmdldCgpKTsKICAgICBtX3NhbXBsZVN0b3JhZ2VDb25kaXRpb24ubm90
aWZ5QWxsKCk7CiB9CiAKIHZvaWQgTWVkaWFUcmFja1JlYWRlcjo6d2FpdEZvclNhbXBsZShGdW5j
dGlvbjxib29sKFNhbXBsZU1hcCYsIGJvb2wpPiYmIHByZWRpY2F0ZSkgY29uc3QKIHsKICAgICBM
b2NrZXIgbG9ja2VyIHsgbV9zYW1wbGVTdG9yYWdlTG9jayB9OwotICAgIGlmICghbV9zYW1wbGVT
dG9yYWdlKQotICAgICAgICBtX3NhbXBsZVN0b3JhZ2UgPSBtYWtlVW5pcXVlPFNhbXBsZVN0b3Jh
Z2U+KCk7CiAgICAgbV9zYW1wbGVTdG9yYWdlQ29uZGl0aW9uLndhaXQobV9zYW1wbGVTdG9yYWdl
TG9jaywgW3ByZWRpY2F0ZSA9IFdURk1vdmUocHJlZGljYXRlKSwgdGhpc10gewogICAgICAgICBh
c3NlcnRJc0hlbGQobV9zYW1wbGVTdG9yYWdlTG9jayk7Ci0gICAgICAgIHJldHVybiBwcmVkaWNh
dGUobV9zYW1wbGVTdG9yYWdlLT5zYW1wbGVNYXAsIG1fc2FtcGxlU3RvcmFnZS0+aGFzQWxsU2Ft
cGxlcyk7CisgICAgICAgIHJldHVybiBtX3NhbXBsZVN0b3JhZ2UgJiYgcHJlZGljYXRlKG1fc2Ft
cGxlU3RvcmFnZS0+c2FtcGxlTWFwLCBtX3NhbXBsZVN0b3JhZ2UtPmhhc0FsbFNhbXBsZXMpOwog
ICAgIH0pOwogfQogCkBAIC0xMzIsMTQgKzEyNiw3IEBAIHZvaWQgTWVkaWFUcmFja1JlYWRlcjo6
ZmluaXNoUGFyc2luZygpCiAKICAgICBBTFdBWVNfTE9HKExPR0lERU5USUZJRVIpOwogICAgIExv
Y2tlciBsb2NrZXIgeyBtX3NhbXBsZVN0b3JhZ2VMb2NrIH07Ci0gICAgaWYgKCFtX3NhbXBsZVN0
b3JhZ2UpCi0gICAgICAgIG1fc2FtcGxlU3RvcmFnZSA9IG1ha2VVbmlxdWU8U2FtcGxlU3RvcmFn
ZT4oKTsKLSAgICBtX3NhbXBsZVN0b3JhZ2UtPmhhc0FsbFNhbXBsZXMgPSB0cnVlOwotICAgIGlm
IChtX2lzRW5hYmxlZCA9PSBFbmFibGVkOjpVbmtub3duKSB7Ci0gICAgICAgIG1faXNFbmFibGVk
ID0gbV9zYW1wbGVTdG9yYWdlLT5zYW1wbGVNYXAuZW1wdHkoKSA/IEVuYWJsZWQ6OkZhbHNlIDog
RW5hYmxlZDo6VHJ1ZTsKLSAgICAgICAgaWYgKG1faXNFbmFibGVkID09IEVuYWJsZWQ6OkZhbHNl
KQotICAgICAgICAgICAgRVJST1JfTE9HKExPR0lERU5USUZJRVIsICJpZ25vcmluZyBlbXB0eSAi
LCBtZWRpYVR5cGVTdHJpbmcoKSwgIiB0cmFjayIpOwotICAgIH0KKyAgICBlbnN1cmVTYW1wbGVT
dG9yYWdlKCkuaGFzQWxsU2FtcGxlcyA9IHRydWU7CiAgICAgbV9zYW1wbGVTdG9yYWdlQ29uZGl0
aW9uLm5vdGlmeUFsbCgpOwogfQogCkBAIC0xNTksMTEgKzE0Niw4IEBAIGNvbnN0IGNoYXIqIE1l
ZGlhVHJhY2tSZWFkZXI6Om1lZGlhVHlwZVN0cmluZygpIGNvbnN0CiAKIE9TU3RhdHVzIE1lZGlh
VHJhY2tSZWFkZXI6OmNvcHlQcm9wZXJ0eShDRlN0cmluZ1JlZiBrZXksIENGQWxsb2NhdG9yUmVm
IGFsbG9jYXRvciwgdm9pZCogY29waWVkVmFsdWUpCiB7Ci0gICAgLy8gRG9uJ3QgYmxvY2sgd2Fp
dGluZyBmb3IgbWVkaWEgdG8gYW5zd2VyIHJlcXVlc3RzIGZvciB0aGUgZW5hYmxlZCBzdGF0ZS4K
LSAgICBpZiAoQ0ZFcXVhbChrZXksIFBBTDo6Z2V0X01lZGlhVG9vbGJveF9rTVRQbHVnaW5UcmFj
a1JlYWRlclByb3BlcnR5X0VuYWJsZWQoKSkpIHsKLSAgICAgICAgLy8gQXNzdW1lIHRoYXQgYSB0
cmFjayB3aXRob3V0IGFuIGV4cGxpY2l0IGVuYWJsZWQgc3RhdGUgaXMgZW5hYmxlZCBieSBkZWZh
dWx0LAotICAgICAgICAvLyB0byBhdm9pZCBibG9ja2luZyB3YWl0aW5nIGZvciBtZWRpYSBkYXRh
IHRvIGJlIGFwcGVuZGVkLgotICAgICAgICAqcmVpbnRlcnByZXRfY2FzdDxDRkJvb2xlYW5SZWYq
Pihjb3BpZWRWYWx1ZSkgPSBtX2lzRW5hYmxlZCA9PSBFbmFibGVkOjpGYWxzZSA/IGtDRkJvb2xl
YW5GYWxzZSA6IGtDRkJvb2xlYW5UcnVlOworICAgIGlmIChDRkVxdWFsKGtleSwgUEFMOjpnZXRf
TWVkaWFUb29sYm94X2tNVFBsdWdpblRyYWNrUmVhZGVyUHJvcGVydHlfRW5hYmxlZCgpKSAmJiBt
X2lzRGVmYXVsdEVuYWJsZWQuaGFzVmFsdWUoKSkgeworICAgICAgICAqcmVpbnRlcnByZXRfY2Fz
dDxDRkJvb2xlYW5SZWYqPihjb3BpZWRWYWx1ZSkgPSAqbV9pc0RlZmF1bHRFbmFibGVkID8ga0NG
Qm9vbGVhblRydWUgOiBrQ0ZCb29sZWFuRmFsc2U7CiAgICAgICAgIHJldHVybiBub0VycjsKICAg
ICB9CiAKQEAgLTE3NSw2ICsxNTksMTMgQEAgT1NTdGF0dXMgTWVkaWFUcmFja1JlYWRlcjo6Y29w
eVByb3BlcnR5KENGU3RyaW5nUmVmIGtleSwgQ0ZBbGxvY2F0b3JSZWYgYWxsb2NhdG8KIAogICAg
IGF1dG8mIHNhbXBsZU1hcCA9IG1fc2FtcGxlU3RvcmFnZS0+c2FtcGxlTWFwOwogCisgICAgaWYg
KENGRXF1YWwoa2V5LCBQQUw6OmdldF9NZWRpYVRvb2xib3hfa01UUGx1Z2luVHJhY2tSZWFkZXJQ
cm9wZXJ0eV9FbmFibGVkKCkpKSB7CisgICAgICAgIGJvb2wgaXNFbmFibGVkID0gIXNhbXBsZU1h
cC5lbXB0eSgpOworICAgICAgICBFUlJPUl9MT0dfSUYoIWlzRW5hYmxlZCwgTE9HSURFTlRJRklF
UiwgImlnbm9yaW5nIGVtcHR5ICIsIG1lZGlhVHlwZVN0cmluZygpLCAiIHRyYWNrIik7CisgICAg
ICAgICpyZWludGVycHJldF9jYXN0PENGQm9vbGVhblJlZio+KGNvcGllZFZhbHVlKSA9IGlzRW5h
YmxlZCA/IGtDRkJvb2xlYW5UcnVlIDoga0NGQm9vbGVhbkZhbHNlOworICAgICAgICByZXR1cm4g
bm9FcnI7CisgICAgfQorCiAgICAgaWYgKHNhbXBsZU1hcC5lbXB0eSgpKSB7CiAgICAgICAgIEVS
Uk9SX0xPRyhMT0dJREVOVElGSUVSLCAic2FtcGxlIHRhYmxlIGVtcHR5IHdoZW4gYXNrZWQgZm9y
ICIsIFN0cmluZyhrZXkpKTsKICAgICAgICAgcmV0dXJuIGtDTUJhc2VPYmplY3RFcnJvcl9WYWx1
ZU5vdEF2YWlsYWJsZTsKQEAgLTI0NSw2ICsyMzYsMTMgQEAgY29uc3Qgdm9pZCogTWVkaWFUcmFj
a1JlYWRlcjo6bmV4dFNhbXBsZUN1cnNvckxvZ0lkZW50aWZpZXIodWludDY0X3QgY3Vyc29ySUQp
IGMKICAgICByZXR1cm4gTG9nZ2VySGVscGVyOjpjaGlsZExvZ0lkZW50aWZpZXIobV9sb2dJZGVu
dGlmaWVyLCB0cmFja0FuZEN1cnNvcklEKTsKIH0KIAorTWVkaWFUcmFja1JlYWRlcjo6U2FtcGxl
U3RvcmFnZSYgTWVkaWFUcmFja1JlYWRlcjo6ZW5zdXJlU2FtcGxlU3RvcmFnZSgpCit7CisgICAg
aWYgKCFtX3NhbXBsZVN0b3JhZ2UpCisgICAgICAgIG1fc2FtcGxlU3RvcmFnZSA9IG1ha2VVbmlx
dWU8U2FtcGxlU3RvcmFnZT4oKTsKKyAgICByZXR1cm4gKm1fc2FtcGxlU3RvcmFnZTsKK30KKwog
fSAvLyBuYW1lc3BhY2UgV2ViS2l0CiAKICNlbmRpZiAvLyBFTkFCTEUoV0VCTV9GT1JNQVRfUkVB
REVSKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9TaGFyZWQvbWFjL01lZGlhRm9ybWF0UmVh
ZGVyL01lZGlhVHJhY2tSZWFkZXIuaCBiL1NvdXJjZS9XZWJLaXQvU2hhcmVkL21hYy9NZWRpYUZv
cm1hdFJlYWRlci9NZWRpYVRyYWNrUmVhZGVyLmgKaW5kZXggYjgzNGI5MDkxZjAzYjdlZTZmY2Y1
YTczNmFhYjMwNGIyMTc2ZDZlNC4uNWY5MDM4NmViZWU1ODVmOGJjZjE2MTQ0Mzc4MzBiMDE5MTU3
ZWQ0NSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9TaGFyZWQvbWFjL01lZGlhRm9ybWF0UmVh
ZGVyL01lZGlhVHJhY2tSZWFkZXIuaAorKysgYi9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9tYWMvTWVk
aWFGb3JtYXRSZWFkZXIvTWVkaWFUcmFja1JlYWRlci5oCkBAIC01NywxNCArNTcsMTMgQEAgcHVi
bGljOgogICAgIHN0YXRpYyBDb3JlTWVkaWFXcmFwcGVkPE1lZGlhVHJhY2tSZWFkZXI+KiB1bndy
YXAoQ01CYXNlT2JqZWN0UmVmKTsKICAgICBzdGF0aWMgV1RGOjpXb3JrUXVldWUmIHN0b3JhZ2VR
dWV1ZSgpOwogCi0gICAgc3RhdGljIFJlZlB0cjxNZWRpYVRyYWNrUmVhZGVyPiBjcmVhdGUoQWxs
b2NhdG9yJiYsIGNvbnN0IE1lZGlhRm9ybWF0UmVhZGVyJiwgQ01NZWRpYVR5cGUsIHVpbnQ2NF90
LCBPcHRpb25hbDxib29sPik7CisgICAgc3RhdGljIFJlZlB0cjxNZWRpYVRyYWNrUmVhZGVyPiBj
cmVhdGUoQWxsb2NhdG9yJiYsIGNvbnN0IE1lZGlhRm9ybWF0UmVhZGVyJiwgQ01NZWRpYVR5cGUs
IHVpbnQ2NF90LCBPcHRpb25hbDxib29sPiBpc0RlZmF1bHRFbmFibGVkKTsKIAogICAgIHVpbnQ2
NF90IHRyYWNrSUQoKSBjb25zdCB7IHJldHVybiBtX3RyYWNrSUQ7IH0KICAgICBDTU1lZGlhVHlw
ZSBtZWRpYVR5cGUoKSBjb25zdCB7IHJldHVybiBtX21lZGlhVHlwZTsgfQogICAgIGNvbnN0IE1l
ZGlhVGltZSYgZHVyYXRpb24oKSBjb25zdCB7IHJldHVybiBtX2R1cmF0aW9uOyB9CiAgICAgTWVk
aWFUaW1lIGdyZWF0ZXN0UHJlc2VudGF0aW9uVGltZSgpIGNvbnN0OwogCi0gICAgdm9pZCBzZXRF
bmFibGVkKGJvb2wgZW5hYmxlZCkgeyBtX2lzRW5hYmxlZCA9IGVuYWJsZWQgPyBFbmFibGVkOjpU
cnVlIDogRW5hYmxlZDo6RmFsc2U7IH0KICAgICB2b2lkIGFkZFNhbXBsZShSZWY8V2ViQ29yZTo6
TWVkaWFTYW1wbGU+JiYsIE1UUGx1Z2luQnl0ZVNvdXJjZVJlZik7CiAgICAgdm9pZCB3YWl0Rm9y
U2FtcGxlKEZ1bmN0aW9uPGJvb2woV2ViQ29yZTo6U2FtcGxlTWFwJiwgYm9vbCk+JiYpIGNvbnN0
OwogICAgIHZvaWQgZmluaXNoUGFyc2luZygpOwpAQCAtNzUsNyArNzQsNyBAQCBwdWJsaWM6CiBw
cml2YXRlOgogICAgIHVzaW5nIENvcmVNZWRpYVdyYXBwZWQ8TWVkaWFUcmFja1JlYWRlcj46OnVu
d3JhcDsKIAotICAgIE1lZGlhVHJhY2tSZWFkZXIoQWxsb2NhdG9yJiYsIGNvbnN0IE1lZGlhRm9y
bWF0UmVhZGVyJiwgQ01NZWRpYVR5cGUsIHVpbnQ2NF90LCBPcHRpb25hbDxib29sPik7CisgICAg
TWVkaWFUcmFja1JlYWRlcihBbGxvY2F0b3ImJiwgY29uc3QgTWVkaWFGb3JtYXRSZWFkZXImLCBD
TU1lZGlhVHlwZSwgdWludDY0X3QsIE9wdGlvbmFsPGJvb2w+IGlzRGVmYXVsdEVuYWJsZWQpOwog
CiAgICAgLy8gQ01CYXNlQ2xhc3MKICAgICBTdHJpbmcgZGVidWdEZXNjcmlwdGlvbigpIGNvbnN0
IGZpbmFsIHsgcmV0dXJuICJXZWJLaXQ6Ok1lZGlhVHJhY2tSZWFkZXIiX3M7IH0KQEAgLTk0LDIx
ICs5MywyMCBAQCBwcml2YXRlOgogICAgICAgICBXZWJDb3JlOjpTYW1wbGVNYXAgc2FtcGxlTWFw
OwogICAgICAgICBib29sIGhhc0FsbFNhbXBsZXMgeyBmYWxzZSB9OwogICAgIH07CisgICAgU2Ft
cGxlU3RvcmFnZSYgZW5zdXJlU2FtcGxlU3RvcmFnZSgpIFdURl9SRVFVSVJFU19MT0NLKG1fc2Ft
cGxlU3RvcmFnZUxvY2spOwogCiAgICAgY29uc3QgY2hhciogbWVkaWFUeXBlU3RyaW5nKCkgY29u
c3Q7CiAgICAgY29uc3QgY2hhciogbG9nQ2xhc3NOYW1lKCkgY29uc3QgeyByZXR1cm4gIk1lZGlh
VHJhY2tSZWFkZXIiOyB9CiAgICAgY29uc3Qgdm9pZCogbG9nSWRlbnRpZmllcigpIGNvbnN0IHsg
cmV0dXJuIG1fbG9nSWRlbnRpZmllcjsgfQogICAgIFdURkxvZ0NoYW5uZWwmIGxvZ0NoYW5uZWwo
KSBjb25zdDsKIAotICAgIGVudW0gRW5hYmxlZCA6IHVpbnQ4X3QgeyBVbmtub3duLCBGYWxzZSwg
VHJ1ZSB9OwotCiAgICAgY29uc3QgdWludDY0X3QgbV90cmFja0lEOwogICAgIGNvbnN0IENNTWVk
aWFUeXBlIG1fbWVkaWFUeXBlOwogICAgIGNvbnN0IE1lZGlhVGltZSBtX2R1cmF0aW9uOwotICAg
IHN0ZDo6YXRvbWljPEVuYWJsZWQ+IG1faXNFbmFibGVkIHsgRW5hYmxlZDo6VW5rbm93biB9Owor
ICAgIGNvbnN0IE9wdGlvbmFsPGJvb2w+IG1faXNEZWZhdWx0RW5hYmxlZDsKICAgICBtdXRhYmxl
IENoZWNrZWRDb25kaXRpb24gbV9zYW1wbGVTdG9yYWdlQ29uZGl0aW9uOwogICAgIG11dGFibGUg
Q2hlY2tlZExvY2sgbV9zYW1wbGVTdG9yYWdlTG9jazsKLSAgICBtdXRhYmxlIHN0ZDo6dW5pcXVl
X3B0cjxTYW1wbGVTdG9yYWdlPiBtX3NhbXBsZVN0b3JhZ2UgV1RGX0dVQVJERURfQllfTE9DSyht
X3NhbXBsZVN0b3JhZ2VMb2NrKTsKKyAgICBzdGQ6OnVuaXF1ZV9wdHI8U2FtcGxlU3RvcmFnZT4g
bV9zYW1wbGVTdG9yYWdlIFdURl9HVUFSREVEX0JZX0xPQ0sobV9zYW1wbGVTdG9yYWdlTG9jayk7
CiAgICAgUmVmPGNvbnN0IExvZ2dlcj4gbV9sb2dnZXI7CiAgICAgY29uc3Qgdm9pZCogbV9sb2dJ
ZGVudGlmaWVyOwogfTsK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>429644</attachid>
            <date>2021-05-25 05:13:44 -0700</date>
            <delta_ts>2021-05-26 05:46:51 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-226078-20210525151342.patch</filename>
            <type>text/plain</type>
            <size>14200</size>
            <attacher name="Kimmo Kinnunen">kkinnunen</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjc3ODUzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0No
YW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCmluZGV4IDQxNzg0ZWQzNTY3ZTEwOTU2
ZTYyYzY5ZTg0MDM0YWVmMGVkNDk1YzMuLjVkYjU2NTRmNGU3ZTg4ZmYwMzA3Yzc0ZTVjYzBjZDQ2
Y2Y5OTQ0MmMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJj
ZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsNjUgQEAKKzIwMjEtMDUtMjEgIEtpbW1vIEtp
bm51bmVuICA8a2tpbm51bmVuQGFwcGxlLmNvbT4KKworICAgICAgICBNYWNPUyBXZWJNIEZvcm1h
dCBSZWFkZXIgcmV0dXJucyBlbmFibGVkIGZvciB0cmFja3MgdGhhdCBkbyBub3QgaGF2ZSBzYW1w
bGVzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjYw
NzgKKyAgICAgICAgPHJkYXI6Ly83NzA4NDE1NT4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JP
RFkgKE9PUFMhKS4KKworICAgICAgICBJZiBXZWJNIGhhcyB0cmFjayBlbmFibGUvZGlzYWJsZSBz
dGF0ZSBkZWZpbmVkLCB1c2UgaXQgd2hlbiBDb3JlTWVkaWEgYXNrcy4KKyAgICAgICAgSWYgbm90
LCB3YWl0IHVudGlsIHRyYWNrIHJlY2VpdmVzIGFueSBzYW1wbGVzIG9yIHRyYWNrIHBhcnNpbmcg
ZmluaXNoZXMuCisgICAgICAgIFJldHVybiAiZW5hYmxlZCIgZm9yIGFueSBzYW1wbGVzIGNhc2Ug
YW5kICJkaXNhYmxlZCIgaWYgdGhlcmUgaXMgbm8gc2FtcGxlcy4KKworICAgICAgICBGaXhlcyBt
YW55IFdlYkdMIHRlc3RzIHRoYXQgbG9hZCByZWQtZ3JlZW4ud2VibXZwOC53ZWJtLiBUaGUgdmlk
ZW8gd291bGQgaGF2ZQorICAgICAgICBhdWRpbyB0cmFjayBvZiBsZW5naHQgMC4gSWYgdGhlIHRy
YWNrIHJlYWRlciBzYXlzIHRoYXQgdGhlIGF1ZGlvIHRyYWNrIGlzCisgICAgICAgIGVuYWJsZWQs
IHZpZGVvIGxvYWRpbmcgd2lsbCBlbmQgdXAgd2l0aCBuZXR3b3JrIGVycm9yLgorCisgICAgICAg
IFBhc3NlcyB0ZXN0cyB0aGF0IGFyZSBjdXJyZW50bHkgc2tpcHBlZCBmb3IgV2ViTSBidWlsZCAt
ZW5hYmxlZCBidWlsZHM6CisgICAgICAgIHdlYmdsLzEuMC4zL2NvbmZvcm1hbmNlL2V4dGVuc2lv
bnMvb2VzLXRleHR1cmUtZmxvYXQtd2l0aC12aWRlby5odG1sCisgICAgICAgIHdlYmdsLzEuMC4z
L2NvbmZvcm1hbmNlL2V4dGVuc2lvbnMvb2VzLXRleHR1cmUtaGFsZi1mbG9hdC13aXRoLXZpZGVv
Lmh0bWwKKyAgICAgICAgd2ViZ2wvMS4wLjMvY29uZm9ybWFuY2UvdGV4dHVyZXMvdGV4LWltYWdl
LWFuZC1zdWItaW1hZ2UtMmQtd2l0aC12aWRlby1yZ2I1NjUuaHRtbAorICAgICAgICB3ZWJnbC8x
LjAuMy9jb25mb3JtYW5jZS90ZXh0dXJlcy90ZXgtaW1hZ2UtYW5kLXN1Yi1pbWFnZS0yZC13aXRo
LXZpZGVvLXJnYmE0NDQ0Lmh0bWwKKyAgICAgICAgd2ViZ2wvMS4wLjMvY29uZm9ybWFuY2UvdGV4
dHVyZXMvdGV4LWltYWdlLWFuZC1zdWItaW1hZ2UtMmQtd2l0aC12aWRlby1yZ2JhNTU1MS5odG1s
CisgICAgICAgIHdlYmdsLzEuMC4zL2NvbmZvcm1hbmNlL3RleHR1cmVzL3RleC1pbWFnZS1hbmQt
c3ViLWltYWdlLTJkLXdpdGgtdmlkZW8uaHRtbAorICAgICAgICB3ZWJnbC8xLjAuMy9jb25mb3Jt
YW5jZS90ZXh0dXJlcy90ZXh0dXJlLXVwbG9hZC1zaXplLmh0bWwKKyAgICAgICAgd2ViZ2wvMi4w
LjAvY29uZm9ybWFuY2UvZXh0ZW5zaW9ucy9vZXMtdGV4dHVyZS1mbG9hdC13aXRoLXZpZGVvLmh0
bWwKKyAgICAgICAgd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UvZXh0ZW5zaW9ucy9vZXMtdGV4dHVy
ZS1oYWxmLWZsb2F0LXdpdGgtdmlkZW8uaHRtbAorICAgICAgICB3ZWJnbC8yLjAuMC9jb25mb3Jt
YW5jZS90ZXh0dXJlcy9pbWFnZV9iaXRtYXBfZnJvbV92aWRlby90ZXgtMmQtcmdiLXJnYi11bnNp
Z25lZF9ieXRlLmh0bWwKKyAgICAgICAgd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UvdGV4dHVyZXMv
aW1hZ2VfYml0bWFwX2Zyb21fdmlkZW8vdGV4LTJkLXJnYi1yZ2ItdW5zaWduZWRfc2hvcnRfNV82
XzUuaHRtbAorICAgICAgICB3ZWJnbC8yLjAuMC9jb25mb3JtYW5jZS90ZXh0dXJlcy9pbWFnZV9i
aXRtYXBfZnJvbV92aWRlby90ZXgtMmQtcmdiYS1yZ2JhLXVuc2lnbmVkX2J5dGUuaHRtbAorICAg
ICAgICB3ZWJnbC8yLjAuMC9jb25mb3JtYW5jZS90ZXh0dXJlcy9pbWFnZV9iaXRtYXBfZnJvbV92
aWRlby90ZXgtMmQtcmdiYS1yZ2JhLXVuc2lnbmVkX3Nob3J0XzRfNF80XzQuaHRtbAorICAgICAg
ICB3ZWJnbC8yLjAuMC9jb25mb3JtYW5jZS90ZXh0dXJlcy9pbWFnZV9iaXRtYXBfZnJvbV92aWRl
by90ZXgtMmQtcmdiYS1yZ2JhLXVuc2lnbmVkX3Nob3J0XzVfNV81XzEuaHRtbAorICAgICAgICB3
ZWJnbC8yLjAuMC9jb25mb3JtYW5jZS90ZXh0dXJlcy9taXNjL3RleHR1cmUtdXBsb2FkLXNpemUu
aHRtbAorICAgICAgICB3ZWJnbC8yLjAuMC9jb25mb3JtYW5jZS90ZXh0dXJlcy92aWRlby90ZXgt
MmQtcmdiLXJnYi11bnNpZ25lZF9ieXRlLmh0bWwKKyAgICAgICAgd2ViZ2wvMi4wLjAvY29uZm9y
bWFuY2UvdGV4dHVyZXMvdmlkZW8vdGV4LTJkLXJnYi1yZ2ItdW5zaWduZWRfc2hvcnRfNV82XzUu
aHRtbAorICAgICAgICB3ZWJnbC8yLjAuMC9jb25mb3JtYW5jZS90ZXh0dXJlcy92aWRlby90ZXgt
MmQtcmdiYS1yZ2JhLXVuc2lnbmVkX2J5dGUuaHRtbAorICAgICAgICB3ZWJnbC8yLjAuMC9jb25m
b3JtYW5jZS90ZXh0dXJlcy92aWRlby90ZXgtMmQtcmdiYS1yZ2JhLXVuc2lnbmVkX3Nob3J0XzRf
NF80XzQuaHRtbAorICAgICAgICB3ZWJnbC8yLjAuMC9jb25mb3JtYW5jZS90ZXh0dXJlcy92aWRl
by90ZXgtMmQtcmdiYS1yZ2JhLXVuc2lnbmVkX3Nob3J0XzVfNV81XzEuaHRtbAorICAgICAgICB3
ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIvdGV4dHVyZXMvaW1hZ2VfYml0bWFwX2Zyb21fdmlkZW8v
dGV4LTJkLXIxMWZfZzExZl9iMTBmLXJnYi1mbG9hdC5odG1sCisgICAgICAgIHdlYmdsLzIuMC4w
L2NvbmZvcm1hbmNlMi90ZXh0dXJlcy9pbWFnZV9iaXRtYXBfZnJvbV92aWRlby90ZXgtMmQtcjEx
Zl9nMTFmX2IxMGYtcmdiLWhhbGZfZmxvYXQuaHRtbAorICAgICAgICB3ZWJnbC8yLjAuMC9jb25m
b3JtYW5jZTIvdGV4dHVyZXMvaW1hZ2VfYml0bWFwX2Zyb21fdmlkZW8vdGV4LTJkLXIxMWZfZzEx
Zl9iMTBmLXJnYi11bnNpZ25lZF9pbnRfMTBmXzExZl8xMWZfcmV2Lmh0bWwKKyAgICAgICAgd2Vi
Z2wvMi4wLjAvY29uZm9ybWFuY2UyL3RleHR1cmVzL2ltYWdlX2JpdG1hcF9mcm9tX3ZpZGVvL3Rl
eC0yZC1yMTZmLXJlZC1mbG9hdC5odG1sCisgICAgICAgIHdlYmdsLzIuMC4wL2NvbmZvcm1hbmNl
Mi90ZXh0dXJlcy9pbWFnZV9iaXRtYXBfZnJvbV92aWRlby90ZXgtMmQtcjgtcmVkLXVuc2lnbmVk
X2J5dGUuaHRtbAorICAgICAgICB3ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIvdGV4dHVyZXMvaW1h
Z2VfYml0bWFwX2Zyb21fdmlkZW8vdGV4LTJkLXI4dWktcmVkX2ludGVnZXItdW5zaWduZWRfYnl0
ZS5odG1sCisgICAgICAgIHdlYmdsLzIuMC4wL2NvbmZvcm1hbmNlMi90ZXh0dXJlcy9taXNjL3Rl
eC1pbWFnZS13aXRoLWJhZC1hcmdzLWZyb20tZG9tLWVsZW1lbnRzLmh0bWwKKyAgICAgICAgd2Vi
Z2wvMi4wLjAvY29uZm9ybWFuY2UyL3RleHR1cmVzL3ZpZGVvL3RleC0yZC1yMTFmX2cxMWZfYjEw
Zi1yZ2ItZmxvYXQuaHRtbAorICAgICAgICB3ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIvdGV4dHVy
ZXMvdmlkZW8vdGV4LTJkLXIxMWZfZzExZl9iMTBmLXJnYi1oYWxmX2Zsb2F0Lmh0bWwKKyAgICAg
ICAgd2ViZ2wvMi4wLjAvY29uZm9ybWFuY2UyL3RleHR1cmVzL3ZpZGVvL3RleC0yZC1yMTFmX2cx
MWZfYjEwZi1yZ2ItdW5zaWduZWRfaW50XzEwZl8xMWZfMTFmX3Jldi5odG1sCisgICAgICAgIHdl
YmdsLzIuMC4wL2NvbmZvcm1hbmNlMi90ZXh0dXJlcy92aWRlby90ZXgtMmQtcjE2Zi1yZWQtZmxv
YXQuaHRtbAorICAgICAgICB3ZWJnbC8yLjAuMC9jb25mb3JtYW5jZTIvdGV4dHVyZXMvdmlkZW8v
dGV4LTJkLXI4LXJlZC11bnNpZ25lZF9ieXRlLmh0bWwKKyAgICAgICAgd2ViZ2wvMi4wLjAvY29u
Zm9ybWFuY2UyL3RleHR1cmVzL3ZpZGVvL3RleC0yZC1yOHVpLXJlZF9pbnRlZ2VyLXVuc2lnbmVk
X2J5dGUuaHRtbAorCisgICAgICAgICogU2hhcmVkL21hYy9NZWRpYUZvcm1hdFJlYWRlci9NZWRp
YVRyYWNrUmVhZGVyLmNwcDoKKyAgICAgICAgKFdlYktpdDo6TWVkaWFUcmFja1JlYWRlcjo6Y3Jl
YXRlKToKKyAgICAgICAgKFdlYktpdDo6TWVkaWFUcmFja1JlYWRlcjo6TWVkaWFUcmFja1JlYWRl
cik6CisgICAgICAgIChXZWJLaXQ6Ok1lZGlhVHJhY2tSZWFkZXI6OmdyZWF0ZXN0UHJlc2VudGF0
aW9uVGltZSBjb25zdCk6CisgICAgICAgIChXZWJLaXQ6Ok1lZGlhVHJhY2tSZWFkZXI6OmFkZFNh
bXBsZSk6CisgICAgICAgIChXZWJLaXQ6Ok1lZGlhVHJhY2tSZWFkZXI6OndhaXRGb3JTYW1wbGUg
Y29uc3QpOgorICAgICAgICAoV2ViS2l0OjpNZWRpYVRyYWNrUmVhZGVyOjpmaW5pc2hQYXJzaW5n
KToKKyAgICAgICAgKFdlYktpdDo6TWVkaWFUcmFja1JlYWRlcjo6Y29weVByb3BlcnR5KToKKyAg
ICAgICAgKFdlYktpdDo6TWVkaWFUcmFja1JlYWRlcjo6ZW5zdXJlU2FtcGxlU3RvcmFnZSk6Cisg
ICAgICAgICogU2hhcmVkL21hYy9NZWRpYUZvcm1hdFJlYWRlci9NZWRpYVRyYWNrUmVhZGVyLmg6
CisKIDIwMjEtMDUtMjEgIFlvdWVubiBGYWJsZXQgIDx5b3Vlbm5AYXBwbGUuY29tPgogCiAgICAg
ICAgIEltcGxlbWVudCBhIHJlbW90ZSBJbnRlcm5hbCBVbml0IGluIEdQVVByb2Nlc3MgZm9yIGF1
ZGlvIE1lZGlhU3RyZWFtVHJhY2sgcmVuZGVyaW5nCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0
L1NoYXJlZC9tYWMvTWVkaWFGb3JtYXRSZWFkZXIvTWVkaWFUcmFja1JlYWRlci5jcHAgYi9Tb3Vy
Y2UvV2ViS2l0L1NoYXJlZC9tYWMvTWVkaWFGb3JtYXRSZWFkZXIvTWVkaWFUcmFja1JlYWRlci5j
cHAKaW5kZXggOWFlM2QwNTAyYWRiZGVjZmVkYjJlNmNiYmY3YWQ2MmVlM2ZiOGUzNC4uY2U3YjVi
MDBlZjcxMzc3ZjMxNjJkYzg1NTgxZTM0NjU4YjRhYzNlZCAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YktpdC9TaGFyZWQvbWFjL01lZGlhRm9ybWF0UmVhZGVyL01lZGlhVHJhY2tSZWFkZXIuY3BwCisr
KyBiL1NvdXJjZS9XZWJLaXQvU2hhcmVkL21hYy9NZWRpYUZvcm1hdFJlYWRlci9NZWRpYVRyYWNr
UmVhZGVyLmNwcApAQCAtNTksOSArNTksOSBAQCBDb3JlTWVkaWFXcmFwcGVkPE1lZGlhVHJhY2tS
ZWFkZXI+KiBNZWRpYVRyYWNrUmVhZGVyOjp1bndyYXAoQ01CYXNlT2JqZWN0UmVmIG9iagogICAg
IHJldHVybiB1bndyYXAoY2hlY2tlZF9jZl9jYXN0PFdyYXBwZXJSZWY+KG9iamVjdCkpOwogfQog
Ci1SZWZQdHI8TWVkaWFUcmFja1JlYWRlcj4gTWVkaWFUcmFja1JlYWRlcjo6Y3JlYXRlKEFsbG9j
YXRvciYmIGFsbG9jYXRvciwgY29uc3QgTWVkaWFGb3JtYXRSZWFkZXImIGZvcm1hdFJlYWRlciwg
Q01NZWRpYVR5cGUgbWVkaWFUeXBlLCB1aW50NjRfdCB0cmFja0lELCBPcHRpb25hbDxib29sPiBl
bmFibGVkKQorUmVmUHRyPE1lZGlhVHJhY2tSZWFkZXI+IE1lZGlhVHJhY2tSZWFkZXI6OmNyZWF0
ZShBbGxvY2F0b3ImJiBhbGxvY2F0b3IsIGNvbnN0IE1lZGlhRm9ybWF0UmVhZGVyJiBmb3JtYXRS
ZWFkZXIsIENNTWVkaWFUeXBlIG1lZGlhVHlwZSwgdWludDY0X3QgdHJhY2tJRCwgT3B0aW9uYWw8
Ym9vbD4gaXNEZWZhdWx0RW5hYmxlZCkKIHsKLSAgICByZXR1cm4gYWRvcHRSZWYobmV3IChhbGxv
Y2F0b3IpIE1lZGlhVHJhY2tSZWFkZXIoV1RGTW92ZShhbGxvY2F0b3IpLCBmb3JtYXRSZWFkZXIs
IG1lZGlhVHlwZSwgdHJhY2tJRCwgZW5hYmxlZCkpOworICAgIHJldHVybiBhZG9wdFJlZihuZXcg
KGFsbG9jYXRvcikgTWVkaWFUcmFja1JlYWRlcihXVEZNb3ZlKGFsbG9jYXRvciksIGZvcm1hdFJl
YWRlciwgbWVkaWFUeXBlLCB0cmFja0lELCBpc0RlZmF1bHRFbmFibGVkKSk7CiB9CiAKIFdvcmtR
dWV1ZSYgTWVkaWFUcmFja1JlYWRlcjo6c3RvcmFnZVF1ZXVlKCkKQEAgLTcwLDI0ICs3MCwyMyBA
QCBXb3JrUXVldWUmIE1lZGlhVHJhY2tSZWFkZXI6OnN0b3JhZ2VRdWV1ZSgpCiAgICAgcmV0dXJu
IHF1ZXVlOwogfQogCi1NZWRpYVRyYWNrUmVhZGVyOjpNZWRpYVRyYWNrUmVhZGVyKEFsbG9jYXRv
ciYmIGFsbG9jYXRvciwgY29uc3QgTWVkaWFGb3JtYXRSZWFkZXImIGZvcm1hdFJlYWRlciwgQ01N
ZWRpYVR5cGUgbWVkaWFUeXBlLCB1aW50NjRfdCB0cmFja0lELCBPcHRpb25hbDxib29sPiBlbmFi
bGVkKQorTWVkaWFUcmFja1JlYWRlcjo6TWVkaWFUcmFja1JlYWRlcihBbGxvY2F0b3ImJiBhbGxv
Y2F0b3IsIGNvbnN0IE1lZGlhRm9ybWF0UmVhZGVyJiBmb3JtYXRSZWFkZXIsIENNTWVkaWFUeXBl
IG1lZGlhVHlwZSwgdWludDY0X3QgdHJhY2tJRCwgT3B0aW9uYWw8Ym9vbD4gaXNEZWZhdWx0RW5h
YmxlZCkKICAgICA6IENvcmVNZWRpYVdyYXBwZWQoV1RGTW92ZShhbGxvY2F0b3IpKQogICAgICwg
bV90cmFja0lEKHRyYWNrSUQpCiAgICAgLCBtX21lZGlhVHlwZShtZWRpYVR5cGUpCiAgICAgLCBt
X2R1cmF0aW9uKGZvcm1hdFJlYWRlci5kdXJhdGlvbigpKQorICAgICwgbV9pc0RlZmF1bHRFbmFi
bGVkKGlzRGVmYXVsdEVuYWJsZWQpCiAgICAgLCBtX2xvZ2dlcihmb3JtYXRSZWFkZXIubG9nZ2Vy
KCkpCiAgICAgLCBtX2xvZ0lkZW50aWZpZXIoZm9ybWF0UmVhZGVyLm5leHRUcmFja1JlYWRlckxv
Z0lkZW50aWZpZXIodHJhY2tJRCkpCiB7CiAgICAgQVNTRVJUKCFpc01haW5SdW5Mb29wKCkpOwot
CiAgICAgQUxXQVlTX0xPRyhMT0dJREVOVElGSUVSLCBtZWRpYVR5cGVTdHJpbmcoKSwgIiAiLCB0
cmFja0lEKTsKLSAgICBpZiAoZW5hYmxlZCkKLSAgICAgICAgbV9pc0VuYWJsZWQgPSBlbmFibGVk
LnZhbHVlKCkgPyBFbmFibGVkOjpUcnVlIDogRW5hYmxlZDo6RmFsc2U7CiB9CiAKIE1lZGlhVGlt
ZSBNZWRpYVRyYWNrUmVhZGVyOjpncmVhdGVzdFByZXNlbnRhdGlvblRpbWUoKSBjb25zdAogewog
ICAgIExvY2tlciBsb2NrZXIgeyBtX3NhbXBsZVN0b3JhZ2VMb2NrIH07CisgICAgQVNTRVJUKG1f
c2FtcGxlU3RvcmFnZSk7CiAgICAgYXV0byYgc2FtcGxlTWFwID0gbV9zYW1wbGVTdG9yYWdlLT5z
YW1wbGVNYXA7CiAgICAgaWYgKHNhbXBsZU1hcC5lbXB0eSgpKQogICAgICAgICByZXR1cm4gTWVk
aWFUaW1lOjppbnZhbGlkVGltZSgpOwpAQCAtOTksMTAgKzk4LDYgQEAgTWVkaWFUaW1lIE1lZGlh
VHJhY2tSZWFkZXI6OmdyZWF0ZXN0UHJlc2VudGF0aW9uVGltZSgpIGNvbnN0CiB2b2lkIE1lZGlh
VHJhY2tSZWFkZXI6OmFkZFNhbXBsZShSZWY8TWVkaWFTYW1wbGU+JiYgc2FtcGxlLCBNVFBsdWdp
bkJ5dGVTb3VyY2VSZWYgYnl0ZVNvdXJjZSkKIHsKICAgICBBU1NFUlQoIWlzTWFpblJ1bkxvb3Ao
KSk7Ci0gICAgTG9ja2VyIGxvY2tlciB7IG1fc2FtcGxlU3RvcmFnZUxvY2sgfTsKLSAgICBpZiAo
IW1fc2FtcGxlU3RvcmFnZSkKLSAgICAgICAgbV9zYW1wbGVTdG9yYWdlID0gbWFrZVVuaXF1ZTxT
YW1wbGVTdG9yYWdlPigpOwotCiAgICAgQVNTRVJUKCFzYW1wbGUtPmlzRGl2aXNhYmxlKCkgJiYg
c2FtcGxlLT5ieXRlUmFuZ2UoKSk7CiAgICAgYXV0byBzYW1wbGVUb0FkZCA9IE1lZGlhU2FtcGxl
Qnl0ZVJhbmdlOjpjcmVhdGUoc2FtcGxlLmdldCgpLCBieXRlU291cmNlLCBtX3RyYWNrSUQpOwog
CkBAIC0xMTEsMTggKzEwNiwxNyBAQCB2b2lkIE1lZGlhVHJhY2tSZWFkZXI6OmFkZFNhbXBsZShS
ZWY8TWVkaWFTYW1wbGU+JiYgc2FtcGxlLCBNVFBsdWdpbkJ5dGVTb3VyY2VSZQogICAgIC8vIGlu
IHRoZXNlIGNhc2VzLCBjb3JydXB0aW5nIGFsbCBzdWJzZXF1ZW50IG5vbi1rZXkgZnJhbWVzLiBG
aW5kIGEgd2F5IHRvIHN0b3JlIGZyYW1lcyB3aXRoCiAgICAgLy8gZHVwbGljYXRlIHByZXNlbnRh
dGlvbiB0aW1lcy4KIAotICAgIG1fc2FtcGxlU3RvcmFnZS0+c2FtcGxlTWFwLmFkZFNhbXBsZShz
YW1wbGVUb0FkZC5nZXQoKSk7CisgICAgTG9ja2VyIGxvY2tlciB7IG1fc2FtcGxlU3RvcmFnZUxv
Y2sgfTsKKyAgICBlbnN1cmVTYW1wbGVTdG9yYWdlKCkuc2FtcGxlTWFwLmFkZFNhbXBsZShzYW1w
bGVUb0FkZC5nZXQoKSk7CiAgICAgbV9zYW1wbGVTdG9yYWdlQ29uZGl0aW9uLm5vdGlmeUFsbCgp
OwogfQogCiB2b2lkIE1lZGlhVHJhY2tSZWFkZXI6OndhaXRGb3JTYW1wbGUoRnVuY3Rpb248Ym9v
bChTYW1wbGVNYXAmLCBib29sKT4mJiBwcmVkaWNhdGUpIGNvbnN0CiB7CiAgICAgTG9ja2VyIGxv
Y2tlciB7IG1fc2FtcGxlU3RvcmFnZUxvY2sgfTsKLSAgICBpZiAoIW1fc2FtcGxlU3RvcmFnZSkK
LSAgICAgICAgbV9zYW1wbGVTdG9yYWdlID0gbWFrZVVuaXF1ZTxTYW1wbGVTdG9yYWdlPigpOwog
ICAgIG1fc2FtcGxlU3RvcmFnZUNvbmRpdGlvbi53YWl0KG1fc2FtcGxlU3RvcmFnZUxvY2ssIFtw
cmVkaWNhdGUgPSBXVEZNb3ZlKHByZWRpY2F0ZSksIHRoaXNdIHsKICAgICAgICAgYXNzZXJ0SXNI
ZWxkKG1fc2FtcGxlU3RvcmFnZUxvY2spOwotICAgICAgICByZXR1cm4gcHJlZGljYXRlKG1fc2Ft
cGxlU3RvcmFnZS0+c2FtcGxlTWFwLCBtX3NhbXBsZVN0b3JhZ2UtPmhhc0FsbFNhbXBsZXMpOwor
ICAgICAgICByZXR1cm4gbV9zYW1wbGVTdG9yYWdlICYmIHByZWRpY2F0ZShtX3NhbXBsZVN0b3Jh
Z2UtPnNhbXBsZU1hcCwgbV9zYW1wbGVTdG9yYWdlLT5oYXNBbGxTYW1wbGVzKTsKICAgICB9KTsK
IH0KIApAQCAtMTMyLDE0ICsxMjYsNyBAQCB2b2lkIE1lZGlhVHJhY2tSZWFkZXI6OmZpbmlzaFBh
cnNpbmcoKQogCiAgICAgQUxXQVlTX0xPRyhMT0dJREVOVElGSUVSKTsKICAgICBMb2NrZXIgbG9j
a2VyIHsgbV9zYW1wbGVTdG9yYWdlTG9jayB9OwotICAgIGlmICghbV9zYW1wbGVTdG9yYWdlKQot
ICAgICAgICBtX3NhbXBsZVN0b3JhZ2UgPSBtYWtlVW5pcXVlPFNhbXBsZVN0b3JhZ2U+KCk7Ci0g
ICAgbV9zYW1wbGVTdG9yYWdlLT5oYXNBbGxTYW1wbGVzID0gdHJ1ZTsKLSAgICBpZiAobV9pc0Vu
YWJsZWQgPT0gRW5hYmxlZDo6VW5rbm93bikgewotICAgICAgICBtX2lzRW5hYmxlZCA9IG1fc2Ft
cGxlU3RvcmFnZS0+c2FtcGxlTWFwLmVtcHR5KCkgPyBFbmFibGVkOjpGYWxzZSA6IEVuYWJsZWQ6
OlRydWU7Ci0gICAgICAgIGlmIChtX2lzRW5hYmxlZCA9PSBFbmFibGVkOjpGYWxzZSkKLSAgICAg
ICAgICAgIEVSUk9SX0xPRyhMT0dJREVOVElGSUVSLCAiaWdub3JpbmcgZW1wdHkgIiwgbWVkaWFU
eXBlU3RyaW5nKCksICIgdHJhY2siKTsKLSAgICB9CisgICAgZW5zdXJlU2FtcGxlU3RvcmFnZSgp
Lmhhc0FsbFNhbXBsZXMgPSB0cnVlOwogICAgIG1fc2FtcGxlU3RvcmFnZUNvbmRpdGlvbi5ub3Rp
ZnlBbGwoKTsKIH0KIApAQCAtMTU5LDExICsxNDYsOCBAQCBjb25zdCBjaGFyKiBNZWRpYVRyYWNr
UmVhZGVyOjptZWRpYVR5cGVTdHJpbmcoKSBjb25zdAogCiBPU1N0YXR1cyBNZWRpYVRyYWNrUmVh
ZGVyOjpjb3B5UHJvcGVydHkoQ0ZTdHJpbmdSZWYga2V5LCBDRkFsbG9jYXRvclJlZiBhbGxvY2F0
b3IsIHZvaWQqIGNvcGllZFZhbHVlKQogewotICAgIC8vIERvbid0IGJsb2NrIHdhaXRpbmcgZm9y
IG1lZGlhIHRvIGFuc3dlciByZXF1ZXN0cyBmb3IgdGhlIGVuYWJsZWQgc3RhdGUuCi0gICAgaWYg
KENGRXF1YWwoa2V5LCBQQUw6OmdldF9NZWRpYVRvb2xib3hfa01UUGx1Z2luVHJhY2tSZWFkZXJQ
cm9wZXJ0eV9FbmFibGVkKCkpKSB7Ci0gICAgICAgIC8vIEFzc3VtZSB0aGF0IGEgdHJhY2sgd2l0
aG91dCBhbiBleHBsaWNpdCBlbmFibGVkIHN0YXRlIGlzIGVuYWJsZWQgYnkgZGVmYXVsdCwKLSAg
ICAgICAgLy8gdG8gYXZvaWQgYmxvY2tpbmcgd2FpdGluZyBmb3IgbWVkaWEgZGF0YSB0byBiZSBh
cHBlbmRlZC4KLSAgICAgICAgKnJlaW50ZXJwcmV0X2Nhc3Q8Q0ZCb29sZWFuUmVmKj4oY29waWVk
VmFsdWUpID0gbV9pc0VuYWJsZWQgPT0gRW5hYmxlZDo6RmFsc2UgPyBrQ0ZCb29sZWFuRmFsc2Ug
OiBrQ0ZCb29sZWFuVHJ1ZTsKKyAgICBpZiAoQ0ZFcXVhbChrZXksIFBBTDo6Z2V0X01lZGlhVG9v
bGJveF9rTVRQbHVnaW5UcmFja1JlYWRlclByb3BlcnR5X0VuYWJsZWQoKSkgJiYgbV9pc0RlZmF1
bHRFbmFibGVkLmhhc1ZhbHVlKCkpIHsKKyAgICAgICAgKnJlaW50ZXJwcmV0X2Nhc3Q8Q0ZCb29s
ZWFuUmVmKj4oY29waWVkVmFsdWUpID0gKm1faXNEZWZhdWx0RW5hYmxlZCA/IGtDRkJvb2xlYW5U
cnVlIDoga0NGQm9vbGVhbkZhbHNlOwogICAgICAgICByZXR1cm4gbm9FcnI7CiAgICAgfQogCkBA
IC0xNzUsNiArMTU5LDEzIEBAIE9TU3RhdHVzIE1lZGlhVHJhY2tSZWFkZXI6OmNvcHlQcm9wZXJ0
eShDRlN0cmluZ1JlZiBrZXksIENGQWxsb2NhdG9yUmVmIGFsbG9jYXRvCiAKICAgICBhdXRvJiBz
YW1wbGVNYXAgPSBtX3NhbXBsZVN0b3JhZ2UtPnNhbXBsZU1hcDsKIAorICAgIGlmIChDRkVxdWFs
KGtleSwgUEFMOjpnZXRfTWVkaWFUb29sYm94X2tNVFBsdWdpblRyYWNrUmVhZGVyUHJvcGVydHlf
RW5hYmxlZCgpKSkgeworICAgICAgICBib29sIGlzRW5hYmxlZCA9ICFzYW1wbGVNYXAuZW1wdHko
KTsKKyAgICAgICAgRVJST1JfTE9HX0lGKCFpc0VuYWJsZWQsIExPR0lERU5USUZJRVIsICJpZ25v
cmluZyBlbXB0eSAiLCBtZWRpYVR5cGVTdHJpbmcoKSwgIiB0cmFjayIpOworICAgICAgICAqcmVp
bnRlcnByZXRfY2FzdDxDRkJvb2xlYW5SZWYqPihjb3BpZWRWYWx1ZSkgPSBpc0VuYWJsZWQgPyBr
Q0ZCb29sZWFuVHJ1ZSA6IGtDRkJvb2xlYW5GYWxzZTsKKyAgICAgICAgcmV0dXJuIG5vRXJyOwor
ICAgIH0KKwogICAgIGlmIChzYW1wbGVNYXAuZW1wdHkoKSkgewogICAgICAgICBFUlJPUl9MT0co
TE9HSURFTlRJRklFUiwgInNhbXBsZSB0YWJsZSBlbXB0eSB3aGVuIGFza2VkIGZvciAiLCBTdHJp
bmcoa2V5KSk7CiAgICAgICAgIHJldHVybiBrQ01CYXNlT2JqZWN0RXJyb3JfVmFsdWVOb3RBdmFp
bGFibGU7CkBAIC0yNDUsNiArMjM2LDEzIEBAIGNvbnN0IHZvaWQqIE1lZGlhVHJhY2tSZWFkZXI6
Om5leHRTYW1wbGVDdXJzb3JMb2dJZGVudGlmaWVyKHVpbnQ2NF90IGN1cnNvcklEKSBjCiAgICAg
cmV0dXJuIExvZ2dlckhlbHBlcjo6Y2hpbGRMb2dJZGVudGlmaWVyKG1fbG9nSWRlbnRpZmllciwg
dHJhY2tBbmRDdXJzb3JJRCk7CiB9CiAKK01lZGlhVHJhY2tSZWFkZXI6OlNhbXBsZVN0b3JhZ2Um
IE1lZGlhVHJhY2tSZWFkZXI6OmVuc3VyZVNhbXBsZVN0b3JhZ2UoKQoreworICAgIGlmICghbV9z
YW1wbGVTdG9yYWdlKQorICAgICAgICBtX3NhbXBsZVN0b3JhZ2UgPSBtYWtlVW5pcXVlPFNhbXBs
ZVN0b3JhZ2U+KCk7CisgICAgcmV0dXJuICptX3NhbXBsZVN0b3JhZ2U7Cit9CisKIH0gLy8gbmFt
ZXNwYWNlIFdlYktpdAogCiAjZW5kaWYgLy8gRU5BQkxFKFdFQk1fRk9STUFUX1JFQURFUikKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvU2hhcmVkL21hYy9NZWRpYUZvcm1hdFJlYWRlci9NZWRp
YVRyYWNrUmVhZGVyLmggYi9Tb3VyY2UvV2ViS2l0L1NoYXJlZC9tYWMvTWVkaWFGb3JtYXRSZWFk
ZXIvTWVkaWFUcmFja1JlYWRlci5oCmluZGV4IGI4MzRiOTA5MWYwM2I3ZWU2ZmNmNWE3MzZhYWIz
MDRiMjE3NmQ2ZTQuLjVmOTAzODZlYmVlNTg1ZjhiY2YxNjE0NDM3ODMwYjAxOTE1N2VkNDUgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvU2hhcmVkL21hYy9NZWRpYUZvcm1hdFJlYWRlci9NZWRp
YVRyYWNrUmVhZGVyLmgKKysrIGIvU291cmNlL1dlYktpdC9TaGFyZWQvbWFjL01lZGlhRm9ybWF0
UmVhZGVyL01lZGlhVHJhY2tSZWFkZXIuaApAQCAtNTcsMTQgKzU3LDEzIEBAIHB1YmxpYzoKICAg
ICBzdGF0aWMgQ29yZU1lZGlhV3JhcHBlZDxNZWRpYVRyYWNrUmVhZGVyPiogdW53cmFwKENNQmFz
ZU9iamVjdFJlZik7CiAgICAgc3RhdGljIFdURjo6V29ya1F1ZXVlJiBzdG9yYWdlUXVldWUoKTsK
IAotICAgIHN0YXRpYyBSZWZQdHI8TWVkaWFUcmFja1JlYWRlcj4gY3JlYXRlKEFsbG9jYXRvciYm
LCBjb25zdCBNZWRpYUZvcm1hdFJlYWRlciYsIENNTWVkaWFUeXBlLCB1aW50NjRfdCwgT3B0aW9u
YWw8Ym9vbD4pOworICAgIHN0YXRpYyBSZWZQdHI8TWVkaWFUcmFja1JlYWRlcj4gY3JlYXRlKEFs
bG9jYXRvciYmLCBjb25zdCBNZWRpYUZvcm1hdFJlYWRlciYsIENNTWVkaWFUeXBlLCB1aW50NjRf
dCwgT3B0aW9uYWw8Ym9vbD4gaXNEZWZhdWx0RW5hYmxlZCk7CiAKICAgICB1aW50NjRfdCB0cmFj
a0lEKCkgY29uc3QgeyByZXR1cm4gbV90cmFja0lEOyB9CiAgICAgQ01NZWRpYVR5cGUgbWVkaWFU
eXBlKCkgY29uc3QgeyByZXR1cm4gbV9tZWRpYVR5cGU7IH0KICAgICBjb25zdCBNZWRpYVRpbWUm
IGR1cmF0aW9uKCkgY29uc3QgeyByZXR1cm4gbV9kdXJhdGlvbjsgfQogICAgIE1lZGlhVGltZSBn
cmVhdGVzdFByZXNlbnRhdGlvblRpbWUoKSBjb25zdDsKIAotICAgIHZvaWQgc2V0RW5hYmxlZChi
b29sIGVuYWJsZWQpIHsgbV9pc0VuYWJsZWQgPSBlbmFibGVkID8gRW5hYmxlZDo6VHJ1ZSA6IEVu
YWJsZWQ6OkZhbHNlOyB9CiAgICAgdm9pZCBhZGRTYW1wbGUoUmVmPFdlYkNvcmU6Ok1lZGlhU2Ft
cGxlPiYmLCBNVFBsdWdpbkJ5dGVTb3VyY2VSZWYpOwogICAgIHZvaWQgd2FpdEZvclNhbXBsZShG
dW5jdGlvbjxib29sKFdlYkNvcmU6OlNhbXBsZU1hcCYsIGJvb2wpPiYmKSBjb25zdDsKICAgICB2
b2lkIGZpbmlzaFBhcnNpbmcoKTsKQEAgLTc1LDcgKzc0LDcgQEAgcHVibGljOgogcHJpdmF0ZToK
ICAgICB1c2luZyBDb3JlTWVkaWFXcmFwcGVkPE1lZGlhVHJhY2tSZWFkZXI+Ojp1bndyYXA7CiAK
LSAgICBNZWRpYVRyYWNrUmVhZGVyKEFsbG9jYXRvciYmLCBjb25zdCBNZWRpYUZvcm1hdFJlYWRl
ciYsIENNTWVkaWFUeXBlLCB1aW50NjRfdCwgT3B0aW9uYWw8Ym9vbD4pOworICAgIE1lZGlhVHJh
Y2tSZWFkZXIoQWxsb2NhdG9yJiYsIGNvbnN0IE1lZGlhRm9ybWF0UmVhZGVyJiwgQ01NZWRpYVR5
cGUsIHVpbnQ2NF90LCBPcHRpb25hbDxib29sPiBpc0RlZmF1bHRFbmFibGVkKTsKIAogICAgIC8v
IENNQmFzZUNsYXNzCiAgICAgU3RyaW5nIGRlYnVnRGVzY3JpcHRpb24oKSBjb25zdCBmaW5hbCB7
IHJldHVybiAiV2ViS2l0OjpNZWRpYVRyYWNrUmVhZGVyIl9zOyB9CkBAIC05NCwyMSArOTMsMjAg
QEAgcHJpdmF0ZToKICAgICAgICAgV2ViQ29yZTo6U2FtcGxlTWFwIHNhbXBsZU1hcDsKICAgICAg
ICAgYm9vbCBoYXNBbGxTYW1wbGVzIHsgZmFsc2UgfTsKICAgICB9OworICAgIFNhbXBsZVN0b3Jh
Z2UmIGVuc3VyZVNhbXBsZVN0b3JhZ2UoKSBXVEZfUkVRVUlSRVNfTE9DSyhtX3NhbXBsZVN0b3Jh
Z2VMb2NrKTsKIAogICAgIGNvbnN0IGNoYXIqIG1lZGlhVHlwZVN0cmluZygpIGNvbnN0OwogICAg
IGNvbnN0IGNoYXIqIGxvZ0NsYXNzTmFtZSgpIGNvbnN0IHsgcmV0dXJuICJNZWRpYVRyYWNrUmVh
ZGVyIjsgfQogICAgIGNvbnN0IHZvaWQqIGxvZ0lkZW50aWZpZXIoKSBjb25zdCB7IHJldHVybiBt
X2xvZ0lkZW50aWZpZXI7IH0KICAgICBXVEZMb2dDaGFubmVsJiBsb2dDaGFubmVsKCkgY29uc3Q7
CiAKLSAgICBlbnVtIEVuYWJsZWQgOiB1aW50OF90IHsgVW5rbm93biwgRmFsc2UsIFRydWUgfTsK
LQogICAgIGNvbnN0IHVpbnQ2NF90IG1fdHJhY2tJRDsKICAgICBjb25zdCBDTU1lZGlhVHlwZSBt
X21lZGlhVHlwZTsKICAgICBjb25zdCBNZWRpYVRpbWUgbV9kdXJhdGlvbjsKLSAgICBzdGQ6OmF0
b21pYzxFbmFibGVkPiBtX2lzRW5hYmxlZCB7IEVuYWJsZWQ6OlVua25vd24gfTsKKyAgICBjb25z
dCBPcHRpb25hbDxib29sPiBtX2lzRGVmYXVsdEVuYWJsZWQ7CiAgICAgbXV0YWJsZSBDaGVja2Vk
Q29uZGl0aW9uIG1fc2FtcGxlU3RvcmFnZUNvbmRpdGlvbjsKICAgICBtdXRhYmxlIENoZWNrZWRM
b2NrIG1fc2FtcGxlU3RvcmFnZUxvY2s7Ci0gICAgbXV0YWJsZSBzdGQ6OnVuaXF1ZV9wdHI8U2Ft
cGxlU3RvcmFnZT4gbV9zYW1wbGVTdG9yYWdlIFdURl9HVUFSREVEX0JZX0xPQ0sobV9zYW1wbGVT
dG9yYWdlTG9jayk7CisgICAgc3RkOjp1bmlxdWVfcHRyPFNhbXBsZVN0b3JhZ2U+IG1fc2FtcGxl
U3RvcmFnZSBXVEZfR1VBUkRFRF9CWV9MT0NLKG1fc2FtcGxlU3RvcmFnZUxvY2spOwogICAgIFJl
Zjxjb25zdCBMb2dnZXI+IG1fbG9nZ2VyOwogICAgIGNvbnN0IHZvaWQqIG1fbG9nSWRlbnRpZmll
cjsKIH07Cg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>429751</attachid>
            <date>2021-05-26 05:46:55 -0700</date>
            <delta_ts>2021-05-27 02:18:53 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-226078-20210526154653.patch</filename>
            <type>text/plain</type>
            <size>25020</size>
            <attacher name="Kimmo Kinnunen">kkinnunen</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjc4MDAzCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9DaGFu
Z2VMb2cgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKaW5kZXggNTU3YTI2MzMxMjA3NWMzYjM2YmM4
MzExNTY0MmYyNjNjN2IxNDkzMS4uNmVkYTQ4MTA4ZTkyMzYyYTkzMGVjMjlhMmY2MmJhNTBmZGMy
MWUyYiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3Rz
L0NoYW5nZUxvZwpAQCAtMSwzICsxLDIyIEBACisyMDIxLTA1LTI2ICBLaW1tbyBLaW5udW5lbiAg
PGtraW5udW5lbkBhcHBsZS5jb20+CisKKyAgICAgICAgTWFjT1MgV2ViTSBGb3JtYXQgUmVhZGVy
IHJldHVybnMgZW5hYmxlZCBmb3IgdHJhY2tzIHRoYXQgZG8gbm90IGhhdmUgc2FtcGxlcworICAg
ICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjI2MDc4CisgICAg
ICAgIDxyZGFyOi8vNzQwNDgwNzI+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BT
ISkuCisKKyAgICAgICAgQWZ0ZXIgcjI3NDM3OCB0aGUgV2ViTSBmb3JtYXQgcmVhZGVyIGRvZXMg
bm90IHN1cHBvcnQgV2ViTSB3aXRoIG5vbi1kaXNhYmxlZCBhdWRpbyB0cmFja3MKKyAgICAgICAg
dGhhdCBkbyBub3QgaGF2ZSBhbnkgc2FtcGxlcy4KKyAgICAgICAgUmVtb3ZlIHRoZSBlbXB0eSBh
dWRpbyB0cmFjayBmcm9tIGFsbCByZWQtZ3JlZW4ud2VibXZwOS53ZWJtIGZpbGVzIHNvIHRoYXQg
V2ViR0wKKyAgICAgICAgY29uZm9ybWFuY2UgdGVzdHMgdGhhdCB1c2UgdGhlIGZpbGUgZG8gbm90
IGZhaWwgZHVlIHRvIHRoaXMuCisKKyAgICAgICAgKiBmYXN0L2NhbnZhcy93ZWJnbC9yZXNvdXJj
ZXMvcmVkLWdyZWVuLndlYm12cDgud2VibToKKyAgICAgICAgKiBodHRwL3Rlc3RzL3dlYmdsLzEu
MC4yL3Jlc291cmNlcy93ZWJnbF90ZXN0X2ZpbGVzL2NvbmZvcm1hbmNlL3Jlc291cmNlcy9yZWQt
Z3JlZW4ud2VibXZwOC53ZWJtOgorICAgICAgICAqIHdlYmdsLzEuMC4zL3Jlc291cmNlcy93ZWJn
bF90ZXN0X2ZpbGVzL2NvbmZvcm1hbmNlL3Jlc291cmNlcy9yZWQtZ3JlZW4ud2VibXZwOC53ZWJt
OgorICAgICAgICAqIHdlYmdsLzIuMC4wL3Jlc291cmNlcy93ZWJnbF90ZXN0X2ZpbGVzL3Jlc291
cmNlcy9yZWQtZ3JlZW4ud2VibXZwOC53ZWJtOgorICAgICAgICAqIHdlYmdsL3Jlc291cmNlcy93
ZWJnbF90ZXN0X2ZpbGVzL3Jlc291cmNlcy9yZWQtZ3JlZW4ud2VibXZwOC53ZWJtOgorCiAyMDIx
LTA1LTI1ICBUaW0gTmd1eWVuICA8bnRpbUBhcHBsZS5jb20+CiAKICAgICAgICAgQWRkIGJhc2lj
IDxkaWFsb2c+IGVsZW1lbnQgVUEgc3R5bGVzCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0
L2NhbnZhcy93ZWJnbC9yZXNvdXJjZXMvcmVkLWdyZWVuLndlYm12cDgud2VibSBiL0xheW91dFRl
c3RzL2Zhc3QvY2FudmFzL3dlYmdsL3Jlc291cmNlcy9yZWQtZ3JlZW4ud2VibXZwOC53ZWJtCmlu
ZGV4IGZkZTU5YTE4YjRkZGU5YTEzZjM3YzNmNDYyYWY4OGFkNGIwZjNjM2EuLjFkOWQ2MDM4NTI3
NDk4MDRhMjI4Yjg0MmY4YTU2N2I2MGE3MDE5MjggMTAwNjQ0CkdJVCBiaW5hcnkgcGF0Y2gKZGVs
dGEgNTc3CnpjbWFESHkzdj9iJUp1JUBgNGYzR3koQWsyZVBAXkteNDtBWHl0K2x5YjdmbGFuI1Az
P28+PDdiWSN7SE5AOXJMOwp6b0tWUSZeeCFwM2owekMwT3o+YD9XUnBidTglNzImaEA5OU04Mzsw
OWdWeXpwJkhQUmR6NzBKLWlEaFl+bVU7JHkKemg2YVk9andvRTAmSktzbyo8aFVAZHljTXk4ZT88
NGsrSndfJEZnYUxZVV9eb1JaT21EUkheNk8mPXwwKnYwK3Z0Cno2VVkmN2k7Sk9aKXNoYzFxQFJG
dEJ3WkpgeVpTbCV5U042cXc0KyFCUzh0cXJwZ1MzMWNLVjQkdThUV2RMVzNNYgp6SnBLSiMrTlQm
OFNiPm08b341fj0wVD9oYSRVQVJpRC1FIUUtcEhgfHI7eFAobzc/KjVPPzwrZTloQkZ6KWpORkkK
ei1NX2ghVlNDczJNI2hnI2pGVWJ6R1ZoK2F4cnVTWV9ITEwrNlhQWTI1VkluWjVjNGRNNVgoaitB
PVZfMjVTdF5DCno1VzV5Z2kyVnxoNVhVRXc1TjhycHMycGZ4Nlcxd183fXNZY1dqdFc+ZDc2PWdf
X0I2UypiSDx4KVR4NChKflhtYApmXnprbyZEZ3VmJEY8dD0pMzdRfVlHNEJCaDJefmNlVihrUzBj
VWJmeQoKZGVsdGEgNDE4NAp6Y21iNmNZZnpJe19JXlBpTDVlJkEwd1BUaU5gaz45NVpye3EmUE5h
PmsqSWArZlUrJXdEMlRPXjJyYXZIbEpHSmgKenVuKz5wZkduP3xwLTJrfF4pV2pgd0xBbng1R2xI
eVNzenJYYiQ3PlZjZUtCez1PKTMwYzZXQ0EmSGNYSWJNODYhCnorPFZeWDRfaSFqXnAzc1BOZyhz
e1d9UGlOS0IoNzQodE0xM1RYT2tpO3dQbzxCR1pBeVVkPXRwPHRsKFlsS1Mhegp6ZHk1SDwxQHVZ
MGo2d0UhM3lBcHUzQFpNK2ItI3U+JjdRajI9KF5mOUQhaCpzOHkmUkpVJFJhfU80S0xnR1liIWQK
emhpPSkqLXg5Sm5kTF5YbnN7Tl9lREp0VFBgVkRWKTR+KTVBJjlCezdwKE98ViU7Jl8ldXgjZT8k
M0UrPjVlcGhaCnpJalNMQUd7fHFMcjleKEBWMGxAfUoxS2trQl5xTVdWbStVNVFhT0Y1Kj5nI3dQ
Sio4I19fY0Rue0FOS3owWnomYQp6UEhwciVEWjhhWVFEVFhQXjF2Izw8PEE8KmtkfENKWUNifCV3
I0hmM3ZGOFFGSC1SWDhVeStybyNBdTU4R0QxSlcKemdZcWZuLXdUOXxXaTwjUDYtdiFMbnpMb007
dm5PMlpkUXQhaTZMVHloSHloZCFhfkN0dGtePWlxVWVKaHhrQXB5CnpHVHE+bkFDYk1FRW11VD1x
R1hfYC0tY31vQSM1IT52Vn0xejFmbHtGSD1aJTdvfmNibiRRaHdge248fFMyU2pZNgp6ek1XT25x
PnNiMShVNktKZVQ4YiZRJno8dFRtQ1MzKzNwQ2ZMMjRHUXJ0YDdyKDZyIzdYSkN6QE9efn5iZX0t
WFMKem5RJmh+eVlqRU1XSmtLc2NqcTBNVyhRRTtOVkExMkF+S0Z5TXdqQUdtWD14VzM3LT1faVY1
Yks3S0tDNSp8dVZiCnomPFJGS2VDVSZ8YGR0eEUmVVYmQmU4KU9KQlV+R05VVWY/eCZ6KDxeXzVI
O3o8MEl2P1Y1IUNXcF95O09mV3J2dwp6eXQxOHpSSl5+SS1RQT5zeSh8fUZBVD9ZUj9XbSlSYHNx
e3NKfnc5bGNSJU1PeFB7TSMjVT5fNmxIbj1IKmpwJUgKekNAZmVnSmY3QjZ3KHI5NnY8cWVYP3Yh
UGBFWCh2UCQzcTQwdEs7YHg7JGdsI2dGdFBZMWRXVUE0bk9hWGhrXzI5CnooKCt5ayVFbjR6Jn4k
IW1VOGt0fnpAZmd9PUhaLUFoVG9lUzs3a29Ubm5AND1CPX44fEhGVz1DOTd0PUZ8RkB4OQp6alV7
cz9mKUVNbjlNQVV8Ji1hZyZgajBDKF9HVHFkQWgwVmI8JX13TEpDd1h9V2g5SXAkRl5QNSRLVXVO
ZSUtUGkKenU7fiNaeGp2KSRLRyM0VyglP0JvXytEa3lmPk4+byVEXzVWXns3QHM3fEB1VjJDbCs5
ZVczQT5uaV5Ke1g7ekZICnpfVnNNMSN5REM7MGZEeXQ4LWApVkBaeUhSJD8mTW5Mfm93XnE5VW18
QFM+QHkqPSlxYShfVntVUFdJJWYoWTh9Rgp6MklhS0soT3xVOWlkPnVSJnpXdStsJldkM3I1Mnwj
dVNfNyF5PUFhQi1BeDdOdj5DKFd2bHI8d3RJIyhHNHFaJkwKelktbnsyKTkraVJ6WXNoQ2oqN29G
PVV0Pl8hMGdCRG1WZSUkVmNnR01oeT5HUi10aW5lVUNjT01XMHlyfGJ+RWRKCnprTndIMXpLdUo8
P28jPHkqSzhNP083PSotMColTHQmMzkpWVJPKVFAPD5pbXJwKUoxTHJLPTJAV0RRO3FvI05uNgp6
QDczdnVyPU1NUWomYkNremF7MmBnRFkxTEojSk9AM0Y3ak1MdG13REh0TUJmdyRUei1Ve14rVlpN
Mj0ySWFKRDwKejZxOVYjODM+TSojKFU7fShgRG9BaWdFTE1wOUkkYzdfKl9saUQ2TzZOeSZRKS0l
STxyO09vIUpHVlQ9SVRSNDdpCnpxNTdUbTwqV1V1UVR7cjk1UUkqdElXK1pJUm93QkdsM2haWSNs
fD4oUkFBS3xgU2tIUnBLRXBnSXx1d0Z3PlVTUgp6XkxEQEImQVA9VkBGYT11OE1FI01hfnxAPHRy
PklTXjB7UkJlNCtnQXV6Y1U9JEoyKGJWUGdyTmRrWTBDO3MqemMKenBQKihqUFBnVmlAemNodGRD
MEhYQit+aCg+RTBAOEpYbTJjb2w+PHZGP0JmbkVQISQ8Jm9vdEAoTi0+TFlnaVNICnp4Zk88PGl5
ZW4yYDxgQzx6dkZmTT5gP2ZfZmNTfTNfXipoYzV3MUBSI01BJnNeMV5hU1JuI28jXmpQZnJse1A/
Vgp6cX1GayNJaVZ5LWdYZzg7XlV+bnRxXk10biVGaHc9SmpvbW5ibFpUQzdlZTIzYj5JR2psV1NK
M3BkdmJsRCpEb0EKemJicks/bWReY0VDdSVvczd5V35vYy0/dTtraHAwXlI3U3UzRiNYVSpXenh5
JmJKPW14IU5YJXg9QSpPcmtOfk51CnotM3ZMNTZGdzNmcFBlPmZEKlRBJWtjM1gkYUk9PTZreSMk
OzdEYytuKUBpbn1mUkxCNDI4TStjNlY0X1B2cGcjOwp6UD5xRGVsRHk+cUw3TmF4PnxRfWpAKzQl
RVdWdjJMJF5QWTdyLUgyc0N3TSlDP2FhKi1ISj9CeTdEKmpMXm8qeUwKenI5RiVNJl56QWtleVRf
MEkpblkoQH5JI31KP0RNczhAYUJWUj9BITBZSmFtTm10czlJTFgwOTxYYShYcHlzLTRlCnpAX0Im
WlMtZXt9Wk1PNmZDMzNEYl9YO253MlhKK3paZF40JllRaTQ4Kj0+QDFlVGRGRFNBX1Z3PkA+Kjhh
WExBSAp6KWJnfWVkeFVpSUJIdWE8c3JuZmNwPUtkO3E5Zkpnc0x2Rm9Nd1VrRUlCVlpjTGxUPTB5
LTdOT2k3OG1aMjN+LU4KekomVHRlZlNoZzd7aUYxJFRmQnNDXz5JUWdqKXtFRSZiZSlNYSFDQ1pl
bXQxRXZAUjhPKHs4P2khP0ckbmF3IWxfCnpwZXRMZnRGMVg9Nn59MiQmVigyLXtMI24qZSZlSH00
cHQ/VWpoQE1UJmVWJS0zM04kZmE+bUR0c2Z8ayY5VnxuNAp6JiFzSU8+ODNkKnB7VjU7VVpaJnVJ
eWZEOFYjYSNJO3xqYihQZnk9a3BxJTRMZk81Z01CZ2ZFZj5WZTIxJjRsdj4KejhTQXh4UV5CNW5Q
YnJ1eEliKSRndUZlSTxPTU0paEJuI30tKjM8TGRyTX1IbTI8cGImMjY+dkBlR0NuNzVWfTc/CnpB
alN3YTtAYTUoPklUViRYTmN9UztEQHdlIW0zTyQqWFNzNzYqe3pNI3RZK14qLX5pYCt2cCQrM1RU
aTwjfkhoJQp6cTJnZDtxdHVxIXBpX3hXajRyOF5aSHY/IWBTN012JWdURyNweXlFS1djc1lAZitj
XlVuRVNYej5CPTtFTFEqJTsKeldqTTN6YnpKQldjOFJZdzBXUSMoNFJrSF8oZz9zZ0w2JHVSQndj
IWBAWUB6OEI7Q19NTExrempAWEV1eExSXiF+CnozVUB+JV94WCh+VntVNjhYazRXMEVAfTtnaWhX
NGVXeCpJQ1ooMHBkKU17MDtBX0VNOVJUVklXJjFDQjdhUjZ1egp6UjhAdjZlTldIUkU1cTBYM2s4
ezlXQm90OUd5PHdHa2I3T2c4SD0rUHEyMTZTMjdRKVVQK0gmN0tMVXxXUVE7SSgKeiVCOFpRKVl2
aCpvUH19aHZmOTt0T3NJaUw/UUN0JndwTHxZWFphMipUZWtsK1pAKzQkYGM+NTJ1ey1IYD1Zfj57
Cno9WDlBM25PMGdJKjZWLVR5fmJ8Nl9rYiYrKCFsYzNUSkU/MGRZeEc4RjAyeDswdmEwQUU2KWtG
VCZsNl9jS1R0aQp6JDQhQktkelVgRmwwRXpvWXk+ekpUcWJAMFRCY0UtZWxtRjJ2LXZPK0VTQ3Az
Uyh0YlRhQiNkbGpgJCtyYGJSelUKenMkKkhyYHx4VnN4cDRMKTw8OT4zYlhvN3ZUYiklcGpPIWl4
JTE8djE5aXUxMCV1cElLX1I+PzwlVXcjWmNmSW47CnpIISZFOV5TfmNBV21sV1YoIXFJWEB+WX0h
KXgySWdaSHZlI0p8WTc9cVhXSD9KdSo5Sz53VlNPSU9ybFkoY3BoJAp6KnYrdFdOeE05aTtBQE9o
Kz16QmolP3JeYFNIV3l2dmdMKkxRa2BAWElQZTA8M296Y2NhSWtPPkFVM15URnpXU0UKenN0UGt4
JkR7WXM8RzRuPGYoUHJSeip4NHRVPDgjbzBHKVkzM3s1Ki1OVkRgNGRMN1VpdHFVTHQxWHZlOTVe
UTdQCnpmQz10QzhaYSVNbjc8fUdHd019WDVAMFBXU1EzQzE2cVc+X2J3amZ4eSk/KUlMTmN8JWQy
bXh1QFJ6JjdgWFZWaQp6PSVNa1hJZHF7eGIrKyQ2fDVmQFlSZjxXRz12PlRwQDVnT2pjU1FFZ3Ex
MnNuTSlhZ2VlN2N5Kndsa0dnMXNSKUUKel5eTC0qQ2FHaUFYNn5ebj9oZTdEQjttTHg8bnY7TFkr
T1Ihc0J9YEphWVRHRnU5a3V2KTtleXk4Y1VLfW40S2VTCnpOOHxae3I/KDskdC1iRENwJmV5Iyty
MyNxLThTa2Ard3phbCNMUyh6JU5OdkpaMSZITFg0bmc8TGcoVUNBQ2pRKQp6YDQ3cWl8TXNrT0xy
WXM/KHN2fXRrczspUj9uNUhHaX5SZ0xQQXpgPj49bU45Y3JuPnJMOWAzM0JlV0kwTE1UcUUKeilA
cE1lXkNLZEVNKyYhWGp9eW81KzU/Rz5GcWJrQzVtYyhCPEhqKFJgZXd7PGZ1KzxzTT1XViMyQihP
KG9nRk8qCnp5SEEmam9sKnVKVHxjJE1CQDtoYUU+e2d8Vm0/M2RRYlQtUz5eZ1k0ZGEjKDdUTHMh
PXVMOVRudW5NIypUP0pDegp6U0FqSStEc2IpQSpJKXNiPFQmO2sjLUxNKjc0LVdOZ1hALTdmaTU0
YzBeTyp1TEh6Z0xkTDNXT0FBWU9AX2B+bHkKSnhDLT85QCF4NjNCYVEkNwoKZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL2h0dHAvdGVzdHMvd2ViZ2wvMS4wLjIvcmVzb3VyY2VzL3dlYmdsX3Rlc3Rf
ZmlsZXMvY29uZm9ybWFuY2UvcmVzb3VyY2VzL3JlZC1ncmVlbi53ZWJtdnA4LndlYm0gYi9MYXlv
dXRUZXN0cy9odHRwL3Rlc3RzL3dlYmdsLzEuMC4yL3Jlc291cmNlcy93ZWJnbF90ZXN0X2ZpbGVz
L2NvbmZvcm1hbmNlL3Jlc291cmNlcy9yZWQtZ3JlZW4ud2VibXZwOC53ZWJtCmluZGV4IGZkZTU5
YTE4YjRkZGU5YTEzZjM3YzNmNDYyYWY4OGFkNGIwZjNjM2EuLjFkOWQ2MDM4NTI3NDk4MDRhMjI4
Yjg0MmY4YTU2N2I2MGE3MDE5MjggMTAwNjQ0CkdJVCBiaW5hcnkgcGF0Y2gKZGVsdGEgNTc3Cnpj
bWFESHkzdj9iJUp1JUBgNGYzR3koQWsyZVBAXkteNDtBWHl0K2x5YjdmbGFuI1AzP28+PDdiWSN7
SE5AOXJMOwp6b0tWUSZeeCFwM2owekMwT3o+YD9XUnBidTglNzImaEA5OU04MzswOWdWeXpwJkhQ
UmR6NzBKLWlEaFl+bVU7JHkKemg2YVk9andvRTAmSktzbyo8aFVAZHljTXk4ZT88NGsrSndfJEZn
YUxZVV9eb1JaT21EUkheNk8mPXwwKnYwK3Z0Cno2VVkmN2k7Sk9aKXNoYzFxQFJGdEJ3WkpgeVpT
bCV5U042cXc0KyFCUzh0cXJwZ1MzMWNLVjQkdThUV2RMVzNNYgp6SnBLSiMrTlQmOFNiPm08b341
fj0wVD9oYSRVQVJpRC1FIUUtcEhgfHI7eFAobzc/KjVPPzwrZTloQkZ6KWpORkkKei1NX2ghVlND
czJNI2hnI2pGVWJ6R1ZoK2F4cnVTWV9ITEwrNlhQWTI1VkluWjVjNGRNNVgoaitBPVZfMjVTdF5D
Cno1VzV5Z2kyVnxoNVhVRXc1TjhycHMycGZ4Nlcxd183fXNZY1dqdFc+ZDc2PWdfX0I2UypiSDx4
KVR4NChKflhtYApmXnprbyZEZ3VmJEY8dD0pMzdRfVlHNEJCaDJefmNlVihrUzBjVWJmeQoKZGVs
dGEgNDE4NAp6Y21iNmNZZnpJe19JXlBpTDVlJkEwd1BUaU5gaz45NVpye3EmUE5hPmsqSWArZlUr
JXdEMlRPXjJyYXZIbEpHSmgKenVuKz5wZkduP3xwLTJrfF4pV2pgd0xBbng1R2xIeVNzenJYYiQ3
PlZjZUtCez1PKTMwYzZXQ0EmSGNYSWJNODYhCnorPFZeWDRfaSFqXnAzc1BOZyhze1d9UGlOS0Io
NzQodE0xM1RYT2tpO3dQbzxCR1pBeVVkPXRwPHRsKFlsS1Mhegp6ZHk1SDwxQHVZMGo2d0UhM3lB
cHUzQFpNK2ItI3U+JjdRajI9KF5mOUQhaCpzOHkmUkpVJFJhfU80S0xnR1liIWQKemhpPSkqLXg5
Sm5kTF5YbnN7Tl9lREp0VFBgVkRWKTR+KTVBJjlCezdwKE98ViU7Jl8ldXgjZT8kM0UrPjVlcGha
CnpJalNMQUd7fHFMcjleKEBWMGxAfUoxS2trQl5xTVdWbStVNVFhT0Y1Kj5nI3dQSio4I19fY0Ru
e0FOS3owWnomYQp6UEhwciVEWjhhWVFEVFhQXjF2Izw8PEE8KmtkfENKWUNifCV3I0hmM3ZGOFFG
SC1SWDhVeStybyNBdTU4R0QxSlcKemdZcWZuLXdUOXxXaTwjUDYtdiFMbnpMb007dm5PMlpkUXQh
aTZMVHloSHloZCFhfkN0dGtePWlxVWVKaHhrQXB5CnpHVHE+bkFDYk1FRW11VD1xR1hfYC0tY31v
QSM1IT52Vn0xejFmbHtGSD1aJTdvfmNibiRRaHdge248fFMyU2pZNgp6ek1XT25xPnNiMShVNktK
ZVQ4YiZRJno8dFRtQ1MzKzNwQ2ZMMjRHUXJ0YDdyKDZyIzdYSkN6QE9efn5iZX0tWFMKem5RJmh+
eVlqRU1XSmtLc2NqcTBNVyhRRTtOVkExMkF+S0Z5TXdqQUdtWD14VzM3LT1faVY1Yks3S0tDNSp8
dVZiCnomPFJGS2VDVSZ8YGR0eEUmVVYmQmU4KU9KQlV+R05VVWY/eCZ6KDxeXzVIO3o8MEl2P1Y1
IUNXcF95O09mV3J2dwp6eXQxOHpSSl5+SS1RQT5zeSh8fUZBVD9ZUj9XbSlSYHNxe3NKfnc5bGNS
JU1PeFB7TSMjVT5fNmxIbj1IKmpwJUgKekNAZmVnSmY3QjZ3KHI5NnY8cWVYP3YhUGBFWCh2UCQz
cTQwdEs7YHg7JGdsI2dGdFBZMWRXVUE0bk9hWGhrXzI5CnooKCt5ayVFbjR6Jn4kIW1VOGt0fnpA
Zmd9PUhaLUFoVG9lUzs3a29Ubm5AND1CPX44fEhGVz1DOTd0PUZ8RkB4OQp6alV7cz9mKUVNbjlN
QVV8Ji1hZyZgajBDKF9HVHFkQWgwVmI8JX13TEpDd1h9V2g5SXAkRl5QNSRLVXVOZSUtUGkKenU7
fiNaeGp2KSRLRyM0VyglP0JvXytEa3lmPk4+byVEXzVWXns3QHM3fEB1VjJDbCs5ZVczQT5uaV5K
e1g7ekZICnpfVnNNMSN5REM7MGZEeXQ4LWApVkBaeUhSJD8mTW5Mfm93XnE5VW18QFM+QHkqPSlx
YShfVntVUFdJJWYoWTh9Rgp6MklhS0soT3xVOWlkPnVSJnpXdStsJldkM3I1MnwjdVNfNyF5PUFh
Qi1BeDdOdj5DKFd2bHI8d3RJIyhHNHFaJkwKelktbnsyKTkraVJ6WXNoQ2oqN29GPVV0Pl8hMGdC
RG1WZSUkVmNnR01oeT5HUi10aW5lVUNjT01XMHlyfGJ+RWRKCnprTndIMXpLdUo8P28jPHkqSzhN
P083PSotMColTHQmMzkpWVJPKVFAPD5pbXJwKUoxTHJLPTJAV0RRO3FvI05uNgp6QDczdnVyPU1N
UWomYkNremF7MmBnRFkxTEojSk9AM0Y3ak1MdG13REh0TUJmdyRUei1Ve14rVlpNMj0ySWFKRDwK
ejZxOVYjODM+TSojKFU7fShgRG9BaWdFTE1wOUkkYzdfKl9saUQ2TzZOeSZRKS0lSTxyO09vIUpH
VlQ9SVRSNDdpCnpxNTdUbTwqV1V1UVR7cjk1UUkqdElXK1pJUm93QkdsM2haWSNsfD4oUkFBS3xg
U2tIUnBLRXBnSXx1d0Z3PlVTUgp6XkxEQEImQVA9VkBGYT11OE1FI01hfnxAPHRyPklTXjB7UkJl
NCtnQXV6Y1U9JEoyKGJWUGdyTmRrWTBDO3MqemMKenBQKihqUFBnVmlAemNodGRDMEhYQit+aCg+
RTBAOEpYbTJjb2w+PHZGP0JmbkVQISQ8Jm9vdEAoTi0+TFlnaVNICnp4Zk88PGl5ZW4yYDxgQzx6
dkZmTT5gP2ZfZmNTfTNfXipoYzV3MUBSI01BJnNeMV5hU1JuI28jXmpQZnJse1A/Vgp6cX1GayNJ
aVZ5LWdYZzg7XlV+bnRxXk10biVGaHc9SmpvbW5ibFpUQzdlZTIzYj5JR2psV1NKM3BkdmJsRCpE
b0EKemJicks/bWReY0VDdSVvczd5V35vYy0/dTtraHAwXlI3U3UzRiNYVSpXenh5JmJKPW14IU5Y
JXg9QSpPcmtOfk51CnotM3ZMNTZGdzNmcFBlPmZEKlRBJWtjM1gkYUk9PTZreSMkOzdEYytuKUBp
bn1mUkxCNDI4TStjNlY0X1B2cGcjOwp6UD5xRGVsRHk+cUw3TmF4PnxRfWpAKzQlRVdWdjJMJF5Q
WTdyLUgyc0N3TSlDP2FhKi1ISj9CeTdEKmpMXm8qeUwKenI5RiVNJl56QWtleVRfMEkpblkoQH5J
I31KP0RNczhAYUJWUj9BITBZSmFtTm10czlJTFgwOTxYYShYcHlzLTRlCnpAX0ImWlMtZXt9Wk1P
NmZDMzNEYl9YO253MlhKK3paZF40JllRaTQ4Kj0+QDFlVGRGRFNBX1Z3PkA+KjhhWExBSAp6KWJn
fWVkeFVpSUJIdWE8c3JuZmNwPUtkO3E5Zkpnc0x2Rm9Nd1VrRUlCVlpjTGxUPTB5LTdOT2k3OG1a
MjN+LU4KekomVHRlZlNoZzd7aUYxJFRmQnNDXz5JUWdqKXtFRSZiZSlNYSFDQ1plbXQxRXZAUjhP
KHs4P2khP0ckbmF3IWxfCnpwZXRMZnRGMVg9Nn59MiQmVigyLXtMI24qZSZlSH00cHQ/VWpoQE1U
JmVWJS0zM04kZmE+bUR0c2Z8ayY5VnxuNAp6JiFzSU8+ODNkKnB7VjU7VVpaJnVJeWZEOFYjYSNJ
O3xqYihQZnk9a3BxJTRMZk81Z01CZ2ZFZj5WZTIxJjRsdj4KejhTQXh4UV5CNW5QYnJ1eEliKSRn
dUZlSTxPTU0paEJuI30tKjM8TGRyTX1IbTI8cGImMjY+dkBlR0NuNzVWfTc/CnpBalN3YTtAYTUo
PklUViRYTmN9UztEQHdlIW0zTyQqWFNzNzYqe3pNI3RZK14qLX5pYCt2cCQrM1RUaTwjfkhoJQp6
cTJnZDtxdHVxIXBpX3hXajRyOF5aSHY/IWBTN012JWdURyNweXlFS1djc1lAZitjXlVuRVNYej5C
PTtFTFEqJTsKeldqTTN6YnpKQldjOFJZdzBXUSMoNFJrSF8oZz9zZ0w2JHVSQndjIWBAWUB6OEI7
Q19NTExrempAWEV1eExSXiF+CnozVUB+JV94WCh+VntVNjhYazRXMEVAfTtnaWhXNGVXeCpJQ1oo
MHBkKU17MDtBX0VNOVJUVklXJjFDQjdhUjZ1egp6UjhAdjZlTldIUkU1cTBYM2s4ezlXQm90OUd5
PHdHa2I3T2c4SD0rUHEyMTZTMjdRKVVQK0gmN0tMVXxXUVE7SSgKeiVCOFpRKVl2aCpvUH19aHZm
OTt0T3NJaUw/UUN0JndwTHxZWFphMipUZWtsK1pAKzQkYGM+NTJ1ey1IYD1Zfj57Cno9WDlBM25P
MGdJKjZWLVR5fmJ8Nl9rYiYrKCFsYzNUSkU/MGRZeEc4RjAyeDswdmEwQUU2KWtGVCZsNl9jS1R0
aQp6JDQhQktkelVgRmwwRXpvWXk+ekpUcWJAMFRCY0UtZWxtRjJ2LXZPK0VTQ3AzUyh0YlRhQiNk
bGpgJCtyYGJSelUKenMkKkhyYHx4VnN4cDRMKTw8OT4zYlhvN3ZUYiklcGpPIWl4JTE8djE5aXUx
MCV1cElLX1I+PzwlVXcjWmNmSW47CnpIISZFOV5TfmNBV21sV1YoIXFJWEB+WX0hKXgySWdaSHZl
I0p8WTc9cVhXSD9KdSo5Sz53VlNPSU9ybFkoY3BoJAp6KnYrdFdOeE05aTtBQE9oKz16QmolP3Je
YFNIV3l2dmdMKkxRa2BAWElQZTA8M296Y2NhSWtPPkFVM15URnpXU0UKenN0UGt4JkR7WXM8RzRu
PGYoUHJSeip4NHRVPDgjbzBHKVkzM3s1Ki1OVkRgNGRMN1VpdHFVTHQxWHZlOTVeUTdQCnpmQz10
QzhaYSVNbjc8fUdHd019WDVAMFBXU1EzQzE2cVc+X2J3amZ4eSk/KUlMTmN8JWQybXh1QFJ6Jjdg
WFZWaQp6PSVNa1hJZHF7eGIrKyQ2fDVmQFlSZjxXRz12PlRwQDVnT2pjU1FFZ3ExMnNuTSlhZ2Vl
N2N5Kndsa0dnMXNSKUUKel5eTC0qQ2FHaUFYNn5ebj9oZTdEQjttTHg8bnY7TFkrT1Ihc0J9YEph
WVRHRnU5a3V2KTtleXk4Y1VLfW40S2VTCnpOOHxae3I/KDskdC1iRENwJmV5IytyMyNxLThTa2Ar
d3phbCNMUyh6JU5OdkpaMSZITFg0bmc8TGcoVUNBQ2pRKQp6YDQ3cWl8TXNrT0xyWXM/KHN2fXRr
czspUj9uNUhHaX5SZ0xQQXpgPj49bU45Y3JuPnJMOWAzM0JlV0kwTE1UcUUKeilAcE1lXkNLZEVN
KyYhWGp9eW81KzU/Rz5GcWJrQzVtYyhCPEhqKFJgZXd7PGZ1KzxzTT1XViMyQihPKG9nRk8qCnp5
SEEmam9sKnVKVHxjJE1CQDtoYUU+e2d8Vm0/M2RRYlQtUz5eZ1k0ZGEjKDdUTHMhPXVMOVRudW5N
IypUP0pDegp6U0FqSStEc2IpQSpJKXNiPFQmO2sjLUxNKjc0LVdOZ1hALTdmaTU0YzBeTyp1TEh6
Z0xkTDNXT0FBWU9AX2B+bHkKSnhDLT85QCF4NjNCYVEkNwoKZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL3dlYmdsLzEuMC4zL3Jlc291cmNlcy93ZWJnbF90ZXN0X2ZpbGVzL2NvbmZvcm1hbmNlL3Jl
c291cmNlcy9yZWQtZ3JlZW4ud2VibXZwOC53ZWJtIGIvTGF5b3V0VGVzdHMvd2ViZ2wvMS4wLjMv
cmVzb3VyY2VzL3dlYmdsX3Rlc3RfZmlsZXMvY29uZm9ybWFuY2UvcmVzb3VyY2VzL3JlZC1ncmVl
bi53ZWJtdnA4LndlYm0KaW5kZXggZmRlNTlhMThiNGRkZTlhMTNmMzdjM2Y0NjJhZjg4YWQ0YjBm
M2MzYS4uMWQ5ZDYwMzg1Mjc0OTgwNGEyMjhiODQyZjhhNTY3YjYwYTcwMTkyOCAxMDA2NDQKR0lU
IGJpbmFyeSBwYXRjaApkZWx0YSA1NzcKemNtYURIeTN2P2IlSnUlQGA0ZjNHeShBazJlUEBeS140
O0FYeXQrbHliN2ZsYW4jUDM/bz48N2JZI3tITkA5ckw7CnpvS1ZRJl54IXAzajB6QzBPej5gP1dS
cGJ1OCU3MiZoQDk5TTgzOzA5Z1Z5enAmSFBSZHo3MEotaURoWX5tVTskeQp6aDZhWT1qd29FMCZK
S3NvKjxoVUBkeWNNeThlPzw0aytKd18kRmdhTFlVX15vUlpPbURSSF42TyY9fDAqdjArdnQKejZV
WSY3aTtKT1opc2hjMXFAUkZ0QndaSmB5WlNsJXlTTjZxdzQrIUJTOHRxcnBnUzMxY0tWNCR1OFRX
ZExXM01iCnpKcEtKIytOVCY4U2I+bTxvfjV+PTBUP2hhJFVBUmlELUUhRS1wSGB8cjt4UChvNz8q
NU8/PCtlOWhCRnopak5GSQp6LU1faCFWU0NzMk0jaGcjakZVYnpHVmgrYXhydVNZX0hMTCs2WFBZ
MjVWSW5aNWM0ZE01WChqK0E9Vl8yNVN0XkMKejVXNXlnaTJWfGg1WFVFdzVOOHJwczJwZng2VzF3
Xzd9c1ljV2p0Vz5kNzY9Z19fQjZTKmJIPHgpVHg0KEp+WG1gCmZeemtvJkRndWYkRjx0PSkzN1F9
WUc0QkJoMl5+Y2VWKGtTMGNVYmZ5CgpkZWx0YSA0MTg0CnpjbWI2Y1lmekl7X0leUGlMNWUmQTB3
UFRpTmBrPjk1WnJ7cSZQTmE+aypJYCtmVSsld0QyVE9eMnJhdkhsSkdKaAp6dW4rPnBmR24/fHAt
Mmt8XilXamB3TEFueDVHbEh5U3N6clhiJDc+VmNlS0J7PU8pMzBjNldDQSZIY1hJYk04NiEKeis8
Vl5YNF9pIWpecDNzUE5nKHN7V31QaU5LQig3NCh0TTEzVFhPa2k7d1BvPEJHWkF5VWQ9dHA8dGwo
WWxLUyF6CnpkeTVIPDFAdVkwajZ3RSEzeUFwdTNAWk0rYi0jdT4mN1FqMj0oXmY5RCFoKnM4eSZS
SlUkUmF9TzRLTGdHWWIhZAp6aGk9KSoteDlKbmRMXlhuc3tOX2VESnRUUGBWRFYpNH4pNUEmOUJ7
N3AoT3xWJTsmXyV1eCNlPyQzRSs+NWVwaFoKeklqU0xBR3t8cUxyOV4oQFYwbEB9SjFLa2tCXnFN
V1ZtK1U1UWFPRjUqPmcjd1BKKjgjX19jRG57QU5LejBaeiZhCnpQSHByJURaOGFZUURUWFBeMXYj
PDw8QTwqa2R8Q0pZQ2J8JXcjSGYzdkY4UUZILVJYOFV5K3JvI0F1NThHRDFKVwp6Z1lxZm4td1Q5
fFdpPCNQNi12IUxuekxvTTt2bk8yWmRRdCFpNkxUeWhIeWhkIWF+Q3R0a149aXFVZUpoeGtBcHkK
ekdUcT5uQUNiTUVFbXVUPXFHWF9gLS1jfW9BIzUhPnZWfTF6MWZse0ZIPVolN29+Y2JuJFFod2B7
bjx8UzJTalk2Cnp6TVdPbnE+c2IxKFU2S0plVDhiJlEmejx0VG1DUzMrM3BDZkwyNEdRcnRgN3Io
NnIjN1hKQ3pAT15+fmJlfS1YUwp6blEmaH55WWpFTVdKa0tzY2pxME1XKFFFO05WQTEyQX5LRnlN
d2pBR21YPXhXMzctPV9pVjViSzdLS0M1Knx1VmIKeiY8UkZLZUNVJnxgZHR4RSZVViZCZTgpT0pC
VX5HTlVVZj94JnooPF5fNUg7ejwwSXY/VjUhQ1dwX3k7T2ZXcnZ3Cnp5dDE4elJKXn5JLVFBPnN5
KHx9RkFUP1lSP1dtKVJgc3F7c0p+dzlsY1IlTU94UHtNIyNVPl82bEhuPUgqanAlSAp6Q0BmZWdK
ZjdCNncocjk2djxxZVg/diFQYEVYKHZQJDNxNDB0SztgeDskZ2wjZ0Z0UFkxZFdVQTRuT2FYaGtf
MjkKeigoK3lrJUVuNHomfiQhbVU4a3R+ekBmZ309SFotQWhUb2VTOzdrb1RubkA0PUI9fjh8SEZX
PUM5N3Q9RnxGQHg5CnpqVXtzP2YpRU1uOU1BVXwmLWFnJmBqMEMoX0dUcWRBaDBWYjwlfXdMSkN3
WH1XaDlJcCRGXlA1JEtVdU5lJS1QaQp6dTt+I1p4anYpJEtHIzRXKCU/Qm9fK0RreWY+Tj5vJURf
NVZeezdAczd8QHVWMkNsKzllVzNBPm5pXkp7WDt6RkgKel9Wc00xI3lEQzswZkR5dDgtYClWQFp5
SFIkPyZNbkx+b3decTlVbXxAUz5AeSo9KXFhKF9We1VQV0klZihZOH1GCnoySWFLSyhPfFU5aWQ+
dVImeld1K2wmV2QzcjUyfCN1U183IXk9QWFCLUF4N052PkMoV3Zscjx3dEkjKEc0cVomTAp6WS1u
ezIpOStpUnpZc2hDaio3b0Y9VXQ+XyEwZ0JEbVZlJSRWY2dHTWh5PkdSLXRpbmVVQ2NPTVcweXJ8
Yn5FZEoKemtOd0gxekt1Sjw/byM8eSpLOE0/Tzc9Ki0wKiVMdCYzOSlZUk8pUUA8PmltcnApSjFM
cks9MkBXRFE7cW8jTm42CnpANzN2dXI9TU1RaiZiQ2t6YXsyYGdEWTFMSiNKT0AzRjdqTUx0bXdE
SHRNQmZ3JFR6LVV7XitWWk0yPTJJYUpEPAp6NnE5ViM4Mz5NKiMoVTt9KGBEb0FpZ0VMTXA5SSRj
N18qX2xpRDZPNk55JlEpLSVJPHI7T28hSkdWVD1JVFI0N2kKenE1N1RtPCpXVXVRVHtyOTVRSSp0
SVcrWklSb3dCR2wzaFpZI2x8PihSQUFLfGBTa0hScEtFcGdJfHV3Rnc+VVNSCnpeTERAQiZBUD1W
QEZhPXU4TUUjTWF+fEA8dHI+SVNeMHtSQmU0K2dBdXpjVT0kSjIoYlZQZ3JOZGtZMEM7cyp6Ywp6
cFAqKGpQUGdWaUB6Y2h0ZEMwSFhCK35oKD5FMEA4SlhtMmNvbD48dkY/QmZuRVAhJDwmb290QChO
LT5MWWdpU0gKenhmTzw8aXllbjJgPGBDPHp2RmZNPmA/Zl9mY1N9M19eKmhjNXcxQFIjTUEmc14x
XmFTUm4jbyNealBmcmx7UD9WCnpxfUZrI0lpVnktZ1hnODteVX5udHFeTXRuJUZodz1Kam9tbmJs
WlRDN2VlMjNiPklHamxXU0ozcGR2YmxEKkRvQQp6YmJySz9tZF5jRUN1JW9zN3lXfm9jLT91O2to
cDBeUjdTdTNGI1hVKld6eHkmYko9bXghTlgleD1BKk9ya05+TnUKei0zdkw1NkZ3M2ZwUGU+ZkQq
VEEla2MzWCRhST09Nmt5IyQ7N0RjK24pQGlufWZSTEI0MjhNK2M2VjRfUHZwZyM7CnpQPnFEZWxE
eT5xTDdOYXg+fFF9akArNCVFV1Z2MkwkXlBZN3ItSDJzQ3dNKUM/YWEqLUhKP0J5N0Qqakxebyp5
TAp6cjlGJU0mXnpBa2V5VF8wSSluWShAfkkjfUo/RE1zOEBhQlZSP0EhMFlKYW1ObXRzOUlMWDA5
PFhhKFhweXMtNGUKekBfQiZaUy1le31aTU82ZkMzM0RiX1g7bncyWEorelpkXjQmWVFpNDgqPT5A
MWVUZEZEU0FfVnc+QD4qOGFYTEFICnopYmd9ZWR4VWlJQkh1YTxzcm5mY3A9S2Q7cTlmSmdzTHZG
b013VWtFSUJWWmNMbFQ9MHktN05PaTc4bVoyM34tTgp6SiZUdGVmU2hnN3tpRjEkVGZCc0NfPklR
Z2ope0VFJmJlKU1hIUNDWmVtdDFFdkBSOE8oezg/aSE/RyRuYXchbF8KenBldExmdEYxWD02fn0y
JCZWKDIte0wjbiplJmVIfTRwdD9VamhATVQmZVYlLTMzTiRmYT5tRHRzZnxrJjlWfG40CnomIXNJ
Tz44M2QqcHtWNTtVWlomdUl5ZkQ4ViNhI0k7fGpiKFBmeT1rcHElNExmTzVnTUJnZkVmPlZlMjEm
NGx2Pgp6OFNBeHhRXkI1blBicnV4SWIpJGd1RmVJPE9NTSloQm4jfS0qMzxMZHJNfUhtMjxwYiYy
Nj52QGVHQ243NVZ9Nz8KekFqU3dhO0BhNSg+SVRWJFhOY31TO0RAd2UhbTNPJCpYU3M3Nip7ek0j
dFkrXiotfmlgK3ZwJCszVFRpPCN+SGglCnpxMmdkO3F0dXEhcGlfeFdqNHI4XlpIdj8hYFM3TXYl
Z1RHI3B5eUVLV2NzWUBmK2NeVW5FU1h6PkI9O0VMUSolOwp6V2pNM3piekpCV2M4Ull3MFdRIyg0
UmtIXyhnP3NnTDYkdVJCd2MhYEBZQHo4QjtDX01MTGt6akBYRXV4TFJeIX4KejNVQH4lX3hYKH5W
e1U2OFhrNFcwRUB9O2dpaFc0ZVd4KklDWigwcGQpTXswO0FfRU05UlRWSVcmMUNCN2FSNnV6CnpS
OEB2NmVOV0hSRTVxMFgzazh7OVdCb3Q5R3k8d0drYjdPZzhIPStQcTIxNlMyN1EpVVArSCY3S0xV
fFdRUTtJKAp6JUI4WlEpWXZoKm9QfX1odmY5O3RPc0lpTD9RQ3Qmd3BMfFlYWmEyKlRla2wrWkAr
NCRgYz41MnV7LUhgPVl+PnsKej1YOUEzbk8wZ0kqNlYtVHl+Ynw2X2tiJisoIWxjM1RKRT8wZFl4
RzhGMDJ4OzB2YTBBRTYpa0ZUJmw2X2NLVHRpCnokNCFCS2R6VWBGbDBFem9ZeT56SlRxYkAwVEJj
RS1lbG1GMnYtdk8rRVNDcDNTKHRiVGFCI2RsamAkK3JgYlJ6VQp6cyQqSHJgfHhWc3hwNEwpPDw5
PjNiWG83dlRiKSVwak8haXglMTx2MTlpdTEwJXVwSUtfUj4/PCVVdyNaY2ZJbjsKekghJkU5XlN+
Y0FXbWxXVighcUlYQH5ZfSEpeDJJZ1pIdmUjSnxZNz1xWFdIP0p1KjlLPndWU09JT3JsWShjcGgk
Cnoqdit0V054TTlpO0FAT2grPXpCaiU/cl5gU0hXeXZ2Z0wqTFFrYEBYSVBlMDwzb3pjY2FJa08+
QVUzXlRGeldTRQp6c3RQa3gmRHtZczxHNG48ZihQclJ6Kng0dFU8OCNvMEcpWTMzezUqLU5WRGA0
ZEw3VWl0cVVMdDFYdmU5NV5RN1AKemZDPXRDOFphJU1uNzx9R0d3TX1YNUAwUFdTUTNDMTZxVz5f
YndqZnh5KT8pSUxOY3wlZDJteHVAUnomN2BYVlZpCno9JU1rWElkcXt4YisrJDZ8NWZAWVJmPFdH
PXY+VHBANWdPamNTUUVncTEyc25NKWFnZWU3Y3kqd2xrR2cxc1IpRQp6Xl5MLSpDYUdpQVg2fl5u
P2hlN0RCO21MeDxudjtMWStPUiFzQn1gSmFZVEdGdTlrdXYpO2V5eThjVUt9bjRLZVMKek44fFp7
cj8oOyR0LWJEQ3AmZXkjK3IzI3EtOFNrYCt3emFsI0xTKHolTk52SloxJkhMWDRuZzxMZyhVQ0FD
alEpCnpgNDdxaXxNc2tPTHJZcz8oc3Z9dGtzOylSP241SEdpflJnTFBBemA+Pj1tTjljcm4+ckw5
YDMzQmVXSTBMTVRxRQp6KUBwTWVeQ0tkRU0rJiFYan15bzUrNT9HPkZxYmtDNW1jKEI8SGooUmBl
d3s8ZnUrPHNNPVdWIzJCKE8ob2dGTyoKenlIQSZqb2wqdUpUfGMkTUJAO2hhRT57Z3xWbT8zZFFi
VC1TPl5nWTRkYSMoN1RMcyE9dUw5VG51bk0jKlQ/SkN6CnpTQWpJK0RzYilBKkkpc2I8VCY7ayMt
TE0qNzQtV05nWEAtN2ZpNTRjMF5PKnVMSHpnTGRMM1dPQUFZT0BfYH5seQpKeEMtPzlAIXg2M0Jh
USQ3CgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvd2ViZ2wvMi4wLjAvcmVzb3VyY2VzL3dlYmds
X3Rlc3RfZmlsZXMvcmVzb3VyY2VzL3JlZC1ncmVlbi53ZWJtdnA4LndlYm0gYi9MYXlvdXRUZXN0
cy93ZWJnbC8yLjAuMC9yZXNvdXJjZXMvd2ViZ2xfdGVzdF9maWxlcy9yZXNvdXJjZXMvcmVkLWdy
ZWVuLndlYm12cDgud2VibQppbmRleCBmZGU1OWExOGI0ZGRlOWExM2YzN2MzZjQ2MmFmODhhZDRi
MGYzYzNhLi4xZDlkNjAzODUyNzQ5ODA0YTIyOGI4NDJmOGE1NjdiNjBhNzAxOTI4IDEwMDY0NApH
SVQgYmluYXJ5IHBhdGNoCmRlbHRhIDU3Nwp6Y21hREh5M3Y/YiVKdSVAYDRmM0d5KEFrMmVQQF5L
XjQ7QVh5dCtseWI3ZmxhbiNQMz9vPjw3Ylkje0hOQDlyTDsKem9LVlEmXnghcDNqMHpDME96PmA/
V1JwYnU4JTcyJmhAOTlNODM7MDlnVnl6cCZIUFJkejcwSi1pRGhZfm1VOyR5CnpoNmFZPWp3b0Uw
JkpLc28qPGhVQGR5Y015OGU/PDRrK0p3XyRGZ2FMWVVfXm9SWk9tRFJIXjZPJj18MCp2MCt2dAp6
NlVZJjdpO0pPWilzaGMxcUBSRnRCd1pKYHlaU2wleVNONnF3NCshQlM4dHFycGdTMzFjS1Y0JHU4
VFdkTFczTWIKekpwS0ojK05UJjhTYj5tPG9+NX49MFQ/aGEkVUFSaUQtRSFFLXBIYHxyO3hQKG83
Pyo1Tz88K2U5aEJGeilqTkZJCnotTV9oIVZTQ3MyTSNoZyNqRlViekdWaCtheHJ1U1lfSExMKzZY
UFkyNVZJblo1YzRkTTVYKGorQT1WXzI1U3ReQwp6NVc1eWdpMlZ8aDVYVUV3NU44cnBzMnBmeDZX
MXdfN31zWWNXanRXPmQ3Nj1nX19CNlMqYkg8eClUeDQoSn5YbWAKZl56a28mRGd1ZiRGPHQ9KTM3
UX1ZRzRCQmgyXn5jZVYoa1MwY1ViZnkKCmRlbHRhIDQxODQKemNtYjZjWWZ6SXtfSV5QaUw1ZSZB
MHdQVGlOYGs+OTVacntxJlBOYT5rKklgK2ZVKyV3RDJUT14ycmF2SGxKR0poCnp1bis+cGZHbj98
cC0ya3xeKVdqYHdMQW54NUdsSHlTc3pyWGIkNz5WY2VLQns9TykzMGM2V0NBJkhjWEliTTg2IQp6
KzxWXlg0X2khal5wM3NQTmcoc3tXfVBpTktCKDc0KHRNMTNUWE9raTt3UG88QkdaQXlVZD10cDx0
bChZbEtTIXoKemR5NUg8MUB1WTBqNndFITN5QXB1M0BaTStiLSN1PiY3UWoyPSheZjlEIWgqczh5
JlJKVSRSYX1PNEtMZ0dZYiFkCnpoaT0pKi14OUpuZExeWG5ze05fZURKdFRQYFZEVik0fik1QSY5
Qns3cChPfFYlOyZfJXV4I2U/JDNFKz41ZXBoWgp6SWpTTEFHe3xxTHI5XihAVjBsQH1KMUtra0Je
cU1XVm0rVTVRYU9GNSo+ZyN3UEoqOCNfX2NEbntBTkt6MFp6JmEKelBIcHIlRFo4YVlRRFRYUF4x
diM8PDxBPCprZHxDSllDYnwldyNIZjN2RjhRRkgtUlg4VXkrcm8jQXU1OEdEMUpXCnpnWXFmbi13
VDl8V2k8I1A2LXYhTG56TG9NO3ZuTzJaZFF0IWk2TFR5aEh5aGQhYX5DdHRrXj1pcVVlSmh4a0Fw
eQp6R1RxPm5BQ2JNRUVtdVQ9cUdYX2AtLWN9b0EjNSE+dlZ9MXoxZmx7Rkg9WiU3b35jYm4kUWh3
YHtuPHxTMlNqWTYKenpNV09ucT5zYjEoVTZLSmVUOGImUSZ6PHRUbUNTMyszcENmTDI0R1FydGA3
cig2ciM3WEpDekBPXn5+YmV9LVhTCnpuUSZofnlZakVNV0prS3NjanEwTVcoUUU7TlZBMTJBfktG
eU13akFHbVg9eFczNy09X2lWNWJLN0tLQzUqfHVWYgp6JjxSRktlQ1UmfGBkdHhFJlVWJkJlOClP
SkJVfkdOVVVmP3gmeig8Xl81SDt6PDBJdj9WNSFDV3BfeTtPZldydncKenl0MTh6UkpefkktUUE+
c3kofH1GQVQ/WVI/V20pUmBzcXtzSn53OWxjUiVNT3hQe00jI1U+XzZsSG49SCpqcCVICnpDQGZl
Z0pmN0I2dyhyOTZ2PHFlWD92IVBgRVgodlAkM3E0MHRLO2B4OyRnbCNnRnRQWTFkV1VBNG5PYVho
a18yOQp6KCgreWslRW40eiZ+JCFtVThrdH56QGZnfT1IWi1BaFRvZVM7N2tvVG5uQDQ9Qj1+OHxI
Rlc9Qzk3dD1GfEZAeDkKempVe3M/ZilFTW45TUFVfCYtYWcmYGowQyhfR1RxZEFoMFZiPCV9d0xK
Q3dYfVdoOUlwJEZeUDUkS1V1TmUlLVBpCnp1O34jWnhqdikkS0cjNFcoJT9Cb18rRGt5Zj5OPm8l
RF81Vl57N0BzN3xAdVYyQ2wrOWVXM0E+bmleSntYO3pGSAp6X1ZzTTEjeURDOzBmRHl0OC1gKVZA
WnlIUiQ/Jk1uTH5vd15xOVVtfEBTPkB5Kj0pcWEoX1Z7VVBXSSVmKFk4fUYKejJJYUtLKE98VTlp
ZD51UiZ6V3UrbCZXZDNyNTJ8I3VTXzcheT1BYUItQXg3TnY+QyhXdmxyPHd0SSMoRzRxWiZMCnpZ
LW57Mik5K2lSellzaENqKjdvRj1VdD5fITBnQkRtVmUlJFZjZ0dNaHk+R1ItdGluZVVDY09NVzB5
cnxifkVkSgp6a053SDF6S3VKPD9vIzx5Kks4TT9PNz0qLTAqJUx0JjM5KVlSTylRQDw+aW1ycClK
MUxySz0yQFdEUTtxbyNObjYKekA3M3Z1cj1NTVFqJmJDa3phezJgZ0RZMUxKI0pPQDNGN2pNTHRt
d0RIdE1CZnckVHotVXteK1ZaTTI9MklhSkQ8Cno2cTlWIzgzPk0qIyhVO30oYERvQWlnRUxNcDlJ
JGM3XypfbGlENk82TnkmUSktJUk8cjtPbyFKR1ZUPUlUUjQ3aQp6cTU3VG08KldVdVFUe3I5NVFJ
KnRJVytaSVJvd0JHbDNoWlkjbHw+KFJBQUt8YFNrSFJwS0VwZ0l8dXdGdz5VU1IKel5MREBCJkFQ
PVZARmE9dThNRSNNYX58QDx0cj5JU14we1JCZTQrZ0F1emNVPSRKMihiVlBnck5ka1kwQztzKnpj
CnpwUCooalBQZ1ZpQHpjaHRkQzBIWEIrfmgoPkUwQDhKWG0yY29sPjx2Rj9CZm5FUCEkPCZvb3RA
KE4tPkxZZ2lTSAp6eGZPPDxpeWVuMmA8YEM8enZGZk0+YD9mX2ZjU30zX14qaGM1dzFAUiNNQSZz
XjFeYVNSbiNvI15qUGZybHtQP1YKenF9RmsjSWlWeS1nWGc4O15Vfm50cV5NdG4lRmh3PUpqb21u
YmxaVEM3ZWUyM2I+SUdqbFdTSjNwZHZibEQqRG9BCnpiYnJLP21kXmNFQ3Ulb3M3eVd+b2MtP3U7
a2hwMF5SN1N1M0YjWFUqV3p4eSZiSj1teCFOWCV4PUEqT3JrTn5OdQp6LTN2TDU2RnczZnBQZT5m
RCpUQSVrYzNYJGFJPT02a3kjJDs3RGMrbilAaW59ZlJMQjQyOE0rYzZWNF9QdnBnIzsKelA+cURl
bER5PnFMN05heD58UX1qQCs0JUVXVnYyTCReUFk3ci1IMnNDd00pQz9hYSotSEo/Qnk3RCpqTF5v
KnlMCnpyOUYlTSZeekFrZXlUXzBJKW5ZKEB+SSN9Sj9ETXM4QGFCVlI/QSEwWUphbU5tdHM5SUxY
MDk8WGEoWHB5cy00ZQp6QF9CJlpTLWV7fVpNTzZmQzMzRGJfWDtudzJYSit6WmReNCZZUWk0OCo9
PkAxZVRkRkRTQV9Wdz5APio4YVhMQUgKeiliZ31lZHhVaUlCSHVhPHNybmZjcD1LZDtxOWZKZ3NM
dkZvTXdVa0VJQlZaY0xsVD0weS03Tk9pNzhtWjIzfi1OCnpKJlR0ZWZTaGc3e2lGMSRUZkJzQ18+
SVFnail7RUUmYmUpTWEhQ0NaZW10MUV2QFI4Tyh7OD9pIT9HJG5hdyFsXwp6cGV0TGZ0RjFYPTZ+
fTIkJlYoMi17TCNuKmUmZUh9NHB0P1VqaEBNVCZlViUtMzNOJGZhPm1EdHNmfGsmOVZ8bjQKeiYh
c0lPPjgzZCpwe1Y1O1VaWiZ1SXlmRDhWI2EjSTt8amIoUGZ5PWtwcSU0TGZPNWdNQmdmRWY+VmUy
MSY0bHY+Cno4U0F4eFFeQjVuUGJydXhJYikkZ3VGZUk8T01NKWhCbiN9LSozPExkck19SG0yPHBi
JjI2PnZAZUdDbjc1Vn03Pwp6QWpTd2E7QGE1KD5JVFYkWE5jfVM7REB3ZSFtM08kKlhTczc2Knt6
TSN0WSteKi1+aWArdnAkKzNUVGk8I35IaCUKenEyZ2Q7cXR1cSFwaV94V2o0cjheWkh2PyFgUzdN
diVnVEcjcHl5RUtXY3NZQGYrY15VbkVTWHo+Qj07RUxRKiU7CnpXak0zemJ6SkJXYzhSWXcwV1Ej
KDRSa0hfKGc/c2dMNiR1UkJ3YyFgQFlAejhCO0NfTUxMa3pqQFhFdXhMUl4hfgp6M1VAfiVfeFgo
flZ7VTY4WGs0VzBFQH07Z2loVzRlV3gqSUNaKDBwZClNezA7QV9FTTlSVFZJVyYxQ0I3YVI2dXoK
elI4QHY2ZU5XSFJFNXEwWDNrOHs5V0JvdDlHeTx3R2tiN09nOEg9K1BxMjE2UzI3USlVUCtIJjdL
TFV8V1FRO0koCnolQjhaUSlZdmgqb1B9fWh2Zjk7dE9zSWlMP1FDdCZ3cEx8WVhaYTIqVGVrbCta
QCs0JGBjPjUydXstSGA9WX4+ewp6PVg5QTNuTzBnSSo2Vi1UeX5ifDZfa2ImKyghbGMzVEpFPzBk
WXhHOEYwMng7MHZhMEFFNilrRlQmbDZfY0tUdGkKeiQ0IUJLZHpVYEZsMEV6b1l5PnpKVHFiQDBU
QmNFLWVsbUYydi12TytFU0NwM1ModGJUYUIjZGxqYCQrcmBiUnpVCnpzJCpIcmB8eFZzeHA0TCk8
PDk+M2JYbzd2VGIpJXBqTyFpeCUxPHYxOWl1MTAldXBJS19SPj88JVV3I1pjZkluOwp6SCEmRTle
U35jQVdtbFdWKCFxSVhAfll9ISl4MklnWkh2ZSNKfFk3PXFYV0g/SnUqOUs+d1ZTT0lPcmxZKGNw
aCQKeip2K3RXTnhNOWk7QUBPaCs9ekJqJT9yXmBTSFd5dnZnTCpMUWtgQFhJUGUwPDNvemNjYUlr
Tz5BVTNeVEZ6V1NFCnpzdFBreCZEe1lzPEc0bjxmKFByUnoqeDR0VTw4I28wRylZMzN7NSotTlZE
YDRkTDdVaXRxVUx0MVh2ZTk1XlE3UAp6ZkM9dEM4WmElTW43PH1HR3dNfVg1QDBQV1NRM0MxNnFX
Pl9id2pmeHkpPylJTE5jfCVkMm14dUBSeiY3YFhWVmkKej0lTWtYSWRxe3hiKyskNnw1ZkBZUmY8
V0c9dj5UcEA1Z09qY1NRRWdxMTJzbk0pYWdlZTdjeSp3bGtHZzFzUilFCnpeXkwtKkNhR2lBWDZ+
Xm4/aGU3REI7bUx4PG52O0xZK09SIXNCfWBKYVlUR0Z1OWt1dik7ZXl5OGNVS31uNEtlUwp6Tjh8
WntyPyg7JHQtYkRDcCZleSMrcjMjcS04U2tgK3d6YWwjTFMoeiVOTnZKWjEmSExYNG5nPExnKFVD
QUNqUSkKemA0N3FpfE1za09McllzPyhzdn10a3M7KVI/bjVIR2l+UmdMUEF6YD4+PW1OOWNybj5y
TDlgMzNCZVdJMExNVHFFCnopQHBNZV5DS2RFTSsmIVhqfXlvNSs1P0c+RnFia0M1bWMoQjxIaihS
YGV3ezxmdSs8c009V1YjMkIoTyhvZ0ZPKgp6eUhBJmpvbCp1SlR8YyRNQkA7aGFFPntnfFZtPzNk
UWJULVM+XmdZNGRhIyg3VExzIT11TDlUbnVuTSMqVD9KQ3oKelNBakkrRHNiKUEqSSlzYjxUJjtr
Iy1MTSo3NC1XTmdYQC03Zmk1NGMwXk8qdUxIemdMZEwzV09BQVlPQF9gfmx5Ckp4Qy0/OUAheDYz
QmFRJDcKCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy93ZWJnbC9yZXNvdXJjZXMvd2ViZ2xfdGVz
dF9maWxlcy9yZXNvdXJjZXMvcmVkLWdyZWVuLndlYm12cDgud2VibSBiL0xheW91dFRlc3RzL3dl
YmdsL3Jlc291cmNlcy93ZWJnbF90ZXN0X2ZpbGVzL3Jlc291cmNlcy9yZWQtZ3JlZW4ud2VibXZw
OC53ZWJtCmluZGV4IGZkZTU5YTE4YjRkZGU5YTEzZjM3YzNmNDYyYWY4OGFkNGIwZjNjM2EuLjFk
OWQ2MDM4NTI3NDk4MDRhMjI4Yjg0MmY4YTU2N2I2MGE3MDE5MjggMTAwNjQ0CkdJVCBiaW5hcnkg
cGF0Y2gKZGVsdGEgNTc3CnpjbWFESHkzdj9iJUp1JUBgNGYzR3koQWsyZVBAXkteNDtBWHl0K2x5
YjdmbGFuI1AzP28+PDdiWSN7SE5AOXJMOwp6b0tWUSZeeCFwM2owekMwT3o+YD9XUnBidTglNzIm
aEA5OU04MzswOWdWeXpwJkhQUmR6NzBKLWlEaFl+bVU7JHkKemg2YVk9andvRTAmSktzbyo8aFVA
ZHljTXk4ZT88NGsrSndfJEZnYUxZVV9eb1JaT21EUkheNk8mPXwwKnYwK3Z0Cno2VVkmN2k7Sk9a
KXNoYzFxQFJGdEJ3WkpgeVpTbCV5U042cXc0KyFCUzh0cXJwZ1MzMWNLVjQkdThUV2RMVzNNYgp6
SnBLSiMrTlQmOFNiPm08b341fj0wVD9oYSRVQVJpRC1FIUUtcEhgfHI7eFAobzc/KjVPPzwrZTlo
QkZ6KWpORkkKei1NX2ghVlNDczJNI2hnI2pGVWJ6R1ZoK2F4cnVTWV9ITEwrNlhQWTI1VkluWjVj
NGRNNVgoaitBPVZfMjVTdF5DCno1VzV5Z2kyVnxoNVhVRXc1TjhycHMycGZ4Nlcxd183fXNZY1dq
dFc+ZDc2PWdfX0I2UypiSDx4KVR4NChKflhtYApmXnprbyZEZ3VmJEY8dD0pMzdRfVlHNEJCaDJe
fmNlVihrUzBjVWJmeQoKZGVsdGEgNDE4NAp6Y21iNmNZZnpJe19JXlBpTDVlJkEwd1BUaU5gaz45
NVpye3EmUE5hPmsqSWArZlUrJXdEMlRPXjJyYXZIbEpHSmgKenVuKz5wZkduP3xwLTJrfF4pV2pg
d0xBbng1R2xIeVNzenJYYiQ3PlZjZUtCez1PKTMwYzZXQ0EmSGNYSWJNODYhCnorPFZeWDRfaSFq
XnAzc1BOZyhze1d9UGlOS0IoNzQodE0xM1RYT2tpO3dQbzxCR1pBeVVkPXRwPHRsKFlsS1Mhegp6
ZHk1SDwxQHVZMGo2d0UhM3lBcHUzQFpNK2ItI3U+JjdRajI9KF5mOUQhaCpzOHkmUkpVJFJhfU80
S0xnR1liIWQKemhpPSkqLXg5Sm5kTF5YbnN7Tl9lREp0VFBgVkRWKTR+KTVBJjlCezdwKE98ViU7
Jl8ldXgjZT8kM0UrPjVlcGhaCnpJalNMQUd7fHFMcjleKEBWMGxAfUoxS2trQl5xTVdWbStVNVFh
T0Y1Kj5nI3dQSio4I19fY0Rue0FOS3owWnomYQp6UEhwciVEWjhhWVFEVFhQXjF2Izw8PEE8Kmtk
fENKWUNifCV3I0hmM3ZGOFFGSC1SWDhVeStybyNBdTU4R0QxSlcKemdZcWZuLXdUOXxXaTwjUDYt
diFMbnpMb007dm5PMlpkUXQhaTZMVHloSHloZCFhfkN0dGtePWlxVWVKaHhrQXB5CnpHVHE+bkFD
Yk1FRW11VD1xR1hfYC0tY31vQSM1IT52Vn0xejFmbHtGSD1aJTdvfmNibiRRaHdge248fFMyU2pZ
Ngp6ek1XT25xPnNiMShVNktKZVQ4YiZRJno8dFRtQ1MzKzNwQ2ZMMjRHUXJ0YDdyKDZyIzdYSkN6
QE9efn5iZX0tWFMKem5RJmh+eVlqRU1XSmtLc2NqcTBNVyhRRTtOVkExMkF+S0Z5TXdqQUdtWD14
VzM3LT1faVY1Yks3S0tDNSp8dVZiCnomPFJGS2VDVSZ8YGR0eEUmVVYmQmU4KU9KQlV+R05VVWY/
eCZ6KDxeXzVIO3o8MEl2P1Y1IUNXcF95O09mV3J2dwp6eXQxOHpSSl5+SS1RQT5zeSh8fUZBVD9Z
Uj9XbSlSYHNxe3NKfnc5bGNSJU1PeFB7TSMjVT5fNmxIbj1IKmpwJUgKekNAZmVnSmY3QjZ3KHI5
NnY8cWVYP3YhUGBFWCh2UCQzcTQwdEs7YHg7JGdsI2dGdFBZMWRXVUE0bk9hWGhrXzI5CnooKCt5
ayVFbjR6Jn4kIW1VOGt0fnpAZmd9PUhaLUFoVG9lUzs3a29Ubm5AND1CPX44fEhGVz1DOTd0PUZ8
RkB4OQp6alV7cz9mKUVNbjlNQVV8Ji1hZyZgajBDKF9HVHFkQWgwVmI8JX13TEpDd1h9V2g5SXAk
Rl5QNSRLVXVOZSUtUGkKenU7fiNaeGp2KSRLRyM0VyglP0JvXytEa3lmPk4+byVEXzVWXns3QHM3
fEB1VjJDbCs5ZVczQT5uaV5Ke1g7ekZICnpfVnNNMSN5REM7MGZEeXQ4LWApVkBaeUhSJD8mTW5M
fm93XnE5VW18QFM+QHkqPSlxYShfVntVUFdJJWYoWTh9Rgp6MklhS0soT3xVOWlkPnVSJnpXdSts
JldkM3I1MnwjdVNfNyF5PUFhQi1BeDdOdj5DKFd2bHI8d3RJIyhHNHFaJkwKelktbnsyKTkraVJ6
WXNoQ2oqN29GPVV0Pl8hMGdCRG1WZSUkVmNnR01oeT5HUi10aW5lVUNjT01XMHlyfGJ+RWRKCnpr
TndIMXpLdUo8P28jPHkqSzhNP083PSotMColTHQmMzkpWVJPKVFAPD5pbXJwKUoxTHJLPTJAV0RR
O3FvI05uNgp6QDczdnVyPU1NUWomYkNremF7MmBnRFkxTEojSk9AM0Y3ak1MdG13REh0TUJmdyRU
ei1Ve14rVlpNMj0ySWFKRDwKejZxOVYjODM+TSojKFU7fShgRG9BaWdFTE1wOUkkYzdfKl9saUQ2
TzZOeSZRKS0lSTxyO09vIUpHVlQ9SVRSNDdpCnpxNTdUbTwqV1V1UVR7cjk1UUkqdElXK1pJUm93
QkdsM2haWSNsfD4oUkFBS3xgU2tIUnBLRXBnSXx1d0Z3PlVTUgp6XkxEQEImQVA9VkBGYT11OE1F
I01hfnxAPHRyPklTXjB7UkJlNCtnQXV6Y1U9JEoyKGJWUGdyTmRrWTBDO3MqemMKenBQKihqUFBn
VmlAemNodGRDMEhYQit+aCg+RTBAOEpYbTJjb2w+PHZGP0JmbkVQISQ8Jm9vdEAoTi0+TFlnaVNI
Cnp4Zk88PGl5ZW4yYDxgQzx6dkZmTT5gP2ZfZmNTfTNfXipoYzV3MUBSI01BJnNeMV5hU1JuI28j
XmpQZnJse1A/Vgp6cX1GayNJaVZ5LWdYZzg7XlV+bnRxXk10biVGaHc9SmpvbW5ibFpUQzdlZTIz
Yj5JR2psV1NKM3BkdmJsRCpEb0EKemJicks/bWReY0VDdSVvczd5V35vYy0/dTtraHAwXlI3U3Uz
RiNYVSpXenh5JmJKPW14IU5YJXg9QSpPcmtOfk51CnotM3ZMNTZGdzNmcFBlPmZEKlRBJWtjM1gk
YUk9PTZreSMkOzdEYytuKUBpbn1mUkxCNDI4TStjNlY0X1B2cGcjOwp6UD5xRGVsRHk+cUw3TmF4
PnxRfWpAKzQlRVdWdjJMJF5QWTdyLUgyc0N3TSlDP2FhKi1ISj9CeTdEKmpMXm8qeUwKenI5RiVN
Jl56QWtleVRfMEkpblkoQH5JI31KP0RNczhAYUJWUj9BITBZSmFtTm10czlJTFgwOTxYYShYcHlz
LTRlCnpAX0ImWlMtZXt9Wk1PNmZDMzNEYl9YO253MlhKK3paZF40JllRaTQ4Kj0+QDFlVGRGRFNB
X1Z3PkA+KjhhWExBSAp6KWJnfWVkeFVpSUJIdWE8c3JuZmNwPUtkO3E5Zkpnc0x2Rm9Nd1VrRUlC
VlpjTGxUPTB5LTdOT2k3OG1aMjN+LU4KekomVHRlZlNoZzd7aUYxJFRmQnNDXz5JUWdqKXtFRSZi
ZSlNYSFDQ1plbXQxRXZAUjhPKHs4P2khP0ckbmF3IWxfCnpwZXRMZnRGMVg9Nn59MiQmVigyLXtM
I24qZSZlSH00cHQ/VWpoQE1UJmVWJS0zM04kZmE+bUR0c2Z8ayY5VnxuNAp6JiFzSU8+ODNkKnB7
VjU7VVpaJnVJeWZEOFYjYSNJO3xqYihQZnk9a3BxJTRMZk81Z01CZ2ZFZj5WZTIxJjRsdj4KejhT
QXh4UV5CNW5QYnJ1eEliKSRndUZlSTxPTU0paEJuI30tKjM8TGRyTX1IbTI8cGImMjY+dkBlR0Nu
NzVWfTc/CnpBalN3YTtAYTUoPklUViRYTmN9UztEQHdlIW0zTyQqWFNzNzYqe3pNI3RZK14qLX5p
YCt2cCQrM1RUaTwjfkhoJQp6cTJnZDtxdHVxIXBpX3hXajRyOF5aSHY/IWBTN012JWdURyNweXlF
S1djc1lAZitjXlVuRVNYej5CPTtFTFEqJTsKeldqTTN6YnpKQldjOFJZdzBXUSMoNFJrSF8oZz9z
Z0w2JHVSQndjIWBAWUB6OEI7Q19NTExrempAWEV1eExSXiF+CnozVUB+JV94WCh+VntVNjhYazRX
MEVAfTtnaWhXNGVXeCpJQ1ooMHBkKU17MDtBX0VNOVJUVklXJjFDQjdhUjZ1egp6UjhAdjZlTldI
UkU1cTBYM2s4ezlXQm90OUd5PHdHa2I3T2c4SD0rUHEyMTZTMjdRKVVQK0gmN0tMVXxXUVE7SSgK
eiVCOFpRKVl2aCpvUH19aHZmOTt0T3NJaUw/UUN0JndwTHxZWFphMipUZWtsK1pAKzQkYGM+NTJ1
ey1IYD1Zfj57Cno9WDlBM25PMGdJKjZWLVR5fmJ8Nl9rYiYrKCFsYzNUSkU/MGRZeEc4RjAyeDsw
dmEwQUU2KWtGVCZsNl9jS1R0aQp6JDQhQktkelVgRmwwRXpvWXk+ekpUcWJAMFRCY0UtZWxtRjJ2
LXZPK0VTQ3AzUyh0YlRhQiNkbGpgJCtyYGJSelUKenMkKkhyYHx4VnN4cDRMKTw8OT4zYlhvN3ZU
YiklcGpPIWl4JTE8djE5aXUxMCV1cElLX1I+PzwlVXcjWmNmSW47CnpIISZFOV5TfmNBV21sV1Yo
IXFJWEB+WX0hKXgySWdaSHZlI0p8WTc9cVhXSD9KdSo5Sz53VlNPSU9ybFkoY3BoJAp6KnYrdFdO
eE05aTtBQE9oKz16QmolP3JeYFNIV3l2dmdMKkxRa2BAWElQZTA8M296Y2NhSWtPPkFVM15URnpX
U0UKenN0UGt4JkR7WXM8RzRuPGYoUHJSeip4NHRVPDgjbzBHKVkzM3s1Ki1OVkRgNGRMN1VpdHFV
THQxWHZlOTVeUTdQCnpmQz10QzhaYSVNbjc8fUdHd019WDVAMFBXU1EzQzE2cVc+X2J3amZ4eSk/
KUlMTmN8JWQybXh1QFJ6JjdgWFZWaQp6PSVNa1hJZHF7eGIrKyQ2fDVmQFlSZjxXRz12PlRwQDVn
T2pjU1FFZ3ExMnNuTSlhZ2VlN2N5Kndsa0dnMXNSKUUKel5eTC0qQ2FHaUFYNn5ebj9oZTdEQjtt
THg8bnY7TFkrT1Ihc0J9YEphWVRHRnU5a3V2KTtleXk4Y1VLfW40S2VTCnpOOHxae3I/KDskdC1i
RENwJmV5IytyMyNxLThTa2Ard3phbCNMUyh6JU5OdkpaMSZITFg0bmc8TGcoVUNBQ2pRKQp6YDQ3
cWl8TXNrT0xyWXM/KHN2fXRrczspUj9uNUhHaX5SZ0xQQXpgPj49bU45Y3JuPnJMOWAzM0JlV0kw
TE1UcUUKeilAcE1lXkNLZEVNKyYhWGp9eW81KzU/Rz5GcWJrQzVtYyhCPEhqKFJgZXd7PGZ1Kzxz
TT1XViMyQihPKG9nRk8qCnp5SEEmam9sKnVKVHxjJE1CQDtoYUU+e2d8Vm0/M2RRYlQtUz5eZ1k0
ZGEjKDdUTHMhPXVMOVRudW5NIypUP0pDegp6U0FqSStEc2IpQSpJKXNiPFQmO2sjLUxNKjc0LVdO
Z1hALTdmaTU0YzBeTyp1TEh6Z0xkTDNXT0FBWU9AX2B+bHkKSnhDLT85QCF4NjNCYVEkNwoK
</data>

          </attachment>
      

    </bug>

</bugzilla>