<?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>122000</bug_id>
          
          <creation_ts>2013-09-26 17:45:59 -0700</creation_ts>
          <short_desc>[GStreamer] Support &quot;chapter&quot; text tracks</short_desc>
          <delta_ts>2013-10-01 09:25:39 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>Media</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>All</rep_platform>
          <op_sys>All</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>0</everconfirmed>
          <reporter name="Brendan Long">b.long</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>b.long</cc>
    
    <cc>commit-queue</cc>
    
    <cc>eric.carlson</cc>
    
    <cc>glenn</cc>
    
    <cc>gustavo</cc>
    
    <cc>jer.noble</cc>
    
    <cc>menard</cc>
    
    <cc>mrobinson</cc>
    
    <cc>pnormand</cc>
    
    <cc>webkit-ews</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>933806</commentid>
    <comment_count>0</comment_count>
    <who name="Brendan Long">b.long</who>
    <bug_when>2013-09-26 17:45:59 -0700</bug_when>
    <thetext>It looks like the way to do this is with GstToc:

http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/gstreamer-GstToc.html#gst-toc-entry-get-uid

We can get these from GstMessages:

http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/gstreamer-GstMessage.html#gst-message-parse-toc

It looks like Matroska currently has the best support, but there&apos;s a TODO saying mp4 should support it too.

mkvmerge can create these:

http://www.bunkus.org/videotools/mkvtoolnix/doc/mkvmerge.html#mkvmerge.chapters

I have a *very* basic patch (adding chapters to counting-subtitled-srt.mkv and printing out chapter contents) here. It&apos;s not even remotely done, but it might be useful for someone else who wants to finish this:

https://github.com/cablelabs/webkit/commits/ruih/handle-table-of-contents</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>934646</commentid>
    <comment_count>1</comment_count>
      <attachid>213009</attachid>
    <who name="Brendan Long">b.long</who>
    <bug_when>2013-09-30 09:56:30 -0700</bug_when>
    <thetext>Created attachment 213009
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>934650</commentid>
    <comment_count>2</comment_count>
      <attachid>213009</attachid>
    <who name="Early Warning System Bot">webkit-ews</who>
    <bug_when>2013-09-30 10:03:02 -0700</bug_when>
    <thetext>Comment on attachment 213009
Patch

Attachment 213009 did not pass qt-ews (qt):
Output: http://webkit-queues.appspot.com/results/2755120</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>934652</commentid>
    <comment_count>3</comment_count>
      <attachid>213009</attachid>
    <who name="Early Warning System Bot">webkit-ews</who>
    <bug_when>2013-09-30 10:03:18 -0700</bug_when>
    <thetext>Comment on attachment 213009
Patch

Attachment 213009 did not pass qt-wk2-ews (qt-wk2):
Output: http://webkit-queues.appspot.com/results/2815091</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>934682</commentid>
    <comment_count>4</comment_count>
      <attachid>213014</attachid>
    <who name="Brendan Long">b.long</who>
    <bug_when>2013-09-30 11:10:20 -0700</bug_when>
    <thetext>Created attachment 213014
Add ENABLE(VIDEO_TRACK) checks</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>935016</commentid>
    <comment_count>5</comment_count>
      <attachid>213014</attachid>
    <who name="Eric Carlson">eric.carlson</who>
    <bug_when>2013-10-01 08:08:39 -0700</bug_when>
    <thetext>Comment on attachment 213014
Add ENABLE(VIDEO_TRACK) checks

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

