<?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>216209</bug_id>
          
          <creation_ts>2020-09-04 18:07:52 -0700</creation_ts>
          <short_desc>iOS: &lt;attachment&gt;&apos;s QuickLook thumbnails can appear squished</short_desc>
          <delta_ts>2020-09-08 12:47:10 -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>New Bugs</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Tim Horton">thorton</reporter>
          <assigned_to name="Tim Horton">thorton</assigned_to>
          <cc>cdumez</cc>
    
    <cc>changseok</cc>
    
    <cc>esprehn+autocc</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>glenn</cc>
    
    <cc>gyuyoung.kim</cc>
    
    <cc>kondapallykalyan</cc>
    
    <cc>megan_gardner</cc>
    
    <cc>pdr</cc>
    
    <cc>simon.fraser</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>wenson_hsieh</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1685972</commentid>
    <comment_count>0</comment_count>
    <who name="Tim Horton">thorton</who>
    <bug_when>2020-09-04 18:07:52 -0700</bug_when>
    <thetext>iOS: &lt;attachment&gt;&apos;s QuickLook thumbnails can appear squished</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1685973</commentid>
    <comment_count>1</comment_count>
      <attachid>408060</attachid>
    <who name="Tim Horton">thorton</who>
    <bug_when>2020-09-04 18:10:02 -0700</bug_when>
    <thetext>Created attachment 408060
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1685974</commentid>
    <comment_count>2</comment_count>
    <who name="Tim Horton">thorton</who>
    <bug_when>2020-09-04 18:10:04 -0700</bug_when>
    <thetext>&lt;rdar://problem/67817706&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1686479</commentid>
    <comment_count>3</comment_count>
      <attachid>408210</attachid>
    <who name="Tim Horton">thorton</who>
    <bug_when>2020-09-07 21:40:14 -0700</bug_when>
    <thetext>Created attachment 408210
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1686480</commentid>
    <comment_count>4</comment_count>
      <attachid>408211</attachid>
    <who name="Tim Horton">thorton</who>
    <bug_when>2020-09-07 21:49:18 -0700</bug_when>
    <thetext>Created attachment 408211
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1686498</commentid>
    <comment_count>5</comment_count>
    <who name="Tim Horton">thorton</who>
    <bug_when>2020-09-07 23:55:09 -0700</bug_when>
    <thetext>I understand the WebKit1 failures (need to skip the test), but I don&apos;t understand why the &lt;attachment&gt; isn&apos;t there in Mojave WK2.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1686614</commentid>
    <comment_count>6</comment_count>
      <attachid>408239</attachid>
    <who name="Tim Horton">thorton</who>
    <bug_when>2020-09-08 10:21:34 -0700</bug_when>
    <thetext>Created attachment 408239
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1686617</commentid>
    <comment_count>7</comment_count>
      <attachid>408240</attachid>
    <who name="Tim Horton">thorton</who>
    <bug_when>2020-09-08 10:36:19 -0700</bug_when>
    <thetext>Created attachment 408240
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1686619</commentid>
    <comment_count>8</comment_count>
      <attachid>408240</attachid>
    <who name="Wenson Hsieh">wenson_hsieh</who>
    <bug_when>2020-09-08 10:38:47 -0700</bug_when>
    <thetext>Comment on attachment 408240
Patch

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

&gt; LayoutTests/fast/attachment/attachment-thumbnail-preserves-aspect-ratio.html:23
&gt; +    let intervalID = setInterval(function () {

Nit - maybe you could use `shouldBecomeDifferent` here instead of `setInterval`?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1686637</commentid>
    <comment_count>9</comment_count>
      <attachid>408243</attachid>
    <who name="Tim Horton">thorton</who>
    <bug_when>2020-09-08 11:13:14 -0700</bug_when>
    <thetext>Created attachment 408243
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1686686</commentid>
    <comment_count>10</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2020-09-08 12:47:10 -0700</bug_when>
    <thetext>Committed r266743: &lt;https://trac.webkit.org/changeset/266743&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 408243.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>408060</attachid>
            <date>2020-09-04 18:10:02 -0700</date>
            <delta_ts>2020-09-07 21:40:12 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-216209-20200904181001.patch</filename>
            <type>text/plain</type>
            <size>34158</size>
            <attacher name="Tim Horton">thorton</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjY2NjE2CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMjE5N2YyMTY0ZDVmYTQ2
ZTYzMmQ0YjIwMDhmNjVmNjU4NTY2MmMyMC4uOWRlZTc4ODE4NGE1Y2M1YWFiZWQxYjBiOWUwZjU4
YmIyZTAzOTFmZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI0IEBACisyMDIwLTA5LTA0ICBUaW0g
SG9ydG9uICA8dGltb3RoeV9ob3J0b25AYXBwbGUuY29tPgorCisgICAgICAgIGlPUzogPGF0dGFj
aG1lbnQ+J3MgUXVpY2tMb29rIHRodW1ibmFpbHMgY2FuIGFwcGVhciBzcXVpc2hlZAorICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjE2MjA5CisgICAgICAg
IDxyZGFyOi8vcHJvYmxlbS82NzgxNzcwNj4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkg
KE9PUFMhKS4KKworICAgICAgICBUZXN0OiBmYXN0L2F0dGFjaG1lbnQvYXR0YWNobWVudC10aHVt
Ym5haWwtcHJlc2VydmVzLWFzcGVjdC1yYXRpby5odG1sCisKKyAgICAgICAgKiBodG1sL0hUTUxB
dHRhY2htZW50RWxlbWVudC5pZGw6CisgICAgICAgICogdGVzdGluZy9JbnRlcm5hbHMuY3BwOgor
ICAgICAgICAoV2ViQ29yZTo6SW50ZXJuYWxzOjphdHRhY2htZW50VGh1bWJuYWlsSW5mbyk6Cisg
ICAgICAgICogdGVzdGluZy9JbnRlcm5hbHMuaDoKKyAgICAgICAgKiB0ZXN0aW5nL0ludGVybmFs
cy5pZGw6CisgICAgICAgIEV4cG9zZSB0aGUgYXR0YWNobWVudCB0aHVtYm5haWwgc2l6ZSB2aWEg
SW50ZXJuYWxzLgorCisgICAgICAgICogcmVuZGVyaW5nL1JlbmRlclRoZW1lSU9TLm1tOgorICAg
ICAgICAoV2ViQ29yZTo6UmVuZGVyQXR0YWNobWVudEluZm86OlJlbmRlckF0dGFjaG1lbnRJbmZv
KToKKyAgICAgICAgQWxsb3cgdGhlIHRodW1ibmFpbCBhc3BlY3QgcmF0aW8gdG8gdmFyeSwgaW5z
dGVhZCBvZiBhc3N1bWluZyBpdCBpcyBhbHdheXMgc3F1YXJlLgorCiAyMDIwLTA5LTA0ICBDaHJp
cyBEdW1leiAgPGNkdW1lekBhcHBsZS5jb20+CiAKICAgICAgICAgUkVHUkVTU0lPTihtYWNPUyBC
aWcgU3VyKSBodHRwczovL21hZ2VudGEuZ2l0aHViLmlvL2xvZmktcGxheWVyLyBpcyBicm9rZW4K
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nIGIvU291cmNlL1dlYktpdC9DaGFu
Z2VMb2cKaW5kZXggOTQ5MTFkODk2MjUxYWU3Y2E2NTg1ODc0YzUyMGFiODg2ZmFlYjliMy4uYmY3
YjA3NDE1MDE4NGYzM2U0ZGE4MWI3NDhhMzA2NWVmMzgyY2FkOCAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYktpdC9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cKQEAgLTEsMyAr
MSwyMiBAQAorMjAyMC0wOS0wNCAgVGltIEhvcnRvbiAgPHRpbW90aHlfaG9ydG9uQGFwcGxlLmNv
bT4KKworICAgICAgICBpT1M6IDxhdHRhY2htZW50PidzIFF1aWNrTG9vayB0aHVtYm5haWxzIGNh
biBhcHBlYXIgc3F1aXNoZWQKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19i
dWcuY2dpP2lkPTIxNjIwOQorICAgICAgICA8cmRhcjovL3Byb2JsZW0vNjc4MTc3MDY+CisKKyAg
ICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBVSVByb2Nlc3Mv
Q29jb2EvV2ViUGFnZVByb3h5Q29jb2EubW06CisgICAgICAgIChXZWJLaXQ6OmNvbnZlcnRQbGF0
Zm9ybUltYWdlVG9CaXRtYXApOgorICAgICAgICBQcm9wYWdhdGUgYW4gaW1hZ2Ugb2YgdGhlIHNh
bWUgYXNwZWN0IHJhdGlvIHRoYXQgUXVpY2tMb29rIHByb3ZpZGVkLAorICAgICAgICBpbnN0ZWFk
IG9mIHNxdWlzaGluZyBpdCB0byBzcXVhcmUuCisKKyAgICAgICAgKiBVSVByb2Nlc3MvUXVpY2tM
b29rVGh1bWJuYWlsTG9hZGVyLm1tOgorICAgICAgICAoLVtXS1FMVGh1bWJuYWlsTG9hZE9wZXJh
dGlvbiBzdGFydF0pOgorICAgICAgICBPbmx5IHJlcXVlc3QgZnVsbCB0aHVtYm5haWxzOyB3ZSBk
byBub3Qgd2FudCB0aGUgaWNvbiBmb3JtLCBzaW5jZSA8YXR0YWNobWVudD4KKyAgICAgICAgYWxy
ZWFkeSBoYXMgb25lIHdpdGhvdXQgUXVpY2tMb29rJ3MgaGVscDsgaWYgd2UgY2FuJ3QgZ2V0IGEg
ZnVsbCB0aHVtYm5haWwsCisgICAgICAgIHdlJ2xsIGp1c3QgbGVhdmUgaXQgYWxvbmUuCisKIDIw
MjAtMDktMDQgIFBlciBBcm5lIFZvbGxhbiAgPHB2b2xsYW5AYXBwbGUuY29tPgogCiAgICAgICAg
IFttYWNPU10gQWRkIGNsaWVudCBkZWNvZGVyIGVudGl0bGVtZW50CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9odG1sL0hUTUxBdHRhY2htZW50RWxlbWVudC5pZGwgYi9Tb3VyY2UvV2ViQ29y
ZS9odG1sL0hUTUxBdHRhY2htZW50RWxlbWVudC5pZGwKaW5kZXggNTIyZTI1N2FhZmQ3ZWQ4ZWMx
M2JhMWJkNWYxZDA1ZTRhY2E1MzJiZi4uZTc0YTE3YWI1Mjk2Y2UxNWJkYTAzZjcwZTBjNDQ4YjY4
ZWRhY2UxNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MQXR0YWNobWVudEVs
ZW1lbnQuaWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTEF0dGFjaG1lbnRFbGVtZW50
LmlkbApAQCAtMjUsNiArMjUsOCBAQAogCiBbCiAgICAgQ29uZGl0aW9uYWw9QVRUQUNITUVOVF9F
TEVNRU5ULAorICAgIEpTR2VuZXJhdGVUb05hdGl2ZU9iamVjdCwKKyAgICBFeHBvcnRNYWNybz1X
RUJDT1JFX0VYUE9SVCwKICAgICBFbmFibGVkQXRSdW50aW1lPUF0dGFjaG1lbnRFbGVtZW50LAog
XSBpbnRlcmZhY2UgSFRNTEF0dGFjaG1lbnRFbGVtZW50IDogSFRNTEVsZW1lbnQgewogICAgIGF0
dHJpYnV0ZSBGaWxlPyBmaWxlOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5n
L1JlbmRlclRoZW1lSU9TLm1tIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlclRoZW1l
SU9TLm1tCmluZGV4IDZmMGY0ODdjNDczZjUyNGM5Y2I4MjkyYmM4MzkyNzRlNTE2MGM2MjYuLjhh
YWNiMTYzY2ViZmIyODgwMThhODFlMTI4ODk3NzU0ZjM0N2EwY2MgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJUaGVtZUlPUy5tbQorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9yZW5kZXJpbmcvUmVuZGVyVGhlbWVJT1MubW0KQEAgLTE2MzcsMTAgKzE2MzcsMTEgQEAgUmVu
ZGVyQXR0YWNobWVudEluZm86OlJlbmRlckF0dGFjaG1lbnRJbmZvKGNvbnN0IFJlbmRlckF0dGFj
aG1lbnQmIGF0dGFjaG1lbnQpCiAgICAgICAgIEZsb2F0U2l6ZSBpY29uU2l6ZTsKICAgICAgICAg
aWNvbiA9IGljb25Gb3JBdHRhY2htZW50KGF0dGFjaG1lbnQsIGljb25TaXplKTsKICAgICAgICAg
dGh1bWJuYWlsSWNvbiA9IGF0dGFjaG1lbnQuYXR0YWNobWVudEVsZW1lbnQoKS50aHVtYm5haWwo
KTsKKyAgICAgICAgaWYgKHRodW1ibmFpbEljb24pCisgICAgICAgICAgICBpY29uU2l6ZSA9IGxh
cmdlc3RSZWN0V2l0aEFzcGVjdFJhdGlvSW5zaWRlUmVjdCh0aHVtYm5haWxJY29uLT5zaXplKCku
YXNwZWN0UmF0aW8oKSwgRmxvYXRSZWN0KDAsIDAsIGF0dGFjaG1lbnRJY29uU2l6ZSwgYXR0YWNo
bWVudEljb25TaXplKSkuc2l6ZSgpOwogICAgICAgICAKICAgICAgICAgaWYgKHRodW1ibmFpbElj
b24gfHwgaWNvbikgewotICAgICAgICAgICAgYXV0byB2aXNpYmxlSWNvblNpemUgPSB0aHVtYm5h
aWxJY29uID8gRmxvYXRTaXplKGF0dGFjaG1lbnRJY29uU2l6ZSwgYXR0YWNobWVudEljb25TaXpl
KSA6IGljb25TaXplOwotICAgICAgICAgICAgaWNvblJlY3QgPSBGbG9hdFJlY3QoRmxvYXRQb2lu
dCgoYXR0YWNobWVudFJlY3Qud2lkdGgoKSAvIDIpIC0gKHZpc2libGVJY29uU2l6ZS53aWR0aCgp
IC8gMiksIDApLCB2aXNpYmxlSWNvblNpemUpOworICAgICAgICAgICAgaWNvblJlY3QgPSBGbG9h
dFJlY3QoRmxvYXRQb2ludCgoYXR0YWNobWVudFJlY3Qud2lkdGgoKSAvIDIpIC0gKGljb25TaXpl
LndpZHRoKCkgLyAyKSwgMCksIGljb25TaXplKTsKICAgICAgICAgICAgIHlPZmZzZXQgKz0gaWNv
blJlY3QuaGVpZ2h0KCkgKyBhdHRhY2htZW50SXRlbU1hcmdpbjsKICAgICAgICAgfQogICAgIH0g
ZWxzZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuY3BwIGIv
U291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuY3BwCmluZGV4IDJjYWFjMGFkNmU4NDdk
Njk0Yjc3YTdiMmRlYzA4ZmU1YzE1ZjQxOTQuLjdlZGEwMWRmMmYxMDVhMjk4OTZhYjIyYWJkZjAx
MWY1NTUzODYxNjkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxz
LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5jcHAKQEAgLTg4LDYg
Kzg4LDcgQEAKICNpbmNsdWRlICJHcmlkUG9zaXRpb24uaCIKICNpbmNsdWRlICJIRVZDVXRpbGl0
aWVzLmgiCiAjaW5jbHVkZSAiSFRNTEFuY2hvckVsZW1lbnQuaCIKKyNpbmNsdWRlICJIVE1MQXR0
YWNobWVudEVsZW1lbnQuaCIKICNpbmNsdWRlICJIVE1MQ2FudmFzRWxlbWVudC5oIgogI2luY2x1
ZGUgIkhUTUxJRnJhbWVFbGVtZW50LmgiCiAjaW5jbHVkZSAiSFRNTEltYWdlRWxlbWVudC5oIgpA
QCAtNjA2NSw0ICs2MDY2LDE1IEBAIHZvaWQgSW50ZXJuYWxzOjpzZXRDb250ZW50U2l6ZUNhdGVn
b3J5KEludGVybmFsczo6Q29udGVudFNpemVDYXRlZ29yeSBjYXRlZ29yeSkKICNlbmRpZgogfQog
CitJbnRlcm5hbHM6OkF0dGFjaG1lbnRUaHVtYm5haWxJbmZvIEludGVybmFsczo6YXR0YWNobWVu
dFRodW1ibmFpbEluZm8oY29uc3QgSFRNTEF0dGFjaG1lbnRFbGVtZW50JiBlbGVtZW50KQorewor
ICAgIEF0dGFjaG1lbnRUaHVtYm5haWxJbmZvIGluZm87CisgICAgaWYgKGF1dG8gaW1hZ2UgPSBl
bGVtZW50LnRodW1ibmFpbCgpKSB7CisgICAgICAgIGF1dG8gc2l6ZSA9IGltYWdlLT5zaXplKCk7
CisgICAgICAgIGluZm8ud2lkdGggPSBzaXplLndpZHRoKCk7CisgICAgICAgIGluZm8uaGVpZ2h0
ID0gc2l6ZS5oZWlnaHQoKTsKKyAgICB9CisgICAgcmV0dXJuIGluZm87Cit9CisKIH0gLy8gbmFt
ZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJu
YWxzLmggYi9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5oCmluZGV4IGExYTg3MWM4
OTY4YWI5Y2M0ZGEwMzcwNDg2OGRiMDAyZDhmYTI2MTMuLmZlZjFjYmZlYTBkOWM0ODRiZGQ5NDdk
ODRlMGY1NmUyNzc4MDk3ODAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50
ZXJuYWxzLmgKKysrIGIvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuaApAQCAtNjks
NiArNjksNyBAQCBjbGFzcyBGaWxlOwogY2xhc3MgRnJhbWU7CiBjbGFzcyBHQ09ic2VydmF0aW9u
OwogY2xhc3MgSFRNTEFuY2hvckVsZW1lbnQ7CitjbGFzcyBIVE1MQXR0YWNobWVudEVsZW1lbnQ7
CiBjbGFzcyBIVE1MSW1hZ2VFbGVtZW50OwogY2xhc3MgSFRNTElucHV0RWxlbWVudDsKIGNsYXNz
IEhUTUxMaW5rRWxlbWVudDsKQEAgLTEwNTgsNiArMTA1OSwxNSBAQCBwdWJsaWM6CiAgICAgZW51
bSBjbGFzcyBDb250ZW50U2l6ZUNhdGVnb3J5IHsgTCwgWFhYTCB9OwogICAgIHZvaWQgc2V0Q29u
dGVudFNpemVDYXRlZ29yeShDb250ZW50U2l6ZUNhdGVnb3J5KTsKIAorICAgIHN0cnVjdCBBdHRh
Y2htZW50VGh1bWJuYWlsSW5mbyB7CisgICAgICAgIHVuc2lnbmVkIHdpZHRoOworICAgICAgICB1
bnNpZ25lZCBoZWlnaHQ7CisgICAgfTsKKworI2lmIEVOQUJMRShBVFRBQ0hNRU5UX0VMRU1FTlQp
CisgICAgQXR0YWNobWVudFRodW1ibmFpbEluZm8gYXR0YWNobWVudFRodW1ibmFpbEluZm8oY29u
c3QgSFRNTEF0dGFjaG1lbnRFbGVtZW50Jik7CisjZW5kaWYKKwogcHJpdmF0ZToKICAgICBleHBs
aWNpdCBJbnRlcm5hbHMoRG9jdW1lbnQmKTsKICAgICBEb2N1bWVudCogY29udGV4dERvY3VtZW50
KCkgY29uc3Q7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5p
ZGwgYi9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5pZGwKaW5kZXggZTFkYWEzYTE1
ZDc1ZjU2MzZmNTNiNjBjMWJmMWJmYjkxYTFkYzM5Mi4uMzU5NDQzNDVjYzAwZTQzNjJkNGQyZjAx
ODIyMGExYTBjNjUyMTc1NiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRl
cm5hbHMuaWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxzLmlkbApAQCAt
MjM1LDYgKzIzNSwxNSBAQCBlbnVtIENvbnRlbnRTaXplQ2F0ZWdvcnkgewogICAgIERPTVJlY3RM
aXN0IHRleHRSZWN0c0luQm91bmRpbmdSZWN0Q29vcmRpbmF0ZXM7CiB9OwogCitbCisgICAgRXhw
b3J0TWFjcm89V0VCQ09SRV9URVNUU1VQUE9SVF9FWFBPUlQsCisgICAgQ29uZGl0aW9uYWw9QVRU
QUNITUVOVF9FTEVNRU5ULAorICAgIEpTR2VuZXJhdGVUb0pTT2JqZWN0LAorXSBkaWN0aW9uYXJ5
IEF0dGFjaG1lbnRUaHVtYm5haWxJbmZvIHsKKyAgICB1bnNpZ25lZCBsb25nIHdpZHRoOworICAg
IHVuc2lnbmVkIGxvbmcgaGVpZ2h0OworfTsKKwogWwogICAgIEV4cG9ydE1hY3JvPVdFQkNPUkVf
VEVTVFNVUFBPUlRfRVhQT1JULAogICAgIEpTR2VuZXJhdGVUb0pTT2JqZWN0LApAQCAtOTY1LDQg
Kzk3NCw2IEBAIGVudW0gQ29udGVudFNpemVDYXRlZ29yeSB7CiAgICAgW0NvbmRpdGlvbmFsPUVO
Q1JZUFRFRF9NRURJQV0gdW5zaWduZWQgbG9uZyBtZWRpYUtleVNlc3Npb25JbnRlcm5hbEluc3Rh
bmNlU2Vzc2lvbk9iamVjdFJlZkNvdW50KE1lZGlhS2V5U2Vzc2lvbiBzZXNzaW9uKTsKIAogICAg
IHVuZGVmaW5lZCBzZXRDb250ZW50U2l6ZUNhdGVnb3J5KENvbnRlbnRTaXplQ2F0ZWdvcnkgY2F0
ZWdvcnkpOworCisgICAgW0NvbmRpdGlvbmFsPUFUVEFDSE1FTlRfRUxFTUVOVF0gQXR0YWNobWVu
dFRodW1ibmFpbEluZm8gYXR0YWNobWVudFRodW1ibmFpbEluZm8oSFRNTEF0dGFjaG1lbnRFbGVt
ZW50IGVsZW1lbnQpOwogfTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0Nv
Y29hL1dlYlBhZ2VQcm94eUNvY29hLm1tIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQ29jb2Ev
V2ViUGFnZVByb3h5Q29jb2EubW0KaW5kZXggNGQ0Zjg4N2VkYzk1YjFlZDU3NTc0MGYxOThiYmU2
MmJjNjMzY2VhNS4uNWJkZWUxOTVlZWU3NmI1NjlmNjY1MGI2MGM2MjJhOTljMDQ1YjJiYyAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQ29jb2EvV2ViUGFnZVByb3h5Q29jb2Eu
bW0KKysrIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQ29jb2EvV2ViUGFnZVByb3h5Q29jb2Eu
bW0KQEAgLTQzLDYgKzQzLDcgQEAKICNpbXBvcnQgIldlYnNpdGVEYXRhU3RvcmUuaCIKICNpbXBv
cnQgIldLRXJyb3JJbnRlcm5hbC5oIgogI2ltcG9ydCA8V2ViQ29yZS9EcmFnSXRlbS5oPgorI2lt
cG9ydCA8V2ViQ29yZS9HZW9tZXRyeVV0aWxpdGllcy5oPgogI2ltcG9ydCA8V2ViQ29yZS9Mb2Nh
bEN1cnJlbnRHcmFwaGljc0NvbnRleHQuaD4KICNpbXBvcnQgPFdlYkNvcmUvTm90SW1wbGVtZW50
ZWQuaD4KICNpbXBvcnQgPFdlYkNvcmUvU2VhcmNoUG9wdXBNZW51Q29jb2EuaD4KQEAgLTQzNSwx
MCArNDM2LDE0IEBAIHZvaWQgV2ViUGFnZVByb3h5OjpyZW1vdmVNZWRpYVVzYWdlTWFuYWdlclNl
c3Npb24oV2ViQ29yZTo6TWVkaWFTZXNzaW9uSWRlbnRpZmllCiAKICNpZiBIQVZFKFFVSUNLTE9P
S19USFVNQk5BSUxJTkcpCiAKLXN0YXRpYyBSZWZQdHI8V2ViS2l0OjpTaGFyZWFibGVCaXRtYXA+
IGNvbnZlcnRQbGF0Zm9ybUltYWdlVG9CaXRtYXAoQ29jb2FJbWFnZSAqaW1hZ2UsIGNvbnN0IFdl
YkNvcmU6OkludFNpemUmIHNpemUpCitzdGF0aWMgUmVmUHRyPFdlYktpdDo6U2hhcmVhYmxlQml0
bWFwPiBjb252ZXJ0UGxhdGZvcm1JbWFnZVRvQml0bWFwKENvY29hSW1hZ2UgKmltYWdlLCBjb25z
dCBXZWJDb3JlOjpJbnRTaXplJiBmaXR0aW5nU2l6ZSkKIHsKKyAgICBGbG9hdFNpemUgb3JpZ2lu
YWxUaHVtYm5haWxTaXplKFtpbWFnZSBzaXplXSk7CisgICAgYXV0byByZXN1bHRSZWN0ID0gcm91
bmRlZEludFJlY3QobGFyZ2VzdFJlY3RXaXRoQXNwZWN0UmF0aW9JbnNpZGVSZWN0KG9yaWdpbmFs
VGh1bWJuYWlsU2l6ZS5hc3BlY3RSYXRpbygpLCB7IHsgfSwgZml0dGluZ1NpemUgfSkpOworICAg
IHJlc3VsdFJlY3Quc2V0TG9jYXRpb24oeyB9KTsKKwogICAgIFdlYktpdDo6U2hhcmVhYmxlQml0
bWFwOjpDb25maWd1cmF0aW9uIGJpdG1hcENvbmZpZ3VyYXRpb247Ci0gICAgYXV0byBiaXRtYXAg
PSBXZWJLaXQ6OlNoYXJlYWJsZUJpdG1hcDo6Y3JlYXRlU2hhcmVhYmxlKHNpemUsIGJpdG1hcENv
bmZpZ3VyYXRpb24pOworICAgIGF1dG8gYml0bWFwID0gV2ViS2l0OjpTaGFyZWFibGVCaXRtYXA6
OmNyZWF0ZVNoYXJlYWJsZShyZXN1bHRSZWN0LnNpemUoKSwgYml0bWFwQ29uZmlndXJhdGlvbik7
CiAgICAgaWYgKCFiaXRtYXApCiAgICAgICAgIHJldHVybiBudWxscHRyOwogCkBAIC00NDgsOSAr
NDUzLDkgQEAgc3RhdGljIFJlZlB0cjxXZWJLaXQ6OlNoYXJlYWJsZUJpdG1hcD4gY29udmVydFBs
YXRmb3JtSW1hZ2VUb0JpdG1hcChDb2NvYUltYWdlICoKIAogICAgIExvY2FsQ3VycmVudEdyYXBo
aWNzQ29udGV4dCBzYXZlZENvbnRleHQoKmdyYXBoaWNzQ29udGV4dCk7CiAjaWYgUExBVEZPUk0o
SU9TX0ZBTUlMWSkKLSAgICBbaW1hZ2UgZHJhd0luUmVjdDpDR1JlY3RNYWtlKDAsIDAsIGJpdG1h
cC0+c2l6ZSgpLndpZHRoKCksIGJpdG1hcC0+c2l6ZSgpLmhlaWdodCgpKV07CisgICAgW2ltYWdl
IGRyYXdJblJlY3Q6cmVzdWx0UmVjdF07CiAjZWxpZiBVU0UoQVBQS0lUKQotICAgIFtpbWFnZSBk
cmF3SW5SZWN0Ok5TTWFrZVJlY3QoMCwgMCwgYml0bWFwLT5zaXplKCkud2lkdGgoKSwgYml0bWFw
LT5zaXplKCkuaGVpZ2h0KCkpIGZyb21SZWN0Ok5TWmVyb1JlY3Qgb3BlcmF0aW9uOk5TQ29tcG9z
aXRpbmdPcGVyYXRpb25Tb3VyY2VPdmVyIGZyYWN0aW9uOjEgcmVzcGVjdEZsaXBwZWQ6WUVTIGhp
bnRzOm5pbF07CisgICAgW2ltYWdlIGRyYXdJblJlY3Q6cmVzdWx0UmVjdCBmcm9tUmVjdDpOU1pl
cm9SZWN0IG9wZXJhdGlvbjpOU0NvbXBvc2l0aW5nT3BlcmF0aW9uU291cmNlT3ZlciBmcmFjdGlv
bjoxIHJlc3BlY3RGbGlwcGVkOllFUyBoaW50czpuaWxdOwogI2VuZGlmCiAKICAgICByZXR1cm4g
Yml0bWFwOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvUXVpY2tMb29rVGh1
bWJuYWlsTG9hZGVyLm1tIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvUXVpY2tMb29rVGh1bWJu
YWlsTG9hZGVyLm1tCmluZGV4IGU4MDE4OGI5MGIyMmZmNmFhNzk4NjAwMzQzY2IwY2NjYWUzZDZl
NjUuLjVjMWEwNzdjM2U2ZWExYjZjMTVhNGZkNjliNTM0ODllMWJlOWYyYWYgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1F1aWNrTG9va1RodW1ibmFpbExvYWRlci5tbQorKysg
Yi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9RdWlja0xvb2tUaHVtYm5haWxMb2FkZXIubW0KQEAg
LTEwNyw3ICsxMDcsNyBAQCAtICh2b2lkKXN0YXJ0CiAgICAgICAgICAgICByZXR1cm47CiAgICAg
fQogCi0gICAgYXV0byByZXF1ZXN0ID0gYWRvcHROUyhbV2ViS2l0OjphbGxvY1FMVGh1bWJuYWls
R2VuZXJhdGlvblJlcXVlc3RJbnN0YW5jZSgpIGluaXRXaXRoRmlsZUF0VVJMOl9maWxlUGF0aC5n
ZXQoKSBzaXplOkNHU2l6ZU1ha2UoNDAwLCA0MDApIHNjYWxlOjEgcmVwcmVzZW50YXRpb25UeXBl
czpRTFRodW1ibmFpbEdlbmVyYXRpb25SZXF1ZXN0UmVwcmVzZW50YXRpb25UeXBlQWxsXSk7Cisg
ICAgYXV0byByZXF1ZXN0ID0gYWRvcHROUyhbV2ViS2l0OjphbGxvY1FMVGh1bWJuYWlsR2VuZXJh
dGlvblJlcXVlc3RJbnN0YW5jZSgpIGluaXRXaXRoRmlsZUF0VVJMOl9maWxlUGF0aC5nZXQoKSBz
aXplOkNHU2l6ZU1ha2UoNDAwLCA0MDApIHNjYWxlOjEgcmVwcmVzZW50YXRpb25UeXBlczpRTFRo
dW1ibmFpbEdlbmVyYXRpb25SZXF1ZXN0UmVwcmVzZW50YXRpb25UeXBlVGh1bWJuYWlsXSk7CiAg
ICAgW3JlcXVlc3Qgc2V0SWNvbk1vZGU6WUVTXTsKICAgICAKICAgICBbW1dlYktpdDo6Z2V0UUxU
aHVtYm5haWxHZW5lcmF0b3JDbGFzcygpIHNoYXJlZEdlbmVyYXRvcl0gZ2VuZXJhdGVCZXN0UmVw
cmVzZW50YXRpb25Gb3JSZXF1ZXN0OnJlcXVlc3QuZ2V0KCkgY29tcGxldGlvbkhhbmRsZXI6XihR
TFRodW1ibmFpbFJlcHJlc2VudGF0aW9uICp0aHVtYm5haWwsIE5TRXJyb3IgKmVycm9yKSB7CmRp
ZmYgLS1naXQgYS9Ub29scy9DaGFuZ2VMb2cgYi9Ub29scy9DaGFuZ2VMb2cKaW5kZXggOGQyMmRh
OTc4MTUyNTQ4NDM2NjkzMGY4MDRkOTM2M2YwZTM3NGQ2NC4uOWRjNDg4OTlmNTc5MTg0YWNjMzdm
MWQzZGZjNGNhZTQwY2Y4ZGZlMyAxMDA2NDQKLS0tIGEvVG9vbHMvQ2hhbmdlTG9nCisrKyBiL1Rv
b2xzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIzIEBACisyMDIwLTA5LTA0ICBUaW0gSG9ydG9uICA8
dGltb3RoeV9ob3J0b25AYXBwbGUuY29tPgorCisgICAgICAgIGlPUzogPGF0dGFjaG1lbnQ+J3Mg
UXVpY2tMb29rIHRodW1ibmFpbHMgY2FuIGFwcGVhciBzcXVpc2hlZAorICAgICAgICBodHRwczov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjE2MjA5CisgICAgICAgIDxyZGFyOi8v
cHJvYmxlbS82NzgxNzcwNj4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4K
KworICAgICAgICAqIFRlc3RSdW5uZXJTaGFyZWQvVUlTY3JpcHRDb250ZXh0L0JpbmRpbmdzL1VJ
U2NyaXB0Q29udHJvbGxlci5pZGw6CisgICAgICAgICogVGVzdFJ1bm5lclNoYXJlZC9VSVNjcmlw
dENvbnRleHQvVUlTY3JpcHRDb250cm9sbGVyLmg6CisgICAgICAgIChXVFI6OlVJU2NyaXB0Q29u
dHJvbGxlcjo6aW5zZXJ0QXR0YWNobWVudEZvckZpbGVQYXRoKToKKyAgICAgICAgKiBXZWJLaXRU
ZXN0UnVubmVyL1Rlc3RDb250cm9sbGVyLmNwcDoKKyAgICAgICAgKFdUUjo6VGVzdENvbnRyb2xs
ZXI6OmN1cnJlbnRUZXN0VVJMIGNvbnN0KToKKyAgICAgICAgKiBXZWJLaXRUZXN0UnVubmVyL1Rl
c3RDb250cm9sbGVyLmg6CisgICAgICAgICogV2ViS2l0VGVzdFJ1bm5lci9jb2NvYS9VSVNjcmlw
dENvbnRyb2xsZXJDb2NvYS5oOgorICAgICAgICAqIFdlYktpdFRlc3RSdW5uZXIvY29jb2EvVUlT
Y3JpcHRDb250cm9sbGVyQ29jb2EubW06CisgICAgICAgIChXVFI6OlVJU2NyaXB0Q29udHJvbGxl
ckNvY29hOjppbnNlcnRBdHRhY2htZW50Rm9yRmlsZVBhdGgpOgorICAgICAgICBNYWtlIGl0IHBv
c3NpYmxlIHRvIGluc2VydCBhbiBhdHRhY2htZW50IHdyYXBwaW5nIGEgZmlsZSBvbiBkaXNrCisg
ICAgICAgIHZpYSBVSVNjcmlwdENvbnRyb2xsZXIuCisKIDIwMjAtMDktMDQgIFlvdWVubiBGYWJs
ZXQgIDx5b3Vlbm5AYXBwbGUuY29tPgogCiAgICAgICAgIEJpbmRpbmcgZ2VuZXJhdG9yIGlzIG5v
dCBhbHdheXMgY29tcHV0aW5nIHRoZSByaWdodCBpbnRlcmZhY2UgYXR0cmlidXRlcwpkaWZmIC0t
Z2l0IGEvVG9vbHMvVGVzdFJ1bm5lclNoYXJlZC9VSVNjcmlwdENvbnRleHQvQmluZGluZ3MvVUlT
Y3JpcHRDb250cm9sbGVyLmlkbCBiL1Rvb2xzL1Rlc3RSdW5uZXJTaGFyZWQvVUlTY3JpcHRDb250
ZXh0L0JpbmRpbmdzL1VJU2NyaXB0Q29udHJvbGxlci5pZGwKaW5kZXggZTM1NWRmNGY1OGEwMDY4
NjIzZGZiZjI0YmRlZTI4NjM3NjVhNzU0Ny4uM2Q1ODMyZDFkOTYyYzBjOTMyZjMyN2UzZWJjMDE4
OWRhMTBjNDg1YyAxMDA2NDQKLS0tIGEvVG9vbHMvVGVzdFJ1bm5lclNoYXJlZC9VSVNjcmlwdENv
bnRleHQvQmluZGluZ3MvVUlTY3JpcHRDb250cm9sbGVyLmlkbAorKysgYi9Ub29scy9UZXN0UnVu
bmVyU2hhcmVkL1VJU2NyaXB0Q29udGV4dC9CaW5kaW5ncy9VSVNjcmlwdENvbnRyb2xsZXIuaWRs
CkBAIC0zNDcsNiArMzQ3LDcgQEAgaW50ZXJmYWNlIFVJU2NyaXB0Q29udHJvbGxlciB7CiAgICAg
dW5kZWZpbmVkIHNldEhhcmR3YXJlS2V5Ym9hcmRBdHRhY2hlZChib29sZWFuIGF0dGFjaGVkKTsK
IAogICAgIG9iamVjdCBhdHRhY2htZW50SW5mbyhET01TdHJpbmcgYXR0YWNobWVudElkZW50aWZp
ZXIpOworICAgIHVuZGVmaW5lZCBpbnNlcnRBdHRhY2htZW50Rm9yRmlsZVBhdGgoRE9NU3RyaW5n
IGZpbGVQYXRoLCBET01TdHJpbmcgY29udGVudFR5cGUsIG9iamVjdCBjYWxsYmFjayk7CiAKICAg
ICByZWFkb25seSBhdHRyaWJ1dGUgRE9NU3RyaW5nIGxhc3RVbmRvTGFiZWw7CiAgICAgcmVhZG9u
bHkgYXR0cmlidXRlIERPTVN0cmluZyBmaXJzdFJlZG9MYWJlbDsKZGlmZiAtLWdpdCBhL1Rvb2xz
L1Rlc3RSdW5uZXJTaGFyZWQvVUlTY3JpcHRDb250ZXh0L1VJU2NyaXB0Q29udHJvbGxlci5oIGIv
VG9vbHMvVGVzdFJ1bm5lclNoYXJlZC9VSVNjcmlwdENvbnRleHQvVUlTY3JpcHRDb250cm9sbGVy
LmgKaW5kZXggYWQwNmYwYjcyNjZiNDA5MmFhY2UyODBhNzJhNjMzMzk0ZmNmOTU4My4uZmIyYmYz
MjA1MjViY2FlYmY0MDY3ZGUzMGVhZjgzZjMwZjhjNjMzOSAxMDA2NDQKLS0tIGEvVG9vbHMvVGVz
dFJ1bm5lclNoYXJlZC9VSVNjcmlwdENvbnRleHQvVUlTY3JpcHRDb250cm9sbGVyLmgKKysrIGIv
VG9vbHMvVGVzdFJ1bm5lclNoYXJlZC9VSVNjcmlwdENvbnRleHQvVUlTY3JpcHRDb250cm9sbGVy
LmgKQEAgLTI3NSw2ICsyNzUsNyBAQCBwdWJsaWM6CiAgICAgLy8gQXR0YWNobWVudCBFbGVtZW50
cwogCiAgICAgdmlydHVhbCBKU09iamVjdFJlZiBhdHRhY2htZW50SW5mbyhKU1N0cmluZ1JlZiBh
dHRhY2htZW50SWRlbnRpZmllcikgeyBub3RJbXBsZW1lbnRlZCgpOyByZXR1cm4gbnVsbHB0cjsg
fQorICAgIHZpcnR1YWwgdm9pZCBpbnNlcnRBdHRhY2htZW50Rm9yRmlsZVBhdGgoSlNTdHJpbmdS
ZWYgZmlsZVBhdGgsIEpTU3RyaW5nUmVmIGNvbnRlbnRUeXBlLCBKU1ZhbHVlUmVmIGNhbGxiYWNr
KSB7IG5vdEltcGxlbWVudGVkKCk7IH0KIAogICAgIC8vIENhbGxiYWNrcwogICAgIApkaWZmIC0t
Z2l0IGEvVG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9UZXN0Q29udHJvbGxlci5jcHAgYi9Ub29scy9X
ZWJLaXRUZXN0UnVubmVyL1Rlc3RDb250cm9sbGVyLmNwcAppbmRleCAyMTNlZmUxZmExMTBhYjJm
ZjRhMjIxMzhiYzE3OTU0ZDRhMDhjNDE1Li4xZWI5YWFiMzk4OGMxYWU0ZDY1YTNjMjJlN2ZjZDdm
ZGJkNmE2MjExIDEwMDY0NAotLS0gYS9Ub29scy9XZWJLaXRUZXN0UnVubmVyL1Rlc3RDb250cm9s
bGVyLmNwcAorKysgYi9Ub29scy9XZWJLaXRUZXN0UnVubmVyL1Rlc3RDb250cm9sbGVyLmNwcApA
QCAtNDEyMCw0ICs0MTIwLDkgQEAgdm9pZCBUZXN0Q29udHJvbGxlcjo6bWFya0FkQ2xpY2tBdHRy
aWJ1dGlvbnNBc0V4cGlyZWRGb3JUZXN0aW5nKCkKICAgICBydW5VbnRpbChjYWxsYmFja0NvbnRl
eHQuZG9uZSwgbm9UaW1lb3V0KTsKIH0KIAorV0tVUkxSZWYgVGVzdENvbnRyb2xsZXI6OmN1cnJl
bnRUZXN0VVJMKCkgY29uc3QKK3sKKyAgICByZXR1cm4gbV9jdXJyZW50SW52b2NhdGlvbiA/IG1f
Y3VycmVudEludm9jYXRpb24tPnVybCgpIDogbnVsbHB0cjsKK30KKwogfSAvLyBuYW1lc3BhY2Ug
V1RSCmRpZmYgLS1naXQgYS9Ub29scy9XZWJLaXRUZXN0UnVubmVyL1Rlc3RDb250cm9sbGVyLmgg
Yi9Ub29scy9XZWJLaXRUZXN0UnVubmVyL1Rlc3RDb250cm9sbGVyLmgKaW5kZXggNzEzZmY5YWIx
OTY5Yjk3YTU3ZTdiNWU0YjIyODRlZDIwOGYwNmMxNy4uZjk0ZDU3YzE0N2IzMTZmMDc4ZmE4NWYy
MjBmNDA3NjA5NDExM2M4YyAxMDA2NDQKLS0tIGEvVG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9UZXN0
Q29udHJvbGxlci5oCisrKyBiL1Rvb2xzL1dlYktpdFRlc3RSdW5uZXIvVGVzdENvbnRyb2xsZXIu
aApAQCAtMzU5LDYgKzM1OSw4IEBAIHB1YmxpYzoKIAogICAgIHZvaWQgZGlkU2V0QXBwQm91bmRE
b21haW5zKCkgY29uc3Q7CiAKKyAgICBXS1VSTFJlZiBjdXJyZW50VGVzdFVSTCgpIGNvbnN0Owor
CiBwcml2YXRlOgogICAgIFdLUmV0YWluUHRyPFdLUGFnZUNvbmZpZ3VyYXRpb25SZWY+IGdlbmVy
YXRlUGFnZUNvbmZpZ3VyYXRpb24oY29uc3QgVGVzdE9wdGlvbnMmKTsKICAgICBXS1JldGFpblB0
cjxXS0NvbnRleHRDb25maWd1cmF0aW9uUmVmPiBnZW5lcmF0ZUNvbnRleHRDb25maWd1cmF0aW9u
KGNvbnN0IFRlc3RPcHRpb25zOjpDb250ZXh0T3B0aW9ucyYpIGNvbnN0OwpkaWZmIC0tZ2l0IGEv
VG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9jb2NvYS9VSVNjcmlwdENvbnRyb2xsZXJDb2NvYS5oIGIv
VG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9jb2NvYS9VSVNjcmlwdENvbnRyb2xsZXJDb2NvYS5oCmlu
ZGV4IGVkYjIxMGMxYTg3OWJiODRjZGI4ZTY5ZTE0Yjc1NWQ0ZmFiZmUxNTguLjc3NjdjYWI2YTU2
NDBjMjQ3NDAwZTM2ZmIxYzk0NWI3M2JlZTM2ODQgMTAwNjQ0Ci0tLSBhL1Rvb2xzL1dlYktpdFRl
c3RSdW5uZXIvY29jb2EvVUlTY3JpcHRDb250cm9sbGVyQ29jb2EuaAorKysgYi9Ub29scy9XZWJL
aXRUZXN0UnVubmVyL2NvY29hL1VJU2NyaXB0Q29udHJvbGxlckNvY29hLmgKQEAgLTU3LDYgKzU3
LDggQEAgcHVibGljOgogCiAgICAgdm9pZCBzZXRDb250aW51b3VzU3BlbGxDaGVja2luZ0VuYWJs
ZWQoYm9vbCkgb3ZlcnJpZGU7CiAKKyAgICB2b2lkIGluc2VydEF0dGFjaG1lbnRGb3JGaWxlUGF0
aChKU1N0cmluZ1JlZiBmaWxlUGF0aCwgSlNTdHJpbmdSZWYgY29udGVudFR5cGUsIEpTVmFsdWVS
ZWYgY2FsbGJhY2spIG92ZXJyaWRlOworCiBwcm90ZWN0ZWQ6CiAgICAgZXhwbGljaXQgVUlTY3Jp
cHRDb250cm9sbGVyQ29jb2EoVUlTY3JpcHRDb250ZXh0Jik7CiAgICAgVGVzdFJ1bm5lcldLV2Vi
VmlldyAqd2ViVmlldygpIGNvbnN0OwpkaWZmIC0tZ2l0IGEvVG9vbHMvV2ViS2l0VGVzdFJ1bm5l
ci9jb2NvYS9VSVNjcmlwdENvbnRyb2xsZXJDb2NvYS5tbSBiL1Rvb2xzL1dlYktpdFRlc3RSdW5u
ZXIvY29jb2EvVUlTY3JpcHRDb250cm9sbGVyQ29jb2EubW0KaW5kZXggMTdhZTU1MzFjMTE4NzIx
MGY2ZjQyYjQ0NjM5MjE1NDMyMTQwZGM1Yi4uYTgyY2MzNTVjZDdmZTk5NTU3YTQxZDYyMjE1NjZk
NzAwYzM0Zjc3OCAxMDA2NDQKLS0tIGEvVG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9jb2NvYS9VSVNj
cmlwdENvbnRyb2xsZXJDb2NvYS5tbQorKysgYi9Ub29scy9XZWJLaXRUZXN0UnVubmVyL2NvY29h
L1VJU2NyaXB0Q29udHJvbGxlckNvY29hLm1tCkBAIC0zMiw2ICszMiw3IEBACiAjaW1wb3J0ICJU
ZXN0UnVubmVyV0tXZWJWaWV3LmgiCiAjaW1wb3J0ICJVSVNjcmlwdENvbnRleHQuaCIKICNpbXBv
cnQgPEphdmFTY3JpcHRDb3JlL0phdmFTY3JpcHRDb3JlLmg+CisjaW1wb3J0IDxXZWJLaXQvV0tV
UkxDRi5oPgogI2ltcG9ydCA8V2ViS2l0L1dLV2ViVmlld1ByaXZhdGUuaD4KICNpbXBvcnQgPFdl
YktpdC9XS1dlYlZpZXdQcml2YXRlRm9yVGVzdGluZy5oPgogCkBAIC0yMDgsNCArMjA5LDE5IEBA
IHZvaWQgVUlTY3JpcHRDb250cm9sbGVyQ29jb2E6OnBhc3RlKCkKICAgICBbd2ViVmlldygpIHBh
c3RlOm5pbF07CiB9CiAKK3ZvaWQgVUlTY3JpcHRDb250cm9sbGVyQ29jb2E6Omluc2VydEF0dGFj
aG1lbnRGb3JGaWxlUGF0aChKU1N0cmluZ1JlZiBmaWxlUGF0aCwgSlNTdHJpbmdSZWYgY29udGVu
dFR5cGUsIEpTVmFsdWVSZWYgY2FsbGJhY2spCit7CisgICAgdW5zaWduZWQgY2FsbGJhY2tJRCA9
IG1fY29udGV4dC0+cHJlcGFyZUZvckFzeW5jVGFzayhjYWxsYmFjaywgQ2FsbGJhY2tUeXBlTm9u
UGVyc2lzdGVudCk7CisKKyAgICBSZXRhaW5QdHI8Q0ZVUkxSZWY+IHRlc3RVUkwgPSBhZG9wdENG
KFdLVVJMQ29weUNGVVJMKGtDRkFsbG9jYXRvckRlZmF1bHQsIFRlc3RDb250cm9sbGVyOjpzaW5n
bGV0b24oKS5jdXJyZW50VGVzdFVSTCgpKSk7CisgICAgUmV0YWluUHRyPE5TVVJMPiBhdHRhY2ht
ZW50VVJMID0gW05TVVJMIGZpbGVVUkxXaXRoUGF0aDp0b1dURlN0cmluZyh0b1dLKGZpbGVQYXRo
KSkgcmVsYXRpdmVUb1VSTDooX19icmlkZ2UgTlNVUkwgKil0ZXN0VVJMLmdldCgpXTsKKworICAg
IGF1dG8gZmlsZVdyYXBwZXIgPSBhZG9wdE5TKFtbTlNGaWxlV3JhcHBlciBhbGxvY10gaW5pdFdp
dGhVUkw6YXR0YWNobWVudFVSTC5nZXQoKSBvcHRpb25zOjAgZXJyb3I6bmlsXSk7CisgICAgW3dl
YlZpZXcoKSBfaW5zZXJ0QXR0YWNobWVudFdpdGhGaWxlV3JhcHBlcjpmaWxlV3JhcHBlci5nZXQo
KSBjb250ZW50VHlwZTp0b1dURlN0cmluZyh0b1dLKGNvbnRlbnRUeXBlKSkgY29tcGxldGlvbjpe
KEJPT0wgc3VjY2VzcykgeworICAgICAgICBpZiAoIW1fY29udGV4dCkKKyAgICAgICAgICAgIHJl
dHVybjsKKyAgICAgICAgbV9jb250ZXh0LT5hc3luY1Rhc2tDb21wbGV0ZShjYWxsYmFja0lEKTsK
KyAgICB9XTsKK30KKwogfSAvLyBuYW1lc3BhY2UgV1RSCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9DaGFuZ2VMb2cgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKaW5kZXggMzdkZjBmOWJjYzYxMWY0
MWNlZTg3MDJkZDZkMDZmNmJiYmZkYzNmMi4uMGFmZGRlMWNmN2U4ZGJlZGI2MmZlODA2MzhlOGJk
Y2U5YTViZWZkMyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCisrKyBiL0xheW91
dFRlc3RzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI3IEBACisyMDIwLTA5LTA0ICBUaW0gSG9ydG9u
ICA8dGltb3RoeV9ob3J0b25AYXBwbGUuY29tPgorCisgICAgICAgIGlPUzogPGF0dGFjaG1lbnQ+
J3MgUXVpY2tMb29rIHRodW1ibmFpbHMgY2FuIGFwcGVhciBzcXVpc2hlZAorICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjE2MjA5CisgICAgICAgIDxyZGFy
Oi8vcHJvYmxlbS82NzgxNzcwNj4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMh
KS4KKworICAgICAgICAqIGZhc3QvYXR0YWNobWVudC9hdHRhY2htZW50LXRodW1ibmFpbC1wcmVz
ZXJ2ZXMtYXNwZWN0LXJhdGlvLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogZmFzdC9h
dHRhY2htZW50L2F0dGFjaG1lbnQtdGh1bWJuYWlsLXByZXNlcnZlcy1hc3BlY3QtcmF0aW8uaHRt
bDogQWRkZWQuCisgICAgICAgICogZmFzdC9hdHRhY2htZW50L3Jlc291cmNlcy80MDB4MjAwLWNp
cmNsZS5wbmc6IEFkZGVkLgorICAgICAgICAqIHBsYXRmb3JtL2lvcy9mYXN0L2F0dGFjaG1lbnQv
YXR0YWNobWVudC10aHVtYm5haWwtcHJlc2VydmVzLWFzcGVjdC1yYXRpby1leHBlY3RlZC50eHQ6
IEFkZGVkLgorICAgICAgICAqIHJlc291cmNlcy91aS1oZWxwZXIuanM6CisgICAgICAgICh3aW5k
b3cuVUlIZWxwZXIuaW5zZXJ0QXR0YWNobWVudEZvckZpbGVQYXRoKToKKyAgICAgICAgQWRkIGEg
dGVzdCB0aGF0IGR1bXBzIHRoZSB0aHVtYm5haWwgc2l6ZSBmb3IgYSA0MDB4MjAwIGF0dGFjaG1l
bnQuCisgICAgICAgIENvbmZ1c2luZ2x5LCBvbiBtYWNPUywgUXVpY2tMb29rIGFsd2F5cyByZXR1
cm5zIGFuIGltYWdlIG9mIHRoZSBzaXplCisgICAgICAgIHdlIGFzayBmb3IgKDQwMHg0MDApLCBw
YWRkZWQgd2l0aCB3aGl0ZXNwYWNlLCBzbyB0aGUgcHJvYmxlbSBkb2VzIG5vdAorICAgICAgICBy
ZXByb2R1Y2UgYW5kIHRoZSB0ZXN0IGRvZXNuJ3Qgd29yayByaWdodCB0aGVyZS4KKyAgICAgICAg
T24gaU9TLCB0aG91Z2gsIHRoZSByZXN1bHQgdXNlZCB0byBiZSA0MDB4NDAwIGFuZCBub3cgaXMg
NDAweDIwMC4KKyAgICAgICAgCisgICAgICAgIEkgdHJpZWQgYW5kIGZhaWxlZCB0byBtYWtlIGEg
bW9yZSB1c2VmdWwgdGVzdCAoYSByZWYgdGVzdCwgYWN0dWFsbHkKKyAgICAgICAgdGVzdGluZyB0
aGUgcHJlc2VudGF0aW9uKSBiZWNhdXNlIGl0J3MgcXVpdGUgaGFyZCB0byBtYXRjaCB0aGUKKyAg
ICAgICAgbmF0aXZlIDxhdHRhY2htZW50PiBwYWludGluZy4KKwogMjAyMC0wOS0wNCAgQ2hyaXMg
RHVtZXogIDxjZHVtZXpAYXBwbGUuY29tPgogCiAgICAgICAgIFJFR1JFU1NJT04obWFjT1MgQmln
IFN1cikgaHR0cHM6Ly9tYWdlbnRhLmdpdGh1Yi5pby9sb2ZpLXBsYXllci8gaXMgYnJva2VuCmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2F0dGFjaG1lbnQvYXR0YWNobWVudC10aHVtYm5h
aWwtcHJlc2VydmVzLWFzcGVjdC1yYXRpby1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9mYXN0
L2F0dGFjaG1lbnQvYXR0YWNobWVudC10aHVtYm5haWwtcHJlc2VydmVzLWFzcGVjdC1yYXRpby1l
eHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uMjNlNjM1YWJmZDBlZDk5YWNlY2I0MGNhZTQzODcwNTQy
ZjlmMDU1ZQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QvYXR0YWNobWVudC9h
dHRhY2htZW50LXRodW1ibmFpbC1wcmVzZXJ2ZXMtYXNwZWN0LXJhdGlvLWV4cGVjdGVkLnR4dApA
QCAtMCwwICsxIEBACitBdHRhY2htZW50IFRodW1ibmFpbDogNDAweDQwMApkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvZmFzdC9hdHRhY2htZW50L2F0dGFjaG1lbnQtdGh1bWJuYWlsLXByZXNlcnZl
cy1hc3BlY3QtcmF0aW8uaHRtbCBiL0xheW91dFRlc3RzL2Zhc3QvYXR0YWNobWVudC9hdHRhY2ht
ZW50LXRodW1ibmFpbC1wcmVzZXJ2ZXMtYXNwZWN0LXJhdGlvLmh0bWwKbmV3IGZpbGUgbW9kZSAx
MDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uY2Iy
ZGMyMTQ0NDIxYmViOWI2YmJkMTRmMDY0NDg4OTk3MGQzN2UyMAotLS0gL2Rldi9udWxsCisrKyBi
L0xheW91dFRlc3RzL2Zhc3QvYXR0YWNobWVudC9hdHRhY2htZW50LXRodW1ibmFpbC1wcmVzZXJ2
ZXMtYXNwZWN0LXJhdGlvLmh0bWwKQEAgLTAsMCArMSwyMSBAQAorPCFET0NUWVBFIGh0bWw+PCEt
LSB3ZWJraXQtdGVzdC1ydW5uZXIgWyBlbmFibGVBdHRhY2htZW50RWxlbWVudD10cnVlIF0gLS0+
Cis8aHRtbD4KKzxib2R5IGNvbnRlbnRlZGl0YWJsZT4KKzxzY3JpcHQgc3JjPSIuLi8uLi9yZXNv
dXJjZXMvdWktaGVscGVyLmpzIj48L3NjcmlwdD4KKzxzY3JpcHQ+Cithc3luYyBmdW5jdGlvbiBy
dW5UZXN0KCkgeworICAgIGF3YWl0IFVJSGVscGVyLmFjdGl2YXRlQXQoMTAsIDEwKTsKKyAgICBh
d2FpdCBVSUhlbHBlci5pbnNlcnRBdHRhY2htZW50Rm9yRmlsZVBhdGgoInJlc291cmNlcy80MDB4
MjAwLWNpcmNsZS5wbmciLCAiaW1hZ2UvcG5nIik7CisKKyAgICBsZXQgYXR0YWNobWVudFRodW1i
bmFpbEluZm8gPSB3aW5kb3cuaW50ZXJuYWxzLmF0dGFjaG1lbnRUaHVtYm5haWxJbmZvKGRvY3Vt
ZW50LmdldEVsZW1lbnRzQnlUYWdOYW1lKCJhdHRhY2htZW50IilbMF0pOworICAgIGRvY3VtZW50
LmJvZHkuaW5uZXJUZXh0ID0gYEF0dGFjaG1lbnQgVGh1bWJuYWlsOiAke2F0dGFjaG1lbnRUaHVt
Ym5haWxJbmZvLndpZHRofXgke2F0dGFjaG1lbnRUaHVtYm5haWxJbmZvLmhlaWdodH1gOworCisg
ICAgdGVzdFJ1bm5lci5ub3RpZnlEb25lKCk7Cit9CisKK3Rlc3RSdW5uZXIuZHVtcEFzVGV4dCgp
OwordGVzdFJ1bm5lci53YWl0VW50aWxEb25lKCk7CithZGRFdmVudExpc3RlbmVyKCJsb2FkIiwg
cnVuVGVzdCk7Cis8L3NjcmlwdD4KKzwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL2Zhc3QvYXR0YWNobWVudC9yZXNvdXJjZXMvNDAweDIwMC1jaXJjbGUucG5nIGIvTGF5
b3V0VGVzdHMvZmFzdC9hdHRhY2htZW50L3Jlc291cmNlcy80MDB4MjAwLWNpcmNsZS5wbmcKbmV3
IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMC4uYTEyYTY0ZTA0MjY4ZWI5OWEwNTIwMGVjNTVhMTExYjc3ODk5MDg4ZgpHSVQgYmlu
YXJ5IHBhdGNoCmxpdGVyYWwgMTAzNzQKemNtWntKMXpjUnFsSzBIdUYyTi1YWm8lRSVvIzI3czVE
NHk/RmhIO2JjUEJVamYpbWBHMEtwLSt5QXVlJEMtPmc+CnotdEs8OzRacT5ePjheaU9jVWdEIWdz
WkV7Vlc1KHJmPFBiKTEkaypyNUN8THR2PEh3OGYmWUVALV99N09iUT5FZgp6RFJsKVlEWDYtT3Ft
Xy1GQj91JVJvflZuWV9pflVSPnlAVTBCbmxLdGRyMjJ8Tmt0bj5BUiskNmdxajh4akI2JlQKelVT
K0RVPCNhQGElSWxeckp3QTtlUSlpfTIoN1F+Q2hDMCsjezFHRjhqfW1Oam9wX1JZa31tV2w7PF8h
aUhNOzFGCnoxUkI4LUY1eU8raENwQFcqZ20zUlN3KlRUU2pKe1NJQ0g+KT9DPWNIWXt9Szs9NlJy
bSZjfkRVVj48REsyT2ZJYgp6UytWfTcocH1fVzdnNWxGYmw0PDwlUkFOe2RRYj1SamkkYVJOVjtJ
eiNoXl9xezNDUUd1QGdsM0k8Rl57c1lOTSMKelF2M0huZlFscDsobUZGSiN6cntuI1dQVCFmM1k/
R0RIa1BIOStud2x4Y0NkT3hHUWBRKmJoZXlSSzxDUCk3YT4oCnpYb3kpd1VZamg1ejUhbXxUWEN7
X2oxPTxeJWtDZDA+LXk0eTcpKFokcX56K3deKkE8aD8+SVEzZnFxKkZpPT5OXwp6PjAhSkc8IVE7
eEJyTklTNHJge184fE40QGtoKyg2cCp+RnhOP184SXJ1bE5IVmN3UGpjWXQoQj40OUA5Tmt6I1UK
eiFta3xuakojbGAkVTNhTTBsUnhUUD9kMVVeJTt+bXpeaDlBSVl+d1JKa3t7V212QG99b0VCdkQy
SmZAek5sIX5KCnpmMnFmMjQoTUY4PERmTCF6V2IhWHBlUEBiZj9Bfnc8N1hyPkwrbHduS20wOVVI
P2t7PEwrfHJMd2xNNXZwQ2Z7RQp6aEMxJV52aHt2Y1A3NzBLK3EqYyE4PFZ5PGc0aCgmQDs7PDw4
NUVvXnc8Yms1RXdKQ0Z0YUpGRWdFUlJEczF1XjIKek54c1dLKE5WT3dxVEc+YiFfUkU5dXFOKFRg
S0p2dG1gMXwyN2Q4bUdHTW95UUEhZVQ1NS1tUWdTcVdII01HK0taCnpHMjh1ZyNwXncySEQyYXMr
R25mRzsmYGg4KmN9a214ZTFCcTFDYUhrdWVZcFRNSTxQMiFjZSRXYXBhN3R2YCpxZAp6SUJIejRO
VGQmfFNZZzU5cVRGbT1DUilnLUlnYn1ISV9+WmVWekBqNklJaWtXdH1zXiNuZ1E1IzFXWjRVKG90
Y1IKemFWcVItRWZhfjlxQXdqVC1RfEFlMElBTkgkRjRZQl5EU1BgYk4jZlNxI2t1TVdSNV4wKzFt
Y2RRX3Z6LWJsQHk+CnomZH1MJChWOUtGO3dzb1dTZnxVcDNxejgwWjR+ZCFae0FaUTNjKUBgT3hm
dDtyUT0pSmcxOVB7Rnd1NEJWR1F3WAp6ZWBMVjNXNlghakd4NlBkSTlxfUpoRDI+c3xOZSg+PXh5
RjR3bjduVDJuRmJRQEVWNzAqQEkzZFVnJVd9WnkpVWEKendXPG9TcnFqOCYmcypQKkA9WChWaEBT
ZkAqPlFNYTN4I0kodSRzdEtgZ0MrZm5QY2QyZDEhQCk+ZGEyVXJnP1QqCno5SDNjdDFKc1k5VnAl
X25zXmVVZU5zPzhRTVdeLUpvUDYzYEhre0EleGgmUnxIQUZ2UnZ8fnlWPXlyS04/e3NsQAp6Yl9h
eyFseHd1TUhMK3AmTm51TUpSVyMrJmZuPz5idUNGTmB6a0NjaSQoQUJfeTdQUURKXnZhS3UjRGJ1
Z1dEI2wKemxRWGU0Z2EmUy08ejc/ZWYtbWdBbyRLXjdnd2RiRU5rSCpGZmpPWXl7RDhzQUEqek5e
T0IwZTVnbCg5YUk7dWBVCnpvZUE2PWRPZ2dAZ3BEN3gtLStYZG59THdyZiRzI2o3KnR3Qi1VN2Uw
TzE+K0Q5VVN9dmh0NGM0Zz5vajBkT2dDNgp6OFo2SSVgPU4pRFFKeTMmVHBrO042SFB4TGZ2UGtI
Vj9aYUw8YzMoX1EtKEF2dzB3WWs2SzVqNE1NQ3M1aylvOGwKeiM8TTl6QF5HSSNKOG9QUmFyKTF4
eUlRcl9NcSNXeyF7YmJEU08lZTQocmxta2UoK3c+e3ROO3UhJWc7bz1iLTtpCnp4PyNlaCRDTHlj
dFE2MmcoRnhIdXQ8JDZTOD1iQT5Fa25CdGQqKTB4K0xnSkE4ckFYNFN5VTgxSkJZMjlaPypZVQp6
QFNnaH0jYHxFOzRQI2B0SyN0RFhSaSN6anpHc3skbGdQY25vTCFoKmx3SElQJHY7c30hbFpMVyRD
R3Z1dUZYKDYKektKdiNtQnM5Yn1NMCo5IURmJnFzUXBVPU0oOCRHIUZeMlJ8Wl5jSV85NFBxOF9i
Y2NzOU9Zd0tVe24qJkN6OHBrCnooa2N5SDN8ZWszWkpLWUVadGlUcGp2KGt3VFVRR0lqTGc4ckZ3
RDVYN0AwN2Y7R3hLLW9vPWkydEI2aiRydWQ/Rwp6WXN6NHNjO0EyajYkUzxkOFV7dEFHbF5Md1Jp
c1BnMUlaNTBhfnI/PnkmcSg2JGJMJHYxPWZHNmtNe2BsMikjO0QKekVuNF55dnxEb05jZ3lMK15N
TG4yYDJaSSo9dyMoWTRDeW5KTWFZWUNQQ1FlTCYkVEhab1hJSERGVi0qZ1I9PXBXCnpOK3lzUW1p
P0k1SkRIWkp7bj1nYkFXMHtoX29aKXckMHZga1NESHNsS004QXYrfmZzJDF3Uld5R0N2M3x4VCk/
NQp6bzA9JnIoUzs2THZ6ajxxWFBNUj87SlZ3cEgjWEB2NipUI316akFCLTwjeElGRUFGIUpLem87
YmB0NC1AclR0fiYKenQtJFRARlJhfl9zVkRDNTdEVD0mUElHYWxiPV9ZdmVJM35zcCMkUD8pWGdm
I1J6b2BKcklKakdQM3pZYnlNNE5tCnpXRSowRyNgKkpYV1lhJjU2MWlpe2t7fFBCaF96ViFoT0sh
PFlNM0shQE5jQntFcXFGa15pQF8/PX5CdDNKNVcoZwp6YnhZayhNQCtSIXttTE8/XzB5KTA4OyQq
MGRPMyVYISZQOEd6Z2Rsby1kNVJVblMtbk8xK3dkaDg9VlYraWBRdGMKeksxelNRQS1IPy1UdStt
d200KWxZdFJBbnYkRSNIUiRodEkzWkZCZThHX3hhbm1nPzhtey1kfDhrPng3WUJVSUA9Cno+Nm93
SlVWWEx5WSMoeyNGVnRqfHYhdkNgKU8+SXk/ZHkxRmNOY2wzT1F3IzVnJW02R3ExI2UhWUo1YFR1
d2xIKQp6OW97cn00MCRsQDMobUtVSD4hMztrUnA7SXh6WEVFam5Sd0RnR31TZFQ5UTtqbSNxTzs+
aD1iJmhScF4kJnFoOCkKej4hfW90M3B0KUJwTjsrMUE8dUhCKT8tO3VHfXJXbG5ib1ZHT1hFaG5a
RyNXPk5SI0dle1ohRigoUExTIXZwQn5MCnojI0dzdUU0VjhaRF8kKShFbXRpb3dUfDZrYHZ2LU0t
OyRsKD4+bGk7cFpJb010QktMSytxRXlmQmhSeSFMejhvKQp6Yzw1UV8lSEM8OFpmNk89azBHZH0m
MCtaPTk3Q3Z3fENAaCtReSNtUGRSSmZ9RTM8ZEdgeUt1dj9oNzxneSEpKDsKejtuV2NVb1dLdmtw
JFdtWSFUWjU8QXI4cD9Mez5PUyM1JkpyJGQ3U0V4JGRSbURYQlFrRVBHaEtxOWwpJVoraz9hCnpr
I1BCYi07KzE2QFlAVS09LTBzMXM0bmlTK01WTXQqTnR3YXVxUzU7e344VkVTV0tEYnolc0twRlkw
Pn5qTiloWQp6RnpqdXhjRnRTMz5kcExVLUtRNDVMakpAYCQjM2YyKWhnWEFFbzFnRiZUNjczZT9S
fHZrYURtelpsTiFsT3c5TWIKejA1MT5FU3k3NktrJSFTOyZVUCZMMmcrT2VURDhqKko+aiEkbmd4
WVBkWlFGT1pVTzdfYW1LV2xVTjEyVmFWRnY+CnpKJkp5dm5SI2lxV1Z0IWBTby1pfmNOX1A9WEdG
Iz0hKk40Pl8pcj09IyZ5cjdXOWVwYll5RVpmNUR5X0BOWlFDTwp6JH04eCV5Tj5rQ2NHPmtqJEds
TEBvb2sleSltRUpBcXpqZ2s4X2omJnE8NWtCPGJePiYpUCRNTWc0Um1PK2FpeCkKekRvZGZ3RnUl
QUtOQEsjdURMJj55SlRacG5gMCNqSWN6IThLKygpWiFNfCpMNUJWMSV3RkgrQjEqdm4zZlFoekh5
CnplbE9KRHVHdD4oO1o3SXZKc2A3Q3owRHxXT21aYjB3UCE8UmBeZ2g2JG1ZQjNjd3d8JWtAaHFq
eFFQJm5yYjBsIwp6OyYoM2Y4O2hzK2xiUVpteHktd2R5bGoxaDl8XnlgYURHKyZaWkh7RlZ6NV47
ZDdecnZ0PkNfWkBJQmN0XlBBfDAKelZhfXd3N3VTWXVIVkRvaUVQNiowVmElVDg2UikpIV82UFQ/
TilLaSNYQTtWOC1YMH4/NWVfWDVeSCRgMmVPZE9GCnpJaHg1KSYjfkBaP2A8MUtFKFJZe0FvRzxy
aTdzbzJVJU4pLSo/d1Y7Tj9wMU5aP2VOPHR4VV8tKXkhJFJ5RWQ9Mwp6PHdEcDNZUTR4cFJfKCow
K09uQVQzSHdpdHJpfX5MIU8/bW49Vm4hMVV2MXFKLXNSUjcjQnotKHg4dX0/b3VURUoKelIqWDg7
eD53aEdDKEtKJlNJayVLelhndFYodmhnSnhYQ1g/XzNsM1lWb01CNzMwMiZXWChEIUNganZaSUFD
ZUY8CnooYH1CKSQ4KmNge0M0X2dIZEYzPHY9LVU0UH00b3B1ZW1Qc2hrbXJePnhgSkpVQk9pRWJB
YCEtTGZAams/NTF9PAp6aStmMzJ2RFR5NjcoJX1MV09ze2E3bXF2OWhOckRnempMcDlaPFZyPV90
UWt1dXBZTTA3Q3NZPEJ7ZERkUEEye08Keit0OXwyZTk3bX5jNkI7X1JgUDNSPnVCcXtKPXgzMW5l
PWN6JENXZyUoeGR1U2tOKFVJcF42aU4jaUxlVHdgYH5PCnpQMXNDT2IhWjx9PkFQPUZ7PkpJbjMq
Jk4+KFA8UkBWcnwjS1BuJW1XWnprS1dLOCk+LTRQfldeUjIofVVAbE8hWAp6Y3lJTHY2Q1NZQHU9
ekdlSnBGamdKNU85SEhHVnxEdCFlYzJeU3BhSWZBR2tzdl9qSWhiZCE4JXRSaGsrZzAtXk0KemNI
blAoLWcoO25IRn13MSV3T15HdmM9UFlxTkwpIT0zJUZnRSFPej5kZ3RtfCQod1Z6cVhMOVRuaWRR
ME5ZNllLCnpxZUtBRjM0aGF8RkNHbnEzb0lWM2ZKNDVnRkI0P0w0NUo2dFJsYT1lYjUjWFpRdCts
ejRQY3lAMlpIMzBBO3N3bgp6Pk11VkVjYUxjSV83O04hRVM2V0U9JihTamNLJk0qNTNOLVg1ODJH
N205dD59bmFfZWpPZHBXUCZ8ZHs2PzFzUXsKemtwMVl0VDxxfSl5anl7QGdnOylyZG8pSDBpJXl7
bzZzLWVsazBlVnkxdUdSNTVFSVp3MXxmaVBMMnk2fDRFJXc+CnpCcGAmcCs4fmYzbkRwT21PKSRl
aEchUElkKUNMNnE0fitydntQWCEhKjh1MiRvXld2P0FTQj1vN3gpSX1LPmtHeQp6aj4mPWhSfnN8
e2pEYUx4Tit+RCsmekkmZG1YOzIjWnllcHEtRzZpZjlWa3huYG1QYGwwcXZoSlNWNUVLNmE8Mn0K
eitpMjt6PjhVNlNubWdMRm5wIXhUUythV0JKTkBBVTY3fmBWbilhNCVyY2ZfP0l8by1tRkE9SzBD
PEtBX3BLZGxQCno9d0JwbVokK3J8Uk1lcVRqeExyXlVSSEtpYn1DVStDPUBFfVZxcW55REp9YUM5
QyNDPGRnSkVpQipAMCo+RkxTcAp6JDtJbUVWJEhAT0FSeGZUJmRKOGYkcFRRWXhPekxkblI+QX14
S2pWazxYP1FHRW5VckJZQEZPfDkzN3k0Xz9udEkKenkxUilgUVQtQTBANlhAIXdEaHcxazBifXpm
MGhMLWtuUFYxOHdWPnAreTRifnYkNlhCITJYUTw0ZnxfZGV+VDBUCnohJVJAeSl6VUBFKGNhJEQh
QTxsKDhXO1hjKCpHRnomcGlKSXNAciYzK1VaTiUwN3pHME9gQERVZUJBJVF7YGIpVAp6M0R4QCNs
dUxsfmU/YjQrKDBfeWVTJWpkUGl3IVZTKD80MWk8cSY1M2ZCT0Q2eXs0dEJxbi1PN2ElfjQySCZN
PWkKekFwZmlUQUN4ZkxBSCkxTkw7ZFhxZkFzPXhBY2B1P19IVU9HTWVTdn5wJDM3N2F1bFFgdzdr
R2FuUHwwSSk4NzU8Cnp1QV8jfSZ2Q2I2ayNuOGN1PF5tKkFWLWJMa3tSNnxJYntQMT1BVDs0WHw7
cDRsbGVCeSlqQm1neGU3QGZyUT1nJgp6YjYrQFlEUSQ5amN5aDtRaTEwUFFRaDNLUUBPVG9eJWhB
SyUxKHhtJXBJPnZocnV3RyMtJntTfiZ5KSRkWmhzZTgKenh4VUxANlQ5O2NibCZLcm00dCFkcCYm
NXdXc0xhZkB5ZikrTTBhJFImfGZ7am0yO305RyRnYVpGQEx7YldgUGhWCnpkX0RZZEE9bSl7diso
VEw2PGhTKSRsQFNLRH00YSRHSylNcjd+cihaMTRpJDhkIXo2aUFRQ0A4RkBkJlBfdFI0WAp6e0pt
NV9hQXlZWjt6OXdVQUhFUEdgSUdyR2crSiltJipiVEdlTitOQVRQZjlKVElgZigySlolaV9STzJA
NT05MUMKej1jJG4+bmtRJDQ3VjJyNlkxeUF7NWchVUZZREk0QWQ+eWBCYjFmaFpzVDFSVFFseVh5
aW5WZ1ZaeSM9SEVFWlA3CnpnRkN5MklCYDR9UlU2SUZtUmJhSE1BWXtpVHpIbi1EYjZVX0pecmRh
UlAtUmJBRHw/Nzk4XiNaTEZnWWleJCsycwp6QkZZcE1xdkw7bE9Wcz5YeW5ffSg2c0JiQmxsSE0o
cVU9KyRmQGAmJlBMSS1OcmJQa0d3eX11ZkB8NFQ2bDFAP2QKeilsTWBgKyh1eWQxZkhyWU1TdUVe
ZkhALWBAKjZ0cnhuNFlkR15MdjAkS0V6dzE1NTNEU3pEciFHZm4tPjdzLUopCnpNSjMhczdldTY0
UD9iJiNWaFl0Kl5CfXMoUSt5am1uNFNvfCQhdTNIO2ApdEQ0ejImZmAhbWA1aCEhJDJtZmBnZQp6
Vy04TElSY0NDYGd1XmNTRkVrcmd4RTt0VDxHWjttV1psfWg1I3VNPzJ1RSZrbmtmS3RoYEgmYzdU
QVh2cX1MOG0Kem5VaHJYajE2NWBsbngwR3E0PDB8T2h7ZncqZlcyX1pmRiZ9R2tBRz1Va2hBZ2pN
WlNsP0BJKkdtSERYZVdHdnklCnpXIVB+U28rJXFGPXcrQWZjXko+RylJUU1GPnV+WjJ6ZHtePCZR
OCpiJC12dF5CUzZmUlhQPWNhJH1FZFBfej0ydgp6ZVd2N28wNilnR0Y7TDVeaEdqaT94STUmZ3JL
X18rIX09Y2kyaHdgPE96Tm5jPCQwNV56TClnIUMqdSpmajk9KVoKelNLeFUlKSYoU1BUSCM1ZSFE
K0tsI0Z0UVlIT003d0QhIzNNcn5aTXxGLWBSaHBec21PWmRqT1p5a19jMUk3eFRvCnpOckB1OUUw
d2RLWGZWWUBhdHlPOzhNXyE4akdpd0U2O1NxdUZMUTJyLVgyNUpwTylYKWY+b3VmMGpjT2BCU35U
Iwp6M1U+TnBoOzAtZndhbkIrTy1pV19TWERsOyEpNUwoe05kczAlfXNOJHZ6dl5vLW05ZWtpZDQk
WmlofUx7d3JHYlcKej5MQWxsY1ZTVTxtPCE7I1RYQU9YdWIpK05ePTJ+JkdkI1dlWkNSMG95WjAr
eDxaZDxZdz5PdXJSamVPWGxnPzszCnpFN3Y2TWpnUE1mJTlPQ3QqVUJ7Tj56Jn5HTXFCNm1TMnI/
aSYqJFVwJmdzdHR0JHh9aiFUZjRaUHBXXm8pc0t4Vgp6TiFJOSkqUFg2UzVydHRmJX5IeFd1T0Uk
fWlkazRfbGd9LUB7UTBabChmdmdDYDtWMjImNTIhRVZtJFFubW95bk8Kem1WajNkQDZTOzMyYFRS
R2JxVXxOdU43SVgrTyVRZkkxT0ZGNlpFIW9ULWQlJjc8VDB3RUxrSDxsREVNTS0zYkxrCnpQUVdn
aCV0UT1rS054eTB6UDdMeihReDxlP0FzJiFBdHhpJik9MntYbnIwKVhYS0NYJWw7TlJTVnwrZlU0
KU1odwp6Um1ie3NtUXhmQWk+d1FBQmtzezNLb1FSPj50Y0MpbFpTc2J3a0ptO183a3B6bXQqZ08h
NDg9LWFDKFA3NjllcTQKenRFdFA1TjhlKnk+XypWTHpCPElIS2MyZ3peYD9CfThTYkBFQ0hEdHd6
Pk9FX1RUdzBCJUlaQWlwT1VBUWFwdVc7CnoheyFQJERGKXZnciorZjFYZGtudyNPcGtyaXc/WlQt
anhReT9aRjJwWntmVipJTTd7NmVqPSFnSShNPmtWUVpGdAp6e01rQzxWdCFvOCR3P0dITlFBPCkw
Uk5fSXM5clNuKTlDMllAM3JPa0o7SXpOcyQrckdEaDRZbmNiNTh6X24pbVAKekVGNilFQVZrUT82
NEEpUTZrPUkzIWJHX1gpT00tTS1iSHJGJkRaWihTfGBtNTtiPEdhPDgrOH4oa3QtN1JvNHZKCnpU
aSohUkJxalEqSSk0LXwtNk9ubGVsLTQkZXBSJW5fe3J7elZ0e0RPbXYjNHpSZ2U3WHYyKU1paT9m
UEZgTEd1ZQp6eFJydVctMHdyfXFVIzV8JE1JI1pPe3c5M0tJOyh3SWwxYWgyPVRyY3pKJVItX09N
UkxvZHRFfGVla3RSd0BYc2AKemo+YGJNayVOZ2RMYnkjNnNrJUxDdW9YJWQ8RFVlIypWZ0p6bURo
SThEXnB1bFQ/PDBqdWM0T2NgQUMoMUtjeylFCno3cWk8bDEpaHRCRkVpQDtxQW0zKytYcThubigq
dX5uaWomIzQpNUpaaG84aWcodTl5U0A5OW9TVXB9ajwhJEYwUQp6MEcxWV5hcHNwIVp2UlgySzZu
UkR7PUZFP25CZChEdylERz8+ZCtzbEt3ZUpgK297TkE3UGQrPGRxM2NjbiFsM1QKekEkND1ZcF9i
MnVfbklwPD1JdHNKSG9MeUZ4JTEoQFB5QF53ZHJxJDdEamN2KFZRU1NRcUI3SmUwS15qbSQ4aTc3
CnpFWk9gaW9jUVotRj09fjYmfmYjKmMjUVk4KjlYPDJgamJsekVqdXtDKTw5alFSTH4/YSZ2MT8z
Iyl4blgpa0RRdQp6eFc9ZyomUlJAPTNUZUUhYngwOHBwbklgVzBoXm9hZCQ/SiFrZ0ZjPyNNP0Jj
MTI9PjYkUDQ3YD55JTl9UGg+SEEKek9yM2BuaiZ3Z0RaTDtXP3VeezIhKWwhP0JJNWhuRHtfT01i
S2xfWns2V19ZYnh0M3tHS2ZMXmQ2WXxgekBmbGkyCnppYyFrbldpQ0p6eHF5OTFBQ29yV3llbShh
bWZ2TkpOcCFmQ2RARUdDYCErJGJlbCM1Yl5KNElTKSF1KHBFaSU3dgp6ZFg7YWUwUCZFWEBwfW9k
UnNkTTVka1JoWlMpVGkxYW5XenRWcG0+Y3VaZERrTCg/RDMmN2t3TSNrbnxiPjFEWXEKemRBWlU4
RFlVMT9IQD9ifDklJF5zKUJzYk8yNjdMOTc0LUpubmd+WWhWajdySGJ4QCkmR202JD02KzFTcXEm
QWd1CnpHeFdLWDJlVSsrSVVlPENvWHQ/S08pVXx6PVFtVTZ2RiFxN1AzSEQ8KlhUNURaMihGSzFH
MU9pY3VyYVhteG1vWAp6amRgRkpiNExIZ0hPS3hKMTFFdUZGdlIwXm45K0ZaSXVmOTV4SitJODtW
c1hfbTJTOSNuJU1RSDZwZVF0U3ZiQV4KemZEJCVIN0JGM0JTWD5NQEtOV25GXkI4MTk2JnVwaTNW
dytKcSlERCl0S0Fmams9IX4zcjRUQUFKUFBERi17Q1R8CnpOUz5YN0s1Pz83eGYjKGNydSg5OTt5
OG1PbG90JWJhYSpUaDxxKklIUU5fUlNRenJGe2VLaGgoaHJvUVdeJDZPUAp6a0c/JSRlZTAhKW8q
ej5BKXwqTWwjenxzciVeKWt6UlUhdXNZKWZlciEoUnU2YjU8TTs4aHI3UUZ2NiVGYUFxR3wKekoo
OCE8TVRuPW5ofTd6JEhjYkZiMyYpYHFiNGxrZT1iYGNTeX0qZUMjRDEzUUl6dkZkcmAoei0/M0dY
OUphQG0rCno9Rno0SzUqSWFYQj5kfmg+X25fTWNNPlczWjdKKnlhWklyTSMpNFlrclQ/MyRrP0U4
TFMtNFM4OSs4VFJFXilIPgp6Njt8NERHQik9WSVvRjNQOWp1ISt4YHpifkc5V2wtQ0FCSkpFbVpo
d1N0eSZZclN0dGwqI3tablB7OCZBJF5yVmYKejRmYWY0d0QwSllDfj9yPkZ8b1pHSkVHSSEqdlkm
RFZmPEEyRCV+RGdqdGFhMjJ7PEpVKGpDanBuP2FpKiQoclkpCnpneT1uPWx9c297YlRMY3p0ZThG
KVF3cV8oS3dKO1lASWFVPHUtZH1+TEA5UyVqbjZreTtfKUd5S3BsMSZKZUVwegp6PH5RVmReVmdW
UWt5Zkl9dF9oMThnbUJLJU8wdmNSUlFYNllLVD9tUTI4aERvMz4/KHoqe3szNzxvKmgjJmdXeiEK
emRRb0FLRm4qfG9ZanB4IUtBaGxmVHZ3RHV5OGlBM2l9OGZKcGM7QSkqZ0ppcjd0PXhsUlRRVUVZ
THhMNyp5TF9gCno2N1clc1dzeGl7bkduOX1eS0pIdENtYntZMGVWN3ohWmEzbT5RRFV4eDFBTVhA
R2h5fF5+TVozTH5DRG9fMVJFRAp6dG96JFYoaE1FVEpHdjl+ODZjdUtiYmxuMzhBYG5HSGtNZSle
Zn18ZT8jMkJ7KyZZM256OGdWJURkPVc5Y0R2T3QKempgI0tyVmQzNDZPUEQkfEMkezYmOEhGO05k
fS1nMGFCbTdReTdYQ3JJQkIpbjhTPkkxV3huPGR7YWViPERJbW1MCnp5X1Z+bmI0SCEkQTF0dXpj
dSZ3amVIZVo+YyVeYz9OdWIldjt7eTwhTWozXiVYengwWGtEYGZHSDZtXlZ1cXdzZwp6OHRUZTdV
N0FlS08ofiFxKEsmRG9UQjRvZVQwP1p6RUh+O04+NFNRSWolcF5sOG1vdmVlZWlxNDZLdWMxRng/
NzwKemE2RWg9OTxzTUg3QkJCcWdtcjteTlB8WV9QTXJAcVB4dDQ9WVU2N054QjE+UUNZOzY+QEB8
U21SSmwxTFdJT0ViCnpLc1EqZjFzcjBvYm4mUkVnQSVYamE/ZX1qVnclZCN4QjNNUnlsPkVAT1dl
dX0oSn49bUxnZDNXMTA3fisjOVNARwp6ZyZUUVQwMj0laWpwNDk/SjBQQ3ZUUkt+JjxgIX1AN2Zo
dE89N1IxdUdpM21iMHEyV3Jpcj0yI3YkWi1NJFcmbisKemxOPzJ1IVBmN0lsRWtQRUFzaUQpSjk9
b3VZdDZyPlh2NjJBN1BPT3c7PjI+R2pSbUpzb04wNm1pKUJYckspc21ACnpVI3ZwZG5gO0tobGBN
PnNzMypCSWRCfS1VXzl7cFEpVD05bUU/d1hlSzIoZkMwX2pDUUg3X1FAQ3RxTzRDS3ElTQp6dEIk
QHJJODd0T3stSzt4YVhDeFlIZHwjNU1jdS1wIUVTVD1vOShTQlJIcElHVG9+KylkV3JsZWY0Rnli
Xz89eUoKekFLLTVoPHJxR3QjanBUMi1FOzQjOzRTRkZAZ019fC13ZjVMMG1FcmZZeGolYU90XjEk
R1BsQXZCPmwxdGcpdk09CnooWV5TYWliJFQyIytLSXZZTVp9TCM5LVZNQkA5ZWNUPHJFQERncSEm
MVRAYj9YNml9VlFNWlQ/b2B5amJNcDdiKAp6RDlCRTw9blBpQCV9TUEwMHMzVmsmI1NDTzxyNXw8
O0JpfEk1bDRiaDJhYzEhekwzTk0rZF9TNl9wJGVvKk9YPyMKeiRaUykldE5rJHNkJlJJZmlCVzhz
SSRMNFFBfjRZanhoVjlJeHxKU1I4VGV1dDE4JTgqdX5jQipoem5nPV87ZVBeCnoqZXskKXZFYWlB
VloyUD51JHxkZFZCRUNVJClUNz5aLS1vcWxTNWEycmBSRW1jZmdsMUQlWlBAKD9semQpYnpKKwp6
dHt9XnJ7cEc9Y0xheUJidig1a3BkaHpebzVxdnw0eUQ+NlJuQXQtVk4qYGxYKSg/TXJZPXpNJkB1
KitxTEhxWVcKejIlWFJHS2RxVit1Y0lSYFN3czNtRFkkflg/cnVNY2B5VEBzbCV2IUJMWCt5aCQy
SjswcmlZX3A0OVFNQHs0KEIlCnohNihlSCFXYXMlcExQQT4zQ3NmKHs5NnpvbEQxNlBKNDUjSSQt
XlpEUWFGdlRUTjw3NlJhbUktKyZEbHZMUjBATgp6R2RDVVpoZ2E+fktETHlZVll+WE1oQlhlelE4
NH0tWVd1O3otYz5HXzFVfmE0dF9PVSZQamVOUWpASH58Z1J8Z3YKelAwM0l2Z0w0K3w+K0lDdjxt
SzsjRGEmXnZMRmh3XigobU1ATWYzT2xxS0x3JWFtVF8mSiF6Z3pJQXd4bnpYK2s0CnpMITtnWkBD
WGxvdmF4WlpBKVJuYT9EJTJRMEYqTEBEcjN6cD9BVVROQ3YwJCpuKjVXb2NKa2ZZa2pkX2czRSVt
Swp6dn17TGpReiN+KkQwTSNaRnJgNEl2U2tQZGM3emFNM0Q0U3VASEl3R2NBfEI0KzVCfX03KUt9
a0B6WXZkNGpxdG4KekRKNzErRldhbU1VfExFdXZFdU0yIWspN1pyZnZoZG52TjAzbF8+bDJnMGFO
KUxPajk/ZkdsJHtGdUh7cGlyaXhxCnpEdjVzbkM9UUV9cVdQQitWeXVgPikmZ25QNUQ/PH1vVGJT
TDRrdnhuJiNFJGNJV0FjSitqR1NjTXI+YWNWOD12Wgp6UHZncmIlM3toM3RWKCtjXiQxMHRPV21P
aztgayU/NG9GOUwzakNMfGtMJjN3RUlwSm0/bk4jVlpqczBFVlFuLSgKejRNUmgrPGZ4MX0jeDZ4
Q3gyR0RvSk49QkdCZzUzVGR0Kyl4MEA0ZFdkbUQ+YU5ZYWtXPWZ9MThGUURLaF99JUVxCnpAfERs
SXtvPEgxQEBJRkdVOU9GPEtBU3olaEtlcFBVZmdAPmd3TD49ZT4qZFdGMEdHMDZsVXNxeT50NjtP
Y1ZCKwp6MXR2aDUyY0N9NXdPUz5UUHRCPTQ9SDxHbD03TWJObTlJVmZyVXxKKDJAPGtvIW1tSXdI
SFY0PjZnY2E/TFE3Mz0Kem1ORFAkRE43SSF4e090bSZFXyUoIXhhIT9kbyUoJnleOHxsYXM/eTV7
dnFkMkptamdzMFArQFJ4NkBkSWowbzIkCno7NHJDYTRZcVpeUm12a1IkUl5WJG9wZ1MjaEp1Ykpz
QFI/YF90UEFqNigrKCEjNiYzYmVwe2hGVSFNKSluJUItQQp6Uz9Jcy0/bGJ6ejlNRUpXWjElIzxU
QUZiMTRXMFkrT0d3ZH0ydjhfNCMjXk9MM2Q5LTgwUihjLVJva29NKFJRe1MKejNTMXtgNSlhfUhq
Vkh4QF54YTxpdEImZCkkYiNUWE5OO2E1ZW05dXBYNWJxY1gyLWtnU2ZkIT84UFVyamM0diU0Cnpf
ZTIxUEAoNVJGcDk5KSlqNiVsSkBqV3R5dU85SEttfShueDNQKD1YYF5yU31nYDM0SD9EZz4lT15l
QVljflZiNQp6R2glQV5sfiMqUV44Snt1NXo9SGJ3SHhrdyprZ2B3YDB1YHdKOXhWdlV5Tj9jbk44
RTEoM2lZVXo3eDlPdk1+OWoKeik8P188b0VRZjRVKH0pNCtJbDVyKnZNTEdLITE9ejI8NysmZkV3
ME9ialg/diRucEdDN0xKbipGSyVDNHp1amRLCnpqdXp1JSV3WEorUFdEal9tO3dATCYmN2VzYH1n
dzN3Xkc5R3hJPTMxLT5fJUFpI35UMlhyKUo3dVdpfCk8ckMoWQp6Nl4qfmt6MldLSFFoKDB6ezxg
YD8jOV9kSGBiN2xTZkhBVmd5OHpJV0locHZ7Yi1hUVYxNn1GV3R2PzFDbGtiOSEKeiFecDs1Jllw
Vm5jXmY/dEtXZjNPXmRwbnFWbzdMdVYrbDNQY1Y2PFZsYTF9WE57SmNrcnJZXzM1cjkxLUp7MndP
CnpOWUFEeW43JmBQeHltPCs9LTMoYGFmeFZAO1k1SE8wWH0rVWIxSXlQP2NzZzdWOzFeYjZLYUM7
byNYbzJxejhYaQp6a14/WHAyVUNfflAzQiVVWnw0NTlGMjx+UXNLMmskQ1Ihcn5oKjB3SCZ9bmxW
UlJ+JjR4a0tYOHV4bU1DWGM+OWgKekphdWJ+bWAtbjxacU1sOWg7ZD0/Wmk+eiVieTRjKEQtUVE2
ZShMV1FhQjA8TlZAVmszSzImSGwxVmw5RTNvbmhPCno0WDhBfT1Pcig7X0VxZD91ZUZ3US02RStg
Q0R+cmZ6N2lTWHBQal8yWTx+fUw9UUArVXtpdVY4N2MkYGJxNW1Gawp6UmlwMiFQPD0tPioqayV3
PFQpbDdlYlpeemAqT2JIKTdXaTNhVkMjbSRrNGB6SkNVS3FYZjVoVkV6NHhmP0JgaUsKemEkT2Vz
SURrK1lfRkhHe3deWGpWcklzZV8oJVcwX3A7YjM+PDd6cTRtcG9rRytvPnFmaVZvQzUmfXxnfms3
UlY8CnpRfXI8VGpZNkQ0TmA8eEUmZklMN09zZTNXKSpHezA/QjxRQFRXWEY5QDFxIT9kWU9mNXsq
KH00Qnl7aSpWYFhFZQp6QSkqNTUpeThrbD8jd2BNMjc7PjUmKm81ZjBgWkh6Qk8/czQ2KF56VlpY
TFNaT2E+b2t4N0l+Rio7JE1QJUFzOFAKeiNUUGdeRDlsUT40NC08VmVsJF90VyZud0diTH5FfVB+
bU0rKk5ifTtaK1J5LUFKVSZ5byNCcihEdXZvV1ZXTmRtCnpaajYrTG81aCQlK0JmSkEpTGJlUGhx
fnZBKWdsfWpsKFhCOXZXT3tGWmd8TEFmZ2x5ViNHQztST145NE5VM3Q1MAp6MTUyaXlpSllCQXdN
NTRaRT9jLW0hcjFtQiVFZHFrJjhWfmxNaGBKI08+RWYxKnBSQWhJPkQlNz08UWJwOVNkcjkKendZ
KkM1RW14SWljfDR3fEBKdjlWUj5HfGptNWZ7SVMkLSRre2NZPlJaPEwjcGB9WmxHWjk+cU9RVl4q
aSk0bDttCnpmQFVhSFRfO0s0XmBSQ35uMDRTUnI7KlVsb2xtRWRzZiRoXyFVaGV4MWJ1NEw9YTtY
dWhEUkIpQHJfc3NyTCpIaQp6dzsjOEY4T0g7anRJfFghTH5DT0cpJWRNTHMzMkZQYDFhMDhvY3JL
SE9iRzxtPU0tbTF5aEhfTFg+RVNOJnxxPDAKenpAKWwjYnx0dGw9U35IeV5FTDg5eTdPOUxxWkU0
NWN6MTJWYztpclZhXyUmZWVqWVA9Jms0aD08Zn50ITFhS3dhCnpBWCVBV2FUeXNfJDFjfXJQVzNH
V1YpU1VKKEY0QU53cXAhaGJXMnM4Qz8oRnk9dFpWdmk0c0VeS0p2aUQxfF8+awp6MXY9UWJCSFUp
SmFhKXZuWFcteHI/YzhGYFI2bzV8WWtNX3shcVV1M3Y4bE1BZHxZRzAkPykoflE3RnY5NUlXbWsK
el45MjRHRF9NV0RIUyM7TFI8QGNgZjd8RDA+eVY9K0tObjlGTWAhU0J8MTJ6dG9DelFgRD9aIXVZ
TmF4WD4+MVVzCnpqUHtKenR7JTlJZS1WK0xTVXk8em50VXR+WXlNWkNEI249RiQpdkx1YCRTXnhL
c09HZ3Ylel5JRXtQeHdsV2NzbAp6ZyF9TThSO1RDVm1aZHFKKCNCNH5eIT4kV0dTZWh9Vk9se3NF
MjUzY0kqaGF1S1hvSkhzTDA2M0xiLVNkPj1TT34Kemd9anxfeVo+U0FFNlo+V29WUnFxWkt1TF92
RSshJWNJUUMtKHhKNHpAVUBjZGtNcGFWS0FZPGRLdkw1JUhCdV9BCnp4YTNuMnNHMDE/b0tIKVdj
ZGhRWkg9O1UtdWlLeGZ0QmNVKylVIWI/OHUpRWV7UnZHQ0g9UDsqa19KPm9YO1Z9KQp6S3huQVVl
MD55PjhPNktrN0NFQlZ1TnFVPHE0e1h9dllJa0pVKH01NUhfciFwckZmMXt2S084Sz10Q0E2QENn
NkQKeiROUD47V2Fsc31EM1czK219WHRUO2g7RV45YCphMU1ObW08dDtsakxQK05TckhDKFdiPmp1
dFM9dmNDWSRpeXR2CnotO003VVJqK0VDSEtEN3h6X2UrMzI1RChjPGUyZUV0MVF5bmMhe1gxM2di
dT10RVZyXjQ7ND1pK1VWeX5NWlotewp6JTJtSSpJekZnOUcxcDFsQ25ieUo8KFJqa3lXMXRLZVcp
OGxMWGFiZ2Y1VjBMbWdxcndERyZtdDA5R1lodFFeRyUKelVieTdwdCZEeSlNNVAoeUNrUG8qXn5u
ZUIjZl5aKFlMckB1MEFVMC1BRUZ7YXVvK1lXZ205Q3J4YG5VPHtAa0hzCnowRVkpc3t1VHVBcEcp
KXRmVmcxKDYhV2koZHA5WS0mayEqa0J8dntKO2NXb0Z3Jjg3b2AtXlN+c0VDX2otTEwqKQp6cGBI
ZHJORSpmb2ZDdVJLOzN1e2dvNHZFWXtyTlFqPSNvTFg3clZWPFZyZ3A+XiF4TFpuMVlPfF5qQXJm
ITJiZkUKQ2BeaWlJCgpsaXRlcmFsIDAKSGNtVj9kMDAwMDEKCmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy9wbGF0Zm9ybS9pb3MvZmFzdC9hdHRhY2htZW50L2F0dGFjaG1lbnQtdGh1bWJuYWlsLXBy
ZXNlcnZlcy1hc3BlY3QtcmF0aW8tZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0v
aW9zL2Zhc3QvYXR0YWNobWVudC9hdHRhY2htZW50LXRodW1ibmFpbC1wcmVzZXJ2ZXMtYXNwZWN0
LXJhdGlvLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi44Y2NkYzY5NGUxNGZkMzgxZDQ4NTljMGI3
Yzk2YmY5MDc4NjJmNzM3Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0v
aW9zL2Zhc3QvYXR0YWNobWVudC9hdHRhY2htZW50LXRodW1ibmFpbC1wcmVzZXJ2ZXMtYXNwZWN0
LXJhdGlvLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxIEBACitBdHRhY2htZW50IFRodW1ibmFpbDog
NDAweDIwMApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvcmVzb3VyY2VzL3VpLWhlbHBlci5qcyBi
L0xheW91dFRlc3RzL3Jlc291cmNlcy91aS1oZWxwZXIuanMKaW5kZXggNDdiZmQ0NTJhZjIzNGFm
ZTFjMmM2NDRiMmRkOGQwYWJhOWQ0YzZiMC4uMjU0OTNlY2I4ZDMzMTBlMWQ5Yjc2ZTQwMGUzYzhm
ZjczMWZmMjU4YSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvcmVzb3VyY2VzL3VpLWhlbHBlci5q
cworKysgYi9MYXlvdXRUZXN0cy9yZXNvdXJjZXMvdWktaGVscGVyLmpzCkBAIC0xMDAyLDYgKzEw
MDIsMTkgQEAgd2luZG93LlVJSGVscGVyID0gY2xhc3MgVUlIZWxwZXIgewogICAgICAgICB9KTsK
ICAgICB9CiAKKyAgICBzdGF0aWMgaW5zZXJ0QXR0YWNobWVudEZvckZpbGVQYXRoKHBhdGgsIGNv
bnRlbnRUeXBlKQorICAgIHsKKyAgICAgICAgaWYgKCF0aGlzLmlzV2ViS2l0MigpKQorICAgICAg
ICAgICAgcmV0dXJuIFByb21pc2UucmVzb2x2ZSgpOworCisgICAgICAgIHJldHVybiBuZXcgUHJv
bWlzZShyZXNvbHZlID0+IHsKKyAgICAgICAgICAgIHRlc3RSdW5uZXIucnVuVUlTY3JpcHQoYAor
ICAgICAgICAgICAgICAgIHVpQ29udHJvbGxlci5pbnNlcnRBdHRhY2htZW50Rm9yRmlsZVBhdGgo
JyR7cGF0aH0nLCAnJHtjb250ZW50VHlwZX0nLCBmdW5jdGlvbigpIHsKKyAgICAgICAgICAgICAg
ICAgICAgdWlDb250cm9sbGVyLnVpU2NyaXB0Q29tcGxldGUoKTsKKyAgICAgICAgICAgICAgICB9
KTtgLCByZXNvbHZlKTsKKyAgICAgICAgfSk7CisgICAgfQorCiAgICAgc3RhdGljIHNldE1pbmlt
dW1FZmZlY3RpdmVXaWR0aChlZmZlY3RpdmVXaWR0aCkKICAgICB7CiAgICAgICAgIGlmICghdGhp
cy5pc1dlYktpdDIoKSkK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>408210</attachid>
            <date>2020-09-07 21:40:14 -0700</date>
            <delta_ts>2020-09-07 21:49:16 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-216209-20200907214013.patch</filename>
            <type>text/plain</type>
            <size>35313</size>
            <attacher name="Tim Horton">thorton</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjY2NjE2CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMjE5N2YyMTY0ZDVmYTQ2
ZTYzMmQ0YjIwMDhmNjVmNjU4NTY2MmMyMC4uOWRlZTc4ODE4NGE1Y2M1YWFiZWQxYjBiOWUwZjU4
YmIyZTAzOTFmZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI0IEBACisyMDIwLTA5LTA0ICBUaW0g
SG9ydG9uICA8dGltb3RoeV9ob3J0b25AYXBwbGUuY29tPgorCisgICAgICAgIGlPUzogPGF0dGFj
aG1lbnQ+J3MgUXVpY2tMb29rIHRodW1ibmFpbHMgY2FuIGFwcGVhciBzcXVpc2hlZAorICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjE2MjA5CisgICAgICAg
IDxyZGFyOi8vcHJvYmxlbS82NzgxNzcwNj4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkg
KE9PUFMhKS4KKworICAgICAgICBUZXN0OiBmYXN0L2F0dGFjaG1lbnQvYXR0YWNobWVudC10aHVt
Ym5haWwtcHJlc2VydmVzLWFzcGVjdC1yYXRpby5odG1sCisKKyAgICAgICAgKiBodG1sL0hUTUxB
dHRhY2htZW50RWxlbWVudC5pZGw6CisgICAgICAgICogdGVzdGluZy9JbnRlcm5hbHMuY3BwOgor
ICAgICAgICAoV2ViQ29yZTo6SW50ZXJuYWxzOjphdHRhY2htZW50VGh1bWJuYWlsSW5mbyk6Cisg
ICAgICAgICogdGVzdGluZy9JbnRlcm5hbHMuaDoKKyAgICAgICAgKiB0ZXN0aW5nL0ludGVybmFs
cy5pZGw6CisgICAgICAgIEV4cG9zZSB0aGUgYXR0YWNobWVudCB0aHVtYm5haWwgc2l6ZSB2aWEg
SW50ZXJuYWxzLgorCisgICAgICAgICogcmVuZGVyaW5nL1JlbmRlclRoZW1lSU9TLm1tOgorICAg
ICAgICAoV2ViQ29yZTo6UmVuZGVyQXR0YWNobWVudEluZm86OlJlbmRlckF0dGFjaG1lbnRJbmZv
KToKKyAgICAgICAgQWxsb3cgdGhlIHRodW1ibmFpbCBhc3BlY3QgcmF0aW8gdG8gdmFyeSwgaW5z
dGVhZCBvZiBhc3N1bWluZyBpdCBpcyBhbHdheXMgc3F1YXJlLgorCiAyMDIwLTA5LTA0ICBDaHJp
cyBEdW1leiAgPGNkdW1lekBhcHBsZS5jb20+CiAKICAgICAgICAgUkVHUkVTU0lPTihtYWNPUyBC
aWcgU3VyKSBodHRwczovL21hZ2VudGEuZ2l0aHViLmlvL2xvZmktcGxheWVyLyBpcyBicm9rZW4K
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nIGIvU291cmNlL1dlYktpdC9DaGFu
Z2VMb2cKaW5kZXggOTQ5MTFkODk2MjUxYWU3Y2E2NTg1ODc0YzUyMGFiODg2ZmFlYjliMy4uYmY3
YjA3NDE1MDE4NGYzM2U0ZGE4MWI3NDhhMzA2NWVmMzgyY2FkOCAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYktpdC9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cKQEAgLTEsMyAr
MSwyMiBAQAorMjAyMC0wOS0wNCAgVGltIEhvcnRvbiAgPHRpbW90aHlfaG9ydG9uQGFwcGxlLmNv
bT4KKworICAgICAgICBpT1M6IDxhdHRhY2htZW50PidzIFF1aWNrTG9vayB0aHVtYm5haWxzIGNh
biBhcHBlYXIgc3F1aXNoZWQKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19i
dWcuY2dpP2lkPTIxNjIwOQorICAgICAgICA8cmRhcjovL3Byb2JsZW0vNjc4MTc3MDY+CisKKyAg
ICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBVSVByb2Nlc3Mv
Q29jb2EvV2ViUGFnZVByb3h5Q29jb2EubW06CisgICAgICAgIChXZWJLaXQ6OmNvbnZlcnRQbGF0
Zm9ybUltYWdlVG9CaXRtYXApOgorICAgICAgICBQcm9wYWdhdGUgYW4gaW1hZ2Ugb2YgdGhlIHNh
bWUgYXNwZWN0IHJhdGlvIHRoYXQgUXVpY2tMb29rIHByb3ZpZGVkLAorICAgICAgICBpbnN0ZWFk
IG9mIHNxdWlzaGluZyBpdCB0byBzcXVhcmUuCisKKyAgICAgICAgKiBVSVByb2Nlc3MvUXVpY2tM
b29rVGh1bWJuYWlsTG9hZGVyLm1tOgorICAgICAgICAoLVtXS1FMVGh1bWJuYWlsTG9hZE9wZXJh
dGlvbiBzdGFydF0pOgorICAgICAgICBPbmx5IHJlcXVlc3QgZnVsbCB0aHVtYm5haWxzOyB3ZSBk
byBub3Qgd2FudCB0aGUgaWNvbiBmb3JtLCBzaW5jZSA8YXR0YWNobWVudD4KKyAgICAgICAgYWxy
ZWFkeSBoYXMgb25lIHdpdGhvdXQgUXVpY2tMb29rJ3MgaGVscDsgaWYgd2UgY2FuJ3QgZ2V0IGEg
ZnVsbCB0aHVtYm5haWwsCisgICAgICAgIHdlJ2xsIGp1c3QgbGVhdmUgaXQgYWxvbmUuCisKIDIw
MjAtMDktMDQgIFBlciBBcm5lIFZvbGxhbiAgPHB2b2xsYW5AYXBwbGUuY29tPgogCiAgICAgICAg
IFttYWNPU10gQWRkIGNsaWVudCBkZWNvZGVyIGVudGl0bGVtZW50CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9odG1sL0hUTUxBdHRhY2htZW50RWxlbWVudC5pZGwgYi9Tb3VyY2UvV2ViQ29y
ZS9odG1sL0hUTUxBdHRhY2htZW50RWxlbWVudC5pZGwKaW5kZXggNTIyZTI1N2FhZmQ3ZWQ4ZWMx
M2JhMWJkNWYxZDA1ZTRhY2E1MzJiZi4uZTc0YTE3YWI1Mjk2Y2UxNWJkYTAzZjcwZTBjNDQ4YjY4
ZWRhY2UxNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MQXR0YWNobWVudEVs
ZW1lbnQuaWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTEF0dGFjaG1lbnRFbGVtZW50
LmlkbApAQCAtMjUsNiArMjUsOCBAQAogCiBbCiAgICAgQ29uZGl0aW9uYWw9QVRUQUNITUVOVF9F
TEVNRU5ULAorICAgIEpTR2VuZXJhdGVUb05hdGl2ZU9iamVjdCwKKyAgICBFeHBvcnRNYWNybz1X
RUJDT1JFX0VYUE9SVCwKICAgICBFbmFibGVkQXRSdW50aW1lPUF0dGFjaG1lbnRFbGVtZW50LAog
XSBpbnRlcmZhY2UgSFRNTEF0dGFjaG1lbnRFbGVtZW50IDogSFRNTEVsZW1lbnQgewogICAgIGF0
dHJpYnV0ZSBGaWxlPyBmaWxlOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5n
L1JlbmRlclRoZW1lSU9TLm1tIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlclRoZW1l
SU9TLm1tCmluZGV4IDZmMGY0ODdjNDczZjUyNGM5Y2I4MjkyYmM4MzkyNzRlNTE2MGM2MjYuLjhh
YWNiMTYzY2ViZmIyODgwMThhODFlMTI4ODk3NzU0ZjM0N2EwY2MgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJUaGVtZUlPUy5tbQorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9yZW5kZXJpbmcvUmVuZGVyVGhlbWVJT1MubW0KQEAgLTE2MzcsMTAgKzE2MzcsMTEgQEAgUmVu
ZGVyQXR0YWNobWVudEluZm86OlJlbmRlckF0dGFjaG1lbnRJbmZvKGNvbnN0IFJlbmRlckF0dGFj
aG1lbnQmIGF0dGFjaG1lbnQpCiAgICAgICAgIEZsb2F0U2l6ZSBpY29uU2l6ZTsKICAgICAgICAg
aWNvbiA9IGljb25Gb3JBdHRhY2htZW50KGF0dGFjaG1lbnQsIGljb25TaXplKTsKICAgICAgICAg
dGh1bWJuYWlsSWNvbiA9IGF0dGFjaG1lbnQuYXR0YWNobWVudEVsZW1lbnQoKS50aHVtYm5haWwo
KTsKKyAgICAgICAgaWYgKHRodW1ibmFpbEljb24pCisgICAgICAgICAgICBpY29uU2l6ZSA9IGxh
cmdlc3RSZWN0V2l0aEFzcGVjdFJhdGlvSW5zaWRlUmVjdCh0aHVtYm5haWxJY29uLT5zaXplKCku
YXNwZWN0UmF0aW8oKSwgRmxvYXRSZWN0KDAsIDAsIGF0dGFjaG1lbnRJY29uU2l6ZSwgYXR0YWNo
bWVudEljb25TaXplKSkuc2l6ZSgpOwogICAgICAgICAKICAgICAgICAgaWYgKHRodW1ibmFpbElj
b24gfHwgaWNvbikgewotICAgICAgICAgICAgYXV0byB2aXNpYmxlSWNvblNpemUgPSB0aHVtYm5h
aWxJY29uID8gRmxvYXRTaXplKGF0dGFjaG1lbnRJY29uU2l6ZSwgYXR0YWNobWVudEljb25TaXpl
KSA6IGljb25TaXplOwotICAgICAgICAgICAgaWNvblJlY3QgPSBGbG9hdFJlY3QoRmxvYXRQb2lu
dCgoYXR0YWNobWVudFJlY3Qud2lkdGgoKSAvIDIpIC0gKHZpc2libGVJY29uU2l6ZS53aWR0aCgp
IC8gMiksIDApLCB2aXNpYmxlSWNvblNpemUpOworICAgICAgICAgICAgaWNvblJlY3QgPSBGbG9h
dFJlY3QoRmxvYXRQb2ludCgoYXR0YWNobWVudFJlY3Qud2lkdGgoKSAvIDIpIC0gKGljb25TaXpl
LndpZHRoKCkgLyAyKSwgMCksIGljb25TaXplKTsKICAgICAgICAgICAgIHlPZmZzZXQgKz0gaWNv
blJlY3QuaGVpZ2h0KCkgKyBhdHRhY2htZW50SXRlbU1hcmdpbjsKICAgICAgICAgfQogICAgIH0g
ZWxzZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuY3BwIGIv
U291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuY3BwCmluZGV4IDJjYWFjMGFkNmU4NDdk
Njk0Yjc3YTdiMmRlYzA4ZmU1YzE1ZjQxOTQuLmE2OGNkZDdjYzRiMTg1NGZjMzVlZDhhODA4MDU1
YmNkMzNmYzA4ZDcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxz
LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5jcHAKQEAgLTg4LDYg
Kzg4LDcgQEAKICNpbmNsdWRlICJHcmlkUG9zaXRpb24uaCIKICNpbmNsdWRlICJIRVZDVXRpbGl0
aWVzLmgiCiAjaW5jbHVkZSAiSFRNTEFuY2hvckVsZW1lbnQuaCIKKyNpbmNsdWRlICJIVE1MQXR0
YWNobWVudEVsZW1lbnQuaCIKICNpbmNsdWRlICJIVE1MQ2FudmFzRWxlbWVudC5oIgogI2luY2x1
ZGUgIkhUTUxJRnJhbWVFbGVtZW50LmgiCiAjaW5jbHVkZSAiSFRNTEltYWdlRWxlbWVudC5oIgpA
QCAtNjA2NSw0ICs2MDY2LDIzIEBAIHZvaWQgSW50ZXJuYWxzOjpzZXRDb250ZW50U2l6ZUNhdGVn
b3J5KEludGVybmFsczo6Q29udGVudFNpemVDYXRlZ29yeSBjYXRlZ29yeSkKICNlbmRpZgogfQog
CisjaWYgRU5BQkxFKEFUVEFDSE1FTlRfRUxFTUVOVCkKKworRXhjZXB0aW9uT3I8SW50ZXJuYWxz
OjpBdHRhY2htZW50VGh1bWJuYWlsSW5mbz4gSW50ZXJuYWxzOjphdHRhY2htZW50VGh1bWJuYWls
SW5mbyhjb25zdCBIVE1MQXR0YWNobWVudEVsZW1lbnQmIGVsZW1lbnQpCit7CisjaWYgSEFWRShR
VUlDS0xPT0tfVEhVTUJOQUlMSU5HKQorICAgIEF0dGFjaG1lbnRUaHVtYm5haWxJbmZvIGluZm87
CisgICAgaWYgKGF1dG8gaW1hZ2UgPSBlbGVtZW50LnRodW1ibmFpbCgpKSB7CisgICAgICAgIGF1
dG8gc2l6ZSA9IGltYWdlLT5zaXplKCk7CisgICAgICAgIGluZm8ud2lkdGggPSBzaXplLndpZHRo
KCk7CisgICAgICAgIGluZm8uaGVpZ2h0ID0gc2l6ZS5oZWlnaHQoKTsKKyAgICB9CisgICAgcmV0
dXJuIGluZm87CisjZWxzZQorICAgIHJldHVybiBFeGNlcHRpb24geyBJbnZhbGlkQWNjZXNzRXJy
b3IgfTsKKyNlbmRpZgorfQorCisjZW5kaWYKKwogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuaCBiL1NvdXJjZS9XZWJD
b3JlL3Rlc3RpbmcvSW50ZXJuYWxzLmgKaW5kZXggYTFhODcxYzg5NjhhYjljYzRkYTAzNzA0ODY4
ZGIwMDJkOGZhMjYxMy4uMzk3NGRmOTdmYjU5NjY2ZGFiNjIzMjg5Zjc0YTQ3ZjM0YzZlZjU3YSAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuaAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5oCkBAIC02OSw2ICs2OSw3IEBAIGNsYXNzIEZp
bGU7CiBjbGFzcyBGcmFtZTsKIGNsYXNzIEdDT2JzZXJ2YXRpb247CiBjbGFzcyBIVE1MQW5jaG9y
RWxlbWVudDsKK2NsYXNzIEhUTUxBdHRhY2htZW50RWxlbWVudDsKIGNsYXNzIEhUTUxJbWFnZUVs
ZW1lbnQ7CiBjbGFzcyBIVE1MSW5wdXRFbGVtZW50OwogY2xhc3MgSFRNTExpbmtFbGVtZW50OwpA
QCAtMTA1OCw2ICsxMDU5LDE1IEBAIHB1YmxpYzoKICAgICBlbnVtIGNsYXNzIENvbnRlbnRTaXpl
Q2F0ZWdvcnkgeyBMLCBYWFhMIH07CiAgICAgdm9pZCBzZXRDb250ZW50U2l6ZUNhdGVnb3J5KENv
bnRlbnRTaXplQ2F0ZWdvcnkpOwogCisjaWYgRU5BQkxFKEFUVEFDSE1FTlRfRUxFTUVOVCkKKyAg
ICBzdHJ1Y3QgQXR0YWNobWVudFRodW1ibmFpbEluZm8geworICAgICAgICB1bnNpZ25lZCB3aWR0
aDsKKyAgICAgICAgdW5zaWduZWQgaGVpZ2h0OworICAgIH07CisKKyAgICBFeGNlcHRpb25PcjxB
dHRhY2htZW50VGh1bWJuYWlsSW5mbz4gYXR0YWNobWVudFRodW1ibmFpbEluZm8oY29uc3QgSFRN
TEF0dGFjaG1lbnRFbGVtZW50Jik7CisjZW5kaWYKKwogcHJpdmF0ZToKICAgICBleHBsaWNpdCBJ
bnRlcm5hbHMoRG9jdW1lbnQmKTsKICAgICBEb2N1bWVudCogY29udGV4dERvY3VtZW50KCkgY29u
c3Q7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5pZGwgYi9T
b3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5pZGwKaW5kZXggZTFkYWEzYTE1ZDc1ZjU2
MzZmNTNiNjBjMWJmMWJmYjkxYTFkYzM5Mi4uZDNkZTNkMzAxZmYxYzEwYzkzNGU2Mzk4NmM2MDc3
YTE4NDJkYmZhMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMu
aWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxzLmlkbApAQCAtMjM1LDYg
KzIzNSwxNSBAQCBlbnVtIENvbnRlbnRTaXplQ2F0ZWdvcnkgewogICAgIERPTVJlY3RMaXN0IHRl
eHRSZWN0c0luQm91bmRpbmdSZWN0Q29vcmRpbmF0ZXM7CiB9OwogCitbCisgICAgRXhwb3J0TWFj
cm89V0VCQ09SRV9URVNUU1VQUE9SVF9FWFBPUlQsCisgICAgQ29uZGl0aW9uYWw9QVRUQUNITUVO
VF9FTEVNRU5ULAorICAgIEpTR2VuZXJhdGVUb0pTT2JqZWN0LAorXSBkaWN0aW9uYXJ5IEF0dGFj
aG1lbnRUaHVtYm5haWxJbmZvIHsKKyAgICB1bnNpZ25lZCBsb25nIHdpZHRoOworICAgIHVuc2ln
bmVkIGxvbmcgaGVpZ2h0OworfTsKKwogWwogICAgIEV4cG9ydE1hY3JvPVdFQkNPUkVfVEVTVFNV
UFBPUlRfRVhQT1JULAogICAgIEpTR2VuZXJhdGVUb0pTT2JqZWN0LApAQCAtOTY1LDQgKzk3NCw2
IEBAIGVudW0gQ29udGVudFNpemVDYXRlZ29yeSB7CiAgICAgW0NvbmRpdGlvbmFsPUVOQ1JZUFRF
RF9NRURJQV0gdW5zaWduZWQgbG9uZyBtZWRpYUtleVNlc3Npb25JbnRlcm5hbEluc3RhbmNlU2Vz
c2lvbk9iamVjdFJlZkNvdW50KE1lZGlhS2V5U2Vzc2lvbiBzZXNzaW9uKTsKIAogICAgIHVuZGVm
aW5lZCBzZXRDb250ZW50U2l6ZUNhdGVnb3J5KENvbnRlbnRTaXplQ2F0ZWdvcnkgY2F0ZWdvcnkp
OworCisgICAgW0NvbmRpdGlvbmFsPUFUVEFDSE1FTlRfRUxFTUVOVCwgTWF5VGhyb3dFeGNlcHRp
b25dIEF0dGFjaG1lbnRUaHVtYm5haWxJbmZvIGF0dGFjaG1lbnRUaHVtYm5haWxJbmZvKEhUTUxB
dHRhY2htZW50RWxlbWVudCBlbGVtZW50KTsKIH07CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0
L1VJUHJvY2Vzcy9Db2NvYS9XZWJQYWdlUHJveHlDb2NvYS5tbSBiL1NvdXJjZS9XZWJLaXQvVUlQ
cm9jZXNzL0NvY29hL1dlYlBhZ2VQcm94eUNvY29hLm1tCmluZGV4IDRkNGY4ODdlZGM5NWIxZWQ1
NzU3NDBmMTk4YmJlNjJiYzYzM2NlYTUuLjViZGVlMTk1ZWVlNzZiNTY5ZjY2NTBiNjBjNjIyYTk5
YzA0NWIyYmMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0NvY29hL1dlYlBh
Z2VQcm94eUNvY29hLm1tCisrKyBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0NvY29hL1dlYlBh
Z2VQcm94eUNvY29hLm1tCkBAIC00Myw2ICs0Myw3IEBACiAjaW1wb3J0ICJXZWJzaXRlRGF0YVN0
b3JlLmgiCiAjaW1wb3J0ICJXS0Vycm9ySW50ZXJuYWwuaCIKICNpbXBvcnQgPFdlYkNvcmUvRHJh
Z0l0ZW0uaD4KKyNpbXBvcnQgPFdlYkNvcmUvR2VvbWV0cnlVdGlsaXRpZXMuaD4KICNpbXBvcnQg
PFdlYkNvcmUvTG9jYWxDdXJyZW50R3JhcGhpY3NDb250ZXh0Lmg+CiAjaW1wb3J0IDxXZWJDb3Jl
L05vdEltcGxlbWVudGVkLmg+CiAjaW1wb3J0IDxXZWJDb3JlL1NlYXJjaFBvcHVwTWVudUNvY29h
Lmg+CkBAIC00MzUsMTAgKzQzNiwxNCBAQCB2b2lkIFdlYlBhZ2VQcm94eTo6cmVtb3ZlTWVkaWFV
c2FnZU1hbmFnZXJTZXNzaW9uKFdlYkNvcmU6Ok1lZGlhU2Vzc2lvbklkZW50aWZpZQogCiAjaWYg
SEFWRShRVUlDS0xPT0tfVEhVTUJOQUlMSU5HKQogCi1zdGF0aWMgUmVmUHRyPFdlYktpdDo6U2hh
cmVhYmxlQml0bWFwPiBjb252ZXJ0UGxhdGZvcm1JbWFnZVRvQml0bWFwKENvY29hSW1hZ2UgKmlt
YWdlLCBjb25zdCBXZWJDb3JlOjpJbnRTaXplJiBzaXplKQorc3RhdGljIFJlZlB0cjxXZWJLaXQ6
OlNoYXJlYWJsZUJpdG1hcD4gY29udmVydFBsYXRmb3JtSW1hZ2VUb0JpdG1hcChDb2NvYUltYWdl
ICppbWFnZSwgY29uc3QgV2ViQ29yZTo6SW50U2l6ZSYgZml0dGluZ1NpemUpCiB7CisgICAgRmxv
YXRTaXplIG9yaWdpbmFsVGh1bWJuYWlsU2l6ZShbaW1hZ2Ugc2l6ZV0pOworICAgIGF1dG8gcmVz
dWx0UmVjdCA9IHJvdW5kZWRJbnRSZWN0KGxhcmdlc3RSZWN0V2l0aEFzcGVjdFJhdGlvSW5zaWRl
UmVjdChvcmlnaW5hbFRodW1ibmFpbFNpemUuYXNwZWN0UmF0aW8oKSwgeyB7IH0sIGZpdHRpbmdT
aXplIH0pKTsKKyAgICByZXN1bHRSZWN0LnNldExvY2F0aW9uKHsgfSk7CisKICAgICBXZWJLaXQ6
OlNoYXJlYWJsZUJpdG1hcDo6Q29uZmlndXJhdGlvbiBiaXRtYXBDb25maWd1cmF0aW9uOwotICAg
IGF1dG8gYml0bWFwID0gV2ViS2l0OjpTaGFyZWFibGVCaXRtYXA6OmNyZWF0ZVNoYXJlYWJsZShz
aXplLCBiaXRtYXBDb25maWd1cmF0aW9uKTsKKyAgICBhdXRvIGJpdG1hcCA9IFdlYktpdDo6U2hh
cmVhYmxlQml0bWFwOjpjcmVhdGVTaGFyZWFibGUocmVzdWx0UmVjdC5zaXplKCksIGJpdG1hcENv
bmZpZ3VyYXRpb24pOwogICAgIGlmICghYml0bWFwKQogICAgICAgICByZXR1cm4gbnVsbHB0cjsK
IApAQCAtNDQ4LDkgKzQ1Myw5IEBAIHN0YXRpYyBSZWZQdHI8V2ViS2l0OjpTaGFyZWFibGVCaXRt
YXA+IGNvbnZlcnRQbGF0Zm9ybUltYWdlVG9CaXRtYXAoQ29jb2FJbWFnZSAqCiAKICAgICBMb2Nh
bEN1cnJlbnRHcmFwaGljc0NvbnRleHQgc2F2ZWRDb250ZXh0KCpncmFwaGljc0NvbnRleHQpOwog
I2lmIFBMQVRGT1JNKElPU19GQU1JTFkpCi0gICAgW2ltYWdlIGRyYXdJblJlY3Q6Q0dSZWN0TWFr
ZSgwLCAwLCBiaXRtYXAtPnNpemUoKS53aWR0aCgpLCBiaXRtYXAtPnNpemUoKS5oZWlnaHQoKSld
OworICAgIFtpbWFnZSBkcmF3SW5SZWN0OnJlc3VsdFJlY3RdOwogI2VsaWYgVVNFKEFQUEtJVCkK
LSAgICBbaW1hZ2UgZHJhd0luUmVjdDpOU01ha2VSZWN0KDAsIDAsIGJpdG1hcC0+c2l6ZSgpLndp
ZHRoKCksIGJpdG1hcC0+c2l6ZSgpLmhlaWdodCgpKSBmcm9tUmVjdDpOU1plcm9SZWN0IG9wZXJh
dGlvbjpOU0NvbXBvc2l0aW5nT3BlcmF0aW9uU291cmNlT3ZlciBmcmFjdGlvbjoxIHJlc3BlY3RG
bGlwcGVkOllFUyBoaW50czpuaWxdOworICAgIFtpbWFnZSBkcmF3SW5SZWN0OnJlc3VsdFJlY3Qg
ZnJvbVJlY3Q6TlNaZXJvUmVjdCBvcGVyYXRpb246TlNDb21wb3NpdGluZ09wZXJhdGlvblNvdXJj
ZU92ZXIgZnJhY3Rpb246MSByZXNwZWN0RmxpcHBlZDpZRVMgaGludHM6bmlsXTsKICNlbmRpZgog
CiAgICAgcmV0dXJuIGJpdG1hcDsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNz
L1F1aWNrTG9va1RodW1ibmFpbExvYWRlci5tbSBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1F1
aWNrTG9va1RodW1ibmFpbExvYWRlci5tbQppbmRleCBlODAxODhiOTBiMjJmZjZhYTc5ODYwMDM0
M2NiMGNjY2FlM2Q2ZTY1Li41YzFhMDc3YzNlNmVhMWI2YzE1YTRmZDY5YjUzNDg5ZTFiZTlmMmFm
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9RdWlja0xvb2tUaHVtYm5haWxM
b2FkZXIubW0KKysrIGIvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvUXVpY2tMb29rVGh1bWJuYWls
TG9hZGVyLm1tCkBAIC0xMDcsNyArMTA3LDcgQEAgLSAodm9pZClzdGFydAogICAgICAgICAgICAg
cmV0dXJuOwogICAgIH0KIAotICAgIGF1dG8gcmVxdWVzdCA9IGFkb3B0TlMoW1dlYktpdDo6YWxs
b2NRTFRodW1ibmFpbEdlbmVyYXRpb25SZXF1ZXN0SW5zdGFuY2UoKSBpbml0V2l0aEZpbGVBdFVS
TDpfZmlsZVBhdGguZ2V0KCkgc2l6ZTpDR1NpemVNYWtlKDQwMCwgNDAwKSBzY2FsZToxIHJlcHJl
c2VudGF0aW9uVHlwZXM6UUxUaHVtYm5haWxHZW5lcmF0aW9uUmVxdWVzdFJlcHJlc2VudGF0aW9u
VHlwZUFsbF0pOworICAgIGF1dG8gcmVxdWVzdCA9IGFkb3B0TlMoW1dlYktpdDo6YWxsb2NRTFRo
dW1ibmFpbEdlbmVyYXRpb25SZXF1ZXN0SW5zdGFuY2UoKSBpbml0V2l0aEZpbGVBdFVSTDpfZmls
ZVBhdGguZ2V0KCkgc2l6ZTpDR1NpemVNYWtlKDQwMCwgNDAwKSBzY2FsZToxIHJlcHJlc2VudGF0
aW9uVHlwZXM6UUxUaHVtYm5haWxHZW5lcmF0aW9uUmVxdWVzdFJlcHJlc2VudGF0aW9uVHlwZVRo
dW1ibmFpbF0pOwogICAgIFtyZXF1ZXN0IHNldEljb25Nb2RlOllFU107CiAgICAgCiAgICAgW1tX
ZWJLaXQ6OmdldFFMVGh1bWJuYWlsR2VuZXJhdG9yQ2xhc3MoKSBzaGFyZWRHZW5lcmF0b3JdIGdl
bmVyYXRlQmVzdFJlcHJlc2VudGF0aW9uRm9yUmVxdWVzdDpyZXF1ZXN0LmdldCgpIGNvbXBsZXRp
b25IYW5kbGVyOl4oUUxUaHVtYm5haWxSZXByZXNlbnRhdGlvbiAqdGh1bWJuYWlsLCBOU0Vycm9y
ICplcnJvcikgewpkaWZmIC0tZ2l0IGEvVG9vbHMvQ2hhbmdlTG9nIGIvVG9vbHMvQ2hhbmdlTG9n
CmluZGV4IDhkMjJkYTk3ODE1MjU0ODQzNjY5MzBmODA0ZDkzNjNmMGUzNzRkNjQuLjlkYzQ4ODk5
ZjU3OTE4NGFjYzM3ZjFkM2RmYzRjYWU0MGNmOGRmZTMgMTAwNjQ0Ci0tLSBhL1Rvb2xzL0NoYW5n
ZUxvZworKysgYi9Ub29scy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyMyBAQAorMjAyMC0wOS0wNCAg
VGltIEhvcnRvbiAgPHRpbW90aHlfaG9ydG9uQGFwcGxlLmNvbT4KKworICAgICAgICBpT1M6IDxh
dHRhY2htZW50PidzIFF1aWNrTG9vayB0aHVtYm5haWxzIGNhbiBhcHBlYXIgc3F1aXNoZWQKKyAg
ICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIxNjIwOQorICAg
ICAgICA8cmRhcjovL3Byb2JsZW0vNjc4MTc3MDY+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9C
T0RZIChPT1BTISkuCisKKyAgICAgICAgKiBUZXN0UnVubmVyU2hhcmVkL1VJU2NyaXB0Q29udGV4
dC9CaW5kaW5ncy9VSVNjcmlwdENvbnRyb2xsZXIuaWRsOgorICAgICAgICAqIFRlc3RSdW5uZXJT
aGFyZWQvVUlTY3JpcHRDb250ZXh0L1VJU2NyaXB0Q29udHJvbGxlci5oOgorICAgICAgICAoV1RS
OjpVSVNjcmlwdENvbnRyb2xsZXI6Omluc2VydEF0dGFjaG1lbnRGb3JGaWxlUGF0aCk6CisgICAg
ICAgICogV2ViS2l0VGVzdFJ1bm5lci9UZXN0Q29udHJvbGxlci5jcHA6CisgICAgICAgIChXVFI6
OlRlc3RDb250cm9sbGVyOjpjdXJyZW50VGVzdFVSTCBjb25zdCk6CisgICAgICAgICogV2ViS2l0
VGVzdFJ1bm5lci9UZXN0Q29udHJvbGxlci5oOgorICAgICAgICAqIFdlYktpdFRlc3RSdW5uZXIv
Y29jb2EvVUlTY3JpcHRDb250cm9sbGVyQ29jb2EuaDoKKyAgICAgICAgKiBXZWJLaXRUZXN0UnVu
bmVyL2NvY29hL1VJU2NyaXB0Q29udHJvbGxlckNvY29hLm1tOgorICAgICAgICAoV1RSOjpVSVNj
cmlwdENvbnRyb2xsZXJDb2NvYTo6aW5zZXJ0QXR0YWNobWVudEZvckZpbGVQYXRoKToKKyAgICAg
ICAgTWFrZSBpdCBwb3NzaWJsZSB0byBpbnNlcnQgYW4gYXR0YWNobWVudCB3cmFwcGluZyBhIGZp
bGUgb24gZGlzaworICAgICAgICB2aWEgVUlTY3JpcHRDb250cm9sbGVyLgorCiAyMDIwLTA5LTA0
ICBZb3Vlbm4gRmFibGV0ICA8eW91ZW5uQGFwcGxlLmNvbT4KIAogICAgICAgICBCaW5kaW5nIGdl
bmVyYXRvciBpcyBub3QgYWx3YXlzIGNvbXB1dGluZyB0aGUgcmlnaHQgaW50ZXJmYWNlIGF0dHJp
YnV0ZXMKZGlmZiAtLWdpdCBhL1Rvb2xzL1Rlc3RSdW5uZXJTaGFyZWQvVUlTY3JpcHRDb250ZXh0
L0JpbmRpbmdzL1VJU2NyaXB0Q29udHJvbGxlci5pZGwgYi9Ub29scy9UZXN0UnVubmVyU2hhcmVk
L1VJU2NyaXB0Q29udGV4dC9CaW5kaW5ncy9VSVNjcmlwdENvbnRyb2xsZXIuaWRsCmluZGV4IGUz
NTVkZjRmNThhMDA2ODYyM2RmYmYyNGJkZWUyODYzNzY1YTc1NDcuLjNkNTgzMmQxZDk2MmMwYzkz
MmYzMjdlM2ViYzAxODlkYTEwYzQ4NWMgMTAwNjQ0Ci0tLSBhL1Rvb2xzL1Rlc3RSdW5uZXJTaGFy
ZWQvVUlTY3JpcHRDb250ZXh0L0JpbmRpbmdzL1VJU2NyaXB0Q29udHJvbGxlci5pZGwKKysrIGIv
VG9vbHMvVGVzdFJ1bm5lclNoYXJlZC9VSVNjcmlwdENvbnRleHQvQmluZGluZ3MvVUlTY3JpcHRD
b250cm9sbGVyLmlkbApAQCAtMzQ3LDYgKzM0Nyw3IEBAIGludGVyZmFjZSBVSVNjcmlwdENvbnRy
b2xsZXIgewogICAgIHVuZGVmaW5lZCBzZXRIYXJkd2FyZUtleWJvYXJkQXR0YWNoZWQoYm9vbGVh
biBhdHRhY2hlZCk7CiAKICAgICBvYmplY3QgYXR0YWNobWVudEluZm8oRE9NU3RyaW5nIGF0dGFj
aG1lbnRJZGVudGlmaWVyKTsKKyAgICB1bmRlZmluZWQgaW5zZXJ0QXR0YWNobWVudEZvckZpbGVQ
YXRoKERPTVN0cmluZyBmaWxlUGF0aCwgRE9NU3RyaW5nIGNvbnRlbnRUeXBlLCBvYmplY3QgY2Fs
bGJhY2spOwogCiAgICAgcmVhZG9ubHkgYXR0cmlidXRlIERPTVN0cmluZyBsYXN0VW5kb0xhYmVs
OwogICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSBET01TdHJpbmcgZmlyc3RSZWRvTGFiZWw7CmRpZmYg
LS1naXQgYS9Ub29scy9UZXN0UnVubmVyU2hhcmVkL1VJU2NyaXB0Q29udGV4dC9VSVNjcmlwdENv
bnRyb2xsZXIuaCBiL1Rvb2xzL1Rlc3RSdW5uZXJTaGFyZWQvVUlTY3JpcHRDb250ZXh0L1VJU2Ny
aXB0Q29udHJvbGxlci5oCmluZGV4IGFkMDZmMGI3MjY2YjQwOTJhYWNlMjgwYTcyYTYzMzM5NGZj
Zjk1ODMuLmZiMmJmMzIwNTI1YmNhZWJmNDA2N2RlMzBlYWY4M2YzMGY4YzYzMzkgMTAwNjQ0Ci0t
LSBhL1Rvb2xzL1Rlc3RSdW5uZXJTaGFyZWQvVUlTY3JpcHRDb250ZXh0L1VJU2NyaXB0Q29udHJv
bGxlci5oCisrKyBiL1Rvb2xzL1Rlc3RSdW5uZXJTaGFyZWQvVUlTY3JpcHRDb250ZXh0L1VJU2Ny
aXB0Q29udHJvbGxlci5oCkBAIC0yNzUsNiArMjc1LDcgQEAgcHVibGljOgogICAgIC8vIEF0dGFj
aG1lbnQgRWxlbWVudHMKIAogICAgIHZpcnR1YWwgSlNPYmplY3RSZWYgYXR0YWNobWVudEluZm8o
SlNTdHJpbmdSZWYgYXR0YWNobWVudElkZW50aWZpZXIpIHsgbm90SW1wbGVtZW50ZWQoKTsgcmV0
dXJuIG51bGxwdHI7IH0KKyAgICB2aXJ0dWFsIHZvaWQgaW5zZXJ0QXR0YWNobWVudEZvckZpbGVQ
YXRoKEpTU3RyaW5nUmVmIGZpbGVQYXRoLCBKU1N0cmluZ1JlZiBjb250ZW50VHlwZSwgSlNWYWx1
ZVJlZiBjYWxsYmFjaykgeyBub3RJbXBsZW1lbnRlZCgpOyB9CiAKICAgICAvLyBDYWxsYmFja3MK
ICAgICAKZGlmZiAtLWdpdCBhL1Rvb2xzL1dlYktpdFRlc3RSdW5uZXIvVGVzdENvbnRyb2xsZXIu
Y3BwIGIvVG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9UZXN0Q29udHJvbGxlci5jcHAKaW5kZXggMjEz
ZWZlMWZhMTEwYWIyZmY0YTIyMTM4YmMxNzk1NGQ0YTA4YzQxNS4uMWViOWFhYjM5ODhjMWFlNGQ2
NWEzYzIyZTdmY2Q3ZmRiZDZhNjIxMSAxMDA2NDQKLS0tIGEvVG9vbHMvV2ViS2l0VGVzdFJ1bm5l
ci9UZXN0Q29udHJvbGxlci5jcHAKKysrIGIvVG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9UZXN0Q29u
dHJvbGxlci5jcHAKQEAgLTQxMjAsNCArNDEyMCw5IEBAIHZvaWQgVGVzdENvbnRyb2xsZXI6Om1h
cmtBZENsaWNrQXR0cmlidXRpb25zQXNFeHBpcmVkRm9yVGVzdGluZygpCiAgICAgcnVuVW50aWwo
Y2FsbGJhY2tDb250ZXh0LmRvbmUsIG5vVGltZW91dCk7CiB9CiAKK1dLVVJMUmVmIFRlc3RDb250
cm9sbGVyOjpjdXJyZW50VGVzdFVSTCgpIGNvbnN0Cit7CisgICAgcmV0dXJuIG1fY3VycmVudElu
dm9jYXRpb24gPyBtX2N1cnJlbnRJbnZvY2F0aW9uLT51cmwoKSA6IG51bGxwdHI7Cit9CisKIH0g
Ly8gbmFtZXNwYWNlIFdUUgpkaWZmIC0tZ2l0IGEvVG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9UZXN0
Q29udHJvbGxlci5oIGIvVG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9UZXN0Q29udHJvbGxlci5oCmlu
ZGV4IDcxM2ZmOWFiMTk2OWI5N2E1N2U3YjVlNGIyMjg0ZWQyMDhmMDZjMTcuLmY5NGQ1N2MxNDdi
MzE2ZjA3OGZhODVmMjIwZjQwNzYwOTQxMTNjOGMgMTAwNjQ0Ci0tLSBhL1Rvb2xzL1dlYktpdFRl
c3RSdW5uZXIvVGVzdENvbnRyb2xsZXIuaAorKysgYi9Ub29scy9XZWJLaXRUZXN0UnVubmVyL1Rl
c3RDb250cm9sbGVyLmgKQEAgLTM1OSw2ICszNTksOCBAQCBwdWJsaWM6CiAKICAgICB2b2lkIGRp
ZFNldEFwcEJvdW5kRG9tYWlucygpIGNvbnN0OwogCisgICAgV0tVUkxSZWYgY3VycmVudFRlc3RV
UkwoKSBjb25zdDsKKwogcHJpdmF0ZToKICAgICBXS1JldGFpblB0cjxXS1BhZ2VDb25maWd1cmF0
aW9uUmVmPiBnZW5lcmF0ZVBhZ2VDb25maWd1cmF0aW9uKGNvbnN0IFRlc3RPcHRpb25zJik7CiAg
ICAgV0tSZXRhaW5QdHI8V0tDb250ZXh0Q29uZmlndXJhdGlvblJlZj4gZ2VuZXJhdGVDb250ZXh0
Q29uZmlndXJhdGlvbihjb25zdCBUZXN0T3B0aW9uczo6Q29udGV4dE9wdGlvbnMmKSBjb25zdDsK
ZGlmZiAtLWdpdCBhL1Rvb2xzL1dlYktpdFRlc3RSdW5uZXIvY29jb2EvVUlTY3JpcHRDb250cm9s
bGVyQ29jb2EuaCBiL1Rvb2xzL1dlYktpdFRlc3RSdW5uZXIvY29jb2EvVUlTY3JpcHRDb250cm9s
bGVyQ29jb2EuaAppbmRleCBlZGIyMTBjMWE4NzliYjg0Y2RiOGU2OWUxNGI3NTVkNGZhYmZlMTU4
Li43NzY3Y2FiNmE1NjQwYzI0NzQwMGUzNmZiMWM5NDViNzNiZWUzNjg0IDEwMDY0NAotLS0gYS9U
b29scy9XZWJLaXRUZXN0UnVubmVyL2NvY29hL1VJU2NyaXB0Q29udHJvbGxlckNvY29hLmgKKysr
IGIvVG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9jb2NvYS9VSVNjcmlwdENvbnRyb2xsZXJDb2NvYS5o
CkBAIC01Nyw2ICs1Nyw4IEBAIHB1YmxpYzoKIAogICAgIHZvaWQgc2V0Q29udGludW91c1NwZWxs
Q2hlY2tpbmdFbmFibGVkKGJvb2wpIG92ZXJyaWRlOwogCisgICAgdm9pZCBpbnNlcnRBdHRhY2ht
ZW50Rm9yRmlsZVBhdGgoSlNTdHJpbmdSZWYgZmlsZVBhdGgsIEpTU3RyaW5nUmVmIGNvbnRlbnRU
eXBlLCBKU1ZhbHVlUmVmIGNhbGxiYWNrKSBvdmVycmlkZTsKKwogcHJvdGVjdGVkOgogICAgIGV4
cGxpY2l0IFVJU2NyaXB0Q29udHJvbGxlckNvY29hKFVJU2NyaXB0Q29udGV4dCYpOwogICAgIFRl
c3RSdW5uZXJXS1dlYlZpZXcgKndlYlZpZXcoKSBjb25zdDsKZGlmZiAtLWdpdCBhL1Rvb2xzL1dl
YktpdFRlc3RSdW5uZXIvY29jb2EvVUlTY3JpcHRDb250cm9sbGVyQ29jb2EubW0gYi9Ub29scy9X
ZWJLaXRUZXN0UnVubmVyL2NvY29hL1VJU2NyaXB0Q29udHJvbGxlckNvY29hLm1tCmluZGV4IDE3
YWU1NTMxYzExODcyMTBmNmY0MmI0NDYzOTIxNTQzMjE0MGRjNWIuLmE4MmNjMzU1Y2Q3ZmU5OTU1
N2E0MWQ2MjIxNTY2ZDcwMGMzNGY3NzggMTAwNjQ0Ci0tLSBhL1Rvb2xzL1dlYktpdFRlc3RSdW5u
ZXIvY29jb2EvVUlTY3JpcHRDb250cm9sbGVyQ29jb2EubW0KKysrIGIvVG9vbHMvV2ViS2l0VGVz
dFJ1bm5lci9jb2NvYS9VSVNjcmlwdENvbnRyb2xsZXJDb2NvYS5tbQpAQCAtMzIsNiArMzIsNyBA
QAogI2ltcG9ydCAiVGVzdFJ1bm5lcldLV2ViVmlldy5oIgogI2ltcG9ydCAiVUlTY3JpcHRDb250
ZXh0LmgiCiAjaW1wb3J0IDxKYXZhU2NyaXB0Q29yZS9KYXZhU2NyaXB0Q29yZS5oPgorI2ltcG9y
dCA8V2ViS2l0L1dLVVJMQ0YuaD4KICNpbXBvcnQgPFdlYktpdC9XS1dlYlZpZXdQcml2YXRlLmg+
CiAjaW1wb3J0IDxXZWJLaXQvV0tXZWJWaWV3UHJpdmF0ZUZvclRlc3RpbmcuaD4KIApAQCAtMjA4
LDQgKzIwOSwxOSBAQCB2b2lkIFVJU2NyaXB0Q29udHJvbGxlckNvY29hOjpwYXN0ZSgpCiAgICAg
W3dlYlZpZXcoKSBwYXN0ZTpuaWxdOwogfQogCit2b2lkIFVJU2NyaXB0Q29udHJvbGxlckNvY29h
OjppbnNlcnRBdHRhY2htZW50Rm9yRmlsZVBhdGgoSlNTdHJpbmdSZWYgZmlsZVBhdGgsIEpTU3Ry
aW5nUmVmIGNvbnRlbnRUeXBlLCBKU1ZhbHVlUmVmIGNhbGxiYWNrKQoreworICAgIHVuc2lnbmVk
IGNhbGxiYWNrSUQgPSBtX2NvbnRleHQtPnByZXBhcmVGb3JBc3luY1Rhc2soY2FsbGJhY2ssIENh
bGxiYWNrVHlwZU5vblBlcnNpc3RlbnQpOworCisgICAgUmV0YWluUHRyPENGVVJMUmVmPiB0ZXN0
VVJMID0gYWRvcHRDRihXS1VSTENvcHlDRlVSTChrQ0ZBbGxvY2F0b3JEZWZhdWx0LCBUZXN0Q29u
dHJvbGxlcjo6c2luZ2xldG9uKCkuY3VycmVudFRlc3RVUkwoKSkpOworICAgIFJldGFpblB0cjxO
U1VSTD4gYXR0YWNobWVudFVSTCA9IFtOU1VSTCBmaWxlVVJMV2l0aFBhdGg6dG9XVEZTdHJpbmco
dG9XSyhmaWxlUGF0aCkpIHJlbGF0aXZlVG9VUkw6KF9fYnJpZGdlIE5TVVJMICopdGVzdFVSTC5n
ZXQoKV07CisKKyAgICBhdXRvIGZpbGVXcmFwcGVyID0gYWRvcHROUyhbW05TRmlsZVdyYXBwZXIg
YWxsb2NdIGluaXRXaXRoVVJMOmF0dGFjaG1lbnRVUkwuZ2V0KCkgb3B0aW9uczowIGVycm9yOm5p
bF0pOworICAgIFt3ZWJWaWV3KCkgX2luc2VydEF0dGFjaG1lbnRXaXRoRmlsZVdyYXBwZXI6Zmls
ZVdyYXBwZXIuZ2V0KCkgY29udGVudFR5cGU6dG9XVEZTdHJpbmcodG9XSyhjb250ZW50VHlwZSkp
IGNvbXBsZXRpb246XihCT09MIHN1Y2Nlc3MpIHsKKyAgICAgICAgaWYgKCFtX2NvbnRleHQpCisg
ICAgICAgICAgICByZXR1cm47CisgICAgICAgIG1fY29udGV4dC0+YXN5bmNUYXNrQ29tcGxldGUo
Y2FsbGJhY2tJRCk7CisgICAgfV07Cit9CisKIH0gLy8gbmFtZXNwYWNlIFdUUgpkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCmluZGV4IDM3
ZGYwZjliY2M2MTFmNDFjZWU4NzAyZGQ2ZDA2ZjZiYmJmZGMzZjIuLjBhZmRkZTFjZjdlOGRiZWRi
NjJmZTgwNjM4ZThiZGNlOWE1YmVmZDMgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL0NoYW5nZUxv
ZworKysgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyNyBAQAorMjAyMC0wOS0w
NCAgVGltIEhvcnRvbiAgPHRpbW90aHlfaG9ydG9uQGFwcGxlLmNvbT4KKworICAgICAgICBpT1M6
IDxhdHRhY2htZW50PidzIFF1aWNrTG9vayB0aHVtYm5haWxzIGNhbiBhcHBlYXIgc3F1aXNoZWQK
KyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIxNjIwOQor
ICAgICAgICA8cmRhcjovL3Byb2JsZW0vNjc4MTc3MDY+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkg
Tk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBmYXN0L2F0dGFjaG1lbnQvYXR0YWNobWVudC10
aHVtYm5haWwtcHJlc2VydmVzLWFzcGVjdC1yYXRpby1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAg
ICAgICAqIGZhc3QvYXR0YWNobWVudC9hdHRhY2htZW50LXRodW1ibmFpbC1wcmVzZXJ2ZXMtYXNw
ZWN0LXJhdGlvLmh0bWw6IEFkZGVkLgorICAgICAgICAqIGZhc3QvYXR0YWNobWVudC9yZXNvdXJj
ZXMvNDAweDIwMC1jaXJjbGUucG5nOiBBZGRlZC4KKyAgICAgICAgKiBwbGF0Zm9ybS9pb3MvZmFz
dC9hdHRhY2htZW50L2F0dGFjaG1lbnQtdGh1bWJuYWlsLXByZXNlcnZlcy1hc3BlY3QtcmF0aW8t
ZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiByZXNvdXJjZXMvdWktaGVscGVyLmpzOgor
ICAgICAgICAod2luZG93LlVJSGVscGVyLmluc2VydEF0dGFjaG1lbnRGb3JGaWxlUGF0aCk6Cisg
ICAgICAgIEFkZCBhIHRlc3QgdGhhdCBkdW1wcyB0aGUgdGh1bWJuYWlsIHNpemUgZm9yIGEgNDAw
eDIwMCBhdHRhY2htZW50LgorICAgICAgICBDb25mdXNpbmdseSwgb24gbWFjT1MsIFF1aWNrTG9v
ayBhbHdheXMgcmV0dXJucyBhbiBpbWFnZSBvZiB0aGUgc2l6ZQorICAgICAgICB3ZSBhc2sgZm9y
ICg0MDB4NDAwKSwgcGFkZGVkIHdpdGggd2hpdGVzcGFjZSwgc28gdGhlIHByb2JsZW0gZG9lcyBu
b3QKKyAgICAgICAgcmVwcm9kdWNlIGFuZCB0aGUgdGVzdCBkb2Vzbid0IHdvcmsgcmlnaHQgdGhl
cmUuCisgICAgICAgIE9uIGlPUywgdGhvdWdoLCB0aGUgcmVzdWx0IHVzZWQgdG8gYmUgNDAweDQw
MCBhbmQgbm93IGlzIDQwMHgyMDAuCisgICAgICAgIAorICAgICAgICBJIHRyaWVkIGFuZCBmYWls
ZWQgdG8gbWFrZSBhIG1vcmUgdXNlZnVsIHRlc3QgKGEgcmVmIHRlc3QsIGFjdHVhbGx5CisgICAg
ICAgIHRlc3RpbmcgdGhlIHByZXNlbnRhdGlvbikgYmVjYXVzZSBpdCdzIHF1aXRlIGhhcmQgdG8g
bWF0Y2ggdGhlCisgICAgICAgIG5hdGl2ZSA8YXR0YWNobWVudD4gcGFpbnRpbmcuCisKIDIwMjAt
MDktMDQgIENocmlzIER1bWV6ICA8Y2R1bWV6QGFwcGxlLmNvbT4KIAogICAgICAgICBSRUdSRVNT
SU9OKG1hY09TIEJpZyBTdXIpIGh0dHBzOi8vbWFnZW50YS5naXRodWIuaW8vbG9maS1wbGF5ZXIv
IGlzIGJyb2tlbgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9hdHRhY2htZW50L2F0dGFj
aG1lbnQtdGh1bWJuYWlsLXByZXNlcnZlcy1hc3BlY3QtcmF0aW8tZXhwZWN0ZWQudHh0IGIvTGF5
b3V0VGVzdHMvZmFzdC9hdHRhY2htZW50L2F0dGFjaG1lbnQtdGh1bWJuYWlsLXByZXNlcnZlcy1h
c3BlY3QtcmF0aW8tZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjIzZTYzNWFiZmQwZWQ5OWFjZWNi
NDBjYWU0Mzg3MDU0MmY5ZjA1NWUKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0
L2F0dGFjaG1lbnQvYXR0YWNobWVudC10aHVtYm5haWwtcHJlc2VydmVzLWFzcGVjdC1yYXRpby1l
eHBlY3RlZC50eHQKQEAgLTAsMCArMSBAQAorQXR0YWNobWVudCBUaHVtYm5haWw6IDQwMHg0MDAK
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvYXR0YWNobWVudC9hdHRhY2htZW50LXRodW1i
bmFpbC1wcmVzZXJ2ZXMtYXNwZWN0LXJhdGlvLmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L2F0dGFj
aG1lbnQvYXR0YWNobWVudC10aHVtYm5haWwtcHJlc2VydmVzLWFzcGVjdC1yYXRpby5odG1sCm5l
dyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAuLmEyOTM2NjQ5YzRlZTI3MjhjZWUzMDQ4NjA2MTE2OTc1NDQ4ODJkMDQKLS0tIC9k
ZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2F0dGFjaG1lbnQvYXR0YWNobWVudC10aHVt
Ym5haWwtcHJlc2VydmVzLWFzcGVjdC1yYXRpby5odG1sCkBAIC0wLDAgKzEsMzggQEAKKzwhRE9D
VFlQRSBodG1sPjwhLS0gd2Via2l0LXRlc3QtcnVubmVyIFsgZW5hYmxlQXR0YWNobWVudEVsZW1l
bnQ9dHJ1ZSBdIC0tPgorPGh0bWw+Cis8Ym9keSBjb250ZW50ZWRpdGFibGU+Cis8c2NyaXB0IHNy
Yz0iLi4vLi4vcmVzb3VyY2VzL3VpLWhlbHBlci5qcyI+PC9zY3JpcHQ+Cis8c2NyaXB0PgorYXN5
bmMgZnVuY3Rpb24gcnVuVGVzdCgpIHsKKyAgICBhd2FpdCBVSUhlbHBlci5hY3RpdmF0ZUF0KDEw
LCAxMCk7CisgICAgYXdhaXQgVUlIZWxwZXIuaW5zZXJ0QXR0YWNobWVudEZvckZpbGVQYXRoKCJy
ZXNvdXJjZXMvNDAweDIwMC1jaXJjbGUucG5nIiwgImltYWdlL3BuZyIpOworCisgICAgZnVuY3Rp
b24gYXR0YWNobWVudFRodW1ibmFpbEluZm8oKSB7CisgICAgICAgIHJldHVybiB3aW5kb3cuaW50
ZXJuYWxzLmF0dGFjaG1lbnRUaHVtYm5haWxJbmZvKGRvY3VtZW50LmdldEVsZW1lbnRzQnlUYWdO
YW1lKCJhdHRhY2htZW50IilbMF0pOworICAgIH0KKworICAgIHRyeSB7CisgICAgICAgIGF0dGFj
aG1lbnRUaHVtYm5haWxJbmZvKCk7CisgICAgfSBjYXRjaCAoZSkgeworICAgICAgICBpZiAoZS5u
YW1lID09ICJJbnZhbGlkQWNjZXNzRXJyb3IiKQorICAgICAgICAgICAgZG9jdW1lbnQuYm9keS5p
bm5lclRleHQgPSBgQXR0YWNobWVudCB0aHVtYm5haWxzIG5vdCBzdXBwb3J0ZWQuYDsKKyAgICAg
ICAgZWxzZQorICAgICAgICAgICAgZG9jdW1lbnQuYm9keS5pbm5lclRleHQgPSBlLm5hbWU7Cisg
ICAgfQorCisgICAgbGV0IGludGVydmFsSUQgPSBzZXRJbnRlcnZhbChmdW5jdGlvbiAoKSB7Cisg
ICAgICAgIGxldCBpbmZvID0gYXR0YWNobWVudFRodW1ibmFpbEluZm8oKTsKKyAgICAgICAgaWYg
KGluZm8ud2lkdGggPT0gMCkKKyAgICAgICAgICAgIHJldHVybjsKKyAgICAgICAgZG9jdW1lbnQu
Ym9keS5pbm5lclRleHQgPSBgQXR0YWNobWVudCBUaHVtYm5haWw6ICR7aW5mby53aWR0aH14JHtp
bmZvLmhlaWdodH1gOworICAgICAgICBjbGVhclRpbWVvdXQoaW50ZXJ2YWxJRCk7CisgICAgICAg
IHRlc3RSdW5uZXIubm90aWZ5RG9uZSgpOworICAgIH0sIDApOworfQorCit0ZXN0UnVubmVyLmR1
bXBBc1RleHQoKTsKK3Rlc3RSdW5uZXIud2FpdFVudGlsRG9uZSgpOworYWRkRXZlbnRMaXN0ZW5l
cigibG9hZCIsIHJ1blRlc3QpOworPC9zY3JpcHQ+Cis8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9mYXN0L2F0dGFjaG1lbnQvcmVzb3VyY2VzLzQwMHgyMDAtY2lyY2xl
LnBuZyBiL0xheW91dFRlc3RzL2Zhc3QvYXR0YWNobWVudC9yZXNvdXJjZXMvNDAweDIwMC1jaXJj
bGUucG5nCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAuLmExMmE2NGUwNDI2OGViOTlhMDUyMDBlYzU1YTExMWI3Nzg5OTA4
OGYKR0lUIGJpbmFyeSBwYXRjaApsaXRlcmFsIDEwMzc0CnpjbVp7SjF6Y1JxbEswSHVGMk4tWFpv
JUUlbyMyN3M1RDR5P0ZoSDtiY1BCVWpmKW1gRzBLcC0reUF1ZSRDLT5nPgp6LXRLPDs0WnE+Xj44
XmlPY1VnRCFnc1pFe1ZXNShyZjxQYikxJGsqcjVDfEx0djxIdzhmJllFQC1ffTdPYlE+RWYKekRS
bClZRFg2LU9xbV8tRkI/dSVSb35WbllfaX5VUj55QFUwQm5sS3RkcjIyfE5rdG4+QVIrJDZncWo4
eGpCNiZUCnpVUytEVTwjYUBhJUlsXnJKd0E7ZVEpaX0yKDdRfkNoQzArI3sxR0Y4an1tTmpvcF9S
WWt9bVdsOzxfIWlITTsxRgp6MVJCOC1GNXlPK2hDcEBXKmdtM1JTdypUVFNqSntTSUNIPik/Qz1j
SFl7fUs7PTZScm0mY35EVVY+PERLMk9mSWIKelMrVn03KHB9X1c3ZzVsRmJsNDw8JVJBTntkUWI9
UmppJGFSTlY7SXojaF5fcXszQ1FHdUBnbDNJPEZee3NZTk0jCnpRdjNIbmZRbHA7KG1GRkojenJ7
biNXUFQhZjNZP0dESGtQSDkrbndseGNDZE94R1FgUSpiaGV5Uks8Q1ApN2E+KAp6WG95KXdVWWpo
NXo1IW18VFhDe19qMT08XiVrQ2QwPi15NHk3KShaJHF+eit3XipBPGg/PklRM2ZxcSpGaT0+Tl8K
ej4wIUpHPCFRO3hCck5JUzRyYHtfOHxONEBraCsoNnAqfkZ4Tj9fOElydWxOSFZjd1BqY1l0KEI+
NDlAOU5reiNVCnohbWt8bmpKI2xgJFUzYU0wbFJ4VFA/ZDFVXiU7fm16Xmg5QUlZfndSSmt7e1dt
dkBvfW9FQnZEMkpmQHpObCF+Sgp6ZjJxZjI0KE1GODxEZkwheldiIVhwZVBAYmY/QX53PDdYcj5M
K2x3bkttMDlVSD9rezxMK3xyTHdsTTV2cENme0UKemhDMSVedmh7dmNQNzcwSytxKmMhODxWeTxn
NGgoJkA7Ozw8ODVFb153PGJrNUV3SkNGdGFKRkVnRVJSRHMxdV4yCnpOeHNXSyhOVk93cVRHPmIh
X1JFOXVxTihUYEtKdnRtYDF8MjdkOG1HR01veVFBIWVUNTUtbVFnU3FXSCNNRytLWgp6RzI4dWcj
cF53MkhEMmFzK0duZkc7JmBoOCpjfWtteGUxQnExQ2FIa3VlWXBUTUk8UDIhY2UkV2FwYTd0dmAq
cWQKeklCSHo0TlRkJnxTWWc1OXFURm09Q1IpZy1JZ2J9SElfflplVnpAajZJSWlrV3R9c14jbmdR
NSMxV1o0VShvdGNSCnphVnFSLUVmYX45cUF3alQtUXxBZTBJQU5IJEY0WUJeRFNQYGJOI2ZTcSNr
dU1XUjVeMCsxbWNkUV92ei1ibEB5Pgp6JmR9TCQoVjlLRjt3c29XU2Z8VXAzcXo4MFo0fmQhWntB
WlEzYylAYE94ZnQ7clE9KUpnMTlQe0Z3dTRCVkdRd1gKemVgTFYzVzZYIWpHeDZQZEk5cX1KaEQy
PnN8TmUoPj14eUY0d243blQybkZiUUBFVjcwKkBJM2RVZyVXfVp5KVVhCnp3VzxvU3JxajgmJnMq
UCpAPVgoVmhAU2ZAKj5RTWEzeCNJKHUkc3RLYGdDK2ZuUGNkMmQxIUApPmRhMlVyZz9UKgp6OUgz
Y3QxSnNZOVZwJV9uc15lVWVOcz84UU1XXi1Kb1A2M2BIa3tBJXhoJlJ8SEFGdlJ2fH55Vj15cktO
P3tzbEAKemJfYXshbHh3dU1ITCtwJk5udU1KUlcjKyZmbj8+YnVDRk5gemtDY2kkKEFCX3k3UFFE
Sl52YUt1I0RidWdXRCNsCnpsUVhlNGdhJlMtPHo3P2VmLW1nQW8kS143Z3dkYkVOa0gqRmZqT1l5
e0Q4c0FBKnpOXk9CMGU1Z2woOWFJO3VgVQp6b2VBNj1kT2dnQGdwRDd4LS0rWGRufUx3cmYkcyNq
Nyp0d0ItVTdlME8xPitEOVVTfXZodDRjNGc+b2owZE9nQzYKejhaNkklYD1OKURRSnkzJlRwaztO
NkhQeExmdlBrSFY/WmFMPGMzKF9RLShBdncwd1lrNks1ajRNTUNzNWspbzhsCnojPE05ekBeR0kj
SjhvUFJhcikxeHlJUXJfTXEjV3she2JiRFNPJWU0KHJsbWtlKCt3Pnt0Tjt1ISVnO289Yi07aQp6
eD8jZWgkQ0x5Y3RRNjJnKEZ4SHV0PCQ2Uzg9YkE+RWtuQnRkKikweCtMZ0pBOHJBWDRTeVU4MUpC
WTI5Wj8qWVUKekBTZ2h9I2B8RTs0UCNgdEsjdERYUmkjemp6R3N7JGxnUGNub0whaCpsd0hJUCR2
O3N9IWxaTFckQ0d2dXVGWCg2CnpLSnYjbUJzOWJ9TTAqOSFEZiZxc1FwVT1NKDgkRyFGXjJSfFpe
Y0lfOTRQcThfYmNjczlPWXdLVXtuKiZDejhwawp6KGtjeUgzfGVrM1pKS1lFWnRpVHBqdihrd1RV
UUdJakxnOHJGd0Q1WDdAMDdmO0d4Sy1vbz1pMnRCNmokcnVkP0cKellzejRzYztBMmo2JFM8ZDhV
e3RBR2xeTHdSaXNQZzFJWjUwYX5yPz55JnEoNiRiTCR2MT1mRzZrTXtgbDIpIztECnpFbjReeXZ8
RG9OY2d5TCteTUxuMmAyWkkqPXcjKFk0Q3luSk1hWVlDUENRZUwmJFRIWm9YSUhERlYtKmdSPT1w
Vwp6Tit5c1FtaT9JNUpESFpKe249Z2JBVzB7aF9vWil3JDB2YGtTREhzbEtNOEF2K35mcyQxd1JX
eUdDdjN8eFQpPzUKem8wPSZyKFM7Nkx2emo8cVhQTVI/O0pWd3BII1hAdjYqVCN9empBQi08I3hJ
RkVBRiFKS3pvO2JgdDQtQHJUdH4mCnp0LSRUQEZSYX5fc1ZEQzU3RFQ9JlBJR2FsYj1fWXZlSTN+
c3AjJFA/KVhnZiNSem9gSnJJSmpHUDN6WWJ5TTRObQp6V0UqMEcjYCpKWFdZYSY1NjFpaXtre3xQ
QmhfelYhaE9LITxZTTNLIUBOY0J7RXFxRmteaUBfPz1+QnQzSjVXKGcKemJ4WWsoTUArUiF7bUxP
P18weSkwODskKjBkTzMlWCEmUDhHemdkbG8tZDVSVW5TLW5PMSt3ZGg4PVZWK2lgUXRjCnpLMXpT
UUEtSD8tVHUrbXdtNClsWXRSQW52JEUjSFIkaHRJM1pGQmU4R194YW5tZz84bXstZHw4az54N1lC
VUlAPQp6PjZvd0pVVlhMeVkjKHsjRlZ0anx2IXZDYClPPkl5P2R5MUZjTmNsM09RdyM1ZyVtNkdx
MSNlIVlKNWBUdXdsSCkKejlve3J9NDAkbEAzKG1LVUg+ITM7a1JwO0l4elhFRWpuUndEZ0d9U2RU
OVE7am0jcU87Pmg9YiZoUnBeJCZxaDgpCno+IX1vdDNwdClCcE47KzFBPHVIQik/LTt1R31yV2xu
Ym9WR09YRWhuWkcjVz5OUiNHZXtaIUYoKFBMUyF2cEJ+TAp6IyNHc3VFNFY4WkRfJCkoRW10aW93
VHw2a2B2di1NLTskbCg+PmxpO3BaSW9NdEJLTEsrcUV5ZkJoUnkhTHo4bykKemM8NVFfJUhDPDha
ZjZPPWswR2R9JjArWj05N0N2d3xDQGgrUXkjbVBkUkpmfUUzPGRHYHlLdXY/aDc8Z3khKSg7Cno7
bldjVW9XS3ZrcCRXbVkhVFo1PEFyOHA/THs+T1MjNSZKciRkN1NFeCRkUm1EWEJRa0VQR2hLcTls
KSVaK2s/YQp6ayNQQmItOysxNkBZQFUtPS0wczFzNG5pUytNVk10Kk50d2F1cVM1O3t+OFZFU1dL
RGJ6JXNLcEZZMD5+ak4paFkKekZ6anV4Y0Z0UzM+ZHBMVS1LUTQ1TGpKQGAkIzNmMiloZ1hBRW8x
Z0YmVDY3M2U/Unx2a2FEbXpabE4hbE93OU1iCnowNTE+RVN5NzZLayUhUzsmVVAmTDJnK09lVEQ4
aipKPmohJG5neFlQZFpRRk9aVU83X2FtS1dsVU4xMlZhVkZ2Pgp6SiZKeXZuUiNpcVdWdCFgU28t
aX5jTl9QPVhHRiM9ISpOND5fKXI9PSMmeXI3VzllcGJZeUVaZjVEeV9ATlpRQ08KeiR9OHgleU4+
a0NjRz5raiRHbExAb29rJXkpbUVKQXF6amdrOF9qJiZxPDVrQjxiXj4mKVAkTU1nNFJtTythaXgp
CnpEb2Rmd0Z1JUFLTkBLI3VETCY+eUpUWnBuYDAjakljeiE4SysoKVohTXwqTDVCVjEld0ZIK0Ix
KnZuM2ZRaHpIeQp6ZWxPSkR1R3Q+KDtaN0l2SnNgN0N6MER8V09tWmIwd1AhPFJgXmdoNiRtWUIz
Y3d3fCVrQGhxanhRUCZucmIwbCMKejsmKDNmODtocytsYlFabXh5LXdkeWxqMWg5fF55YGFERysm
WlpIe0ZWejVeO2Q3XnJ2dD5DX1pASUJjdF5QQXwwCnpWYX13dzd1U1l1SFZEb2lFUDYqMFZhJVQ4
NlIpKSFfNlBUP04pS2kjWEE7VjgtWDB+PzVlX1g1XkgkYDJlT2RPRgp6SWh4NSkmI35AWj9gPDFL
RShSWXtBb0c8cmk3c28yVSVOKS0qP3dWO04/cDFOWj9lTjx0eFVfLSl5ISRSeUVkPTMKejx3RHAz
WVE0eHBSXygqMCtPbkFUM0h3aXRyaX1+TCFPP21uPVZuITFVdjFxSi1zUlI3I0J6LSh4OHV9P291
VEVKCnpSKlg4O3g+d2hHQyhLSiZTSWslS3pYZ3RWKHZoZ0p4WENYP18zbDNZVm9NQjczMDImV1go
RCFDYGp2WklBQ2VGPAp6KGB9QikkOCpjYHtDNF9nSGRGMzx2PS1VNFB9NG9wdWVtUHNoa21yXj54
YEpKVUJPaUViQWAhLUxmQGprPzUxfTwKemkrZjMydkRUeTY3KCV9TFdPc3thN21xdjloTnJEZ3pq
THA5WjxWcj1fdFFrdXVwWU0wN0NzWTxCe2REZFBBMntPCnordDl8MmU5N21+YzZCO19SYFAzUj51
QnF7Sj14MzFuZT1jeiRDV2clKHhkdVNrTihVSXBeNmlOI2lMZVR3YGB+Twp6UDFzQ09iIVo8fT5B
UD1Gez5KSW4zKiZOPihQPFJAVnJ8I0tQbiVtV1p6a0tXSzgpPi00UH5XXlIyKH1VQGxPIVgKemN5
SUx2NkNTWUB1PXpHZUpwRmpnSjVPOUhIR1Z8RHQhZWMyXlNwYUlmQUdrc3ZfakloYmQhOCV0Umhr
K2cwLV5NCnpjSG5QKC1nKDtuSEZ9dzEld09eR3ZjPVBZcU5MKSE9MyVGZ0UhT3o+ZGd0bXwkKHdW
enFYTDlUbmlkUTBOWTZZSwp6cWVLQUYzNGhhfEZDR25xM29JVjNmSjQ1Z0ZCND9MNDVKNnRSbGE9
ZWI1I1haUXQrbHo0UGN5QDJaSDMwQTtzd24Kej5NdVZFY2FMY0lfNztOIUVTNldFPSYoU2pjSyZN
KjUzTi1YNTgyRzdtOXQ+fW5hX2VqT2RwV1AmfGR7Nj8xc1F7CnprcDFZdFQ8cX0peWp5e0BnZzsp
cmRvKUgwaSV5e282cy1lbGswZVZ5MXVHUjU1RUladzF8ZmlQTDJ5Nnw0RSV3Pgp6QnBgJnArOH5m
M25EcE9tTykkZWhHIVBJZClDTDZxNH4rcnZ7UFghISo4dTIkb15Xdj9BU0I9bzd4KUl9Sz5rR3kK
emo+Jj1oUn5zfHtqRGFMeE4rfkQrJnpJJmRtWDsyI1p5ZXBxLUc2aWY5Vmt4bmBtUGBsMHF2aEpT
VjVFSzZhPDJ9CnoraTI7ej44VTZTbm1nTEZucCF4VFMrYVdCSk5AQVU2N35gVm4pYTQlcmNmXz9J
fG8tbUZBPUswQzxLQV9wS2RsUAp6PXdCcG1aJCtyfFJNZXFUanhMcl5VUkhLaWJ9Q1UrQz1ARX1W
cXFueURKfWFDOUMjQzxkZ0pFaUIqQDAqPkZMU3AKeiQ7SW1FViRIQE9BUnhmVCZkSjhmJHBUUVl4
T3pMZG5SPkF9eEtqVms8WD9RR0VuVXJCWUBGT3w5Mzd5NF8/bnRJCnp5MVIpYFFULUEwQDZYQCF3
RGh3MWswYn16ZjBoTC1rblBWMTh3Vj5wK3k0Yn52JDZYQiEyWFE8NGZ8X2RlflQwVAp6ISVSQHkp
elVARShjYSREIUE8bCg4VztYYygqR0Z6JnBpSklzQHImMytVWk4lMDd6RzBPYEBEVWVCQSVRe2Bi
KVQKejNEeEAjbHVMbH5lP2I0KygwX3llUyVqZFBpdyFWUyg/NDFpPHEmNTNmQk9ENnl7NHRCcW4t
TzdhJX40MkgmTT1pCnpBcGZpVEFDeGZMQUgpMU5MO2RYcWZBcz14QWNgdT9fSFVPR01lU3Z+cCQz
NzdhdWxRYHc3a0dhblB8MEkpODc1PAp6dUFfI30mdkNiNmsjbjhjdTxebSpBVi1iTGt7UjZ8SWJ7
UDE9QVQ7NFh8O3A0bGxlQnkpakJtZ3hlN0BmclE9ZyYKemI2K0BZRFEkOWpjeWg7UWkxMFBRUWgz
S1FAT1RvXiVoQUslMSh4bSVwST52aHJ1d0cjLSZ7U34meSkkZFpoc2U4Cnp4eFVMQDZUOTtjYmwm
S3JtNHQhZHAmJjV3V3NMYWZAeWYpK00wYSRSJnxme2ptMjt9OUckZ2FaRkBMe2JXYFBoVgp6ZF9E
WWRBPW0pe3YrKFRMNjxoUykkbEBTS0R9NGEkR0spTXI3fnIoWjE0aSQ4ZCF6NmlBUUNAOEZAZCZQ
X3RSNFgKentKbTVfYUF5WVo7ejl3VUFIRVBHYElHckdnK0opbSYqYlRHZU4rTkFUUGY5SlRJYGYo
MkpaJWlfUk8yQDU9OTFDCno9YyRuPm5rUSQ0N1YycjZZMXlBezVnIVVGWURJNEFkPnlgQmIxZmha
c1QxUlRRbHlYeWluVmdWWnkjPUhFRVpQNwp6Z0ZDeTJJQmA0fVJVNklGbVJiYUhNQVl7aVR6SG4t
RGI2VV9KXnJkYVJQLVJiQUR8Pzc5OF4jWkxGZ1lpXiQrMnMKekJGWXBNcXZMO2xPVnM+WHluX30o
NnNCYkJsbEhNKHFVPSskZkBgJiZQTEktTnJiUGtHd3l9dWZAfDRUNmwxQD9kCnopbE1gYCsodXlk
MWZIcllNU3VFXmZIQC1gQCo2dHJ4bjRZZEdeTHYwJEtFencxNTUzRFN6RHIhR2ZuLT43cy1KKQp6
TUozIXM3ZXU2NFA/YiYjVmhZdCpeQn1zKFEreWptbjRTb3wkIXUzSDtgKXRENHoyJmZgIW1gNWgh
ISQybWZgZ2UKelctOExJUmNDQ2BndV5jU0ZFa3JneEU7dFQ8R1o7bVdabH1oNSN1TT8ydUUma25r
Zkt0aGBIJmM3VEFYdnF9TDhtCnpuVWhyWGoxNjVgbG54MEdxNDwwfE9oe2Z3KmZXMl9aZkYmfUdr
QUc9VWtoQWdqTVpTbD9ASSpHbUhEWGVXR3Z5JQp6VyFQflNvKyVxRj13K0FmY15KPkcpSVFNRj51
floyemR7XjwmUTgqYiQtdnReQlM2ZlJYUD1jYSR9RWRQX3o9MnYKemVXdjdvMDYpZ0dGO0w1XmhH
amk/eEk1JmdyS19fKyF9PWNpMmh3YDxPek5uYzwkMDVeekwpZyFDKnUqZmo5PSlaCnpTS3hVJSkm
KFNQVEgjNWUhRCtLbCNGdFFZSE9NN3dEISMzTXJ+Wk18Ri1gUmhwXnNtT1pkak9aeWtfYzFJN3hU
bwp6TnJAdTlFMHdkS1hmVllAYXR5Tzs4TV8hOGpHaXdFNjtTcXVGTFEyci1YMjVKcE8pWClmPm91
ZjBqY09gQlN+VCMKejNVPk5waDswLWZ3YW5CK08taVdfU1hEbDshKTVMKHtOZHMwJX1zTiR2enZe
by1tOWVraWQ0JFppaH1Me3dyR2JXCno+TEFsbGNWU1U8bTwhOyNUWEFPWHViKStOXj0yfiZHZCNX
ZVpDUjBveVowK3g8WmQ8WXc+T3VyUmplT1hsZz87Mwp6RTd2Nk1qZ1BNZiU5T0N0KlVCe04+eiZ+
R01xQjZtUzJyP2kmKiRVcCZnc3R0dCR4fWohVGY0WlBwV15vKXNLeFYKek4hSTkpKlBYNlM1cnR0
ZiV+SHhXdU9FJH1pZGs0X2xnfS1Ae1EwWmwoZnZnQ2A7VjIyJjUyIUVWbSRRbm1veW5PCnptVmoz
ZEA2UzszMmBUUkdicVV8TnVON0lYK08lUWZJMU9GRjZaRSFvVC1kJSY3PFQwd0VMa0g8bERFTU0t
M2JMawp6UFFXZ2gldFE9a0tOeHkwelA3THooUXg8ZT9BcyYhQXR4aSYpPTJ7WG5yMClYWEtDWCVs
O05SU1Z8K2ZVNClNaHcKelJtYntzbVF4ZkFpPndRQUJrc3szS29RUj4+dGNDKWxaU3Nid2tKbTtf
N2twem10KmdPITQ4PS1hQyhQNzY5ZXE0Cnp0RXRQNU44ZSp5Pl8qVkx6QjxJSEtjMmd6XmA/Qn04
U2JARUNIRHR3ej5PRV9UVHcwQiVJWkFpcE9VQVFhcHVXOwp6IXshUCRERil2Z3IqK2YxWGRrbncj
T3Brcml3P1pULWp4UXk/WkYycFp7ZlYqSU03ezZlaj0hZ0koTT5rVlFaRnQKentNa0M8VnQhbzgk
dz9HSE5RQTwpMFJOX0lzOXJTbik5QzJZQDNyT2tKO0l6TnMkK3JHRGg0WW5jYjU4el9uKW1QCnpF
RjYpRUFWa1E/NjRBKVE2az1JMyFiR19YKU9NLU0tYkhyRiZEWlooU3xgbTU7YjxHYTw4Kzh+KGt0
LTdSbzR2Sgp6VGkqIVJCcWpRKkkpNC18LTZPbmxlbC00JGVwUiVuX3tye3pWdHtET212IzR6Umdl
N1h2MilNaWk/ZlBGYExHdWUKenhScnVXLTB3cn1xVSM1fCRNSSNaT3t3OTNLSTsod0lsMWFoMj1U
cmN6SiVSLV9PTVJMb2R0RXxlZWt0UndAWHNgCnpqPmBiTWslTmdkTGJ5IzZzayVMQ3VvWCVkPERV
ZSMqVmdKem1EaEk4RF5wdWxUPzwwanVjNE9jYEFDKDFLY3spRQp6N3FpPGwxKWh0QkZFaUA7cUFt
MysrWHE4bm4oKnV+bmlqJiM0KTVKWmhvOGlnKHU5eVNAOTlvU1VwfWo8ISRGMFEKejBHMVleYXBz
cCFadlJYMks2blJEez1GRT9uQmQoRHcpREc/PmQrc2xLd2VKYCtve05BN1BkKzxkcTNjY24hbDNU
CnpBJDQ9WXBfYjJ1X25JcDw9SXRzSkhvTHlGeCUxKEBQeUBed2RycSQ3RGpjdihWUVNTUXFCN0pl
MEteam0kOGk3Nwp6RVpPYGlvY1FaLUY9PX42Jn5mIypjI1FZOCo5WDwyYGpibHpFanV7Qyk8OWpR
Ukx+P2EmdjE/MyMpeG5YKWtEUXUKenhXPWcqJlJSQD0zVGVFIWJ4MDhwcG5JYFcwaF5vYWQkP0oh
a2dGYz8jTT9CYzEyPT42JFA0N2A+eSU5fVBoPkhBCnpPcjNgbmomd2dEWkw7Vz91XnsyISlsIT9C
STVobkR7X09NYktsX1p7NldfWWJ4dDN7R0tmTF5kNll8YHpAZmxpMgp6aWMha25XaUNKenhxeTkx
QUNvcld5ZW0oYW1mdk5KTnAhZkNkQEVHQ2AhKyRiZWwjNWJeSjRJUykhdShwRWklN3YKemRYO2Fl
MFAmRVhAcH1vZFJzZE01ZGtSaFpTKVRpMWFuV3p0VnBtPmN1WmREa0woP0QzJjdrd00ja258Yj4x
RFlxCnpkQVpVOERZVTE/SEA/Ynw5JSRecylCc2JPMjY3TDk3NC1Kbm5nflloVmo3ckhieEApJkdt
NiQ9NisxU3FxJkFndQp6R3hXS1gyZVUrK0lVZTxDb1h0P0tPKVV8ej1RbVU2dkYhcTdQM0hEPCpY
VDVEWjIoRksxRzFPaWN1cmFYbXhtb1gKempkYEZKYjRMSGdIT0t4SjExRXVGRnZSMF5uOStGWkl1
Zjk1eEorSTg7VnNYX20yUzkjbiVNUUg2cGVRdFN2YkFeCnpmRCQlSDdCRjNCU1g+TUBLTlduRl5C
ODE5NiZ1cGkzVncrSnEpREQpdEtBZmprPSF+M3I0VEFBSlBQREYte0NUfAp6TlM+WDdLNT8/N3hm
IyhjcnUoOTk7eThtT2xvdCViYWEqVGg8cSpJSFFOX1JTUXpyRntlS2hoKGhyb1FXXiQ2T1AKemtH
PyUkZWUwISlvKno+QSl8Kk1sI3p8c3IlXilrelJVIXVzWSlmZXIhKFJ1NmI1PE07OGhyN1FGdjYl
RmFBcUd8CnpKKDghPE1Ubj1uaH03eiRIY2JGYjMmKWBxYjRsa2U9YmBjU3l9KmVDI0QxM1FJenZG
ZHJgKHotPzNHWDlKYUBtKwp6PUZ6NEs1KklhWEI+ZH5oPl9uX01jTT5XM1o3Sip5YVpJck0jKTRZ
a3JUPzMkaz9FOExTLTRTODkrOFRSRV4pSD4KejY7fDRER0IpPVklb0YzUDlqdSEreGB6Yn5HOVds
LUNBQkpKRW1aaHdTdHkmWXJTdHRsKiN7Wm5QezgmQSReclZmCno0ZmFmNHdEMEpZQ34/cj5GfG9a
R0pFR0khKnZZJkRWZjxBMkQlfkRnanRhYTIyezxKVShqQ2pwbj9haSokKHJZKQp6Z3k9bj1sfXNv
e2JUTGN6dGU4RilRd3FfKEt3SjtZQElhVTx1LWR9fkxAOVMlam42a3k7XylHeUtwbDEmSmVFcHoK
ejx+UVZkXlZnVlFreWZJfXRfaDE4Z21CSyVPMHZjUlJRWDZZS1Q/bVEyOGhEbzM+Pyh6Knt7Mzc8
bypoIyZnV3ohCnpkUW9BS0ZuKnxvWWpweCFLQWhsZlR2d0R1eThpQTNpfThmSnBjO0EpKmdKaXI3
dD14bFJUUVVFWUx4TDcqeUxfYAp6NjdXJXNXc3hpe25Hbjl9XktKSHRDbWJ7WTBlVjd6IVphM20+
UURVeHgxQU1YQEdoeXxefk1aM0x+Q0RvXzFSRUQKenRveiRWKGhNRVRKR3Y5fjg2Y3VLYmJsbjM4
QWBuR0hrTWUpXmZ9fGU/IzJCeysmWTNuejhnViVEZD1XOWNEdk90CnpqYCNLclZkMzQ2T1BEJHxD
JHs2JjhIRjtOZH0tZzBhQm03UXk3WENySUJCKW44Uz5JMVd4bjxke2FlYjxESW1tTAp6eV9Wfm5i
NEghJEExdHV6Y3Umd2plSGVaPmMlXmM/TnViJXY7e3k8IU1qM14lWHp4MFhrRGBmR0g2bV5WdXF3
c2cKejh0VGU3VTdBZUtPKH4hcShLJkRvVEI0b2VUMD9aekVIfjtOPjRTUUlqJXBebDhtb3ZlZWVp
cTQ2S3VjMUZ4Pzc8CnphNkVoPTk8c01IN0JCQnFnbXI7Xk5QfFlfUE1yQHFQeHQ0PVlVNjdOeEIx
PlFDWTs2PkBAfFNtUkpsMUxXSU9FYgp6S3NRKmYxc3Iwb2JuJlJFZ0ElWGphP2V9alZ3JWQjeEIz
TVJ5bD5FQE9XZXV9KEp+PW1MZ2QzVzEwN34rIzlTQEcKemcmVFFUMDI9JWlqcDQ5P0owUEN2VFJL
fiY8YCF9QDdmaHRPPTdSMXVHaTNtYjBxMldyaXI9MiN2JFotTSRXJm4rCnpsTj8ydSFQZjdJbEVr
UEVBc2lEKUo5PW91WXQ2cj5YdjYyQTdQT093Oz4yPkdqUm1Kc29OMDZtaSlCWHJLKXNtQAp6VSN2
cGRuYDtLaGxgTT5zczMqQklkQn0tVV85e3BRKVQ9OW1FP3dYZUsyKGZDMF9qQ1FIN19RQEN0cU80
Q0txJU0KenRCJEBySTg3dE97LUs7eGFYQ3hZSGR8IzVNY3UtcCFFU1Q9bzkoU0JSSHBJR1Rvfisp
ZFdybGVmNEZ5Yl8/PXlKCnpBSy01aDxycUd0I2pwVDItRTs0Izs0U0ZGQGdNfXwtd2Y1TDBtRXJm
WXhqJWFPdF4xJEdQbEF2Qj5sMXRnKXZNPQp6KFleU2FpYiRUMiMrS0l2WU1afUwjOS1WTUJAOWVj
VDxyRUBEZ3EhJjFUQGI/WDZpfVZRTVpUP29geWpiTXA3YigKekQ5QkU8PW5QaUAlfU1BMDBzM1Zr
JiNTQ088cjV8PDtCaXxJNWw0YmgyYWMxIXpMM05NK2RfUzZfcCRlbypPWD8jCnokWlMpJXROayRz
ZCZSSWZpQlc4c0kkTDRRQX40WWp4aFY5SXh8SlNSOFRldXQxOCU4KnV+Y0IqaHpuZz1fO2VQXgp6
KmV7JCl2RWFpQVZaMlA+dSR8ZGRWQkVDVSQpVDc+Wi0tb3FsUzVhMnJgUkVtY2ZnbDFEJVpQQCg/
bHpkKWJ6SisKenR7fV5ye3BHPWNMYXlCYnYoNWtwZGh6Xm81cXZ8NHlEPjZSbkF0LVZOKmBsWCko
P01yWT16TSZAdSorcUxIcVlXCnoyJVhSR0tkcVYrdWNJUmBTd3MzbURZJH5YP3J1TWNgeVRAc2wl
diFCTFgreWgkMko7MHJpWV9wNDlRTUB7NChCJQp6ITYoZUghV2FzJXBMUEE+M0NzZih7OTZ6b2xE
MTZQSjQ1I0kkLV5aRFFhRnZUVE48NzZSYW1JLSsmRGx2TFIwQE4KekdkQ1VaaGdhPn5LREx5WVZZ
flhNaEJYZXpRODR9LVlXdTt6LWM+R18xVX5hNHRfT1UmUGplTlFqQEh+fGdSfGd2CnpQMDNJdmdM
NCt8PitJQ3Y8bUs7I0RhJl52TEZod14oKG1NQE1mM09scUtMdyVhbVRfJkohemd6SUF3eG56WCtr
NAp6TCE7Z1pAQ1hsb3ZheFpaQSlSbmE/RCUyUTBGKkxARHIzenA/QVVUTkN2MCQqbio1V29jSmtm
WWtqZF9nM0UlbUsKenZ9e0xqUXojfipEME0jWkZyYDRJdlNrUGRjN3phTTNENFN1QEhJd0djQXxC
NCs1Qn19NylLfWtAell2ZDRqcXRuCnpESjcxK0ZXYW1NVXxMRXV2RXVNMiFrKTdacmZ2aGRudk4w
M2xfPmwyZzBhTilMT2o5P2ZHbCR7RnVIe3Bpcml4cQp6RHY1c25DPVFFfXFXUEIrVnl1YD4pJmdu
UDVEPzx9b1RiU0w0a3Z4biYjRSRjSVdBY0orakdTY01yPmFjVjg9dloKelB2Z3JiJTN7aDN0Vigr
Y14kMTB0T1dtT2s7YGslPzRvRjlMM2pDTHxrTCYzd0VJcEptP25OI1ZaanMwRVZRbi0oCno0TVJo
KzxmeDF9I3g2eEN4MkdEb0pOPUJHQmc1M1RkdCspeDBANGRXZG1EPmFOWWFrVz1mfTE4RlFES2hf
fSVFcQp6QHxEbEl7bzxIMUBASUZHVTlPRjxLQVN6JWhLZXBQVWZnQD5nd0w+PWU+KmRXRjBHRzA2
bFVzcXk+dDY7T2NWQisKejF0dmg1MmNDfTV3T1M+VFB0Qj00PUg8R2w9N01iTm05SVZmclV8Sigy
QDxrbyFtbUl3SEhWND42Z2NhP0xRNzM9CnptTkRQJERON0kheHtPdG0mRV8lKCF4YSE/ZG8lKCZ5
Xjh8bGFzP3k1e3ZxZDJKbWpnczBQK0BSeDZAZElqMG8yJAp6OzRyQ2E0WXFaXlJtdmtSJFJeViRv
cGdTI2hKdWJKc0BSP2BfdFBBajYoKyghIzYmM2JlcHtoRlUhTSkpbiVCLUEKelM/SXMtP2xieno5
TUVKV1oxJSM8VEFGYjE0VzBZK09Hd2R9MnY4XzQjI15PTDNkOS04MFIoYy1Sb2tvTShSUXtTCnoz
UzF7YDUpYX1IalZIeEBeeGE8aXRCJmQpJGIjVFhOTjthNWVtOXVwWDVicWNYMi1rZ1NmZCE/OFBV
cmpjNHYlNAp6X2UyMVBAKDVSRnA5OSkpajYlbEpAald0eXVPOUhLbX0obngzUCg9WGBeclN9Z2Az
NEg/RGc+JU9eZUFZY35WYjUKekdoJUFebH4jKlFeOEp7dTV6PUhid0h4a3cqa2dgd2AwdWB3Sjl4
VnZVeU4/Y25OOEUxKDNpWVV6N3g5T3ZNfjlqCnopPD9fPG9FUWY0VSh9KTQrSWw1cip2TUxHSyEx
PXoyPDcrJmZFdzBPYmpYP3YkbnBHQzdMSm4qRkslQzR6dWpkSwp6anV6dSUld1hKK1BXRGpfbTt3
QEwmJjdlc2B9Z3czd15HOUd4ST0zMS0+XyVBaSN+VDJYcilKN3VXaXwpPHJDKFkKejZeKn5rejJX
S0hRaCgwens8YGA/IzlfZEhgYjdsU2ZIQVZneTh6SVdJaHB2e2ItYVFWMTZ9Rld0dj8xQ2xrYjkh
CnohXnA7NSZZcFZuY15mP3RLV2YzT15kcG5xVm83THVWK2wzUGNWNjxWbGExfVhOe0pja3JyWV8z
NXI5MS1KezJ3Twp6TllBRHluNyZgUHh5bTwrPS0zKGBhZnhWQDtZNUhPMFh9K1ViMUl5UD9jc2c3
VjsxXmI2S2FDO28jWG8ycXo4WGkKemteP1hwMlVDX35QM0IlVVp8NDU5RjI8flFzSzJrJENSIXJ+
aCowd0gmfW5sVlJSfiY0eGtLWDh1eG1NQ1hjPjloCnpKYXVifm1gLW48WnFNbDloO2Q9P1ppPnol
Ynk0YyhELVFRNmUoTFdRYUIwPE5WQFZrM0syJkhsMVZsOUUzb25oTwp6NFg4QX09T3IoO19FcWQ/
dWVGd1EtNkUrYENEfnJmejdpU1hwUGpfMlk8fn1MPVFAK1V7aXVWODdjJGBicTVtRmsKelJpcDIh
UDw9LT4qKmsldzxUKWw3ZWJaXnpgKk9iSCk3V2kzYVZDI20kazRgekpDVUtxWGY1aFZFejR4Zj9C
YGlLCnphJE9lc0lEaytZX0ZIR3t3XlhqVnJJc2VfKCVXMF9wO2IzPjw3enE0bXBva0crbz5xZmlW
b0M1Jn18Z35rN1JWPAp6UX1yPFRqWTZENE5gPHhFJmZJTDdPc2UzVykqR3swP0I8UUBUV1hGOUAx
cSE/ZFlPZjV7Kih9NEJ5e2kqVmBYRWUKekEpKjU1KXk4a2w/I3dgTTI3Oz41JipvNWYwYFpIekJP
P3M0NiheelZaWExTWk9hPm9reDdJfkYqOyRNUCVBczhQCnojVFBnXkQ5bFE+NDQtPFZlbCRfdFcm
bndHYkx+RX1Qfm1NKypOYn07WitSeS1BSlUmeW8jQnIoRHV2b1dWV05kbQp6Wmo2K0xvNWgkJStC
ZkpBKUxiZVBocX52QSlnbH1qbChYQjl2V097RlpnfExBZmdseVYjR0M7Uk9eOTROVTN0NTAKejE1
Mml5aUpZQkF3TTU0WkU/Yy1tIXIxbUIlRWRxayY4Vn5sTWhgSiNPPkVmMSpwUkFoST5EJTc9PFFi
cDlTZHI5Cnp3WSpDNUVteElpY3w0d3xASnY5VlI+R3xqbTVme0lTJC0ka3tjWT5SWjxMI3BgfVps
R1o5PnFPUVZeKmkpNGw7bQp6ZkBVYUhUXztLNF5gUkN+bjA0U1JyOypVbG9sbUVkc2YkaF8hVWhl
eDFidTRMPWE7WHVoRFJCKUByX3NzckwqSGkKenc7IzhGOE9IO2p0SXxYIUx+Q09HKSVkTUxzMzJG
UGAxYTA4b2NyS0hPYkc8bT1NLW0xeWhIX0xYPkVTTiZ8cTwwCnp6QClsI2J8dHRsPVN+SHleRUw4
OXk3TzlMcVpFNDVjejEyVmM7aXJWYV8lJmVlallQPSZrNGg9PGZ+dCExYUt3YQp6QVglQVdhVHlz
XyQxY31yUFczR1dWKVNVSihGNEFOd3FwIWhiVzJzOEM/KEZ5PXRaVnZpNHNFXktKdmlEMXxfPmsK
ejF2PVFiQkhVKUphYSl2blhXLXhyP2M4RmBSNm81fFlrTV97IXFVdTN2OGxNQWR8WUcwJD8pKH5R
N0Z2OTVJV21rCnpeOTI0R0RfTVdESFMjO0xSPEBjYGY3fEQwPnlWPStLTm45Rk1gIVNCfDEyenRv
Q3pRYEQ/WiF1WU5heFg+PjFVcwp6alB7Snp0eyU5SWUtVitMU1V5PHpudFV0fll5TVpDRCNuPUYk
KXZMdWAkU154S3NPR2d2JXpeSUV7UHh3bFdjc2wKemchfU04UjtUQ1ZtWmRxSigjQjR+XiE+JFdH
U2VofVZPbHtzRTI1M2NJKmhhdUtYb0pIc0wwNjNMYi1TZD49U09+CnpnfWp8X3laPlNBRTZaPldv
VlJxcVpLdUxfdkUrISVjSVFDLSh4SjR6QFVAY2RrTXBhVktBWTxkS3ZMNSVIQnVfQQp6eGEzbjJz
RzAxP29LSClXY2RoUVpIPTtVLXVpS3hmdEJjVSspVSFiPzh1KUVle1J2R0NIPVA7KmtfSj5vWDtW
fSkKekt4bkFVZTA+eT44TzZLazdDRUJWdU5xVTxxNHtYfXZZSWtKVSh9NTVIX3IhcHJGZjF7dktP
OEs9dENBNkBDZzZECnokTlA+O1dhbHN9RDNXMyttfVh0VDtoO0VeOWAqYTFNTm1tPHQ7bGpMUCtO
U3JIQyhXYj5qdXRTPXZjQ1kkaXl0dgp6LTtNN1VSaitFQ0hLRDd4el9lKzMyNUQoYzxlMmVFdDFR
eW5jIXtYMTNnYnU9dEVWcl40OzQ9aStVVnl+TVpaLXsKeiUybUkqSXpGZzlHMXAxbENuYnlKPChS
amt5VzF0S2VXKThsTFhhYmdmNVYwTG1ncXJ3REcmbXQwOUdZaHRRXkclCnpVYnk3cHQmRHkpTTVQ
KHlDa1BvKl5+bmVCI2ZeWihZTHJAdTBBVTAtQUVGe2F1bytZV2dtOUNyeGBuVTx7QGtIcwp6MEVZ
KXN7dVR1QXBHKSl0ZlZnMSg2IVdpKGRwOVktJmshKmtCfHZ7SjtjV29GdyY4N29gLV5TfnNFQ19q
LUxMKikKenBgSGRyTkUqZm9mQ3VSSzszdXtnbzR2RVl7ck5Raj0jb0xYN3JWVjxWcmdwPl4heExa
bjFZT3xeakFyZiEyYmZFCkNgXmlpSQoKbGl0ZXJhbCAwCkhjbVY/ZDAwMDAxCgpkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vaW9zL2Zhc3QvYXR0YWNobWVudC9hdHRhY2htZW50LXRo
dW1ibmFpbC1wcmVzZXJ2ZXMtYXNwZWN0LXJhdGlvLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3Rz
L3BsYXRmb3JtL2lvcy9mYXN0L2F0dGFjaG1lbnQvYXR0YWNobWVudC10aHVtYm5haWwtcHJlc2Vy
dmVzLWFzcGVjdC1yYXRpby1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uOGNjZGM2OTRlMTRmZDM4
MWQ0ODU5YzBiN2M5NmJmOTA3ODYyZjczNwotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3Rz
L3BsYXRmb3JtL2lvcy9mYXN0L2F0dGFjaG1lbnQvYXR0YWNobWVudC10aHVtYm5haWwtcHJlc2Vy
dmVzLWFzcGVjdC1yYXRpby1leHBlY3RlZC50eHQKQEAgLTAsMCArMSBAQAorQXR0YWNobWVudCBU
aHVtYm5haWw6IDQwMHgyMDAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy1j
YXRhbGluYS9mYXN0L2F0dGFjaG1lbnQvYXR0YWNobWVudC10aHVtYm5haWwtcHJlc2VydmVzLWFz
cGVjdC1yYXRpby1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMtY2F0YWxp
bmEvZmFzdC9hdHRhY2htZW50L2F0dGFjaG1lbnQtdGh1bWJuYWlsLXByZXNlcnZlcy1hc3BlY3Qt
cmF0aW8tZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjNlZDNmNjA2OGZiZDkwMWE3YmMzNjYwOTIx
MmRmN2NlZjcyZThjYzIKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9t
YWMtY2F0YWxpbmEvZmFzdC9hdHRhY2htZW50L2F0dGFjaG1lbnQtdGh1bWJuYWlsLXByZXNlcnZl
cy1hc3BlY3QtcmF0aW8tZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEgQEAKK0F0dGFjaG1lbnQgdGh1
bWJuYWlscyBub3Qgc3VwcG9ydGVkLgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvcmVzb3VyY2Vz
L3VpLWhlbHBlci5qcyBiL0xheW91dFRlc3RzL3Jlc291cmNlcy91aS1oZWxwZXIuanMKaW5kZXgg
NDdiZmQ0NTJhZjIzNGFmZTFjMmM2NDRiMmRkOGQwYWJhOWQ0YzZiMC4uMjU0OTNlY2I4ZDMzMTBl
MWQ5Yjc2ZTQwMGUzYzhmZjczMWZmMjU4YSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvcmVzb3Vy
Y2VzL3VpLWhlbHBlci5qcworKysgYi9MYXlvdXRUZXN0cy9yZXNvdXJjZXMvdWktaGVscGVyLmpz
CkBAIC0xMDAyLDYgKzEwMDIsMTkgQEAgd2luZG93LlVJSGVscGVyID0gY2xhc3MgVUlIZWxwZXIg
ewogICAgICAgICB9KTsKICAgICB9CiAKKyAgICBzdGF0aWMgaW5zZXJ0QXR0YWNobWVudEZvckZp
bGVQYXRoKHBhdGgsIGNvbnRlbnRUeXBlKQorICAgIHsKKyAgICAgICAgaWYgKCF0aGlzLmlzV2Vi
S2l0MigpKQorICAgICAgICAgICAgcmV0dXJuIFByb21pc2UucmVzb2x2ZSgpOworCisgICAgICAg
IHJldHVybiBuZXcgUHJvbWlzZShyZXNvbHZlID0+IHsKKyAgICAgICAgICAgIHRlc3RSdW5uZXIu
cnVuVUlTY3JpcHQoYAorICAgICAgICAgICAgICAgIHVpQ29udHJvbGxlci5pbnNlcnRBdHRhY2ht
ZW50Rm9yRmlsZVBhdGgoJyR7cGF0aH0nLCAnJHtjb250ZW50VHlwZX0nLCBmdW5jdGlvbigpIHsK
KyAgICAgICAgICAgICAgICAgICAgdWlDb250cm9sbGVyLnVpU2NyaXB0Q29tcGxldGUoKTsKKyAg
ICAgICAgICAgICAgICB9KTtgLCByZXNvbHZlKTsKKyAgICAgICAgfSk7CisgICAgfQorCiAgICAg
c3RhdGljIHNldE1pbmltdW1FZmZlY3RpdmVXaWR0aChlZmZlY3RpdmVXaWR0aCkKICAgICB7CiAg
ICAgICAgIGlmICghdGhpcy5pc1dlYktpdDIoKSkK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>408211</attachid>
            <date>2020-09-07 21:49:18 -0700</date>
            <delta_ts>2020-09-08 10:21:32 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-216209-20200907214917.patch</filename>
            <type>text/plain</type>
            <size>35341</size>
            <attacher name="Tim Horton">thorton</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjY2NjE2CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMjE5N2YyMTY0ZDVmYTQ2
ZTYzMmQ0YjIwMDhmNjVmNjU4NTY2MmMyMC4uOWRlZTc4ODE4NGE1Y2M1YWFiZWQxYjBiOWUwZjU4
YmIyZTAzOTFmZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI0IEBACisyMDIwLTA5LTA0ICBUaW0g
SG9ydG9uICA8dGltb3RoeV9ob3J0b25AYXBwbGUuY29tPgorCisgICAgICAgIGlPUzogPGF0dGFj
aG1lbnQ+J3MgUXVpY2tMb29rIHRodW1ibmFpbHMgY2FuIGFwcGVhciBzcXVpc2hlZAorICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjE2MjA5CisgICAgICAg
IDxyZGFyOi8vcHJvYmxlbS82NzgxNzcwNj4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkg
KE9PUFMhKS4KKworICAgICAgICBUZXN0OiBmYXN0L2F0dGFjaG1lbnQvYXR0YWNobWVudC10aHVt
Ym5haWwtcHJlc2VydmVzLWFzcGVjdC1yYXRpby5odG1sCisKKyAgICAgICAgKiBodG1sL0hUTUxB
dHRhY2htZW50RWxlbWVudC5pZGw6CisgICAgICAgICogdGVzdGluZy9JbnRlcm5hbHMuY3BwOgor
ICAgICAgICAoV2ViQ29yZTo6SW50ZXJuYWxzOjphdHRhY2htZW50VGh1bWJuYWlsSW5mbyk6Cisg
ICAgICAgICogdGVzdGluZy9JbnRlcm5hbHMuaDoKKyAgICAgICAgKiB0ZXN0aW5nL0ludGVybmFs
cy5pZGw6CisgICAgICAgIEV4cG9zZSB0aGUgYXR0YWNobWVudCB0aHVtYm5haWwgc2l6ZSB2aWEg
SW50ZXJuYWxzLgorCisgICAgICAgICogcmVuZGVyaW5nL1JlbmRlclRoZW1lSU9TLm1tOgorICAg
ICAgICAoV2ViQ29yZTo6UmVuZGVyQXR0YWNobWVudEluZm86OlJlbmRlckF0dGFjaG1lbnRJbmZv
KToKKyAgICAgICAgQWxsb3cgdGhlIHRodW1ibmFpbCBhc3BlY3QgcmF0aW8gdG8gdmFyeSwgaW5z
dGVhZCBvZiBhc3N1bWluZyBpdCBpcyBhbHdheXMgc3F1YXJlLgorCiAyMDIwLTA5LTA0ICBDaHJp
cyBEdW1leiAgPGNkdW1lekBhcHBsZS5jb20+CiAKICAgICAgICAgUkVHUkVTU0lPTihtYWNPUyBC
aWcgU3VyKSBodHRwczovL21hZ2VudGEuZ2l0aHViLmlvL2xvZmktcGxheWVyLyBpcyBicm9rZW4K
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nIGIvU291cmNlL1dlYktpdC9DaGFu
Z2VMb2cKaW5kZXggOTQ5MTFkODk2MjUxYWU3Y2E2NTg1ODc0YzUyMGFiODg2ZmFlYjliMy4uYmY3
YjA3NDE1MDE4NGYzM2U0ZGE4MWI3NDhhMzA2NWVmMzgyY2FkOCAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYktpdC9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cKQEAgLTEsMyAr
MSwyMiBAQAorMjAyMC0wOS0wNCAgVGltIEhvcnRvbiAgPHRpbW90aHlfaG9ydG9uQGFwcGxlLmNv
bT4KKworICAgICAgICBpT1M6IDxhdHRhY2htZW50PidzIFF1aWNrTG9vayB0aHVtYm5haWxzIGNh
biBhcHBlYXIgc3F1aXNoZWQKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19i
dWcuY2dpP2lkPTIxNjIwOQorICAgICAgICA8cmRhcjovL3Byb2JsZW0vNjc4MTc3MDY+CisKKyAg
ICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBVSVByb2Nlc3Mv
Q29jb2EvV2ViUGFnZVByb3h5Q29jb2EubW06CisgICAgICAgIChXZWJLaXQ6OmNvbnZlcnRQbGF0
Zm9ybUltYWdlVG9CaXRtYXApOgorICAgICAgICBQcm9wYWdhdGUgYW4gaW1hZ2Ugb2YgdGhlIHNh
bWUgYXNwZWN0IHJhdGlvIHRoYXQgUXVpY2tMb29rIHByb3ZpZGVkLAorICAgICAgICBpbnN0ZWFk
IG9mIHNxdWlzaGluZyBpdCB0byBzcXVhcmUuCisKKyAgICAgICAgKiBVSVByb2Nlc3MvUXVpY2tM
b29rVGh1bWJuYWlsTG9hZGVyLm1tOgorICAgICAgICAoLVtXS1FMVGh1bWJuYWlsTG9hZE9wZXJh
dGlvbiBzdGFydF0pOgorICAgICAgICBPbmx5IHJlcXVlc3QgZnVsbCB0aHVtYm5haWxzOyB3ZSBk
byBub3Qgd2FudCB0aGUgaWNvbiBmb3JtLCBzaW5jZSA8YXR0YWNobWVudD4KKyAgICAgICAgYWxy
ZWFkeSBoYXMgb25lIHdpdGhvdXQgUXVpY2tMb29rJ3MgaGVscDsgaWYgd2UgY2FuJ3QgZ2V0IGEg
ZnVsbCB0aHVtYm5haWwsCisgICAgICAgIHdlJ2xsIGp1c3QgbGVhdmUgaXQgYWxvbmUuCisKIDIw
MjAtMDktMDQgIFBlciBBcm5lIFZvbGxhbiAgPHB2b2xsYW5AYXBwbGUuY29tPgogCiAgICAgICAg
IFttYWNPU10gQWRkIGNsaWVudCBkZWNvZGVyIGVudGl0bGVtZW50CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9odG1sL0hUTUxBdHRhY2htZW50RWxlbWVudC5pZGwgYi9Tb3VyY2UvV2ViQ29y
ZS9odG1sL0hUTUxBdHRhY2htZW50RWxlbWVudC5pZGwKaW5kZXggNTIyZTI1N2FhZmQ3ZWQ4ZWMx
M2JhMWJkNWYxZDA1ZTRhY2E1MzJiZi4uZTc0YTE3YWI1Mjk2Y2UxNWJkYTAzZjcwZTBjNDQ4YjY4
ZWRhY2UxNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MQXR0YWNobWVudEVs
ZW1lbnQuaWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTEF0dGFjaG1lbnRFbGVtZW50
LmlkbApAQCAtMjUsNiArMjUsOCBAQAogCiBbCiAgICAgQ29uZGl0aW9uYWw9QVRUQUNITUVOVF9F
TEVNRU5ULAorICAgIEpTR2VuZXJhdGVUb05hdGl2ZU9iamVjdCwKKyAgICBFeHBvcnRNYWNybz1X
RUJDT1JFX0VYUE9SVCwKICAgICBFbmFibGVkQXRSdW50aW1lPUF0dGFjaG1lbnRFbGVtZW50LAog
XSBpbnRlcmZhY2UgSFRNTEF0dGFjaG1lbnRFbGVtZW50IDogSFRNTEVsZW1lbnQgewogICAgIGF0
dHJpYnV0ZSBGaWxlPyBmaWxlOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5n
L1JlbmRlclRoZW1lSU9TLm1tIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlclRoZW1l
SU9TLm1tCmluZGV4IDZmMGY0ODdjNDczZjUyNGM5Y2I4MjkyYmM4MzkyNzRlNTE2MGM2MjYuLjhh
YWNiMTYzY2ViZmIyODgwMThhODFlMTI4ODk3NzU0ZjM0N2EwY2MgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJUaGVtZUlPUy5tbQorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9yZW5kZXJpbmcvUmVuZGVyVGhlbWVJT1MubW0KQEAgLTE2MzcsMTAgKzE2MzcsMTEgQEAgUmVu
ZGVyQXR0YWNobWVudEluZm86OlJlbmRlckF0dGFjaG1lbnRJbmZvKGNvbnN0IFJlbmRlckF0dGFj
aG1lbnQmIGF0dGFjaG1lbnQpCiAgICAgICAgIEZsb2F0U2l6ZSBpY29uU2l6ZTsKICAgICAgICAg
aWNvbiA9IGljb25Gb3JBdHRhY2htZW50KGF0dGFjaG1lbnQsIGljb25TaXplKTsKICAgICAgICAg
dGh1bWJuYWlsSWNvbiA9IGF0dGFjaG1lbnQuYXR0YWNobWVudEVsZW1lbnQoKS50aHVtYm5haWwo
KTsKKyAgICAgICAgaWYgKHRodW1ibmFpbEljb24pCisgICAgICAgICAgICBpY29uU2l6ZSA9IGxh
cmdlc3RSZWN0V2l0aEFzcGVjdFJhdGlvSW5zaWRlUmVjdCh0aHVtYm5haWxJY29uLT5zaXplKCku
YXNwZWN0UmF0aW8oKSwgRmxvYXRSZWN0KDAsIDAsIGF0dGFjaG1lbnRJY29uU2l6ZSwgYXR0YWNo
bWVudEljb25TaXplKSkuc2l6ZSgpOwogICAgICAgICAKICAgICAgICAgaWYgKHRodW1ibmFpbElj
b24gfHwgaWNvbikgewotICAgICAgICAgICAgYXV0byB2aXNpYmxlSWNvblNpemUgPSB0aHVtYm5h
aWxJY29uID8gRmxvYXRTaXplKGF0dGFjaG1lbnRJY29uU2l6ZSwgYXR0YWNobWVudEljb25TaXpl
KSA6IGljb25TaXplOwotICAgICAgICAgICAgaWNvblJlY3QgPSBGbG9hdFJlY3QoRmxvYXRQb2lu
dCgoYXR0YWNobWVudFJlY3Qud2lkdGgoKSAvIDIpIC0gKHZpc2libGVJY29uU2l6ZS53aWR0aCgp
IC8gMiksIDApLCB2aXNpYmxlSWNvblNpemUpOworICAgICAgICAgICAgaWNvblJlY3QgPSBGbG9h
dFJlY3QoRmxvYXRQb2ludCgoYXR0YWNobWVudFJlY3Qud2lkdGgoKSAvIDIpIC0gKGljb25TaXpl
LndpZHRoKCkgLyAyKSwgMCksIGljb25TaXplKTsKICAgICAgICAgICAgIHlPZmZzZXQgKz0gaWNv
blJlY3QuaGVpZ2h0KCkgKyBhdHRhY2htZW50SXRlbU1hcmdpbjsKICAgICAgICAgfQogICAgIH0g
ZWxzZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuY3BwIGIv
U291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuY3BwCmluZGV4IDJjYWFjMGFkNmU4NDdk
Njk0Yjc3YTdiMmRlYzA4ZmU1YzE1ZjQxOTQuLjQzMWM5NjczZTk0YjRlOWQxODI1NDc2MDMyMzM1
OTc4ZDFmMmUyZjMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxz
LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5jcHAKQEAgLTg4LDYg
Kzg4LDcgQEAKICNpbmNsdWRlICJHcmlkUG9zaXRpb24uaCIKICNpbmNsdWRlICJIRVZDVXRpbGl0
aWVzLmgiCiAjaW5jbHVkZSAiSFRNTEFuY2hvckVsZW1lbnQuaCIKKyNpbmNsdWRlICJIVE1MQXR0
YWNobWVudEVsZW1lbnQuaCIKICNpbmNsdWRlICJIVE1MQ2FudmFzRWxlbWVudC5oIgogI2luY2x1
ZGUgIkhUTUxJRnJhbWVFbGVtZW50LmgiCiAjaW5jbHVkZSAiSFRNTEltYWdlRWxlbWVudC5oIgpA
QCAtNjA2NSw0ICs2MDY2LDI0IEBAIHZvaWQgSW50ZXJuYWxzOjpzZXRDb250ZW50U2l6ZUNhdGVn
b3J5KEludGVybmFsczo6Q29udGVudFNpemVDYXRlZ29yeSBjYXRlZ29yeSkKICNlbmRpZgogfQog
CisjaWYgRU5BQkxFKEFUVEFDSE1FTlRfRUxFTUVOVCkKKworRXhjZXB0aW9uT3I8SW50ZXJuYWxz
OjpBdHRhY2htZW50VGh1bWJuYWlsSW5mbz4gSW50ZXJuYWxzOjphdHRhY2htZW50VGh1bWJuYWls
SW5mbyhjb25zdCBIVE1MQXR0YWNobWVudEVsZW1lbnQmIGVsZW1lbnQpCit7CisjaWYgSEFWRShR
VUlDS0xPT0tfVEhVTUJOQUlMSU5HKQorICAgIEF0dGFjaG1lbnRUaHVtYm5haWxJbmZvIGluZm87
CisgICAgaWYgKGF1dG8gaW1hZ2UgPSBlbGVtZW50LnRodW1ibmFpbCgpKSB7CisgICAgICAgIGF1
dG8gc2l6ZSA9IGltYWdlLT5zaXplKCk7CisgICAgICAgIGluZm8ud2lkdGggPSBzaXplLndpZHRo
KCk7CisgICAgICAgIGluZm8uaGVpZ2h0ID0gc2l6ZS5oZWlnaHQoKTsKKyAgICB9CisgICAgcmV0
dXJuIGluZm87CisjZWxzZQorICAgIFVOVVNFRF9QQVJBTShlbGVtZW50KTsKKyAgICByZXR1cm4g
RXhjZXB0aW9uIHsgSW52YWxpZEFjY2Vzc0Vycm9yIH07CisjZW5kaWYKK30KKworI2VuZGlmCisK
IH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3Rlc3Rp
bmcvSW50ZXJuYWxzLmggYi9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5oCmluZGV4
IGExYTg3MWM4OTY4YWI5Y2M0ZGEwMzcwNDg2OGRiMDAyZDhmYTI2MTMuLjM5NzRkZjk3ZmI1OTY2
NmRhYjYyMzI4OWY3NGE0N2YzNGM2ZWY1N2EgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3Rl
c3RpbmcvSW50ZXJuYWxzLmgKKysrIGIvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMu
aApAQCAtNjksNiArNjksNyBAQCBjbGFzcyBGaWxlOwogY2xhc3MgRnJhbWU7CiBjbGFzcyBHQ09i
c2VydmF0aW9uOwogY2xhc3MgSFRNTEFuY2hvckVsZW1lbnQ7CitjbGFzcyBIVE1MQXR0YWNobWVu
dEVsZW1lbnQ7CiBjbGFzcyBIVE1MSW1hZ2VFbGVtZW50OwogY2xhc3MgSFRNTElucHV0RWxlbWVu
dDsKIGNsYXNzIEhUTUxMaW5rRWxlbWVudDsKQEAgLTEwNTgsNiArMTA1OSwxNSBAQCBwdWJsaWM6
CiAgICAgZW51bSBjbGFzcyBDb250ZW50U2l6ZUNhdGVnb3J5IHsgTCwgWFhYTCB9OwogICAgIHZv
aWQgc2V0Q29udGVudFNpemVDYXRlZ29yeShDb250ZW50U2l6ZUNhdGVnb3J5KTsKIAorI2lmIEVO
QUJMRShBVFRBQ0hNRU5UX0VMRU1FTlQpCisgICAgc3RydWN0IEF0dGFjaG1lbnRUaHVtYm5haWxJ
bmZvIHsKKyAgICAgICAgdW5zaWduZWQgd2lkdGg7CisgICAgICAgIHVuc2lnbmVkIGhlaWdodDsK
KyAgICB9OworCisgICAgRXhjZXB0aW9uT3I8QXR0YWNobWVudFRodW1ibmFpbEluZm8+IGF0dGFj
aG1lbnRUaHVtYm5haWxJbmZvKGNvbnN0IEhUTUxBdHRhY2htZW50RWxlbWVudCYpOworI2VuZGlm
CisKIHByaXZhdGU6CiAgICAgZXhwbGljaXQgSW50ZXJuYWxzKERvY3VtZW50Jik7CiAgICAgRG9j
dW1lbnQqIGNvbnRleHREb2N1bWVudCgpIGNvbnN0OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvdGVzdGluZy9JbnRlcm5hbHMuaWRsIGIvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5h
bHMuaWRsCmluZGV4IGUxZGFhM2ExNWQ3NWY1NjM2ZjUzYjYwYzFiZjFiZmI5MWExZGMzOTIuLmQz
ZGUzZDMwMWZmMWMxMGM5MzRlNjM5ODZjNjA3N2ExODQyZGJmYTEgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxzLmlkbAorKysgYi9Tb3VyY2UvV2ViQ29yZS90ZXN0
aW5nL0ludGVybmFscy5pZGwKQEAgLTIzNSw2ICsyMzUsMTUgQEAgZW51bSBDb250ZW50U2l6ZUNh
dGVnb3J5IHsKICAgICBET01SZWN0TGlzdCB0ZXh0UmVjdHNJbkJvdW5kaW5nUmVjdENvb3JkaW5h
dGVzOwogfTsKIAorWworICAgIEV4cG9ydE1hY3JvPVdFQkNPUkVfVEVTVFNVUFBPUlRfRVhQT1JU
LAorICAgIENvbmRpdGlvbmFsPUFUVEFDSE1FTlRfRUxFTUVOVCwKKyAgICBKU0dlbmVyYXRlVG9K
U09iamVjdCwKK10gZGljdGlvbmFyeSBBdHRhY2htZW50VGh1bWJuYWlsSW5mbyB7CisgICAgdW5z
aWduZWQgbG9uZyB3aWR0aDsKKyAgICB1bnNpZ25lZCBsb25nIGhlaWdodDsKK307CisKIFsKICAg
ICBFeHBvcnRNYWNybz1XRUJDT1JFX1RFU1RTVVBQT1JUX0VYUE9SVCwKICAgICBKU0dlbmVyYXRl
VG9KU09iamVjdCwKQEAgLTk2NSw0ICs5NzQsNiBAQCBlbnVtIENvbnRlbnRTaXplQ2F0ZWdvcnkg
ewogICAgIFtDb25kaXRpb25hbD1FTkNSWVBURURfTUVESUFdIHVuc2lnbmVkIGxvbmcgbWVkaWFL
ZXlTZXNzaW9uSW50ZXJuYWxJbnN0YW5jZVNlc3Npb25PYmplY3RSZWZDb3VudChNZWRpYUtleVNl
c3Npb24gc2Vzc2lvbik7CiAKICAgICB1bmRlZmluZWQgc2V0Q29udGVudFNpemVDYXRlZ29yeShD
b250ZW50U2l6ZUNhdGVnb3J5IGNhdGVnb3J5KTsKKworICAgIFtDb25kaXRpb25hbD1BVFRBQ0hN
RU5UX0VMRU1FTlQsIE1heVRocm93RXhjZXB0aW9uXSBBdHRhY2htZW50VGh1bWJuYWlsSW5mbyBh
dHRhY2htZW50VGh1bWJuYWlsSW5mbyhIVE1MQXR0YWNobWVudEVsZW1lbnQgZWxlbWVudCk7CiB9
OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQ29jb2EvV2ViUGFnZVByb3h5
Q29jb2EubW0gYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9Db2NvYS9XZWJQYWdlUHJveHlDb2Nv
YS5tbQppbmRleCA0ZDRmODg3ZWRjOTViMWVkNTc1NzQwZjE5OGJiZTYyYmM2MzNjZWE1Li41YmRl
ZTE5NWVlZTc2YjU2OWY2NjUwYjYwYzYyMmE5OWMwNDViMmJjIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViS2l0L1VJUHJvY2Vzcy9Db2NvYS9XZWJQYWdlUHJveHlDb2NvYS5tbQorKysgYi9Tb3VyY2Uv
V2ViS2l0L1VJUHJvY2Vzcy9Db2NvYS9XZWJQYWdlUHJveHlDb2NvYS5tbQpAQCAtNDMsNiArNDMs
NyBAQAogI2ltcG9ydCAiV2Vic2l0ZURhdGFTdG9yZS5oIgogI2ltcG9ydCAiV0tFcnJvckludGVy
bmFsLmgiCiAjaW1wb3J0IDxXZWJDb3JlL0RyYWdJdGVtLmg+CisjaW1wb3J0IDxXZWJDb3JlL0dl
b21ldHJ5VXRpbGl0aWVzLmg+CiAjaW1wb3J0IDxXZWJDb3JlL0xvY2FsQ3VycmVudEdyYXBoaWNz
Q29udGV4dC5oPgogI2ltcG9ydCA8V2ViQ29yZS9Ob3RJbXBsZW1lbnRlZC5oPgogI2ltcG9ydCA8
V2ViQ29yZS9TZWFyY2hQb3B1cE1lbnVDb2NvYS5oPgpAQCAtNDM1LDEwICs0MzYsMTQgQEAgdm9p
ZCBXZWJQYWdlUHJveHk6OnJlbW92ZU1lZGlhVXNhZ2VNYW5hZ2VyU2Vzc2lvbihXZWJDb3JlOjpN
ZWRpYVNlc3Npb25JZGVudGlmaWUKIAogI2lmIEhBVkUoUVVJQ0tMT09LX1RIVU1CTkFJTElORykK
IAotc3RhdGljIFJlZlB0cjxXZWJLaXQ6OlNoYXJlYWJsZUJpdG1hcD4gY29udmVydFBsYXRmb3Jt
SW1hZ2VUb0JpdG1hcChDb2NvYUltYWdlICppbWFnZSwgY29uc3QgV2ViQ29yZTo6SW50U2l6ZSYg
c2l6ZSkKK3N0YXRpYyBSZWZQdHI8V2ViS2l0OjpTaGFyZWFibGVCaXRtYXA+IGNvbnZlcnRQbGF0
Zm9ybUltYWdlVG9CaXRtYXAoQ29jb2FJbWFnZSAqaW1hZ2UsIGNvbnN0IFdlYkNvcmU6OkludFNp
emUmIGZpdHRpbmdTaXplKQogeworICAgIEZsb2F0U2l6ZSBvcmlnaW5hbFRodW1ibmFpbFNpemUo
W2ltYWdlIHNpemVdKTsKKyAgICBhdXRvIHJlc3VsdFJlY3QgPSByb3VuZGVkSW50UmVjdChsYXJn
ZXN0UmVjdFdpdGhBc3BlY3RSYXRpb0luc2lkZVJlY3Qob3JpZ2luYWxUaHVtYm5haWxTaXplLmFz
cGVjdFJhdGlvKCksIHsgeyB9LCBmaXR0aW5nU2l6ZSB9KSk7CisgICAgcmVzdWx0UmVjdC5zZXRM
b2NhdGlvbih7IH0pOworCiAgICAgV2ViS2l0OjpTaGFyZWFibGVCaXRtYXA6OkNvbmZpZ3VyYXRp
b24gYml0bWFwQ29uZmlndXJhdGlvbjsKLSAgICBhdXRvIGJpdG1hcCA9IFdlYktpdDo6U2hhcmVh
YmxlQml0bWFwOjpjcmVhdGVTaGFyZWFibGUoc2l6ZSwgYml0bWFwQ29uZmlndXJhdGlvbik7Cisg
ICAgYXV0byBiaXRtYXAgPSBXZWJLaXQ6OlNoYXJlYWJsZUJpdG1hcDo6Y3JlYXRlU2hhcmVhYmxl
KHJlc3VsdFJlY3Quc2l6ZSgpLCBiaXRtYXBDb25maWd1cmF0aW9uKTsKICAgICBpZiAoIWJpdG1h
cCkKICAgICAgICAgcmV0dXJuIG51bGxwdHI7CiAKQEAgLTQ0OCw5ICs0NTMsOSBAQCBzdGF0aWMg
UmVmUHRyPFdlYktpdDo6U2hhcmVhYmxlQml0bWFwPiBjb252ZXJ0UGxhdGZvcm1JbWFnZVRvQml0
bWFwKENvY29hSW1hZ2UgKgogCiAgICAgTG9jYWxDdXJyZW50R3JhcGhpY3NDb250ZXh0IHNhdmVk
Q29udGV4dCgqZ3JhcGhpY3NDb250ZXh0KTsKICNpZiBQTEFURk9STShJT1NfRkFNSUxZKQotICAg
IFtpbWFnZSBkcmF3SW5SZWN0OkNHUmVjdE1ha2UoMCwgMCwgYml0bWFwLT5zaXplKCkud2lkdGgo
KSwgYml0bWFwLT5zaXplKCkuaGVpZ2h0KCkpXTsKKyAgICBbaW1hZ2UgZHJhd0luUmVjdDpyZXN1
bHRSZWN0XTsKICNlbGlmIFVTRShBUFBLSVQpCi0gICAgW2ltYWdlIGRyYXdJblJlY3Q6TlNNYWtl
UmVjdCgwLCAwLCBiaXRtYXAtPnNpemUoKS53aWR0aCgpLCBiaXRtYXAtPnNpemUoKS5oZWlnaHQo
KSkgZnJvbVJlY3Q6TlNaZXJvUmVjdCBvcGVyYXRpb246TlNDb21wb3NpdGluZ09wZXJhdGlvblNv
dXJjZU92ZXIgZnJhY3Rpb246MSByZXNwZWN0RmxpcHBlZDpZRVMgaGludHM6bmlsXTsKKyAgICBb
aW1hZ2UgZHJhd0luUmVjdDpyZXN1bHRSZWN0IGZyb21SZWN0Ok5TWmVyb1JlY3Qgb3BlcmF0aW9u
Ok5TQ29tcG9zaXRpbmdPcGVyYXRpb25Tb3VyY2VPdmVyIGZyYWN0aW9uOjEgcmVzcGVjdEZsaXBw
ZWQ6WUVTIGhpbnRzOm5pbF07CiAjZW5kaWYKIAogICAgIHJldHVybiBiaXRtYXA7CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9RdWlja0xvb2tUaHVtYm5haWxMb2FkZXIubW0g
Yi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9RdWlja0xvb2tUaHVtYm5haWxMb2FkZXIubW0KaW5k
ZXggZTgwMTg4YjkwYjIyZmY2YWE3OTg2MDAzNDNjYjBjY2NhZTNkNmU2NS4uNWMxYTA3N2MzZTZl
YTFiNmMxNWE0ZmQ2OWI1MzQ4OWUxYmU5ZjJhZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9V
SVByb2Nlc3MvUXVpY2tMb29rVGh1bWJuYWlsTG9hZGVyLm1tCisrKyBiL1NvdXJjZS9XZWJLaXQv
VUlQcm9jZXNzL1F1aWNrTG9va1RodW1ibmFpbExvYWRlci5tbQpAQCAtMTA3LDcgKzEwNyw3IEBA
IC0gKHZvaWQpc3RhcnQKICAgICAgICAgICAgIHJldHVybjsKICAgICB9CiAKLSAgICBhdXRvIHJl
cXVlc3QgPSBhZG9wdE5TKFtXZWJLaXQ6OmFsbG9jUUxUaHVtYm5haWxHZW5lcmF0aW9uUmVxdWVz
dEluc3RhbmNlKCkgaW5pdFdpdGhGaWxlQXRVUkw6X2ZpbGVQYXRoLmdldCgpIHNpemU6Q0dTaXpl
TWFrZSg0MDAsIDQwMCkgc2NhbGU6MSByZXByZXNlbnRhdGlvblR5cGVzOlFMVGh1bWJuYWlsR2Vu
ZXJhdGlvblJlcXVlc3RSZXByZXNlbnRhdGlvblR5cGVBbGxdKTsKKyAgICBhdXRvIHJlcXVlc3Qg
PSBhZG9wdE5TKFtXZWJLaXQ6OmFsbG9jUUxUaHVtYm5haWxHZW5lcmF0aW9uUmVxdWVzdEluc3Rh
bmNlKCkgaW5pdFdpdGhGaWxlQXRVUkw6X2ZpbGVQYXRoLmdldCgpIHNpemU6Q0dTaXplTWFrZSg0
MDAsIDQwMCkgc2NhbGU6MSByZXByZXNlbnRhdGlvblR5cGVzOlFMVGh1bWJuYWlsR2VuZXJhdGlv
blJlcXVlc3RSZXByZXNlbnRhdGlvblR5cGVUaHVtYm5haWxdKTsKICAgICBbcmVxdWVzdCBzZXRJ
Y29uTW9kZTpZRVNdOwogICAgIAogICAgIFtbV2ViS2l0OjpnZXRRTFRodW1ibmFpbEdlbmVyYXRv
ckNsYXNzKCkgc2hhcmVkR2VuZXJhdG9yXSBnZW5lcmF0ZUJlc3RSZXByZXNlbnRhdGlvbkZvclJl
cXVlc3Q6cmVxdWVzdC5nZXQoKSBjb21wbGV0aW9uSGFuZGxlcjpeKFFMVGh1bWJuYWlsUmVwcmVz
ZW50YXRpb24gKnRodW1ibmFpbCwgTlNFcnJvciAqZXJyb3IpIHsKZGlmZiAtLWdpdCBhL1Rvb2xz
L0NoYW5nZUxvZyBiL1Rvb2xzL0NoYW5nZUxvZwppbmRleCA4ZDIyZGE5NzgxNTI1NDg0MzY2OTMw
ZjgwNGQ5MzYzZjBlMzc0ZDY0Li45ZGM0ODg5OWY1NzkxODRhY2MzN2YxZDNkZmM0Y2FlNDBjZjhk
ZmUzIDEwMDY0NAotLS0gYS9Ub29scy9DaGFuZ2VMb2cKKysrIGIvVG9vbHMvQ2hhbmdlTG9nCkBA
IC0xLDMgKzEsMjMgQEAKKzIwMjAtMDktMDQgIFRpbSBIb3J0b24gIDx0aW1vdGh5X2hvcnRvbkBh
cHBsZS5jb20+CisKKyAgICAgICAgaU9TOiA8YXR0YWNobWVudD4ncyBRdWlja0xvb2sgdGh1bWJu
YWlscyBjYW4gYXBwZWFyIHNxdWlzaGVkCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3Jn
L3Nob3dfYnVnLmNnaT9pZD0yMTYyMDkKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzY3ODE3NzA2
PgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogVGVz
dFJ1bm5lclNoYXJlZC9VSVNjcmlwdENvbnRleHQvQmluZGluZ3MvVUlTY3JpcHRDb250cm9sbGVy
LmlkbDoKKyAgICAgICAgKiBUZXN0UnVubmVyU2hhcmVkL1VJU2NyaXB0Q29udGV4dC9VSVNjcmlw
dENvbnRyb2xsZXIuaDoKKyAgICAgICAgKFdUUjo6VUlTY3JpcHRDb250cm9sbGVyOjppbnNlcnRB
dHRhY2htZW50Rm9yRmlsZVBhdGgpOgorICAgICAgICAqIFdlYktpdFRlc3RSdW5uZXIvVGVzdENv
bnRyb2xsZXIuY3BwOgorICAgICAgICAoV1RSOjpUZXN0Q29udHJvbGxlcjo6Y3VycmVudFRlc3RV
UkwgY29uc3QpOgorICAgICAgICAqIFdlYktpdFRlc3RSdW5uZXIvVGVzdENvbnRyb2xsZXIuaDoK
KyAgICAgICAgKiBXZWJLaXRUZXN0UnVubmVyL2NvY29hL1VJU2NyaXB0Q29udHJvbGxlckNvY29h
Lmg6CisgICAgICAgICogV2ViS2l0VGVzdFJ1bm5lci9jb2NvYS9VSVNjcmlwdENvbnRyb2xsZXJD
b2NvYS5tbToKKyAgICAgICAgKFdUUjo6VUlTY3JpcHRDb250cm9sbGVyQ29jb2E6Omluc2VydEF0
dGFjaG1lbnRGb3JGaWxlUGF0aCk6CisgICAgICAgIE1ha2UgaXQgcG9zc2libGUgdG8gaW5zZXJ0
IGFuIGF0dGFjaG1lbnQgd3JhcHBpbmcgYSBmaWxlIG9uIGRpc2sKKyAgICAgICAgdmlhIFVJU2Ny
aXB0Q29udHJvbGxlci4KKwogMjAyMC0wOS0wNCAgWW91ZW5uIEZhYmxldCAgPHlvdWVubkBhcHBs
ZS5jb20+CiAKICAgICAgICAgQmluZGluZyBnZW5lcmF0b3IgaXMgbm90IGFsd2F5cyBjb21wdXRp
bmcgdGhlIHJpZ2h0IGludGVyZmFjZSBhdHRyaWJ1dGVzCmRpZmYgLS1naXQgYS9Ub29scy9UZXN0
UnVubmVyU2hhcmVkL1VJU2NyaXB0Q29udGV4dC9CaW5kaW5ncy9VSVNjcmlwdENvbnRyb2xsZXIu
aWRsIGIvVG9vbHMvVGVzdFJ1bm5lclNoYXJlZC9VSVNjcmlwdENvbnRleHQvQmluZGluZ3MvVUlT
Y3JpcHRDb250cm9sbGVyLmlkbAppbmRleCBlMzU1ZGY0ZjU4YTAwNjg2MjNkZmJmMjRiZGVlMjg2
Mzc2NWE3NTQ3Li4zZDU4MzJkMWQ5NjJjMGM5MzJmMzI3ZTNlYmMwMTg5ZGExMGM0ODVjIDEwMDY0
NAotLS0gYS9Ub29scy9UZXN0UnVubmVyU2hhcmVkL1VJU2NyaXB0Q29udGV4dC9CaW5kaW5ncy9V
SVNjcmlwdENvbnRyb2xsZXIuaWRsCisrKyBiL1Rvb2xzL1Rlc3RSdW5uZXJTaGFyZWQvVUlTY3Jp
cHRDb250ZXh0L0JpbmRpbmdzL1VJU2NyaXB0Q29udHJvbGxlci5pZGwKQEAgLTM0Nyw2ICszNDcs
NyBAQCBpbnRlcmZhY2UgVUlTY3JpcHRDb250cm9sbGVyIHsKICAgICB1bmRlZmluZWQgc2V0SGFy
ZHdhcmVLZXlib2FyZEF0dGFjaGVkKGJvb2xlYW4gYXR0YWNoZWQpOwogCiAgICAgb2JqZWN0IGF0
dGFjaG1lbnRJbmZvKERPTVN0cmluZyBhdHRhY2htZW50SWRlbnRpZmllcik7CisgICAgdW5kZWZp
bmVkIGluc2VydEF0dGFjaG1lbnRGb3JGaWxlUGF0aChET01TdHJpbmcgZmlsZVBhdGgsIERPTVN0
cmluZyBjb250ZW50VHlwZSwgb2JqZWN0IGNhbGxiYWNrKTsKIAogICAgIHJlYWRvbmx5IGF0dHJp
YnV0ZSBET01TdHJpbmcgbGFzdFVuZG9MYWJlbDsKICAgICByZWFkb25seSBhdHRyaWJ1dGUgRE9N
U3RyaW5nIGZpcnN0UmVkb0xhYmVsOwpkaWZmIC0tZ2l0IGEvVG9vbHMvVGVzdFJ1bm5lclNoYXJl
ZC9VSVNjcmlwdENvbnRleHQvVUlTY3JpcHRDb250cm9sbGVyLmggYi9Ub29scy9UZXN0UnVubmVy
U2hhcmVkL1VJU2NyaXB0Q29udGV4dC9VSVNjcmlwdENvbnRyb2xsZXIuaAppbmRleCBhZDA2ZjBi
NzI2NmI0MDkyYWFjZTI4MGE3MmE2MzMzOTRmY2Y5NTgzLi5mYjJiZjMyMDUyNWJjYWViZjQwNjdk
ZTMwZWFmODNmMzBmOGM2MzM5IDEwMDY0NAotLS0gYS9Ub29scy9UZXN0UnVubmVyU2hhcmVkL1VJ
U2NyaXB0Q29udGV4dC9VSVNjcmlwdENvbnRyb2xsZXIuaAorKysgYi9Ub29scy9UZXN0UnVubmVy
U2hhcmVkL1VJU2NyaXB0Q29udGV4dC9VSVNjcmlwdENvbnRyb2xsZXIuaApAQCAtMjc1LDYgKzI3
NSw3IEBAIHB1YmxpYzoKICAgICAvLyBBdHRhY2htZW50IEVsZW1lbnRzCiAKICAgICB2aXJ0dWFs
IEpTT2JqZWN0UmVmIGF0dGFjaG1lbnRJbmZvKEpTU3RyaW5nUmVmIGF0dGFjaG1lbnRJZGVudGlm
aWVyKSB7IG5vdEltcGxlbWVudGVkKCk7IHJldHVybiBudWxscHRyOyB9CisgICAgdmlydHVhbCB2
b2lkIGluc2VydEF0dGFjaG1lbnRGb3JGaWxlUGF0aChKU1N0cmluZ1JlZiBmaWxlUGF0aCwgSlNT
dHJpbmdSZWYgY29udGVudFR5cGUsIEpTVmFsdWVSZWYgY2FsbGJhY2spIHsgbm90SW1wbGVtZW50
ZWQoKTsgfQogCiAgICAgLy8gQ2FsbGJhY2tzCiAgICAgCmRpZmYgLS1naXQgYS9Ub29scy9XZWJL
aXRUZXN0UnVubmVyL1Rlc3RDb250cm9sbGVyLmNwcCBiL1Rvb2xzL1dlYktpdFRlc3RSdW5uZXIv
VGVzdENvbnRyb2xsZXIuY3BwCmluZGV4IDIxM2VmZTFmYTExMGFiMmZmNGEyMjEzOGJjMTc5NTRk
NGEwOGM0MTUuLjFlYjlhYWIzOTg4YzFhZTRkNjVhM2MyMmU3ZmNkN2ZkYmQ2YTYyMTEgMTAwNjQ0
Ci0tLSBhL1Rvb2xzL1dlYktpdFRlc3RSdW5uZXIvVGVzdENvbnRyb2xsZXIuY3BwCisrKyBiL1Rv
b2xzL1dlYktpdFRlc3RSdW5uZXIvVGVzdENvbnRyb2xsZXIuY3BwCkBAIC00MTIwLDQgKzQxMjAs
OSBAQCB2b2lkIFRlc3RDb250cm9sbGVyOjptYXJrQWRDbGlja0F0dHJpYnV0aW9uc0FzRXhwaXJl
ZEZvclRlc3RpbmcoKQogICAgIHJ1blVudGlsKGNhbGxiYWNrQ29udGV4dC5kb25lLCBub1RpbWVv
dXQpOwogfQogCitXS1VSTFJlZiBUZXN0Q29udHJvbGxlcjo6Y3VycmVudFRlc3RVUkwoKSBjb25z
dAoreworICAgIHJldHVybiBtX2N1cnJlbnRJbnZvY2F0aW9uID8gbV9jdXJyZW50SW52b2NhdGlv
bi0+dXJsKCkgOiBudWxscHRyOworfQorCiB9IC8vIG5hbWVzcGFjZSBXVFIKZGlmZiAtLWdpdCBh
L1Rvb2xzL1dlYktpdFRlc3RSdW5uZXIvVGVzdENvbnRyb2xsZXIuaCBiL1Rvb2xzL1dlYktpdFRl
c3RSdW5uZXIvVGVzdENvbnRyb2xsZXIuaAppbmRleCA3MTNmZjlhYjE5NjliOTdhNTdlN2I1ZTRi
MjI4NGVkMjA4ZjA2YzE3Li5mOTRkNTdjMTQ3YjMxNmYwNzhmYTg1ZjIyMGY0MDc2MDk0MTEzYzhj
IDEwMDY0NAotLS0gYS9Ub29scy9XZWJLaXRUZXN0UnVubmVyL1Rlc3RDb250cm9sbGVyLmgKKysr
IGIvVG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9UZXN0Q29udHJvbGxlci5oCkBAIC0zNTksNiArMzU5
LDggQEAgcHVibGljOgogCiAgICAgdm9pZCBkaWRTZXRBcHBCb3VuZERvbWFpbnMoKSBjb25zdDsK
IAorICAgIFdLVVJMUmVmIGN1cnJlbnRUZXN0VVJMKCkgY29uc3Q7CisKIHByaXZhdGU6CiAgICAg
V0tSZXRhaW5QdHI8V0tQYWdlQ29uZmlndXJhdGlvblJlZj4gZ2VuZXJhdGVQYWdlQ29uZmlndXJh
dGlvbihjb25zdCBUZXN0T3B0aW9ucyYpOwogICAgIFdLUmV0YWluUHRyPFdLQ29udGV4dENvbmZp
Z3VyYXRpb25SZWY+IGdlbmVyYXRlQ29udGV4dENvbmZpZ3VyYXRpb24oY29uc3QgVGVzdE9wdGlv
bnM6OkNvbnRleHRPcHRpb25zJikgY29uc3Q7CmRpZmYgLS1naXQgYS9Ub29scy9XZWJLaXRUZXN0
UnVubmVyL2NvY29hL1VJU2NyaXB0Q29udHJvbGxlckNvY29hLmggYi9Ub29scy9XZWJLaXRUZXN0
UnVubmVyL2NvY29hL1VJU2NyaXB0Q29udHJvbGxlckNvY29hLmgKaW5kZXggZWRiMjEwYzFhODc5
YmI4NGNkYjhlNjllMTRiNzU1ZDRmYWJmZTE1OC4uNzc2N2NhYjZhNTY0MGMyNDc0MDBlMzZmYjFj
OTQ1YjczYmVlMzY4NCAxMDA2NDQKLS0tIGEvVG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9jb2NvYS9V
SVNjcmlwdENvbnRyb2xsZXJDb2NvYS5oCisrKyBiL1Rvb2xzL1dlYktpdFRlc3RSdW5uZXIvY29j
b2EvVUlTY3JpcHRDb250cm9sbGVyQ29jb2EuaApAQCAtNTcsNiArNTcsOCBAQCBwdWJsaWM6CiAK
ICAgICB2b2lkIHNldENvbnRpbnVvdXNTcGVsbENoZWNraW5nRW5hYmxlZChib29sKSBvdmVycmlk
ZTsKIAorICAgIHZvaWQgaW5zZXJ0QXR0YWNobWVudEZvckZpbGVQYXRoKEpTU3RyaW5nUmVmIGZp
bGVQYXRoLCBKU1N0cmluZ1JlZiBjb250ZW50VHlwZSwgSlNWYWx1ZVJlZiBjYWxsYmFjaykgb3Zl
cnJpZGU7CisKIHByb3RlY3RlZDoKICAgICBleHBsaWNpdCBVSVNjcmlwdENvbnRyb2xsZXJDb2Nv
YShVSVNjcmlwdENvbnRleHQmKTsKICAgICBUZXN0UnVubmVyV0tXZWJWaWV3ICp3ZWJWaWV3KCkg
Y29uc3Q7CmRpZmYgLS1naXQgYS9Ub29scy9XZWJLaXRUZXN0UnVubmVyL2NvY29hL1VJU2NyaXB0
Q29udHJvbGxlckNvY29hLm1tIGIvVG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9jb2NvYS9VSVNjcmlw
dENvbnRyb2xsZXJDb2NvYS5tbQppbmRleCAxN2FlNTUzMWMxMTg3MjEwZjZmNDJiNDQ2MzkyMTU0
MzIxNDBkYzViLi5hODJjYzM1NWNkN2ZlOTk1NTdhNDFkNjIyMTU2NmQ3MDBjMzRmNzc4IDEwMDY0
NAotLS0gYS9Ub29scy9XZWJLaXRUZXN0UnVubmVyL2NvY29hL1VJU2NyaXB0Q29udHJvbGxlckNv
Y29hLm1tCisrKyBiL1Rvb2xzL1dlYktpdFRlc3RSdW5uZXIvY29jb2EvVUlTY3JpcHRDb250cm9s
bGVyQ29jb2EubW0KQEAgLTMyLDYgKzMyLDcgQEAKICNpbXBvcnQgIlRlc3RSdW5uZXJXS1dlYlZp
ZXcuaCIKICNpbXBvcnQgIlVJU2NyaXB0Q29udGV4dC5oIgogI2ltcG9ydCA8SmF2YVNjcmlwdENv
cmUvSmF2YVNjcmlwdENvcmUuaD4KKyNpbXBvcnQgPFdlYktpdC9XS1VSTENGLmg+CiAjaW1wb3J0
IDxXZWJLaXQvV0tXZWJWaWV3UHJpdmF0ZS5oPgogI2ltcG9ydCA8V2ViS2l0L1dLV2ViVmlld1By
aXZhdGVGb3JUZXN0aW5nLmg+CiAKQEAgLTIwOCw0ICsyMDksMTkgQEAgdm9pZCBVSVNjcmlwdENv
bnRyb2xsZXJDb2NvYTo6cGFzdGUoKQogICAgIFt3ZWJWaWV3KCkgcGFzdGU6bmlsXTsKIH0KIAor
dm9pZCBVSVNjcmlwdENvbnRyb2xsZXJDb2NvYTo6aW5zZXJ0QXR0YWNobWVudEZvckZpbGVQYXRo
KEpTU3RyaW5nUmVmIGZpbGVQYXRoLCBKU1N0cmluZ1JlZiBjb250ZW50VHlwZSwgSlNWYWx1ZVJl
ZiBjYWxsYmFjaykKK3sKKyAgICB1bnNpZ25lZCBjYWxsYmFja0lEID0gbV9jb250ZXh0LT5wcmVw
YXJlRm9yQXN5bmNUYXNrKGNhbGxiYWNrLCBDYWxsYmFja1R5cGVOb25QZXJzaXN0ZW50KTsKKwor
ICAgIFJldGFpblB0cjxDRlVSTFJlZj4gdGVzdFVSTCA9IGFkb3B0Q0YoV0tVUkxDb3B5Q0ZVUkwo
a0NGQWxsb2NhdG9yRGVmYXVsdCwgVGVzdENvbnRyb2xsZXI6OnNpbmdsZXRvbigpLmN1cnJlbnRU
ZXN0VVJMKCkpKTsKKyAgICBSZXRhaW5QdHI8TlNVUkw+IGF0dGFjaG1lbnRVUkwgPSBbTlNVUkwg
ZmlsZVVSTFdpdGhQYXRoOnRvV1RGU3RyaW5nKHRvV0soZmlsZVBhdGgpKSByZWxhdGl2ZVRvVVJM
OihfX2JyaWRnZSBOU1VSTCAqKXRlc3RVUkwuZ2V0KCldOworCisgICAgYXV0byBmaWxlV3JhcHBl
ciA9IGFkb3B0TlMoW1tOU0ZpbGVXcmFwcGVyIGFsbG9jXSBpbml0V2l0aFVSTDphdHRhY2htZW50
VVJMLmdldCgpIG9wdGlvbnM6MCBlcnJvcjpuaWxdKTsKKyAgICBbd2ViVmlldygpIF9pbnNlcnRB
dHRhY2htZW50V2l0aEZpbGVXcmFwcGVyOmZpbGVXcmFwcGVyLmdldCgpIGNvbnRlbnRUeXBlOnRv
V1RGU3RyaW5nKHRvV0soY29udGVudFR5cGUpKSBjb21wbGV0aW9uOl4oQk9PTCBzdWNjZXNzKSB7
CisgICAgICAgIGlmICghbV9jb250ZXh0KQorICAgICAgICAgICAgcmV0dXJuOworICAgICAgICBt
X2NvbnRleHQtPmFzeW5jVGFza0NvbXBsZXRlKGNhbGxiYWNrSUQpOworICAgIH1dOworfQorCiB9
IC8vIG5hbWVzcGFjZSBXVFIKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xh
eW91dFRlc3RzL0NoYW5nZUxvZwppbmRleCAzN2RmMGY5YmNjNjExZjQxY2VlODcwMmRkNmQwNmY2
YmJiZmRjM2YyLi4wYWZkZGUxY2Y3ZThkYmVkYjYyZmU4MDYzOGU4YmRjZTlhNWJlZmQzIDEwMDY0
NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9n
CkBAIC0xLDMgKzEsMjcgQEAKKzIwMjAtMDktMDQgIFRpbSBIb3J0b24gIDx0aW1vdGh5X2hvcnRv
bkBhcHBsZS5jb20+CisKKyAgICAgICAgaU9TOiA8YXR0YWNobWVudD4ncyBRdWlja0xvb2sgdGh1
bWJuYWlscyBjYW4gYXBwZWFyIHNxdWlzaGVkCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQu
b3JnL3Nob3dfYnVnLmNnaT9pZD0yMTYyMDkKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzY3ODE3
NzA2PgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICog
ZmFzdC9hdHRhY2htZW50L2F0dGFjaG1lbnQtdGh1bWJuYWlsLXByZXNlcnZlcy1hc3BlY3QtcmF0
aW8tZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBmYXN0L2F0dGFjaG1lbnQvYXR0YWNo
bWVudC10aHVtYm5haWwtcHJlc2VydmVzLWFzcGVjdC1yYXRpby5odG1sOiBBZGRlZC4KKyAgICAg
ICAgKiBmYXN0L2F0dGFjaG1lbnQvcmVzb3VyY2VzLzQwMHgyMDAtY2lyY2xlLnBuZzogQWRkZWQu
CisgICAgICAgICogcGxhdGZvcm0vaW9zL2Zhc3QvYXR0YWNobWVudC9hdHRhY2htZW50LXRodW1i
bmFpbC1wcmVzZXJ2ZXMtYXNwZWN0LXJhdGlvLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAg
ICogcmVzb3VyY2VzL3VpLWhlbHBlci5qczoKKyAgICAgICAgKHdpbmRvdy5VSUhlbHBlci5pbnNl
cnRBdHRhY2htZW50Rm9yRmlsZVBhdGgpOgorICAgICAgICBBZGQgYSB0ZXN0IHRoYXQgZHVtcHMg
dGhlIHRodW1ibmFpbCBzaXplIGZvciBhIDQwMHgyMDAgYXR0YWNobWVudC4KKyAgICAgICAgQ29u
ZnVzaW5nbHksIG9uIG1hY09TLCBRdWlja0xvb2sgYWx3YXlzIHJldHVybnMgYW4gaW1hZ2Ugb2Yg
dGhlIHNpemUKKyAgICAgICAgd2UgYXNrIGZvciAoNDAweDQwMCksIHBhZGRlZCB3aXRoIHdoaXRl
c3BhY2UsIHNvIHRoZSBwcm9ibGVtIGRvZXMgbm90CisgICAgICAgIHJlcHJvZHVjZSBhbmQgdGhl
IHRlc3QgZG9lc24ndCB3b3JrIHJpZ2h0IHRoZXJlLgorICAgICAgICBPbiBpT1MsIHRob3VnaCwg
dGhlIHJlc3VsdCB1c2VkIHRvIGJlIDQwMHg0MDAgYW5kIG5vdyBpcyA0MDB4MjAwLgorICAgICAg
ICAKKyAgICAgICAgSSB0cmllZCBhbmQgZmFpbGVkIHRvIG1ha2UgYSBtb3JlIHVzZWZ1bCB0ZXN0
IChhIHJlZiB0ZXN0LCBhY3R1YWxseQorICAgICAgICB0ZXN0aW5nIHRoZSBwcmVzZW50YXRpb24p
IGJlY2F1c2UgaXQncyBxdWl0ZSBoYXJkIHRvIG1hdGNoIHRoZQorICAgICAgICBuYXRpdmUgPGF0
dGFjaG1lbnQ+IHBhaW50aW5nLgorCiAyMDIwLTA5LTA0ICBDaHJpcyBEdW1leiAgPGNkdW1lekBh
cHBsZS5jb20+CiAKICAgICAgICAgUkVHUkVTU0lPTihtYWNPUyBCaWcgU3VyKSBodHRwczovL21h
Z2VudGEuZ2l0aHViLmlvL2xvZmktcGxheWVyLyBpcyBicm9rZW4KZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL2Zhc3QvYXR0YWNobWVudC9hdHRhY2htZW50LXRodW1ibmFpbC1wcmVzZXJ2ZXMtYXNw
ZWN0LXJhdGlvLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2Zhc3QvYXR0YWNobWVudC9hdHRh
Y2htZW50LXRodW1ibmFpbC1wcmVzZXJ2ZXMtYXNwZWN0LXJhdGlvLWV4cGVjdGVkLnR4dApuZXcg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwLi4yM2U2MzVhYmZkMGVkOTlhY2VjYjQwY2FlNDM4NzA1NDJmOWYwNTVlCi0tLSAvZGV2
L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9hdHRhY2htZW50L2F0dGFjaG1lbnQtdGh1bWJu
YWlsLXByZXNlcnZlcy1hc3BlY3QtcmF0aW8tZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEgQEAKK0F0
dGFjaG1lbnQgVGh1bWJuYWlsOiA0MDB4NDAwCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0
L2F0dGFjaG1lbnQvYXR0YWNobWVudC10aHVtYm5haWwtcHJlc2VydmVzLWFzcGVjdC1yYXRpby5o
dG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9hdHRhY2htZW50L2F0dGFjaG1lbnQtdGh1bWJuYWlsLXBy
ZXNlcnZlcy1hc3BlY3QtcmF0aW8uaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5hMjkzNjY0OWM0ZWUyNzI4Y2Vl
MzA0ODYwNjExNjk3NTQ0ODgyZDA0Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFz
dC9hdHRhY2htZW50L2F0dGFjaG1lbnQtdGh1bWJuYWlsLXByZXNlcnZlcy1hc3BlY3QtcmF0aW8u
aHRtbApAQCAtMCwwICsxLDM4IEBACis8IURPQ1RZUEUgaHRtbD48IS0tIHdlYmtpdC10ZXN0LXJ1
bm5lciBbIGVuYWJsZUF0dGFjaG1lbnRFbGVtZW50PXRydWUgXSAtLT4KKzxodG1sPgorPGJvZHkg
Y29udGVudGVkaXRhYmxlPgorPHNjcmlwdCBzcmM9Ii4uLy4uL3Jlc291cmNlcy91aS1oZWxwZXIu
anMiPjwvc2NyaXB0PgorPHNjcmlwdD4KK2FzeW5jIGZ1bmN0aW9uIHJ1blRlc3QoKSB7CisgICAg
YXdhaXQgVUlIZWxwZXIuYWN0aXZhdGVBdCgxMCwgMTApOworICAgIGF3YWl0IFVJSGVscGVyLmlu
c2VydEF0dGFjaG1lbnRGb3JGaWxlUGF0aCgicmVzb3VyY2VzLzQwMHgyMDAtY2lyY2xlLnBuZyIs
ICJpbWFnZS9wbmciKTsKKworICAgIGZ1bmN0aW9uIGF0dGFjaG1lbnRUaHVtYm5haWxJbmZvKCkg
eworICAgICAgICByZXR1cm4gd2luZG93LmludGVybmFscy5hdHRhY2htZW50VGh1bWJuYWlsSW5m
byhkb2N1bWVudC5nZXRFbGVtZW50c0J5VGFnTmFtZSgiYXR0YWNobWVudCIpWzBdKTsKKyAgICB9
CisKKyAgICB0cnkgeworICAgICAgICBhdHRhY2htZW50VGh1bWJuYWlsSW5mbygpOworICAgIH0g
Y2F0Y2ggKGUpIHsKKyAgICAgICAgaWYgKGUubmFtZSA9PSAiSW52YWxpZEFjY2Vzc0Vycm9yIikK
KyAgICAgICAgICAgIGRvY3VtZW50LmJvZHkuaW5uZXJUZXh0ID0gYEF0dGFjaG1lbnQgdGh1bWJu
YWlscyBub3Qgc3VwcG9ydGVkLmA7CisgICAgICAgIGVsc2UKKyAgICAgICAgICAgIGRvY3VtZW50
LmJvZHkuaW5uZXJUZXh0ID0gZS5uYW1lOworICAgIH0KKworICAgIGxldCBpbnRlcnZhbElEID0g
c2V0SW50ZXJ2YWwoZnVuY3Rpb24gKCkgeworICAgICAgICBsZXQgaW5mbyA9IGF0dGFjaG1lbnRU
aHVtYm5haWxJbmZvKCk7CisgICAgICAgIGlmIChpbmZvLndpZHRoID09IDApCisgICAgICAgICAg
ICByZXR1cm47CisgICAgICAgIGRvY3VtZW50LmJvZHkuaW5uZXJUZXh0ID0gYEF0dGFjaG1lbnQg
VGh1bWJuYWlsOiAke2luZm8ud2lkdGh9eCR7aW5mby5oZWlnaHR9YDsKKyAgICAgICAgY2xlYXJU
aW1lb3V0KGludGVydmFsSUQpOworICAgICAgICB0ZXN0UnVubmVyLm5vdGlmeURvbmUoKTsKKyAg
ICB9LCAwKTsKK30KKwordGVzdFJ1bm5lci5kdW1wQXNUZXh0KCk7Cit0ZXN0UnVubmVyLndhaXRV
bnRpbERvbmUoKTsKK2FkZEV2ZW50TGlzdGVuZXIoImxvYWQiLCBydW5UZXN0KTsKKzwvc2NyaXB0
PgorPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9hdHRhY2ht
ZW50L3Jlc291cmNlcy80MDB4MjAwLWNpcmNsZS5wbmcgYi9MYXlvdXRUZXN0cy9mYXN0L2F0dGFj
aG1lbnQvcmVzb3VyY2VzLzQwMHgyMDAtY2lyY2xlLnBuZwpuZXcgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5hMTJhNjRlMDQy
NjhlYjk5YTA1MjAwZWM1NWExMTFiNzc4OTkwODhmCkdJVCBiaW5hcnkgcGF0Y2gKbGl0ZXJhbCAx
MDM3NAp6Y21ae0oxemNScWxLMEh1RjJOLVhabyVFJW8jMjdzNUQ0eT9GaEg7YmNQQlVqZiltYEcw
S3AtK3lBdWUkQy0+Zz4Kei10Szw7NFpxPl4+OF5pT2NVZ0QhZ3NaRXtWVzUocmY8UGIpMSRrKnI1
Q3xMdHY8SHc4ZiZZRUAtX303T2JRPkVmCnpEUmwpWURYNi1PcW1fLUZCP3UlUm9+Vm5ZX2l+VVI+
eUBVMEJubEt0ZHIyMnxOa3RuPkFSKyQ2Z3FqOHhqQjYmVAp6VVMrRFU8I2FAYSVJbF5ySndBO2VR
KWl9Mig3UX5DaEMwKyN7MUdGOGp9bU5qb3BfUllrfW1XbDs8XyFpSE07MUYKejFSQjgtRjV5Tyto
Q3BAVypnbTNSU3cqVFRTakp7U0lDSD4pP0M9Y0hZe31LOz02UnJtJmN+RFVWPjxESzJPZkliCnpT
K1Z9NyhwfV9XN2c1bEZibDQ8PCVSQU57ZFFiPVJqaSRhUk5WO0l6I2heX3F7M0NRR3VAZ2wzSTxG
XntzWU5NIwp6UXYzSG5mUWxwOyhtRkZKI3pye24jV1BUIWYzWT9HREhrUEg5K253bHhjQ2RPeEdR
YFEqYmhleVJLPENQKTdhPigKelhveSl3VVlqaDV6NSFtfFRYQ3tfajE9PF4la0NkMD4teTR5Nyko
WiRxfnord14qQTxoPz5JUTNmcXEqRmk9Pk5fCno+MCFKRzwhUTt4QnJOSVM0cmB7Xzh8TjRAa2gr
KDZwKn5GeE4/XzhJcnVsTkhWY3dQamNZdChCPjQ5QDlOa3ojVQp6IW1rfG5qSiNsYCRVM2FNMGxS
eFRQP2QxVV4lO35tel5oOUFJWX53Ukpre3tXbXZAb31vRUJ2RDJKZkB6TmwhfkoKemYycWYyNChN
Rjg8RGZMIXpXYiFYcGVQQGJmP0F+dzw3WHI+TCtsd25LbTA5VUg/a3s8TCt8ckx3bE01dnBDZntF
CnpoQzElXnZoe3ZjUDc3MEsrcSpjITg8Vnk8ZzRoKCZAOzs8PDg1RW9edzxiazVFd0pDRnRhSkZF
Z0VSUkRzMXVeMgp6TnhzV0soTlZPd3FURz5iIV9SRTl1cU4oVGBLSnZ0bWAxfDI3ZDhtR0dNb3lR
QSFlVDU1LW1RZ1NxV0gjTUcrS1oKekcyOHVnI3BedzJIRDJhcytHbmZHOyZgaDgqY31rbXhlMUJx
MUNhSGt1ZVlwVE1JPFAyIWNlJFdhcGE3dHZgKnFkCnpJQkh6NE5UZCZ8U1lnNTlxVEZtPUNSKWct
SWdifUhJX35aZVZ6QGo2SUlpa1d0fXNeI25nUTUjMVdaNFUob3RjUgp6YVZxUi1FZmF+OXFBd2pU
LVF8QWUwSUFOSCRGNFlCXkRTUGBiTiNmU3Eja3VNV1I1XjArMW1jZFFfdnotYmxAeT4KeiZkfUwk
KFY5S0Y7d3NvV1NmfFVwM3F6ODBaNH5kIVp7QVpRM2MpQGBPeGZ0O3JRPSlKZzE5UHtGd3U0QlZH
UXdYCnplYExWM1c2WCFqR3g2UGRJOXF9SmhEMj5zfE5lKD49eHlGNHduN25UMm5GYlFARVY3MCpA
STNkVWclV31aeSlVYQp6d1c8b1NycWo4JiZzKlAqQD1YKFZoQFNmQCo+UU1hM3gjSSh1JHN0S2Bn
QytmblBjZDJkMSFAKT5kYTJVcmc/VCoKejlIM2N0MUpzWTlWcCVfbnNeZVVlTnM/OFFNV14tSm9Q
NjNgSGt7QSV4aCZSfEhBRnZSdnx+eVY9eXJLTj97c2xACnpiX2F7IWx4d3VNSEwrcCZObnVNSlJX
IysmZm4/PmJ1Q0ZOYHprQ2NpJChBQl95N1BRREpedmFLdSNEYnVnV0QjbAp6bFFYZTRnYSZTLTx6
Nz9lZi1tZ0FvJEteN2d3ZGJFTmtIKkZmak9ZeXtEOHNBQSp6Tl5PQjBlNWdsKDlhSTt1YFUKem9l
QTY9ZE9nZ0BncEQ3eC0tK1hkbn1Md3JmJHMjajcqdHdCLVU3ZTBPMT4rRDlVU312aHQ0YzRnPm9q
MGRPZ0M2Cno4WjZJJWA9TilEUUp5MyZUcGs7TjZIUHhMZnZQa0hWP1phTDxjMyhfUS0oQXZ3MHdZ
azZLNWo0TU1DczVrKW84bAp6IzxNOXpAXkdJI0o4b1BSYXIpMXh5SVFyX01xI1d7IXtiYkRTTyVl
NChybG1rZSgrdz57dE47dSElZztvPWItO2kKeng/I2VoJENMeWN0UTYyZyhGeEh1dDwkNlM4PWJB
PkVrbkJ0ZCopMHgrTGdKQThyQVg0U3lVODFKQlkyOVo/KllVCnpAU2dofSNgfEU7NFAjYHRLI3RE
WFJpI3pqekdzeyRsZ1Bjbm9MIWgqbHdISVAkdjtzfSFsWkxXJENHdnV1RlgoNgp6S0p2I21Cczli
fU0wKjkhRGYmcXNRcFU9TSg4JEchRl4yUnxaXmNJXzk0UHE4X2JjY3M5T1l3S1V7biomQ3o4cGsK
eihrY3lIM3xlazNaSktZRVp0aVRwanYoa3dUVVFHSWpMZzhyRndENVg3QDA3ZjtHeEstb289aTJ0
QjZqJHJ1ZD9HCnpZc3o0c2M7QTJqNiRTPGQ4VXt0QUdsXkx3UmlzUGcxSVo1MGF+cj8+eSZxKDYk
YkwkdjE9Zkc2a017YGwyKSM7RAp6RW40Xnl2fERvTmNneUwrXk1MbjJgMlpJKj13IyhZNEN5bkpN
YVlZQ1BDUWVMJiRUSFpvWElIREZWLSpnUj09cFcKek4reXNRbWk/STVKREhaSntuPWdiQVcwe2hf
b1opdyQwdmBrU0RIc2xLTThBdit+ZnMkMXdSV3lHQ3YzfHhUKT81CnpvMD0mcihTOzZMdnpqPHFY
UE1SPztKVndwSCNYQHY2KlQjfXpqQUItPCN4SUZFQUYhSkt6bztiYHQ0LUByVHR+Jgp6dC0kVEBG
UmF+X3NWREM1N0RUPSZQSUdhbGI9X1l2ZUkzfnNwIyRQPylYZ2YjUnpvYEpySUpqR1AzellieU00
Tm0KeldFKjBHI2AqSlhXWWEmNTYxaWl7a3t8UEJoX3pWIWhPSyE8WU0zSyFATmNCe0VxcUZrXmlA
Xz89fkJ0M0o1VyhnCnpieFlrKE1AK1Ihe21MTz9fMHkpMDg7JCowZE8zJVghJlA4R3pnZGxvLWQ1
UlVuUy1uTzErd2RoOD1WVitpYFF0Ywp6SzF6U1FBLUg/LVR1K213bTQpbFl0UkFudiRFI0hSJGh0
STNaRkJlOEdfeGFubWc/OG17LWR8OGs+eDdZQlVJQD0Kej42b3dKVVZYTHlZIyh7I0ZWdGp8diF2
Q2ApTz5JeT9keTFGY05jbDNPUXcjNWclbTZHcTEjZSFZSjVgVHV3bEgpCno5b3tyfTQwJGxAMyht
S1VIPiEzO2tScDtJeHpYRUVqblJ3RGdHfVNkVDlRO2ptI3FPOz5oPWImaFJwXiQmcWg4KQp6PiF9
b3QzcHQpQnBOOysxQTx1SEIpPy07dUd9cldsbmJvVkdPWEVoblpHI1c+TlIjR2V7WiFGKChQTFMh
dnBCfkwKeiMjR3N1RTRWOFpEXyQpKEVtdGlvd1R8NmtgdnYtTS07JGwoPj5saTtwWklvTXRCS0xL
K3FFeWZCaFJ5IUx6OG8pCnpjPDVRXyVIQzw4WmY2Tz1rMEdkfSYwK1o9OTdDdnd8Q0BoK1F5I21Q
ZFJKZn1FMzxkR2B5S3V2P2g3PGd5ISkoOwp6O25XY1VvV0t2a3AkV21ZIVRaNTxBcjhwP0x7Pk9T
IzUmSnIkZDdTRXgkZFJtRFhCUWtFUEdoS3E5bCklWitrP2EKemsjUEJiLTsrMTZAWUBVLT0tMHMx
czRuaVMrTVZNdCpOdHdhdXFTNTt7fjhWRVNXS0RieiVzS3BGWTA+fmpOKWhZCnpGemp1eGNGdFMz
PmRwTFUtS1E0NUxqSkBgJCMzZjIpaGdYQUVvMWdGJlQ2NzNlP1J8dmthRG16WmxOIWxPdzlNYgp6
MDUxPkVTeTc2S2slIVM7JlVQJkwyZytPZVREOGoqSj5qISRuZ3hZUGRaUUZPWlVPN19hbUtXbFVO
MTJWYVZGdj4KekomSnl2blIjaXFXVnQhYFNvLWl+Y05fUD1YR0YjPSEqTjQ+XylyPT0jJnlyN1c5
ZXBiWXlFWmY1RHlfQE5aUUNPCnokfTh4JXlOPmtDY0c+a2okR2xMQG9vayV5KW1FSkFxempnazhf
aiYmcTw1a0I8Yl4+JilQJE1NZzRSbU8rYWl4KQp6RG9kZndGdSVBS05ASyN1REwmPnlKVFpwbmAw
I2pJY3ohOEsrKClaIU18Kkw1QlYxJXdGSCtCMSp2bjNmUWh6SHkKemVsT0pEdUd0Pig7WjdJdkpz
YDdDejBEfFdPbVpiMHdQITxSYF5naDYkbVlCM2N3d3wla0BocWp4UVAmbnJiMGwjCno7JigzZjg7
aHMrbGJRWm14eS13ZHlsajFoOXxeeWBhREcrJlpaSHtGVno1XjtkN15ydnQ+Q19aQElCY3ReUEF8
MAp6VmF9d3c3dVNZdUhWRG9pRVA2KjBWYSVUODZSKSkhXzZQVD9OKUtpI1hBO1Y4LVgwfj81ZV9Y
NV5IJGAyZU9kT0YKekloeDUpJiN+QFo/YDwxS0UoUll7QW9HPHJpN3NvMlUlTiktKj93VjtOP3Ax
Tlo/ZU48dHhVXy0peSEkUnlFZD0zCno8d0RwM1lRNHhwUl8oKjArT25BVDNId2l0cml9fkwhTz9t
bj1WbiExVXYxcUotc1JSNyNCei0oeDh1fT9vdVRFSgp6UipYODt4PndoR0MoS0omU0lrJUt6WGd0
Vih2aGdKeFhDWD9fM2wzWVZvTUI3MzAyJldYKEQhQ2BqdlpJQUNlRjwKeihgfUIpJDgqY2B7QzRf
Z0hkRjM8dj0tVTRQfTRvcHVlbVBzaGttcl4+eGBKSlVCT2lFYkFgIS1MZkBqaz81MX08CnppK2Yz
MnZEVHk2NyglfUxXT3N7YTdtcXY5aE5yRGd6akxwOVo8VnI9X3RRa3V1cFlNMDdDc1k8QntkRGRQ
QTJ7Twp6K3Q5fDJlOTdtfmM2QjtfUmBQM1I+dUJxe0o9eDMxbmU9Y3okQ1dnJSh4ZHVTa04oVUlw
XjZpTiNpTGVUd2Bgfk8KelAxc0NPYiFaPH0+QVA9Rns+SkluMyomTj4oUDxSQFZyfCNLUG4lbVda
emtLV0s4KT4tNFB+V15SMih9VUBsTyFYCnpjeUlMdjZDU1lAdT16R2VKcEZqZ0o1TzlISEdWfER0
IWVjMl5TcGFJZkFHa3N2X2pJaGJkITgldFJoaytnMC1eTQp6Y0huUCgtZyg7bkhGfXcxJXdPXkd2
Yz1QWXFOTCkhPTMlRmdFIU96PmRndG18JCh3VnpxWEw5VG5pZFEwTlk2WUsKenFlS0FGMzRoYXxG
Q0ducTNvSVYzZko0NWdGQjQ/TDQ1SjZ0UmxhPWViNSNYWlF0K2x6NFBjeUAyWkgzMEE7c3duCno+
TXVWRWNhTGNJXzc7TiFFUzZXRT0mKFNqY0smTSo1M04tWDU4Mkc3bTl0Pn1uYV9lak9kcFdQJnxk
ezY/MXNRewp6a3AxWXRUPHF9KXlqeXtAZ2c7KXJkbylIMGkleXtvNnMtZWxrMGVWeTF1R1I1NUVJ
WncxfGZpUEwyeTZ8NEUldz4KekJwYCZwKzh+ZjNuRHBPbU8pJGVoRyFQSWQpQ0w2cTR+K3J2e1BY
ISEqOHUyJG9eV3Y/QVNCPW83eClJfUs+a0d5CnpqPiY9aFJ+c3x7akRhTHhOK35EKyZ6SSZkbVg7
MiNaeWVwcS1HNmlmOVZreG5gbVBgbDBxdmhKU1Y1RUs2YTwyfQp6K2kyO3o+OFU2U25tZ0xGbnAh
eFRTK2FXQkpOQEFVNjd+YFZuKWE0JXJjZl8/SXxvLW1GQT1LMEM8S0FfcEtkbFAKej13QnBtWiQr
cnxSTWVxVGp4THJeVVJIS2lifUNVK0M9QEV9VnFxbnlESn1hQzlDI0M8ZGdKRWlCKkAwKj5GTFNw
CnokO0ltRVYkSEBPQVJ4ZlQmZEo4ZiRwVFFZeE96TGRuUj5BfXhLalZrPFg/UUdFblVyQllARk98
OTM3eTRfP250SQp6eTFSKWBRVC1BMEA2WEAhd0RodzFrMGJ9emYwaEwta25QVjE4d1Y+cCt5NGJ+
diQ2WEIhMlhRPDRmfF9kZX5UMFQKeiElUkB5KXpVQEUoY2EkRCFBPGwoOFc7WGMoKkdGeiZwaUpJ
c0ByJjMrVVpOJTA3ekcwT2BARFVlQkElUXtgYilUCnozRHhAI2x1TGx+ZT9iNCsoMF95ZVMlamRQ
aXchVlMoPzQxaTxxJjUzZkJPRDZ5ezR0QnFuLU83YSV+NDJIJk09aQp6QXBmaVRBQ3hmTEFIKTFO
TDtkWHFmQXM9eEFjYHU/X0hVT0dNZVN2fnAkMzc3YXVsUWB3N2tHYW5QfDBJKTg3NTwKenVBXyN9
JnZDYjZrI244Y3U8Xm0qQVYtYkxre1I2fElie1AxPUFUOzRYfDtwNGxsZUJ5KWpCbWd4ZTdAZnJR
PWcmCnpiNitAWURRJDlqY3loO1FpMTBQUVFoM0tRQE9Ub14laEFLJTEoeG0lcEk+dmhydXdHIy0m
e1N+JnkpJGRaaHNlOAp6eHhVTEA2VDk7Y2JsJktybTR0IWRwJiY1d1dzTGFmQHlmKStNMGEkUiZ8
ZntqbTI7fTlHJGdhWkZATHtiV2BQaFYKemRfRFlkQT1tKXt2KyhUTDY8aFMpJGxAU0tEfTRhJEdL
KU1yN35yKFoxNGkkOGQhejZpQVFDQDhGQGQmUF90UjRYCnp7Sm01X2FBeVlaO3o5d1VBSEVQR2BJ
R3JHZytKKW0mKmJUR2VOK05BVFBmOUpUSWBmKDJKWiVpX1JPMkA1PTkxQwp6PWMkbj5ua1EkNDdW
MnI2WTF5QXs1ZyFVRllESTRBZD55YEJiMWZoWnNUMVJUUWx5WHlpblZnVlp5Iz1IRUVaUDcKemdG
Q3kySUJgNH1SVTZJRm1SYmFITUFZe2lUekhuLURiNlVfSl5yZGFSUC1SYkFEfD83OTheI1pMRmdZ
aV4kKzJzCnpCRllwTXF2TDtsT1ZzPlh5bl99KDZzQmJCbGxITShxVT0rJGZAYCYmUExJLU5yYlBr
R3d5fXVmQHw0VDZsMUA/ZAp6KWxNYGArKHV5ZDFmSHJZTVN1RV5mSEAtYEAqNnRyeG40WWRHXkx2
MCRLRXp3MTU1M0RTekRyIUdmbi0+N3MtSikKek1KMyFzN2V1NjRQP2ImI1ZoWXQqXkJ9cyhRK3lq
bW40U298JCF1M0g7YCl0RDR6MiZmYCFtYDVoISEkMm1mYGdlCnpXLThMSVJjQ0NgZ3VeY1NGRWty
Z3hFO3RUPEdaO21XWmx9aDUjdU0/MnVFJmtua2ZLdGhgSCZjN1RBWHZxfUw4bQp6blVoclhqMTY1
YGxueDBHcTQ8MHxPaHtmdypmVzJfWmZGJn1Ha0FHPVVraEFnak1aU2w/QEkqR21IRFhlV0d2eSUK
elchUH5TbyslcUY9dytBZmNeSj5HKUlRTUY+dX5aMnpke148JlE4KmIkLXZ0XkJTNmZSWFA9Y2Ek
fUVkUF96PTJ2CnplV3Y3bzA2KWdHRjtMNV5oR2ppP3hJNSZncktfXyshfT1jaTJod2A8T3pObmM8
JDA1XnpMKWchQyp1KmZqOT0pWgp6U0t4VSUpJihTUFRIIzVlIUQrS2wjRnRRWUhPTTd3RCEjM01y
flpNfEYtYFJocF5zbU9aZGpPWnlrX2MxSTd4VG8Kek5yQHU5RTB3ZEtYZlZZQGF0eU87OE1fIThq
R2l3RTY7U3F1RkxRMnItWDI1SnBPKVgpZj5vdWYwamNPYEJTflQjCnozVT5OcGg7MC1md2FuQitP
LWlXX1NYRGw7ISk1TCh7TmRzMCV9c04kdnp2Xm8tbTlla2lkNCRaaWh9THt3ckdiVwp6PkxBbGxj
VlNVPG08ITsjVFhBT1h1YikrTl49Mn4mR2QjV2VaQ1Iwb3laMCt4PFpkPFl3Pk91clJqZU9YbGc/
OzMKekU3djZNamdQTWYlOU9DdCpVQntOPnomfkdNcUI2bVMycj9pJiokVXAmZ3N0dHQkeH1qIVRm
NFpQcFdebylzS3hWCnpOIUk5KSpQWDZTNXJ0dGYlfkh4V3VPRSR9aWRrNF9sZ30tQHtRMFpsKGZ2
Z0NgO1YyMiY1MiFFVm0kUW5tb3luTwp6bVZqM2RANlM7MzJgVFJHYnFVfE51TjdJWCtPJVFmSTFP
RkY2WkUhb1QtZCUmNzxUMHdFTGtIPGxERU1NLTNiTGsKelBRV2doJXRRPWtLTnh5MHpQN0x6KFF4
PGU/QXMmIUF0eGkmKT0ye1hucjApWFhLQ1glbDtOUlNWfCtmVTQpTWh3CnpSbWJ7c21ReGZBaT53
UUFCa3N7M0tvUVI+PnRjQylsWlNzYndrSm07XzdrcHptdCpnTyE0OD0tYUMoUDc2OWVxNAp6dEV0
UDVOOGUqeT5fKlZMekI8SUhLYzJnel5gP0J9OFNiQEVDSER0d3o+T0VfVFR3MEIlSVpBaXBPVUFR
YXB1VzsKeiF7IVAkREYpdmdyKitmMVhka253I09wa3Jpdz9aVC1qeFF5P1pGMnBae2ZWKklNN3s2
ZWo9IWdJKE0+a1ZRWkZ0Cnp7TWtDPFZ0IW84JHc/R0hOUUE8KTBSTl9JczlyU24pOUMyWUAzck9r
SjtJek5zJCtyR0RoNFluY2I1OHpfbiltUAp6RUY2KUVBVmtRPzY0QSlRNms9STMhYkdfWClPTS1N
LWJIckYmRFpaKFN8YG01O2I8R2E8OCs4fihrdC03Um80dkoKelRpKiFSQnFqUSpJKTQtfC02T25s
ZWwtNCRlcFIlbl97cnt6VnR7RE9tdiM0elJnZTdYdjIpTWlpP2ZQRmBMR3VlCnp4UnJ1Vy0wd3J9
cVUjNXwkTUkjWk97dzkzS0k7KHdJbDFhaDI9VHJjekolUi1fT01STG9kdEV8ZWVrdFJ3QFhzYAp6
aj5gYk1rJU5nZExieSM2c2slTEN1b1glZDxEVWUjKlZnSnptRGhJOERecHVsVD88MGp1YzRPY2BB
QygxS2N7KUUKejdxaTxsMSlodEJGRWlAO3FBbTMrK1hxOG5uKCp1fm5paiYjNCk1SlpobzhpZyh1
OXlTQDk5b1NVcH1qPCEkRjBRCnowRzFZXmFwc3AhWnZSWDJLNm5SRHs9RkU/bkJkKER3KURHPz5k
K3NsS3dlSmArb3tOQTdQZCs8ZHEzY2NuIWwzVAp6QSQ0PVlwX2IydV9uSXA8PUl0c0pIb0x5Rngl
MShAUHlAXndkcnEkN0RqY3YoVlFTU1FxQjdKZTBLXmptJDhpNzcKekVaT2Bpb2NRWi1GPT1+NiZ+
ZiMqYyNRWTgqOVg8MmBqYmx6RWp1e0MpPDlqUVJMfj9hJnYxPzMjKXhuWClrRFF1Cnp4Vz1nKiZS
UkA9M1RlRSFieDA4cHBuSWBXMGheb2FkJD9KIWtnRmM/I00/QmMxMj0+NiRQNDdgPnklOX1QaD5I
QQp6T3IzYG5qJndnRFpMO1c/dV57MiEpbCE/Qkk1aG5Ee19PTWJLbF9aezZXX1lieHQze0dLZkxe
ZDZZfGB6QGZsaTIKemljIWtuV2lDSnp4cXk5MUFDb3JXeWVtKGFtZnZOSk5wIWZDZEBFR0NgISsk
YmVsIzViXko0SVMpIXUocEVpJTd2CnpkWDthZTBQJkVYQHB9b2RSc2RNNWRrUmhaUylUaTFhbld6
dFZwbT5jdVpkRGtMKD9EMyY3a3dNI2tufGI+MURZcQp6ZEFaVThEWVUxP0hAP2J8OSUkXnMpQnNi
TzI2N0w5NzQtSm5uZ35ZaFZqN3JIYnhAKSZHbTYkPTYrMVNxcSZBZ3UKekd4V0tYMmVVKytJVWU8
Q29YdD9LTylVfHo9UW1VNnZGIXE3UDNIRDwqWFQ1RFoyKEZLMUcxT2ljdXJhWG14bW9YCnpqZGBG
SmI0TEhnSE9LeEoxMUV1RkZ2UjBebjkrRlpJdWY5NXhKK0k4O1ZzWF9tMlM5I24lTVFINnBlUXRT
dmJBXgp6ZkQkJUg3QkYzQlNYPk1AS05XbkZeQjgxOTYmdXBpM1Z3K0pxKUREKXRLQWZqaz0hfjNy
NFRBQUpQUERGLXtDVHwKek5TPlg3SzU/Pzd4ZiMoY3J1KDk5O3k4bU9sb3QlYmFhKlRoPHEqSUhR
Tl9SU1F6ckZ7ZUtoaChocm9RV14kNk9QCnprRz8lJGVlMCEpbyp6PkEpfCpNbCN6fHNyJV4pa3pS
VSF1c1kpZmVyIShSdTZiNTxNOzhocjdRRnY2JUZhQXFHfAp6Sig4ITxNVG49bmh9N3okSGNiRmIz
JilgcWI0bGtlPWJgY1N5fSplQyNEMTNRSXp2RmRyYCh6LT8zR1g5SmFAbSsKej1GejRLNSpJYVhC
PmR+aD5fbl9NY00+VzNaN0oqeWFaSXJNIyk0WWtyVD8zJGs/RThMUy00Uzg5KzhUUkVeKUg+Cno2
O3w0REdCKT1ZJW9GM1A5anUhK3hgemJ+RzlXbC1DQUJKSkVtWmh3U3R5JllyU3R0bCoje1puUHs4
JkEkXnJWZgp6NGZhZjR3RDBKWUN+P3I+RnxvWkdKRUdJISp2WSZEVmY8QTJEJX5EZ2p0YWEyMns8
SlUoakNqcG4/YWkqJChyWSkKemd5PW49bH1zb3tiVExjenRlOEYpUXdxXyhLd0o7WUBJYVU8dS1k
fX5MQDlTJWpuNmt5O18pR3lLcGwxJkplRXB6Cno8flFWZF5WZ1ZRa3lmSX10X2gxOGdtQkslTzB2
Y1JSUVg2WUtUP21RMjhoRG8zPj8oeip7ezM3PG8qaCMmZ1d6IQp6ZFFvQUtGbip8b1lqcHghS0Fo
bGZUdndEdXk4aUEzaX04ZkpwYztBKSpnSmlyN3Q9eGxSVFFVRVlMeEw3KnlMX2AKejY3VyVzV3N4
aXtuR245fV5LSkh0Q21ie1kwZVY3eiFaYTNtPlFEVXh4MUFNWEBHaHl8Xn5NWjNMfkNEb18xUkVE
Cnp0b3okVihoTUVUSkd2OX44NmN1S2JibG4zOEFgbkdIa01lKV5mfXxlPyMyQnsrJlkzbno4Z1Yl
RGQ9VzljRHZPdAp6amAjS3JWZDM0Nk9QRCR8QyR7NiY4SEY7TmR9LWcwYUJtN1F5N1hDcklCQilu
OFM+STFXeG48ZHthZWI8REltbUwKenlfVn5uYjRIISRBMXR1emN1JndqZUhlWj5jJV5jP051YiV2
O3t5PCFNajNeJVh6eDBYa0RgZkdINm1eVnVxd3NnCno4dFRlN1U3QWVLTyh+IXEoSyZEb1RCNG9l
VDA/WnpFSH47Tj40U1FJaiVwXmw4bW92ZWVlaXE0Nkt1YzFGeD83PAp6YTZFaD05PHNNSDdCQkJx
Z21yO15OUHxZX1BNckBxUHh0ND1ZVTY3TnhCMT5RQ1k7Nj5AQHxTbVJKbDFMV0lPRWIKektzUSpm
MXNyMG9ibiZSRWdBJVhqYT9lfWpWdyVkI3hCM01SeWw+RUBPV2V1fShKfj1tTGdkM1cxMDd+KyM5
U0BHCnpnJlRRVDAyPSVpanA0OT9KMFBDdlRSS34mPGAhfUA3Zmh0Tz03UjF1R2kzbWIwcTJXcmly
PTIjdiRaLU0kVyZuKwp6bE4/MnUhUGY3SWxFa1BFQXNpRClKOT1vdVl0NnI+WHY2MkE3UE9Pdzs+
Mj5HalJtSnNvTjA2bWkpQlhySylzbUAKelUjdnBkbmA7S2hsYE0+c3MzKkJJZEJ9LVVfOXtwUSlU
PTltRT93WGVLMihmQzBfakNRSDdfUUBDdHFPNENLcSVNCnp0QiRAckk4N3RPey1LO3hhWEN4WUhk
fCM1TWN1LXAhRVNUPW85KFNCUkhwSUdUb34rKWRXcmxlZjRGeWJfPz15Sgp6QUstNWg8cnFHdCNq
cFQyLUU7NCM7NFNGRkBnTX18LXdmNUwwbUVyZll4aiVhT3ReMSRHUGxBdkI+bDF0Zyl2TT0KeihZ
XlNhaWIkVDIjK0tJdllNWn1MIzktVk1CQDllY1Q8ckVARGdxISYxVEBiP1g2aX1WUU1aVD9vYHlq
Yk1wN2IoCnpEOUJFPD1uUGlAJX1NQTAwczNWayYjU0NPPHI1fDw7Qml8STVsNGJoMmFjMSF6TDNO
TStkX1M2X3AkZW8qT1g/Iwp6JFpTKSV0Tmskc2QmUklmaUJXOHNJJEw0UUF+NFlqeGhWOUl4fEpT
UjhUZXV0MTglOCp1fmNCKmh6bmc9XztlUF4KeipleyQpdkVhaUFWWjJQPnUkfGRkVkJFQ1UkKVQ3
PlotLW9xbFM1YTJyYFJFbWNmZ2wxRCVaUEAoP2x6ZCliekorCnp0e31ecntwRz1jTGF5QmJ2KDVr
cGRoel5vNXF2fDR5RD42Um5BdC1WTipgbFgpKD9Nclk9ek0mQHUqK3FMSHFZVwp6MiVYUkdLZHFW
K3VjSVJgU3dzM21EWSR+WD9ydU1jYHlUQHNsJXYhQkxYK3loJDJKOzByaVlfcDQ5UU1AezQoQiUK
eiE2KGVIIVdhcyVwTFBBPjNDc2Yoezk2em9sRDE2UEo0NSNJJC1eWkRRYUZ2VFROPDc2UmFtSS0r
JkRsdkxSMEBOCnpHZENVWmhnYT5+S0RMeVlWWX5YTWhCWGV6UTg0fS1ZV3U7ei1jPkdfMVV+YTR0
X09VJlBqZU5RakBIfnxnUnxndgp6UDAzSXZnTDQrfD4rSUN2PG1LOyNEYSZedkxGaHdeKChtTUBN
ZjNPbHFLTHclYW1UXyZKIXpneklBd3huelgrazQKekwhO2daQENYbG92YXhaWkEpUm5hP0QlMlEw
RipMQERyM3pwP0FVVE5DdjAkKm4qNVdvY0prZllramRfZzNFJW1LCnp2fXtMalF6I34qRDBNI1pG
cmA0SXZTa1BkYzd6YU0zRDRTdUBISXdHY0F8QjQrNUJ9fTcpS31rQHpZdmQ0anF0bgp6REo3MStG
V2FtTVV8TEV1dkV1TTIhayk3WnJmdmhkbnZOMDNsXz5sMmcwYU4pTE9qOT9mR2wke0Z1SHtwaXJp
eHEKekR2NXNuQz1RRX1xV1BCK1Z5dWA+KSZnblA1RD88fW9UYlNMNGt2eG4mI0UkY0lXQWNKK2pH
U2NNcj5hY1Y4PXZaCnpQdmdyYiUze2gzdFYoK2NeJDEwdE9XbU9rO2BrJT80b0Y5TDNqQ0x8a0wm
M3dFSXBKbT9uTiNWWmpzMEVWUW4tKAp6NE1SaCs8ZngxfSN4NnhDeDJHRG9KTj1CR0JnNTNUZHQr
KXgwQDRkV2RtRD5hTllha1c9Zn0xOEZRREtoX30lRXEKekB8RGxJe288SDFAQElGR1U5T0Y8S0FT
eiVoS2VwUFVmZ0A+Z3dMPj1lPipkV0YwR0cwNmxVc3F5PnQ2O09jVkIrCnoxdHZoNTJjQ301d09T
PlRQdEI9ND1IPEdsPTdNYk5tOUlWZnJVfEooMkA8a28hbW1Jd0hIVjQ+NmdjYT9MUTczPQp6bU5E
UCRETjdJIXh7T3RtJkVfJSgheGEhP2RvJSgmeV44fGxhcz95NXt2cWQySm1qZ3MwUCtAUng2QGRJ
ajBvMiQKejs0ckNhNFlxWl5SbXZrUiRSXlYkb3BnUyNoSnViSnNAUj9gX3RQQWo2KCsoISM2JjNi
ZXB7aEZVIU0pKW4lQi1BCnpTP0lzLT9sYnp6OU1FSldaMSUjPFRBRmIxNFcwWStPR3dkfTJ2OF80
IyNeT0wzZDktODBSKGMtUm9rb00oUlF7Uwp6M1Mxe2A1KWF9SGpWSHhAXnhhPGl0QiZkKSRiI1RY
Tk47YTVlbTl1cFg1YnFjWDIta2dTZmQhPzhQVXJqYzR2JTQKel9lMjFQQCg1UkZwOTkpKWo2JWxK
QGpXdHl1TzlIS219KG54M1AoPVhgXnJTfWdgMzRIP0RnPiVPXmVBWWN+VmI1CnpHaCVBXmx+IypR
XjhKe3U1ej1IYndIeGt3KmtnYHdgMHVgd0o5eFZ2VXlOP2NuTjhFMSgzaVlVejd4OU92TX45agp6
KTw/XzxvRVFmNFUofSk0K0lsNXIqdk1MR0shMT16Mjw3KyZmRXcwT2JqWD92JG5wR0M3TEpuKkZL
JUM0enVqZEsKemp1enUlJXdYSitQV0RqX207d0BMJiY3ZXNgfWd3M3deRzlHeEk9MzEtPl8lQWkj
flQyWHIpSjd1V2l8KTxyQyhZCno2Xip+a3oyV0tIUWgoMHp7PGBgPyM5X2RIYGI3bFNmSEFWZ3k4
eklXSWhwdntiLWFRVjE2fUZXdHY/MUNsa2I5IQp6IV5wOzUmWXBWbmNeZj90S1dmM09eZHBucVZv
N0x1VitsM1BjVjY8VmxhMX1YTntKY2tycllfMzVyOTEtSnsyd08Kek5ZQUR5bjcmYFB4eW08Kz0t
MyhgYWZ4VkA7WTVITzBYfStVYjFJeVA/Y3NnN1Y7MV5iNkthQztvI1hvMnF6OFhpCnprXj9YcDJV
Q19+UDNCJVVafDQ1OUYyPH5Rc0syayRDUiFyfmgqMHdIJn1ubFZSUn4mNHhrS1g4dXhtTUNYYz45
aAp6SmF1Yn5tYC1uPFpxTWw5aDtkPT9aaT56JWJ5NGMoRC1RUTZlKExXUWFCMDxOVkBWazNLMiZI
bDFWbDlFM29uaE8KejRYOEF9PU9yKDtfRXFkP3VlRndRLTZFK2BDRH5yZno3aVNYcFBqXzJZPH59
TD1RQCtVe2l1Vjg3YyRgYnE1bUZrCnpSaXAyIVA8PS0+KiprJXc8VClsN2ViWl56YCpPYkgpN1dp
M2FWQyNtJGs0YHpKQ1VLcVhmNWhWRXo0eGY/QmBpSwp6YSRPZXNJRGsrWV9GSEd7d15YalZySXNl
XyglVzBfcDtiMz48N3pxNG1wb2tHK28+cWZpVm9DNSZ9fGd+azdSVjwKelF9cjxUalk2RDROYDx4
RSZmSUw3T3NlM1cpKkd7MD9CPFFAVFdYRjlAMXEhP2RZT2Y1eyoofTRCeXtpKlZgWEVlCnpBKSo1
NSl5OGtsPyN3YE0yNzs+NSYqbzVmMGBaSHpCTz9zNDYoXnpWWlhMU1pPYT5va3g3SX5GKjskTVAl
QXM4UAp6I1RQZ15EOWxRPjQ0LTxWZWwkX3RXJm53R2JMfkV9UH5tTSsqTmJ9O1orUnktQUpVJnlv
I0JyKER1dm9XVldOZG0KelpqNitMbzVoJCUrQmZKQSlMYmVQaHF+dkEpZ2x9amwoWEI5dldPe0Za
Z3xMQWZnbHlWI0dDO1JPXjk0TlUzdDUwCnoxNTJpeWlKWUJBd001NFpFP2MtbSFyMW1CJUVkcWsm
OFZ+bE1oYEojTz5FZjEqcFJBaEk+RCU3PTxRYnA5U2RyOQp6d1kqQzVFbXhJaWN8NHd8QEp2OVZS
Pkd8am01ZntJUyQtJGt7Y1k+Ulo8TCNwYH1abEdaOT5xT1FWXippKTRsO20KemZAVWFIVF87SzRe
YFJDfm4wNFNScjsqVWxvbG1FZHNmJGhfIVVoZXgxYnU0TD1hO1h1aERSQilAcl9zc3JMKkhpCnp3
OyM4RjhPSDtqdEl8WCFMfkNPRyklZE1MczMyRlBgMWEwOG9jcktIT2JHPG09TS1tMXloSF9MWD5F
U04mfHE8MAp6ekApbCNifHR0bD1Tfkh5XkVMODl5N085THFaRTQ1Y3oxMlZjO2lyVmFfJSZlZWpZ
UD0mazRoPTxmfnQhMWFLd2EKekFYJUFXYVR5c18kMWN9clBXM0dXVilTVUooRjRBTndxcCFoYlcy
czhDPyhGeT10WlZ2aTRzRV5LSnZpRDF8Xz5rCnoxdj1RYkJIVSlKYWEpdm5YVy14cj9jOEZgUjZv
NXxZa01feyFxVXUzdjhsTUFkfFlHMCQ/KSh+UTdGdjk1SVdtawp6XjkyNEdEX01XREhTIztMUjxA
Y2BmN3xEMD55Vj0rS05uOUZNYCFTQnwxMnp0b0N6UWBEP1ohdVlOYXhYPj4xVXMKempQe0p6dHsl
OUllLVYrTFNVeTx6bnRVdH5ZeU1aQ0Qjbj1GJCl2THVgJFNeeEtzT0dndiV6XklFe1B4d2xXY3Ns
CnpnIX1NOFI7VENWbVpkcUooI0I0fl4hPiRXR1NlaH1WT2x7c0UyNTNjSSpoYXVLWG9KSHNMMDYz
TGItU2Q+PVNPfgp6Z31qfF95Wj5TQUU2Wj5Xb1ZScXFaS3VMX3ZFKyElY0lRQy0oeEo0ekBVQGNk
a01wYVZLQVk8ZEt2TDUlSEJ1X0EKenhhM24yc0cwMT9vS0gpV2NkaFFaSD07VS11aUt4ZnRCY1Ur
KVUhYj84dSlFZXtSdkdDSD1QOyprX0o+b1g7Vn0pCnpLeG5BVWUwPnk+OE82S2s3Q0VCVnVOcVU8
cTR7WH12WUlrSlUofTU1SF9yIXByRmYxe3ZLTzhLPXRDQTZAQ2c2RAp6JE5QPjtXYWxzfUQzVzMr
bX1YdFQ7aDtFXjlgKmExTU5tbTx0O2xqTFArTlNySEMoV2I+anV0Uz12Y0NZJGl5dHYKei07TTdV
UmorRUNIS0Q3eHpfZSszMjVEKGM8ZTJlRXQxUXluYyF7WDEzZ2J1PXRFVnJeNDs0PWkrVVZ5fk1a
Wi17CnolMm1JKkl6Rmc5RzFwMWxDbmJ5SjwoUmpreVcxdEtlVyk4bExYYWJnZjVWMExtZ3Fyd0RH
Jm10MDlHWWh0UV5HJQp6VWJ5N3B0JkR5KU01UCh5Q2tQbypefm5lQiNmXlooWUxyQHUwQVUwLUFF
RnthdW8rWVdnbTlDcnhgblU8e0BrSHMKejBFWSlze3VUdUFwRykpdGZWZzEoNiFXaShkcDlZLSZr
ISprQnx2e0o7Y1dvRncmODdvYC1eU35zRUNfai1MTCopCnpwYEhkck5FKmZvZkN1Uks7M3V7Z280
dkVZe3JOUWo9I29MWDdyVlY8VnJncD5eIXhMWm4xWU98XmpBcmYhMmJmRQpDYF5paUkKCmxpdGVy
YWwgMApIY21WP2QwMDAwMQoKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3BsYXRmb3JtL2lvcy9m
YXN0L2F0dGFjaG1lbnQvYXR0YWNobWVudC10aHVtYm5haWwtcHJlc2VydmVzLWFzcGVjdC1yYXRp
by1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9pb3MvZmFzdC9hdHRhY2htZW50
L2F0dGFjaG1lbnQtdGh1bWJuYWlsLXByZXNlcnZlcy1hc3BlY3QtcmF0aW8tZXhwZWN0ZWQudHh0
Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAuLjhjY2RjNjk0ZTE0ZmQzODFkNDg1OWMwYjdjOTZiZjkwNzg2MmY3MzcKLS0t
IC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9pb3MvZmFzdC9hdHRhY2htZW50
L2F0dGFjaG1lbnQtdGh1bWJuYWlsLXByZXNlcnZlcy1hc3BlY3QtcmF0aW8tZXhwZWN0ZWQudHh0
CkBAIC0wLDAgKzEgQEAKK0F0dGFjaG1lbnQgVGh1bWJuYWlsOiA0MDB4MjAwCmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9tYWMtY2F0YWxpbmEvZmFzdC9hdHRhY2htZW50L2F0dGFj
aG1lbnQtdGh1bWJuYWlsLXByZXNlcnZlcy1hc3BlY3QtcmF0aW8tZXhwZWN0ZWQudHh0IGIvTGF5
b3V0VGVzdHMvcGxhdGZvcm0vbWFjLWNhdGFsaW5hL2Zhc3QvYXR0YWNobWVudC9hdHRhY2htZW50
LXRodW1ibmFpbC1wcmVzZXJ2ZXMtYXNwZWN0LXJhdGlvLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
Li4zZWQzZjYwNjhmYmQ5MDFhN2JjMzY2MDkyMTJkZjdjZWY3MmU4Y2MyCi0tLSAvZGV2L251bGwK
KysrIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjLWNhdGFsaW5hL2Zhc3QvYXR0YWNobWVudC9h
dHRhY2htZW50LXRodW1ibmFpbC1wcmVzZXJ2ZXMtYXNwZWN0LXJhdGlvLWV4cGVjdGVkLnR4dApA
QCAtMCwwICsxIEBACitBdHRhY2htZW50IHRodW1ibmFpbHMgbm90IHN1cHBvcnRlZC4KZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL3Jlc291cmNlcy91aS1oZWxwZXIuanMgYi9MYXlvdXRUZXN0cy9y
ZXNvdXJjZXMvdWktaGVscGVyLmpzCmluZGV4IDQ3YmZkNDUyYWYyMzRhZmUxYzJjNjQ0YjJkZDhk
MGFiYTlkNGM2YjAuLjI1NDkzZWNiOGQzMzEwZTFkOWI3NmU0MDBlM2M4ZmY3MzFmZjI1OGEgMTAw
NjQ0Ci0tLSBhL0xheW91dFRlc3RzL3Jlc291cmNlcy91aS1oZWxwZXIuanMKKysrIGIvTGF5b3V0
VGVzdHMvcmVzb3VyY2VzL3VpLWhlbHBlci5qcwpAQCAtMTAwMiw2ICsxMDAyLDE5IEBAIHdpbmRv
dy5VSUhlbHBlciA9IGNsYXNzIFVJSGVscGVyIHsKICAgICAgICAgfSk7CiAgICAgfQogCisgICAg
c3RhdGljIGluc2VydEF0dGFjaG1lbnRGb3JGaWxlUGF0aChwYXRoLCBjb250ZW50VHlwZSkKKyAg
ICB7CisgICAgICAgIGlmICghdGhpcy5pc1dlYktpdDIoKSkKKyAgICAgICAgICAgIHJldHVybiBQ
cm9taXNlLnJlc29sdmUoKTsKKworICAgICAgICByZXR1cm4gbmV3IFByb21pc2UocmVzb2x2ZSA9
PiB7CisgICAgICAgICAgICB0ZXN0UnVubmVyLnJ1blVJU2NyaXB0KGAKKyAgICAgICAgICAgICAg
ICB1aUNvbnRyb2xsZXIuaW5zZXJ0QXR0YWNobWVudEZvckZpbGVQYXRoKCcke3BhdGh9JywgJyR7
Y29udGVudFR5cGV9JywgZnVuY3Rpb24oKSB7CisgICAgICAgICAgICAgICAgICAgIHVpQ29udHJv
bGxlci51aVNjcmlwdENvbXBsZXRlKCk7CisgICAgICAgICAgICAgICAgfSk7YCwgcmVzb2x2ZSk7
CisgICAgICAgIH0pOworICAgIH0KKwogICAgIHN0YXRpYyBzZXRNaW5pbXVtRWZmZWN0aXZlV2lk
dGgoZWZmZWN0aXZlV2lkdGgpCiAgICAgewogICAgICAgICBpZiAoIXRoaXMuaXNXZWJLaXQyKCkp
Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>408239</attachid>
            <date>2020-09-08 10:21:34 -0700</date>
            <delta_ts>2020-09-08 10:36:17 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-216209-20200908102133.patch</filename>
            <type>text/plain</type>
            <size>35895</size>
            <attacher name="Tim Horton">thorton</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjY2NjE2CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMjE5N2YyMTY0ZDVmYTQ2
ZTYzMmQ0YjIwMDhmNjVmNjU4NTY2MmMyMC4uOWRlZTc4ODE4NGE1Y2M1YWFiZWQxYjBiOWUwZjU4
YmIyZTAzOTFmZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI0IEBACisyMDIwLTA5LTA0ICBUaW0g
SG9ydG9uICA8dGltb3RoeV9ob3J0b25AYXBwbGUuY29tPgorCisgICAgICAgIGlPUzogPGF0dGFj
aG1lbnQ+J3MgUXVpY2tMb29rIHRodW1ibmFpbHMgY2FuIGFwcGVhciBzcXVpc2hlZAorICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjE2MjA5CisgICAgICAg
IDxyZGFyOi8vcHJvYmxlbS82NzgxNzcwNj4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkg
KE9PUFMhKS4KKworICAgICAgICBUZXN0OiBmYXN0L2F0dGFjaG1lbnQvYXR0YWNobWVudC10aHVt
Ym5haWwtcHJlc2VydmVzLWFzcGVjdC1yYXRpby5odG1sCisKKyAgICAgICAgKiBodG1sL0hUTUxB
dHRhY2htZW50RWxlbWVudC5pZGw6CisgICAgICAgICogdGVzdGluZy9JbnRlcm5hbHMuY3BwOgor
ICAgICAgICAoV2ViQ29yZTo6SW50ZXJuYWxzOjphdHRhY2htZW50VGh1bWJuYWlsSW5mbyk6Cisg
ICAgICAgICogdGVzdGluZy9JbnRlcm5hbHMuaDoKKyAgICAgICAgKiB0ZXN0aW5nL0ludGVybmFs
cy5pZGw6CisgICAgICAgIEV4cG9zZSB0aGUgYXR0YWNobWVudCB0aHVtYm5haWwgc2l6ZSB2aWEg
SW50ZXJuYWxzLgorCisgICAgICAgICogcmVuZGVyaW5nL1JlbmRlclRoZW1lSU9TLm1tOgorICAg
ICAgICAoV2ViQ29yZTo6UmVuZGVyQXR0YWNobWVudEluZm86OlJlbmRlckF0dGFjaG1lbnRJbmZv
KToKKyAgICAgICAgQWxsb3cgdGhlIHRodW1ibmFpbCBhc3BlY3QgcmF0aW8gdG8gdmFyeSwgaW5z
dGVhZCBvZiBhc3N1bWluZyBpdCBpcyBhbHdheXMgc3F1YXJlLgorCiAyMDIwLTA5LTA0ICBDaHJp
cyBEdW1leiAgPGNkdW1lekBhcHBsZS5jb20+CiAKICAgICAgICAgUkVHUkVTU0lPTihtYWNPUyBC
aWcgU3VyKSBodHRwczovL21hZ2VudGEuZ2l0aHViLmlvL2xvZmktcGxheWVyLyBpcyBicm9rZW4K
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nIGIvU291cmNlL1dlYktpdC9DaGFu
Z2VMb2cKaW5kZXggOTQ5MTFkODk2MjUxYWU3Y2E2NTg1ODc0YzUyMGFiODg2ZmFlYjliMy4uYmY3
YjA3NDE1MDE4NGYzM2U0ZGE4MWI3NDhhMzA2NWVmMzgyY2FkOCAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYktpdC9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cKQEAgLTEsMyAr
MSwyMiBAQAorMjAyMC0wOS0wNCAgVGltIEhvcnRvbiAgPHRpbW90aHlfaG9ydG9uQGFwcGxlLmNv
bT4KKworICAgICAgICBpT1M6IDxhdHRhY2htZW50PidzIFF1aWNrTG9vayB0aHVtYm5haWxzIGNh
biBhcHBlYXIgc3F1aXNoZWQKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19i
dWcuY2dpP2lkPTIxNjIwOQorICAgICAgICA8cmRhcjovL3Byb2JsZW0vNjc4MTc3MDY+CisKKyAg
ICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBVSVByb2Nlc3Mv
Q29jb2EvV2ViUGFnZVByb3h5Q29jb2EubW06CisgICAgICAgIChXZWJLaXQ6OmNvbnZlcnRQbGF0
Zm9ybUltYWdlVG9CaXRtYXApOgorICAgICAgICBQcm9wYWdhdGUgYW4gaW1hZ2Ugb2YgdGhlIHNh
bWUgYXNwZWN0IHJhdGlvIHRoYXQgUXVpY2tMb29rIHByb3ZpZGVkLAorICAgICAgICBpbnN0ZWFk
IG9mIHNxdWlzaGluZyBpdCB0byBzcXVhcmUuCisKKyAgICAgICAgKiBVSVByb2Nlc3MvUXVpY2tM
b29rVGh1bWJuYWlsTG9hZGVyLm1tOgorICAgICAgICAoLVtXS1FMVGh1bWJuYWlsTG9hZE9wZXJh
dGlvbiBzdGFydF0pOgorICAgICAgICBPbmx5IHJlcXVlc3QgZnVsbCB0aHVtYm5haWxzOyB3ZSBk
byBub3Qgd2FudCB0aGUgaWNvbiBmb3JtLCBzaW5jZSA8YXR0YWNobWVudD4KKyAgICAgICAgYWxy
ZWFkeSBoYXMgb25lIHdpdGhvdXQgUXVpY2tMb29rJ3MgaGVscDsgaWYgd2UgY2FuJ3QgZ2V0IGEg
ZnVsbCB0aHVtYm5haWwsCisgICAgICAgIHdlJ2xsIGp1c3QgbGVhdmUgaXQgYWxvbmUuCisKIDIw
MjAtMDktMDQgIFBlciBBcm5lIFZvbGxhbiAgPHB2b2xsYW5AYXBwbGUuY29tPgogCiAgICAgICAg
IFttYWNPU10gQWRkIGNsaWVudCBkZWNvZGVyIGVudGl0bGVtZW50CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9odG1sL0hUTUxBdHRhY2htZW50RWxlbWVudC5pZGwgYi9Tb3VyY2UvV2ViQ29y
ZS9odG1sL0hUTUxBdHRhY2htZW50RWxlbWVudC5pZGwKaW5kZXggNTIyZTI1N2FhZmQ3ZWQ4ZWMx
M2JhMWJkNWYxZDA1ZTRhY2E1MzJiZi4uZTc0YTE3YWI1Mjk2Y2UxNWJkYTAzZjcwZTBjNDQ4YjY4
ZWRhY2UxNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MQXR0YWNobWVudEVs
ZW1lbnQuaWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTEF0dGFjaG1lbnRFbGVtZW50
LmlkbApAQCAtMjUsNiArMjUsOCBAQAogCiBbCiAgICAgQ29uZGl0aW9uYWw9QVRUQUNITUVOVF9F
TEVNRU5ULAorICAgIEpTR2VuZXJhdGVUb05hdGl2ZU9iamVjdCwKKyAgICBFeHBvcnRNYWNybz1X
RUJDT1JFX0VYUE9SVCwKICAgICBFbmFibGVkQXRSdW50aW1lPUF0dGFjaG1lbnRFbGVtZW50LAog
XSBpbnRlcmZhY2UgSFRNTEF0dGFjaG1lbnRFbGVtZW50IDogSFRNTEVsZW1lbnQgewogICAgIGF0
dHJpYnV0ZSBGaWxlPyBmaWxlOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5n
L1JlbmRlclRoZW1lSU9TLm1tIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlclRoZW1l
SU9TLm1tCmluZGV4IDZmMGY0ODdjNDczZjUyNGM5Y2I4MjkyYmM4MzkyNzRlNTE2MGM2MjYuLjhh
YWNiMTYzY2ViZmIyODgwMThhODFlMTI4ODk3NzU0ZjM0N2EwY2MgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJUaGVtZUlPUy5tbQorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9yZW5kZXJpbmcvUmVuZGVyVGhlbWVJT1MubW0KQEAgLTE2MzcsMTAgKzE2MzcsMTEgQEAgUmVu
ZGVyQXR0YWNobWVudEluZm86OlJlbmRlckF0dGFjaG1lbnRJbmZvKGNvbnN0IFJlbmRlckF0dGFj
aG1lbnQmIGF0dGFjaG1lbnQpCiAgICAgICAgIEZsb2F0U2l6ZSBpY29uU2l6ZTsKICAgICAgICAg
aWNvbiA9IGljb25Gb3JBdHRhY2htZW50KGF0dGFjaG1lbnQsIGljb25TaXplKTsKICAgICAgICAg
dGh1bWJuYWlsSWNvbiA9IGF0dGFjaG1lbnQuYXR0YWNobWVudEVsZW1lbnQoKS50aHVtYm5haWwo
KTsKKyAgICAgICAgaWYgKHRodW1ibmFpbEljb24pCisgICAgICAgICAgICBpY29uU2l6ZSA9IGxh
cmdlc3RSZWN0V2l0aEFzcGVjdFJhdGlvSW5zaWRlUmVjdCh0aHVtYm5haWxJY29uLT5zaXplKCku
YXNwZWN0UmF0aW8oKSwgRmxvYXRSZWN0KDAsIDAsIGF0dGFjaG1lbnRJY29uU2l6ZSwgYXR0YWNo
bWVudEljb25TaXplKSkuc2l6ZSgpOwogICAgICAgICAKICAgICAgICAgaWYgKHRodW1ibmFpbElj
b24gfHwgaWNvbikgewotICAgICAgICAgICAgYXV0byB2aXNpYmxlSWNvblNpemUgPSB0aHVtYm5h
aWxJY29uID8gRmxvYXRTaXplKGF0dGFjaG1lbnRJY29uU2l6ZSwgYXR0YWNobWVudEljb25TaXpl
KSA6IGljb25TaXplOwotICAgICAgICAgICAgaWNvblJlY3QgPSBGbG9hdFJlY3QoRmxvYXRQb2lu
dCgoYXR0YWNobWVudFJlY3Qud2lkdGgoKSAvIDIpIC0gKHZpc2libGVJY29uU2l6ZS53aWR0aCgp
IC8gMiksIDApLCB2aXNpYmxlSWNvblNpemUpOworICAgICAgICAgICAgaWNvblJlY3QgPSBGbG9h
dFJlY3QoRmxvYXRQb2ludCgoYXR0YWNobWVudFJlY3Qud2lkdGgoKSAvIDIpIC0gKGljb25TaXpl
LndpZHRoKCkgLyAyKSwgMCksIGljb25TaXplKTsKICAgICAgICAgICAgIHlPZmZzZXQgKz0gaWNv
blJlY3QuaGVpZ2h0KCkgKyBhdHRhY2htZW50SXRlbU1hcmdpbjsKICAgICAgICAgfQogICAgIH0g
ZWxzZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuY3BwIGIv
U291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuY3BwCmluZGV4IDJjYWFjMGFkNmU4NDdk
Njk0Yjc3YTdiMmRlYzA4ZmU1YzE1ZjQxOTQuLjQzMWM5NjczZTk0YjRlOWQxODI1NDc2MDMyMzM1
OTc4ZDFmMmUyZjMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxz
LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5jcHAKQEAgLTg4LDYg
Kzg4LDcgQEAKICNpbmNsdWRlICJHcmlkUG9zaXRpb24uaCIKICNpbmNsdWRlICJIRVZDVXRpbGl0
aWVzLmgiCiAjaW5jbHVkZSAiSFRNTEFuY2hvckVsZW1lbnQuaCIKKyNpbmNsdWRlICJIVE1MQXR0
YWNobWVudEVsZW1lbnQuaCIKICNpbmNsdWRlICJIVE1MQ2FudmFzRWxlbWVudC5oIgogI2luY2x1
ZGUgIkhUTUxJRnJhbWVFbGVtZW50LmgiCiAjaW5jbHVkZSAiSFRNTEltYWdlRWxlbWVudC5oIgpA
QCAtNjA2NSw0ICs2MDY2LDI0IEBAIHZvaWQgSW50ZXJuYWxzOjpzZXRDb250ZW50U2l6ZUNhdGVn
b3J5KEludGVybmFsczo6Q29udGVudFNpemVDYXRlZ29yeSBjYXRlZ29yeSkKICNlbmRpZgogfQog
CisjaWYgRU5BQkxFKEFUVEFDSE1FTlRfRUxFTUVOVCkKKworRXhjZXB0aW9uT3I8SW50ZXJuYWxz
OjpBdHRhY2htZW50VGh1bWJuYWlsSW5mbz4gSW50ZXJuYWxzOjphdHRhY2htZW50VGh1bWJuYWls
SW5mbyhjb25zdCBIVE1MQXR0YWNobWVudEVsZW1lbnQmIGVsZW1lbnQpCit7CisjaWYgSEFWRShR
VUlDS0xPT0tfVEhVTUJOQUlMSU5HKQorICAgIEF0dGFjaG1lbnRUaHVtYm5haWxJbmZvIGluZm87
CisgICAgaWYgKGF1dG8gaW1hZ2UgPSBlbGVtZW50LnRodW1ibmFpbCgpKSB7CisgICAgICAgIGF1
dG8gc2l6ZSA9IGltYWdlLT5zaXplKCk7CisgICAgICAgIGluZm8ud2lkdGggPSBzaXplLndpZHRo
KCk7CisgICAgICAgIGluZm8uaGVpZ2h0ID0gc2l6ZS5oZWlnaHQoKTsKKyAgICB9CisgICAgcmV0
dXJuIGluZm87CisjZWxzZQorICAgIFVOVVNFRF9QQVJBTShlbGVtZW50KTsKKyAgICByZXR1cm4g
RXhjZXB0aW9uIHsgSW52YWxpZEFjY2Vzc0Vycm9yIH07CisjZW5kaWYKK30KKworI2VuZGlmCisK
IH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3Rlc3Rp
bmcvSW50ZXJuYWxzLmggYi9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5oCmluZGV4
IGExYTg3MWM4OTY4YWI5Y2M0ZGEwMzcwNDg2OGRiMDAyZDhmYTI2MTMuLjM5NzRkZjk3ZmI1OTY2
NmRhYjYyMzI4OWY3NGE0N2YzNGM2ZWY1N2EgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3Rl
c3RpbmcvSW50ZXJuYWxzLmgKKysrIGIvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMu
aApAQCAtNjksNiArNjksNyBAQCBjbGFzcyBGaWxlOwogY2xhc3MgRnJhbWU7CiBjbGFzcyBHQ09i
c2VydmF0aW9uOwogY2xhc3MgSFRNTEFuY2hvckVsZW1lbnQ7CitjbGFzcyBIVE1MQXR0YWNobWVu
dEVsZW1lbnQ7CiBjbGFzcyBIVE1MSW1hZ2VFbGVtZW50OwogY2xhc3MgSFRNTElucHV0RWxlbWVu
dDsKIGNsYXNzIEhUTUxMaW5rRWxlbWVudDsKQEAgLTEwNTgsNiArMTA1OSwxNSBAQCBwdWJsaWM6
CiAgICAgZW51bSBjbGFzcyBDb250ZW50U2l6ZUNhdGVnb3J5IHsgTCwgWFhYTCB9OwogICAgIHZv
aWQgc2V0Q29udGVudFNpemVDYXRlZ29yeShDb250ZW50U2l6ZUNhdGVnb3J5KTsKIAorI2lmIEVO
QUJMRShBVFRBQ0hNRU5UX0VMRU1FTlQpCisgICAgc3RydWN0IEF0dGFjaG1lbnRUaHVtYm5haWxJ
bmZvIHsKKyAgICAgICAgdW5zaWduZWQgd2lkdGg7CisgICAgICAgIHVuc2lnbmVkIGhlaWdodDsK
KyAgICB9OworCisgICAgRXhjZXB0aW9uT3I8QXR0YWNobWVudFRodW1ibmFpbEluZm8+IGF0dGFj
aG1lbnRUaHVtYm5haWxJbmZvKGNvbnN0IEhUTUxBdHRhY2htZW50RWxlbWVudCYpOworI2VuZGlm
CisKIHByaXZhdGU6CiAgICAgZXhwbGljaXQgSW50ZXJuYWxzKERvY3VtZW50Jik7CiAgICAgRG9j
dW1lbnQqIGNvbnRleHREb2N1bWVudCgpIGNvbnN0OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvdGVzdGluZy9JbnRlcm5hbHMuaWRsIGIvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5h
bHMuaWRsCmluZGV4IGUxZGFhM2ExNWQ3NWY1NjM2ZjUzYjYwYzFiZjFiZmI5MWExZGMzOTIuLmQz
ZGUzZDMwMWZmMWMxMGM5MzRlNjM5ODZjNjA3N2ExODQyZGJmYTEgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxzLmlkbAorKysgYi9Tb3VyY2UvV2ViQ29yZS90ZXN0
aW5nL0ludGVybmFscy5pZGwKQEAgLTIzNSw2ICsyMzUsMTUgQEAgZW51bSBDb250ZW50U2l6ZUNh
dGVnb3J5IHsKICAgICBET01SZWN0TGlzdCB0ZXh0UmVjdHNJbkJvdW5kaW5nUmVjdENvb3JkaW5h
dGVzOwogfTsKIAorWworICAgIEV4cG9ydE1hY3JvPVdFQkNPUkVfVEVTVFNVUFBPUlRfRVhQT1JU
LAorICAgIENvbmRpdGlvbmFsPUFUVEFDSE1FTlRfRUxFTUVOVCwKKyAgICBKU0dlbmVyYXRlVG9K
U09iamVjdCwKK10gZGljdGlvbmFyeSBBdHRhY2htZW50VGh1bWJuYWlsSW5mbyB7CisgICAgdW5z
aWduZWQgbG9uZyB3aWR0aDsKKyAgICB1bnNpZ25lZCBsb25nIGhlaWdodDsKK307CisKIFsKICAg
ICBFeHBvcnRNYWNybz1XRUJDT1JFX1RFU1RTVVBQT1JUX0VYUE9SVCwKICAgICBKU0dlbmVyYXRl
VG9KU09iamVjdCwKQEAgLTk2NSw0ICs5NzQsNiBAQCBlbnVtIENvbnRlbnRTaXplQ2F0ZWdvcnkg
ewogICAgIFtDb25kaXRpb25hbD1FTkNSWVBURURfTUVESUFdIHVuc2lnbmVkIGxvbmcgbWVkaWFL
ZXlTZXNzaW9uSW50ZXJuYWxJbnN0YW5jZVNlc3Npb25PYmplY3RSZWZDb3VudChNZWRpYUtleVNl
c3Npb24gc2Vzc2lvbik7CiAKICAgICB1bmRlZmluZWQgc2V0Q29udGVudFNpemVDYXRlZ29yeShD
b250ZW50U2l6ZUNhdGVnb3J5IGNhdGVnb3J5KTsKKworICAgIFtDb25kaXRpb25hbD1BVFRBQ0hN
RU5UX0VMRU1FTlQsIE1heVRocm93RXhjZXB0aW9uXSBBdHRhY2htZW50VGh1bWJuYWlsSW5mbyBh
dHRhY2htZW50VGh1bWJuYWlsSW5mbyhIVE1MQXR0YWNobWVudEVsZW1lbnQgZWxlbWVudCk7CiB9
OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQ29jb2EvV2ViUGFnZVByb3h5
Q29jb2EubW0gYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9Db2NvYS9XZWJQYWdlUHJveHlDb2Nv
YS5tbQppbmRleCA0ZDRmODg3ZWRjOTViMWVkNTc1NzQwZjE5OGJiZTYyYmM2MzNjZWE1Li41YmRl
ZTE5NWVlZTc2YjU2OWY2NjUwYjYwYzYyMmE5OWMwNDViMmJjIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViS2l0L1VJUHJvY2Vzcy9Db2NvYS9XZWJQYWdlUHJveHlDb2NvYS5tbQorKysgYi9Tb3VyY2Uv
V2ViS2l0L1VJUHJvY2Vzcy9Db2NvYS9XZWJQYWdlUHJveHlDb2NvYS5tbQpAQCAtNDMsNiArNDMs
NyBAQAogI2ltcG9ydCAiV2Vic2l0ZURhdGFTdG9yZS5oIgogI2ltcG9ydCAiV0tFcnJvckludGVy
bmFsLmgiCiAjaW1wb3J0IDxXZWJDb3JlL0RyYWdJdGVtLmg+CisjaW1wb3J0IDxXZWJDb3JlL0dl
b21ldHJ5VXRpbGl0aWVzLmg+CiAjaW1wb3J0IDxXZWJDb3JlL0xvY2FsQ3VycmVudEdyYXBoaWNz
Q29udGV4dC5oPgogI2ltcG9ydCA8V2ViQ29yZS9Ob3RJbXBsZW1lbnRlZC5oPgogI2ltcG9ydCA8
V2ViQ29yZS9TZWFyY2hQb3B1cE1lbnVDb2NvYS5oPgpAQCAtNDM1LDEwICs0MzYsMTQgQEAgdm9p
ZCBXZWJQYWdlUHJveHk6OnJlbW92ZU1lZGlhVXNhZ2VNYW5hZ2VyU2Vzc2lvbihXZWJDb3JlOjpN
ZWRpYVNlc3Npb25JZGVudGlmaWUKIAogI2lmIEhBVkUoUVVJQ0tMT09LX1RIVU1CTkFJTElORykK
IAotc3RhdGljIFJlZlB0cjxXZWJLaXQ6OlNoYXJlYWJsZUJpdG1hcD4gY29udmVydFBsYXRmb3Jt
SW1hZ2VUb0JpdG1hcChDb2NvYUltYWdlICppbWFnZSwgY29uc3QgV2ViQ29yZTo6SW50U2l6ZSYg
c2l6ZSkKK3N0YXRpYyBSZWZQdHI8V2ViS2l0OjpTaGFyZWFibGVCaXRtYXA+IGNvbnZlcnRQbGF0
Zm9ybUltYWdlVG9CaXRtYXAoQ29jb2FJbWFnZSAqaW1hZ2UsIGNvbnN0IFdlYkNvcmU6OkludFNp
emUmIGZpdHRpbmdTaXplKQogeworICAgIEZsb2F0U2l6ZSBvcmlnaW5hbFRodW1ibmFpbFNpemUo
W2ltYWdlIHNpemVdKTsKKyAgICBhdXRvIHJlc3VsdFJlY3QgPSByb3VuZGVkSW50UmVjdChsYXJn
ZXN0UmVjdFdpdGhBc3BlY3RSYXRpb0luc2lkZVJlY3Qob3JpZ2luYWxUaHVtYm5haWxTaXplLmFz
cGVjdFJhdGlvKCksIHsgeyB9LCBmaXR0aW5nU2l6ZSB9KSk7CisgICAgcmVzdWx0UmVjdC5zZXRM
b2NhdGlvbih7IH0pOworCiAgICAgV2ViS2l0OjpTaGFyZWFibGVCaXRtYXA6OkNvbmZpZ3VyYXRp
b24gYml0bWFwQ29uZmlndXJhdGlvbjsKLSAgICBhdXRvIGJpdG1hcCA9IFdlYktpdDo6U2hhcmVh
YmxlQml0bWFwOjpjcmVhdGVTaGFyZWFibGUoc2l6ZSwgYml0bWFwQ29uZmlndXJhdGlvbik7Cisg
ICAgYXV0byBiaXRtYXAgPSBXZWJLaXQ6OlNoYXJlYWJsZUJpdG1hcDo6Y3JlYXRlU2hhcmVhYmxl
KHJlc3VsdFJlY3Quc2l6ZSgpLCBiaXRtYXBDb25maWd1cmF0aW9uKTsKICAgICBpZiAoIWJpdG1h
cCkKICAgICAgICAgcmV0dXJuIG51bGxwdHI7CiAKQEAgLTQ0OCw5ICs0NTMsOSBAQCBzdGF0aWMg
UmVmUHRyPFdlYktpdDo6U2hhcmVhYmxlQml0bWFwPiBjb252ZXJ0UGxhdGZvcm1JbWFnZVRvQml0
bWFwKENvY29hSW1hZ2UgKgogCiAgICAgTG9jYWxDdXJyZW50R3JhcGhpY3NDb250ZXh0IHNhdmVk
Q29udGV4dCgqZ3JhcGhpY3NDb250ZXh0KTsKICNpZiBQTEFURk9STShJT1NfRkFNSUxZKQotICAg
IFtpbWFnZSBkcmF3SW5SZWN0OkNHUmVjdE1ha2UoMCwgMCwgYml0bWFwLT5zaXplKCkud2lkdGgo
KSwgYml0bWFwLT5zaXplKCkuaGVpZ2h0KCkpXTsKKyAgICBbaW1hZ2UgZHJhd0luUmVjdDpyZXN1
bHRSZWN0XTsKICNlbGlmIFVTRShBUFBLSVQpCi0gICAgW2ltYWdlIGRyYXdJblJlY3Q6TlNNYWtl
UmVjdCgwLCAwLCBiaXRtYXAtPnNpemUoKS53aWR0aCgpLCBiaXRtYXAtPnNpemUoKS5oZWlnaHQo
KSkgZnJvbVJlY3Q6TlNaZXJvUmVjdCBvcGVyYXRpb246TlNDb21wb3NpdGluZ09wZXJhdGlvblNv
dXJjZU92ZXIgZnJhY3Rpb246MSByZXNwZWN0RmxpcHBlZDpZRVMgaGludHM6bmlsXTsKKyAgICBb
aW1hZ2UgZHJhd0luUmVjdDpyZXN1bHRSZWN0IGZyb21SZWN0Ok5TWmVyb1JlY3Qgb3BlcmF0aW9u
Ok5TQ29tcG9zaXRpbmdPcGVyYXRpb25Tb3VyY2VPdmVyIGZyYWN0aW9uOjEgcmVzcGVjdEZsaXBw
ZWQ6WUVTIGhpbnRzOm5pbF07CiAjZW5kaWYKIAogICAgIHJldHVybiBiaXRtYXA7CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9RdWlja0xvb2tUaHVtYm5haWxMb2FkZXIubW0g
Yi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9RdWlja0xvb2tUaHVtYm5haWxMb2FkZXIubW0KaW5k
ZXggZTgwMTg4YjkwYjIyZmY2YWE3OTg2MDAzNDNjYjBjY2NhZTNkNmU2NS4uNWMxYTA3N2MzZTZl
YTFiNmMxNWE0ZmQ2OWI1MzQ4OWUxYmU5ZjJhZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9V
SVByb2Nlc3MvUXVpY2tMb29rVGh1bWJuYWlsTG9hZGVyLm1tCisrKyBiL1NvdXJjZS9XZWJLaXQv
VUlQcm9jZXNzL1F1aWNrTG9va1RodW1ibmFpbExvYWRlci5tbQpAQCAtMTA3LDcgKzEwNyw3IEBA
IC0gKHZvaWQpc3RhcnQKICAgICAgICAgICAgIHJldHVybjsKICAgICB9CiAKLSAgICBhdXRvIHJl
cXVlc3QgPSBhZG9wdE5TKFtXZWJLaXQ6OmFsbG9jUUxUaHVtYm5haWxHZW5lcmF0aW9uUmVxdWVz
dEluc3RhbmNlKCkgaW5pdFdpdGhGaWxlQXRVUkw6X2ZpbGVQYXRoLmdldCgpIHNpemU6Q0dTaXpl
TWFrZSg0MDAsIDQwMCkgc2NhbGU6MSByZXByZXNlbnRhdGlvblR5cGVzOlFMVGh1bWJuYWlsR2Vu
ZXJhdGlvblJlcXVlc3RSZXByZXNlbnRhdGlvblR5cGVBbGxdKTsKKyAgICBhdXRvIHJlcXVlc3Qg
PSBhZG9wdE5TKFtXZWJLaXQ6OmFsbG9jUUxUaHVtYm5haWxHZW5lcmF0aW9uUmVxdWVzdEluc3Rh
bmNlKCkgaW5pdFdpdGhGaWxlQXRVUkw6X2ZpbGVQYXRoLmdldCgpIHNpemU6Q0dTaXplTWFrZSg0
MDAsIDQwMCkgc2NhbGU6MSByZXByZXNlbnRhdGlvblR5cGVzOlFMVGh1bWJuYWlsR2VuZXJhdGlv
blJlcXVlc3RSZXByZXNlbnRhdGlvblR5cGVUaHVtYm5haWxdKTsKICAgICBbcmVxdWVzdCBzZXRJ
Y29uTW9kZTpZRVNdOwogICAgIAogICAgIFtbV2ViS2l0OjpnZXRRTFRodW1ibmFpbEdlbmVyYXRv
ckNsYXNzKCkgc2hhcmVkR2VuZXJhdG9yXSBnZW5lcmF0ZUJlc3RSZXByZXNlbnRhdGlvbkZvclJl
cXVlc3Q6cmVxdWVzdC5nZXQoKSBjb21wbGV0aW9uSGFuZGxlcjpeKFFMVGh1bWJuYWlsUmVwcmVz
ZW50YXRpb24gKnRodW1ibmFpbCwgTlNFcnJvciAqZXJyb3IpIHsKZGlmZiAtLWdpdCBhL1Rvb2xz
L0NoYW5nZUxvZyBiL1Rvb2xzL0NoYW5nZUxvZwppbmRleCA4ZDIyZGE5NzgxNTI1NDg0MzY2OTMw
ZjgwNGQ5MzYzZjBlMzc0ZDY0Li45ZGM0ODg5OWY1NzkxODRhY2MzN2YxZDNkZmM0Y2FlNDBjZjhk
ZmUzIDEwMDY0NAotLS0gYS9Ub29scy9DaGFuZ2VMb2cKKysrIGIvVG9vbHMvQ2hhbmdlTG9nCkBA
IC0xLDMgKzEsMjMgQEAKKzIwMjAtMDktMDQgIFRpbSBIb3J0b24gIDx0aW1vdGh5X2hvcnRvbkBh
cHBsZS5jb20+CisKKyAgICAgICAgaU9TOiA8YXR0YWNobWVudD4ncyBRdWlja0xvb2sgdGh1bWJu
YWlscyBjYW4gYXBwZWFyIHNxdWlzaGVkCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3Jn
L3Nob3dfYnVnLmNnaT9pZD0yMTYyMDkKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzY3ODE3NzA2
PgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogVGVz
dFJ1bm5lclNoYXJlZC9VSVNjcmlwdENvbnRleHQvQmluZGluZ3MvVUlTY3JpcHRDb250cm9sbGVy
LmlkbDoKKyAgICAgICAgKiBUZXN0UnVubmVyU2hhcmVkL1VJU2NyaXB0Q29udGV4dC9VSVNjcmlw
dENvbnRyb2xsZXIuaDoKKyAgICAgICAgKFdUUjo6VUlTY3JpcHRDb250cm9sbGVyOjppbnNlcnRB
dHRhY2htZW50Rm9yRmlsZVBhdGgpOgorICAgICAgICAqIFdlYktpdFRlc3RSdW5uZXIvVGVzdENv
bnRyb2xsZXIuY3BwOgorICAgICAgICAoV1RSOjpUZXN0Q29udHJvbGxlcjo6Y3VycmVudFRlc3RV
UkwgY29uc3QpOgorICAgICAgICAqIFdlYktpdFRlc3RSdW5uZXIvVGVzdENvbnRyb2xsZXIuaDoK
KyAgICAgICAgKiBXZWJLaXRUZXN0UnVubmVyL2NvY29hL1VJU2NyaXB0Q29udHJvbGxlckNvY29h
Lmg6CisgICAgICAgICogV2ViS2l0VGVzdFJ1bm5lci9jb2NvYS9VSVNjcmlwdENvbnRyb2xsZXJD
b2NvYS5tbToKKyAgICAgICAgKFdUUjo6VUlTY3JpcHRDb250cm9sbGVyQ29jb2E6Omluc2VydEF0
dGFjaG1lbnRGb3JGaWxlUGF0aCk6CisgICAgICAgIE1ha2UgaXQgcG9zc2libGUgdG8gaW5zZXJ0
IGFuIGF0dGFjaG1lbnQgd3JhcHBpbmcgYSBmaWxlIG9uIGRpc2sKKyAgICAgICAgdmlhIFVJU2Ny
aXB0Q29udHJvbGxlci4KKwogMjAyMC0wOS0wNCAgWW91ZW5uIEZhYmxldCAgPHlvdWVubkBhcHBs
ZS5jb20+CiAKICAgICAgICAgQmluZGluZyBnZW5lcmF0b3IgaXMgbm90IGFsd2F5cyBjb21wdXRp
bmcgdGhlIHJpZ2h0IGludGVyZmFjZSBhdHRyaWJ1dGVzCmRpZmYgLS1naXQgYS9Ub29scy9UZXN0
UnVubmVyU2hhcmVkL1VJU2NyaXB0Q29udGV4dC9CaW5kaW5ncy9VSVNjcmlwdENvbnRyb2xsZXIu
aWRsIGIvVG9vbHMvVGVzdFJ1bm5lclNoYXJlZC9VSVNjcmlwdENvbnRleHQvQmluZGluZ3MvVUlT
Y3JpcHRDb250cm9sbGVyLmlkbAppbmRleCBlMzU1ZGY0ZjU4YTAwNjg2MjNkZmJmMjRiZGVlMjg2
Mzc2NWE3NTQ3Li4zZDU4MzJkMWQ5NjJjMGM5MzJmMzI3ZTNlYmMwMTg5ZGExMGM0ODVjIDEwMDY0
NAotLS0gYS9Ub29scy9UZXN0UnVubmVyU2hhcmVkL1VJU2NyaXB0Q29udGV4dC9CaW5kaW5ncy9V
SVNjcmlwdENvbnRyb2xsZXIuaWRsCisrKyBiL1Rvb2xzL1Rlc3RSdW5uZXJTaGFyZWQvVUlTY3Jp
cHRDb250ZXh0L0JpbmRpbmdzL1VJU2NyaXB0Q29udHJvbGxlci5pZGwKQEAgLTM0Nyw2ICszNDcs
NyBAQCBpbnRlcmZhY2UgVUlTY3JpcHRDb250cm9sbGVyIHsKICAgICB1bmRlZmluZWQgc2V0SGFy
ZHdhcmVLZXlib2FyZEF0dGFjaGVkKGJvb2xlYW4gYXR0YWNoZWQpOwogCiAgICAgb2JqZWN0IGF0
dGFjaG1lbnRJbmZvKERPTVN0cmluZyBhdHRhY2htZW50SWRlbnRpZmllcik7CisgICAgdW5kZWZp
bmVkIGluc2VydEF0dGFjaG1lbnRGb3JGaWxlUGF0aChET01TdHJpbmcgZmlsZVBhdGgsIERPTVN0
cmluZyBjb250ZW50VHlwZSwgb2JqZWN0IGNhbGxiYWNrKTsKIAogICAgIHJlYWRvbmx5IGF0dHJp
YnV0ZSBET01TdHJpbmcgbGFzdFVuZG9MYWJlbDsKICAgICByZWFkb25seSBhdHRyaWJ1dGUgRE9N
U3RyaW5nIGZpcnN0UmVkb0xhYmVsOwpkaWZmIC0tZ2l0IGEvVG9vbHMvVGVzdFJ1bm5lclNoYXJl
ZC9VSVNjcmlwdENvbnRleHQvVUlTY3JpcHRDb250cm9sbGVyLmggYi9Ub29scy9UZXN0UnVubmVy
U2hhcmVkL1VJU2NyaXB0Q29udGV4dC9VSVNjcmlwdENvbnRyb2xsZXIuaAppbmRleCBhZDA2ZjBi
NzI2NmI0MDkyYWFjZTI4MGE3MmE2MzMzOTRmY2Y5NTgzLi5mYjJiZjMyMDUyNWJjYWViZjQwNjdk
ZTMwZWFmODNmMzBmOGM2MzM5IDEwMDY0NAotLS0gYS9Ub29scy9UZXN0UnVubmVyU2hhcmVkL1VJ
U2NyaXB0Q29udGV4dC9VSVNjcmlwdENvbnRyb2xsZXIuaAorKysgYi9Ub29scy9UZXN0UnVubmVy
U2hhcmVkL1VJU2NyaXB0Q29udGV4dC9VSVNjcmlwdENvbnRyb2xsZXIuaApAQCAtMjc1LDYgKzI3
NSw3IEBAIHB1YmxpYzoKICAgICAvLyBBdHRhY2htZW50IEVsZW1lbnRzCiAKICAgICB2aXJ0dWFs
IEpTT2JqZWN0UmVmIGF0dGFjaG1lbnRJbmZvKEpTU3RyaW5nUmVmIGF0dGFjaG1lbnRJZGVudGlm
aWVyKSB7IG5vdEltcGxlbWVudGVkKCk7IHJldHVybiBudWxscHRyOyB9CisgICAgdmlydHVhbCB2
b2lkIGluc2VydEF0dGFjaG1lbnRGb3JGaWxlUGF0aChKU1N0cmluZ1JlZiBmaWxlUGF0aCwgSlNT
dHJpbmdSZWYgY29udGVudFR5cGUsIEpTVmFsdWVSZWYgY2FsbGJhY2spIHsgbm90SW1wbGVtZW50
ZWQoKTsgfQogCiAgICAgLy8gQ2FsbGJhY2tzCiAgICAgCmRpZmYgLS1naXQgYS9Ub29scy9XZWJL
aXRUZXN0UnVubmVyL1Rlc3RDb250cm9sbGVyLmNwcCBiL1Rvb2xzL1dlYktpdFRlc3RSdW5uZXIv
VGVzdENvbnRyb2xsZXIuY3BwCmluZGV4IDIxM2VmZTFmYTExMGFiMmZmNGEyMjEzOGJjMTc5NTRk
NGEwOGM0MTUuLjFlYjlhYWIzOTg4YzFhZTRkNjVhM2MyMmU3ZmNkN2ZkYmQ2YTYyMTEgMTAwNjQ0
Ci0tLSBhL1Rvb2xzL1dlYktpdFRlc3RSdW5uZXIvVGVzdENvbnRyb2xsZXIuY3BwCisrKyBiL1Rv
b2xzL1dlYktpdFRlc3RSdW5uZXIvVGVzdENvbnRyb2xsZXIuY3BwCkBAIC00MTIwLDQgKzQxMjAs
OSBAQCB2b2lkIFRlc3RDb250cm9sbGVyOjptYXJrQWRDbGlja0F0dHJpYnV0aW9uc0FzRXhwaXJl
ZEZvclRlc3RpbmcoKQogICAgIHJ1blVudGlsKGNhbGxiYWNrQ29udGV4dC5kb25lLCBub1RpbWVv
dXQpOwogfQogCitXS1VSTFJlZiBUZXN0Q29udHJvbGxlcjo6Y3VycmVudFRlc3RVUkwoKSBjb25z
dAoreworICAgIHJldHVybiBtX2N1cnJlbnRJbnZvY2F0aW9uID8gbV9jdXJyZW50SW52b2NhdGlv
bi0+dXJsKCkgOiBudWxscHRyOworfQorCiB9IC8vIG5hbWVzcGFjZSBXVFIKZGlmZiAtLWdpdCBh
L1Rvb2xzL1dlYktpdFRlc3RSdW5uZXIvVGVzdENvbnRyb2xsZXIuaCBiL1Rvb2xzL1dlYktpdFRl
c3RSdW5uZXIvVGVzdENvbnRyb2xsZXIuaAppbmRleCA3MTNmZjlhYjE5NjliOTdhNTdlN2I1ZTRi
MjI4NGVkMjA4ZjA2YzE3Li5mOTRkNTdjMTQ3YjMxNmYwNzhmYTg1ZjIyMGY0MDc2MDk0MTEzYzhj
IDEwMDY0NAotLS0gYS9Ub29scy9XZWJLaXRUZXN0UnVubmVyL1Rlc3RDb250cm9sbGVyLmgKKysr
IGIvVG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9UZXN0Q29udHJvbGxlci5oCkBAIC0zNTksNiArMzU5
LDggQEAgcHVibGljOgogCiAgICAgdm9pZCBkaWRTZXRBcHBCb3VuZERvbWFpbnMoKSBjb25zdDsK
IAorICAgIFdLVVJMUmVmIGN1cnJlbnRUZXN0VVJMKCkgY29uc3Q7CisKIHByaXZhdGU6CiAgICAg
V0tSZXRhaW5QdHI8V0tQYWdlQ29uZmlndXJhdGlvblJlZj4gZ2VuZXJhdGVQYWdlQ29uZmlndXJh
dGlvbihjb25zdCBUZXN0T3B0aW9ucyYpOwogICAgIFdLUmV0YWluUHRyPFdLQ29udGV4dENvbmZp
Z3VyYXRpb25SZWY+IGdlbmVyYXRlQ29udGV4dENvbmZpZ3VyYXRpb24oY29uc3QgVGVzdE9wdGlv
bnM6OkNvbnRleHRPcHRpb25zJikgY29uc3Q7CmRpZmYgLS1naXQgYS9Ub29scy9XZWJLaXRUZXN0
UnVubmVyL2NvY29hL1VJU2NyaXB0Q29udHJvbGxlckNvY29hLmggYi9Ub29scy9XZWJLaXRUZXN0
UnVubmVyL2NvY29hL1VJU2NyaXB0Q29udHJvbGxlckNvY29hLmgKaW5kZXggZWRiMjEwYzFhODc5
YmI4NGNkYjhlNjllMTRiNzU1ZDRmYWJmZTE1OC4uNzc2N2NhYjZhNTY0MGMyNDc0MDBlMzZmYjFj
OTQ1YjczYmVlMzY4NCAxMDA2NDQKLS0tIGEvVG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9jb2NvYS9V
SVNjcmlwdENvbnRyb2xsZXJDb2NvYS5oCisrKyBiL1Rvb2xzL1dlYktpdFRlc3RSdW5uZXIvY29j
b2EvVUlTY3JpcHRDb250cm9sbGVyQ29jb2EuaApAQCAtNTcsNiArNTcsOCBAQCBwdWJsaWM6CiAK
ICAgICB2b2lkIHNldENvbnRpbnVvdXNTcGVsbENoZWNraW5nRW5hYmxlZChib29sKSBvdmVycmlk
ZTsKIAorICAgIHZvaWQgaW5zZXJ0QXR0YWNobWVudEZvckZpbGVQYXRoKEpTU3RyaW5nUmVmIGZp
bGVQYXRoLCBKU1N0cmluZ1JlZiBjb250ZW50VHlwZSwgSlNWYWx1ZVJlZiBjYWxsYmFjaykgb3Zl
cnJpZGU7CisKIHByb3RlY3RlZDoKICAgICBleHBsaWNpdCBVSVNjcmlwdENvbnRyb2xsZXJDb2Nv
YShVSVNjcmlwdENvbnRleHQmKTsKICAgICBUZXN0UnVubmVyV0tXZWJWaWV3ICp3ZWJWaWV3KCkg
Y29uc3Q7CmRpZmYgLS1naXQgYS9Ub29scy9XZWJLaXRUZXN0UnVubmVyL2NvY29hL1VJU2NyaXB0
Q29udHJvbGxlckNvY29hLm1tIGIvVG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9jb2NvYS9VSVNjcmlw
dENvbnRyb2xsZXJDb2NvYS5tbQppbmRleCAxN2FlNTUzMWMxMTg3MjEwZjZmNDJiNDQ2MzkyMTU0
MzIxNDBkYzViLi5hODJjYzM1NWNkN2ZlOTk1NTdhNDFkNjIyMTU2NmQ3MDBjMzRmNzc4IDEwMDY0
NAotLS0gYS9Ub29scy9XZWJLaXRUZXN0UnVubmVyL2NvY29hL1VJU2NyaXB0Q29udHJvbGxlckNv
Y29hLm1tCisrKyBiL1Rvb2xzL1dlYktpdFRlc3RSdW5uZXIvY29jb2EvVUlTY3JpcHRDb250cm9s
bGVyQ29jb2EubW0KQEAgLTMyLDYgKzMyLDcgQEAKICNpbXBvcnQgIlRlc3RSdW5uZXJXS1dlYlZp
ZXcuaCIKICNpbXBvcnQgIlVJU2NyaXB0Q29udGV4dC5oIgogI2ltcG9ydCA8SmF2YVNjcmlwdENv
cmUvSmF2YVNjcmlwdENvcmUuaD4KKyNpbXBvcnQgPFdlYktpdC9XS1VSTENGLmg+CiAjaW1wb3J0
IDxXZWJLaXQvV0tXZWJWaWV3UHJpdmF0ZS5oPgogI2ltcG9ydCA8V2ViS2l0L1dLV2ViVmlld1By
aXZhdGVGb3JUZXN0aW5nLmg+CiAKQEAgLTIwOCw0ICsyMDksMTkgQEAgdm9pZCBVSVNjcmlwdENv
bnRyb2xsZXJDb2NvYTo6cGFzdGUoKQogICAgIFt3ZWJWaWV3KCkgcGFzdGU6bmlsXTsKIH0KIAor
dm9pZCBVSVNjcmlwdENvbnRyb2xsZXJDb2NvYTo6aW5zZXJ0QXR0YWNobWVudEZvckZpbGVQYXRo
KEpTU3RyaW5nUmVmIGZpbGVQYXRoLCBKU1N0cmluZ1JlZiBjb250ZW50VHlwZSwgSlNWYWx1ZVJl
ZiBjYWxsYmFjaykKK3sKKyAgICB1bnNpZ25lZCBjYWxsYmFja0lEID0gbV9jb250ZXh0LT5wcmVw
YXJlRm9yQXN5bmNUYXNrKGNhbGxiYWNrLCBDYWxsYmFja1R5cGVOb25QZXJzaXN0ZW50KTsKKwor
ICAgIFJldGFpblB0cjxDRlVSTFJlZj4gdGVzdFVSTCA9IGFkb3B0Q0YoV0tVUkxDb3B5Q0ZVUkwo
a0NGQWxsb2NhdG9yRGVmYXVsdCwgVGVzdENvbnRyb2xsZXI6OnNpbmdsZXRvbigpLmN1cnJlbnRU
ZXN0VVJMKCkpKTsKKyAgICBSZXRhaW5QdHI8TlNVUkw+IGF0dGFjaG1lbnRVUkwgPSBbTlNVUkwg
ZmlsZVVSTFdpdGhQYXRoOnRvV1RGU3RyaW5nKHRvV0soZmlsZVBhdGgpKSByZWxhdGl2ZVRvVVJM
OihfX2JyaWRnZSBOU1VSTCAqKXRlc3RVUkwuZ2V0KCldOworCisgICAgYXV0byBmaWxlV3JhcHBl
ciA9IGFkb3B0TlMoW1tOU0ZpbGVXcmFwcGVyIGFsbG9jXSBpbml0V2l0aFVSTDphdHRhY2htZW50
VVJMLmdldCgpIG9wdGlvbnM6MCBlcnJvcjpuaWxdKTsKKyAgICBbd2ViVmlldygpIF9pbnNlcnRB
dHRhY2htZW50V2l0aEZpbGVXcmFwcGVyOmZpbGVXcmFwcGVyLmdldCgpIGNvbnRlbnRUeXBlOnRv
V1RGU3RyaW5nKHRvV0soY29udGVudFR5cGUpKSBjb21wbGV0aW9uOl4oQk9PTCBzdWNjZXNzKSB7
CisgICAgICAgIGlmICghbV9jb250ZXh0KQorICAgICAgICAgICAgcmV0dXJuOworICAgICAgICBt
X2NvbnRleHQtPmFzeW5jVGFza0NvbXBsZXRlKGNhbGxiYWNrSUQpOworICAgIH1dOworfQorCiB9
IC8vIG5hbWVzcGFjZSBXVFIKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xh
eW91dFRlc3RzL0NoYW5nZUxvZwppbmRleCAzN2RmMGY5YmNjNjExZjQxY2VlODcwMmRkNmQwNmY2
YmJiZmRjM2YyLi45ODdjZjI4ZGZkN2M0YTUzZDgxY2UzYTY5ZjZmMDRhYzk0MWQ3Y2M0IDEwMDY0
NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9n
CkBAIC0xLDMgKzEsMjcgQEAKKzIwMjAtMDktMDQgIFRpbSBIb3J0b24gIDx0aW1vdGh5X2hvcnRv
bkBhcHBsZS5jb20+CisKKyAgICAgICAgaU9TOiA8YXR0YWNobWVudD4ncyBRdWlja0xvb2sgdGh1
bWJuYWlscyBjYW4gYXBwZWFyIHNxdWlzaGVkCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQu
b3JnL3Nob3dfYnVnLmNnaT9pZD0yMTYyMDkKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzY3ODE3
NzA2PgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICog
ZmFzdC9hdHRhY2htZW50L2F0dGFjaG1lbnQtdGh1bWJuYWlsLXByZXNlcnZlcy1hc3BlY3QtcmF0
aW8tZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBmYXN0L2F0dGFjaG1lbnQvYXR0YWNo
bWVudC10aHVtYm5haWwtcHJlc2VydmVzLWFzcGVjdC1yYXRpby5odG1sOiBBZGRlZC4KKyAgICAg
ICAgKiBmYXN0L2F0dGFjaG1lbnQvcmVzb3VyY2VzLzQwMHgyMDAtY2lyY2xlLnBuZzogQWRkZWQu
CisgICAgICAgICogcGxhdGZvcm0vaW9zL2Zhc3QvYXR0YWNobWVudC9hdHRhY2htZW50LXRodW1i
bmFpbC1wcmVzZXJ2ZXMtYXNwZWN0LXJhdGlvLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAg
ICogcmVzb3VyY2VzL3VpLWhlbHBlci5qczoKKyAgICAgICAgKHdpbmRvdy5VSUhlbHBlci5pbnNl
cnRBdHRhY2htZW50Rm9yRmlsZVBhdGgpOgorICAgICAgICBBZGQgYSB0ZXN0IHRoYXQgZHVtcHMg
dGhlIHRodW1ibmFpbCBzaXplIGZvciBhIDQwMHgyMDAgYXR0YWNobWVudC4KKyAgICAgICAgV2Ug
b25seSBydW4gaXQgb24gaU9TLCBiZWNhdXNlIG9uIG1hY09TLCBRdWlja0xvb2sgYWx3YXlzIHJl
dHVybnMKKyAgICAgICAgYW4gaW1hZ2Ugb2YgdGhlIHNpemUgd2UgYXNrIGZvciAoNDAweDQwMCks
IHBhZGRlZCB3aXRoIHdoaXRlc3BhY2UsCisgICAgICAgIHNvIHRoZSBwcm9ibGVtIGRvZXMgbm90
IHJlcHJvZHVjZSBhbmQgdGhlIHRlc3QgZG9lc24ndCB3b3JrIHJpZ2h0IHRoZXJlLgorICAgICAg
ICBPbiBpT1MsIHRoZSByZXN1bHQgdXNlZCB0byBiZSA0MDB4NDAwIGFuZCBub3cgaXMgNDAweDIw
MC4KKyAgICAgICAgCisgICAgICAgIEkgdHJpZWQgYW5kIGZhaWxlZCB0byBtYWtlIGEgbW9yZSB1
c2VmdWwgdGVzdCAoYSByZWYgdGVzdCwgYWN0dWFsbHkKKyAgICAgICAgdGVzdGluZyB0aGUgcHJl
c2VudGF0aW9uKSBiZWNhdXNlIGl0J3MgcXVpdGUgaGFyZCB0byBtYXRjaCB0aGUKKyAgICAgICAg
bmF0aXZlIDxhdHRhY2htZW50PiBwYWludGluZy4KKwogMjAyMC0wOS0wNCAgQ2hyaXMgRHVtZXog
IDxjZHVtZXpAYXBwbGUuY29tPgogCiAgICAgICAgIFJFR1JFU1NJT04obWFjT1MgQmlnIFN1cikg
aHR0cHM6Ly9tYWdlbnRhLmdpdGh1Yi5pby9sb2ZpLXBsYXllci8gaXMgYnJva2VuCmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9UZXN0RXhwZWN0YXRpb25zIGIvTGF5b3V0VGVzdHMvVGVzdEV4cGVj
dGF0aW9ucwppbmRleCBmOGYxNDZmZDQ5MDk1M2NlZDY1NGNjM2QxYjNkYTA0ZDhkODkwYmMzLi44
NTc4OTU2ZWUxNGZmMzFkMTY4ODA3MTQ1NjNlNTc1NjNlY2JlNDY0IDEwMDY0NAotLS0gYS9MYXlv
dXRUZXN0cy9UZXN0RXhwZWN0YXRpb25zCisrKyBiL0xheW91dFRlc3RzL1Rlc3RFeHBlY3RhdGlv
bnMKQEAgLTE4Myw2ICsxODMsNyBAQCBmYXN0L2F0dGFjaG1lbnQvYXR0YWNobWVudC1zdWJ0aXRs
ZS1yZXNpemUuaHRtbCBbIFNraXAgXQogZmFzdC9hdHRhY2htZW50L2F0dGFjaG1lbnQtd3JhcHBp
bmctYWN0aW9uLmh0bWwgWyBTa2lwIF0KIGZhc3QvYXR0YWNobWVudC9hdHRhY2htZW50LWJvcmRl
cmxlc3MuaHRtbCBbIFNraXAgXQogZmFzdC9hdHRhY2htZW50L2F0dGFjaG1lbnQtZHluYW1pYy10
eXBlLmh0bWwgWyBTa2lwIF0KK2Zhc3QvYXR0YWNobWVudC9hdHRhY2htZW50LXRodW1ibmFpbC1w
cmVzZXJ2ZXMtYXNwZWN0LXJhdGlvLmh0bWwgWyBTa2lwIF0KIGVkaXRpbmcvc2VsZWN0aW9uL2No
YXJhY3Rlci1ncmFudWxhcml0eS1zZWxlY3RlZC1yYW5nZS1hZnRlci1kaXNtaXNzaW5nLXNlbGVj
dGlvbi5odG1sIFsgU2tpcCBdCiBlZGl0aW5nL3NlbGVjdGlvbi9jaGFyYWN0ZXItZ3JhbnVsYXJp
dHktc2VsZWN0LXRleHQtd2l0aC1jbGljay1oYW5kbGVyLmh0bWwgWyBTa2lwIF0KIGVkaXRpbmcv
c2VsZWN0aW9uL2NhcmV0LWFmdGVyLXRhcC1pbi1lZGl0YWJsZS1zZWxlY3Rpb24uaHRtbCBbIFNr
aXAgXQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9hdHRhY2htZW50L2F0dGFjaG1lbnQt
dGh1bWJuYWlsLXByZXNlcnZlcy1hc3BlY3QtcmF0aW8tZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVz
dHMvZmFzdC9hdHRhY2htZW50L2F0dGFjaG1lbnQtdGh1bWJuYWlsLXByZXNlcnZlcy1hc3BlY3Qt
cmF0aW8tZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjhjY2RjNjk0ZTE0ZmQzODFkNDg1OWMwYjdj
OTZiZjkwNzg2MmY3MzcKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2F0dGFj
aG1lbnQvYXR0YWNobWVudC10aHVtYm5haWwtcHJlc2VydmVzLWFzcGVjdC1yYXRpby1leHBlY3Rl
ZC50eHQKQEAgLTAsMCArMSBAQAorQXR0YWNobWVudCBUaHVtYm5haWw6IDQwMHgyMDAKZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvYXR0YWNobWVudC9hdHRhY2htZW50LXRodW1ibmFpbC1w
cmVzZXJ2ZXMtYXNwZWN0LXJhdGlvLmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L2F0dGFjaG1lbnQv
YXR0YWNobWVudC10aHVtYm5haWwtcHJlc2VydmVzLWFzcGVjdC1yYXRpby5odG1sCm5ldyBmaWxl
IG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAuLmEyOTM2NjQ5YzRlZTI3MjhjZWUzMDQ4NjA2MTE2OTc1NDQ4ODJkMDQKLS0tIC9kZXYvbnVs
bAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2F0dGFjaG1lbnQvYXR0YWNobWVudC10aHVtYm5haWwt
cHJlc2VydmVzLWFzcGVjdC1yYXRpby5odG1sCkBAIC0wLDAgKzEsMzggQEAKKzwhRE9DVFlQRSBo
dG1sPjwhLS0gd2Via2l0LXRlc3QtcnVubmVyIFsgZW5hYmxlQXR0YWNobWVudEVsZW1lbnQ9dHJ1
ZSBdIC0tPgorPGh0bWw+Cis8Ym9keSBjb250ZW50ZWRpdGFibGU+Cis8c2NyaXB0IHNyYz0iLi4v
Li4vcmVzb3VyY2VzL3VpLWhlbHBlci5qcyI+PC9zY3JpcHQ+Cis8c2NyaXB0PgorYXN5bmMgZnVu
Y3Rpb24gcnVuVGVzdCgpIHsKKyAgICBhd2FpdCBVSUhlbHBlci5hY3RpdmF0ZUF0KDEwLCAxMCk7
CisgICAgYXdhaXQgVUlIZWxwZXIuaW5zZXJ0QXR0YWNobWVudEZvckZpbGVQYXRoKCJyZXNvdXJj
ZXMvNDAweDIwMC1jaXJjbGUucG5nIiwgImltYWdlL3BuZyIpOworCisgICAgZnVuY3Rpb24gYXR0
YWNobWVudFRodW1ibmFpbEluZm8oKSB7CisgICAgICAgIHJldHVybiB3aW5kb3cuaW50ZXJuYWxz
LmF0dGFjaG1lbnRUaHVtYm5haWxJbmZvKGRvY3VtZW50LmdldEVsZW1lbnRzQnlUYWdOYW1lKCJh
dHRhY2htZW50IilbMF0pOworICAgIH0KKworICAgIHRyeSB7CisgICAgICAgIGF0dGFjaG1lbnRU
aHVtYm5haWxJbmZvKCk7CisgICAgfSBjYXRjaCAoZSkgeworICAgICAgICBpZiAoZS5uYW1lID09
ICJJbnZhbGlkQWNjZXNzRXJyb3IiKQorICAgICAgICAgICAgZG9jdW1lbnQuYm9keS5pbm5lclRl
eHQgPSBgQXR0YWNobWVudCB0aHVtYm5haWxzIG5vdCBzdXBwb3J0ZWQuYDsKKyAgICAgICAgZWxz
ZQorICAgICAgICAgICAgZG9jdW1lbnQuYm9keS5pbm5lclRleHQgPSBlLm5hbWU7CisgICAgfQor
CisgICAgbGV0IGludGVydmFsSUQgPSBzZXRJbnRlcnZhbChmdW5jdGlvbiAoKSB7CisgICAgICAg
IGxldCBpbmZvID0gYXR0YWNobWVudFRodW1ibmFpbEluZm8oKTsKKyAgICAgICAgaWYgKGluZm8u
d2lkdGggPT0gMCkKKyAgICAgICAgICAgIHJldHVybjsKKyAgICAgICAgZG9jdW1lbnQuYm9keS5p
bm5lclRleHQgPSBgQXR0YWNobWVudCBUaHVtYm5haWw6ICR7aW5mby53aWR0aH14JHtpbmZvLmhl
aWdodH1gOworICAgICAgICBjbGVhclRpbWVvdXQoaW50ZXJ2YWxJRCk7CisgICAgICAgIHRlc3RS
dW5uZXIubm90aWZ5RG9uZSgpOworICAgIH0sIDApOworfQorCit0ZXN0UnVubmVyLmR1bXBBc1Rl
eHQoKTsKK3Rlc3RSdW5uZXIud2FpdFVudGlsRG9uZSgpOworYWRkRXZlbnRMaXN0ZW5lcigibG9h
ZCIsIHJ1blRlc3QpOworPC9zY3JpcHQ+Cis8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9mYXN0L2F0dGFjaG1lbnQvcmVzb3VyY2VzLzQwMHgyMDAtY2lyY2xlLnBuZyBi
L0xheW91dFRlc3RzL2Zhc3QvYXR0YWNobWVudC9yZXNvdXJjZXMvNDAweDIwMC1jaXJjbGUucG5n
Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAuLmExMmE2NGUwNDI2OGViOTlhMDUyMDBlYzU1YTExMWI3Nzg5OTA4OGYKR0lU
IGJpbmFyeSBwYXRjaApsaXRlcmFsIDEwMzc0CnpjbVp7SjF6Y1JxbEswSHVGMk4tWFpvJUUlbyMy
N3M1RDR5P0ZoSDtiY1BCVWpmKW1gRzBLcC0reUF1ZSRDLT5nPgp6LXRLPDs0WnE+Xj44XmlPY1Vn
RCFnc1pFe1ZXNShyZjxQYikxJGsqcjVDfEx0djxIdzhmJllFQC1ffTdPYlE+RWYKekRSbClZRFg2
LU9xbV8tRkI/dSVSb35WbllfaX5VUj55QFUwQm5sS3RkcjIyfE5rdG4+QVIrJDZncWo4eGpCNiZU
CnpVUytEVTwjYUBhJUlsXnJKd0E7ZVEpaX0yKDdRfkNoQzArI3sxR0Y4an1tTmpvcF9SWWt9bVds
OzxfIWlITTsxRgp6MVJCOC1GNXlPK2hDcEBXKmdtM1JTdypUVFNqSntTSUNIPik/Qz1jSFl7fUs7
PTZScm0mY35EVVY+PERLMk9mSWIKelMrVn03KHB9X1c3ZzVsRmJsNDw8JVJBTntkUWI9UmppJGFS
TlY7SXojaF5fcXszQ1FHdUBnbDNJPEZee3NZTk0jCnpRdjNIbmZRbHA7KG1GRkojenJ7biNXUFQh
ZjNZP0dESGtQSDkrbndseGNDZE94R1FgUSpiaGV5Uks8Q1ApN2E+KAp6WG95KXdVWWpoNXo1IW18
VFhDe19qMT08XiVrQ2QwPi15NHk3KShaJHF+eit3XipBPGg/PklRM2ZxcSpGaT0+Tl8Kej4wIUpH
PCFRO3hCck5JUzRyYHtfOHxONEBraCsoNnAqfkZ4Tj9fOElydWxOSFZjd1BqY1l0KEI+NDlAOU5r
eiNVCnohbWt8bmpKI2xgJFUzYU0wbFJ4VFA/ZDFVXiU7fm16Xmg5QUlZfndSSmt7e1dtdkBvfW9F
QnZEMkpmQHpObCF+Sgp6ZjJxZjI0KE1GODxEZkwheldiIVhwZVBAYmY/QX53PDdYcj5MK2x3bktt
MDlVSD9rezxMK3xyTHdsTTV2cENme0UKemhDMSVedmh7dmNQNzcwSytxKmMhODxWeTxnNGgoJkA7
Ozw8ODVFb153PGJrNUV3SkNGdGFKRkVnRVJSRHMxdV4yCnpOeHNXSyhOVk93cVRHPmIhX1JFOXVx
TihUYEtKdnRtYDF8MjdkOG1HR01veVFBIWVUNTUtbVFnU3FXSCNNRytLWgp6RzI4dWcjcF53MkhE
MmFzK0duZkc7JmBoOCpjfWtteGUxQnExQ2FIa3VlWXBUTUk8UDIhY2UkV2FwYTd0dmAqcWQKeklC
SHo0TlRkJnxTWWc1OXFURm09Q1IpZy1JZ2J9SElfflplVnpAajZJSWlrV3R9c14jbmdRNSMxV1o0
VShvdGNSCnphVnFSLUVmYX45cUF3alQtUXxBZTBJQU5IJEY0WUJeRFNQYGJOI2ZTcSNrdU1XUjVe
MCsxbWNkUV92ei1ibEB5Pgp6JmR9TCQoVjlLRjt3c29XU2Z8VXAzcXo4MFo0fmQhWntBWlEzYylA
YE94ZnQ7clE9KUpnMTlQe0Z3dTRCVkdRd1gKemVgTFYzVzZYIWpHeDZQZEk5cX1KaEQyPnN8TmUo
Pj14eUY0d243blQybkZiUUBFVjcwKkBJM2RVZyVXfVp5KVVhCnp3VzxvU3JxajgmJnMqUCpAPVgo
VmhAU2ZAKj5RTWEzeCNJKHUkc3RLYGdDK2ZuUGNkMmQxIUApPmRhMlVyZz9UKgp6OUgzY3QxSnNZ
OVZwJV9uc15lVWVOcz84UU1XXi1Kb1A2M2BIa3tBJXhoJlJ8SEFGdlJ2fH55Vj15cktOP3tzbEAK
emJfYXshbHh3dU1ITCtwJk5udU1KUlcjKyZmbj8+YnVDRk5gemtDY2kkKEFCX3k3UFFESl52YUt1
I0RidWdXRCNsCnpsUVhlNGdhJlMtPHo3P2VmLW1nQW8kS143Z3dkYkVOa0gqRmZqT1l5e0Q4c0FB
KnpOXk9CMGU1Z2woOWFJO3VgVQp6b2VBNj1kT2dnQGdwRDd4LS0rWGRufUx3cmYkcyNqNyp0d0It
VTdlME8xPitEOVVTfXZodDRjNGc+b2owZE9nQzYKejhaNkklYD1OKURRSnkzJlRwaztONkhQeExm
dlBrSFY/WmFMPGMzKF9RLShBdncwd1lrNks1ajRNTUNzNWspbzhsCnojPE05ekBeR0kjSjhvUFJh
cikxeHlJUXJfTXEjV3she2JiRFNPJWU0KHJsbWtlKCt3Pnt0Tjt1ISVnO289Yi07aQp6eD8jZWgk
Q0x5Y3RRNjJnKEZ4SHV0PCQ2Uzg9YkE+RWtuQnRkKikweCtMZ0pBOHJBWDRTeVU4MUpCWTI5Wj8q
WVUKekBTZ2h9I2B8RTs0UCNgdEsjdERYUmkjemp6R3N7JGxnUGNub0whaCpsd0hJUCR2O3N9IWxa
TFckQ0d2dXVGWCg2CnpLSnYjbUJzOWJ9TTAqOSFEZiZxc1FwVT1NKDgkRyFGXjJSfFpeY0lfOTRQ
cThfYmNjczlPWXdLVXtuKiZDejhwawp6KGtjeUgzfGVrM1pKS1lFWnRpVHBqdihrd1RVUUdJakxn
OHJGd0Q1WDdAMDdmO0d4Sy1vbz1pMnRCNmokcnVkP0cKellzejRzYztBMmo2JFM8ZDhVe3RBR2xe
THdSaXNQZzFJWjUwYX5yPz55JnEoNiRiTCR2MT1mRzZrTXtgbDIpIztECnpFbjReeXZ8RG9OY2d5
TCteTUxuMmAyWkkqPXcjKFk0Q3luSk1hWVlDUENRZUwmJFRIWm9YSUhERlYtKmdSPT1wVwp6Tit5
c1FtaT9JNUpESFpKe249Z2JBVzB7aF9vWil3JDB2YGtTREhzbEtNOEF2K35mcyQxd1JXeUdDdjN8
eFQpPzUKem8wPSZyKFM7Nkx2emo8cVhQTVI/O0pWd3BII1hAdjYqVCN9empBQi08I3hJRkVBRiFK
S3pvO2JgdDQtQHJUdH4mCnp0LSRUQEZSYX5fc1ZEQzU3RFQ9JlBJR2FsYj1fWXZlSTN+c3AjJFA/
KVhnZiNSem9gSnJJSmpHUDN6WWJ5TTRObQp6V0UqMEcjYCpKWFdZYSY1NjFpaXtre3xQQmhfelYh
aE9LITxZTTNLIUBOY0J7RXFxRmteaUBfPz1+QnQzSjVXKGcKemJ4WWsoTUArUiF7bUxPP18weSkw
ODskKjBkTzMlWCEmUDhHemdkbG8tZDVSVW5TLW5PMSt3ZGg4PVZWK2lgUXRjCnpLMXpTUUEtSD8t
VHUrbXdtNClsWXRSQW52JEUjSFIkaHRJM1pGQmU4R194YW5tZz84bXstZHw4az54N1lCVUlAPQp6
PjZvd0pVVlhMeVkjKHsjRlZ0anx2IXZDYClPPkl5P2R5MUZjTmNsM09RdyM1ZyVtNkdxMSNlIVlK
NWBUdXdsSCkKejlve3J9NDAkbEAzKG1LVUg+ITM7a1JwO0l4elhFRWpuUndEZ0d9U2RUOVE7am0j
cU87Pmg9YiZoUnBeJCZxaDgpCno+IX1vdDNwdClCcE47KzFBPHVIQik/LTt1R31yV2xuYm9WR09Y
RWhuWkcjVz5OUiNHZXtaIUYoKFBMUyF2cEJ+TAp6IyNHc3VFNFY4WkRfJCkoRW10aW93VHw2a2B2
di1NLTskbCg+PmxpO3BaSW9NdEJLTEsrcUV5ZkJoUnkhTHo4bykKemM8NVFfJUhDPDhaZjZPPWsw
R2R9JjArWj05N0N2d3xDQGgrUXkjbVBkUkpmfUUzPGRHYHlLdXY/aDc8Z3khKSg7Cno7bldjVW9X
S3ZrcCRXbVkhVFo1PEFyOHA/THs+T1MjNSZKciRkN1NFeCRkUm1EWEJRa0VQR2hLcTlsKSVaK2s/
YQp6ayNQQmItOysxNkBZQFUtPS0wczFzNG5pUytNVk10Kk50d2F1cVM1O3t+OFZFU1dLRGJ6JXNL
cEZZMD5+ak4paFkKekZ6anV4Y0Z0UzM+ZHBMVS1LUTQ1TGpKQGAkIzNmMiloZ1hBRW8xZ0YmVDY3
M2U/Unx2a2FEbXpabE4hbE93OU1iCnowNTE+RVN5NzZLayUhUzsmVVAmTDJnK09lVEQ4aipKPmoh
JG5neFlQZFpRRk9aVU83X2FtS1dsVU4xMlZhVkZ2Pgp6SiZKeXZuUiNpcVdWdCFgU28taX5jTl9Q
PVhHRiM9ISpOND5fKXI9PSMmeXI3VzllcGJZeUVaZjVEeV9ATlpRQ08KeiR9OHgleU4+a0NjRz5r
aiRHbExAb29rJXkpbUVKQXF6amdrOF9qJiZxPDVrQjxiXj4mKVAkTU1nNFJtTythaXgpCnpEb2Rm
d0Z1JUFLTkBLI3VETCY+eUpUWnBuYDAjakljeiE4SysoKVohTXwqTDVCVjEld0ZIK0IxKnZuM2ZR
aHpIeQp6ZWxPSkR1R3Q+KDtaN0l2SnNgN0N6MER8V09tWmIwd1AhPFJgXmdoNiRtWUIzY3d3fCVr
QGhxanhRUCZucmIwbCMKejsmKDNmODtocytsYlFabXh5LXdkeWxqMWg5fF55YGFERysmWlpIe0ZW
ejVeO2Q3XnJ2dD5DX1pASUJjdF5QQXwwCnpWYX13dzd1U1l1SFZEb2lFUDYqMFZhJVQ4NlIpKSFf
NlBUP04pS2kjWEE7VjgtWDB+PzVlX1g1XkgkYDJlT2RPRgp6SWh4NSkmI35AWj9gPDFLRShSWXtB
b0c8cmk3c28yVSVOKS0qP3dWO04/cDFOWj9lTjx0eFVfLSl5ISRSeUVkPTMKejx3RHAzWVE0eHBS
XygqMCtPbkFUM0h3aXRyaX1+TCFPP21uPVZuITFVdjFxSi1zUlI3I0J6LSh4OHV9P291VEVKCnpS
Klg4O3g+d2hHQyhLSiZTSWslS3pYZ3RWKHZoZ0p4WENYP18zbDNZVm9NQjczMDImV1goRCFDYGp2
WklBQ2VGPAp6KGB9QikkOCpjYHtDNF9nSGRGMzx2PS1VNFB9NG9wdWVtUHNoa21yXj54YEpKVUJP
aUViQWAhLUxmQGprPzUxfTwKemkrZjMydkRUeTY3KCV9TFdPc3thN21xdjloTnJEZ3pqTHA5WjxW
cj1fdFFrdXVwWU0wN0NzWTxCe2REZFBBMntPCnordDl8MmU5N21+YzZCO19SYFAzUj51QnF7Sj14
MzFuZT1jeiRDV2clKHhkdVNrTihVSXBeNmlOI2lMZVR3YGB+Twp6UDFzQ09iIVo8fT5BUD1Gez5K
SW4zKiZOPihQPFJAVnJ8I0tQbiVtV1p6a0tXSzgpPi00UH5XXlIyKH1VQGxPIVgKemN5SUx2NkNT
WUB1PXpHZUpwRmpnSjVPOUhIR1Z8RHQhZWMyXlNwYUlmQUdrc3ZfakloYmQhOCV0UmhrK2cwLV5N
CnpjSG5QKC1nKDtuSEZ9dzEld09eR3ZjPVBZcU5MKSE9MyVGZ0UhT3o+ZGd0bXwkKHdWenFYTDlU
bmlkUTBOWTZZSwp6cWVLQUYzNGhhfEZDR25xM29JVjNmSjQ1Z0ZCND9MNDVKNnRSbGE9ZWI1I1ha
UXQrbHo0UGN5QDJaSDMwQTtzd24Kej5NdVZFY2FMY0lfNztOIUVTNldFPSYoU2pjSyZNKjUzTi1Y
NTgyRzdtOXQ+fW5hX2VqT2RwV1AmfGR7Nj8xc1F7CnprcDFZdFQ8cX0peWp5e0BnZzspcmRvKUgw
aSV5e282cy1lbGswZVZ5MXVHUjU1RUladzF8ZmlQTDJ5Nnw0RSV3Pgp6QnBgJnArOH5mM25EcE9t
TykkZWhHIVBJZClDTDZxNH4rcnZ7UFghISo4dTIkb15Xdj9BU0I9bzd4KUl9Sz5rR3kKemo+Jj1o
Un5zfHtqRGFMeE4rfkQrJnpJJmRtWDsyI1p5ZXBxLUc2aWY5Vmt4bmBtUGBsMHF2aEpTVjVFSzZh
PDJ9CnoraTI7ej44VTZTbm1nTEZucCF4VFMrYVdCSk5AQVU2N35gVm4pYTQlcmNmXz9JfG8tbUZB
PUswQzxLQV9wS2RsUAp6PXdCcG1aJCtyfFJNZXFUanhMcl5VUkhLaWJ9Q1UrQz1ARX1WcXFueURK
fWFDOUMjQzxkZ0pFaUIqQDAqPkZMU3AKeiQ7SW1FViRIQE9BUnhmVCZkSjhmJHBUUVl4T3pMZG5S
PkF9eEtqVms8WD9RR0VuVXJCWUBGT3w5Mzd5NF8/bnRJCnp5MVIpYFFULUEwQDZYQCF3RGh3MWsw
Yn16ZjBoTC1rblBWMTh3Vj5wK3k0Yn52JDZYQiEyWFE8NGZ8X2RlflQwVAp6ISVSQHkpelVARShj
YSREIUE8bCg4VztYYygqR0Z6JnBpSklzQHImMytVWk4lMDd6RzBPYEBEVWVCQSVRe2BiKVQKejNE
eEAjbHVMbH5lP2I0KygwX3llUyVqZFBpdyFWUyg/NDFpPHEmNTNmQk9ENnl7NHRCcW4tTzdhJX40
MkgmTT1pCnpBcGZpVEFDeGZMQUgpMU5MO2RYcWZBcz14QWNgdT9fSFVPR01lU3Z+cCQzNzdhdWxR
YHc3a0dhblB8MEkpODc1PAp6dUFfI30mdkNiNmsjbjhjdTxebSpBVi1iTGt7UjZ8SWJ7UDE9QVQ7
NFh8O3A0bGxlQnkpakJtZ3hlN0BmclE9ZyYKemI2K0BZRFEkOWpjeWg7UWkxMFBRUWgzS1FAT1Rv
XiVoQUslMSh4bSVwST52aHJ1d0cjLSZ7U34meSkkZFpoc2U4Cnp4eFVMQDZUOTtjYmwmS3JtNHQh
ZHAmJjV3V3NMYWZAeWYpK00wYSRSJnxme2ptMjt9OUckZ2FaRkBMe2JXYFBoVgp6ZF9EWWRBPW0p
e3YrKFRMNjxoUykkbEBTS0R9NGEkR0spTXI3fnIoWjE0aSQ4ZCF6NmlBUUNAOEZAZCZQX3RSNFgK
entKbTVfYUF5WVo7ejl3VUFIRVBHYElHckdnK0opbSYqYlRHZU4rTkFUUGY5SlRJYGYoMkpaJWlf
Uk8yQDU9OTFDCno9YyRuPm5rUSQ0N1YycjZZMXlBezVnIVVGWURJNEFkPnlgQmIxZmhac1QxUlRR
bHlYeWluVmdWWnkjPUhFRVpQNwp6Z0ZDeTJJQmA0fVJVNklGbVJiYUhNQVl7aVR6SG4tRGI2VV9K
XnJkYVJQLVJiQUR8Pzc5OF4jWkxGZ1lpXiQrMnMKekJGWXBNcXZMO2xPVnM+WHluX30oNnNCYkJs
bEhNKHFVPSskZkBgJiZQTEktTnJiUGtHd3l9dWZAfDRUNmwxQD9kCnopbE1gYCsodXlkMWZIcllN
U3VFXmZIQC1gQCo2dHJ4bjRZZEdeTHYwJEtFencxNTUzRFN6RHIhR2ZuLT43cy1KKQp6TUozIXM3
ZXU2NFA/YiYjVmhZdCpeQn1zKFEreWptbjRTb3wkIXUzSDtgKXRENHoyJmZgIW1gNWghISQybWZg
Z2UKelctOExJUmNDQ2BndV5jU0ZFa3JneEU7dFQ8R1o7bVdabH1oNSN1TT8ydUUma25rZkt0aGBI
JmM3VEFYdnF9TDhtCnpuVWhyWGoxNjVgbG54MEdxNDwwfE9oe2Z3KmZXMl9aZkYmfUdrQUc9VWto
QWdqTVpTbD9ASSpHbUhEWGVXR3Z5JQp6VyFQflNvKyVxRj13K0FmY15KPkcpSVFNRj51floyemR7
XjwmUTgqYiQtdnReQlM2ZlJYUD1jYSR9RWRQX3o9MnYKemVXdjdvMDYpZ0dGO0w1XmhHamk/eEk1
JmdyS19fKyF9PWNpMmh3YDxPek5uYzwkMDVeekwpZyFDKnUqZmo5PSlaCnpTS3hVJSkmKFNQVEgj
NWUhRCtLbCNGdFFZSE9NN3dEISMzTXJ+Wk18Ri1gUmhwXnNtT1pkak9aeWtfYzFJN3hUbwp6TnJA
dTlFMHdkS1hmVllAYXR5Tzs4TV8hOGpHaXdFNjtTcXVGTFEyci1YMjVKcE8pWClmPm91ZjBqY09g
QlN+VCMKejNVPk5waDswLWZ3YW5CK08taVdfU1hEbDshKTVMKHtOZHMwJX1zTiR2enZeby1tOWVr
aWQ0JFppaH1Me3dyR2JXCno+TEFsbGNWU1U8bTwhOyNUWEFPWHViKStOXj0yfiZHZCNXZVpDUjBv
eVowK3g8WmQ8WXc+T3VyUmplT1hsZz87Mwp6RTd2Nk1qZ1BNZiU5T0N0KlVCe04+eiZ+R01xQjZt
UzJyP2kmKiRVcCZnc3R0dCR4fWohVGY0WlBwV15vKXNLeFYKek4hSTkpKlBYNlM1cnR0ZiV+SHhX
dU9FJH1pZGs0X2xnfS1Ae1EwWmwoZnZnQ2A7VjIyJjUyIUVWbSRRbm1veW5PCnptVmozZEA2Uzsz
MmBUUkdicVV8TnVON0lYK08lUWZJMU9GRjZaRSFvVC1kJSY3PFQwd0VMa0g8bERFTU0tM2JMawp6
UFFXZ2gldFE9a0tOeHkwelA3THooUXg8ZT9BcyYhQXR4aSYpPTJ7WG5yMClYWEtDWCVsO05SU1Z8
K2ZVNClNaHcKelJtYntzbVF4ZkFpPndRQUJrc3szS29RUj4+dGNDKWxaU3Nid2tKbTtfN2twem10
KmdPITQ4PS1hQyhQNzY5ZXE0Cnp0RXRQNU44ZSp5Pl8qVkx6QjxJSEtjMmd6XmA/Qn04U2JARUNI
RHR3ej5PRV9UVHcwQiVJWkFpcE9VQVFhcHVXOwp6IXshUCRERil2Z3IqK2YxWGRrbncjT3Brcml3
P1pULWp4UXk/WkYycFp7ZlYqSU03ezZlaj0hZ0koTT5rVlFaRnQKentNa0M8VnQhbzgkdz9HSE5R
QTwpMFJOX0lzOXJTbik5QzJZQDNyT2tKO0l6TnMkK3JHRGg0WW5jYjU4el9uKW1QCnpFRjYpRUFW
a1E/NjRBKVE2az1JMyFiR19YKU9NLU0tYkhyRiZEWlooU3xgbTU7YjxHYTw4Kzh+KGt0LTdSbzR2
Sgp6VGkqIVJCcWpRKkkpNC18LTZPbmxlbC00JGVwUiVuX3tye3pWdHtET212IzR6UmdlN1h2MilN
aWk/ZlBGYExHdWUKenhScnVXLTB3cn1xVSM1fCRNSSNaT3t3OTNLSTsod0lsMWFoMj1UcmN6SiVS
LV9PTVJMb2R0RXxlZWt0UndAWHNgCnpqPmBiTWslTmdkTGJ5IzZzayVMQ3VvWCVkPERVZSMqVmdK
em1EaEk4RF5wdWxUPzwwanVjNE9jYEFDKDFLY3spRQp6N3FpPGwxKWh0QkZFaUA7cUFtMysrWHE4
bm4oKnV+bmlqJiM0KTVKWmhvOGlnKHU5eVNAOTlvU1VwfWo8ISRGMFEKejBHMVleYXBzcCFadlJY
Mks2blJEez1GRT9uQmQoRHcpREc/PmQrc2xLd2VKYCtve05BN1BkKzxkcTNjY24hbDNUCnpBJDQ9
WXBfYjJ1X25JcDw9SXRzSkhvTHlGeCUxKEBQeUBed2RycSQ3RGpjdihWUVNTUXFCN0plMEteam0k
OGk3Nwp6RVpPYGlvY1FaLUY9PX42Jn5mIypjI1FZOCo5WDwyYGpibHpFanV7Qyk8OWpRUkx+P2Em
djE/MyMpeG5YKWtEUXUKenhXPWcqJlJSQD0zVGVFIWJ4MDhwcG5JYFcwaF5vYWQkP0oha2dGYz8j
TT9CYzEyPT42JFA0N2A+eSU5fVBoPkhBCnpPcjNgbmomd2dEWkw7Vz91XnsyISlsIT9CSTVobkR7
X09NYktsX1p7NldfWWJ4dDN7R0tmTF5kNll8YHpAZmxpMgp6aWMha25XaUNKenhxeTkxQUNvcld5
ZW0oYW1mdk5KTnAhZkNkQEVHQ2AhKyRiZWwjNWJeSjRJUykhdShwRWklN3YKemRYO2FlMFAmRVhA
cH1vZFJzZE01ZGtSaFpTKVRpMWFuV3p0VnBtPmN1WmREa0woP0QzJjdrd00ja258Yj4xRFlxCnpk
QVpVOERZVTE/SEA/Ynw5JSRecylCc2JPMjY3TDk3NC1Kbm5nflloVmo3ckhieEApJkdtNiQ9Nisx
U3FxJkFndQp6R3hXS1gyZVUrK0lVZTxDb1h0P0tPKVV8ej1RbVU2dkYhcTdQM0hEPCpYVDVEWjIo
RksxRzFPaWN1cmFYbXhtb1gKempkYEZKYjRMSGdIT0t4SjExRXVGRnZSMF5uOStGWkl1Zjk1eEor
STg7VnNYX20yUzkjbiVNUUg2cGVRdFN2YkFeCnpmRCQlSDdCRjNCU1g+TUBLTlduRl5CODE5NiZ1
cGkzVncrSnEpREQpdEtBZmprPSF+M3I0VEFBSlBQREYte0NUfAp6TlM+WDdLNT8/N3hmIyhjcnUo
OTk7eThtT2xvdCViYWEqVGg8cSpJSFFOX1JTUXpyRntlS2hoKGhyb1FXXiQ2T1AKemtHPyUkZWUw
ISlvKno+QSl8Kk1sI3p8c3IlXilrelJVIXVzWSlmZXIhKFJ1NmI1PE07OGhyN1FGdjYlRmFBcUd8
CnpKKDghPE1Ubj1uaH03eiRIY2JGYjMmKWBxYjRsa2U9YmBjU3l9KmVDI0QxM1FJenZGZHJgKHot
PzNHWDlKYUBtKwp6PUZ6NEs1KklhWEI+ZH5oPl9uX01jTT5XM1o3Sip5YVpJck0jKTRZa3JUPzMk
az9FOExTLTRTODkrOFRSRV4pSD4KejY7fDRER0IpPVklb0YzUDlqdSEreGB6Yn5HOVdsLUNBQkpK
RW1aaHdTdHkmWXJTdHRsKiN7Wm5QezgmQSReclZmCno0ZmFmNHdEMEpZQ34/cj5GfG9aR0pFR0kh
KnZZJkRWZjxBMkQlfkRnanRhYTIyezxKVShqQ2pwbj9haSokKHJZKQp6Z3k9bj1sfXNve2JUTGN6
dGU4RilRd3FfKEt3SjtZQElhVTx1LWR9fkxAOVMlam42a3k7XylHeUtwbDEmSmVFcHoKejx+UVZk
XlZnVlFreWZJfXRfaDE4Z21CSyVPMHZjUlJRWDZZS1Q/bVEyOGhEbzM+Pyh6Knt7Mzc8bypoIyZn
V3ohCnpkUW9BS0ZuKnxvWWpweCFLQWhsZlR2d0R1eThpQTNpfThmSnBjO0EpKmdKaXI3dD14bFJU
UVVFWUx4TDcqeUxfYAp6NjdXJXNXc3hpe25Hbjl9XktKSHRDbWJ7WTBlVjd6IVphM20+UURVeHgx
QU1YQEdoeXxefk1aM0x+Q0RvXzFSRUQKenRveiRWKGhNRVRKR3Y5fjg2Y3VLYmJsbjM4QWBuR0hr
TWUpXmZ9fGU/IzJCeysmWTNuejhnViVEZD1XOWNEdk90CnpqYCNLclZkMzQ2T1BEJHxDJHs2JjhI
RjtOZH0tZzBhQm03UXk3WENySUJCKW44Uz5JMVd4bjxke2FlYjxESW1tTAp6eV9Wfm5iNEghJEEx
dHV6Y3Umd2plSGVaPmMlXmM/TnViJXY7e3k8IU1qM14lWHp4MFhrRGBmR0g2bV5WdXF3c2cKejh0
VGU3VTdBZUtPKH4hcShLJkRvVEI0b2VUMD9aekVIfjtOPjRTUUlqJXBebDhtb3ZlZWVpcTQ2S3Vj
MUZ4Pzc8CnphNkVoPTk8c01IN0JCQnFnbXI7Xk5QfFlfUE1yQHFQeHQ0PVlVNjdOeEIxPlFDWTs2
PkBAfFNtUkpsMUxXSU9FYgp6S3NRKmYxc3Iwb2JuJlJFZ0ElWGphP2V9alZ3JWQjeEIzTVJ5bD5F
QE9XZXV9KEp+PW1MZ2QzVzEwN34rIzlTQEcKemcmVFFUMDI9JWlqcDQ5P0owUEN2VFJLfiY8YCF9
QDdmaHRPPTdSMXVHaTNtYjBxMldyaXI9MiN2JFotTSRXJm4rCnpsTj8ydSFQZjdJbEVrUEVBc2lE
KUo5PW91WXQ2cj5YdjYyQTdQT093Oz4yPkdqUm1Kc29OMDZtaSlCWHJLKXNtQAp6VSN2cGRuYDtL
aGxgTT5zczMqQklkQn0tVV85e3BRKVQ9OW1FP3dYZUsyKGZDMF9qQ1FIN19RQEN0cU80Q0txJU0K
enRCJEBySTg3dE97LUs7eGFYQ3hZSGR8IzVNY3UtcCFFU1Q9bzkoU0JSSHBJR1RvfispZFdybGVm
NEZ5Yl8/PXlKCnpBSy01aDxycUd0I2pwVDItRTs0Izs0U0ZGQGdNfXwtd2Y1TDBtRXJmWXhqJWFP
dF4xJEdQbEF2Qj5sMXRnKXZNPQp6KFleU2FpYiRUMiMrS0l2WU1afUwjOS1WTUJAOWVjVDxyRUBE
Z3EhJjFUQGI/WDZpfVZRTVpUP29geWpiTXA3YigKekQ5QkU8PW5QaUAlfU1BMDBzM1ZrJiNTQ088
cjV8PDtCaXxJNWw0YmgyYWMxIXpMM05NK2RfUzZfcCRlbypPWD8jCnokWlMpJXROayRzZCZSSWZp
Qlc4c0kkTDRRQX40WWp4aFY5SXh8SlNSOFRldXQxOCU4KnV+Y0IqaHpuZz1fO2VQXgp6KmV7JCl2
RWFpQVZaMlA+dSR8ZGRWQkVDVSQpVDc+Wi0tb3FsUzVhMnJgUkVtY2ZnbDFEJVpQQCg/bHpkKWJ6
SisKenR7fV5ye3BHPWNMYXlCYnYoNWtwZGh6Xm81cXZ8NHlEPjZSbkF0LVZOKmBsWCkoP01yWT16
TSZAdSorcUxIcVlXCnoyJVhSR0tkcVYrdWNJUmBTd3MzbURZJH5YP3J1TWNgeVRAc2wldiFCTFgr
eWgkMko7MHJpWV9wNDlRTUB7NChCJQp6ITYoZUghV2FzJXBMUEE+M0NzZih7OTZ6b2xEMTZQSjQ1
I0kkLV5aRFFhRnZUVE48NzZSYW1JLSsmRGx2TFIwQE4KekdkQ1VaaGdhPn5LREx5WVZZflhNaEJY
ZXpRODR9LVlXdTt6LWM+R18xVX5hNHRfT1UmUGplTlFqQEh+fGdSfGd2CnpQMDNJdmdMNCt8PitJ
Q3Y8bUs7I0RhJl52TEZod14oKG1NQE1mM09scUtMdyVhbVRfJkohemd6SUF3eG56WCtrNAp6TCE7
Z1pAQ1hsb3ZheFpaQSlSbmE/RCUyUTBGKkxARHIzenA/QVVUTkN2MCQqbio1V29jSmtmWWtqZF9n
M0UlbUsKenZ9e0xqUXojfipEME0jWkZyYDRJdlNrUGRjN3phTTNENFN1QEhJd0djQXxCNCs1Qn19
NylLfWtAell2ZDRqcXRuCnpESjcxK0ZXYW1NVXxMRXV2RXVNMiFrKTdacmZ2aGRudk4wM2xfPmwy
ZzBhTilMT2o5P2ZHbCR7RnVIe3Bpcml4cQp6RHY1c25DPVFFfXFXUEIrVnl1YD4pJmduUDVEPzx9
b1RiU0w0a3Z4biYjRSRjSVdBY0orakdTY01yPmFjVjg9dloKelB2Z3JiJTN7aDN0VigrY14kMTB0
T1dtT2s7YGslPzRvRjlMM2pDTHxrTCYzd0VJcEptP25OI1ZaanMwRVZRbi0oCno0TVJoKzxmeDF9
I3g2eEN4MkdEb0pOPUJHQmc1M1RkdCspeDBANGRXZG1EPmFOWWFrVz1mfTE4RlFES2hffSVFcQp6
QHxEbEl7bzxIMUBASUZHVTlPRjxLQVN6JWhLZXBQVWZnQD5nd0w+PWU+KmRXRjBHRzA2bFVzcXk+
dDY7T2NWQisKejF0dmg1MmNDfTV3T1M+VFB0Qj00PUg8R2w9N01iTm05SVZmclV8SigyQDxrbyFt
bUl3SEhWND42Z2NhP0xRNzM9CnptTkRQJERON0kheHtPdG0mRV8lKCF4YSE/ZG8lKCZ5Xjh8bGFz
P3k1e3ZxZDJKbWpnczBQK0BSeDZAZElqMG8yJAp6OzRyQ2E0WXFaXlJtdmtSJFJeViRvcGdTI2hK
dWJKc0BSP2BfdFBBajYoKyghIzYmM2JlcHtoRlUhTSkpbiVCLUEKelM/SXMtP2xieno5TUVKV1ox
JSM8VEFGYjE0VzBZK09Hd2R9MnY4XzQjI15PTDNkOS04MFIoYy1Sb2tvTShSUXtTCnozUzF7YDUp
YX1IalZIeEBeeGE8aXRCJmQpJGIjVFhOTjthNWVtOXVwWDVicWNYMi1rZ1NmZCE/OFBVcmpjNHYl
NAp6X2UyMVBAKDVSRnA5OSkpajYlbEpAald0eXVPOUhLbX0obngzUCg9WGBeclN9Z2AzNEg/RGc+
JU9eZUFZY35WYjUKekdoJUFebH4jKlFeOEp7dTV6PUhid0h4a3cqa2dgd2AwdWB3Sjl4VnZVeU4/
Y25OOEUxKDNpWVV6N3g5T3ZNfjlqCnopPD9fPG9FUWY0VSh9KTQrSWw1cip2TUxHSyExPXoyPDcr
JmZFdzBPYmpYP3YkbnBHQzdMSm4qRkslQzR6dWpkSwp6anV6dSUld1hKK1BXRGpfbTt3QEwmJjdl
c2B9Z3czd15HOUd4ST0zMS0+XyVBaSN+VDJYcilKN3VXaXwpPHJDKFkKejZeKn5rejJXS0hRaCgw
ens8YGA/IzlfZEhgYjdsU2ZIQVZneTh6SVdJaHB2e2ItYVFWMTZ9Rld0dj8xQ2xrYjkhCnohXnA7
NSZZcFZuY15mP3RLV2YzT15kcG5xVm83THVWK2wzUGNWNjxWbGExfVhOe0pja3JyWV8zNXI5MS1K
ezJ3Twp6TllBRHluNyZgUHh5bTwrPS0zKGBhZnhWQDtZNUhPMFh9K1ViMUl5UD9jc2c3VjsxXmI2
S2FDO28jWG8ycXo4WGkKemteP1hwMlVDX35QM0IlVVp8NDU5RjI8flFzSzJrJENSIXJ+aCowd0gm
fW5sVlJSfiY0eGtLWDh1eG1NQ1hjPjloCnpKYXVifm1gLW48WnFNbDloO2Q9P1ppPnolYnk0YyhE
LVFRNmUoTFdRYUIwPE5WQFZrM0syJkhsMVZsOUUzb25oTwp6NFg4QX09T3IoO19FcWQ/dWVGd1Et
NkUrYENEfnJmejdpU1hwUGpfMlk8fn1MPVFAK1V7aXVWODdjJGBicTVtRmsKelJpcDIhUDw9LT4q
KmsldzxUKWw3ZWJaXnpgKk9iSCk3V2kzYVZDI20kazRgekpDVUtxWGY1aFZFejR4Zj9CYGlLCnph
JE9lc0lEaytZX0ZIR3t3XlhqVnJJc2VfKCVXMF9wO2IzPjw3enE0bXBva0crbz5xZmlWb0M1Jn18
Z35rN1JWPAp6UX1yPFRqWTZENE5gPHhFJmZJTDdPc2UzVykqR3swP0I8UUBUV1hGOUAxcSE/ZFlP
ZjV7Kih9NEJ5e2kqVmBYRWUKekEpKjU1KXk4a2w/I3dgTTI3Oz41JipvNWYwYFpIekJPP3M0Nihe
elZaWExTWk9hPm9reDdJfkYqOyRNUCVBczhQCnojVFBnXkQ5bFE+NDQtPFZlbCRfdFcmbndHYkx+
RX1Qfm1NKypOYn07WitSeS1BSlUmeW8jQnIoRHV2b1dWV05kbQp6Wmo2K0xvNWgkJStCZkpBKUxi
ZVBocX52QSlnbH1qbChYQjl2V097RlpnfExBZmdseVYjR0M7Uk9eOTROVTN0NTAKejE1Mml5aUpZ
QkF3TTU0WkU/Yy1tIXIxbUIlRWRxayY4Vn5sTWhgSiNPPkVmMSpwUkFoST5EJTc9PFFicDlTZHI5
Cnp3WSpDNUVteElpY3w0d3xASnY5VlI+R3xqbTVme0lTJC0ka3tjWT5SWjxMI3BgfVpsR1o5PnFP
UVZeKmkpNGw7bQp6ZkBVYUhUXztLNF5gUkN+bjA0U1JyOypVbG9sbUVkc2YkaF8hVWhleDFidTRM
PWE7WHVoRFJCKUByX3NzckwqSGkKenc7IzhGOE9IO2p0SXxYIUx+Q09HKSVkTUxzMzJGUGAxYTA4
b2NyS0hPYkc8bT1NLW0xeWhIX0xYPkVTTiZ8cTwwCnp6QClsI2J8dHRsPVN+SHleRUw4OXk3TzlM
cVpFNDVjejEyVmM7aXJWYV8lJmVlallQPSZrNGg9PGZ+dCExYUt3YQp6QVglQVdhVHlzXyQxY31y
UFczR1dWKVNVSihGNEFOd3FwIWhiVzJzOEM/KEZ5PXRaVnZpNHNFXktKdmlEMXxfPmsKejF2PVFi
QkhVKUphYSl2blhXLXhyP2M4RmBSNm81fFlrTV97IXFVdTN2OGxNQWR8WUcwJD8pKH5RN0Z2OTVJ
V21rCnpeOTI0R0RfTVdESFMjO0xSPEBjYGY3fEQwPnlWPStLTm45Rk1gIVNCfDEyenRvQ3pRYEQ/
WiF1WU5heFg+PjFVcwp6alB7Snp0eyU5SWUtVitMU1V5PHpudFV0fll5TVpDRCNuPUYkKXZMdWAk
U154S3NPR2d2JXpeSUV7UHh3bFdjc2wKemchfU04UjtUQ1ZtWmRxSigjQjR+XiE+JFdHU2VofVZP
bHtzRTI1M2NJKmhhdUtYb0pIc0wwNjNMYi1TZD49U09+CnpnfWp8X3laPlNBRTZaPldvVlJxcVpL
dUxfdkUrISVjSVFDLSh4SjR6QFVAY2RrTXBhVktBWTxkS3ZMNSVIQnVfQQp6eGEzbjJzRzAxP29L
SClXY2RoUVpIPTtVLXVpS3hmdEJjVSspVSFiPzh1KUVle1J2R0NIPVA7KmtfSj5vWDtWfSkKekt4
bkFVZTA+eT44TzZLazdDRUJWdU5xVTxxNHtYfXZZSWtKVSh9NTVIX3IhcHJGZjF7dktPOEs9dENB
NkBDZzZECnokTlA+O1dhbHN9RDNXMyttfVh0VDtoO0VeOWAqYTFNTm1tPHQ7bGpMUCtOU3JIQyhX
Yj5qdXRTPXZjQ1kkaXl0dgp6LTtNN1VSaitFQ0hLRDd4el9lKzMyNUQoYzxlMmVFdDFReW5jIXtY
MTNnYnU9dEVWcl40OzQ9aStVVnl+TVpaLXsKeiUybUkqSXpGZzlHMXAxbENuYnlKPChSamt5VzF0
S2VXKThsTFhhYmdmNVYwTG1ncXJ3REcmbXQwOUdZaHRRXkclCnpVYnk3cHQmRHkpTTVQKHlDa1Bv
Kl5+bmVCI2ZeWihZTHJAdTBBVTAtQUVGe2F1bytZV2dtOUNyeGBuVTx7QGtIcwp6MEVZKXN7dVR1
QXBHKSl0ZlZnMSg2IVdpKGRwOVktJmshKmtCfHZ7SjtjV29GdyY4N29gLV5TfnNFQ19qLUxMKikK
enBgSGRyTkUqZm9mQ3VSSzszdXtnbzR2RVl7ck5Raj0jb0xYN3JWVjxWcmdwPl4heExabjFZT3xe
akFyZiEyYmZFCkNgXmlpSQoKbGl0ZXJhbCAwCkhjbVY/ZDAwMDAxCgpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvcGxhdGZvcm0vaW9zL1Rlc3RFeHBlY3RhdGlvbnMgYi9MYXlvdXRUZXN0cy9wbGF0
Zm9ybS9pb3MvVGVzdEV4cGVjdGF0aW9ucwppbmRleCAzY2Q0YjI4Mzc2NjM3MGUzYWI4NWJlNTM3
MTdiNGJmZTFmNDA1NzFjLi5iODdkOWUyYzIyODRmMWJkZmU3MjA0YzkxZDUxNTQ5NzQxYmVhYjYz
IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9pb3MvVGVzdEV4cGVjdGF0aW9ucwor
KysgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9pb3MvVGVzdEV4cGVjdGF0aW9ucwpAQCAtMjUyMyw2
ICsyNTIzLDcgQEAgaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9kb20vZXZlbnRzL3Nj
cm9sbGluZyBbIFBhc3MgXQogZmFzdC9hdHRhY2htZW50L2F0dGFjaG1lbnQtd3JhcHBpbmctYWN0
aW9uLmh0bWwgWyBQYXNzIF0KIGZhc3QvYXR0YWNobWVudC9hdHRhY2htZW50LWJvcmRlcmxlc3Mu
aHRtbCBbIFBhc3MgXQogZmFzdC9hdHRhY2htZW50L2F0dGFjaG1lbnQtZHluYW1pYy10eXBlLmh0
bWwgWyBQYXNzIF0KK2Zhc3QvYXR0YWNobWVudC9hdHRhY2htZW50LXRodW1ibmFpbC1wcmVzZXJ2
ZXMtYXNwZWN0LXJhdGlvLmh0bWwgWyBQYXNzIF0KIGZhc3QvaW1hZ2VzL3BkZi1hcy1pbWFnZS1k
ZXN0LXJlY3QtY2hhbmdlLmh0bWwgWyBQYXNzIF0KIAogZmFzdC9ldmVudHMvcGFnZS12aXNpYmls
aXR5LWlmcmFtZS1tb3ZlLXRlc3QuaHRtbCBbIFNraXAgXQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvcmVzb3VyY2VzL3VpLWhlbHBlci5qcyBiL0xheW91dFRlc3RzL3Jlc291cmNlcy91aS1oZWxw
ZXIuanMKaW5kZXggNDdiZmQ0NTJhZjIzNGFmZTFjMmM2NDRiMmRkOGQwYWJhOWQ0YzZiMC4uMjU0
OTNlY2I4ZDMzMTBlMWQ5Yjc2ZTQwMGUzYzhmZjczMWZmMjU4YSAxMDA2NDQKLS0tIGEvTGF5b3V0
VGVzdHMvcmVzb3VyY2VzL3VpLWhlbHBlci5qcworKysgYi9MYXlvdXRUZXN0cy9yZXNvdXJjZXMv
dWktaGVscGVyLmpzCkBAIC0xMDAyLDYgKzEwMDIsMTkgQEAgd2luZG93LlVJSGVscGVyID0gY2xh
c3MgVUlIZWxwZXIgewogICAgICAgICB9KTsKICAgICB9CiAKKyAgICBzdGF0aWMgaW5zZXJ0QXR0
YWNobWVudEZvckZpbGVQYXRoKHBhdGgsIGNvbnRlbnRUeXBlKQorICAgIHsKKyAgICAgICAgaWYg
KCF0aGlzLmlzV2ViS2l0MigpKQorICAgICAgICAgICAgcmV0dXJuIFByb21pc2UucmVzb2x2ZSgp
OworCisgICAgICAgIHJldHVybiBuZXcgUHJvbWlzZShyZXNvbHZlID0+IHsKKyAgICAgICAgICAg
IHRlc3RSdW5uZXIucnVuVUlTY3JpcHQoYAorICAgICAgICAgICAgICAgIHVpQ29udHJvbGxlci5p
bnNlcnRBdHRhY2htZW50Rm9yRmlsZVBhdGgoJyR7cGF0aH0nLCAnJHtjb250ZW50VHlwZX0nLCBm
dW5jdGlvbigpIHsKKyAgICAgICAgICAgICAgICAgICAgdWlDb250cm9sbGVyLnVpU2NyaXB0Q29t
cGxldGUoKTsKKyAgICAgICAgICAgICAgICB9KTtgLCByZXNvbHZlKTsKKyAgICAgICAgfSk7Cisg
ICAgfQorCiAgICAgc3RhdGljIHNldE1pbmltdW1FZmZlY3RpdmVXaWR0aChlZmZlY3RpdmVXaWR0
aCkKICAgICB7CiAgICAgICAgIGlmICghdGhpcy5pc1dlYktpdDIoKSkK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>408240</attachid>
            <date>2020-09-08 10:36:19 -0700</date>
            <delta_ts>2020-09-08 11:13:13 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-216209-20200908103618.patch</filename>
            <type>text/plain</type>
            <size>35907</size>
            <attacher name="Tim Horton">thorton</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjY2NjE2CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMjE5N2YyMTY0ZDVmYTQ2
ZTYzMmQ0YjIwMDhmNjVmNjU4NTY2MmMyMC4uOWRlZTc4ODE4NGE1Y2M1YWFiZWQxYjBiOWUwZjU4
YmIyZTAzOTFmZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI0IEBACisyMDIwLTA5LTA0ICBUaW0g
SG9ydG9uICA8dGltb3RoeV9ob3J0b25AYXBwbGUuY29tPgorCisgICAgICAgIGlPUzogPGF0dGFj
aG1lbnQ+J3MgUXVpY2tMb29rIHRodW1ibmFpbHMgY2FuIGFwcGVhciBzcXVpc2hlZAorICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjE2MjA5CisgICAgICAg
IDxyZGFyOi8vcHJvYmxlbS82NzgxNzcwNj4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkg
KE9PUFMhKS4KKworICAgICAgICBUZXN0OiBmYXN0L2F0dGFjaG1lbnQvYXR0YWNobWVudC10aHVt
Ym5haWwtcHJlc2VydmVzLWFzcGVjdC1yYXRpby5odG1sCisKKyAgICAgICAgKiBodG1sL0hUTUxB
dHRhY2htZW50RWxlbWVudC5pZGw6CisgICAgICAgICogdGVzdGluZy9JbnRlcm5hbHMuY3BwOgor
ICAgICAgICAoV2ViQ29yZTo6SW50ZXJuYWxzOjphdHRhY2htZW50VGh1bWJuYWlsSW5mbyk6Cisg
ICAgICAgICogdGVzdGluZy9JbnRlcm5hbHMuaDoKKyAgICAgICAgKiB0ZXN0aW5nL0ludGVybmFs
cy5pZGw6CisgICAgICAgIEV4cG9zZSB0aGUgYXR0YWNobWVudCB0aHVtYm5haWwgc2l6ZSB2aWEg
SW50ZXJuYWxzLgorCisgICAgICAgICogcmVuZGVyaW5nL1JlbmRlclRoZW1lSU9TLm1tOgorICAg
ICAgICAoV2ViQ29yZTo6UmVuZGVyQXR0YWNobWVudEluZm86OlJlbmRlckF0dGFjaG1lbnRJbmZv
KToKKyAgICAgICAgQWxsb3cgdGhlIHRodW1ibmFpbCBhc3BlY3QgcmF0aW8gdG8gdmFyeSwgaW5z
dGVhZCBvZiBhc3N1bWluZyBpdCBpcyBhbHdheXMgc3F1YXJlLgorCiAyMDIwLTA5LTA0ICBDaHJp
cyBEdW1leiAgPGNkdW1lekBhcHBsZS5jb20+CiAKICAgICAgICAgUkVHUkVTU0lPTihtYWNPUyBC
aWcgU3VyKSBodHRwczovL21hZ2VudGEuZ2l0aHViLmlvL2xvZmktcGxheWVyLyBpcyBicm9rZW4K
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nIGIvU291cmNlL1dlYktpdC9DaGFu
Z2VMb2cKaW5kZXggOTQ5MTFkODk2MjUxYWU3Y2E2NTg1ODc0YzUyMGFiODg2ZmFlYjliMy4uYmY3
YjA3NDE1MDE4NGYzM2U0ZGE4MWI3NDhhMzA2NWVmMzgyY2FkOCAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYktpdC9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdC9DaGFuZ2VMb2cKQEAgLTEsMyAr
MSwyMiBAQAorMjAyMC0wOS0wNCAgVGltIEhvcnRvbiAgPHRpbW90aHlfaG9ydG9uQGFwcGxlLmNv
bT4KKworICAgICAgICBpT1M6IDxhdHRhY2htZW50PidzIFF1aWNrTG9vayB0aHVtYm5haWxzIGNh
biBhcHBlYXIgc3F1aXNoZWQKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19i
dWcuY2dpP2lkPTIxNjIwOQorICAgICAgICA8cmRhcjovL3Byb2JsZW0vNjc4MTc3MDY+CisKKyAg
ICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBVSVByb2Nlc3Mv
Q29jb2EvV2ViUGFnZVByb3h5Q29jb2EubW06CisgICAgICAgIChXZWJLaXQ6OmNvbnZlcnRQbGF0
Zm9ybUltYWdlVG9CaXRtYXApOgorICAgICAgICBQcm9wYWdhdGUgYW4gaW1hZ2Ugb2YgdGhlIHNh
bWUgYXNwZWN0IHJhdGlvIHRoYXQgUXVpY2tMb29rIHByb3ZpZGVkLAorICAgICAgICBpbnN0ZWFk
IG9mIHNxdWlzaGluZyBpdCB0byBzcXVhcmUuCisKKyAgICAgICAgKiBVSVByb2Nlc3MvUXVpY2tM
b29rVGh1bWJuYWlsTG9hZGVyLm1tOgorICAgICAgICAoLVtXS1FMVGh1bWJuYWlsTG9hZE9wZXJh
dGlvbiBzdGFydF0pOgorICAgICAgICBPbmx5IHJlcXVlc3QgZnVsbCB0aHVtYm5haWxzOyB3ZSBk
byBub3Qgd2FudCB0aGUgaWNvbiBmb3JtLCBzaW5jZSA8YXR0YWNobWVudD4KKyAgICAgICAgYWxy
ZWFkeSBoYXMgb25lIHdpdGhvdXQgUXVpY2tMb29rJ3MgaGVscDsgaWYgd2UgY2FuJ3QgZ2V0IGEg
ZnVsbCB0aHVtYm5haWwsCisgICAgICAgIHdlJ2xsIGp1c3QgbGVhdmUgaXQgYWxvbmUuCisKIDIw
MjAtMDktMDQgIFBlciBBcm5lIFZvbGxhbiAgPHB2b2xsYW5AYXBwbGUuY29tPgogCiAgICAgICAg
IFttYWNPU10gQWRkIGNsaWVudCBkZWNvZGVyIGVudGl0bGVtZW50CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9odG1sL0hUTUxBdHRhY2htZW50RWxlbWVudC5pZGwgYi9Tb3VyY2UvV2ViQ29y
ZS9odG1sL0hUTUxBdHRhY2htZW50RWxlbWVudC5pZGwKaW5kZXggNTIyZTI1N2FhZmQ3ZWQ4ZWMx
M2JhMWJkNWYxZDA1ZTRhY2E1MzJiZi4uZTc0YTE3YWI1Mjk2Y2UxNWJkYTAzZjcwZTBjNDQ4YjY4
ZWRhY2UxNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MQXR0YWNobWVudEVs
ZW1lbnQuaWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTEF0dGFjaG1lbnRFbGVtZW50
LmlkbApAQCAtMjUsNiArMjUsOCBAQAogCiBbCiAgICAgQ29uZGl0aW9uYWw9QVRUQUNITUVOVF9F
TEVNRU5ULAorICAgIEpTR2VuZXJhdGVUb05hdGl2ZU9iamVjdCwKKyAgICBFeHBvcnRNYWNybz1X
RUJDT1JFX0VYUE9SVCwKICAgICBFbmFibGVkQXRSdW50aW1lPUF0dGFjaG1lbnRFbGVtZW50LAog
XSBpbnRlcmZhY2UgSFRNTEF0dGFjaG1lbnRFbGVtZW50IDogSFRNTEVsZW1lbnQgewogICAgIGF0
dHJpYnV0ZSBGaWxlPyBmaWxlOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5n
L1JlbmRlclRoZW1lSU9TLm1tIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlclRoZW1l
SU9TLm1tCmluZGV4IDZmMGY0ODdjNDczZjUyNGM5Y2I4MjkyYmM4MzkyNzRlNTE2MGM2MjYuLjhh
YWNiMTYzY2ViZmIyODgwMThhODFlMTI4ODk3NzU0ZjM0N2EwY2MgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJUaGVtZUlPUy5tbQorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9yZW5kZXJpbmcvUmVuZGVyVGhlbWVJT1MubW0KQEAgLTE2MzcsMTAgKzE2MzcsMTEgQEAgUmVu
ZGVyQXR0YWNobWVudEluZm86OlJlbmRlckF0dGFjaG1lbnRJbmZvKGNvbnN0IFJlbmRlckF0dGFj
aG1lbnQmIGF0dGFjaG1lbnQpCiAgICAgICAgIEZsb2F0U2l6ZSBpY29uU2l6ZTsKICAgICAgICAg
aWNvbiA9IGljb25Gb3JBdHRhY2htZW50KGF0dGFjaG1lbnQsIGljb25TaXplKTsKICAgICAgICAg
dGh1bWJuYWlsSWNvbiA9IGF0dGFjaG1lbnQuYXR0YWNobWVudEVsZW1lbnQoKS50aHVtYm5haWwo
KTsKKyAgICAgICAgaWYgKHRodW1ibmFpbEljb24pCisgICAgICAgICAgICBpY29uU2l6ZSA9IGxh
cmdlc3RSZWN0V2l0aEFzcGVjdFJhdGlvSW5zaWRlUmVjdCh0aHVtYm5haWxJY29uLT5zaXplKCku
YXNwZWN0UmF0aW8oKSwgRmxvYXRSZWN0KDAsIDAsIGF0dGFjaG1lbnRJY29uU2l6ZSwgYXR0YWNo
bWVudEljb25TaXplKSkuc2l6ZSgpOwogICAgICAgICAKICAgICAgICAgaWYgKHRodW1ibmFpbElj
b24gfHwgaWNvbikgewotICAgICAgICAgICAgYXV0byB2aXNpYmxlSWNvblNpemUgPSB0aHVtYm5h
aWxJY29uID8gRmxvYXRTaXplKGF0dGFjaG1lbnRJY29uU2l6ZSwgYXR0YWNobWVudEljb25TaXpl
KSA6IGljb25TaXplOwotICAgICAgICAgICAgaWNvblJlY3QgPSBGbG9hdFJlY3QoRmxvYXRQb2lu
dCgoYXR0YWNobWVudFJlY3Qud2lkdGgoKSAvIDIpIC0gKHZpc2libGVJY29uU2l6ZS53aWR0aCgp
IC8gMiksIDApLCB2aXNpYmxlSWNvblNpemUpOworICAgICAgICAgICAgaWNvblJlY3QgPSBGbG9h
dFJlY3QoRmxvYXRQb2ludCgoYXR0YWNobWVudFJlY3Qud2lkdGgoKSAvIDIpIC0gKGljb25TaXpl
LndpZHRoKCkgLyAyKSwgMCksIGljb25TaXplKTsKICAgICAgICAgICAgIHlPZmZzZXQgKz0gaWNv
blJlY3QuaGVpZ2h0KCkgKyBhdHRhY2htZW50SXRlbU1hcmdpbjsKICAgICAgICAgfQogICAgIH0g
ZWxzZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuY3BwIGIv
U291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuY3BwCmluZGV4IDJjYWFjMGFkNmU4NDdk
Njk0Yjc3YTdiMmRlYzA4ZmU1YzE1ZjQxOTQuLjQzMWM5NjczZTk0YjRlOWQxODI1NDc2MDMyMzM1
OTc4ZDFmMmUyZjMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxz
LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5jcHAKQEAgLTg4LDYg
Kzg4LDcgQEAKICNpbmNsdWRlICJHcmlkUG9zaXRpb24uaCIKICNpbmNsdWRlICJIRVZDVXRpbGl0
aWVzLmgiCiAjaW5jbHVkZSAiSFRNTEFuY2hvckVsZW1lbnQuaCIKKyNpbmNsdWRlICJIVE1MQXR0
YWNobWVudEVsZW1lbnQuaCIKICNpbmNsdWRlICJIVE1MQ2FudmFzRWxlbWVudC5oIgogI2luY2x1
ZGUgIkhUTUxJRnJhbWVFbGVtZW50LmgiCiAjaW5jbHVkZSAiSFRNTEltYWdlRWxlbWVudC5oIgpA
QCAtNjA2NSw0ICs2MDY2LDI0IEBAIHZvaWQgSW50ZXJuYWxzOjpzZXRDb250ZW50U2l6ZUNhdGVn
b3J5KEludGVybmFsczo6Q29udGVudFNpemVDYXRlZ29yeSBjYXRlZ29yeSkKICNlbmRpZgogfQog
CisjaWYgRU5BQkxFKEFUVEFDSE1FTlRfRUxFTUVOVCkKKworRXhjZXB0aW9uT3I8SW50ZXJuYWxz
OjpBdHRhY2htZW50VGh1bWJuYWlsSW5mbz4gSW50ZXJuYWxzOjphdHRhY2htZW50VGh1bWJuYWls
SW5mbyhjb25zdCBIVE1MQXR0YWNobWVudEVsZW1lbnQmIGVsZW1lbnQpCit7CisjaWYgSEFWRShR
VUlDS0xPT0tfVEhVTUJOQUlMSU5HKQorICAgIEF0dGFjaG1lbnRUaHVtYm5haWxJbmZvIGluZm87
CisgICAgaWYgKGF1dG8gaW1hZ2UgPSBlbGVtZW50LnRodW1ibmFpbCgpKSB7CisgICAgICAgIGF1
dG8gc2l6ZSA9IGltYWdlLT5zaXplKCk7CisgICAgICAgIGluZm8ud2lkdGggPSBzaXplLndpZHRo
KCk7CisgICAgICAgIGluZm8uaGVpZ2h0ID0gc2l6ZS5oZWlnaHQoKTsKKyAgICB9CisgICAgcmV0
dXJuIGluZm87CisjZWxzZQorICAgIFVOVVNFRF9QQVJBTShlbGVtZW50KTsKKyAgICByZXR1cm4g
RXhjZXB0aW9uIHsgSW52YWxpZEFjY2Vzc0Vycm9yIH07CisjZW5kaWYKK30KKworI2VuZGlmCisK
IH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3Rlc3Rp
bmcvSW50ZXJuYWxzLmggYi9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5oCmluZGV4
IGExYTg3MWM4OTY4YWI5Y2M0ZGEwMzcwNDg2OGRiMDAyZDhmYTI2MTMuLmE4ZjgzY2U3MWY5Mjgx
ZTRlZWM2ZDlmZGRlMmY3YjQ1MDRjYTlhMDUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3Rl
c3RpbmcvSW50ZXJuYWxzLmgKKysrIGIvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMu
aApAQCAtNjksNiArNjksNyBAQCBjbGFzcyBGaWxlOwogY2xhc3MgRnJhbWU7CiBjbGFzcyBHQ09i
c2VydmF0aW9uOwogY2xhc3MgSFRNTEFuY2hvckVsZW1lbnQ7CitjbGFzcyBIVE1MQXR0YWNobWVu
dEVsZW1lbnQ7CiBjbGFzcyBIVE1MSW1hZ2VFbGVtZW50OwogY2xhc3MgSFRNTElucHV0RWxlbWVu
dDsKIGNsYXNzIEhUTUxMaW5rRWxlbWVudDsKQEAgLTEwNTgsNiArMTA1OSwxNSBAQCBwdWJsaWM6
CiAgICAgZW51bSBjbGFzcyBDb250ZW50U2l6ZUNhdGVnb3J5IHsgTCwgWFhYTCB9OwogICAgIHZv
aWQgc2V0Q29udGVudFNpemVDYXRlZ29yeShDb250ZW50U2l6ZUNhdGVnb3J5KTsKIAorI2lmIEVO
QUJMRShBVFRBQ0hNRU5UX0VMRU1FTlQpCisgICAgc3RydWN0IEF0dGFjaG1lbnRUaHVtYm5haWxJ
bmZvIHsKKyAgICAgICAgdW5zaWduZWQgd2lkdGggeyAwIH07CisgICAgICAgIHVuc2lnbmVkIGhl
aWdodCB7IDAgfTsKKyAgICB9OworCisgICAgRXhjZXB0aW9uT3I8QXR0YWNobWVudFRodW1ibmFp
bEluZm8+IGF0dGFjaG1lbnRUaHVtYm5haWxJbmZvKGNvbnN0IEhUTUxBdHRhY2htZW50RWxlbWVu
dCYpOworI2VuZGlmCisKIHByaXZhdGU6CiAgICAgZXhwbGljaXQgSW50ZXJuYWxzKERvY3VtZW50
Jik7CiAgICAgRG9jdW1lbnQqIGNvbnRleHREb2N1bWVudCgpIGNvbnN0OwpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuaWRsIGIvU291cmNlL1dlYkNvcmUvdGVz
dGluZy9JbnRlcm5hbHMuaWRsCmluZGV4IGUxZGFhM2ExNWQ3NWY1NjM2ZjUzYjYwYzFiZjFiZmI5
MWExZGMzOTIuLmQzZGUzZDMwMWZmMWMxMGM5MzRlNjM5ODZjNjA3N2ExODQyZGJmYTEgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxzLmlkbAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5pZGwKQEAgLTIzNSw2ICsyMzUsMTUgQEAgZW51bSBD
b250ZW50U2l6ZUNhdGVnb3J5IHsKICAgICBET01SZWN0TGlzdCB0ZXh0UmVjdHNJbkJvdW5kaW5n
UmVjdENvb3JkaW5hdGVzOwogfTsKIAorWworICAgIEV4cG9ydE1hY3JvPVdFQkNPUkVfVEVTVFNV
UFBPUlRfRVhQT1JULAorICAgIENvbmRpdGlvbmFsPUFUVEFDSE1FTlRfRUxFTUVOVCwKKyAgICBK
U0dlbmVyYXRlVG9KU09iamVjdCwKK10gZGljdGlvbmFyeSBBdHRhY2htZW50VGh1bWJuYWlsSW5m
byB7CisgICAgdW5zaWduZWQgbG9uZyB3aWR0aDsKKyAgICB1bnNpZ25lZCBsb25nIGhlaWdodDsK
K307CisKIFsKICAgICBFeHBvcnRNYWNybz1XRUJDT1JFX1RFU1RTVVBQT1JUX0VYUE9SVCwKICAg
ICBKU0dlbmVyYXRlVG9KU09iamVjdCwKQEAgLTk2NSw0ICs5NzQsNiBAQCBlbnVtIENvbnRlbnRT
aXplQ2F0ZWdvcnkgewogICAgIFtDb25kaXRpb25hbD1FTkNSWVBURURfTUVESUFdIHVuc2lnbmVk
IGxvbmcgbWVkaWFLZXlTZXNzaW9uSW50ZXJuYWxJbnN0YW5jZVNlc3Npb25PYmplY3RSZWZDb3Vu
dChNZWRpYUtleVNlc3Npb24gc2Vzc2lvbik7CiAKICAgICB1bmRlZmluZWQgc2V0Q29udGVudFNp
emVDYXRlZ29yeShDb250ZW50U2l6ZUNhdGVnb3J5IGNhdGVnb3J5KTsKKworICAgIFtDb25kaXRp
b25hbD1BVFRBQ0hNRU5UX0VMRU1FTlQsIE1heVRocm93RXhjZXB0aW9uXSBBdHRhY2htZW50VGh1
bWJuYWlsSW5mbyBhdHRhY2htZW50VGh1bWJuYWlsSW5mbyhIVE1MQXR0YWNobWVudEVsZW1lbnQg
ZWxlbWVudCk7CiB9OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9VSVByb2Nlc3MvQ29jb2Ev
V2ViUGFnZVByb3h5Q29jb2EubW0gYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9Db2NvYS9XZWJQ
YWdlUHJveHlDb2NvYS5tbQppbmRleCA0ZDRmODg3ZWRjOTViMWVkNTc1NzQwZjE5OGJiZTYyYmM2
MzNjZWE1Li41YmRlZTE5NWVlZTc2YjU2OWY2NjUwYjYwYzYyMmE5OWMwNDViMmJjIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9Db2NvYS9XZWJQYWdlUHJveHlDb2NvYS5tbQor
KysgYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9Db2NvYS9XZWJQYWdlUHJveHlDb2NvYS5tbQpA
QCAtNDMsNiArNDMsNyBAQAogI2ltcG9ydCAiV2Vic2l0ZURhdGFTdG9yZS5oIgogI2ltcG9ydCAi
V0tFcnJvckludGVybmFsLmgiCiAjaW1wb3J0IDxXZWJDb3JlL0RyYWdJdGVtLmg+CisjaW1wb3J0
IDxXZWJDb3JlL0dlb21ldHJ5VXRpbGl0aWVzLmg+CiAjaW1wb3J0IDxXZWJDb3JlL0xvY2FsQ3Vy
cmVudEdyYXBoaWNzQ29udGV4dC5oPgogI2ltcG9ydCA8V2ViQ29yZS9Ob3RJbXBsZW1lbnRlZC5o
PgogI2ltcG9ydCA8V2ViQ29yZS9TZWFyY2hQb3B1cE1lbnVDb2NvYS5oPgpAQCAtNDM1LDEwICs0
MzYsMTQgQEAgdm9pZCBXZWJQYWdlUHJveHk6OnJlbW92ZU1lZGlhVXNhZ2VNYW5hZ2VyU2Vzc2lv
bihXZWJDb3JlOjpNZWRpYVNlc3Npb25JZGVudGlmaWUKIAogI2lmIEhBVkUoUVVJQ0tMT09LX1RI
VU1CTkFJTElORykKIAotc3RhdGljIFJlZlB0cjxXZWJLaXQ6OlNoYXJlYWJsZUJpdG1hcD4gY29u
dmVydFBsYXRmb3JtSW1hZ2VUb0JpdG1hcChDb2NvYUltYWdlICppbWFnZSwgY29uc3QgV2ViQ29y
ZTo6SW50U2l6ZSYgc2l6ZSkKK3N0YXRpYyBSZWZQdHI8V2ViS2l0OjpTaGFyZWFibGVCaXRtYXA+
IGNvbnZlcnRQbGF0Zm9ybUltYWdlVG9CaXRtYXAoQ29jb2FJbWFnZSAqaW1hZ2UsIGNvbnN0IFdl
YkNvcmU6OkludFNpemUmIGZpdHRpbmdTaXplKQogeworICAgIEZsb2F0U2l6ZSBvcmlnaW5hbFRo
dW1ibmFpbFNpemUoW2ltYWdlIHNpemVdKTsKKyAgICBhdXRvIHJlc3VsdFJlY3QgPSByb3VuZGVk
SW50UmVjdChsYXJnZXN0UmVjdFdpdGhBc3BlY3RSYXRpb0luc2lkZVJlY3Qob3JpZ2luYWxUaHVt
Ym5haWxTaXplLmFzcGVjdFJhdGlvKCksIHsgeyB9LCBmaXR0aW5nU2l6ZSB9KSk7CisgICAgcmVz
dWx0UmVjdC5zZXRMb2NhdGlvbih7IH0pOworCiAgICAgV2ViS2l0OjpTaGFyZWFibGVCaXRtYXA6
OkNvbmZpZ3VyYXRpb24gYml0bWFwQ29uZmlndXJhdGlvbjsKLSAgICBhdXRvIGJpdG1hcCA9IFdl
YktpdDo6U2hhcmVhYmxlQml0bWFwOjpjcmVhdGVTaGFyZWFibGUoc2l6ZSwgYml0bWFwQ29uZmln
dXJhdGlvbik7CisgICAgYXV0byBiaXRtYXAgPSBXZWJLaXQ6OlNoYXJlYWJsZUJpdG1hcDo6Y3Jl
YXRlU2hhcmVhYmxlKHJlc3VsdFJlY3Quc2l6ZSgpLCBiaXRtYXBDb25maWd1cmF0aW9uKTsKICAg
ICBpZiAoIWJpdG1hcCkKICAgICAgICAgcmV0dXJuIG51bGxwdHI7CiAKQEAgLTQ0OCw5ICs0NTMs
OSBAQCBzdGF0aWMgUmVmUHRyPFdlYktpdDo6U2hhcmVhYmxlQml0bWFwPiBjb252ZXJ0UGxhdGZv
cm1JbWFnZVRvQml0bWFwKENvY29hSW1hZ2UgKgogCiAgICAgTG9jYWxDdXJyZW50R3JhcGhpY3ND
b250ZXh0IHNhdmVkQ29udGV4dCgqZ3JhcGhpY3NDb250ZXh0KTsKICNpZiBQTEFURk9STShJT1Nf
RkFNSUxZKQotICAgIFtpbWFnZSBkcmF3SW5SZWN0OkNHUmVjdE1ha2UoMCwgMCwgYml0bWFwLT5z
aXplKCkud2lkdGgoKSwgYml0bWFwLT5zaXplKCkuaGVpZ2h0KCkpXTsKKyAgICBbaW1hZ2UgZHJh
d0luUmVjdDpyZXN1bHRSZWN0XTsKICNlbGlmIFVTRShBUFBLSVQpCi0gICAgW2ltYWdlIGRyYXdJ
blJlY3Q6TlNNYWtlUmVjdCgwLCAwLCBiaXRtYXAtPnNpemUoKS53aWR0aCgpLCBiaXRtYXAtPnNp
emUoKS5oZWlnaHQoKSkgZnJvbVJlY3Q6TlNaZXJvUmVjdCBvcGVyYXRpb246TlNDb21wb3NpdGlu
Z09wZXJhdGlvblNvdXJjZU92ZXIgZnJhY3Rpb246MSByZXNwZWN0RmxpcHBlZDpZRVMgaGludHM6
bmlsXTsKKyAgICBbaW1hZ2UgZHJhd0luUmVjdDpyZXN1bHRSZWN0IGZyb21SZWN0Ok5TWmVyb1Jl
Y3Qgb3BlcmF0aW9uOk5TQ29tcG9zaXRpbmdPcGVyYXRpb25Tb3VyY2VPdmVyIGZyYWN0aW9uOjEg
cmVzcGVjdEZsaXBwZWQ6WUVTIGhpbnRzOm5pbF07CiAjZW5kaWYKIAogICAgIHJldHVybiBiaXRt
YXA7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9RdWlja0xvb2tUaHVtYm5h
aWxMb2FkZXIubW0gYi9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9RdWlja0xvb2tUaHVtYm5haWxM
b2FkZXIubW0KaW5kZXggZTgwMTg4YjkwYjIyZmY2YWE3OTg2MDAzNDNjYjBjY2NhZTNkNmU2NS4u
NWMxYTA3N2MzZTZlYTFiNmMxNWE0ZmQ2OWI1MzQ4OWUxYmU5ZjJhZiAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYktpdC9VSVByb2Nlc3MvUXVpY2tMb29rVGh1bWJuYWlsTG9hZGVyLm1tCisrKyBiL1Nv
dXJjZS9XZWJLaXQvVUlQcm9jZXNzL1F1aWNrTG9va1RodW1ibmFpbExvYWRlci5tbQpAQCAtMTA3
LDcgKzEwNyw3IEBAIC0gKHZvaWQpc3RhcnQKICAgICAgICAgICAgIHJldHVybjsKICAgICB9CiAK
LSAgICBhdXRvIHJlcXVlc3QgPSBhZG9wdE5TKFtXZWJLaXQ6OmFsbG9jUUxUaHVtYm5haWxHZW5l
cmF0aW9uUmVxdWVzdEluc3RhbmNlKCkgaW5pdFdpdGhGaWxlQXRVUkw6X2ZpbGVQYXRoLmdldCgp
IHNpemU6Q0dTaXplTWFrZSg0MDAsIDQwMCkgc2NhbGU6MSByZXByZXNlbnRhdGlvblR5cGVzOlFM
VGh1bWJuYWlsR2VuZXJhdGlvblJlcXVlc3RSZXByZXNlbnRhdGlvblR5cGVBbGxdKTsKKyAgICBh
dXRvIHJlcXVlc3QgPSBhZG9wdE5TKFtXZWJLaXQ6OmFsbG9jUUxUaHVtYm5haWxHZW5lcmF0aW9u
UmVxdWVzdEluc3RhbmNlKCkgaW5pdFdpdGhGaWxlQXRVUkw6X2ZpbGVQYXRoLmdldCgpIHNpemU6
Q0dTaXplTWFrZSg0MDAsIDQwMCkgc2NhbGU6MSByZXByZXNlbnRhdGlvblR5cGVzOlFMVGh1bWJu
YWlsR2VuZXJhdGlvblJlcXVlc3RSZXByZXNlbnRhdGlvblR5cGVUaHVtYm5haWxdKTsKICAgICBb
cmVxdWVzdCBzZXRJY29uTW9kZTpZRVNdOwogICAgIAogICAgIFtbV2ViS2l0OjpnZXRRTFRodW1i
bmFpbEdlbmVyYXRvckNsYXNzKCkgc2hhcmVkR2VuZXJhdG9yXSBnZW5lcmF0ZUJlc3RSZXByZXNl
bnRhdGlvbkZvclJlcXVlc3Q6cmVxdWVzdC5nZXQoKSBjb21wbGV0aW9uSGFuZGxlcjpeKFFMVGh1
bWJuYWlsUmVwcmVzZW50YXRpb24gKnRodW1ibmFpbCwgTlNFcnJvciAqZXJyb3IpIHsKZGlmZiAt
LWdpdCBhL1Rvb2xzL0NoYW5nZUxvZyBiL1Rvb2xzL0NoYW5nZUxvZwppbmRleCA4ZDIyZGE5Nzgx
NTI1NDg0MzY2OTMwZjgwNGQ5MzYzZjBlMzc0ZDY0Li45ZGM0ODg5OWY1NzkxODRhY2MzN2YxZDNk
ZmM0Y2FlNDBjZjhkZmUzIDEwMDY0NAotLS0gYS9Ub29scy9DaGFuZ2VMb2cKKysrIGIvVG9vbHMv
Q2hhbmdlTG9nCkBAIC0xLDMgKzEsMjMgQEAKKzIwMjAtMDktMDQgIFRpbSBIb3J0b24gIDx0aW1v
dGh5X2hvcnRvbkBhcHBsZS5jb20+CisKKyAgICAgICAgaU9TOiA8YXR0YWNobWVudD4ncyBRdWlj
a0xvb2sgdGh1bWJuYWlscyBjYW4gYXBwZWFyIHNxdWlzaGVkCisgICAgICAgIGh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMTYyMDkKKyAgICAgICAgPHJkYXI6Ly9wcm9i
bGVtLzY3ODE3NzA2PgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisg
ICAgICAgICogVGVzdFJ1bm5lclNoYXJlZC9VSVNjcmlwdENvbnRleHQvQmluZGluZ3MvVUlTY3Jp
cHRDb250cm9sbGVyLmlkbDoKKyAgICAgICAgKiBUZXN0UnVubmVyU2hhcmVkL1VJU2NyaXB0Q29u
dGV4dC9VSVNjcmlwdENvbnRyb2xsZXIuaDoKKyAgICAgICAgKFdUUjo6VUlTY3JpcHRDb250cm9s
bGVyOjppbnNlcnRBdHRhY2htZW50Rm9yRmlsZVBhdGgpOgorICAgICAgICAqIFdlYktpdFRlc3RS
dW5uZXIvVGVzdENvbnRyb2xsZXIuY3BwOgorICAgICAgICAoV1RSOjpUZXN0Q29udHJvbGxlcjo6
Y3VycmVudFRlc3RVUkwgY29uc3QpOgorICAgICAgICAqIFdlYktpdFRlc3RSdW5uZXIvVGVzdENv
bnRyb2xsZXIuaDoKKyAgICAgICAgKiBXZWJLaXRUZXN0UnVubmVyL2NvY29hL1VJU2NyaXB0Q29u
dHJvbGxlckNvY29hLmg6CisgICAgICAgICogV2ViS2l0VGVzdFJ1bm5lci9jb2NvYS9VSVNjcmlw
dENvbnRyb2xsZXJDb2NvYS5tbToKKyAgICAgICAgKFdUUjo6VUlTY3JpcHRDb250cm9sbGVyQ29j
b2E6Omluc2VydEF0dGFjaG1lbnRGb3JGaWxlUGF0aCk6CisgICAgICAgIE1ha2UgaXQgcG9zc2li
bGUgdG8gaW5zZXJ0IGFuIGF0dGFjaG1lbnQgd3JhcHBpbmcgYSBmaWxlIG9uIGRpc2sKKyAgICAg
ICAgdmlhIFVJU2NyaXB0Q29udHJvbGxlci4KKwogMjAyMC0wOS0wNCAgWW91ZW5uIEZhYmxldCAg
PHlvdWVubkBhcHBsZS5jb20+CiAKICAgICAgICAgQmluZGluZyBnZW5lcmF0b3IgaXMgbm90IGFs
d2F5cyBjb21wdXRpbmcgdGhlIHJpZ2h0IGludGVyZmFjZSBhdHRyaWJ1dGVzCmRpZmYgLS1naXQg
YS9Ub29scy9UZXN0UnVubmVyU2hhcmVkL1VJU2NyaXB0Q29udGV4dC9CaW5kaW5ncy9VSVNjcmlw
dENvbnRyb2xsZXIuaWRsIGIvVG9vbHMvVGVzdFJ1bm5lclNoYXJlZC9VSVNjcmlwdENvbnRleHQv
QmluZGluZ3MvVUlTY3JpcHRDb250cm9sbGVyLmlkbAppbmRleCBlMzU1ZGY0ZjU4YTAwNjg2MjNk
ZmJmMjRiZGVlMjg2Mzc2NWE3NTQ3Li4zZDU4MzJkMWQ5NjJjMGM5MzJmMzI3ZTNlYmMwMTg5ZGEx
MGM0ODVjIDEwMDY0NAotLS0gYS9Ub29scy9UZXN0UnVubmVyU2hhcmVkL1VJU2NyaXB0Q29udGV4
dC9CaW5kaW5ncy9VSVNjcmlwdENvbnRyb2xsZXIuaWRsCisrKyBiL1Rvb2xzL1Rlc3RSdW5uZXJT
aGFyZWQvVUlTY3JpcHRDb250ZXh0L0JpbmRpbmdzL1VJU2NyaXB0Q29udHJvbGxlci5pZGwKQEAg
LTM0Nyw2ICszNDcsNyBAQCBpbnRlcmZhY2UgVUlTY3JpcHRDb250cm9sbGVyIHsKICAgICB1bmRl
ZmluZWQgc2V0SGFyZHdhcmVLZXlib2FyZEF0dGFjaGVkKGJvb2xlYW4gYXR0YWNoZWQpOwogCiAg
ICAgb2JqZWN0IGF0dGFjaG1lbnRJbmZvKERPTVN0cmluZyBhdHRhY2htZW50SWRlbnRpZmllcik7
CisgICAgdW5kZWZpbmVkIGluc2VydEF0dGFjaG1lbnRGb3JGaWxlUGF0aChET01TdHJpbmcgZmls
ZVBhdGgsIERPTVN0cmluZyBjb250ZW50VHlwZSwgb2JqZWN0IGNhbGxiYWNrKTsKIAogICAgIHJl
YWRvbmx5IGF0dHJpYnV0ZSBET01TdHJpbmcgbGFzdFVuZG9MYWJlbDsKICAgICByZWFkb25seSBh
dHRyaWJ1dGUgRE9NU3RyaW5nIGZpcnN0UmVkb0xhYmVsOwpkaWZmIC0tZ2l0IGEvVG9vbHMvVGVz
dFJ1bm5lclNoYXJlZC9VSVNjcmlwdENvbnRleHQvVUlTY3JpcHRDb250cm9sbGVyLmggYi9Ub29s
cy9UZXN0UnVubmVyU2hhcmVkL1VJU2NyaXB0Q29udGV4dC9VSVNjcmlwdENvbnRyb2xsZXIuaApp
bmRleCBhZDA2ZjBiNzI2NmI0MDkyYWFjZTI4MGE3MmE2MzMzOTRmY2Y5NTgzLi5mYjJiZjMyMDUy
NWJjYWViZjQwNjdkZTMwZWFmODNmMzBmOGM2MzM5IDEwMDY0NAotLS0gYS9Ub29scy9UZXN0UnVu
bmVyU2hhcmVkL1VJU2NyaXB0Q29udGV4dC9VSVNjcmlwdENvbnRyb2xsZXIuaAorKysgYi9Ub29s
cy9UZXN0UnVubmVyU2hhcmVkL1VJU2NyaXB0Q29udGV4dC9VSVNjcmlwdENvbnRyb2xsZXIuaApA
QCAtMjc1LDYgKzI3NSw3IEBAIHB1YmxpYzoKICAgICAvLyBBdHRhY2htZW50IEVsZW1lbnRzCiAK
ICAgICB2aXJ0dWFsIEpTT2JqZWN0UmVmIGF0dGFjaG1lbnRJbmZvKEpTU3RyaW5nUmVmIGF0dGFj
aG1lbnRJZGVudGlmaWVyKSB7IG5vdEltcGxlbWVudGVkKCk7IHJldHVybiBudWxscHRyOyB9Cisg
ICAgdmlydHVhbCB2b2lkIGluc2VydEF0dGFjaG1lbnRGb3JGaWxlUGF0aChKU1N0cmluZ1JlZiBm
aWxlUGF0aCwgSlNTdHJpbmdSZWYgY29udGVudFR5cGUsIEpTVmFsdWVSZWYgY2FsbGJhY2spIHsg
bm90SW1wbGVtZW50ZWQoKTsgfQogCiAgICAgLy8gQ2FsbGJhY2tzCiAgICAgCmRpZmYgLS1naXQg
YS9Ub29scy9XZWJLaXRUZXN0UnVubmVyL1Rlc3RDb250cm9sbGVyLmNwcCBiL1Rvb2xzL1dlYktp
dFRlc3RSdW5uZXIvVGVzdENvbnRyb2xsZXIuY3BwCmluZGV4IDIxM2VmZTFmYTExMGFiMmZmNGEy
MjEzOGJjMTc5NTRkNGEwOGM0MTUuLjFlYjlhYWIzOTg4YzFhZTRkNjVhM2MyMmU3ZmNkN2ZkYmQ2
YTYyMTEgMTAwNjQ0Ci0tLSBhL1Rvb2xzL1dlYktpdFRlc3RSdW5uZXIvVGVzdENvbnRyb2xsZXIu
Y3BwCisrKyBiL1Rvb2xzL1dlYktpdFRlc3RSdW5uZXIvVGVzdENvbnRyb2xsZXIuY3BwCkBAIC00
MTIwLDQgKzQxMjAsOSBAQCB2b2lkIFRlc3RDb250cm9sbGVyOjptYXJrQWRDbGlja0F0dHJpYnV0
aW9uc0FzRXhwaXJlZEZvclRlc3RpbmcoKQogICAgIHJ1blVudGlsKGNhbGxiYWNrQ29udGV4dC5k
b25lLCBub1RpbWVvdXQpOwogfQogCitXS1VSTFJlZiBUZXN0Q29udHJvbGxlcjo6Y3VycmVudFRl
c3RVUkwoKSBjb25zdAoreworICAgIHJldHVybiBtX2N1cnJlbnRJbnZvY2F0aW9uID8gbV9jdXJy
ZW50SW52b2NhdGlvbi0+dXJsKCkgOiBudWxscHRyOworfQorCiB9IC8vIG5hbWVzcGFjZSBXVFIK
ZGlmZiAtLWdpdCBhL1Rvb2xzL1dlYktpdFRlc3RSdW5uZXIvVGVzdENvbnRyb2xsZXIuaCBiL1Rv
b2xzL1dlYktpdFRlc3RSdW5uZXIvVGVzdENvbnRyb2xsZXIuaAppbmRleCA3MTNmZjlhYjE5Njli
OTdhNTdlN2I1ZTRiMjI4NGVkMjA4ZjA2YzE3Li5mOTRkNTdjMTQ3YjMxNmYwNzhmYTg1ZjIyMGY0
MDc2MDk0MTEzYzhjIDEwMDY0NAotLS0gYS9Ub29scy9XZWJLaXRUZXN0UnVubmVyL1Rlc3RDb250
cm9sbGVyLmgKKysrIGIvVG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9UZXN0Q29udHJvbGxlci5oCkBA
IC0zNTksNiArMzU5LDggQEAgcHVibGljOgogCiAgICAgdm9pZCBkaWRTZXRBcHBCb3VuZERvbWFp
bnMoKSBjb25zdDsKIAorICAgIFdLVVJMUmVmIGN1cnJlbnRUZXN0VVJMKCkgY29uc3Q7CisKIHBy
aXZhdGU6CiAgICAgV0tSZXRhaW5QdHI8V0tQYWdlQ29uZmlndXJhdGlvblJlZj4gZ2VuZXJhdGVQ
YWdlQ29uZmlndXJhdGlvbihjb25zdCBUZXN0T3B0aW9ucyYpOwogICAgIFdLUmV0YWluUHRyPFdL
Q29udGV4dENvbmZpZ3VyYXRpb25SZWY+IGdlbmVyYXRlQ29udGV4dENvbmZpZ3VyYXRpb24oY29u
c3QgVGVzdE9wdGlvbnM6OkNvbnRleHRPcHRpb25zJikgY29uc3Q7CmRpZmYgLS1naXQgYS9Ub29s
cy9XZWJLaXRUZXN0UnVubmVyL2NvY29hL1VJU2NyaXB0Q29udHJvbGxlckNvY29hLmggYi9Ub29s
cy9XZWJLaXRUZXN0UnVubmVyL2NvY29hL1VJU2NyaXB0Q29udHJvbGxlckNvY29hLmgKaW5kZXgg
ZWRiMjEwYzFhODc5YmI4NGNkYjhlNjllMTRiNzU1ZDRmYWJmZTE1OC4uNzc2N2NhYjZhNTY0MGMy
NDc0MDBlMzZmYjFjOTQ1YjczYmVlMzY4NCAxMDA2NDQKLS0tIGEvVG9vbHMvV2ViS2l0VGVzdFJ1
bm5lci9jb2NvYS9VSVNjcmlwdENvbnRyb2xsZXJDb2NvYS5oCisrKyBiL1Rvb2xzL1dlYktpdFRl
c3RSdW5uZXIvY29jb2EvVUlTY3JpcHRDb250cm9sbGVyQ29jb2EuaApAQCAtNTcsNiArNTcsOCBA
QCBwdWJsaWM6CiAKICAgICB2b2lkIHNldENvbnRpbnVvdXNTcGVsbENoZWNraW5nRW5hYmxlZChi
b29sKSBvdmVycmlkZTsKIAorICAgIHZvaWQgaW5zZXJ0QXR0YWNobWVudEZvckZpbGVQYXRoKEpT
U3RyaW5nUmVmIGZpbGVQYXRoLCBKU1N0cmluZ1JlZiBjb250ZW50VHlwZSwgSlNWYWx1ZVJlZiBj
YWxsYmFjaykgb3ZlcnJpZGU7CisKIHByb3RlY3RlZDoKICAgICBleHBsaWNpdCBVSVNjcmlwdENv
bnRyb2xsZXJDb2NvYShVSVNjcmlwdENvbnRleHQmKTsKICAgICBUZXN0UnVubmVyV0tXZWJWaWV3
ICp3ZWJWaWV3KCkgY29uc3Q7CmRpZmYgLS1naXQgYS9Ub29scy9XZWJLaXRUZXN0UnVubmVyL2Nv
Y29hL1VJU2NyaXB0Q29udHJvbGxlckNvY29hLm1tIGIvVG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9j
b2NvYS9VSVNjcmlwdENvbnRyb2xsZXJDb2NvYS5tbQppbmRleCAxN2FlNTUzMWMxMTg3MjEwZjZm
NDJiNDQ2MzkyMTU0MzIxNDBkYzViLi5hODJjYzM1NWNkN2ZlOTk1NTdhNDFkNjIyMTU2NmQ3MDBj
MzRmNzc4IDEwMDY0NAotLS0gYS9Ub29scy9XZWJLaXRUZXN0UnVubmVyL2NvY29hL1VJU2NyaXB0
Q29udHJvbGxlckNvY29hLm1tCisrKyBiL1Rvb2xzL1dlYktpdFRlc3RSdW5uZXIvY29jb2EvVUlT
Y3JpcHRDb250cm9sbGVyQ29jb2EubW0KQEAgLTMyLDYgKzMyLDcgQEAKICNpbXBvcnQgIlRlc3RS
dW5uZXJXS1dlYlZpZXcuaCIKICNpbXBvcnQgIlVJU2NyaXB0Q29udGV4dC5oIgogI2ltcG9ydCA8
SmF2YVNjcmlwdENvcmUvSmF2YVNjcmlwdENvcmUuaD4KKyNpbXBvcnQgPFdlYktpdC9XS1VSTENG
Lmg+CiAjaW1wb3J0IDxXZWJLaXQvV0tXZWJWaWV3UHJpdmF0ZS5oPgogI2ltcG9ydCA8V2ViS2l0
L1dLV2ViVmlld1ByaXZhdGVGb3JUZXN0aW5nLmg+CiAKQEAgLTIwOCw0ICsyMDksMTkgQEAgdm9p
ZCBVSVNjcmlwdENvbnRyb2xsZXJDb2NvYTo6cGFzdGUoKQogICAgIFt3ZWJWaWV3KCkgcGFzdGU6
bmlsXTsKIH0KIAordm9pZCBVSVNjcmlwdENvbnRyb2xsZXJDb2NvYTo6aW5zZXJ0QXR0YWNobWVu
dEZvckZpbGVQYXRoKEpTU3RyaW5nUmVmIGZpbGVQYXRoLCBKU1N0cmluZ1JlZiBjb250ZW50VHlw
ZSwgSlNWYWx1ZVJlZiBjYWxsYmFjaykKK3sKKyAgICB1bnNpZ25lZCBjYWxsYmFja0lEID0gbV9j
b250ZXh0LT5wcmVwYXJlRm9yQXN5bmNUYXNrKGNhbGxiYWNrLCBDYWxsYmFja1R5cGVOb25QZXJz
aXN0ZW50KTsKKworICAgIFJldGFpblB0cjxDRlVSTFJlZj4gdGVzdFVSTCA9IGFkb3B0Q0YoV0tV
UkxDb3B5Q0ZVUkwoa0NGQWxsb2NhdG9yRGVmYXVsdCwgVGVzdENvbnRyb2xsZXI6OnNpbmdsZXRv
bigpLmN1cnJlbnRUZXN0VVJMKCkpKTsKKyAgICBSZXRhaW5QdHI8TlNVUkw+IGF0dGFjaG1lbnRV
UkwgPSBbTlNVUkwgZmlsZVVSTFdpdGhQYXRoOnRvV1RGU3RyaW5nKHRvV0soZmlsZVBhdGgpKSBy
ZWxhdGl2ZVRvVVJMOihfX2JyaWRnZSBOU1VSTCAqKXRlc3RVUkwuZ2V0KCldOworCisgICAgYXV0
byBmaWxlV3JhcHBlciA9IGFkb3B0TlMoW1tOU0ZpbGVXcmFwcGVyIGFsbG9jXSBpbml0V2l0aFVS
TDphdHRhY2htZW50VVJMLmdldCgpIG9wdGlvbnM6MCBlcnJvcjpuaWxdKTsKKyAgICBbd2ViVmll
dygpIF9pbnNlcnRBdHRhY2htZW50V2l0aEZpbGVXcmFwcGVyOmZpbGVXcmFwcGVyLmdldCgpIGNv
bnRlbnRUeXBlOnRvV1RGU3RyaW5nKHRvV0soY29udGVudFR5cGUpKSBjb21wbGV0aW9uOl4oQk9P
TCBzdWNjZXNzKSB7CisgICAgICAgIGlmICghbV9jb250ZXh0KQorICAgICAgICAgICAgcmV0dXJu
OworICAgICAgICBtX2NvbnRleHQtPmFzeW5jVGFza0NvbXBsZXRlKGNhbGxiYWNrSUQpOworICAg
IH1dOworfQorCiB9IC8vIG5hbWVzcGFjZSBXVFIKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0No
YW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwppbmRleCAzN2RmMGY5YmNjNjExZjQxY2Vl
ODcwMmRkNmQwNmY2YmJiZmRjM2YyLi45ODdjZjI4ZGZkN2M0YTUzZDgxY2UzYTY5ZjZmMDRhYzk0
MWQ3Y2M0IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVz
dHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjcgQEAKKzIwMjAtMDktMDQgIFRpbSBIb3J0b24gIDx0
aW1vdGh5X2hvcnRvbkBhcHBsZS5jb20+CisKKyAgICAgICAgaU9TOiA8YXR0YWNobWVudD4ncyBR
dWlja0xvb2sgdGh1bWJuYWlscyBjYW4gYXBwZWFyIHNxdWlzaGVkCisgICAgICAgIGh0dHBzOi8v
YnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMTYyMDkKKyAgICAgICAgPHJkYXI6Ly9w
cm9ibGVtLzY3ODE3NzA2PgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgor
CisgICAgICAgICogZmFzdC9hdHRhY2htZW50L2F0dGFjaG1lbnQtdGh1bWJuYWlsLXByZXNlcnZl
cy1hc3BlY3QtcmF0aW8tZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBmYXN0L2F0dGFj
aG1lbnQvYXR0YWNobWVudC10aHVtYm5haWwtcHJlc2VydmVzLWFzcGVjdC1yYXRpby5odG1sOiBB
ZGRlZC4KKyAgICAgICAgKiBmYXN0L2F0dGFjaG1lbnQvcmVzb3VyY2VzLzQwMHgyMDAtY2lyY2xl
LnBuZzogQWRkZWQuCisgICAgICAgICogcGxhdGZvcm0vaW9zL2Zhc3QvYXR0YWNobWVudC9hdHRh
Y2htZW50LXRodW1ibmFpbC1wcmVzZXJ2ZXMtYXNwZWN0LXJhdGlvLWV4cGVjdGVkLnR4dDogQWRk
ZWQuCisgICAgICAgICogcmVzb3VyY2VzL3VpLWhlbHBlci5qczoKKyAgICAgICAgKHdpbmRvdy5V
SUhlbHBlci5pbnNlcnRBdHRhY2htZW50Rm9yRmlsZVBhdGgpOgorICAgICAgICBBZGQgYSB0ZXN0
IHRoYXQgZHVtcHMgdGhlIHRodW1ibmFpbCBzaXplIGZvciBhIDQwMHgyMDAgYXR0YWNobWVudC4K
KyAgICAgICAgV2Ugb25seSBydW4gaXQgb24gaU9TLCBiZWNhdXNlIG9uIG1hY09TLCBRdWlja0xv
b2sgYWx3YXlzIHJldHVybnMKKyAgICAgICAgYW4gaW1hZ2Ugb2YgdGhlIHNpemUgd2UgYXNrIGZv
ciAoNDAweDQwMCksIHBhZGRlZCB3aXRoIHdoaXRlc3BhY2UsCisgICAgICAgIHNvIHRoZSBwcm9i
bGVtIGRvZXMgbm90IHJlcHJvZHVjZSBhbmQgdGhlIHRlc3QgZG9lc24ndCB3b3JrIHJpZ2h0IHRo
ZXJlLgorICAgICAgICBPbiBpT1MsIHRoZSByZXN1bHQgdXNlZCB0byBiZSA0MDB4NDAwIGFuZCBu
b3cgaXMgNDAweDIwMC4KKyAgICAgICAgCisgICAgICAgIEkgdHJpZWQgYW5kIGZhaWxlZCB0byBt
YWtlIGEgbW9yZSB1c2VmdWwgdGVzdCAoYSByZWYgdGVzdCwgYWN0dWFsbHkKKyAgICAgICAgdGVz
dGluZyB0aGUgcHJlc2VudGF0aW9uKSBiZWNhdXNlIGl0J3MgcXVpdGUgaGFyZCB0byBtYXRjaCB0
aGUKKyAgICAgICAgbmF0aXZlIDxhdHRhY2htZW50PiBwYWludGluZy4KKwogMjAyMC0wOS0wNCAg
Q2hyaXMgRHVtZXogIDxjZHVtZXpAYXBwbGUuY29tPgogCiAgICAgICAgIFJFR1JFU1NJT04obWFj
T1MgQmlnIFN1cikgaHR0cHM6Ly9tYWdlbnRhLmdpdGh1Yi5pby9sb2ZpLXBsYXllci8gaXMgYnJv
a2VuCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9UZXN0RXhwZWN0YXRpb25zIGIvTGF5b3V0VGVz
dHMvVGVzdEV4cGVjdGF0aW9ucwppbmRleCBmOGYxNDZmZDQ5MDk1M2NlZDY1NGNjM2QxYjNkYTA0
ZDhkODkwYmMzLi44NTc4OTU2ZWUxNGZmMzFkMTY4ODA3MTQ1NjNlNTc1NjNlY2JlNDY0IDEwMDY0
NAotLS0gYS9MYXlvdXRUZXN0cy9UZXN0RXhwZWN0YXRpb25zCisrKyBiL0xheW91dFRlc3RzL1Rl
c3RFeHBlY3RhdGlvbnMKQEAgLTE4Myw2ICsxODMsNyBAQCBmYXN0L2F0dGFjaG1lbnQvYXR0YWNo
bWVudC1zdWJ0aXRsZS1yZXNpemUuaHRtbCBbIFNraXAgXQogZmFzdC9hdHRhY2htZW50L2F0dGFj
aG1lbnQtd3JhcHBpbmctYWN0aW9uLmh0bWwgWyBTa2lwIF0KIGZhc3QvYXR0YWNobWVudC9hdHRh
Y2htZW50LWJvcmRlcmxlc3MuaHRtbCBbIFNraXAgXQogZmFzdC9hdHRhY2htZW50L2F0dGFjaG1l
bnQtZHluYW1pYy10eXBlLmh0bWwgWyBTa2lwIF0KK2Zhc3QvYXR0YWNobWVudC9hdHRhY2htZW50
LXRodW1ibmFpbC1wcmVzZXJ2ZXMtYXNwZWN0LXJhdGlvLmh0bWwgWyBTa2lwIF0KIGVkaXRpbmcv
c2VsZWN0aW9uL2NoYXJhY3Rlci1ncmFudWxhcml0eS1zZWxlY3RlZC1yYW5nZS1hZnRlci1kaXNt
aXNzaW5nLXNlbGVjdGlvbi5odG1sIFsgU2tpcCBdCiBlZGl0aW5nL3NlbGVjdGlvbi9jaGFyYWN0
ZXItZ3JhbnVsYXJpdHktc2VsZWN0LXRleHQtd2l0aC1jbGljay1oYW5kbGVyLmh0bWwgWyBTa2lw
IF0KIGVkaXRpbmcvc2VsZWN0aW9uL2NhcmV0LWFmdGVyLXRhcC1pbi1lZGl0YWJsZS1zZWxlY3Rp
b24uaHRtbCBbIFNraXAgXQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9hdHRhY2htZW50
L2F0dGFjaG1lbnQtdGh1bWJuYWlsLXByZXNlcnZlcy1hc3BlY3QtcmF0aW8tZXhwZWN0ZWQudHh0
IGIvTGF5b3V0VGVzdHMvZmFzdC9hdHRhY2htZW50L2F0dGFjaG1lbnQtdGh1bWJuYWlsLXByZXNl
cnZlcy1hc3BlY3QtcmF0aW8tZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4
IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjhjY2RjNjk0ZTE0ZmQz
ODFkNDg1OWMwYjdjOTZiZjkwNzg2MmY3MzcKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0
cy9mYXN0L2F0dGFjaG1lbnQvYXR0YWNobWVudC10aHVtYm5haWwtcHJlc2VydmVzLWFzcGVjdC1y
YXRpby1leHBlY3RlZC50eHQKQEAgLTAsMCArMSBAQAorQXR0YWNobWVudCBUaHVtYm5haWw6IDQw
MHgyMDAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvYXR0YWNobWVudC9hdHRhY2htZW50
LXRodW1ibmFpbC1wcmVzZXJ2ZXMtYXNwZWN0LXJhdGlvLmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0
L2F0dGFjaG1lbnQvYXR0YWNobWVudC10aHVtYm5haWwtcHJlc2VydmVzLWFzcGVjdC1yYXRpby5o
dG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAuLmEyOTM2NjQ5YzRlZTI3MjhjZWUzMDQ4NjA2MTE2OTc1NDQ4ODJkMDQK
LS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2F0dGFjaG1lbnQvYXR0YWNobWVu
dC10aHVtYm5haWwtcHJlc2VydmVzLWFzcGVjdC1yYXRpby5odG1sCkBAIC0wLDAgKzEsMzggQEAK
KzwhRE9DVFlQRSBodG1sPjwhLS0gd2Via2l0LXRlc3QtcnVubmVyIFsgZW5hYmxlQXR0YWNobWVu
dEVsZW1lbnQ9dHJ1ZSBdIC0tPgorPGh0bWw+Cis8Ym9keSBjb250ZW50ZWRpdGFibGU+Cis8c2Ny
aXB0IHNyYz0iLi4vLi4vcmVzb3VyY2VzL3VpLWhlbHBlci5qcyI+PC9zY3JpcHQ+Cis8c2NyaXB0
PgorYXN5bmMgZnVuY3Rpb24gcnVuVGVzdCgpIHsKKyAgICBhd2FpdCBVSUhlbHBlci5hY3RpdmF0
ZUF0KDEwLCAxMCk7CisgICAgYXdhaXQgVUlIZWxwZXIuaW5zZXJ0QXR0YWNobWVudEZvckZpbGVQ
YXRoKCJyZXNvdXJjZXMvNDAweDIwMC1jaXJjbGUucG5nIiwgImltYWdlL3BuZyIpOworCisgICAg
ZnVuY3Rpb24gYXR0YWNobWVudFRodW1ibmFpbEluZm8oKSB7CisgICAgICAgIHJldHVybiB3aW5k
b3cuaW50ZXJuYWxzLmF0dGFjaG1lbnRUaHVtYm5haWxJbmZvKGRvY3VtZW50LmdldEVsZW1lbnRz
QnlUYWdOYW1lKCJhdHRhY2htZW50IilbMF0pOworICAgIH0KKworICAgIHRyeSB7CisgICAgICAg
IGF0dGFjaG1lbnRUaHVtYm5haWxJbmZvKCk7CisgICAgfSBjYXRjaCAoZSkgeworICAgICAgICBp
ZiAoZS5uYW1lID09ICJJbnZhbGlkQWNjZXNzRXJyb3IiKQorICAgICAgICAgICAgZG9jdW1lbnQu
Ym9keS5pbm5lclRleHQgPSBgQXR0YWNobWVudCB0aHVtYm5haWxzIG5vdCBzdXBwb3J0ZWQuYDsK
KyAgICAgICAgZWxzZQorICAgICAgICAgICAgZG9jdW1lbnQuYm9keS5pbm5lclRleHQgPSBlLm5h
bWU7CisgICAgfQorCisgICAgbGV0IGludGVydmFsSUQgPSBzZXRJbnRlcnZhbChmdW5jdGlvbiAo
KSB7CisgICAgICAgIGxldCBpbmZvID0gYXR0YWNobWVudFRodW1ibmFpbEluZm8oKTsKKyAgICAg
ICAgaWYgKGluZm8ud2lkdGggPT0gMCkKKyAgICAgICAgICAgIHJldHVybjsKKyAgICAgICAgZG9j
dW1lbnQuYm9keS5pbm5lclRleHQgPSBgQXR0YWNobWVudCBUaHVtYm5haWw6ICR7aW5mby53aWR0
aH14JHtpbmZvLmhlaWdodH1gOworICAgICAgICBjbGVhclRpbWVvdXQoaW50ZXJ2YWxJRCk7Cisg
ICAgICAgIHRlc3RSdW5uZXIubm90aWZ5RG9uZSgpOworICAgIH0sIDApOworfQorCit0ZXN0UnVu
bmVyLmR1bXBBc1RleHQoKTsKK3Rlc3RSdW5uZXIud2FpdFVudGlsRG9uZSgpOworYWRkRXZlbnRM
aXN0ZW5lcigibG9hZCIsIHJ1blRlc3QpOworPC9zY3JpcHQ+Cis8L2JvZHk+Cis8L2h0bWw+CmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2F0dGFjaG1lbnQvcmVzb3VyY2VzLzQwMHgyMDAt
Y2lyY2xlLnBuZyBiL0xheW91dFRlc3RzL2Zhc3QvYXR0YWNobWVudC9yZXNvdXJjZXMvNDAweDIw
MC1jaXJjbGUucG5nCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmExMmE2NGUwNDI2OGViOTlhMDUyMDBlYzU1YTExMWI3
Nzg5OTA4OGYKR0lUIGJpbmFyeSBwYXRjaApsaXRlcmFsIDEwMzc0CnpjbVp7SjF6Y1JxbEswSHVG
Mk4tWFpvJUUlbyMyN3M1RDR5P0ZoSDtiY1BCVWpmKW1gRzBLcC0reUF1ZSRDLT5nPgp6LXRLPDs0
WnE+Xj44XmlPY1VnRCFnc1pFe1ZXNShyZjxQYikxJGsqcjVDfEx0djxIdzhmJllFQC1ffTdPYlE+
RWYKekRSbClZRFg2LU9xbV8tRkI/dSVSb35WbllfaX5VUj55QFUwQm5sS3RkcjIyfE5rdG4+QVIr
JDZncWo4eGpCNiZUCnpVUytEVTwjYUBhJUlsXnJKd0E7ZVEpaX0yKDdRfkNoQzArI3sxR0Y4an1t
TmpvcF9SWWt9bVdsOzxfIWlITTsxRgp6MVJCOC1GNXlPK2hDcEBXKmdtM1JTdypUVFNqSntTSUNI
Pik/Qz1jSFl7fUs7PTZScm0mY35EVVY+PERLMk9mSWIKelMrVn03KHB9X1c3ZzVsRmJsNDw8JVJB
TntkUWI9UmppJGFSTlY7SXojaF5fcXszQ1FHdUBnbDNJPEZee3NZTk0jCnpRdjNIbmZRbHA7KG1G
RkojenJ7biNXUFQhZjNZP0dESGtQSDkrbndseGNDZE94R1FgUSpiaGV5Uks8Q1ApN2E+KAp6WG95
KXdVWWpoNXo1IW18VFhDe19qMT08XiVrQ2QwPi15NHk3KShaJHF+eit3XipBPGg/PklRM2ZxcSpG
aT0+Tl8Kej4wIUpHPCFRO3hCck5JUzRyYHtfOHxONEBraCsoNnAqfkZ4Tj9fOElydWxOSFZjd1Bq
Y1l0KEI+NDlAOU5reiNVCnohbWt8bmpKI2xgJFUzYU0wbFJ4VFA/ZDFVXiU7fm16Xmg5QUlZfndS
Smt7e1dtdkBvfW9FQnZEMkpmQHpObCF+Sgp6ZjJxZjI0KE1GODxEZkwheldiIVhwZVBAYmY/QX53
PDdYcj5MK2x3bkttMDlVSD9rezxMK3xyTHdsTTV2cENme0UKemhDMSVedmh7dmNQNzcwSytxKmMh
ODxWeTxnNGgoJkA7Ozw8ODVFb153PGJrNUV3SkNGdGFKRkVnRVJSRHMxdV4yCnpOeHNXSyhOVk93
cVRHPmIhX1JFOXVxTihUYEtKdnRtYDF8MjdkOG1HR01veVFBIWVUNTUtbVFnU3FXSCNNRytLWgp6
RzI4dWcjcF53MkhEMmFzK0duZkc7JmBoOCpjfWtteGUxQnExQ2FIa3VlWXBUTUk8UDIhY2UkV2Fw
YTd0dmAqcWQKeklCSHo0TlRkJnxTWWc1OXFURm09Q1IpZy1JZ2J9SElfflplVnpAajZJSWlrV3R9
c14jbmdRNSMxV1o0VShvdGNSCnphVnFSLUVmYX45cUF3alQtUXxBZTBJQU5IJEY0WUJeRFNQYGJO
I2ZTcSNrdU1XUjVeMCsxbWNkUV92ei1ibEB5Pgp6JmR9TCQoVjlLRjt3c29XU2Z8VXAzcXo4MFo0
fmQhWntBWlEzYylAYE94ZnQ7clE9KUpnMTlQe0Z3dTRCVkdRd1gKemVgTFYzVzZYIWpHeDZQZEk5
cX1KaEQyPnN8TmUoPj14eUY0d243blQybkZiUUBFVjcwKkBJM2RVZyVXfVp5KVVhCnp3VzxvU3Jx
ajgmJnMqUCpAPVgoVmhAU2ZAKj5RTWEzeCNJKHUkc3RLYGdDK2ZuUGNkMmQxIUApPmRhMlVyZz9U
Kgp6OUgzY3QxSnNZOVZwJV9uc15lVWVOcz84UU1XXi1Kb1A2M2BIa3tBJXhoJlJ8SEFGdlJ2fH55
Vj15cktOP3tzbEAKemJfYXshbHh3dU1ITCtwJk5udU1KUlcjKyZmbj8+YnVDRk5gemtDY2kkKEFC
X3k3UFFESl52YUt1I0RidWdXRCNsCnpsUVhlNGdhJlMtPHo3P2VmLW1nQW8kS143Z3dkYkVOa0gq
RmZqT1l5e0Q4c0FBKnpOXk9CMGU1Z2woOWFJO3VgVQp6b2VBNj1kT2dnQGdwRDd4LS0rWGRufUx3
cmYkcyNqNyp0d0ItVTdlME8xPitEOVVTfXZodDRjNGc+b2owZE9nQzYKejhaNkklYD1OKURRSnkz
JlRwaztONkhQeExmdlBrSFY/WmFMPGMzKF9RLShBdncwd1lrNks1ajRNTUNzNWspbzhsCnojPE05
ekBeR0kjSjhvUFJhcikxeHlJUXJfTXEjV3she2JiRFNPJWU0KHJsbWtlKCt3Pnt0Tjt1ISVnO289
Yi07aQp6eD8jZWgkQ0x5Y3RRNjJnKEZ4SHV0PCQ2Uzg9YkE+RWtuQnRkKikweCtMZ0pBOHJBWDRT
eVU4MUpCWTI5Wj8qWVUKekBTZ2h9I2B8RTs0UCNgdEsjdERYUmkjemp6R3N7JGxnUGNub0whaCps
d0hJUCR2O3N9IWxaTFckQ0d2dXVGWCg2CnpLSnYjbUJzOWJ9TTAqOSFEZiZxc1FwVT1NKDgkRyFG
XjJSfFpeY0lfOTRQcThfYmNjczlPWXdLVXtuKiZDejhwawp6KGtjeUgzfGVrM1pKS1lFWnRpVHBq
dihrd1RVUUdJakxnOHJGd0Q1WDdAMDdmO0d4Sy1vbz1pMnRCNmokcnVkP0cKellzejRzYztBMmo2
JFM8ZDhVe3RBR2xeTHdSaXNQZzFJWjUwYX5yPz55JnEoNiRiTCR2MT1mRzZrTXtgbDIpIztECnpF
bjReeXZ8RG9OY2d5TCteTUxuMmAyWkkqPXcjKFk0Q3luSk1hWVlDUENRZUwmJFRIWm9YSUhERlYt
KmdSPT1wVwp6Tit5c1FtaT9JNUpESFpKe249Z2JBVzB7aF9vWil3JDB2YGtTREhzbEtNOEF2K35m
cyQxd1JXeUdDdjN8eFQpPzUKem8wPSZyKFM7Nkx2emo8cVhQTVI/O0pWd3BII1hAdjYqVCN9empB
Qi08I3hJRkVBRiFKS3pvO2JgdDQtQHJUdH4mCnp0LSRUQEZSYX5fc1ZEQzU3RFQ9JlBJR2FsYj1f
WXZlSTN+c3AjJFA/KVhnZiNSem9gSnJJSmpHUDN6WWJ5TTRObQp6V0UqMEcjYCpKWFdZYSY1NjFp
aXtre3xQQmhfelYhaE9LITxZTTNLIUBOY0J7RXFxRmteaUBfPz1+QnQzSjVXKGcKemJ4WWsoTUAr
UiF7bUxPP18weSkwODskKjBkTzMlWCEmUDhHemdkbG8tZDVSVW5TLW5PMSt3ZGg4PVZWK2lgUXRj
CnpLMXpTUUEtSD8tVHUrbXdtNClsWXRSQW52JEUjSFIkaHRJM1pGQmU4R194YW5tZz84bXstZHw4
az54N1lCVUlAPQp6PjZvd0pVVlhMeVkjKHsjRlZ0anx2IXZDYClPPkl5P2R5MUZjTmNsM09RdyM1
ZyVtNkdxMSNlIVlKNWBUdXdsSCkKejlve3J9NDAkbEAzKG1LVUg+ITM7a1JwO0l4elhFRWpuUndE
Z0d9U2RUOVE7am0jcU87Pmg9YiZoUnBeJCZxaDgpCno+IX1vdDNwdClCcE47KzFBPHVIQik/LTt1
R31yV2xuYm9WR09YRWhuWkcjVz5OUiNHZXtaIUYoKFBMUyF2cEJ+TAp6IyNHc3VFNFY4WkRfJCko
RW10aW93VHw2a2B2di1NLTskbCg+PmxpO3BaSW9NdEJLTEsrcUV5ZkJoUnkhTHo4bykKemM8NVFf
JUhDPDhaZjZPPWswR2R9JjArWj05N0N2d3xDQGgrUXkjbVBkUkpmfUUzPGRHYHlLdXY/aDc8Z3kh
KSg7Cno7bldjVW9XS3ZrcCRXbVkhVFo1PEFyOHA/THs+T1MjNSZKciRkN1NFeCRkUm1EWEJRa0VQ
R2hLcTlsKSVaK2s/YQp6ayNQQmItOysxNkBZQFUtPS0wczFzNG5pUytNVk10Kk50d2F1cVM1O3t+
OFZFU1dLRGJ6JXNLcEZZMD5+ak4paFkKekZ6anV4Y0Z0UzM+ZHBMVS1LUTQ1TGpKQGAkIzNmMilo
Z1hBRW8xZ0YmVDY3M2U/Unx2a2FEbXpabE4hbE93OU1iCnowNTE+RVN5NzZLayUhUzsmVVAmTDJn
K09lVEQ4aipKPmohJG5neFlQZFpRRk9aVU83X2FtS1dsVU4xMlZhVkZ2Pgp6SiZKeXZuUiNpcVdW
dCFgU28taX5jTl9QPVhHRiM9ISpOND5fKXI9PSMmeXI3VzllcGJZeUVaZjVEeV9ATlpRQ08KeiR9
OHgleU4+a0NjRz5raiRHbExAb29rJXkpbUVKQXF6amdrOF9qJiZxPDVrQjxiXj4mKVAkTU1nNFJt
TythaXgpCnpEb2Rmd0Z1JUFLTkBLI3VETCY+eUpUWnBuYDAjakljeiE4SysoKVohTXwqTDVCVjEl
d0ZIK0IxKnZuM2ZRaHpIeQp6ZWxPSkR1R3Q+KDtaN0l2SnNgN0N6MER8V09tWmIwd1AhPFJgXmdo
NiRtWUIzY3d3fCVrQGhxanhRUCZucmIwbCMKejsmKDNmODtocytsYlFabXh5LXdkeWxqMWg5fF55
YGFERysmWlpIe0ZWejVeO2Q3XnJ2dD5DX1pASUJjdF5QQXwwCnpWYX13dzd1U1l1SFZEb2lFUDYq
MFZhJVQ4NlIpKSFfNlBUP04pS2kjWEE7VjgtWDB+PzVlX1g1XkgkYDJlT2RPRgp6SWh4NSkmI35A
Wj9gPDFLRShSWXtBb0c8cmk3c28yVSVOKS0qP3dWO04/cDFOWj9lTjx0eFVfLSl5ISRSeUVkPTMK
ejx3RHAzWVE0eHBSXygqMCtPbkFUM0h3aXRyaX1+TCFPP21uPVZuITFVdjFxSi1zUlI3I0J6LSh4
OHV9P291VEVKCnpSKlg4O3g+d2hHQyhLSiZTSWslS3pYZ3RWKHZoZ0p4WENYP18zbDNZVm9NQjcz
MDImV1goRCFDYGp2WklBQ2VGPAp6KGB9QikkOCpjYHtDNF9nSGRGMzx2PS1VNFB9NG9wdWVtUHNo
a21yXj54YEpKVUJPaUViQWAhLUxmQGprPzUxfTwKemkrZjMydkRUeTY3KCV9TFdPc3thN21xdjlo
TnJEZ3pqTHA5WjxWcj1fdFFrdXVwWU0wN0NzWTxCe2REZFBBMntPCnordDl8MmU5N21+YzZCO19S
YFAzUj51QnF7Sj14MzFuZT1jeiRDV2clKHhkdVNrTihVSXBeNmlOI2lMZVR3YGB+Twp6UDFzQ09i
IVo8fT5BUD1Gez5KSW4zKiZOPihQPFJAVnJ8I0tQbiVtV1p6a0tXSzgpPi00UH5XXlIyKH1VQGxP
IVgKemN5SUx2NkNTWUB1PXpHZUpwRmpnSjVPOUhIR1Z8RHQhZWMyXlNwYUlmQUdrc3ZfakloYmQh
OCV0UmhrK2cwLV5NCnpjSG5QKC1nKDtuSEZ9dzEld09eR3ZjPVBZcU5MKSE9MyVGZ0UhT3o+ZGd0
bXwkKHdWenFYTDlUbmlkUTBOWTZZSwp6cWVLQUYzNGhhfEZDR25xM29JVjNmSjQ1Z0ZCND9MNDVK
NnRSbGE9ZWI1I1haUXQrbHo0UGN5QDJaSDMwQTtzd24Kej5NdVZFY2FMY0lfNztOIUVTNldFPSYo
U2pjSyZNKjUzTi1YNTgyRzdtOXQ+fW5hX2VqT2RwV1AmfGR7Nj8xc1F7CnprcDFZdFQ8cX0peWp5
e0BnZzspcmRvKUgwaSV5e282cy1lbGswZVZ5MXVHUjU1RUladzF8ZmlQTDJ5Nnw0RSV3Pgp6QnBg
JnArOH5mM25EcE9tTykkZWhHIVBJZClDTDZxNH4rcnZ7UFghISo4dTIkb15Xdj9BU0I9bzd4KUl9
Sz5rR3kKemo+Jj1oUn5zfHtqRGFMeE4rfkQrJnpJJmRtWDsyI1p5ZXBxLUc2aWY5Vmt4bmBtUGBs
MHF2aEpTVjVFSzZhPDJ9CnoraTI7ej44VTZTbm1nTEZucCF4VFMrYVdCSk5AQVU2N35gVm4pYTQl
cmNmXz9JfG8tbUZBPUswQzxLQV9wS2RsUAp6PXdCcG1aJCtyfFJNZXFUanhMcl5VUkhLaWJ9Q1Ur
Qz1ARX1WcXFueURKfWFDOUMjQzxkZ0pFaUIqQDAqPkZMU3AKeiQ7SW1FViRIQE9BUnhmVCZkSjhm
JHBUUVl4T3pMZG5SPkF9eEtqVms8WD9RR0VuVXJCWUBGT3w5Mzd5NF8/bnRJCnp5MVIpYFFULUEw
QDZYQCF3RGh3MWswYn16ZjBoTC1rblBWMTh3Vj5wK3k0Yn52JDZYQiEyWFE8NGZ8X2RlflQwVAp6
ISVSQHkpelVARShjYSREIUE8bCg4VztYYygqR0Z6JnBpSklzQHImMytVWk4lMDd6RzBPYEBEVWVC
QSVRe2BiKVQKejNEeEAjbHVMbH5lP2I0KygwX3llUyVqZFBpdyFWUyg/NDFpPHEmNTNmQk9ENnl7
NHRCcW4tTzdhJX40MkgmTT1pCnpBcGZpVEFDeGZMQUgpMU5MO2RYcWZBcz14QWNgdT9fSFVPR01l
U3Z+cCQzNzdhdWxRYHc3a0dhblB8MEkpODc1PAp6dUFfI30mdkNiNmsjbjhjdTxebSpBVi1iTGt7
UjZ8SWJ7UDE9QVQ7NFh8O3A0bGxlQnkpakJtZ3hlN0BmclE9ZyYKemI2K0BZRFEkOWpjeWg7UWkx
MFBRUWgzS1FAT1RvXiVoQUslMSh4bSVwST52aHJ1d0cjLSZ7U34meSkkZFpoc2U4Cnp4eFVMQDZU
OTtjYmwmS3JtNHQhZHAmJjV3V3NMYWZAeWYpK00wYSRSJnxme2ptMjt9OUckZ2FaRkBMe2JXYFBo
Vgp6ZF9EWWRBPW0pe3YrKFRMNjxoUykkbEBTS0R9NGEkR0spTXI3fnIoWjE0aSQ4ZCF6NmlBUUNA
OEZAZCZQX3RSNFgKentKbTVfYUF5WVo7ejl3VUFIRVBHYElHckdnK0opbSYqYlRHZU4rTkFUUGY5
SlRJYGYoMkpaJWlfUk8yQDU9OTFDCno9YyRuPm5rUSQ0N1YycjZZMXlBezVnIVVGWURJNEFkPnlg
QmIxZmhac1QxUlRRbHlYeWluVmdWWnkjPUhFRVpQNwp6Z0ZDeTJJQmA0fVJVNklGbVJiYUhNQVl7
aVR6SG4tRGI2VV9KXnJkYVJQLVJiQUR8Pzc5OF4jWkxGZ1lpXiQrMnMKekJGWXBNcXZMO2xPVnM+
WHluX30oNnNCYkJsbEhNKHFVPSskZkBgJiZQTEktTnJiUGtHd3l9dWZAfDRUNmwxQD9kCnopbE1g
YCsodXlkMWZIcllNU3VFXmZIQC1gQCo2dHJ4bjRZZEdeTHYwJEtFencxNTUzRFN6RHIhR2ZuLT43
cy1KKQp6TUozIXM3ZXU2NFA/YiYjVmhZdCpeQn1zKFEreWptbjRTb3wkIXUzSDtgKXRENHoyJmZg
IW1gNWghISQybWZgZ2UKelctOExJUmNDQ2BndV5jU0ZFa3JneEU7dFQ8R1o7bVdabH1oNSN1TT8y
dUUma25rZkt0aGBIJmM3VEFYdnF9TDhtCnpuVWhyWGoxNjVgbG54MEdxNDwwfE9oe2Z3KmZXMl9a
ZkYmfUdrQUc9VWtoQWdqTVpTbD9ASSpHbUhEWGVXR3Z5JQp6VyFQflNvKyVxRj13K0FmY15KPkcp
SVFNRj51floyemR7XjwmUTgqYiQtdnReQlM2ZlJYUD1jYSR9RWRQX3o9MnYKemVXdjdvMDYpZ0dG
O0w1XmhHamk/eEk1JmdyS19fKyF9PWNpMmh3YDxPek5uYzwkMDVeekwpZyFDKnUqZmo5PSlaCnpT
S3hVJSkmKFNQVEgjNWUhRCtLbCNGdFFZSE9NN3dEISMzTXJ+Wk18Ri1gUmhwXnNtT1pkak9aeWtf
YzFJN3hUbwp6TnJAdTlFMHdkS1hmVllAYXR5Tzs4TV8hOGpHaXdFNjtTcXVGTFEyci1YMjVKcE8p
WClmPm91ZjBqY09gQlN+VCMKejNVPk5waDswLWZ3YW5CK08taVdfU1hEbDshKTVMKHtOZHMwJX1z
TiR2enZeby1tOWVraWQ0JFppaH1Me3dyR2JXCno+TEFsbGNWU1U8bTwhOyNUWEFPWHViKStOXj0y
fiZHZCNXZVpDUjBveVowK3g8WmQ8WXc+T3VyUmplT1hsZz87Mwp6RTd2Nk1qZ1BNZiU5T0N0KlVC
e04+eiZ+R01xQjZtUzJyP2kmKiRVcCZnc3R0dCR4fWohVGY0WlBwV15vKXNLeFYKek4hSTkpKlBY
NlM1cnR0ZiV+SHhXdU9FJH1pZGs0X2xnfS1Ae1EwWmwoZnZnQ2A7VjIyJjUyIUVWbSRRbm1veW5P
CnptVmozZEA2UzszMmBUUkdicVV8TnVON0lYK08lUWZJMU9GRjZaRSFvVC1kJSY3PFQwd0VMa0g8
bERFTU0tM2JMawp6UFFXZ2gldFE9a0tOeHkwelA3THooUXg8ZT9BcyYhQXR4aSYpPTJ7WG5yMClY
WEtDWCVsO05SU1Z8K2ZVNClNaHcKelJtYntzbVF4ZkFpPndRQUJrc3szS29RUj4+dGNDKWxaU3Ni
d2tKbTtfN2twem10KmdPITQ4PS1hQyhQNzY5ZXE0Cnp0RXRQNU44ZSp5Pl8qVkx6QjxJSEtjMmd6
XmA/Qn04U2JARUNIRHR3ej5PRV9UVHcwQiVJWkFpcE9VQVFhcHVXOwp6IXshUCRERil2Z3IqK2Yx
WGRrbncjT3Brcml3P1pULWp4UXk/WkYycFp7ZlYqSU03ezZlaj0hZ0koTT5rVlFaRnQKentNa0M8
VnQhbzgkdz9HSE5RQTwpMFJOX0lzOXJTbik5QzJZQDNyT2tKO0l6TnMkK3JHRGg0WW5jYjU4el9u
KW1QCnpFRjYpRUFWa1E/NjRBKVE2az1JMyFiR19YKU9NLU0tYkhyRiZEWlooU3xgbTU7YjxHYTw4
Kzh+KGt0LTdSbzR2Sgp6VGkqIVJCcWpRKkkpNC18LTZPbmxlbC00JGVwUiVuX3tye3pWdHtET212
IzR6UmdlN1h2MilNaWk/ZlBGYExHdWUKenhScnVXLTB3cn1xVSM1fCRNSSNaT3t3OTNLSTsod0ls
MWFoMj1UcmN6SiVSLV9PTVJMb2R0RXxlZWt0UndAWHNgCnpqPmBiTWslTmdkTGJ5IzZzayVMQ3Vv
WCVkPERVZSMqVmdKem1EaEk4RF5wdWxUPzwwanVjNE9jYEFDKDFLY3spRQp6N3FpPGwxKWh0QkZF
aUA7cUFtMysrWHE4bm4oKnV+bmlqJiM0KTVKWmhvOGlnKHU5eVNAOTlvU1VwfWo8ISRGMFEKejBH
MVleYXBzcCFadlJYMks2blJEez1GRT9uQmQoRHcpREc/PmQrc2xLd2VKYCtve05BN1BkKzxkcTNj
Y24hbDNUCnpBJDQ9WXBfYjJ1X25JcDw9SXRzSkhvTHlGeCUxKEBQeUBed2RycSQ3RGpjdihWUVNT
UXFCN0plMEteam0kOGk3Nwp6RVpPYGlvY1FaLUY9PX42Jn5mIypjI1FZOCo5WDwyYGpibHpFanV7
Qyk8OWpRUkx+P2EmdjE/MyMpeG5YKWtEUXUKenhXPWcqJlJSQD0zVGVFIWJ4MDhwcG5JYFcwaF5v
YWQkP0oha2dGYz8jTT9CYzEyPT42JFA0N2A+eSU5fVBoPkhBCnpPcjNgbmomd2dEWkw7Vz91Xnsy
ISlsIT9CSTVobkR7X09NYktsX1p7NldfWWJ4dDN7R0tmTF5kNll8YHpAZmxpMgp6aWMha25XaUNK
enhxeTkxQUNvcld5ZW0oYW1mdk5KTnAhZkNkQEVHQ2AhKyRiZWwjNWJeSjRJUykhdShwRWklN3YK
emRYO2FlMFAmRVhAcH1vZFJzZE01ZGtSaFpTKVRpMWFuV3p0VnBtPmN1WmREa0woP0QzJjdrd00j
a258Yj4xRFlxCnpkQVpVOERZVTE/SEA/Ynw5JSRecylCc2JPMjY3TDk3NC1Kbm5nflloVmo3ckhi
eEApJkdtNiQ9NisxU3FxJkFndQp6R3hXS1gyZVUrK0lVZTxDb1h0P0tPKVV8ej1RbVU2dkYhcTdQ
M0hEPCpYVDVEWjIoRksxRzFPaWN1cmFYbXhtb1gKempkYEZKYjRMSGdIT0t4SjExRXVGRnZSMF5u
OStGWkl1Zjk1eEorSTg7VnNYX20yUzkjbiVNUUg2cGVRdFN2YkFeCnpmRCQlSDdCRjNCU1g+TUBL
TlduRl5CODE5NiZ1cGkzVncrSnEpREQpdEtBZmprPSF+M3I0VEFBSlBQREYte0NUfAp6TlM+WDdL
NT8/N3hmIyhjcnUoOTk7eThtT2xvdCViYWEqVGg8cSpJSFFOX1JTUXpyRntlS2hoKGhyb1FXXiQ2
T1AKemtHPyUkZWUwISlvKno+QSl8Kk1sI3p8c3IlXilrelJVIXVzWSlmZXIhKFJ1NmI1PE07OGhy
N1FGdjYlRmFBcUd8CnpKKDghPE1Ubj1uaH03eiRIY2JGYjMmKWBxYjRsa2U9YmBjU3l9KmVDI0Qx
M1FJenZGZHJgKHotPzNHWDlKYUBtKwp6PUZ6NEs1KklhWEI+ZH5oPl9uX01jTT5XM1o3Sip5YVpJ
ck0jKTRZa3JUPzMkaz9FOExTLTRTODkrOFRSRV4pSD4KejY7fDRER0IpPVklb0YzUDlqdSEreGB6
Yn5HOVdsLUNBQkpKRW1aaHdTdHkmWXJTdHRsKiN7Wm5QezgmQSReclZmCno0ZmFmNHdEMEpZQ34/
cj5GfG9aR0pFR0khKnZZJkRWZjxBMkQlfkRnanRhYTIyezxKVShqQ2pwbj9haSokKHJZKQp6Z3k9
bj1sfXNve2JUTGN6dGU4RilRd3FfKEt3SjtZQElhVTx1LWR9fkxAOVMlam42a3k7XylHeUtwbDEm
SmVFcHoKejx+UVZkXlZnVlFreWZJfXRfaDE4Z21CSyVPMHZjUlJRWDZZS1Q/bVEyOGhEbzM+Pyh6
Knt7Mzc8bypoIyZnV3ohCnpkUW9BS0ZuKnxvWWpweCFLQWhsZlR2d0R1eThpQTNpfThmSnBjO0Ep
KmdKaXI3dD14bFJUUVVFWUx4TDcqeUxfYAp6NjdXJXNXc3hpe25Hbjl9XktKSHRDbWJ7WTBlVjd6
IVphM20+UURVeHgxQU1YQEdoeXxefk1aM0x+Q0RvXzFSRUQKenRveiRWKGhNRVRKR3Y5fjg2Y3VL
YmJsbjM4QWBuR0hrTWUpXmZ9fGU/IzJCeysmWTNuejhnViVEZD1XOWNEdk90CnpqYCNLclZkMzQ2
T1BEJHxDJHs2JjhIRjtOZH0tZzBhQm03UXk3WENySUJCKW44Uz5JMVd4bjxke2FlYjxESW1tTAp6
eV9Wfm5iNEghJEExdHV6Y3Umd2plSGVaPmMlXmM/TnViJXY7e3k8IU1qM14lWHp4MFhrRGBmR0g2
bV5WdXF3c2cKejh0VGU3VTdBZUtPKH4hcShLJkRvVEI0b2VUMD9aekVIfjtOPjRTUUlqJXBebDht
b3ZlZWVpcTQ2S3VjMUZ4Pzc8CnphNkVoPTk8c01IN0JCQnFnbXI7Xk5QfFlfUE1yQHFQeHQ0PVlV
NjdOeEIxPlFDWTs2PkBAfFNtUkpsMUxXSU9FYgp6S3NRKmYxc3Iwb2JuJlJFZ0ElWGphP2V9alZ3
JWQjeEIzTVJ5bD5FQE9XZXV9KEp+PW1MZ2QzVzEwN34rIzlTQEcKemcmVFFUMDI9JWlqcDQ5P0ow
UEN2VFJLfiY8YCF9QDdmaHRPPTdSMXVHaTNtYjBxMldyaXI9MiN2JFotTSRXJm4rCnpsTj8ydSFQ
ZjdJbEVrUEVBc2lEKUo5PW91WXQ2cj5YdjYyQTdQT093Oz4yPkdqUm1Kc29OMDZtaSlCWHJLKXNt
QAp6VSN2cGRuYDtLaGxgTT5zczMqQklkQn0tVV85e3BRKVQ9OW1FP3dYZUsyKGZDMF9qQ1FIN19R
QEN0cU80Q0txJU0KenRCJEBySTg3dE97LUs7eGFYQ3hZSGR8IzVNY3UtcCFFU1Q9bzkoU0JSSHBJ
R1RvfispZFdybGVmNEZ5Yl8/PXlKCnpBSy01aDxycUd0I2pwVDItRTs0Izs0U0ZGQGdNfXwtd2Y1
TDBtRXJmWXhqJWFPdF4xJEdQbEF2Qj5sMXRnKXZNPQp6KFleU2FpYiRUMiMrS0l2WU1afUwjOS1W
TUJAOWVjVDxyRUBEZ3EhJjFUQGI/WDZpfVZRTVpUP29geWpiTXA3YigKekQ5QkU8PW5QaUAlfU1B
MDBzM1ZrJiNTQ088cjV8PDtCaXxJNWw0YmgyYWMxIXpMM05NK2RfUzZfcCRlbypPWD8jCnokWlMp
JXROayRzZCZSSWZpQlc4c0kkTDRRQX40WWp4aFY5SXh8SlNSOFRldXQxOCU4KnV+Y0IqaHpuZz1f
O2VQXgp6KmV7JCl2RWFpQVZaMlA+dSR8ZGRWQkVDVSQpVDc+Wi0tb3FsUzVhMnJgUkVtY2ZnbDFE
JVpQQCg/bHpkKWJ6SisKenR7fV5ye3BHPWNMYXlCYnYoNWtwZGh6Xm81cXZ8NHlEPjZSbkF0LVZO
KmBsWCkoP01yWT16TSZAdSorcUxIcVlXCnoyJVhSR0tkcVYrdWNJUmBTd3MzbURZJH5YP3J1TWNg
eVRAc2wldiFCTFgreWgkMko7MHJpWV9wNDlRTUB7NChCJQp6ITYoZUghV2FzJXBMUEE+M0NzZih7
OTZ6b2xEMTZQSjQ1I0kkLV5aRFFhRnZUVE48NzZSYW1JLSsmRGx2TFIwQE4KekdkQ1VaaGdhPn5L
REx5WVZZflhNaEJYZXpRODR9LVlXdTt6LWM+R18xVX5hNHRfT1UmUGplTlFqQEh+fGdSfGd2CnpQ
MDNJdmdMNCt8PitJQ3Y8bUs7I0RhJl52TEZod14oKG1NQE1mM09scUtMdyVhbVRfJkohemd6SUF3
eG56WCtrNAp6TCE7Z1pAQ1hsb3ZheFpaQSlSbmE/RCUyUTBGKkxARHIzenA/QVVUTkN2MCQqbio1
V29jSmtmWWtqZF9nM0UlbUsKenZ9e0xqUXojfipEME0jWkZyYDRJdlNrUGRjN3phTTNENFN1QEhJ
d0djQXxCNCs1Qn19NylLfWtAell2ZDRqcXRuCnpESjcxK0ZXYW1NVXxMRXV2RXVNMiFrKTdacmZ2
aGRudk4wM2xfPmwyZzBhTilMT2o5P2ZHbCR7RnVIe3Bpcml4cQp6RHY1c25DPVFFfXFXUEIrVnl1
YD4pJmduUDVEPzx9b1RiU0w0a3Z4biYjRSRjSVdBY0orakdTY01yPmFjVjg9dloKelB2Z3JiJTN7
aDN0VigrY14kMTB0T1dtT2s7YGslPzRvRjlMM2pDTHxrTCYzd0VJcEptP25OI1ZaanMwRVZRbi0o
Cno0TVJoKzxmeDF9I3g2eEN4MkdEb0pOPUJHQmc1M1RkdCspeDBANGRXZG1EPmFOWWFrVz1mfTE4
RlFES2hffSVFcQp6QHxEbEl7bzxIMUBASUZHVTlPRjxLQVN6JWhLZXBQVWZnQD5nd0w+PWU+KmRX
RjBHRzA2bFVzcXk+dDY7T2NWQisKejF0dmg1MmNDfTV3T1M+VFB0Qj00PUg8R2w9N01iTm05SVZm
clV8SigyQDxrbyFtbUl3SEhWND42Z2NhP0xRNzM9CnptTkRQJERON0kheHtPdG0mRV8lKCF4YSE/
ZG8lKCZ5Xjh8bGFzP3k1e3ZxZDJKbWpnczBQK0BSeDZAZElqMG8yJAp6OzRyQ2E0WXFaXlJtdmtS
JFJeViRvcGdTI2hKdWJKc0BSP2BfdFBBajYoKyghIzYmM2JlcHtoRlUhTSkpbiVCLUEKelM/SXMt
P2xieno5TUVKV1oxJSM8VEFGYjE0VzBZK09Hd2R9MnY4XzQjI15PTDNkOS04MFIoYy1Sb2tvTShS
UXtTCnozUzF7YDUpYX1IalZIeEBeeGE8aXRCJmQpJGIjVFhOTjthNWVtOXVwWDVicWNYMi1rZ1Nm
ZCE/OFBVcmpjNHYlNAp6X2UyMVBAKDVSRnA5OSkpajYlbEpAald0eXVPOUhLbX0obngzUCg9WGBe
clN9Z2AzNEg/RGc+JU9eZUFZY35WYjUKekdoJUFebH4jKlFeOEp7dTV6PUhid0h4a3cqa2dgd2Aw
dWB3Sjl4VnZVeU4/Y25OOEUxKDNpWVV6N3g5T3ZNfjlqCnopPD9fPG9FUWY0VSh9KTQrSWw1cip2
TUxHSyExPXoyPDcrJmZFdzBPYmpYP3YkbnBHQzdMSm4qRkslQzR6dWpkSwp6anV6dSUld1hKK1BX
RGpfbTt3QEwmJjdlc2B9Z3czd15HOUd4ST0zMS0+XyVBaSN+VDJYcilKN3VXaXwpPHJDKFkKejZe
Kn5rejJXS0hRaCgwens8YGA/IzlfZEhgYjdsU2ZIQVZneTh6SVdJaHB2e2ItYVFWMTZ9Rld0dj8x
Q2xrYjkhCnohXnA7NSZZcFZuY15mP3RLV2YzT15kcG5xVm83THVWK2wzUGNWNjxWbGExfVhOe0pj
a3JyWV8zNXI5MS1KezJ3Twp6TllBRHluNyZgUHh5bTwrPS0zKGBhZnhWQDtZNUhPMFh9K1ViMUl5
UD9jc2c3VjsxXmI2S2FDO28jWG8ycXo4WGkKemteP1hwMlVDX35QM0IlVVp8NDU5RjI8flFzSzJr
JENSIXJ+aCowd0gmfW5sVlJSfiY0eGtLWDh1eG1NQ1hjPjloCnpKYXVifm1gLW48WnFNbDloO2Q9
P1ppPnolYnk0YyhELVFRNmUoTFdRYUIwPE5WQFZrM0syJkhsMVZsOUUzb25oTwp6NFg4QX09T3Io
O19FcWQ/dWVGd1EtNkUrYENEfnJmejdpU1hwUGpfMlk8fn1MPVFAK1V7aXVWODdjJGBicTVtRmsK
elJpcDIhUDw9LT4qKmsldzxUKWw3ZWJaXnpgKk9iSCk3V2kzYVZDI20kazRgekpDVUtxWGY1aFZF
ejR4Zj9CYGlLCnphJE9lc0lEaytZX0ZIR3t3XlhqVnJJc2VfKCVXMF9wO2IzPjw3enE0bXBva0cr
bz5xZmlWb0M1Jn18Z35rN1JWPAp6UX1yPFRqWTZENE5gPHhFJmZJTDdPc2UzVykqR3swP0I8UUBU
V1hGOUAxcSE/ZFlPZjV7Kih9NEJ5e2kqVmBYRWUKekEpKjU1KXk4a2w/I3dgTTI3Oz41JipvNWYw
YFpIekJPP3M0NiheelZaWExTWk9hPm9reDdJfkYqOyRNUCVBczhQCnojVFBnXkQ5bFE+NDQtPFZl
bCRfdFcmbndHYkx+RX1Qfm1NKypOYn07WitSeS1BSlUmeW8jQnIoRHV2b1dWV05kbQp6Wmo2K0xv
NWgkJStCZkpBKUxiZVBocX52QSlnbH1qbChYQjl2V097RlpnfExBZmdseVYjR0M7Uk9eOTROVTN0
NTAKejE1Mml5aUpZQkF3TTU0WkU/Yy1tIXIxbUIlRWRxayY4Vn5sTWhgSiNPPkVmMSpwUkFoST5E
JTc9PFFicDlTZHI5Cnp3WSpDNUVteElpY3w0d3xASnY5VlI+R3xqbTVme0lTJC0ka3tjWT5SWjxM
I3BgfVpsR1o5PnFPUVZeKmkpNGw7bQp6ZkBVYUhUXztLNF5gUkN+bjA0U1JyOypVbG9sbUVkc2Yk
aF8hVWhleDFidTRMPWE7WHVoRFJCKUByX3NzckwqSGkKenc7IzhGOE9IO2p0SXxYIUx+Q09HKSVk
TUxzMzJGUGAxYTA4b2NyS0hPYkc8bT1NLW0xeWhIX0xYPkVTTiZ8cTwwCnp6QClsI2J8dHRsPVN+
SHleRUw4OXk3TzlMcVpFNDVjejEyVmM7aXJWYV8lJmVlallQPSZrNGg9PGZ+dCExYUt3YQp6QVgl
QVdhVHlzXyQxY31yUFczR1dWKVNVSihGNEFOd3FwIWhiVzJzOEM/KEZ5PXRaVnZpNHNFXktKdmlE
MXxfPmsKejF2PVFiQkhVKUphYSl2blhXLXhyP2M4RmBSNm81fFlrTV97IXFVdTN2OGxNQWR8WUcw
JD8pKH5RN0Z2OTVJV21rCnpeOTI0R0RfTVdESFMjO0xSPEBjYGY3fEQwPnlWPStLTm45Rk1gIVNC
fDEyenRvQ3pRYEQ/WiF1WU5heFg+PjFVcwp6alB7Snp0eyU5SWUtVitMU1V5PHpudFV0fll5TVpD
RCNuPUYkKXZMdWAkU154S3NPR2d2JXpeSUV7UHh3bFdjc2wKemchfU04UjtUQ1ZtWmRxSigjQjR+
XiE+JFdHU2VofVZPbHtzRTI1M2NJKmhhdUtYb0pIc0wwNjNMYi1TZD49U09+CnpnfWp8X3laPlNB
RTZaPldvVlJxcVpLdUxfdkUrISVjSVFDLSh4SjR6QFVAY2RrTXBhVktBWTxkS3ZMNSVIQnVfQQp6
eGEzbjJzRzAxP29LSClXY2RoUVpIPTtVLXVpS3hmdEJjVSspVSFiPzh1KUVle1J2R0NIPVA7Kmtf
Sj5vWDtWfSkKekt4bkFVZTA+eT44TzZLazdDRUJWdU5xVTxxNHtYfXZZSWtKVSh9NTVIX3IhcHJG
ZjF7dktPOEs9dENBNkBDZzZECnokTlA+O1dhbHN9RDNXMyttfVh0VDtoO0VeOWAqYTFNTm1tPHQ7
bGpMUCtOU3JIQyhXYj5qdXRTPXZjQ1kkaXl0dgp6LTtNN1VSaitFQ0hLRDd4el9lKzMyNUQoYzxl
MmVFdDFReW5jIXtYMTNnYnU9dEVWcl40OzQ9aStVVnl+TVpaLXsKeiUybUkqSXpGZzlHMXAxbENu
YnlKPChSamt5VzF0S2VXKThsTFhhYmdmNVYwTG1ncXJ3REcmbXQwOUdZaHRRXkclCnpVYnk3cHQm
RHkpTTVQKHlDa1BvKl5+bmVCI2ZeWihZTHJAdTBBVTAtQUVGe2F1bytZV2dtOUNyeGBuVTx7QGtI
cwp6MEVZKXN7dVR1QXBHKSl0ZlZnMSg2IVdpKGRwOVktJmshKmtCfHZ7SjtjV29GdyY4N29gLV5T
fnNFQ19qLUxMKikKenBgSGRyTkUqZm9mQ3VSSzszdXtnbzR2RVl7ck5Raj0jb0xYN3JWVjxWcmdw
Pl4heExabjFZT3xeakFyZiEyYmZFCkNgXmlpSQoKbGl0ZXJhbCAwCkhjbVY/ZDAwMDAxCgpkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vaW9zL1Rlc3RFeHBlY3RhdGlvbnMgYi9MYXlv
dXRUZXN0cy9wbGF0Zm9ybS9pb3MvVGVzdEV4cGVjdGF0aW9ucwppbmRleCAzY2Q0YjI4Mzc2NjM3
MGUzYWI4NWJlNTM3MTdiNGJmZTFmNDA1NzFjLi5iODdkOWUyYzIyODRmMWJkZmU3MjA0YzkxZDUx
NTQ5NzQxYmVhYjYzIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9pb3MvVGVzdEV4
cGVjdGF0aW9ucworKysgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9pb3MvVGVzdEV4cGVjdGF0aW9u
cwpAQCAtMjUyMyw2ICsyNTIzLDcgQEAgaW1wb3J0ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9k
b20vZXZlbnRzL3Njcm9sbGluZyBbIFBhc3MgXQogZmFzdC9hdHRhY2htZW50L2F0dGFjaG1lbnQt
d3JhcHBpbmctYWN0aW9uLmh0bWwgWyBQYXNzIF0KIGZhc3QvYXR0YWNobWVudC9hdHRhY2htZW50
LWJvcmRlcmxlc3MuaHRtbCBbIFBhc3MgXQogZmFzdC9hdHRhY2htZW50L2F0dGFjaG1lbnQtZHlu
YW1pYy10eXBlLmh0bWwgWyBQYXNzIF0KK2Zhc3QvYXR0YWNobWVudC9hdHRhY2htZW50LXRodW1i
bmFpbC1wcmVzZXJ2ZXMtYXNwZWN0LXJhdGlvLmh0bWwgWyBQYXNzIF0KIGZhc3QvaW1hZ2VzL3Bk
Zi1hcy1pbWFnZS1kZXN0LXJlY3QtY2hhbmdlLmh0bWwgWyBQYXNzIF0KIAogZmFzdC9ldmVudHMv
cGFnZS12aXNpYmlsaXR5LWlmcmFtZS1tb3ZlLXRlc3QuaHRtbCBbIFNraXAgXQpkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvcmVzb3VyY2VzL3VpLWhlbHBlci5qcyBiL0xheW91dFRlc3RzL3Jlc291
cmNlcy91aS1oZWxwZXIuanMKaW5kZXggNDdiZmQ0NTJhZjIzNGFmZTFjMmM2NDRiMmRkOGQwYWJh
OWQ0YzZiMC4uMjU0OTNlY2I4ZDMzMTBlMWQ5Yjc2ZTQwMGUzYzhmZjczMWZmMjU4YSAxMDA2NDQK
LS0tIGEvTGF5b3V0VGVzdHMvcmVzb3VyY2VzL3VpLWhlbHBlci5qcworKysgYi9MYXlvdXRUZXN0
cy9yZXNvdXJjZXMvdWktaGVscGVyLmpzCkBAIC0xMDAyLDYgKzEwMDIsMTkgQEAgd2luZG93LlVJ
SGVscGVyID0gY2xhc3MgVUlIZWxwZXIgewogICAgICAgICB9KTsKICAgICB9CiAKKyAgICBzdGF0
aWMgaW5zZXJ0QXR0YWNobWVudEZvckZpbGVQYXRoKHBhdGgsIGNvbnRlbnRUeXBlKQorICAgIHsK
KyAgICAgICAgaWYgKCF0aGlzLmlzV2ViS2l0MigpKQorICAgICAgICAgICAgcmV0dXJuIFByb21p
c2UucmVzb2x2ZSgpOworCisgICAgICAgIHJldHVybiBuZXcgUHJvbWlzZShyZXNvbHZlID0+IHsK
KyAgICAgICAgICAgIHRlc3RSdW5uZXIucnVuVUlTY3JpcHQoYAorICAgICAgICAgICAgICAgIHVp
Q29udHJvbGxlci5pbnNlcnRBdHRhY2htZW50Rm9yRmlsZVBhdGgoJyR7cGF0aH0nLCAnJHtjb250
ZW50VHlwZX0nLCBmdW5jdGlvbigpIHsKKyAgICAgICAgICAgICAgICAgICAgdWlDb250cm9sbGVy
LnVpU2NyaXB0Q29tcGxldGUoKTsKKyAgICAgICAgICAgICAgICB9KTtgLCByZXNvbHZlKTsKKyAg
ICAgICAgfSk7CisgICAgfQorCiAgICAgc3RhdGljIHNldE1pbmltdW1FZmZlY3RpdmVXaWR0aChl
ZmZlY3RpdmVXaWR0aCkKICAgICB7CiAgICAgICAgIGlmICghdGhpcy5pc1dlYktpdDIoKSkK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>408243</attachid>
            <date>2020-09-08 11:13:14 -0700</date>
            <delta_ts>2020-09-08 12:47:10 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-216209-20200908111314.patch</filename>
            <type>text/plain</type>
            <size>35899</size>
            <attacher name="Tim Horton">thorton</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjY2NjE2CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMjE5N2YyMTY0ZDVmYTQ2
ZTYzMmQ0YjIwMDhmNjVmNjU4NTY2MmMyMC4uZjNmZmUyY2MwOTNhZGViYWNmODc0ZjRiY2U0YjU5
YmM2Nzg5MGRmMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI0IEBACisyMDIwLTA5LTA0ICBUaW0g
SG9ydG9uICA8dGltb3RoeV9ob3J0b25AYXBwbGUuY29tPgorCisgICAgICAgIGlPUzogPGF0dGFj
aG1lbnQ+J3MgUXVpY2tMb29rIHRodW1ibmFpbHMgY2FuIGFwcGVhciBzcXVpc2hlZAorICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjE2MjA5CisgICAgICAg
IDxyZGFyOi8vcHJvYmxlbS82NzgxNzcwNj4KKworICAgICAgICBSZXZpZXdlZCBieSBXZW5zb24g
SHNpZWguCisKKyAgICAgICAgVGVzdDogZmFzdC9hdHRhY2htZW50L2F0dGFjaG1lbnQtdGh1bWJu
YWlsLXByZXNlcnZlcy1hc3BlY3QtcmF0aW8uaHRtbAorCisgICAgICAgICogaHRtbC9IVE1MQXR0
YWNobWVudEVsZW1lbnQuaWRsOgorICAgICAgICAqIHRlc3RpbmcvSW50ZXJuYWxzLmNwcDoKKyAg
ICAgICAgKFdlYkNvcmU6OkludGVybmFsczo6YXR0YWNobWVudFRodW1ibmFpbEluZm8pOgorICAg
ICAgICAqIHRlc3RpbmcvSW50ZXJuYWxzLmg6CisgICAgICAgICogdGVzdGluZy9JbnRlcm5hbHMu
aWRsOgorICAgICAgICBFeHBvc2UgdGhlIGF0dGFjaG1lbnQgdGh1bWJuYWlsIHNpemUgdmlhIElu
dGVybmFscy4KKworICAgICAgICAqIHJlbmRlcmluZy9SZW5kZXJUaGVtZUlPUy5tbToKKyAgICAg
ICAgKFdlYkNvcmU6OlJlbmRlckF0dGFjaG1lbnRJbmZvOjpSZW5kZXJBdHRhY2htZW50SW5mbyk6
CisgICAgICAgIEFsbG93IHRoZSB0aHVtYm5haWwgYXNwZWN0IHJhdGlvIHRvIHZhcnksIGluc3Rl
YWQgb2YgYXNzdW1pbmcgaXQgaXMgYWx3YXlzIHNxdWFyZS4KKwogMjAyMC0wOS0wNCAgQ2hyaXMg
RHVtZXogIDxjZHVtZXpAYXBwbGUuY29tPgogCiAgICAgICAgIFJFR1JFU1NJT04obWFjT1MgQmln
IFN1cikgaHR0cHM6Ly9tYWdlbnRhLmdpdGh1Yi5pby9sb2ZpLXBsYXllci8gaXMgYnJva2VuCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdl
TG9nCmluZGV4IDk0OTExZDg5NjI1MWFlN2NhNjU4NTg3NGM1MjBhYjg4NmZhZWI5YjMuLjdhNzlk
MTg1ZmE3N2RlYzJkYTNlZWFlMDU5OGNiMDYzZTk2MDgxNGEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJLaXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJLaXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEs
MjIgQEAKKzIwMjAtMDktMDQgIFRpbSBIb3J0b24gIDx0aW1vdGh5X2hvcnRvbkBhcHBsZS5jb20+
CisKKyAgICAgICAgaU9TOiA8YXR0YWNobWVudD4ncyBRdWlja0xvb2sgdGh1bWJuYWlscyBjYW4g
YXBwZWFyIHNxdWlzaGVkCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVn
LmNnaT9pZD0yMTYyMDkKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVtLzY3ODE3NzA2PgorCisgICAg
ICAgIFJldmlld2VkIGJ5IFdlbnNvbiBIc2llaC4KKworICAgICAgICAqIFVJUHJvY2Vzcy9Db2Nv
YS9XZWJQYWdlUHJveHlDb2NvYS5tbToKKyAgICAgICAgKFdlYktpdDo6Y29udmVydFBsYXRmb3Jt
SW1hZ2VUb0JpdG1hcCk6CisgICAgICAgIFByb3BhZ2F0ZSBhbiBpbWFnZSBvZiB0aGUgc2FtZSBh
c3BlY3QgcmF0aW8gdGhhdCBRdWlja0xvb2sgcHJvdmlkZWQsCisgICAgICAgIGluc3RlYWQgb2Yg
c3F1aXNoaW5nIGl0IHRvIHNxdWFyZS4KKworICAgICAgICAqIFVJUHJvY2Vzcy9RdWlja0xvb2tU
aHVtYm5haWxMb2FkZXIubW06CisgICAgICAgICgtW1dLUUxUaHVtYm5haWxMb2FkT3BlcmF0aW9u
IHN0YXJ0XSk6CisgICAgICAgIE9ubHkgcmVxdWVzdCBmdWxsIHRodW1ibmFpbHM7IHdlIGRvIG5v
dCB3YW50IHRoZSBpY29uIGZvcm0sIHNpbmNlIDxhdHRhY2htZW50PgorICAgICAgICBhbHJlYWR5
IGhhcyBvbmUgd2l0aG91dCBRdWlja0xvb2sncyBoZWxwOyBpZiB3ZSBjYW4ndCBnZXQgYSBmdWxs
IHRodW1ibmFpbCwKKyAgICAgICAgd2UnbGwganVzdCBsZWF2ZSBpdCBhbG9uZS4KKwogMjAyMC0w
OS0wNCAgUGVyIEFybmUgVm9sbGFuICA8cHZvbGxhbkBhcHBsZS5jb20+CiAKICAgICAgICAgW21h
Y09TXSBBZGQgY2xpZW50IGRlY29kZXIgZW50aXRsZW1lbnQKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL2h0bWwvSFRNTEF0dGFjaG1lbnRFbGVtZW50LmlkbCBiL1NvdXJjZS9XZWJDb3JlL2h0
bWwvSFRNTEF0dGFjaG1lbnRFbGVtZW50LmlkbAppbmRleCA1MjJlMjU3YWFmZDdlZDhlYzEzYmEx
YmQ1ZjFkMDVlNGFjYTUzMmJmLi5lNzRhMTdhYjUyOTZjZTE1YmRhMDNmNzBlMGM0NDhiNjhlZGFj
ZTE2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxBdHRhY2htZW50RWxlbWVu
dC5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MQXR0YWNobWVudEVsZW1lbnQuaWRs
CkBAIC0yNSw2ICsyNSw4IEBACiAKIFsKICAgICBDb25kaXRpb25hbD1BVFRBQ0hNRU5UX0VMRU1F
TlQsCisgICAgSlNHZW5lcmF0ZVRvTmF0aXZlT2JqZWN0LAorICAgIEV4cG9ydE1hY3JvPVdFQkNP
UkVfRVhQT1JULAogICAgIEVuYWJsZWRBdFJ1bnRpbWU9QXR0YWNobWVudEVsZW1lbnQsCiBdIGlu
dGVyZmFjZSBIVE1MQXR0YWNobWVudEVsZW1lbnQgOiBIVE1MRWxlbWVudCB7CiAgICAgYXR0cmli
dXRlIEZpbGU/IGZpbGU7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVu
ZGVyVGhlbWVJT1MubW0gYi9Tb3VyY2UvV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyVGhlbWVJT1Mu
bW0KaW5kZXggNmYwZjQ4N2M0NzNmNTI0YzljYjgyOTJiYzgzOTI3NGU1MTYwYzYyNi4uOGFhY2Ix
NjNjZWJmYjI4ODAxOGE4MWUxMjg4OTc3NTRmMzQ3YTBjYyAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvcmVuZGVyaW5nL1JlbmRlclRoZW1lSU9TLm1tCisrKyBiL1NvdXJjZS9XZWJDb3JlL3Jl
bmRlcmluZy9SZW5kZXJUaGVtZUlPUy5tbQpAQCAtMTYzNywxMCArMTYzNywxMSBAQCBSZW5kZXJB
dHRhY2htZW50SW5mbzo6UmVuZGVyQXR0YWNobWVudEluZm8oY29uc3QgUmVuZGVyQXR0YWNobWVu
dCYgYXR0YWNobWVudCkKICAgICAgICAgRmxvYXRTaXplIGljb25TaXplOwogICAgICAgICBpY29u
ID0gaWNvbkZvckF0dGFjaG1lbnQoYXR0YWNobWVudCwgaWNvblNpemUpOwogICAgICAgICB0aHVt
Ym5haWxJY29uID0gYXR0YWNobWVudC5hdHRhY2htZW50RWxlbWVudCgpLnRodW1ibmFpbCgpOwor
ICAgICAgICBpZiAodGh1bWJuYWlsSWNvbikKKyAgICAgICAgICAgIGljb25TaXplID0gbGFyZ2Vz
dFJlY3RXaXRoQXNwZWN0UmF0aW9JbnNpZGVSZWN0KHRodW1ibmFpbEljb24tPnNpemUoKS5hc3Bl
Y3RSYXRpbygpLCBGbG9hdFJlY3QoMCwgMCwgYXR0YWNobWVudEljb25TaXplLCBhdHRhY2htZW50
SWNvblNpemUpKS5zaXplKCk7CiAgICAgICAgIAogICAgICAgICBpZiAodGh1bWJuYWlsSWNvbiB8
fCBpY29uKSB7Ci0gICAgICAgICAgICBhdXRvIHZpc2libGVJY29uU2l6ZSA9IHRodW1ibmFpbElj
b24gPyBGbG9hdFNpemUoYXR0YWNobWVudEljb25TaXplLCBhdHRhY2htZW50SWNvblNpemUpIDog
aWNvblNpemU7Ci0gICAgICAgICAgICBpY29uUmVjdCA9IEZsb2F0UmVjdChGbG9hdFBvaW50KChh
dHRhY2htZW50UmVjdC53aWR0aCgpIC8gMikgLSAodmlzaWJsZUljb25TaXplLndpZHRoKCkgLyAy
KSwgMCksIHZpc2libGVJY29uU2l6ZSk7CisgICAgICAgICAgICBpY29uUmVjdCA9IEZsb2F0UmVj
dChGbG9hdFBvaW50KChhdHRhY2htZW50UmVjdC53aWR0aCgpIC8gMikgLSAoaWNvblNpemUud2lk
dGgoKSAvIDIpLCAwKSwgaWNvblNpemUpOwogICAgICAgICAgICAgeU9mZnNldCArPSBpY29uUmVj
dC5oZWlnaHQoKSArIGF0dGFjaG1lbnRJdGVtTWFyZ2luOwogICAgICAgICB9CiAgICAgfSBlbHNl
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5jcHAgYi9Tb3Vy
Y2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5jcHAKaW5kZXggMmNhYWMwYWQ2ZTg0N2Q2OTRi
NzdhN2IyZGVjMDhmZTVjMTVmNDE5NC4uNDMxYzk2NzNlOTRiNGU5ZDE4MjU0NzYwMzIzMzU5Nzhk
MWYyZTJmMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuY3Bw
CisrKyBiL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxzLmNwcApAQCAtODgsNiArODgs
NyBAQAogI2luY2x1ZGUgIkdyaWRQb3NpdGlvbi5oIgogI2luY2x1ZGUgIkhFVkNVdGlsaXRpZXMu
aCIKICNpbmNsdWRlICJIVE1MQW5jaG9yRWxlbWVudC5oIgorI2luY2x1ZGUgIkhUTUxBdHRhY2ht
ZW50RWxlbWVudC5oIgogI2luY2x1ZGUgIkhUTUxDYW52YXNFbGVtZW50LmgiCiAjaW5jbHVkZSAi
SFRNTElGcmFtZUVsZW1lbnQuaCIKICNpbmNsdWRlICJIVE1MSW1hZ2VFbGVtZW50LmgiCkBAIC02
MDY1LDQgKzYwNjYsMjQgQEAgdm9pZCBJbnRlcm5hbHM6OnNldENvbnRlbnRTaXplQ2F0ZWdvcnko
SW50ZXJuYWxzOjpDb250ZW50U2l6ZUNhdGVnb3J5IGNhdGVnb3J5KQogI2VuZGlmCiB9CiAKKyNp
ZiBFTkFCTEUoQVRUQUNITUVOVF9FTEVNRU5UKQorCitFeGNlcHRpb25PcjxJbnRlcm5hbHM6OkF0
dGFjaG1lbnRUaHVtYm5haWxJbmZvPiBJbnRlcm5hbHM6OmF0dGFjaG1lbnRUaHVtYm5haWxJbmZv
KGNvbnN0IEhUTUxBdHRhY2htZW50RWxlbWVudCYgZWxlbWVudCkKK3sKKyNpZiBIQVZFKFFVSUNL
TE9PS19USFVNQk5BSUxJTkcpCisgICAgQXR0YWNobWVudFRodW1ibmFpbEluZm8gaW5mbzsKKyAg
ICBpZiAoYXV0byBpbWFnZSA9IGVsZW1lbnQudGh1bWJuYWlsKCkpIHsKKyAgICAgICAgYXV0byBz
aXplID0gaW1hZ2UtPnNpemUoKTsKKyAgICAgICAgaW5mby53aWR0aCA9IHNpemUud2lkdGgoKTsK
KyAgICAgICAgaW5mby5oZWlnaHQgPSBzaXplLmhlaWdodCgpOworICAgIH0KKyAgICByZXR1cm4g
aW5mbzsKKyNlbHNlCisgICAgVU5VU0VEX1BBUkFNKGVsZW1lbnQpOworICAgIHJldHVybiBFeGNl
cHRpb24geyBJbnZhbGlkQWNjZXNzRXJyb3IgfTsKKyNlbmRpZgorfQorCisjZW5kaWYKKwogfSAv
LyBuYW1lc3BhY2UgV2ViQ29yZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvdGVzdGluZy9J
bnRlcm5hbHMuaCBiL1NvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxzLmgKaW5kZXggYTFh
ODcxYzg5NjhhYjljYzRkYTAzNzA0ODY4ZGIwMDJkOGZhMjYxMy4uYThmODNjZTcxZjkyODFlNGVl
YzZkOWZkZGUyZjdiNDUwNGNhOWEwNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvdGVzdGlu
Zy9JbnRlcm5hbHMuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5oCkBA
IC02OSw2ICs2OSw3IEBAIGNsYXNzIEZpbGU7CiBjbGFzcyBGcmFtZTsKIGNsYXNzIEdDT2JzZXJ2
YXRpb247CiBjbGFzcyBIVE1MQW5jaG9yRWxlbWVudDsKK2NsYXNzIEhUTUxBdHRhY2htZW50RWxl
bWVudDsKIGNsYXNzIEhUTUxJbWFnZUVsZW1lbnQ7CiBjbGFzcyBIVE1MSW5wdXRFbGVtZW50Owog
Y2xhc3MgSFRNTExpbmtFbGVtZW50OwpAQCAtMTA1OCw2ICsxMDU5LDE1IEBAIHB1YmxpYzoKICAg
ICBlbnVtIGNsYXNzIENvbnRlbnRTaXplQ2F0ZWdvcnkgeyBMLCBYWFhMIH07CiAgICAgdm9pZCBz
ZXRDb250ZW50U2l6ZUNhdGVnb3J5KENvbnRlbnRTaXplQ2F0ZWdvcnkpOwogCisjaWYgRU5BQkxF
KEFUVEFDSE1FTlRfRUxFTUVOVCkKKyAgICBzdHJ1Y3QgQXR0YWNobWVudFRodW1ibmFpbEluZm8g
eworICAgICAgICB1bnNpZ25lZCB3aWR0aCB7IDAgfTsKKyAgICAgICAgdW5zaWduZWQgaGVpZ2h0
IHsgMCB9OworICAgIH07CisKKyAgICBFeGNlcHRpb25PcjxBdHRhY2htZW50VGh1bWJuYWlsSW5m
bz4gYXR0YWNobWVudFRodW1ibmFpbEluZm8oY29uc3QgSFRNTEF0dGFjaG1lbnRFbGVtZW50Jik7
CisjZW5kaWYKKwogcHJpdmF0ZToKICAgICBleHBsaWNpdCBJbnRlcm5hbHMoRG9jdW1lbnQmKTsK
ICAgICBEb2N1bWVudCogY29udGV4dERvY3VtZW50KCkgY29uc3Q7CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFscy5pZGwgYi9Tb3VyY2UvV2ViQ29yZS90ZXN0aW5n
L0ludGVybmFscy5pZGwKaW5kZXggZTFkYWEzYTE1ZDc1ZjU2MzZmNTNiNjBjMWJmMWJmYjkxYTFk
YzM5Mi4uZDNkZTNkMzAxZmYxYzEwYzkzNGU2Mzk4NmM2MDc3YTE4NDJkYmZhMSAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbHMuaWRsCisrKyBiL1NvdXJjZS9XZWJD
b3JlL3Rlc3RpbmcvSW50ZXJuYWxzLmlkbApAQCAtMjM1LDYgKzIzNSwxNSBAQCBlbnVtIENvbnRl
bnRTaXplQ2F0ZWdvcnkgewogICAgIERPTVJlY3RMaXN0IHRleHRSZWN0c0luQm91bmRpbmdSZWN0
Q29vcmRpbmF0ZXM7CiB9OwogCitbCisgICAgRXhwb3J0TWFjcm89V0VCQ09SRV9URVNUU1VQUE9S
VF9FWFBPUlQsCisgICAgQ29uZGl0aW9uYWw9QVRUQUNITUVOVF9FTEVNRU5ULAorICAgIEpTR2Vu
ZXJhdGVUb0pTT2JqZWN0LAorXSBkaWN0aW9uYXJ5IEF0dGFjaG1lbnRUaHVtYm5haWxJbmZvIHsK
KyAgICB1bnNpZ25lZCBsb25nIHdpZHRoOworICAgIHVuc2lnbmVkIGxvbmcgaGVpZ2h0OworfTsK
KwogWwogICAgIEV4cG9ydE1hY3JvPVdFQkNPUkVfVEVTVFNVUFBPUlRfRVhQT1JULAogICAgIEpT
R2VuZXJhdGVUb0pTT2JqZWN0LApAQCAtOTY1LDQgKzk3NCw2IEBAIGVudW0gQ29udGVudFNpemVD
YXRlZ29yeSB7CiAgICAgW0NvbmRpdGlvbmFsPUVOQ1JZUFRFRF9NRURJQV0gdW5zaWduZWQgbG9u
ZyBtZWRpYUtleVNlc3Npb25JbnRlcm5hbEluc3RhbmNlU2Vzc2lvbk9iamVjdFJlZkNvdW50KE1l
ZGlhS2V5U2Vzc2lvbiBzZXNzaW9uKTsKIAogICAgIHVuZGVmaW5lZCBzZXRDb250ZW50U2l6ZUNh
dGVnb3J5KENvbnRlbnRTaXplQ2F0ZWdvcnkgY2F0ZWdvcnkpOworCisgICAgW0NvbmRpdGlvbmFs
PUFUVEFDSE1FTlRfRUxFTUVOVCwgTWF5VGhyb3dFeGNlcHRpb25dIEF0dGFjaG1lbnRUaHVtYm5h
aWxJbmZvIGF0dGFjaG1lbnRUaHVtYm5haWxJbmZvKEhUTUxBdHRhY2htZW50RWxlbWVudCBlbGVt
ZW50KTsKIH07CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L1VJUHJvY2Vzcy9Db2NvYS9XZWJQ
YWdlUHJveHlDb2NvYS5tbSBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0NvY29hL1dlYlBhZ2VQ
cm94eUNvY29hLm1tCmluZGV4IDRkNGY4ODdlZGM5NWIxZWQ1NzU3NDBmMTk4YmJlNjJiYzYzM2Nl
YTUuLjViZGVlMTk1ZWVlNzZiNTY5ZjY2NTBiNjBjNjIyYTk5YzA0NWIyYmMgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0NvY29hL1dlYlBhZ2VQcm94eUNvY29hLm1tCisrKyBi
L1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL0NvY29hL1dlYlBhZ2VQcm94eUNvY29hLm1tCkBAIC00
Myw2ICs0Myw3IEBACiAjaW1wb3J0ICJXZWJzaXRlRGF0YVN0b3JlLmgiCiAjaW1wb3J0ICJXS0Vy
cm9ySW50ZXJuYWwuaCIKICNpbXBvcnQgPFdlYkNvcmUvRHJhZ0l0ZW0uaD4KKyNpbXBvcnQgPFdl
YkNvcmUvR2VvbWV0cnlVdGlsaXRpZXMuaD4KICNpbXBvcnQgPFdlYkNvcmUvTG9jYWxDdXJyZW50
R3JhcGhpY3NDb250ZXh0Lmg+CiAjaW1wb3J0IDxXZWJDb3JlL05vdEltcGxlbWVudGVkLmg+CiAj
aW1wb3J0IDxXZWJDb3JlL1NlYXJjaFBvcHVwTWVudUNvY29hLmg+CkBAIC00MzUsMTAgKzQzNiwx
NCBAQCB2b2lkIFdlYlBhZ2VQcm94eTo6cmVtb3ZlTWVkaWFVc2FnZU1hbmFnZXJTZXNzaW9uKFdl
YkNvcmU6Ok1lZGlhU2Vzc2lvbklkZW50aWZpZQogCiAjaWYgSEFWRShRVUlDS0xPT0tfVEhVTUJO
QUlMSU5HKQogCi1zdGF0aWMgUmVmUHRyPFdlYktpdDo6U2hhcmVhYmxlQml0bWFwPiBjb252ZXJ0
UGxhdGZvcm1JbWFnZVRvQml0bWFwKENvY29hSW1hZ2UgKmltYWdlLCBjb25zdCBXZWJDb3JlOjpJ
bnRTaXplJiBzaXplKQorc3RhdGljIFJlZlB0cjxXZWJLaXQ6OlNoYXJlYWJsZUJpdG1hcD4gY29u
dmVydFBsYXRmb3JtSW1hZ2VUb0JpdG1hcChDb2NvYUltYWdlICppbWFnZSwgY29uc3QgV2ViQ29y
ZTo6SW50U2l6ZSYgZml0dGluZ1NpemUpCiB7CisgICAgRmxvYXRTaXplIG9yaWdpbmFsVGh1bWJu
YWlsU2l6ZShbaW1hZ2Ugc2l6ZV0pOworICAgIGF1dG8gcmVzdWx0UmVjdCA9IHJvdW5kZWRJbnRS
ZWN0KGxhcmdlc3RSZWN0V2l0aEFzcGVjdFJhdGlvSW5zaWRlUmVjdChvcmlnaW5hbFRodW1ibmFp
bFNpemUuYXNwZWN0UmF0aW8oKSwgeyB7IH0sIGZpdHRpbmdTaXplIH0pKTsKKyAgICByZXN1bHRS
ZWN0LnNldExvY2F0aW9uKHsgfSk7CisKICAgICBXZWJLaXQ6OlNoYXJlYWJsZUJpdG1hcDo6Q29u
ZmlndXJhdGlvbiBiaXRtYXBDb25maWd1cmF0aW9uOwotICAgIGF1dG8gYml0bWFwID0gV2ViS2l0
OjpTaGFyZWFibGVCaXRtYXA6OmNyZWF0ZVNoYXJlYWJsZShzaXplLCBiaXRtYXBDb25maWd1cmF0
aW9uKTsKKyAgICBhdXRvIGJpdG1hcCA9IFdlYktpdDo6U2hhcmVhYmxlQml0bWFwOjpjcmVhdGVT
aGFyZWFibGUocmVzdWx0UmVjdC5zaXplKCksIGJpdG1hcENvbmZpZ3VyYXRpb24pOwogICAgIGlm
ICghYml0bWFwKQogICAgICAgICByZXR1cm4gbnVsbHB0cjsKIApAQCAtNDQ4LDkgKzQ1Myw5IEBA
IHN0YXRpYyBSZWZQdHI8V2ViS2l0OjpTaGFyZWFibGVCaXRtYXA+IGNvbnZlcnRQbGF0Zm9ybUlt
YWdlVG9CaXRtYXAoQ29jb2FJbWFnZSAqCiAKICAgICBMb2NhbEN1cnJlbnRHcmFwaGljc0NvbnRl
eHQgc2F2ZWRDb250ZXh0KCpncmFwaGljc0NvbnRleHQpOwogI2lmIFBMQVRGT1JNKElPU19GQU1J
TFkpCi0gICAgW2ltYWdlIGRyYXdJblJlY3Q6Q0dSZWN0TWFrZSgwLCAwLCBiaXRtYXAtPnNpemUo
KS53aWR0aCgpLCBiaXRtYXAtPnNpemUoKS5oZWlnaHQoKSldOworICAgIFtpbWFnZSBkcmF3SW5S
ZWN0OnJlc3VsdFJlY3RdOwogI2VsaWYgVVNFKEFQUEtJVCkKLSAgICBbaW1hZ2UgZHJhd0luUmVj
dDpOU01ha2VSZWN0KDAsIDAsIGJpdG1hcC0+c2l6ZSgpLndpZHRoKCksIGJpdG1hcC0+c2l6ZSgp
LmhlaWdodCgpKSBmcm9tUmVjdDpOU1plcm9SZWN0IG9wZXJhdGlvbjpOU0NvbXBvc2l0aW5nT3Bl
cmF0aW9uU291cmNlT3ZlciBmcmFjdGlvbjoxIHJlc3BlY3RGbGlwcGVkOllFUyBoaW50czpuaWxd
OworICAgIFtpbWFnZSBkcmF3SW5SZWN0OnJlc3VsdFJlY3QgZnJvbVJlY3Q6TlNaZXJvUmVjdCBv
cGVyYXRpb246TlNDb21wb3NpdGluZ09wZXJhdGlvblNvdXJjZU92ZXIgZnJhY3Rpb246MSByZXNw
ZWN0RmxpcHBlZDpZRVMgaGludHM6bmlsXTsKICNlbmRpZgogCiAgICAgcmV0dXJuIGJpdG1hcDsK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1F1aWNrTG9va1RodW1ibmFpbExv
YWRlci5tbSBiL1NvdXJjZS9XZWJLaXQvVUlQcm9jZXNzL1F1aWNrTG9va1RodW1ibmFpbExvYWRl
ci5tbQppbmRleCBlODAxODhiOTBiMjJmZjZhYTc5ODYwMDM0M2NiMGNjY2FlM2Q2ZTY1Li41YzFh
MDc3YzNlNmVhMWI2YzE1YTRmZDY5YjUzNDg5ZTFiZTlmMmFmIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViS2l0L1VJUHJvY2Vzcy9RdWlja0xvb2tUaHVtYm5haWxMb2FkZXIubW0KKysrIGIvU291cmNl
L1dlYktpdC9VSVByb2Nlc3MvUXVpY2tMb29rVGh1bWJuYWlsTG9hZGVyLm1tCkBAIC0xMDcsNyAr
MTA3LDcgQEAgLSAodm9pZClzdGFydAogICAgICAgICAgICAgcmV0dXJuOwogICAgIH0KIAotICAg
IGF1dG8gcmVxdWVzdCA9IGFkb3B0TlMoW1dlYktpdDo6YWxsb2NRTFRodW1ibmFpbEdlbmVyYXRp
b25SZXF1ZXN0SW5zdGFuY2UoKSBpbml0V2l0aEZpbGVBdFVSTDpfZmlsZVBhdGguZ2V0KCkgc2l6
ZTpDR1NpemVNYWtlKDQwMCwgNDAwKSBzY2FsZToxIHJlcHJlc2VudGF0aW9uVHlwZXM6UUxUaHVt
Ym5haWxHZW5lcmF0aW9uUmVxdWVzdFJlcHJlc2VudGF0aW9uVHlwZUFsbF0pOworICAgIGF1dG8g
cmVxdWVzdCA9IGFkb3B0TlMoW1dlYktpdDo6YWxsb2NRTFRodW1ibmFpbEdlbmVyYXRpb25SZXF1
ZXN0SW5zdGFuY2UoKSBpbml0V2l0aEZpbGVBdFVSTDpfZmlsZVBhdGguZ2V0KCkgc2l6ZTpDR1Np
emVNYWtlKDQwMCwgNDAwKSBzY2FsZToxIHJlcHJlc2VudGF0aW9uVHlwZXM6UUxUaHVtYm5haWxH
ZW5lcmF0aW9uUmVxdWVzdFJlcHJlc2VudGF0aW9uVHlwZVRodW1ibmFpbF0pOwogICAgIFtyZXF1
ZXN0IHNldEljb25Nb2RlOllFU107CiAgICAgCiAgICAgW1tXZWJLaXQ6OmdldFFMVGh1bWJuYWls
R2VuZXJhdG9yQ2xhc3MoKSBzaGFyZWRHZW5lcmF0b3JdIGdlbmVyYXRlQmVzdFJlcHJlc2VudGF0
aW9uRm9yUmVxdWVzdDpyZXF1ZXN0LmdldCgpIGNvbXBsZXRpb25IYW5kbGVyOl4oUUxUaHVtYm5h
aWxSZXByZXNlbnRhdGlvbiAqdGh1bWJuYWlsLCBOU0Vycm9yICplcnJvcikgewpkaWZmIC0tZ2l0
IGEvVG9vbHMvQ2hhbmdlTG9nIGIvVG9vbHMvQ2hhbmdlTG9nCmluZGV4IDhkMjJkYTk3ODE1MjU0
ODQzNjY5MzBmODA0ZDkzNjNmMGUzNzRkNjQuLmM5MWM2MjA5YzA0MWQzYTRiYWE4MzNlOWJkMzM3
NTQxOWUwYzk0OWIgMTAwNjQ0Ci0tLSBhL1Rvb2xzL0NoYW5nZUxvZworKysgYi9Ub29scy9DaGFu
Z2VMb2cKQEAgLTEsMyArMSwyMyBAQAorMjAyMC0wOS0wNCAgVGltIEhvcnRvbiAgPHRpbW90aHlf
aG9ydG9uQGFwcGxlLmNvbT4KKworICAgICAgICBpT1M6IDxhdHRhY2htZW50PidzIFF1aWNrTG9v
ayB0aHVtYm5haWxzIGNhbiBhcHBlYXIgc3F1aXNoZWQKKyAgICAgICAgaHR0cHM6Ly9idWdzLndl
YmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTIxNjIwOQorICAgICAgICA8cmRhcjovL3Byb2JsZW0v
Njc4MTc3MDY+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgV2Vuc29uIEhzaWVoLgorCisgICAgICAg
ICogVGVzdFJ1bm5lclNoYXJlZC9VSVNjcmlwdENvbnRleHQvQmluZGluZ3MvVUlTY3JpcHRDb250
cm9sbGVyLmlkbDoKKyAgICAgICAgKiBUZXN0UnVubmVyU2hhcmVkL1VJU2NyaXB0Q29udGV4dC9V
SVNjcmlwdENvbnRyb2xsZXIuaDoKKyAgICAgICAgKFdUUjo6VUlTY3JpcHRDb250cm9sbGVyOjpp
bnNlcnRBdHRhY2htZW50Rm9yRmlsZVBhdGgpOgorICAgICAgICAqIFdlYktpdFRlc3RSdW5uZXIv
VGVzdENvbnRyb2xsZXIuY3BwOgorICAgICAgICAoV1RSOjpUZXN0Q29udHJvbGxlcjo6Y3VycmVu
dFRlc3RVUkwgY29uc3QpOgorICAgICAgICAqIFdlYktpdFRlc3RSdW5uZXIvVGVzdENvbnRyb2xs
ZXIuaDoKKyAgICAgICAgKiBXZWJLaXRUZXN0UnVubmVyL2NvY29hL1VJU2NyaXB0Q29udHJvbGxl
ckNvY29hLmg6CisgICAgICAgICogV2ViS2l0VGVzdFJ1bm5lci9jb2NvYS9VSVNjcmlwdENvbnRy
b2xsZXJDb2NvYS5tbToKKyAgICAgICAgKFdUUjo6VUlTY3JpcHRDb250cm9sbGVyQ29jb2E6Omlu
c2VydEF0dGFjaG1lbnRGb3JGaWxlUGF0aCk6CisgICAgICAgIE1ha2UgaXQgcG9zc2libGUgdG8g
aW5zZXJ0IGFuIGF0dGFjaG1lbnQgd3JhcHBpbmcgYSBmaWxlIG9uIGRpc2sKKyAgICAgICAgdmlh
IFVJU2NyaXB0Q29udHJvbGxlci4KKwogMjAyMC0wOS0wNCAgWW91ZW5uIEZhYmxldCAgPHlvdWVu
bkBhcHBsZS5jb20+CiAKICAgICAgICAgQmluZGluZyBnZW5lcmF0b3IgaXMgbm90IGFsd2F5cyBj
b21wdXRpbmcgdGhlIHJpZ2h0IGludGVyZmFjZSBhdHRyaWJ1dGVzCmRpZmYgLS1naXQgYS9Ub29s
cy9UZXN0UnVubmVyU2hhcmVkL1VJU2NyaXB0Q29udGV4dC9CaW5kaW5ncy9VSVNjcmlwdENvbnRy
b2xsZXIuaWRsIGIvVG9vbHMvVGVzdFJ1bm5lclNoYXJlZC9VSVNjcmlwdENvbnRleHQvQmluZGlu
Z3MvVUlTY3JpcHRDb250cm9sbGVyLmlkbAppbmRleCBlMzU1ZGY0ZjU4YTAwNjg2MjNkZmJmMjRi
ZGVlMjg2Mzc2NWE3NTQ3Li4zZDU4MzJkMWQ5NjJjMGM5MzJmMzI3ZTNlYmMwMTg5ZGExMGM0ODVj
IDEwMDY0NAotLS0gYS9Ub29scy9UZXN0UnVubmVyU2hhcmVkL1VJU2NyaXB0Q29udGV4dC9CaW5k
aW5ncy9VSVNjcmlwdENvbnRyb2xsZXIuaWRsCisrKyBiL1Rvb2xzL1Rlc3RSdW5uZXJTaGFyZWQv
VUlTY3JpcHRDb250ZXh0L0JpbmRpbmdzL1VJU2NyaXB0Q29udHJvbGxlci5pZGwKQEAgLTM0Nyw2
ICszNDcsNyBAQCBpbnRlcmZhY2UgVUlTY3JpcHRDb250cm9sbGVyIHsKICAgICB1bmRlZmluZWQg
c2V0SGFyZHdhcmVLZXlib2FyZEF0dGFjaGVkKGJvb2xlYW4gYXR0YWNoZWQpOwogCiAgICAgb2Jq
ZWN0IGF0dGFjaG1lbnRJbmZvKERPTVN0cmluZyBhdHRhY2htZW50SWRlbnRpZmllcik7CisgICAg
dW5kZWZpbmVkIGluc2VydEF0dGFjaG1lbnRGb3JGaWxlUGF0aChET01TdHJpbmcgZmlsZVBhdGgs
IERPTVN0cmluZyBjb250ZW50VHlwZSwgb2JqZWN0IGNhbGxiYWNrKTsKIAogICAgIHJlYWRvbmx5
IGF0dHJpYnV0ZSBET01TdHJpbmcgbGFzdFVuZG9MYWJlbDsKICAgICByZWFkb25seSBhdHRyaWJ1
dGUgRE9NU3RyaW5nIGZpcnN0UmVkb0xhYmVsOwpkaWZmIC0tZ2l0IGEvVG9vbHMvVGVzdFJ1bm5l
clNoYXJlZC9VSVNjcmlwdENvbnRleHQvVUlTY3JpcHRDb250cm9sbGVyLmggYi9Ub29scy9UZXN0
UnVubmVyU2hhcmVkL1VJU2NyaXB0Q29udGV4dC9VSVNjcmlwdENvbnRyb2xsZXIuaAppbmRleCBh
ZDA2ZjBiNzI2NmI0MDkyYWFjZTI4MGE3MmE2MzMzOTRmY2Y5NTgzLi5mYjJiZjMyMDUyNWJjYWVi
ZjQwNjdkZTMwZWFmODNmMzBmOGM2MzM5IDEwMDY0NAotLS0gYS9Ub29scy9UZXN0UnVubmVyU2hh
cmVkL1VJU2NyaXB0Q29udGV4dC9VSVNjcmlwdENvbnRyb2xsZXIuaAorKysgYi9Ub29scy9UZXN0
UnVubmVyU2hhcmVkL1VJU2NyaXB0Q29udGV4dC9VSVNjcmlwdENvbnRyb2xsZXIuaApAQCAtMjc1
LDYgKzI3NSw3IEBAIHB1YmxpYzoKICAgICAvLyBBdHRhY2htZW50IEVsZW1lbnRzCiAKICAgICB2
aXJ0dWFsIEpTT2JqZWN0UmVmIGF0dGFjaG1lbnRJbmZvKEpTU3RyaW5nUmVmIGF0dGFjaG1lbnRJ
ZGVudGlmaWVyKSB7IG5vdEltcGxlbWVudGVkKCk7IHJldHVybiBudWxscHRyOyB9CisgICAgdmly
dHVhbCB2b2lkIGluc2VydEF0dGFjaG1lbnRGb3JGaWxlUGF0aChKU1N0cmluZ1JlZiBmaWxlUGF0
aCwgSlNTdHJpbmdSZWYgY29udGVudFR5cGUsIEpTVmFsdWVSZWYgY2FsbGJhY2spIHsgbm90SW1w
bGVtZW50ZWQoKTsgfQogCiAgICAgLy8gQ2FsbGJhY2tzCiAgICAgCmRpZmYgLS1naXQgYS9Ub29s
cy9XZWJLaXRUZXN0UnVubmVyL1Rlc3RDb250cm9sbGVyLmNwcCBiL1Rvb2xzL1dlYktpdFRlc3RS
dW5uZXIvVGVzdENvbnRyb2xsZXIuY3BwCmluZGV4IDIxM2VmZTFmYTExMGFiMmZmNGEyMjEzOGJj
MTc5NTRkNGEwOGM0MTUuLjFlYjlhYWIzOTg4YzFhZTRkNjVhM2MyMmU3ZmNkN2ZkYmQ2YTYyMTEg
MTAwNjQ0Ci0tLSBhL1Rvb2xzL1dlYktpdFRlc3RSdW5uZXIvVGVzdENvbnRyb2xsZXIuY3BwCisr
KyBiL1Rvb2xzL1dlYktpdFRlc3RSdW5uZXIvVGVzdENvbnRyb2xsZXIuY3BwCkBAIC00MTIwLDQg
KzQxMjAsOSBAQCB2b2lkIFRlc3RDb250cm9sbGVyOjptYXJrQWRDbGlja0F0dHJpYnV0aW9uc0Fz
RXhwaXJlZEZvclRlc3RpbmcoKQogICAgIHJ1blVudGlsKGNhbGxiYWNrQ29udGV4dC5kb25lLCBu
b1RpbWVvdXQpOwogfQogCitXS1VSTFJlZiBUZXN0Q29udHJvbGxlcjo6Y3VycmVudFRlc3RVUkwo
KSBjb25zdAoreworICAgIHJldHVybiBtX2N1cnJlbnRJbnZvY2F0aW9uID8gbV9jdXJyZW50SW52
b2NhdGlvbi0+dXJsKCkgOiBudWxscHRyOworfQorCiB9IC8vIG5hbWVzcGFjZSBXVFIKZGlmZiAt
LWdpdCBhL1Rvb2xzL1dlYktpdFRlc3RSdW5uZXIvVGVzdENvbnRyb2xsZXIuaCBiL1Rvb2xzL1dl
YktpdFRlc3RSdW5uZXIvVGVzdENvbnRyb2xsZXIuaAppbmRleCA3MTNmZjlhYjE5NjliOTdhNTdl
N2I1ZTRiMjI4NGVkMjA4ZjA2YzE3Li5mOTRkNTdjMTQ3YjMxNmYwNzhmYTg1ZjIyMGY0MDc2MDk0
MTEzYzhjIDEwMDY0NAotLS0gYS9Ub29scy9XZWJLaXRUZXN0UnVubmVyL1Rlc3RDb250cm9sbGVy
LmgKKysrIGIvVG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9UZXN0Q29udHJvbGxlci5oCkBAIC0zNTks
NiArMzU5LDggQEAgcHVibGljOgogCiAgICAgdm9pZCBkaWRTZXRBcHBCb3VuZERvbWFpbnMoKSBj
b25zdDsKIAorICAgIFdLVVJMUmVmIGN1cnJlbnRUZXN0VVJMKCkgY29uc3Q7CisKIHByaXZhdGU6
CiAgICAgV0tSZXRhaW5QdHI8V0tQYWdlQ29uZmlndXJhdGlvblJlZj4gZ2VuZXJhdGVQYWdlQ29u
ZmlndXJhdGlvbihjb25zdCBUZXN0T3B0aW9ucyYpOwogICAgIFdLUmV0YWluUHRyPFdLQ29udGV4
dENvbmZpZ3VyYXRpb25SZWY+IGdlbmVyYXRlQ29udGV4dENvbmZpZ3VyYXRpb24oY29uc3QgVGVz
dE9wdGlvbnM6OkNvbnRleHRPcHRpb25zJikgY29uc3Q7CmRpZmYgLS1naXQgYS9Ub29scy9XZWJL
aXRUZXN0UnVubmVyL2NvY29hL1VJU2NyaXB0Q29udHJvbGxlckNvY29hLmggYi9Ub29scy9XZWJL
aXRUZXN0UnVubmVyL2NvY29hL1VJU2NyaXB0Q29udHJvbGxlckNvY29hLmgKaW5kZXggZWRiMjEw
YzFhODc5YmI4NGNkYjhlNjllMTRiNzU1ZDRmYWJmZTE1OC4uNzc2N2NhYjZhNTY0MGMyNDc0MDBl
MzZmYjFjOTQ1YjczYmVlMzY4NCAxMDA2NDQKLS0tIGEvVG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9j
b2NvYS9VSVNjcmlwdENvbnRyb2xsZXJDb2NvYS5oCisrKyBiL1Rvb2xzL1dlYktpdFRlc3RSdW5u
ZXIvY29jb2EvVUlTY3JpcHRDb250cm9sbGVyQ29jb2EuaApAQCAtNTcsNiArNTcsOCBAQCBwdWJs
aWM6CiAKICAgICB2b2lkIHNldENvbnRpbnVvdXNTcGVsbENoZWNraW5nRW5hYmxlZChib29sKSBv
dmVycmlkZTsKIAorICAgIHZvaWQgaW5zZXJ0QXR0YWNobWVudEZvckZpbGVQYXRoKEpTU3RyaW5n
UmVmIGZpbGVQYXRoLCBKU1N0cmluZ1JlZiBjb250ZW50VHlwZSwgSlNWYWx1ZVJlZiBjYWxsYmFj
aykgb3ZlcnJpZGU7CisKIHByb3RlY3RlZDoKICAgICBleHBsaWNpdCBVSVNjcmlwdENvbnRyb2xs
ZXJDb2NvYShVSVNjcmlwdENvbnRleHQmKTsKICAgICBUZXN0UnVubmVyV0tXZWJWaWV3ICp3ZWJW
aWV3KCkgY29uc3Q7CmRpZmYgLS1naXQgYS9Ub29scy9XZWJLaXRUZXN0UnVubmVyL2NvY29hL1VJ
U2NyaXB0Q29udHJvbGxlckNvY29hLm1tIGIvVG9vbHMvV2ViS2l0VGVzdFJ1bm5lci9jb2NvYS9V
SVNjcmlwdENvbnRyb2xsZXJDb2NvYS5tbQppbmRleCAxN2FlNTUzMWMxMTg3MjEwZjZmNDJiNDQ2
MzkyMTU0MzIxNDBkYzViLi5hODJjYzM1NWNkN2ZlOTk1NTdhNDFkNjIyMTU2NmQ3MDBjMzRmNzc4
IDEwMDY0NAotLS0gYS9Ub29scy9XZWJLaXRUZXN0UnVubmVyL2NvY29hL1VJU2NyaXB0Q29udHJv
bGxlckNvY29hLm1tCisrKyBiL1Rvb2xzL1dlYktpdFRlc3RSdW5uZXIvY29jb2EvVUlTY3JpcHRD
b250cm9sbGVyQ29jb2EubW0KQEAgLTMyLDYgKzMyLDcgQEAKICNpbXBvcnQgIlRlc3RSdW5uZXJX
S1dlYlZpZXcuaCIKICNpbXBvcnQgIlVJU2NyaXB0Q29udGV4dC5oIgogI2ltcG9ydCA8SmF2YVNj
cmlwdENvcmUvSmF2YVNjcmlwdENvcmUuaD4KKyNpbXBvcnQgPFdlYktpdC9XS1VSTENGLmg+CiAj
aW1wb3J0IDxXZWJLaXQvV0tXZWJWaWV3UHJpdmF0ZS5oPgogI2ltcG9ydCA8V2ViS2l0L1dLV2Vi
Vmlld1ByaXZhdGVGb3JUZXN0aW5nLmg+CiAKQEAgLTIwOCw0ICsyMDksMTkgQEAgdm9pZCBVSVNj
cmlwdENvbnRyb2xsZXJDb2NvYTo6cGFzdGUoKQogICAgIFt3ZWJWaWV3KCkgcGFzdGU6bmlsXTsK
IH0KIAordm9pZCBVSVNjcmlwdENvbnRyb2xsZXJDb2NvYTo6aW5zZXJ0QXR0YWNobWVudEZvckZp
bGVQYXRoKEpTU3RyaW5nUmVmIGZpbGVQYXRoLCBKU1N0cmluZ1JlZiBjb250ZW50VHlwZSwgSlNW
YWx1ZVJlZiBjYWxsYmFjaykKK3sKKyAgICB1bnNpZ25lZCBjYWxsYmFja0lEID0gbV9jb250ZXh0
LT5wcmVwYXJlRm9yQXN5bmNUYXNrKGNhbGxiYWNrLCBDYWxsYmFja1R5cGVOb25QZXJzaXN0ZW50
KTsKKworICAgIFJldGFpblB0cjxDRlVSTFJlZj4gdGVzdFVSTCA9IGFkb3B0Q0YoV0tVUkxDb3B5
Q0ZVUkwoa0NGQWxsb2NhdG9yRGVmYXVsdCwgVGVzdENvbnRyb2xsZXI6OnNpbmdsZXRvbigpLmN1
cnJlbnRUZXN0VVJMKCkpKTsKKyAgICBSZXRhaW5QdHI8TlNVUkw+IGF0dGFjaG1lbnRVUkwgPSBb
TlNVUkwgZmlsZVVSTFdpdGhQYXRoOnRvV1RGU3RyaW5nKHRvV0soZmlsZVBhdGgpKSByZWxhdGl2
ZVRvVVJMOihfX2JyaWRnZSBOU1VSTCAqKXRlc3RVUkwuZ2V0KCldOworCisgICAgYXV0byBmaWxl
V3JhcHBlciA9IGFkb3B0TlMoW1tOU0ZpbGVXcmFwcGVyIGFsbG9jXSBpbml0V2l0aFVSTDphdHRh
Y2htZW50VVJMLmdldCgpIG9wdGlvbnM6MCBlcnJvcjpuaWxdKTsKKyAgICBbd2ViVmlldygpIF9p
bnNlcnRBdHRhY2htZW50V2l0aEZpbGVXcmFwcGVyOmZpbGVXcmFwcGVyLmdldCgpIGNvbnRlbnRU
eXBlOnRvV1RGU3RyaW5nKHRvV0soY29udGVudFR5cGUpKSBjb21wbGV0aW9uOl4oQk9PTCBzdWNj
ZXNzKSB7CisgICAgICAgIGlmICghbV9jb250ZXh0KQorICAgICAgICAgICAgcmV0dXJuOworICAg
ICAgICBtX2NvbnRleHQtPmFzeW5jVGFza0NvbXBsZXRlKGNhbGxiYWNrSUQpOworICAgIH1dOwor
fQorCiB9IC8vIG5hbWVzcGFjZSBXVFIKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxv
ZyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwppbmRleCAzN2RmMGY5YmNjNjExZjQxY2VlODcwMmRk
NmQwNmY2YmJiZmRjM2YyLi5hOWMyYmFiM2YzYzM4ZmIzZWNiMTMxZjcxNTQyMGYzMDE1ZTU0YWI3
IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hh
bmdlTG9nCkBAIC0xLDMgKzEsMjcgQEAKKzIwMjAtMDktMDQgIFRpbSBIb3J0b24gIDx0aW1vdGh5
X2hvcnRvbkBhcHBsZS5jb20+CisKKyAgICAgICAgaU9TOiA8YXR0YWNobWVudD4ncyBRdWlja0xv
b2sgdGh1bWJuYWlscyBjYW4gYXBwZWFyIHNxdWlzaGVkCisgICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMTYyMDkKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVt
LzY3ODE3NzA2PgorCisgICAgICAgIFJldmlld2VkIGJ5IFdlbnNvbiBIc2llaC4KKworICAgICAg
ICAqIGZhc3QvYXR0YWNobWVudC9hdHRhY2htZW50LXRodW1ibmFpbC1wcmVzZXJ2ZXMtYXNwZWN0
LXJhdGlvLWV4cGVjdGVkLnR4dDogQWRkZWQuCisgICAgICAgICogZmFzdC9hdHRhY2htZW50L2F0
dGFjaG1lbnQtdGh1bWJuYWlsLXByZXNlcnZlcy1hc3BlY3QtcmF0aW8uaHRtbDogQWRkZWQuCisg
ICAgICAgICogZmFzdC9hdHRhY2htZW50L3Jlc291cmNlcy80MDB4MjAwLWNpcmNsZS5wbmc6IEFk
ZGVkLgorICAgICAgICAqIHBsYXRmb3JtL2lvcy9mYXN0L2F0dGFjaG1lbnQvYXR0YWNobWVudC10
aHVtYm5haWwtcHJlc2VydmVzLWFzcGVjdC1yYXRpby1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAg
ICAgICAqIHJlc291cmNlcy91aS1oZWxwZXIuanM6CisgICAgICAgICh3aW5kb3cuVUlIZWxwZXIu
aW5zZXJ0QXR0YWNobWVudEZvckZpbGVQYXRoKToKKyAgICAgICAgQWRkIGEgdGVzdCB0aGF0IGR1
bXBzIHRoZSB0aHVtYm5haWwgc2l6ZSBmb3IgYSA0MDB4MjAwIGF0dGFjaG1lbnQuCisgICAgICAg
IFdlIG9ubHkgcnVuIGl0IG9uIGlPUywgYmVjYXVzZSBvbiBtYWNPUywgUXVpY2tMb29rIGFsd2F5
cyByZXR1cm5zCisgICAgICAgIGFuIGltYWdlIG9mIHRoZSBzaXplIHdlIGFzayBmb3IgKDQwMHg0
MDApLCBwYWRkZWQgd2l0aCB3aGl0ZXNwYWNlLAorICAgICAgICBzbyB0aGUgcHJvYmxlbSBkb2Vz
IG5vdCByZXByb2R1Y2UgYW5kIHRoZSB0ZXN0IGRvZXNuJ3Qgd29yayByaWdodCB0aGVyZS4KKyAg
ICAgICAgT24gaU9TLCB0aGUgcmVzdWx0IHVzZWQgdG8gYmUgNDAweDQwMCBhbmQgbm93IGlzIDQw
MHgyMDAuCisgICAgICAgIAorICAgICAgICBJIHRyaWVkIGFuZCBmYWlsZWQgdG8gbWFrZSBhIG1v
cmUgdXNlZnVsIHRlc3QgKGEgcmVmIHRlc3QsIGFjdHVhbGx5CisgICAgICAgIHRlc3RpbmcgdGhl
IHByZXNlbnRhdGlvbikgYmVjYXVzZSBpdCdzIHF1aXRlIGhhcmQgdG8gbWF0Y2ggdGhlCisgICAg
ICAgIG5hdGl2ZSA8YXR0YWNobWVudD4gcGFpbnRpbmcuCisKIDIwMjAtMDktMDQgIENocmlzIER1
bWV6ICA8Y2R1bWV6QGFwcGxlLmNvbT4KIAogICAgICAgICBSRUdSRVNTSU9OKG1hY09TIEJpZyBT
dXIpIGh0dHBzOi8vbWFnZW50YS5naXRodWIuaW8vbG9maS1wbGF5ZXIvIGlzIGJyb2tlbgpkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvVGVzdEV4cGVjdGF0aW9ucyBiL0xheW91dFRlc3RzL1Rlc3RF
eHBlY3RhdGlvbnMKaW5kZXggZjhmMTQ2ZmQ0OTA5NTNjZWQ2NTRjYzNkMWIzZGEwNGQ4ZDg5MGJj
My4uODU3ODk1NmVlMTRmZjMxZDE2ODgwNzE0NTYzZTU3NTYzZWNiZTQ2NCAxMDA2NDQKLS0tIGEv
TGF5b3V0VGVzdHMvVGVzdEV4cGVjdGF0aW9ucworKysgYi9MYXlvdXRUZXN0cy9UZXN0RXhwZWN0
YXRpb25zCkBAIC0xODMsNiArMTgzLDcgQEAgZmFzdC9hdHRhY2htZW50L2F0dGFjaG1lbnQtc3Vi
dGl0bGUtcmVzaXplLmh0bWwgWyBTa2lwIF0KIGZhc3QvYXR0YWNobWVudC9hdHRhY2htZW50LXdy
YXBwaW5nLWFjdGlvbi5odG1sIFsgU2tpcCBdCiBmYXN0L2F0dGFjaG1lbnQvYXR0YWNobWVudC1i
b3JkZXJsZXNzLmh0bWwgWyBTa2lwIF0KIGZhc3QvYXR0YWNobWVudC9hdHRhY2htZW50LWR5bmFt
aWMtdHlwZS5odG1sIFsgU2tpcCBdCitmYXN0L2F0dGFjaG1lbnQvYXR0YWNobWVudC10aHVtYm5h
aWwtcHJlc2VydmVzLWFzcGVjdC1yYXRpby5odG1sIFsgU2tpcCBdCiBlZGl0aW5nL3NlbGVjdGlv
bi9jaGFyYWN0ZXItZ3JhbnVsYXJpdHktc2VsZWN0ZWQtcmFuZ2UtYWZ0ZXItZGlzbWlzc2luZy1z
ZWxlY3Rpb24uaHRtbCBbIFNraXAgXQogZWRpdGluZy9zZWxlY3Rpb24vY2hhcmFjdGVyLWdyYW51
bGFyaXR5LXNlbGVjdC10ZXh0LXdpdGgtY2xpY2staGFuZGxlci5odG1sIFsgU2tpcCBdCiBlZGl0
aW5nL3NlbGVjdGlvbi9jYXJldC1hZnRlci10YXAtaW4tZWRpdGFibGUtc2VsZWN0aW9uLmh0bWwg
WyBTa2lwIF0KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvYXR0YWNobWVudC9hdHRhY2ht
ZW50LXRodW1ibmFpbC1wcmVzZXJ2ZXMtYXNwZWN0LXJhdGlvLWV4cGVjdGVkLnR4dCBiL0xheW91
dFRlc3RzL2Zhc3QvYXR0YWNobWVudC9hdHRhY2htZW50LXRodW1ibmFpbC1wcmVzZXJ2ZXMtYXNw
ZWN0LXJhdGlvLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi44Y2NkYzY5NGUxNGZkMzgxZDQ4NTlj
MGI3Yzk2YmY5MDc4NjJmNzM3Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9h
dHRhY2htZW50L2F0dGFjaG1lbnQtdGh1bWJuYWlsLXByZXNlcnZlcy1hc3BlY3QtcmF0aW8tZXhw
ZWN0ZWQudHh0CkBAIC0wLDAgKzEgQEAKK0F0dGFjaG1lbnQgVGh1bWJuYWlsOiA0MDB4MjAwCmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L2F0dGFjaG1lbnQvYXR0YWNobWVudC10aHVtYm5h
aWwtcHJlc2VydmVzLWFzcGVjdC1yYXRpby5odG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9hdHRhY2ht
ZW50L2F0dGFjaG1lbnQtdGh1bWJuYWlsLXByZXNlcnZlcy1hc3BlY3QtcmF0aW8uaHRtbApuZXcg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwLi45MGI0ZmM4MmJhZmE5ODIxM2MyYTRhYTUyYjI5NDBjMzdlODUwYzkwCi0tLSAvZGV2
L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9hdHRhY2htZW50L2F0dGFjaG1lbnQtdGh1bWJu
YWlsLXByZXNlcnZlcy1hc3BlY3QtcmF0aW8uaHRtbApAQCAtMCwwICsxLDM2IEBACis8IURPQ1RZ
UEUgaHRtbD48IS0tIHdlYmtpdC10ZXN0LXJ1bm5lciBbIGVuYWJsZUF0dGFjaG1lbnRFbGVtZW50
PXRydWUgXSAtLT4KKzxodG1sPgorPGJvZHkgY29udGVudGVkaXRhYmxlPgorPHNjcmlwdCBzcmM9
Ii4uLy4uL3Jlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0i
Li4vLi4vcmVzb3VyY2VzL3VpLWhlbHBlci5qcyI+PC9zY3JpcHQ+Cis8c2NyaXB0PgorYXN5bmMg
ZnVuY3Rpb24gcnVuVGVzdCgpIHsKKyAgICBhd2FpdCBVSUhlbHBlci5hY3RpdmF0ZUF0KDEwLCAx
MCk7CisgICAgYXdhaXQgVUlIZWxwZXIuaW5zZXJ0QXR0YWNobWVudEZvckZpbGVQYXRoKCJyZXNv
dXJjZXMvNDAweDIwMC1jaXJjbGUucG5nIiwgImltYWdlL3BuZyIpOworCisgICAgZnVuY3Rpb24g
YXR0YWNobWVudFRodW1ibmFpbEluZm8oKSB7CisgICAgICAgIHJldHVybiB3aW5kb3cuaW50ZXJu
YWxzLmF0dGFjaG1lbnRUaHVtYm5haWxJbmZvKGRvY3VtZW50LmdldEVsZW1lbnRzQnlUYWdOYW1l
KCJhdHRhY2htZW50IilbMF0pOworICAgIH0KKworICAgIHRyeSB7CisgICAgICAgIGF0dGFjaG1l
bnRUaHVtYm5haWxJbmZvKCk7CisgICAgfSBjYXRjaCAoZSkgeworICAgICAgICBpZiAoZS5uYW1l
ID09ICJJbnZhbGlkQWNjZXNzRXJyb3IiKQorICAgICAgICAgICAgZG9jdW1lbnQuYm9keS5pbm5l
clRleHQgPSBgQXR0YWNobWVudCB0aHVtYm5haWxzIG5vdCBzdXBwb3J0ZWQuYDsKKyAgICAgICAg
ZWxzZQorICAgICAgICAgICAgZG9jdW1lbnQuYm9keS5pbm5lclRleHQgPSBlLm5hbWU7CisgICAg
fQorCisgICAgc2hvdWxkQmVjb21lRGlmZmVyZW50KCdhdHRhY2htZW50VGh1bWJuYWlsSW5mbygp
LndpZHRoJywgJzAnLCBmdW5jdGlvbiAoKSB7CisgICAgICAgIGxldCBpbmZvID0gYXR0YWNobWVu
dFRodW1ibmFpbEluZm8oKTsKKyAgICAgICAgZG9jdW1lbnQuYm9keS5pbm5lclRleHQgPSBgQXR0
YWNobWVudCBUaHVtYm5haWw6ICR7aW5mby53aWR0aH14JHtpbmZvLmhlaWdodH1gOworICAgICAg
ICB0ZXN0UnVubmVyLm5vdGlmeURvbmUoKTsKKyAgICB9KTsKK30KKwordGVzdFJ1bm5lci5kdW1w
QXNUZXh0KCk7Cit0ZXN0UnVubmVyLndhaXRVbnRpbERvbmUoKTsKK2FkZEV2ZW50TGlzdGVuZXIo
ImxvYWQiLCBydW5UZXN0KTsKKzwvc2NyaXB0PgorPC9ib2R5PgorPC9odG1sPgpkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvZmFzdC9hdHRhY2htZW50L3Jlc291cmNlcy80MDB4MjAwLWNpcmNsZS5w
bmcgYi9MYXlvdXRUZXN0cy9mYXN0L2F0dGFjaG1lbnQvcmVzb3VyY2VzLzQwMHgyMDAtY2lyY2xl
LnBuZwpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwLi5hMTJhNjRlMDQyNjhlYjk5YTA1MjAwZWM1NWExMTFiNzc4OTkwODhm
CkdJVCBiaW5hcnkgcGF0Y2gKbGl0ZXJhbCAxMDM3NAp6Y21ae0oxemNScWxLMEh1RjJOLVhabyVF
JW8jMjdzNUQ0eT9GaEg7YmNQQlVqZiltYEcwS3AtK3lBdWUkQy0+Zz4Kei10Szw7NFpxPl4+OF5p
T2NVZ0QhZ3NaRXtWVzUocmY8UGIpMSRrKnI1Q3xMdHY8SHc4ZiZZRUAtX303T2JRPkVmCnpEUmwp
WURYNi1PcW1fLUZCP3UlUm9+Vm5ZX2l+VVI+eUBVMEJubEt0ZHIyMnxOa3RuPkFSKyQ2Z3FqOHhq
QjYmVAp6VVMrRFU8I2FAYSVJbF5ySndBO2VRKWl9Mig3UX5DaEMwKyN7MUdGOGp9bU5qb3BfUllr
fW1XbDs8XyFpSE07MUYKejFSQjgtRjV5TytoQ3BAVypnbTNSU3cqVFRTakp7U0lDSD4pP0M9Y0hZ
e31LOz02UnJtJmN+RFVWPjxESzJPZkliCnpTK1Z9NyhwfV9XN2c1bEZibDQ8PCVSQU57ZFFiPVJq
aSRhUk5WO0l6I2heX3F7M0NRR3VAZ2wzSTxGXntzWU5NIwp6UXYzSG5mUWxwOyhtRkZKI3pye24j
V1BUIWYzWT9HREhrUEg5K253bHhjQ2RPeEdRYFEqYmhleVJLPENQKTdhPigKelhveSl3VVlqaDV6
NSFtfFRYQ3tfajE9PF4la0NkMD4teTR5NykoWiRxfnord14qQTxoPz5JUTNmcXEqRmk9Pk5fCno+
MCFKRzwhUTt4QnJOSVM0cmB7Xzh8TjRAa2grKDZwKn5GeE4/XzhJcnVsTkhWY3dQamNZdChCPjQ5
QDlOa3ojVQp6IW1rfG5qSiNsYCRVM2FNMGxSeFRQP2QxVV4lO35tel5oOUFJWX53Ukpre3tXbXZA
b31vRUJ2RDJKZkB6TmwhfkoKemYycWYyNChNRjg8RGZMIXpXYiFYcGVQQGJmP0F+dzw3WHI+TCts
d25LbTA5VUg/a3s8TCt8ckx3bE01dnBDZntFCnpoQzElXnZoe3ZjUDc3MEsrcSpjITg8Vnk8ZzRo
KCZAOzs8PDg1RW9edzxiazVFd0pDRnRhSkZFZ0VSUkRzMXVeMgp6TnhzV0soTlZPd3FURz5iIV9S
RTl1cU4oVGBLSnZ0bWAxfDI3ZDhtR0dNb3lRQSFlVDU1LW1RZ1NxV0gjTUcrS1oKekcyOHVnI3Be
dzJIRDJhcytHbmZHOyZgaDgqY31rbXhlMUJxMUNhSGt1ZVlwVE1JPFAyIWNlJFdhcGE3dHZgKnFk
CnpJQkh6NE5UZCZ8U1lnNTlxVEZtPUNSKWctSWdifUhJX35aZVZ6QGo2SUlpa1d0fXNeI25nUTUj
MVdaNFUob3RjUgp6YVZxUi1FZmF+OXFBd2pULVF8QWUwSUFOSCRGNFlCXkRTUGBiTiNmU3Eja3VN
V1I1XjArMW1jZFFfdnotYmxAeT4KeiZkfUwkKFY5S0Y7d3NvV1NmfFVwM3F6ODBaNH5kIVp7QVpR
M2MpQGBPeGZ0O3JRPSlKZzE5UHtGd3U0QlZHUXdYCnplYExWM1c2WCFqR3g2UGRJOXF9SmhEMj5z
fE5lKD49eHlGNHduN25UMm5GYlFARVY3MCpASTNkVWclV31aeSlVYQp6d1c8b1NycWo4JiZzKlAq
QD1YKFZoQFNmQCo+UU1hM3gjSSh1JHN0S2BnQytmblBjZDJkMSFAKT5kYTJVcmc/VCoKejlIM2N0
MUpzWTlWcCVfbnNeZVVlTnM/OFFNV14tSm9QNjNgSGt7QSV4aCZSfEhBRnZSdnx+eVY9eXJLTj97
c2xACnpiX2F7IWx4d3VNSEwrcCZObnVNSlJXIysmZm4/PmJ1Q0ZOYHprQ2NpJChBQl95N1BRREpe
dmFLdSNEYnVnV0QjbAp6bFFYZTRnYSZTLTx6Nz9lZi1tZ0FvJEteN2d3ZGJFTmtIKkZmak9ZeXtE
OHNBQSp6Tl5PQjBlNWdsKDlhSTt1YFUKem9lQTY9ZE9nZ0BncEQ3eC0tK1hkbn1Md3JmJHMjajcq
dHdCLVU3ZTBPMT4rRDlVU312aHQ0YzRnPm9qMGRPZ0M2Cno4WjZJJWA9TilEUUp5MyZUcGs7TjZI
UHhMZnZQa0hWP1phTDxjMyhfUS0oQXZ3MHdZazZLNWo0TU1DczVrKW84bAp6IzxNOXpAXkdJI0o4
b1BSYXIpMXh5SVFyX01xI1d7IXtiYkRTTyVlNChybG1rZSgrdz57dE47dSElZztvPWItO2kKeng/
I2VoJENMeWN0UTYyZyhGeEh1dDwkNlM4PWJBPkVrbkJ0ZCopMHgrTGdKQThyQVg0U3lVODFKQlky
OVo/KllVCnpAU2dofSNgfEU7NFAjYHRLI3REWFJpI3pqekdzeyRsZ1Bjbm9MIWgqbHdISVAkdjtz
fSFsWkxXJENHdnV1RlgoNgp6S0p2I21CczlifU0wKjkhRGYmcXNRcFU9TSg4JEchRl4yUnxaXmNJ
Xzk0UHE4X2JjY3M5T1l3S1V7biomQ3o4cGsKeihrY3lIM3xlazNaSktZRVp0aVRwanYoa3dUVVFH
SWpMZzhyRndENVg3QDA3ZjtHeEstb289aTJ0QjZqJHJ1ZD9HCnpZc3o0c2M7QTJqNiRTPGQ4VXt0
QUdsXkx3UmlzUGcxSVo1MGF+cj8+eSZxKDYkYkwkdjE9Zkc2a017YGwyKSM7RAp6RW40Xnl2fERv
TmNneUwrXk1MbjJgMlpJKj13IyhZNEN5bkpNYVlZQ1BDUWVMJiRUSFpvWElIREZWLSpnUj09cFcK
ek4reXNRbWk/STVKREhaSntuPWdiQVcwe2hfb1opdyQwdmBrU0RIc2xLTThBdit+ZnMkMXdSV3lH
Q3YzfHhUKT81CnpvMD0mcihTOzZMdnpqPHFYUE1SPztKVndwSCNYQHY2KlQjfXpqQUItPCN4SUZF
QUYhSkt6bztiYHQ0LUByVHR+Jgp6dC0kVEBGUmF+X3NWREM1N0RUPSZQSUdhbGI9X1l2ZUkzfnNw
IyRQPylYZ2YjUnpvYEpySUpqR1AzellieU00Tm0KeldFKjBHI2AqSlhXWWEmNTYxaWl7a3t8UEJo
X3pWIWhPSyE8WU0zSyFATmNCe0VxcUZrXmlAXz89fkJ0M0o1VyhnCnpieFlrKE1AK1Ihe21MTz9f
MHkpMDg7JCowZE8zJVghJlA4R3pnZGxvLWQ1UlVuUy1uTzErd2RoOD1WVitpYFF0Ywp6SzF6U1FB
LUg/LVR1K213bTQpbFl0UkFudiRFI0hSJGh0STNaRkJlOEdfeGFubWc/OG17LWR8OGs+eDdZQlVJ
QD0Kej42b3dKVVZYTHlZIyh7I0ZWdGp8diF2Q2ApTz5JeT9keTFGY05jbDNPUXcjNWclbTZHcTEj
ZSFZSjVgVHV3bEgpCno5b3tyfTQwJGxAMyhtS1VIPiEzO2tScDtJeHpYRUVqblJ3RGdHfVNkVDlR
O2ptI3FPOz5oPWImaFJwXiQmcWg4KQp6PiF9b3QzcHQpQnBOOysxQTx1SEIpPy07dUd9cldsbmJv
VkdPWEVoblpHI1c+TlIjR2V7WiFGKChQTFMhdnBCfkwKeiMjR3N1RTRWOFpEXyQpKEVtdGlvd1R8
NmtgdnYtTS07JGwoPj5saTtwWklvTXRCS0xLK3FFeWZCaFJ5IUx6OG8pCnpjPDVRXyVIQzw4WmY2
Tz1rMEdkfSYwK1o9OTdDdnd8Q0BoK1F5I21QZFJKZn1FMzxkR2B5S3V2P2g3PGd5ISkoOwp6O25X
Y1VvV0t2a3AkV21ZIVRaNTxBcjhwP0x7Pk9TIzUmSnIkZDdTRXgkZFJtRFhCUWtFUEdoS3E5bCkl
WitrP2EKemsjUEJiLTsrMTZAWUBVLT0tMHMxczRuaVMrTVZNdCpOdHdhdXFTNTt7fjhWRVNXS0Ri
eiVzS3BGWTA+fmpOKWhZCnpGemp1eGNGdFMzPmRwTFUtS1E0NUxqSkBgJCMzZjIpaGdYQUVvMWdG
JlQ2NzNlP1J8dmthRG16WmxOIWxPdzlNYgp6MDUxPkVTeTc2S2slIVM7JlVQJkwyZytPZVREOGoq
Sj5qISRuZ3hZUGRaUUZPWlVPN19hbUtXbFVOMTJWYVZGdj4KekomSnl2blIjaXFXVnQhYFNvLWl+
Y05fUD1YR0YjPSEqTjQ+XylyPT0jJnlyN1c5ZXBiWXlFWmY1RHlfQE5aUUNPCnokfTh4JXlOPmtD
Y0c+a2okR2xMQG9vayV5KW1FSkFxempnazhfaiYmcTw1a0I8Yl4+JilQJE1NZzRSbU8rYWl4KQp6
RG9kZndGdSVBS05ASyN1REwmPnlKVFpwbmAwI2pJY3ohOEsrKClaIU18Kkw1QlYxJXdGSCtCMSp2
bjNmUWh6SHkKemVsT0pEdUd0Pig7WjdJdkpzYDdDejBEfFdPbVpiMHdQITxSYF5naDYkbVlCM2N3
d3wla0BocWp4UVAmbnJiMGwjCno7JigzZjg7aHMrbGJRWm14eS13ZHlsajFoOXxeeWBhREcrJlpa
SHtGVno1XjtkN15ydnQ+Q19aQElCY3ReUEF8MAp6VmF9d3c3dVNZdUhWRG9pRVA2KjBWYSVUODZS
KSkhXzZQVD9OKUtpI1hBO1Y4LVgwfj81ZV9YNV5IJGAyZU9kT0YKekloeDUpJiN+QFo/YDwxS0Uo
Ull7QW9HPHJpN3NvMlUlTiktKj93VjtOP3AxTlo/ZU48dHhVXy0peSEkUnlFZD0zCno8d0RwM1lR
NHhwUl8oKjArT25BVDNId2l0cml9fkwhTz9tbj1WbiExVXYxcUotc1JSNyNCei0oeDh1fT9vdVRF
Sgp6UipYODt4PndoR0MoS0omU0lrJUt6WGd0Vih2aGdKeFhDWD9fM2wzWVZvTUI3MzAyJldYKEQh
Q2BqdlpJQUNlRjwKeihgfUIpJDgqY2B7QzRfZ0hkRjM8dj0tVTRQfTRvcHVlbVBzaGttcl4+eGBK
SlVCT2lFYkFgIS1MZkBqaz81MX08CnppK2YzMnZEVHk2NyglfUxXT3N7YTdtcXY5aE5yRGd6akxw
OVo8VnI9X3RRa3V1cFlNMDdDc1k8QntkRGRQQTJ7Twp6K3Q5fDJlOTdtfmM2QjtfUmBQM1I+dUJx
e0o9eDMxbmU9Y3okQ1dnJSh4ZHVTa04oVUlwXjZpTiNpTGVUd2Bgfk8KelAxc0NPYiFaPH0+QVA9
Rns+SkluMyomTj4oUDxSQFZyfCNLUG4lbVdaemtLV0s4KT4tNFB+V15SMih9VUBsTyFYCnpjeUlM
djZDU1lAdT16R2VKcEZqZ0o1TzlISEdWfER0IWVjMl5TcGFJZkFHa3N2X2pJaGJkITgldFJoaytn
MC1eTQp6Y0huUCgtZyg7bkhGfXcxJXdPXkd2Yz1QWXFOTCkhPTMlRmdFIU96PmRndG18JCh3Vnpx
WEw5VG5pZFEwTlk2WUsKenFlS0FGMzRoYXxGQ0ducTNvSVYzZko0NWdGQjQ/TDQ1SjZ0UmxhPWVi
NSNYWlF0K2x6NFBjeUAyWkgzMEE7c3duCno+TXVWRWNhTGNJXzc7TiFFUzZXRT0mKFNqY0smTSo1
M04tWDU4Mkc3bTl0Pn1uYV9lak9kcFdQJnxkezY/MXNRewp6a3AxWXRUPHF9KXlqeXtAZ2c7KXJk
bylIMGkleXtvNnMtZWxrMGVWeTF1R1I1NUVJWncxfGZpUEwyeTZ8NEUldz4KekJwYCZwKzh+ZjNu
RHBPbU8pJGVoRyFQSWQpQ0w2cTR+K3J2e1BYISEqOHUyJG9eV3Y/QVNCPW83eClJfUs+a0d5Cnpq
PiY9aFJ+c3x7akRhTHhOK35EKyZ6SSZkbVg7MiNaeWVwcS1HNmlmOVZreG5gbVBgbDBxdmhKU1Y1
RUs2YTwyfQp6K2kyO3o+OFU2U25tZ0xGbnAheFRTK2FXQkpOQEFVNjd+YFZuKWE0JXJjZl8/SXxv
LW1GQT1LMEM8S0FfcEtkbFAKej13QnBtWiQrcnxSTWVxVGp4THJeVVJIS2lifUNVK0M9QEV9VnFx
bnlESn1hQzlDI0M8ZGdKRWlCKkAwKj5GTFNwCnokO0ltRVYkSEBPQVJ4ZlQmZEo4ZiRwVFFZeE96
TGRuUj5BfXhLalZrPFg/UUdFblVyQllARk98OTM3eTRfP250SQp6eTFSKWBRVC1BMEA2WEAhd0Ro
dzFrMGJ9emYwaEwta25QVjE4d1Y+cCt5NGJ+diQ2WEIhMlhRPDRmfF9kZX5UMFQKeiElUkB5KXpV
QEUoY2EkRCFBPGwoOFc7WGMoKkdGeiZwaUpJc0ByJjMrVVpOJTA3ekcwT2BARFVlQkElUXtgYilU
CnozRHhAI2x1TGx+ZT9iNCsoMF95ZVMlamRQaXchVlMoPzQxaTxxJjUzZkJPRDZ5ezR0QnFuLU83
YSV+NDJIJk09aQp6QXBmaVRBQ3hmTEFIKTFOTDtkWHFmQXM9eEFjYHU/X0hVT0dNZVN2fnAkMzc3
YXVsUWB3N2tHYW5QfDBJKTg3NTwKenVBXyN9JnZDYjZrI244Y3U8Xm0qQVYtYkxre1I2fElie1Ax
PUFUOzRYfDtwNGxsZUJ5KWpCbWd4ZTdAZnJRPWcmCnpiNitAWURRJDlqY3loO1FpMTBQUVFoM0tR
QE9Ub14laEFLJTEoeG0lcEk+dmhydXdHIy0me1N+JnkpJGRaaHNlOAp6eHhVTEA2VDk7Y2JsJkty
bTR0IWRwJiY1d1dzTGFmQHlmKStNMGEkUiZ8ZntqbTI7fTlHJGdhWkZATHtiV2BQaFYKemRfRFlk
QT1tKXt2KyhUTDY8aFMpJGxAU0tEfTRhJEdLKU1yN35yKFoxNGkkOGQhejZpQVFDQDhGQGQmUF90
UjRYCnp7Sm01X2FBeVlaO3o5d1VBSEVQR2BJR3JHZytKKW0mKmJUR2VOK05BVFBmOUpUSWBmKDJK
WiVpX1JPMkA1PTkxQwp6PWMkbj5ua1EkNDdWMnI2WTF5QXs1ZyFVRllESTRBZD55YEJiMWZoWnNU
MVJUUWx5WHlpblZnVlp5Iz1IRUVaUDcKemdGQ3kySUJgNH1SVTZJRm1SYmFITUFZe2lUekhuLURi
NlVfSl5yZGFSUC1SYkFEfD83OTheI1pMRmdZaV4kKzJzCnpCRllwTXF2TDtsT1ZzPlh5bl99KDZz
QmJCbGxITShxVT0rJGZAYCYmUExJLU5yYlBrR3d5fXVmQHw0VDZsMUA/ZAp6KWxNYGArKHV5ZDFm
SHJZTVN1RV5mSEAtYEAqNnRyeG40WWRHXkx2MCRLRXp3MTU1M0RTekRyIUdmbi0+N3MtSikKek1K
MyFzN2V1NjRQP2ImI1ZoWXQqXkJ9cyhRK3lqbW40U298JCF1M0g7YCl0RDR6MiZmYCFtYDVoISEk
Mm1mYGdlCnpXLThMSVJjQ0NgZ3VeY1NGRWtyZ3hFO3RUPEdaO21XWmx9aDUjdU0/MnVFJmtua2ZL
dGhgSCZjN1RBWHZxfUw4bQp6blVoclhqMTY1YGxueDBHcTQ8MHxPaHtmdypmVzJfWmZGJn1Ha0FH
PVVraEFnak1aU2w/QEkqR21IRFhlV0d2eSUKelchUH5TbyslcUY9dytBZmNeSj5HKUlRTUY+dX5a
Mnpke148JlE4KmIkLXZ0XkJTNmZSWFA9Y2EkfUVkUF96PTJ2CnplV3Y3bzA2KWdHRjtMNV5oR2pp
P3hJNSZncktfXyshfT1jaTJod2A8T3pObmM8JDA1XnpMKWchQyp1KmZqOT0pWgp6U0t4VSUpJihT
UFRIIzVlIUQrS2wjRnRRWUhPTTd3RCEjM01yflpNfEYtYFJocF5zbU9aZGpPWnlrX2MxSTd4VG8K
ek5yQHU5RTB3ZEtYZlZZQGF0eU87OE1fIThqR2l3RTY7U3F1RkxRMnItWDI1SnBPKVgpZj5vdWYw
amNPYEJTflQjCnozVT5OcGg7MC1md2FuQitPLWlXX1NYRGw7ISk1TCh7TmRzMCV9c04kdnp2Xm8t
bTlla2lkNCRaaWh9THt3ckdiVwp6PkxBbGxjVlNVPG08ITsjVFhBT1h1YikrTl49Mn4mR2QjV2Va
Q1Iwb3laMCt4PFpkPFl3Pk91clJqZU9YbGc/OzMKekU3djZNamdQTWYlOU9DdCpVQntOPnomfkdN
cUI2bVMycj9pJiokVXAmZ3N0dHQkeH1qIVRmNFpQcFdebylzS3hWCnpOIUk5KSpQWDZTNXJ0dGYl
fkh4V3VPRSR9aWRrNF9sZ30tQHtRMFpsKGZ2Z0NgO1YyMiY1MiFFVm0kUW5tb3luTwp6bVZqM2RA
NlM7MzJgVFJHYnFVfE51TjdJWCtPJVFmSTFPRkY2WkUhb1QtZCUmNzxUMHdFTGtIPGxERU1NLTNi
TGsKelBRV2doJXRRPWtLTnh5MHpQN0x6KFF4PGU/QXMmIUF0eGkmKT0ye1hucjApWFhLQ1glbDtO
UlNWfCtmVTQpTWh3CnpSbWJ7c21ReGZBaT53UUFCa3N7M0tvUVI+PnRjQylsWlNzYndrSm07Xzdr
cHptdCpnTyE0OD0tYUMoUDc2OWVxNAp6dEV0UDVOOGUqeT5fKlZMekI8SUhLYzJnel5gP0J9OFNi
QEVDSER0d3o+T0VfVFR3MEIlSVpBaXBPVUFRYXB1VzsKeiF7IVAkREYpdmdyKitmMVhka253I09w
a3Jpdz9aVC1qeFF5P1pGMnBae2ZWKklNN3s2ZWo9IWdJKE0+a1ZRWkZ0Cnp7TWtDPFZ0IW84JHc/
R0hOUUE8KTBSTl9JczlyU24pOUMyWUAzck9rSjtJek5zJCtyR0RoNFluY2I1OHpfbiltUAp6RUY2
KUVBVmtRPzY0QSlRNms9STMhYkdfWClPTS1NLWJIckYmRFpaKFN8YG01O2I8R2E8OCs4fihrdC03
Um80dkoKelRpKiFSQnFqUSpJKTQtfC02T25sZWwtNCRlcFIlbl97cnt6VnR7RE9tdiM0elJnZTdY
djIpTWlpP2ZQRmBMR3VlCnp4UnJ1Vy0wd3J9cVUjNXwkTUkjWk97dzkzS0k7KHdJbDFhaDI9VHJj
ekolUi1fT01STG9kdEV8ZWVrdFJ3QFhzYAp6aj5gYk1rJU5nZExieSM2c2slTEN1b1glZDxEVWUj
KlZnSnptRGhJOERecHVsVD88MGp1YzRPY2BBQygxS2N7KUUKejdxaTxsMSlodEJGRWlAO3FBbTMr
K1hxOG5uKCp1fm5paiYjNCk1SlpobzhpZyh1OXlTQDk5b1NVcH1qPCEkRjBRCnowRzFZXmFwc3Ah
WnZSWDJLNm5SRHs9RkU/bkJkKER3KURHPz5kK3NsS3dlSmArb3tOQTdQZCs8ZHEzY2NuIWwzVAp6
QSQ0PVlwX2IydV9uSXA8PUl0c0pIb0x5RnglMShAUHlAXndkcnEkN0RqY3YoVlFTU1FxQjdKZTBL
XmptJDhpNzcKekVaT2Bpb2NRWi1GPT1+NiZ+ZiMqYyNRWTgqOVg8MmBqYmx6RWp1e0MpPDlqUVJM
fj9hJnYxPzMjKXhuWClrRFF1Cnp4Vz1nKiZSUkA9M1RlRSFieDA4cHBuSWBXMGheb2FkJD9KIWtn
RmM/I00/QmMxMj0+NiRQNDdgPnklOX1QaD5IQQp6T3IzYG5qJndnRFpMO1c/dV57MiEpbCE/Qkk1
aG5Ee19PTWJLbF9aezZXX1lieHQze0dLZkxeZDZZfGB6QGZsaTIKemljIWtuV2lDSnp4cXk5MUFD
b3JXeWVtKGFtZnZOSk5wIWZDZEBFR0NgISskYmVsIzViXko0SVMpIXUocEVpJTd2CnpkWDthZTBQ
JkVYQHB9b2RSc2RNNWRrUmhaUylUaTFhbld6dFZwbT5jdVpkRGtMKD9EMyY3a3dNI2tufGI+MURZ
cQp6ZEFaVThEWVUxP0hAP2J8OSUkXnMpQnNiTzI2N0w5NzQtSm5uZ35ZaFZqN3JIYnhAKSZHbTYk
PTYrMVNxcSZBZ3UKekd4V0tYMmVVKytJVWU8Q29YdD9LTylVfHo9UW1VNnZGIXE3UDNIRDwqWFQ1
RFoyKEZLMUcxT2ljdXJhWG14bW9YCnpqZGBGSmI0TEhnSE9LeEoxMUV1RkZ2UjBebjkrRlpJdWY5
NXhKK0k4O1ZzWF9tMlM5I24lTVFINnBlUXRTdmJBXgp6ZkQkJUg3QkYzQlNYPk1AS05XbkZeQjgx
OTYmdXBpM1Z3K0pxKUREKXRLQWZqaz0hfjNyNFRBQUpQUERGLXtDVHwKek5TPlg3SzU/Pzd4ZiMo
Y3J1KDk5O3k4bU9sb3QlYmFhKlRoPHEqSUhRTl9SU1F6ckZ7ZUtoaChocm9RV14kNk9QCnprRz8l
JGVlMCEpbyp6PkEpfCpNbCN6fHNyJV4pa3pSVSF1c1kpZmVyIShSdTZiNTxNOzhocjdRRnY2JUZh
QXFHfAp6Sig4ITxNVG49bmh9N3okSGNiRmIzJilgcWI0bGtlPWJgY1N5fSplQyNEMTNRSXp2RmRy
YCh6LT8zR1g5SmFAbSsKej1GejRLNSpJYVhCPmR+aD5fbl9NY00+VzNaN0oqeWFaSXJNIyk0WWty
VD8zJGs/RThMUy00Uzg5KzhUUkVeKUg+Cno2O3w0REdCKT1ZJW9GM1A5anUhK3hgemJ+RzlXbC1D
QUJKSkVtWmh3U3R5JllyU3R0bCoje1puUHs4JkEkXnJWZgp6NGZhZjR3RDBKWUN+P3I+RnxvWkdK
RUdJISp2WSZEVmY8QTJEJX5EZ2p0YWEyMns8SlUoakNqcG4/YWkqJChyWSkKemd5PW49bH1zb3ti
VExjenRlOEYpUXdxXyhLd0o7WUBJYVU8dS1kfX5MQDlTJWpuNmt5O18pR3lLcGwxJkplRXB6Cno8
flFWZF5WZ1ZRa3lmSX10X2gxOGdtQkslTzB2Y1JSUVg2WUtUP21RMjhoRG8zPj8oeip7ezM3PG8q
aCMmZ1d6IQp6ZFFvQUtGbip8b1lqcHghS0FobGZUdndEdXk4aUEzaX04ZkpwYztBKSpnSmlyN3Q9
eGxSVFFVRVlMeEw3KnlMX2AKejY3VyVzV3N4aXtuR245fV5LSkh0Q21ie1kwZVY3eiFaYTNtPlFE
VXh4MUFNWEBHaHl8Xn5NWjNMfkNEb18xUkVECnp0b3okVihoTUVUSkd2OX44NmN1S2JibG4zOEFg
bkdIa01lKV5mfXxlPyMyQnsrJlkzbno4Z1YlRGQ9VzljRHZPdAp6amAjS3JWZDM0Nk9QRCR8QyR7
NiY4SEY7TmR9LWcwYUJtN1F5N1hDcklCQiluOFM+STFXeG48ZHthZWI8REltbUwKenlfVn5uYjRI
ISRBMXR1emN1JndqZUhlWj5jJV5jP051YiV2O3t5PCFNajNeJVh6eDBYa0RgZkdINm1eVnVxd3Nn
Cno4dFRlN1U3QWVLTyh+IXEoSyZEb1RCNG9lVDA/WnpFSH47Tj40U1FJaiVwXmw4bW92ZWVlaXE0
Nkt1YzFGeD83PAp6YTZFaD05PHNNSDdCQkJxZ21yO15OUHxZX1BNckBxUHh0ND1ZVTY3TnhCMT5R
Q1k7Nj5AQHxTbVJKbDFMV0lPRWIKektzUSpmMXNyMG9ibiZSRWdBJVhqYT9lfWpWdyVkI3hCM01S
eWw+RUBPV2V1fShKfj1tTGdkM1cxMDd+KyM5U0BHCnpnJlRRVDAyPSVpanA0OT9KMFBDdlRSS34m
PGAhfUA3Zmh0Tz03UjF1R2kzbWIwcTJXcmlyPTIjdiRaLU0kVyZuKwp6bE4/MnUhUGY3SWxFa1BF
QXNpRClKOT1vdVl0NnI+WHY2MkE3UE9Pdzs+Mj5HalJtSnNvTjA2bWkpQlhySylzbUAKelUjdnBk
bmA7S2hsYE0+c3MzKkJJZEJ9LVVfOXtwUSlUPTltRT93WGVLMihmQzBfakNRSDdfUUBDdHFPNENL
cSVNCnp0QiRAckk4N3RPey1LO3hhWEN4WUhkfCM1TWN1LXAhRVNUPW85KFNCUkhwSUdUb34rKWRX
cmxlZjRGeWJfPz15Sgp6QUstNWg8cnFHdCNqcFQyLUU7NCM7NFNGRkBnTX18LXdmNUwwbUVyZll4
aiVhT3ReMSRHUGxBdkI+bDF0Zyl2TT0KeihZXlNhaWIkVDIjK0tJdllNWn1MIzktVk1CQDllY1Q8
ckVARGdxISYxVEBiP1g2aX1WUU1aVD9vYHlqYk1wN2IoCnpEOUJFPD1uUGlAJX1NQTAwczNWayYj
U0NPPHI1fDw7Qml8STVsNGJoMmFjMSF6TDNOTStkX1M2X3AkZW8qT1g/Iwp6JFpTKSV0Tmskc2Qm
UklmaUJXOHNJJEw0UUF+NFlqeGhWOUl4fEpTUjhUZXV0MTglOCp1fmNCKmh6bmc9XztlUF4Keipl
eyQpdkVhaUFWWjJQPnUkfGRkVkJFQ1UkKVQ3PlotLW9xbFM1YTJyYFJFbWNmZ2wxRCVaUEAoP2x6
ZCliekorCnp0e31ecntwRz1jTGF5QmJ2KDVrcGRoel5vNXF2fDR5RD42Um5BdC1WTipgbFgpKD9N
clk9ek0mQHUqK3FMSHFZVwp6MiVYUkdLZHFWK3VjSVJgU3dzM21EWSR+WD9ydU1jYHlUQHNsJXYh
QkxYK3loJDJKOzByaVlfcDQ5UU1AezQoQiUKeiE2KGVIIVdhcyVwTFBBPjNDc2Yoezk2em9sRDE2
UEo0NSNJJC1eWkRRYUZ2VFROPDc2UmFtSS0rJkRsdkxSMEBOCnpHZENVWmhnYT5+S0RMeVlWWX5Y
TWhCWGV6UTg0fS1ZV3U7ei1jPkdfMVV+YTR0X09VJlBqZU5RakBIfnxnUnxndgp6UDAzSXZnTDQr
fD4rSUN2PG1LOyNEYSZedkxGaHdeKChtTUBNZjNPbHFLTHclYW1UXyZKIXpneklBd3huelgrazQK
ekwhO2daQENYbG92YXhaWkEpUm5hP0QlMlEwRipMQERyM3pwP0FVVE5DdjAkKm4qNVdvY0prZllr
amRfZzNFJW1LCnp2fXtMalF6I34qRDBNI1pGcmA0SXZTa1BkYzd6YU0zRDRTdUBISXdHY0F8QjQr
NUJ9fTcpS31rQHpZdmQ0anF0bgp6REo3MStGV2FtTVV8TEV1dkV1TTIhayk3WnJmdmhkbnZOMDNs
Xz5sMmcwYU4pTE9qOT9mR2wke0Z1SHtwaXJpeHEKekR2NXNuQz1RRX1xV1BCK1Z5dWA+KSZnblA1
RD88fW9UYlNMNGt2eG4mI0UkY0lXQWNKK2pHU2NNcj5hY1Y4PXZaCnpQdmdyYiUze2gzdFYoK2Ne
JDEwdE9XbU9rO2BrJT80b0Y5TDNqQ0x8a0wmM3dFSXBKbT9uTiNWWmpzMEVWUW4tKAp6NE1SaCs8
ZngxfSN4NnhDeDJHRG9KTj1CR0JnNTNUZHQrKXgwQDRkV2RtRD5hTllha1c9Zn0xOEZRREtoX30l
RXEKekB8RGxJe288SDFAQElGR1U5T0Y8S0FTeiVoS2VwUFVmZ0A+Z3dMPj1lPipkV0YwR0cwNmxV
c3F5PnQ2O09jVkIrCnoxdHZoNTJjQ301d09TPlRQdEI9ND1IPEdsPTdNYk5tOUlWZnJVfEooMkA8
a28hbW1Jd0hIVjQ+NmdjYT9MUTczPQp6bU5EUCRETjdJIXh7T3RtJkVfJSgheGEhP2RvJSgmeV44
fGxhcz95NXt2cWQySm1qZ3MwUCtAUng2QGRJajBvMiQKejs0ckNhNFlxWl5SbXZrUiRSXlYkb3Bn
UyNoSnViSnNAUj9gX3RQQWo2KCsoISM2JjNiZXB7aEZVIU0pKW4lQi1BCnpTP0lzLT9sYnp6OU1F
SldaMSUjPFRBRmIxNFcwWStPR3dkfTJ2OF80IyNeT0wzZDktODBSKGMtUm9rb00oUlF7Uwp6M1Mx
e2A1KWF9SGpWSHhAXnhhPGl0QiZkKSRiI1RYTk47YTVlbTl1cFg1YnFjWDIta2dTZmQhPzhQVXJq
YzR2JTQKel9lMjFQQCg1UkZwOTkpKWo2JWxKQGpXdHl1TzlIS219KG54M1AoPVhgXnJTfWdgMzRI
P0RnPiVPXmVBWWN+VmI1CnpHaCVBXmx+IypRXjhKe3U1ej1IYndIeGt3KmtnYHdgMHVgd0o5eFZ2
VXlOP2NuTjhFMSgzaVlVejd4OU92TX45agp6KTw/XzxvRVFmNFUofSk0K0lsNXIqdk1MR0shMT16
Mjw3KyZmRXcwT2JqWD92JG5wR0M3TEpuKkZLJUM0enVqZEsKemp1enUlJXdYSitQV0RqX207d0BM
JiY3ZXNgfWd3M3deRzlHeEk9MzEtPl8lQWkjflQyWHIpSjd1V2l8KTxyQyhZCno2Xip+a3oyV0tI
UWgoMHp7PGBgPyM5X2RIYGI3bFNmSEFWZ3k4eklXSWhwdntiLWFRVjE2fUZXdHY/MUNsa2I5IQp6
IV5wOzUmWXBWbmNeZj90S1dmM09eZHBucVZvN0x1VitsM1BjVjY8VmxhMX1YTntKY2tycllfMzVy
OTEtSnsyd08Kek5ZQUR5bjcmYFB4eW08Kz0tMyhgYWZ4VkA7WTVITzBYfStVYjFJeVA/Y3NnN1Y7
MV5iNkthQztvI1hvMnF6OFhpCnprXj9YcDJVQ19+UDNCJVVafDQ1OUYyPH5Rc0syayRDUiFyfmgq
MHdIJn1ubFZSUn4mNHhrS1g4dXhtTUNYYz45aAp6SmF1Yn5tYC1uPFpxTWw5aDtkPT9aaT56JWJ5
NGMoRC1RUTZlKExXUWFCMDxOVkBWazNLMiZIbDFWbDlFM29uaE8KejRYOEF9PU9yKDtfRXFkP3Vl
RndRLTZFK2BDRH5yZno3aVNYcFBqXzJZPH59TD1RQCtVe2l1Vjg3YyRgYnE1bUZrCnpSaXAyIVA8
PS0+KiprJXc8VClsN2ViWl56YCpPYkgpN1dpM2FWQyNtJGs0YHpKQ1VLcVhmNWhWRXo0eGY/QmBp
Swp6YSRPZXNJRGsrWV9GSEd7d15YalZySXNlXyglVzBfcDtiMz48N3pxNG1wb2tHK28+cWZpVm9D
NSZ9fGd+azdSVjwKelF9cjxUalk2RDROYDx4RSZmSUw3T3NlM1cpKkd7MD9CPFFAVFdYRjlAMXEh
P2RZT2Y1eyoofTRCeXtpKlZgWEVlCnpBKSo1NSl5OGtsPyN3YE0yNzs+NSYqbzVmMGBaSHpCTz9z
NDYoXnpWWlhMU1pPYT5va3g3SX5GKjskTVAlQXM4UAp6I1RQZ15EOWxRPjQ0LTxWZWwkX3RXJm53
R2JMfkV9UH5tTSsqTmJ9O1orUnktQUpVJnlvI0JyKER1dm9XVldOZG0KelpqNitMbzVoJCUrQmZK
QSlMYmVQaHF+dkEpZ2x9amwoWEI5dldPe0ZaZ3xMQWZnbHlWI0dDO1JPXjk0TlUzdDUwCnoxNTJp
eWlKWUJBd001NFpFP2MtbSFyMW1CJUVkcWsmOFZ+bE1oYEojTz5FZjEqcFJBaEk+RCU3PTxRYnA5
U2RyOQp6d1kqQzVFbXhJaWN8NHd8QEp2OVZSPkd8am01ZntJUyQtJGt7Y1k+Ulo8TCNwYH1abEda
OT5xT1FWXippKTRsO20KemZAVWFIVF87SzReYFJDfm4wNFNScjsqVWxvbG1FZHNmJGhfIVVoZXgx
YnU0TD1hO1h1aERSQilAcl9zc3JMKkhpCnp3OyM4RjhPSDtqdEl8WCFMfkNPRyklZE1MczMyRlBg
MWEwOG9jcktIT2JHPG09TS1tMXloSF9MWD5FU04mfHE8MAp6ekApbCNifHR0bD1Tfkh5XkVMODl5
N085THFaRTQ1Y3oxMlZjO2lyVmFfJSZlZWpZUD0mazRoPTxmfnQhMWFLd2EKekFYJUFXYVR5c18k
MWN9clBXM0dXVilTVUooRjRBTndxcCFoYlcyczhDPyhGeT10WlZ2aTRzRV5LSnZpRDF8Xz5rCnox
dj1RYkJIVSlKYWEpdm5YVy14cj9jOEZgUjZvNXxZa01feyFxVXUzdjhsTUFkfFlHMCQ/KSh+UTdG
djk1SVdtawp6XjkyNEdEX01XREhTIztMUjxAY2BmN3xEMD55Vj0rS05uOUZNYCFTQnwxMnp0b0N6
UWBEP1ohdVlOYXhYPj4xVXMKempQe0p6dHslOUllLVYrTFNVeTx6bnRVdH5ZeU1aQ0Qjbj1GJCl2
THVgJFNeeEtzT0dndiV6XklFe1B4d2xXY3NsCnpnIX1NOFI7VENWbVpkcUooI0I0fl4hPiRXR1Nl
aH1WT2x7c0UyNTNjSSpoYXVLWG9KSHNMMDYzTGItU2Q+PVNPfgp6Z31qfF95Wj5TQUU2Wj5Xb1ZS
cXFaS3VMX3ZFKyElY0lRQy0oeEo0ekBVQGNka01wYVZLQVk8ZEt2TDUlSEJ1X0EKenhhM24yc0cw
MT9vS0gpV2NkaFFaSD07VS11aUt4ZnRCY1UrKVUhYj84dSlFZXtSdkdDSD1QOyprX0o+b1g7Vn0p
CnpLeG5BVWUwPnk+OE82S2s3Q0VCVnVOcVU8cTR7WH12WUlrSlUofTU1SF9yIXByRmYxe3ZLTzhL
PXRDQTZAQ2c2RAp6JE5QPjtXYWxzfUQzVzMrbX1YdFQ7aDtFXjlgKmExTU5tbTx0O2xqTFArTlNy
SEMoV2I+anV0Uz12Y0NZJGl5dHYKei07TTdVUmorRUNIS0Q3eHpfZSszMjVEKGM8ZTJlRXQxUXlu
YyF7WDEzZ2J1PXRFVnJeNDs0PWkrVVZ5fk1aWi17CnolMm1JKkl6Rmc5RzFwMWxDbmJ5SjwoUmpr
eVcxdEtlVyk4bExYYWJnZjVWMExtZ3Fyd0RHJm10MDlHWWh0UV5HJQp6VWJ5N3B0JkR5KU01UCh5
Q2tQbypefm5lQiNmXlooWUxyQHUwQVUwLUFFRnthdW8rWVdnbTlDcnhgblU8e0BrSHMKejBFWSlz
e3VUdUFwRykpdGZWZzEoNiFXaShkcDlZLSZrISprQnx2e0o7Y1dvRncmODdvYC1eU35zRUNfai1M
TCopCnpwYEhkck5FKmZvZkN1Uks7M3V7Z280dkVZe3JOUWo9I29MWDdyVlY8VnJncD5eIXhMWm4x
WU98XmpBcmYhMmJmRQpDYF5paUkKCmxpdGVyYWwgMApIY21WP2QwMDAwMQoKZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL3BsYXRmb3JtL2lvcy9UZXN0RXhwZWN0YXRpb25zIGIvTGF5b3V0VGVzdHMv
cGxhdGZvcm0vaW9zL1Rlc3RFeHBlY3RhdGlvbnMKaW5kZXggM2NkNGIyODM3NjYzNzBlM2FiODVi
ZTUzNzE3YjRiZmUxZjQwNTcxYy4uYjg3ZDllMmMyMjg0ZjFiZGZlNzIwNGM5MWQ1MTU0OTc0MWJl
YWI2MyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vaW9zL1Rlc3RFeHBlY3RhdGlv
bnMKKysrIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vaW9zL1Rlc3RFeHBlY3RhdGlvbnMKQEAgLTI1
MjMsNiArMjUyMyw3IEBAIGltcG9ydGVkL3czYy93ZWItcGxhdGZvcm0tdGVzdHMvZG9tL2V2ZW50
cy9zY3JvbGxpbmcgWyBQYXNzIF0KIGZhc3QvYXR0YWNobWVudC9hdHRhY2htZW50LXdyYXBwaW5n
LWFjdGlvbi5odG1sIFsgUGFzcyBdCiBmYXN0L2F0dGFjaG1lbnQvYXR0YWNobWVudC1ib3JkZXJs
ZXNzLmh0bWwgWyBQYXNzIF0KIGZhc3QvYXR0YWNobWVudC9hdHRhY2htZW50LWR5bmFtaWMtdHlw
ZS5odG1sIFsgUGFzcyBdCitmYXN0L2F0dGFjaG1lbnQvYXR0YWNobWVudC10aHVtYm5haWwtcHJl
c2VydmVzLWFzcGVjdC1yYXRpby5odG1sIFsgUGFzcyBdCiBmYXN0L2ltYWdlcy9wZGYtYXMtaW1h
Z2UtZGVzdC1yZWN0LWNoYW5nZS5odG1sIFsgUGFzcyBdCiAKIGZhc3QvZXZlbnRzL3BhZ2Utdmlz
aWJpbGl0eS1pZnJhbWUtbW92ZS10ZXN0Lmh0bWwgWyBTa2lwIF0KZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL3Jlc291cmNlcy91aS1oZWxwZXIuanMgYi9MYXlvdXRUZXN0cy9yZXNvdXJjZXMvdWkt
aGVscGVyLmpzCmluZGV4IDQ3YmZkNDUyYWYyMzRhZmUxYzJjNjQ0YjJkZDhkMGFiYTlkNGM2YjAu
LjI1NDkzZWNiOGQzMzEwZTFkOWI3NmU0MDBlM2M4ZmY3MzFmZjI1OGEgMTAwNjQ0Ci0tLSBhL0xh
eW91dFRlc3RzL3Jlc291cmNlcy91aS1oZWxwZXIuanMKKysrIGIvTGF5b3V0VGVzdHMvcmVzb3Vy
Y2VzL3VpLWhlbHBlci5qcwpAQCAtMTAwMiw2ICsxMDAyLDE5IEBAIHdpbmRvdy5VSUhlbHBlciA9
IGNsYXNzIFVJSGVscGVyIHsKICAgICAgICAgfSk7CiAgICAgfQogCisgICAgc3RhdGljIGluc2Vy
dEF0dGFjaG1lbnRGb3JGaWxlUGF0aChwYXRoLCBjb250ZW50VHlwZSkKKyAgICB7CisgICAgICAg
IGlmICghdGhpcy5pc1dlYktpdDIoKSkKKyAgICAgICAgICAgIHJldHVybiBQcm9taXNlLnJlc29s
dmUoKTsKKworICAgICAgICByZXR1cm4gbmV3IFByb21pc2UocmVzb2x2ZSA9PiB7CisgICAgICAg
ICAgICB0ZXN0UnVubmVyLnJ1blVJU2NyaXB0KGAKKyAgICAgICAgICAgICAgICB1aUNvbnRyb2xs
ZXIuaW5zZXJ0QXR0YWNobWVudEZvckZpbGVQYXRoKCcke3BhdGh9JywgJyR7Y29udGVudFR5cGV9
JywgZnVuY3Rpb24oKSB7CisgICAgICAgICAgICAgICAgICAgIHVpQ29udHJvbGxlci51aVNjcmlw
dENvbXBsZXRlKCk7CisgICAgICAgICAgICAgICAgfSk7YCwgcmVzb2x2ZSk7CisgICAgICAgIH0p
OworICAgIH0KKwogICAgIHN0YXRpYyBzZXRNaW5pbXVtRWZmZWN0aXZlV2lkdGgoZWZmZWN0aXZl
V2lkdGgpCiAgICAgewogICAgICAgICBpZiAoIXRoaXMuaXNXZWJLaXQyKCkpCg==
</data>

          </attachment>
      

    </bug>

</bugzilla>