&gt; Source/WebCore/platform/graphics/gstreamer/InbandMetadataTextTrackPrivateGStreamer.h:36
&gt; +class InbandMetadataTextTrackPrivateGStreamer : public InbandTextTrackPrivate {

Nit: FINAL

&gt; LayoutTests/media/in-band-cues.js:185
&gt; +        for (var i = 1; i &lt; numInBandTracks + 1; ++i) {
&gt; +          compareTracks(&quot;video.textTracks[&quot; + (i + 1) + &quot;]&quot;, &quot;inbandTrack&quot; + i);
&gt; +        }

Nit: braces aren&apos;t necessary here</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>935018</commentid>
    <comment_count>6</comment_count>
    <who name="Brendan Long">b.long</who>
    <bug_when>2013-10-01 08:12:46 -0700</bug_when>
    <thetext>(In reply to comment #5)
&gt; Nit: braces aren&apos;t necessary here

I&apos;m surprised the style checker let me do that. Since you set it to review+, I assume you don&apos;t think it&apos;s worth fixing and resubmitting?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>935019</commentid>
    <comment_count>7</comment_count>
    <who name="Brendan Long">b.long</who>
    <bug_when>2013-10-01 08:14:12 -0700</bug_when>
    <thetext>Or is it intentionally still &quot;commit-queue?&quot; so someone else can review it?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>935021</commentid>
    <comment_count>8</comment_count>
    <who name="Eric Carlson">eric.carlson</who>
    <bug_when>2013-10-01 08:19:23 -0700</bug_when>
    <thetext>(In reply to comment #7)
&gt; Or is it intentionally still &quot;commit-queue?&quot; so someone else can review it?

You can update the patch and upload as &quot;Patch for landing&quot; and anyone will cq+ it.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>935027</commentid>
    <comment_count>9</comment_count>
      <attachid>213086</attachid>
    <who name="Brendan Long">b.long</who>
    <bug_when>2013-10-01 08:49:31 -0700</bug_when>
    <thetext>Created attachment 213086
Patch for landing

Removed superfluous braces</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>935028</commentid>
    <comment_count>10</comment_count>
      <attachid>213086</attachid>
    <who name="Eric Carlson">eric.carlson</who>
    <bug_when>2013-10-01 08:56:24 -0700</bug_when>
    <thetext>Comment on attachment 213086
Patch for landing

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

&gt; Source/WebCore/platform/graphics/gstreamer/InbandMetadataTextTrackPrivateGStreamer.h:36
&gt; +class InbandMetadataTextTrackPrivateGStreamer : public InbandTextTrackPrivate {

You forgot to mark this FINAL, but it is OK to fix this in a follow-up.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>935052</commentid>
    <comment_count>11</comment_count>
      <attachid>213086</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2013-10-01 09:25:35 -0700</bug_when>
    <thetext>Comment on attachment 213086
Patch for landing

Clearing flags on attachment: 213086

Committed r156713: &lt;http://trac.webkit.org/changeset/156713&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>935053</commentid>
    <comment_count>12</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2013-10-01 09:25:39 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>213009</attachid>
            <date>2013-09-30 09:56:30 -0700</date>
            <delta_ts>2013-09-30 11:10:15 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-122000-20130930105629.patch</filename>
            <type>text/plain</type>
            <size>34560</size>
            <attacher name="Brendan Long">b.long</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTU2NTA0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYzJlNGZmYWJiZjM3MGMx
NmJjYjEzYWMzMTEzYWEyZjUyYjk3YzgxOC4uZWUwMjRmOGMwMzhjOWMyODliNWQ3NTE1Yzk2MmM5
OTBlNTUyMmZkMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE5IEBACisyMDEzLTA5LTMwICBCcmVu
ZGFuIExvbmcgIDxiLmxvbmdAY2FibGVsYWJzLmNvbT4KKworICAgICAgICBbR1N0cmVhbWVyXSBT
dXBwb3J0ICJjaGFwdGVyIiB0ZXh0IHRyYWNrcworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0
Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTIyMDAwCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZ
IChPT1BTISkuCisKKyAgICAgICAgVGVzdDogbWVkaWEvdHJhY2svaW4tYmFuZC90cmFjay1pbi1i
YW5kLW1rdi1jaGFwdGVycy5odG1sCisKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9nc3Ry
ZWFtZXIvSW5iYW5kTWV0YWRhdGFUZXh0VHJhY2tQcml2YXRlR1N0cmVhbWVyLmg6IE5ldyBjbGFz
cywgbmVlZGVkIGZvciBjdWVzIHRoYXQgYXJlbid0IGFzc29jaWF0ZWQgd2l0aCBHc3RQYWRzLgor
ICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL2dzdHJlYW1lci9NZWRpYVBsYXllclByaXZhdGVH
U3RyZWFtZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6TWVkaWFQbGF5ZXJQcml2YXRlR1N0cmVh
bWVyOjpoYW5kbGVNZXNzYWdlKTogQ2hlY2sgZm9yIHRhYmxlIG9mIGNvbnRlbnRzIG1lc3NhZ2Vz
LgorICAgICAgICAoV2ViQ29yZTo6TWVkaWFQbGF5ZXJQcml2YXRlR1N0cmVhbWVyOjpwcm9jZXNz
VGFibGVPZkNvbnRlbnRzKTogUGFyc2UgdGFibGUgb2YgY29udGVudHMgbWVzc2FnZXMgaW50byB0
ZXh0IHRyYWNrcy4KKyAgICAgICAgKFdlYkNvcmU6Ok1lZGlhUGxheWVyUHJpdmF0ZUdTdHJlYW1l
cjo6cHJvY2Vzc1RhYmxlT2ZDb250ZW50c0VudHJ5KTogUmVjdXJzaXZlIG1ldGhvZCBmb3IgcGFy
c2luZyBhbGwgb2YgdGhlIFRPQyBlbnRyaWVzLgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNz
L2dzdHJlYW1lci9NZWRpYVBsYXllclByaXZhdGVHU3RyZWFtZXIuaDogQWRkIHRoZSBwcm9jZXNz
VGFibGVPZkNvbnRlbnRzIGZ1bmN0aW9ucy4KKwogMjAxMy0wOS0yNiAgSnVsaWVuIEJyaWFuY2Vh
dSAgPGpicmlhbmNlQGNpc2NvLmNvbT4KIAogICAgICAgICBbUXRdIEZpeCBidWlsZCBhZnRlciBy
MTU2NDg3LgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3N0
cmVhbWVyL0luYmFuZE1ldGFkYXRhVGV4dFRyYWNrUHJpdmF0ZUdTdHJlYW1lci5oIGIvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3N0cmVhbWVyL0luYmFuZE1ldGFkYXRhVGV4dFRy
YWNrUHJpdmF0ZUdTdHJlYW1lci5oCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjJkYjY1ZTRmNWM2YTJhYjFjMWVlNWY1
MWU0OGYzNzNjODZhNmUwNDEKLS0tIC9kZXYvbnVsbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9ncmFwaGljcy9nc3RyZWFtZXIvSW5iYW5kTWV0YWRhdGFUZXh0VHJhY2tQcml2YXRlR1N0
cmVhbWVyLmgKQEAgLTAsMCArMSw2MiBAQAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxMyBDYWJs
ZSBUZWxldmlzaW9uIExhYm9yYXRvcmllcywgSW5jLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFu
ZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9k
aWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25k
aXRpb25zCisgKiBhcmUgbWV0OgorICoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2Ug
Y29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMg
bGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBS
ZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNv
cHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZv
bGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3Ro
ZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElT
IFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIFRIRSBDT1BZUklHSFQgSE9MREVSUyBBTkQgQ09OVFJJ
QlVUT1JTIGBgQVMgSVMnJyBBTkQgQU5ZCisgKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElF
UywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVECisgKiBXQVJSQU5U
SUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBP
U0UgQVJFCisgKiBESVNDTEFJTUVELiBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBJTkMuIE9SIElU
UyBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkKKyAqIERJUkVDVCwgSU5ESVJFQ1QsIElO
Q0lERU5UQUwsIFNQRUNJQUwsIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTCisg
KiAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRV
VEUgR09PRFMgT1IgU0VSVklDRVM7CisgKiBMT1NTIE9GIFVTRSwgREFUQSwgT1IgUFJPRklUUzsg
T1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04KKyAqIEFOWSBU
SEVPUlkgT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZ
LCBPUiBUT1JUCisgKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5H
IElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUworICogU09GVFdBUkUsIEVWRU4gSUYg
QURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisgKi8KKworI2lmbmRl
ZiBJbmJhbmRNZXRhZGF0YVRleHRUcmFja1ByaXZhdGVHU3RyZWFtZXJfaAorI2RlZmluZSBJbmJh
bmRNZXRhZGF0YVRleHRUcmFja1ByaXZhdGVHU3RyZWFtZXJfaAorCisjaWYgRU5BQkxFKFZJREVP
KSAmJiBVU0UoR1NUUkVBTUVSKSAmJiBFTkFCTEUoVklERU9fVFJBQ0spICYmIGRlZmluZWQoR1NU
X0FQSV9WRVJTSU9OXzEpCisKKyNpbmNsdWRlICJHUmVmUHRyR1N0cmVhbWVyLmgiCisjaW5jbHVk
ZSAiSW5iYW5kVGV4dFRyYWNrUHJpdmF0ZS5oIgorCituYW1lc3BhY2UgV2ViQ29yZSB7CisKK2Ns
YXNzIEluYmFuZE1ldGFkYXRhVGV4dFRyYWNrUHJpdmF0ZUdTdHJlYW1lciA6IHB1YmxpYyBJbmJh
bmRUZXh0VHJhY2tQcml2YXRlIHsKK3B1YmxpYzoKKyAgICBzdGF0aWMgUGFzc1JlZlB0cjxJbmJh
bmRNZXRhZGF0YVRleHRUcmFja1ByaXZhdGVHU3RyZWFtZXI+IGNyZWF0ZShLaW5kIGtpbmQpCisg
ICAgeworICAgICAgICByZXR1cm4gYWRvcHRSZWYobmV3IEluYmFuZE1ldGFkYXRhVGV4dFRyYWNr
UHJpdmF0ZUdTdHJlYW1lcihraW5kKSk7CisgICAgfQorCisgICAgfkluYmFuZE1ldGFkYXRhVGV4
dFRyYWNrUHJpdmF0ZUdTdHJlYW1lcigpIHsgfQorCisgICAgdmlydHVhbCBLaW5kIGtpbmQoKSBj
b25zdCBPVkVSUklERSB7IHJldHVybiBtX2tpbmQ7IH0KKworcHJpdmF0ZToKKyAgICBJbmJhbmRN
ZXRhZGF0YVRleHRUcmFja1ByaXZhdGVHU3RyZWFtZXIoS2luZCBraW5kKQorICAgICAgICA6IElu
YmFuZFRleHRUcmFja1ByaXZhdGUoR2VuZXJpYykKKyAgICAgICAgLCBtX2tpbmQoa2luZCkKKyAg
ICB7CisKKyAgICB9CisKKyAgICBLaW5kIG1fa2luZDsKK307CisKK30gLy8gbmFtZXNwYWNlIFdl
YkNvcmUKKworI2VuZGlmIC8vIEVOQUJMRShWSURFTykgJiYgVVNFKEdTVFJFQU1FUikgJiYgRU5B
QkxFKFZJREVPX1RSQUNLKSAmJiBkZWZpbmVkKEdTVF9BUElfVkVSU0lPTl8xKQorCisjZW5kaWYg
Ly8gSW5iYW5kTWV0YWRhdGFUZXh0VHJhY2tQcml2YXRlR1N0cmVhbWVyX2gKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2dzdHJlYW1lci9NZWRpYVBsYXllclBy
aXZhdGVHU3RyZWFtZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3N0
cmVhbWVyL01lZGlhUGxheWVyUHJpdmF0ZUdTdHJlYW1lci5jcHAKaW5kZXggMWI3YzU3OTI1ZDU5
MGM1MDYxNmQ0ZjVkNWE3MGM2M2I1NmQ4ZDdiYS4uYzg5MTFmMjI2MjQyODNjOTkwMGFmNmRmNDdh
NWU3YzIzZDdjODgwNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhp
Y3MvZ3N0cmVhbWVyL01lZGlhUGxheWVyUHJpdmF0ZUdTdHJlYW1lci5jcHAKKysrIGIvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3N0cmVhbWVyL01lZGlhUGxheWVyUHJpdmF0ZUdT
dHJlYW1lci5jcHAKQEAgLTQzLDYgKzQzLDcgQEAKICNpbmNsdWRlIDx3dGYvdGV4dC9DU3RyaW5n
Lmg+CiAKICNpZiBFTkFCTEUoVklERU9fVFJBQ0spICYmIGRlZmluZWQoR1NUX0FQSV9WRVJTSU9O
XzEpCisjaW5jbHVkZSAiSW5iYW5kTWV0YWRhdGFUZXh0VHJhY2tQcml2YXRlR1N0cmVhbWVyLmgi
CiAjaW5jbHVkZSAiSW5iYW5kVGV4dFRyYWNrUHJpdmF0ZUdTdHJlYW1lci5oIgogI2luY2x1ZGUg
IlRleHRDb21iaW5lckdTdHJlYW1lci5oIgogI2luY2x1ZGUgIlRleHRTaW5rR1N0cmVhbWVyLmgi
CkBAIC05NTgsNiArOTU5LDkgQEAgZ2Jvb2xlYW4gTWVkaWFQbGF5ZXJQcml2YXRlR1N0cmVhbWVy
OjpoYW5kbGVNZXNzYWdlKEdzdE1lc3NhZ2UqIG1lc3NhZ2UpCiAgICAgICAgICAgICBnX2ZyZWUo
ZGV0YWlsKTsKICAgICAgICAgfQogICAgICAgICBicmVhazsKKyAgICBjYXNlIEdTVF9NRVNTQUdF
X1RPQzoKKyAgICAgICAgcHJvY2Vzc1RhYmxlT2ZDb250ZW50cyhtZXNzYWdlKTsKKyAgICAgICAg
YnJlYWs7CiAgICAgZGVmYXVsdDoKICAgICAgICAgTE9HX01FRElBX01FU1NBR0UoIlVuaGFuZGxl
ZCBHU3RyZWFtZXIgbWVzc2FnZSB0eXBlOiAlcyIsCiAgICAgICAgICAgICAgICAgICAgIEdTVF9N
RVNTQUdFX1RZUEVfTkFNRShtZXNzYWdlKSk7CkBAIC05ODYsNiArOTkwLDU0IEBAIHZvaWQgTWVk
aWFQbGF5ZXJQcml2YXRlR1N0cmVhbWVyOjpwcm9jZXNzQnVmZmVyaW5nU3RhdHMoR3N0TWVzc2Fn
ZSogbWVzc2FnZSkKICAgICB1cGRhdGVTdGF0ZXMoKTsKIH0KIAordm9pZCBNZWRpYVBsYXllclBy
aXZhdGVHU3RyZWFtZXI6OnByb2Nlc3NUYWJsZU9mQ29udGVudHMoR3N0TWVzc2FnZSogbWVzc2Fn
ZSkKK3sKKyAgICBpZiAobV9jaGFwdGVyc1RyYWNrKQorICAgICAgICBtX3BsYXllci0+cmVtb3Zl
VGV4dFRyYWNrKG1fY2hhcHRlcnNUcmFjayk7CisKKyAgICBtX2NoYXB0ZXJzVHJhY2sgPSBJbmJh
bmRNZXRhZGF0YVRleHRUcmFja1ByaXZhdGVHU3RyZWFtZXI6OmNyZWF0ZShJbmJhbmRUZXh0VHJh
Y2tQcml2YXRlOjpDaGFwdGVycyk7CisgICAgbV9wbGF5ZXItPmFkZFRleHRUcmFjayhtX2NoYXB0
ZXJzVHJhY2spOworCisgICAgR3N0VG9jKiB0b2M7CisgICAgZ2Jvb2xlYW4gdXBkYXRlZDsKKyAg
ICBnc3RfbWVzc2FnZV9wYXJzZV90b2MobWVzc2FnZSwgJnRvYywgJnVwZGF0ZWQpOworICAgIEFT
U0VSVCh0b2MpOworCisgICAgZm9yIChHTGlzdCogaSA9IGdzdF90b2NfZ2V0X2VudHJpZXModG9j
KTsgaTsgaSA9IGktPm5leHQpCisgICAgICAgIHByb2Nlc3NUYWJsZU9mQ29udGVudHNFbnRyeShz
dGF0aWNfY2FzdDxHc3RUb2NFbnRyeSo+KGktPmRhdGEpLCAwKTsKKworICAgIGdzdF90b2NfdW5y
ZWYodG9jKTsKK30KKwordm9pZCBNZWRpYVBsYXllclByaXZhdGVHU3RyZWFtZXI6OnByb2Nlc3NU
YWJsZU9mQ29udGVudHNFbnRyeShHc3RUb2NFbnRyeSogZW50cnksIEdzdFRvY0VudHJ5KiBwYXJl
bnQpCit7CisgICAgQVNTRVJUKGVudHJ5KTsKKworICAgIFJlZlB0cjxHZW5lcmljQ3VlRGF0YT4g
Y3VlID0gR2VuZXJpY0N1ZURhdGE6OmNyZWF0ZSgpOworCisgICAgZ2ludDY0IHN0YXJ0ID0gLTEs
IHN0b3AgPSAtMTsKKyAgICBnc3RfdG9jX2VudHJ5X2dldF9zdGFydF9zdG9wX3RpbWVzKGVudHJ5
LCAmc3RhcnQsICZzdG9wKTsKKyAgICBpZiAoc3RhcnQgIT0gLTEpCisgICAgICAgIGN1ZS0+c2V0
U3RhcnRUaW1lKHN0YXRpY19jYXN0PGRvdWJsZT4oc3RhcnQpIC8gR1NUX1NFQ09ORCk7CisgICAg
aWYgKHN0b3AgIT0gLTEpCisgICAgICAgIGN1ZS0+c2V0RW5kVGltZShzdGF0aWNfY2FzdDxkb3Vi
bGU+KHN0b3ApIC8gR1NUX1NFQ09ORCk7CisKKyAgICBHc3RUYWdMaXN0KiB0YWdzID0gZ3N0X3Rv
Y19lbnRyeV9nZXRfdGFncyhlbnRyeSk7CisgICAgaWYgKHRhZ3MpIHsKKyAgICAgICAgZ2NoYXIq
IHRpdGxlID0gIDA7CisgICAgICAgIGdzdF90YWdfbGlzdF9nZXRfc3RyaW5nKHRhZ3MsIEdTVF9U
QUdfVElUTEUsICZ0aXRsZSk7CisgICAgICAgIGlmICh0aXRsZSkgeworICAgICAgICAgICAgY3Vl
LT5zZXRDb250ZW50KHRpdGxlKTsKKyAgICAgICAgICAgIGdfZnJlZSh0aXRsZSk7CisgICAgICAg
IH0KKyAgICB9CisKKyAgICBtX2NoYXB0ZXJzVHJhY2stPmNsaWVudCgpLT5hZGRHZW5lcmljQ3Vl
KG1fY2hhcHRlcnNUcmFjay5nZXQoKSwgY3VlLnJlbGVhc2UoKSk7CisKKyAgICBmb3IgKEdMaXN0
KiBpID0gZ3N0X3RvY19lbnRyeV9nZXRfc3ViX2VudHJpZXMoZW50cnkpOyBpOyBpID0gaS0+bmV4
dCkKKyAgICAgICAgcHJvY2Vzc1RhYmxlT2ZDb250ZW50c0VudHJ5KHN0YXRpY19jYXN0PEdzdFRv
Y0VudHJ5Kj4oaS0+ZGF0YSksIGVudHJ5KTsKK30KKwogdm9pZCBNZWRpYVBsYXllclByaXZhdGVH
U3RyZWFtZXI6OmZpbGxUaW1lckZpcmVkKFRpbWVyPE1lZGlhUGxheWVyUHJpdmF0ZUdTdHJlYW1l
cj4qKQogewogICAgIEdzdFF1ZXJ5KiBxdWVyeSA9IGdzdF9xdWVyeV9uZXdfYnVmZmVyaW5nKEdT
VF9GT1JNQVRfUEVSQ0VOVCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9n
cmFwaGljcy9nc3RyZWFtZXIvTWVkaWFQbGF5ZXJQcml2YXRlR1N0cmVhbWVyLmggYi9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9nc3RyZWFtZXIvTWVkaWFQbGF5ZXJQcml2YXRlR1N0
cmVhbWVyLmgKaW5kZXggZDdmNmVkNjhkMmRkOTEyNWI5MzY0NGJjZTAxYmM5NWFjZGExOTNmNy4u
ZDI3NzJiNmIwZjc5OTBjYzBhMzE2YTJhMWQxOTdkOTVmY2NhODZhNiAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3N0cmVhbWVyL01lZGlhUGxheWVyUHJpdmF0
ZUdTdHJlYW1lci5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2dzdHJl
YW1lci9NZWRpYVBsYXllclByaXZhdGVHU3RyZWFtZXIuaApAQCAtMTM1LDYgKzEzNSw4IEBAIHBy
aXZhdGU6CiAKICAgICB2b2lkIHNldERvd25sb2FkQnVmZmVyaW5nKCk7CiAgICAgdm9pZCBwcm9j
ZXNzQnVmZmVyaW5nU3RhdHMoR3N0TWVzc2FnZSopOworICAgIHZvaWQgcHJvY2Vzc1RhYmxlT2ZD
b250ZW50cyhHc3RNZXNzYWdlKik7CisgICAgdm9pZCBwcm9jZXNzVGFibGVPZkNvbnRlbnRzRW50
cnkoR3N0VG9jRW50cnkqLCBHc3RUb2NFbnRyeSogcGFyZW50KTsKIAogICAgIHZpcnR1YWwgU3Ry
aW5nIGVuZ2luZURlc2NyaXB0aW9uKCkgY29uc3QgeyByZXR1cm4gIkdTdHJlYW1lciI7IH0KICAg
ICB2aXJ0dWFsIGJvb2wgaXNMaXZlU3RyZWFtKCkgY29uc3QgeyByZXR1cm4gbV9pc1N0cmVhbWlu
ZzsgfQpAQCAtMTg3LDYgKzE4OSw3IEBAIHByaXZhdGU6CiAgICAgYm9vbCBtX21pc3NpbmdQbHVn
aW5zOwogI2lmIEVOQUJMRShWSURFT19UUkFDSykgJiYgZGVmaW5lZChHU1RfQVBJX1ZFUlNJT05f
MSkKICAgICBWZWN0b3I8UmVmUHRyPEluYmFuZFRleHRUcmFja1ByaXZhdGVHU3RyZWFtZXI+ID4g
bV90ZXh0VHJhY2tzOworICAgIFJlZlB0cjxJbmJhbmRUZXh0VHJhY2tQcml2YXRlPiBtX2NoYXB0
ZXJzVHJhY2s7CiAjZW5kaWYKIH07CiB9CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9DaGFuZ2VM
b2cgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKaW5kZXggMDhhMTIwNWVjY2FiNDUyNDBlNTI1YTQz
NGZlOTA5OTAwNzg4MWRhNi4uMWJiOTZjMTg2Yzk3ZjBlNGU5Yzc1OTMwM2VjZWQ3OTc1YmU0YjJh
YiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3RzL0No
YW5nZUxvZwpAQCAtMSwzICsxLDMzIEBACisyMDEzLTA5LTMwICBCcmVuZGFuIExvbmcgIDxiLmxv
bmdAY2FibGVsYWJzLmNvbT4KKworICAgICAgICBbR1N0cmVhbWVyXSBTdXBwb3J0ICJjaGFwdGVy
IiB0ZXh0IHRyYWNrcworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9MTIyMDAwCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAg
ICAgICAgKiBtZWRpYS9jb250ZW50L2NvdW50aW5nLXN1YnRpdGxlZC1zcnQubWt2OiBBZGRlZCBj
aGFwdGVycyBtZXRhZGF0YS4KKyAgICAgICAgKiBtZWRpYS90cmFjay9pbi1iYW5kL3RyYWNrLWlu
LWJhbmQtbWt2LWNoYXB0ZXJzLWV4cGVjdGVkLnR4dDogTmV3IHRlc3QsIHNpbWlsYXIgdG8gY3Vl
cy1hZGRlZC1vbmUsIGJ1dCB1c2VzICJjaGFwdGVycyIgdHJhY2suCisgICAgICAgICogbWVkaWEv
dHJhY2svaW4tYmFuZC90cmFjay1pbi1iYW5kLW1rdi1jaGFwdGVycy5odG1sOiBTYW1lLgorICAg
ICAgICAqIG1lZGlhL2luLWJhbmQtY3Vlcy5qczogVXBkYXRlZCB0ZXN0cyB0byBoYW5kbGUgdGhl
IG5ldyAiY2hhcHRlcnMiIHRyYWNrLgorICAgICAgICAqIG1lZGlhL3RyYWNrL2luLWJhbmQvdHJh
Y2staW4tYmFuZC1rYXRlLW9nZy1jdWVzLWFkZGVkLW9uY2UtZXhwZWN0ZWQudHh0OiBTYW1lLgor
ICAgICAgICAqIG1lZGlhL3RyYWNrL2luLWJhbmQvdHJhY2staW4tYmFuZC1rYXRlLW9nZy1jdWVz
LWFkZGVkLW9uY2UuaHRtbDogU2FtZS4KKyAgICAgICAgKiBtZWRpYS90cmFjay9pbi1iYW5kL3Ry
YWNrLWluLWJhbmQta2F0ZS1vZ2ctbW9kZS1leHBlY3RlZC50eHQ6IFNhbWUuCisgICAgICAgICog
bWVkaWEvdHJhY2svaW4tYmFuZC90cmFjay1pbi1iYW5kLWthdGUtb2dnLW1vZGUuaHRtbDogU2Ft
ZS4KKyAgICAgICAgKiBtZWRpYS90cmFjay9pbi1iYW5kL3RyYWNrLWluLWJhbmQta2F0ZS1vZ2ct
c3R5bGUtZXhwZWN0ZWQudHh0OiBTYW1lLgorICAgICAgICAqIG1lZGlhL3RyYWNrL2luLWJhbmQv
dHJhY2staW4tYmFuZC1rYXRlLW9nZy10cmFjay1vcmRlci1leHBlY3RlZC50eHQ6IFNhbWUuCisg
ICAgICAgICogbWVkaWEvdHJhY2svaW4tYmFuZC90cmFjay1pbi1iYW5kLWthdGUtb2dnLXRyYWNr
LW9yZGVyLmh0bWw6IFNhbWUuCisgICAgICAgICogbWVkaWEvdHJhY2svaW4tYmFuZC90cmFjay1p
bi1iYW5kLXNydC1ta3YtY3Vlcy1hZGRlZC1vbmNlLWV4cGVjdGVkLnR4dDogU2FtZS4KKyAgICAg
ICAgKiBtZWRpYS90cmFjay9pbi1iYW5kL3RyYWNrLWluLWJhbmQtc3J0LW1rdi1jdWVzLWFkZGVk
LW9uY2UuaHRtbDogU2FtZS4KKyAgICAgICAgKiBtZWRpYS90cmFjay9pbi1iYW5kL3RyYWNrLWlu
LWJhbmQtc3J0LW1rdi1raW5kLWV4cGVjdGVkLnR4dDogU2FtZS4KKyAgICAgICAgKiBtZWRpYS90
cmFjay9pbi1iYW5kL3RyYWNrLWluLWJhbmQtc3J0LW1rdi1raW5kLmh0bWw6IFNhbWUuCisgICAg
ICAgICogbWVkaWEvdHJhY2svaW4tYmFuZC90cmFjay1pbi1iYW5kLXNydC1ta3YtbGFuZ3VhZ2Ut
ZXhwZWN0ZWQudHh0OiBTYW1lLgorICAgICAgICAqIG1lZGlhL3RyYWNrL2luLWJhbmQvdHJhY2st
aW4tYmFuZC1zcnQtbWt2LWxhbmd1YWdlLmh0bWw6IFNhbWUuCisgICAgICAgICogbWVkaWEvdHJh
Y2svaW4tYmFuZC90cmFjay1pbi1iYW5kLXNydC1ta3YtbW9kZS1leHBlY3RlZC50eHQ6IFNhbWUu
CisgICAgICAgICogbWVkaWEvdHJhY2svaW4tYmFuZC90cmFjay1pbi1iYW5kLXNydC1ta3YtbW9k
ZS5odG1sOiBTYW1lLgorICAgICAgICAqIG1lZGlhL3RyYWNrL2luLWJhbmQvdHJhY2staW4tYmFu
ZC1zcnQtbWt2LXN0eWxlLWV4cGVjdGVkLnR4dDogU2FtZS4KKyAgICAgICAgKiBtZWRpYS90cmFj
ay9pbi1iYW5kL3RyYWNrLWluLWJhbmQtc3J0LW1rdi10cmFjay1vcmRlci1leHBlY3RlZC50eHQ6
IFNhbWUuCisgICAgICAgICogbWVkaWEvdHJhY2svaW4tYmFuZC90cmFjay1pbi1iYW5kLXNydC1t
a3YtdHJhY2stb3JkZXIuaHRtbDogU2FtZS4KKwogMjAxMy0wOS0yNiAgQ29tbWl0IFF1ZXVlICA8
Y29tbWl0LXF1ZXVlQHdlYmtpdC5vcmc+CiAKICAgICAgICAgVW5yZXZpZXdlZCwgcm9sbGluZyBv
dXQgcjE1NjQ2NCBhbmQgcjE1NjQ4MC4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL21lZGlhL2Nv
bnRlbnQvY291bnRpbmctc3VidGl0bGVkLXNydC5ta3YgYi9MYXlvdXRUZXN0cy9tZWRpYS9jb250
ZW50L2NvdW50aW5nLXN1YnRpdGxlZC1zcnQubWt2CmluZGV4IDRjMDhlYzA4MzU2NzAxOWJkODNh
YTZmZDc2ZDI1NThmMTMyYTlhZjAuLmQ2ZTkxNzljOGY4NzljNDU0ZjA4YjcwNTU3NmJlMzBkYTcz
ZDE1YTAgMTAwNjQ0CkdJVCBiaW5hcnkgcGF0Y2gKZGVsdGEgMjAxNwp6Y21ZK0RlQHY4aDlMTWta
YXJgdHExVEc7TTJaK0xuQ05fVVRUTkU2TV5Ze0B1dzRAKXhYKDl2ZGE0WFZ8PVMjTnsKejNFWUE1
U2w2NT11RmFhOEo+P2ZWYW4pa2hUd0NoSTVeSntBIyt1YSRZJjYlWiYrfmwwcExxRTleP0NwSkpt
MnM0Cnp4aj5WPzlaZD9YamxUUENxQzM8ITdUaT5qSmg4K2JLMzRuVFRlaXs8NCVVN3xRbSk7dnhe
blQqbUJqLWFaMnEpPwp6KzBSJENIKEk+SWZtMXppaHg9Rm1JUDNnclg3dCs1dTVOOUBtVCZkeHJq
b0YwdzFtMVljTGlnSHR7JGp6VVV5OUAKejdUMV8heGx9Un5SNG5+fGFlTXFQN1ZsU0dFQWw8TnRq
fHYhS01DV0xpcU8mVEAyLTJMd2J8cD95VDkyfWRaZzNTCnp2aFVLVGhDXl4jciolaVI5TGt6MXsm
QGwmcz11IyV8RXUwTSQyeTFDKTZtKmQqNjhLRmspWW8mJkEwWFp2dHd4Ywp6V1E3fk9nWnwhYUZW
OT1pZEg+aG9BJj5UTiUzdFo0e2ZWNVlmd3tFfnQhUHY0OSZJWD03ZDd5OENgKEhgNlZwdEsKejVg
PXdHWUhFVXpQMHU2PytYQj5mUDhoZVVlKyZ5YmJtRnw9ZTFZYzBpZHl0d3RlOCpsK1FjezdzTnhy
NlYkP2RuCnp4UlE0Rmg/QGA3U3kzOH5RTGxeQUdXdUQoKVo5bVJncnNSdlReXkRPWH5pak5POVE8
dSRiTH1gM1VVRWBNd1Vsagp6cnpfcitaOzB4e3F3O0Z7dXRRRXU1bl5lfHB1RkArO1ZkbkBBeEFg
Q2RUc2JYeGYxVHY2YnRSMVEtbFleSmArKS0KekBOcGdWJV8qVippMmRsdEx+I0Y0Qn5GaFNebj9h
OGxRX3F8NU9afS1FQEpVTFJRcU5rV01lRHYkfXByYiZnQzBCCnozPj9zaTxsdzlBRXstVSZFfGpL
dDAxKUNGJDZTV05ae1M7cXQ/TndjQD9rVWYlXyZAN3speGUlRX48cHIoUjtpdQp6aXRxcCtXTyo/
TmpkZDlZemsjPFJqe2VUMUUtbEE4aFBrQDVqJHhsaFZsenpnYGFZQzElO29pYDRJQmpaT1l8TjYK
em5tVUVsN0phKXhqbD96NGZQUFUxQX1icH1TfjxAcDxYK19RQmxDSitnakJafiokfjdBWHNHVlEm
UDUmQSsxfGBNCnpBRipOdkFYMnk8Qk4qMnM0ODg/PCFuMDw1U3Nyaj4kMzwrdzRDO20zdlZHTzBs
WG9tV2pVR1RHc354aSMqRGFHeQp6XiNORzY+aHR4bDtvU0RTP3FoU3s/Mlc/YkVoI2VSUmFmOCtq
UHR5aj9gNkMxRFNAdyQpV3QwI0FYMnkpRDtOaDAKejxJZj5hekdjPXx4ZmdRT1NNNCE0Ky1BeD5l
ek18RmgqI1JQWClMPT1WQ3RXK1A4IVRlVyoyeWpCWVg1OWNFQ0xJCnoyVXU2MVNEZTdFckRPQisy
eDxDbEE9aGAlXi1YYHs0eWhLdGdPcz9KP35vUzlCWG1VOFhqc2lTTEBAcGg8TTQoYgp6K2k1bmBU
Kk9ZcyhOSj8wSkpUSzUqP058RHJrfSRJSzstZDhqOV5Aa0YhJk1WOFBsayoqOVJePzQyPCgoMTJu
a2EKekgjblNpVyhqdVFFYVJQayppbFA+TlhCezBXP1laQlMqOFo9enpmc29nPHMmQChXQ3A9OVFi
WUlTJEU4TlJpYVQxCnpGT1BBYTdsQXpBbml1JkJJZUZZNzEwb3hxI3dmPFkhdVQlYSVNUDNNSE08
dmIpWXNAZ3lFX2JEbyFofmBUMj5gcQpXbmZvUWFGa291JHEtPjlhODdaZy1Qdnc4MV9yWUhQCgpk
ZWx0YSAxODI3CnpjbVkrRVlpdl94N3tfPHNeUntEaXUkeWg/PSgzZURWWUNfSVo1THJGdSMxZHJP
ZlhJfjcjWSNUOCQtODZLfWRKcgp6aTdXX2ZuPmtPeW1lNkhGaCROV3BCKXA3OUtOeVQ1aEQxVG90
dFFHaEtXSXxLV0pZNyteSWplfWBfJU9KfDNDbCMKel5QSlE0K0ZhPWNVWWQ5YEgqPWBDYjdKNV52
TjdXTTtxTER7dUZZNSUzekxiIVNiZnBhQHt0PTZHUGY/THxJPFheCnokR3ohT04xaU8xe14+Kz0/
NktXKD1UPWR6JDV8OGpKNk1ASUlkek5+b2pLM0crY3lFOXNuTXlDVmZmbmUlSFZ0QQp6eUhvaml3
YiQ5KDZ6PzQ/bitgZDVDZjloS2hVdlVGP1E9ZTM3MmleNXl6MXB3ZU1WPSgmWVUtQGRFbCZaI2wh
elEKelotaWc2R3NVRXEqWEVQaVR5QjwtIXZwclFRNDsxdUFDbFo8ZH1mcTlKIXBTZlY2TnU+bkM2
dmJ7QzB1KVJAeyFCCnpIYUdDQE5pJDEkLSlYYUJwV1c9QzVxX0RfNCt3d0ZMKzF8S2VfNkRTU0k2
bDBnb2hZaT1gJXxCQ1l6UlJxXlR7Nwp6UX5iRmJHKXAlQll5QzF8Z0BVYCVaP3N3SXhNU3Q7PEJP
SlloeHh3RVQ0d3JWMHBnMW1rJTBNKyUpKilYczQxdnoKei1KLXIyKmplemRSTDMzZ2gjQEl3U3Bg
OCVQUHd1Z2BUJSNPIUw2YCVIdztPZmFGfCk4UzkhNUNZZilofGY3QTBvCnoqdClNVjdIfnx9TnEh
VCM9THdmUmRVej5ASV5tOTxrUW5OYFFDKVpPbENKWUlKcjlJRXsxaDFGeChkVSojMnBnSAp6Vjd1
SiFUPXVQUFNme1lJWnx5O3hTSylIXnRYK3o9eVFmaiZxe0glRjx7eWRJR0hqSCFpUzBnZFNwTXJn
QXpxOWAKekYmNXFqLW1kJENzUlMxOE5CK1BpKjh1QXRrbDdIVklRcU1YdjluK1pJfWYoIyZnQ0FB
MEt+Iz9XNW57OTZod3Y7CnpSMGQ/UCp5JGM8NW9nTEI2LVIkZGxqTHdgVkcyN0ppMCVaVz8qem1g
aHA8eXw1ZHF2VG9+T1BKVlc/OS0zK09LVAp6TGt3eUl0RERFY2t8dVh4X2NxKX5hcGt1VSV1fDFD
KTRibEhiVlFGM0t4eyloTWt4Kj5pb2J5VCFKQlM+ZCtTbjsKensmd1l1dndncW52cWBGN1NOZDEr
SmFzb1BkJkw2dm14SVBDTXt3UTEwcWcrMThUMzZ1LSFfaDJXbmJMYXYjaHNmCnpESGw1a2V7YTN5
dSl7KytkSXoocFM/Xkd1dU9rNTJHaHpqaCpkdGVRZ19YfnteeEw0dmcjT0dvNyNYYT4kbz1vQAp6
JGx3X3EwbUxIajs4dSNtUjtKe35reXJmYl9Pfjl6WVFAcHRJd15VdyhQNVFRPzdTWS1vcSpKbkd5
JD1TJm9FblkKemsjUmp9ZjFhV0s0eHo4I2g8ZXBZRntnQ2tKQ1RQTCs8ODAxLTwka1ZFM1dlamV9
PjFnekZ4MFR5O2hHPEsmKlo8CnpNa3gqPml0azNnZGVINmZ5N3hFfk19T0NwXnV4PW04UFpxTkBy
PHNsYEhJKTd2anQ8Mz9YISZUN3lsMCtzSXdIYApIQmk4PlB7OFZNZAoKZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL21lZGlhL2luLWJhbmQtY3Vlcy5qcyBiL0xheW91dFRlc3RzL21lZGlhL2luLWJh
bmQtY3Vlcy5qcwppbmRleCA0ZmUxNTc3OTZjOGJhODFlNWY1Njg1ZGY3NDU1ODc0NTAxYWEwNmNm
Li4xODUxOTFhMzc2MmQwNDNmNjcwZDBlMTJhZWI3YTRhZjFmNjA5NThkIDEwMDY0NAotLS0gYS9M
YXlvdXRUZXN0cy9tZWRpYS9pbi1iYW5kLWN1ZXMuanMKKysrIGIvTGF5b3V0VGVzdHMvbWVkaWEv
aW4tYmFuZC1jdWVzLmpzCkBAIC0xNyw3ICsxNyw3IEBAIGZ1bmN0aW9uIHRlc3RBdHRyaWJ1dGUo
dXJpLCBhdHRyaWJ1dGUsIHZhbHVlcykKICAgICB3YWl0Rm9yRXZlbnQoJ2NhbnBsYXl0aHJvdWdo
JywgY2FucGxheXRocm91Z2gpOwogfQogCi1mdW5jdGlvbiB0ZXN0Q3Vlc0FkZGVkT25jZSh1cmkp
CitmdW5jdGlvbiB0ZXN0Q3Vlc0FkZGVkT25jZSh1cmksIGtpbmQpCiB7CiAgICAgdmFyIHNlZWtl
ZENvdW50ID0gMDsKICAgICB2YXIgY3Vlc1N0YXJ0cyA9IFtdOwpAQCAtNjUsNyArNjUsMTIgQEAg
ZnVuY3Rpb24gdGVzdEN1ZXNBZGRlZE9uY2UodXJpKQogICAgICAgICBzZXRJbnRlcnZhbChwb2xs
UHJvZ3Jlc3MsIDEwMCk7CiAKICAgICAgICAgY29uc29sZVdyaXRlKCI8YnI+PGk+KiogU2V0dGlu
ZyB0cmFjayAxIHRvIHNob3dpbmc8L2k+Iik7Ci0gICAgICAgIHJ1bigiaW5iYW5kVHJhY2sxID0g
dmlkZW8udGV4dFRyYWNrc1swXSIpOworICAgICAgICBmb3IgKHZhciBpID0gMDsgaSA8IHZpZGVv
LnRleHRUcmFja3MubGVuZ3RoOyArK2kpIHsKKyAgICAgICAgICAgIGlmICh2aWRlby50ZXh0VHJh
Y2tzW2ldLmtpbmQgPT0ga2luZCkgeworICAgICAgICAgICAgICAgIGluYmFuZFRyYWNrMSA9IHZp
ZGVvLnRleHRUcmFja3NbaV07CisgICAgICAgICAgICAgICAgYnJlYWs7CisgICAgICAgICAgICB9
CisgICAgICAgIH0KICAgICAgICAgcnVuKCJpbmJhbmRUcmFjazEubW9kZSA9ICdzaG93aW5nJyIp
OwogICAgICAgICBydW4oInZpZGVvLnBsYXkoKSIpOwogICAgIH0KQEAgLTc1LDcgKzgwLDcgQEAg
ZnVuY3Rpb24gdGVzdEN1ZXNBZGRlZE9uY2UodXJpKQogICAgIHdhaXRGb3JFdmVudCgnY2FucGxh
eXRocm91Z2gnLCBjYW5wbGF5dGhyb3VnaCk7CiB9CiAKLWZ1bmN0aW9uIHRlc3RNb2RlKHVyaSkK
K2Z1bmN0aW9uIHRlc3RNb2RlKHVyaSwga2luZCkKIHsKICAgICBmdW5jdGlvbiBzZWVrZWQoKQog
ICAgIHsKQEAgLTkzLDcgKzk4LDEyIEBAIGZ1bmN0aW9uIHRlc3RNb2RlKHVyaSkKIAogICAgIGZ1
bmN0aW9uIGNhbnBsYXl0aHJvdWdoKCkKICAgICB7Ci0gICAgICAgIHJ1bigiaW5iYW5kVHJhY2sx
ID0gdmlkZW8udGV4dFRyYWNrc1swXSIpOworICAgICAgICBmb3IgKHZhciBpID0gMDsgaSA8IHZp
ZGVvLnRleHRUcmFja3MubGVuZ3RoOyArK2kpIHsKKyAgICAgICAgICAgIGlmICh2aWRlby50ZXh0
VHJhY2tzW2ldLmtpbmQgPT0ga2luZCkgeworICAgICAgICAgICAgICAgIGluYmFuZFRyYWNrMSA9
IHZpZGVvLnRleHRUcmFja3NbaV07CisgICAgICAgICAgICAgICAgYnJlYWs7CisgICAgICAgICAg
ICB9CisgICAgICAgIH0KIAogICAgICAgICBjb25zb2xlV3JpdGUoIjxicj48aT4qKiBBIGhpZGRl
biB0cmFjayBzaG91bGQgbm90IGhhdmUgdmlzaWJsZSBjdWVzPCIgKyAiL2k+Iik7CiAgICAgICAg
IHJ1bigiaW5iYW5kVHJhY2sxLm1vZGUgPSAnaGlkZGVuJyIpOwpAQCAtMTI3LDcgKzEzNywxMiBA
QCBmdW5jdGlvbiB0ZXN0U3R5bGUodXJpKQogICAgIGZ1bmN0aW9uIGNhbnBsYXl0aHJvdWdoKCkK
ICAgICB7CiAgICAgICAgIGNvbnNvbGVXcml0ZSgiPGJyPjxpPioqIFNldHRpbmcgdHJhY2sgMSB0
byBzaG93aW5nIGFuZCBzdGFydGluZyB2aWRlbzwvaT4iKTsKLSAgICAgICAgcnVuKCJpbmJhbmRU
cmFjazEgPSB2aWRlby50ZXh0VHJhY2tzWzBdIik7CisgICAgICAgIGZvciAodmFyIGkgPSAwOyBp
IDwgdmlkZW8udGV4dFRyYWNrcy5sZW5ndGg7ICsraSkgeworICAgICAgICAgICAgaWYgKHZpZGVv
LnRleHRUcmFja3NbaV0ua2luZCA9PSAic3VidGl0bGVzIiB8fCB2aWRlby50ZXh0VHJhY2tzW2ld
LmtpbmQgPT0gImNhcHRpb25zIikgeworICAgICAgICAgICAgICAgIGluYmFuZFRyYWNrMSA9IHZp
ZGVvLnRleHRUcmFja3NbaV07CisgICAgICAgICAgICAgICAgYnJlYWs7CisgICAgICAgICAgICB9
CisgICAgICAgIH0KIAogICAgICAgICBpbmJhbmRUcmFjazEubW9kZSA9ICdzaG93aW5nJzsKICAg
ICAgICAgcnVuKCJ2aWRlby5wbGF5KCkiKTsKQEAgLTE0MSwxNyArMTU2LDcgQEAgZnVuY3Rpb24g
dGVzdFN0eWxlKHVyaSkKICAgICB3YWl0Rm9yRXZlbnQoJ2NhbnBsYXl0aHJvdWdoJywgY2FucGxh
eXRocm91Z2gpOwogfQogCi1mdW5jdGlvbiB0ZXN0VHJhY2tPcmRlcih1cmkpIHsKLSAgICB2YXIg
YWRkdHJhY2tFdmVudENvdW50ID0gMDsKLQotICAgIGZ1bmN0aW9uIHRyYWNrQWRkZWQoZXZlbnQp
Ci0gICAgewotICAgICAgICBjb25zb2xlV3JpdGUoIkVWRU5UKCIgKyBldmVudC50eXBlICsgIiki
KTsKLSAgICAgICAgY29tcGFyZVRyYWNrcygiZXZlbnQudHJhY2siLCAidmlkZW8udGV4dFRyYWNr
c1siICsgYWRkdHJhY2tFdmVudENvdW50ICsgIl0iKTsKLSAgICAgICAgKythZGR0cmFja0V2ZW50
Q291bnQ7Ci0gICAgICAgIGNvbnNvbGVXcml0ZSgiIik7Ci0gICAgfQotCitmdW5jdGlvbiB0ZXN0
VHJhY2tPcmRlcih1cmksIG51bUluQmFuZFRyYWNrcykgewogICAgIGZ1bmN0aW9uIGNvbXBhcmVU
cmFja3ModHJhY2sxLCB0cmFjazIpCiAgICAgewogICAgICAgICB2YXIgZXF1YWwgPSAoZXZhbCh0
cmFjazEpID09IGV2YWwodHJhY2syKSk7CkBAIC0xNjEsMjEgKzE2NiwyMyBAQCBmdW5jdGlvbiB0
ZXN0VHJhY2tPcmRlcih1cmkpIHsKICAgICBmdW5jdGlvbiBjYW5wbGF5dGhyb3VnaCgpCiAgICAg
ewogICAgICAgICBjb25zb2xlV3JpdGUoIjxicj48aT4qKiBDaGVjayBpbml0aWFsIGluLWJhbmQg
dHJhY2sgc3RhdGVzPC9pPiIpOwotICAgICAgICB0ZXN0RXhwZWN0ZWQoInZpZGVvLnRleHRUcmFj
a3MubGVuZ3RoIiwgMik7Ci0gICAgICAgIHJ1bigiaW5iYW5kVHJhY2sxID0gdmlkZW8udGV4dFRy
YWNrc1swXSIpOwotICAgICAgICBydW4oImluYmFuZFRyYWNrMiA9IHZpZGVvLnRleHRUcmFja3Nb
MV0iKTsKKyAgICAgICAgdGVzdEV4cGVjdGVkKCJ2aWRlby50ZXh0VHJhY2tzLmxlbmd0aCIsIG51
bUluQmFuZFRyYWNrcyk7CisgICAgICAgIGZvciAodmFyIGkgPSAwOyBpIDwgbnVtSW5CYW5kVHJh
Y2tzOyArK2kpIHsKKyAgICAgICAgICBydW4oImluYmFuZFRyYWNrIiArIChpICsgMSkgKyAiID0g
dmlkZW8udGV4dFRyYWNrc1siICsgaSArICJdIik7CisgICAgICAgIH0KIAogICAgICAgICBjb25z
b2xlV3JpdGUoIjxicj48aT4qKiBBZGQgdHdvIHRyYWNrcywgY2hlY2sgc29ydCBvcmRlcjwiICsg
Ii9pPiIpOwogICAgICAgICBydW4oImFkZFRyYWNrID0gdmlkZW8uYWRkVGV4dFRyYWNrKCdjYXB0
aW9ucycsICdDYXB0aW9uIFRyYWNrJywgJ2VuJykiKTsKICAgICAgICAgcnVuKCJ0cmFja0VsZW1l
bnQgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCd0cmFjaycpIik7CiAgICAgICAgIHRyYWNrRWxl
bWVudC5sYWJlbCA9ICc8dHJhY2s+JzsKICAgICAgICAgcnVuKCJ2aWRlby5hcHBlbmRDaGlsZCh0
cmFja0VsZW1lbnQpIik7Ci0gICAgICAgIHRlc3RFeHBlY3RlZCgidmlkZW8udGV4dFRyYWNrcy5s
ZW5ndGgiLCA0KTsKKyAgICAgICAgdGVzdEV4cGVjdGVkKCJ2aWRlby50ZXh0VHJhY2tzLmxlbmd0
aCIsIG51bUluQmFuZFRyYWNrcyArIDIpOwogCiAgICAgICAgIGNvbXBhcmVUcmFja3MoInZpZGVv
LnRleHRUcmFja3NbMF0iLCAidHJhY2tFbGVtZW50LnRyYWNrIik7CiAgICAgICAgIGNvbXBhcmVU
cmFja3MoInZpZGVvLnRleHRUcmFja3NbMV0iLCAiYWRkVHJhY2siKTsKLSAgICAgICAgY29tcGFy
ZVRyYWNrcygidmlkZW8udGV4dFRyYWNrc1syXSIsICJpbmJhbmRUcmFjazEiKTsKLSAgICAgICAg
Y29tcGFyZVRyYWNrcygidmlkZW8udGV4dFRyYWNrc1szXSIsICJpbmJhbmRUcmFjazIiKTsKKyAg
ICAgICAgZm9yICh2YXIgaSA9IDE7IGkgPCBudW1JbkJhbmRUcmFja3MgKyAxOyArK2kpIHsKKyAg
ICAgICAgICBjb21wYXJlVHJhY2tzKCJ2aWRlby50ZXh0VHJhY2tzWyIgKyAoaSArIDEpICsgIl0i
LCAiaW5iYW5kVHJhY2siICsgaSk7CisgICAgICAgIH0KIAogICAgICAgICBjb25zb2xlV3JpdGUo
Ijxicj48aT4qKiBVbmxvYWQgdmlkZW8gZmlsZSwgY2hlY2sgdHJhY2sgY291bnQ8IiArICIvaT4i
KTsKICAgICAgICAgcnVuKCJ2aWRlby5zcmMgPSAnJyIpOwpAQCAtMTg2LDcgKzE5Myw2IEBAIGZ1
bmN0aW9uIHRlc3RUcmFja09yZGVyKHVyaSkgewogICAgIH0KIAogICAgIGZpbmRNZWRpYUVsZW1l
bnQoKTsKLSAgICB2aWRlby50ZXh0VHJhY2tzLmFkZEV2ZW50TGlzdGVuZXIoImFkZHRyYWNrIiwg
dHJhY2tBZGRlZCk7CiAgICAgdmlkZW8uc3JjID0gdXJpOwogICAgIHdhaXRGb3JFdmVudCgnY2Fu
cGxheXRocm91Z2gnLCBjYW5wbGF5dGhyb3VnaCk7CiB9CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9tZWRpYS90cmFjay9pbi1iYW5kL3RyYWNrLWluLWJhbmQta2F0ZS1vZ2ctY3Vlcy1hZGRlZC1v
bmNlLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL21lZGlhL3RyYWNrL2luLWJhbmQvdHJhY2st
aW4tYmFuZC1rYXRlLW9nZy1jdWVzLWFkZGVkLW9uY2UtZXhwZWN0ZWQudHh0CmluZGV4IDYzZGI1
ZTdlZjAzZGRlNjgzODg2MDZkNjE5OWUzYjkwNTFjZjhlNzIuLmU4ZjZiNzc5NzIwNDJjZGFmNmQz
MWMzYmNjMjdjYmI1OTBlMzc0ZjcgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL21lZGlhL3RyYWNr
L2luLWJhbmQvdHJhY2staW4tYmFuZC1rYXRlLW9nZy1jdWVzLWFkZGVkLW9uY2UtZXhwZWN0ZWQu
dHh0CisrKyBiL0xheW91dFRlc3RzL21lZGlhL3RyYWNrL2luLWJhbmQvdHJhY2staW4tYmFuZC1r
YXRlLW9nZy1jdWVzLWFkZGVkLW9uY2UtZXhwZWN0ZWQudHh0CkBAIC0zLDcgKzMsNiBAQCBDaGVj
ayB0aGF0IHdlIGRvbid0IGhhdmUgZHVwbGljYXRlIGN1ZXMgYWZ0ZXIgc2Vla2luZyBiYWNrd2Fy
ZHMuCiBFVkVOVChjYW5wbGF5dGhyb3VnaCkKIAogKiogU2V0dGluZyB0cmFjayAxIHRvIHNob3dp
bmcKLVJVTihpbmJhbmRUcmFjazEgPSB2aWRlby50ZXh0VHJhY2tzWzBdKQogUlVOKGluYmFuZFRy
YWNrMS5tb2RlID0gJ3Nob3dpbmcnKQogUlVOKHZpZGVvLnBsYXkoKSkKIEVYUEVDVEVEIChpbmJh
bmRUcmFjazEuY3Vlcy5sZW5ndGggPiAnMCcpIE9LCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9t
ZWRpYS90cmFjay9pbi1iYW5kL3RyYWNrLWluLWJhbmQta2F0ZS1vZ2ctY3Vlcy1hZGRlZC1vbmNl
Lmh0bWwgYi9MYXlvdXRUZXN0cy9tZWRpYS90cmFjay9pbi1iYW5kL3RyYWNrLWluLWJhbmQta2F0
ZS1vZ2ctY3Vlcy1hZGRlZC1vbmNlLmh0bWwKaW5kZXggMTg5NmZmMWY0ODIyYjA0Y2JiMjQ3NTk5
ODU4NGJkZDIxMjhmOTc3MS4uZmMxY2NiNDU5Zjk0ZTQ2NmRkMzcwNTBmZmUwOWQyNDdkNWMzNDA0
ZiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvbWVkaWEvdHJhY2svaW4tYmFuZC90cmFjay1pbi1i
YW5kLWthdGUtb2dnLWN1ZXMtYWRkZWQtb25jZS5odG1sCisrKyBiL0xheW91dFRlc3RzL21lZGlh
L3RyYWNrL2luLWJhbmQvdHJhY2staW4tYmFuZC1rYXRlLW9nZy1jdWVzLWFkZGVkLW9uY2UuaHRt
bApAQCAtNyw3ICs3LDcgQEAKICAgICAgICAgPHNjcmlwdCBzcmM9Li4vLi4vdmlkZW8tdGVzdC5q
cz48L3NjcmlwdD4KICAgICAgICAgPHNjcmlwdCBzcmM9Li4vLi4vaW4tYmFuZC1jdWVzLmpzPjwv
c2NyaXB0PgogICAgIDwvaGVhZD4KLSAgICA8Ym9keSBvbmxvYWQ9InRlc3RDdWVzQWRkZWRPbmNl
KCcuLi8uLi9jb250ZW50L2NvdW50aW5nLXN1YnRpdGxlZC1rYXRlLm9ndicpIj4KKyAgICA8Ym9k
eSBvbmxvYWQ9InRlc3RDdWVzQWRkZWRPbmNlKCcuLi8uLi9jb250ZW50L2NvdW50aW5nLXN1YnRp
dGxlZC1rYXRlLm9ndicsICdzdWJ0aXRsZXMnKSI+CiAgICAgICAgIDx2aWRlbyBjb250cm9scz48
L3ZpZGVvPgogICAgICAgICA8cD5DaGVjayB0aGF0IHdlIGRvbid0IGhhdmUgZHVwbGljYXRlIGN1
ZXMgYWZ0ZXIgc2Vla2luZyBiYWNrd2FyZHMuPC9wPgogICAgIDwvYm9keT4KZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL21lZGlhL3RyYWNrL2luLWJhbmQvdHJhY2staW4tYmFuZC1rYXRlLW9nZy1t
b2RlLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL21lZGlhL3RyYWNrL2luLWJhbmQvdHJhY2st
aW4tYmFuZC1rYXRlLW9nZy1tb2RlLWV4cGVjdGVkLnR4dAppbmRleCAyYmI1OWUyOTVmMzA2NjIx
NWY3YWViMDkzZGRlYzYzYTc1NDA5ZTA5Li5kZDQzOWY4MDM3MDVjZDUyYjkyYzMwN2Y0YTgxOGQ3
ZDYxYWM4M2IwIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9tZWRpYS90cmFjay9pbi1iYW5kL3Ry
YWNrLWluLWJhbmQta2F0ZS1vZ2ctbW9kZS1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMv
bWVkaWEvdHJhY2svaW4tYmFuZC90cmFjay1pbi1iYW5kLWthdGUtb2dnLW1vZGUtZXhwZWN0ZWQu
dHh0CkBAIC0xLDcgKzEsNiBAQAogVGVzdCB0aGF0IGN1ZXMgZnJvbSBpbi1iYW5kIHRyYWNrcyBh
cmUgZGlzcGxheWVkIGltbWVkaWF0ZWx5IHdoZW4gYSB0cmFjayBpcyBtYWRlIHZpc2libGUuCiAK
IEVWRU5UKGNhbnBsYXl0aHJvdWdoKQotUlVOKGluYmFuZFRyYWNrMSA9IHZpZGVvLnRleHRUcmFj
a3NbMF0pCiAKICoqIEEgaGlkZGVuIHRyYWNrIHNob3VsZCBub3QgaGF2ZSB2aXNpYmxlIGN1ZXMK
IFJVTihpbmJhbmRUcmFjazEubW9kZSA9ICdoaWRkZW4nKQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvbWVkaWEvdHJhY2svaW4tYmFuZC90cmFjay1pbi1iYW5kLWthdGUtb2dnLW1vZGUuaHRtbCBi
L0xheW91dFRlc3RzL21lZGlhL3RyYWNrL2luLWJhbmQvdHJhY2staW4tYmFuZC1rYXRlLW9nZy1t
b2RlLmh0bWwKaW5kZXggZTFkZWYxM2JiMDVmNzYzZjZjYjM4ZjQyY2I3OTdiNDI5MGQyYjYwOC4u
NTdmOGIwMWE2NDBiNDYzYTFlN2Q3MDE2N2U2YzUwNzBjMTcwYjFmMSAxMDA2NDQKLS0tIGEvTGF5
b3V0VGVzdHMvbWVkaWEvdHJhY2svaW4tYmFuZC90cmFjay1pbi1iYW5kLWthdGUtb2dnLW1vZGUu
aHRtbAorKysgYi9MYXlvdXRUZXN0cy9tZWRpYS90cmFjay9pbi1iYW5kL3RyYWNrLWluLWJhbmQt
a2F0ZS1vZ2ctbW9kZS5odG1sCkBAIC04LDcgKzgsNyBAQAogICAgICAgICA8c2NyaXB0IHNyYz0u
Li8uLi9tZWRpYS1jb250cm9scy5qcz48L3NjcmlwdD4KICAgICAgICAgPHNjcmlwdCBzcmM9Li4v
Li4vaW4tYmFuZC1jdWVzLmpzPjwvc2NyaXB0PgogICAgIDwvaGVhZD4KLSAgICA8Ym9keSBvbmxv
YWQ9InRlc3RNb2RlKCcuLi8uLi9jb250ZW50L2NvdW50aW5nLXN1YnRpdGxlZC1rYXRlLm9ndicp
Ij4KKyAgICA8Ym9keSBvbmxvYWQ9InRlc3RNb2RlKCcuLi8uLi9jb250ZW50L2NvdW50aW5nLXN1
YnRpdGxlZC1rYXRlLm9ndicsICdzdWJ0aXRsZXMnKSI+CiAgICAgICAgIDx2aWRlbyBjb250cm9s
cz48L3ZpZGVvPgogICAgICAgICA8cD5UZXN0IHRoYXQgY3VlcyBmcm9tIGluLWJhbmQgdHJhY2tz
IGFyZSBkaXNwbGF5ZWQgaW1tZWRpYXRlbHkgd2hlbiBhIHRyYWNrIGlzIG1hZGUgdmlzaWJsZS48
L3A+CiAgICAgPC9ib2R5PgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvbWVkaWEvdHJhY2svaW4t
YmFuZC90cmFjay1pbi1iYW5kLWthdGUtb2dnLXN0eWxlLWV4cGVjdGVkLnR4dCBiL0xheW91dFRl
c3RzL21lZGlhL3RyYWNrL2luLWJhbmQvdHJhY2staW4tYmFuZC1rYXRlLW9nZy1zdHlsZS1leHBl
Y3RlZC50eHQKaW5kZXggMTY5NDg0ODU5NjlhYmJhOTY4Y2E5ODMzZWM4OWNmOTFmMTEwNjNjNC4u
YWFlYmNkMTk1YjljMWQ0NThiZGRmYTJjNzg2NGM3YTRjMTM5ZjA1ZSAxMDA2NDQKLS0tIGEvTGF5
b3V0VGVzdHMvbWVkaWEvdHJhY2svaW4tYmFuZC90cmFjay1pbi1iYW5kLWthdGUtb2dnLXN0eWxl
LWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9tZWRpYS90cmFjay9pbi1iYW5kL3RyYWNr
LWluLWJhbmQta2F0ZS1vZ2ctc3R5bGUtZXhwZWN0ZWQudHh0CkBAIC0yLDcgKzIsNiBAQCBUZXN0
IHRoYXQgc3R5bGUgaXMgYXBwbGllZCB0byBhbGwgY3VlcyBjb3JyZWN0bHkuCiBFVkVOVChjYW5w
bGF5dGhyb3VnaCkKIAogKiogU2V0dGluZyB0cmFjayAxIHRvIHNob3dpbmcgYW5kIHN0YXJ0aW5n
IHZpZGVvCi1SVU4oaW5iYW5kVHJhY2sxID0gdmlkZW8udGV4dFRyYWNrc1swXSkKIFJVTih2aWRl
by5wbGF5KCkpCiBFVkVOVChzZWVrZWQpCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL21lZGlh
L3RyYWNrL2luLWJhbmQvdHJhY2staW4tYmFuZC1rYXRlLW9nZy10cmFjay1vcmRlci1leHBlY3Rl
ZC50eHQgYi9MYXlvdXRUZXN0cy9tZWRpYS90cmFjay9pbi1iYW5kL3RyYWNrLWluLWJhbmQta2F0
ZS1vZ2ctdHJhY2stb3JkZXItZXhwZWN0ZWQudHh0CmluZGV4IGRlOTA0MWU3YWI2OTcyYTE1ZjAx
NzJlZjQ2YmZiMTg0ODFmNWEzYjguLjk1MzYyZGRmODllNGU4ZGU4NmZiMTE3MjNmY2EwNGY3Y2E3
NmQ2MTEgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL21lZGlhL3RyYWNrL2luLWJhbmQvdHJhY2st
aW4tYmFuZC1rYXRlLW9nZy10cmFjay1vcmRlci1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVz
dHMvbWVkaWEvdHJhY2svaW4tYmFuZC90cmFjay1pbi1iYW5kLWthdGUtb2dnLXRyYWNrLW9yZGVy
LWV4cGVjdGVkLnR4dApAQCAtMSwxMSArMSw1IEBACiBUZXN0IHRyYWNrIG9yZGVyIHdoZW4gdXNp
bmcgaW4tYmFuZCBhbmQgb3V0LW9mLWJhbmQgdGV4dCB0cmFja3MuCiAKLUVWRU5UKGFkZHRyYWNr
KQotRVhQRUNURUQgKGV2ZW50LnRyYWNrID09ICd2aWRlby50ZXh0VHJhY2tzWzBdJykgT0sKLQot
RVZFTlQoYWRkdHJhY2spCi1FWFBFQ1RFRCAoZXZlbnQudHJhY2sgPT0gJ3ZpZGVvLnRleHRUcmFj
a3NbMV0nKSBPSwotCiBFVkVOVChjYW5wbGF5dGhyb3VnaCkKIAogKiogQ2hlY2sgaW5pdGlhbCBp
bi1iYW5kIHRyYWNrIHN0YXRlcwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvbWVkaWEvdHJhY2sv
aW4tYmFuZC90cmFjay1pbi1iYW5kLWthdGUtb2dnLXRyYWNrLW9yZGVyLmh0bWwgYi9MYXlvdXRU
ZXN0cy9tZWRpYS90cmFjay9pbi1iYW5kL3RyYWNrLWluLWJhbmQta2F0ZS1vZ2ctdHJhY2stb3Jk
ZXIuaHRtbAppbmRleCA0MTA4YTZlZGI1ZTJkNzcyYjk3ZWNjNzMyNDU1NTk4NzFmNzM5ODNhLi5l
Nzg0MjY3MWJlYmExNGQyMjYyZGZmOTc2YzA5MDg3ZGUzNzg4OTU5IDEwMDY0NAotLS0gYS9MYXlv
dXRUZXN0cy9tZWRpYS90cmFjay9pbi1iYW5kL3RyYWNrLWluLWJhbmQta2F0ZS1vZ2ctdHJhY2st
b3JkZXIuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9tZWRpYS90cmFjay9pbi1iYW5kL3RyYWNrLWlu
LWJhbmQta2F0ZS1vZ2ctdHJhY2stb3JkZXIuaHRtbApAQCAtNyw3ICs3LDcgQEAKICAgICAgICAg
PHNjcmlwdCBzcmM9Li4vLi4vdmlkZW8tdGVzdC5qcz48L3NjcmlwdD4KICAgICAgICAgPHNjcmlw
dCBzcmM9Li4vLi4vaW4tYmFuZC1jdWVzLmpzPjwvc2NyaXB0PgogICAgIDwvaGVhZD4KLSAgICA8
Ym9keSBvbmxvYWQ9InRlc3RUcmFja09yZGVyKCcuLi8uLi9jb250ZW50L2NvdW50aW5nLXN1YnRp
dGxlZC1rYXRlLm9ndicpIj4KKyAgICA8Ym9keSBvbmxvYWQ9InRlc3RUcmFja09yZGVyKCcuLi8u
Li9jb250ZW50L2NvdW50aW5nLXN1YnRpdGxlZC1rYXRlLm9ndicsIDIpIj4KICAgICAgICAgPHZp
ZGVvIGNvbnRyb2xzPjwvdmlkZW8+CiAgICAgICAgIDxwPlRlc3QgdHJhY2sgb3JkZXIgd2hlbiB1
c2luZyBpbi1iYW5kIGFuZCBvdXQtb2YtYmFuZCB0ZXh0IHRyYWNrcy48L3A+CiAgICAgPC9ib2R5
PgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvbWVkaWEvdHJhY2svaW4tYmFuZC90cmFjay1pbi1i
YW5kLW1rdi1jaGFwdGVycy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9tZWRpYS90cmFjay9p
bi1iYW5kL3RyYWNrLWluLWJhbmQtbWt2LWNoYXB0ZXJzLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
Li5iYWFhMmY0M2NkZGNmZTJmZmMyOGI0NjE0MDBjZjRjODY2MWUwYWIyCi0tLSAvZGV2L251bGwK
KysrIGIvTGF5b3V0VGVzdHMvbWVkaWEvdHJhY2svaW4tYmFuZC90cmFjay1pbi1iYW5kLW1rdi1j
aGFwdGVycy1leHBlY3RlZC50eHQKQEAgLTAsMCArMSwxOCBAQAorQ2hlY2sgZm9yIGNoYXB0ZXIg
dHJhY2sgZnJvbSBhbiBta3YgZmlsZS4KKworRVZFTlQoY2FucGxheXRocm91Z2gpCisKKyoqIFNl
dHRpbmcgdHJhY2sgMSB0byBzaG93aW5nCitSVU4oaW5iYW5kVHJhY2sxLm1vZGUgPSAnc2hvd2lu
ZycpCitSVU4odmlkZW8ucGxheSgpKQorRVhQRUNURUQgKGluYmFuZFRyYWNrMS5jdWVzLmxlbmd0
aCA+ICcwJykgT0sKK1JVTih2aWRlby5wYXVzZSgpKQorUlVOKHZpZGVvLmN1cnJlbnRUaW1lID0g
MCkKK1JVTih2aWRlby5wbGF5KCkpCisKK0VWRU5UKHNlZWtlZCkKK0VYUEVDVEVEIChpbmJhbmRU
cmFjazEuY3Vlcy5sZW5ndGggPiAnMCcpIE9LCitSVU4odmlkZW8ucGF1c2UoKSkKK1Rlc3QgYWxs
IGN1ZXMgYXJlIGVxdWFsIE9LCitFTkQgT0YgVEVTVAorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9tZWRpYS90cmFjay9pbi1iYW5kL3RyYWNrLWluLWJhbmQtbWt2LWNoYXB0ZXJzLmh0bWwgYi9M
YXlvdXRUZXN0cy9tZWRpYS90cmFjay9pbi1iYW5kL3RyYWNrLWluLWJhbmQtbWt2LWNoYXB0ZXJz
Lmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMC4uNTVmNmE4ZDE3ZTI4MmRjZWQwNzA2NzFmZmZmYzM0YjRmODBkOWU4
ZgotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL21lZGlhL3RyYWNrL2luLWJhbmQvdHJh
Y2staW4tYmFuZC1ta3YtY2hhcHRlcnMuaHRtbApAQCAtMCwwICsxLDE0IEBACis8IURPQ1RZUEUg
aHRtbD4KKzxodG1sPgorICAgIDxoZWFkPgorICAgICAgICA8bWV0YSBodHRwLWVxdWl2PSJDb250
ZW50LVR5cGUiIGNvbnRlbnQ9InRleHQvaHRtbDsgY2hhcnNldD11dGYtOCIgLz4KKworICAgICAg
ICA8c2NyaXB0IHNyYz0uLi8uLi9tZWRpYS1maWxlLmpzPjwvc2NyaXB0PgorICAgICAgICA8c2Ny
aXB0IHNyYz0uLi8uLi92aWRlby10ZXN0LmpzPjwvc2NyaXB0PgorICAgICAgICA8c2NyaXB0IHNy
Yz0uLi8uLi9pbi1iYW5kLWN1ZXMuanM+PC9zY3JpcHQ+CisgICAgPC9oZWFkPgorICAgIDxib2R5
IG9ubG9hZD0idGVzdEN1ZXNBZGRlZE9uY2UoJy4uLy4uL2NvbnRlbnQvY291bnRpbmctc3VidGl0
bGVkLXNydC5ta3YnLCAnY2hhcHRlcnMnKSI+CisgICAgICAgIDx2aWRlbyBjb250cm9scz48L3Zp
ZGVvPgorICAgICAgICA8cD5DaGVjayBmb3IgY2hhcHRlciB0cmFjayBmcm9tIGFuIG1rdiBmaWxl
LjwvcD4KKyAgICA8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9tZWRp
YS90cmFjay9pbi1iYW5kL3RyYWNrLWluLWJhbmQtc3J0LW1rdi1jdWVzLWFkZGVkLW9uY2UtZXhw
ZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvbWVkaWEvdHJhY2svaW4tYmFuZC90cmFjay1pbi1iYW5k
LXNydC1ta3YtY3Vlcy1hZGRlZC1vbmNlLWV4cGVjdGVkLnR4dAppbmRleCA2M2RiNWU3ZWYwM2Rk
ZTY4Mzg4NjA2ZDYxOTllM2I5MDUxY2Y4ZTcyLi5lOGY2Yjc3OTcyMDQyY2RhZjZkMzFjM2JjYzI3
Y2JiNTkwZTM3NGY3IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9tZWRpYS90cmFjay9pbi1iYW5k
L3RyYWNrLWluLWJhbmQtc3J0LW1rdi1jdWVzLWFkZGVkLW9uY2UtZXhwZWN0ZWQudHh0CisrKyBi
L0xheW91dFRlc3RzL21lZGlhL3RyYWNrL2luLWJhbmQvdHJhY2staW4tYmFuZC1zcnQtbWt2LWN1
ZXMtYWRkZWQtb25jZS1leHBlY3RlZC50eHQKQEAgLTMsNyArMyw2IEBAIENoZWNrIHRoYXQgd2Ug
ZG9uJ3QgaGF2ZSBkdXBsaWNhdGUgY3VlcyBhZnRlciBzZWVraW5nIGJhY2t3YXJkcy4KIEVWRU5U
KGNhbnBsYXl0aHJvdWdoKQogCiAqKiBTZXR0aW5nIHRyYWNrIDEgdG8gc2hvd2luZwotUlVOKGlu
YmFuZFRyYWNrMSA9IHZpZGVvLnRleHRUcmFja3NbMF0pCiBSVU4oaW5iYW5kVHJhY2sxLm1vZGUg
PSAnc2hvd2luZycpCiBSVU4odmlkZW8ucGxheSgpKQogRVhQRUNURUQgKGluYmFuZFRyYWNrMS5j
dWVzLmxlbmd0aCA+ICcwJykgT0sKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL21lZGlhL3RyYWNr
L2luLWJhbmQvdHJhY2staW4tYmFuZC1zcnQtbWt2LWN1ZXMtYWRkZWQtb25jZS5odG1sIGIvTGF5
b3V0VGVzdHMvbWVkaWEvdHJhY2svaW4tYmFuZC90cmFjay1pbi1iYW5kLXNydC1ta3YtY3Vlcy1h
ZGRlZC1vbmNlLmh0bWwKaW5kZXggM2YzYjc0YzkxN2VkZjU4NjBmNDc1MzY4MGUxZjlmZmM4OWZi
MTJhYS4uNWU4YjRmZTgyYTgyYTljY2FhZjBjNzVhNGRlOWFjYTM1M2U5Yjc5NyAxMDA2NDQKLS0t
IGEvTGF5b3V0VGVzdHMvbWVkaWEvdHJhY2svaW4tYmFuZC90cmFjay1pbi1iYW5kLXNydC1ta3Yt
Y3Vlcy1hZGRlZC1vbmNlLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvbWVkaWEvdHJhY2svaW4tYmFu
ZC90cmFjay1pbi1iYW5kLXNydC1ta3YtY3Vlcy1hZGRlZC1vbmNlLmh0bWwKQEAgLTcsNyArNyw3
IEBACiAgICAgICAgIDxzY3JpcHQgc3JjPS4uLy4uL3ZpZGVvLXRlc3QuanM+PC9zY3JpcHQ+CiAg
ICAgICAgIDxzY3JpcHQgc3JjPS4uLy4uL2luLWJhbmQtY3Vlcy5qcz48L3NjcmlwdD4KICAgICA8
L2hlYWQ+Ci0gICAgPGJvZHkgb25sb2FkPSJ0ZXN0Q3Vlc0FkZGVkT25jZSgnLi4vLi4vY29udGVu
dC9jb3VudGluZy1zdWJ0aXRsZWQtc3J0Lm1rdicpIj4KKyAgICA8Ym9keSBvbmxvYWQ9InRlc3RD
dWVzQWRkZWRPbmNlKCcuLi8uLi9jb250ZW50L2NvdW50aW5nLXN1YnRpdGxlZC1zcnQubWt2Jywg
J3N1YnRpdGxlcycpIj4KICAgICAgICAgPHZpZGVvIGNvbnRyb2xzPjwvdmlkZW8+CiAgICAgICAg
IDxwPkNoZWNrIHRoYXQgd2UgZG9uJ3QgaGF2ZSBkdXBsaWNhdGUgY3VlcyBhZnRlciBzZWVraW5n
IGJhY2t3YXJkcy48L3A+CiAgICAgPC9ib2R5PgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvbWVk
aWEvdHJhY2svaW4tYmFuZC90cmFjay1pbi1iYW5kLXNydC1ta3Yta2luZC1leHBlY3RlZC50eHQg
Yi9MYXlvdXRUZXN0cy9tZWRpYS90cmFjay9pbi1iYW5kL3RyYWNrLWluLWJhbmQtc3J0LW1rdi1r
aW5kLWV4cGVjdGVkLnR4dAppbmRleCA3MGI0YTkxYWM1ZTE3ODBiY2EyZjQ0YmVkZjQ5YzNmYzll
OTExZDg0Li4yZDI0YmU3MDg3ZjllYzhmZDQxMWRkMDA5MzlkMmMwNThiYjk4NWU5IDEwMDY0NAot
LS0gYS9MYXlvdXRUZXN0cy9tZWRpYS90cmFjay9pbi1iYW5kL3RyYWNrLWluLWJhbmQtc3J0LW1r
di1raW5kLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9tZWRpYS90cmFjay9pbi1iYW5k
L3RyYWNrLWluLWJhbmQtc3J0LW1rdi1raW5kLWV4cGVjdGVkLnR4dApAQCAtMyw5ICszLDEwIEBA
IENoZWNrIGluLWJhbmQgdGV4dCB0cmFja3MnIGtpbmQgYXR0cmlidXRlcy4KIEVWRU5UKGNhbnBs
YXl0aHJvdWdoKQogCiAqKiBDaGVjayBpbi1iYW5kIGtpbmQgYXR0cmlidXRlcwotRVhQRUNURUQg
KHZpZGVvLnRleHRUcmFja3MubGVuZ3RoID09ICcyJykgT0sKLUVYUEVDVEVEICh2aWRlby50ZXh0
VHJhY2tzWzBdLmtpbmQgPT0gJ3N1YnRpdGxlcycpIE9LCitFWFBFQ1RFRCAodmlkZW8udGV4dFRy
YWNrcy5sZW5ndGggPT0gJzMnKSBPSworRVhQRUNURUQgKHZpZGVvLnRleHRUcmFja3NbMF0ua2lu
ZCA9PSAnY2hhcHRlcnMnKSBPSwogRVhQRUNURUQgKHZpZGVvLnRleHRUcmFja3NbMV0ua2luZCA9
PSAnc3VidGl0bGVzJykgT0sKK0VYUEVDVEVEICh2aWRlby50ZXh0VHJhY2tzWzJdLmtpbmQgPT0g
J3N1YnRpdGxlcycpIE9LCiAKIEVORCBPRiBURVNUCiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L21lZGlhL3RyYWNrL2luLWJhbmQvdHJhY2staW4tYmFuZC1zcnQtbWt2LWtpbmQuaHRtbCBiL0xh
eW91dFRlc3RzL21lZGlhL3RyYWNrL2luLWJhbmQvdHJhY2staW4tYmFuZC1zcnQtbWt2LWtpbmQu
aHRtbAppbmRleCBlNDdhN2JiMDY2OTYwZmZjNGQ1ZGM0NTFiOTJmNjc5NmYzZTc0N2VmLi5lMzkx
ZmJhNDdjY2VhMDc4ZDIzNTMwMjg3Y2I5ODkzYmI1MDg1NjdiIDEwMDY0NAotLS0gYS9MYXlvdXRU
ZXN0cy9tZWRpYS90cmFjay9pbi1iYW5kL3RyYWNrLWluLWJhbmQtc3J0LW1rdi1raW5kLmh0bWwK
KysrIGIvTGF5b3V0VGVzdHMvbWVkaWEvdHJhY2svaW4tYmFuZC90cmFjay1pbi1iYW5kLXNydC1t
a3Yta2luZC5odG1sCkBAIC03LDcgKzcsNyBAQAogICAgICAgICA8c2NyaXB0IHNyYz0uLi8uLi92
aWRlby10ZXN0LmpzPjwvc2NyaXB0PgogICAgICAgICA8c2NyaXB0IHNyYz0uLi8uLi9pbi1iYW5k
LWN1ZXMuanM+PC9zY3JpcHQ+CiAgICAgPC9oZWFkPgotICAgIDxib2R5IG9ubG9hZD0idGVzdEF0
dHJpYnV0ZSgnLi4vLi4vY29udGVudC9jb3VudGluZy1zdWJ0aXRsZWQtc3J0Lm1rdicsICdraW5k
JywgWydzdWJ0aXRsZXMnLCAnc3VidGl0bGVzJ10pIj4KKyAgICA8Ym9keSBvbmxvYWQ9InRlc3RB
dHRyaWJ1dGUoJy4uLy4uL2NvbnRlbnQvY291bnRpbmctc3VidGl0bGVkLXNydC5ta3YnLCAna2lu
ZCcsIFsnY2hhcHRlcnMnLCAnc3VidGl0bGVzJywgJ3N1YnRpdGxlcyddKSI+CiAgICAgICAgIDx2
aWRlbyBjb250cm9scz48L3ZpZGVvPgogICAgICAgICA8cD5DaGVjayBpbi1iYW5kIHRleHQgdHJh
Y2tzJyBraW5kIGF0dHJpYnV0ZXMuPC9wPgogICAgIDwvYm9keT4KZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL21lZGlhL3RyYWNrL2luLWJhbmQvdHJhY2staW4tYmFuZC1zcnQtbWt2LWxhbmd1YWdl
LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL21lZGlhL3RyYWNrL2luLWJhbmQvdHJhY2staW4t
YmFuZC1zcnQtbWt2LWxhbmd1YWdlLWV4cGVjdGVkLnR4dAppbmRleCA4NDIwMzUxNzM1ZTY0YTY0
NTZkNGY0MGY5NjE5MGZjYjdkNWFiYTgzLi5hMzJjODNiNzgzZDU0NmU0ZTlmZDI1YTg5ZTc2Y2U5
NzUxNWQzOWMxIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9tZWRpYS90cmFjay9pbi1iYW5kL3Ry
YWNrLWluLWJhbmQtc3J0LW1rdi1sYW5ndWFnZS1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVz
dHMvbWVkaWEvdHJhY2svaW4tYmFuZC90cmFjay1pbi1iYW5kLXNydC1ta3YtbGFuZ3VhZ2UtZXhw
ZWN0ZWQudHh0CkBAIC0zLDkgKzMsMTAgQEAgQ2hlY2sgaW4tYmFuZCB0ZXh0IHRyYWNrcycgbGFu
Z3VhZ2UgYXR0cmlidXRlcy4KIEVWRU5UKGNhbnBsYXl0aHJvdWdoKQogCiAqKiBDaGVjayBpbi1i
YW5kIGtpbmQgYXR0cmlidXRlcwotRVhQRUNURUQgKHZpZGVvLnRleHRUcmFja3MubGVuZ3RoID09
ICcyJykgT0sKLUVYUEVDVEVEICh2aWRlby50ZXh0VHJhY2tzWzBdLmxhbmd1YWdlID09ICdlbicp
IE9LCi1FWFBFQ1RFRCAodmlkZW8udGV4dFRyYWNrc1sxXS5sYW5ndWFnZSA9PSAnZnInKSBPSwor
RVhQRUNURUQgKHZpZGVvLnRleHRUcmFja3MubGVuZ3RoID09ICczJykgT0sKK0VYUEVDVEVEICh2
aWRlby50ZXh0VHJhY2tzWzBdLmxhbmd1YWdlID09ICcnKSBPSworRVhQRUNURUQgKHZpZGVvLnRl
eHRUcmFja3NbMV0ubGFuZ3VhZ2UgPT0gJ2VuJykgT0sKK0VYUEVDVEVEICh2aWRlby50ZXh0VHJh
Y2tzWzJdLmxhbmd1YWdlID09ICdmcicpIE9LCiAKIEVORCBPRiBURVNUCiAKZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL21lZGlhL3RyYWNrL2luLWJhbmQvdHJhY2staW4tYmFuZC1zcnQtbWt2LWxh
bmd1YWdlLmh0bWwgYi9MYXlvdXRUZXN0cy9tZWRpYS90cmFjay9pbi1iYW5kL3RyYWNrLWluLWJh
bmQtc3J0LW1rdi1sYW5ndWFnZS5odG1sCmluZGV4IGRlZjY1YmU5YmZiOWY1OTIwY2JiYjM2Nzc5
NjVjYTgwY2FlYmNlYzYuLjlkNmM4OTIyMzIyZDQ1MDM2M2VjMjAyNDBlOWE0ZTZlNTJjNzUzM2Eg
MTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL21lZGlhL3RyYWNrL2luLWJhbmQvdHJhY2staW4tYmFu
ZC1zcnQtbWt2LWxhbmd1YWdlLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvbWVkaWEvdHJhY2svaW4t
YmFuZC90cmFjay1pbi1iYW5kLXNydC1ta3YtbGFuZ3VhZ2UuaHRtbApAQCAtNyw3ICs3LDcgQEAK
ICAgICAgICAgPHNjcmlwdCBzcmM9Li4vLi4vdmlkZW8tdGVzdC5qcz48L3NjcmlwdD4KICAgICAg
ICAgPHNjcmlwdCBzcmM9Li4vLi4vaW4tYmFuZC1jdWVzLmpzPjwvc2NyaXB0PgogICAgIDwvaGVh
ZD4KLSAgICA8Ym9keSBvbmxvYWQ9InRlc3RBdHRyaWJ1dGUoJy4uLy4uL2NvbnRlbnQvY291bnRp
bmctc3VidGl0bGVkLXNydC5ta3YnLCAnbGFuZ3VhZ2UnLCBbJ2VuJywgJ2ZyJ10pIj4KKyAgICA8
Ym9keSBvbmxvYWQ9InRlc3RBdHRyaWJ1dGUoJy4uLy4uL2NvbnRlbnQvY291bnRpbmctc3VidGl0
bGVkLXNydC5ta3YnLCAnbGFuZ3VhZ2UnLCBbJycsICdlbicsICdmciddKSI+CiAgICAgICAgIDx2
aWRlbyBjb250cm9scz48L3ZpZGVvPgogICAgICAgICA8cD5DaGVjayBpbi1iYW5kIHRleHQgdHJh
Y2tzJyBsYW5ndWFnZSBhdHRyaWJ1dGVzLjwvcD4KICAgICA8L2JvZHk+CmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9tZWRpYS90cmFjay9pbi1iYW5kL3RyYWNrLWluLWJhbmQtc3J0LW1rdi1tb2Rl
LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL21lZGlhL3RyYWNrL2luLWJhbmQvdHJhY2staW4t
YmFuZC1zcnQtbWt2LW1vZGUtZXhwZWN0ZWQudHh0CmluZGV4IDJiYjU5ZTI5NWYzMDY2MjE1Zjdh
ZWIwOTNkZGVjNjNhNzU0MDllMDkuLmRkNDM5ZjgwMzcwNWNkNTJiOTJjMzA3ZjRhODE4ZDdkNjFh
YzgzYjAgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL21lZGlhL3RyYWNrL2luLWJhbmQvdHJhY2st
aW4tYmFuZC1zcnQtbWt2LW1vZGUtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL21lZGlh
L3RyYWNrL2luLWJhbmQvdHJhY2staW4tYmFuZC1zcnQtbWt2LW1vZGUtZXhwZWN0ZWQudHh0CkBA
IC0xLDcgKzEsNiBAQAogVGVzdCB0aGF0IGN1ZXMgZnJvbSBpbi1iYW5kIHRyYWNrcyBhcmUgZGlz
cGxheWVkIGltbWVkaWF0ZWx5IHdoZW4gYSB0cmFjayBpcyBtYWRlIHZpc2libGUuCiAKIEVWRU5U
KGNhbnBsYXl0aHJvdWdoKQotUlVOKGluYmFuZFRyYWNrMSA9IHZpZGVvLnRleHRUcmFja3NbMF0p
CiAKICoqIEEgaGlkZGVuIHRyYWNrIHNob3VsZCBub3QgaGF2ZSB2aXNpYmxlIGN1ZXMKIFJVTihp
bmJhbmRUcmFjazEubW9kZSA9ICdoaWRkZW4nKQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvbWVk
aWEvdHJhY2svaW4tYmFuZC90cmFjay1pbi1iYW5kLXNydC1ta3YtbW9kZS5odG1sIGIvTGF5b3V0
VGVzdHMvbWVkaWEvdHJhY2svaW4tYmFuZC90cmFjay1pbi1iYW5kLXNydC1ta3YtbW9kZS5odG1s
CmluZGV4IDM2NTJlYzBlYTZhOWMzN2UzYTM2MDhjMGNhNmUxM2U4MTJkOWM2YzAuLjhlZWY3NjRk
ZDc2Y2Q5MmNhZDhkN2ZiOWQ0YTJhNWI1YzI2NzViZGMgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3Rz
L21lZGlhL3RyYWNrL2luLWJhbmQvdHJhY2staW4tYmFuZC1zcnQtbWt2LW1vZGUuaHRtbAorKysg
Yi9MYXlvdXRUZXN0cy9tZWRpYS90cmFjay9pbi1iYW5kL3RyYWNrLWluLWJhbmQtc3J0LW1rdi1t
b2RlLmh0bWwKQEAgLTgsNyArOCw3IEBACiAgICAgICAgIDxzY3JpcHQgc3JjPS4uLy4uL21lZGlh
LWNvbnRyb2xzLmpzPjwvc2NyaXB0PgogICAgICAgICA8c2NyaXB0IHNyYz0uLi8uLi9pbi1iYW5k
LWN1ZXMuanM+PC9zY3JpcHQ+CiAgICAgPC9oZWFkPgotICAgIDxib2R5IG9ubG9hZD0idGVzdE1v
ZGUoJy4uLy4uL2NvbnRlbnQvY291bnRpbmctc3VidGl0bGVkLXNydC5ta3YnKSI+CisgICAgPGJv
ZHkgb25sb2FkPSJ0ZXN0TW9kZSgnLi4vLi4vY29udGVudC9jb3VudGluZy1zdWJ0aXRsZWQtc3J0
Lm1rdicsICdzdWJ0aXRsZXMnKSI+CiAgICAgICAgIDx2aWRlbyBjb250cm9scz48L3ZpZGVvPgog
ICAgICAgICA8cD5UZXN0IHRoYXQgY3VlcyBmcm9tIGluLWJhbmQgdHJhY2tzIGFyZSBkaXNwbGF5
ZWQgaW1tZWRpYXRlbHkgd2hlbiBhIHRyYWNrIGlzIG1hZGUgdmlzaWJsZS48L3A+CiAgICAgPC9i
b2R5PgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvbWVkaWEvdHJhY2svaW4tYmFuZC90cmFjay1p
bi1iYW5kLXNydC1ta3Ytc3R5bGUtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvbWVkaWEvdHJh
Y2svaW4tYmFuZC90cmFjay1pbi1iYW5kLXNydC1ta3Ytc3R5bGUtZXhwZWN0ZWQudHh0CmluZGV4
IDE2OTQ4NDg1OTY5YWJiYTk2OGNhOTgzM2VjODljZjkxZjExMDYzYzQuLmFhZWJjZDE5NWI5YzFk
NDU4YmRkZmEyYzc4NjRjN2E0YzEzOWYwNWUgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL21lZGlh
L3RyYWNrL2luLWJhbmQvdHJhY2staW4tYmFuZC1zcnQtbWt2LXN0eWxlLWV4cGVjdGVkLnR4dAor
KysgYi9MYXlvdXRUZXN0cy9tZWRpYS90cmFjay9pbi1iYW5kL3RyYWNrLWluLWJhbmQtc3J0LW1r
di1zdHlsZS1leHBlY3RlZC50eHQKQEAgLTIsNyArMiw2IEBAIFRlc3QgdGhhdCBzdHlsZSBpcyBh
cHBsaWVkIHRvIGFsbCBjdWVzIGNvcnJlY3RseS4KIEVWRU5UKGNhbnBsYXl0aHJvdWdoKQogCiAq
KiBTZXR0aW5nIHRyYWNrIDEgdG8gc2hvd2luZyBhbmQgc3RhcnRpbmcgdmlkZW8KLVJVTihpbmJh
bmRUcmFjazEgPSB2aWRlby50ZXh0VHJhY2tzWzBdKQogUlVOKHZpZGVvLnBsYXkoKSkKIEVWRU5U
KHNlZWtlZCkKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvbWVkaWEvdHJhY2svaW4tYmFuZC90
cmFjay1pbi1iYW5kLXNydC1ta3YtdHJhY2stb3JkZXItZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVz
dHMvbWVkaWEvdHJhY2svaW4tYmFuZC90cmFjay1pbi1iYW5kLXNydC1ta3YtdHJhY2stb3JkZXIt
ZXhwZWN0ZWQudHh0CmluZGV4IGRlOTA0MWU3YWI2OTcyYTE1ZjAxNzJlZjQ2YmZiMTg0ODFmNWEz
YjguLjBiMWRmZmQxMWJhNDhlMzcxNTQ4Zjk2OTFlMTkzOGNiMzU1Y2JjNjUgMTAwNjQ0Ci0tLSBh
L0xheW91dFRlc3RzL21lZGlhL3RyYWNrL2luLWJhbmQvdHJhY2staW4tYmFuZC1zcnQtbWt2LXRy
YWNrLW9yZGVyLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9tZWRpYS90cmFjay9pbi1i
YW5kL3RyYWNrLWluLWJhbmQtc3J0LW1rdi10cmFjay1vcmRlci1leHBlY3RlZC50eHQKQEAgLTEs
MjcgKzEsMjMgQEAKIFRlc3QgdHJhY2sgb3JkZXIgd2hlbiB1c2luZyBpbi1iYW5kIGFuZCBvdXQt
b2YtYmFuZCB0ZXh0IHRyYWNrcy4KIAotRVZFTlQoYWRkdHJhY2spCi1FWFBFQ1RFRCAoZXZlbnQu
dHJhY2sgPT0gJ3ZpZGVvLnRleHRUcmFja3NbMF0nKSBPSwotCi1FVkVOVChhZGR0cmFjaykKLUVY
UEVDVEVEIChldmVudC50cmFjayA9PSAndmlkZW8udGV4dFRyYWNrc1sxXScpIE9LCi0KIEVWRU5U
KGNhbnBsYXl0aHJvdWdoKQogCiAqKiBDaGVjayBpbml0aWFsIGluLWJhbmQgdHJhY2sgc3RhdGVz
Ci1FWFBFQ1RFRCAodmlkZW8udGV4dFRyYWNrcy5sZW5ndGggPT0gJzInKSBPSworRVhQRUNURUQg
KHZpZGVvLnRleHRUcmFja3MubGVuZ3RoID09ICczJykgT0sKIFJVTihpbmJhbmRUcmFjazEgPSB2
aWRlby50ZXh0VHJhY2tzWzBdKQogUlVOKGluYmFuZFRyYWNrMiA9IHZpZGVvLnRleHRUcmFja3Nb
MV0pCitSVU4oaW5iYW5kVHJhY2szID0gdmlkZW8udGV4dFRyYWNrc1syXSkKIAogKiogQWRkIHR3
byB0cmFja3MsIGNoZWNrIHNvcnQgb3JkZXIKIFJVTihhZGRUcmFjayA9IHZpZGVvLmFkZFRleHRU
cmFjaygnY2FwdGlvbnMnLCAnQ2FwdGlvbiBUcmFjaycsICdlbicpKQogUlVOKHRyYWNrRWxlbWVu
dCA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ3RyYWNrJykpCiBSVU4odmlkZW8uYXBwZW5kQ2hp
bGQodHJhY2tFbGVtZW50KSkKLUVYUEVDVEVEICh2aWRlby50ZXh0VHJhY2tzLmxlbmd0aCA9PSAn
NCcpIE9LCitFWFBFQ1RFRCAodmlkZW8udGV4dFRyYWNrcy5sZW5ndGggPT0gJzUnKSBPSwogRVhQ
RUNURUQgKHZpZGVvLnRleHRUcmFja3NbMF0gPT0gJ3RyYWNrRWxlbWVudC50cmFjaycpIE9LCiBF
WFBFQ1RFRCAodmlkZW8udGV4dFRyYWNrc1sxXSA9PSAnYWRkVHJhY2snKSBPSwogRVhQRUNURUQg
KHZpZGVvLnRleHRUcmFja3NbMl0gPT0gJ2luYmFuZFRyYWNrMScpIE9LCiBFWFBFQ1RFRCAodmlk
ZW8udGV4dFRyYWNrc1szXSA9PSAnaW5iYW5kVHJhY2syJykgT0sKK0VYUEVDVEVEICh2aWRlby50
ZXh0VHJhY2tzWzRdID09ICdpbmJhbmRUcmFjazMnKSBPSwogCiAqKiBVbmxvYWQgdmlkZW8gZmls
ZSwgY2hlY2sgdHJhY2sgY291bnQKIFJVTih2aWRlby5zcmMgPSAnJykKZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL21lZGlhL3RyYWNrL2luLWJhbmQvdHJhY2staW4tYmFuZC1zcnQtbWt2LXRyYWNr
LW9yZGVyLmh0bWwgYi9MYXlvdXRUZXN0cy9tZWRpYS90cmFjay9pbi1iYW5kL3RyYWNrLWluLWJh
bmQtc3J0LW1rdi10cmFjay1vcmRlci5odG1sCmluZGV4IDhiMGRlOGJjNThkNmJlZTE4ZTcyNWZi
ZjNlZmI2MTk0MTVkYTkzMzcuLmY0NTk0MzdkZjRiYzM5ZGVlY2FmZWI4MWIwNmJmYzNhMTYxMDdl
ODkgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL21lZGlhL3RyYWNrL2luLWJhbmQvdHJhY2staW4t
YmFuZC1zcnQtbWt2LXRyYWNrLW9yZGVyLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvbWVkaWEvdHJh
Y2svaW4tYmFuZC90cmFjay1pbi1iYW5kLXNydC1ta3YtdHJhY2stb3JkZXIuaHRtbApAQCAtNyw3
ICs3LDcgQEAKICAgICAgICAgPHNjcmlwdCBzcmM9Li4vLi4vdmlkZW8tdGVzdC5qcz48L3Njcmlw
dD4KICAgICAgICAgPHNjcmlwdCBzcmM9Li4vLi4vaW4tYmFuZC1jdWVzLmpzPjwvc2NyaXB0Pgog
ICAgIDwvaGVhZD4KLSAgICA8Ym9keSBvbmxvYWQ9InRlc3RUcmFja09yZGVyKCcuLi8uLi9jb250
ZW50L2NvdW50aW5nLXN1YnRpdGxlZC1zcnQubWt2JykiPgorICAgIDxib2R5IG9ubG9hZD0idGVz
dFRyYWNrT3JkZXIoJy4uLy4uL2NvbnRlbnQvY291bnRpbmctc3VidGl0bGVkLXNydC5ta3YnLCAz
KSI+CiAgICAgICAgIDx2aWRlbyBjb250cm9scz48L3ZpZGVvPgogICAgICAgICA8cD5UZXN0IHRy
YWNrIG9yZGVyIHdoZW4gdXNpbmcgaW4tYmFuZCBhbmQgb3V0LW9mLWJhbmQgdGV4dCB0cmFja3Mu
PC9wPgogICAgIDwvYm9keT4K
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>213014</attachid>
            <date>2013-09-30 11:10:20 -0700</date>
            <delta_ts>2013-10-01 08:49:26 -0700</delta_ts>
            <desc>Add ENABLE(VIDEO_TRACK) checks</desc>
            <filename>bug-122000-20130930121019.patch</filename>
            <type>text/plain</type>
            <size>34743</size>
            <attacher name="Brendan Long">b.long</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTU2NjYxCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggY2YyYjI1Mzk2MTExZmE5
MDM3NmJhNTBkMTljNDQ2NjgxOTA5MTZiNS4uMzNmYWQzMmIzZDA0NTU2ZDIxMzgxYThkZDE1NjQ5
Zjc0ZmI0YTZhZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE5IEBACisyMDEzLTA5LTMwICBCcmVu
ZGFuIExvbmcgIDxiLmxvbmdAY2FibGVsYWJzLmNvbT4KKworICAgICAgICBbR1N0cmVhbWVyXSBT
dXBwb3J0ICJjaGFwdGVyIiB0ZXh0IHRyYWNrcworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0
Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTIyMDAwCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZ
IChPT1BTISkuCisKKyAgICAgICAgVGVzdDogbWVkaWEvdHJhY2svaW4tYmFuZC90cmFjay1pbi1i
YW5kLW1rdi1jaGFwdGVycy5odG1sCisKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9nc3Ry
ZWFtZXIvSW5iYW5kTWV0YWRhdGFUZXh0VHJhY2tQcml2YXRlR1N0cmVhbWVyLmg6IE5ldyBjbGFz
cywgbmVlZGVkIGZvciBjdWVzIHRoYXQgYXJlbid0IGFzc29jaWF0ZWQgd2l0aCBHc3RQYWRzLgor
ICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL2dzdHJlYW1lci9NZWRpYVBsYXllclByaXZhdGVH
U3RyZWFtZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6TWVkaWFQbGF5ZXJQcml2YXRlR1N0cmVh
bWVyOjpoYW5kbGVNZXNzYWdlKTogQ2hlY2sgZm9yIHRhYmxlIG9mIGNvbnRlbnRzIG1lc3NhZ2Vz
LgorICAgICAgICAoV2ViQ29yZTo6TWVkaWFQbGF5ZXJQcml2YXRlR1N0cmVhbWVyOjpwcm9jZXNz
VGFibGVPZkNvbnRlbnRzKTogUGFyc2UgdGFibGUgb2YgY29udGVudHMgbWVzc2FnZXMgaW50byB0
ZXh0IHRyYWNrcy4KKyAgICAgICAgKFdlYkNvcmU6Ok1lZGlhUGxheWVyUHJpdmF0ZUdTdHJlYW1l
cjo6cHJvY2Vzc1RhYmxlT2ZDb250ZW50c0VudHJ5KTogUmVjdXJzaXZlIG1ldGhvZCBmb3IgcGFy
c2luZyBhbGwgb2YgdGhlIFRPQyBlbnRyaWVzLgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNz
L2dzdHJlYW1lci9NZWRpYVBsYXllclByaXZhdGVHU3RyZWFtZXIuaDogQWRkIHRoZSBwcm9jZXNz
VGFibGVPZkNvbnRlbnRzIGZ1bmN0aW9ucy4KKwogMjAxMy0wOS0zMCAgQ29tbWl0IFF1ZXVlICA8
Y29tbWl0LXF1ZXVlQHdlYmtpdC5vcmc+CiAKICAgICAgICAgVW5yZXZpZXdlZCwgcm9sbGluZyBv
dXQgcjE1NjY1Ni4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNz
L2dzdHJlYW1lci9JbmJhbmRNZXRhZGF0YVRleHRUcmFja1ByaXZhdGVHU3RyZWFtZXIuaCBiL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2dzdHJlYW1lci9JbmJhbmRNZXRhZGF0YVRl
eHRUcmFja1ByaXZhdGVHU3RyZWFtZXIuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4yZGI2NWU0ZjVjNmEyYWIxYzFl
ZTVmNTFlNDhmMzczYzg2YTZlMDQxCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vZ3JhcGhpY3MvZ3N0cmVhbWVyL0luYmFuZE1ldGFkYXRhVGV4dFRyYWNrUHJpdmF0
ZUdTdHJlYW1lci5oCkBAIC0wLDAgKzEsNjIgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTMg
Q2FibGUgVGVsZXZpc2lvbiBMYWJvcmF0b3JpZXMsIEluYy4KKyAqCisgKiBSZWRpc3RyaWJ1dGlv
biBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAq
IG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcg
Y29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqCisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291
cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0
aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICog
Mi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92
ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRo
ZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29y
IG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICog
VEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENP
TlRSSUJVVE9SUyBgYEFTIElTJycgQU5EIEFOWQorICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJB
TlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRAorICogV0FS
UkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQ
VVJQT1NFIEFSRQorICogRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBP
UiBJVFMgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZCisgKiBESVJFQ1QsIElORElSRUNU
LCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdF
UworICogKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJT
VElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOworICogTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJ
VFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OCisgKiBB
TlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJ
TElUWSwgT1IgVE9SVAorICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJ
U0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMKKyAqIFNPRlRXQVJFLCBFVkVO
IElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNp
Zm5kZWYgSW5iYW5kTWV0YWRhdGFUZXh0VHJhY2tQcml2YXRlR1N0cmVhbWVyX2gKKyNkZWZpbmUg
SW5iYW5kTWV0YWRhdGFUZXh0VHJhY2tQcml2YXRlR1N0cmVhbWVyX2gKKworI2lmIEVOQUJMRShW
SURFTykgJiYgVVNFKEdTVFJFQU1FUikgJiYgRU5BQkxFKFZJREVPX1RSQUNLKSAmJiBkZWZpbmVk
KEdTVF9BUElfVkVSU0lPTl8xKQorCisjaW5jbHVkZSAiR1JlZlB0ckdTdHJlYW1lci5oIgorI2lu
Y2x1ZGUgIkluYmFuZFRleHRUcmFja1ByaXZhdGUuaCIKKworbmFtZXNwYWNlIFdlYkNvcmUgewor
CitjbGFzcyBJbmJhbmRNZXRhZGF0YVRleHRUcmFja1ByaXZhdGVHU3RyZWFtZXIgOiBwdWJsaWMg
SW5iYW5kVGV4dFRyYWNrUHJpdmF0ZSB7CitwdWJsaWM6CisgICAgc3RhdGljIFBhc3NSZWZQdHI8
SW5iYW5kTWV0YWRhdGFUZXh0VHJhY2tQcml2YXRlR1N0cmVhbWVyPiBjcmVhdGUoS2luZCBraW5k
KQorICAgIHsKKyAgICAgICAgcmV0dXJuIGFkb3B0UmVmKG5ldyBJbmJhbmRNZXRhZGF0YVRleHRU
cmFja1ByaXZhdGVHU3RyZWFtZXIoa2luZCkpOworICAgIH0KKworICAgIH5JbmJhbmRNZXRhZGF0
YVRleHRUcmFja1ByaXZhdGVHU3RyZWFtZXIoKSB7IH0KKworICAgIHZpcnR1YWwgS2luZCBraW5k
KCkgY29uc3QgT1ZFUlJJREUgeyByZXR1cm4gbV9raW5kOyB9CisKK3ByaXZhdGU6CisgICAgSW5i
YW5kTWV0YWRhdGFUZXh0VHJhY2tQcml2YXRlR1N0cmVhbWVyKEtpbmQga2luZCkKKyAgICAgICAg
OiBJbmJhbmRUZXh0VHJhY2tQcml2YXRlKEdlbmVyaWMpCisgICAgICAgICwgbV9raW5kKGtpbmQp
CisgICAgeworCisgICAgfQorCisgICAgS2luZCBtX2tpbmQ7Cit9OworCit9IC8vIG5hbWVzcGFj
ZSBXZWJDb3JlCisKKyNlbmRpZiAvLyBFTkFCTEUoVklERU8pICYmIFVTRShHU1RSRUFNRVIpICYm
IEVOQUJMRShWSURFT19UUkFDSykgJiYgZGVmaW5lZChHU1RfQVBJX1ZFUlNJT05fMSkKKworI2Vu
ZGlmIC8vIEluYmFuZE1ldGFkYXRhVGV4dFRyYWNrUHJpdmF0ZUdTdHJlYW1lcl9oCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9nc3RyZWFtZXIvTWVkaWFQbGF5
ZXJQcml2YXRlR1N0cmVhbWVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNz
L2dzdHJlYW1lci9NZWRpYVBsYXllclByaXZhdGVHU3RyZWFtZXIuY3BwCmluZGV4IDAxMDcwMjEw
MjllNDVhMmMxYzRiYmQwNTkwNTgzYjk3NzVkY2E3ZmQuLmU3ZTJkOWI1ZDFlNjdhMTcwZTk3ZWE2
MmQ5NGNmMWJjNzMxNGVlOTMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dy
YXBoaWNzL2dzdHJlYW1lci9NZWRpYVBsYXllclByaXZhdGVHU3RyZWFtZXIuY3BwCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2dzdHJlYW1lci9NZWRpYVBsYXllclByaXZh
dGVHU3RyZWFtZXIuY3BwCkBAIC00Myw2ICs0Myw3IEBACiAjaW5jbHVkZSA8d3RmL3RleHQvQ1N0
cmluZy5oPgogCiAjaWYgRU5BQkxFKFZJREVPX1RSQUNLKSAmJiBkZWZpbmVkKEdTVF9BUElfVkVS
U0lPTl8xKQorI2luY2x1ZGUgIkluYmFuZE1ldGFkYXRhVGV4dFRyYWNrUHJpdmF0ZUdTdHJlYW1l
ci5oIgogI2luY2x1ZGUgIkluYmFuZFRleHRUcmFja1ByaXZhdGVHU3RyZWFtZXIuaCIKICNpbmNs
dWRlICJUZXh0Q29tYmluZXJHU3RyZWFtZXIuaCIKICNpbmNsdWRlICJUZXh0U2lua0dTdHJlYW1l
ci5oIgpAQCAtOTU4LDYgKzk1OSwxMSBAQCBnYm9vbGVhbiBNZWRpYVBsYXllclByaXZhdGVHU3Ry
ZWFtZXI6OmhhbmRsZU1lc3NhZ2UoR3N0TWVzc2FnZSogbWVzc2FnZSkKICAgICAgICAgICAgIGdf
ZnJlZShkZXRhaWwpOwogICAgICAgICB9CiAgICAgICAgIGJyZWFrOworI2lmIEVOQUJMRShWSURF
T19UUkFDSykgJiYgZGVmaW5lZChHU1RfQVBJX1ZFUlNJT05fMSkKKyAgICBjYXNlIEdTVF9NRVNT
QUdFX1RPQzoKKyAgICAgICAgcHJvY2Vzc1RhYmxlT2ZDb250ZW50cyhtZXNzYWdlKTsKKyAgICAg
ICAgYnJlYWs7CisjZW5kaWYKICAgICBkZWZhdWx0OgogICAgICAgICBMT0dfTUVESUFfTUVTU0FH
RSgiVW5oYW5kbGVkIEdTdHJlYW1lciBtZXNzYWdlIHR5cGU6ICVzIiwKICAgICAgICAgICAgICAg
ICAgICAgR1NUX01FU1NBR0VfVFlQRV9OQU1FKG1lc3NhZ2UpKTsKQEAgLTk4Niw2ICs5OTIsNTYg
QEAgdm9pZCBNZWRpYVBsYXllclByaXZhdGVHU3RyZWFtZXI6OnByb2Nlc3NCdWZmZXJpbmdTdGF0
cyhHc3RNZXNzYWdlKiBtZXNzYWdlKQogICAgIHVwZGF0ZVN0YXRlcygpOwogfQogCisjaWYgRU5B
QkxFKFZJREVPX1RSQUNLKSAmJiBkZWZpbmVkKEdTVF9BUElfVkVSU0lPTl8xKQordm9pZCBNZWRp
YVBsYXllclByaXZhdGVHU3RyZWFtZXI6OnByb2Nlc3NUYWJsZU9mQ29udGVudHMoR3N0TWVzc2Fn
ZSogbWVzc2FnZSkKK3sKKyAgICBpZiAobV9jaGFwdGVyc1RyYWNrKQorICAgICAgICBtX3BsYXll
ci0+cmVtb3ZlVGV4dFRyYWNrKG1fY2hhcHRlcnNUcmFjayk7CisKKyAgICBtX2NoYXB0ZXJzVHJh
Y2sgPSBJbmJhbmRNZXRhZGF0YVRleHRUcmFja1ByaXZhdGVHU3RyZWFtZXI6OmNyZWF0ZShJbmJh
bmRUZXh0VHJhY2tQcml2YXRlOjpDaGFwdGVycyk7CisgICAgbV9wbGF5ZXItPmFkZFRleHRUcmFj
ayhtX2NoYXB0ZXJzVHJhY2spOworCisgICAgR3N0VG9jKiB0b2M7CisgICAgZ2Jvb2xlYW4gdXBk
YXRlZDsKKyAgICBnc3RfbWVzc2FnZV9wYXJzZV90b2MobWVzc2FnZSwgJnRvYywgJnVwZGF0ZWQp
OworICAgIEFTU0VSVCh0b2MpOworCisgICAgZm9yIChHTGlzdCogaSA9IGdzdF90b2NfZ2V0X2Vu
dHJpZXModG9jKTsgaTsgaSA9IGktPm5leHQpCisgICAgICAgIHByb2Nlc3NUYWJsZU9mQ29udGVu
dHNFbnRyeShzdGF0aWNfY2FzdDxHc3RUb2NFbnRyeSo+KGktPmRhdGEpLCAwKTsKKworICAgIGdz
dF90b2NfdW5yZWYodG9jKTsKK30KKwordm9pZCBNZWRpYVBsYXllclByaXZhdGVHU3RyZWFtZXI6
OnByb2Nlc3NUYWJsZU9mQ29udGVudHNFbnRyeShHc3RUb2NFbnRyeSogZW50cnksIEdzdFRvY0Vu
dHJ5KiBwYXJlbnQpCit7CisgICAgQVNTRVJUKGVudHJ5KTsKKworICAgIFJlZlB0cjxHZW5lcmlj
Q3VlRGF0YT4gY3VlID0gR2VuZXJpY0N1ZURhdGE6OmNyZWF0ZSgpOworCisgICAgZ2ludDY0IHN0
YXJ0ID0gLTEsIHN0b3AgPSAtMTsKKyAgICBnc3RfdG9jX2VudHJ5X2dldF9zdGFydF9zdG9wX3Rp
bWVzKGVudHJ5LCAmc3RhcnQsICZzdG9wKTsKKyAgICBpZiAoc3RhcnQgIT0gLTEpCisgICAgICAg
IGN1ZS0+c2V0U3RhcnRUaW1lKHN0YXRpY19jYXN0PGRvdWJsZT4oc3RhcnQpIC8gR1NUX1NFQ09O
RCk7CisgICAgaWYgKHN0b3AgIT0gLTEpCisgICAgICAgIGN1ZS0+c2V0RW5kVGltZShzdGF0aWNf
Y2FzdDxkb3VibGU+KHN0b3ApIC8gR1NUX1NFQ09ORCk7CisKKyAgICBHc3RUYWdMaXN0KiB0YWdz
ID0gZ3N0X3RvY19lbnRyeV9nZXRfdGFncyhlbnRyeSk7CisgICAgaWYgKHRhZ3MpIHsKKyAgICAg
ICAgZ2NoYXIqIHRpdGxlID0gIDA7CisgICAgICAgIGdzdF90YWdfbGlzdF9nZXRfc3RyaW5nKHRh
Z3MsIEdTVF9UQUdfVElUTEUsICZ0aXRsZSk7CisgICAgICAgIGlmICh0aXRsZSkgeworICAgICAg
ICAgICAgY3VlLT5zZXRDb250ZW50KHRpdGxlKTsKKyAgICAgICAgICAgIGdfZnJlZSh0aXRsZSk7
CisgICAgICAgIH0KKyAgICB9CisKKyAgICBtX2NoYXB0ZXJzVHJhY2stPmNsaWVudCgpLT5hZGRH
ZW5lcmljQ3VlKG1fY2hhcHRlcnNUcmFjay5nZXQoKSwgY3VlLnJlbGVhc2UoKSk7CisKKyAgICBm
b3IgKEdMaXN0KiBpID0gZ3N0X3RvY19lbnRyeV9nZXRfc3ViX2VudHJpZXMoZW50cnkpOyBpOyBp
ID0gaS0+bmV4dCkKKyAgICAgICAgcHJvY2Vzc1RhYmxlT2ZDb250ZW50c0VudHJ5KHN0YXRpY19j
YXN0PEdzdFRvY0VudHJ5Kj4oaS0+ZGF0YSksIGVudHJ5KTsKK30KKyNlbmRpZgorCiB2b2lkIE1l
ZGlhUGxheWVyUHJpdmF0ZUdTdHJlYW1lcjo6ZmlsbFRpbWVyRmlyZWQoVGltZXI8TWVkaWFQbGF5
ZXJQcml2YXRlR1N0cmVhbWVyPiopCiB7CiAgICAgR3N0UXVlcnkqIHF1ZXJ5ID0gZ3N0X3F1ZXJ5
X25ld19idWZmZXJpbmcoR1NUX0ZPUk1BVF9QRVJDRU5UKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2dzdHJlYW1lci9NZWRpYVBsYXllclByaXZhdGVHU3Ry
ZWFtZXIuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2dzdHJlYW1lci9NZWRp
YVBsYXllclByaXZhdGVHU3RyZWFtZXIuaAppbmRleCAyNWM5YzUwNmFlMWMyZDM5N2U5MmYwNmI4
NDQzZGMxYTBmNWM4N2VmLi41OTYxZGE1MDc0NTJhN2E4ZTFkY2RiYjhiOGQ1OTdhOGIzZWMzMWJl
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9nc3RyZWFtZXIv
TWVkaWFQbGF5ZXJQcml2YXRlR1N0cmVhbWVyLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vZ3JhcGhpY3MvZ3N0cmVhbWVyL01lZGlhUGxheWVyUHJpdmF0ZUdTdHJlYW1lci5oCkBAIC0x
MzUsNiArMTM1LDEwIEBAIHByaXZhdGU6CiAKICAgICB2b2lkIHNldERvd25sb2FkQnVmZmVyaW5n
KCk7CiAgICAgdm9pZCBwcm9jZXNzQnVmZmVyaW5nU3RhdHMoR3N0TWVzc2FnZSopOworI2lmIEVO
QUJMRShWSURFT19UUkFDSykgJiYgZGVmaW5lZChHU1RfQVBJX1ZFUlNJT05fMSkKKyAgICB2b2lk
IHByb2Nlc3NUYWJsZU9mQ29udGVudHMoR3N0TWVzc2FnZSopOworICAgIHZvaWQgcHJvY2Vzc1Rh
YmxlT2ZDb250ZW50c0VudHJ5KEdzdFRvY0VudHJ5KiwgR3N0VG9jRW50cnkqIHBhcmVudCk7Cisj
ZW5kaWYKIAogICAgIHZpcnR1YWwgU3RyaW5nIGVuZ2luZURlc2NyaXB0aW9uKCkgY29uc3QgeyBy
ZXR1cm4gIkdTdHJlYW1lciI7IH0KICAgICB2aXJ0dWFsIGJvb2wgaXNMaXZlU3RyZWFtKCkgY29u
c3QgeyByZXR1cm4gbV9pc1N0cmVhbWluZzsgfQpAQCAtMTg3LDYgKzE5MSw3IEBAIHByaXZhdGU6
CiAgICAgYm9vbCBtX21pc3NpbmdQbHVnaW5zOwogI2lmIEVOQUJMRShWSURFT19UUkFDSykgJiYg
ZGVmaW5lZChHU1RfQVBJX1ZFUlNJT05fMSkKICAgICBWZWN0b3I8UmVmUHRyPEluYmFuZFRleHRU
cmFja1ByaXZhdGVHU3RyZWFtZXI+ID4gbV90ZXh0VHJhY2tzOworICAgIFJlZlB0cjxJbmJhbmRU
ZXh0VHJhY2tQcml2YXRlPiBtX2NoYXB0ZXJzVHJhY2s7CiAjZW5kaWYKIH07CiB9CmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKaW5kZXgg
OWQwMWQ3YmZjMTljODJlOTIxMWNiMDRkNGMzOTQyMzhiZjEwYWUyZS4uMDlmZjI4MzE5ZGJkOTIw
ZjU5YjliNWU3MDhjMjUxYTc2OGVkZWIzOSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvQ2hhbmdl
TG9nCisrKyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMzIEBACisyMDEzLTA5
LTMwICBCcmVuZGFuIExvbmcgIDxiLmxvbmdAY2FibGVsYWJzLmNvbT4KKworICAgICAgICBbR1N0
cmVhbWVyXSBTdXBwb3J0ICJjaGFwdGVyIiB0ZXh0IHRyYWNrcworICAgICAgICBodHRwczovL2J1
Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTIyMDAwCisKKyAgICAgICAgUmV2aWV3ZWQg
YnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBtZWRpYS9jb250ZW50L2NvdW50aW5nLXN1
YnRpdGxlZC1zcnQubWt2OiBBZGRlZCBjaGFwdGVycyBtZXRhZGF0YS4KKyAgICAgICAgKiBtZWRp
YS90cmFjay9pbi1iYW5kL3RyYWNrLWluLWJhbmQtbWt2LWNoYXB0ZXJzLWV4cGVjdGVkLnR4dDog
TmV3IHRlc3QsIHNpbWlsYXIgdG8gY3Vlcy1hZGRlZC1vbmUsIGJ1dCB1c2VzICJjaGFwdGVycyIg
dHJhY2suCisgICAgICAgICogbWVkaWEvdHJhY2svaW4tYmFuZC90cmFjay1pbi1iYW5kLW1rdi1j
aGFwdGVycy5odG1sOiBTYW1lLgorICAgICAgICAqIG1lZGlhL2luLWJhbmQtY3Vlcy5qczogVXBk
YXRlZCB0ZXN0cyB0byBoYW5kbGUgdGhlIG5ldyAiY2hhcHRlcnMiIHRyYWNrLgorICAgICAgICAq
IG1lZGlhL3RyYWNrL2luLWJhbmQvdHJhY2staW4tYmFuZC1rYXRlLW9nZy1jdWVzLWFkZGVkLW9u
Y2UtZXhwZWN0ZWQudHh0OiBTYW1lLgorICAgICAgICAqIG1lZGlhL3RyYWNrL2luLWJhbmQvdHJh
Y2staW4tYmFuZC1rYXRlLW9nZy1jdWVzLWFkZGVkLW9uY2UuaHRtbDogU2FtZS4KKyAgICAgICAg
KiBtZWRpYS90cmFjay9pbi1iYW5kL3RyYWNrLWluLWJhbmQta2F0ZS1vZ2ctbW9kZS1leHBlY3Rl
ZC50eHQ6IFNhbWUuCisgICAgICAgICogbWVkaWEvdHJhY2svaW4tYmFuZC90cmFjay1pbi1iYW5k
LWthdGUtb2dnLW1vZGUuaHRtbDogU2FtZS4KKyAgICAgICAgKiBtZWRpYS90cmFjay9pbi1iYW5k
L3RyYWNrLWluLWJhbmQta2F0ZS1vZ2ctc3R5bGUtZXhwZWN0ZWQudHh0OiBTYW1lLgorICAgICAg
ICAqIG1lZGlhL3RyYWNrL2luLWJhbmQvdHJhY2staW4tYmFuZC1rYXRlLW9nZy10cmFjay1vcmRl
ci1leHBlY3RlZC50eHQ6IFNhbWUuCisgICAgICAgICogbWVkaWEvdHJhY2svaW4tYmFuZC90cmFj
ay1pbi1iYW5kLWthdGUtb2dnLXRyYWNrLW9yZGVyLmh0bWw6IFNhbWUuCisgICAgICAgICogbWVk
aWEvdHJhY2svaW4tYmFuZC90cmFjay1pbi1iYW5kLXNydC1ta3YtY3Vlcy1hZGRlZC1vbmNlLWV4
cGVjdGVkLnR4dDogU2FtZS4KKyAgICAgICAgKiBtZWRpYS90cmFjay9pbi1iYW5kL3RyYWNrLWlu
LWJhbmQtc3J0LW1rdi1jdWVzLWFkZGVkLW9uY2UuaHRtbDogU2FtZS4KKyAgICAgICAgKiBtZWRp
YS90cmFjay9pbi1iYW5kL3RyYWNrLWluLWJhbmQtc3J0LW1rdi1raW5kLWV4cGVjdGVkLnR4dDog
U2FtZS4KKyAgICAgICAgKiBtZWRpYS90cmFjay9pbi1iYW5kL3RyYWNrLWluLWJhbmQtc3J0LW1r
di1raW5kLmh0bWw6IFNhbWUuCisgICAgICAgICogbWVkaWEvdHJhY2svaW4tYmFuZC90cmFjay1p
bi1iYW5kLXNydC1ta3YtbGFuZ3VhZ2UtZXhwZWN0ZWQudHh0OiBTYW1lLgorICAgICAgICAqIG1l
ZGlhL3RyYWNrL2luLWJhbmQvdHJhY2staW4tYmFuZC1zcnQtbWt2LWxhbmd1YWdlLmh0bWw6IFNh
bWUuCisgICAgICAgICogbWVkaWEvdHJhY2svaW4tYmFuZC90cmFjay1pbi1iYW5kLXNydC1ta3Yt
bW9kZS1leHBlY3RlZC50eHQ6IFNhbWUuCisgICAgICAgICogbWVkaWEvdHJhY2svaW4tYmFuZC90
cmFjay1pbi1iYW5kLXNydC1ta3YtbW9kZS5odG1sOiBTYW1lLgorICAgICAgICAqIG1lZGlhL3Ry
YWNrL2luLWJhbmQvdHJhY2staW4tYmFuZC1zcnQtbWt2LXN0eWxlLWV4cGVjdGVkLnR4dDogU2Ft
ZS4KKyAgICAgICAgKiBtZWRpYS90cmFjay9pbi1iYW5kL3RyYWNrLWluLWJhbmQtc3J0LW1rdi10
cmFjay1vcmRlci1leHBlY3RlZC50eHQ6IFNhbWUuCisgICAgICAgICogbWVkaWEvdHJhY2svaW4t
YmFuZC90cmFjay1pbi1iYW5kLXNydC1ta3YtdHJhY2stb3JkZXIuaHRtbDogU2FtZS4KKwogMjAx
My0wOS0zMCAgQ29tbWl0IFF1ZXVlICA8Y29tbWl0LXF1ZXVlQHdlYmtpdC5vcmc+CiAKICAgICAg
ICAgVW5yZXZpZXdlZCwgcm9sbGluZyBvdXQgcjE1NjY1Ni4KZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL21lZGlhL2NvbnRlbnQvY291bnRpbmctc3VidGl0bGVkLXNydC5ta3YgYi9MYXlvdXRUZXN0
cy9tZWRpYS9jb250ZW50L2NvdW50aW5nLXN1YnRpdGxlZC1zcnQubWt2CmluZGV4IDRjMDhlYzA4
MzU2NzAxOWJkODNhYTZmZDc2ZDI1NThmMTMyYTlhZjAuLmQ2ZTkxNzljOGY4NzljNDU0ZjA4Yjcw
NTU3NmJlMzBkYTczZDE1YTAgMTAwNjQ0CkdJVCBiaW5hcnkgcGF0Y2gKZGVsdGEgMjAxNwp6Y21Z
K0RlQHY4aDlMTWtaYXJgdHExVEc7TTJaK0xuQ05fVVRUTkU2TV5Ze0B1dzRAKXhYKDl2ZGE0WFZ8
PVMjTnsKejNFWUE1U2w2NT11RmFhOEo+P2ZWYW4pa2hUd0NoSTVeSntBIyt1YSRZJjYlWiYrfmww
cExxRTleP0NwSkptMnM0Cnp4aj5WPzlaZD9YamxUUENxQzM8ITdUaT5qSmg4K2JLMzRuVFRlaXs8
NCVVN3xRbSk7dnheblQqbUJqLWFaMnEpPwp6KzBSJENIKEk+SWZtMXppaHg9Rm1JUDNnclg3dCs1
dTVOOUBtVCZkeHJqb0YwdzFtMVljTGlnSHR7JGp6VVV5OUAKejdUMV8heGx9Un5SNG5+fGFlTXFQ
N1ZsU0dFQWw8TnRqfHYhS01DV0xpcU8mVEAyLTJMd2J8cD95VDkyfWRaZzNTCnp2aFVLVGhDXl4j
ciolaVI5TGt6MXsmQGwmcz11IyV8RXUwTSQyeTFDKTZtKmQqNjhLRmspWW8mJkEwWFp2dHd4Ywp6
V1E3fk9nWnwhYUZWOT1pZEg+aG9BJj5UTiUzdFo0e2ZWNVlmd3tFfnQhUHY0OSZJWD03ZDd5OENg
KEhgNlZwdEsKejVgPXdHWUhFVXpQMHU2PytYQj5mUDhoZVVlKyZ5YmJtRnw9ZTFZYzBpZHl0d3Rl
OCpsK1FjezdzTnhyNlYkP2RuCnp4UlE0Rmg/QGA3U3kzOH5RTGxeQUdXdUQoKVo5bVJncnNSdlRe
XkRPWH5pak5POVE8dSRiTH1gM1VVRWBNd1Vsagp6cnpfcitaOzB4e3F3O0Z7dXRRRXU1bl5lfHB1
RkArO1ZkbkBBeEFgQ2RUc2JYeGYxVHY2YnRSMVEtbFleSmArKS0KekBOcGdWJV8qVippMmRsdEx+
I0Y0Qn5GaFNebj9hOGxRX3F8NU9afS1FQEpVTFJRcU5rV01lRHYkfXByYiZnQzBCCnozPj9zaTxs
dzlBRXstVSZFfGpLdDAxKUNGJDZTV05ae1M7cXQ/TndjQD9rVWYlXyZAN3speGUlRX48cHIoUjtp
dQp6aXRxcCtXTyo/TmpkZDlZemsjPFJqe2VUMUUtbEE4aFBrQDVqJHhsaFZsenpnYGFZQzElO29p
YDRJQmpaT1l8TjYKem5tVUVsN0phKXhqbD96NGZQUFUxQX1icH1TfjxAcDxYK19RQmxDSitnakJa
fiokfjdBWHNHVlEmUDUmQSsxfGBNCnpBRipOdkFYMnk8Qk4qMnM0ODg/PCFuMDw1U3Nyaj4kMzwr
dzRDO20zdlZHTzBsWG9tV2pVR1RHc354aSMqRGFHeQp6XiNORzY+aHR4bDtvU0RTP3FoU3s/Mlc/
YkVoI2VSUmFmOCtqUHR5aj9gNkMxRFNAdyQpV3QwI0FYMnkpRDtOaDAKejxJZj5hekdjPXx4ZmdR
T1NNNCE0Ky1BeD5lek18RmgqI1JQWClMPT1WQ3RXK1A4IVRlVyoyeWpCWVg1OWNFQ0xJCnoyVXU2
MVNEZTdFckRPQisyeDxDbEE9aGAlXi1YYHs0eWhLdGdPcz9KP35vUzlCWG1VOFhqc2lTTEBAcGg8
TTQoYgp6K2k1bmBUKk9ZcyhOSj8wSkpUSzUqP058RHJrfSRJSzstZDhqOV5Aa0YhJk1WOFBsayoq
OVJePzQyPCgoMTJua2EKekgjblNpVyhqdVFFYVJQayppbFA+TlhCezBXP1laQlMqOFo9enpmc29n
PHMmQChXQ3A9OVFiWUlTJEU4TlJpYVQxCnpGT1BBYTdsQXpBbml1JkJJZUZZNzEwb3hxI3dmPFkh
dVQlYSVNUDNNSE08dmIpWXNAZ3lFX2JEbyFofmBUMj5gcQpXbmZvUWFGa291JHEtPjlhODdaZy1Q
dnc4MV9yWUhQCgpkZWx0YSAxODI3CnpjbVkrRVlpdl94N3tfPHNeUntEaXUkeWg/PSgzZURWWUNf
SVo1THJGdSMxZHJPZlhJfjcjWSNUOCQtODZLfWRKcgp6aTdXX2ZuPmtPeW1lNkhGaCROV3BCKXA3
OUtOeVQ1aEQxVG90dFFHaEtXSXxLV0pZNyteSWplfWBfJU9KfDNDbCMKel5QSlE0K0ZhPWNVWWQ5
YEgqPWBDYjdKNV52TjdXTTtxTER7dUZZNSUzekxiIVNiZnBhQHt0PTZHUGY/THxJPFheCnokR3oh
T04xaU8xe14+Kz0/NktXKD1UPWR6JDV8OGpKNk1ASUlkek5+b2pLM0crY3lFOXNuTXlDVmZmbmUl
SFZ0QQp6eUhvaml3YiQ5KDZ6PzQ/bitgZDVDZjloS2hVdlVGP1E9ZTM3MmleNXl6MXB3ZU1WPSgm
WVUtQGRFbCZaI2whelEKelotaWc2R3NVRXEqWEVQaVR5QjwtIXZwclFRNDsxdUFDbFo8ZH1mcTlK
IXBTZlY2TnU+bkM2dmJ7QzB1KVJAeyFCCnpIYUdDQE5pJDEkLSlYYUJwV1c9QzVxX0RfNCt3d0ZM
KzF8S2VfNkRTU0k2bDBnb2hZaT1gJXxCQ1l6UlJxXlR7Nwp6UX5iRmJHKXAlQll5QzF8Z0BVYCVa
P3N3SXhNU3Q7PEJPSlloeHh3RVQ0d3JWMHBnMW1rJTBNKyUpKilYczQxdnoKei1KLXIyKmplemRS
TDMzZ2gjQEl3U3BgOCVQUHd1Z2BUJSNPIUw2YCVIdztPZmFGfCk4UzkhNUNZZilofGY3QTBvCnoq
dClNVjdIfnx9TnEhVCM9THdmUmRVej5ASV5tOTxrUW5OYFFDKVpPbENKWUlKcjlJRXsxaDFGeChk
VSojMnBnSAp6Vjd1SiFUPXVQUFNme1lJWnx5O3hTSylIXnRYK3o9eVFmaiZxe0glRjx7eWRJR0hq
SCFpUzBnZFNwTXJnQXpxOWAKekYmNXFqLW1kJENzUlMxOE5CK1BpKjh1QXRrbDdIVklRcU1Ydjlu
K1pJfWYoIyZnQ0FBMEt+Iz9XNW57OTZod3Y7CnpSMGQ/UCp5JGM8NW9nTEI2LVIkZGxqTHdgVkcy
N0ppMCVaVz8qem1gaHA8eXw1ZHF2VG9+T1BKVlc/OS0zK09LVAp6TGt3eUl0RERFY2t8dVh4X2Nx
KX5hcGt1VSV1fDFDKTRibEhiVlFGM0t4eyloTWt4Kj5pb2J5VCFKQlM+ZCtTbjsKensmd1l1dndn
cW52cWBGN1NOZDErSmFzb1BkJkw2dm14SVBDTXt3UTEwcWcrMThUMzZ1LSFfaDJXbmJMYXYjaHNm
CnpESGw1a2V7YTN5dSl7KytkSXoocFM/Xkd1dU9rNTJHaHpqaCpkdGVRZ19YfnteeEw0dmcjT0dv
NyNYYT4kbz1vQAp6JGx3X3EwbUxIajs4dSNtUjtKe35reXJmYl9Pfjl6WVFAcHRJd15VdyhQNVFR
PzdTWS1vcSpKbkd5JD1TJm9FblkKemsjUmp9ZjFhV0s0eHo4I2g8ZXBZRntnQ2tKQ1RQTCs8ODAx
LTwka1ZFM1dlamV9PjFnekZ4MFR5O2hHPEsmKlo8CnpNa3gqPml0azNnZGVINmZ5N3hFfk19T0Nw
XnV4PW04UFpxTkByPHNsYEhJKTd2anQ8Mz9YISZUN3lsMCtzSXdIYApIQmk4PlB7OFZNZAoKZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL21lZGlhL2luLWJhbmQtY3Vlcy5qcyBiL0xheW91dFRlc3Rz
L21lZGlhL2luLWJhbmQtY3Vlcy5qcwppbmRleCA0ZmUxNTc3OTZjOGJhODFlNWY1Njg1ZGY3NDU1
ODc0NTAxYWEwNmNmLi4xODUxOTFhMzc2MmQwNDNmNjcwZDBlMTJhZWI3YTRhZjFmNjA5NThkIDEw
MDY0NAotLS0gYS9MYXlvdXRUZXN0cy9tZWRpYS9pbi1iYW5kLWN1ZXMuanMKKysrIGIvTGF5b3V0
VGVzdHMvbWVkaWEvaW4tYmFuZC1jdWVzLmpzCkBAIC0xNyw3ICsxNyw3IEBAIGZ1bmN0aW9uIHRl
c3RBdHRyaWJ1dGUodXJpLCBhdHRyaWJ1dGUsIHZhbHVlcykKICAgICB3YWl0Rm9yRXZlbnQoJ2Nh
bnBsYXl0aHJvdWdoJywgY2FucGxheXRocm91Z2gpOwogfQogCi1mdW5jdGlvbiB0ZXN0Q3Vlc0Fk
ZGVkT25jZSh1cmkpCitmdW5jdGlvbiB0ZXN0Q3Vlc0FkZGVkT25jZSh1cmksIGtpbmQpCiB7CiAg
ICAgdmFyIHNlZWtlZENvdW50ID0gMDsKICAgICB2YXIgY3Vlc1N0YXJ0cyA9IFtdOwpAQCAtNjUs
NyArNjUsMTIgQEAgZnVuY3Rpb24gdGVzdEN1ZXNBZGRlZE9uY2UodXJpKQogICAgICAgICBzZXRJ
bnRlcnZhbChwb2xsUHJvZ3Jlc3MsIDEwMCk7CiAKICAgICAgICAgY29uc29sZVdyaXRlKCI8YnI+
PGk+KiogU2V0dGluZyB0cmFjayAxIHRvIHNob3dpbmc8L2k+Iik7Ci0gICAgICAgIHJ1bigiaW5i
YW5kVHJhY2sxID0gdmlkZW8udGV4dFRyYWNrc1swXSIpOworICAgICAgICBmb3IgKHZhciBpID0g
MDsgaSA8IHZpZGVvLnRleHRUcmFja3MubGVuZ3RoOyArK2kpIHsKKyAgICAgICAgICAgIGlmICh2
aWRlby50ZXh0VHJhY2tzW2ldLmtpbmQgPT0ga2luZCkgeworICAgICAgICAgICAgICAgIGluYmFu
ZFRyYWNrMSA9IHZpZGVvLnRleHRUcmFja3NbaV07CisgICAgICAgICAgICAgICAgYnJlYWs7Cisg
ICAgICAgICAgICB9CisgICAgICAgIH0KICAgICAgICAgcnVuKCJpbmJhbmRUcmFjazEubW9kZSA9
ICdzaG93aW5nJyIpOwogICAgICAgICBydW4oInZpZGVvLnBsYXkoKSIpOwogICAgIH0KQEAgLTc1
LDcgKzgwLDcgQEAgZnVuY3Rpb24gdGVzdEN1ZXNBZGRlZE9uY2UodXJpKQogICAgIHdhaXRGb3JF
dmVudCgnY2FucGxheXRocm91Z2gnLCBjYW5wbGF5dGhyb3VnaCk7CiB9CiAKLWZ1bmN0aW9uIHRl
c3RNb2RlKHVyaSkKK2Z1bmN0aW9uIHRlc3RNb2RlKHVyaSwga2luZCkKIHsKICAgICBmdW5jdGlv
biBzZWVrZWQoKQogICAgIHsKQEAgLTkzLDcgKzk4LDEyIEBAIGZ1bmN0aW9uIHRlc3RNb2RlKHVy
aSkKIAogICAgIGZ1bmN0aW9uIGNhbnBsYXl0aHJvdWdoKCkKICAgICB7Ci0gICAgICAgIHJ1bigi
aW5iYW5kVHJhY2sxID0gdmlkZW8udGV4dFRyYWNrc1swXSIpOworICAgICAgICBmb3IgKHZhciBp
ID0gMDsgaSA8IHZpZGVvLnRleHRUcmFja3MubGVuZ3RoOyArK2kpIHsKKyAgICAgICAgICAgIGlm
ICh2aWRlby50ZXh0VHJhY2tzW2ldLmtpbmQgPT0ga2luZCkgeworICAgICAgICAgICAgICAgIGlu
YmFuZFRyYWNrMSA9IHZpZGVvLnRleHRUcmFja3NbaV07CisgICAgICAgICAgICAgICAgYnJlYWs7
CisgICAgICAgICAgICB9CisgICAgICAgIH0KIAogICAgICAgICBjb25zb2xlV3JpdGUoIjxicj48
aT4qKiBBIGhpZGRlbiB0cmFjayBzaG91bGQgbm90IGhhdmUgdmlzaWJsZSBjdWVzPCIgKyAiL2k+
Iik7CiAgICAgICAgIHJ1bigiaW5iYW5kVHJhY2sxLm1vZGUgPSAnaGlkZGVuJyIpOwpAQCAtMTI3
LDcgKzEzNywxMiBAQCBmdW5jdGlvbiB0ZXN0U3R5bGUodXJpKQogICAgIGZ1bmN0aW9uIGNhbnBs
YXl0aHJvdWdoKCkKICAgICB7CiAgICAgICAgIGNvbnNvbGVXcml0ZSgiPGJyPjxpPioqIFNldHRp
bmcgdHJhY2sgMSB0byBzaG93aW5nIGFuZCBzdGFydGluZyB2aWRlbzwvaT4iKTsKLSAgICAgICAg
cnVuKCJpbmJhbmRUcmFjazEgPSB2aWRlby50ZXh0VHJhY2tzWzBdIik7CisgICAgICAgIGZvciAo
dmFyIGkgPSAwOyBpIDwgdmlkZW8udGV4dFRyYWNrcy5sZW5ndGg7ICsraSkgeworICAgICAgICAg
ICAgaWYgKHZpZGVvLnRleHRUcmFja3NbaV0ua2luZCA9PSAic3VidGl0bGVzIiB8fCB2aWRlby50
ZXh0VHJhY2tzW2ldLmtpbmQgPT0gImNhcHRpb25zIikgeworICAgICAgICAgICAgICAgIGluYmFu
ZFRyYWNrMSA9IHZpZGVvLnRleHRUcmFja3NbaV07CisgICAgICAgICAgICAgICAgYnJlYWs7Cisg
ICAgICAgICAgICB9CisgICAgICAgIH0KIAogICAgICAgICBpbmJhbmRUcmFjazEubW9kZSA9ICdz
aG93aW5nJzsKICAgICAgICAgcnVuKCJ2aWRlby5wbGF5KCkiKTsKQEAgLTE0MSwxNyArMTU2LDcg
QEAgZnVuY3Rpb24gdGVzdFN0eWxlKHVyaSkKICAgICB3YWl0Rm9yRXZlbnQoJ2NhbnBsYXl0aHJv
dWdoJywgY2FucGxheXRocm91Z2gpOwogfQogCi1mdW5jdGlvbiB0ZXN0VHJhY2tPcmRlcih1cmkp
IHsKLSAgICB2YXIgYWRkdHJhY2tFdmVudENvdW50ID0gMDsKLQotICAgIGZ1bmN0aW9uIHRyYWNr
QWRkZWQoZXZlbnQpCi0gICAgewotICAgICAgICBjb25zb2xlV3JpdGUoIkVWRU5UKCIgKyBldmVu
dC50eXBlICsgIikiKTsKLSAgICAgICAgY29tcGFyZVRyYWNrcygiZXZlbnQudHJhY2siLCAidmlk
ZW8udGV4dFRyYWNrc1siICsgYWRkdHJhY2tFdmVudENvdW50ICsgIl0iKTsKLSAgICAgICAgKyth
ZGR0cmFja0V2ZW50Q291bnQ7Ci0gICAgICAgIGNvbnNvbGVXcml0ZSgiIik7Ci0gICAgfQotCitm
dW5jdGlvbiB0ZXN0VHJhY2tPcmRlcih1cmksIG51bUluQmFuZFRyYWNrcykgewogICAgIGZ1bmN0
aW9uIGNvbXBhcmVUcmFja3ModHJhY2sxLCB0cmFjazIpCiAgICAgewogICAgICAgICB2YXIgZXF1
YWwgPSAoZXZhbCh0cmFjazEpID09IGV2YWwodHJhY2syKSk7CkBAIC0xNjEsMjEgKzE2NiwyMyBA
QCBmdW5jdGlvbiB0ZXN0VHJhY2tPcmRlcih1cmkpIHsKICAgICBmdW5jdGlvbiBjYW5wbGF5dGhy
b3VnaCgpCiAgICAgewogICAgICAgICBjb25zb2xlV3JpdGUoIjxicj48aT4qKiBDaGVjayBpbml0
aWFsIGluLWJhbmQgdHJhY2sgc3RhdGVzPC9pPiIpOwotICAgICAgICB0ZXN0RXhwZWN0ZWQoInZp
ZGVvLnRleHRUcmFja3MubGVuZ3RoIiwgMik7Ci0gICAgICAgIHJ1bigiaW5iYW5kVHJhY2sxID0g
dmlkZW8udGV4dFRyYWNrc1swXSIpOwotICAgICAgICBydW4oImluYmFuZFRyYWNrMiA9IHZpZGVv
LnRleHRUcmFja3NbMV0iKTsKKyAgICAgICAgdGVzdEV4cGVjdGVkKCJ2aWRlby50ZXh0VHJhY2tz
Lmxlbmd0aCIsIG51bUluQmFuZFRyYWNrcyk7CisgICAgICAgIGZvciAodmFyIGkgPSAwOyBpIDwg
bnVtSW5CYW5kVHJhY2tzOyArK2kpIHsKKyAgICAgICAgICBydW4oImluYmFuZFRyYWNrIiArIChp
ICsgMSkgKyAiID0gdmlkZW8udGV4dFRyYWNrc1siICsgaSArICJdIik7CisgICAgICAgIH0KIAog
ICAgICAgICBjb25zb2xlV3JpdGUoIjxicj48aT4qKiBBZGQgdHdvIHRyYWNrcywgY2hlY2sgc29y
dCBvcmRlcjwiICsgIi9pPiIpOwogICAgICAgICBydW4oImFkZFRyYWNrID0gdmlkZW8uYWRkVGV4
dFRyYWNrKCdjYXB0aW9ucycsICdDYXB0aW9uIFRyYWNrJywgJ2VuJykiKTsKICAgICAgICAgcnVu
KCJ0cmFja0VsZW1lbnQgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCd0cmFjaycpIik7CiAgICAg
ICAgIHRyYWNrRWxlbWVudC5sYWJlbCA9ICc8dHJhY2s+JzsKICAgICAgICAgcnVuKCJ2aWRlby5h
cHBlbmRDaGlsZCh0cmFja0VsZW1lbnQpIik7Ci0gICAgICAgIHRlc3RFeHBlY3RlZCgidmlkZW8u
dGV4dFRyYWNrcy5sZW5ndGgiLCA0KTsKKyAgICAgICAgdGVzdEV4cGVjdGVkKCJ2aWRlby50ZXh0
VHJhY2tzLmxlbmd0aCIsIG51bUluQmFuZFRyYWNrcyArIDIpOwogCiAgICAgICAgIGNvbXBhcmVU
cmFja3MoInZpZGVvLnRleHRUcmFja3NbMF0iLCAidHJhY2tFbGVtZW50LnRyYWNrIik7CiAgICAg
ICAgIGNvbXBhcmVUcmFja3MoInZpZGVvLnRleHRUcmFja3NbMV0iLCAiYWRkVHJhY2siKTsKLSAg
ICAgICAgY29tcGFyZVRyYWNrcygidmlkZW8udGV4dFRyYWNrc1syXSIsICJpbmJhbmRUcmFjazEi
KTsKLSAgICAgICAgY29tcGFyZVRyYWNrcygidmlkZW8udGV4dFRyYWNrc1szXSIsICJpbmJhbmRU
cmFjazIiKTsKKyAgICAgICAgZm9yICh2YXIgaSA9IDE7IGkgPCBudW1JbkJhbmRUcmFja3MgKyAx
OyArK2kpIHsKKyAgICAgICAgICBjb21wYXJlVHJhY2tzKCJ2aWRlby50ZXh0VHJhY2tzWyIgKyAo
aSArIDEpICsgIl0iLCAiaW5iYW5kVHJhY2siICsgaSk7CisgICAgICAgIH0KIAogICAgICAgICBj
b25zb2xlV3JpdGUoIjxicj48aT4qKiBVbmxvYWQgdmlkZW8gZmlsZSwgY2hlY2sgdHJhY2sgY291
bnQ8IiArICIvaT4iKTsKICAgICAgICAgcnVuKCJ2aWRlby5zcmMgPSAnJyIpOwpAQCAtMTg2LDcg
KzE5Myw2IEBAIGZ1bmN0aW9uIHRlc3RUcmFja09yZGVyKHVyaSkgewogICAgIH0KIAogICAgIGZp
bmRNZWRpYUVsZW1lbnQoKTsKLSAgICB2aWRlby50ZXh0VHJhY2tzLmFkZEV2ZW50TGlzdGVuZXIo
ImFkZHRyYWNrIiwgdHJhY2tBZGRlZCk7CiAgICAgdmlkZW8uc3JjID0gdXJpOwogICAgIHdhaXRG
b3JFdmVudCgnY2FucGxheXRocm91Z2gnLCBjYW5wbGF5dGhyb3VnaCk7CiB9CmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9tZWRpYS90cmFjay9pbi1iYW5kL3RyYWNrLWluLWJhbmQta2F0ZS1vZ2ct
Y3Vlcy1hZGRlZC1vbmNlLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL21lZGlhL3RyYWNrL2lu
LWJhbmQvdHJhY2staW4tYmFuZC1rYXRlLW9nZy1jdWVzLWFkZGVkLW9uY2UtZXhwZWN0ZWQudHh0
CmluZGV4IDYzZGI1ZTdlZjAzZGRlNjgzODg2MDZkNjE5OWUzYjkwNTFjZjhlNzIuLmU4ZjZiNzc5
NzIwNDJjZGFmNmQzMWMzYmNjMjdjYmI1OTBlMzc0ZjcgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3Rz
L21lZGlhL3RyYWNrL2luLWJhbmQvdHJhY2staW4tYmFuZC1rYXRlLW9nZy1jdWVzLWFkZGVkLW9u
Y2UtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL21lZGlhL3RyYWNrL2luLWJhbmQvdHJh
Y2staW4tYmFuZC1rYXRlLW9nZy1jdWVzLWFkZGVkLW9uY2UtZXhwZWN0ZWQudHh0CkBAIC0zLDcg
KzMsNiBAQCBDaGVjayB0aGF0IHdlIGRvbid0IGhhdmUgZHVwbGljYXRlIGN1ZXMgYWZ0ZXIgc2Vl
a2luZyBiYWNrd2FyZHMuCiBFVkVOVChjYW5wbGF5dGhyb3VnaCkKIAogKiogU2V0dGluZyB0cmFj
ayAxIHRvIHNob3dpbmcKLVJVTihpbmJhbmRUcmFjazEgPSB2aWRlby50ZXh0VHJhY2tzWzBdKQog
UlVOKGluYmFuZFRyYWNrMS5tb2RlID0gJ3Nob3dpbmcnKQogUlVOKHZpZGVvLnBsYXkoKSkKIEVY
UEVDVEVEIChpbmJhbmRUcmFjazEuY3Vlcy5sZW5ndGggPiAnMCcpIE9LCmRpZmYgLS1naXQgYS9M
YXlvdXRUZXN0cy9tZWRpYS90cmFjay9pbi1iYW5kL3RyYWNrLWluLWJhbmQta2F0ZS1vZ2ctY3Vl
cy1hZGRlZC1vbmNlLmh0bWwgYi9MYXlvdXRUZXN0cy9tZWRpYS90cmFjay9pbi1iYW5kL3RyYWNr
LWluLWJhbmQta2F0ZS1vZ2ctY3Vlcy1hZGRlZC1vbmNlLmh0bWwKaW5kZXggMTg5NmZmMWY0ODIy
YjA0Y2JiMjQ3NTk5ODU4NGJkZDIxMjhmOTc3MS4uZmMxY2NiNDU5Zjk0ZTQ2NmRkMzcwNTBmZmUw
OWQyNDdkNWMzNDA0ZiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvbWVkaWEvdHJhY2svaW4tYmFu
ZC90cmFjay1pbi1iYW5kLWthdGUtb2dnLWN1ZXMtYWRkZWQtb25jZS5odG1sCisrKyBiL0xheW91
dFRlc3RzL21lZGlhL3RyYWNrL2luLWJhbmQvdHJhY2staW4tYmFuZC1rYXRlLW9nZy1jdWVzLWFk
ZGVkLW9uY2UuaHRtbApAQCAtNyw3ICs3LDcgQEAKICAgICAgICAgPHNjcmlwdCBzcmM9Li4vLi4v
dmlkZW8tdGVzdC5qcz48L3NjcmlwdD4KICAgICAgICAgPHNjcmlwdCBzcmM9Li4vLi4vaW4tYmFu
ZC1jdWVzLmpzPjwvc2NyaXB0PgogICAgIDwvaGVhZD4KLSAgICA8Ym9keSBvbmxvYWQ9InRlc3RD
dWVzQWRkZWRPbmNlKCcuLi8uLi9jb250ZW50L2NvdW50aW5nLXN1YnRpdGxlZC1rYXRlLm9ndicp
Ij4KKyAgICA8Ym9keSBvbmxvYWQ9InRlc3RDdWVzQWRkZWRPbmNlKCcuLi8uLi9jb250ZW50L2Nv
dW50aW5nLXN1YnRpdGxlZC1rYXRlLm9ndicsICdzdWJ0aXRsZXMnKSI+CiAgICAgICAgIDx2aWRl
byBjb250cm9scz48L3ZpZGVvPgogICAgICAgICA8cD5DaGVjayB0aGF0IHdlIGRvbid0IGhhdmUg
ZHVwbGljYXRlIGN1ZXMgYWZ0ZXIgc2Vla2luZyBiYWNrd2FyZHMuPC9wPgogICAgIDwvYm9keT4K
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL21lZGlhL3RyYWNrL2luLWJhbmQvdHJhY2staW4tYmFu
ZC1rYXRlLW9nZy1tb2RlLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL21lZGlhL3RyYWNrL2lu
LWJhbmQvdHJhY2staW4tYmFuZC1rYXRlLW9nZy1tb2RlLWV4cGVjdGVkLnR4dAppbmRleCAyYmI1
OWUyOTVmMzA2NjIxNWY3YWViMDkzZGRlYzYzYTc1NDA5ZTA5Li5kZDQzOWY4MDM3MDVjZDUyYjky
YzMwN2Y0YTgxOGQ3ZDYxYWM4M2IwIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9tZWRpYS90cmFj
ay9pbi1iYW5kL3RyYWNrLWluLWJhbmQta2F0ZS1vZ2ctbW9kZS1leHBlY3RlZC50eHQKKysrIGIv
TGF5b3V0VGVzdHMvbWVkaWEvdHJhY2svaW4tYmFuZC90cmFjay1pbi1iYW5kLWthdGUtb2dnLW1v
ZGUtZXhwZWN0ZWQudHh0CkBAIC0xLDcgKzEsNiBAQAogVGVzdCB0aGF0IGN1ZXMgZnJvbSBpbi1i
YW5kIHRyYWNrcyBhcmUgZGlzcGxheWVkIGltbWVkaWF0ZWx5IHdoZW4gYSB0cmFjayBpcyBtYWRl
IHZpc2libGUuCiAKIEVWRU5UKGNhbnBsYXl0aHJvdWdoKQotUlVOKGluYmFuZFRyYWNrMSA9IHZp
ZGVvLnRleHRUcmFja3NbMF0pCiAKICoqIEEgaGlkZGVuIHRyYWNrIHNob3VsZCBub3QgaGF2ZSB2
aXNpYmxlIGN1ZXMKIFJVTihpbmJhbmRUcmFjazEubW9kZSA9ICdoaWRkZW4nKQpkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvbWVkaWEvdHJhY2svaW4tYmFuZC90cmFjay1pbi1iYW5kLWthdGUtb2dn
LW1vZGUuaHRtbCBiL0xheW91dFRlc3RzL21lZGlhL3RyYWNrL2luLWJhbmQvdHJhY2staW4tYmFu
ZC1rYXRlLW9nZy1tb2RlLmh0bWwKaW5kZXggZTFkZWYxM2JiMDVmNzYzZjZjYjM4ZjQyY2I3OTdi
NDI5MGQyYjYwOC4uNTdmOGIwMWE2NDBiNDYzYTFlN2Q3MDE2N2U2YzUwNzBjMTcwYjFmMSAxMDA2
NDQKLS0tIGEvTGF5b3V0VGVzdHMvbWVkaWEvdHJhY2svaW4tYmFuZC90cmFjay1pbi1iYW5kLWth
dGUtb2dnLW1vZGUuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9tZWRpYS90cmFjay9pbi1iYW5kL3Ry
YWNrLWluLWJhbmQta2F0ZS1vZ2ctbW9kZS5odG1sCkBAIC04LDcgKzgsNyBAQAogICAgICAgICA8
c2NyaXB0IHNyYz0uLi8uLi9tZWRpYS1jb250cm9scy5qcz48L3NjcmlwdD4KICAgICAgICAgPHNj
cmlwdCBzcmM9Li4vLi4vaW4tYmFuZC1jdWVzLmpzPjwvc2NyaXB0PgogICAgIDwvaGVhZD4KLSAg
ICA8Ym9keSBvbmxvYWQ9InRlc3RNb2RlKCcuLi8uLi9jb250ZW50L2NvdW50aW5nLXN1YnRpdGxl
ZC1rYXRlLm9ndicpIj4KKyAgICA8Ym9keSBvbmxvYWQ9InRlc3RNb2RlKCcuLi8uLi9jb250ZW50
L2NvdW50aW5nLXN1YnRpdGxlZC1rYXRlLm9ndicsICdzdWJ0aXRsZXMnKSI+CiAgICAgICAgIDx2
aWRlbyBjb250cm9scz48L3ZpZGVvPgogICAgICAgICA8cD5UZXN0IHRoYXQgY3VlcyBmcm9tIGlu
LWJhbmQgdHJhY2tzIGFyZSBkaXNwbGF5ZWQgaW1tZWRpYXRlbHkgd2hlbiBhIHRyYWNrIGlzIG1h
ZGUgdmlzaWJsZS48L3A+CiAgICAgPC9ib2R5PgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvbWVk
aWEvdHJhY2svaW4tYmFuZC90cmFjay1pbi1iYW5kLWthdGUtb2dnLXN0eWxlLWV4cGVjdGVkLnR4
dCBiL0xheW91dFRlc3RzL21lZGlhL3RyYWNrL2luLWJhbmQvdHJhY2staW4tYmFuZC1rYXRlLW9n
Zy1zdHlsZS1leHBlY3RlZC50eHQKaW5kZXggMTY5NDg0ODU5NjlhYmJhOTY4Y2E5ODMzZWM4OWNm
OTFmMTEwNjNjNC4uYWFlYmNkMTk1YjljMWQ0NThiZGRmYTJjNzg2NGM3YTRjMTM5ZjA1ZSAxMDA2
NDQKLS0tIGEvTGF5b3V0VGVzdHMvbWVkaWEvdHJhY2svaW4tYmFuZC90cmFjay1pbi1iYW5kLWth
dGUtb2dnLXN0eWxlLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9tZWRpYS90cmFjay9p
bi1iYW5kL3RyYWNrLWluLWJhbmQta2F0ZS1vZ2ctc3R5bGUtZXhwZWN0ZWQudHh0CkBAIC0yLDcg
KzIsNiBAQCBUZXN0IHRoYXQgc3R5bGUgaXMgYXBwbGllZCB0byBhbGwgY3VlcyBjb3JyZWN0bHku
CiBFVkVOVChjYW5wbGF5dGhyb3VnaCkKIAogKiogU2V0dGluZyB0cmFjayAxIHRvIHNob3dpbmcg
YW5kIHN0YXJ0aW5nIHZpZGVvCi1SVU4oaW5iYW5kVHJhY2sxID0gdmlkZW8udGV4dFRyYWNrc1sw
XSkKIFJVTih2aWRlby5wbGF5KCkpCiBFVkVOVChzZWVrZWQpCiAKZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL21lZGlhL3RyYWNrL2luLWJhbmQvdHJhY2staW4tYmFuZC1rYXRlLW9nZy10cmFjay1v
cmRlci1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9tZWRpYS90cmFjay9pbi1iYW5kL3RyYWNr
LWluLWJhbmQta2F0ZS1vZ2ctdHJhY2stb3JkZXItZXhwZWN0ZWQudHh0CmluZGV4IGRlOTA0MWU3
YWI2OTcyYTE1ZjAxNzJlZjQ2YmZiMTg0ODFmNWEzYjguLjk1MzYyZGRmODllNGU4ZGU4NmZiMTE3
MjNmY2EwNGY3Y2E3NmQ2MTEgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL21lZGlhL3RyYWNrL2lu
LWJhbmQvdHJhY2staW4tYmFuZC1rYXRlLW9nZy10cmFjay1vcmRlci1leHBlY3RlZC50eHQKKysr
IGIvTGF5b3V0VGVzdHMvbWVkaWEvdHJhY2svaW4tYmFuZC90cmFjay1pbi1iYW5kLWthdGUtb2dn
LXRyYWNrLW9yZGVyLWV4cGVjdGVkLnR4dApAQCAtMSwxMSArMSw1IEBACiBUZXN0IHRyYWNrIG9y
ZGVyIHdoZW4gdXNpbmcgaW4tYmFuZCBhbmQgb3V0LW9mLWJhbmQgdGV4dCB0cmFja3MuCiAKLUVW
RU5UKGFkZHRyYWNrKQotRVhQRUNURUQgKGV2ZW50LnRyYWNrID09ICd2aWRlby50ZXh0VHJhY2tz
WzBdJykgT0sKLQotRVZFTlQoYWRkdHJhY2spCi1FWFBFQ1RFRCAoZXZlbnQudHJhY2sgPT0gJ3Zp
ZGVvLnRleHRUcmFja3NbMV0nKSBPSwotCiBFVkVOVChjYW5wbGF5dGhyb3VnaCkKIAogKiogQ2hl
Y2sgaW5pdGlhbCBpbi1iYW5kIHRyYWNrIHN0YXRlcwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
bWVkaWEvdHJhY2svaW4tYmFuZC90cmFjay1pbi1iYW5kLWthdGUtb2dnLXRyYWNrLW9yZGVyLmh0
bWwgYi9MYXlvdXRUZXN0cy9tZWRpYS90cmFjay9pbi1iYW5kL3RyYWNrLWluLWJhbmQta2F0ZS1v
Z2ctdHJhY2stb3JkZXIuaHRtbAppbmRleCA0MTA4YTZlZGI1ZTJkNzcyYjk3ZWNjNzMyNDU1NTk4
NzFmNzM5ODNhLi5lNzg0MjY3MWJlYmExNGQyMjYyZGZmOTc2YzA5MDg3ZGUzNzg4OTU5IDEwMDY0
NAotLS0gYS9MYXlvdXRUZXN0cy9tZWRpYS90cmFjay9pbi1iYW5kL3RyYWNrLWluLWJhbmQta2F0
ZS1vZ2ctdHJhY2stb3JkZXIuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9tZWRpYS90cmFjay9pbi1i
YW5kL3RyYWNrLWluLWJhbmQta2F0ZS1vZ2ctdHJhY2stb3JkZXIuaHRtbApAQCAtNyw3ICs3LDcg
QEAKICAgICAgICAgPHNjcmlwdCBzcmM9Li4vLi4vdmlkZW8tdGVzdC5qcz48L3NjcmlwdD4KICAg
ICAgICAgPHNjcmlwdCBzcmM9Li4vLi4vaW4tYmFuZC1jdWVzLmpzPjwvc2NyaXB0PgogICAgIDwv
aGVhZD4KLSAgICA8Ym9keSBvbmxvYWQ9InRlc3RUcmFja09yZGVyKCcuLi8uLi9jb250ZW50L2Nv
dW50aW5nLXN1YnRpdGxlZC1rYXRlLm9ndicpIj4KKyAgICA8Ym9keSBvbmxvYWQ9InRlc3RUcmFj
a09yZGVyKCcuLi8uLi9jb250ZW50L2NvdW50aW5nLXN1YnRpdGxlZC1rYXRlLm9ndicsIDIpIj4K
ICAgICAgICAgPHZpZGVvIGNvbnRyb2xzPjwvdmlkZW8+CiAgICAgICAgIDxwPlRlc3QgdHJhY2sg
b3JkZXIgd2hlbiB1c2luZyBpbi1iYW5kIGFuZCBvdXQtb2YtYmFuZCB0ZXh0IHRyYWNrcy48L3A+
CiAgICAgPC9ib2R5PgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvbWVkaWEvdHJhY2svaW4tYmFu
ZC90cmFjay1pbi1iYW5kLW1rdi1jaGFwdGVycy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9t
ZWRpYS90cmFjay9pbi1iYW5kL3RyYWNrLWluLWJhbmQtbWt2LWNoYXB0ZXJzLWV4cGVjdGVkLnR4
dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwLi5iYWFhMmY0M2NkZGNmZTJmZmMyOGI0NjE0MDBjZjRjODY2MWUwYWIyCi0t
LSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvbWVkaWEvdHJhY2svaW4tYmFuZC90cmFjay1p
bi1iYW5kLW1rdi1jaGFwdGVycy1leHBlY3RlZC50eHQKQEAgLTAsMCArMSwxOCBAQAorQ2hlY2sg
Zm9yIGNoYXB0ZXIgdHJhY2sgZnJvbSBhbiBta3YgZmlsZS4KKworRVZFTlQoY2FucGxheXRocm91
Z2gpCisKKyoqIFNldHRpbmcgdHJhY2sgMSB0byBzaG93aW5nCitSVU4oaW5iYW5kVHJhY2sxLm1v
ZGUgPSAnc2hvd2luZycpCitSVU4odmlkZW8ucGxheSgpKQorRVhQRUNURUQgKGluYmFuZFRyYWNr
MS5jdWVzLmxlbmd0aCA+ICcwJykgT0sKK1JVTih2aWRlby5wYXVzZSgpKQorUlVOKHZpZGVvLmN1
cnJlbnRUaW1lID0gMCkKK1JVTih2aWRlby5wbGF5KCkpCisKK0VWRU5UKHNlZWtlZCkKK0VYUEVD
VEVEIChpbmJhbmRUcmFjazEuY3Vlcy5sZW5ndGggPiAnMCcpIE9LCitSVU4odmlkZW8ucGF1c2Uo
KSkKK1Rlc3QgYWxsIGN1ZXMgYXJlIGVxdWFsIE9LCitFTkQgT0YgVEVTVAorCmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9tZWRpYS90cmFjay9pbi1iYW5kL3RyYWNrLWluLWJhbmQtbWt2LWNoYXB0
ZXJzLmh0bWwgYi9MYXlvdXRUZXN0cy9tZWRpYS90cmFjay9pbi1iYW5kL3RyYWNrLWluLWJhbmQt
bWt2LWNoYXB0ZXJzLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNTVmNmE4ZDE3ZTI4MmRjZWQwNzA2NzFmZmZm
YzM0YjRmODBkOWU4ZgotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL21lZGlhL3RyYWNr
L2luLWJhbmQvdHJhY2staW4tYmFuZC1ta3YtY2hhcHRlcnMuaHRtbApAQCAtMCwwICsxLDE0IEBA
Cis8IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorICAgIDxoZWFkPgorICAgICAgICA8bWV0YSBodHRw
LWVxdWl2PSJDb250ZW50LVR5cGUiIGNvbnRlbnQ9InRleHQvaHRtbDsgY2hhcnNldD11dGYtOCIg
Lz4KKworICAgICAgICA8c2NyaXB0IHNyYz0uLi8uLi9tZWRpYS1maWxlLmpzPjwvc2NyaXB0Pgor
ICAgICAgICA8c2NyaXB0IHNyYz0uLi8uLi92aWRlby10ZXN0LmpzPjwvc2NyaXB0PgorICAgICAg
ICA8c2NyaXB0IHNyYz0uLi8uLi9pbi1iYW5kLWN1ZXMuanM+PC9zY3JpcHQ+CisgICAgPC9oZWFk
PgorICAgIDxib2R5IG9ubG9hZD0idGVzdEN1ZXNBZGRlZE9uY2UoJy4uLy4uL2NvbnRlbnQvY291
bnRpbmctc3VidGl0bGVkLXNydC5ta3YnLCAnY2hhcHRlcnMnKSI+CisgICAgICAgIDx2aWRlbyBj
b250cm9scz48L3ZpZGVvPgorICAgICAgICA8cD5DaGVjayBmb3IgY2hhcHRlciB0cmFjayBmcm9t
IGFuIG1rdiBmaWxlLjwvcD4KKyAgICA8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlv
dXRUZXN0cy9tZWRpYS90cmFjay9pbi1iYW5kL3RyYWNrLWluLWJhbmQtc3J0LW1rdi1jdWVzLWFk
ZGVkLW9uY2UtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvbWVkaWEvdHJhY2svaW4tYmFuZC90
cmFjay1pbi1iYW5kLXNydC1ta3YtY3Vlcy1hZGRlZC1vbmNlLWV4cGVjdGVkLnR4dAppbmRleCA2
M2RiNWU3ZWYwM2RkZTY4Mzg4NjA2ZDYxOTllM2I5MDUxY2Y4ZTcyLi5lOGY2Yjc3OTcyMDQyY2Rh
ZjZkMzFjM2JjYzI3Y2JiNTkwZTM3NGY3IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9tZWRpYS90
cmFjay9pbi1iYW5kL3RyYWNrLWluLWJhbmQtc3J0LW1rdi1jdWVzLWFkZGVkLW9uY2UtZXhwZWN0
ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL21lZGlhL3RyYWNrL2luLWJhbmQvdHJhY2staW4tYmFu
ZC1zcnQtbWt2LWN1ZXMtYWRkZWQtb25jZS1leHBlY3RlZC50eHQKQEAgLTMsNyArMyw2IEBAIENo
ZWNrIHRoYXQgd2UgZG9uJ3QgaGF2ZSBkdXBsaWNhdGUgY3VlcyBhZnRlciBzZWVraW5nIGJhY2t3
YXJkcy4KIEVWRU5UKGNhbnBsYXl0aHJvdWdoKQogCiAqKiBTZXR0aW5nIHRyYWNrIDEgdG8gc2hv
d2luZwotUlVOKGluYmFuZFRyYWNrMSA9IHZpZGVvLnRleHRUcmFja3NbMF0pCiBSVU4oaW5iYW5k
VHJhY2sxLm1vZGUgPSAnc2hvd2luZycpCiBSVU4odmlkZW8ucGxheSgpKQogRVhQRUNURUQgKGlu
YmFuZFRyYWNrMS5jdWVzLmxlbmd0aCA+ICcwJykgT0sKZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L21lZGlhL3RyYWNrL2luLWJhbmQvdHJhY2staW4tYmFuZC1zcnQtbWt2LWN1ZXMtYWRkZWQtb25j
ZS5odG1sIGIvTGF5b3V0VGVzdHMvbWVkaWEvdHJhY2svaW4tYmFuZC90cmFjay1pbi1iYW5kLXNy
dC1ta3YtY3Vlcy1hZGRlZC1vbmNlLmh0bWwKaW5kZXggM2YzYjc0YzkxN2VkZjU4NjBmNDc1MzY4
MGUxZjlmZmM4OWZiMTJhYS4uNWU4YjRmZTgyYTgyYTljY2FhZjBjNzVhNGRlOWFjYTM1M2U5Yjc5
NyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvbWVkaWEvdHJhY2svaW4tYmFuZC90cmFjay1pbi1i
YW5kLXNydC1ta3YtY3Vlcy1hZGRlZC1vbmNlLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvbWVkaWEv
dHJhY2svaW4tYmFuZC90cmFjay1pbi1iYW5kLXNydC1ta3YtY3Vlcy1hZGRlZC1vbmNlLmh0bWwK
QEAgLTcsNyArNyw3IEBACiAgICAgICAgIDxzY3JpcHQgc3JjPS4uLy4uL3ZpZGVvLXRlc3QuanM+
PC9zY3JpcHQ+CiAgICAgICAgIDxzY3JpcHQgc3JjPS4uLy4uL2luLWJhbmQtY3Vlcy5qcz48L3Nj
cmlwdD4KICAgICA8L2hlYWQ+Ci0gICAgPGJvZHkgb25sb2FkPSJ0ZXN0Q3Vlc0FkZGVkT25jZSgn
Li4vLi4vY29udGVudC9jb3VudGluZy1zdWJ0aXRsZWQtc3J0Lm1rdicpIj4KKyAgICA8Ym9keSBv
bmxvYWQ9InRlc3RDdWVzQWRkZWRPbmNlKCcuLi8uLi9jb250ZW50L2NvdW50aW5nLXN1YnRpdGxl
ZC1zcnQubWt2JywgJ3N1YnRpdGxlcycpIj4KICAgICAgICAgPHZpZGVvIGNvbnRyb2xzPjwvdmlk
ZW8+CiAgICAgICAgIDxwPkNoZWNrIHRoYXQgd2UgZG9uJ3QgaGF2ZSBkdXBsaWNhdGUgY3VlcyBh
ZnRlciBzZWVraW5nIGJhY2t3YXJkcy48L3A+CiAgICAgPC9ib2R5PgpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvbWVkaWEvdHJhY2svaW4tYmFuZC90cmFjay1pbi1iYW5kLXNydC1ta3Yta2luZC1l
eHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9tZWRpYS90cmFjay9pbi1iYW5kL3RyYWNrLWluLWJh
bmQtc3J0LW1rdi1raW5kLWV4cGVjdGVkLnR4dAppbmRleCA3MGI0YTkxYWM1ZTE3ODBiY2EyZjQ0
YmVkZjQ5YzNmYzllOTExZDg0Li4yZDI0YmU3MDg3ZjllYzhmZDQxMWRkMDA5MzlkMmMwNThiYjk4
NWU5IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9tZWRpYS90cmFjay9pbi1iYW5kL3RyYWNrLWlu
LWJhbmQtc3J0LW1rdi1raW5kLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9tZWRpYS90
cmFjay9pbi1iYW5kL3RyYWNrLWluLWJhbmQtc3J0LW1rdi1raW5kLWV4cGVjdGVkLnR4dApAQCAt
Myw5ICszLDEwIEBAIENoZWNrIGluLWJhbmQgdGV4dCB0cmFja3MnIGtpbmQgYXR0cmlidXRlcy4K
IEVWRU5UKGNhbnBsYXl0aHJvdWdoKQogCiAqKiBDaGVjayBpbi1iYW5kIGtpbmQgYXR0cmlidXRl
cwotRVhQRUNURUQgKHZpZGVvLnRleHRUcmFja3MubGVuZ3RoID09ICcyJykgT0sKLUVYUEVDVEVE
ICh2aWRlby50ZXh0VHJhY2tzWzBdLmtpbmQgPT0gJ3N1YnRpdGxlcycpIE9LCitFWFBFQ1RFRCAo
dmlkZW8udGV4dFRyYWNrcy5sZW5ndGggPT0gJzMnKSBPSworRVhQRUNURUQgKHZpZGVvLnRleHRU
cmFja3NbMF0ua2luZCA9PSAnY2hhcHRlcnMnKSBPSwogRVhQRUNURUQgKHZpZGVvLnRleHRUcmFj
a3NbMV0ua2luZCA9PSAnc3VidGl0bGVzJykgT0sKK0VYUEVDVEVEICh2aWRlby50ZXh0VHJhY2tz
WzJdLmtpbmQgPT0gJ3N1YnRpdGxlcycpIE9LCiAKIEVORCBPRiBURVNUCiAKZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL21lZGlhL3RyYWNrL2luLWJhbmQvdHJhY2staW4tYmFuZC1zcnQtbWt2LWtp
bmQuaHRtbCBiL0xheW91dFRlc3RzL21lZGlhL3RyYWNrL2luLWJhbmQvdHJhY2staW4tYmFuZC1z
cnQtbWt2LWtpbmQuaHRtbAppbmRleCBlNDdhN2JiMDY2OTYwZmZjNGQ1ZGM0NTFiOTJmNjc5NmYz
ZTc0N2VmLi5lMzkxZmJhNDdjY2VhMDc4ZDIzNTMwMjg3Y2I5ODkzYmI1MDg1NjdiIDEwMDY0NAot
LS0gYS9MYXlvdXRUZXN0cy9tZWRpYS90cmFjay9pbi1iYW5kL3RyYWNrLWluLWJhbmQtc3J0LW1r
di1raW5kLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvbWVkaWEvdHJhY2svaW4tYmFuZC90cmFjay1p
bi1iYW5kLXNydC1ta3Yta2luZC5odG1sCkBAIC03LDcgKzcsNyBAQAogICAgICAgICA8c2NyaXB0
IHNyYz0uLi8uLi92aWRlby10ZXN0LmpzPjwvc2NyaXB0PgogICAgICAgICA8c2NyaXB0IHNyYz0u
Li8uLi9pbi1iYW5kLWN1ZXMuanM+PC9zY3JpcHQ+CiAgICAgPC9oZWFkPgotICAgIDxib2R5IG9u
bG9hZD0idGVzdEF0dHJpYnV0ZSgnLi4vLi4vY29udGVudC9jb3VudGluZy1zdWJ0aXRsZWQtc3J0
Lm1rdicsICdraW5kJywgWydzdWJ0aXRsZXMnLCAnc3VidGl0bGVzJ10pIj4KKyAgICA8Ym9keSBv
bmxvYWQ9InRlc3RBdHRyaWJ1dGUoJy4uLy4uL2NvbnRlbnQvY291bnRpbmctc3VidGl0bGVkLXNy
dC5ta3YnLCAna2luZCcsIFsnY2hhcHRlcnMnLCAnc3VidGl0bGVzJywgJ3N1YnRpdGxlcyddKSI+
CiAgICAgICAgIDx2aWRlbyBjb250cm9scz48L3ZpZGVvPgogICAgICAgICA8cD5DaGVjayBpbi1i
YW5kIHRleHQgdHJhY2tzJyBraW5kIGF0dHJpYnV0ZXMuPC9wPgogICAgIDwvYm9keT4KZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL21lZGlhL3RyYWNrL2luLWJhbmQvdHJhY2staW4tYmFuZC1zcnQt
bWt2LWxhbmd1YWdlLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL21lZGlhL3RyYWNrL2luLWJh
bmQvdHJhY2staW4tYmFuZC1zcnQtbWt2LWxhbmd1YWdlLWV4cGVjdGVkLnR4dAppbmRleCA4NDIw
MzUxNzM1ZTY0YTY0NTZkNGY0MGY5NjE5MGZjYjdkNWFiYTgzLi5hMzJjODNiNzgzZDU0NmU0ZTlm
ZDI1YTg5ZTc2Y2U5NzUxNWQzOWMxIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9tZWRpYS90cmFj
ay9pbi1iYW5kL3RyYWNrLWluLWJhbmQtc3J0LW1rdi1sYW5ndWFnZS1leHBlY3RlZC50eHQKKysr
IGIvTGF5b3V0VGVzdHMvbWVkaWEvdHJhY2svaW4tYmFuZC90cmFjay1pbi1iYW5kLXNydC1ta3Yt
bGFuZ3VhZ2UtZXhwZWN0ZWQudHh0CkBAIC0zLDkgKzMsMTAgQEAgQ2hlY2sgaW4tYmFuZCB0ZXh0
IHRyYWNrcycgbGFuZ3VhZ2UgYXR0cmlidXRlcy4KIEVWRU5UKGNhbnBsYXl0aHJvdWdoKQogCiAq
KiBDaGVjayBpbi1iYW5kIGtpbmQgYXR0cmlidXRlcwotRVhQRUNURUQgKHZpZGVvLnRleHRUcmFj
a3MubGVuZ3RoID09ICcyJykgT0sKLUVYUEVDVEVEICh2aWRlby50ZXh0VHJhY2tzWzBdLmxhbmd1
YWdlID09ICdlbicpIE9LCi1FWFBFQ1RFRCAodmlkZW8udGV4dFRyYWNrc1sxXS5sYW5ndWFnZSA9
PSAnZnInKSBPSworRVhQRUNURUQgKHZpZGVvLnRleHRUcmFja3MubGVuZ3RoID09ICczJykgT0sK
K0VYUEVDVEVEICh2aWRlby50ZXh0VHJhY2tzWzBdLmxhbmd1YWdlID09ICcnKSBPSworRVhQRUNU
RUQgKHZpZGVvLnRleHRUcmFja3NbMV0ubGFuZ3VhZ2UgPT0gJ2VuJykgT0sKK0VYUEVDVEVEICh2
aWRlby50ZXh0VHJhY2tzWzJdLmxhbmd1YWdlID09ICdmcicpIE9LCiAKIEVORCBPRiBURVNUCiAK
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL21lZGlhL3RyYWNrL2luLWJhbmQvdHJhY2staW4tYmFu
ZC1zcnQtbWt2LWxhbmd1YWdlLmh0bWwgYi9MYXlvdXRUZXN0cy9tZWRpYS90cmFjay9pbi1iYW5k
L3RyYWNrLWluLWJhbmQtc3J0LW1rdi1sYW5ndWFnZS5odG1sCmluZGV4IGRlZjY1YmU5YmZiOWY1
OTIwY2JiYjM2Nzc5NjVjYTgwY2FlYmNlYzYuLjlkNmM4OTIyMzIyZDQ1MDM2M2VjMjAyNDBlOWE0
ZTZlNTJjNzUzM2EgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL21lZGlhL3RyYWNrL2luLWJhbmQv
dHJhY2staW4tYmFuZC1zcnQtbWt2LWxhbmd1YWdlLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvbWVk
aWEvdHJhY2svaW4tYmFuZC90cmFjay1pbi1iYW5kLXNydC1ta3YtbGFuZ3VhZ2UuaHRtbApAQCAt
Nyw3ICs3LDcgQEAKICAgICAgICAgPHNjcmlwdCBzcmM9Li4vLi4vdmlkZW8tdGVzdC5qcz48L3Nj
cmlwdD4KICAgICAgICAgPHNjcmlwdCBzcmM9Li4vLi4vaW4tYmFuZC1jdWVzLmpzPjwvc2NyaXB0
PgogICAgIDwvaGVhZD4KLSAgICA8Ym9keSBvbmxvYWQ9InRlc3RBdHRyaWJ1dGUoJy4uLy4uL2Nv
bnRlbnQvY291bnRpbmctc3VidGl0bGVkLXNydC5ta3YnLCAnbGFuZ3VhZ2UnLCBbJ2VuJywgJ2Zy
J10pIj4KKyAgICA8Ym9keSBvbmxvYWQ9InRlc3RBdHRyaWJ1dGUoJy4uLy4uL2NvbnRlbnQvY291
bnRpbmctc3VidGl0bGVkLXNydC5ta3YnLCAnbGFuZ3VhZ2UnLCBbJycsICdlbicsICdmciddKSI+
CiAgICAgICAgIDx2aWRlbyBjb250cm9scz48L3ZpZGVvPgogICAgICAgICA8cD5DaGVjayBpbi1i
YW5kIHRleHQgdHJhY2tzJyBsYW5ndWFnZSBhdHRyaWJ1dGVzLjwvcD4KICAgICA8L2JvZHk+CmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9tZWRpYS90cmFjay9pbi1iYW5kL3RyYWNrLWluLWJhbmQt
c3J0LW1rdi1tb2RlLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL21lZGlhL3RyYWNrL2luLWJh
bmQvdHJhY2staW4tYmFuZC1zcnQtbWt2LW1vZGUtZXhwZWN0ZWQudHh0CmluZGV4IDJiYjU5ZTI5
NWYzMDY2MjE1ZjdhZWIwOTNkZGVjNjNhNzU0MDllMDkuLmRkNDM5ZjgwMzcwNWNkNTJiOTJjMzA3
ZjRhODE4ZDdkNjFhYzgzYjAgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL21lZGlhL3RyYWNrL2lu
LWJhbmQvdHJhY2staW4tYmFuZC1zcnQtbWt2LW1vZGUtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91
dFRlc3RzL21lZGlhL3RyYWNrL2luLWJhbmQvdHJhY2staW4tYmFuZC1zcnQtbWt2LW1vZGUtZXhw
ZWN0ZWQudHh0CkBAIC0xLDcgKzEsNiBAQAogVGVzdCB0aGF0IGN1ZXMgZnJvbSBpbi1iYW5kIHRy
YWNrcyBhcmUgZGlzcGxheWVkIGltbWVkaWF0ZWx5IHdoZW4gYSB0cmFjayBpcyBtYWRlIHZpc2li
bGUuCiAKIEVWRU5UKGNhbnBsYXl0aHJvdWdoKQotUlVOKGluYmFuZFRyYWNrMSA9IHZpZGVvLnRl
eHRUcmFja3NbMF0pCiAKICoqIEEgaGlkZGVuIHRyYWNrIHNob3VsZCBub3QgaGF2ZSB2aXNpYmxl
IGN1ZXMKIFJVTihpbmJhbmRUcmFjazEubW9kZSA9ICdoaWRkZW4nKQpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvbWVkaWEvdHJhY2svaW4tYmFuZC90cmFjay1pbi1iYW5kLXNydC1ta3YtbW9kZS5o
dG1sIGIvTGF5b3V0VGVzdHMvbWVkaWEvdHJhY2svaW4tYmFuZC90cmFjay1pbi1iYW5kLXNydC1t
a3YtbW9kZS5odG1sCmluZGV4IDM2NTJlYzBlYTZhOWMzN2UzYTM2MDhjMGNhNmUxM2U4MTJkOWM2
YzAuLjhlZWY3NjRkZDc2Y2Q5MmNhZDhkN2ZiOWQ0YTJhNWI1YzI2NzViZGMgMTAwNjQ0Ci0tLSBh
L0xheW91dFRlc3RzL21lZGlhL3RyYWNrL2luLWJhbmQvdHJhY2staW4tYmFuZC1zcnQtbWt2LW1v
ZGUuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9tZWRpYS90cmFjay9pbi1iYW5kL3RyYWNrLWluLWJh
bmQtc3J0LW1rdi1tb2RlLmh0bWwKQEAgLTgsNyArOCw3IEBACiAgICAgICAgIDxzY3JpcHQgc3Jj
PS4uLy4uL21lZGlhLWNvbnRyb2xzLmpzPjwvc2NyaXB0PgogICAgICAgICA8c2NyaXB0IHNyYz0u
Li8uLi9pbi1iYW5kLWN1ZXMuanM+PC9zY3JpcHQ+CiAgICAgPC9oZWFkPgotICAgIDxib2R5IG9u
bG9hZD0idGVzdE1vZGUoJy4uLy4uL2NvbnRlbnQvY291bnRpbmctc3VidGl0bGVkLXNydC5ta3Yn
KSI+CisgICAgPGJvZHkgb25sb2FkPSJ0ZXN0TW9kZSgnLi4vLi4vY29udGVudC9jb3VudGluZy1z
dWJ0aXRsZWQtc3J0Lm1rdicsICdzdWJ0aXRsZXMnKSI+CiAgICAgICAgIDx2aWRlbyBjb250cm9s
cz48L3ZpZGVvPgogICAgICAgICA8cD5UZXN0IHRoYXQgY3VlcyBmcm9tIGluLWJhbmQgdHJhY2tz
IGFyZSBkaXNwbGF5ZWQgaW1tZWRpYXRlbHkgd2hlbiBhIHRyYWNrIGlzIG1hZGUgdmlzaWJsZS48
L3A+CiAgICAgPC9ib2R5PgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvbWVkaWEvdHJhY2svaW4t
YmFuZC90cmFjay1pbi1iYW5kLXNydC1ta3Ytc3R5bGUtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVz
dHMvbWVkaWEvdHJhY2svaW4tYmFuZC90cmFjay1pbi1iYW5kLXNydC1ta3Ytc3R5bGUtZXhwZWN0
ZWQudHh0CmluZGV4IDE2OTQ4NDg1OTY5YWJiYTk2OGNhOTgzM2VjODljZjkxZjExMDYzYzQuLmFh
ZWJjZDE5NWI5YzFkNDU4YmRkZmEyYzc4NjRjN2E0YzEzOWYwNWUgMTAwNjQ0Ci0tLSBhL0xheW91
dFRlc3RzL21lZGlhL3RyYWNrL2luLWJhbmQvdHJhY2staW4tYmFuZC1zcnQtbWt2LXN0eWxlLWV4
cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9tZWRpYS90cmFjay9pbi1iYW5kL3RyYWNrLWlu
LWJhbmQtc3J0LW1rdi1zdHlsZS1leHBlY3RlZC50eHQKQEAgLTIsNyArMiw2IEBAIFRlc3QgdGhh
dCBzdHlsZSBpcyBhcHBsaWVkIHRvIGFsbCBjdWVzIGNvcnJlY3RseS4KIEVWRU5UKGNhbnBsYXl0
aHJvdWdoKQogCiAqKiBTZXR0aW5nIHRyYWNrIDEgdG8gc2hvd2luZyBhbmQgc3RhcnRpbmcgdmlk
ZW8KLVJVTihpbmJhbmRUcmFjazEgPSB2aWRlby50ZXh0VHJhY2tzWzBdKQogUlVOKHZpZGVvLnBs
YXkoKSkKIEVWRU5UKHNlZWtlZCkKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvbWVkaWEvdHJh
Y2svaW4tYmFuZC90cmFjay1pbi1iYW5kLXNydC1ta3YtdHJhY2stb3JkZXItZXhwZWN0ZWQudHh0
IGIvTGF5b3V0VGVzdHMvbWVkaWEvdHJhY2svaW4tYmFuZC90cmFjay1pbi1iYW5kLXNydC1ta3Yt
dHJhY2stb3JkZXItZXhwZWN0ZWQudHh0CmluZGV4IGRlOTA0MWU3YWI2OTcyYTE1ZjAxNzJlZjQ2
YmZiMTg0ODFmNWEzYjguLjBiMWRmZmQxMWJhNDhlMzcxNTQ4Zjk2OTFlMTkzOGNiMzU1Y2JjNjUg
MTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL21lZGlhL3RyYWNrL2luLWJhbmQvdHJhY2staW4tYmFu
ZC1zcnQtbWt2LXRyYWNrLW9yZGVyLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9tZWRp
YS90cmFjay9pbi1iYW5kL3RyYWNrLWluLWJhbmQtc3J0LW1rdi10cmFjay1vcmRlci1leHBlY3Rl
ZC50eHQKQEAgLTEsMjcgKzEsMjMgQEAKIFRlc3QgdHJhY2sgb3JkZXIgd2hlbiB1c2luZyBpbi1i
YW5kIGFuZCBvdXQtb2YtYmFuZCB0ZXh0IHRyYWNrcy4KIAotRVZFTlQoYWRkdHJhY2spCi1FWFBF
Q1RFRCAoZXZlbnQudHJhY2sgPT0gJ3ZpZGVvLnRleHRUcmFja3NbMF0nKSBPSwotCi1FVkVOVChh
ZGR0cmFjaykKLUVYUEVDVEVEIChldmVudC50cmFjayA9PSAndmlkZW8udGV4dFRyYWNrc1sxXScp
IE9LCi0KIEVWRU5UKGNhbnBsYXl0aHJvdWdoKQogCiAqKiBDaGVjayBpbml0aWFsIGluLWJhbmQg
dHJhY2sgc3RhdGVzCi1FWFBFQ1RFRCAodmlkZW8udGV4dFRyYWNrcy5sZW5ndGggPT0gJzInKSBP
SworRVhQRUNURUQgKHZpZGVvLnRleHRUcmFja3MubGVuZ3RoID09ICczJykgT0sKIFJVTihpbmJh
bmRUcmFjazEgPSB2aWRlby50ZXh0VHJhY2tzWzBdKQogUlVOKGluYmFuZFRyYWNrMiA9IHZpZGVv
LnRleHRUcmFja3NbMV0pCitSVU4oaW5iYW5kVHJhY2szID0gdmlkZW8udGV4dFRyYWNrc1syXSkK
IAogKiogQWRkIHR3byB0cmFja3MsIGNoZWNrIHNvcnQgb3JkZXIKIFJVTihhZGRUcmFjayA9IHZp
ZGVvLmFkZFRleHRUcmFjaygnY2FwdGlvbnMnLCAnQ2FwdGlvbiBUcmFjaycsICdlbicpKQogUlVO
KHRyYWNrRWxlbWVudCA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ3RyYWNrJykpCiBSVU4odmlk
ZW8uYXBwZW5kQ2hpbGQodHJhY2tFbGVtZW50KSkKLUVYUEVDVEVEICh2aWRlby50ZXh0VHJhY2tz
Lmxlbmd0aCA9PSAnNCcpIE9LCitFWFBFQ1RFRCAodmlkZW8udGV4dFRyYWNrcy5sZW5ndGggPT0g
JzUnKSBPSwogRVhQRUNURUQgKHZpZGVvLnRleHRUcmFja3NbMF0gPT0gJ3RyYWNrRWxlbWVudC50
cmFjaycpIE9LCiBFWFBFQ1RFRCAodmlkZW8udGV4dFRyYWNrc1sxXSA9PSAnYWRkVHJhY2snKSBP
SwogRVhQRUNURUQgKHZpZGVvLnRleHRUcmFja3NbMl0gPT0gJ2luYmFuZFRyYWNrMScpIE9LCiBF
WFBFQ1RFRCAodmlkZW8udGV4dFRyYWNrc1szXSA9PSAnaW5iYW5kVHJhY2syJykgT0sKK0VYUEVD
VEVEICh2aWRlby50ZXh0VHJhY2tzWzRdID09ICdpbmJhbmRUcmFjazMnKSBPSwogCiAqKiBVbmxv
YWQgdmlkZW8gZmlsZSwgY2hlY2sgdHJhY2sgY291bnQKIFJVTih2aWRlby5zcmMgPSAnJykKZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL21lZGlhL3RyYWNrL2luLWJhbmQvdHJhY2staW4tYmFuZC1z
cnQtbWt2LXRyYWNrLW9yZGVyLmh0bWwgYi9MYXlvdXRUZXN0cy9tZWRpYS90cmFjay9pbi1iYW5k
L3RyYWNrLWluLWJhbmQtc3J0LW1rdi10cmFjay1vcmRlci5odG1sCmluZGV4IDhiMGRlOGJjNThk
NmJlZTE4ZTcyNWZiZjNlZmI2MTk0MTVkYTkzMzcuLmY0NTk0MzdkZjRiYzM5ZGVlY2FmZWI4MWIw
NmJmYzNhMTYxMDdlODkgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL21lZGlhL3RyYWNrL2luLWJh
bmQvdHJhY2staW4tYmFuZC1zcnQtbWt2LXRyYWNrLW9yZGVyLmh0bWwKKysrIGIvTGF5b3V0VGVz
dHMvbWVkaWEvdHJhY2svaW4tYmFuZC90cmFjay1pbi1iYW5kLXNydC1ta3YtdHJhY2stb3JkZXIu
aHRtbApAQCAtNyw3ICs3LDcgQEAKICAgICAgICAgPHNjcmlwdCBzcmM9Li4vLi4vdmlkZW8tdGVz
dC5qcz48L3NjcmlwdD4KICAgICAgICAgPHNjcmlwdCBzcmM9Li4vLi4vaW4tYmFuZC1jdWVzLmpz
Pjwvc2NyaXB0PgogICAgIDwvaGVhZD4KLSAgICA8Ym9keSBvbmxvYWQ9InRlc3RUcmFja09yZGVy
KCcuLi8uLi9jb250ZW50L2NvdW50aW5nLXN1YnRpdGxlZC1zcnQubWt2JykiPgorICAgIDxib2R5
IG9ubG9hZD0idGVzdFRyYWNrT3JkZXIoJy4uLy4uL2NvbnRlbnQvY291bnRpbmctc3VidGl0bGVk
LXNydC5ta3YnLCAzKSI+CiAgICAgICAgIDx2aWRlbyBjb250cm9scz48L3ZpZGVvPgogICAgICAg
ICA8cD5UZXN0IHRyYWNrIG9yZGVyIHdoZW4gdXNpbmcgaW4tYmFuZCBhbmQgb3V0LW9mLWJhbmQg
dGV4dCB0cmFja3MuPC9wPgogICAgIDwvYm9keT4K
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>213086</attachid>
            <date>2013-10-01 08:49:31 -0700</date>
            <delta_ts>2013-10-01 09:25:35 -0700</delta_ts>
            <desc>Patch for landing</desc>
            <filename>bug-122000-20131001094930.patch</filename>
            <type>text/plain</type>
            <size>35164</size>
            <attacher name="Brendan Long">b.long</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTU2NjYxCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggY2YyYjI1Mzk2MTExZmE5
MDM3NmJhNTBkMTljNDQ2NjgxOTA5MTZiNS4uMzNmYWQzMmIzZDA0NTU2ZDIxMzgxYThkZDE1NjQ5
Zjc0ZmI0YTZhZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE5IEBACisyMDEzLTA5LTMwICBCcmVu
ZGFuIExvbmcgIDxiLmxvbmdAY2FibGVsYWJzLmNvbT4KKworICAgICAgICBbR1N0cmVhbWVyXSBT
dXBwb3J0ICJjaGFwdGVyIiB0ZXh0IHRyYWNrcworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0
Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTIyMDAwCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZ
IChPT1BTISkuCisKKyAgICAgICAgVGVzdDogbWVkaWEvdHJhY2svaW4tYmFuZC90cmFjay1pbi1i
YW5kLW1rdi1jaGFwdGVycy5odG1sCisKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9nc3Ry
ZWFtZXIvSW5iYW5kTWV0YWRhdGFUZXh0VHJhY2tQcml2YXRlR1N0cmVhbWVyLmg6IE5ldyBjbGFz
cywgbmVlZGVkIGZvciBjdWVzIHRoYXQgYXJlbid0IGFzc29jaWF0ZWQgd2l0aCBHc3RQYWRzLgor
ICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL2dzdHJlYW1lci9NZWRpYVBsYXllclByaXZhdGVH
U3RyZWFtZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6TWVkaWFQbGF5ZXJQcml2YXRlR1N0cmVh
bWVyOjpoYW5kbGVNZXNzYWdlKTogQ2hlY2sgZm9yIHRhYmxlIG9mIGNvbnRlbnRzIG1lc3NhZ2Vz
LgorICAgICAgICAoV2ViQ29yZTo6TWVkaWFQbGF5ZXJQcml2YXRlR1N0cmVhbWVyOjpwcm9jZXNz
VGFibGVPZkNvbnRlbnRzKTogUGFyc2UgdGFibGUgb2YgY29udGVudHMgbWVzc2FnZXMgaW50byB0
ZXh0IHRyYWNrcy4KKyAgICAgICAgKFdlYkNvcmU6Ok1lZGlhUGxheWVyUHJpdmF0ZUdTdHJlYW1l
cjo6cHJvY2Vzc1RhYmxlT2ZDb250ZW50c0VudHJ5KTogUmVjdXJzaXZlIG1ldGhvZCBmb3IgcGFy
c2luZyBhbGwgb2YgdGhlIFRPQyBlbnRyaWVzLgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNz
L2dzdHJlYW1lci9NZWRpYVBsYXllclByaXZhdGVHU3RyZWFtZXIuaDogQWRkIHRoZSBwcm9jZXNz
VGFibGVPZkNvbnRlbnRzIGZ1bmN0aW9ucy4KKwogMjAxMy0wOS0zMCAgQ29tbWl0IFF1ZXVlICA8
Y29tbWl0LXF1ZXVlQHdlYmtpdC5vcmc+CiAKICAgICAgICAgVW5yZXZpZXdlZCwgcm9sbGluZyBv
dXQgcjE1NjY1Ni4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNz
L2dzdHJlYW1lci9JbmJhbmRNZXRhZGF0YVRleHRUcmFja1ByaXZhdGVHU3RyZWFtZXIuaCBiL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2dzdHJlYW1lci9JbmJhbmRNZXRhZGF0YVRl
eHRUcmFja1ByaXZhdGVHU3RyZWFtZXIuaApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4yZGI2NWU0ZjVjNmEyYWIxYzFl
ZTVmNTFlNDhmMzczYzg2YTZlMDQxCi0tLSAvZGV2L251bGwKKysrIGIvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vZ3JhcGhpY3MvZ3N0cmVhbWVyL0luYmFuZE1ldGFkYXRhVGV4dFRyYWNrUHJpdmF0
ZUdTdHJlYW1lci5oCkBAIC0wLDAgKzEsNjIgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTMg
Q2FibGUgVGVsZXZpc2lvbiBMYWJvcmF0b3JpZXMsIEluYy4KKyAqCisgKiBSZWRpc3RyaWJ1dGlv
biBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAq
IG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcg
Y29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqCisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291
cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0
aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICog
Mi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92
ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRo
ZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29y
IG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICog
VEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hUIEhPTERFUlMgQU5EIENP
TlRSSUJVVE9SUyBgYEFTIElTJycgQU5EIEFOWQorICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJB
TlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUgSU1QTElFRAorICogV0FS
UkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQ
VVJQT1NFIEFSRQorICogRElTQ0xBSU1FRC4gSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgSU5DLiBP
UiBJVFMgQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZCisgKiBESVJFQ1QsIElORElSRUNU
LCBJTkNJREVOVEFMLCBTUEVDSUFMLCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdF
UworICogKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJT
VElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOworICogTE9TUyBPRiBVU0UsIERBVEEsIE9SIFBST0ZJ
VFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OCisgKiBB
TlkgVEhFT1JZIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJ
TElUWSwgT1IgVE9SVAorICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJ
U0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFIE9GIFRISVMKKyAqIFNPRlRXQVJFLCBFVkVO
IElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNp
Zm5kZWYgSW5iYW5kTWV0YWRhdGFUZXh0VHJhY2tQcml2YXRlR1N0cmVhbWVyX2gKKyNkZWZpbmUg
SW5iYW5kTWV0YWRhdGFUZXh0VHJhY2tQcml2YXRlR1N0cmVhbWVyX2gKKworI2lmIEVOQUJMRShW
SURFTykgJiYgVVNFKEdTVFJFQU1FUikgJiYgRU5BQkxFKFZJREVPX1RSQUNLKSAmJiBkZWZpbmVk
KEdTVF9BUElfVkVSU0lPTl8xKQorCisjaW5jbHVkZSAiR1JlZlB0ckdTdHJlYW1lci5oIgorI2lu
Y2x1ZGUgIkluYmFuZFRleHRUcmFja1ByaXZhdGUuaCIKKworbmFtZXNwYWNlIFdlYkNvcmUgewor
CitjbGFzcyBJbmJhbmRNZXRhZGF0YVRleHRUcmFja1ByaXZhdGVHU3RyZWFtZXIgOiBwdWJsaWMg
SW5iYW5kVGV4dFRyYWNrUHJpdmF0ZSB7CitwdWJsaWM6CisgICAgc3RhdGljIFBhc3NSZWZQdHI8
SW5iYW5kTWV0YWRhdGFUZXh0VHJhY2tQcml2YXRlR1N0cmVhbWVyPiBjcmVhdGUoS2luZCBraW5k
KQorICAgIHsKKyAgICAgICAgcmV0dXJuIGFkb3B0UmVmKG5ldyBJbmJhbmRNZXRhZGF0YVRleHRU
cmFja1ByaXZhdGVHU3RyZWFtZXIoa2luZCkpOworICAgIH0KKworICAgIH5JbmJhbmRNZXRhZGF0
YVRleHRUcmFja1ByaXZhdGVHU3RyZWFtZXIoKSB7IH0KKworICAgIHZpcnR1YWwgS2luZCBraW5k
KCkgY29uc3QgT1ZFUlJJREUgeyByZXR1cm4gbV9raW5kOyB9CisKK3ByaXZhdGU6CisgICAgSW5i
YW5kTWV0YWRhdGFUZXh0VHJhY2tQcml2YXRlR1N0cmVhbWVyKEtpbmQga2luZCkKKyAgICAgICAg
OiBJbmJhbmRUZXh0VHJhY2tQcml2YXRlKEdlbmVyaWMpCisgICAgICAgICwgbV9raW5kKGtpbmQp
CisgICAgeworCisgICAgfQorCisgICAgS2luZCBtX2tpbmQ7Cit9OworCit9IC8vIG5hbWVzcGFj
ZSBXZWJDb3JlCisKKyNlbmRpZiAvLyBFTkFCTEUoVklERU8pICYmIFVTRShHU1RSRUFNRVIpICYm
IEVOQUJMRShWSURFT19UUkFDSykgJiYgZGVmaW5lZChHU1RfQVBJX1ZFUlNJT05fMSkKKworI2Vu
ZGlmIC8vIEluYmFuZE1ldGFkYXRhVGV4dFRyYWNrUHJpdmF0ZUdTdHJlYW1lcl9oCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9nc3RyZWFtZXIvTWVkaWFQbGF5
ZXJQcml2YXRlR1N0cmVhbWVyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNz
L2dzdHJlYW1lci9NZWRpYVBsYXllclByaXZhdGVHU3RyZWFtZXIuY3BwCmluZGV4IDAxMDcwMjEw
MjllNDVhMmMxYzRiYmQwNTkwNTgzYjk3NzVkY2E3ZmQuLmU3ZTJkOWI1ZDFlNjdhMTcwZTk3ZWE2
MmQ5NGNmMWJjNzMxNGVlOTMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dy
YXBoaWNzL2dzdHJlYW1lci9NZWRpYVBsYXllclByaXZhdGVHU3RyZWFtZXIuY3BwCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2dzdHJlYW1lci9NZWRpYVBsYXllclByaXZh
dGVHU3RyZWFtZXIuY3BwCkBAIC00Myw2ICs0Myw3IEBACiAjaW5jbHVkZSA8d3RmL3RleHQvQ1N0
cmluZy5oPgogCiAjaWYgRU5BQkxFKFZJREVPX1RSQUNLKSAmJiBkZWZpbmVkKEdTVF9BUElfVkVS
U0lPTl8xKQorI2luY2x1ZGUgIkluYmFuZE1ldGFkYXRhVGV4dFRyYWNrUHJpdmF0ZUdTdHJlYW1l
ci5oIgogI2luY2x1ZGUgIkluYmFuZFRleHRUcmFja1ByaXZhdGVHU3RyZWFtZXIuaCIKICNpbmNs
dWRlICJUZXh0Q29tYmluZXJHU3RyZWFtZXIuaCIKICNpbmNsdWRlICJUZXh0U2lua0dTdHJlYW1l
ci5oIgpAQCAtOTU4LDYgKzk1OSwxMSBAQCBnYm9vbGVhbiBNZWRpYVBsYXllclByaXZhdGVHU3Ry
ZWFtZXI6OmhhbmRsZU1lc3NhZ2UoR3N0TWVzc2FnZSogbWVzc2FnZSkKICAgICAgICAgICAgIGdf
ZnJlZShkZXRhaWwpOwogICAgICAgICB9CiAgICAgICAgIGJyZWFrOworI2lmIEVOQUJMRShWSURF
T19UUkFDSykgJiYgZGVmaW5lZChHU1RfQVBJX1ZFUlNJT05fMSkKKyAgICBjYXNlIEdTVF9NRVNT
QUdFX1RPQzoKKyAgICAgICAgcHJvY2Vzc1RhYmxlT2ZDb250ZW50cyhtZXNzYWdlKTsKKyAgICAg
ICAgYnJlYWs7CisjZW5kaWYKICAgICBkZWZhdWx0OgogICAgICAgICBMT0dfTUVESUFfTUVTU0FH
RSgiVW5oYW5kbGVkIEdTdHJlYW1lciBtZXNzYWdlIHR5cGU6ICVzIiwKICAgICAgICAgICAgICAg
ICAgICAgR1NUX01FU1NBR0VfVFlQRV9OQU1FKG1lc3NhZ2UpKTsKQEAgLTk4Niw2ICs5OTIsNTYg
QEAgdm9pZCBNZWRpYVBsYXllclByaXZhdGVHU3RyZWFtZXI6OnByb2Nlc3NCdWZmZXJpbmdTdGF0
cyhHc3RNZXNzYWdlKiBtZXNzYWdlKQogICAgIHVwZGF0ZVN0YXRlcygpOwogfQogCisjaWYgRU5B
QkxFKFZJREVPX1RSQUNLKSAmJiBkZWZpbmVkKEdTVF9BUElfVkVSU0lPTl8xKQordm9pZCBNZWRp
YVBsYXllclByaXZhdGVHU3RyZWFtZXI6OnByb2Nlc3NUYWJsZU9mQ29udGVudHMoR3N0TWVzc2Fn
ZSogbWVzc2FnZSkKK3sKKyAgICBpZiAobV9jaGFwdGVyc1RyYWNrKQorICAgICAgICBtX3BsYXll
ci0+cmVtb3ZlVGV4dFRyYWNrKG1fY2hhcHRlcnNUcmFjayk7CisKKyAgICBtX2NoYXB0ZXJzVHJh
Y2sgPSBJbmJhbmRNZXRhZGF0YVRleHRUcmFja1ByaXZhdGVHU3RyZWFtZXI6OmNyZWF0ZShJbmJh
bmRUZXh0VHJhY2tQcml2YXRlOjpDaGFwdGVycyk7CisgICAgbV9wbGF5ZXItPmFkZFRleHRUcmFj
ayhtX2NoYXB0ZXJzVHJhY2spOworCisgICAgR3N0VG9jKiB0b2M7CisgICAgZ2Jvb2xlYW4gdXBk
YXRlZDsKKyAgICBnc3RfbWVzc2FnZV9wYXJzZV90b2MobWVzc2FnZSwgJnRvYywgJnVwZGF0ZWQp
OworICAgIEFTU0VSVCh0b2MpOworCisgICAgZm9yIChHTGlzdCogaSA9IGdzdF90b2NfZ2V0X2Vu
dHJpZXModG9jKTsgaTsgaSA9IGktPm5leHQpCisgICAgICAgIHByb2Nlc3NUYWJsZU9mQ29udGVu
dHNFbnRyeShzdGF0aWNfY2FzdDxHc3RUb2NFbnRyeSo+KGktPmRhdGEpLCAwKTsKKworICAgIGdz
dF90b2NfdW5yZWYodG9jKTsKK30KKwordm9pZCBNZWRpYVBsYXllclByaXZhdGVHU3RyZWFtZXI6
OnByb2Nlc3NUYWJsZU9mQ29udGVudHNFbnRyeShHc3RUb2NFbnRyeSogZW50cnksIEdzdFRvY0Vu
dHJ5KiBwYXJlbnQpCit7CisgICAgQVNTRVJUKGVudHJ5KTsKKworICAgIFJlZlB0cjxHZW5lcmlj
Q3VlRGF0YT4gY3VlID0gR2VuZXJpY0N1ZURhdGE6OmNyZWF0ZSgpOworCisgICAgZ2ludDY0IHN0
YXJ0ID0gLTEsIHN0b3AgPSAtMTsKKyAgICBnc3RfdG9jX2VudHJ5X2dldF9zdGFydF9zdG9wX3Rp
bWVzKGVudHJ5LCAmc3RhcnQsICZzdG9wKTsKKyAgICBpZiAoc3RhcnQgIT0gLTEpCisgICAgICAg
IGN1ZS0+c2V0U3RhcnRUaW1lKHN0YXRpY19jYXN0PGRvdWJsZT4oc3RhcnQpIC8gR1NUX1NFQ09O
RCk7CisgICAgaWYgKHN0b3AgIT0gLTEpCisgICAgICAgIGN1ZS0+c2V0RW5kVGltZShzdGF0aWNf
Y2FzdDxkb3VibGU+KHN0b3ApIC8gR1NUX1NFQ09ORCk7CisKKyAgICBHc3RUYWdMaXN0KiB0YWdz
ID0gZ3N0X3RvY19lbnRyeV9nZXRfdGFncyhlbnRyeSk7CisgICAgaWYgKHRhZ3MpIHsKKyAgICAg
ICAgZ2NoYXIqIHRpdGxlID0gIDA7CisgICAgICAgIGdzdF90YWdfbGlzdF9nZXRfc3RyaW5nKHRh
Z3MsIEdTVF9UQUdfVElUTEUsICZ0aXRsZSk7CisgICAgICAgIGlmICh0aXRsZSkgeworICAgICAg
ICAgICAgY3VlLT5zZXRDb250ZW50KHRpdGxlKTsKKyAgICAgICAgICAgIGdfZnJlZSh0aXRsZSk7
CisgICAgICAgIH0KKyAgICB9CisKKyAgICBtX2NoYXB0ZXJzVHJhY2stPmNsaWVudCgpLT5hZGRH
ZW5lcmljQ3VlKG1fY2hhcHRlcnNUcmFjay5nZXQoKSwgY3VlLnJlbGVhc2UoKSk7CisKKyAgICBm
b3IgKEdMaXN0KiBpID0gZ3N0X3RvY19lbnRyeV9nZXRfc3ViX2VudHJpZXMoZW50cnkpOyBpOyBp
ID0gaS0+bmV4dCkKKyAgICAgICAgcHJvY2Vzc1RhYmxlT2ZDb250ZW50c0VudHJ5KHN0YXRpY19j
YXN0PEdzdFRvY0VudHJ5Kj4oaS0+ZGF0YSksIGVudHJ5KTsKK30KKyNlbmRpZgorCiB2b2lkIE1l
ZGlhUGxheWVyUHJpdmF0ZUdTdHJlYW1lcjo6ZmlsbFRpbWVyRmlyZWQoVGltZXI8TWVkaWFQbGF5
ZXJQcml2YXRlR1N0cmVhbWVyPiopCiB7CiAgICAgR3N0UXVlcnkqIHF1ZXJ5ID0gZ3N0X3F1ZXJ5
X25ld19idWZmZXJpbmcoR1NUX0ZPUk1BVF9QRVJDRU5UKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2dzdHJlYW1lci9NZWRpYVBsYXllclByaXZhdGVHU3Ry
ZWFtZXIuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2dzdHJlYW1lci9NZWRp
YVBsYXllclByaXZhdGVHU3RyZWFtZXIuaAppbmRleCAyNWM5YzUwNmFlMWMyZDM5N2U5MmYwNmI4
NDQzZGMxYTBmNWM4N2VmLi41OTYxZGE1MDc0NTJhN2E4ZTFkY2RiYjhiOGQ1OTdhOGIzZWMzMWJl
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9nc3RyZWFtZXIv
TWVkaWFQbGF5ZXJQcml2YXRlR1N0cmVhbWVyLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vZ3JhcGhpY3MvZ3N0cmVhbWVyL01lZGlhUGxheWVyUHJpdmF0ZUdTdHJlYW1lci5oCkBAIC0x
MzUsNiArMTM1LDEwIEBAIHByaXZhdGU6CiAKICAgICB2b2lkIHNldERvd25sb2FkQnVmZmVyaW5n
KCk7CiAgICAgdm9pZCBwcm9jZXNzQnVmZmVyaW5nU3RhdHMoR3N0TWVzc2FnZSopOworI2lmIEVO
QUJMRShWSURFT19UUkFDSykgJiYgZGVmaW5lZChHU1RfQVBJX1ZFUlNJT05fMSkKKyAgICB2b2lk
IHByb2Nlc3NUYWJsZU9mQ29udGVudHMoR3N0TWVzc2FnZSopOworICAgIHZvaWQgcHJvY2Vzc1Rh
YmxlT2ZDb250ZW50c0VudHJ5KEdzdFRvY0VudHJ5KiwgR3N0VG9jRW50cnkqIHBhcmVudCk7Cisj
ZW5kaWYKIAogICAgIHZpcnR1YWwgU3RyaW5nIGVuZ2luZURlc2NyaXB0aW9uKCkgY29uc3QgeyBy
ZXR1cm4gIkdTdHJlYW1lciI7IH0KICAgICB2aXJ0dWFsIGJvb2wgaXNMaXZlU3RyZWFtKCkgY29u
c3QgeyByZXR1cm4gbV9pc1N0cmVhbWluZzsgfQpAQCAtMTg3LDYgKzE5MSw3IEBAIHByaXZhdGU6
CiAgICAgYm9vbCBtX21pc3NpbmdQbHVnaW5zOwogI2lmIEVOQUJMRShWSURFT19UUkFDSykgJiYg
ZGVmaW5lZChHU1RfQVBJX1ZFUlNJT05fMSkKICAgICBWZWN0b3I8UmVmUHRyPEluYmFuZFRleHRU
cmFja1ByaXZhdGVHU3RyZWFtZXI+ID4gbV90ZXh0VHJhY2tzOworICAgIFJlZlB0cjxJbmJhbmRU
ZXh0VHJhY2tQcml2YXRlPiBtX2NoYXB0ZXJzVHJhY2s7CiAjZW5kaWYKIH07CiB9CmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKaW5kZXgg
OWQwMWQ3YmZjMTljODJlOTIxMWNiMDRkNGMzOTQyMzhiZjEwYWUyZS4uMDlmZjI4MzE5ZGJkOTIw
ZjU5YjliNWU3MDhjMjUxYTc2OGVkZWIzOSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvQ2hhbmdl
TG9nCisrKyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMzIEBACisyMDEzLTA5
LTMwICBCcmVuZGFuIExvbmcgIDxiLmxvbmdAY2FibGVsYWJzLmNvbT4KKworICAgICAgICBbR1N0
cmVhbWVyXSBTdXBwb3J0ICJjaGFwdGVyIiB0ZXh0IHRyYWNrcworICAgICAgICBodHRwczovL2J1
Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTIyMDAwCisKKyAgICAgICAgUmV2aWV3ZWQg
YnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBtZWRpYS9jb250ZW50L2NvdW50aW5nLXN1
YnRpdGxlZC1zcnQubWt2OiBBZGRlZCBjaGFwdGVycyBtZXRhZGF0YS4KKyAgICAgICAgKiBtZWRp
YS90cmFjay9pbi1iYW5kL3RyYWNrLWluLWJhbmQtbWt2LWNoYXB0ZXJzLWV4cGVjdGVkLnR4dDog
TmV3IHRlc3QsIHNpbWlsYXIgdG8gY3Vlcy1hZGRlZC1vbmUsIGJ1dCB1c2VzICJjaGFwdGVycyIg
dHJhY2suCisgICAgICAgICogbWVkaWEvdHJhY2svaW4tYmFuZC90cmFjay1pbi1iYW5kLW1rdi1j
aGFwdGVycy5odG1sOiBTYW1lLgorICAgICAgICAqIG1lZGlhL2luLWJhbmQtY3Vlcy5qczogVXBk
YXRlZCB0ZXN0cyB0byBoYW5kbGUgdGhlIG5ldyAiY2hhcHRlcnMiIHRyYWNrLgorICAgICAgICAq
IG1lZGlhL3RyYWNrL2luLWJhbmQvdHJhY2staW4tYmFuZC1rYXRlLW9nZy1jdWVzLWFkZGVkLW9u
Y2UtZXhwZWN0ZWQudHh0OiBTYW1lLgorICAgICAgICAqIG1lZGlhL3RyYWNrL2luLWJhbmQvdHJh
Y2staW4tYmFuZC1rYXRlLW9nZy1jdWVzLWFkZGVkLW9uY2UuaHRtbDogU2FtZS4KKyAgICAgICAg
KiBtZWRpYS90cmFjay9pbi1iYW5kL3RyYWNrLWluLWJhbmQta2F0ZS1vZ2ctbW9kZS1leHBlY3Rl
ZC50eHQ6IFNhbWUuCisgICAgICAgICogbWVkaWEvdHJhY2svaW4tYmFuZC90cmFjay1pbi1iYW5k
LWthdGUtb2dnLW1vZGUuaHRtbDogU2FtZS4KKyAgICAgICAgKiBtZWRpYS90cmFjay9pbi1iYW5k
L3RyYWNrLWluLWJhbmQta2F0ZS1vZ2ctc3R5bGUtZXhwZWN0ZWQudHh0OiBTYW1lLgorICAgICAg
ICAqIG1lZGlhL3RyYWNrL2luLWJhbmQvdHJhY2staW4tYmFuZC1rYXRlLW9nZy10cmFjay1vcmRl
ci1leHBlY3RlZC50eHQ6IFNhbWUuCisgICAgICAgICogbWVkaWEvdHJhY2svaW4tYmFuZC90cmFj
ay1pbi1iYW5kLWthdGUtb2dnLXRyYWNrLW9yZGVyLmh0bWw6IFNhbWUuCisgICAgICAgICogbWVk
aWEvdHJhY2svaW4tYmFuZC90cmFjay1pbi1iYW5kLXNydC1ta3YtY3Vlcy1hZGRlZC1vbmNlLWV4
cGVjdGVkLnR4dDogU2FtZS4KKyAgICAgICAgKiBtZWRpYS90cmFjay9pbi1iYW5kL3RyYWNrLWlu
LWJhbmQtc3J0LW1rdi1jdWVzLWFkZGVkLW9uY2UuaHRtbDogU2FtZS4KKyAgICAgICAgKiBtZWRp
YS90cmFjay9pbi1iYW5kL3RyYWNrLWluLWJhbmQtc3J0LW1rdi1raW5kLWV4cGVjdGVkLnR4dDog
U2FtZS4KKyAgICAgICAgKiBtZWRpYS90cmFjay9pbi1iYW5kL3RyYWNrLWluLWJhbmQtc3J0LW1r
di1raW5kLmh0bWw6IFNhbWUuCisgICAgICAgICogbWVkaWEvdHJhY2svaW4tYmFuZC90cmFjay1p
bi1iYW5kLXNydC1ta3YtbGFuZ3VhZ2UtZXhwZWN0ZWQudHh0OiBTYW1lLgorICAgICAgICAqIG1l
ZGlhL3RyYWNrL2luLWJhbmQvdHJhY2staW4tYmFuZC1zcnQtbWt2LWxhbmd1YWdlLmh0bWw6IFNh
bWUuCisgICAgICAgICogbWVkaWEvdHJhY2svaW4tYmFuZC90cmFjay1pbi1iYW5kLXNydC1ta3Yt
bW9kZS1leHBlY3RlZC50eHQ6IFNhbWUuCisgICAgICAgICogbWVkaWEvdHJhY2svaW4tYmFuZC90
cmFjay1pbi1iYW5kLXNydC1ta3YtbW9kZS5odG1sOiBTYW1lLgorICAgICAgICAqIG1lZGlhL3Ry
YWNrL2luLWJhbmQvdHJhY2staW4tYmFuZC1zcnQtbWt2LXN0eWxlLWV4cGVjdGVkLnR4dDogU2Ft
ZS4KKyAgICAgICAgKiBtZWRpYS90cmFjay9pbi1iYW5kL3RyYWNrLWluLWJhbmQtc3J0LW1rdi10
cmFjay1vcmRlci1leHBlY3RlZC50eHQ6IFNhbWUuCisgICAgICAgICogbWVkaWEvdHJhY2svaW4t
YmFuZC90cmFjay1pbi1iYW5kLXNydC1ta3YtdHJhY2stb3JkZXIuaHRtbDogU2FtZS4KKwogMjAx
My0wOS0zMCAgQ29tbWl0IFF1ZXVlICA8Y29tbWl0LXF1ZXVlQHdlYmtpdC5vcmc+CiAKICAgICAg
ICAgVW5yZXZpZXdlZCwgcm9sbGluZyBvdXQgcjE1NjY1Ni4KZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL21lZGlhL2NvbnRlbnQvY291bnRpbmctc3VidGl0bGVkLXNydC5ta3YgYi9MYXlvdXRUZXN0
cy9tZWRpYS9jb250ZW50L2NvdW50aW5nLXN1YnRpdGxlZC1zcnQubWt2CmluZGV4IDRjMDhlYzA4
MzU2NzAxOWJkODNhYTZmZDc2ZDI1NThmMTMyYTlhZjAuLmQ2ZTkxNzljOGY4NzljNDU0ZjA4Yjcw
NTU3NmJlMzBkYTczZDE1YTAgMTAwNjQ0CkdJVCBiaW5hcnkgcGF0Y2gKZGVsdGEgMjAxNwp6Y21Z
K0RlQHY4aDlMTWtaYXJgdHExVEc7TTJaK0xuQ05fVVRUTkU2TV5Ze0B1dzRAKXhYKDl2ZGE0WFZ8
PVMjTnsKejNFWUE1U2w2NT11RmFhOEo+P2ZWYW4pa2hUd0NoSTVeSntBIyt1YSRZJjYlWiYrfmww
cExxRTleP0NwSkptMnM0Cnp4aj5WPzlaZD9YamxUUENxQzM8ITdUaT5qSmg4K2JLMzRuVFRlaXs8
NCVVN3xRbSk7dnheblQqbUJqLWFaMnEpPwp6KzBSJENIKEk+SWZtMXppaHg9Rm1JUDNnclg3dCs1
dTVOOUBtVCZkeHJqb0YwdzFtMVljTGlnSHR7JGp6VVV5OUAKejdUMV8heGx9Un5SNG5+fGFlTXFQ
N1ZsU0dFQWw8TnRqfHYhS01DV0xpcU8mVEAyLTJMd2J8cD95VDkyfWRaZzNTCnp2aFVLVGhDXl4j
ciolaVI5TGt6MXsmQGwmcz11IyV8RXUwTSQyeTFDKTZtKmQqNjhLRmspWW8mJkEwWFp2dHd4Ywp6
V1E3fk9nWnwhYUZWOT1pZEg+aG9BJj5UTiUzdFo0e2ZWNVlmd3tFfnQhUHY0OSZJWD03ZDd5OENg
KEhgNlZwdEsKejVgPXdHWUhFVXpQMHU2PytYQj5mUDhoZVVlKyZ5YmJtRnw9ZTFZYzBpZHl0d3Rl
OCpsK1FjezdzTnhyNlYkP2RuCnp4UlE0Rmg/QGA3U3kzOH5RTGxeQUdXdUQoKVo5bVJncnNSdlRe
XkRPWH5pak5POVE8dSRiTH1gM1VVRWBNd1Vsagp6cnpfcitaOzB4e3F3O0Z7dXRRRXU1bl5lfHB1
RkArO1ZkbkBBeEFgQ2RUc2JYeGYxVHY2YnRSMVEtbFleSmArKS0KekBOcGdWJV8qVippMmRsdEx+
I0Y0Qn5GaFNebj9hOGxRX3F8NU9afS1FQEpVTFJRcU5rV01lRHYkfXByYiZnQzBCCnozPj9zaTxs
dzlBRXstVSZFfGpLdDAxKUNGJDZTV05ae1M7cXQ/TndjQD9rVWYlXyZAN3speGUlRX48cHIoUjtp
dQp6aXRxcCtXTyo/TmpkZDlZemsjPFJqe2VUMUUtbEE4aFBrQDVqJHhsaFZsenpnYGFZQzElO29p
YDRJQmpaT1l8TjYKem5tVUVsN0phKXhqbD96NGZQUFUxQX1icH1TfjxAcDxYK19RQmxDSitnakJa
fiokfjdBWHNHVlEmUDUmQSsxfGBNCnpBRipOdkFYMnk8Qk4qMnM0ODg/PCFuMDw1U3Nyaj4kMzwr
dzRDO20zdlZHTzBsWG9tV2pVR1RHc354aSMqRGFHeQp6XiNORzY+aHR4bDtvU0RTP3FoU3s/Mlc/
YkVoI2VSUmFmOCtqUHR5aj9gNkMxRFNAdyQpV3QwI0FYMnkpRDtOaDAKejxJZj5hekdjPXx4ZmdR
T1NNNCE0Ky1BeD5lek18RmgqI1JQWClMPT1WQ3RXK1A4IVRlVyoyeWpCWVg1OWNFQ0xJCnoyVXU2
MVNEZTdFckRPQisyeDxDbEE9aGAlXi1YYHs0eWhLdGdPcz9KP35vUzlCWG1VOFhqc2lTTEBAcGg8
TTQoYgp6K2k1bmBUKk9ZcyhOSj8wSkpUSzUqP058RHJrfSRJSzstZDhqOV5Aa0YhJk1WOFBsayoq
OVJePzQyPCgoMTJua2EKekgjblNpVyhqdVFFYVJQayppbFA+TlhCezBXP1laQlMqOFo9enpmc29n
PHMmQChXQ3A9OVFiWUlTJEU4TlJpYVQxCnpGT1BBYTdsQXpBbml1JkJJZUZZNzEwb3hxI3dmPFkh
dVQlYSVNUDNNSE08dmIpWXNAZ3lFX2JEbyFofmBUMj5gcQpXbmZvUWFGa291JHEtPjlhODdaZy1Q
dnc4MV9yWUhQCgpkZWx0YSAxODI3CnpjbVkrRVlpdl94N3tfPHNeUntEaXUkeWg/PSgzZURWWUNf
SVo1THJGdSMxZHJPZlhJfjcjWSNUOCQtODZLfWRKcgp6aTdXX2ZuPmtPeW1lNkhGaCROV3BCKXA3
OUtOeVQ1aEQxVG90dFFHaEtXSXxLV0pZNyteSWplfWBfJU9KfDNDbCMKel5QSlE0K0ZhPWNVWWQ5
YEgqPWBDYjdKNV52TjdXTTtxTER7dUZZNSUzekxiIVNiZnBhQHt0PTZHUGY/THxJPFheCnokR3oh
T04xaU8xe14+Kz0/NktXKD1UPWR6JDV8OGpKNk1ASUlkek5+b2pLM0crY3lFOXNuTXlDVmZmbmUl
SFZ0QQp6eUhvaml3YiQ5KDZ6PzQ/bitgZDVDZjloS2hVdlVGP1E9ZTM3MmleNXl6MXB3ZU1WPSgm
WVUtQGRFbCZaI2whelEKelotaWc2R3NVRXEqWEVQaVR5QjwtIXZwclFRNDsxdUFDbFo8ZH1mcTlK
IXBTZlY2TnU+bkM2dmJ7QzB1KVJAeyFCCnpIYUdDQE5pJDEkLSlYYUJwV1c9QzVxX0RfNCt3d0ZM
KzF8S2VfNkRTU0k2bDBnb2hZaT1gJXxCQ1l6UlJxXlR7Nwp6UX5iRmJHKXAlQll5QzF8Z0BVYCVa
P3N3SXhNU3Q7PEJPSlloeHh3RVQ0d3JWMHBnMW1rJTBNKyUpKilYczQxdnoKei1KLXIyKmplemRS
TDMzZ2gjQEl3U3BgOCVQUHd1Z2BUJSNPIUw2YCVIdztPZmFGfCk4UzkhNUNZZilofGY3QTBvCnoq
dClNVjdIfnx9TnEhVCM9THdmUmRVej5ASV5tOTxrUW5OYFFDKVpPbENKWUlKcjlJRXsxaDFGeChk
VSojMnBnSAp6Vjd1SiFUPXVQUFNme1lJWnx5O3hTSylIXnRYK3o9eVFmaiZxe0glRjx7eWRJR0hq
SCFpUzBnZFNwTXJnQXpxOWAKekYmNXFqLW1kJENzUlMxOE5CK1BpKjh1QXRrbDdIVklRcU1Ydjlu
K1pJfWYoIyZnQ0FBMEt+Iz9XNW57OTZod3Y7CnpSMGQ/UCp5JGM8NW9nTEI2LVIkZGxqTHdgVkcy
N0ppMCVaVz8qem1gaHA8eXw1ZHF2VG9+T1BKVlc/OS0zK09LVAp6TGt3eUl0RERFY2t8dVh4X2Nx
KX5hcGt1VSV1fDFDKTRibEhiVlFGM0t4eyloTWt4Kj5pb2J5VCFKQlM+ZCtTbjsKensmd1l1dndn
cW52cWBGN1NOZDErSmFzb1BkJkw2dm14SVBDTXt3UTEwcWcrMThUMzZ1LSFfaDJXbmJMYXYjaHNm
CnpESGw1a2V7YTN5dSl7KytkSXoocFM/Xkd1dU9rNTJHaHpqaCpkdGVRZ19YfnteeEw0dmcjT0dv
NyNYYT4kbz1vQAp6JGx3X3EwbUxIajs4dSNtUjtKe35reXJmYl9Pfjl6WVFAcHRJd15VdyhQNVFR
PzdTWS1vcSpKbkd5JD1TJm9FblkKemsjUmp9ZjFhV0s0eHo4I2g8ZXBZRntnQ2tKQ1RQTCs8ODAx
LTwka1ZFM1dlamV9PjFnekZ4MFR5O2hHPEsmKlo8CnpNa3gqPml0azNnZGVINmZ5N3hFfk19T0Nw
XnV4PW04UFpxTkByPHNsYEhJKTd2anQ8Mz9YISZUN3lsMCtzSXdIYApIQmk4PlB7OFZNZAoKZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL21lZGlhL2luLWJhbmQtY3Vlcy5qcyBiL0xheW91dFRlc3Rz
L21lZGlhL2luLWJhbmQtY3Vlcy5qcwppbmRleCA0ZmUxNTc3OTZjOGJhODFlNWY1Njg1ZGY3NDU1
ODc0NTAxYWEwNmNmLi5jMDYxYjU1YzNhZmFhYjdmYWMwM2VkODAwNzRhMGFlNDMxMjE3MzU3IDEw
MDY0NAotLS0gYS9MYXlvdXRUZXN0cy9tZWRpYS9pbi1iYW5kLWN1ZXMuanMKKysrIGIvTGF5b3V0
VGVzdHMvbWVkaWEvaW4tYmFuZC1jdWVzLmpzCkBAIC00LDkgKzQsOCBAQCBmdW5jdGlvbiB0ZXN0
QXR0cmlidXRlKHVyaSwgYXR0cmlidXRlLCB2YWx1ZXMpCiAgICAgewogICAgICAgICBjb25zb2xl
V3JpdGUoIjxicj48aT4qKiBDaGVjayBpbi1iYW5kIGtpbmQgYXR0cmlidXRlczwvaT4iKTsKICAg
ICAgICAgdGVzdEV4cGVjdGVkKCJ2aWRlby50ZXh0VHJhY2tzLmxlbmd0aCIsIHZhbHVlcy5sZW5n
dGgpOwotICAgICAgICBmb3IgKHZhciBpID0gMDsgaSA8IHZhbHVlcy5sZW5ndGg7ICsraSkgewor
ICAgICAgICBmb3IgKHZhciBpID0gMDsgaSA8IHZhbHVlcy5sZW5ndGg7ICsraSkKICAgICAgICAg
ICAgIHRlc3RFeHBlY3RlZCgidmlkZW8udGV4dFRyYWNrc1siICsgaSArICJdLiIgKyBhdHRyaWJ1
dGUsIHZhbHVlc1tpXSk7Ci0gICAgICAgIH0KIAogICAgICAgICBjb25zb2xlV3JpdGUoIiIpOwog
ICAgICAgICBlbmRUZXN0KCk7CkBAIC0xNyw3ICsxNiw3IEBAIGZ1bmN0aW9uIHRlc3RBdHRyaWJ1
dGUodXJpLCBhdHRyaWJ1dGUsIHZhbHVlcykKICAgICB3YWl0Rm9yRXZlbnQoJ2NhbnBsYXl0aHJv
dWdoJywgY2FucGxheXRocm91Z2gpOwogfQogCi1mdW5jdGlvbiB0ZXN0Q3Vlc0FkZGVkT25jZSh1
cmkpCitmdW5jdGlvbiB0ZXN0Q3Vlc0FkZGVkT25jZSh1cmksIGtpbmQpCiB7CiAgICAgdmFyIHNl
ZWtlZENvdW50ID0gMDsKICAgICB2YXIgY3Vlc1N0YXJ0cyA9IFtdOwpAQCAtNjUsNyArNjQsMTIg
QEAgZnVuY3Rpb24gdGVzdEN1ZXNBZGRlZE9uY2UodXJpKQogICAgICAgICBzZXRJbnRlcnZhbChw
b2xsUHJvZ3Jlc3MsIDEwMCk7CiAKICAgICAgICAgY29uc29sZVdyaXRlKCI8YnI+PGk+KiogU2V0
dGluZyB0cmFjayAxIHRvIHNob3dpbmc8L2k+Iik7Ci0gICAgICAgIHJ1bigiaW5iYW5kVHJhY2sx
ID0gdmlkZW8udGV4dFRyYWNrc1swXSIpOworICAgICAgICBmb3IgKHZhciBpID0gMDsgaSA8IHZp
ZGVvLnRleHRUcmFja3MubGVuZ3RoOyArK2kpIHsKKyAgICAgICAgICAgIGlmICh2aWRlby50ZXh0
VHJhY2tzW2ldLmtpbmQgPT0ga2luZCkgeworICAgICAgICAgICAgICAgIGluYmFuZFRyYWNrMSA9
IHZpZGVvLnRleHRUcmFja3NbaV07CisgICAgICAgICAgICAgICAgYnJlYWs7CisgICAgICAgICAg
ICB9CisgICAgICAgIH0KICAgICAgICAgcnVuKCJpbmJhbmRUcmFjazEubW9kZSA9ICdzaG93aW5n
JyIpOwogICAgICAgICBydW4oInZpZGVvLnBsYXkoKSIpOwogICAgIH0KQEAgLTc1LDcgKzc5LDcg
QEAgZnVuY3Rpb24gdGVzdEN1ZXNBZGRlZE9uY2UodXJpKQogICAgIHdhaXRGb3JFdmVudCgnY2Fu
cGxheXRocm91Z2gnLCBjYW5wbGF5dGhyb3VnaCk7CiB9CiAKLWZ1bmN0aW9uIHRlc3RNb2RlKHVy
aSkKK2Z1bmN0aW9uIHRlc3RNb2RlKHVyaSwga2luZCkKIHsKICAgICBmdW5jdGlvbiBzZWVrZWQo
KQogICAgIHsKQEAgLTkzLDcgKzk3LDEyIEBAIGZ1bmN0aW9uIHRlc3RNb2RlKHVyaSkKIAogICAg
IGZ1bmN0aW9uIGNhbnBsYXl0aHJvdWdoKCkKICAgICB7Ci0gICAgICAgIHJ1bigiaW5iYW5kVHJh
Y2sxID0gdmlkZW8udGV4dFRyYWNrc1swXSIpOworICAgICAgICBmb3IgKHZhciBpID0gMDsgaSA8
IHZpZGVvLnRleHRUcmFja3MubGVuZ3RoOyArK2kpIHsKKyAgICAgICAgICAgIGlmICh2aWRlby50
ZXh0VHJhY2tzW2ldLmtpbmQgPT0ga2luZCkgeworICAgICAgICAgICAgICAgIGluYmFuZFRyYWNr
MSA9IHZpZGVvLnRleHRUcmFja3NbaV07CisgICAgICAgICAgICAgICAgYnJlYWs7CisgICAgICAg
ICAgICB9CisgICAgICAgIH0KIAogICAgICAgICBjb25zb2xlV3JpdGUoIjxicj48aT4qKiBBIGhp
ZGRlbiB0cmFjayBzaG91bGQgbm90IGhhdmUgdmlzaWJsZSBjdWVzPCIgKyAiL2k+Iik7CiAgICAg
ICAgIHJ1bigiaW5iYW5kVHJhY2sxLm1vZGUgPSAnaGlkZGVuJyIpOwpAQCAtMTI3LDcgKzEzNiwx
MiBAQCBmdW5jdGlvbiB0ZXN0U3R5bGUodXJpKQogICAgIGZ1bmN0aW9uIGNhbnBsYXl0aHJvdWdo
KCkKICAgICB7CiAgICAgICAgIGNvbnNvbGVXcml0ZSgiPGJyPjxpPioqIFNldHRpbmcgdHJhY2sg
MSB0byBzaG93aW5nIGFuZCBzdGFydGluZyB2aWRlbzwvaT4iKTsKLSAgICAgICAgcnVuKCJpbmJh
bmRUcmFjazEgPSB2aWRlby50ZXh0VHJhY2tzWzBdIik7CisgICAgICAgIGZvciAodmFyIGkgPSAw
OyBpIDwgdmlkZW8udGV4dFRyYWNrcy5sZW5ndGg7ICsraSkgeworICAgICAgICAgICAgaWYgKHZp
ZGVvLnRleHRUcmFja3NbaV0ua2luZCA9PSAic3VidGl0bGVzIiB8fCB2aWRlby50ZXh0VHJhY2tz
W2ldLmtpbmQgPT0gImNhcHRpb25zIikgeworICAgICAgICAgICAgICAgIGluYmFuZFRyYWNrMSA9
IHZpZGVvLnRleHRUcmFja3NbaV07CisgICAgICAgICAgICAgICAgYnJlYWs7CisgICAgICAgICAg
ICB9CisgICAgICAgIH0KIAogICAgICAgICBpbmJhbmRUcmFjazEubW9kZSA9ICdzaG93aW5nJzsK
ICAgICAgICAgcnVuKCJ2aWRlby5wbGF5KCkiKTsKQEAgLTE0MSwxNyArMTU1LDcgQEAgZnVuY3Rp
b24gdGVzdFN0eWxlKHVyaSkKICAgICB3YWl0Rm9yRXZlbnQoJ2NhbnBsYXl0aHJvdWdoJywgY2Fu
cGxheXRocm91Z2gpOwogfQogCi1mdW5jdGlvbiB0ZXN0VHJhY2tPcmRlcih1cmkpIHsKLSAgICB2
YXIgYWRkdHJhY2tFdmVudENvdW50ID0gMDsKLQotICAgIGZ1bmN0aW9uIHRyYWNrQWRkZWQoZXZl
bnQpCi0gICAgewotICAgICAgICBjb25zb2xlV3JpdGUoIkVWRU5UKCIgKyBldmVudC50eXBlICsg
IikiKTsKLSAgICAgICAgY29tcGFyZVRyYWNrcygiZXZlbnQudHJhY2siLCAidmlkZW8udGV4dFRy
YWNrc1siICsgYWRkdHJhY2tFdmVudENvdW50ICsgIl0iKTsKLSAgICAgICAgKythZGR0cmFja0V2
ZW50Q291bnQ7Ci0gICAgICAgIGNvbnNvbGVXcml0ZSgiIik7Ci0gICAgfQotCitmdW5jdGlvbiB0
ZXN0VHJhY2tPcmRlcih1cmksIG51bUluQmFuZFRyYWNrcykgewogICAgIGZ1bmN0aW9uIGNvbXBh
cmVUcmFja3ModHJhY2sxLCB0cmFjazIpCiAgICAgewogICAgICAgICB2YXIgZXF1YWwgPSAoZXZh
bCh0cmFjazEpID09IGV2YWwodHJhY2syKSk7CkBAIC0xNjEsMjEgKzE2NSwyMSBAQCBmdW5jdGlv
biB0ZXN0VHJhY2tPcmRlcih1cmkpIHsKICAgICBmdW5jdGlvbiBjYW5wbGF5dGhyb3VnaCgpCiAg
ICAgewogICAgICAgICBjb25zb2xlV3JpdGUoIjxicj48aT4qKiBDaGVjayBpbml0aWFsIGluLWJh
bmQgdHJhY2sgc3RhdGVzPC9pPiIpOwotICAgICAgICB0ZXN0RXhwZWN0ZWQoInZpZGVvLnRleHRU
cmFja3MubGVuZ3RoIiwgMik7Ci0gICAgICAgIHJ1bigiaW5iYW5kVHJhY2sxID0gdmlkZW8udGV4
dFRyYWNrc1swXSIpOwotICAgICAgICBydW4oImluYmFuZFRyYWNrMiA9IHZpZGVvLnRleHRUcmFj
a3NbMV0iKTsKKyAgICAgICAgdGVzdEV4cGVjdGVkKCJ2aWRlby50ZXh0VHJhY2tzLmxlbmd0aCIs
IG51bUluQmFuZFRyYWNrcyk7CisgICAgICAgIGZvciAodmFyIGkgPSAwOyBpIDwgbnVtSW5CYW5k
VHJhY2tzOyArK2kpCisgICAgICAgICAgcnVuKCJpbmJhbmRUcmFjayIgKyAoaSArIDEpICsgIiA9
IHZpZGVvLnRleHRUcmFja3NbIiArIGkgKyAiXSIpOwogCiAgICAgICAgIGNvbnNvbGVXcml0ZSgi
PGJyPjxpPioqIEFkZCB0d28gdHJhY2tzLCBjaGVjayBzb3J0IG9yZGVyPCIgKyAiL2k+Iik7CiAg
ICAgICAgIHJ1bigiYWRkVHJhY2sgPSB2aWRlby5hZGRUZXh0VHJhY2soJ2NhcHRpb25zJywgJ0Nh
cHRpb24gVHJhY2snLCAnZW4nKSIpOwogICAgICAgICBydW4oInRyYWNrRWxlbWVudCA9IGRvY3Vt
ZW50LmNyZWF0ZUVsZW1lbnQoJ3RyYWNrJykiKTsKICAgICAgICAgdHJhY2tFbGVtZW50LmxhYmVs
ID0gJzx0cmFjaz4nOwogICAgICAgICBydW4oInZpZGVvLmFwcGVuZENoaWxkKHRyYWNrRWxlbWVu
dCkiKTsKLSAgICAgICAgdGVzdEV4cGVjdGVkKCJ2aWRlby50ZXh0VHJhY2tzLmxlbmd0aCIsIDQp
OworICAgICAgICB0ZXN0RXhwZWN0ZWQoInZpZGVvLnRleHRUcmFja3MubGVuZ3RoIiwgbnVtSW5C
YW5kVHJhY2tzICsgMik7CiAKICAgICAgICAgY29tcGFyZVRyYWNrcygidmlkZW8udGV4dFRyYWNr
c1swXSIsICJ0cmFja0VsZW1lbnQudHJhY2siKTsKICAgICAgICAgY29tcGFyZVRyYWNrcygidmlk
ZW8udGV4dFRyYWNrc1sxXSIsICJhZGRUcmFjayIpOwotICAgICAgICBjb21wYXJlVHJhY2tzKCJ2
aWRlby50ZXh0VHJhY2tzWzJdIiwgImluYmFuZFRyYWNrMSIpOwotICAgICAgICBjb21wYXJlVHJh
Y2tzKCJ2aWRlby50ZXh0VHJhY2tzWzNdIiwgImluYmFuZFRyYWNrMiIpOworICAgICAgICBmb3Ig
KHZhciBpID0gMTsgaSA8IG51bUluQmFuZFRyYWNrcyArIDE7ICsraSkKKyAgICAgICAgICBjb21w
YXJlVHJhY2tzKCJ2aWRlby50ZXh0VHJhY2tzWyIgKyAoaSArIDEpICsgIl0iLCAiaW5iYW5kVHJh
Y2siICsgaSk7CiAKICAgICAgICAgY29uc29sZVdyaXRlKCI8YnI+PGk+KiogVW5sb2FkIHZpZGVv
IGZpbGUsIGNoZWNrIHRyYWNrIGNvdW50PCIgKyAiL2k+Iik7CiAgICAgICAgIHJ1bigidmlkZW8u
c3JjID0gJyciKTsKQEAgLTE4Niw3ICsxOTAsNiBAQCBmdW5jdGlvbiB0ZXN0VHJhY2tPcmRlcih1
cmkpIHsKICAgICB9CiAKICAgICBmaW5kTWVkaWFFbGVtZW50KCk7Ci0gICAgdmlkZW8udGV4dFRy
YWNrcy5hZGRFdmVudExpc3RlbmVyKCJhZGR0cmFjayIsIHRyYWNrQWRkZWQpOwogICAgIHZpZGVv
LnNyYyA9IHVyaTsKICAgICB3YWl0Rm9yRXZlbnQoJ2NhbnBsYXl0aHJvdWdoJywgY2FucGxheXRo
cm91Z2gpOwogfQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvbWVkaWEvdHJhY2svaW4tYmFuZC90
cmFjay1pbi1iYW5kLWthdGUtb2dnLWN1ZXMtYWRkZWQtb25jZS1leHBlY3RlZC50eHQgYi9MYXlv
dXRUZXN0cy9tZWRpYS90cmFjay9pbi1iYW5kL3RyYWNrLWluLWJhbmQta2F0ZS1vZ2ctY3Vlcy1h
ZGRlZC1vbmNlLWV4cGVjdGVkLnR4dAppbmRleCA2M2RiNWU3ZWYwM2RkZTY4Mzg4NjA2ZDYxOTll
M2I5MDUxY2Y4ZTcyLi5lOGY2Yjc3OTcyMDQyY2RhZjZkMzFjM2JjYzI3Y2JiNTkwZTM3NGY3IDEw
MDY0NAotLS0gYS9MYXlvdXRUZXN0cy9tZWRpYS90cmFjay9pbi1iYW5kL3RyYWNrLWluLWJhbmQt
a2F0ZS1vZ2ctY3Vlcy1hZGRlZC1vbmNlLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9t
ZWRpYS90cmFjay9pbi1iYW5kL3RyYWNrLWluLWJhbmQta2F0ZS1vZ2ctY3Vlcy1hZGRlZC1vbmNl
LWV4cGVjdGVkLnR4dApAQCAtMyw3ICszLDYgQEAgQ2hlY2sgdGhhdCB3ZSBkb24ndCBoYXZlIGR1
cGxpY2F0ZSBjdWVzIGFmdGVyIHNlZWtpbmcgYmFja3dhcmRzLgogRVZFTlQoY2FucGxheXRocm91
Z2gpCiAKICoqIFNldHRpbmcgdHJhY2sgMSB0byBzaG93aW5nCi1SVU4oaW5iYW5kVHJhY2sxID0g
dmlkZW8udGV4dFRyYWNrc1swXSkKIFJVTihpbmJhbmRUcmFjazEubW9kZSA9ICdzaG93aW5nJykK
IFJVTih2aWRlby5wbGF5KCkpCiBFWFBFQ1RFRCAoaW5iYW5kVHJhY2sxLmN1ZXMubGVuZ3RoID4g
JzAnKSBPSwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvbWVkaWEvdHJhY2svaW4tYmFuZC90cmFj
ay1pbi1iYW5kLWthdGUtb2dnLWN1ZXMtYWRkZWQtb25jZS5odG1sIGIvTGF5b3V0VGVzdHMvbWVk
aWEvdHJhY2svaW4tYmFuZC90cmFjay1pbi1iYW5kLWthdGUtb2dnLWN1ZXMtYWRkZWQtb25jZS5o
dG1sCmluZGV4IDE4OTZmZjFmNDgyMmIwNGNiYjI0NzU5OTg1ODRiZGQyMTI4Zjk3NzEuLmZjMWNj
YjQ1OWY5NGU0NjZkZDM3MDUwZmZlMDlkMjQ3ZDVjMzQwNGYgMTAwNjQ0Ci0tLSBhL0xheW91dFRl
c3RzL21lZGlhL3RyYWNrL2luLWJhbmQvdHJhY2staW4tYmFuZC1rYXRlLW9nZy1jdWVzLWFkZGVk
LW9uY2UuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9tZWRpYS90cmFjay9pbi1iYW5kL3RyYWNrLWlu
LWJhbmQta2F0ZS1vZ2ctY3Vlcy1hZGRlZC1vbmNlLmh0bWwKQEAgLTcsNyArNyw3IEBACiAgICAg
ICAgIDxzY3JpcHQgc3JjPS4uLy4uL3ZpZGVvLXRlc3QuanM+PC9zY3JpcHQ+CiAgICAgICAgIDxz
Y3JpcHQgc3JjPS4uLy4uL2luLWJhbmQtY3Vlcy5qcz48L3NjcmlwdD4KICAgICA8L2hlYWQ+Ci0g
ICAgPGJvZHkgb25sb2FkPSJ0ZXN0Q3Vlc0FkZGVkT25jZSgnLi4vLi4vY29udGVudC9jb3VudGlu
Zy1zdWJ0aXRsZWQta2F0ZS5vZ3YnKSI+CisgICAgPGJvZHkgb25sb2FkPSJ0ZXN0Q3Vlc0FkZGVk
T25jZSgnLi4vLi4vY29udGVudC9jb3VudGluZy1zdWJ0aXRsZWQta2F0ZS5vZ3YnLCAnc3VidGl0
bGVzJykiPgogICAgICAgICA8dmlkZW8gY29udHJvbHM+PC92aWRlbz4KICAgICAgICAgPHA+Q2hl
Y2sgdGhhdCB3ZSBkb24ndCBoYXZlIGR1cGxpY2F0ZSBjdWVzIGFmdGVyIHNlZWtpbmcgYmFja3dh
cmRzLjwvcD4KICAgICA8L2JvZHk+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9tZWRpYS90cmFj
ay9pbi1iYW5kL3RyYWNrLWluLWJhbmQta2F0ZS1vZ2ctbW9kZS1leHBlY3RlZC50eHQgYi9MYXlv
dXRUZXN0cy9tZWRpYS90cmFjay9pbi1iYW5kL3RyYWNrLWluLWJhbmQta2F0ZS1vZ2ctbW9kZS1l
eHBlY3RlZC50eHQKaW5kZXggMmJiNTllMjk1ZjMwNjYyMTVmN2FlYjA5M2RkZWM2M2E3NTQwOWUw
OS4uZGQ0MzlmODAzNzA1Y2Q1MmI5MmMzMDdmNGE4MThkN2Q2MWFjODNiMCAxMDA2NDQKLS0tIGEv
TGF5b3V0VGVzdHMvbWVkaWEvdHJhY2svaW4tYmFuZC90cmFjay1pbi1iYW5kLWthdGUtb2dnLW1v
ZGUtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL21lZGlhL3RyYWNrL2luLWJhbmQvdHJh
Y2staW4tYmFuZC1rYXRlLW9nZy1tb2RlLWV4cGVjdGVkLnR4dApAQCAtMSw3ICsxLDYgQEAKIFRl
c3QgdGhhdCBjdWVzIGZyb20gaW4tYmFuZCB0cmFja3MgYXJlIGRpc3BsYXllZCBpbW1lZGlhdGVs
eSB3aGVuIGEgdHJhY2sgaXMgbWFkZSB2aXNpYmxlLgogCiBFVkVOVChjYW5wbGF5dGhyb3VnaCkK
LVJVTihpbmJhbmRUcmFjazEgPSB2aWRlby50ZXh0VHJhY2tzWzBdKQogCiAqKiBBIGhpZGRlbiB0
cmFjayBzaG91bGQgbm90IGhhdmUgdmlzaWJsZSBjdWVzCiBSVU4oaW5iYW5kVHJhY2sxLm1vZGUg
PSAnaGlkZGVuJykKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL21lZGlhL3RyYWNrL2luLWJhbmQv
dHJhY2staW4tYmFuZC1rYXRlLW9nZy1tb2RlLmh0bWwgYi9MYXlvdXRUZXN0cy9tZWRpYS90cmFj
ay9pbi1iYW5kL3RyYWNrLWluLWJhbmQta2F0ZS1vZ2ctbW9kZS5odG1sCmluZGV4IGUxZGVmMTNi
YjA1Zjc2M2Y2Y2IzOGY0MmNiNzk3YjQyOTBkMmI2MDguLjU3ZjhiMDFhNjQwYjQ2M2ExZTdkNzAx
NjdlNmM1MDcwYzE3MGIxZjEgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL21lZGlhL3RyYWNrL2lu
LWJhbmQvdHJhY2staW4tYmFuZC1rYXRlLW9nZy1tb2RlLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMv
bWVkaWEvdHJhY2svaW4tYmFuZC90cmFjay1pbi1iYW5kLWthdGUtb2dnLW1vZGUuaHRtbApAQCAt
OCw3ICs4LDcgQEAKICAgICAgICAgPHNjcmlwdCBzcmM9Li4vLi4vbWVkaWEtY29udHJvbHMuanM+
PC9zY3JpcHQ+CiAgICAgICAgIDxzY3JpcHQgc3JjPS4uLy4uL2luLWJhbmQtY3Vlcy5qcz48L3Nj
cmlwdD4KICAgICA8L2hlYWQ+Ci0gICAgPGJvZHkgb25sb2FkPSJ0ZXN0TW9kZSgnLi4vLi4vY29u
dGVudC9jb3VudGluZy1zdWJ0aXRsZWQta2F0ZS5vZ3YnKSI+CisgICAgPGJvZHkgb25sb2FkPSJ0
ZXN0TW9kZSgnLi4vLi4vY29udGVudC9jb3VudGluZy1zdWJ0aXRsZWQta2F0ZS5vZ3YnLCAnc3Vi
dGl0bGVzJykiPgogICAgICAgICA8dmlkZW8gY29udHJvbHM+PC92aWRlbz4KICAgICAgICAgPHA+
VGVzdCB0aGF0IGN1ZXMgZnJvbSBpbi1iYW5kIHRyYWNrcyBhcmUgZGlzcGxheWVkIGltbWVkaWF0
ZWx5IHdoZW4gYSB0cmFjayBpcyBtYWRlIHZpc2libGUuPC9wPgogICAgIDwvYm9keT4KZGlmZiAt
LWdpdCBhL0xheW91dFRlc3RzL21lZGlhL3RyYWNrL2luLWJhbmQvdHJhY2staW4tYmFuZC1rYXRl
LW9nZy1zdHlsZS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9tZWRpYS90cmFjay9pbi1iYW5k
L3RyYWNrLWluLWJhbmQta2F0ZS1vZ2ctc3R5bGUtZXhwZWN0ZWQudHh0CmluZGV4IDE2OTQ4NDg1
OTY5YWJiYTk2OGNhOTgzM2VjODljZjkxZjExMDYzYzQuLmFhZWJjZDE5NWI5YzFkNDU4YmRkZmEy
Yzc4NjRjN2E0YzEzOWYwNWUgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL21lZGlhL3RyYWNrL2lu
LWJhbmQvdHJhY2staW4tYmFuZC1rYXRlLW9nZy1zdHlsZS1leHBlY3RlZC50eHQKKysrIGIvTGF5
b3V0VGVzdHMvbWVkaWEvdHJhY2svaW4tYmFuZC90cmFjay1pbi1iYW5kLWthdGUtb2dnLXN0eWxl
LWV4cGVjdGVkLnR4dApAQCAtMiw3ICsyLDYgQEAgVGVzdCB0aGF0IHN0eWxlIGlzIGFwcGxpZWQg
dG8gYWxsIGN1ZXMgY29ycmVjdGx5LgogRVZFTlQoY2FucGxheXRocm91Z2gpCiAKICoqIFNldHRp
bmcgdHJhY2sgMSB0byBzaG93aW5nIGFuZCBzdGFydGluZyB2aWRlbwotUlVOKGluYmFuZFRyYWNr
MSA9IHZpZGVvLnRleHRUcmFja3NbMF0pCiBSVU4odmlkZW8ucGxheSgpKQogRVZFTlQoc2Vla2Vk
KQogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9tZWRpYS90cmFjay9pbi1iYW5kL3RyYWNrLWlu
LWJhbmQta2F0ZS1vZ2ctdHJhY2stb3JkZXItZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvbWVk
aWEvdHJhY2svaW4tYmFuZC90cmFjay1pbi1iYW5kLWthdGUtb2dnLXRyYWNrLW9yZGVyLWV4cGVj
dGVkLnR4dAppbmRleCBkZTkwNDFlN2FiNjk3MmExNWYwMTcyZWY0NmJmYjE4NDgxZjVhM2I4Li45
NTM2MmRkZjg5ZTRlOGRlODZmYjExNzIzZmNhMDRmN2NhNzZkNjExIDEwMDY0NAotLS0gYS9MYXlv
dXRUZXN0cy9tZWRpYS90cmFjay9pbi1iYW5kL3RyYWNrLWluLWJhbmQta2F0ZS1vZ2ctdHJhY2st
b3JkZXItZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL21lZGlhL3RyYWNrL2luLWJhbmQv
dHJhY2staW4tYmFuZC1rYXRlLW9nZy10cmFjay1vcmRlci1leHBlY3RlZC50eHQKQEAgLTEsMTEg
KzEsNSBAQAogVGVzdCB0cmFjayBvcmRlciB3aGVuIHVzaW5nIGluLWJhbmQgYW5kIG91dC1vZi1i
YW5kIHRleHQgdHJhY2tzLgogCi1FVkVOVChhZGR0cmFjaykKLUVYUEVDVEVEIChldmVudC50cmFj
ayA9PSAndmlkZW8udGV4dFRyYWNrc1swXScpIE9LCi0KLUVWRU5UKGFkZHRyYWNrKQotRVhQRUNU
RUQgKGV2ZW50LnRyYWNrID09ICd2aWRlby50ZXh0VHJhY2tzWzFdJykgT0sKLQogRVZFTlQoY2Fu
cGxheXRocm91Z2gpCiAKICoqIENoZWNrIGluaXRpYWwgaW4tYmFuZCB0cmFjayBzdGF0ZXMKZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL21lZGlhL3RyYWNrL2luLWJhbmQvdHJhY2staW4tYmFuZC1r
YXRlLW9nZy10cmFjay1vcmRlci5odG1sIGIvTGF5b3V0VGVzdHMvbWVkaWEvdHJhY2svaW4tYmFu
ZC90cmFjay1pbi1iYW5kLWthdGUtb2dnLXRyYWNrLW9yZGVyLmh0bWwKaW5kZXggNDEwOGE2ZWRi
NWUyZDc3MmI5N2VjYzczMjQ1NTU5ODcxZjczOTgzYS4uZTc4NDI2NzFiZWJhMTRkMjI2MmRmZjk3
NmMwOTA4N2RlMzc4ODk1OSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvbWVkaWEvdHJhY2svaW4t
YmFuZC90cmFjay1pbi1iYW5kLWthdGUtb2dnLXRyYWNrLW9yZGVyLmh0bWwKKysrIGIvTGF5b3V0
VGVzdHMvbWVkaWEvdHJhY2svaW4tYmFuZC90cmFjay1pbi1iYW5kLWthdGUtb2dnLXRyYWNrLW9y
ZGVyLmh0bWwKQEAgLTcsNyArNyw3IEBACiAgICAgICAgIDxzY3JpcHQgc3JjPS4uLy4uL3ZpZGVv
LXRlc3QuanM+PC9zY3JpcHQ+CiAgICAgICAgIDxzY3JpcHQgc3JjPS4uLy4uL2luLWJhbmQtY3Vl
cy5qcz48L3NjcmlwdD4KICAgICA8L2hlYWQ+Ci0gICAgPGJvZHkgb25sb2FkPSJ0ZXN0VHJhY2tP
cmRlcignLi4vLi4vY29udGVudC9jb3VudGluZy1zdWJ0aXRsZWQta2F0ZS5vZ3YnKSI+CisgICAg
PGJvZHkgb25sb2FkPSJ0ZXN0VHJhY2tPcmRlcignLi4vLi4vY29udGVudC9jb3VudGluZy1zdWJ0
aXRsZWQta2F0ZS5vZ3YnLCAyKSI+CiAgICAgICAgIDx2aWRlbyBjb250cm9scz48L3ZpZGVvPgog
ICAgICAgICA8cD5UZXN0IHRyYWNrIG9yZGVyIHdoZW4gdXNpbmcgaW4tYmFuZCBhbmQgb3V0LW9m
LWJhbmQgdGV4dCB0cmFja3MuPC9wPgogICAgIDwvYm9keT4KZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL21lZGlhL3RyYWNrL2luLWJhbmQvdHJhY2staW4tYmFuZC1ta3YtY2hhcHRlcnMtZXhwZWN0
ZWQudHh0IGIvTGF5b3V0VGVzdHMvbWVkaWEvdHJhY2svaW4tYmFuZC90cmFjay1pbi1iYW5kLW1r
di1jaGFwdGVycy1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYmFhYTJmNDNjZGRjZmUyZmZjMjhi
NDYxNDAwY2Y0Yzg2NjFlMGFiMgotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL21lZGlh
L3RyYWNrL2luLWJhbmQvdHJhY2staW4tYmFuZC1ta3YtY2hhcHRlcnMtZXhwZWN0ZWQudHh0CkBA
IC0wLDAgKzEsMTggQEAKK0NoZWNrIGZvciBjaGFwdGVyIHRyYWNrIGZyb20gYW4gbWt2IGZpbGUu
CisKK0VWRU5UKGNhbnBsYXl0aHJvdWdoKQorCisqKiBTZXR0aW5nIHRyYWNrIDEgdG8gc2hvd2lu
ZworUlVOKGluYmFuZFRyYWNrMS5tb2RlID0gJ3Nob3dpbmcnKQorUlVOKHZpZGVvLnBsYXkoKSkK
K0VYUEVDVEVEIChpbmJhbmRUcmFjazEuY3Vlcy5sZW5ndGggPiAnMCcpIE9LCitSVU4odmlkZW8u
cGF1c2UoKSkKK1JVTih2aWRlby5jdXJyZW50VGltZSA9IDApCitSVU4odmlkZW8ucGxheSgpKQor
CitFVkVOVChzZWVrZWQpCitFWFBFQ1RFRCAoaW5iYW5kVHJhY2sxLmN1ZXMubGVuZ3RoID4gJzAn
KSBPSworUlVOKHZpZGVvLnBhdXNlKCkpCitUZXN0IGFsbCBjdWVzIGFyZSBlcXVhbCBPSworRU5E
IE9GIFRFU1QKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvbWVkaWEvdHJhY2svaW4tYmFuZC90
cmFjay1pbi1iYW5kLW1rdi1jaGFwdGVycy5odG1sIGIvTGF5b3V0VGVzdHMvbWVkaWEvdHJhY2sv
aW4tYmFuZC90cmFjay1pbi1iYW5kLW1rdi1jaGFwdGVycy5odG1sCm5ldyBmaWxlIG1vZGUgMTAw
NjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjU1ZjZh
OGQxN2UyODJkY2VkMDcwNjcxZmZmZmMzNGI0ZjgwZDllOGYKLS0tIC9kZXYvbnVsbAorKysgYi9M
YXlvdXRUZXN0cy9tZWRpYS90cmFjay9pbi1iYW5kL3RyYWNrLWluLWJhbmQtbWt2LWNoYXB0ZXJz
Lmh0bWwKQEAgLTAsMCArMSwxNCBAQAorPCFET0NUWVBFIGh0bWw+Cis8aHRtbD4KKyAgICA8aGVh
ZD4KKyAgICAgICAgPG1ldGEgaHR0cC1lcXVpdj0iQ29udGVudC1UeXBlIiBjb250ZW50PSJ0ZXh0
L2h0bWw7IGNoYXJzZXQ9dXRmLTgiIC8+CisKKyAgICAgICAgPHNjcmlwdCBzcmM9Li4vLi4vbWVk
aWEtZmlsZS5qcz48L3NjcmlwdD4KKyAgICAgICAgPHNjcmlwdCBzcmM9Li4vLi4vdmlkZW8tdGVz
dC5qcz48L3NjcmlwdD4KKyAgICAgICAgPHNjcmlwdCBzcmM9Li4vLi4vaW4tYmFuZC1jdWVzLmpz
Pjwvc2NyaXB0PgorICAgIDwvaGVhZD4KKyAgICA8Ym9keSBvbmxvYWQ9InRlc3RDdWVzQWRkZWRP
bmNlKCcuLi8uLi9jb250ZW50L2NvdW50aW5nLXN1YnRpdGxlZC1zcnQubWt2JywgJ2NoYXB0ZXJz
JykiPgorICAgICAgICA8dmlkZW8gY29udHJvbHM+PC92aWRlbz4KKyAgICAgICAgPHA+Q2hlY2sg
Zm9yIGNoYXB0ZXIgdHJhY2sgZnJvbSBhbiBta3YgZmlsZS48L3A+CisgICAgPC9ib2R5PgorPC9o
dG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvbWVkaWEvdHJhY2svaW4tYmFuZC90cmFjay1p
bi1iYW5kLXNydC1ta3YtY3Vlcy1hZGRlZC1vbmNlLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3Rz
L21lZGlhL3RyYWNrL2luLWJhbmQvdHJhY2staW4tYmFuZC1zcnQtbWt2LWN1ZXMtYWRkZWQtb25j
ZS1leHBlY3RlZC50eHQKaW5kZXggNjNkYjVlN2VmMDNkZGU2ODM4ODYwNmQ2MTk5ZTNiOTA1MWNm
OGU3Mi4uZThmNmI3Nzk3MjA0MmNkYWY2ZDMxYzNiY2MyN2NiYjU5MGUzNzRmNyAxMDA2NDQKLS0t
IGEvTGF5b3V0VGVzdHMvbWVkaWEvdHJhY2svaW4tYmFuZC90cmFjay1pbi1iYW5kLXNydC1ta3Yt
Y3Vlcy1hZGRlZC1vbmNlLWV4cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9tZWRpYS90cmFj
ay9pbi1iYW5kL3RyYWNrLWluLWJhbmQtc3J0LW1rdi1jdWVzLWFkZGVkLW9uY2UtZXhwZWN0ZWQu
dHh0CkBAIC0zLDcgKzMsNiBAQCBDaGVjayB0aGF0IHdlIGRvbid0IGhhdmUgZHVwbGljYXRlIGN1
ZXMgYWZ0ZXIgc2Vla2luZyBiYWNrd2FyZHMuCiBFVkVOVChjYW5wbGF5dGhyb3VnaCkKIAogKiog
U2V0dGluZyB0cmFjayAxIHRvIHNob3dpbmcKLVJVTihpbmJhbmRUcmFjazEgPSB2aWRlby50ZXh0
VHJhY2tzWzBdKQogUlVOKGluYmFuZFRyYWNrMS5tb2RlID0gJ3Nob3dpbmcnKQogUlVOKHZpZGVv
LnBsYXkoKSkKIEVYUEVDVEVEIChpbmJhbmRUcmFjazEuY3Vlcy5sZW5ndGggPiAnMCcpIE9LCmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9tZWRpYS90cmFjay9pbi1iYW5kL3RyYWNrLWluLWJhbmQt
c3J0LW1rdi1jdWVzLWFkZGVkLW9uY2UuaHRtbCBiL0xheW91dFRlc3RzL21lZGlhL3RyYWNrL2lu
LWJhbmQvdHJhY2staW4tYmFuZC1zcnQtbWt2LWN1ZXMtYWRkZWQtb25jZS5odG1sCmluZGV4IDNm
M2I3NGM5MTdlZGY1ODYwZjQ3NTM2ODBlMWY5ZmZjODlmYjEyYWEuLjVlOGI0ZmU4MmE4MmE5Y2Nh
YWYwYzc1YTRkZTlhY2EzNTNlOWI3OTcgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL21lZGlhL3Ry
YWNrL2luLWJhbmQvdHJhY2staW4tYmFuZC1zcnQtbWt2LWN1ZXMtYWRkZWQtb25jZS5odG1sCisr
KyBiL0xheW91dFRlc3RzL21lZGlhL3RyYWNrL2luLWJhbmQvdHJhY2staW4tYmFuZC1zcnQtbWt2
LWN1ZXMtYWRkZWQtb25jZS5odG1sCkBAIC03LDcgKzcsNyBAQAogICAgICAgICA8c2NyaXB0IHNy
Yz0uLi8uLi92aWRlby10ZXN0LmpzPjwvc2NyaXB0PgogICAgICAgICA8c2NyaXB0IHNyYz0uLi8u
Li9pbi1iYW5kLWN1ZXMuanM+PC9zY3JpcHQ+CiAgICAgPC9oZWFkPgotICAgIDxib2R5IG9ubG9h
ZD0idGVzdEN1ZXNBZGRlZE9uY2UoJy4uLy4uL2NvbnRlbnQvY291bnRpbmctc3VidGl0bGVkLXNy
dC5ta3YnKSI+CisgICAgPGJvZHkgb25sb2FkPSJ0ZXN0Q3Vlc0FkZGVkT25jZSgnLi4vLi4vY29u
dGVudC9jb3VudGluZy1zdWJ0aXRsZWQtc3J0Lm1rdicsICdzdWJ0aXRsZXMnKSI+CiAgICAgICAg
IDx2aWRlbyBjb250cm9scz48L3ZpZGVvPgogICAgICAgICA8cD5DaGVjayB0aGF0IHdlIGRvbid0
IGhhdmUgZHVwbGljYXRlIGN1ZXMgYWZ0ZXIgc2Vla2luZyBiYWNrd2FyZHMuPC9wPgogICAgIDwv
Ym9keT4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL21lZGlhL3RyYWNrL2luLWJhbmQvdHJhY2st
aW4tYmFuZC1zcnQtbWt2LWtpbmQtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvbWVkaWEvdHJh
Y2svaW4tYmFuZC90cmFjay1pbi1iYW5kLXNydC1ta3Yta2luZC1leHBlY3RlZC50eHQKaW5kZXgg
NzBiNGE5MWFjNWUxNzgwYmNhMmY0NGJlZGY0OWMzZmM5ZTkxMWQ4NC4uMmQyNGJlNzA4N2Y5ZWM4
ZmQ0MTFkZDAwOTM5ZDJjMDU4YmI5ODVlOSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvbWVkaWEv
dHJhY2svaW4tYmFuZC90cmFjay1pbi1iYW5kLXNydC1ta3Yta2luZC1leHBlY3RlZC50eHQKKysr
IGIvTGF5b3V0VGVzdHMvbWVkaWEvdHJhY2svaW4tYmFuZC90cmFjay1pbi1iYW5kLXNydC1ta3Yt
a2luZC1leHBlY3RlZC50eHQKQEAgLTMsOSArMywxMCBAQCBDaGVjayBpbi1iYW5kIHRleHQgdHJh
Y2tzJyBraW5kIGF0dHJpYnV0ZXMuCiBFVkVOVChjYW5wbGF5dGhyb3VnaCkKIAogKiogQ2hlY2sg
aW4tYmFuZCBraW5kIGF0dHJpYnV0ZXMKLUVYUEVDVEVEICh2aWRlby50ZXh0VHJhY2tzLmxlbmd0
aCA9PSAnMicpIE9LCi1FWFBFQ1RFRCAodmlkZW8udGV4dFRyYWNrc1swXS5raW5kID09ICdzdWJ0
aXRsZXMnKSBPSworRVhQRUNURUQgKHZpZGVvLnRleHRUcmFja3MubGVuZ3RoID09ICczJykgT0sK
K0VYUEVDVEVEICh2aWRlby50ZXh0VHJhY2tzWzBdLmtpbmQgPT0gJ2NoYXB0ZXJzJykgT0sKIEVY
UEVDVEVEICh2aWRlby50ZXh0VHJhY2tzWzFdLmtpbmQgPT0gJ3N1YnRpdGxlcycpIE9LCitFWFBF
Q1RFRCAodmlkZW8udGV4dFRyYWNrc1syXS5raW5kID09ICdzdWJ0aXRsZXMnKSBPSwogCiBFTkQg
T0YgVEVTVAogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9tZWRpYS90cmFjay9pbi1iYW5kL3Ry
YWNrLWluLWJhbmQtc3J0LW1rdi1raW5kLmh0bWwgYi9MYXlvdXRUZXN0cy9tZWRpYS90cmFjay9p
bi1iYW5kL3RyYWNrLWluLWJhbmQtc3J0LW1rdi1raW5kLmh0bWwKaW5kZXggZTQ3YTdiYjA2Njk2
MGZmYzRkNWRjNDUxYjkyZjY3OTZmM2U3NDdlZi4uZTM5MWZiYTQ3Y2NlYTA3OGQyMzUzMDI4N2Ni
OTg5M2JiNTA4NTY3YiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvbWVkaWEvdHJhY2svaW4tYmFu
ZC90cmFjay1pbi1iYW5kLXNydC1ta3Yta2luZC5odG1sCisrKyBiL0xheW91dFRlc3RzL21lZGlh
L3RyYWNrL2luLWJhbmQvdHJhY2staW4tYmFuZC1zcnQtbWt2LWtpbmQuaHRtbApAQCAtNyw3ICs3
LDcgQEAKICAgICAgICAgPHNjcmlwdCBzcmM9Li4vLi4vdmlkZW8tdGVzdC5qcz48L3NjcmlwdD4K
ICAgICAgICAgPHNjcmlwdCBzcmM9Li4vLi4vaW4tYmFuZC1jdWVzLmpzPjwvc2NyaXB0PgogICAg
IDwvaGVhZD4KLSAgICA8Ym9keSBvbmxvYWQ9InRlc3RBdHRyaWJ1dGUoJy4uLy4uL2NvbnRlbnQv
Y291bnRpbmctc3VidGl0bGVkLXNydC5ta3YnLCAna2luZCcsIFsnc3VidGl0bGVzJywgJ3N1YnRp
dGxlcyddKSI+CisgICAgPGJvZHkgb25sb2FkPSJ0ZXN0QXR0cmlidXRlKCcuLi8uLi9jb250ZW50
L2NvdW50aW5nLXN1YnRpdGxlZC1zcnQubWt2JywgJ2tpbmQnLCBbJ2NoYXB0ZXJzJywgJ3N1YnRp
dGxlcycsICdzdWJ0aXRsZXMnXSkiPgogICAgICAgICA8dmlkZW8gY29udHJvbHM+PC92aWRlbz4K
ICAgICAgICAgPHA+Q2hlY2sgaW4tYmFuZCB0ZXh0IHRyYWNrcycga2luZCBhdHRyaWJ1dGVzLjwv
cD4KICAgICA8L2JvZHk+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9tZWRpYS90cmFjay9pbi1i
YW5kL3RyYWNrLWluLWJhbmQtc3J0LW1rdi1sYW5ndWFnZS1leHBlY3RlZC50eHQgYi9MYXlvdXRU
ZXN0cy9tZWRpYS90cmFjay9pbi1iYW5kL3RyYWNrLWluLWJhbmQtc3J0LW1rdi1sYW5ndWFnZS1l
eHBlY3RlZC50eHQKaW5kZXggODQyMDM1MTczNWU2NGE2NDU2ZDRmNDBmOTYxOTBmY2I3ZDVhYmE4
My4uYTMyYzgzYjc4M2Q1NDZlNGU5ZmQyNWE4OWU3NmNlOTc1MTVkMzljMSAxMDA2NDQKLS0tIGEv
TGF5b3V0VGVzdHMvbWVkaWEvdHJhY2svaW4tYmFuZC90cmFjay1pbi1iYW5kLXNydC1ta3YtbGFu
Z3VhZ2UtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL21lZGlhL3RyYWNrL2luLWJhbmQv
dHJhY2staW4tYmFuZC1zcnQtbWt2LWxhbmd1YWdlLWV4cGVjdGVkLnR4dApAQCAtMyw5ICszLDEw
IEBAIENoZWNrIGluLWJhbmQgdGV4dCB0cmFja3MnIGxhbmd1YWdlIGF0dHJpYnV0ZXMuCiBFVkVO
VChjYW5wbGF5dGhyb3VnaCkKIAogKiogQ2hlY2sgaW4tYmFuZCBraW5kIGF0dHJpYnV0ZXMKLUVY
UEVDVEVEICh2aWRlby50ZXh0VHJhY2tzLmxlbmd0aCA9PSAnMicpIE9LCi1FWFBFQ1RFRCAodmlk
ZW8udGV4dFRyYWNrc1swXS5sYW5ndWFnZSA9PSAnZW4nKSBPSwotRVhQRUNURUQgKHZpZGVvLnRl
eHRUcmFja3NbMV0ubGFuZ3VhZ2UgPT0gJ2ZyJykgT0sKK0VYUEVDVEVEICh2aWRlby50ZXh0VHJh
Y2tzLmxlbmd0aCA9PSAnMycpIE9LCitFWFBFQ1RFRCAodmlkZW8udGV4dFRyYWNrc1swXS5sYW5n
dWFnZSA9PSAnJykgT0sKK0VYUEVDVEVEICh2aWRlby50ZXh0VHJhY2tzWzFdLmxhbmd1YWdlID09
ICdlbicpIE9LCitFWFBFQ1RFRCAodmlkZW8udGV4dFRyYWNrc1syXS5sYW5ndWFnZSA9PSAnZnIn
KSBPSwogCiBFTkQgT0YgVEVTVAogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9tZWRpYS90cmFj
ay9pbi1iYW5kL3RyYWNrLWluLWJhbmQtc3J0LW1rdi1sYW5ndWFnZS5odG1sIGIvTGF5b3V0VGVz
dHMvbWVkaWEvdHJhY2svaW4tYmFuZC90cmFjay1pbi1iYW5kLXNydC1ta3YtbGFuZ3VhZ2UuaHRt
bAppbmRleCBkZWY2NWJlOWJmYjlmNTkyMGNiYmIzNjc3OTY1Y2E4MGNhZWJjZWM2Li45ZDZjODky
MjMyMmQ0NTAzNjNlYzIwMjQwZTlhNGU2ZTUyYzc1MzNhIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0
cy9tZWRpYS90cmFjay9pbi1iYW5kL3RyYWNrLWluLWJhbmQtc3J0LW1rdi1sYW5ndWFnZS5odG1s
CisrKyBiL0xheW91dFRlc3RzL21lZGlhL3RyYWNrL2luLWJhbmQvdHJhY2staW4tYmFuZC1zcnQt
bWt2LWxhbmd1YWdlLmh0bWwKQEAgLTcsNyArNyw3IEBACiAgICAgICAgIDxzY3JpcHQgc3JjPS4u
Ly4uL3ZpZGVvLXRlc3QuanM+PC9zY3JpcHQ+CiAgICAgICAgIDxzY3JpcHQgc3JjPS4uLy4uL2lu
LWJhbmQtY3Vlcy5qcz48L3NjcmlwdD4KICAgICA8L2hlYWQ+Ci0gICAgPGJvZHkgb25sb2FkPSJ0
ZXN0QXR0cmlidXRlKCcuLi8uLi9jb250ZW50L2NvdW50aW5nLXN1YnRpdGxlZC1zcnQubWt2Jywg
J2xhbmd1YWdlJywgWydlbicsICdmciddKSI+CisgICAgPGJvZHkgb25sb2FkPSJ0ZXN0QXR0cmli
dXRlKCcuLi8uLi9jb250ZW50L2NvdW50aW5nLXN1YnRpdGxlZC1zcnQubWt2JywgJ2xhbmd1YWdl
JywgWycnLCAnZW4nLCAnZnInXSkiPgogICAgICAgICA8dmlkZW8gY29udHJvbHM+PC92aWRlbz4K
ICAgICAgICAgPHA+Q2hlY2sgaW4tYmFuZCB0ZXh0IHRyYWNrcycgbGFuZ3VhZ2UgYXR0cmlidXRl
cy48L3A+CiAgICAgPC9ib2R5PgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvbWVkaWEvdHJhY2sv
aW4tYmFuZC90cmFjay1pbi1iYW5kLXNydC1ta3YtbW9kZS1leHBlY3RlZC50eHQgYi9MYXlvdXRU
ZXN0cy9tZWRpYS90cmFjay9pbi1iYW5kL3RyYWNrLWluLWJhbmQtc3J0LW1rdi1tb2RlLWV4cGVj
dGVkLnR4dAppbmRleCAyYmI1OWUyOTVmMzA2NjIxNWY3YWViMDkzZGRlYzYzYTc1NDA5ZTA5Li5k
ZDQzOWY4MDM3MDVjZDUyYjkyYzMwN2Y0YTgxOGQ3ZDYxYWM4M2IwIDEwMDY0NAotLS0gYS9MYXlv
dXRUZXN0cy9tZWRpYS90cmFjay9pbi1iYW5kL3RyYWNrLWluLWJhbmQtc3J0LW1rdi1tb2RlLWV4
cGVjdGVkLnR4dAorKysgYi9MYXlvdXRUZXN0cy9tZWRpYS90cmFjay9pbi1iYW5kL3RyYWNrLWlu
LWJhbmQtc3J0LW1rdi1tb2RlLWV4cGVjdGVkLnR4dApAQCAtMSw3ICsxLDYgQEAKIFRlc3QgdGhh
dCBjdWVzIGZyb20gaW4tYmFuZCB0cmFja3MgYXJlIGRpc3BsYXllZCBpbW1lZGlhdGVseSB3aGVu
IGEgdHJhY2sgaXMgbWFkZSB2aXNpYmxlLgogCiBFVkVOVChjYW5wbGF5dGhyb3VnaCkKLVJVTihp
bmJhbmRUcmFjazEgPSB2aWRlby50ZXh0VHJhY2tzWzBdKQogCiAqKiBBIGhpZGRlbiB0cmFjayBz
aG91bGQgbm90IGhhdmUgdmlzaWJsZSBjdWVzCiBSVU4oaW5iYW5kVHJhY2sxLm1vZGUgPSAnaGlk
ZGVuJykKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL21lZGlhL3RyYWNrL2luLWJhbmQvdHJhY2st
aW4tYmFuZC1zcnQtbWt2LW1vZGUuaHRtbCBiL0xheW91dFRlc3RzL21lZGlhL3RyYWNrL2luLWJh
bmQvdHJhY2staW4tYmFuZC1zcnQtbWt2LW1vZGUuaHRtbAppbmRleCAzNjUyZWMwZWE2YTljMzdl
M2EzNjA4YzBjYTZlMTNlODEyZDljNmMwLi44ZWVmNzY0ZGQ3NmNkOTJjYWQ4ZDdmYjlkNGEyYTVi
NWMyNjc1YmRjIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9tZWRpYS90cmFjay9pbi1iYW5kL3Ry
YWNrLWluLWJhbmQtc3J0LW1rdi1tb2RlLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvbWVkaWEvdHJh
Y2svaW4tYmFuZC90cmFjay1pbi1iYW5kLXNydC1ta3YtbW9kZS5odG1sCkBAIC04LDcgKzgsNyBA
QAogICAgICAgICA8c2NyaXB0IHNyYz0uLi8uLi9tZWRpYS1jb250cm9scy5qcz48L3NjcmlwdD4K
ICAgICAgICAgPHNjcmlwdCBzcmM9Li4vLi4vaW4tYmFuZC1jdWVzLmpzPjwvc2NyaXB0PgogICAg
IDwvaGVhZD4KLSAgICA8Ym9keSBvbmxvYWQ9InRlc3RNb2RlKCcuLi8uLi9jb250ZW50L2NvdW50
aW5nLXN1YnRpdGxlZC1zcnQubWt2JykiPgorICAgIDxib2R5IG9ubG9hZD0idGVzdE1vZGUoJy4u
Ly4uL2NvbnRlbnQvY291bnRpbmctc3VidGl0bGVkLXNydC5ta3YnLCAnc3VidGl0bGVzJykiPgog
ICAgICAgICA8dmlkZW8gY29udHJvbHM+PC92aWRlbz4KICAgICAgICAgPHA+VGVzdCB0aGF0IGN1
ZXMgZnJvbSBpbi1iYW5kIHRyYWNrcyBhcmUgZGlzcGxheWVkIGltbWVkaWF0ZWx5IHdoZW4gYSB0
cmFjayBpcyBtYWRlIHZpc2libGUuPC9wPgogICAgIDwvYm9keT4KZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL21lZGlhL3RyYWNrL2luLWJhbmQvdHJhY2staW4tYmFuZC1zcnQtbWt2LXN0eWxlLWV4
cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL21lZGlhL3RyYWNrL2luLWJhbmQvdHJhY2staW4tYmFu
ZC1zcnQtbWt2LXN0eWxlLWV4cGVjdGVkLnR4dAppbmRleCAxNjk0ODQ4NTk2OWFiYmE5NjhjYTk4
MzNlYzg5Y2Y5MWYxMTA2M2M0Li5hYWViY2QxOTViOWMxZDQ1OGJkZGZhMmM3ODY0YzdhNGMxMzlm
MDVlIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9tZWRpYS90cmFjay9pbi1iYW5kL3RyYWNrLWlu
LWJhbmQtc3J0LW1rdi1zdHlsZS1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvbWVkaWEv
dHJhY2svaW4tYmFuZC90cmFjay1pbi1iYW5kLXNydC1ta3Ytc3R5bGUtZXhwZWN0ZWQudHh0CkBA
IC0yLDcgKzIsNiBAQCBUZXN0IHRoYXQgc3R5bGUgaXMgYXBwbGllZCB0byBhbGwgY3VlcyBjb3Jy
ZWN0bHkuCiBFVkVOVChjYW5wbGF5dGhyb3VnaCkKIAogKiogU2V0dGluZyB0cmFjayAxIHRvIHNo
b3dpbmcgYW5kIHN0YXJ0aW5nIHZpZGVvCi1SVU4oaW5iYW5kVHJhY2sxID0gdmlkZW8udGV4dFRy
YWNrc1swXSkKIFJVTih2aWRlby5wbGF5KCkpCiBFVkVOVChzZWVrZWQpCiAKZGlmZiAtLWdpdCBh
L0xheW91dFRlc3RzL21lZGlhL3RyYWNrL2luLWJhbmQvdHJhY2staW4tYmFuZC1zcnQtbWt2LXRy
YWNrLW9yZGVyLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL21lZGlhL3RyYWNrL2luLWJhbmQv
dHJhY2staW4tYmFuZC1zcnQtbWt2LXRyYWNrLW9yZGVyLWV4cGVjdGVkLnR4dAppbmRleCBkZTkw
NDFlN2FiNjk3MmExNWYwMTcyZWY0NmJmYjE4NDgxZjVhM2I4Li4wYjFkZmZkMTFiYTQ4ZTM3MTU0
OGY5NjkxZTE5MzhjYjM1NWNiYzY1IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9tZWRpYS90cmFj
ay9pbi1iYW5kL3RyYWNrLWluLWJhbmQtc3J0LW1rdi10cmFjay1vcmRlci1leHBlY3RlZC50eHQK
KysrIGIvTGF5b3V0VGVzdHMvbWVkaWEvdHJhY2svaW4tYmFuZC90cmFjay1pbi1iYW5kLXNydC1t
a3YtdHJhY2stb3JkZXItZXhwZWN0ZWQudHh0CkBAIC0xLDI3ICsxLDIzIEBACiBUZXN0IHRyYWNr
IG9yZGVyIHdoZW4gdXNpbmcgaW4tYmFuZCBhbmQgb3V0LW9mLWJhbmQgdGV4dCB0cmFja3MuCiAK
LUVWRU5UKGFkZHRyYWNrKQotRVhQRUNURUQgKGV2ZW50LnRyYWNrID09ICd2aWRlby50ZXh0VHJh
Y2tzWzBdJykgT0sKLQotRVZFTlQoYWRkdHJhY2spCi1FWFBFQ1RFRCAoZXZlbnQudHJhY2sgPT0g
J3ZpZGVvLnRleHRUcmFja3NbMV0nKSBPSwotCiBFVkVOVChjYW5wbGF5dGhyb3VnaCkKIAogKiog
Q2hlY2sgaW5pdGlhbCBpbi1iYW5kIHRyYWNrIHN0YXRlcwotRVhQRUNURUQgKHZpZGVvLnRleHRU
cmFja3MubGVuZ3RoID09ICcyJykgT0sKK0VYUEVDVEVEICh2aWRlby50ZXh0VHJhY2tzLmxlbmd0
aCA9PSAnMycpIE9LCiBSVU4oaW5iYW5kVHJhY2sxID0gdmlkZW8udGV4dFRyYWNrc1swXSkKIFJV
TihpbmJhbmRUcmFjazIgPSB2aWRlby50ZXh0VHJhY2tzWzFdKQorUlVOKGluYmFuZFRyYWNrMyA9
IHZpZGVvLnRleHRUcmFja3NbMl0pCiAKICoqIEFkZCB0d28gdHJhY2tzLCBjaGVjayBzb3J0IG9y
ZGVyCiBSVU4oYWRkVHJhY2sgPSB2aWRlby5hZGRUZXh0VHJhY2soJ2NhcHRpb25zJywgJ0NhcHRp
b24gVHJhY2snLCAnZW4nKSkKIFJVTih0cmFja0VsZW1lbnQgPSBkb2N1bWVudC5jcmVhdGVFbGVt
ZW50KCd0cmFjaycpKQogUlVOKHZpZGVvLmFwcGVuZENoaWxkKHRyYWNrRWxlbWVudCkpCi1FWFBF
Q1RFRCAodmlkZW8udGV4dFRyYWNrcy5sZW5ndGggPT0gJzQnKSBPSworRVhQRUNURUQgKHZpZGVv
LnRleHRUcmFja3MubGVuZ3RoID09ICc1JykgT0sKIEVYUEVDVEVEICh2aWRlby50ZXh0VHJhY2tz
WzBdID09ICd0cmFja0VsZW1lbnQudHJhY2snKSBPSwogRVhQRUNURUQgKHZpZGVvLnRleHRUcmFj
a3NbMV0gPT0gJ2FkZFRyYWNrJykgT0sKIEVYUEVDVEVEICh2aWRlby50ZXh0VHJhY2tzWzJdID09
ICdpbmJhbmRUcmFjazEnKSBPSwogRVhQRUNURUQgKHZpZGVvLnRleHRUcmFja3NbM10gPT0gJ2lu
YmFuZFRyYWNrMicpIE9LCitFWFBFQ1RFRCAodmlkZW8udGV4dFRyYWNrc1s0XSA9PSAnaW5iYW5k
VHJhY2szJykgT0sKIAogKiogVW5sb2FkIHZpZGVvIGZpbGUsIGNoZWNrIHRyYWNrIGNvdW50CiBS
VU4odmlkZW8uc3JjID0gJycpCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9tZWRpYS90cmFjay9p
bi1iYW5kL3RyYWNrLWluLWJhbmQtc3J0LW1rdi10cmFjay1vcmRlci5odG1sIGIvTGF5b3V0VGVz
dHMvbWVkaWEvdHJhY2svaW4tYmFuZC90cmFjay1pbi1iYW5kLXNydC1ta3YtdHJhY2stb3JkZXIu
aHRtbAppbmRleCA4YjBkZThiYzU4ZDZiZWUxOGU3MjVmYmYzZWZiNjE5NDE1ZGE5MzM3Li5mNDU5
NDM3ZGY0YmMzOWRlZWNhZmViODFiMDZiZmMzYTE2MTA3ZTg5IDEwMDY0NAotLS0gYS9MYXlvdXRU
ZXN0cy9tZWRpYS90cmFjay9pbi1iYW5kL3RyYWNrLWluLWJhbmQtc3J0LW1rdi10cmFjay1vcmRl
ci5odG1sCisrKyBiL0xheW91dFRlc3RzL21lZGlhL3RyYWNrL2luLWJhbmQvdHJhY2staW4tYmFu
ZC1zcnQtbWt2LXRyYWNrLW9yZGVyLmh0bWwKQEAgLTcsNyArNyw3IEBACiAgICAgICAgIDxzY3Jp
cHQgc3JjPS4uLy4uL3ZpZGVvLXRlc3QuanM+PC9zY3JpcHQ+CiAgICAgICAgIDxzY3JpcHQgc3Jj
PS4uLy4uL2luLWJhbmQtY3Vlcy5qcz48L3NjcmlwdD4KICAgICA8L2hlYWQ+Ci0gICAgPGJvZHkg
b25sb2FkPSJ0ZXN0VHJhY2tPcmRlcignLi4vLi4vY29udGVudC9jb3VudGluZy1zdWJ0aXRsZWQt
c3J0Lm1rdicpIj4KKyAgICA8Ym9keSBvbmxvYWQ9InRlc3RUcmFja09yZGVyKCcuLi8uLi9jb250
ZW50L2NvdW50aW5nLXN1YnRpdGxlZC1zcnQubWt2JywgMykiPgogICAgICAgICA8dmlkZW8gY29u
dHJvbHM+PC92aWRlbz4KICAgICAgICAgPHA+VGVzdCB0cmFjayBvcmRlciB3aGVuIHVzaW5nIGlu
LWJhbmQgYW5kIG91dC1vZi1iYW5kIHRleHQgdHJhY2tzLjwvcD4KICAgICA8L2JvZHk+Cg==
</data>

          </attachment>
      

    </bug>

</bugzilla>