<?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>124900</bug_id>
          
          <creation_ts>2013-11-26 13:49:43 -0800</creation_ts>
          <short_desc>Allow the QuickTime plug-in to be replaced by script in an isolated word</short_desc>
          <delta_ts>2013-12-06 09:47:15 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>WebCore Misc.</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Eric Carlson">eric.carlson</reporter>
          <assigned_to name="Eric Carlson">eric.carlson</assigned_to>
          <cc>ap</cc>
    
    <cc>cdumez</cc>
    
    <cc>commit-queue</cc>
    
    <cc>dino</cc>
    
    <cc>eflews.bot</cc>
    
    <cc>esprehn+autocc</cc>
    
    <cc>glenn</cc>
    
    <cc>gtk-ews</cc>
    
    <cc>gyuyoung.kim</cc>
    
    <cc>jer.noble</cc>
    
    <cc>kondapallykalyan</cc>
    
    <cc>philn</cc>
    
    <cc>pnormand</cc>
    
    <cc>rakuco</cc>
    
    <cc>rego+ews</cc>
    
    <cc>xan.lopez</cc>
    
    <cc>zan</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>954337</commentid>
    <comment_count>0</comment_count>
    <who name="Eric Carlson">eric.carlson</who>
    <bug_when>2013-11-26 13:49:43 -0800</bug_when>
    <thetext>Create a mechanism that allows script running in a isolated world to create element(s) in the &lt;embed&gt; or &lt;object&gt; shadow DOM to replace a plug-in, add a replacement for the QuickTime plug-in.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>954338</commentid>
    <comment_count>1</comment_count>
    <who name="Eric Carlson">eric.carlson</who>
    <bug_when>2013-11-26 13:50:43 -0800</bug_when>
    <thetext>&lt;rdar://problem/15349834&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>954345</commentid>
    <comment_count>2</comment_count>
      <attachid>217902</attachid>
    <who name="Eric Carlson">eric.carlson</who>
    <bug_when>2013-11-26 14:41:06 -0800</bug_when>
    <thetext>Created attachment 217902
Patch for the bots to chew on</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>954346</commentid>
    <comment_count>3</comment_count>
      <attachid>217903</attachid>
    <who name="Eric Carlson">eric.carlson</who>
    <bug_when>2013-11-26 14:46:11 -0800</bug_when>
    <thetext>Created attachment 217903
Rebased patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>954347</commentid>
    <comment_count>4</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2013-11-26 14:47:33 -0800</bug_when>
    <thetext>Attachment 217903 did not pass style-queue:

Failed to run &quot;[&apos;Tools/Scripts/check-webkit-style&apos;, &apos;--diff-files&apos;, u&apos;LayoutTests/ChangeLog&apos;, u&apos;LayoutTests/platform/efl/TestExpectations&apos;, u&apos;LayoutTests/platform/gtk/TestExpectations&apos;, u&apos;LayoutTests/platform/wincairo/TestExpectations&apos;, u&apos;LayoutTests/plugins/quicktime-plugin-replacement-expected.txt&apos;, u&apos;LayoutTests/plugins/quicktime-plugin-replacement.html&apos;, u&apos;LayoutTests/plugins/resources/orange.mov&apos;, u&apos;Source/WebCore/ChangeLog&apos;, u&apos;Source/WebCore/DerivedSources.make&apos;, u&apos;Source/WebCore/Modules/plugins/PluginReplacement.h&apos;, u&apos;Source/WebCore/Modules/plugins/QuickTimePluginReplacement.cpp&apos;, u&apos;Source/WebCore/Modules/plugins/QuickTimePluginReplacement.css&apos;, u&apos;Source/WebCore/Modules/plugins/QuickTimePluginReplacement.h&apos;, u&apos;Source/WebCore/Modules/plugins/QuickTimePluginReplacement.idl&apos;, u&apos;Source/WebCore/Modules/plugins/QuickTimePluginReplacement.js&apos;, u&apos;Source/WebCore/WebCore.xcodeproj/project.pbxproj&apos;, u&apos;Source/WebCore/bindings/generic/RuntimeEnabledFeatures.h&apos;, u&apos;Source/WebCore/bindings/js/JSDOMBinding.h&apos;, u&apos;Source/WebCore/bindings/js/JSPluginElementFunctions.cpp&apos;, u&apos;Source/WebCore/html/HTMLEmbedElement.cpp&apos;, u&apos;Source/WebCore/html/HTMLMediaElement.cpp&apos;, u&apos;Source/WebCore/html/HTMLMediaElement.h&apos;, u&apos;Source/WebCore/html/HTMLObjectElement.cpp&apos;, u&apos;Source/WebCore/html/HTMLPlugInElement.cpp&apos;, u&apos;Source/WebCore/html/HTMLPlugInElement.h&apos;, u&apos;Source/WebCore/html/HTMLPlugInImageElement.cpp&apos;, u&apos;Source/WebCore/html/HTMLPlugInImageElement.h&apos;, u&apos;Source/WebCore/html/HTMLVideoElement.h&apos;, u&apos;Source/WebCore/platform/graphics/MediaPlayer.cpp&apos;, u&apos;Source/WebCore/platform/graphics/MediaPlayer.h&apos;, u&apos;Source/WebCore/platform/graphics/MediaPlayerPrivate.h&apos;, u&apos;Source/WebCore/platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.cpp&apos;, u&apos;Source/WebCore/platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.h&apos;, u&apos;Source/WebCore/platform/graphics/avfoundation/cf/MediaPlayerPrivateAVFoundationCF.cpp&apos;, u&apos;Source/WebCore/platform/graphics/avfoundation/cf/MediaPlayerPrivateAVFoundationCF.h&apos;, u&apos;Source/WebCore/platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.h&apos;, u&apos;Source/WebCore/platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm&apos;, u&apos;Source/WebCore/testing/InternalSettings.cpp&apos;, u&apos;Source/WebCore/testing/InternalSettings.h&apos;, u&apos;Source/WebCore/testing/InternalSettings.idl&apos;]&quot; exit_code: 1
Source/WebCore/Modules/plugins/PluginReplacement.h:33:  Code inside a namespace should not be indented.  [whitespace/indent] [4]
Total errors found: 1 in 39 files


If any of these errors are false positives, please file a bug against check-webkit-style.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>954350</commentid>
    <comment_count>5</comment_count>
      <attachid>217903</attachid>
    <who name="EFL EWS Bot">eflews.bot</who>
    <bug_when>2013-11-26 14:54:03 -0800</bug_when>
    <thetext>Comment on attachment 217903
Rebased patch.

Attachment 217903 did not pass efl-ews (efl):
Output: http://webkit-queues.appspot.com/results/36968040</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>954355</commentid>
    <comment_count>6</comment_count>
      <attachid>217906</attachid>
    <who name="Eric Carlson">eric.carlson</who>
    <bug_when>2013-11-26 14:59:54 -0800</bug_when>
    <thetext>Created attachment 217906
Updated patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>954364</commentid>
    <comment_count>7</comment_count>
      <attachid>217906</attachid>
    <who name="EFL EWS Bot">eflews.bot</who>
    <bug_when>2013-11-26 15:40:41 -0800</bug_when>
    <thetext>Comment on attachment 217906
Updated patch

Attachment 217906 did not pass efl-ews (efl):
Output: http://webkit-queues.appspot.com/results/36978032</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>954367</commentid>
    <comment_count>8</comment_count>
      <attachid>217906</attachid>
    <who name="Build Bot">buildbot</who>
    <bug_when>2013-11-26 15:49:23 -0800</bug_when>
    <thetext>Comment on attachment 217906
Updated patch

Attachment 217906 did not pass win-ews (win):
Output: http://webkit-queues.appspot.com/results/36218047</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>954370</commentid>
    <comment_count>9</comment_count>
      <attachid>217906</attachid>
    <who name="EFL EWS Bot">eflews.bot</who>
    <bug_when>2013-11-26 16:04:57 -0800</bug_when>
    <thetext>Comment on attachment 217906
Updated patch

Attachment 217906 did not pass efl-wk2-ews (efl-wk2):
Output: http://webkit-queues.appspot.com/results/36958047</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>954375</commentid>
    <comment_count>10</comment_count>
      <attachid>217906</attachid>
    <who name="kov&apos;s GTK+ EWS bot">gtk-ews</who>
    <bug_when>2013-11-26 16:13:32 -0800</bug_when>
    <thetext>Comment on attachment 217906
Updated patch

Attachment 217906 did not pass gtk-ews (gtk):
Output: http://webkit-queues.appspot.com/results/37028028</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>954395</commentid>
    <comment_count>11</comment_count>
      <attachid>217913</attachid>
    <who name="Eric Carlson">eric.carlson</who>
    <bug_when>2013-11-26 17:29:29 -0800</bug_when>
    <thetext>Created attachment 217913
Updated patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>954403</commentid>
    <comment_count>12</comment_count>
      <attachid>217913</attachid>
    <who name="EFL EWS Bot">eflews.bot</who>
    <bug_when>2013-11-26 18:12:59 -0800</bug_when>
    <thetext>Comment on attachment 217913
Updated patch

Attachment 217913 did not pass efl-ews (efl):
Output: http://webkit-queues.appspot.com/results/37028046</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>954405</commentid>
    <comment_count>13</comment_count>
      <attachid>217913</attachid>
    <who name="Build Bot">buildbot</who>
    <bug_when>2013-11-26 18:17:48 -0800</bug_when>
    <thetext>Comment on attachment 217913
Updated patch

Attachment 217913 did not pass win-ews (win):
Output: http://webkit-queues.appspot.com/results/37658001</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>954578</commentid>
    <comment_count>14</comment_count>
      <attachid>217959</attachid>
    <who name="Eric Carlson">eric.carlson</who>
    <bug_when>2013-11-27 11:16:42 -0800</bug_when>
    <thetext>Created attachment 217959
Another patch

Should fix the EFL bot.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>954584</commentid>
    <comment_count>15</comment_count>
    <who name="Philippe Normand">pnormand</who>
    <bug_when>2013-11-27 11:42:38 -0800</bug_when>
    <thetext>To fix the GTK build I think Modules/plugins should be added in webcore_cppflags in WebCore/GNUmakefile.am</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>954586</commentid>
    <comment_count>16</comment_count>
      <attachid>217959</attachid>
    <who name="kov&apos;s GTK+ EWS bot">gtk-ews</who>
    <bug_when>2013-11-27 11:55:13 -0800</bug_when>
    <thetext>Comment on attachment 217959
Another patch

Attachment 217959 did not pass gtk-ews (gtk):
Output: http://webkit-queues.appspot.com/results/38408063</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>954587</commentid>
    <comment_count>17</comment_count>
      <attachid>217959</attachid>
    <who name="Build Bot">buildbot</who>
    <bug_when>2013-11-27 12:07:05 -0800</bug_when>
    <thetext>Comment on attachment 217959
Another patch

Attachment 217959 did not pass win-ews (win):
Output: http://webkit-queues.appspot.com/results/38528016</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>954598</commentid>
    <comment_count>18</comment_count>
    <who name="Eric Carlson">eric.carlson</who>
    <bug_when>2013-11-27 12:33:29 -0800</bug_when>
    <thetext>(In reply to comment #15)
&gt; To fix the GTK build I think Modules/plugins should be added in webcore_cppflags in WebCore/GNUmakefile.am

But of course... Thanks.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>954599</commentid>
    <comment_count>19</comment_count>
      <attachid>217964</attachid>
    <who name="Eric Carlson">eric.carlson</who>
    <bug_when>2013-11-27 12:39:14 -0800</bug_when>
    <thetext>Created attachment 217964
Another attempt</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>954609</commentid>
    <comment_count>20</comment_count>
      <attachid>217964</attachid>
    <who name="Dean Jackson">dino</who>
    <bug_when>2013-11-27 13:57:18 -0800</bug_when>
    <thetext>Comment on attachment 217964
Another attempt

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

&gt; Source/WebCore/DerivedSources.make:876
&gt; +	USER_AGENT_STYLE_SHEETS  := $(USER_AGENT_STYLE_SHEETS) $(WebCore)/Modules/plugins/QuickTimePluginReplacement.css

Nit: two spaces before :=

&gt; Source/WebCore/DerivedSources.make:893
&gt; +	USER_AGENT_SCRIPTS  := $(USER_AGENT_SCRIPTS) $(WebCore)/Modules/plugins/QuickTimePluginReplacement.js

ditto

&gt; Source/WebCore/Modules/plugins/QuickTimePluginReplacement.cpp:136
&gt; +bool QuickTimePluginReplacement::ensureReplacementScriptInjected()

Might be worth putting some
LOG(Plugins
in here to indicate what&apos;s going on. (and elsewhere)

&gt; Source/WebCore/Modules/plugins/QuickTimePluginReplacement.cpp:173
&gt; +    // Lookup the &quot;createPluginReplacement&quot; function

Nit: missing .

&gt; Source/WebCore/Modules/plugins/QuickTimePluginReplacement.css:32
&gt; +    z-index: 0;

Why this?

&gt; Source/WebCore/Modules/plugins/QuickTimePluginReplacement.js:89
&gt; +            if (this[property] != undefined)

Probably should use !== here. Well.... maybe.

&gt; null == undefined
true
&gt; null === undefined
false
&gt; null != undefined
false
&gt; null !== undefined
true

&gt; Source/WebCore/Modules/plugins/QuickTimePluginReplacement.js:117
&gt; +        var base = document.createElement(&quot;base&quot;);

Nit: You use single quotes everywhere else.

&gt; Source/WebCore/Modules/plugins/QuickTimePluginReplacement.js:264
&gt; +        this.video.currentTime = time / this.TimeScale

Nit: Missing ;

&gt; Source/WebCore/Modules/plugins/QuickTimePluginReplacement.js:285
&gt; +    timeScale: function()
&gt; +    {
&gt; +        return 30000;
&gt; +    },

Is this always constant?

&gt; Source/WebCore/html/HTMLPlugInElement.cpp:340
&gt; +static Vector&lt;ReplacementPlugin*&gt;&amp; registeredPluginReplacements()
&gt; +{
&gt; +    DEFINE_STATIC_LOCAL(Vector&lt;ReplacementPlugin*&gt;, registeredReplacements, ());
&gt; +    static bool enginesQueried = false;
&gt; +    
&gt; +    if (enginesQueried)
&gt; +        return registeredReplacements;
&gt; +    enginesQueried = true;
&gt; +
&gt; +#if PLATFORM(MAC)
&gt; +    QuickTimePluginReplacement::registerPluginReplacement(registerPluginReplacement);
&gt; +#endif
&gt; +    
&gt; +    return registeredReplacements;
&gt; +}
&gt; +
&gt; +#if PLATFORM(MAC)
&gt; +static void registerPluginReplacement(const ReplacementPlugin&amp; replacement)
&gt; +{
&gt; +    registeredPluginReplacements().append(new ReplacementPlugin(replacement));
&gt; +}
&gt; +#endif

This confused me for a while. I was trying to work out how registedReplacements gets populated. I wonder if it would be more obvious if this single line function was inline in registeredPluginReplacements(). That would also save having to define it before the function. Lastly, it also confused me that it has the same name as the non-static method.

&gt; Source/WebCore/html/HTMLPlugInElement.h:63
&gt; +        Playing,
&gt; +        PreparingPluginReplacement,
&gt; +        DisplayingPluginReplacement,

Hmmm, I vaguely remember some code that does if displayState &lt; Playing (or one of those above), which I hope will still work with this new ordering.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>954623</commentid>
    <comment_count>21</comment_count>
    <who name="Eric Carlson">eric.carlson</who>
    <bug_when>2013-11-27 17:03:51 -0800</bug_when>
    <thetext>Committed in r159827: https://trac.webkit.org/r159827</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>956038</commentid>
    <comment_count>22</comment_count>
      <attachid>217964</attachid>
    <who name="Eric Carlson">eric.carlson</who>
    <bug_when>2013-12-03 12:10:12 -0800</bug_when>
    <thetext>Comment on attachment 217964
Another attempt

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

Oops, I just found these comments in an open window...

&gt;&gt; Source/WebCore/DerivedSources.make:876
&gt;&gt; +	USER_AGENT_STYLE_SHEETS  := $(USER_AGENT_STYLE_SHEETS) $(WebCore)/Modules/plugins/QuickTimePluginReplacement.css
&gt; 
&gt; Nit: two spaces before :=

Fixed.

&gt;&gt; Source/WebCore/DerivedSources.make:893
&gt;&gt; +	USER_AGENT_SCRIPTS  := $(USER_AGENT_SCRIPTS) $(WebCore)/Modules/plugins/QuickTimePluginReplacement.js
&gt; 
&gt; ditto

ditto.

&gt;&gt; Source/WebCore/Modules/plugins/QuickTimePluginReplacement.cpp:136
&gt;&gt; +bool QuickTimePluginReplacement::ensureReplacementScriptInjected()
&gt; 
&gt; Might be worth putting some
&gt; LOG(Plugins
&gt; in here to indicate what&apos;s going on. (and elsewhere)

Good idea, fixed.

&gt;&gt; Source/WebCore/Modules/plugins/QuickTimePluginReplacement.cpp:173
&gt;&gt; +    // Lookup the &quot;createPluginReplacement&quot; function
&gt; 
&gt; Nit: missing .

Fixed.

&gt;&gt; Source/WebCore/Modules/plugins/QuickTimePluginReplacement.css:32
&gt;&gt; +    z-index: 0;
&gt; 
&gt; Why this?

No good reason, removed.

&gt;&gt; Source/WebCore/Modules/plugins/QuickTimePluginReplacement.js:117
&gt;&gt; +        var base = document.createElement(&quot;base&quot;);
&gt; 
&gt; Nit: You use single quotes everywhere else.

Fixed.

&gt;&gt; Source/WebCore/Modules/plugins/QuickTimePluginReplacement.js:264
&gt;&gt; +        this.video.currentTime = time / this.TimeScale
&gt; 
&gt; Nit: Missing ;

Fixed.

&gt;&gt; Source/WebCore/Modules/plugins/QuickTimePluginReplacement.js:285
&gt;&gt; +    },
&gt; 
&gt; Is this always constant?

MPEG-4 and QuickTime movie files have timescale in the file, but other media types do not. The old QuickTime API deals with that by having a importer for a media types define a hard code time scale for the that type, but AVFoundation just doesn&apos;t expose a time scale at all. 3000 works well in practice because common frame rates can be represented accurately, eg. 29.97 NTSC is 30000 / 1001. I added a comment to the code.

&gt;&gt; Source/WebCore/html/HTMLPlugInElement.cpp:340
&gt;&gt; +#endif
&gt; 
&gt; This confused me for a while. I was trying to work out how registedReplacements gets populated. I wonder if it would be more obvious if this single line function was inline in registeredPluginReplacements(). That would also save having to define it before the function. Lastly, it also confused me that it has the same name as the non-static method.

That won&apos;t work because registerPluginReplacement is passed to the module(s) that want to register new types. I changed the names to hopefully make this less confusing.

&gt;&gt; Source/WebCore/html/HTMLPlugInElement.h:63
&gt;&gt; +        DisplayingPluginReplacement,
&gt; 
&gt; Hmmm, I vaguely remember some code that does if displayState &lt; Playing (or one of those above), which I hope will still work with this new ordering.

I *think* I handled all of those cases.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>957255</commentid>
    <comment_count>23</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2013-12-06 09:12:15 -0800</bug_when>
    <thetext>plugins/quicktime-plugin-replacement.html has been failing on Mavericks Release WK1 tester 100% of time.

Should this change be rolled out?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>957263</commentid>
    <comment_count>24</comment_count>
    <who name="Jer Noble">jer.noble</who>
    <bug_when>2013-12-06 09:36:18 -0800</bug_when>
    <thetext>(In reply to comment #23)
&gt; plugins/quicktime-plugin-replacement.html has been failing on Mavericks Release WK1 tester 100% of time.
&gt; 
&gt; Should this change be rolled out?

The failure is just some extra logging from AVF.  So, no, this should not be rolled out.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>957270</commentid>
    <comment_count>25</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2013-12-06 09:47:15 -0800</bug_when>
    <thetext>Please fix.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>217902</attachid>
            <date>2013-11-26 14:41:06 -0800</date>
            <delta_ts>2013-11-26 14:46:11 -0800</delta_ts>
            <desc>Patch for the bots to chew on</desc>
            <filename>patch_9.txt</filename>
            <type>text/plain</type>
            <size>125792</size>
            <attacher name="Eric Carlson">eric.carlson</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDE1OTc5MCkKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDEwNSBAQAorMjAxMy0xMS0yNiAgRXJpYyBD
YXJsc29uICA8ZXJpYy5jYXJsc29uQGFwcGxlLmNvbT4KKworICAgICAgICBBbGxvdyB0aGUgUXVp
Y2tUaW1lIHBsdWctaW4gdG8gYmUgcmVwbGFjZWQgYnkgc2NyaXB0IGluIGFuIGlzb2xhdGVkIHdv
cmQKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEyNDkw
MAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFRlc3Q6
IHBsdWdpbnMvcXVpY2t0aW1lLXBsdWdpbi1yZXBsYWNlbWVudC5odG1sCisKKyAgICAgICAgKiBE
ZXJpdmVkU291cmNlcy5tYWtlOiBBZGQgbmV3IGZpbGVzLgorCisgICAgICAgICogTW9kdWxlcy9w
bHVnaW5zOiBBZGRlZC4KKyAgICAgICAgKiBNb2R1bGVzL3BsdWdpbnMvUGx1Z2luUmVwbGFjZW1l
bnQuaDogQWRkZWQuIERlZmluZXMgdGhlIGludGVyZmFjZSBmb3IgYSBwbHVnLWluIHJlcGxhY2Vt
ZW50LgorCisgICAgICAgIENyZWF0ZSBhIHJlcGxhY2VtZW50IGZvciB0aGUgUXVpY2tUaW1lIHBs
dWctaW4uCisgICAgICAgICogTW9kdWxlcy9wbHVnaW5zL1F1aWNrVGltZVBsdWdpblJlcGxhY2Vt
ZW50LmNwcDogQWRkZWQuCisgICAgICAgICogTW9kdWxlcy9wbHVnaW5zL1F1aWNrVGltZVBsdWdp
blJlcGxhY2VtZW50LmNzczogQWRkZWQuCisgICAgICAgICogTW9kdWxlcy9wbHVnaW5zL1F1aWNr
VGltZVBsdWdpblJlcGxhY2VtZW50Lmg6IEFkZGVkLgorICAgICAgICAqIE1vZHVsZXMvcGx1Z2lu
cy9RdWlja1RpbWVQbHVnaW5SZXBsYWNlbWVudC5pZGw6IEFkZGVkLgorICAgICAgICAqIE1vZHVs
ZXMvcGx1Z2lucy9RdWlja1RpbWVQbHVnaW5SZXBsYWNlbWVudC5qczogQWRkZWQuCisKKyAgICAg
ICAgKiBXZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2o6IEFkZCBuZXcgZmlsZXMuCisK
KyAgICAgICAgQWxsb3cgcGx1Zy1pbiByZXBsYWNlbWVudCB0byBiZSBlbmFibGVkIGF0IHJ1bnRp
bWUuCisgICAgICAgICogYmluZGluZ3MvZ2VuZXJpYy9SdW50aW1lRW5hYmxlZEZlYXR1cmVzLmg6
CisgICAgICAgIChXZWJDb3JlOjpSdW50aW1lRW5hYmxlZEZlYXR1cmVzOjpzZXRQbHVnaW5SZXBs
YWNlbWVudEVuYWJsZWQpOgorICAgICAgICAoV2ViQ29yZTo6UnVudGltZUVuYWJsZWRGZWF0dXJl
czo6cGx1Z2luUmVwbGFjZW1lbnRFbmFibGVkKToKKworICAgICAgICAqIGJpbmRpbmdzL2pzL0pT
RE9NQmluZGluZy5oOgorICAgICAgICAoV2ViQ29yZTo6dG9KUyk6IEFkZCB0b0pTKC4uLiBjb25z
dCBTdHJpbmcmIC4uLikuCisKKyAgICAgICAgKiBiaW5kaW5ncy9qcy9KU1BsdWdpbkVsZW1lbnRG
dW5jdGlvbnMuY3BwOgorICAgICAgICAoV2ViQ29yZTo6cGx1Z2luU2NyaXB0T2JqZWN0KTogR2l2
ZSBhIHBsdWctaW4gcmVwbGFjZW1lbnQgYSBmaXJzdCBzaG90IGF0IGRlZmluaW5nIHRoZQorICAg
ICAgICAgICAgc2NyaXB0IGludGVyZmFjZS4KKworICAgICAgICAqIGh0bWwvSFRNTEVtYmVkRWxl
bWVudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpIVE1MRW1iZWRFbGVtZW50Ojp1cGRhdGVXaWRn
ZXQpOiBDYWxsIGJhc2UgY2xhc3MgcmVxdWVzdE9iamVjdC4KKworICAgICAgICAqIGh0bWwvSFRN
TE1lZGlhRWxlbWVudC5jcHA6CisgICAgICAgIChIVE1MTWVkaWFFbGVtZW50OjpmaWxlU2l6ZSk6
IE5ldywgcGFzc3Rocm91Z2ggdG8gbWVkaWEgZW5naW5lLgorICAgICAgICAqIGh0bWwvSFRNTE1l
ZGlhRWxlbWVudC5oOgorCisgICAgICAgICogaHRtbC9IVE1MT2JqZWN0RWxlbWVudC5jcHA6Cisg
ICAgICAgIChXZWJDb3JlOjpIVE1MT2JqZWN0RWxlbWVudDo6dXBkYXRlV2lkZ2V0KTogQ2FsbCBi
YXNlIGNsYXNzIHJlcXVlc3RPYmplY3QuCisKKyAgICAgICAgTW92ZWQgc29tZSBsb2dpYyB0aGF0
IHdhcyBwcmV2aW91c2x5IHVzZWQgb25seSBmb3IgY3JlYXRpbmcgYSBwbHVnLWluIHNuYXBzaG90
IHRvIHRoZSBiYXNlCisgICAgICAgIGNsYXNzIHNvIGl0IGNhbiBiZSBzaGFyZWQgYnkgYSBwbHVn
LWluIHJlcGxhY2VtZW50LgorICAgICAgICAqIGh0bWwvSFRNTFBsdWdJbkVsZW1lbnQuY3BwOgor
ICAgICAgICAoV2ViQ29yZTo6SFRNTFBsdWdJbkVsZW1lbnQ6OkhUTUxQbHVnSW5FbGVtZW50KTog
SW5pdGlhbGl6ZSB0aW1lciB1c2VkIHRvIHN3YXAgcmVuZGVyZXJzLgorICAgICAgICAoV2ViQ29y
ZTo6SFRNTFBsdWdJbkVsZW1lbnQ6OmNyZWF0ZVJlbmRlcmVyKTogQWxsb3cgcGx1Zy1pbiByZXBs
YWNlbWVudCB0byBjcmVhdGUgdGhlIHJlbmRlcmVyLgorICAgICAgICAoV2ViQ29yZTo6SFRNTFBs
dWdJbkVsZW1lbnQ6OnN3YXBSZW5kZXJlclRpbWVyRmlyZWQpOiBDcmVhdGUgYSBzaGFkb3cgcm9v
dC4KKyAgICAgICAgKFdlYkNvcmU6OkhUTUxQbHVnSW5FbGVtZW50OjpzZXREaXNwbGF5U3RhdGUp
OiBTZXQgdGhlIG5ldyBzdGF0ZSwgcHJpbWUgdGhlIHN3YXAgcmVuZGVyZXIgCisgICAgICAgICAg
ICB0aW1lciBpZiBuZWNlc3NhcnkuCisgICAgICAgIChXZWJDb3JlOjpIVE1MUGx1Z0luRWxlbWVu
dDo6ZGlkQWRkVXNlckFnZW50U2hhZG93Um9vdCk6IFRlbGwgdGhlIHBsdWctaW4gcmVwbGFjZW1l
bnQgdG8KKyAgICAgICAgICAgIGluc3RhbGwgaXRzZWxmIGluIHRoZSBuZXcgc2hhZG93IERPTS4K
KyAgICAgICAgKFdlYkNvcmU6OnJlZ2lzdGVyZWRQbHVnaW5SZXBsYWNlbWVudHMpOiBSZXR1cm4g
dmVjdG9yIG9mIGFsbCByZWdpc3RlcmVkIHBsdWctaW4gcmVwbGFjZW1lbnRzLgorICAgICAgICAo
V2ViQ29yZTo6cmVnaXN0ZXJQbHVnaW5SZXBsYWNlbWVudCk6IEFkZCBhIHBsdWctaW4gcmVwbGFj
ZW1lbnQuCisgICAgICAgIChXZWJDb3JlOjpwbHVnaW5SZXBsYWNlbWVudEZvclR5cGUpOiBGaW5k
IGEgcGx1Zy1pbiByZXBsYWNlbWVudCBmb3IgYSBNSU1FIHR5cGUuCisgICAgICAgIChXZWJDb3Jl
OjpIVE1MUGx1Z0luRWxlbWVudDo6cmVxdWVzdE9iamVjdCk6IElmIHRoZXJlIGlzIGEgcGx1Zy1p
biByZXBsYWNlbWVudCBmb3IgdGhlIE1JTUUgdHlwZSwKKyAgICAgICAgICAgIGNyZWF0ZSBpdCBh
bmQgc2V0IHRoZSBkaXNwbGF5IHN0YXRlLgorICAgICAgICAoV2ViQ29yZTo6SFRNTFBsdWdJbkVs
ZW1lbnQ6OnNjcmlwdE9iamVjdEZvclBsdWdpblJlcGxhY2VtZW50KTogUmV0dXJuIHRoZSBzY3Jp
cHQgb2JqZWN0IGZvciAKKyAgICAgICAgICAgIHRoZSBjdXJyZW50IHBsdWctaW4gcmVwbGFjZW1l
bnQsIGlmIGFueS4KKyAgICAgICAgKiBodG1sL0hUTUxQbHVnSW5FbGVtZW50Lmg6CisKKyAgICAg
ICAgTW92ZSBzb21lIHBsdWctaW4gc25hcHNob3QgY29kZSBpbnRvIHRoZSBiYXNlIGNsYXNzLgor
ICAgICAgICAqIGh0bWwvSFRNTFBsdWdJbkltYWdlRWxlbWVudC5jcHA6CisgICAgICAgIChXZWJD
b3JlOjpIVE1MUGx1Z0luSW1hZ2VFbGVtZW50OjpIVE1MUGx1Z0luSW1hZ2VFbGVtZW50KTogTm8g
bmVlZCB0byBpbml0aWFsaXplIHRpbWVyLgorICAgICAgICAoV2ViQ29yZTo6SFRNTFBsdWdJbklt
YWdlRWxlbWVudDo6c2V0RGlzcGxheVN0YXRlKTogQ2FsbCBiYXNlIGNsYXNzLgorICAgICAgICAo
V2ViQ29yZTo6SFRNTFBsdWdJbkltYWdlRWxlbWVudDo6Y3JlYXRlUmVuZGVyZXIpOiBEaXR0by4K
KyAgICAgICAgKFdlYkNvcmU6OkhUTUxQbHVnSW5JbWFnZUVsZW1lbnQ6OmRpZEFkZFVzZXJBZ2Vu
dFNoYWRvd1Jvb3QpOiBEaXR0by4KKyAgICAgICAgKFdlYkNvcmU6OkhUTUxQbHVnSW5JbWFnZUVs
ZW1lbnQ6OnVzZXJEaWRDbGlja1NuYXBzaG90KTogUmVtb3ZlIHVubmVjZXNzYXJ5IGNsYXNzIG5h
bWUuCisgICAgICAgIChXZWJDb3JlOjpIVE1MUGx1Z0luSW1hZ2VFbGVtZW50OjpyZXF1ZXN0T2Jq
ZWN0KTogTmV3LgorICAgICAgICAqIGh0bWwvSFRNTFBsdWdJbkltYWdlRWxlbWVudC5oOgorCisg
ICAgICAgICogaHRtbC9IVE1MVmlkZW9FbGVtZW50Lmg6IE1ha2UgY3JlYXRlUmVuZGVyZXIgcHVi
bGljIHNvIHRoZSBRdWlja1RpbWUgcGx1Zy1pbiByZXBsYWNlbWVudCBjYW4KKyAgICAgICAgICAg
IGNhbGwgaXQuCisKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9NZWRpYVBsYXllci5jcHA6
CisgICAgICAgIChXZWJDb3JlOjpNZWRpYVBsYXllcjo6ZmlsZVNpemUpOiBOZXcuCisgICAgICAg
ICogcGxhdGZvcm0vZ3JhcGhpY3MvTWVkaWFQbGF5ZXIuaDoKKyAgICAgICAgKiBwbGF0Zm9ybS9n
cmFwaGljcy9NZWRpYVBsYXllclByaXZhdGUuaDoKKworICAgICAgICAqIHBsYXRmb3JtL2dyYXBo
aWNzL2F2Zm91bmRhdGlvbi9NZWRpYVBsYXllclByaXZhdGVBVkZvdW5kYXRpb24uY3BwOgorICAg
ICAgICAoV2ViQ29yZTo6TWVkaWFQbGF5ZXJQcml2YXRlQVZGb3VuZGF0aW9uOjpleHRyYU1lbW9y
eUNvc3QpOiB0b3RhbEJ5dGVzIHJldHVybnMgYW4gdW5zaWduZWQgbG9uZyBsb25nLgorICAgICAg
ICAqIHBsYXRmb3JtL2dyYXBoaWNzL2F2Zm91bmRhdGlvbi9NZWRpYVBsYXllclByaXZhdGVBVkZv
dW5kYXRpb24uaDoKKyAgICAgICAgKFdlYkNvcmU6Ok1lZGlhUGxheWVyUHJpdmF0ZUFWRm91bmRh
dGlvbjo6ZmlsZVNpemUpOgorCisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvYXZmb3VuZGF0
aW9uL2NmL01lZGlhUGxheWVyUHJpdmF0ZUFWRm91bmRhdGlvbkNGLmNwcDoKKyAgICAgICAgKFdl
YkNvcmU6Ok1lZGlhUGxheWVyUHJpdmF0ZUFWRm91bmRhdGlvbkNGOjp0b3RhbEJ5dGVzKTogUmV0
dXJuIGFuIHVuc2lnbmVkIGxvbmcgbG9uZy4KKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9h
dmZvdW5kYXRpb24vY2YvTWVkaWFQbGF5ZXJQcml2YXRlQVZGb3VuZGF0aW9uQ0YuaDoKKworICAg
ICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL2F2Zm91bmRhdGlvbi9vYmpjL01lZGlhUGxheWVyUHJp
dmF0ZUFWRm91bmRhdGlvbk9iakMuaDoKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9hdmZv
dW5kYXRpb24vb2JqYy9NZWRpYVBsYXllclByaXZhdGVBVkZvdW5kYXRpb25PYmpDLm1tOgorICAg
ICAgICAoV2ViQ29yZTo6TWVkaWFQbGF5ZXJQcml2YXRlQVZGb3VuZGF0aW9uT2JqQzo6dG90YWxC
eXRlcyk6IERpdHRvLgorCisgICAgICAgICogdGVzdGluZy9JbnRlcm5hbFNldHRpbmdzLmNwcDoK
KyAgICAgICAgKFdlYkNvcmU6OkludGVybmFsU2V0dGluZ3M6OkJhY2t1cDo6QmFja3VwKTogQmFj
a3VwIHRoZSBwbHVnLWluIHJlcGxhY2VtZW50IHJ1bnRpbWUgc2V0dGluZy4KKyAgICAgICAgKFdl
YkNvcmU6OkludGVybmFsU2V0dGluZ3M6OkJhY2t1cDo6cmVzdG9yZVRvKTogUmVzdG9yZSBpdC4K
KyAgICAgICAgKFdlYkNvcmU6OkludGVybmFsU2V0dGluZ3M6OnNldFBsdWdpblJlcGxhY2VtZW50
RW5hYmxlZCk6IFNldCBpdC4KKyAgICAgICAgKiB0ZXN0aW5nL0ludGVybmFsU2V0dGluZ3MuaDoK
KyAgICAgICAgKiB0ZXN0aW5nL0ludGVybmFsU2V0dGluZ3MuaWRsOgorCiAyMDEzLTExLTI2ICBF
cmljIENhcmxzb24gIDxlcmljLmNhcmxzb25AYXBwbGUuY29tPgogCiAgICAgICAgIHZpZGVvLmN1
cnJlbnRTcmMgc2hvdWxkIHJldHVybiBlbXB0eSB3aGVuIG5vIHJlc291cmNlIGlzIGxvYWRlZApJ
bmRleDogU291cmNlL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMubWFrZQo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBT
b3VyY2UvV2ViQ29yZS9EZXJpdmVkU291cmNlcy5tYWtlCShyZXZpc2lvbiAxNTk3MzYpCisrKyBT
b3VyY2UvV2ViQ29yZS9EZXJpdmVkU291cmNlcy5tYWtlCSh3b3JraW5nIGNvcHkpCkBAIC0zNiw2
ICszNiw3IEBAIFZQQVRIID0gXAogICAgICQoV2ViQ29yZSkvTW9kdWxlcy9tZWRpYXNvdXJjZSBc
CiAgICAgJChXZWJDb3JlKS9Nb2R1bGVzL21lZGlhc3RyZWFtIFwKICAgICAkKFdlYkNvcmUpL01v
ZHVsZXMvbm90aWZpY2F0aW9ucyBcCisgICAgJChXZWJDb3JlKS9Nb2R1bGVzL3BsdWdpbnMgXAog
ICAgICQoV2ViQ29yZSkvTW9kdWxlcy9xdW90YSBcCiAgICAgJChXZWJDb3JlKS9Nb2R1bGVzL3Nw
ZWVjaCBcCiAgICAgJChXZWJDb3JlKS9Nb2R1bGVzL3dlYmF1ZGlvIFwKQEAgLTE0MCw2ICsxNDEs
NyBAQCBCSU5ESU5HX0lETFMgPSBcCiAgICAgJChXZWJDb3JlKS9Nb2R1bGVzL25vdGlmaWNhdGlv
bnMvTm90aWZpY2F0aW9uQ2VudGVyLmlkbCBcCiAgICAgJChXZWJDb3JlKS9Nb2R1bGVzL25vdGlm
aWNhdGlvbnMvTm90aWZpY2F0aW9uUGVybWlzc2lvbkNhbGxiYWNrLmlkbCBcCiAgICAgJChXZWJD
b3JlKS9Nb2R1bGVzL25vdGlmaWNhdGlvbnMvV29ya2VyR2xvYmFsU2NvcGVOb3RpZmljYXRpb25z
LmlkbCBcCisgICAgJChXZWJDb3JlKS9Nb2R1bGVzL3BsdWdpbnMvUXVpY2tUaW1lUGx1Z2luUmVw
bGFjZW1lbnQuaWRsIFwKICAgICAkKFdlYkNvcmUpL01vZHVsZXMvcXVvdGEvRE9NV2luZG93UXVv
dGEuaWRsIFwKICAgICAkKFdlYkNvcmUpL01vZHVsZXMvcXVvdGEvTmF2aWdhdG9yU3RvcmFnZVF1
b3RhLmlkbCBcCiAgICAgJChXZWJDb3JlKS9Nb2R1bGVzL3F1b3RhL1N0b3JhZ2VJbmZvLmlkbCBc
CkBAIC04NjksNiArODcxLDEwIEBAIGlmZXEgKCQoZmluZHN0cmluZyBFTkFCTEVfTUVESUFfQ09O
VFJPTFMKIAlVU0VSX0FHRU5UX1NUWUxFX1NIRUVUUyA6PSAkKFVTRVJfQUdFTlRfU1RZTEVfU0hF
RVRTKSAkKFdlYkNvcmUpL01vZHVsZXMvbWVkaWFjb250cm9scy9tZWRpYUNvbnRyb2xzQXBwbGUu
Y3NzCiBlbmRpZgogCitpZmVxICgkKE9TKSxNQUNPUykKKwlVU0VSX0FHRU5UX1NUWUxFX1NIRUVU
UyAgOj0gJChVU0VSX0FHRU5UX1NUWUxFX1NIRUVUUykgJChXZWJDb3JlKS9Nb2R1bGVzL3BsdWdp
bnMvUXVpY2tUaW1lUGx1Z2luUmVwbGFjZW1lbnQuY3NzCitlbmRpZgorCiBVc2VyQWdlbnRTdHls
ZVNoZWV0cy5oIDogY3NzL21ha2UtY3NzLWZpbGUtYXJyYXlzLnBsIGJpbmRpbmdzL3NjcmlwdHMv
cHJlcHJvY2Vzc29yLnBtICQoVVNFUl9BR0VOVF9TVFlMRV9TSEVFVFMpICQoUExBVEZPUk1fRkVB
VFVSRV9ERUZJTkVTKQogCXBlcmwgLUkkKFdlYkNvcmUpL2JpbmRpbmdzL3NjcmlwdHMgJDwgLS1k
ZWZpbmVzICIkKEZFQVRVUkVfREVGSU5FUykiICRAIFVzZXJBZ2VudFN0eWxlU2hlZXRzRGF0YS5j
cHAgJChVU0VSX0FHRU5UX1NUWUxFX1NIRUVUUykKIApAQCAtODgyLDYgKzg4OCw5IEBAIGlmZXEg
KCQoZmluZHN0cmluZyBFTkFCTEVfTUVESUFfQ09OVFJPTFMKIAlVU0VSX0FHRU5UX1NDUklQVFMg
Oj0gJChVU0VSX0FHRU5UX1NDUklQVFMpICQoV2ViQ29yZSkvTW9kdWxlcy9tZWRpYWNvbnRyb2xz
L21lZGlhQ29udHJvbHNBcHBsZS5qcwogZW5kaWYKIAoraWZlcSAoJChPUyksTUFDT1MpCisJVVNF
Ul9BR0VOVF9TQ1JJUFRTICA6PSAkKFVTRVJfQUdFTlRfU0NSSVBUUykgJChXZWJDb3JlKS9Nb2R1
bGVzL3BsdWdpbnMvUXVpY2tUaW1lUGx1Z2luUmVwbGFjZW1lbnQuanMKK2VuZGlmCiAKIFVzZXJB
Z2VudFNjcmlwdHMuaCA6IGNzcy9tYWtlLWNzcy1maWxlLWFycmF5cy5wbCBiaW5kaW5ncy9zY3Jp
cHRzL3ByZXByb2Nlc3Nvci5wbSAkKFVTRVJfQUdFTlRfU0NSSVBUUykgJChQTEFURk9STV9GRUFU
VVJFX0RFRklORVMpCiAJcGVybCAtSSQoV2ViQ29yZSkvYmluZGluZ3Mvc2NyaXB0cyAkPCAtLWRl
ZmluZXMgIiQoRkVBVFVSRV9ERUZJTkVTKSIgJEAgVXNlckFnZW50U2NyaXB0c0RhdGEuY3BwICQo
VVNFUl9BR0VOVF9TQ1JJUFRTKQpJbmRleDogU291cmNlL1dlYkNvcmUvTW9kdWxlcy9wbHVnaW5z
L1BsdWdpblJlcGxhY2VtZW50LmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvTW9kdWxl
cy9wbHVnaW5zL1BsdWdpblJlcGxhY2VtZW50LmgJKHJldmlzaW9uIDApCisrKyBTb3VyY2UvV2Vi
Q29yZS9Nb2R1bGVzL3BsdWdpbnMvUGx1Z2luUmVwbGFjZW1lbnQuaAkod29ya2luZyBjb3B5KQpA
QCAtMCwwICsxLDkxIEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDEzIEFwcGxlIEluYy4gQWxs
IHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJj
ZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJl
IHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJl
IG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0
aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25z
IGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4g
YmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90
aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVy
IGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3Zp
ZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJ
REVEIEJZIEFQUExFIENPTVBVVEVSLCBJTkMuIGBgQVMgSVMnJyBBTkQgQU5ZCisgKiBFWFBSRVNT
IE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRI
RQorICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBG
T1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiAgSU4gTk8gRVZFTlQg
U0hBTEwgQVBQTEUgQ09NUFVURVIsIElOQy4gT1IKKyAqIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUg
Rk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLAorICogRVhFTVBM
QVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVE
IFRPLAorICogUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9T
UyBPRiBVU0UsIERBVEEsIE9SCisgKiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04p
IEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZCisgKiBPRiBMSUFCSUxJVFksIFdIRVRI
RVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKKyAqIChJTkNMVURJTkcg
TkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVT
RQorICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElU
WSBPRiBTVUNIIERBTUFHRS4gCisgKi8KKworI2lmbmRlZiBQbHVnaW5SZXBsYWNlbWVudF9oCisj
ZGVmaW5lIFBsdWdpblJlcGxhY2VtZW50X2gKKworI2luY2x1ZGUgPHd0Zi9SZWZDb3VudGVkLmg+
CisjaW5jbHVkZSA8d3RmL3RleHQvV1RGU3RyaW5nLmg+CisKK25hbWVzcGFjZSBKU0MgeworICAg
IGNsYXNzIEpTT2JqZWN0OworfQorCituYW1lc3BhY2UgV2ViQ29yZSB7CisKK2NsYXNzIEhUTUxQ
bHVnSW5FbGVtZW50OworY2xhc3MgUmVuZGVyRWxlbWVudDsKK2NsYXNzIFJlbmRlclN0eWxlOwor
Y2xhc3MgU2hhZG93Um9vdDsKKworY2xhc3MgUGx1Z2luUmVwbGFjZW1lbnQgOiBwdWJsaWMgUmVm
Q291bnRlZDxQbHVnaW5SZXBsYWNlbWVudD4geworcHVibGljOgorICAgIHZpcnR1YWwgflBsdWdp
blJlcGxhY2VtZW50KCkgeyB9CisKKyAgICB2aXJ0dWFsIGJvb2wgaW5zdGFsbFJlcGxhY2VtZW50
KFNoYWRvd1Jvb3QqKSA9IDA7CisgICAgdmlydHVhbCBKU0M6OkpTT2JqZWN0KiBzY3JpcHRPYmpl
Y3QoKSB7IHJldHVybiAwOyB9CisKKyAgICB2aXJ0dWFsIGJvb2wgd2lsbENyZWF0ZVJlbmRlcmVy
KCkgeyByZXR1cm4gZmFsc2U7IH0KKyAgICB2aXJ0dWFsIFJlbmRlckVsZW1lbnQqIGNyZWF0ZVJl
bmRlcmVyKEhUTUxQbHVnSW5FbGVtZW50JiwgUGFzc1JlZjxSZW5kZXJTdHlsZT4pID0gMDsKKwor
cHJvdGVjdGVkOgorICAgIFBsdWdpblJlcGxhY2VtZW50KCkgeyB9Cit9OworCit0eXBlZGVmIFBh
c3NSZWZQdHI8UGx1Z2luUmVwbGFjZW1lbnQ+ICgqQ3JlYXRlUGx1Z2luUmVwbGFjZW1lbnQpKEhU
TUxQbHVnSW5FbGVtZW50JiwgY29uc3QgVmVjdG9yPFN0cmluZz4mIHBhcmFtTmFtZXMsIGNvbnN0
IFZlY3RvcjxTdHJpbmc+JiBwYXJhbVZhbHVlcyk7Cit0eXBlZGVmIGJvb2wgKCpQbHVnaW5SZXBs
YWNlbWVudFN1cHBvcnRzVHlwZSkoY29uc3QgU3RyaW5nJik7Cit0eXBlZGVmIGJvb2wgKCpQbHVn
aW5SZXBsYWNlbWVudFN1cHBvcnRzRmlsZUV4dGVuc2lvbikoY29uc3QgU3RyaW5nJik7CisKK2Ns
YXNzIFJlcGxhY2VtZW50UGx1Z2luIHsKK3B1YmxpYzoKKyAgICBSZXBsYWNlbWVudFBsdWdpbihD
cmVhdGVQbHVnaW5SZXBsYWNlbWVudCBjb25zdHJ1Y3RvciwgUGx1Z2luUmVwbGFjZW1lbnRTdXBw
b3J0c1R5cGUgc3VwcG9ydHNUeXBlLCBQbHVnaW5SZXBsYWNlbWVudFN1cHBvcnRzRmlsZUV4dGVu
c2lvbiBzdXBwb3J0c0ZpbGVFeHRlbnNpb24pCisgICAgICAgIDogbV9jb25zdHJ1Y3Rvcihjb25z
dHJ1Y3RvcikKKyAgICAgICAgLCBtX3N1cHBvcnRzVHlwZShzdXBwb3J0c1R5cGUpCisgICAgICAg
ICwgbV9zdXBwb3J0c0ZpbGVFeHRlbnNpb24oc3VwcG9ydHNGaWxlRXh0ZW5zaW9uKQorICAgIHsK
KyAgICB9CisKKyAgICBleHBsaWNpdCBSZXBsYWNlbWVudFBsdWdpbihjb25zdCBSZXBsYWNlbWVu
dFBsdWdpbiYgb3RoZXIpCisgICAgICAgIDogbV9jb25zdHJ1Y3RvcihvdGhlci5tX2NvbnN0cnVj
dG9yKQorICAgICAgICAsIG1fc3VwcG9ydHNUeXBlKG90aGVyLm1fc3VwcG9ydHNUeXBlKQorICAg
ICAgICAsIG1fc3VwcG9ydHNGaWxlRXh0ZW5zaW9uKG90aGVyLm1fc3VwcG9ydHNGaWxlRXh0ZW5z
aW9uKQorICAgIHsKKyAgICB9CisKKyAgICBQYXNzUmVmUHRyPFBsdWdpblJlcGxhY2VtZW50PiBj
cmVhdGUoSFRNTFBsdWdJbkVsZW1lbnQmIGVsZW1lbnQsIGNvbnN0IFZlY3RvcjxTdHJpbmc+JiBw
YXJhbU5hbWVzLCBjb25zdCBWZWN0b3I8U3RyaW5nPiYgcGFyYW1WYWx1ZXMpIGNvbnN0IHsgcmV0
dXJuIG1fY29uc3RydWN0b3IoZWxlbWVudCwgcGFyYW1OYW1lcywgcGFyYW1WYWx1ZXMpOyB9Cisg
ICAgYm9vbCBzdXBwb3J0c1R5cGUoY29uc3QgU3RyaW5nJiBtaW1lVHlwZSkgY29uc3QgeyByZXR1
cm4gbV9zdXBwb3J0c1R5cGUobWltZVR5cGUpOyB9CisgICAgYm9vbCBzdXBwb3J0c0ZpbGVFeHRl
bnNpb24oY29uc3QgU3RyaW5nJiBleHRlbnNpb24pIGNvbnN0IHsgcmV0dXJuIG1fc3VwcG9ydHNG
aWxlRXh0ZW5zaW9uKGV4dGVuc2lvbik7IH0KKworcHJpdmF0ZToKKyAgICBDcmVhdGVQbHVnaW5S
ZXBsYWNlbWVudCBtX2NvbnN0cnVjdG9yOworICAgIFBsdWdpblJlcGxhY2VtZW50U3VwcG9ydHNU
eXBlIG1fc3VwcG9ydHNUeXBlOworICAgIFBsdWdpblJlcGxhY2VtZW50U3VwcG9ydHNGaWxlRXh0
ZW5zaW9uIG1fc3VwcG9ydHNGaWxlRXh0ZW5zaW9uOworfTsKKwordHlwZWRlZiB2b2lkICgqUGx1
Z2luUmVwbGFjZW1lbnRSZWdpc3RyYXIpKGNvbnN0IFJlcGxhY2VtZW50UGx1Z2luJik7CisKK30K
KworI2VuZGlmCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3BsdWdpbnMvUXVpY2tUaW1l
UGx1Z2luUmVwbGFjZW1lbnQuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL01vZHVs
ZXMvcGx1Z2lucy9RdWlja1RpbWVQbHVnaW5SZXBsYWNlbWVudC5jcHAJKHJldmlzaW9uIDApCisr
KyBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3BsdWdpbnMvUXVpY2tUaW1lUGx1Z2luUmVwbGFjZW1l
bnQuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0wLDAgKzEsMjM0IEBACisvKgorICogQ29weXJpZ2h0
IChDKSAyMDEzIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3Ry
aWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhv
dXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xs
b3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBz
b3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2Us
IHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisg
KiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFi
b3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQg
dGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQv
b3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisg
KiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIENPTVBVVEVSLCBJTkMuIGBgQVMg
SVMnJyBBTkQgQU5ZCisgKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5H
LCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQorICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNI
QU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBE
SVNDTEFJTUVELiAgSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgQ09NUFVURVIsIElOQy4gT1IKKyAq
IENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVO
VEFMLCBTUEVDSUFMLAorICogRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElO
Q0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAorICogUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVU
RSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SCisgKiBQUk9GSVRTOyBP
UiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZ
CisgKiBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFks
IE9SIFRPUlQKKyAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcg
SU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQorICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBB
RFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4gCisgKi8KKworI2luY2x1
ZGUgImNvbmZpZy5oIgorCisjaWYgRU5BQkxFKE1FRElBX0NPTlRST0xTX1NDUklQVCkKKworI2lu
Y2x1ZGUgIlF1aWNrVGltZVBsdWdpblJlcGxhY2VtZW50LmgiCisKKyNpbmNsdWRlICJFdmVudC5o
IgorI2luY2x1ZGUgIkhUTUxQbHVnSW5FbGVtZW50LmgiCisjaW5jbHVkZSAiSFRNTFZpZGVvRWxl
bWVudC5oIgorI2luY2x1ZGUgIkpTRE9NQmluZGluZy5oIgorI2luY2x1ZGUgIkpTRE9NR2xvYmFs
T2JqZWN0LmgiCisjaW5jbHVkZSAiSlNIVE1MVmlkZW9FbGVtZW50LmgiCisjaW5jbHVkZSAiSlNR
dWlja1RpbWVQbHVnaW5SZXBsYWNlbWVudC5oIgorI2luY2x1ZGUgIk1haW5GcmFtZS5oIgorI2lu
Y2x1ZGUgIlBhZ2UuaCIKKyNpbmNsdWRlICJSZW5kZXJFbGVtZW50LmgiCisjaW5jbHVkZSAiU2Ny
aXB0Q29udHJvbGxlci5oIgorI2luY2x1ZGUgIlNjcmlwdE9iamVjdC5oIgorI2luY2x1ZGUgIlNj
cmlwdFNvdXJjZUNvZGUuaCIKKyNpbmNsdWRlICJVc2VyQWdlbnRTY3JpcHRzLmgiCisjaW5jbHVk
ZSA8SmF2YVNjcmlwdENvcmUvQVBJQ2FzdC5oPgorI2luY2x1ZGUgPEphdmFTY3JpcHRDb3JlL0pT
QmFzZS5oPgorI2luY2x1ZGUgPEphdmFTY3JpcHRDb3JlL0pTQ0pTVmFsdWVJbmxpbmVzLmg+CisK
K3VzaW5nIG5hbWVzcGFjZSBKU0M7CisKK25hbWVzcGFjZSBXZWJDb3JlIHsKKworc3RhdGljIFN0
cmluZyBxdWlja1RpbWVQbHVnaW5SZXBsYWNlbWVudFNjcmlwdCgpCit7CisgICAgREVGSU5FX1NU
QVRJQ19MT0NBTChTdHJpbmcsIHNjcmlwdCwgKFF1aWNrVGltZVBsdWdpblJlcGxhY2VtZW50SmF2
YVNjcmlwdCwgc2l6ZW9mKFF1aWNrVGltZVBsdWdpblJlcGxhY2VtZW50SmF2YVNjcmlwdCkpKTsK
KyAgICByZXR1cm4gc2NyaXB0OworfQorCit2b2lkIFF1aWNrVGltZVBsdWdpblJlcGxhY2VtZW50
OjpyZWdpc3RlclBsdWdpblJlcGxhY2VtZW50KFBsdWdpblJlcGxhY2VtZW50UmVnaXN0cmFyIHJl
Z2lzdHJhcikKK3sKKyAgICByZWdpc3RyYXIoUmVwbGFjZW1lbnRQbHVnaW4oY3JlYXRlLCBzdXBw
b3J0c01pbWVUeXBlLCBzdXBwb3J0c0ZpbGVFeHRlbnNpb24pKTsKK30KKworUGFzc1JlZlB0cjxQ
bHVnaW5SZXBsYWNlbWVudD4gUXVpY2tUaW1lUGx1Z2luUmVwbGFjZW1lbnQ6OmNyZWF0ZShIVE1M
UGx1Z0luRWxlbWVudCYgcGx1Z2luLCBjb25zdCBWZWN0b3I8U3RyaW5nPiYgcGFyYW1OYW1lcywg
Y29uc3QgVmVjdG9yPFN0cmluZz4mIHBhcmFtVmFsdWVzKQoreworICAgIHJldHVybiBhZG9wdFJl
ZihuZXcgUXVpY2tUaW1lUGx1Z2luUmVwbGFjZW1lbnQocGx1Z2luLCBwYXJhbU5hbWVzLCBwYXJh
bVZhbHVlcykpOworfQorCitib29sIFF1aWNrVGltZVBsdWdpblJlcGxhY2VtZW50OjpzdXBwb3J0
c01pbWVUeXBlKGNvbnN0IFN0cmluZyYgbWltZVR5cGUpCit7CisgICAgc3RhdGljIGNvbnN0IGNo
YXIqIHR5cGVzW10gPSB7CisgICAgICAgICJhcHBsaWNhdGlvbi92bmQuYXBwbGUubXBlZ3VybCIs
ICJhcHBsaWNhdGlvbi94LW1wZWd1cmwiLCAiYXVkaW8vM2dwcCIsICJhdWRpby8zZ3BwMiIsICJh
dWRpby9hYWMiLCAiYXVkaW8vYWlmZiIsCisgICAgICAgICJhdWRpby9hbXIiLCAiYXVkaW8vYmFz
aWMiLCAiYXVkaW8vbXAzIiwgImF1ZGlvL21wNCIsICJhdWRpby9tcGVnIiwgImF1ZGlvL21wZWcz
IiwgImF1ZGlvL21wZWd1cmwiLCAiYXVkaW8vc2NwbHMiLAorICAgICAgICAiYXVkaW8vd2F2Iiwg
ImF1ZGlvL3gtYWFjIiwgImF1ZGlvL3gtYWlmZiIsICJhdWRpby94LWNhZiIsICJhdWRpby94LW00
YSIsICJhdWRpby94LW00YiIsICJhdWRpby94LW00cCIsCisgICAgICAgICJhdWRpby94LW00ciIs
ICJhdWRpby94LW1wMyIsICJhdWRpby94LW1wZWciLCAiYXVkaW8veC1tcGVnMyIsICJhdWRpby94
LW1wZWd1cmwiLCAiYXVkaW8veC1zY3BscyIsICJhdWRpby94LXdhdiIsCisgICAgICAgICJ2aWRl
by8zZ3BwIiwgInZpZGVvLzNncHAyIiwgInZpZGVvL21wNCIsICJ2aWRlby9xdWlja3RpbWUiLCAi
dmlkZW8veC1tNHYiCisgICAgfTsKKyAgICBERUZJTkVfU1RBVElDX0xPQ0FMKEhhc2hTZXQ8U3Ry
aW5nPiwgdHlwZUhhc2gsICgpKTsKKyAgICBpZiAoIXR5cGVIYXNoLnNpemUoKSkgeworICAgICAg
ICBmb3IgKHNpemVfdCBpID0gMDsgaSA8IFdURl9BUlJBWV9MRU5HVEgodHlwZXMpOyArK2kpCisg
ICAgICAgICAgICB0eXBlSGFzaC5hZGQodHlwZXNbaV0pOworICAgIH0KKworICAgIHJldHVybiB0
eXBlSGFzaC5jb250YWlucyhtaW1lVHlwZSk7Cit9CisKK2Jvb2wgUXVpY2tUaW1lUGx1Z2luUmVw
bGFjZW1lbnQ6OnN1cHBvcnRzRmlsZUV4dGVuc2lvbihjb25zdCBTdHJpbmcmIGV4dGVuc2lvbikK
K3sKKyAgICBzdGF0aWMgY29uc3QgY2hhciogZXh0ZW5zaW9uc1tdID0geworICAgICAgICAiM2cy
IiwgIjNncCIsICIzZ3AyIiwgIjNncHAiLCAiYWFjIiwgImFkdHMiLCAiYWlmIiwgImFpZmMiLCAi
YWlmZiIsICJBTVIiLCAiYXUiLCAiYndmIiwgImNhZiIsICJjZGRhIiwgIm0zdSIsCisgICAgICAg
ICJtM3U4IiwgIm00YSIsICJtNGIiLCAibTRwIiwgIm00ciIsICJtNHYiLCAibW92IiwgIm1wMyIs
ICJtcDMiLCAibXA0IiwgIm1wZWciLCAibXBnIiwgIm1xdiIsICJwbHMiLCAicXQiLAorICAgICAg
ICAic25kIiwgInN3YSIsICJ0cyIsICJ1bHciLCAid2F2IgorICAgIH07CisgICAgREVGSU5FX1NU
QVRJQ19MT0NBTChIYXNoU2V0PFN0cmluZz4sIGV4dGVuc2lvbkhhc2gsICgpKTsKKyAgICBpZiAo
IWV4dGVuc2lvbkhhc2guc2l6ZSgpKSB7CisgICAgICAgIGZvciAoc2l6ZV90IGkgPSAwOyBpIDwg
V1RGX0FSUkFZX0xFTkdUSChleHRlbnNpb25zKTsgKytpKQorICAgICAgICAgICAgZXh0ZW5zaW9u
SGFzaC5hZGQoZXh0ZW5zaW9uc1tpXSk7CisgICAgfQorCisgICAgcmV0dXJuIGV4dGVuc2lvbkhh
c2guY29udGFpbnMoZXh0ZW5zaW9uKTsKK30KKworUXVpY2tUaW1lUGx1Z2luUmVwbGFjZW1lbnQ6
OlF1aWNrVGltZVBsdWdpblJlcGxhY2VtZW50KEhUTUxQbHVnSW5FbGVtZW50JiBwbHVnaW4sIGNv
bnN0IFZlY3RvcjxTdHJpbmc+JiBwYXJhbU5hbWVzLCBjb25zdCBWZWN0b3I8U3RyaW5nPiYgcGFy
YW1WYWx1ZXMpCisgICAgOlBsdWdpblJlcGxhY2VtZW50KCkKKyAgICAsIG1fcGFyZW50RWxlbWVu
dCgmcGx1Z2luKQorICAgICwgbV9uYW1lcyhwYXJhbU5hbWVzKQorICAgICwgbV92YWx1ZXMocGFy
YW1WYWx1ZXMpCisgICAgLCBtX3NjcmlwdE9iamVjdChudWxscHRyKQoreworfQorCitRdWlja1Rp
bWVQbHVnaW5SZXBsYWNlbWVudDo6flF1aWNrVGltZVBsdWdpblJlcGxhY2VtZW50KCkKK3sKKyAg
ICBtX3BhcmVudEVsZW1lbnQgPSBudWxscHRyOworICAgIG1fc2NyaXB0T2JqZWN0ID0gbnVsbHB0
cjsKKyAgICBtX21lZGlhRWxlbWVudCA9IG51bGxwdHI7Cit9CisKK1JlbmRlckVsZW1lbnQqIFF1
aWNrVGltZVBsdWdpblJlcGxhY2VtZW50OjpjcmVhdGVSZW5kZXJlcihIVE1MUGx1Z0luRWxlbWVu
dCYgcGx1Z2luLCBQYXNzUmVmPFJlbmRlclN0eWxlPiBzdHlsZSkKK3sKKyAgICBBU1NFUlRfVU5V
U0VEKHBsdWdpbiwgbV9wYXJlbnRFbGVtZW50ID09ICZwbHVnaW4pOworCisgICAgaWYgKG1fbWVk
aWFFbGVtZW50KQorICAgICAgICByZXR1cm4gbV9tZWRpYUVsZW1lbnQtPmNyZWF0ZVJlbmRlcmVy
KHN0ZDo6bW92ZShzdHlsZSkpOworCisgICAgcmV0dXJuIDA7Cit9CisKK0RPTVdyYXBwZXJXb3Js
ZCYgUXVpY2tUaW1lUGx1Z2luUmVwbGFjZW1lbnQ6Omlzb2xhdGVkV29ybGQoKQoreworICAgIHN0
YXRpYyBET01XcmFwcGVyV29ybGQmIGlzb2xhdGVkV29ybGQgPSAqRE9NV3JhcHBlcldvcmxkOjpj
cmVhdGUoSlNET01XaW5kb3c6OmNvbW1vblZNKCkpLmxlYWtSZWYoKTsKKyAgICByZXR1cm4gaXNv
bGF0ZWRXb3JsZDsKK30KKworYm9vbCBRdWlja1RpbWVQbHVnaW5SZXBsYWNlbWVudDo6ZW5zdXJl
UmVwbGFjZW1lbnRTY3JpcHRJbmplY3RlZCgpCit7CisgICAgUGFnZSogcGFnZSA9IG1fcGFyZW50
RWxlbWVudC0+ZG9jdW1lbnQoKS5wYWdlKCk7CisgICAgaWYgKCFwYWdlKQorICAgICAgICByZXR1
cm4gZmFsc2U7CisgICAgCisgICAgRE9NV3JhcHBlcldvcmxkJiB3b3JsZCA9IGlzb2xhdGVkV29y
bGQoKTsKKyAgICBTY3JpcHRDb250cm9sbGVyJiBzY3JpcHRDb250cm9sbGVyID0gcGFnZS0+bWFp
bkZyYW1lKCkuc2NyaXB0KCk7CisgICAgSlNET01HbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCA9
IGpzQ2FzdDxKU0RPTUdsb2JhbE9iamVjdCo+KHNjcmlwdENvbnRyb2xsZXIuZ2xvYmFsT2JqZWN0
KHdvcmxkKSk7CisgICAgRXhlY1N0YXRlKiBleGVjID0gZ2xvYmFsT2JqZWN0LT5nbG9iYWxFeGVj
KCk7CisgICAgCisgICAgSlNWYWx1ZSByZXBsYWNlbWVudEZ1bmN0aW9uID0gZ2xvYmFsT2JqZWN0
LT5nZXQoZXhlYywgSWRlbnRpZmllcihleGVjLCAiY3JlYXRlUGx1Z2luUmVwbGFjZW1lbnQiKSk7
CisgICAgaWYgKHJlcGxhY2VtZW50RnVuY3Rpb24uaXNGdW5jdGlvbigpKQorICAgICAgICByZXR1
cm4gdHJ1ZTsKKyAgICAKKyAgICBzY3JpcHRDb250cm9sbGVyLmV2YWx1YXRlSW5Xb3JsZChTY3Jp
cHRTb3VyY2VDb2RlKHF1aWNrVGltZVBsdWdpblJlcGxhY2VtZW50U2NyaXB0KCkpLCB3b3JsZCk7
CisgICAgaWYgKGV4ZWMtPmhhZEV4Y2VwdGlvbigpKSB7CisgICAgICAgIGV4ZWMtPmNsZWFyRXhj
ZXB0aW9uKCk7CisgICAgICAgIHJldHVybiBmYWxzZTsKKyAgICB9CisgICAgCisgICAgcmV0dXJu
IHRydWU7Cit9CisKK2Jvb2wgUXVpY2tUaW1lUGx1Z2luUmVwbGFjZW1lbnQ6Omluc3RhbGxSZXBs
YWNlbWVudChTaGFkb3dSb290KiByb290KQoreworICAgIFBhZ2UqIHBhZ2UgPSBtX3BhcmVudEVs
ZW1lbnQtPmRvY3VtZW50KCkucGFnZSgpOworCisgICAgaWYgKCFlbnN1cmVSZXBsYWNlbWVudFNj
cmlwdEluamVjdGVkKCkpCisgICAgICAgIHJldHVybiBmYWxzZTsKKworICAgIERPTVdyYXBwZXJX
b3JsZCYgd29ybGQgPSBpc29sYXRlZFdvcmxkKCk7CisgICAgU2NyaXB0Q29udHJvbGxlciYgc2Ny
aXB0Q29udHJvbGxlciA9IHBhZ2UtPm1haW5GcmFtZSgpLnNjcmlwdCgpOworICAgIEpTRE9NR2xv
YmFsT2JqZWN0KiBnbG9iYWxPYmplY3QgPSBqc0Nhc3Q8SlNET01HbG9iYWxPYmplY3QqPihzY3Jp
cHRDb250cm9sbGVyLmdsb2JhbE9iamVjdCh3b3JsZCkpOworICAgIEV4ZWNTdGF0ZSogZXhlYyA9
IGdsb2JhbE9iamVjdC0+Z2xvYmFsRXhlYygpOworICAgIEpTTG9ja0hvbGRlciBsb2NrKGV4ZWMp
OworICAgIAorICAgIC8vIExvb2t1cCB0aGUgImNyZWF0ZVBsdWdpblJlcGxhY2VtZW50IiBmdW5j
dGlvbgorICAgIEpTVmFsdWUgcmVwbGFjZW1lbnRGdW5jdGlvbiA9IGdsb2JhbE9iamVjdC0+Z2V0
KGV4ZWMsIElkZW50aWZpZXIoZXhlYywgImNyZWF0ZVBsdWdpblJlcGxhY2VtZW50IikpOworICAg
IGlmIChyZXBsYWNlbWVudEZ1bmN0aW9uLmlzVW5kZWZpbmVkT3JOdWxsKCkpCisgICAgICAgIHJl
dHVybiBmYWxzZTsKKyAgICBKU09iamVjdCogcmVwbGFjZW1lbnRPYmplY3QgPSByZXBsYWNlbWVu
dEZ1bmN0aW9uLnRvT2JqZWN0KGV4ZWMpOworICAgIENhbGxEYXRhIGNhbGxEYXRhOworICAgIENh
bGxUeXBlIGNhbGxUeXBlID0gcmVwbGFjZW1lbnRPYmplY3QtPm1ldGhvZFRhYmxlKCktPmdldENh
bGxEYXRhKHJlcGxhY2VtZW50T2JqZWN0LCBjYWxsRGF0YSk7CisgICAgaWYgKGNhbGxUeXBlID09
IENhbGxUeXBlTm9uZSkKKyAgICAgICAgcmV0dXJuIGZhbHNlOworCisgICAgTWFya2VkQXJndW1l
bnRCdWZmZXIgYXJnTGlzdDsKKyAgICBhcmdMaXN0LmFwcGVuZCh0b0pTKGV4ZWMsIGdsb2JhbE9i
amVjdCwgcm9vdCkpOworICAgIGFyZ0xpc3QuYXBwZW5kKHRvSlMoZXhlYywgZ2xvYmFsT2JqZWN0
LCBtX3BhcmVudEVsZW1lbnQpKTsKKyAgICBhcmdMaXN0LmFwcGVuZCh0b0pTKGV4ZWMsIGdsb2Jh
bE9iamVjdCwgdGhpcykpOworICAgIGFyZ0xpc3QuYXBwZW5kKHRvSlM8U3RyaW5nPihleGVjLCBn
bG9iYWxPYmplY3QsIG1fbmFtZXMpKTsKKyAgICBhcmdMaXN0LmFwcGVuZCh0b0pTPFN0cmluZz4o
ZXhlYywgZ2xvYmFsT2JqZWN0LCBtX3ZhbHVlcykpOworICAgIEpTVmFsdWUgcmVwbGFjZW1lbnQg
PSBjYWxsKGV4ZWMsIHJlcGxhY2VtZW50T2JqZWN0LCBjYWxsVHlwZSwgY2FsbERhdGEsIGdsb2Jh
bE9iamVjdCwgYXJnTGlzdCk7CisgICAgaWYgKGV4ZWMtPmhhZEV4Y2VwdGlvbigpKSB7CisgICAg
ICAgIGV4ZWMtPmNsZWFyRXhjZXB0aW9uKCk7CisgICAgICAgIHJldHVybiBmYWxzZTsKKyAgICB9
CisKKyAgICAvLyBHZXQgdGhlIDx2aWRlbz4gY3JlYXRlZCB0byByZXBsYWNlIHRoZSBwbHVnLWlu
LgorICAgIEpTVmFsdWUgdmFsdWUgPSByZXBsYWNlbWVudC5nZXQoZXhlYywgSWRlbnRpZmllcihl
eGVjLCAidmlkZW8iKSk7CisgICAgaWYgKCFleGVjLT5oYWRFeGNlcHRpb24oKSAmJiAhdmFsdWUu
aXNVbmRlZmluZWRPck51bGwoKSkKKyAgICAgICAgbV9tZWRpYUVsZW1lbnQgPSB0b0hUTUxWaWRl
b0VsZW1lbnQodmFsdWUpOworCisgICAgaWYgKCFtX21lZGlhRWxlbWVudCkgeworICAgICAgICBl
eGVjLT5jbGVhckV4Y2VwdGlvbigpOworICAgICAgICByZXR1cm4gZmFsc2U7CisgICAgfQorCisg
ICAgLy8gR2V0IHRoZSBzY3JpcHRpbmcgaW50ZXJmYWNlLgorICAgIHZhbHVlID0gcmVwbGFjZW1l
bnQuZ2V0KGV4ZWMsIElkZW50aWZpZXIoZXhlYywgInNjcmlwdE9iamVjdCIpKTsKKyAgICBpZiAo
IWV4ZWMtPmhhZEV4Y2VwdGlvbigpICYmICF2YWx1ZS5pc1VuZGVmaW5lZE9yTnVsbCgpKQorICAg
ICAgICBtX3NjcmlwdE9iamVjdCA9IHZhbHVlLnRvT2JqZWN0KGV4ZWMpOworCisgICAgaWYgKCFt
X3NjcmlwdE9iamVjdCkgeworICAgICAgICBleGVjLT5jbGVhckV4Y2VwdGlvbigpOworICAgICAg
ICByZXR1cm4gZmFsc2U7CisgICAgfQorCisgICAgcmV0dXJuIHRydWU7Cit9CisKK3Vuc2lnbmVk
IGxvbmcgbG9uZyBRdWlja1RpbWVQbHVnaW5SZXBsYWNlbWVudDo6bW92aWVTaXplKCkgY29uc3QK
K3sKKyAgICBpZiAobV9tZWRpYUVsZW1lbnQpCisgICAgICAgIHJldHVybiBtX21lZGlhRWxlbWVu
dC0+ZmlsZVNpemUoKTsKKworICAgIHJldHVybiAwOworfQorCit2b2lkIFF1aWNrVGltZVBsdWdp
blJlcGxhY2VtZW50Ojpwb3N0RXZlbnQoY29uc3QgU3RyaW5nJiBldmVudE5hbWUpCit7CisgICAg
UmVmPEhUTUxQbHVnSW5FbGVtZW50PiBwcm90ZWN0KCptX3BhcmVudEVsZW1lbnQpOworICAgIFJl
ZlB0cjxFdmVudD4gZXZlbnQgPSBFdmVudDo6Y3JlYXRlKGV2ZW50TmFtZSwgZmFsc2UsIHRydWUp
OworICAgIG1fcGFyZW50RWxlbWVudC0+ZGlzcGF0Y2hFdmVudChldmVudC5nZXQoKSk7Cit9CisK
K30KKyNlbmRpZgpJbmRleDogU291cmNlL1dlYkNvcmUvTW9kdWxlcy9wbHVnaW5zL1F1aWNrVGlt
ZVBsdWdpblJlcGxhY2VtZW50LmNzcwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9Nb2R1
bGVzL3BsdWdpbnMvUXVpY2tUaW1lUGx1Z2luUmVwbGFjZW1lbnQuY3NzCShyZXZpc2lvbiAwKQor
KysgU291cmNlL1dlYkNvcmUvTW9kdWxlcy9wbHVnaW5zL1F1aWNrVGltZVBsdWdpblJlcGxhY2Vt
ZW50LmNzcwkod29ya2luZyBjb3B5KQpAQCAtMCwwICsxLDM0IEBACisvKgorICogQ29weXJpZ2h0
IChDKSAyMDEzIEFwcGxlIEluYy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0
cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRo
b3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9s
bG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Yg
c291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNl
LCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgor
ICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBh
Ym92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5k
IHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5k
L29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgor
ICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBDT01QVVRFUiwgSU5DLiBgYEFT
IElTJycgQU5EIEFOWQorICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElO
RywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKKyAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJD
SEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICogUFVSUE9TRSBBUkUg
RElTQ0xBSU1FRC4gIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIENPTVBVVEVSLCBJTkMuIE9SCisg
KiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURF
TlRBTCwgU1BFQ0lBTCwKKyAqIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJ
TkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFBST0ZJVFM7IE9SIEJVU0lORVNTIElO
VEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkKKyAqIE9GIExJQUJJ
TElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorICog
KElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9V
VCBPRiBUSEUgVVNFCisgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhF
IFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLiAKKyAqLworCitlbWJlZDo6LXdlYmtpdC1wbHVn
aW4tcmVwbGFjZW1lbnQsCitvYmplY3Q6Oi13ZWJraXQtcGx1Z2luLXJlcGxhY2VtZW50Cit7Cisg
ICAgcG9zaXRpb246IHJlbGF0aXZlOworICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsKKyAgICB3
aWR0aDogMTAwJTsKKyAgICBoZWlnaHQ6IDEwMCU7CisgICAgei1pbmRleDogMDsKK30KKwpJbmRl
eDogU291cmNlL1dlYkNvcmUvTW9kdWxlcy9wbHVnaW5zL1F1aWNrVGltZVBsdWdpblJlcGxhY2Vt
ZW50LmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvTW9kdWxlcy9wbHVnaW5zL1F1aWNr
VGltZVBsdWdpblJlcGxhY2VtZW50LmgJKHJldmlzaW9uIDApCisrKyBTb3VyY2UvV2ViQ29yZS9N
b2R1bGVzL3BsdWdpbnMvUXVpY2tUaW1lUGx1Z2luUmVwbGFjZW1lbnQuaAkod29ya2luZyBjb3B5
KQpAQCAtMCwwICsxLDc2IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDEzIEFwcGxlIEluYy4g
QWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNv
dXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwg
YXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICog
YXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFp
biB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRp
b25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMg
aW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAg
bm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFp
bWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHBy
b3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBS
T1ZJREVEIEJZIEFQUExFIENPTVBVVEVSLCBJTkMuIGBgQVMgSVMnJyBBTkQgQU5ZCisgKiBFWFBS
RVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8s
IFRIRQorICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVT
UyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiAgSU4gTk8gRVZF
TlQgU0hBTEwgQVBQTEUgQ09NUFVURVIsIElOQy4gT1IKKyAqIENPTlRSSUJVVE9SUyBCRSBMSUFC
TEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLAorICogRVhF
TVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1J
VEVEIFRPLAorICogUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsg
TE9TUyBPRiBVU0UsIERBVEEsIE9SCisgKiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJ
T04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZCisgKiBPRiBMSUFCSUxJVFksIFdI
RVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKKyAqIChJTkNMVURJ
TkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhF
IFVTRQorICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJ
TElUWSBPRiBTVUNIIERBTUFHRS4gCisgKi8KKworI2lmbmRlZiBRdWlja1RpbWVQbHVnaW5SZXBs
YWNlbWVudF9oCisjZGVmaW5lIFF1aWNrVGltZVBsdWdpblJlcGxhY2VtZW50X2gKKworI2luY2x1
ZGUgIlBsdWdpblJlcGxhY2VtZW50LmgiCisjaW5jbHVkZSAiU2NyaXB0U3RhdGUuaCIKKyNpbmNs
dWRlICJTY3JpcHRWYWx1ZS5oIgorI2luY2x1ZGUgPHd0Zi9SZWZDb3VudGVkLmg+CisjaW5jbHVk
ZSA8d3RmL3RleHQvV1RGU3RyaW5nLmg+CisKK25hbWVzcGFjZSBXZWJDb3JlIHsKKworY2xhc3Mg
SFRNTFBsdWdJbkVsZW1lbnQ7CitjbGFzcyBIVE1MVmlkZW9FbGVtZW50OworY2xhc3MgUmVuZGVy
RWxlbWVudDsKK2NsYXNzIFJlbmRlclN0eWxlOworY2xhc3MgU2hhZG93Um9vdDsKKworY2xhc3Mg
UXVpY2tUaW1lUGx1Z2luUmVwbGFjZW1lbnQgOiBwdWJsaWMgUGx1Z2luUmVwbGFjZW1lbnQgewor
cHVibGljOgorICAgIHN0YXRpYyB2b2lkIHJlZ2lzdGVyUGx1Z2luUmVwbGFjZW1lbnQoUGx1Z2lu
UmVwbGFjZW1lbnRSZWdpc3RyYXIpOworICAgIHN0YXRpYyBib29sIHN1cHBvcnRzTWltZVR5cGUo
Y29uc3QgU3RyaW5nJik7CisgICAgc3RhdGljIGJvb2wgc3VwcG9ydHNGaWxlRXh0ZW5zaW9uKGNv
bnN0IFN0cmluZyYpOworICAgIAorICAgIHN0YXRpYyBQYXNzUmVmUHRyPFBsdWdpblJlcGxhY2Vt
ZW50PiBjcmVhdGUoSFRNTFBsdWdJbkVsZW1lbnQmLCBjb25zdCBWZWN0b3I8U3RyaW5nPiYgcGFy
YW1OYW1lcywgY29uc3QgVmVjdG9yPFN0cmluZz4mIHBhcmFtVmFsdWVzKTsKKyAgICB+UXVpY2tU
aW1lUGx1Z2luUmVwbGFjZW1lbnQoKTsKKworICAgIHZpcnR1YWwgYm9vbCBpbnN0YWxsUmVwbGFj
ZW1lbnQoU2hhZG93Um9vdCopIE9WRVJSSURFOworICAgIHZpcnR1YWwgSlNDOjpKU09iamVjdCog
c2NyaXB0T2JqZWN0KCkgT1ZFUlJJREUgeyByZXR1cm4gbV9zY3JpcHRPYmplY3Q7IH0KKworICAg
IHZpcnR1YWwgYm9vbCB3aWxsQ3JlYXRlUmVuZGVyZXIoKSBPVkVSUklERSB7IHJldHVybiBtX21l
ZGlhRWxlbWVudDsgfQorICAgIHZpcnR1YWwgUmVuZGVyRWxlbWVudCogY3JlYXRlUmVuZGVyZXIo
SFRNTFBsdWdJbkVsZW1lbnQmLCBQYXNzUmVmPFJlbmRlclN0eWxlPikgT1ZFUlJJREU7CisKKyAg
ICB1bnNpZ25lZCBsb25nIGxvbmcgbW92aWVTaXplKCkgY29uc3Q7CisgICAgdm9pZCBwb3N0RXZl
bnQoY29uc3QgU3RyaW5nJik7CisKK3ByaXZhdGU6CisgICAgUXVpY2tUaW1lUGx1Z2luUmVwbGFj
ZW1lbnQoSFRNTFBsdWdJbkVsZW1lbnQmLCBjb25zdCBWZWN0b3I8U3RyaW5nPiYgcGFyYW1OYW1l
cywgY29uc3QgVmVjdG9yPFN0cmluZz4mIHBhcmFtVmFsdWVzKTsKKworICAgIGJvb2wgZW5zdXJl
UmVwbGFjZW1lbnRTY3JpcHRJbmplY3RlZCgpOworICAgIERPTVdyYXBwZXJXb3JsZCYgaXNvbGF0
ZWRXb3JsZCgpOworCisgICAgSFRNTFBsdWdJbkVsZW1lbnQqIG1fcGFyZW50RWxlbWVudDsKKyAg
ICBSZWZQdHI8SFRNTFZpZGVvRWxlbWVudD4gbV9tZWRpYUVsZW1lbnQ7CisgICAgY29uc3QgVmVj
dG9yPFN0cmluZz4gbV9uYW1lczsKKyAgICBjb25zdCBWZWN0b3I8U3RyaW5nPiBtX3ZhbHVlczsK
KyAgICBKU0M6OkpTT2JqZWN0KiBtX3NjcmlwdE9iamVjdDsKK307CisKK30KKworI2VuZGlmCklu
ZGV4OiBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3BsdWdpbnMvUXVpY2tUaW1lUGx1Z2luUmVwbGFj
ZW1lbnQuaWRsCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvcGx1Z2lucy9R
dWlja1RpbWVQbHVnaW5SZXBsYWNlbWVudC5pZGwJKHJldmlzaW9uIDApCisrKyBTb3VyY2UvV2Vi
Q29yZS9Nb2R1bGVzL3BsdWdpbnMvUXVpY2tUaW1lUGx1Z2luUmVwbGFjZW1lbnQuaWRsCSh3b3Jr
aW5nIGNvcHkpCkBAIC0wLDAgKzEsMzMgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTMgQXBw
bGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1
c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZp
Y2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRp
b25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11
c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9m
IGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJp
YnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0
CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5n
IGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRl
cmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdB
UkUgSVMgUFJPVklERUQgQlkgQVBQTEUgQ09NUFVURVIsIElOQy4gYGBBUyBJUycnIEFORCBBTlkK
KyAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElN
SVRFRCBUTywgVEhFCisgKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFO
RCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuICBJ
TiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBDT01QVVRFUiwgSU5DLiBPUgorICogQ09OVFJJQlVUT1JT
IEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUws
CisgKiBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQg
Tk9UIExJTUlURUQgVE8sCisgKiBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNF
UlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IKKyAqIFBST0ZJVFM7IE9SIEJVU0lORVNTIElO
VEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkKKyAqIE9GIExJQUJJ
TElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorICog
KElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9V
VCBPRiBUSEUgVVNFCisgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhF
IFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLiAKKyAqLworCitbCisgICAgTm9JbnRlcmZhY2VP
YmplY3QsCisgICAgT3BlcmF0aW9uc05vdERlbGV0YWJsZSwKKyAgICBKU0dlbmVyYXRlVG9KU09i
amVjdCwKK10gaW50ZXJmYWNlIFF1aWNrVGltZVBsdWdpblJlcGxhY2VtZW50IHsKKyAgICByZWFk
b25seSBhdHRyaWJ1dGUgdW5zaWduZWQgbG9uZyBsb25nIG1vdmllU2l6ZTsKKyAgICB2b2lkIHBv
c3RFdmVudChET01TdHJpbmcgZXZlbnROYW1lKTsKK307CkluZGV4OiBTb3VyY2UvV2ViQ29yZS9N
b2R1bGVzL3BsdWdpbnMvUXVpY2tUaW1lUGx1Z2luUmVwbGFjZW1lbnQuanMKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gU291cmNlL1dlYkNvcmUvTW9kdWxlcy9wbHVnaW5zL1F1aWNrVGltZVBsdWdpblJlcGxhY2Vt
ZW50LmpzCShyZXZpc2lvbiAwKQorKysgU291cmNlL1dlYkNvcmUvTW9kdWxlcy9wbHVnaW5zL1F1
aWNrVGltZVBsdWdpblJlcGxhY2VtZW50LmpzCSh3b3JraW5nIGNvcHkpCkBAIC0wLDAgKzEsMzI1
IEBACisKK2Z1bmN0aW9uIGNyZWF0ZVBsdWdpblJlcGxhY2VtZW50KHJvb3QsIHBhcmVudCwgaG9z
dCwgYXR0cmlidXRlTmFtZXMsIGF0dHJpYnV0ZVZhbHVlcykKK3sKKyAgICByZXR1cm4gbmV3IFJl
cGxhY2VtZW50KHJvb3QsIHBhcmVudCwgaG9zdCwgYXR0cmlidXRlTmFtZXMsIGF0dHJpYnV0ZVZh
bHVlcyk7Cit9OworCitmdW5jdGlvbiBSZXBsYWNlbWVudChyb290LCBwYXJlbnQsIGhvc3QsIGF0
dHJpYnV0ZU5hbWVzLCBhdHRyaWJ1dGVWYWx1ZXMpCit7CisgICAgdGhpcy5yb290ID0gcm9vdDsK
KyAgICB0aGlzLnBhcmVudCA9IHBhcmVudDsKKyAgICB0aGlzLmhvc3QgPSBob3N0OworICAgIHRo
aXMubGlzdGVuZXJzID0ge307CisgICAgdGhpcy5zY3JpcHRPYmplY3QgPSB7fTsKKworICAgIHRo
aXMuYXV0b0V4aXRGdWxsU2NyZWVuID0gdHJ1ZTsKKyAgICB0aGlzLnBvc3RFdmVudHMgPSBmYWxz
ZTsKKyAgICB0aGlzLmhlaWdodCA9IDA7CisgICAgdGhpcy53aWR0aCA9IDA7CisgICAgdGhpcy5z
cmMgPSAnJzsKKyAgICB0aGlzLmF1dG9ocmVmID0gZmFsc2U7CisgICAgdGhpcy5ocmVmID0gJyc7
CisgICAgdGhpcy5xdHNyYyA9ICcnOworICAgIHRoaXMudGFyZ2V0ID0gJyc7CisKKyAgICB0aGlz
LmNyZWF0ZVZpZGVvRWxlbWVudChhdHRyaWJ1dGVOYW1lcywgYXR0cmlidXRlVmFsdWVzKTsKKyAg
ICB0aGlzLmNyZWF0ZVNjcmlwdEludGVyZmFjZSgpOworfTsKKworUmVwbGFjZW1lbnQucHJvdG90
eXBlID0geworCisgICAgSGFuZGxlZFZpZGVvRXZlbnRzOiB7CisgICAgICAgIGxvYWRzdGFydDog
J2hhbmRsZUxvYWRTdGFydCcsCisgICAgICAgIGVycm9yOiAnaGFuZGxlRXJyb3InLAorICAgICAg
ICBsb2FkZWRtZXRhZGF0YTogJ2hhbmRsZUxvYWRlZE1ldGFEYXRhJywKKyAgICAgICAgY2FucGxh
eTogJ3F0X2NhbnBsYXknLAorICAgICAgICBjYW5wbGF5dGhyb3VnaDogJ3F0X2NhbnBsYXl0aHJv
dWdoJywKKyAgICAgICAgcGxheTogJ3F0X3BsYXknLAorICAgICAgICBwYXVzZTogJ3F0X3BhdXNl
JywKKyAgICAgICAgZW5kZWQ6ICdoYW5kbGVFbmRlZCcsCisgICAgICAgIHdlYmtpdGZ1bGxzY3Jl
ZW5jaGFuZ2U6ICdoYW5kbGVGdWxsc2NyZWVuQ2hhbmdlJywKKyAgICB9LAorCisgICAgQXR0cmli
dXRlTWFwOiB7CisgICAgICAgIGF1dG9leGl0ZnVsbHNjcmVlbjogJ2F1dG9FeGl0RnVsbFNjcmVl
bicsCisgICAgICAgIHBvc3Rkb21ldmVudHM6ICdwb3N0RXZlbnRzJywKKyAgICAgICAgaGVpZ2h0
OiAnaGVpZ2h0JywKKyAgICAgICAgd2lkdGg6ICd3aWR0aCcsCisgICAgICAgIHNyYzogJ3NyYycs
CisgICAgICAgIGFpcnBsYXk6ICd4LXdlYmtpdC1haXJwbGF5PScsCisgICAgICAgIGhyZWY6ICdo
cmVmJywKKyAgICAgICAgdGFyZ2V0OiAndGFyZ2V0JywKKyAgICB9LAorICAgIAorICAgIE1ldGhv
ZE1hcDogeworICAgICAgICBTZXRVUkwgOiAnc2V0VVJMJywKKyAgICAgICAgR2V0VVJMIDogJ3Vy
bCcsCisgICAgICAgIFBsYXkgOiAncGxheScsCisgICAgICAgIFN0b3AgOiAncGF1c2UnLAorICAg
ICAgICBHZXRSYXRlIDogJ3JhdGUnLAorICAgICAgICBTZXRSYXRlIDogJ3NldFJhdGUnLAorICAg
ICAgICBJc0Z1bGxTY3JlZW4gOiAnaXNGdWxsU2NyZWVuJywKKyAgICAgICAgRXhpdEZ1bGxTY3Jl
ZW4gOiAnZXhpdEZ1bGxTY3JlZW4nLAorICAgICAgICBHZXRQbHVnaW5TdGF0dXMgOiAncGx1Z2lu
U3RhdHVzJywKKyAgICAgICAgR2V0VGltZSA6ICdjdXJyZW50VGltZScsCisgICAgICAgIFNldFRp
bWUgOiAnc2V0Q3VycmVudFRpbWUnLAorICAgICAgICBTZWVrVG9EYXRlIDogJ3NlZWtUb0RhdGUn
LAorICAgICAgICBHZXREYXRlIDogJ2RhdGUnLAorICAgICAgICBHZXREdXJhdGlvbiA6ICdkdXJh
dGlvbicsCisgICAgICAgIEdldFRpbWVTY2FsZSA6ICd0aW1lU2NhbGUnLAorICAgICAgICBHZXRN
YXhUaW1lTG9hZGVkIDogJ21heFRpbWVMb2FkZWQnLAorICAgICAgICBHZXRNYXhCeXRlc0xvYWRl
ZCA6ICdtYXhCeXRlc0xvYWRlZCcsCisgICAgICAgIEdldE1vdmllU2l6ZSA6ICdtb3ZpZVNpemUn
LAorICAgICAgICBHZXRUaW1lZE1ldGFkYXRhVXBkYXRlcyA6ICd0aW1lZE1ldGFkYXRhVXBkYXRl
cycsCisgICAgICAgIEdldEFjY2Vzc0xvZyA6ICdhY2Nlc3NMb2cnLAorICAgICAgICBHZXRFcnJv
ckxvZyA6ICdlcnJvckxvZycsCisgICAgfSwKKworICAgIFRpbWVTY2FsZTogMzAwMDAsCisKKyAg
ICBjcmVhdGVWaWRlb0VsZW1lbnQ6IGZ1bmN0aW9uKGF0dHJpYnV0ZU5hbWVzLCBhdHRyaWJ1dGVW
YWx1ZXMpCisgICAgeworICAgICAgICB2YXIgdmlkZW8gPSB0aGlzLnZpZGVvID0gZG9jdW1lbnQu
Y3JlYXRlRWxlbWVudCgndmlkZW8nKTsKKworICAgICAgICBmb3IgKG5hbWUgaW4gdGhpcy5IYW5k
bGVkVmlkZW9FdmVudHMpCisgICAgICAgICAgICB2aWRlby5hZGRFdmVudExpc3RlbmVyKG5hbWUs
IHRoaXMsIGZhbHNlKTsKKyAgICAgICAgCisgICAgICAgIGZvciAoaSA9IDA7IGkgPCBhdHRyaWJ1
dGVOYW1lcy5sZW5ndGg7IGkrKykgeworICAgICAgICAgICAgdmFyIHByb3BlcnR5ID0gdGhpcy5B
dHRyaWJ1dGVNYXBbYXR0cmlidXRlTmFtZXNbaV1dOworICAgICAgICAgICAgaWYgKHRoaXNbcHJv
cGVydHldICE9IHVuZGVmaW5lZCkKKyAgICAgICAgICAgICAgICB0aGlzW3Byb3BlcnR5XSA9IGF0
dHJpYnV0ZVZhbHVlc1tpXTsKKyAgICAgICAgfQorCisgICAgICAgIHZpZGVvLnNldEF0dHJpYnV0
ZSgncHNldWRvJywgJy13ZWJraXQtcGx1Z2luLXJlcGxhY2VtZW50Jyk7CisgICAgICAgIHZpZGVv
LnNldEF0dHJpYnV0ZSgnY29udHJvbHMnLCAnY29udHJvbHMnKTsKKyAgICAgICAgdGhpcy5zZXRT
dGF0dXMoJ1dhaXRpbmcnKTsKKworICAgICAgICB2YXIgc3JjID0gdGhpcy5zcmM7CisgICAgICAg
IGlmICh0aGlzLmhyZWYgJiYgdGhpcy50YXJnZXQpIHsKKyAgICAgICAgICAgIHNyYyA9IHRoaXMu
cmVzb2x2ZVJlbGF0aXZlVG9VcmwodGhpcy5ocmVmLCB0aGlzLnNyYyk7CisgICAgICAgICAgICB2
aWRlby5wb3N0ZXIgPSB0aGlzLnNyYzsKKyAgICAgICAgICAgIHZpZGVvLnNldEF0dHJpYnV0ZSgn
cHJlbG9hZCcsICdub25lJyk7CisgICAgICAgIH0KKyAgICAgICAgCisgICAgICAgIGlmIChzcmMu
bGVuZ3RoKQorICAgICAgICAgICAgdGhpcy5zZXRVUkwoc3JjKTsKKworICAgICAgICB0aGlzLnJv
b3QuYXBwZW5kQ2hpbGQodmlkZW8pOworICAgIH0sCisKKyAgICByZXNvbHZlUmVsYXRpdmVUb1Vy
bDogZnVuY3Rpb24odXJsLCBiYXNlVXJsKQorICAgIHsKKyAgICAgICAgaWYgKHVybC5pbmRleE9m
KCc6Ly8nKSAhPSAtMSkKKyAgICAgICAgICAgIHJldHVybiB1cmw7CisgICAgICAgIGlmIChiYXNl
VXJsLmluZGV4T2YoJzovLycpID09IC0xKQorICAgICAgICAgICAgYmFzZVVybCA9IHRoaXMucmVz
b2x2ZVJlbGF0aXZlVG9VcmwoYmFzZVVybCwgZG9jdW1lbnQuYmFzZVVSSSk7CisKKyAgICAgICAg
dmFyIGJhc2UgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJiYXNlIik7CisgICAgICAgIGJhc2Uu
aHJlZiA9IGJhc2VVcmw7CisgICAgICAgIGRvY3VtZW50LmhlYWQuYXBwZW5kQ2hpbGQoYmFzZSk7
CisKKyAgICAgICAgdmFyIHJlc29sdmVyID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnYScpOwor
ICAgICAgICByZXNvbHZlci5ocmVmID0gdXJsOworICAgICAgICB1cmwgPSByZXNvbHZlci5ocmVm
OworCisgICAgICAgIGRvY3VtZW50LmhlYWQucmVtb3ZlQ2hpbGQoYmFzZSk7CisgICAgICAgIGJh
c2UgPSBudWxsOworCisgICAgICAgIHJldHVybiB1cmw7CisgICAgfSwKKyAKKyAgICBjcmVhdGVT
Y3JpcHRJbnRlcmZhY2U6IGZ1bmN0aW9uKCkKKyAgICB7CisgICAgICAgIGZvciAobmFtZSBpbiB0
aGlzLk1ldGhvZE1hcCkgeworICAgICAgICAgICAgdmFyIG1ldGhvZE5hbWUgPSB0aGlzLk1ldGhv
ZE1hcFtuYW1lXTsKKyAgICAgICAgICAgIHRoaXMuc2NyaXB0T2JqZWN0W25hbWVdID0gdGhpc1tt
ZXRob2ROYW1lXS5iaW5kKHRoaXMpOworICAgICAgICB9CisgICAgfSwKKworICAgIGhhbmRsZUV2
ZW50OiBmdW5jdGlvbihldmVudCkKKyAgICB7CisgICAgICAgIGlmIChldmVudC50YXJnZXQgIT09
IHRoaXMudmlkZW8pCisgICAgICAgICAgICByZXR1cm47CisKKyAgICAgICAgdHJ5IHsKKyAgICAg
ICAgICAgIHZhciBldmVudERhdGEgPSB0aGlzLkhhbmRsZWRWaWRlb0V2ZW50c1tldmVudC50eXBl
XTsKKyAgICAgICAgICAgIGlmICghZXZlbnREYXRhKQorICAgICAgICAgICAgICAgIHJldHVybjsK
KworICAgICAgICAgICAgaWYgKHRoaXNbZXZlbnREYXRhXSAmJiB0aGlzW2V2ZW50RGF0YV0gaW5z
dGFuY2VvZiBGdW5jdGlvbikKKyAgICAgICAgICAgICAgICB0aGlzW2V2ZW50RGF0YV0uY2FsbCh0
aGlzLCBldmVudCk7CisgICAgICAgICAgICBlbHNlCisgICAgICAgICAgICAgICAgdGhpcy5wb3N0
RXZlbnQoZXZlbnREYXRhKTsKKyAgICAgICAgfSBjYXRjaChlKSB7CisgICAgICAgICAgICBpZiAo
d2luZG93LmNvbnNvbGUpCisgICAgICAgICAgICAgICAgY29uc29sZS5lcnJvcihlKTsKKyAgICAg
ICAgfQorICAgIH0sCisKKyAgICBwb3N0RXZlbnQ6IGZ1bmN0aW9uKGV2ZW50TmFtZSkKKyAgICB7
CisgICAgICAgIHRyeSB7CisgICAgICAgICAgICBpZiAodGhpcy5wb3N0RXZlbnRzKQorICAgICAg
ICAgICAgICAgIHRoaXMuaG9zdC5wb3N0RXZlbnQoZXZlbnROYW1lKTsKKyAgICAgICAgfSBjYXRj
aChlKSB7IH0KKyAgICB9LAorCisgICAgc2V0U3RhdHVzOiBmdW5jdGlvbihzdGF0dXMpCisgICAg
eworICAgICAgICB0aGlzLnN0YXR1cyA9IHN0YXR1czsKKyAgICB9LAorCisgICAgaGFuZGxlTG9h
ZGVkTWV0YURhdGE6IGZ1bmN0aW9uKGV2ZW50KQorICAgIHsKKyAgICAgICAgdGhpcy5zZXRTdGF0
dXMoJ1BsYXlhYmxlJyk7CisgICAgICAgIHRoaXMucG9zdEV2ZW50KCdxdF92YWxpZGF0ZWQnKTsK
KyAgICAgICAgdGhpcy5wb3N0RXZlbnQoJ3F0X2xvYWRlZGZpcnN0ZnJhbWUnKTsKKyAgICAgICAg
dGhpcy5wb3N0RXZlbnQoJ3F0X2xvYWRlZG1ldGFkYXRhJyk7CisgICAgfSwKKworICAgIGhhbmRs
ZUZ1bGxzY3JlZW5DaGFuZ2U6IGZ1bmN0aW9uKGV2ZW50KQorICAgIHsKKyAgICAgICAgdGhpcy5w
b3N0RXZlbnQodGhpcy5pc0Z1bGxTY3JlZW4oKSA/ICdxdF9lbnRlcmZ1bGxzY3JlZW4nIDogJ3F0
X2V4aXRmdWxsc2NyZWVuJyk7CisgICAgfSwKKworICAgIGhhbmRsZUVycm9yOiBmdW5jdGlvbihl
dmVudCkKKyAgICB7CisgICAgICAgIHRoaXMuc2V0U3RhdHVzKCdFcnJvcicpOworICAgICAgICB0
aGlzLnBvc3RFdmVudCgncXRfZXJyb3InKTsKKyAgICB9LAorCisgICAgaGFuZGxlTG9hZFN0YXJ0
OmZ1bmN0aW9uKGV2ZW50KQorICAgIHsKKyAgICAgICAgaWYgKHRoaXMudmlkZW8ucG9zdGVyKQor
ICAgICAgICAgICAgdGhpcy5zZXRTdGF0dXMoJ1dhaXRpbmcnKTsKKyAgICAgICAgZWxzZQorICAg
ICAgICAgICAgdGhpcy5zZXRTdGF0dXMoJ0xvYWRpbmcnKTsKKyAgICAgICAgdGhpcy5wb3N0RXZl
bnQoJ3F0X2JlZ2luJyk7CisgICAgfSwKKworICAgIGhhbmRsZUVuZGVkOiBmdW5jdGlvbihldmVu
dCkKKyAgICB7CisgICAgICAgIHRoaXMucG9zdEV2ZW50KCdxdF9lbmRlZCcpOworICAgICAgICBp
ZiAodGhpcy5pc0Z1bGxTY3JlZW4oKSAmJiB0aGlzLmF1dG9FeGl0RnVsbFNjcmVlbikKKyAgICAg
ICAgICAgIGRvY3VtZW50LndlYmtpdEV4aXRGdWxsc2NyZWVuKCk7CisgICAgfSwKKworICAgIGlz
RnVsbFNjcmVlbjogZnVuY3Rpb24oKQorICAgIHsKKyAgICAgICAgcmV0dXJuIGRvY3VtZW50Lndl
YmtpdEN1cnJlbnRGdWxsU2NyZWVuRWxlbWVudCA9PT0gdGhpcy52aWRlbzsKKyAgICB9LAorCisg
ICAgc2V0VVJMOiBmdW5jdGlvbih1cmwpCisgICAgeworICAgICAgICB0aGlzLnNldFN0YXR1cygn
VmFsaWRhdGluZycpOworICAgICAgICB0aGlzLnZpZGVvLnNyYyA9IHVybDsKKyAgICB9LAorICAg
IAorICAgIHVybDogZnVuY3Rpb24oKQorICAgIHsKKyAgICAgICAgcmV0dXJuIHRoaXMudmlkZW8u
Y3VycmVudFNyYzsKKyAgICB9LAorICAgIAorICAgIHBsYXk6IGZ1bmN0aW9uKCkKKyAgICB7Cisg
ICAgICAgIHRoaXMudmlkZW8ucGxheSgpOworICAgIH0sCisgICAgCisgICAgcGF1c2U6IGZ1bmN0
aW9uKCkKKyAgICB7CisgICAgICAgIHRoaXMudmlkZW8ucGxheWJhY2tSYXRlID0gMDsKKyAgICAg
ICAgdGhpcy52aWRlby5wYXVzZSgpOworICAgIH0sCisgICAgCisgICAgcmF0ZTogZnVuY3Rpb24o
KQorICAgIHsKKyAgICAgICAgcmV0dXJuIHRoaXMudmlkZW8ucGF1c2VkID8gMCA6IDE7CisgICAg
fSwKKyAgICAKKyAgICBzZXRSYXRlOiBmdW5jdGlvbihyYXRlKQorICAgIHsKKyAgICAgICAgaWYg
KHJhdGUpCisgICAgICAgICAgICB0aGlzLnZpZGVvLnBsYXkoKTsKKyAgICAgICAgZWxzZQorICAg
ICAgICAgICAgdGhpcy52aWRlby5wYXVzZSgpOworICAgIH0sCisgICAgCisgICAgZXhpdEZ1bGxT
Y3JlZW46IGZ1bmN0aW9uKCkKKyAgICB7CisgICAgICAgIGRvY3VtZW50LndlYmtpdEV4aXRGdWxs
c2NyZWVuKCk7CisgICAgfSwKKyAgICAKKyAgICBwbHVnaW5TdGF0dXM6IGZ1bmN0aW9uKCkKKyAg
ICB7CisgICAgICAgIHJldHVybiB0aGlzLnN0YXR1czsKKyAgICB9LAorCisgICAgY3VycmVudFRp
bWU6IGZ1bmN0aW9uKCkKKyAgICB7CisgICAgICAgIHJldHVybiB0aGlzLnZpZGVvLmN1cnJlbnRU
aW1lICogdGhpcy5UaW1lU2NhbGU7CisgICAgfSwKKworICAgIHNldEN1cnJlbnRUaW1lOiBmdW5j
dGlvbih0aW1lKQorICAgIHsKKyAgICAgICAgdGhpcy52aWRlby5jdXJyZW50VGltZSA9IHRpbWUg
LyB0aGlzLlRpbWVTY2FsZQorICAgIH0sCisKKyAgICBzZWVrVG9EYXRlOiBmdW5jdGlvbigpCisg
ICAgeworICAgICAgICAvLyBGSVhNRTogbm90IGltcGxlbWVudGVkIHlldC4KKyAgICB9LAorICAg
IAorICAgIGRhdGU6IGZ1bmN0aW9uKCkKKyAgICB7CisgICAgICAgIHJldHVybiBuZXcgRGF0ZSgp
OworICAgIH0sCisgICAgCisgICAgZHVyYXRpb246IGZ1bmN0aW9uKCkKKyAgICB7CisgICAgICAg
IHJldHVybiB0aGlzLnZpZGVvLmR1cmF0aW9uICogdGhpcy5UaW1lU2NhbGU7CisgICAgfSwKKyAg
ICAKKyAgICB0aW1lU2NhbGU6IGZ1bmN0aW9uKCkKKyAgICB7CisgICAgICAgIHJldHVybiAzMDAw
MDsKKyAgICB9LAorICAgIAorICAgIG1heFRpbWVMb2FkZWQ6IGZ1bmN0aW9uKCkKKyAgICB7Cisg
ICAgICAgIHJldHVybiB0aGlzLnZpZGVvLmR1cmF0aW9uICogdGhpcy5UaW1lU2NhbGU7CisgICAg
fSwKKyAgICAKKyAgICBtYXhCeXRlc0xvYWRlZDogZnVuY3Rpb24oKQorICAgIHsKKyAgICAgICAg
dmFyIHBlcmNlbnRMb2FkZWQgPSB0aGlzLnZpZGVvLmJ1ZmZlcmVkLmVuZCgwKSAvIHRoaXMudmlk
ZW8uZHVyYXRpb247CisgICAgICAgIHJldHVybiBwZXJjZW50TG9hZGVkICogdGhpcy5tb3ZpZVNp
emUoKTsKKyAgICB9LAorICAgIAorICAgIG1vdmllU2l6ZTogZnVuY3Rpb24oKQorICAgIHsKKyAg
ICAgICAgdHJ5IHsKKyAgICAgICAgICAgIHJldHVybiB0aGlzLmhvc3QubW92aWVTaXplOworICAg
ICAgICB9IGNhdGNoKGUpIHsgfQorCisgICAgICAgIHJldHVybiAwOworICAgIH0sCisgICAgCisg
ICAgdGltZWRNZXRhZGF0YVVwZGF0ZXM6IGZ1bmN0aW9uKCkKKyAgICB7CisgICAgICAgIC8vIEZJ
WE1FOiBub3QgaW1wbGVtZW50ZWQgeWV0LgorICAgICAgICByZXR1cm4gbnVsbDsKKyAgICB9LAor
ICAgIAorICAgIGFjY2Vzc0xvZzogZnVuY3Rpb24oKQorICAgIHsKKyAgICAgICAgLy8gRklYTUU6
IG5vdCBpbXBsZW1lbnRlZCB5ZXQuCisgICAgICAgIHJldHVybiBudWxsOworICAgIH0sCisgICAg
CisgICAgZXJyb3JMb2c6IGZ1bmN0aW9uKCkKKyAgICB7CisgICAgICAgIC8vIEZJWE1FOiBub3Qg
aW1wbGVtZW50ZWQgeWV0LgorICAgICAgICByZXR1cm4gbnVsbDsKKyAgICB9LAorfTsKKwpJbmRl
eDogU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJv
agkocmV2aXNpb24gMTU5NzM2KQorKysgU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ov
cHJvamVjdC5wYnhwcm9qCSh3b3JraW5nIGNvcHkpCkBAIC0xNDYsNiArMTQ2LDkgQEAKIAkJMDcy
NzdFNTMxN0QwMThDQzAwMTU1MzREIC8qIEpTTWVkaWFTdHJlYW1UcmFjay5oIGluIEhlYWRlcnMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMDcyNzdFNDcxN0QwMThDQzAwMTU1
MzREIC8qIEpTTWVkaWFTdHJlYW1UcmFjay5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0g
KFByaXZhdGUsICk7IH07IH07CiAJCTA3Mjc3RTU0MTdEMDE4Q0MwMDE1NTM0RCAvKiBKU01lZGlh
U3RyZWFtVHJhY2tFdmVudC5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSAwNzI3N0U0ODE3RDAxOENDMDAxNTUzNEQgLyogSlNNZWRpYVN0cmVhbVRyYWNr
RXZlbnQuY3BwICovOyB9OwogCQkwNzI3N0U1NTE3RDAxOENDMDAxNTUzNEQgLyogSlNNZWRpYVN0
cmVhbVRyYWNrRXZlbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IDA3Mjc3RTQ5MTdEMDE4Q0MwMDE1NTM0RCAvKiBKU01lZGlhU3RyZWFtVHJhY2tFdmVu
dC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTA3
MkFFMUU1MTgzQzA3NDEwMDBBNTk4OCAvKiBQbHVnaW5SZXBsYWNlbWVudC5oIGluIEhlYWRlcnMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMDcyQUUxREYxODNDMDc0MTAwMEE1
OTg4IC8qIFBsdWdpblJlcGxhY2VtZW50LmggKi87IH07CisJCTA3MkFFMUU2MTgzQzA3NDEwMDBB
NTk4OCAvKiBRdWlja1RpbWVQbHVnaW5SZXBsYWNlbWVudC5jcHAgaW4gU291cmNlcyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAwNzJBRTFFMDE4M0MwNzQxMDAwQTU5ODggLyog
UXVpY2tUaW1lUGx1Z2luUmVwbGFjZW1lbnQuY3BwICovOyB9OworCQkwNzJBRTFFODE4M0MwNzQx
MDAwQTU5ODggLyogUXVpY2tUaW1lUGx1Z2luUmVwbGFjZW1lbnQuaCBpbiBIZWFkZXJzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDA3MkFFMUUyMTgzQzA3NDEwMDBBNTk4OCAv
KiBRdWlja1RpbWVQbHVnaW5SZXBsYWNlbWVudC5oICovOyB9OwogCQkwNzJDOEIxMTEzMUM1MTg2
MDBBNEZDRTkgLyogTWVkaWFQbGF5ZXJQcml2YXRlQVZGb3VuZGF0aW9uLmNwcCBpbiBTb3VyY2Vz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDA3NkYwRDA5MTJCODE5MjcwMEMy
NkFBNCAvKiBNZWRpYVBsYXllclByaXZhdGVBVkZvdW5kYXRpb24uY3BwICovOyB9OwogCQkwNzJD
QTg2MTE2Q0I0REMzMDA4QUUxMzEgLyogQ2FwdGlvblVzZXJQcmVmZXJlbmNlcy5jcHAgaW4gU291
cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAwNzJDQTg2MDE2Q0I0REMz
MDA4QUUxMzEgLyogQ2FwdGlvblVzZXJQcmVmZXJlbmNlcy5jcHAgKi87IH07CiAJCTA3MzVFRTZB
MEY0MEM1RTQwMDRBMjYwNCAvKiBNZWRpYVBsYXllclByb3h5LmggaW4gSGVhZGVycyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAwNzM1RUU2OTBGNDBDNUU0MDA0QTI2MDQgLyog
TWVkaWFQbGF5ZXJQcm94eS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUs
ICk7IH07IH07CkBAIC0xODAsNiArMTgzLDggQEAKIAkJMDc2OTcwODYxNDYzQUQ4NzAwRjUwMkNG
IC8qIFRleHRUcmFja0xpc3QuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gMDc2OTcwODQxNDYzQUQ4NzAwRjUwMkNGIC8qIFRleHRUcmFja0xpc3QuY3Bw
ICovOyB9OwogCQkwNzY5NzA4NzE0NjNBRDg3MDBGNTAyQ0YgLyogVGV4dFRyYWNrTGlzdC5oIGlu
IEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMDc2OTcwODUxNDYz
QUQ4NzAwRjUwMkNGIC8qIFRleHRUcmFja0xpc3QuaCAqLzsgfTsKIAkJMDc2RjBEMEUxMkI4MTky
NzAwQzI2QUE0IC8qIE1lZGlhUGxheWVyUHJpdmF0ZUFWRm91bmRhdGlvbi5oIGluIEhlYWRlcnMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMDc2RjBEMEExMkI4MTkyNzAwQzI2
QUE0IC8qIE1lZGlhUGxheWVyUHJpdmF0ZUFWRm91bmRhdGlvbi5oICovOyB9OworCQkwNzc2NjRG
QzE4M0U2QjVDMDAxMzNCOTIgLyogSlNRdWlja1RpbWVQbHVnaW5SZXBsYWNlbWVudC5jcHAgaW4g
U291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAwNzc2NjRGQTE4M0U2
QjVDMDAxMzNCOTIgLyogSlNRdWlja1RpbWVQbHVnaW5SZXBsYWNlbWVudC5jcHAgKi87IH07CisJ
CTA3NzY2NEZEMTgzRTZCNUMwMDEzM0I5MiAvKiBKU1F1aWNrVGltZVBsdWdpblJlcGxhY2VtZW50
LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAwNzc2NjRG
QjE4M0U2QjVDMDAxMzNCOTIgLyogSlNRdWlja1RpbWVQbHVnaW5SZXBsYWNlbWVudC5oICovOyB9
OwogCQkwNzgzMjI4NDE4MDEzRUQ4MDA5OTlFMEMgLyogTWVkaWFTdHJlYW1BdWRpb1NvdXJjZS5j
cHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAwNzgzMjI4
MjE4MDEzRUQ3MDA5OTlFMEMgLyogTWVkaWFTdHJlYW1BdWRpb1NvdXJjZS5jcHAgKi87IH07CiAJ
CTA3ODMyMjg1MTgwMTNFRDgwMDk5OUUwQyAvKiBNZWRpYVN0cmVhbUF1ZGlvU291cmNlLmggaW4g
SGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAwNzgzMjI4MzE4MDEz
RUQ4MDA5OTlFMEMgLyogTWVkaWFTdHJlYW1BdWRpb1NvdXJjZS5oICovOyB9OwogCQkwNzg0NjM0
MjE0NUIxNTFBMDBBNThERjEgLyogSlNUcmFja0V2ZW50LmNwcCBpbiBTb3VyY2VzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDA3ODQ2MzQwMTQ1QjE1MUEwMEE1OERGMSAvKiBK
U1RyYWNrRXZlbnQuY3BwICovOyB9OwpAQCAtNjc2Myw2ICs2NzY4LDEyIEBACiAJCTA3Mjg0N0Uz
MTZFQkM1QjAwMDQzQ0ZBNCAvKiBQbGF0Zm9ybVRleHRUcmFja01lbnUuaCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRo
ID0gUGxhdGZvcm1UZXh0VHJhY2tNZW51Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJ
CTA3MjlCMTRFMTdDRkNDQTAwMDRGMUQ2MCAvKiBNZWRpYVN0cmVhbUNlbnRlck1hYy5jcHAgKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBNZWRpYVN0cmVhbUNlbnRlck1hYy5j
cHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTA3MjlCMTRGMTdDRkNDQTAwMDRGMUQ2
MCAvKiBNZWRpYVN0cmVhbUNlbnRlck1hYy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBh
dGggPSBNZWRpYVN0cmVhbUNlbnRlck1hYy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQkwNzJBRTFERjE4M0MwNzQxMDAwQTU5ODggLyogUGx1Z2luUmVwbGFjZW1lbnQuaCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuYy5oOyBuYW1lID0gUGx1Z2luUmVwbGFjZW1lbnQuaDsgcGF0aCA9IHBs
dWdpbnMvUGx1Z2luUmVwbGFjZW1lbnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
MDcyQUUxRTAxODNDMDc0MTAwMEE1OTg4IC8qIFF1aWNrVGltZVBsdWdpblJlcGxhY2VtZW50LmNw
cCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9IFF1aWNrVGltZVBsdWdpblJl
cGxhY2VtZW50LmNwcDsgcGF0aCA9IHBsdWdpbnMvUXVpY2tUaW1lUGx1Z2luUmVwbGFjZW1lbnQu
Y3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkwNzJBRTFFMTE4M0MwNzQxMDAwQTU5
ODggLyogUXVpY2tUaW1lUGx1Z2luUmVwbGFjZW1lbnQuY3NzICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dC5jc3M7
IG5hbWUgPSBRdWlja1RpbWVQbHVnaW5SZXBsYWNlbWVudC5jc3M7IHBhdGggPSBwbHVnaW5zL1F1
aWNrVGltZVBsdWdpblJlcGxhY2VtZW50LmNzczsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJMDcyQUUxRTIxODNDMDc0MTAwMEE1OTg4IC8qIFF1aWNrVGltZVBsdWdpblJlcGxhY2VtZW50
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgbmFtZSA9IFF1aWNrVGltZVBsdWdpblJlcGxh
Y2VtZW50Lmg7IHBhdGggPSBwbHVnaW5zL1F1aWNrVGltZVBsdWdpblJlcGxhY2VtZW50Lmg7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTA3MkFFMUUzMTgzQzA3NDEwMDBBNTk4OCAvKiBR
dWlja1RpbWVQbHVnaW5SZXBsYWNlbWVudC5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBuYW1lID0gUXVp
Y2tUaW1lUGx1Z2luUmVwbGFjZW1lbnQuaWRsOyBwYXRoID0gcGx1Z2lucy9RdWlja1RpbWVQbHVn
aW5SZXBsYWNlbWVudC5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTA3MkFFMUU0
MTgzQzA3NDEwMDBBNTk4OCAvKiBRdWlja1RpbWVQbHVnaW5SZXBsYWNlbWVudC5qcyAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuamF2YXNjcmlwdDsgbmFtZSA9IFF1aWNrVGltZVBsdWdpblJlcGxhY2Vt
ZW50LmpzOyBwYXRoID0gcGx1Z2lucy9RdWlja1RpbWVQbHVnaW5SZXBsYWNlbWVudC5qczsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMDcyQ0E4NjAxNkNCNERDMzAwOEFFMTMxIC8qIENh
cHRpb25Vc2VyUHJlZmVyZW5jZXMuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBw
YXRoID0gQ2FwdGlvblVzZXJQcmVmZXJlbmNlcy5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CiAJCTA3MzVFRTY5MEY0MEM1RTQwMDRBMjYwNCAvKiBNZWRpYVBsYXllclByb3h5LmggKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IE1lZGlhUGxheWVyUHJveHkuaDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMDczNjdEREQxNzJDQTY3RjAwRDg2MUI5IC8qIEluYmFu
ZFRleHRUcmFja1ByaXZhdGVMZWdhY3lBVkZPYmpDLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMu
aDsgbmFtZSA9IEluYmFuZFRleHRUcmFja1ByaXZhdGVMZWdhY3lBVkZPYmpDLmg7IHBhdGggPSBv
YmpjL0luYmFuZFRleHRUcmFja1ByaXZhdGVMZWdhY3lBVkZPYmpDLmg7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CkBAIC02Nzk2LDYgKzY4MDcsOCBAQAogCQkwNzY5NzA4NTE0NjNBRDg3MDBG
NTAyQ0YgLyogVGV4dFRyYWNrTGlzdC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGgg
PSBUZXh0VHJhY2tMaXN0Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTA3NkYwRDA5
MTJCODE5MjcwMEMyNkFBNCAvKiBNZWRpYVBsYXllclByaXZhdGVBVkZvdW5kYXRpb24uY3BwICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gTWVkaWFQbGF5ZXJQcml2YXRlQVZG
b3VuZGF0aW9uLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMDc2RjBEMEExMkI4
MTkyNzAwQzI2QUE0IC8qIE1lZGlhUGxheWVyUHJpdmF0ZUFWRm91bmRhdGlvbi5oICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBNZWRpYVBsYXllclByaXZhdGVBVkZvdW5kYXRpb24u
aDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMDc3NjY0RkExODNFNkI1QzAwMTMzQjky
IC8qIEpTUXVpY2tUaW1lUGx1Z2luUmVwbGFjZW1lbnQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jcHAuY3BwOyBuYW1lID0gSlNRdWlja1RpbWVQbHVnaW5SZXBsYWNlbWVudC5jcHA7IHBhdGgg
PSBKU1F1aWNrVGltZVBsdWdpblJlcGxhY2VtZW50LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKKwkJMDc3NjY0RkIxODNFNkI1QzAwMTMzQjkyIC8qIEpTUXVpY2tUaW1lUGx1Z2luUmVw
bGFjZW1lbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBuYW1lID0gSlNRdWlja1RpbWVQ
bHVnaW5SZXBsYWNlbWVudC5oOyBwYXRoID0gSlNRdWlja1RpbWVQbHVnaW5SZXBsYWNlbWVudC5o
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkwNzgzMjI4MjE4MDEzRUQ3MDA5OTlFMEMg
LyogTWVkaWFTdHJlYW1BdWRpb1NvdXJjZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5j
cHA7IHBhdGggPSBNZWRpYVN0cmVhbUF1ZGlvU291cmNlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKIAkJMDc4MzIyODMxODAxM0VEODAwOTk5RTBDIC8qIE1lZGlhU3RyZWFtQXVkaW9T
b3VyY2UuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gTWVkaWFTdHJlYW1BdWRp
b1NvdXJjZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkwNzg0NjM0MDE0NUIxNTFB
MDBBNThERjEgLyogSlNUcmFja0V2ZW50LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNw
cDsgcGF0aCA9IEpTVHJhY2tFdmVudC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CkBA
IC0xMzc0Nyw2ICsxMzc2MCwxOSBAQAogCQkJcGF0aCA9IG1hYzsKIAkJCXNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7CiAJCX07CisJCTA3MkFFMURFMTgzQzA1MTMwMDBBNTk4OCAvKiBwbHVnaW5zICov
ID0geworCQkJaXNhID0gUEJYR3JvdXA7CisJCQljaGlsZHJlbiA9ICgKKwkJCQkwNzJBRTFERjE4
M0MwNzQxMDAwQTU5ODggLyogUGx1Z2luUmVwbGFjZW1lbnQuaCAqLywKKwkJCQkwNzJBRTFFMDE4
M0MwNzQxMDAwQTU5ODggLyogUXVpY2tUaW1lUGx1Z2luUmVwbGFjZW1lbnQuY3BwICovLAorCQkJ
CTA3MkFFMUUxMTgzQzA3NDEwMDBBNTk4OCAvKiBRdWlja1RpbWVQbHVnaW5SZXBsYWNlbWVudC5j
c3MgKi8sCisJCQkJMDcyQUUxRTIxODNDMDc0MTAwMEE1OTg4IC8qIFF1aWNrVGltZVBsdWdpblJl
cGxhY2VtZW50LmggKi8sCisJCQkJMDcyQUUxRTMxODNDMDc0MTAwMEE1OTg4IC8qIFF1aWNrVGlt
ZVBsdWdpblJlcGxhY2VtZW50LmlkbCAqLywKKwkJCQkwNzJBRTFFNDE4M0MwNzQxMDAwQTU5ODgg
LyogUXVpY2tUaW1lUGx1Z2luUmVwbGFjZW1lbnQuanMgKi8sCisJCQkpOworCQkJbmFtZSA9IHBs
dWdpbnM7CisJCQlzb3VyY2VUcmVlID0gIjxncm91cD4iOworCQl9OwogCQkwNzZGMEQwODEyQjgx
OTI3MDBDMjZBQTQgLyogYXZmb3VuZGF0aW9uICovID0gewogCQkJaXNhID0gUEJYR3JvdXA7CiAJ
CQljaGlsZHJlbiA9ICgKQEAgLTE0MDkyLDYgKzE0MTE4LDggQEAKIAkJMTRERkIzM0YwQTdERjc2
MzAwMThGNzY5IC8qIERlcml2ZWQgU291cmNlcyAqLyA9IHsKIAkJCWlzYSA9IFBCWEdyb3VwOwog
CQkJY2hpbGRyZW4gPSAoCisJCQkJMDc3NjY0RkExODNFNkI1QzAwMTMzQjkyIC8qIEpTUXVpY2tU
aW1lUGx1Z2luUmVwbGFjZW1lbnQuY3BwICovLAorCQkJCTA3NzY2NEZCMTgzRTZCNUMwMDEzM0I5
MiAvKiBKU1F1aWNrVGltZVBsdWdpblJlcGxhY2VtZW50LmggKi8sCiAJCQkJQTgzQjc5MTAwQ0NC
MDAxQjAwMEIwODI1IC8qIENvcmUgKi8sCiAJCQkJRTFGRjhGNjExODA3NDVDNjAwMTMyNjc0IC8q
IENyeXB0byAqLywKIAkJCQlBODNCNzkwRTBDQ0FGRjk3MDAwQjA4MjUgLyogQ1NTICovLApAQCAt
MTY5NDYsNiArMTY5NzQsNyBAQAogCQk5NzExNDVGRTE0RUYwMDZFMDA2NzRGRDkgLyogTW9kdWxl
cyAqLyA9IHsKIAkJCWlzYSA9IFBCWEdyb3VwOwogCQkJY2hpbGRyZW4gPSAoCisJCQkJMDcyQUUx
REUxODNDMDUxMzAwMEE1OTg4IC8qIHBsdWdpbnMgKi8sCiAJCQkJQ0RBOThEQkQxNjAxNEUwODAw
RkVBM0IxIC8qIGVuY3J5cHRlZG1lZGlhICovLAogCQkJCTk3MTE0NUZGMTRFRjAwNzkwMDY3NEZE
OSAvKiBnZW9sb2NhdGlvbiAqLywKIAkJCQk5NzEyQTU1MzE1MDA0RTNDMDA0OEFGMTAgLyogaW5k
ZXhlZGRiICovLApAQCAtMjE5ODgsNiArMjIwMTcsNyBAQAogCQkJCTI5NDg5RkM3MTJDMDBGMDMw
MEQ4M0YwRiAvKiBBY2Nlc3NpYmlsaXR5U2Nyb2xsVmlldy5oIGluIEhlYWRlcnMgKi8sCiAJCQkJ
MDcwOUZDNEUxMDI1REVFMzAwNTlDREJBIC8qIEFjY2Vzc2liaWxpdHlTbGlkZXIuaCBpbiBIZWFk
ZXJzICovLAogCQkJCTUxRDcxOUQ3MTgxMTA2RTAwMDE2REM1MSAvKiBJREJIaXN0b2dyYW1zLmgg
aW4gSGVhZGVycyAqLywKKwkJCQkwNzJBRTFFODE4M0MwNzQxMDAwQTU5ODggLyogUXVpY2tUaW1l
UGx1Z2luUmVwbGFjZW1lbnQuaCBpbiBIZWFkZXJzICovLAogCQkJCTI5RDdCQ0ZBMTQ0NEFGN0Qw
MDcwNjE5QyAvKiBBY2Nlc3NpYmlsaXR5U3BpbkJ1dHRvbi5oIGluIEhlYWRlcnMgKi8sCiAJCQkJ
QUFDMDhDRjMxNUY5NDFGRDAwRjFFMTg4IC8qIEFjY2Vzc2liaWxpdHlTVkdSb290LmggaW4gSGVh
ZGVycyAqLywKIAkJCQkyOUE4MTIyQjBGQkI5QzFEMDA1MTAyOTMgLyogQWNjZXNzaWJpbGl0eVRh
YmxlLmggaW4gSGVhZGVycyAqLywKQEAgLTIyMTg0LDYgKzIyMjE0LDcgQEAKIAkJCQlGRDMxNUZG
RjEyQjAyNjc2MDBDMUEzNTkgLyogQ2hhbm5lbE1lcmdlck5vZGUuaCBpbiBIZWFkZXJzICovLAog
CQkJCUZEMzE2MDAyMTJCMDI2NzYwMEMxQTM1OSAvKiBDaGFubmVsU3BsaXR0ZXJOb2RlLmggaW4g
SGVhZGVycyAqLywKIAkJCQk2NTUwQjZBMDA5OURGMDI3MDA5MEQ3ODEgLyogQ2hhcmFjdGVyRGF0
YS5oIGluIEhlYWRlcnMgKi8sCisJCQkJMDc3NjY0RkQxODNFNkI1QzAwMTMzQjkyIC8qIEpTUXVp
Y2tUaW1lUGx1Z2luUmVwbGFjZW1lbnQuaCBpbiBIZWFkZXJzICovLAogCQkJCTk3QjhGRkQxMTZB
RTdGOTYwMDM4Mzg4RCAvKiBDaGFyYWN0ZXJSZWZlcmVuY2VQYXJzZXJJbmxpbmVzLmggaW4gSGVh
ZGVycyAqLywKIAkJCQlFMTY0RkFBMzE4MzE1QkY0MDBEQjRFNjEgLyogQ3J5cHRvS2V5UlNBLmgg
aW4gSGVhZGVycyAqLywKIAkJCQlCMkMzREEyQTBEMDA2QzFEMDBFRjZGMjYgLyogQ2hhcnNldERh
dGEuaCBpbiBIZWFkZXJzICovLApAQCAtMjQ4ODMsNiArMjQ5MTQsNyBAQAogCQkJCUUxODA4MTE3
MTZGQ0Y5Q0IwMEI4MEQwNyAvKiBTeW5jaHJvbm91c0xvYWRlckNsaWVudC5oIGluIEhlYWRlcnMg
Ki8sCiAJCQkJNURBOTdFQ0QxNjhFNzg3QjAwMEUzNjc2IC8qIFN5c3RlbVZlcnNpb25NYWMuaCBp
biBIZWFkZXJzICovLAogCQkJCUE4Q0ZGMDUxMEExNTRGMDkwMDBBNDIzNCAvKiBUYWJsZUxheW91
dC5oIGluIEhlYWRlcnMgKi8sCisJCQkJMDcyQUUxRTUxODNDMDc0MTAwMEE1OTg4IC8qIFBsdWdp
blJlcGxhY2VtZW50LmggaW4gSGVhZGVycyAqLywKIAkJCQlCQ0UzQkVDMzBEMjIyQjFEMDA3RTA2
RTQgLyogVGFnTm9kZUxpc3QuaCBpbiBIZWFkZXJzICovLAogCQkJCUY1NUIzREQ2MTI1MUYxMkQw
MDNFRjI2OSAvKiBUZWxlcGhvbmVJbnB1dFR5cGUuaCBpbiBIZWFkZXJzICovLAogCQkJCUM2NTA0
NkE5MTY3QkZCNTUwMENDMkE0RCAvKiBUZW1wbGF0ZUNvbnRlbnREb2N1bWVudEZyYWdtZW50Lmgg
aW4gSGVhZGVycyAqLywKQEAgLTI3MDMyLDYgKzI3MDY0LDcgQEAKIAkJCQk4NDg1MjI3QjExOTAx
NjJDMDA2RURDN0YgLyogSlNTVkdIS2VybkVsZW1lbnQuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJ
QjJGQTNEOUUwQUI3NUE2RjAwMEU1QUM0IC8qIEpTU1ZHSW1hZ2VFbGVtZW50LmNwcCBpbiBTb3Vy
Y2VzICovLAogCQkJCUIyRkEzREEwMEFCNzVBNkYwMDBFNUFDNCAvKiBKU1NWR0xlbmd0aC5jcHAg
aW4gU291cmNlcyAqLywKKwkJCQkwNzc2NjRGQzE4M0U2QjVDMDAxMzNCOTIgLyogSlNRdWlja1Rp
bWVQbHVnaW5SZXBsYWNlbWVudC5jcHAgaW4gU291cmNlcyAqLywKIAkJCQkwOEU0RkU0NjBFMkJE
NDE0MDBGNENBRTAgLyogSlNTVkdMZW5ndGhDdXN0b20uY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJ
QjJGQTNEQTIwQUI3NUE2RjAwMEU1QUM0IC8qIEpTU1ZHTGVuZ3RoTGlzdC5jcHAgaW4gU291cmNl
cyAqLywKIAkJCQlCMkZBM0RBNDBBQjc1QTZGMDAwRTVBQzQgLyogSlNTVkdMaW5lYXJHcmFkaWVu
dEVsZW1lbnQuY3BwIGluIFNvdXJjZXMgKi8sCkBAIC0yNzIzOCw2ICsyNzI3MSw3IEBACiAJCQkJ
MDcwNTg1MDIxN0ZBMTBEMDAwNUYyQkNCIC8qIEpTQWxsVmlkZW9DYXBhYmlsaXRpZXMuY3BwIGlu
IFNvdXJjZXMgKi8sCiAJCQkJOTc1OUU5M0UxNEVGMUNGODAwMjZBMkREIC8qIExvYWRhYmxlVGV4
dFRyYWNrLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTY1NkQzNzMzMEFEQkE1REUwMEE0NTU0RCAv
KiBMb2FkZXJOU1VSTEV4dHJhcy5tbSBpbiBTb3VyY2VzICovLAorCQkJCTA3MkFFMUU2MTgzQzA3
NDEwMDBBNTk4OCAvKiBRdWlja1RpbWVQbHVnaW5SZXBsYWNlbWVudC5jcHAgaW4gU291cmNlcyAq
LywKIAkJCQk3RUU2ODQ2ODEyRDI2RTM4MDBFNzk0MTUgLyogTG9hZGVyUnVuTG9vcENGLmNwcCBp
biBTb3VyY2VzICovLAogCQkJCTUxQUJGNjREMTYzOTJFMjgwMDEzMkE3QSAvKiBMb2FkZXJTdHJh
dGVneS5jcHAgaW4gU291cmNlcyAqLywKIAkJCQkwNkU4MUVFQzBBQjVEQTk3MDBDODc4MzcgLyog
TG9jYWxDdXJyZW50R3JhcGhpY3NDb250ZXh0Lm1tIGluIFNvdXJjZXMgKi8sCkluZGV4OiBTb3Vy
Y2UvV2ViQ29yZS9iaW5kaW5ncy9nZW5lcmljL1J1bnRpbWVFbmFibGVkRmVhdHVyZXMuaAo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9nZW5lcmljL1J1bnRpbWVFbmFibGVk
RmVhdHVyZXMuaAkocmV2aXNpb24gMTU5NzM2KQorKysgU291cmNlL1dlYkNvcmUvYmluZGluZ3Mv
Z2VuZXJpYy9SdW50aW1lRW5hYmxlZEZlYXR1cmVzLmgJKHdvcmtpbmcgY29weSkKQEAgLTIyOCw2
ICsyMjgsOSBAQCBwdWJsaWM6CiAgICAgLy8gVGhlIGxhbmcgYXR0cmlidXRlIHN1cHBvcnQgaXMg
aW5jb21wbGV0ZSBhbmQgc2hvdWxkIG9ubHkgYmUgdHVybmVkIG9uIGZvciB0ZXN0cy4KICAgICB2
b2lkIHNldExhbmdBdHRyaWJ1dGVBd2FyZUZvcm1Db250cm9sVUlFbmFibGVkKGJvb2wgaXNFbmFi
bGVkKSB7IG1faXNMYW5nQXR0cmlidXRlQXdhcmVGb3JtQ29udHJvbFVJRW5hYmxlZCA9IGlzRW5h
YmxlZDsgfQogCisgICAgdm9pZCBzZXRQbHVnaW5SZXBsYWNlbWVudEVuYWJsZWQoYm9vbCBpc0Vu
YWJsZWQpIHsgbV9pc1BsdWdpblJlcGxhY2VtZW50RW5hYmxlZCA9IGlzRW5hYmxlZDsgfQorICAg
IGJvb2wgcGx1Z2luUmVwbGFjZW1lbnRFbmFibGVkKCkgY29uc3QgeyByZXR1cm4gbV9pc1BsdWdp
blJlcGxhY2VtZW50RW5hYmxlZDsgfQorCiAgICAgc3RhdGljIFJ1bnRpbWVFbmFibGVkRmVhdHVy
ZXMmIHNoYXJlZEZlYXR1cmVzKCk7CiAKIHByaXZhdGU6CkBAIC0yNTAsNiArMjUzLDggQEAgcHJp
dmF0ZToKICAgICBib29sIG1faXNDU1NSZWdpb25zRW5hYmxlZDsKICAgICBib29sIG1faXNDU1ND
b21wb3NpdGluZ0VuYWJsZWQ7CiAgICAgYm9vbCBtX2lzTGFuZ0F0dHJpYnV0ZUF3YXJlRm9ybUNv
bnRyb2xVSUVuYWJsZWQ7CisgICAgYm9vbCBtX2lzUGx1Z2luUmVwbGFjZW1lbnRFbmFibGVkOwor
CiAjaWYgRU5BQkxFKFNDUklQVEVEX1NQRUVDSCkKICAgICBib29sIG1faXNTY3JpcHRlZFNwZWVj
aEVuYWJsZWQ7CiAjZW5kaWYKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRE9N
QmluZGluZy5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRE9N
QmluZGluZy5oCShyZXZpc2lvbiAxNTk3MzYpCisrKyBTb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9q
cy9KU0RPTUJpbmRpbmcuaAkod29ya2luZyBjb3B5KQpAQCAtMzkyLDYgKzM5MiwxMSBAQCBpbmxp
bmUgSlNDOjpKU1ZhbHVlIHRvSlMoSlNDOjpFeGVjU3RhdGUqCiAgICAgcmV0dXJuIGFycmF5Owog
fQogCitpbmxpbmUgSlNDOjpKU1ZhbHVlIHRvSlMoSlNDOjpFeGVjU3RhdGUqIGV4ZWMsIEpTRE9N
R2xvYmFsT2JqZWN0KiwgY29uc3QgU3RyaW5nJiB2YWx1ZSkKK3sKKyAgICByZXR1cm4ganNTdHJp
bmdPck51bGwoZXhlYywgdmFsdWUpOworfQorCiB0ZW1wbGF0ZSA8Y2xhc3MgVD4KIHN0cnVjdCBK
U1ZhbHVlVHJhaXRzIHsKICAgICBzdGF0aWMgaW5saW5lIEpTQzo6SlNWYWx1ZSBhcnJheUpTVmFs
dWUoSlNDOjpFeGVjU3RhdGUqIGV4ZWMsIEpTRE9NR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3Qs
IGNvbnN0IFQmIHZhbHVlKQpJbmRleDogU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNQbHVn
aW5FbGVtZW50RnVuY3Rpb25zLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9iaW5k
aW5ncy9qcy9KU1BsdWdpbkVsZW1lbnRGdW5jdGlvbnMuY3BwCShyZXZpc2lvbiAxNTk3MzYpCisr
KyBTb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU1BsdWdpbkVsZW1lbnRGdW5jdGlvbnMuY3Bw
CSh3b3JraW5nIGNvcHkpCkBAIC04Miw3ICs4MiwxMSBAQCBKU09iamVjdCogcGx1Z2luU2NyaXB0
T2JqZWN0KEV4ZWNTdGF0ZSogCiAKICAgICBIVE1MUGx1Z0luRWxlbWVudCYgcGx1Z2luRWxlbWVu
dCA9IHRvSFRNTFBsdWdJbkVsZW1lbnQoZWxlbWVudCk7CiAKLSAgICAvLyBGaXJzdCwgc2VlIGlm
IHdlIGNhbiBhc2sgdGhlIHBsdWctaW4gdmlldyBmb3IgaXRzIHNjcmlwdCBvYmplY3QuCisgICAg
Ly8gRmlyc3QsIHNlZSBpZiB0aGUgZWxlbWVudCBoYXMgYSBwbHVnLWluIHJlcGxhY2VtZW50IHdp
dGggYSBzY3JpcHQuCisgICAgaWYgKEpTT2JqZWN0KiBzY3JpcHRPYmplY3QgPSBwbHVnaW5FbGVt
ZW50LnNjcmlwdE9iamVjdEZvclBsdWdpblJlcGxhY2VtZW50KCkpCisgICAgICAgIHJldHVybiBz
Y3JpcHRPYmplY3Q7CisgICAgCisgICAgLy8gTmV4dCwgc2VlIGlmIHdlIGNhbiBhc2sgdGhlIHBs
dWctaW4gdmlldyBmb3IgaXRzIHNjcmlwdCBvYmplY3QuCiAgICAgaWYgKEpTT2JqZWN0KiBzY3Jp
cHRPYmplY3QgPSBwbHVnaW5TY3JpcHRPYmplY3RGcm9tUGx1Z2luVmlld0Jhc2UocGx1Z2luRWxl
bWVudCwganNIVE1MRWxlbWVudC0+Z2xvYmFsT2JqZWN0KCkpKQogICAgICAgICByZXR1cm4gc2Ny
aXB0T2JqZWN0OwogCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxFbWJlZEVsZW1lbnQu
Y3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTEVtYmVkRWxlbWVudC5j
cHAJKHJldmlzaW9uIDE1OTczNikKKysrIFNvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTEVtYmVkRWxl
bWVudC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTE3MCw5ICsxNzAsOCBAQCB2b2lkIEhUTUxFbWJl
ZEVsZW1lbnQ6OnVwZGF0ZVdpZGdldChQbHVnCiAgICAgaWYgKCFyZW5kZXJlcigpKSAvLyBEbyBu
b3QgbG9hZCB0aGUgcGx1Z2luIGlmIGJlZm9yZWxvYWQgcmVtb3ZlZCB0aGlzIGVsZW1lbnQgb3Ig
aXRzIHJlbmRlcmVyLgogICAgICAgICByZXR1cm47CiAKLSAgICBTdWJmcmFtZUxvYWRlciYgbG9h
ZGVyID0gZG9jdW1lbnQoKS5mcmFtZSgpLT5sb2FkZXIoKS5zdWJmcmFtZUxvYWRlcigpOwogICAg
IC8vIEZJWE1FOiBiZWZvcmVMb2FkIGNvdWxkIGhhdmUgZGV0YWNoZWQgdGhlIHJlbmRlcmVyISAg
SnVzdCBsaWtlIGluIHRoZSA8b2JqZWN0PiBjYXNlIGFib3ZlLgotICAgIGxvYWRlci5yZXF1ZXN0
T2JqZWN0KCp0aGlzLCBtX3VybCwgZ2V0TmFtZUF0dHJpYnV0ZSgpLCBtX3NlcnZpY2VUeXBlLCBw
YXJhbU5hbWVzLCBwYXJhbVZhbHVlcyk7CisgICAgcmVxdWVzdE9iamVjdChtX3VybCwgbV9zZXJ2
aWNlVHlwZSwgcGFyYW1OYW1lcywgcGFyYW1WYWx1ZXMpOwogfQogCiBib29sIEhUTUxFbWJlZEVs
ZW1lbnQ6OnJlbmRlcmVySXNOZWVkZWQoY29uc3QgUmVuZGVyU3R5bGUmIHN0eWxlKQpJbmRleDog
U291cmNlL1dlYkNvcmUvaHRtbC9IVE1MTWVkaWFFbGVtZW50LmNwcAo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBT
b3VyY2UvV2ViQ29yZS9odG1sL0hUTUxNZWRpYUVsZW1lbnQuY3BwCShyZXZpc2lvbiAxNTk3MzYp
CisrKyBTb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxNZWRpYUVsZW1lbnQuY3BwCSh3b3JraW5nIGNv
cHkpCkBAIC01MjgxLDYgKzUyODEsMTQgQEAgdm9pZCBIVE1MTWVkaWFFbGVtZW50OjpkaWRBZGRV
c2VyQWdlbnRTaAogfQogI2VuZGlmCiAKK3Vuc2lnbmVkIGxvbmcgbG9uZyBIVE1MTWVkaWFFbGVt
ZW50OjpmaWxlU2l6ZSgpIGNvbnN0Cit7CisgICAgaWYgKG1fcGxheWVyKQorICAgICAgICByZXR1
cm4gbV9wbGF5ZXItPmZpbGVTaXplKCk7CisgICAgCisgICAgcmV0dXJuIDA7Cit9CisKIH0KIAog
I2VuZGlmCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxNZWRpYUVsZW1lbnQuaAo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxNZWRpYUVsZW1lbnQuaAkocmV2aXNp
b24gMTU5NzM2KQorKysgU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MTWVkaWFFbGVtZW50LmgJKHdv
cmtpbmcgY29weSkKQEAgLTM4Niw2ICszODYsOCBAQCBwdWJsaWM6CiAgICAgYm9vbCBzaG91bGRV
c2VWaWRlb1BsdWdpblByb3h5KCkgY29uc3Q7CiAjZW5kaWYKIAorICAgIHVuc2lnbmVkIGxvbmcg
bG9uZyBmaWxlU2l6ZSgpIGNvbnN0OworCiBwcm90ZWN0ZWQ6CiAgICAgSFRNTE1lZGlhRWxlbWVu
dChjb25zdCBRdWFsaWZpZWROYW1lJiwgRG9jdW1lbnQmLCBib29sKTsKICAgICB2aXJ0dWFsIH5I
VE1MTWVkaWFFbGVtZW50KCk7CkluZGV4OiBTb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxPYmplY3RF
bGVtZW50LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxPYmplY3RF
bGVtZW50LmNwcAkocmV2aXNpb24gMTU5NzM2KQorKysgU291cmNlL1dlYkNvcmUvaHRtbC9IVE1M
T2JqZWN0RWxlbWVudC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTMwNyw4ICszMDcsOSBAQCB2b2lk
IEhUTUxPYmplY3RFbGVtZW50Ojp1cGRhdGVXaWRnZXQoUGx1CiAgICAgaWYgKCFyZW5kZXJlcigp
KSAvLyBEbyBub3QgbG9hZCB0aGUgcGx1Z2luIGlmIGJlZm9yZWxvYWQgcmVtb3ZlZCB0aGlzIGVs
ZW1lbnQgb3IgaXRzIHJlbmRlcmVyLgogICAgICAgICByZXR1cm47CiAKLSAgICBTdWJmcmFtZUxv
YWRlciYgbG9hZGVyID0gZG9jdW1lbnQoKS5mcmFtZSgpLT5sb2FkZXIoKS5zdWJmcmFtZUxvYWRl
cigpOwotICAgIGJvb2wgc3VjY2VzcyA9IGJlZm9yZUxvYWRBbGxvd2VkTG9hZCAmJiBoYXNWYWxp
ZENsYXNzSWQoKSAmJiBsb2FkZXIucmVxdWVzdE9iamVjdCgqdGhpcywgdXJsLCBnZXROYW1lQXR0
cmlidXRlKCksIHNlcnZpY2VUeXBlLCBwYXJhbU5hbWVzLCBwYXJhbVZhbHVlcyk7CisgICAgYm9v
bCBzdWNjZXNzID0gYmVmb3JlTG9hZEFsbG93ZWRMb2FkICYmIGhhc1ZhbGlkQ2xhc3NJZCgpOwor
ICAgIGlmIChzdWNjZXNzKQorICAgICAgICBzdWNjZXNzID0gcmVxdWVzdE9iamVjdCh1cmwsIHNl
cnZpY2VUeXBlLCBwYXJhbU5hbWVzLCBwYXJhbVZhbHVlcyk7CiAgICAgaWYgKCFzdWNjZXNzICYm
IGhhc0ZhbGxiYWNrQ29udGVudCgpKQogICAgICAgICByZW5kZXJGYWxsYmFja0NvbnRlbnQoKTsK
IH0KSW5kZXg6IFNvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTFBsdWdJbkVsZW1lbnQuY3BwCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTFBsdWdJbkVsZW1lbnQuY3BwCShyZXZp
c2lvbiAxNTk3MzYpCisrKyBTb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxQbHVnSW5FbGVtZW50LmNw
cAkod29ya2luZyBjb3B5KQpAQCAtMzUsMTkgKzM1LDI5IEBACiAjaW5jbHVkZSAiRnJhbWVMb2Fk
ZXIuaCIKICNpbmNsdWRlICJGcmFtZVRyZWUuaCIKICNpbmNsdWRlICJIVE1MTmFtZXMuaCIKKyNp
bmNsdWRlICJNSU1FVHlwZVJlZ2lzdHJ5LmgiCiAjaW5jbHVkZSAiUGFnZS5oIgorI2luY2x1ZGUg
IlBsdWdpbkRhdGEuaCIKKyNpbmNsdWRlICJQbHVnaW5SZXBsYWNlbWVudC5oIgogI2luY2x1ZGUg
IlBsdWdpblZpZXdCYXNlLmgiCiAjaW5jbHVkZSAiUmVuZGVyRW1iZWRkZWRPYmplY3QuaCIKICNp
bmNsdWRlICJSZW5kZXJTbmFwc2hvdHRlZFBsdWdJbi5oIgogI2luY2x1ZGUgIlJlbmRlcldpZGdl
dC5oIgorI2luY2x1ZGUgIlJ1bnRpbWVFbmFibGVkRmVhdHVyZXMuaCIKICNpbmNsdWRlICJTY3Jp
cHRDb250cm9sbGVyLmgiCiAjaW5jbHVkZSAiU2V0dGluZ3MuaCIKKyNpbmNsdWRlICJTaGFkb3dS
b290LmgiCisjaW5jbHVkZSAiU3ViZnJhbWVMb2FkZXIuaCIKICNpbmNsdWRlICJXaWRnZXQuaCIK
IAogI2lmIEVOQUJMRShORVRTQ0FQRV9QTFVHSU5fQVBJKQogI2luY2x1ZGUgIm5wcnVudGltZV9p
bXBsLmgiCiAjZW5kaWYKIAorI2lmIFBMQVRGT1JNKE1BQykKKyNpbmNsdWRlICJRdWlja1RpbWVQ
bHVnaW5SZXBsYWNlbWVudC5oIgorI2VuZGlmCisKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogdXNp
bmcgbmFtZXNwYWNlIEhUTUxOYW1lczsKQEAgLTU1LDYgKzY1LDcgQEAgdXNpbmcgbmFtZXNwYWNl
IEhUTUxOYW1lczsKIEhUTUxQbHVnSW5FbGVtZW50OjpIVE1MUGx1Z0luRWxlbWVudChjb25zdCBR
dWFsaWZpZWROYW1lJiB0YWdOYW1lLCBEb2N1bWVudCYgZG9jdW1lbnQpCiAgICAgOiBIVE1MRnJh
bWVPd25lckVsZW1lbnQodGFnTmFtZSwgZG9jdW1lbnQpCiAgICAgLCBtX2luQmVmb3JlTG9hZEV2
ZW50SGFuZGxlcihmYWxzZSkKKyAgICAsIG1fc3dhcFJlbmRlcmVyVGltZXIodGhpcywgJkhUTUxQ
bHVnSW5FbGVtZW50Ojpzd2FwUmVuZGVyZXJUaW1lckZpcmVkKQogI2lmIEVOQUJMRShORVRTQ0FQ
RV9QTFVHSU5fQVBJKQogICAgICwgbV9OUE9iamVjdCgwKQogI2VuZGlmCkBAIC0yNjIsNCArMjcz
LDEzMiBAQCBOUE9iamVjdCogSFRNTFBsdWdJbkVsZW1lbnQ6OmdldE5QT2JqZWN0CiAKICNlbmRp
ZiAvKiBFTkFCTEUoTkVUU0NBUEVfUExVR0lOX0FQSSkgKi8KIAorUmVuZGVyRWxlbWVudCogSFRN
TFBsdWdJbkVsZW1lbnQ6OmNyZWF0ZVJlbmRlcmVyKFBhc3NSZWY8UmVuZGVyU3R5bGU+IHN0eWxl
KQoreworICAgIGlmIChtX3BsdWdpblJlcGxhY2VtZW50ICYmIG1fcGx1Z2luUmVwbGFjZW1lbnQt
PndpbGxDcmVhdGVSZW5kZXJlcigpKQorICAgICAgICByZXR1cm4gbV9wbHVnaW5SZXBsYWNlbWVu
dC0+Y3JlYXRlUmVuZGVyZXIoKnRoaXMsIHN0ZDo6bW92ZShzdHlsZSkpOworCisgICAgcmV0dXJu
IG5ldyBSZW5kZXJFbWJlZGRlZE9iamVjdCgqdGhpcywgc3RkOjptb3ZlKHN0eWxlKSk7Cit9CisK
K3ZvaWQgSFRNTFBsdWdJbkVsZW1lbnQ6OnN3YXBSZW5kZXJlclRpbWVyRmlyZWQoVGltZXI8SFRN
TFBsdWdJbkVsZW1lbnQ+KikKK3sKKyAgICBBU1NFUlQoZGlzcGxheVN0YXRlKCkgPT0gUHJlcGFy
aW5nUGx1Z2luUmVwbGFjZW1lbnQgfHwgZGlzcGxheVN0YXRlKCkgPT0gRGlzcGxheWluZ1NuYXBz
aG90KTsKKyAgICBpZiAodXNlckFnZW50U2hhZG93Um9vdCgpKQorICAgICAgICByZXR1cm47Cisg
ICAgCisgICAgLy8gQ3JlYXRlIGEgc2hhZG93IHJvb3QsIHdoaWNoIHdpbGwgdHJpZ2dlciB0aGUg
Y29kZSB0byBhZGQgYSBzbmFwc2hvdCBjb250YWluZXIKKyAgICAvLyBhbmQgcmVhdHRhY2gsIHRo
dXMgbWFraW5nIGEgbmV3IFJlbmRlcmVyLgorICAgIGVuc3VyZVVzZXJBZ2VudFNoYWRvd1Jvb3Qo
KTsKK30KKwordm9pZCBIVE1MUGx1Z0luRWxlbWVudDo6c2V0RGlzcGxheVN0YXRlKERpc3BsYXlT
dGF0ZSBzdGF0ZSkKK3sKKyAgICBtX2Rpc3BsYXlTdGF0ZSA9IHN0YXRlOworICAgIAorICAgIGlm
ICgoc3RhdGUgPT0gRGlzcGxheWluZ1NuYXBzaG90IHx8IGRpc3BsYXlTdGF0ZSgpID09IFByZXBh
cmluZ1BsdWdpblJlcGxhY2VtZW50KSAmJiAhbV9zd2FwUmVuZGVyZXJUaW1lci5pc0FjdGl2ZSgp
KQorICAgICAgICBtX3N3YXBSZW5kZXJlclRpbWVyLnN0YXJ0T25lU2hvdCgwKTsKK30KKwordm9p
ZCBIVE1MUGx1Z0luRWxlbWVudDo6ZGlkQWRkVXNlckFnZW50U2hhZG93Um9vdChTaGFkb3dSb290
KiByb290KQoreworICAgIGlmICghbV9wbHVnaW5SZXBsYWNlbWVudCB8fCAhZG9jdW1lbnQoKS5w
YWdlKCkgfHwgZGlzcGxheVN0YXRlKCkgIT0gUHJlcGFyaW5nUGx1Z2luUmVwbGFjZW1lbnQpCisg
ICAgICAgIHJldHVybjsKKyAgICAKKyAgICByb290LT5zZXRSZXNldFN0eWxlSW5oZXJpdGFuY2Uo
dHJ1ZSk7CisgICAgaWYgKG1fcGx1Z2luUmVwbGFjZW1lbnQtPmluc3RhbGxSZXBsYWNlbWVudChy
b290KSkgeworICAgICAgICBzZXREaXNwbGF5U3RhdGUoRGlzcGxheWluZ1BsdWdpblJlcGxhY2Vt
ZW50KTsKKyAgICAgICAgU3R5bGU6OnJlYXR0YWNoUmVuZGVyVHJlZSgqdGhpcyk7CisgICAgfQor
fQorCitzdGF0aWMgdm9pZCByZWdpc3RlclBsdWdpblJlcGxhY2VtZW50KGNvbnN0IFJlcGxhY2Vt
ZW50UGx1Z2luJik7CisKK3N0YXRpYyBWZWN0b3I8UmVwbGFjZW1lbnRQbHVnaW4qPiYgcmVnaXN0
ZXJlZFBsdWdpblJlcGxhY2VtZW50cygpCit7CisgICAgREVGSU5FX1NUQVRJQ19MT0NBTChWZWN0
b3I8UmVwbGFjZW1lbnRQbHVnaW4qPiwgcmVnaXN0ZXJlZFJlcGxhY2VtZW50cywgKCkpOworICAg
IHN0YXRpYyBib29sIGVuZ2luZXNRdWVyaWVkID0gZmFsc2U7CisgICAgCisgICAgaWYgKGVuZ2lu
ZXNRdWVyaWVkKQorICAgICAgICByZXR1cm4gcmVnaXN0ZXJlZFJlcGxhY2VtZW50czsKKyAgICBl
bmdpbmVzUXVlcmllZCA9IHRydWU7CisKKyNpZiBQTEFURk9STShNQUMpCisgICAgUXVpY2tUaW1l
UGx1Z2luUmVwbGFjZW1lbnQ6OnJlZ2lzdGVyUGx1Z2luUmVwbGFjZW1lbnQocmVnaXN0ZXJQbHVn
aW5SZXBsYWNlbWVudCk7CisjZW5kaWYKKyAgICAKKyAgICByZXR1cm4gcmVnaXN0ZXJlZFJlcGxh
Y2VtZW50czsKK30KKworc3RhdGljIHZvaWQgcmVnaXN0ZXJQbHVnaW5SZXBsYWNlbWVudChjb25z
dCBSZXBsYWNlbWVudFBsdWdpbiYgcmVwbGFjZW1lbnQpCit7CisgICAgcmVnaXN0ZXJlZFBsdWdp
blJlcGxhY2VtZW50cygpLmFwcGVuZChuZXcgUmVwbGFjZW1lbnRQbHVnaW4ocmVwbGFjZW1lbnQp
KTsKK30KKworc3RhdGljIFJlcGxhY2VtZW50UGx1Z2luKiBwbHVnaW5SZXBsYWNlbWVudEZvclR5
cGUoY29uc3QgVVJMJiB1cmwsIGNvbnN0IFN0cmluZyYgbWltZVR5cGUpCit7CisgICAgVmVjdG9y
PFJlcGxhY2VtZW50UGx1Z2luKj4mIHJlcGxhY2VtZW50cyA9IHJlZ2lzdGVyZWRQbHVnaW5SZXBs
YWNlbWVudHMoKTsKKyAgICBpZiAocmVwbGFjZW1lbnRzLmlzRW1wdHkoKSkKKyAgICAgICAgcmV0
dXJuIG51bGxwdHI7CisKKyAgICBTdHJpbmcgZXh0ZW5zaW9uOworICAgIFN0cmluZyBsYXN0UGF0
aENvbXBvbmVudCA9IHVybC5sYXN0UGF0aENvbXBvbmVudCgpOworICAgIHNpemVfdCBkb3RPZmZz
ZXQgPSBsYXN0UGF0aENvbXBvbmVudC5yZXZlcnNlRmluZCgnLicpOworICAgIGlmIChkb3RPZmZz
ZXQgIT0gbm90Rm91bmQpCisgICAgICAgIGV4dGVuc2lvbiA9IGxhc3RQYXRoQ29tcG9uZW50LnN1
YnN0cmluZyhkb3RPZmZzZXQgKyAxKTsKKworICAgIFN0cmluZyB0eXBlID0gbWltZVR5cGU7Cisg
ICAgaWYgKHR5cGUuaXNFbXB0eSgpICYmIHVybC5wcm90b2NvbElzRGF0YSgpKQorICAgICAgICB0
eXBlID0gbWltZVR5cGVGcm9tRGF0YVVSTCh1cmwuc3RyaW5nKCkpOworICAgIAorICAgIGlmICh0
eXBlLmlzRW1wdHkoKSAmJiAhZXh0ZW5zaW9uLmlzRW1wdHkoKSkgeworICAgICAgICBmb3IgKHNp
emVfdCBpID0gMDsgaSA8IHJlcGxhY2VtZW50cy5zaXplKCk7IGkrKykKKyAgICAgICAgICAgIGlm
IChyZXBsYWNlbWVudHNbaV0tPnN1cHBvcnRzRmlsZUV4dGVuc2lvbihleHRlbnNpb24pKQorICAg
ICAgICAgICAgICAgIHJldHVybiByZXBsYWNlbWVudHNbaV07CisgICAgfQorICAgIAorICAgIGlm
ICh0eXBlLmlzRW1wdHkoKSkgeworICAgICAgICBpZiAoZXh0ZW5zaW9uLmlzRW1wdHkoKSkKKyAg
ICAgICAgICAgIHJldHVybiBudWxscHRyOworICAgICAgICB0eXBlID0gTUlNRVR5cGVSZWdpc3Ry
eTo6Z2V0TWVkaWFNSU1FVHlwZUZvckV4dGVuc2lvbihleHRlbnNpb24pOworICAgIH0KKworICAg
IGlmICh0eXBlLmlzRW1wdHkoKSkKKyAgICAgICAgcmV0dXJuIG51bGxwdHI7CisKKyAgICBmb3Ig
KHVuc2lnbmVkIGkgPSAwOyBpIDwgcmVwbGFjZW1lbnRzLnNpemUoKTsgaSsrKQorICAgICAgICBp
ZiAocmVwbGFjZW1lbnRzW2ldLT5zdXBwb3J0c1R5cGUodHlwZSkpCisgICAgICAgICAgICByZXR1
cm4gcmVwbGFjZW1lbnRzW2ldOworCisgICAgcmV0dXJuIG51bGxwdHI7Cit9CisKK2Jvb2wgSFRN
TFBsdWdJbkVsZW1lbnQ6OnJlcXVlc3RPYmplY3QoY29uc3QgU3RyaW5nJiB1cmwsIGNvbnN0IFN0
cmluZyYgbWltZVR5cGUsIGNvbnN0IFZlY3RvcjxTdHJpbmc+JiBwYXJhbU5hbWVzLCBjb25zdCBW
ZWN0b3I8U3RyaW5nPiYgcGFyYW1WYWx1ZXMpCit7CisgICAgaWYgKCFSdW50aW1lRW5hYmxlZEZl
YXR1cmVzOjpzaGFyZWRGZWF0dXJlcygpLnBsdWdpblJlcGxhY2VtZW50RW5hYmxlZCgpKQorICAg
ICAgICByZXR1cm4gZmFsc2U7CisKKyAgICBpZiAobV9wbHVnaW5SZXBsYWNlbWVudCkKKyAgICAg
ICAgcmV0dXJuIHRydWU7CisKKyAgICBVUkwgY29tcGxldGVkVVJMOworICAgIGlmICghdXJsLmlz
RW1wdHkoKSkKKyAgICAgICAgY29tcGxldGVkVVJMID0gZG9jdW1lbnQoKS5jb21wbGV0ZVVSTCh1
cmwpOworCisgICAgUmVwbGFjZW1lbnRQbHVnaW4qIHJlcGxhY2VtZW50ID0gcGx1Z2luUmVwbGFj
ZW1lbnRGb3JUeXBlKGNvbXBsZXRlZFVSTCwgbWltZVR5cGUpOworICAgIGlmICghcmVwbGFjZW1l
bnQpCisgICAgICAgIHJldHVybiBmYWxzZTsKKworICAgIG1fcGx1Z2luUmVwbGFjZW1lbnQgPSBy
ZXBsYWNlbWVudC0+Y3JlYXRlKCp0aGlzLCBwYXJhbU5hbWVzLCBwYXJhbVZhbHVlcyk7CisgICAg
c2V0RGlzcGxheVN0YXRlKFByZXBhcmluZ1BsdWdpblJlcGxhY2VtZW50KTsKKyAgICByZXR1cm4g
dHJ1ZTsKK30KKworSlNDOjpKU09iamVjdCogSFRNTFBsdWdJbkVsZW1lbnQ6OnNjcmlwdE9iamVj
dEZvclBsdWdpblJlcGxhY2VtZW50KCkKK3sKKyAgICBpZiAobV9wbHVnaW5SZXBsYWNlbWVudCkK
KyAgICAgICAgcmV0dXJuIG1fcGx1Z2luUmVwbGFjZW1lbnQtPnNjcmlwdE9iamVjdCgpOworICAg
IHJldHVybiBudWxscHRyOworfQorCiB9CkluZGV4OiBTb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxQ
bHVnSW5FbGVtZW50LmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MUGx1
Z0luRWxlbWVudC5oCShyZXZpc2lvbiAxNTk3MzYpCisrKyBTb3VyY2UvV2ViQ29yZS9odG1sL0hU
TUxQbHVnSW5FbGVtZW50LmgJKHdvcmtpbmcgY29weSkKQEAgLTM4LDYgKzM4LDcgQEAgY2xhc3Mg
SW5zdGFuY2U7CiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAorY2xhc3MgUGx1Z2luUmVwbGFjZW1l
bnQ7CiBjbGFzcyBSZW5kZXJFbWJlZGRlZE9iamVjdDsKIGNsYXNzIFJlbmRlcldpZGdldDsKIGNs
YXNzIFdpZGdldDsKQEAgLTU3LDE0ICs1OCwxOCBAQCBwdWJsaWM6CiAgICAgICAgIERpc3BsYXlp
bmdTbmFwc2hvdCwKICAgICAgICAgUmVzdGFydGluZywKICAgICAgICAgUmVzdGFydGluZ1dpdGhQ
ZW5kaW5nTW91c2VDbGljaywKLSAgICAgICAgUGxheWluZworICAgICAgICBQbGF5aW5nLAorICAg
ICAgICBQcmVwYXJpbmdQbHVnaW5SZXBsYWNlbWVudCwKKyAgICAgICAgRGlzcGxheWluZ1BsdWdp
blJlcGxhY2VtZW50LAogICAgIH07CiAgICAgRGlzcGxheVN0YXRlIGRpc3BsYXlTdGF0ZSgpIGNv
bnN0IHsgcmV0dXJuIG1fZGlzcGxheVN0YXRlOyB9Ci0gICAgdmlydHVhbCB2b2lkIHNldERpc3Bs
YXlTdGF0ZShEaXNwbGF5U3RhdGUgc3RhdGUpIHsgbV9kaXNwbGF5U3RhdGUgPSBzdGF0ZTsgfQor
ICAgIHZpcnR1YWwgdm9pZCBzZXREaXNwbGF5U3RhdGUoRGlzcGxheVN0YXRlKTsKICAgICB2aXJ0
dWFsIHZvaWQgdXBkYXRlU25hcHNob3QoUGFzc1JlZlB0cjxJbWFnZT4pIHsgfQogICAgIHZpcnR1
YWwgdm9pZCBkaXNwYXRjaFBlbmRpbmdNb3VzZUNsaWNrKCkgeyB9CiAgICAgdmlydHVhbCBib29s
IGlzUmVzdGFydGVkUGx1Z2luKCkgY29uc3QgeyByZXR1cm4gZmFsc2U7IH0KIAorICAgIEpTQzo6
SlNPYmplY3QqIHNjcmlwdE9iamVjdEZvclBsdWdpblJlcGxhY2VtZW50KCk7CisKICNpZiBFTkFC
TEUoTkVUU0NBUEVfUExVR0lOX0FQSSkKICAgICBOUE9iamVjdCogZ2V0TlBPYmplY3QoKTsKICNl
bmRpZgpAQCAtOTEsMTIgKzk2LDE5IEBAIHByb3RlY3RlZDoKIAogICAgIHZpcnR1YWwgdm9pZCBk
ZWZhdWx0RXZlbnRIYW5kbGVyKEV2ZW50KikgT1ZFUlJJREU7CiAKKyAgICB2aXJ0dWFsIGJvb2wg
cmVxdWVzdE9iamVjdChjb25zdCBTdHJpbmcmIHVybCwgY29uc3QgU3RyaW5nJiBtaW1lVHlwZSwg
Y29uc3QgVmVjdG9yPFN0cmluZz4mIHBhcmFtTmFtZXMsIGNvbnN0IFZlY3RvcjxTdHJpbmc+JiBw
YXJhbVZhbHVlcyk7CisgICAgdmlydHVhbCBSZW5kZXJFbGVtZW50KiBjcmVhdGVSZW5kZXJlcihQ
YXNzUmVmPFJlbmRlclN0eWxlPikgT1ZFUlJJREU7CisgICAgdmlydHVhbCB2b2lkIGRpZEFkZFVz
ZXJBZ2VudFNoYWRvd1Jvb3QoU2hhZG93Um9vdCopIE9WRVJSSURFOworCiAgICAgLy8gU3ViY2xh
c3NlcyBzaG91bGQgdXNlIGd1YXJkZWREaXNwYXRjaEJlZm9yZUxvYWRFdmVudCBpbnN0ZWFkIG9m
IGNhbGxpbmcgZGlzcGF0Y2hCZWZvcmVMb2FkRXZlbnQgZGlyZWN0bHkuCiAgICAgYm9vbCBndWFy
ZGVkRGlzcGF0Y2hCZWZvcmVMb2FkRXZlbnQoY29uc3QgU3RyaW5nJiBzb3VyY2VVUkwpOwogCiAg
ICAgYm9vbCBtX2luQmVmb3JlTG9hZEV2ZW50SGFuZGxlcjsKIAogcHJpdmF0ZToKKyAgICB2b2lk
IHN3YXBSZW5kZXJlclRpbWVyRmlyZWQoVGltZXI8SFRNTFBsdWdJbkVsZW1lbnQ+Kik7CisgICAg
Ym9vbCBzaG91bGRPdmVycmlkZVBsdWdpbihjb25zdCBTdHJpbmcmIHVybCwgY29uc3QgU3RyaW5n
JiBtaW1lVHlwZSk7CisKICAgICBib29sIGRpc3BhdGNoQmVmb3JlTG9hZEV2ZW50KGNvbnN0IFN0
cmluZyYgc291cmNlVVJMKTsgLy8gTm90IGltcGxlbWVudGVkLCBnZW5lcmF0ZXMgYSBjb21waWxl
IGVycm9yIGlmIHN1YmNsYXNzZXMgY2FsbCB0aGlzIGJ5IG1pc3Rha2UuCiAKICAgICB2aXJ0dWFs
IGJvb2wgYXJlQXV0aG9yU2hhZG93c0FsbG93ZWQoKSBjb25zdCBPVkVSUklERSB7IHJldHVybiBm
YWxzZTsgfQpAQCAtMTA5LDYgKzEyMSw4IEBAIHByaXZhdGU6CiAgICAgdmlydHVhbCBib29sIGlz
UGx1Z2luRWxlbWVudCgpIGNvbnN0IE9WRVJSSURFIEZJTkFMOwogCiAgICAgUmVmUHRyPEpTQzo6
QmluZGluZ3M6Okluc3RhbmNlPiBtX2luc3RhbmNlOworICAgIFRpbWVyPEhUTUxQbHVnSW5FbGVt
ZW50PiBtX3N3YXBSZW5kZXJlclRpbWVyOworICAgIFJlZlB0cjxQbHVnaW5SZXBsYWNlbWVudD4g
bV9wbHVnaW5SZXBsYWNlbWVudDsKICNpZiBFTkFCTEUoTkVUU0NBUEVfUExVR0lOX0FQSSkKICAg
ICBOUE9iamVjdCogbV9OUE9iamVjdDsKICNlbmRpZgpJbmRleDogU291cmNlL1dlYkNvcmUvaHRt
bC9IVE1MUGx1Z0luSW1hZ2VFbGVtZW50LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29y
ZS9odG1sL0hUTUxQbHVnSW5JbWFnZUVsZW1lbnQuY3BwCShyZXZpc2lvbiAxNTk3MzYpCisrKyBT
b3VyY2UvV2ViQ29yZS9odG1sL0hUTUxQbHVnSW5JbWFnZUVsZW1lbnQuY3BwCSh3b3JraW5nIGNv
cHkpCkBAIC0xMDgsNyArMTA4LDYgQEAgSFRNTFBsdWdJbkltYWdlRWxlbWVudDo6SFRNTFBsdWdJ
bkltYWdlRQogICAgICwgbV9zaG91bGRQcmVmZXJQbHVnSW5zRm9ySW1hZ2VzKHByZWZlclBsdWdJ
bnNGb3JJbWFnZXNPcHRpb24gPT0gU2hvdWxkUHJlZmVyUGx1Z0luc0ZvckltYWdlcykKICAgICAs
IG1fbmVlZHNEb2N1bWVudEFjdGl2YXRpb25DYWxsYmFja3MoZmFsc2UpCiAgICAgLCBtX3NpbXVs
YXRlZE1vdXNlQ2xpY2tUaW1lcih0aGlzLCAmSFRNTFBsdWdJbkltYWdlRWxlbWVudDo6c2ltdWxh
dGVkTW91c2VDbGlja1RpbWVyRmlyZWQsIHNpbXVsYXRlZE1vdXNlQ2xpY2tUaW1lckRlbGF5KQot
ICAgICwgbV9zd2FwUmVuZGVyZXJUaW1lcih0aGlzLCAmSFRNTFBsdWdJbkltYWdlRWxlbWVudDo6
c3dhcFJlbmRlcmVyVGltZXJGaXJlZCkKICAgICAsIG1fcmVtb3ZlU25hcHNob3RUaW1lcih0aGlz
LCAmSFRNTFBsdWdJbkltYWdlRWxlbWVudDo6cmVtb3ZlU25hcHNob3RUaW1lckZpcmVkKQogICAg
ICwgbV9jcmVhdGVkRHVyaW5nVXNlckdlc3R1cmUoU2NyaXB0Q29udHJvbGxlcjo6cHJvY2Vzc2lu
Z1VzZXJHZXN0dXJlKCkpCiAgICAgLCBtX2lzUmVzdGFydGVkUGx1Z2luKGZhbHNlKQpAQCAtMTM5
LDkgKzEzOCw2IEBAIHZvaWQgSFRNTFBsdWdJbkltYWdlRWxlbWVudDo6c2V0RGlzcGxheVMKICNl
bmRpZgogCiAgICAgSFRNTFBsdWdJbkVsZW1lbnQ6OnNldERpc3BsYXlTdGF0ZShzdGF0ZSk7Ci0K
LSAgICBpZiAoc3RhdGUgPT0gRGlzcGxheWluZ1NuYXBzaG90KQotICAgICAgICBtX3N3YXBSZW5k
ZXJlclRpbWVyLnN0YXJ0T25lU2hvdCgwKTsKIH0KIAogUmVuZGVyRW1iZWRkZWRPYmplY3QqIEhU
TUxQbHVnSW5JbWFnZUVsZW1lbnQ6OnJlbmRlckVtYmVkZGVkT2JqZWN0KCkgY29uc3QKQEAgLTE5
Niw2ICsxOTIsOSBAQCBib29sIEhUTUxQbHVnSW5JbWFnZUVsZW1lbnQ6OndvdWxkTG9hZEFzCiAK
IFJlbmRlckVsZW1lbnQqIEhUTUxQbHVnSW5JbWFnZUVsZW1lbnQ6OmNyZWF0ZVJlbmRlcmVyKFBh
c3NSZWY8UmVuZGVyU3R5bGU+IHN0eWxlKQogeworICAgIGlmIChkaXNwbGF5U3RhdGUoKSA+PSBQ
cmVwYXJpbmdQbHVnaW5SZXBsYWNlbWVudCkKKyAgICAgICAgcmV0dXJuIEhUTUxQbHVnSW5FbGVt
ZW50OjpjcmVhdGVSZW5kZXJlcihzdGQ6Om1vdmUoc3R5bGUpKTsKKwogICAgIC8vIE9uY2UgYSBQ
bHVnSW4gRWxlbWVudCBjcmVhdGVzIGl0cyByZW5kZXJlciwgaXQgbmVlZHMgdG8gYmUgdG9sZCB3
aGVuIHRoZSBEb2N1bWVudCBnb2VzCiAgICAgLy8gaW5hY3RpdmUgb3IgcmVhY3RpdmF0ZXMgc28g
aXQgY2FuIGNsZWFyIHRoZSByZW5kZXJlciBiZWZvcmUgZ29pbmcgaW50byB0aGUgcGFnZSBjYWNo
ZS4KICAgICBpZiAoIW1fbmVlZHNEb2N1bWVudEFjdGl2YXRpb25DYWxsYmFja3MpIHsKQEAgLTIy
MSw3ICsyMjAsNyBAQCBSZW5kZXJFbGVtZW50KiBIVE1MUGx1Z0luSW1hZ2VFbGVtZW50OjpjCiAg
ICAgICAgIHJldHVybiBpbWFnZTsKICAgICB9CiAKLSAgICByZXR1cm4gbmV3IFJlbmRlckVtYmVk
ZGVkT2JqZWN0KCp0aGlzLCBzdGQ6Om1vdmUoc3R5bGUpKTsKKyAgICByZXR1cm4gSFRNTFBsdWdJ
bkVsZW1lbnQ6OmNyZWF0ZVJlbmRlcmVyKHN0ZDo6bW92ZShzdHlsZSkpOwogfQogCiBib29sIEhU
TUxQbHVnSW5JbWFnZUVsZW1lbnQ6OndpbGxSZWNhbGNTdHlsZShTdHlsZTo6Q2hhbmdlKQpAQCAt
MzYzLDggKzM2MiwxMiBAQCBzdGF0aWMgRE9NV3JhcHBlcldvcmxkJiBwbHVnSW5JbWFnZUVsZW1l
CiAKIHZvaWQgSFRNTFBsdWdJbkltYWdlRWxlbWVudDo6ZGlkQWRkVXNlckFnZW50U2hhZG93Um9v
dChTaGFkb3dSb290KiByb290KQogeworICAgIEhUTUxQbHVnSW5FbGVtZW50OjpkaWRBZGRVc2Vy
QWdlbnRTaGFkb3dSb290KHJvb3QpOworICAgIGlmIChkaXNwbGF5U3RhdGUoKSA+PSBQcmVwYXJp
bmdQbHVnaW5SZXBsYWNlbWVudCkKKyAgICAgICAgcmV0dXJuOworCiAgICAgUGFnZSogcGFnZSA9
IGRvY3VtZW50KCkucGFnZSgpOwotICAgIGlmICghcGFnZSkKKyAgICBpZiAocGFnZSkKICAgICAg
ICAgcmV0dXJuOwogCiAgICAgLy8gUmVzZXQgYW55IGF1dGhvciBzdHlsZXMgdGhhdCBtYXkgYXBw
bHkgYXMgd2Ugb25seSB3YW50IGV4cGxpY2l0CkBAIC00MDksMTcgKzQxMiw2IEBAIGJvb2wgSFRN
TFBsdWdJbkltYWdlRWxlbWVudDo6cGFydE9mU25hcHMKICAgICByZXR1cm4gbm9kZSAmJiBzbmFw
c2hvdExhYmVsICYmIChub2RlID09IHNuYXBzaG90TGFiZWwuZ2V0KCkgfHwgbm9kZS0+aXNEZXNj
ZW5kYW50T2Yoc25hcHNob3RMYWJlbC5nZXQoKSkpOwogfQogCi12b2lkIEhUTUxQbHVnSW5JbWFn
ZUVsZW1lbnQ6OnN3YXBSZW5kZXJlclRpbWVyRmlyZWQoVGltZXI8SFRNTFBsdWdJbkltYWdlRWxl
bWVudD4qKQotewotICAgIEFTU0VSVChkaXNwbGF5U3RhdGUoKSA9PSBEaXNwbGF5aW5nU25hcHNo
b3QpOwotICAgIGlmICh1c2VyQWdlbnRTaGFkb3dSb290KCkpCi0gICAgICAgIHJldHVybjsKLQot
ICAgIC8vIENyZWF0ZSBhIHNoYWRvdyByb290LCB3aGljaCB3aWxsIHRyaWdnZXIgdGhlIGNvZGUg
dG8gYWRkIGEgc25hcHNob3QgY29udGFpbmVyCi0gICAgLy8gYW5kIHJlYXR0YWNoLCB0aHVzIG1h
a2luZyBhIG5ldyBSZW5kZXJlci4KLSAgICBlbnN1cmVVc2VyQWdlbnRTaGFkb3dSb290KCk7Ci19
Ci0KIHZvaWQgSFRNTFBsdWdJbkltYWdlRWxlbWVudDo6cmVtb3ZlU25hcHNob3RUaW1lckZpcmVk
KFRpbWVyPEhUTUxQbHVnSW5JbWFnZUVsZW1lbnQ+KikKIHsKICAgICBtX3NuYXBzaG90SW1hZ2Ug
PSBudWxscHRyOwpAQCAtNDk2LDcgKzQ4OCw3IEBAIHZvaWQgSFRNTFBsdWdJbkltYWdlRWxlbWVu
dDo6dXNlckRpZENsaWMKICAgICBMT0coUGx1Z2lucywgIiVwIFVzZXIgY2xpY2tlZCBvbiBzbmFw
c2hvdHRlZCBwbHVnLWluLiBSZXN0YXJ0LiIsIHRoaXMpOwogICAgIHJlc3RhcnRTbmFwc2hvdHRl
ZFBsdWdJbigpOwogICAgIGlmIChmb3J3YXJkRXZlbnQpCi0gICAgICAgIHNldERpc3BsYXlTdGF0
ZShIVE1MUGx1Z0luRWxlbWVudDo6UmVzdGFydGluZ1dpdGhQZW5kaW5nTW91c2VDbGljayk7Cisg
ICAgICAgIHNldERpc3BsYXlTdGF0ZShSZXN0YXJ0aW5nV2l0aFBlbmRpbmdNb3VzZUNsaWNrKTsK
ICAgICByZXN0YXJ0U2ltaWxhclBsdWdJbnMoKTsKIH0KIApAQCAtNzMyLDQgKzcyNCwxMyBAQCB2
b2lkIEhUTUxQbHVnSW5JbWFnZUVsZW1lbnQ6OmRlZmF1bHRFdmVuCiAgICAgSFRNTFBsdWdJbkVs
ZW1lbnQ6OmRlZmF1bHRFdmVudEhhbmRsZXIoZXZlbnQpOwogfQogCitib29sIEhUTUxQbHVnSW5J
bWFnZUVsZW1lbnQ6OnJlcXVlc3RPYmplY3QoY29uc3QgU3RyaW5nJiB1cmwsIGNvbnN0IFN0cmlu
ZyYgbWltZVR5cGUsIGNvbnN0IFZlY3RvcjxTdHJpbmc+JiBwYXJhbU5hbWVzLCBjb25zdCBWZWN0
b3I8U3RyaW5nPiYgcGFyYW1WYWx1ZXMpCit7CisgICAgaWYgKEhUTUxQbHVnSW5FbGVtZW50Ojpy
ZXF1ZXN0T2JqZWN0KHVybCwgbWltZVR5cGUsIHBhcmFtTmFtZXMsIHBhcmFtVmFsdWVzKSkKKyAg
ICAgICAgcmV0dXJuIHRydWU7CisgICAgCisgICAgU3ViZnJhbWVMb2FkZXImIGxvYWRlciA9IGRv
Y3VtZW50KCkuZnJhbWUoKS0+bG9hZGVyKCkuc3ViZnJhbWVMb2FkZXIoKTsKKyAgICByZXR1cm4g
bG9hZGVyLnJlcXVlc3RPYmplY3QoKnRoaXMsIHVybCwgZ2V0TmFtZUF0dHJpYnV0ZSgpLCBtaW1l
VHlwZSwgcGFyYW1OYW1lcywgcGFyYW1WYWx1ZXMpOworfQorCiB9IC8vIG5hbWVzcGFjZSBXZWJD
b3JlCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxQbHVnSW5JbWFnZUVsZW1lbnQuaAo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxQbHVnSW5JbWFnZUVsZW1lbnQu
aAkocmV2aXNpb24gMTU5NzM2KQorKysgU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MUGx1Z0luSW1h
Z2VFbGVtZW50LmgJKHdvcmtpbmcgY29weSkKQEAgLTI5LDYgKzI5LDcgQEAKIG5hbWVzcGFjZSBX
ZWJDb3JlIHsKIAogY2xhc3MgSFRNTEltYWdlTG9hZGVyOworY2xhc3MgSFRNTFZpZGVvRWxlbWVu
dDsKIGNsYXNzIEZyYW1lTG9hZGVyOwogY2xhc3MgSW1hZ2U7CiBjbGFzcyBNb3VzZUV2ZW50OwpA
QCAtMTIzLDYgKzEyNCw3IEBAIHByb3RlY3RlZDoKICAgICB2aXJ0dWFsIFBhc3NSZWZQdHI8UmVu
ZGVyU3R5bGU+IGN1c3RvbVN0eWxlRm9yUmVuZGVyZXIoKSBPVkVSUklERTsKIAogICAgIHZpcnR1
YWwgYm9vbCBpc1Jlc3RhcnRlZFBsdWdpbigpIGNvbnN0IE9WRVJSSURFIHsgcmV0dXJuIG1faXNS
ZXN0YXJ0ZWRQbHVnaW47IH0KKyAgICB2aXJ0dWFsIGJvb2wgcmVxdWVzdE9iamVjdChjb25zdCBT
dHJpbmcmIHVybCwgY29uc3QgU3RyaW5nJiBtaW1lVHlwZSwgY29uc3QgVmVjdG9yPFN0cmluZz4m
IHBhcmFtTmFtZXMsIGNvbnN0IFZlY3RvcjxTdHJpbmc+JiBwYXJhbVZhbHVlcykgT1ZFUlJJREU7
CiAKIHByaXZhdGU6CiAgICAgdmlydHVhbCBSZW5kZXJFbGVtZW50KiBjcmVhdGVSZW5kZXJlcihQ
YXNzUmVmPFJlbmRlclN0eWxlPikgT1ZFUlJJREU7CkBAIC0xMzgsOCArMTQwLDYgQEAgcHJpdmF0
ZToKICAgICB2aXJ0dWFsIHZvaWQgZGlzcGF0Y2hQZW5kaW5nTW91c2VDbGljaygpIE9WRVJSSURF
OwogICAgIHZvaWQgc2ltdWxhdGVkTW91c2VDbGlja1RpbWVyRmlyZWQoRGVmZXJyYWJsZU9uZVNo
b3RUaW1lcjxIVE1MUGx1Z0luSW1hZ2VFbGVtZW50PiopOwogCi0gICAgdm9pZCBzd2FwUmVuZGVy
ZXJUaW1lckZpcmVkKFRpbWVyPEhUTUxQbHVnSW5JbWFnZUVsZW1lbnQ+Kik7Ci0KICAgICB2b2lk
IHJlc3RhcnRTaW1pbGFyUGx1Z0lucygpOwogCiAgICAgdmlydHVhbCBib29sIGlzUGx1Z0luSW1h
Z2VFbGVtZW50KCkgY29uc3QgT1ZFUlJJREUgeyByZXR1cm4gdHJ1ZTsgfQpAQCAtMTU0LDcgKzE1
NCw2IEBAIHByaXZhdGU6CiAgICAgUmVmUHRyPFJlbmRlclN0eWxlPiBtX2N1c3RvbVN0eWxlRm9y
UGFnZUNhY2hlOwogICAgIFJlZlB0cjxNb3VzZUV2ZW50PiBtX3BlbmRpbmdDbGlja0V2ZW50RnJv
bVNuYXBzaG90OwogICAgIERlZmVycmFibGVPbmVTaG90VGltZXI8SFRNTFBsdWdJbkltYWdlRWxl
bWVudD4gbV9zaW11bGF0ZWRNb3VzZUNsaWNrVGltZXI7Ci0gICAgVGltZXI8SFRNTFBsdWdJbklt
YWdlRWxlbWVudD4gbV9zd2FwUmVuZGVyZXJUaW1lcjsKICAgICBUaW1lcjxIVE1MUGx1Z0luSW1h
Z2VFbGVtZW50PiBtX3JlbW92ZVNuYXBzaG90VGltZXI7CiAgICAgUmVmUHRyPEltYWdlPiBtX3Nu
YXBzaG90SW1hZ2U7CiAgICAgYm9vbCBtX2NyZWF0ZWREdXJpbmdVc2VyR2VzdHVyZTsKSW5kZXg6
IFNvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTFZpZGVvRWxlbWVudC5oCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNv
dXJjZS9XZWJDb3JlL2h0bWwvSFRNTFZpZGVvRWxlbWVudC5oCShyZXZpc2lvbiAxNTk3MzYpCisr
KyBTb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxWaWRlb0VsZW1lbnQuaAkod29ya2luZyBjb3B5KQpA
QCAtNzIsMTIgKzcyLDEyIEBAIHB1YmxpYzoKICAgICBib29sIHNob3VsZERpc3BsYXlQb3N0ZXJJ
bWFnZSgpIGNvbnN0IHsgcmV0dXJuIGRpc3BsYXlNb2RlKCkgPT0gUG9zdGVyIHx8IGRpc3BsYXlN
b2RlKCkgPT0gUG9zdGVyV2FpdGluZ0ZvclZpZGVvOyB9CiAKICAgICBVUkwgcG9zdGVySW1hZ2VV
UkwoKSBjb25zdDsKKyAgICB2aXJ0dWFsIFJlbmRlckVsZW1lbnQqIGNyZWF0ZVJlbmRlcmVyKFBh
c3NSZWY8UmVuZGVyU3R5bGU+KSBPVkVSUklERTsKIAogcHJpdmF0ZToKICAgICBIVE1MVmlkZW9F
bGVtZW50KGNvbnN0IFF1YWxpZmllZE5hbWUmLCBEb2N1bWVudCYsIGJvb2wpOwogCiAgICAgdmly
dHVhbCBib29sIHJlbmRlcmVySXNOZWVkZWQoY29uc3QgUmVuZGVyU3R5bGUmKSBPVkVSUklERTsK
LSAgICB2aXJ0dWFsIFJlbmRlckVsZW1lbnQqIGNyZWF0ZVJlbmRlcmVyKFBhc3NSZWY8UmVuZGVy
U3R5bGU+KSBPVkVSUklERTsKICAgICB2aXJ0dWFsIHZvaWQgZGlkQXR0YWNoUmVuZGVyZXJzKCkg
T1ZFUlJJREU7CiAgICAgdmlydHVhbCB2b2lkIHBhcnNlQXR0cmlidXRlKGNvbnN0IFF1YWxpZmll
ZE5hbWUmLCBjb25zdCBBdG9taWNTdHJpbmcmKSBPVkVSUklERTsKICAgICB2aXJ0dWFsIGJvb2wg
aXNQcmVzZW50YXRpb25BdHRyaWJ1dGUoY29uc3QgUXVhbGlmaWVkTmFtZSYpIGNvbnN0IE9WRVJS
SURFOwpJbmRleDogU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvTWVkaWFQbGF5ZXIu
Y3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL01lZGlh
UGxheWVyLmNwcAkocmV2aXNpb24gMTU5NzM2KQorKysgU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
Z3JhcGhpY3MvTWVkaWFQbGF5ZXIuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0xMjI1LDYgKzEyMjUs
MTQgQEAgc2l6ZV90IE1lZGlhUGxheWVyOjpleHRyYU1lbW9yeUNvc3QoKSBjbwogICAgIHJldHVy
biBtX3ByaXZhdGUtPmV4dHJhTWVtb3J5Q29zdCgpOwogfQogCit1bnNpZ25lZCBsb25nIGxvbmcg
TWVkaWFQbGF5ZXI6OmZpbGVTaXplKCkgY29uc3QKK3sKKyAgICBpZiAoIW1fcHJpdmF0ZSkKKyAg
ICAgICAgcmV0dXJuIDA7CisgICAgCisgICAgcmV0dXJuIG1fcHJpdmF0ZS0+ZmlsZVNpemUoKTsK
K30KKwogdm9pZCBNZWRpYVBsYXllckZhY3RvcnlTdXBwb3J0OjpjYWxsUmVnaXN0ZXJNZWRpYUVu
Z2luZShNZWRpYUVuZ2luZVJlZ2lzdGVyIHJlZ2lzdGVyTWVkaWFFbmdpbmUpCiB7CiAgICAgcmVn
aXN0ZXJNZWRpYUVuZ2luZShhZGRNZWRpYUVuZ2luZSk7CkluZGV4OiBTb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9ncmFwaGljcy9NZWRpYVBsYXllci5oCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL2dyYXBoaWNzL01lZGlhUGxheWVyLmgJKHJldmlzaW9uIDE1OTczNikKKysr
IFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL01lZGlhUGxheWVyLmgJKHdvcmtpbmcg
Y29weSkKQEAgLTUwOCw2ICs1MDgsOCBAQCBwdWJsaWM6CiAKICAgICBzaXplX3QgZXh0cmFNZW1v
cnlDb3N0KCkgY29uc3Q7CiAKKyAgICB1bnNpZ25lZCBsb25nIGxvbmcgZmlsZVNpemUoKSBjb25z
dDsKKwogcHJpdmF0ZToKICAgICBNZWRpYVBsYXllcihNZWRpYVBsYXllckNsaWVudCopOwogICAg
IE1lZGlhUGxheWVyRmFjdG9yeSogbmV4dEJlc3RNZWRpYUVuZ2luZShNZWRpYVBsYXllckZhY3Rv
cnkqKSBjb25zdDsKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL01lZGlh
UGxheWVyUHJpdmF0ZS5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dy
YXBoaWNzL01lZGlhUGxheWVyUHJpdmF0ZS5oCShyZXZpc2lvbiAxNTk3MzYpCisrKyBTb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9NZWRpYVBsYXllclByaXZhdGUuaAkod29ya2luZyBj
b3B5KQpAQCAtMjEzLDYgKzIxMyw4IEBAIHB1YmxpYzoKICAgICB2aXJ0dWFsIFN0cmluZyBsYW5n
dWFnZU9mUHJpbWFyeUF1ZGlvVHJhY2soKSBjb25zdCB7IHJldHVybiBlbXB0eVN0cmluZygpOyB9
CiAKICAgICB2aXJ0dWFsIHNpemVfdCBleHRyYU1lbW9yeUNvc3QoKSBjb25zdCB7IHJldHVybiAw
OyB9CisgICAgCisgICAgdmlydHVhbCB1bnNpZ25lZCBsb25nIGxvbmcgZmlsZVNpemUoKSBjb25z
dCB7IHJldHVybiAwOyB9CiB9OwogCiB9CkluZGV4OiBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9n
cmFwaGljcy9hdmZvdW5kYXRpb24vTWVkaWFQbGF5ZXJQcml2YXRlQVZGb3VuZGF0aW9uLmNwcAo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9hdmZvdW5kYXRp
b24vTWVkaWFQbGF5ZXJQcml2YXRlQVZGb3VuZGF0aW9uLmNwcAkocmV2aXNpb24gMTU5NzM2KQor
KysgU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvYXZmb3VuZGF0aW9uL01lZGlhUGxh
eWVyUHJpdmF0ZUFWRm91bmRhdGlvbi5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTkyMSw3ICs5MjEs
OCBAQCBzaXplX3QgTWVkaWFQbGF5ZXJQcml2YXRlQVZGb3VuZGF0aW9uOjplCiAgICAgaWYgKCFk
dXJhdGlvbikKICAgICAgICAgcmV0dXJuIDA7CiAKLSAgICByZXR1cm4gdG90YWxCeXRlcygpICog
YnVmZmVyZWQoKS0+dG90YWxEdXJhdGlvbigpIC8gZHVyYXRpb247CisgICAgdW5zaWduZWQgbG9u
ZyBsb25nIGV4dHJhID0gdG90YWxCeXRlcygpICogYnVmZmVyZWQoKS0+dG90YWxEdXJhdGlvbigp
IC8gZHVyYXRpb247CisgICAgcmV0dXJuIHN0YXRpY19jYXN0PHVuc2lnbmVkPihleHRyYSk7CiB9
CiAKIHZvaWQgTWVkaWFQbGF5ZXJQcml2YXRlQVZGb3VuZGF0aW9uOjpjbGVhclRleHRUcmFja3Mo
KQpJbmRleDogU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvYXZmb3VuZGF0aW9uL01l
ZGlhUGxheWVyUHJpdmF0ZUFWRm91bmRhdGlvbi5oCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL2dyYXBoaWNzL2F2Zm91bmRhdGlvbi9NZWRpYVBsYXllclByaXZhdGVBVkZv
dW5kYXRpb24uaAkocmV2aXNpb24gMTU5NzM2KQorKysgU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
Z3JhcGhpY3MvYXZmb3VuZGF0aW9uL01lZGlhUGxheWVyUHJpdmF0ZUFWRm91bmRhdGlvbi5oCSh3
b3JraW5nIGNvcHkpCkBAIC0xOTAsNiArMTkwLDcgQEAgcHJvdGVjdGVkOgogCiAgICAgdmlydHVh
bCBib29sIHN1cHBvcnRzRnVsbHNjcmVlbigpIGNvbnN0OwogICAgIHZpcnR1YWwgYm9vbCBzdXBw
b3J0c1NjYW5uaW5nKCkgY29uc3QgeyByZXR1cm4gdHJ1ZTsgfQorICAgIHVuc2lnbmVkIGxvbmcg
bG9uZyBmaWxlU2l6ZSgpIGNvbnN0IHsgcmV0dXJuIHRvdGFsQnl0ZXMoKTsgfQogCiAgICAgLy8g
UmVxdWlyZWQgaW50ZXJmYWNlcyBmb3IgY29uY3JldGUgZGVyaXZlZCBjbGFzc2VzLgogICAgIHZp
cnR1YWwgdm9pZCBjcmVhdGVBVkFzc2V0Rm9yVVJMKGNvbnN0IFN0cmluZyYpID0gMDsKQEAgLTIy
NSw3ICsyMjYsNyBAQCBwcm90ZWN0ZWQ6CiAgICAgdmlydHVhbCB2b2lkIHVwZGF0ZVJhdGUoKSA9
IDA7CiAgICAgdmlydHVhbCBmbG9hdCByYXRlKCkgY29uc3QgPSAwOwogICAgIHZpcnR1YWwgdm9p
ZCBzZWVrVG9UaW1lKGRvdWJsZSB0aW1lLCBkb3VibGUgbmVnYXRpdmVUb2xlcmFuY2UsIGRvdWJs
ZSBwb3NpdGl2ZVRvbGVyYW5jZSkgPSAwOwotICAgIHZpcnR1YWwgdW5zaWduZWQgdG90YWxCeXRl
cygpIGNvbnN0ID0gMDsKKyAgICB2aXJ0dWFsIHVuc2lnbmVkIGxvbmcgbG9uZyB0b3RhbEJ5dGVz
KCkgY29uc3QgPSAwOwogICAgIHZpcnR1YWwgUGFzc1JlZlB0cjxUaW1lUmFuZ2VzPiBwbGF0Zm9y
bUJ1ZmZlcmVkVGltZVJhbmdlcygpIGNvbnN0ID0gMDsKICAgICB2aXJ0dWFsIGRvdWJsZSBwbGF0
Zm9ybU1heFRpbWVTZWVrYWJsZSgpIGNvbnN0ID0gMDsKICAgICB2aXJ0dWFsIGRvdWJsZSBwbGF0
Zm9ybU1pblRpbWVTZWVrYWJsZSgpIGNvbnN0ID0gMDsKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2dyYXBoaWNzL2F2Zm91bmRhdGlvbi9jZi9NZWRpYVBsYXllclByaXZhdGVBVkZvdW5k
YXRpb25DRi5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhp
Y3MvYXZmb3VuZGF0aW9uL2NmL01lZGlhUGxheWVyUHJpdmF0ZUFWRm91bmRhdGlvbkNGLmNwcAko
cmV2aXNpb24gMTU5NzM2KQorKysgU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvYXZm
b3VuZGF0aW9uL2NmL01lZGlhUGxheWVyUHJpdmF0ZUFWRm91bmRhdGlvbkNGLmNwcAkod29ya2lu
ZyBjb3B5KQpAQCAtNzIxLDcgKzcyMSw3IEBAIGZsb2F0IE1lZGlhUGxheWVyUHJpdmF0ZUFWRm91
bmRhdGlvbkNGOjoKICAgICByZXR1cm4gbWF4VGltZUxvYWRlZDsgICAKIH0KIAotdW5zaWduZWQg
TWVkaWFQbGF5ZXJQcml2YXRlQVZGb3VuZGF0aW9uQ0Y6OnRvdGFsQnl0ZXMoKSBjb25zdAordW5z
aWduZWQgbG9uZyBsb25nIE1lZGlhUGxheWVyUHJpdmF0ZUFWRm91bmRhdGlvbkNGOjp0b3RhbEJ5
dGVzKCkgY29uc3QKIHsKICAgICBpZiAoIW1ldGFEYXRhQXZhaWxhYmxlKCkgfHwgIWF2QXNzZXQo
bV9hdmZXcmFwcGVyKSkKICAgICAgICAgcmV0dXJuIDA7CkBAIC03MzQsOCArNzM0LDcgQEAgdW5z
aWduZWQgTWVkaWFQbGF5ZXJQcml2YXRlQVZGb3VuZGF0aW9uQwogICAgICAgICB0b3RhbE1lZGlh
U2l6ZSArPSBBVkNGQXNzZXRUcmFja0dldFRvdGFsU2FtcGxlRGF0YUxlbmd0aChhc3NldFRyYWNr
KTsKICAgICB9CiAKLSAgICAvLyBGSVhNRTogSXQgZG9lc24ndCBzZWVtIHNhZmUgdG8gY2FzdCBh
biBpbnQ2NF90IHRvIHVuc2lnbmVkLgotICAgIHJldHVybiBzdGF0aWNfY2FzdDx1bnNpZ25lZD4o
dG90YWxNZWRpYVNpemUpOworICAgIHJldHVybiBzdGF0aWNfY2FzdDx1bnNpZ25lZCBsb25nIGxv
bmc+KHRvdGFsTWVkaWFTaXplKTsKIH0KIAogTWVkaWFQbGF5ZXJQcml2YXRlQVZGb3VuZGF0aW9u
OjpBc3NldFN0YXR1cyBNZWRpYVBsYXllclByaXZhdGVBVkZvdW5kYXRpb25DRjo6YXNzZXRTdGF0
dXMoKSBjb25zdApJbmRleDogU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvYXZmb3Vu
ZGF0aW9uL2NmL01lZGlhUGxheWVyUHJpdmF0ZUFWRm91bmRhdGlvbkNGLmgKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvYXZmb3VuZGF0aW9uL2NmL01lZGlh
UGxheWVyUHJpdmF0ZUFWRm91bmRhdGlvbkNGLmgJKHJldmlzaW9uIDE1OTczNikKKysrIFNvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2F2Zm91bmRhdGlvbi9jZi9NZWRpYVBsYXllclBy
aXZhdGVBVkZvdW5kYXRpb25DRi5oCSh3b3JraW5nIGNvcHkpCkBAIC03Nyw3ICs3Nyw3IEBAIHBy
aXZhdGU6CiAgICAgdmlydHVhbCB2b2lkIHVwZGF0ZVJhdGUoKTsKICAgICB2aXJ0dWFsIGZsb2F0
IHJhdGUoKSBjb25zdDsKICAgICB2aXJ0dWFsIHZvaWQgc2Vla1RvVGltZShkb3VibGUgdGltZSwg
ZG91YmxlIG5lZ2F0aXZlVG9sZXJhbmNlLCBkb3VibGUgcG9zaXRpdmVUb2xlcmFuY2UpOwotICAg
IHZpcnR1YWwgdW5zaWduZWQgdG90YWxCeXRlcygpIGNvbnN0OworICAgIHZpcnR1YWwgdW5zaWdu
ZWQgbG9uZyBsb25nIHRvdGFsQnl0ZXMoKSBjb25zdDsKICAgICB2aXJ0dWFsIFBhc3NSZWZQdHI8
VGltZVJhbmdlcz4gcGxhdGZvcm1CdWZmZXJlZFRpbWVSYW5nZXMoKSBjb25zdDsKICAgICB2aXJ0
dWFsIGRvdWJsZSBwbGF0Zm9ybU1pblRpbWVTZWVrYWJsZSgpIGNvbnN0OwogICAgIHZpcnR1YWwg
ZG91YmxlIHBsYXRmb3JtTWF4VGltZVNlZWthYmxlKCkgY29uc3Q7CkluZGV4OiBTb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9ncmFwaGljcy9hdmZvdW5kYXRpb24vb2JqYy9NZWRpYVBsYXllclByaXZh
dGVBVkZvdW5kYXRpb25PYmpDLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vZ3JhcGhpY3MvYXZmb3VuZGF0aW9uL29iamMvTWVkaWFQbGF5ZXJQcml2YXRlQVZGb3VuZGF0
aW9uT2JqQy5oCShyZXZpc2lvbiAxNTk3MzYpCisrKyBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9n
cmFwaGljcy9hdmZvdW5kYXRpb24vb2JqYy9NZWRpYVBsYXllclByaXZhdGVBVkZvdW5kYXRpb25P
YmpDLmgJKHdvcmtpbmcgY29weSkKQEAgLTE0OCw3ICsxNDgsNyBAQCBwcml2YXRlOgogICAgIHZp
cnR1YWwgdm9pZCB1cGRhdGVSYXRlKCk7CiAgICAgdmlydHVhbCBmbG9hdCByYXRlKCkgY29uc3Q7
CiAgICAgdmlydHVhbCB2b2lkIHNlZWtUb1RpbWUoZG91YmxlIHRpbWUsIGRvdWJsZSBuZWdhdGl2
ZVRvbGVyYW5jZSwgZG91YmxlIHBvc2l0aXZlVG9sZXJhbmNlKTsKLSAgICB2aXJ0dWFsIHVuc2ln
bmVkIHRvdGFsQnl0ZXMoKSBjb25zdDsKKyAgICB2aXJ0dWFsIHVuc2lnbmVkIGxvbmcgbG9uZyB0
b3RhbEJ5dGVzKCkgY29uc3Q7CiAgICAgdmlydHVhbCBQYXNzUmVmUHRyPFRpbWVSYW5nZXM+IHBs
YXRmb3JtQnVmZmVyZWRUaW1lUmFuZ2VzKCkgY29uc3Q7CiAgICAgdmlydHVhbCBkb3VibGUgcGxh
dGZvcm1NaW5UaW1lU2Vla2FibGUoKSBjb25zdDsKICAgICB2aXJ0dWFsIGRvdWJsZSBwbGF0Zm9y
bU1heFRpbWVTZWVrYWJsZSgpIGNvbnN0OwpJbmRleDogU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
Z3JhcGhpY3MvYXZmb3VuZGF0aW9uL29iamMvTWVkaWFQbGF5ZXJQcml2YXRlQVZGb3VuZGF0aW9u
T2JqQy5tbQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9h
dmZvdW5kYXRpb24vb2JqYy9NZWRpYVBsYXllclByaXZhdGVBVkZvdW5kYXRpb25PYmpDLm1tCShy
ZXZpc2lvbiAxNTk3MzYpCisrKyBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9hdmZv
dW5kYXRpb24vb2JqYy9NZWRpYVBsYXllclByaXZhdGVBVkZvdW5kYXRpb25PYmpDLm1tCSh3b3Jr
aW5nIGNvcHkpCkBAIC04MDMsNyArODAzLDcgQEAgZmxvYXQgTWVkaWFQbGF5ZXJQcml2YXRlQVZG
b3VuZGF0aW9uT2JqQwogICAgIHJldHVybiBtYXhUaW1lTG9hZGVkOyAgIAogfQogCi11bnNpZ25l
ZCBNZWRpYVBsYXllclByaXZhdGVBVkZvdW5kYXRpb25PYmpDOjp0b3RhbEJ5dGVzKCkgY29uc3QK
K3Vuc2lnbmVkIGxvbmcgbG9uZyBNZWRpYVBsYXllclByaXZhdGVBVkZvdW5kYXRpb25PYmpDOjp0
b3RhbEJ5dGVzKCkgY29uc3QKIHsKICAgICBpZiAoIW1ldGFEYXRhQXZhaWxhYmxlKCkpCiAgICAg
ICAgIHJldHVybiAwOwpAQCAtODEyLDcgKzgxMiw3IEBAIHVuc2lnbmVkIE1lZGlhUGxheWVyUHJp
dmF0ZUFWRm91bmRhdGlvbk8KICAgICBmb3IgKEFWUGxheWVySXRlbVRyYWNrICp0aGlzVHJhY2sg
aW4gbV9jYWNoZWRUcmFja3MuZ2V0KCkpCiAgICAgICAgIHRvdGFsTWVkaWFTaXplICs9IFtbdGhp
c1RyYWNrIGFzc2V0VHJhY2tdIHRvdGFsU2FtcGxlRGF0YUxlbmd0aF07CiAKLSAgICByZXR1cm4g
c3RhdGljX2Nhc3Q8dW5zaWduZWQ+KHRvdGFsTWVkaWFTaXplKTsKKyAgICByZXR1cm4gdG90YWxN
ZWRpYVNpemU7CiB9CiAKIHZvaWQgTWVkaWFQbGF5ZXJQcml2YXRlQVZGb3VuZGF0aW9uT2JqQzo6
c2V0QXNzZXQoaWQgYXNzZXQpCkluZGV4OiBTb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFs
U2V0dGluZ3MuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJu
YWxTZXR0aW5ncy5jcHAJKHJldmlzaW9uIDE1OTczNikKKysrIFNvdXJjZS9XZWJDb3JlL3Rlc3Rp
bmcvSW50ZXJuYWxTZXR0aW5ncy5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTk0LDYgKzk0LDcgQEAg
SW50ZXJuYWxTZXR0aW5nczo6QmFja3VwOjpCYWNrdXAoU2V0dGluZwogICAgICwgbV9vcmlnaW5h
bFRpbWVXaXRob3V0TW91c2VNb3ZlbWVudEJlZm9yZUhpZGluZ0NvbnRyb2xzKHNldHRpbmdzLnRp
bWVXaXRob3V0TW91c2VNb3ZlbWVudEJlZm9yZUhpZGluZ0NvbnRyb2xzKCkpCiAgICAgLCBtX3Vz
ZUxlZ2FjeUJhY2tncm91bmRTaXplU2hvcnRoYW5kQmVoYXZpb3Ioc2V0dGluZ3MudXNlTGVnYWN5
QmFja2dyb3VuZFNpemVTaG9ydGhhbmRCZWhhdmlvcigpKQogICAgICwgbV9hdXRvc2Nyb2xsRm9y
RHJhZ0FuZERyb3BFbmFibGVkKHNldHRpbmdzLmF1dG9zY3JvbGxGb3JEcmFnQW5kRHJvcEVuYWJs
ZWQoKSkKKyAgICAsIG1fcGx1Z2luUmVwbGFjZW1lbnRFbmFibGVkKFJ1bnRpbWVFbmFibGVkRmVh
dHVyZXM6OnNoYXJlZEZlYXR1cmVzKCkucGx1Z2luUmVwbGFjZW1lbnRFbmFibGVkKCkpCiB7CiB9
CiAKQEAgLTE1Niw2ICsxNTcsNyBAQCB2b2lkIEludGVybmFsU2V0dGluZ3M6OkJhY2t1cDo6cmVz
dG9yZVRvCiAgICAgc2V0dGluZ3Muc2V0VGltZVdpdGhvdXRNb3VzZU1vdmVtZW50QmVmb3JlSGlk
aW5nQ29udHJvbHMobV9vcmlnaW5hbFRpbWVXaXRob3V0TW91c2VNb3ZlbWVudEJlZm9yZUhpZGlu
Z0NvbnRyb2xzKTsKICAgICBzZXR0aW5ncy5zZXRVc2VMZWdhY3lCYWNrZ3JvdW5kU2l6ZVNob3J0
aGFuZEJlaGF2aW9yKG1fdXNlTGVnYWN5QmFja2dyb3VuZFNpemVTaG9ydGhhbmRCZWhhdmlvcik7
CiAgICAgc2V0dGluZ3Muc2V0QXV0b3Njcm9sbEZvckRyYWdBbmREcm9wRW5hYmxlZChtX2F1dG9z
Y3JvbGxGb3JEcmFnQW5kRHJvcEVuYWJsZWQpOworICAgIFJ1bnRpbWVFbmFibGVkRmVhdHVyZXM6
OnNoYXJlZEZlYXR1cmVzKCkuc2V0UGx1Z2luUmVwbGFjZW1lbnRFbmFibGVkKG1fcGx1Z2luUmVw
bGFjZW1lbnRFbmFibGVkKTsKIH0KIAogLy8gV2UgY2FuJ3QgdXNlIFJlZkNvdW50ZWRTdXBwbGVt
ZW50IGJlY2F1c2UgdGhhdCB3b3VsZCB0cnkgdG8gbWFrZSBJbnRlcm5hbFNldHRpbmdzIFJlZkNv
dW50ZWQKQEAgLTUyOCw0ICs1MzAsOSBAQCB2b2lkIEludGVybmFsU2V0dGluZ3M6OnNldEZvbnRG
YWxsYmFja1ByCiAgICAgc2V0dGluZ3MoKS0+c2V0Rm9udEZhbGxiYWNrUHJlZmVyc1BpY3RvZ3Jh
cGhzKHByZWZlclBpY3RvZ3JhcGhzKTsKIH0KIAordm9pZCBJbnRlcm5hbFNldHRpbmdzOjpzZXRQ
bHVnaW5SZXBsYWNlbWVudEVuYWJsZWQoYm9vbCBlbmFibGVkKQoreworICAgIFJ1bnRpbWVFbmFi
bGVkRmVhdHVyZXM6OnNoYXJlZEZlYXR1cmVzKCkuc2V0UGx1Z2luUmVwbGFjZW1lbnRFbmFibGVk
KGVuYWJsZWQpOworfQorCiB9CkluZGV4OiBTb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFs
U2V0dGluZ3MuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFs
U2V0dGluZ3MuaAkocmV2aXNpb24gMTU5NzM2KQorKysgU291cmNlL1dlYkNvcmUvdGVzdGluZy9J
bnRlcm5hbFNldHRpbmdzLmgJKHdvcmtpbmcgY29weSkKQEAgLTkxLDYgKzkxLDcgQEAgcHVibGlj
OgogICAgICAgICBib29sIG1fb3JpZ2luYWxUaW1lV2l0aG91dE1vdXNlTW92ZW1lbnRCZWZvcmVI
aWRpbmdDb250cm9sczsKICAgICAgICAgYm9vbCBtX3VzZUxlZ2FjeUJhY2tncm91bmRTaXplU2hv
cnRoYW5kQmVoYXZpb3I7CiAgICAgICAgIGJvb2wgbV9hdXRvc2Nyb2xsRm9yRHJhZ0FuZERyb3BF
bmFibGVkOworICAgICAgICBib29sIG1fcGx1Z2luUmVwbGFjZW1lbnRFbmFibGVkOwogICAgIH07
CiAKICAgICBzdGF0aWMgUGFzc1JlZlB0cjxJbnRlcm5hbFNldHRpbmdzPiBjcmVhdGUoUGFnZSog
cGFnZSkKQEAgLTEzNiw2ICsxMzcsNyBAQCBwdWJsaWM6CiAgICAgdm9pZCBzZXRVc2VMZWdhY3lC
YWNrZ3JvdW5kU2l6ZVNob3J0aGFuZEJlaGF2aW9yKGJvb2wgZW5hYmxlZCwgRXhjZXB0aW9uQ29k
ZSYpOwogICAgIHZvaWQgc2V0QXV0b3Njcm9sbEZvckRyYWdBbmREcm9wRW5hYmxlZChib29sIGVu
YWJsZWQsIEV4Y2VwdGlvbkNvZGUmKTsKICAgICB2b2lkIHNldEZvbnRGYWxsYmFja1ByZWZlcnNQ
aWN0b2dyYXBocyhib29sIHByZWZlclBpY3RvZ3JhcGhzLCBFeGNlcHRpb25Db2RlJik7CisgICAg
dm9pZCBzZXRQbHVnaW5SZXBsYWNlbWVudEVuYWJsZWQoYm9vbCk7CiAKIHByaXZhdGU6CiAgICAg
ZXhwbGljaXQgSW50ZXJuYWxTZXR0aW5ncyhQYWdlKik7CkluZGV4OiBTb3VyY2UvV2ViQ29yZS90
ZXN0aW5nL0ludGVybmFsU2V0dGluZ3MuaWRsCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3Jl
L3Rlc3RpbmcvSW50ZXJuYWxTZXR0aW5ncy5pZGwJKHJldmlzaW9uIDE1OTczNikKKysrIFNvdXJj
ZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxTZXR0aW5ncy5pZGwJKHdvcmtpbmcgY29weSkKQEAg
LTYwLDQgKzYwLDUgQEAKICAgICBbUmFpc2VzRXhjZXB0aW9uXSB2b2lkIHNldFVzZUxlZ2FjeUJh
Y2tncm91bmRTaXplU2hvcnRoYW5kQmVoYXZpb3IoYm9vbGVhbiBlbmFibGVkKTsKICAgICBbUmFp
c2VzRXhjZXB0aW9uXSB2b2lkIHNldEF1dG9zY3JvbGxGb3JEcmFnQW5kRHJvcEVuYWJsZWQoYm9v
bGVhbiBlbmFibGVkKTsKICAgICBbUmFpc2VzRXhjZXB0aW9uXSB2b2lkIHNldEZvbnRGYWxsYmFj
a1ByZWZlcnNQaWN0b2dyYXBocyhib29sZWFuIHByZWZlclBpY3RvZ3JhcGhzKTsKKyAgICB2b2lk
IHNldFBsdWdpblJlcGxhY2VtZW50RW5hYmxlZChib29sZWFuIGVuYWJsZWQpOwogfTsKSW5kZXg6
IExheW91dFRlc3RzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9DaGFuZ2VM
b2cJKHJldmlzaW9uIDE1OTc5MCkKKysrIExheW91dFRlc3RzL0NoYW5nZUxvZwkod29ya2luZyBj
b3B5KQpAQCAtMSwzICsxLDE4IEBACisyMDEzLTExLTI2ICBFcmljIENhcmxzb24gIDxlcmljLmNh
cmxzb25AYXBwbGUuY29tPgorCisgICAgICAgIEFsbG93IHRoZSBRdWlja1RpbWUgcGx1Zy1pbiB0
byBiZSByZXBsYWNlZCBieSBzY3JpcHQgaW4gYW4gaXNvbGF0ZWQgd29yZAorICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTI0OTAwCisKKyAgICAgICAgUmV2
aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBwbGF0Zm9ybS9lZmwvVGVzdEV4
cGVjdGF0aW9uczogU2tpcCB0aGUgbmV3IHRlc3QuCisgICAgICAgICogcGxhdGZvcm0vZ3RrL1Rl
c3RFeHBlY3RhdGlvbnM6IERpdHRvLgorICAgICAgICAqIHBsYXRmb3JtL3dpbmNhaXJvL1Rlc3RF
eHBlY3RhdGlvbnM6IERpdHRvLgorICAgICAgICAqIHBsdWdpbnMvcXVpY2t0aW1lLXBsdWdpbi1y
ZXBsYWNlbWVudC5odG1sOiBBZGRlZC4KKyAgICAgICAgKiBwbHVnaW5zL3F1aWNrdGltZS1wbHVn
aW4tcmVwbGFjZW1lbnQtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBwbHVnaW5zL3Jl
c291cmNlcy9vcmFuZ2UubW92OiBSZXBsYWNlIG1vdmllIGNvbXByZXNzZWQgd2l0aCBhbmNpZW50
IGFuaW1hdGVkIGdpZiBjb2RlYyB3aXRoCisgICAgICAgICAgICBvbmUgY29tcHJlc3NlZCB3aXRo
IEguMjY0IGNvZGVjLgorCiAyMDEzLTExLTI2ICBPbGl2ZXIgSHVudCAgPG9saXZlckBhcHBsZS5j
b20+CiAKICAgICAgICAgQ3Jhc2ggaW4gSlNDOjpBU1RCdWlsZGVyOjpFeHByZXNzaW9uIEpTQzo6
UGFyc2VyPEpTQzo6TGV4ZXI8dW5zaWduZWQgY2hhcj4gPjo6cGFyc2VVbmFyeUV4cHJlc3Npb248
SlNDOjpBU1RCdWlsZGVyPihKU0M6OkFTVEJ1aWxkZXImKQpJbmRleDogTGF5b3V0VGVzdHMvcGxh
dGZvcm0vZWZsL1Rlc3RFeHBlY3RhdGlvbnMKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvcGxh
dGZvcm0vZWZsL1Rlc3RFeHBlY3RhdGlvbnMJKHJldmlzaW9uIDE1OTczNikKKysrIExheW91dFRl
c3RzL3BsYXRmb3JtL2VmbC9UZXN0RXhwZWN0YXRpb25zCSh3b3JraW5nIGNvcHkpCkBAIC0xNzI4
LDMgKzE3MjgsNiBAQCB3ZWJraXQub3JnL2IvMTI0NjYzIG1lZGlhL3RyYWNrL3RyYWNrLWxlCiB3
ZWJraXQub3JnL2IvMTI0NjY0IG1lZGlhL3ZpZGVvLXNlZWstd2l0aC1uZWdhdGl2ZS1wbGF5YmFj
ay5odG1sIFsgRmFpbHVyZSBDcmFzaCBdCiAKIHdlYmtpdC5vcmcvYi8xMjQ2NjUgbWVkaWEvdmlk
ZW8tZW5kZWQtZXZlbnQtbmVnYXRpdmUtcGxheWJhY2suaHRtbCBbIEZhaWx1cmUgUGFzcyBdCisK
KyMgUXVpY2tUaW1lIHBsdWctaW4gbm90IHJlbGV2YW50IHRvIHRoaXMgcG9ydAorcGx1Z2lucy9x
dWlja3RpbWUtcGx1Z2luLXJlcGxhY2VtZW50Lmh0bWwgWyBTa2lwIF0KSW5kZXg6IExheW91dFRl
c3RzL3BsYXRmb3JtL2d0ay9UZXN0RXhwZWN0YXRpb25zCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRl
c3RzL3BsYXRmb3JtL2d0ay9UZXN0RXhwZWN0YXRpb25zCShyZXZpc2lvbiAxNTk3MzYpCisrKyBM
YXlvdXRUZXN0cy9wbGF0Zm9ybS9ndGsvVGVzdEV4cGVjdGF0aW9ucwkod29ya2luZyBjb3B5KQpA
QCAtNTExLDYgKzUxMSw5IEBAIHdlYmtpdC5vcmcvYi8xMDcxOTQgaHR0cC90ZXN0cy9zZWN1cml0
eS8KICMgY3J5cHRvLnN1YnRsZSBpcyBub3QgeWV0IGVuYWJsZWQKIGNyeXB0by9zdWJ0bGUgWyBT
a2lwIF0KIAorIyBRdWlja1RpbWUgcGx1Zy1pbiBub3QgcmVsZXZhbnQgdG8gdGhpcyBwb3J0Citw
bHVnaW5zL3F1aWNrdGltZS1wbHVnaW4tcmVwbGFjZW1lbnQuaHRtbCBbIFNraXAgXQorCiAjLy8v
Ly8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8v
Ly8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwogIyBFbmQgb2YgRXhwZWN0ZWQgZmFpbHVyZXMK
ICMvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8v
Ly8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCkluZGV4OiBMYXlvdXRUZXN0cy9wbGF0
Zm9ybS93aW5jYWlyby9UZXN0RXhwZWN0YXRpb25zCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3Rz
L3BsYXRmb3JtL3dpbmNhaXJvL1Rlc3RFeHBlY3RhdGlvbnMJKHJldmlzaW9uIDE1OTczNikKKysr
IExheW91dFRlc3RzL3BsYXRmb3JtL3dpbmNhaXJvL1Rlc3RFeHBlY3RhdGlvbnMJKHdvcmtpbmcg
Y29weSkKQEAgLTI4NTMsMyArMjg1Myw2IEBAIGVkaXRpbmcvc2VjdXJlLWlucHV0IFsgRmFpbHVy
ZSBdCiAKICMgY3J5cHRvLnN1YnRsZSBpcyBub3QgeWV0IGVuYWJsZWQKIGNyeXB0by9zdWJ0bGUg
WyBTa2lwIF0KKworIyBRdWlja1RpbWUgcGx1Zy1pbiBub3QgcmVsZXZhbnQgdG8gdGhpcyBwb3J0
CitwbHVnaW5zL3F1aWNrdGltZS1wbHVnaW4tcmVwbGFjZW1lbnQuaHRtbCBbIFNraXAgXQpJbmRl
eDogTGF5b3V0VGVzdHMvcGx1Z2lucy9xdWlja3RpbWUtcGx1Z2luLXJlcGxhY2VtZW50Lmh0bWwK
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvcGx1Z2lucy9xdWlja3RpbWUtcGx1Z2luLXJlcGxh
Y2VtZW50Lmh0bWwJKHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9wbHVnaW5zL3F1aWNrdGlt
ZS1wbHVnaW4tcmVwbGFjZW1lbnQuaHRtbAkod29ya2luZyBjb3B5KQpAQCAtMCwwICsxLDEyNCBA
QAorPCFET0NUWVBFIGh0bWw+Cis8aHRtbD4KKyAgICA8aGVhZD4KKyAgICAgICAgPHNjcmlwdCBz
cmM9Ii4uL3Jlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+CisgICAgICAgIDxzY3Jp
cHQ+CisgICAgICAgICAgICB2YXIgZW1iZWQ7CisgICAgICAgICAgICB2YXIgc3JjID0gInJlc291
cmNlcy9vcmFuZ2UubW92IjsKKworICAgICAgICAgICAgZnVuY3Rpb24gbG9nRXZlbnQoZXZlbnQp
CisgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgZGVidWcoIjxpPkVWRU5UKCIgKyBldmVu
dC50eXBlICsgIik8L2k+Iik7CisgICAgICAgICAgICB9CisgICAgICAgICAgICAKKyAgICAgICAg
ICAgIGZ1bmN0aW9uIHNlZWtlZCgpCisgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgZGVi
dWcoIiIpOworICAgICAgICAgICAgICAgIHNob3VsZEV2YWx1YXRlVG8oImVtYmVkLkdldFRpbWUo
KSIsIGVtYmVkLkdldFRpbWVTY2FsZSgpICogMik7CisgICAgICAgICAgICAgICAgZXZhbEFuZExv
ZygiZW1iZWQuUGxheSgpIik7CisgICAgICAgICAgICB9CisKKyAgICAgICAgICAgIGZ1bmN0aW9u
IHBsYXlpbmcoZXZlbnQpCisgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgZGVidWcoIiIp
OworICAgICAgICAgICAgICAgIGxvZ0V2ZW50KGV2ZW50KTsKKyAgICAgICAgICAgICAgICBzaG91
bGRFdmFsdWF0ZVRvKCJlbWJlZC5HZXRSYXRlKCkiLCAxKTsKKyAgICAgICAgICAgICAgICBldmFs
QW5kTG9nKCJlbWJlZC5TdG9wKCkiKTsKKyAgICAgICAgICAgIH0KKyAgICAgICAgICAgIAorICAg
ICAgICAgICAgZnVuY3Rpb24gcGF1c2VkKGV2ZW50KQorICAgICAgICAgICAgeworICAgICAgICAg
ICAgICAgIGRlYnVnKCIiKTsKKyAgICAgICAgICAgICAgICBsb2dFdmVudChldmVudCkKKyAgICAg
ICAgICAgICAgICBzaG91bGRFdmFsdWF0ZVRvKCJlbWJlZC5HZXRSYXRlKCkiLCAwKTsKKworICAg
ICAgICAgICAgICAgIGRlYnVnKCIiKTsKKyAgICAgICAgICAgICAgICBldmFsQW5kTG9nKCJlbWJl
ZC5TZXRVUkwoJycpIik7CisgICAgICAgICAgICB9CisgICAgICAgICAgICAKKyAgICAgICAgICAg
IGZ1bmN0aW9uIGVycm9yKGV2ZW50KQorICAgICAgICAgICAgeworICAgICAgICAgICAgICAgIGxv
Z0V2ZW50KGV2ZW50KQorICAgICAgICAgICAgICAgIHNob3VsZEJlRXF1YWxUb1N0cmluZygiZW1i
ZWQuR2V0VVJMKCkiLCAiIik7CisgICAgICAgICAgICAgICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5n
KCJlbWJlZC5HZXRQbHVnaW5TdGF0dXMoKSIsICJFcnJvciIpOworICAgICAgICAgICAgICAgIGRl
YnVnKCI8YnI+RU5EIFRFU1QuIik7CisgICAgICAgICAgICAgICAgaWYgKHdpbmRvdy50ZXN0UnVu
bmVyKQorICAgICAgICAgICAgICAgICAgICB0ZXN0UnVubmVyLm5vdGlmeURvbmUoKTsKKyAgICAg
ICAgICAgIH0KKyAgICAgICAgICAgIAorICAgICAgICAgICAgZnVuY3Rpb24gdGVzdChldmVudCkK
KyAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICBsb2dFdmVudChldmVudCkKKworICAgICAg
ICAgICAgICAgIGlmICh3aW5kb3cuaW50ZXJuYWxzKSB7CisgICAgICAgICAgICAgICAgICAgIGRl
YnVnKCI8YnI+KiogVGVzdCB0byBtYWtlIHN1cmUgJmx0O3ZpZGVvJmd0OyBlbGVtZW50IGlzIGlu
IHRoZSBzaGFkb3cgRE9NLiIpOworICAgICAgICAgICAgICAgICAgICBldmFsQW5kTG9nKCJzaGFk
b3dFbGVtZW50ID0gaW50ZXJuYWxzLnNoYWRvd1Jvb3QoZW1iZWQpLmZpcnN0Q2hpbGQiKTsKKyAg
ICAgICAgICAgICAgICAgICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJzaGFkb3dFbGVtZW50LnRh
Z05hbWUiLCAiVklERU8iKTsKKyAgICAgICAgICAgICAgICAgICAgc2hvdWxkQmVFcXVhbFRvU3Ry
aW5nKCJpbnRlcm5hbHMuc2hhZG93UHNldWRvSWQoc2hhZG93RWxlbWVudCkiLCAiLXdlYmtpdC1w
bHVnaW4tcmVwbGFjZW1lbnQiKTsKKyAgICAgICAgICAgICAgICB9IGVsc2UgeworICAgICAgICAg
ICAgICAgICAgICBkZWJ1ZygiIik7CisgICAgICAgICAgICAgICAgICAgIHRlc3RGYWlsZWQoIlRo
aXMgdGVzdCBtdXN0IGJlIHJ1biBpbiBEUlQuIik7CisgICAgICAgICAgICAgICAgICAgIGRlYnVn
KCIiKTsKKyAgICAgICAgICAgICAgICB9CisKKyAgICAgICAgICAgICAgICBkZWJ1ZygiPGJyPioq
IFRlc3QgZm9yIHRoZSBwcmVzZW5jZSBvZiBvdmVycmlkZGVuIG1ldGhvZHMuIik7CisgICAgICAg
ICAgICAgICAgdmFyIG1ldGhvZHMgPSBbICJTZXRVUkwiLCAiR2V0VVJMIiwgIlBsYXkiLCAiU3Rv
cCIsICJHZXRSYXRlIiwgIlNldFJhdGUiLCAiSXNGdWxsU2NyZWVuIiwgCisgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICJFeGl0RnVsbFNjcmVlbiIsICJHZXRQbHVnaW5TdGF0dXMiLCAi
R2V0VGltZSIsICJTZXRUaW1lIiwgIlNlZWtUb0RhdGUiLCAiR2V0RGF0ZSIsIAorICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAiR2V0RHVyYXRpb24iLCAiR2V0VGltZVNjYWxlIiwgIkdl
dE1heFRpbWVMb2FkZWQiLCAiR2V0TWF4Qnl0ZXNMb2FkZWQiLCAKKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIkdldE1vdmllU2l6ZSIsICJHZXRUaW1lZE1ldGFkYXRhVXBkYXRlcyIs
ICJHZXRBY2Nlc3NMb2ciLCAiR2V0RXJyb3JMb2ciCisgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBdOworICAgICAgICAgICAgICAgIGZvciAoaSA9IDA7IGkgPCBtZXRob2RzLmxlbmd0aDsg
KytpKSB7CisgICAgICAgICAgICAgICAgICAgIHZhciB0eXBlID0gdHlwZW9mIGVtYmVkW21ldGhv
ZHNbaV1dOworICAgICAgICAgICAgICAgICAgICBpZiAodHlwZSA9PSAiZnVuY3Rpb24iKQorICAg
ICAgICAgICAgICAgICAgICAgICAgdGVzdFBhc3NlZCgiZW1iZWQuIiArIG1ldGhvZHNbaV0gKyAi
IGlzIGEgZnVuY3Rpb24uIik7CisgICAgICAgICAgICAgICAgICAgIGVsc2UKKyAgICAgICAgICAg
ICAgICAgICAgICAgIHRlc3RGYWlsZWQoImVtYmVkLiIgKyBtZXRob2RzW2ldICsgIiBzaG91bGQg
YmUgYSBmdW5jdGlvbiBidXQgaXMgXCIiICsgdHlwZSArICJcIi4iKTsKKyAgICAgICAgICAgICAg
ICB9CisKKyAgICAgICAgICAgICAgICBkZWJ1ZygiPGJyPioqIFRlc3Qgb3ZlcnJpZGRlbiBtZXRo
b2RzLiIpOworICAgICAgICAgICAgICAgIHNob3VsZEJlVHJ1ZSgiZW1iZWQuR2V0VVJMKCkuaW5k
ZXhPZignIiArIHNyYyArICInKSAhPSAtMSIpOworICAgICAgICAgICAgICAgIHNob3VsZEV2YWx1
YXRlVG8oImVtYmVkLkdldER1cmF0aW9uKCkiLCAzMDAwMDApOworICAgICAgICAgICAgICAgIHNo
b3VsZEV2YWx1YXRlVG8oImVtYmVkLkdldE1vdmllU2l6ZSgpIiwgMjQ5NjIpOworICAgICAgICAg
ICAgICAgIHNob3VsZEV2YWx1YXRlVG8oImVtYmVkLkdldE1heFRpbWVMb2FkZWQoKSIsIDMwMDAw
MCk7CisgICAgICAgICAgICAgICAgc2hvdWxkRXZhbHVhdGVUbygiZW1iZWQuR2V0TWF4Qnl0ZXNM
b2FkZWQoKSIsIDI0OTYyKTsKKyAgICAgICAgICAgICAgICBzaG91bGRFdmFsdWF0ZVRvKCJlbWJl
ZC5HZXRNb3ZpZVNpemUoKSIsIDI0OTYyKTsKKyAgICAgICAgICAgICAgICBzaG91bGRCZUVxdWFs
VG9TdHJpbmcoImVtYmVkLkdldFBsdWdpblN0YXR1cygpIiwgIlBsYXlhYmxlIik7CisgICAgICAg
ICAgICAgICAgCisgICAgICAgICAgICAgICAgLy8gIkdldERhdGUoKSIgc2hvdWxkIHJldHVybiB0
aGUgY3VycmVudCBkYXRlLCBjbGVhciBzZWNvbmRzIGFuZCBtaWxsaXNlY29uZHMgCisgICAgICAg
ICAgICAgICAgdmFyIG5vdyA9IG5ldyBEYXRlKCk7CisgICAgICAgICAgICAgICAgc2hvdWxkQmVD
bG9zZVRvKCJuZXcgRGF0ZShlbWJlZC5HZXREYXRlKCkpIC0gbmV3IERhdGUoKSIsIDAsIDEwMCk7
CisKKyAgICAgICAgICAgICAgICBldmFsQW5kTG9nKCJlbWJlZC5TZXRUaW1lKGVtYmVkLkdldFRp
bWVTY2FsZSgpICogMikiKTsKKyAgICAgICAgICAgICAgICBzZXRUaW1lb3V0KHNlZWtlZCwgNTAw
KTsKKyAgICAgICAgICAgIH0KKyAgICAgICAgICAgIAorICAgICAgICAgICAgZnVuY3Rpb24gc2V0
dXAoKQorICAgICAgICAgICAgeworICAgICAgICAgICAgICAgIGlmICh3aW5kb3cudGVzdFJ1bm5l
cikgeworICAgICAgICAgICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci53YWl0VW50aWxEb25l
KCk7CisgICAgICAgICAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVyLmR1bXBBc1RleHQoKQor
ICAgICAgICAgICAgICAgICAgICB3aW5kb3cuaW50ZXJuYWxzLnNldHRpbmdzLnNldFBsdWdpblJl
cGxhY2VtZW50RW5hYmxlZCh0cnVlKTsKKyAgICAgICAgICAgICAgICB9CisgICAgICAgICAgICAg
ICAgZGl2ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInBhcmVudCIpOworICAgICAgICAgICAg
ICAgIGRpdi5pbm5lckhUTUwgPSAnPGVtYmVkIHNyYz0iJyArIHNyYyArICciIHdpZHRoPSI2NDAi
IGhlaWdodD0iNDgwIiBwb3N0ZG9tZXZlbnRzPXRydWU+JzsKKyAgICAgICAgICAgICAgICAKKyAg
ICAgICAgICAgICAgICB2YXIgZXZlbnRzID0gWyAicXRfYmVnaW4iLCAicXRfdmFsaWRhdGVkIiwg
InF0X2VudGVyZnVsbHNjcmVlbiIsICJxdF9leGl0ZnVsbHNjcmVlbiIsIAorICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAicXRfbG9hZGVkbWV0YWRhIiwgInF0X2NhbnBsYXkiLCAicXRf
ZW5kZWQiLCAicXRfdGltZWRtZXRhZGF0YXVwZGF0ZWQiIAorICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgXTsKKyAgICAgICAgICAgICAgICBlbWJlZCA9IGRpdi5maXJzdENoaWxkOworICAg
ICAgICAgICAgICAgIGZvciAoaSA9IDA7IGkgPCBldmVudHMubGVuZ3RoOyArK2kpCisgICAgICAg
ICAgICAgICAgICAgIGVtYmVkLmFkZEV2ZW50TGlzdGVuZXIoZXZlbnRzW2ldLCBsb2dFdmVudCwg
dHJ1ZSk7CisgICAgICAgICAgICAgICAgZW1iZWQuYWRkRXZlbnRMaXN0ZW5lcigicXRfY2FucGxh
eXRocm91Z2giLCB0ZXN0LCB0cnVlKTsKKyAgICAgICAgICAgICAgICBlbWJlZC5hZGRFdmVudExp
c3RlbmVyKCJxdF9wbGF5IiwgcGxheWluZywgdHJ1ZSk7CisgICAgICAgICAgICAgICAgZW1iZWQu
YWRkRXZlbnRMaXN0ZW5lcigicXRfcGF1c2UiLCBwYXVzZWQsIHRydWUpOworICAgICAgICAgICAg
ICAgIGVtYmVkLmFkZEV2ZW50TGlzdGVuZXIoInF0X2Vycm9yIiwgZXJyb3IsIHRydWUpOworICAg
ICAgICAgICAgfQorICAgICAgICA8L3NjcmlwdD4KKyAgICA8L2hlYWQ+CisKKyAgICA8Ym9keSBv
bmxvYWQ9InNldHVwKCkiPgorICAgICAgICA8ZGl2IGlkPXBhcmVudD48L2Rpdj4KKyAgICAgICAg
PHA+CisgICAgICAgIDxkaXYgaWQ9Y29uc29sZT48L2Rpdj4KKyAgICA8L2JvZHk+Cis8L2h0bWw+
CkluZGV4OiBMYXlvdXRUZXN0cy9wbHVnaW5zL3Jlc291cmNlcy9vcmFuZ2UubW92Cj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KQ2Fubm90IGRpc3BsYXk6IGZpbGUgbWFya2VkIGFzIGEgYmluYXJ5IHR5cGUuCnN2bjptaW1l
LXR5cGUgPSBhcHBsaWNhdGlvbi9vY3RldC1zdHJlYW0KCkFBQUFJR1owZVhCeGRDQWdJQVVEQUhG
MElDQUFBQUFBQUFBQUFBQUFBQUFBQUE3VGJXOXZkZ0FBQUd4dGRtaGtBQUFBQU02NWVtVE8KdVhw
a0FBQUNXQUFBRjNBQUFRQUFBUUFBQUFBQUFBQUFBQUFBQUFGSzl3QUFBQUFBQUFBQUFBQUFBQUFC
U3FzQUFBQUFBQUFBQUFBQQpBQUJBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFB
QUFBQUFnQUFDL0YwY21GckFBQUFYSFJyYUdRQUFBQVB6cmw1CldzNjVlbVFBQUFBQkFBQUFBQUFB
RjNBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFFQUFBQUFBQUFBQUFBQUFBQUFBQUFCQUFBQUFBQUEK
QUFBQUFBQUFBQUJBQUFBQUFxc0FBQUhnQUFBQUFBQkVkR0Z3ZEFBQUFCUmpiR1ZtQUFBQUFBS3JB
QUFCNEFBQUFBQUFGSEJ5YjJZQQpBQUFBQXFzQUFBSGdBQUFBQUFBVVpXNXZaZ0FBQUFBQ3F3QUFB
ZUFBQUFBQUFDUmxaSFJ6QUFBQUhHVnNjM1FBQUFBQUFBQUFBUUFBCkYzQUFBQUFBQUFFQUFBQUFD
eGx0WkdsaEFBQUFJRzFrYUdRQUFBQUF6cmw2Wk02NWVtUUFBQUpZQUFBWG1BQUFBQUFBQUFBNmFH
UnMKY2dBQUFBQnRhR3h5ZG1sa1pXRndjR3dRQUFBQUFBRUE1UmxCY0hCc1pTQldhV1JsYnlCTlpX
UnBZU0JJWVc1a2JHVnlBQUFLdDIxcApibVlBQUFBVWRtMW9aQUFBQUFFQVFJQUFnQUNBQUFBQUFE
bG9aR3h5QUFBQUFHUm9iSEpoYkdsellYQndiQkFBQUFFQUFRRDlHRUZ3CmNHeGxJRUZzYVdGeklF
UmhkR0VnU0dGdVpHeGxjZ0FBQUNSa2FXNW1BQUFBSEdSeVpXWUFBQUFBQUFBQUFRQUFBQXhoYkds
ekFBQUEKQVFBQUNqNXpkR0pzQUFBQXAzTjBjMlFBQUFBQUFBQUFBUUFBQUpkaGRtTXhBQUFBQUFB
QUFBRUFBUUFCWVhCd2JBQUFCQUFBQUFRQQpBcXNCNEFCSUFBQUFTQUFBQUFBQUFBQUJCVWd1TWpZ
MEFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUdQLy9BQUFBCkVtTnZiSEp1WTJ4
akFBWUFBUUFHQUFBQUsyRjJZME1CVFVBVy93RUFGQ2ROUUJhcEdCV0h2ZmdEVUdBUVl3clh2ZkFR
QVFBRUtONEoKeUFBQUFBQUFBQUFZYzNSMGN3QUFBQUFBQUFBQkFBQUFsd0FBQUNnQUFBU1lZM1Iw
Y3dBQUFBQUFBQUNSQUFBQUFRQUFBQUFBQUFBQgpBQUFBS0FBQUFBSC8vLy9ZQUFBQUFRQUFBQ2dB
QUFBQi8vLy8yQUFBQUFFQUFBQW9BQUFBQWYvLy85Z0FBQUFCQUFBQUtBQUFBQUgvCi8vL1lBQUFB
QVFBQUFDZ0FBQUFCLy8vLzJBQUFBQUVBQUFBb0FBQUFBZi8vLzlnQUFBQUJBQUFBS0FBQUFBSC8v
Ly9ZQUFBQUFRQUEKQUNnQUFBQUIvLy8vMkFBQUFBRUFBQUFvQUFBQUFmLy8vOWdBQUFBQkFBQUFL
QUFBQUFILy8vL1lBQUFBQVFBQUFDZ0FBQUFCLy8vLwoyQUFBQUFJQUFBQUFBQUFBQVFBQUFDZ0FB
QUFCLy8vLzJBQUFBQUVBQUFBb0FBQUFBZi8vLzlnQUFBQUJBQUFBS0FBQUFBSC8vLy9ZCkFBQUFB
UUFBQUNnQUFBQUIvLy8vMkFBQUFBRUFBQUFvQUFBQUFmLy8vOWdBQUFBQkFBQUFLQUFBQUFILy8v
L1lBQUFBQVFBQUFDZ0EKQUFBQi8vLy8yQUFBQUFFQUFBQW9BQUFBQWYvLy85Z0FBQUFCQUFBQUtB
QUFBQUgvLy8vWUFBQUFBUUFBQUNnQUFBQUIvLy8vMkFBQQpBQUVBQUFBb0FBQUFBZi8vLzlnQUFB
QUNBQUFBQUFBQUFBRUFBQUFvQUFBQUFmLy8vOWdBQUFBQkFBQUFLQUFBQUFILy8vL1lBQUFBCkFR
QUFBQ2dBQUFBQi8vLy8yQUFBQUFFQUFBQW9BQUFBQWYvLy85Z0FBQUFCQUFBQUtBQUFBQUgvLy8v
WUFBQUFBUUFBQUNnQUFBQUIKLy8vLzJBQUFBQUVBQUFBb0FBQUFBZi8vLzlnQUFBQUJBQUFBS0FB
QUFBSC8vLy9ZQUFBQUFRQUFBQ2dBQUFBQi8vLy8yQUFBQUFFQQpBQUFvQUFBQUFmLy8vOWdBQUFB
QkFBQUFLQUFBQUFILy8vL1lBQUFBQWdBQUFBQUFBQUFCQUFBQUtBQUFBQUgvLy8vWUFBQUFBUUFB
CkFDZ0FBQUFCLy8vLzJBQUFBQUVBQUFBb0FBQUFBZi8vLzlnQUFBQUJBQUFBS0FBQUFBSC8vLy9Z
QUFBQUFRQUFBQ2dBQUFBQi8vLy8KMkFBQUFBRUFBQUFvQUFBQUFmLy8vOWdBQUFBQkFBQUFLQUFB
QUFILy8vL1lBQUFBQVFBQUFDZ0FBQUFCLy8vLzJBQUFBQUVBQUFBbwpBQUFBQWYvLy85Z0FBQUFC
QUFBQUtBQUFBQUgvLy8vWUFBQUFBUUFBQUNnQUFBQUIvLy8vMkFBQUFBSUFBQUFBQUFBQUFRQUFB
Q2dBCkFBQUIvLy8vMkFBQUFBRUFBQUFvQUFBQUFmLy8vOWdBQUFBQkFBQUFLQUFBQUFILy8vL1lB
QUFBQVFBQUFDZ0FBQUFCLy8vLzJBQUEKQUFFQUFBQW9BQUFBQWYvLy85Z0FBQUFCQUFBQUtBQUFB
QUgvLy8vWUFBQUFBUUFBQUNnQUFBQUIvLy8vMkFBQUFBRUFBQUFvQUFBQQpBZi8vLzlnQUFBQUJB
QUFBS0FBQUFBSC8vLy9ZQUFBQUFRQUFBQ2dBQUFBQi8vLy8yQUFBQUFFQUFBQW9BQUFBQWYvLy85
Z0FBQUFDCkFBQUFBQUFBQUFFQUFBQW9BQUFBQWYvLy85Z0FBQUFCQUFBQUtBQUFBQUgvLy8vWUFB
QUFBUUFBQUNnQUFBQUIvLy8vMkFBQUFBRUEKQUFBb0FBQUFBZi8vLzlnQUFBQUJBQUFBS0FBQUFB
SC8vLy9ZQUFBQUFRQUFBQ2dBQUFBQi8vLy8yQUFBQUFFQUFBQW9BQUFBQWYvLwovOWdBQUFBQkFB
QUFLQUFBQUFILy8vL1lBQUFBQVFBQUFDZ0FBQUFCLy8vLzJBQUFBQUVBQUFBb0FBQUFBZi8vLzln
QUFBQUJBQUFBCktBQUFBQUgvLy8vWUFBQUFBZ0FBQUFBQUFBQUJBQUFBS0FBQUFBSC8vLy9ZQUFB
QUFRQUFBQ2dBQUFBQi8vLy8yQUFBQUFFQUFBQW8KQUFBQUFmLy8vOWdBQUFBZ1kzTnNad0FBQUFB
QUFBQW8vLy8vMkFBQUFDZ0FBQUFBQUFBWG1BQUFBQ3h6ZEhOekFBQUFBQUFBQUFjQQpBQUFCQUFB
QUdRQUFBREVBQUFCSkFBQUFZUUFBQUhrQUFBQ1JBQUFBbzNOa2RIQUFBQUFBQUVBSVFBaEFDRUFJ
UUFoQUNFQUlRQWhBCkNFQUlRQWdJQUVBSVFBaEFDRUFJUUFoQUNFQUlRQWhBQ0VBSVFBZ0lBRUFJ
UUFoQUNFQUlRQWhBQ0VBSVFBaEFDRUFJUUFnSUFFQUkKUUFoQUNFQUlRQWhBQ0VBSVFBaEFDRUFJ
UUFnSUFFQUlRQWhBQ0VBSVFBaEFDRUFJUUFoQUNFQUlRQWdJQUVBSVFBaEFDRUFJUUFoQQpDRUFJ
UUFoQUNFQUlRQWdJQUVBSVFBaEFDQUFBQU1SemRITmpBQUFBQUFBQUFBOEFBQUFCQUFBQUJBQUFB
QUVBQUFBR0FBQUFBUUFBCkFBRUFBQUFIQUFBQUJBQUFBQUVBQUFBTUFBQUFBUUFBQUFFQUFBQU5B
QUFBQkFBQUFBRUFBQUFTQUFBQUFRQUFBQUVBQUFBVEFBQUEKQkFBQUFBRUFBQUFZQUFBQUFRQUFB
QUVBQUFBWkFBQUFCQUFBQUFFQUFBQWVBQUFBQVFBQUFBRUFBQUFmQUFBQUJBQUFBQUVBQUFBawpB
QUFBQVFBQUFBRUFBQUFsQUFBQUJBQUFBQUVBQUFBcUFBQUFBUUFBQUFFQUFBQXJBQUFBQkFBQUFB
RUFBQUp3YzNSemVnQUFBQUFBCkFBQUFBQUFBbHdBQUJtVUFBQUJmQUFBQVhnQUFBRjhBQUFCZUFB
QUFYd0FBQUY0QUFBQmZBQUFBWGdBQUFGOEFBQUJlQUFBQVh3QUEKQUY0QUFBQmZBQUFBWGdBQUFG
OEFBQUJlQUFBQVh3QUFBRjRBQUFCZkFBQUFYZ0FBQUY4QUFBQmVBQUFBWFFBQUJsVUFBQUJmQUFB
QQpYZ0FBQUY4QUFBQmVBQUFBWHdBQUFGNEFBQUJmQUFBQVhnQUFBRjhBQUFCZUFBQUFYd0FBQUY0
QUFBQmZBQUFBWGdBQUFGOEFBQUJlCkFBQUFYd0FBQUY0QUFBQmZBQUFBWGdBQUFGOEFBQUJlQUFB
QVhRQUFCbFVBQUFCZkFBQUFYZ0FBQUY4QUFBQmVBQUFBWHdBQUFGNEEKQUFCZkFBQUFYZ0FBQUY4
QUFBQmVBQUFBWHdBQUFGNEFBQUJmQUFBQVhnQUFBRjhBQUFCZUFBQUFYd0FBQUY0QUFBQmZBQUFB
WGdBQQpBRjhBQUFCZUFBQUFYUUFBQmxVQUFBQmZBQUFBWGdBQUFGOEFBQUJlQUFBQVh3QUFBRjRB
QUFCZkFBQUFYZ0FBQUY4QUFBQmVBQUFBClh3QUFBRjRBQUFCZkFBQUFYZ0FBQUY4QUFBQmVBQUFB
WHdBQUFGNEFBQUJmQUFBQVhnQUFBRjhBQUFCZUFBQUFYUUFBQmxVQUFBQmYKQUFBQVhnQUFBRjhB
QUFCZUFBQUFYd0FBQUY0QUFBQmZBQUFBWGdBQUFGOEFBQUJlQUFBQVh3QUFBRjRBQUFCZkFBQUFY
Z0FBQUY4QQpBQUJlQUFBQVh3QUFBRjRBQUFCZkFBQUFYZ0FBQUY4QUFBQmVBQUFBWFFBQUJsVUFB
QUJmQUFBQVhnQUFBRjhBQUFCZUFBQUFYd0FBCkFGNEFBQUJmQUFBQVhnQUFBRjhBQUFCZUFBQUFY
d0FBQUY0QUFBQmZBQUFBWGdBQUFGOEFBQUJlQUFBQVh3QUFBRjRBQUFCZkFBQUEKWGdBQUFGOEFB
QUJlQUFBQVhRQUFCbFVBQUFCZkFBQUFYZ0FBQUY4QUFBQmVBQUFBWHdBQUFGNEFBQUM4YzNSamJ3
QUFBQUFBQUFBcgpBQUFQR3dBQUZwd0FBQmdXQUFBWmtBQUFHd29BQUJ5RUFBQWM0Z0FBSkZFQUFD
WExBQUFuUlFBQUtMOEFBQ281QUFBcW1BQUFMQklBCkFET0JBQUEwK3dBQU5uVUFBRGZ2QUFBNFRR
QUFPY2NBQUR0QkFBQkNzQUFBUkNvQUFFV2tBQUJHQXdBQVIzMEFBRWozQUFCS2J3QUEKVWVBQUFG
TmFBQUJUdUFBQVZUSUFBRmFzQUFCWUpnQUFYNVVBQUdFUEFBQmhiZ0FBWXVnQUFHUmlBQUJsM0FB
QVoxWUFBRzdGQUFCdgpJd0FBQUF4MVpIUmhBQUFBQUFBQUFrUnRaWFJoQUFBQUlHaGtiSElBQUFB
QUFBQUFBRzFrZEdFQUFBQUFBQUFBQUFBQUFBQUFBQUU0CmEyVjVjd0FBQUFBQUFBQUdBQUFBT20x
a2RHRmpiMjB1WVhCd2JHVXVjWFZwWTJ0MGFXMWxMbkJzWVhsbGNpNXRiM1pwWlM1MmFYTjEKWVd3
dVluSnBaMmgwYm1WemN3QUFBRFZ0WkhSaFkyOXRMbUZ3Y0d4bExuRjFhV05yZEdsdFpTNXdiR0Y1
WlhJdWJXOTJhV1V1ZG1segpkV0ZzTG1OdmJHOXlBQUFBTkcxa2RHRmpiMjB1WVhCd2JHVXVjWFZw
WTJ0MGFXMWxMbkJzWVhsbGNpNXRiM1pwWlM1MmFYTjFZV3d1CmRHbHVkQUFBQURodFpIUmhZMjl0
TG1Gd2NHeGxMbkYxYVdOcmRHbHRaUzV3YkdGNVpYSXViVzkyYVdVdWRtbHpkV0ZzTG1OdmJuUnkK
WVhOMEFBQUFLbTFrZEdGamIyMHVZWEJ3YkdVdWNYVnBZMnQwYVcxbExuQnNZWGxsY2k1MlpYSnph
Vzl1QUFBQUkyMWtkR0ZqYjIwdQpZWEJ3YkdVdWNYVnBZMnQwYVcxbExuWmxjbk5wYjI0QUFBRGth
V3h6ZEFBQUFCd0FBQUFCQUFBQUZHUmhkR0VBQUFBWEFBQUFBQUFBCkFBQUFBQUFjQUFBQUFnQUFB
QlJrWVhSaEFBQUFGd0FBQUFBL2dBQUFBQUFBSEFBQUFBTUFBQUFVWkdGMFlRQUFBQmNBQUFBQUFB
QUEKQUFBQUFCd0FBQUFFQUFBQUZHUmhkR0VBQUFBWEFBQUFBRCtBQUFBQUFBQWxBQUFBQlFBQUFC
MWtZWFJoQUFBQUFRQUFBQUEzTGpZdQpOaUFvTnk0MkxqWXBBQUFBUndBQUFBWUFBQUEvWkdGMFlR
QUFBQUVBQUFBQU55NDNMak1nS0RJNE1qWXBJREI0Tnpjek9EQXdNQ0FvClRXRmpJRTlUSUZnc0lE
RXdMamtzSURFelFUVTVPQ2tBQUFBcWRXUjBZUUFBQUF4WFRFOURBQzBBU2dBQUFBbFRaV3hQQUFB
QUFBbEIKYkd4R0FBQUFBQUFBQUFBSVpuSmxaUUFBQUFoM2FXUmxBQUJobW0xa1lYUUFBQUFJZDJs
a1pRQUFBQUJ0WkdGMEFBQUFEQVlBQjRDdgp5QUFBQXdCQWdBQUFBQlVHQlJFRGgvUk96UXBMM0tH
VU9zUFVteGNmQUlBQUFBRlBKYmdnSUNsZi8vZ3JnQWNSRVFDRXBRcmpEQUFjClFZY0trQUFKWDRE
Z0FDUzRBQlNTSWtKc2hrWmd3NEFGZHMyeHYxS3J1R0hjdDk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5
OTk5OTk5OTkKOTk5OTk5OTkvK0gvaHdnQUZHSUkzSkVsaHVlemhOZjhBd1RuWTRGQUFDRXlBQUlQ
Z2dBQWcvQUFDREhnQWI1dW1BQUlESGt3QUFnNgp2cFlBQWdOQUFDRHV4QUJwSmFBQUVCSFdnQUND
NS81MHNBQVFFd0FCQmVZVXRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkCmRkZGRkZGRk
ZGRNbFMxMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTB5VkxYWFhYWFhY
WFhYWFhYWFhYWFgKWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhUSlV0ZGRkZGRkZGRkZGRkZGRkZGRk
ZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRNbFMxMTExMQoxMTExMTExMTExMTExMTExMTExMTExMTEx
MTExMTExMTExMTEweVlBQUFFZ0pRQ0J1Q0FnTFYvLytDS0tBQUlVbmpnQUNjL0hBQUV4CjYrKysr
KysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrLy9EL3dXRUFjQUFzQUtCQlZNL2lB
QUNFdUFBSVBVUUFBUWYKZ0FCQmp3Y0FBUUdnQUJCM1lnNEFBZ05BQUNEdXhCd0FCQVRBQUVGNWlE
Z0FDQW1BQUlMekNscnJycnJycnJycnJycnJycnJycnJycgpycnJycnJycnJycnJycnJycnJycGtx
V3V1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1bVNwYTY2NjY2NjY2CjY2
NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NlpLbHJycnJycnJycnJycnJycnJycnJycnJy
cnJycnJycnJycnJycnJycnIKcnBrcVd1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1
dXV1dXV1dW1UQUFBQklTVUFRSzRJQ0F0WC8vNElvb0FBaFNlTwpBQUp6OGNBQVRIcjc3Nzc3Nzc3
Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3NzcvOFAvQllRQndBQ3dBb0VGVXorSUFBSVM0
CkFBZzlSQUFCQitBQUVHUEJ3QUJBYUFBRUhkaURnQUNBMEFBSU83RUhBQUVCTUFBUVhtSU9BQUlD
WUFBZ3ZNS1d1dXV1dXV1dXV1dXUKdXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXVtU3BhNjY2
NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjZaSwpscnJycnJycnJycnJycnJy
cnJycnJycnJycnJycnJycnJycnJycnJycnJwa3FXdXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1
dXV1CnV1dXV1dXV1dXV1bVNwYTY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2
NjY2Wk1BQUFBRWhKUUJnN2dnSUMxZi8KL2dpaWdBQ0ZKNDRBQW5QeHdBQk1ldnZ2dnZ2dnZ2dnZ2
dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnYvdy84RmhBSEFBTEFDZwpRVlRQNGdBQWhMZ0FD
RDFFQUFFSDRBQVFZOEhBQUVCb0FBUWQySU9BQUlEUUFBZzdzUWNBQVFFd0FCQmVZZzRBQWdKZ0FD
Qzh3cGE2CjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjZaS2xycnJycnJy
cnJycnJycnJycnJycnJycnJycnJycnJycnIKcnJycnJycnJwa3FXdXV1dXV1dXV1dXV1dXV1dXV1
dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXVtU3BhNjY2NjY2NjY2NjY2NjY2NjY2Ngo2NjY2NjY2NjY2
NjY2NjY2NjY2NjY2WktscnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJw
a3dBQUFBWGNsCkFDQkxnZ0lDMWYvL2dpaWdBQ0ZKNDRBQW5QeHdBQk1ldnZ2dnZ2dnZ2dnZ2dnZ2
dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnYvdy8KOEZoQUhBQUxBQ2dRVlRQNGdBQWhMZ0FDRDFF
QUFFSDRBQVFZOEhBQUVCb0FBUWQySU9BQUlEUUFBZzdzUWNBQVFFd0FCQmVZZzRBQQpnSmdBQ0M4
d3BhNjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjZaS2xycnJycnJycnJy
cnJycnJycnJycnJyCnJycnJycnJycnJycnJycnJycnJwa3FXdXV1dXV1dXV1dXV1dXV1dXV1dXV1
dXV1dXV1dXV1dXV1dXV1dXV1dXVtU3BhNjY2NjY2NjYKNjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2
NjY2NjY2NjY2WklXd0FFWmtaR1pHUkdSa1gvZ0FHeU13RUxTaGZHV0Mvd2xwQUM0QUZkTQpqWW55
SFIyRHdBS1RScERicVJXY05TMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTEx
MXdzeUFBSXlJekl6SWpJCmpNdi84QURxRUZic2lQSzI0emQ5NEIzZ0FhWlBrM3puM0FDZWFtbDMv
cmNBQUFBVkJnVVJBNGYwVHMwS1M5eWhsRHJEMUpzWEh3Q0EKQUFBQUNDSGhDUUNsQUVEZ0FBQUFD
aUVBZ2VFSkFMVUFRT0FBQUFBS0lRQkF1RUpBTFVBUU9BQUFBQW9oQUdENFFrQXRRQkE0QUFBQQpE
Q0VBSUU0UWtBdFFEWThGY0FBQUFCVUdCUkVEaC9ST3pRcEwzS0dVT3NQVW14Y2ZBSUFBQUFBSUFh
aUJZQkdnQ0J3QUFBQUtBUUNCCnFJRmdGYUFJSEFBQUFBb0JBRUNxSUZnRmFBSUhBQUFBQ2dFQVlP
b2dXQVZvQWdjQUFBQUxBUUFnU29nV0FWb0FnY0FBQUFBVkJnVVIKQTRmMFRzMEtTOXlobERyRDFK
c1hId0NBQUFBQUNDSGlFUUNsQUVEZ0FBQUFDaUVBZ2VJUkFMVUFRT0FBQUFBS0lRQkF1SVJBTFVB
UQpPQUFBQUFvaEFHRDRoRUF0UUJBNEFBQUFEQ0VBSUU0aEVBdFFEWThGY0FBQUFCVUdCUkVEaC9S
T3pRcEwzS0dVT3NQVW14Y2ZBSUFBCkFBQUlBYWpEWUJHZ0NCd0FBQUFLQVFDQnFNTmdGYUFJSEFB
QUFBb0JBRUNxTU5nRmFBSUhBQUFBQ2dFQVlPb3cyQVZvQWdjQUFBQUwKQVFBZ1NvdzJBVm9BZ2NB
QUFBQVZCZ1VSQTRmMFRzMEtTOXlobERyRDFKc1hId0NBQUFBQUNDSGpHUUNsQUVEZ0FBQUFDaUVB
Z2VNWgpBTFVBUU9BQUFBQUtJUUJBdU1aQUxVQVFPQUFBQUFvaEFHRDR4a0F0UUJBNEFBQUFEQ0VB
SUU0eGtBdFFEWThGY0FBQUFCVUdCUkVECmgvUk96UXBMM0tHVU9zUFVteGNmQUlBQUFBQUlBYWtG
WUJHZ0NCd0FBQUFLQVFDQnFRVmdGYUFJSEFBQUFBb0JBRUNxUVZnRmFBSUgKQUFBQUNnRUFZT3BC
V0FWb0FnY0FBQUFMQVFBZ1NwQldBVm9BZ2NBQUFBQVZCZ1VSQTRmMFRzMEtTOXlobERyRDFKc1hI
d0NBQUFBQQpDQ0hrSVFDbEFFRGdBQUFBQ2lFQWdlUWhBTFVBUU9BQUFBQUtJUUJBdVFoQUxVQVFP
QUFBQUFvaEFHRDVDRUF0UUJBNEFBQUFEQ0VBCklFNUNFQXRRRFk4RmNBQUFBQlVHQlJFRGgvUk96
UXBMM0tHVU9zUFVteGNmQUlBQUFBQUlBYWxIWUJHZ0NCd0FBQUFLQVFDQnFVZGcKRmFBSUhBQUFB
QW9CQUVDcVVkZ0ZhQUlIQUFBQUNnRUFZT3BSMkFWb0FnY0FBQUFMQVFBZ1NwUjJBVm9BZ2NBQUFB
QVZCZ1VSQTRmMApUczBLUzl5aGxEckQxSnNYSHdDQUFBQUFDQ0hsS1FDbEFFRGdBQUFBQ2lFQWdl
VXBBTFVBUU9BQUFBQUtJUUJBdVVwQUxVQVFPQUFBCkFBb2hBR0Q1U2tBdFFCQTRBQUFBRENFQUlF
NVNrQXRRRFk4RmNBQUFBQlVHQlJFRGgvUk96UXBMM0tHVU9zUFVteGNmQUlBQUFBQUkKQWFtSllC
R2dDQndBQUFBS0FRQ0JxWWxnRmFBSUhBQUFBQW9CQUVDcVlsZ0ZhQUlIQUFBQUNnRUFZT3BpV0FW
b0FnY0FBQUFMQVFBZwpTcGlXQVZvQWdjQUFBQUFWQmdVUkE0ZjBUczBLUzl5aGxEckQxSnNYSHdD
QUFBQUFDQ0htTVFDbEFFRGdBQUFBQ2lFQWdlWXhBTFVBClFPQUFBQUFLSVFCQXVZeEFMVUFRT0FB
QUFBb2hBR0Q1akVBdFFCQTRBQUFBRENFQUlFNWpFQXRRRFk4RmNBQUFBQlVHQlJFRGgvUk8KelFw
TDNLR1VPc1BVbXhjZkFJQUFBQUFJQWFuTFlCR2dDQndBQUFBS0FRQ0JxY3RnRmFBSUhBQUFBQW9C
QUVDcWN0Z0ZhQUlIQUFBQQpDZ0VBWU9weTJBVm9BZ2NBQUFBTEFRQWdTcHkyQVZvQWdjQUFBQUFW
QmdVUkE0ZjBUczBLUzl5aGxEckQxSnNYSHdDQUFBQUFDQ0huCk9RQ2xBRURnQUFBQUNpRUFnZWM1
QUxVQVFPQUFBQUFLSVFCQXVjNUFMVUFRT0FBQUFBb2hBR0Q1emtBdFFCQTRBQUFBRENFQUlFNXoK
a0F0UURZOEZjQUFBQUJVR0JSRURoL1JPelFwTDNLR1VPc1BVbXhjZkFJQUFBQUFJQWFvTllCR2dD
QndBQUFBS0FRQ0JxZzFnRmFBSQpIQUFBQUFvQkFFQ3FnMWdGYUFJSEFBQUFDZ0VBWU9xRFdBVm9B
Z2NBQUFBTEFRQWdTcURXQVZvQWdjQUFBQUFWQmdVUkE0ZjBUczBLClM5eWhsRHJEMUpzWEh3Q0FB
QUFBQ0NIb1FRQ2xBRURnQUFBQUNpRUFnZWhCQUxVQVFPQUFBQUFLSVFCQXVoQkFMVUFRT0FBQUFB
b2gKQUdENkVFQXRRQkE0QUFBQURDRUFJRTZFRUF0UURZOEZjQUFBQUJVR0JSRURoL1JPelFwTDNL
R1VPc1BVbXhjZkFJQUFBQUFJQWFwUApZQkdnQ0J3QUFBQUtBUUNCcWs5Z0ZhQUlIQUFBQUFvQkFF
Q3FrOWdGYUFJSEFBQUFDZ0VBWU9xVDJBVm9BZ2NBQUFBTEFRQWdTcVQyCkFWb0FnY0FBQUFBVkJn
VVJBNGYwVHMwS1M5eWhsRHJEMUpzWEh3Q0FBQUFBQ0NIcFNRQ2xBRURnQUFBQUNpRUFnZWxKQUxV
QVFPQUEKQUFBS0lRQkF1bEpBTFVBUU9BQUFBQW9oQUdENlVrQXRRQkE0QUFBQURDRUFJRTZVa0F0
UURZOEZjQUFBQUJVR0JSRURoL1JPelFwTAozS0dVT3NQVW14Y2ZBSUFBQUFBSUFhcVJZQkdnQ0J3
QUFBQUtBUUNCcXBGZ0ZhQUlIQUFBQUFvQkFFQ3FwRmdGYUFJSEFBQUFDZ0VBCllPcWtXQVZvQWdj
QUFBQUxBUUFnU3FrV0FWb0FnY0FBQUFBVkJnVVJBNGYwVHMwS1M5eWhsRHJEMUpzWEh3Q0FBQUFB
Q0NIcVVRQ2wKQUVEZ0FBQUFDaUVBZ2VwUkFMVUFRT0FBQUFBS0lRQkF1cFJBTFVBUU9BQUFBQW9o
QUdENmxFQXRRQkE0QUFBQURDRUFJRTZsRUF0UQpEWThGY0FBQUFCVUdCUkVEaC9ST3pRcEwzS0dV
T3NQVW14Y2ZBSUFBQUFBSUFhclRZQkdnQ0J3QUFBQUtBUUNCcXROZ0ZhQUlIQUFBCkFBb0JBRUNx
dE5nRmFBSUhBQUFBQ2dFQVlPcTAyQVZvQWdjQUFBQUxBUUFnU3EwMkFWb0FnY0FBQUFBVkJnVVJB
NGYwVHMwS1M5eWgKbERyRDFKc1hId0NBQUFBQUNDSHJXUUNsQUVEZ0FBQUFDaUVBZ2V0WkFMVUFR
T0FBQUFBS0lRQkF1dFpBTFVBUU9BQUFBQW9oQUdENgoxa0F0UUJBNEFBQUFEQ0VBSUU2MWtBdFFE
WThGY0FBQUFCVUdCUkVEaC9ST3pRcEwzS0dVT3NQVW14Y2ZBSUFBQUFBSUFhc1ZZQkdnCkNCd0FB
QUFLQVFDQnF4VmdGYUFJSEFBQUFBb0JBRUNxeFZnRmFBSUhBQUFBQ2dFQVlPckZXQVZvQWdjQUFB
QUxBUUFnU3JGV0FWb0EKZ2NBQUFBQVZCZ1VSQTRmMFRzMEtTOXlobERyRDFKc1hId0NBQUFBQUNB
SHNYUUVhQUlIQUFBQUFDZ0VBZ2V4ZEFWb0FnY0FBQUFBSwpBUUJBdXhkQVZvQWdjQUFBQUFvQkFH
RDdGMEJXZ0NCd0FBQUFDZ0VBSUU3RjBCV2dDQndBQUFBVkJnVVJBNGYwVHMwS1M5eWhsRHJECjFK
c1hId0NBQUFBQlR5VzRJQ0FwWC8vNEs0QUhFUkVBaEtVSzR3d0FIRUdIQ3BBQUNWK0E0QUFrdUFB
VWtpSkNiSVpHWU1PQUJYYk4Kc2I5U3E3aGgzTGZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZm
ZmZmZmZmZmZmZmYvaC80Y0lBQlJpQ055UkpZYm5zNFRYL0FNRQo1Mk9CUUFBaE1nQUNENElBQUlQ
d0FBZ3g0QUcrYnBnQUNBeDVNQUFJT3I2V0FBSURRQUFnN3NRQWFTV2dBQkFSMW9BQWd1ZitkTEFB
CkVCTUFBUVhtRkxYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFRKVXRk
ZGRkZGRkZGRkZGRkZGRkZGRkZGQKZGRkZGRkZGRkZGRkZGRkZGRkZGRNbFMxMTExMTExMTExMTEx
MTExMTExMTExMTExMTExMTExMTExMTExMTExMTB5VkxYWFhYWFhYWApYWFhYWFhYWFhYWFhYWFhY
WFhYWFhYWFhYWFhYWFhYWFhUSlV0ZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRk
ZGRkCmRkTW1BQUFCSUNVQWdiZ2dJQzFmLy9naWlnQUNGSjQ0QUFuUHh3QUJNZXZ2dnZ2dnZ2dnZ2
dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnYKdnZ2dnZ2di93LzhGaEFIQUFMQUNnUVZUUDRnQUFoTGdB
Q0QxRUFBRUg0QUFRWThIQUFFQm9BQVFkMklPQUFJRFFBQWc3c1FjQUFRRQp3QUJCZVlnNEFBZ0pn
QUNDOHdwYTY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2WktscnJycnJy
cnJycnJyCnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycGtxV3V1dXV1dXV1dXV1dXV1dXV1
dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1bVMKcGE2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2
NjY2NjY2NjY2NjY2NlpLbHJycnJycnJycnJycnJycnJycnJycnJycnJycnJycgpycnJycnJycnJy
cnBrd0FBQVNFbEFFQ3VDQWdMVi8vK0NLS0FBSVVuamdBQ2MvSEFBRXg2KysrKysrKysrKysrKysr
KysrKysrKysrCisrKysrKysrKysrKysrKysvL0Qvd1dFQWNBQXNBS0JCVk0vaUFBQ0V1QUFJUFVR
QUFRZmdBQkJqd2NBQVFHZ0FCQjNZZzRBQWdOQUEKQ0R1eEJ3QUJBVEFBRUY1aURnQUNBbUFBSUx6
Q2xycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnBrcVd1dQp1dXV1dXV1
dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXVtU3BhNjY2NjY2NjY2NjY2NjY2NjY2NjY2
NjY2NjY2NjY2NjY2CjY2NjY2NjY2WktscnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJy
cnJycnJycnJwa3FXdXV1dXV1dXV1dXV1dXV1dXV1dXUKdXV1dXV1dXV1dXV1dXV1dXV1dXV1bVRB
QUFBQklTVUFZTzRJQ0F0WC8vNElvb0FBaFNlT0FBSno4Y0FBVEhyNzc3Nzc3Nzc3Nzc3Nwo3Nzc3
Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3NzcvOFAvQllRQndBQ3dBb0VGVXorSUFBSVM0QUFnOVJBQUJC
K0FBRUdQQndBQkFhQUFFCkhkaURnQUNBMEFBSU83RUhBQUVCTUFBUVhtSU9BQUlDWUFBZ3ZNS1d1
dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXUKdXV1dXVtU3BhNjY2NjY2NjY2NjY2
NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjZaS2xycnJycnJycnJycnJycnJycnJycnJycgpy
cnJycnJycnJycnJycnJycnJwa3FXdXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1
dXV1dXVtU3BhNjY2NjY2NjY2CjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2Wk1BQUFB
RjNKUUFnUzRJQ0F0WC8vNElvb0FBaFNlT0FBSno4Y0FBVEhyNzcKNzc3Nzc3Nzc3Nzc3Nzc3Nzc3
Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3NzcvOFAvQllRQndBQ3dBb0VGVXorSUFBSVM0QUFnOVJBQUJCK0FB
RQpHUEJ3QUJBYUFBRUhkaURnQUNBMEFBSU83RUhBQUVCTUFBUVhtSU9BQUlDWUFBZ3ZNS1d1dXV1
dXV1dXV1dXV1dXV1dXV1dXV1dXV1CnV1dXV1dXV1dXV1dXV1dXVtU3BhNjY2NjY2NjY2NjY2NjY2
NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjZaS2xycnJycnJycnJycnIKcnJycnJycnJycnJycnJy
cnJycnJycnJycnJycnJwa3FXdXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1
dXVtUwpGc0FCR1pHUm1Sa1JrWkYvNEFCc2pNQkMwb1h4bGd2OEphUUF1QUJYVEkySjhoMGRnOEFD
azBhUTI2a1ZuRFV0ZGRkZGRkZGRkZGRkCmRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGNMTWdB
Q01pTXlNeUl5SXpMLy9BQTZoQlc3SWp5dHVNM2ZlQWQ0QUdtVDVOODU5d0EKbm1wcGQvNjNBQUFB
RlFZRkVRT0g5RTdOQ2t2Y29aUTZ3OVNiRng4QWdBQUFBQWdoNFFrQXBRQkE0QUFBQUFvaEFJSGhD
UUMxQUVEZwpBQUFBQ2lFQVFMaENRQzFBRURnQUFBQUtJUUJnK0VKQUxVQVFPQUFBQUF3aEFDQk9F
SkFMVUEyUEJYQUFBQUFWQmdVUkE0ZjBUczBLClM5eWhsRHJEMUpzWEh3Q0FBQUFBQ0FHb2dXQVJv
QWdjQUFBQUNnRUFnYWlCWUJXZ0NCd0FBQUFLQVFCQXFpQllCV2dDQndBQUFBb0IKQUdEcUlGZ0Zh
QUlIQUFBQUN3RUFJRXFJRmdGYUFJSEFBQUFBRlFZRkVRT0g5RTdOQ2t2Y29aUTZ3OVNiRng4QWdB
QUFBQWdoNGhFQQpwUUJBNEFBQUFBb2hBSUhpRVFDMUFFRGdBQUFBQ2lFQVFMaUVRQzFBRURnQUFB
QUtJUUJnK0lSQUxVQVFPQUFBQUF3aEFDQk9JUkFMClVBMlBCWEFBQUFBVkJnVVJBNGYwVHMwS1M5
eWhsRHJEMUpzWEh3Q0FBQUFBQ0FHb3cyQVJvQWdjQUFBQUNnRUFnYWpEWUJXZ0NCd0EKQUFBS0FR
QkFxakRZQldnQ0J3QUFBQW9CQUdEcU1OZ0ZhQUlIQUFBQUN3RUFJRXFNTmdGYUFJSEFBQUFBRlFZ
RkVRT0g5RTdOQ2t2YwpvWlE2dzlTYkZ4OEFnQUFBQUFnaDR4a0FwUUJBNEFBQUFBb2hBSUhqR1FD
MUFFRGdBQUFBQ2lFQVFMakdRQzFBRURnQUFBQUtJUUJnCitNWkFMVUFRT0FBQUFBd2hBQ0JPTVpB
TFVBMlBCWEFBQUFBVkJnVVJBNGYwVHMwS1M5eWhsRHJEMUpzWEh3Q0FBQUFBQ0FHcEJXQVIKb0Fn
Y0FBQUFDZ0VBZ2FrRllCV2dDQndBQUFBS0FRQkFxa0ZZQldnQ0J3QUFBQW9CQUdEcVFWZ0ZhQUlI
QUFBQUN3RUFJRXFRVmdGYQpBSUhBQUFBQUZRWUZFUU9IOUU3TkNrdmNvWlE2dzlTYkZ4OEFnQUFB
QUFnaDVDRUFwUUJBNEFBQUFBb2hBSUhrSVFDMUFFRGdBQUFBCkNpRUFRTGtJUUMxQUVEZ0FBQUFL
SVFCZytRaEFMVUFRT0FBQUFBd2hBQ0JPUWhBTFVBMlBCWEFBQUFBVkJnVVJBNGYwVHMwS1M5eWgK
bERyRDFKc1hId0NBQUFBQUNBR3BSMkFSb0FnY0FBQUFDZ0VBZ2FsSFlCV2dDQndBQUFBS0FRQkFx
bEhZQldnQ0J3QUFBQW9CQUdEcQpVZGdGYUFJSEFBQUFDd0VBSUVxVWRnRmFBSUhBQUFBQUZRWUZF
UU9IOUU3TkNrdmNvWlE2dzlTYkZ4OEFnQUFBQUFnaDVTa0FwUUJBCjRBQUFBQW9oQUlIbEtRQzFB
RURnQUFBQUNpRUFRTGxLUUMxQUVEZ0FBQUFLSVFCZytVcEFMVUFRT0FBQUFBd2hBQ0JPVXBBTFVB
MlAKQlhBQUFBQVZCZ1VSQTRmMFRzMEtTOXlobERyRDFKc1hId0NBQUFBQUNBR3BpV0FSb0FnY0FB
QUFDZ0VBZ2FtSllCV2dDQndBQUFBSwpBUUJBcW1KWUJXZ0NCd0FBQUFvQkFHRHFZbGdGYUFJSEFB
QUFDd0VBSUVxWWxnRmFBSUhBQUFBQUZRWUZFUU9IOUU3TkNrdmNvWlE2Cnc5U2JGeDhBZ0FBQUFB
Z2g1akVBcFFCQTRBQUFBQW9oQUlIbU1RQzFBRURnQUFBQUNpRUFRTG1NUUMxQUVEZ0FBQUFLSVFC
ZytZeEEKTFVBUU9BQUFBQXdoQUNCT1l4QUxVQTJQQlhBQUFBQVZCZ1VSQTRmMFRzMEtTOXlobERy
RDFKc1hId0NBQUFBQUNBR3B5MkFSb0FnYwpBQUFBQ2dFQWdhbkxZQldnQ0J3QUFBQUtBUUJBcW5M
WUJXZ0NCd0FBQUFvQkFHRHFjdGdGYUFJSEFBQUFDd0VBSUVxY3RnRmFBSUhBCkFBQUFGUVlGRVFP
SDlFN05Da3Zjb1pRNnc5U2JGeDhBZ0FBQUFBZ2g1emtBcFFCQTRBQUFBQW9oQUlIbk9RQzFBRURn
QUFBQUNpRUEKUUxuT1FDMUFFRGdBQUFBS0lRQmcrYzVBTFVBUU9BQUFBQXdoQUNCT2M1QUxVQTJQ
QlhBQUFBQVZCZ1VSQTRmMFRzMEtTOXlobERyRAoxSnNYSHdDQUFBQUFDQUdxRFdBUm9BZ2NBQUFB
Q2dFQWdhb05ZQldnQ0J3QUFBQUtBUUJBcW9OWUJXZ0NCd0FBQUFvQkFHRHFnMWdGCmFBSUhBQUFB
Q3dFQUlFcWcxZ0ZhQUlIQUFBQUFGUVlGRVFPSDlFN05Da3Zjb1pRNnc5U2JGeDhBZ0FBQUFBZ2g2
RUVBcFFCQTRBQUEKQUFvaEFJSG9RUUMxQUVEZ0FBQUFDaUVBUUxvUVFDMUFFRGdBQUFBS0lRQmcr
aEJBTFVBUU9BQUFBQXdoQUNCT2hCQUxVQTJQQlhBQQpBQUFWQmdVUkE0ZjBUczBLUzl5aGxEckQx
SnNYSHdDQUFBQUFDQUdxVDJBUm9BZ2NBQUFBQ2dFQWdhcFBZQldnQ0J3QUFBQUtBUUJBCnFwUFlC
V2dDQndBQUFBb0JBR0RxazlnRmFBSUhBQUFBQ3dFQUlFcWs5Z0ZhQUlIQUFBQUFGUVlGRVFPSDlF
N05Da3Zjb1pRNnc5U2IKRng4QWdBQUFBQWdoNlVrQXBRQkE0QUFBQUFvaEFJSHBTUUMxQUVEZ0FB
QUFDaUVBUUxwU1FDMUFFRGdBQUFBS0lRQmcrbEpBTFVBUQpPQUFBQUF3aEFDQk9sSkFMVUEyUEJY
QUFBQUFWQmdVUkE0ZjBUczBLUzl5aGxEckQxSnNYSHdDQUFBQUFDQUdxa1dBUm9BZ2NBQUFBCkNn
RUFnYXFSWUJXZ0NCd0FBQUFLQVFCQXFxUllCV2dDQndBQUFBb0JBR0RxcEZnRmFBSUhBQUFBQ3dF
QUlFcXBGZ0ZhQUlIQUFBQUEKRlFZRkVRT0g5RTdOQ2t2Y29aUTZ3OVNiRng4QWdBQUFBQWdoNmxF
QXBRQkE0QUFBQUFvaEFJSHFVUUMxQUVEZ0FBQUFDaUVBUUxxVQpRQzFBRURnQUFBQUtJUUJnK3BS
QUxVQVFPQUFBQUF3aEFDQk9wUkFMVUEyUEJYQUFBQUFWQmdVUkE0ZjBUczBLUzl5aGxEckQxSnNY
Ckh3Q0FBQUFBQ0FHcTAyQVJvQWdjQUFBQUNnRUFnYXJUWUJXZ0NCd0FBQUFLQVFCQXFyVFlCV2dD
QndBQUFBb0JBR0RxdE5nRmFBSUgKQUFBQUN3RUFJRXF0TmdGYUFJSEFBQUFBRlFZRkVRT0g5RTdO
Q2t2Y29aUTZ3OVNiRng4QWdBQUFBQWdoNjFrQXBRQkE0QUFBQUFvaApBSUhyV1FDMUFFRGdBQUFB
Q2lFQVFMcldRQzFBRURnQUFBQUtJUUJnK3RaQUxVQVFPQUFBQUF3aEFDQk90WkFMVUEyUEJYQUFB
QUFWCkJnVVJBNGYwVHMwS1M5eWhsRHJEMUpzWEh3Q0FBQUFBQ0FHckZXQVJvQWdjQUFBQUNnRUFn
YXNWWUJXZ0NCd0FBQUFLQVFCQXFzVlkKQldnQ0J3QUFBQW9CQUdEcXhWZ0ZhQUlIQUFBQUN3RUFJ
RXF4VmdGYUFJSEFBQUFBRlFZRkVRT0g5RTdOQ2t2Y29aUTZ3OVNiRng4QQpnQUFBQUFnQjdGMEJH
Z0NCd0FBQUFBb0JBSUhzWFFGYUFJSEFBQUFBQ2dFQVFMc1hRRmFBSUhBQUFBQUtBUUJnK3hkQVZv
QWdjQUFBCkFBb0JBQ0JPeGRBVm9BZ2NBQUFBRlFZRkVRT0g5RTdOQ2t2Y29aUTZ3OVNiRng4QWdB
QUFBVThsdUNBZ0tWLy8rQ3VBQnhFUkFJU2wKQ3VNTUFCeEJod3FRQUFsZmdPQUFKTGdBRkpJaVFt
eUdSbUREZ0FWMnpiRy9VcXU0WWR5MzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMwozMzMzMzMzMzMz
MzMzMzMvNGYrSENBQVVZZ2pja1NXRzU3T0UxL3dEQk9kamdVQUFJVElBQWcrQ0FBQ0Q4QUFJTWVB
QnZtNllBQWdNCmVUQUFDRHErbGdBQ0EwQUFJTzdFQUdrbG9BQVFFZGFBQUlMbi9uU3dBQkFUQUFF
RjVoUzExMTExMTExMTExMTExMTExMTExMTExMTEKMTExMTExMTExMTExMTExMTB5VkxYWFhYWFhY
WFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFRKVXRkZGRkZGRkZGRkZApkZGRkZGRk
ZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRNbFMxMTExMTExMTExMTExMTExMTExMTExMTExMTExMTEx
MTExMTExMTExMTB5ClZMWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhU
SmdBQUFTQWxBSUc0SUNBdFgvLzRJb29BQWhTZU9BQUoKejhjQUFUSHI3Nzc3Nzc3Nzc3Nzc3Nzc3
Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3LzhQL0JZUUJ3QUN3QW9FRlV6K0lBQUlTNEFBZwo5UkFB
QkIrQUFFR1BCd0FCQWFBQUVIZGlEZ0FDQTBBQUlPN0VIQUFFQk1BQVFYbUlPQUFJQ1lBQWd2TUtX
dXV1dXV1dXV1dXV1dXV1CnV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1bVNwYTY2NjY2NjY2NjY2
NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2WktscnIKcnJycnJycnJycnJycnJycnJycnJy
cnJycnJycnJycnJycnJycnJycGtxV3V1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dQp1
dXV1dXV1dW1TcGE2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NlpNQUFB
RWhKUUJBcmdnSUMxZi8vZ2lpCmdBQ0ZKNDRBQW5QeHdBQk1ldnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2
dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnYvdy84RmhBSEFBTEFDZ1FWVFAKNGdBQWhMZ0FDRDFFQUFFSDRB
QVFZOEhBQUVCb0FBUWQySU9BQUlEUUFBZzdzUWNBQVFFd0FCQmVZZzRBQWdKZ0FDQzh3cGE2NjY2
Ngo2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjZaS2xycnJycnJycnJycnJycnJy
cnJycnJycnJycnJycnJycnJycnJyCnJycnJwa3FXdXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1
dXV1dXV1dXV1dXV1dXVtU3BhNjY2NjY2NjY2NjY2NjY2NjY2NjY2NjYKNjY2NjY2NjY2NjY2NjY2
NjY2WktscnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJwa3dBQUFBU0Vs
QUdEdQpDQWdMVi8vK0NLS0FBSVVuamdBQ2MvSEFBRXg2KysrKysrKysrKysrKysrKysrKysrKysr
KysrKysrKysrKysrKysrKy8vRC93V0VBCmNBQXNBS0JCVk0vaUFBQ0V1QUFJUFVRQUFRZmdBQkJq
d2NBQVFHZ0FCQjNZZzRBQWdOQUFDRHV4QndBQkFUQUFFRjVpRGdBQ0FtQUEKSUx6Q2xycnJycnJy
cnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnBrcVd1dXV1dXV1dXV1dXV1dXV1dXV1
dXV1dXV1dQp1dXV1dXV1dXV1dXV1dXVtU3BhNjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2
NjY2NjY2NjY2NjZaS2xycnJycnJycnJycnJyCnJycnJycnJycnJycnJycnJycnJycnJycnJycnJw
a3FXdXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXVtVEEKQUFBQmR5VUFJ
RXVDQWdMVi8vK0NLS0FBSVVuamdBQ2MvSEFBRXg2KysrKysrKysrKysrKysrKysrKysrKysrKysr
KysrKysrKysrKworKysvL0Qvd1dFQWNBQXNBS0JCVk0vaUFBQ0V1QUFJUFVRQUFRZmdBQkJqd2NB
QVFHZ0FCQjNZZzRBQWdOQUFDRHV4QndBQkFUQUFFCkY1aURnQUNBbUFBSUx6Q2xycnJycnJycnJy
cnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnBrcVd1dXV1dXV1dXV1dXV1dXUKdXV1dXV1
dXV1dXV1dXV1dXV1dXV1dXV1dXVtU3BhNjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2
NjY2NjY2NjZaS2xycgpycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJwa2hi
QUFSbVJrWmtaRVpHUmYrQUFiSXpBUXRLRjhaWUwvQ1drCkFMZ0FWMHlOaWZJZEhZUEFBcE5Ha051
cEZadzFMWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWEN6SUFBakkKak1q
TWlNaU15Ly93QU9vUVZ1eUk4cmJqTjMzZ0hlQUJwaytUZk9mY0FKNXFhWGYrdHdBQUFCVUdCUkVE
aC9ST3pRcEwzS0dVT3NQVQpteGNmQUlBQUFBQUlJZUVKQUtVQVFPQUFBQUFLSVFDQjRRa0F0UUJB
NEFBQUFBb2hBRUM0UWtBdFFCQTRBQUFBQ2lFQVlQaENRQzFBCkVEZ0FBQUFNSVFBZ1RoQ1FDMUFO
andWd0FBQUFGUVlGRVFPSDlFN05Da3Zjb1pRNnc5U2JGeDhBZ0FBQUFBZ0JxSUZnRWFBSUhBQUEK
QUFvQkFJR29nV0FWb0FnY0FBQUFDZ0VBUUtvZ1dBVm9BZ2NBQUFBS0FRQmc2aUJZQldnQ0J3QUFB
QXNCQUNCS2lCWUJXZ0NCd0FBQQpBQlVHQlJFRGgvUk96UXBMM0tHVU9zUFVteGNmQUlBQUFBQUlJ
ZUlSQUtVQVFPQUFBQUFLSVFDQjRoRUF0UUJBNEFBQUFBb2hBRUM0CmhFQXRRQkE0QUFBQUNpRUFZ
UGlFUUMxQUVEZ0FBQUFNSVFBZ1RpRVFDMUFOandWd0FBQUFGUVlGRVFPSDlFN05Da3Zjb1pRNnc5
U2IKRng4QWdBQUFBQWdCcU1OZ0VhQUlIQUFBQUFvQkFJR293MkFWb0FnY0FBQUFDZ0VBUUtvdzJB
Vm9BZ2NBQUFBS0FRQmc2akRZQldnQwpCd0FBQUFzQkFDQktqRFlCV2dDQndBQUFBQlVHQlJFRGgv
Uk96UXBMM0tHVU9zUFVteGNmQUlBQUFBQUlJZU1aQUtVQVFPQUFBQUFLCklRQ0I0eGtBdFFCQTRB
QUFBQW9oQUVDNHhrQXRRQkE0QUFBQUNpRUFZUGpHUUMxQUVEZ0FBQUFNSVFBZ1RqR1FDMUFOandW
d0FBQUEKRlFZRkVRT0g5RTdOQ2t2Y29aUTZ3OVNiRng4QWdBQUFBQWdCcVFWZ0VhQUlIQUFBQUFv
QkFJR3BCV0FWb0FnY0FBQUFDZ0VBUUtwQgpXQVZvQWdjQUFBQUtBUUJnNmtGWUJXZ0NCd0FBQUFz
QkFDQktrRllCV2dDQndBQUFBQlVHQlJFRGgvUk96UXBMM0tHVU9zUFVteGNmCkFJQUFBQUFJSWVR
aEFLVUFRT0FBQUFBS0lRQ0I1Q0VBdFFCQTRBQUFBQW9oQUVDNUNFQXRRQkE0QUFBQUNpRUFZUGtJ
UUMxQUVEZ0EKQUFBTUlRQWdUa0lRQzFBTmp3VndBQUFBRlFZRkVRT0g5RTdOQ2t2Y29aUTZ3OVNi
Rng4QWdBQUFBQWdCcVVkZ0VhQUlIQUFBQUFvQgpBSUdwUjJBVm9BZ2NBQUFBQ2dFQVFLcFIyQVZv
QWdjQUFBQUtBUUJnNmxIWUJXZ0NCd0FBQUFzQkFDQktsSFlCV2dDQndBQUFBQlVHCkJSRURoL1JP
elFwTDNLR1VPc1BVbXhjZkFJQUFBQUFJSWVVcEFLVUFRT0FBQUFBS0lRQ0I1U2tBdFFCQTRBQUFB
QW9oQUVDNVNrQXQKUUJBNEFBQUFDaUVBWVBsS1FDMUFFRGdBQUFBTUlRQWdUbEtRQzFBTmp3VndB
QUFBRlFZRkVRT0g5RTdOQ2t2Y29aUTZ3OVNiRng4QQpnQUFBQUFnQnFZbGdFYUFJSEFBQUFBb0JB
SUdwaVdBVm9BZ2NBQUFBQ2dFQVFLcGlXQVZvQWdjQUFBQUtBUUJnNm1KWUJXZ0NCd0FBCkFBc0JB
Q0JLbUpZQldnQ0J3QUFBQUJVR0JSRURoL1JPelFwTDNLR1VPc1BVbXhjZkFJQUFBQUFJSWVZeEFL
VUFRT0FBQUFBS0lRQ0IKNWpFQXRRQkE0QUFBQUFvaEFFQzVqRUF0UUJBNEFBQUFDaUVBWVBtTVFD
MUFFRGdBQUFBTUlRQWdUbU1RQzFBTmp3VndBQUFBRlFZRgpFUU9IOUU3TkNrdmNvWlE2dzlTYkZ4
OEFnQUFBQUFnQnFjdGdFYUFJSEFBQUFBb0JBSUdweTJBVm9BZ2NBQUFBQ2dFQVFLcHkyQVZvCkFn
Y0FBQUFLQVFCZzZuTFlCV2dDQndBQUFBc0JBQ0JLbkxZQldnQ0J3QUFBQUJVR0JSRURoL1JPelFw
TDNLR1VPc1BVbXhjZkFJQUEKQUFBSUllYzVBS1VBUU9BQUFBQUtJUUNCNXprQXRRQkE0QUFBQUFv
aEFFQzV6a0F0UUJBNEFBQUFDaUVBWVBuT1FDMUFFRGdBQUFBTQpJUUFnVG5PUUMxQU5qd1Z3QUFB
QUZRWUZFUU9IOUU3TkNrdmNvWlE2dzlTYkZ4OEFnQUFBQUFnQnFnMWdFYUFJSEFBQUFBb0JBSUdx
CkRXQVZvQWdjQUFBQUNnRUFRS3FEV0FWb0FnY0FBQUFLQVFCZzZvTllCV2dDQndBQUFBc0JBQ0JL
b05ZQldnQ0J3QUFBQUJVR0JSRUQKaC9ST3pRcEwzS0dVT3NQVW14Y2ZBSUFBQUFBSUllaEJBS1VB
UU9BQUFBQUtJUUNCNkVFQXRRQkE0QUFBQUFvaEFFQzZFRUF0UUJBNApBQUFBQ2lFQVlQb1FRQzFB
RURnQUFBQU1JUUFnVG9RUUMxQU5qd1Z3QUFBQUZRWUZFUU9IOUU3TkNrdmNvWlE2dzlTYkZ4OEFn
QUFBCkFBZ0JxazlnRWFBSUhBQUFBQW9CQUlHcVQyQVZvQWdjQUFBQUNnRUFRS3FUMkFWb0FnY0FB
QUFLQVFCZzZwUFlCV2dDQndBQUFBc0IKQUNCS3BQWUJXZ0NCd0FBQUFCVUdCUkVEaC9ST3pRcEwz
S0dVT3NQVW14Y2ZBSUFBQUFBSUllbEpBS1VBUU9BQUFBQUtJUUNCNlVrQQp0UUJBNEFBQUFBb2hB
RUM2VWtBdFFCQTRBQUFBQ2lFQVlQcFNRQzFBRURnQUFBQU1JUUFnVHBTUUMxQU5qd1Z3QUFBQUZR
WUZFUU9ICjlFN05Da3Zjb1pRNnc5U2JGeDhBZ0FBQUFBZ0JxcEZnRWFBSUhBQUFBQW9CQUlHcWtX
QVZvQWdjQUFBQUNnRUFRS3FrV0FWb0FnY0EKQUFBS0FRQmc2cVJZQldnQ0J3QUFBQXNCQUNCS3FS
WUJXZ0NCd0FBQUFCVUdCUkVEaC9ST3pRcEwzS0dVT3NQVW14Y2ZBSUFBQUFBSQpJZXBSQUtVQVFP
QUFBQUFLSVFDQjZsRUF0UUJBNEFBQUFBb2hBRUM2bEVBdFFCQTRBQUFBQ2lFQVlQcVVRQzFBRURn
QUFBQU1JUUFnClRxVVFDMUFOandWd0FBQUFGUVlGRVFPSDlFN05Da3Zjb1pRNnc5U2JGeDhBZ0FB
QUFBZ0JxdE5nRWFBSUhBQUFBQW9CQUlHcTAyQVYKb0FnY0FBQUFDZ0VBUUtxMDJBVm9BZ2NBQUFB
S0FRQmc2clRZQldnQ0J3QUFBQXNCQUNCS3JUWUJXZ0NCd0FBQUFCVUdCUkVEaC9STwp6UXBMM0tH
VU9zUFVteGNmQUlBQUFBQUlJZXRaQUtVQVFPQUFBQUFLSVFDQjYxa0F0UUJBNEFBQUFBb2hBRUM2
MWtBdFFCQTRBQUFBCkNpRUFZUHJXUUMxQUVEZ0FBQUFNSVFBZ1RyV1FDMUFOandWd0FBQUFGUVlG
RVFPSDlFN05Da3Zjb1pRNnc5U2JGeDhBZ0FBQUFBZ0IKcXhWZ0VhQUlIQUFBQUFvQkFJR3JGV0FW
b0FnY0FBQUFDZ0VBUUtyRldBVm9BZ2NBQUFBS0FRQmc2c1ZZQldnQ0J3QUFBQXNCQUNCSwpzVllC
V2dDQndBQUFBQlVHQlJFRGgvUk96UXBMM0tHVU9zUFVteGNmQUlBQUFBQUlBZXhkQVJvQWdjQUFB
QUFLQVFDQjdGMEJXZ0NCCndBQUFBQW9CQUVDN0YwQldnQ0J3QUFBQUNnRUFZUHNYUUZhQUlIQUFB
QUFLQVFBZ1RzWFFGYUFJSEFBQUFCVUdCUkVEaC9ST3pRcEwKM0tHVU9zUFVteGNmQUlBQUFBRlBK
YmdnSUNsZi8vZ3JnQWNSRVFDRXBRcmpEQUFjUVljS2tBQUpYNERnQUNTNEFCU1NJa0pzaGtaZwp3
NEFGZHMyeHYxS3J1R0hjdDk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OS8r
SC9od2dBRkdJSTNKRWxodWV6CmhOZjhBd1RuWTRGQUFDRXlBQUlQZ2dBQWcvQUFDREhnQWI1dW1B
QUlESGt3QUFnNnZwWUFBZ05BQUNEdXhBQnBKYUFBRUJIV2dBQ0MKNS81MHNBQVFFd0FCQmVZVXRk
ZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZE1sUzExMTExMTExMTExMTEx
MQoxMTExMTExMTExMTExMTExMTExMTExMTExMTB5VkxYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhY
WFhYWFhYWFhYWFhYWFhYWFRKVXRkCmRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRk
ZGRkZGRNbFMxMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTEKMTExMTExMTEweVlBQUFF
Z0pRQ0J1Q0FnTFYvLytDS0tBQUlVbmpnQUNjL0hBQUV4NisrKysrKysrKysrKysrKysrKysrKysr
KysrKworKysrKysrKysrKysrLy9EL3dXRUFjQUFzQUtCQlZNL2lBQUNFdUFBSVBVUUFBUWZnQUJC
andjQUFRR2dBQkIzWWc0QUFnTkFBQ0R1CnhCd0FCQVRBQUVGNWlEZ0FDQW1BQUlMekNscnJycnJy
cnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJwa3FXdXV1dXUKdXV1dXV1dXV1dXV1
dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1bVNwYTY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2
NjY2NjY2Ngo2NjY2NlpLbHJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJy
cGtxV3V1dXV1dXV1dXV1dXV1dXV1dXV1dXV1CnV1dXV1dXV1dXV1dXV1dXV1dW1UQUFBQklTVUFR
SzRJQ0F0WC8vNElvb0FBaFNlT0FBSno4Y0FBVEhyNzc3Nzc3Nzc3Nzc3Nzc3NzcKNzc3Nzc3Nzc3
Nzc3Nzc3Nzc3Nzc3NzcvOFAvQllRQndBQ3dBb0VGVXorSUFBSVM0QUFnOVJBQUJCK0FBRUdQQndB
QkFhQUFFSGRpRApnQUNBMEFBSU83RUhBQUVCTUFBUVhtSU9BQUlDWUFBZ3ZNS1d1dXV1dXV1dXV1
dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1CnVtU3BhNjY2NjY2NjY2NjY2NjY2NjY2NjY2
NjY2NjY2NjY2NjY2NjY2NjY2NjZaS2xycnJycnJycnJycnJycnJycnJycnJycnJycnIKcnJycnJy
cnJycnJycnJwa3FXdXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXVtU3Bh
NjY2NjY2NjY2NjY2Ngo2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2Wk1BQUFBRWhKUUJnN2dn
SUMxZi8vZ2lpZ0FDRko0NEFBblB4d0FCTWV2dnZ2dnZ2CnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2
dnZ2dnZ2dnZ2dnYvdy84RmhBSEFBTEFDZ1FWVFA0Z0FBaExnQUNEMUVBQUVINEFBUVk4SEEKQUVC
b0FBUWQySU9BQUlEUUFBZzdzUWNBQVFFd0FCQmVZZzRBQWdKZ0FDQzh3cGE2NjY2NjY2NjY2NjY2
NjY2NjY2NjY2NjY2NjY2Ngo2NjY2NjY2NjY2NjZaS2xycnJycnJycnJycnJycnJycnJycnJycnJy
cnJycnJycnJycnJycnJycnBrcVd1dXV1dXV1dXV1dXV1dXV1CnV1dXV1dXV1dXV1dXV1dXV1dXV1
dXV1dXVtU3BhNjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjZaS2xycnIK
cnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJwa3dBQUFBWGNsQUNCTGdnSUMx
Zi8vZ2lpZ0FDRko0NEFBblB4dwpBQk1ldnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2
dnZ2dnZ2dnYvdy84RmhBSEFBTEFDZ1FWVFA0Z0FBaExnQUNEMUVBCkFFSDRBQVFZOEhBQUVCb0FB
UWQySU9BQUlEUUFBZzdzUWNBQVFFd0FCQmVZZzRBQWdKZ0FDQzh3cGE2NjY2NjY2NjY2NjY2NjY2
NjYKNjY2NjY2NjY2NjY2NjY2NjY2NjY2NjZaS2xycnJycnJycnJycnJycnJycnJycnJycnJycnJy
cnJycnJycnJycnJycnBrcVd1dXV1dQp1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1
dXVtU3BhNjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2CjY2NjY2WklXd0FFWmta
R1pHUkdSa1gvZ0FHeU13RUxTaGZHV0Mvd2xwQUM0QUZkTWpZbnlIUjJEd0FLVFJwRGJxUldjTlMx
MTExMTEKMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMXdzeUFBSXlJekl6SWpJak12
LzhBRHFFRmJzaVBLMjR6ZDk0QjNnQWFaUAprM3puM0FDZWFtbDMvcmNBQUFBVkJnVVJBNGYwVHMw
S1M5eWhsRHJEMUpzWEh3Q0FBQUFBQ0NIaENRQ2xBRURnQUFBQUNpRUFnZUVKCkFMVUFRT0FBQUFB
S0lRQkF1RUpBTFVBUU9BQUFBQW9oQUdENFFrQXRRQkE0QUFBQURDRUFJRTRRa0F0UURZOEZjQUFB
QUJVR0JSRUQKaC9ST3pRcEwzS0dVT3NQVW14Y2ZBSUFBQUFBSUFhaUJZQkdnQ0J3QUFBQUtBUUNC
cUlGZ0ZhQUlIQUFBQUFvQkFFQ3FJRmdGYUFJSApBQUFBQ2dFQVlPb2dXQVZvQWdjQUFBQUxBUUFn
U29nV0FWb0FnY0FBQUFBVkJnVVJBNGYwVHMwS1M5eWhsRHJEMUpzWEh3Q0FBQUFBCkNDSGlFUUNs
QUVEZ0FBQUFDaUVBZ2VJUkFMVUFRT0FBQUFBS0lRQkF1SVJBTFVBUU9BQUFBQW9oQUdENGhFQXRR
QkE0QUFBQURDRUEKSUU0aEVBdFFEWThGY0FBQUFCVUdCUkVEaC9ST3pRcEwzS0dVT3NQVW14Y2ZB
SUFBQUFBSUFhakRZQkdnQ0J3QUFBQUtBUUNCcU1OZwpGYUFJSEFBQUFBb0JBRUNxTU5nRmFBSUhB
QUFBQ2dFQVlPb3cyQVZvQWdjQUFBQUxBUUFnU293MkFWb0FnY0FBQUFBVkJnVVJBNGYwClRzMEtT
OXlobERyRDFKc1hId0NBQUFBQUNDSGpHUUNsQUVEZ0FBQUFDaUVBZ2VNWkFMVUFRT0FBQUFBS0lR
QkF1TVpBTFVBUU9BQUEKQUFvaEFHRDR4a0F0UUJBNEFBQUFEQ0VBSUU0eGtBdFFEWThGY0FBQUFC
VUdCUkVEaC9ST3pRcEwzS0dVT3NQVW14Y2ZBSUFBQUFBSQpBYWtGWUJHZ0NCd0FBQUFLQVFDQnFR
VmdGYUFJSEFBQUFBb0JBRUNxUVZnRmFBSUhBQUFBQ2dFQVlPcEJXQVZvQWdjQUFBQUxBUUFnClNw
QldBVm9BZ2NBQUFBQVZCZ1VSQTRmMFRzMEtTOXlobERyRDFKc1hId0NBQUFBQUNDSGtJUUNsQUVE
Z0FBQUFDaUVBZ2VRaEFMVUEKUU9BQUFBQUtJUUJBdVFoQUxVQVFPQUFBQUFvaEFHRDVDRUF0UUJB
NEFBQUFEQ0VBSUU1Q0VBdFFEWThGY0FBQUFCVUdCUkVEaC9STwp6UXBMM0tHVU9zUFVteGNmQUlB
QUFBQUlBYWxIWUJHZ0NCd0FBQUFLQVFDQnFVZGdGYUFJSEFBQUFBb0JBRUNxVWRnRmFBSUhBQUFB
CkNnRUFZT3BSMkFWb0FnY0FBQUFMQVFBZ1NwUjJBVm9BZ2NBQUFBQVZCZ1VSQTRmMFRzMEtTOXlo
bERyRDFKc1hId0NBQUFBQUNDSGwKS1FDbEFFRGdBQUFBQ2lFQWdlVXBBTFVBUU9BQUFBQUtJUUJB
dVVwQUxVQVFPQUFBQUFvaEFHRDVTa0F0UUJBNEFBQUFEQ0VBSUU1UwprQXRRRFk4RmNBQUFBQlVH
QlJFRGgvUk96UXBMM0tHVU9zUFVteGNmQUlBQUFBQUlBYW1KWUJHZ0NCd0FBQUFLQVFDQnFZbGdG
YUFJCkhBQUFBQW9CQUVDcVlsZ0ZhQUlIQUFBQUNnRUFZT3BpV0FWb0FnY0FBQUFMQVFBZ1NwaVdB
Vm9BZ2NBQUFBQVZCZ1VSQTRmMFRzMEsKUzl5aGxEckQxSnNYSHdDQUFBQUFDQ0htTVFDbEFFRGdB
QUFBQ2lFQWdlWXhBTFVBUU9BQUFBQUtJUUJBdVl4QUxVQVFPQUFBQUFvaApBR0Q1akVBdFFCQTRB
QUFBRENFQUlFNWpFQXRRRFk4RmNBQUFBQlVHQlJFRGgvUk96UXBMM0tHVU9zUFVteGNmQUlBQUFB
QUlBYW5MCllCR2dDQndBQUFBS0FRQ0JxY3RnRmFBSUhBQUFBQW9CQUVDcWN0Z0ZhQUlIQUFBQUNn
RUFZT3B5MkFWb0FnY0FBQUFMQVFBZ1NweTIKQVZvQWdjQUFBQUFWQmdVUkE0ZjBUczBLUzl5aGxE
ckQxSnNYSHdDQUFBQUFDQ0huT1FDbEFFRGdBQUFBQ2lFQWdlYzVBTFVBUU9BQQpBQUFLSVFCQXVj
NUFMVUFRT0FBQUFBb2hBR0Q1emtBdFFCQTRBQUFBRENFQUlFNXprQXRRRFk4RmNBQUFBQlVHQlJF
RGgvUk96UXBMCjNLR1VPc1BVbXhjZkFJQUFBQUFJQWFvTllCR2dDQndBQUFBS0FRQ0JxZzFnRmFB
SUhBQUFBQW9CQUVDcWcxZ0ZhQUlIQUFBQUNnRUEKWU9xRFdBVm9BZ2NBQUFBTEFRQWdTcURXQVZv
QWdjQUFBQUFWQmdVUkE0ZjBUczBLUzl5aGxEckQxSnNYSHdDQUFBQUFDQ0hvUVFDbApBRURnQUFB
QUNpRUFnZWhCQUxVQVFPQUFBQUFLSVFCQXVoQkFMVUFRT0FBQUFBb2hBR0Q2RUVBdFFCQTRBQUFB
RENFQUlFNkVFQXRRCkRZOEZjQUFBQUJVR0JSRURoL1JPelFwTDNLR1VPc1BVbXhjZkFJQUFBQUFJ
QWFwUFlCR2dDQndBQUFBS0FRQ0JxazlnRmFBSUhBQUEKQUFvQkFFQ3FrOWdGYUFJSEFBQUFDZ0VB
WU9xVDJBVm9BZ2NBQUFBTEFRQWdTcVQyQVZvQWdjQUFBQUFWQmdVUkE0ZjBUczBLUzl5aApsRHJE
MUpzWEh3Q0FBQUFBQ0NIcFNRQ2xBRURnQUFBQUNpRUFnZWxKQUxVQVFPQUFBQUFLSVFCQXVsSkFM
VUFRT0FBQUFBb2hBR0Q2ClVrQXRRQkE0QUFBQURDRUFJRTZVa0F0UURZOEZjQUFBQUJVR0JSRURo
L1JPelFwTDNLR1VPc1BVbXhjZkFJQUFBQUFJQWFxUllCR2cKQ0J3QUFBQUtBUUNCcXBGZ0ZhQUlI
QUFBQUFvQkFFQ3FwRmdGYUFJSEFBQUFDZ0VBWU9xa1dBVm9BZ2NBQUFBTEFRQWdTcWtXQVZvQQpn
Y0FBQUFBVkJnVVJBNGYwVHMwS1M5eWhsRHJEMUpzWEh3Q0FBQUFBQ0NIcVVRQ2xBRURnQUFBQUNp
RUFnZXBSQUxVQVFPQUFBQUFLCklRQkF1cFJBTFVBUU9BQUFBQW9oQUdENmxFQXRRQkE0QUFBQURD
RUFJRTZsRUF0UURZOEZjQUFBQUJVR0JSRURoL1JPelFwTDNLR1UKT3NQVW14Y2ZBSUFBQUFBSUFh
clRZQkdnQ0J3QUFBQUtBUUNCcXROZ0ZhQUlIQUFBQUFvQkFFQ3F0TmdGYUFJSEFBQUFDZ0VBWU9x
MAoyQVZvQWdjQUFBQUxBUUFnU3EwMkFWb0FnY0FBQUFBVkJnVVJBNGYwVHMwS1M5eWhsRHJEMUpz
WEh3Q0FBQUFBQ0NIcldRQ2xBRURnCkFBQUFDaUVBZ2V0WkFMVUFRT0FBQUFBS0lRQkF1dFpBTFVB
UU9BQUFBQW9oQUdENjFrQXRRQkE0QUFBQURDRUFJRTYxa0F0UURZOEYKY0FBQUFCVUdCUkVEaC9S
T3pRcEwzS0dVT3NQVW14Y2ZBSUFBQUFBSUFhc1ZZQkdnQ0J3QUFBQUtBUUNCcXhWZ0ZhQUlIQUFB
QUFvQgpBRUNxeFZnRmFBSUhBQUFBQ2dFQVlPckZXQVZvQWdjQUFBQUxBUUFnU3JGV0FWb0FnY0FB
QUFBVkJnVVJBNGYwVHMwS1M5eWhsRHJECjFKc1hId0NBQUFBQUNBSHNYUUVhQUlIQUFBQUFDZ0VB
Z2V4ZEFWb0FnY0FBQUFBS0FRQkF1eGRBVm9BZ2NBQUFBQW9CQUdEN0YwQlcKZ0NCd0FBQUFDZ0VB
SUU3RjBCV2dDQndBQUFBVkJnVVJBNGYwVHMwS1M5eWhsRHJEMUpzWEh3Q0FBQUFCVHlXNElDQXBY
Ly80SzRBSApFUkVBaEtVSzR3d0FIRUdIQ3BBQUNWK0E0QUFrdUFBVWtpSkNiSVpHWU1PQUJYYk5z
YjlTcTdoaDNMZmZmZmZmZmZmZmZmZmZmZmZmCmZmZmZmZmZmZmZmZmZmZmZmZmZmZmYvaC80Y0lB
QlJpQ055UkpZYm5zNFRYL0FNRTUyT0JRQUFoTWdBQ0Q0SUFBSVB3QUFneDRBRysKYnBnQUNBeDVN
QUFJT3I2V0FBSURRQUFnN3NRQWFTV2dBQkFSMW9BQWd1ZitkTEFBRUJNQUFRWG1GTFhYWFhYWFhY
WFhYWFhYWFhYWApYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFRKVXRkZGRkZGRkZGRkZGRkZGRkZGRk
ZGRkZGRkZGRkZGRkZGRkZGRkZGRkZE1sUzExMTExCjExMTExMTExMTExMTExMTExMTExMTExMTEx
MTExMTExMTExMTB5VkxYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFgKWFhYWFhU
SlV0ZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRNbUFBQUJJQ1VBZ2Jn
Z0lDMWYvL2dpaWdBQwpGSjQ0QUFuUHh3QUJNZXZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2
dnZ2dnZ2dnZ2dnZ2L3cvOEZoQUhBQUxBQ2dRVlRQNGdBCkFoTGdBQ0QxRUFBRUg0QUFRWThIQUFF
Qm9BQVFkMklPQUFJRFFBQWc3c1FjQUFRRXdBQkJlWWc0QUFnSmdBQ0M4d3BhNjY2NjY2NjYKNjY2
NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2WktscnJycnJycnJycnJycnJycnJycnJycnJy
cnJycnJycnJycnJycnJycgpycGtxV3V1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1
dXV1dXV1bVNwYTY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2CjY2NjY2NjY2NjY2NjY2NlpLbHJy
cnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycGt3QUFBU0VsQUVDdUNBZ0wK
Vi8vK0NLS0FBSVVuamdBQ2MvSEFBRXg2KysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysr
KysrKysrKy8vRC93V0VBY0FBcwpBS0JCVk0vaUFBQ0V1QUFJUFVRQUFRZmdBQkJqd2NBQVFHZ0FC
QjNZZzRBQWdOQUFDRHV4QndBQkFUQUFFRjVpRGdBQ0FtQUFJTHpDCmxycnJycnJycnJycnJycnJy
cnJycnJycnJycnJycnJycnJycnJycnJycnBrcVd1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1
dXUKdXV1dXV1dXV1dXVtU3BhNjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2
NjZaS2xycnJycnJycnJycnJycnJycgpycnJycnJycnJycnJycnJycnJycnJycnJwa3FXdXV1dXV1
dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXVtVEFBQUFCCklTVUFZTzRJQ0F0WC8v
NElvb0FBaFNlT0FBSno4Y0FBVEhyNzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3
Nzc3Ny8KOFAvQllRQndBQ3dBb0VGVXorSUFBSVM0QUFnOVJBQUJCK0FBRUdQQndBQkFhQUFFSGRp
RGdBQ0EwQUFJTzdFSEFBRUJNQUFRWG1JTwpBQUlDWUFBZ3ZNS1d1dXV1dXV1dXV1dXV1dXV1dXV1
dXV1dXV1dXV1dXV1dXV1dXV1dXV1dW1TcGE2NjY2NjY2NjY2NjY2NjY2NjY2CjY2NjY2NjY2NjY2
NjY2NjY2NjY2NjZaS2xycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnBr
cVd1dXV1dXUKdXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXVtU3BhNjY2NjY2NjY2
NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2Ngo2NjY2Wk1BQUFBRjNKUUFnUzRJQ0F0WC8vNElv
b0FBaFNlT0FBSno4Y0FBVEhyNzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Cjc3Nzc3Nzc3
NzcvOFAvQllRQndBQ3dBb0VGVXorSUFBSVM0QUFnOVJBQUJCK0FBRUdQQndBQkFhQUFFSGRpRGdB
Q0EwQUFJTzdFSEEKQUVCTUFBUVhtSU9BQUlDWUFBZ3ZNS1d1dXV1dXV1dXV1dXV1dXV1dXV1dXV1
dXV1dXV1dXV1dXV1dXV1dXV1dW1TcGE2NjY2NjY2Ngo2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2
NjY2NjY2NjZaS2xycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJyCnJwa3FX
dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXVtU0ZzQUJHWkdSbVJrUmta
Ri80QUJzak1CQzBvWHgKbGd2OEphUUF1QUJYVEkySjhoMGRnOEFDazBhUTI2a1ZuRFV0ZGRkZGRk
ZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkYwpMTWdBQ01pTXlNeUl5SXpMLy9BQTZo
Qlc3SWp5dHVNM2ZlQWQ0QUdtVDVOODU5d0FubXBwZC82M0FBQUFGUVlGRVFPSDlFN05Da3ZjCm9a
UTZ3OVNiRng4QWdBQUFBQWdoNFFrQXBRQkE0QUFBQUFvaEFJSGhDUUMxQUVEZ0FBQUFDaUVBUUxo
Q1FDMUFFRGdBQUFBS0lRQmcKK0VKQUxVQVFPQUFBQUF3aEFDQk9FSkFMVUEyUEJYQUFBQUFWQmdV
UkE0ZjBUczBLUzl5aGxEckQxSnNYSHdDQUFBQUFDQUdvZ1dBUgpvQWdjQUFBQUNnRUFnYWlCWUJX
Z0NCd0FBQUFLQVFCQXFpQllCV2dDQndBQUFBb0JBR0RxSUZnRmFBSUhBQUFBQ3dFQUlFcUlGZ0Zh
CkFJSEFBQUFBRlFZRkVRT0g5RTdOQ2t2Y29aUTZ3OVNiRng4QWdBQUFBQWdoNGhFQXBRQkE0QUFB
QUFvaEFJSGlFUUMxQUVEZ0FBQUEKQ2lFQVFMaUVRQzFBRURnQUFBQUtJUUJnK0lSQUxVQVFPQUFB
QUF3aEFDQk9JUkFMVUEyUEJYQUFBQUFWQmdVUkE0ZjBUczBLUzl5aApsRHJEMUpzWEh3Q0FBQUFB
Q0FHb3cyQVJvQWdjQUFBQUNnRUFnYWpEWUJXZ0NCd0FBQUFLQVFCQXFqRFlCV2dDQndBQUFBb0JB
R0RxCk1OZ0ZhQUlIQUFBQUN3RUFJRXFNTmdGYUFJSEFBQUFBRlFZRkVRT0g5RTdOQ2t2Y29aUTZ3
OVNiRng4QWdBQUFBQWdoNHhrQXBRQkEKNEFBQUFBb2hBSUhqR1FDMUFFRGdBQUFBQ2lFQVFMakdR
QzFBRURnQUFBQUtJUUJnK01aQUxVQVFPQUFBQUF3aEFDQk9NWkFMVUEyUApCWEFBQUFBVkJnVVJB
NGYwVHMwS1M5eWhsRHJEMUpzWEh3Q0FBQUFBQ0FHcEJXQVJvQWdjQUFBQUNnRUFnYWtGWUJXZ0NC
d0FBQUFLCkFRQkFxa0ZZQldnQ0J3QUFBQW9CQUdEcVFWZ0ZhQUlIQUFBQUN3RUFJRXFRVmdGYUFJ
SEFBQUFBRlFZRkVRT0g5RTdOQ2t2Y29aUTYKdzlTYkZ4OEFnQUFBQUFnaDVDRUFwUUJBNEFBQUFB
b2hBSUhrSVFDMUFFRGdBQUFBQ2lFQVFMa0lRQzFBRURnQUFBQUtJUUJnK1FoQQpMVUFRT0FBQUFB
d2hBQ0JPUWhBTFVBMlBCWEFBQUFBVkJnVVJBNGYwVHMwS1M5eWhsRHJEMUpzWEh3Q0FBQUFBQ0FH
cFIyQVJvQWdjCkFBQUFDZ0VBZ2FsSFlCV2dDQndBQUFBS0FRQkFxbEhZQldnQ0J3QUFBQW9CQUdE
cVVkZ0ZhQUlIQUFBQUN3RUFJRXFVZGdGYUFJSEEKQUFBQUZRWUZFUU9IOUU3TkNrdmNvWlE2dzlT
YkZ4OEFnQUFBQUFnaDVTa0FwUUJBNEFBQUFBb2hBSUhsS1FDMUFFRGdBQUFBQ2lFQQpRTGxLUUMx
QUVEZ0FBQUFLSVFCZytVcEFMVUFRT0FBQUFBd2hBQ0JPVXBBTFVBMlBCWEFBQUFBVkJnVVJBNGYw
VHMwS1M5eWhsRHJECjFKc1hId0NBQUFBQUNBR3BpV0FSb0FnY0FBQUFDZ0VBZ2FtSllCV2dDQndB
QUFBS0FRQkFxbUpZQldnQ0J3QUFBQW9CQUdEcVlsZ0YKYUFJSEFBQUFDd0VBSUVxWWxnRmFBSUhB
QUFBQUZRWUZFUU9IOUU3TkNrdmNvWlE2dzlTYkZ4OEFnQUFBQUFnaDVqRUFwUUJBNEFBQQpBQW9o
QUlIbU1RQzFBRURnQUFBQUNpRUFRTG1NUUMxQUVEZ0FBQUFLSVFCZytZeEFMVUFRT0FBQUFBd2hB
Q0JPWXhBTFVBMlBCWEFBCkFBQVZCZ1VSQTRmMFRzMEtTOXlobERyRDFKc1hId0NBQUFBQUNBR3B5
MkFSb0FnY0FBQUFDZ0VBZ2FuTFlCV2dDQndBQUFBS0FRQkEKcW5MWUJXZ0NCd0FBQUFvQkFHRHFj
dGdGYUFJSEFBQUFDd0VBSUVxY3RnRmFBSUhBQUFBQUZRWUZFUU9IOUU3TkNrdmNvWlE2dzlTYgpG
eDhBZ0FBQUFBZ2g1emtBcFFCQTRBQUFBQW9oQUlIbk9RQzFBRURnQUFBQUNpRUFRTG5PUUMxQUVE
Z0FBQUFLSVFCZytjNUFMVUFRCk9BQUFBQXdoQUNCT2M1QUxVQTJQQlhBQUFBQVZCZ1VSQTRmMFRz
MEtTOXlobERyRDFKc1hId0NBQUFBQUNBR3FEV0FSb0FnY0FBQUEKQ2dFQWdhb05ZQldnQ0J3QUFB
QUtBUUJBcW9OWUJXZ0NCd0FBQUFvQkFHRHFnMWdGYUFJSEFBQUFDd0VBSUVxZzFnRmFBSUhBQUFB
QQpGUVlGRVFPSDlFN05Da3Zjb1pRNnc5U2JGeDhBZ0FBQUFBZ2g2RUVBcFFCQTRBQUFBQW9oQUlI
b1FRQzFBRURnQUFBQUNpRUFRTG9RClFDMUFFRGdBQUFBS0lRQmcraEJBTFVBUU9BQUFBQXdoQUNC
T2hCQUxVQTJQQlhBQUFBQVZCZ1VSQTRmMFRzMEtTOXlobERyRDFKc1gKSHdDQUFBQUFDQUdxVDJB
Um9BZ2NBQUFBQ2dFQWdhcFBZQldnQ0J3QUFBQUtBUUJBcXBQWUJXZ0NCd0FBQUFvQkFHRHFrOWdG
YUFJSApBQUFBQ3dFQUlFcWs5Z0ZhQUlIQUFBQUFGUVlGRVFPSDlFN05Da3Zjb1pRNnc5U2JGeDhB
Z0FBQUFBZ2g2VWtBcFFCQTRBQUFBQW9oCkFJSHBTUUMxQUVEZ0FBQUFDaUVBUUxwU1FDMUFFRGdB
QUFBS0lRQmcrbEpBTFVBUU9BQUFBQXdoQUNCT2xKQUxVQTJQQlhBQUFBQVYKQmdVUkE0ZjBUczBL
Uzl5aGxEckQxSnNYSHdDQUFBQUFDQUdxa1dBUm9BZ2NBQUFBQ2dFQWdhcVJZQldnQ0J3QUFBQUtB
UUJBcXFSWQpCV2dDQndBQUFBb0JBR0RxcEZnRmFBSUhBQUFBQ3dFQUlFcXBGZ0ZhQUlIQUFBQUFG
UVlGRVFPSDlFN05Da3Zjb1pRNnc5U2JGeDhBCmdBQUFBQWdoNmxFQXBRQkE0QUFBQUFvaEFJSHFV
UUMxQUVEZ0FBQUFDaUVBUUxxVVFDMUFFRGdBQUFBS0lRQmcrcFJBTFVBUU9BQUEKQUF3aEFDQk9w
UkFMVUEyUEJYQUFBQUFWQmdVUkE0ZjBUczBLUzl5aGxEckQxSnNYSHdDQUFBQUFDQUdxMDJBUm9B
Z2NBQUFBQ2dFQQpnYXJUWUJXZ0NCd0FBQUFLQVFCQXFyVFlCV2dDQndBQUFBb0JBR0RxdE5nRmFB
SUhBQUFBQ3dFQUlFcXROZ0ZhQUlIQUFBQUFGUVlGCkVRT0g5RTdOQ2t2Y29aUTZ3OVNiRng4QWdB
QUFBQWdoNjFrQXBRQkE0QUFBQUFvaEFJSHJXUUMxQUVEZ0FBQUFDaUVBUUxyV1FDMUEKRURnQUFB
QUtJUUJnK3RaQUxVQVFPQUFBQUF3aEFDQk90WkFMVUEyUEJYQUFBQUFWQmdVUkE0ZjBUczBLUzl5
aGxEckQxSnNYSHdDQQpBQUFBQ0FHckZXQVJvQWdjQUFBQUNnRUFnYXNWWUJXZ0NCd0FBQUFLQVFC
QXFzVllCV2dDQndBQUFBb0JBR0RxeFZnRmFBSUhBQUFBCkN3RUFJRXF4VmdGYUFJSEFBQUFBRlFZ
RkVRT0g5RTdOQ2t2Y29aUTZ3OVNiRng4QWdBQUFBQWdCN0YwQkdnQ0J3QUFBQUFvQkFJSHMKWFFG
YUFJSEFBQUFBQ2dFQVFMc1hRRmFBSUhBQUFBQUtBUUJnK3hkQVZvQWdjQUFBQUFvQkFDQk94ZEFW
b0FnY0FBQUFGUVlGRVFPSAo5RTdOQ2t2Y29aUTZ3OVNiRng4QWdBQUFBVThsdUNBZ0tWLy8rQ3VB
QnhFUkFJU2xDdU1NQUJ4Qmh3cVFBQWxmZ09BQUpMZ0FGSklpClFteUdSbUREZ0FWMnpiRy9VcXU0
WWR5MzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMy80ZitIQ0FBVVlnamMK
a1NXRzU3T0UxL3dEQk9kamdVQUFJVElBQWcrQ0FBQ0Q4QUFJTWVBQnZtNllBQWdNZVRBQUNEcSts
Z0FDQTBBQUlPN0VBR2tsb0FBUQpFZGFBQUlMbi9uU3dBQkFUQUFFRjVoUzExMTExMTExMTExMTEx
MTExMTExMTExMTExMTExMTExMTExMTExMTExMHlWTFhYWFhYWFhYClhYWFhYWFhYWFhYWFhYWFhY
WFhYWFhYWFhYWFhYWFhYWFRKVXRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRk
ZGQKZGRNbFMxMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTB5VkxYWFhY
WFhYWFhYWFhYWFhYWFhYWFhYWFhYWApYWFhYWFhYWFhYWFhYWFhUSmdBQUFTQWxBSUc0SUNBdFgv
LzRJb29BQWhTZU9BQUp6OGNBQVRIcjc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Cjc3Nzc3Nzc3Nzc3Nzc3
Nzc3Nzc3LzhQL0JZUUJ3QUN3QW9FRlV6K0lBQUlTNEFBZzlSQUFCQitBQUVHUEJ3QUJBYUFBRUhk
aURnQUMKQTBBQUlPN0VIQUFFQk1BQVFYbUlPQUFJQ1lBQWd2TUtXdXV1dXV1dXV1dXV1dXV1dXV1
dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXVtUwpwYTY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2
NjY2NjY2NjY2NjY2WktscnJycnJycnJycnJycnJycnJycnJycnJycnJycnJyCnJycnJycnJycnJy
cGtxV3V1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1bVNwYTY2NjY2NjY2
NjY2NjY2NjYKNjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NlpNQUFBRWhKUUJBcmdnSUMxZi8vZ2lp
Z0FDRko0NEFBblB4d0FCTWV2dnZ2dnZ2dnZ2dgp2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2
dnYvdy84RmhBSEFBTEFDZ1FWVFA0Z0FBaExnQUNEMUVBQUVINEFBUVk4SEFBRUJvCkFBUWQySU9B
QUlEUUFBZzdzUWNBQVFFd0FCQmVZZzRBQWdKZ0FDQzh3cGE2NjY2NjY2NjY2NjY2NjY2NjY2NjY2
NjY2NjY2NjY2NjYKNjY2NjY2NjZaS2xycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJy
cnJycnJycnBrcVd1dXV1dXV1dXV1dXV1dXV1dXV1dQp1dXV1dXV1dXV1dXV1dXV1dXV1dXVtU3Bh
NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjZaS2xycnJycnJyCnJycnJy
cnJycnJycnJycnJycnJycnJycnJycnJycnJycnJwa3dBQUFBU0VsQUdEdUNBZ0xWLy8rQ0tLQUFJ
VW5qZ0FDYy9IQUFFeDYKKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKy8v
RC93V0VBY0FBc0FLQkJWTS9pQUFDRXVBQUlQVVFBQVFmZwpBQkJqd2NBQVFHZ0FCQjNZZzRBQWdO
QUFDRHV4QndBQkFUQUFFRjVpRGdBQ0FtQUFJTHpDbHJycnJycnJycnJycnJycnJycnJycnJyCnJy
cnJycnJycnJycnJycnJycnBrcVd1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1
dXV1dW1TcGE2NjY2NjY2NjYKNjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjZaS2xycnJy
cnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycgpwa3FXdXV1dXV1dXV1dXV1dXV1
dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXVtVEFBQUFCZHlVQUlFdUNBZ0xWLy8rQ0tLQUFJVW5q
CmdBQ2MvSEFBRXg2KysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKy8vRC93
V0VBY0FBc0FLQkJWTS9pQUFDRXUKQUFJUFVRQUFRZmdBQkJqd2NBQVFHZ0FCQjNZZzRBQWdOQUFD
RHV4QndBQkFUQUFFRjVpRGdBQ0FtQUFJTHpDbHJycnJycnJycnJycgpycnJycnJycnJycnJycnJy
cnJycnJycnJycnJycnBrcVd1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1
dW1TCnBhNjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjZaS2xycnJycnJy
cnJycnJycnJycnJycnJycnJycnJycnIKcnJycnJycnJycnJwa2hiQUFSbVJrWmtaRVpHUmYrQUFi
SXpBUXRLRjhaWUwvQ1drQUxnQVYweU5pZklkSFlQQUFwTkdrTnVwRlp3MQpMWFhYWFhYWFhYWFhY
WFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWEN6SUFBaklqTWpNaU1pTXkvL3dBT29RVnV5SThy
YmpOMzNnCkhlQUJwaytUZk9mY0FKNXFhWGYrdHdBQUFCVUdCUkVEaC9ST3pRcEwzS0dVT3NQVW14
Y2ZBSUFBQUFBSUllRUpBS1VBUU9BQUFBQUsKSVFDQjRRa0F0UUJBNEFBQUFBb2hBRUM0UWtBdFFC
QTRBQUFBQ2lFQVlQaENRQzFBRURnQUFBQU1JUUFnVGhDUUMxQU5qd1Z3QUFBQQpGUVlGRVFPSDlF
N05Da3Zjb1pRNnc5U2JGeDhBZ0FBQUFBZ0JxSUZnRWFBSUhBQUFBQW9CQUlHb2dXQVZvQWdjQUFB
QUNnRUFRS29nCldBVm9BZ2NBQUFBS0FRQmc2aUJZQldnQ0J3QUFBQXNCQUNCS2lCWUJXZ0NCd0FB
QUFCVUdCUkVEaC9ST3pRcEwzS0dVT3NQVW14Y2YKQUlBQUFBQUlJZUlSQUtVQVFPQUFBQUFLSVFD
QjRoRUF0UUJBNEFBQUFBb2hBRUM0aEVBdFFCQTRBQUFBQ2lFQVlQaUVRQzFBRURnQQpBQUFNSVFB
Z1RpRVFDMUFOandWd0FBQUFGUVlGRVFPSDlFN05Da3Zjb1pRNnc5U2JGeDhBZ0FBQUFBZ0JxTU5n
RWFBSUhBQUFBQW9CCkFJR293MkFWb0FnY0FBQUFDZ0VBUUtvdzJBVm9BZ2NBQUFBS0FRQmc2akRZ
QldnQ0J3QUFBQXNCQUNCS2pEWUJXZ0NCd0FBQUFCVUcKQlJFRGgvUk96UXBMM0tHVU9zUFVteGNm
QUlBQUFBQUlJZU1aQUtVQVFPQUFBQUFLSVFDQjR4a0F0UUJBNEFBQUFBb2hBRUM0eGtBdApRQkE0
QUFBQUNpRUFZUGpHUUMxQUVEZ0FBQUFNSVFBZ1RqR1FDMUFOandWd0FBQUFGUVlGRVFPSDlFN05D
a3Zjb1pRNnc5U2JGeDhBCmdBQUFBQWdCcVFWZ0VhQUlIQUFBQUFvQkFJR3BCV0FWb0FnY0FBQUFD
Z0VBUUtwQldBVm9BZ2NBQUFBS0FRQmc2a0ZZQldnQ0J3QUEKQUFzQkFDQktrRllCV2dDQndBQUFB
QlVHQlJFRGgvUk96UXBMM0tHVU9zUFVteGNmQUlBQUFBQUlJZVFoQUtVQVFPQUFBQUFLSVFDQgo1
Q0VBdFFCQTRBQUFBQW9oQUVDNUNFQXRRQkE0QUFBQUNpRUFZUGtJUUMxQUVEZ0FBQUFNSVFBZ1Rr
SVFDMUFOandWd0FBQUFGUVlGCkVRT0g5RTdOQ2t2Y29aUTZ3OVNiRng4QWdBQUFBQWdCcVVkZ0Vh
QUlIQUFBQUFvQkFJR3BSMkFWb0FnY0FBQUFDZ0VBUUtwUjJBVm8KQWdjQUFBQUtBUUJnNmxIWUJX
Z0NCd0FBQUFzQkFDQktsSFlCV2dDQndBQUFBQlVHQlJFRGgvUk96UXBMM0tHVU9zUFVteGNmQUlB
QQpBQUFJSWVVcEFLVUFRT0FBQUFBS0lRQ0I1U2tBdFFCQTRBQUFBQW9oQUVDNVNrQXRRQkE0QUFB
QUNpRUFZUGxLUUMxQUVEZ0FBQUFNCklRQWdUbEtRQzFBTmp3VndBQUFBRlFZRkVRT0g5RTdOQ2t2
Y29aUTZ3OVNiRng4QWdBQUFBQWdCcVlsZ0VhQUlIQUFBQUFvQkFJR3AKaVdBVm9BZ2NBQUFBQ2dF
QVFLcGlXQVZvQWdjQUFBQUtBUUJnNm1KWUJXZ0NCd0FBQUFzQkFDQkttSllCV2dDQndBQUFBQlVH
QlJFRApoL1JPelFwTDNLR1VPc1BVbXhjZkFJQUFBQUFJSWVZeEFLVUFRT0FBQUFBS0lRQ0I1akVB
dFFCQTRBQUFBQW9oQUVDNWpFQXRRQkE0CkFBQUFDaUVBWVBtTVFDMUFFRGdBQUFBTUlRQWdUbU1R
QzFBTmp3VndBQUFBRlFZRkVRT0g5RTdOQ2t2Y29aUTZ3OVNiRng4QWdBQUEKQUFnQnFjdGdFYUFJ
SEFBQUFBb0JBSUdweTJBVm9BZ2NBQUFBQ2dFQVFLcHkyQVZvQWdjQUFBQUtBUUJnNm5MWUJXZ0NC
d0FBQUFzQgpBQ0JLbkxZQldnQ0J3QUFBQUJVR0JSRURoL1JPelFwTDNLR1VPc1BVbXhjZkFJQUFB
QUFJSWVjNUFLVUFRT0FBQUFBS0lRQ0I1emtBCnRRQkE0QUFBQUFvaEFFQzV6a0F0UUJBNEFBQUFD
aUVBWVBuT1FDMUFFRGdBQUFBTUlRQWdUbk9RQzFBTmp3VndBQUFBRlFZRkVRT0gKOUU3TkNrdmNv
WlE2dzlTYkZ4OEFnQUFBQUFnQnFnMWdFYUFJSEFBQUFBb0JBSUdxRFdBVm9BZ2NBQUFBQ2dFQVFL
cURXQVZvQWdjQQpBQUFLQVFCZzZvTllCV2dDQndBQUFBc0JBQ0JLb05ZQldnQ0J3QUFBQUJVR0JS
RURoL1JPelFwTDNLR1VPc1BVbXhjZkFJQUFBQUFJCkllaEJBS1VBUU9BQUFBQUtJUUNCNkVFQXRR
QkE0QUFBQUFvaEFFQzZFRUF0UUJBNEFBQUFDaUVBWVBvUVFDMUFFRGdBQUFBTUlRQWcKVG9RUUMx
QU5qd1Z3QUFBQUZRWUZFUU9IOUU3TkNrdmNvWlE2dzlTYkZ4OEFnQUFBQUFnQnFrOWdFYUFJSEFB
QUFBb0JBSUdxVDJBVgpvQWdjQUFBQUNnRUFRS3FUMkFWb0FnY0FBQUFLQVFCZzZwUFlCV2dDQndB
QUFBc0JBQ0JLcFBZQldnQ0J3QUFBQUJVR0JSRURoL1JPCnpRcEwzS0dVT3NQVW14Y2ZBSUFBQUFB
SUllbEpBS1VBUU9BQUFBQUtJUUNCNlVrQXRRQkE0QUFBQUFvaEFFQzZVa0F0UUJBNEFBQUEKQ2lF
QVlQcFNRQzFBRURnQUFBQU1JUUFnVHBTUUMxQU5qd1Z3QUFBQUZRWUZFUU9IOUU3TkNrdmNvWlE2
dzlTYkZ4OEFnQUFBQUFnQgpxcEZnRWFBSUhBQUFBQW9CQUlHcWtXQVZvQWdjQUFBQUNnRUFRS3Fr
V0FWb0FnY0FBQUFLQVFCZzZxUllCV2dDQndBQUFBc0JBQ0JLCnFSWUJXZ0NCd0FBQUFCVUdCUkVE
aC9ST3pRcEwzS0dVT3NQVW14Y2ZBSUFBQUFBSUllcFJBS1VBUU9BQUFBQUtJUUNCNmxFQXRRQkEK
NEFBQUFBb2hBRUM2bEVBdFFCQTRBQUFBQ2lFQVlQcVVRQzFBRURnQUFBQU1JUUFnVHFVUUMxQU5q
d1Z3QUFBQUZRWUZFUU9IOUU3TgpDa3Zjb1pRNnc5U2JGeDhBZ0FBQUFBZ0JxdE5nRWFBSUhBQUFB
QW9CQUlHcTAyQVZvQWdjQUFBQUNnRUFRS3EwMkFWb0FnY0FBQUFLCkFRQmc2clRZQldnQ0J3QUFB
QXNCQUNCS3JUWUJXZ0NCd0FBQUFCVUdCUkVEaC9ST3pRcEwzS0dVT3NQVW14Y2ZBSUFBQUFBSUll
dFoKQUtVQVFPQUFBQUFLSVFDQjYxa0F0UUJBNEFBQUFBb2hBRUM2MWtBdFFCQTRBQUFBQ2lFQVlQ
cldRQzFBRURnQUFBQU1JUUFnVHJXUQpDMUFOandWd0FBQUFGUVlGRVFPSDlFN05Da3Zjb1pRNnc5
U2JGeDhBZ0FBQUFBZ0JxeFZnRWFBSUhBQUFBQW9CQUlHckZXQVZvQWdjCkFBQUFDZ0VBUUtyRldB
Vm9BZ2NBQUFBS0FRQmc2c1ZZQldnQ0J3QUFBQXNCQUNCS3NWWUJXZ0NCd0FBQUFCVUdCUkVEaC9S
T3pRcEwKM0tHVU9zUFVteGNmQUlBQUFBQUlBZXhkQVJvQWdjQUFBQUFLQVFDQjdGMEJXZ0NCd0FB
QUFBb0JBRUM3RjBCV2dDQndBQUFBQ2dFQQpZUHNYUUZhQUlIQUFBQUFLQVFBZ1RzWFFGYUFJSEFB
QUFCVUdCUkVEaC9ST3pRcEwzS0dVT3NQVW14Y2ZBSUFBQUFGUEpiZ2dJQ2xmCi8vZ3JnQWNSRVFD
RXBRcmpEQUFjUVljS2tBQUpYNERnQUNTNEFCU1NJa0pzaGtaZ3c0QUZkczJ4djFLcnVHSGN0OTk5
OTk5OTk5OTkKOTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OS8rSC9od2dBRkdJSTNKRWxodWV6
aE5mOEF3VG5ZNEZBQUNFeUFBSVBnZ0FBZy9BQQpDREhnQWI1dW1BQUlESGt3QUFnNnZwWUFBZ05B
QUNEdXhBQnBKYUFBRUJIV2dBQ0M1LzUwc0FBUUV3QUJCZVlVdGRkZGRkZGRkZGRkCmRkZGRkZGRk
ZGRkZGRkZGRkZGRkZGRkZGRkZGRkZE1sUzExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTEx
MTExMTExMTExMHkKVkxYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFRK
VXRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZApkZGRkZGRkZGRkZGRNbFMxMTExMTExMTEx
MTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTB5WUFBQUVnSlFDQnVDQWdMVi8vCitDS0tB
QUlVbmpnQUNjL0hBQUV4NisrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysv
L0Qvd1dFQWNBQXNBS0IKQlZNL2lBQUNFdUFBSVBVUUFBUWZnQUJCandjQUFRR2dBQkIzWWc0QUFn
TkFBQ0R1eEJ3QUJBVEFBRUY1aURnQUNBbUFBSUx6Q2xycgpycnJycnJycnJycnJycnJycnJycnJy
cnJycnJycnJycnJycnJycnJwa3FXdXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1CnV1
dXV1dXV1bVNwYTY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2WktscnJy
cnJycnJycnJycnJycnJycnIKcnJycnJycnJycnJycnJycnJycnJycGtxV3V1dXV1dXV1dXV1dXV1
dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1bVRBQUFCSVNVQQpRSzRJQ0F0WC8vNElvb0FBaFNl
T0FBSno4Y0FBVEhyNzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Ny84UC9C
CllRQndBQ3dBb0VGVXorSUFBSVM0QUFnOVJBQUJCK0FBRUdQQndBQkFhQUFFSGRpRGdBQ0EwQUFJ
TzdFSEFBRUJNQUFRWG1JT0FBSUMKWUFBZ3ZNS1d1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1
dXV1dXV1dXV1dXV1dW1TcGE2NjY2NjY2NjY2NjY2NjY2NjY2NjY2Ngo2NjY2NjY2NjY2NjY2NjY2
NjZaS2xycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnBrcVd1dXV1dXV1
dXV1CnV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXVtU3BhNjY2NjY2NjY2NjY2NjY2NjY2
NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjYKWk1BQUFBRWhKUUJnN2dnSUMxZi8vZ2lpZ0FDRko0NEFB
blB4d0FCTWV2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dgp2dnZ2dnYvdy84RmhB
SEFBTEFDZ1FWVFA0Z0FBaExnQUNEMUVBQUVINEFBUVk4SEFBRUJvQUFRZDJJT0FBSURRQUFnN3NR
Y0FBUUV3CkFCQmVZZzRBQWdKZ0FDQzh3cGE2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2
NjY2NjY2NjY2NlpLbHJycnJycnJycnJycnIKcnJycnJycnJycnJycnJycnJycnJycnJycnJycnBr
cVd1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dW1TcAphNjY2NjY2NjY2
NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjZaS2xycnJycnJycnJycnJycnJycnJycnJy
cnJycnJycnJyCnJycnJycnJycnJwa3dBQUFBWGNsQUNCTGdnSUMxZi8vZ2lpZ0FDRko0NEFBblB4
d0FCTWV2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnYKdnZ2dnZ2dnZ2dnZ2dnZ2dnYvdy84RmhBSEFB
TEFDZ1FWVFA0Z0FBaExnQUNEMUVBQUVINEFBUVk4SEFBRUJvQUFRZDJJT0FBSURRQQpBZzdzUWNB
QVFFd0FCQmVZZzRBQWdKZ0FDQzh3cGE2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2
NjY2NjY2NlpLbHJyCnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnBrcVd1
dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXUKdXV1dXV1dXVtU3BhNjY2NjY2NjY2NjY2
NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjZaSVd3QUVaa1pHWkdSR1JrWC9nQUd5TQp3RUxT
aGZHV0Mvd2xwQUM0QUZkTWpZbnlIUjJEd0FLVFJwRGJxUldjTlMxMTExMTExMTExMTExMTExMTEx
MTExMTExMTExMTExMTExCjExMTExMXdzeUFBSXlJekl6SWpJak12LzhBRHFFRmJzaVBLMjR6ZDk0
QjNnQWFaUGszem4zQUNlYW1sMy9yY0FBQUFWQmdVUkE0ZjAKVHMwS1M5eWhsRHJEMUpzWEh3Q0FB
QUFBQ0NIaENRQ2xBRURnQUFBQUNpRUFnZUVKQUxVQVFPQUFBQUFLSVFCQXVFSkFMVUFRT0FBQQpB
QW9oQUdENFFrQXRRQkE0QUFBQURDRUFJRTRRa0F0UURZOEZjQUFBQUJVR0JSRURoL1JPelFwTDNL
R1VPc1BVbXhjZkFJQUFBQUFJCkFhaUJZQkdnQ0J3QUFBQUtBUUNCcUlGZ0ZhQUlIQUFBQUFvQkFF
Q3FJRmdGYUFJSEFBQUFDZ0VBWU9vZ1dBVm9BZ2NBQUFBTEFRQWcKU29nV0FWb0FnY0FBQUFBVkJn
VVJBNGYwVHMwS1M5eWhsRHJEMUpzWEh3Q0FBQUFBQ0NIaUVRQ2xBRURnQUFBQUNpRUFnZUlSQUxV
QQpRT0FBQUFBS0lRQkF1SVJBTFVBUU9BQUFBQW9oQUdENGhFQXRRQkE0QUFBQURDRUFJRTRoRUF0
UURZOEZjQUFBQUJVR0JSRURoL1JPCnpRcEwzS0dVT3NQVW14Y2ZBSUFBQUFBSUFhakRZQkdnQ0J3
QUFBQUtBUUNCcU1OZ0ZhQUlIQUFBQUFvQkFFQ3FNTmdGYUFJSEFBQUEKQ2dFQVlPb3cyQVZvQWdj
QUFBQUxBUUFnU293MkFWb0FnY0FBQUFBVkJnVVJBNGYwVHMwS1M5eWhsRHJEMUpzWEh3Q0FBQUFB
Q0NIagpHUUNsQUVEZ0FBQUFDaUVBZ2VNWkFMVUFRT0FBQUFBS0lRQkF1TVpBTFVBUU9BQUFBQW9o
QUdENHhrQXRRQkE0QUFBQURDRUFJRTR4CmtBdFFEWThGY0FBQUFCVUdCUkVEaC9ST3pRcEwzS0dV
T3NQVW14Y2ZBSUFBQUFBSUFha0ZZQkdnQ0J3QUFBQUtBUUNCcVFWZ0ZhQUkKSEFBQUFBb0JBRUNx
UVZnRmFBSUhBQUFBQ2dFQVlPcEJXQVZvQWdjQUFBQUxBUUFnU3BCV0FWb0FnY0E9Cgo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>217903</attachid>
            <date>2013-11-26 14:46:11 -0800</date>
            <delta_ts>2013-11-26 14:59:54 -0800</delta_ts>
            <desc>Rebased patch.</desc>
            <filename>patch_10.txt</filename>
            <type>text/plain</type>
            <size>128007</size>
            <attacher name="Eric Carlson">eric.carlson</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDE1OTc5MCkKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDEwNSBAQAorMjAxMy0xMS0yNiAgRXJpYyBD
YXJsc29uICA8ZXJpYy5jYXJsc29uQGFwcGxlLmNvbT4KKworICAgICAgICBBbGxvdyB0aGUgUXVp
Y2tUaW1lIHBsdWctaW4gdG8gYmUgcmVwbGFjZWQgYnkgc2NyaXB0IGluIGFuIGlzb2xhdGVkIHdv
cmQKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEyNDkw
MAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFRlc3Q6
IHBsdWdpbnMvcXVpY2t0aW1lLXBsdWdpbi1yZXBsYWNlbWVudC5odG1sCisKKyAgICAgICAgKiBE
ZXJpdmVkU291cmNlcy5tYWtlOiBBZGQgbmV3IGZpbGVzLgorCisgICAgICAgICogTW9kdWxlcy9w
bHVnaW5zOiBBZGRlZC4KKyAgICAgICAgKiBNb2R1bGVzL3BsdWdpbnMvUGx1Z2luUmVwbGFjZW1l
bnQuaDogQWRkZWQuIERlZmluZXMgdGhlIGludGVyZmFjZSBmb3IgYSBwbHVnLWluIHJlcGxhY2Vt
ZW50LgorCisgICAgICAgIENyZWF0ZSBhIHJlcGxhY2VtZW50IGZvciB0aGUgUXVpY2tUaW1lIHBs
dWctaW4uCisgICAgICAgICogTW9kdWxlcy9wbHVnaW5zL1F1aWNrVGltZVBsdWdpblJlcGxhY2Vt
ZW50LmNwcDogQWRkZWQuCisgICAgICAgICogTW9kdWxlcy9wbHVnaW5zL1F1aWNrVGltZVBsdWdp
blJlcGxhY2VtZW50LmNzczogQWRkZWQuCisgICAgICAgICogTW9kdWxlcy9wbHVnaW5zL1F1aWNr
VGltZVBsdWdpblJlcGxhY2VtZW50Lmg6IEFkZGVkLgorICAgICAgICAqIE1vZHVsZXMvcGx1Z2lu
cy9RdWlja1RpbWVQbHVnaW5SZXBsYWNlbWVudC5pZGw6IEFkZGVkLgorICAgICAgICAqIE1vZHVs
ZXMvcGx1Z2lucy9RdWlja1RpbWVQbHVnaW5SZXBsYWNlbWVudC5qczogQWRkZWQuCisKKyAgICAg
ICAgKiBXZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2o6IEFkZCBuZXcgZmlsZXMuCisK
KyAgICAgICAgQWxsb3cgcGx1Zy1pbiByZXBsYWNlbWVudCB0byBiZSBlbmFibGVkIGF0IHJ1bnRp
bWUuCisgICAgICAgICogYmluZGluZ3MvZ2VuZXJpYy9SdW50aW1lRW5hYmxlZEZlYXR1cmVzLmg6
CisgICAgICAgIChXZWJDb3JlOjpSdW50aW1lRW5hYmxlZEZlYXR1cmVzOjpzZXRQbHVnaW5SZXBs
YWNlbWVudEVuYWJsZWQpOgorICAgICAgICAoV2ViQ29yZTo6UnVudGltZUVuYWJsZWRGZWF0dXJl
czo6cGx1Z2luUmVwbGFjZW1lbnRFbmFibGVkKToKKworICAgICAgICAqIGJpbmRpbmdzL2pzL0pT
RE9NQmluZGluZy5oOgorICAgICAgICAoV2ViQ29yZTo6dG9KUyk6IEFkZCB0b0pTKC4uLiBjb25z
dCBTdHJpbmcmIC4uLikuCisKKyAgICAgICAgKiBiaW5kaW5ncy9qcy9KU1BsdWdpbkVsZW1lbnRG
dW5jdGlvbnMuY3BwOgorICAgICAgICAoV2ViQ29yZTo6cGx1Z2luU2NyaXB0T2JqZWN0KTogR2l2
ZSBhIHBsdWctaW4gcmVwbGFjZW1lbnQgYSBmaXJzdCBzaG90IGF0IGRlZmluaW5nIHRoZQorICAg
ICAgICAgICAgc2NyaXB0IGludGVyZmFjZS4KKworICAgICAgICAqIGh0bWwvSFRNTEVtYmVkRWxl
bWVudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpIVE1MRW1iZWRFbGVtZW50Ojp1cGRhdGVXaWRn
ZXQpOiBDYWxsIGJhc2UgY2xhc3MgcmVxdWVzdE9iamVjdC4KKworICAgICAgICAqIGh0bWwvSFRN
TE1lZGlhRWxlbWVudC5jcHA6CisgICAgICAgIChIVE1MTWVkaWFFbGVtZW50OjpmaWxlU2l6ZSk6
IE5ldywgcGFzc3Rocm91Z2ggdG8gbWVkaWEgZW5naW5lLgorICAgICAgICAqIGh0bWwvSFRNTE1l
ZGlhRWxlbWVudC5oOgorCisgICAgICAgICogaHRtbC9IVE1MT2JqZWN0RWxlbWVudC5jcHA6Cisg
ICAgICAgIChXZWJDb3JlOjpIVE1MT2JqZWN0RWxlbWVudDo6dXBkYXRlV2lkZ2V0KTogQ2FsbCBi
YXNlIGNsYXNzIHJlcXVlc3RPYmplY3QuCisKKyAgICAgICAgTW92ZWQgc29tZSBsb2dpYyB0aGF0
IHdhcyBwcmV2aW91c2x5IHVzZWQgb25seSBmb3IgY3JlYXRpbmcgYSBwbHVnLWluIHNuYXBzaG90
IHRvIHRoZSBiYXNlCisgICAgICAgIGNsYXNzIHNvIGl0IGNhbiBiZSBzaGFyZWQgYnkgYSBwbHVn
LWluIHJlcGxhY2VtZW50LgorICAgICAgICAqIGh0bWwvSFRNTFBsdWdJbkVsZW1lbnQuY3BwOgor
ICAgICAgICAoV2ViQ29yZTo6SFRNTFBsdWdJbkVsZW1lbnQ6OkhUTUxQbHVnSW5FbGVtZW50KTog
SW5pdGlhbGl6ZSB0aW1lciB1c2VkIHRvIHN3YXAgcmVuZGVyZXJzLgorICAgICAgICAoV2ViQ29y
ZTo6SFRNTFBsdWdJbkVsZW1lbnQ6OmNyZWF0ZVJlbmRlcmVyKTogQWxsb3cgcGx1Zy1pbiByZXBs
YWNlbWVudCB0byBjcmVhdGUgdGhlIHJlbmRlcmVyLgorICAgICAgICAoV2ViQ29yZTo6SFRNTFBs
dWdJbkVsZW1lbnQ6OnN3YXBSZW5kZXJlclRpbWVyRmlyZWQpOiBDcmVhdGUgYSBzaGFkb3cgcm9v
dC4KKyAgICAgICAgKFdlYkNvcmU6OkhUTUxQbHVnSW5FbGVtZW50OjpzZXREaXNwbGF5U3RhdGUp
OiBTZXQgdGhlIG5ldyBzdGF0ZSwgcHJpbWUgdGhlIHN3YXAgcmVuZGVyZXIgCisgICAgICAgICAg
ICB0aW1lciBpZiBuZWNlc3NhcnkuCisgICAgICAgIChXZWJDb3JlOjpIVE1MUGx1Z0luRWxlbWVu
dDo6ZGlkQWRkVXNlckFnZW50U2hhZG93Um9vdCk6IFRlbGwgdGhlIHBsdWctaW4gcmVwbGFjZW1l
bnQgdG8KKyAgICAgICAgICAgIGluc3RhbGwgaXRzZWxmIGluIHRoZSBuZXcgc2hhZG93IERPTS4K
KyAgICAgICAgKFdlYkNvcmU6OnJlZ2lzdGVyZWRQbHVnaW5SZXBsYWNlbWVudHMpOiBSZXR1cm4g
dmVjdG9yIG9mIGFsbCByZWdpc3RlcmVkIHBsdWctaW4gcmVwbGFjZW1lbnRzLgorICAgICAgICAo
V2ViQ29yZTo6cmVnaXN0ZXJQbHVnaW5SZXBsYWNlbWVudCk6IEFkZCBhIHBsdWctaW4gcmVwbGFj
ZW1lbnQuCisgICAgICAgIChXZWJDb3JlOjpwbHVnaW5SZXBsYWNlbWVudEZvclR5cGUpOiBGaW5k
IGEgcGx1Zy1pbiByZXBsYWNlbWVudCBmb3IgYSBNSU1FIHR5cGUuCisgICAgICAgIChXZWJDb3Jl
OjpIVE1MUGx1Z0luRWxlbWVudDo6cmVxdWVzdE9iamVjdCk6IElmIHRoZXJlIGlzIGEgcGx1Zy1p
biByZXBsYWNlbWVudCBmb3IgdGhlIE1JTUUgdHlwZSwKKyAgICAgICAgICAgIGNyZWF0ZSBpdCBh
bmQgc2V0IHRoZSBkaXNwbGF5IHN0YXRlLgorICAgICAgICAoV2ViQ29yZTo6SFRNTFBsdWdJbkVs
ZW1lbnQ6OnNjcmlwdE9iamVjdEZvclBsdWdpblJlcGxhY2VtZW50KTogUmV0dXJuIHRoZSBzY3Jp
cHQgb2JqZWN0IGZvciAKKyAgICAgICAgICAgIHRoZSBjdXJyZW50IHBsdWctaW4gcmVwbGFjZW1l
bnQsIGlmIGFueS4KKyAgICAgICAgKiBodG1sL0hUTUxQbHVnSW5FbGVtZW50Lmg6CisKKyAgICAg
ICAgTW92ZSBzb21lIHBsdWctaW4gc25hcHNob3QgY29kZSBpbnRvIHRoZSBiYXNlIGNsYXNzLgor
ICAgICAgICAqIGh0bWwvSFRNTFBsdWdJbkltYWdlRWxlbWVudC5jcHA6CisgICAgICAgIChXZWJD
b3JlOjpIVE1MUGx1Z0luSW1hZ2VFbGVtZW50OjpIVE1MUGx1Z0luSW1hZ2VFbGVtZW50KTogTm8g
bmVlZCB0byBpbml0aWFsaXplIHRpbWVyLgorICAgICAgICAoV2ViQ29yZTo6SFRNTFBsdWdJbklt
YWdlRWxlbWVudDo6c2V0RGlzcGxheVN0YXRlKTogQ2FsbCBiYXNlIGNsYXNzLgorICAgICAgICAo
V2ViQ29yZTo6SFRNTFBsdWdJbkltYWdlRWxlbWVudDo6Y3JlYXRlUmVuZGVyZXIpOiBEaXR0by4K
KyAgICAgICAgKFdlYkNvcmU6OkhUTUxQbHVnSW5JbWFnZUVsZW1lbnQ6OmRpZEFkZFVzZXJBZ2Vu
dFNoYWRvd1Jvb3QpOiBEaXR0by4KKyAgICAgICAgKFdlYkNvcmU6OkhUTUxQbHVnSW5JbWFnZUVs
ZW1lbnQ6OnVzZXJEaWRDbGlja1NuYXBzaG90KTogUmVtb3ZlIHVubmVjZXNzYXJ5IGNsYXNzIG5h
bWUuCisgICAgICAgIChXZWJDb3JlOjpIVE1MUGx1Z0luSW1hZ2VFbGVtZW50OjpyZXF1ZXN0T2Jq
ZWN0KTogTmV3LgorICAgICAgICAqIGh0bWwvSFRNTFBsdWdJbkltYWdlRWxlbWVudC5oOgorCisg
ICAgICAgICogaHRtbC9IVE1MVmlkZW9FbGVtZW50Lmg6IE1ha2UgY3JlYXRlUmVuZGVyZXIgcHVi
bGljIHNvIHRoZSBRdWlja1RpbWUgcGx1Zy1pbiByZXBsYWNlbWVudCBjYW4KKyAgICAgICAgICAg
IGNhbGwgaXQuCisKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9NZWRpYVBsYXllci5jcHA6
CisgICAgICAgIChXZWJDb3JlOjpNZWRpYVBsYXllcjo6ZmlsZVNpemUpOiBOZXcuCisgICAgICAg
ICogcGxhdGZvcm0vZ3JhcGhpY3MvTWVkaWFQbGF5ZXIuaDoKKyAgICAgICAgKiBwbGF0Zm9ybS9n
cmFwaGljcy9NZWRpYVBsYXllclByaXZhdGUuaDoKKworICAgICAgICAqIHBsYXRmb3JtL2dyYXBo
aWNzL2F2Zm91bmRhdGlvbi9NZWRpYVBsYXllclByaXZhdGVBVkZvdW5kYXRpb24uY3BwOgorICAg
ICAgICAoV2ViQ29yZTo6TWVkaWFQbGF5ZXJQcml2YXRlQVZGb3VuZGF0aW9uOjpleHRyYU1lbW9y
eUNvc3QpOiB0b3RhbEJ5dGVzIHJldHVybnMgYW4gdW5zaWduZWQgbG9uZyBsb25nLgorICAgICAg
ICAqIHBsYXRmb3JtL2dyYXBoaWNzL2F2Zm91bmRhdGlvbi9NZWRpYVBsYXllclByaXZhdGVBVkZv
dW5kYXRpb24uaDoKKyAgICAgICAgKFdlYkNvcmU6Ok1lZGlhUGxheWVyUHJpdmF0ZUFWRm91bmRh
dGlvbjo6ZmlsZVNpemUpOgorCisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvYXZmb3VuZGF0
aW9uL2NmL01lZGlhUGxheWVyUHJpdmF0ZUFWRm91bmRhdGlvbkNGLmNwcDoKKyAgICAgICAgKFdl
YkNvcmU6Ok1lZGlhUGxheWVyUHJpdmF0ZUFWRm91bmRhdGlvbkNGOjp0b3RhbEJ5dGVzKTogUmV0
dXJuIGFuIHVuc2lnbmVkIGxvbmcgbG9uZy4KKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9h
dmZvdW5kYXRpb24vY2YvTWVkaWFQbGF5ZXJQcml2YXRlQVZGb3VuZGF0aW9uQ0YuaDoKKworICAg
ICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL2F2Zm91bmRhdGlvbi9vYmpjL01lZGlhUGxheWVyUHJp
dmF0ZUFWRm91bmRhdGlvbk9iakMuaDoKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9hdmZv
dW5kYXRpb24vb2JqYy9NZWRpYVBsYXllclByaXZhdGVBVkZvdW5kYXRpb25PYmpDLm1tOgorICAg
ICAgICAoV2ViQ29yZTo6TWVkaWFQbGF5ZXJQcml2YXRlQVZGb3VuZGF0aW9uT2JqQzo6dG90YWxC
eXRlcyk6IERpdHRvLgorCisgICAgICAgICogdGVzdGluZy9JbnRlcm5hbFNldHRpbmdzLmNwcDoK
KyAgICAgICAgKFdlYkNvcmU6OkludGVybmFsU2V0dGluZ3M6OkJhY2t1cDo6QmFja3VwKTogQmFj
a3VwIHRoZSBwbHVnLWluIHJlcGxhY2VtZW50IHJ1bnRpbWUgc2V0dGluZy4KKyAgICAgICAgKFdl
YkNvcmU6OkludGVybmFsU2V0dGluZ3M6OkJhY2t1cDo6cmVzdG9yZVRvKTogUmVzdG9yZSBpdC4K
KyAgICAgICAgKFdlYkNvcmU6OkludGVybmFsU2V0dGluZ3M6OnNldFBsdWdpblJlcGxhY2VtZW50
RW5hYmxlZCk6IFNldCBpdC4KKyAgICAgICAgKiB0ZXN0aW5nL0ludGVybmFsU2V0dGluZ3MuaDoK
KyAgICAgICAgKiB0ZXN0aW5nL0ludGVybmFsU2V0dGluZ3MuaWRsOgorCiAyMDEzLTExLTI2ICBF
cmljIENhcmxzb24gIDxlcmljLmNhcmxzb25AYXBwbGUuY29tPgogCiAgICAgICAgIHZpZGVvLmN1
cnJlbnRTcmMgc2hvdWxkIHJldHVybiBlbXB0eSB3aGVuIG5vIHJlc291cmNlIGlzIGxvYWRlZApJ
bmRleDogU291cmNlL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMubWFrZQo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBT
b3VyY2UvV2ViQ29yZS9EZXJpdmVkU291cmNlcy5tYWtlCShyZXZpc2lvbiAxNTk3MzYpCisrKyBT
b3VyY2UvV2ViQ29yZS9EZXJpdmVkU291cmNlcy5tYWtlCSh3b3JraW5nIGNvcHkpCkBAIC0zNiw2
ICszNiw3IEBAIFZQQVRIID0gXAogICAgICQoV2ViQ29yZSkvTW9kdWxlcy9tZWRpYXNvdXJjZSBc
CiAgICAgJChXZWJDb3JlKS9Nb2R1bGVzL21lZGlhc3RyZWFtIFwKICAgICAkKFdlYkNvcmUpL01v
ZHVsZXMvbm90aWZpY2F0aW9ucyBcCisgICAgJChXZWJDb3JlKS9Nb2R1bGVzL3BsdWdpbnMgXAog
ICAgICQoV2ViQ29yZSkvTW9kdWxlcy9xdW90YSBcCiAgICAgJChXZWJDb3JlKS9Nb2R1bGVzL3Nw
ZWVjaCBcCiAgICAgJChXZWJDb3JlKS9Nb2R1bGVzL3dlYmF1ZGlvIFwKQEAgLTE0MCw2ICsxNDEs
NyBAQCBCSU5ESU5HX0lETFMgPSBcCiAgICAgJChXZWJDb3JlKS9Nb2R1bGVzL25vdGlmaWNhdGlv
bnMvTm90aWZpY2F0aW9uQ2VudGVyLmlkbCBcCiAgICAgJChXZWJDb3JlKS9Nb2R1bGVzL25vdGlm
aWNhdGlvbnMvTm90aWZpY2F0aW9uUGVybWlzc2lvbkNhbGxiYWNrLmlkbCBcCiAgICAgJChXZWJD
b3JlKS9Nb2R1bGVzL25vdGlmaWNhdGlvbnMvV29ya2VyR2xvYmFsU2NvcGVOb3RpZmljYXRpb25z
LmlkbCBcCisgICAgJChXZWJDb3JlKS9Nb2R1bGVzL3BsdWdpbnMvUXVpY2tUaW1lUGx1Z2luUmVw
bGFjZW1lbnQuaWRsIFwKICAgICAkKFdlYkNvcmUpL01vZHVsZXMvcXVvdGEvRE9NV2luZG93UXVv
dGEuaWRsIFwKICAgICAkKFdlYkNvcmUpL01vZHVsZXMvcXVvdGEvTmF2aWdhdG9yU3RvcmFnZVF1
b3RhLmlkbCBcCiAgICAgJChXZWJDb3JlKS9Nb2R1bGVzL3F1b3RhL1N0b3JhZ2VJbmZvLmlkbCBc
CkBAIC04NjksNiArODcxLDEwIEBAIGlmZXEgKCQoZmluZHN0cmluZyBFTkFCTEVfTUVESUFfQ09O
VFJPTFMKIAlVU0VSX0FHRU5UX1NUWUxFX1NIRUVUUyA6PSAkKFVTRVJfQUdFTlRfU1RZTEVfU0hF
RVRTKSAkKFdlYkNvcmUpL01vZHVsZXMvbWVkaWFjb250cm9scy9tZWRpYUNvbnRyb2xzQXBwbGUu
Y3NzCiBlbmRpZgogCitpZmVxICgkKE9TKSxNQUNPUykKKwlVU0VSX0FHRU5UX1NUWUxFX1NIRUVU
UyAgOj0gJChVU0VSX0FHRU5UX1NUWUxFX1NIRUVUUykgJChXZWJDb3JlKS9Nb2R1bGVzL3BsdWdp
bnMvUXVpY2tUaW1lUGx1Z2luUmVwbGFjZW1lbnQuY3NzCitlbmRpZgorCiBVc2VyQWdlbnRTdHls
ZVNoZWV0cy5oIDogY3NzL21ha2UtY3NzLWZpbGUtYXJyYXlzLnBsIGJpbmRpbmdzL3NjcmlwdHMv
cHJlcHJvY2Vzc29yLnBtICQoVVNFUl9BR0VOVF9TVFlMRV9TSEVFVFMpICQoUExBVEZPUk1fRkVB
VFVSRV9ERUZJTkVTKQogCXBlcmwgLUkkKFdlYkNvcmUpL2JpbmRpbmdzL3NjcmlwdHMgJDwgLS1k
ZWZpbmVzICIkKEZFQVRVUkVfREVGSU5FUykiICRAIFVzZXJBZ2VudFN0eWxlU2hlZXRzRGF0YS5j
cHAgJChVU0VSX0FHRU5UX1NUWUxFX1NIRUVUUykKIApAQCAtODgyLDYgKzg4OCw5IEBAIGlmZXEg
KCQoZmluZHN0cmluZyBFTkFCTEVfTUVESUFfQ09OVFJPTFMKIAlVU0VSX0FHRU5UX1NDUklQVFMg
Oj0gJChVU0VSX0FHRU5UX1NDUklQVFMpICQoV2ViQ29yZSkvTW9kdWxlcy9tZWRpYWNvbnRyb2xz
L21lZGlhQ29udHJvbHNBcHBsZS5qcwogZW5kaWYKIAoraWZlcSAoJChPUyksTUFDT1MpCisJVVNF
Ul9BR0VOVF9TQ1JJUFRTICA6PSAkKFVTRVJfQUdFTlRfU0NSSVBUUykgJChXZWJDb3JlKS9Nb2R1
bGVzL3BsdWdpbnMvUXVpY2tUaW1lUGx1Z2luUmVwbGFjZW1lbnQuanMKK2VuZGlmCiAKIFVzZXJB
Z2VudFNjcmlwdHMuaCA6IGNzcy9tYWtlLWNzcy1maWxlLWFycmF5cy5wbCBiaW5kaW5ncy9zY3Jp
cHRzL3ByZXByb2Nlc3Nvci5wbSAkKFVTRVJfQUdFTlRfU0NSSVBUUykgJChQTEFURk9STV9GRUFU
VVJFX0RFRklORVMpCiAJcGVybCAtSSQoV2ViQ29yZSkvYmluZGluZ3Mvc2NyaXB0cyAkPCAtLWRl
ZmluZXMgIiQoRkVBVFVSRV9ERUZJTkVTKSIgJEAgVXNlckFnZW50U2NyaXB0c0RhdGEuY3BwICQo
VVNFUl9BR0VOVF9TQ1JJUFRTKQpJbmRleDogU291cmNlL1dlYkNvcmUvTW9kdWxlcy9wbHVnaW5z
L1BsdWdpblJlcGxhY2VtZW50LmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvTW9kdWxl
cy9wbHVnaW5zL1BsdWdpblJlcGxhY2VtZW50LmgJKHJldmlzaW9uIDApCisrKyBTb3VyY2UvV2Vi
Q29yZS9Nb2R1bGVzL3BsdWdpbnMvUGx1Z2luUmVwbGFjZW1lbnQuaAkod29ya2luZyBjb3B5KQpA
QCAtMCwwICsxLDkxIEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDEzIEFwcGxlIEluYy4gQWxs
IHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJj
ZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJl
IHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJl
IG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0
aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25z
IGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4g
YmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90
aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVy
IGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3Zp
ZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJ
REVEIEJZIEFQUExFIENPTVBVVEVSLCBJTkMuIGBgQVMgSVMnJyBBTkQgQU5ZCisgKiBFWFBSRVNT
IE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRI
RQorICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBG
T1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiAgSU4gTk8gRVZFTlQg
U0hBTEwgQVBQTEUgQ09NUFVURVIsIElOQy4gT1IKKyAqIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUg
Rk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLAorICogRVhFTVBM
QVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVE
IFRPLAorICogUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9T
UyBPRiBVU0UsIERBVEEsIE9SCisgKiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04p
IEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZCisgKiBPRiBMSUFCSUxJVFksIFdIRVRI
RVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKKyAqIChJTkNMVURJTkcg
TkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVT
RQorICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElU
WSBPRiBTVUNIIERBTUFHRS4gCisgKi8KKworI2lmbmRlZiBQbHVnaW5SZXBsYWNlbWVudF9oCisj
ZGVmaW5lIFBsdWdpblJlcGxhY2VtZW50X2gKKworI2luY2x1ZGUgPHd0Zi9SZWZDb3VudGVkLmg+
CisjaW5jbHVkZSA8d3RmL3RleHQvV1RGU3RyaW5nLmg+CisKK25hbWVzcGFjZSBKU0MgeworICAg
IGNsYXNzIEpTT2JqZWN0OworfQorCituYW1lc3BhY2UgV2ViQ29yZSB7CisKK2NsYXNzIEhUTUxQ
bHVnSW5FbGVtZW50OworY2xhc3MgUmVuZGVyRWxlbWVudDsKK2NsYXNzIFJlbmRlclN0eWxlOwor
Y2xhc3MgU2hhZG93Um9vdDsKKworY2xhc3MgUGx1Z2luUmVwbGFjZW1lbnQgOiBwdWJsaWMgUmVm
Q291bnRlZDxQbHVnaW5SZXBsYWNlbWVudD4geworcHVibGljOgorICAgIHZpcnR1YWwgflBsdWdp
blJlcGxhY2VtZW50KCkgeyB9CisKKyAgICB2aXJ0dWFsIGJvb2wgaW5zdGFsbFJlcGxhY2VtZW50
KFNoYWRvd1Jvb3QqKSA9IDA7CisgICAgdmlydHVhbCBKU0M6OkpTT2JqZWN0KiBzY3JpcHRPYmpl
Y3QoKSB7IHJldHVybiAwOyB9CisKKyAgICB2aXJ0dWFsIGJvb2wgd2lsbENyZWF0ZVJlbmRlcmVy
KCkgeyByZXR1cm4gZmFsc2U7IH0KKyAgICB2aXJ0dWFsIFJlbmRlckVsZW1lbnQqIGNyZWF0ZVJl
bmRlcmVyKEhUTUxQbHVnSW5FbGVtZW50JiwgUGFzc1JlZjxSZW5kZXJTdHlsZT4pID0gMDsKKwor
cHJvdGVjdGVkOgorICAgIFBsdWdpblJlcGxhY2VtZW50KCkgeyB9Cit9OworCit0eXBlZGVmIFBh
c3NSZWZQdHI8UGx1Z2luUmVwbGFjZW1lbnQ+ICgqQ3JlYXRlUGx1Z2luUmVwbGFjZW1lbnQpKEhU
TUxQbHVnSW5FbGVtZW50JiwgY29uc3QgVmVjdG9yPFN0cmluZz4mIHBhcmFtTmFtZXMsIGNvbnN0
IFZlY3RvcjxTdHJpbmc+JiBwYXJhbVZhbHVlcyk7Cit0eXBlZGVmIGJvb2wgKCpQbHVnaW5SZXBs
YWNlbWVudFN1cHBvcnRzVHlwZSkoY29uc3QgU3RyaW5nJik7Cit0eXBlZGVmIGJvb2wgKCpQbHVn
aW5SZXBsYWNlbWVudFN1cHBvcnRzRmlsZUV4dGVuc2lvbikoY29uc3QgU3RyaW5nJik7CisKK2Ns
YXNzIFJlcGxhY2VtZW50UGx1Z2luIHsKK3B1YmxpYzoKKyAgICBSZXBsYWNlbWVudFBsdWdpbihD
cmVhdGVQbHVnaW5SZXBsYWNlbWVudCBjb25zdHJ1Y3RvciwgUGx1Z2luUmVwbGFjZW1lbnRTdXBw
b3J0c1R5cGUgc3VwcG9ydHNUeXBlLCBQbHVnaW5SZXBsYWNlbWVudFN1cHBvcnRzRmlsZUV4dGVu
c2lvbiBzdXBwb3J0c0ZpbGVFeHRlbnNpb24pCisgICAgICAgIDogbV9jb25zdHJ1Y3Rvcihjb25z
dHJ1Y3RvcikKKyAgICAgICAgLCBtX3N1cHBvcnRzVHlwZShzdXBwb3J0c1R5cGUpCisgICAgICAg
ICwgbV9zdXBwb3J0c0ZpbGVFeHRlbnNpb24oc3VwcG9ydHNGaWxlRXh0ZW5zaW9uKQorICAgIHsK
KyAgICB9CisKKyAgICBleHBsaWNpdCBSZXBsYWNlbWVudFBsdWdpbihjb25zdCBSZXBsYWNlbWVu
dFBsdWdpbiYgb3RoZXIpCisgICAgICAgIDogbV9jb25zdHJ1Y3RvcihvdGhlci5tX2NvbnN0cnVj
dG9yKQorICAgICAgICAsIG1fc3VwcG9ydHNUeXBlKG90aGVyLm1fc3VwcG9ydHNUeXBlKQorICAg
ICAgICAsIG1fc3VwcG9ydHNGaWxlRXh0ZW5zaW9uKG90aGVyLm1fc3VwcG9ydHNGaWxlRXh0ZW5z
aW9uKQorICAgIHsKKyAgICB9CisKKyAgICBQYXNzUmVmUHRyPFBsdWdpblJlcGxhY2VtZW50PiBj
cmVhdGUoSFRNTFBsdWdJbkVsZW1lbnQmIGVsZW1lbnQsIGNvbnN0IFZlY3RvcjxTdHJpbmc+JiBw
YXJhbU5hbWVzLCBjb25zdCBWZWN0b3I8U3RyaW5nPiYgcGFyYW1WYWx1ZXMpIGNvbnN0IHsgcmV0
dXJuIG1fY29uc3RydWN0b3IoZWxlbWVudCwgcGFyYW1OYW1lcywgcGFyYW1WYWx1ZXMpOyB9Cisg
ICAgYm9vbCBzdXBwb3J0c1R5cGUoY29uc3QgU3RyaW5nJiBtaW1lVHlwZSkgY29uc3QgeyByZXR1
cm4gbV9zdXBwb3J0c1R5cGUobWltZVR5cGUpOyB9CisgICAgYm9vbCBzdXBwb3J0c0ZpbGVFeHRl
bnNpb24oY29uc3QgU3RyaW5nJiBleHRlbnNpb24pIGNvbnN0IHsgcmV0dXJuIG1fc3VwcG9ydHNG
aWxlRXh0ZW5zaW9uKGV4dGVuc2lvbik7IH0KKworcHJpdmF0ZToKKyAgICBDcmVhdGVQbHVnaW5S
ZXBsYWNlbWVudCBtX2NvbnN0cnVjdG9yOworICAgIFBsdWdpblJlcGxhY2VtZW50U3VwcG9ydHNU
eXBlIG1fc3VwcG9ydHNUeXBlOworICAgIFBsdWdpblJlcGxhY2VtZW50U3VwcG9ydHNGaWxlRXh0
ZW5zaW9uIG1fc3VwcG9ydHNGaWxlRXh0ZW5zaW9uOworfTsKKwordHlwZWRlZiB2b2lkICgqUGx1
Z2luUmVwbGFjZW1lbnRSZWdpc3RyYXIpKGNvbnN0IFJlcGxhY2VtZW50UGx1Z2luJik7CisKK30K
KworI2VuZGlmCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3BsdWdpbnMvUXVpY2tUaW1l
UGx1Z2luUmVwbGFjZW1lbnQuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL01vZHVs
ZXMvcGx1Z2lucy9RdWlja1RpbWVQbHVnaW5SZXBsYWNlbWVudC5jcHAJKHJldmlzaW9uIDApCisr
KyBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3BsdWdpbnMvUXVpY2tUaW1lUGx1Z2luUmVwbGFjZW1l
bnQuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0wLDAgKzEsMjM0IEBACisvKgorICogQ29weXJpZ2h0
IChDKSAyMDEzIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3Ry
aWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhv
dXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xs
b3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBz
b3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2Us
IHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisg
KiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFi
b3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQg
dGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQv
b3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisg
KiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIENPTVBVVEVSLCBJTkMuIGBgQVMg
SVMnJyBBTkQgQU5ZCisgKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5H
LCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQorICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNI
QU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBE
SVNDTEFJTUVELiAgSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgQ09NUFVURVIsIElOQy4gT1IKKyAq
IENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVO
VEFMLCBTUEVDSUFMLAorICogRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElO
Q0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAorICogUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVU
RSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SCisgKiBQUk9GSVRTOyBP
UiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZ
CisgKiBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFks
IE9SIFRPUlQKKyAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcg
SU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQorICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBB
RFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4gCisgKi8KKworI2luY2x1
ZGUgImNvbmZpZy5oIgorCisjaWYgRU5BQkxFKE1FRElBX0NPTlRST0xTX1NDUklQVCkKKworI2lu
Y2x1ZGUgIlF1aWNrVGltZVBsdWdpblJlcGxhY2VtZW50LmgiCisKKyNpbmNsdWRlICJFdmVudC5o
IgorI2luY2x1ZGUgIkhUTUxQbHVnSW5FbGVtZW50LmgiCisjaW5jbHVkZSAiSFRNTFZpZGVvRWxl
bWVudC5oIgorI2luY2x1ZGUgIkpTRE9NQmluZGluZy5oIgorI2luY2x1ZGUgIkpTRE9NR2xvYmFs
T2JqZWN0LmgiCisjaW5jbHVkZSAiSlNIVE1MVmlkZW9FbGVtZW50LmgiCisjaW5jbHVkZSAiSlNR
dWlja1RpbWVQbHVnaW5SZXBsYWNlbWVudC5oIgorI2luY2x1ZGUgIk1haW5GcmFtZS5oIgorI2lu
Y2x1ZGUgIlBhZ2UuaCIKKyNpbmNsdWRlICJSZW5kZXJFbGVtZW50LmgiCisjaW5jbHVkZSAiU2Ny
aXB0Q29udHJvbGxlci5oIgorI2luY2x1ZGUgIlNjcmlwdE9iamVjdC5oIgorI2luY2x1ZGUgIlNj
cmlwdFNvdXJjZUNvZGUuaCIKKyNpbmNsdWRlICJVc2VyQWdlbnRTY3JpcHRzLmgiCisjaW5jbHVk
ZSA8SmF2YVNjcmlwdENvcmUvQVBJQ2FzdC5oPgorI2luY2x1ZGUgPEphdmFTY3JpcHRDb3JlL0pT
QmFzZS5oPgorI2luY2x1ZGUgPEphdmFTY3JpcHRDb3JlL0pTQ0pTVmFsdWVJbmxpbmVzLmg+CisK
K3VzaW5nIG5hbWVzcGFjZSBKU0M7CisKK25hbWVzcGFjZSBXZWJDb3JlIHsKKworc3RhdGljIFN0
cmluZyBxdWlja1RpbWVQbHVnaW5SZXBsYWNlbWVudFNjcmlwdCgpCit7CisgICAgREVGSU5FX1NU
QVRJQ19MT0NBTChTdHJpbmcsIHNjcmlwdCwgKFF1aWNrVGltZVBsdWdpblJlcGxhY2VtZW50SmF2
YVNjcmlwdCwgc2l6ZW9mKFF1aWNrVGltZVBsdWdpblJlcGxhY2VtZW50SmF2YVNjcmlwdCkpKTsK
KyAgICByZXR1cm4gc2NyaXB0OworfQorCit2b2lkIFF1aWNrVGltZVBsdWdpblJlcGxhY2VtZW50
OjpyZWdpc3RlclBsdWdpblJlcGxhY2VtZW50KFBsdWdpblJlcGxhY2VtZW50UmVnaXN0cmFyIHJl
Z2lzdHJhcikKK3sKKyAgICByZWdpc3RyYXIoUmVwbGFjZW1lbnRQbHVnaW4oY3JlYXRlLCBzdXBw
b3J0c01pbWVUeXBlLCBzdXBwb3J0c0ZpbGVFeHRlbnNpb24pKTsKK30KKworUGFzc1JlZlB0cjxQ
bHVnaW5SZXBsYWNlbWVudD4gUXVpY2tUaW1lUGx1Z2luUmVwbGFjZW1lbnQ6OmNyZWF0ZShIVE1M
UGx1Z0luRWxlbWVudCYgcGx1Z2luLCBjb25zdCBWZWN0b3I8U3RyaW5nPiYgcGFyYW1OYW1lcywg
Y29uc3QgVmVjdG9yPFN0cmluZz4mIHBhcmFtVmFsdWVzKQoreworICAgIHJldHVybiBhZG9wdFJl
ZihuZXcgUXVpY2tUaW1lUGx1Z2luUmVwbGFjZW1lbnQocGx1Z2luLCBwYXJhbU5hbWVzLCBwYXJh
bVZhbHVlcykpOworfQorCitib29sIFF1aWNrVGltZVBsdWdpblJlcGxhY2VtZW50OjpzdXBwb3J0
c01pbWVUeXBlKGNvbnN0IFN0cmluZyYgbWltZVR5cGUpCit7CisgICAgc3RhdGljIGNvbnN0IGNo
YXIqIHR5cGVzW10gPSB7CisgICAgICAgICJhcHBsaWNhdGlvbi92bmQuYXBwbGUubXBlZ3VybCIs
ICJhcHBsaWNhdGlvbi94LW1wZWd1cmwiLCAiYXVkaW8vM2dwcCIsICJhdWRpby8zZ3BwMiIsICJh
dWRpby9hYWMiLCAiYXVkaW8vYWlmZiIsCisgICAgICAgICJhdWRpby9hbXIiLCAiYXVkaW8vYmFz
aWMiLCAiYXVkaW8vbXAzIiwgImF1ZGlvL21wNCIsICJhdWRpby9tcGVnIiwgImF1ZGlvL21wZWcz
IiwgImF1ZGlvL21wZWd1cmwiLCAiYXVkaW8vc2NwbHMiLAorICAgICAgICAiYXVkaW8vd2F2Iiwg
ImF1ZGlvL3gtYWFjIiwgImF1ZGlvL3gtYWlmZiIsICJhdWRpby94LWNhZiIsICJhdWRpby94LW00
YSIsICJhdWRpby94LW00YiIsICJhdWRpby94LW00cCIsCisgICAgICAgICJhdWRpby94LW00ciIs
ICJhdWRpby94LW1wMyIsICJhdWRpby94LW1wZWciLCAiYXVkaW8veC1tcGVnMyIsICJhdWRpby94
LW1wZWd1cmwiLCAiYXVkaW8veC1zY3BscyIsICJhdWRpby94LXdhdiIsCisgICAgICAgICJ2aWRl
by8zZ3BwIiwgInZpZGVvLzNncHAyIiwgInZpZGVvL21wNCIsICJ2aWRlby9xdWlja3RpbWUiLCAi
dmlkZW8veC1tNHYiCisgICAgfTsKKyAgICBERUZJTkVfU1RBVElDX0xPQ0FMKEhhc2hTZXQ8U3Ry
aW5nPiwgdHlwZUhhc2gsICgpKTsKKyAgICBpZiAoIXR5cGVIYXNoLnNpemUoKSkgeworICAgICAg
ICBmb3IgKHNpemVfdCBpID0gMDsgaSA8IFdURl9BUlJBWV9MRU5HVEgodHlwZXMpOyArK2kpCisg
ICAgICAgICAgICB0eXBlSGFzaC5hZGQodHlwZXNbaV0pOworICAgIH0KKworICAgIHJldHVybiB0
eXBlSGFzaC5jb250YWlucyhtaW1lVHlwZSk7Cit9CisKK2Jvb2wgUXVpY2tUaW1lUGx1Z2luUmVw
bGFjZW1lbnQ6OnN1cHBvcnRzRmlsZUV4dGVuc2lvbihjb25zdCBTdHJpbmcmIGV4dGVuc2lvbikK
K3sKKyAgICBzdGF0aWMgY29uc3QgY2hhciogZXh0ZW5zaW9uc1tdID0geworICAgICAgICAiM2cy
IiwgIjNncCIsICIzZ3AyIiwgIjNncHAiLCAiYWFjIiwgImFkdHMiLCAiYWlmIiwgImFpZmMiLCAi
YWlmZiIsICJBTVIiLCAiYXUiLCAiYndmIiwgImNhZiIsICJjZGRhIiwgIm0zdSIsCisgICAgICAg
ICJtM3U4IiwgIm00YSIsICJtNGIiLCAibTRwIiwgIm00ciIsICJtNHYiLCAibW92IiwgIm1wMyIs
ICJtcDMiLCAibXA0IiwgIm1wZWciLCAibXBnIiwgIm1xdiIsICJwbHMiLCAicXQiLAorICAgICAg
ICAic25kIiwgInN3YSIsICJ0cyIsICJ1bHciLCAid2F2IgorICAgIH07CisgICAgREVGSU5FX1NU
QVRJQ19MT0NBTChIYXNoU2V0PFN0cmluZz4sIGV4dGVuc2lvbkhhc2gsICgpKTsKKyAgICBpZiAo
IWV4dGVuc2lvbkhhc2guc2l6ZSgpKSB7CisgICAgICAgIGZvciAoc2l6ZV90IGkgPSAwOyBpIDwg
V1RGX0FSUkFZX0xFTkdUSChleHRlbnNpb25zKTsgKytpKQorICAgICAgICAgICAgZXh0ZW5zaW9u
SGFzaC5hZGQoZXh0ZW5zaW9uc1tpXSk7CisgICAgfQorCisgICAgcmV0dXJuIGV4dGVuc2lvbkhh
c2guY29udGFpbnMoZXh0ZW5zaW9uKTsKK30KKworUXVpY2tUaW1lUGx1Z2luUmVwbGFjZW1lbnQ6
OlF1aWNrVGltZVBsdWdpblJlcGxhY2VtZW50KEhUTUxQbHVnSW5FbGVtZW50JiBwbHVnaW4sIGNv
bnN0IFZlY3RvcjxTdHJpbmc+JiBwYXJhbU5hbWVzLCBjb25zdCBWZWN0b3I8U3RyaW5nPiYgcGFy
YW1WYWx1ZXMpCisgICAgOlBsdWdpblJlcGxhY2VtZW50KCkKKyAgICAsIG1fcGFyZW50RWxlbWVu
dCgmcGx1Z2luKQorICAgICwgbV9uYW1lcyhwYXJhbU5hbWVzKQorICAgICwgbV92YWx1ZXMocGFy
YW1WYWx1ZXMpCisgICAgLCBtX3NjcmlwdE9iamVjdChudWxscHRyKQoreworfQorCitRdWlja1Rp
bWVQbHVnaW5SZXBsYWNlbWVudDo6flF1aWNrVGltZVBsdWdpblJlcGxhY2VtZW50KCkKK3sKKyAg
ICBtX3BhcmVudEVsZW1lbnQgPSBudWxscHRyOworICAgIG1fc2NyaXB0T2JqZWN0ID0gbnVsbHB0
cjsKKyAgICBtX21lZGlhRWxlbWVudCA9IG51bGxwdHI7Cit9CisKK1JlbmRlckVsZW1lbnQqIFF1
aWNrVGltZVBsdWdpblJlcGxhY2VtZW50OjpjcmVhdGVSZW5kZXJlcihIVE1MUGx1Z0luRWxlbWVu
dCYgcGx1Z2luLCBQYXNzUmVmPFJlbmRlclN0eWxlPiBzdHlsZSkKK3sKKyAgICBBU1NFUlRfVU5V
U0VEKHBsdWdpbiwgbV9wYXJlbnRFbGVtZW50ID09ICZwbHVnaW4pOworCisgICAgaWYgKG1fbWVk
aWFFbGVtZW50KQorICAgICAgICByZXR1cm4gbV9tZWRpYUVsZW1lbnQtPmNyZWF0ZVJlbmRlcmVy
KHN0ZDo6bW92ZShzdHlsZSkpOworCisgICAgcmV0dXJuIDA7Cit9CisKK0RPTVdyYXBwZXJXb3Js
ZCYgUXVpY2tUaW1lUGx1Z2luUmVwbGFjZW1lbnQ6Omlzb2xhdGVkV29ybGQoKQoreworICAgIHN0
YXRpYyBET01XcmFwcGVyV29ybGQmIGlzb2xhdGVkV29ybGQgPSAqRE9NV3JhcHBlcldvcmxkOjpj
cmVhdGUoSlNET01XaW5kb3c6OmNvbW1vblZNKCkpLmxlYWtSZWYoKTsKKyAgICByZXR1cm4gaXNv
bGF0ZWRXb3JsZDsKK30KKworYm9vbCBRdWlja1RpbWVQbHVnaW5SZXBsYWNlbWVudDo6ZW5zdXJl
UmVwbGFjZW1lbnRTY3JpcHRJbmplY3RlZCgpCit7CisgICAgUGFnZSogcGFnZSA9IG1fcGFyZW50
RWxlbWVudC0+ZG9jdW1lbnQoKS5wYWdlKCk7CisgICAgaWYgKCFwYWdlKQorICAgICAgICByZXR1
cm4gZmFsc2U7CisgICAgCisgICAgRE9NV3JhcHBlcldvcmxkJiB3b3JsZCA9IGlzb2xhdGVkV29y
bGQoKTsKKyAgICBTY3JpcHRDb250cm9sbGVyJiBzY3JpcHRDb250cm9sbGVyID0gcGFnZS0+bWFp
bkZyYW1lKCkuc2NyaXB0KCk7CisgICAgSlNET01HbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCA9
IGpzQ2FzdDxKU0RPTUdsb2JhbE9iamVjdCo+KHNjcmlwdENvbnRyb2xsZXIuZ2xvYmFsT2JqZWN0
KHdvcmxkKSk7CisgICAgRXhlY1N0YXRlKiBleGVjID0gZ2xvYmFsT2JqZWN0LT5nbG9iYWxFeGVj
KCk7CisgICAgCisgICAgSlNWYWx1ZSByZXBsYWNlbWVudEZ1bmN0aW9uID0gZ2xvYmFsT2JqZWN0
LT5nZXQoZXhlYywgSWRlbnRpZmllcihleGVjLCAiY3JlYXRlUGx1Z2luUmVwbGFjZW1lbnQiKSk7
CisgICAgaWYgKHJlcGxhY2VtZW50RnVuY3Rpb24uaXNGdW5jdGlvbigpKQorICAgICAgICByZXR1
cm4gdHJ1ZTsKKyAgICAKKyAgICBzY3JpcHRDb250cm9sbGVyLmV2YWx1YXRlSW5Xb3JsZChTY3Jp
cHRTb3VyY2VDb2RlKHF1aWNrVGltZVBsdWdpblJlcGxhY2VtZW50U2NyaXB0KCkpLCB3b3JsZCk7
CisgICAgaWYgKGV4ZWMtPmhhZEV4Y2VwdGlvbigpKSB7CisgICAgICAgIGV4ZWMtPmNsZWFyRXhj
ZXB0aW9uKCk7CisgICAgICAgIHJldHVybiBmYWxzZTsKKyAgICB9CisgICAgCisgICAgcmV0dXJu
IHRydWU7Cit9CisKK2Jvb2wgUXVpY2tUaW1lUGx1Z2luUmVwbGFjZW1lbnQ6Omluc3RhbGxSZXBs
YWNlbWVudChTaGFkb3dSb290KiByb290KQoreworICAgIFBhZ2UqIHBhZ2UgPSBtX3BhcmVudEVs
ZW1lbnQtPmRvY3VtZW50KCkucGFnZSgpOworCisgICAgaWYgKCFlbnN1cmVSZXBsYWNlbWVudFNj
cmlwdEluamVjdGVkKCkpCisgICAgICAgIHJldHVybiBmYWxzZTsKKworICAgIERPTVdyYXBwZXJX
b3JsZCYgd29ybGQgPSBpc29sYXRlZFdvcmxkKCk7CisgICAgU2NyaXB0Q29udHJvbGxlciYgc2Ny
aXB0Q29udHJvbGxlciA9IHBhZ2UtPm1haW5GcmFtZSgpLnNjcmlwdCgpOworICAgIEpTRE9NR2xv
YmFsT2JqZWN0KiBnbG9iYWxPYmplY3QgPSBqc0Nhc3Q8SlNET01HbG9iYWxPYmplY3QqPihzY3Jp
cHRDb250cm9sbGVyLmdsb2JhbE9iamVjdCh3b3JsZCkpOworICAgIEV4ZWNTdGF0ZSogZXhlYyA9
IGdsb2JhbE9iamVjdC0+Z2xvYmFsRXhlYygpOworICAgIEpTTG9ja0hvbGRlciBsb2NrKGV4ZWMp
OworICAgIAorICAgIC8vIExvb2t1cCB0aGUgImNyZWF0ZVBsdWdpblJlcGxhY2VtZW50IiBmdW5j
dGlvbgorICAgIEpTVmFsdWUgcmVwbGFjZW1lbnRGdW5jdGlvbiA9IGdsb2JhbE9iamVjdC0+Z2V0
KGV4ZWMsIElkZW50aWZpZXIoZXhlYywgImNyZWF0ZVBsdWdpblJlcGxhY2VtZW50IikpOworICAg
IGlmIChyZXBsYWNlbWVudEZ1bmN0aW9uLmlzVW5kZWZpbmVkT3JOdWxsKCkpCisgICAgICAgIHJl
dHVybiBmYWxzZTsKKyAgICBKU09iamVjdCogcmVwbGFjZW1lbnRPYmplY3QgPSByZXBsYWNlbWVu
dEZ1bmN0aW9uLnRvT2JqZWN0KGV4ZWMpOworICAgIENhbGxEYXRhIGNhbGxEYXRhOworICAgIENh
bGxUeXBlIGNhbGxUeXBlID0gcmVwbGFjZW1lbnRPYmplY3QtPm1ldGhvZFRhYmxlKCktPmdldENh
bGxEYXRhKHJlcGxhY2VtZW50T2JqZWN0LCBjYWxsRGF0YSk7CisgICAgaWYgKGNhbGxUeXBlID09
IENhbGxUeXBlTm9uZSkKKyAgICAgICAgcmV0dXJuIGZhbHNlOworCisgICAgTWFya2VkQXJndW1l
bnRCdWZmZXIgYXJnTGlzdDsKKyAgICBhcmdMaXN0LmFwcGVuZCh0b0pTKGV4ZWMsIGdsb2JhbE9i
amVjdCwgcm9vdCkpOworICAgIGFyZ0xpc3QuYXBwZW5kKHRvSlMoZXhlYywgZ2xvYmFsT2JqZWN0
LCBtX3BhcmVudEVsZW1lbnQpKTsKKyAgICBhcmdMaXN0LmFwcGVuZCh0b0pTKGV4ZWMsIGdsb2Jh
bE9iamVjdCwgdGhpcykpOworICAgIGFyZ0xpc3QuYXBwZW5kKHRvSlM8U3RyaW5nPihleGVjLCBn
bG9iYWxPYmplY3QsIG1fbmFtZXMpKTsKKyAgICBhcmdMaXN0LmFwcGVuZCh0b0pTPFN0cmluZz4o
ZXhlYywgZ2xvYmFsT2JqZWN0LCBtX3ZhbHVlcykpOworICAgIEpTVmFsdWUgcmVwbGFjZW1lbnQg
PSBjYWxsKGV4ZWMsIHJlcGxhY2VtZW50T2JqZWN0LCBjYWxsVHlwZSwgY2FsbERhdGEsIGdsb2Jh
bE9iamVjdCwgYXJnTGlzdCk7CisgICAgaWYgKGV4ZWMtPmhhZEV4Y2VwdGlvbigpKSB7CisgICAg
ICAgIGV4ZWMtPmNsZWFyRXhjZXB0aW9uKCk7CisgICAgICAgIHJldHVybiBmYWxzZTsKKyAgICB9
CisKKyAgICAvLyBHZXQgdGhlIDx2aWRlbz4gY3JlYXRlZCB0byByZXBsYWNlIHRoZSBwbHVnLWlu
LgorICAgIEpTVmFsdWUgdmFsdWUgPSByZXBsYWNlbWVudC5nZXQoZXhlYywgSWRlbnRpZmllcihl
eGVjLCAidmlkZW8iKSk7CisgICAgaWYgKCFleGVjLT5oYWRFeGNlcHRpb24oKSAmJiAhdmFsdWUu
aXNVbmRlZmluZWRPck51bGwoKSkKKyAgICAgICAgbV9tZWRpYUVsZW1lbnQgPSB0b0hUTUxWaWRl
b0VsZW1lbnQodmFsdWUpOworCisgICAgaWYgKCFtX21lZGlhRWxlbWVudCkgeworICAgICAgICBl
eGVjLT5jbGVhckV4Y2VwdGlvbigpOworICAgICAgICByZXR1cm4gZmFsc2U7CisgICAgfQorCisg
ICAgLy8gR2V0IHRoZSBzY3JpcHRpbmcgaW50ZXJmYWNlLgorICAgIHZhbHVlID0gcmVwbGFjZW1l
bnQuZ2V0KGV4ZWMsIElkZW50aWZpZXIoZXhlYywgInNjcmlwdE9iamVjdCIpKTsKKyAgICBpZiAo
IWV4ZWMtPmhhZEV4Y2VwdGlvbigpICYmICF2YWx1ZS5pc1VuZGVmaW5lZE9yTnVsbCgpKQorICAg
ICAgICBtX3NjcmlwdE9iamVjdCA9IHZhbHVlLnRvT2JqZWN0KGV4ZWMpOworCisgICAgaWYgKCFt
X3NjcmlwdE9iamVjdCkgeworICAgICAgICBleGVjLT5jbGVhckV4Y2VwdGlvbigpOworICAgICAg
ICByZXR1cm4gZmFsc2U7CisgICAgfQorCisgICAgcmV0dXJuIHRydWU7Cit9CisKK3Vuc2lnbmVk
IGxvbmcgbG9uZyBRdWlja1RpbWVQbHVnaW5SZXBsYWNlbWVudDo6bW92aWVTaXplKCkgY29uc3QK
K3sKKyAgICBpZiAobV9tZWRpYUVsZW1lbnQpCisgICAgICAgIHJldHVybiBtX21lZGlhRWxlbWVu
dC0+ZmlsZVNpemUoKTsKKworICAgIHJldHVybiAwOworfQorCit2b2lkIFF1aWNrVGltZVBsdWdp
blJlcGxhY2VtZW50Ojpwb3N0RXZlbnQoY29uc3QgU3RyaW5nJiBldmVudE5hbWUpCit7CisgICAg
UmVmPEhUTUxQbHVnSW5FbGVtZW50PiBwcm90ZWN0KCptX3BhcmVudEVsZW1lbnQpOworICAgIFJl
ZlB0cjxFdmVudD4gZXZlbnQgPSBFdmVudDo6Y3JlYXRlKGV2ZW50TmFtZSwgZmFsc2UsIHRydWUp
OworICAgIG1fcGFyZW50RWxlbWVudC0+ZGlzcGF0Y2hFdmVudChldmVudC5nZXQoKSk7Cit9CisK
K30KKyNlbmRpZgpJbmRleDogU291cmNlL1dlYkNvcmUvTW9kdWxlcy9wbHVnaW5zL1F1aWNrVGlt
ZVBsdWdpblJlcGxhY2VtZW50LmNzcwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9Nb2R1
bGVzL3BsdWdpbnMvUXVpY2tUaW1lUGx1Z2luUmVwbGFjZW1lbnQuY3NzCShyZXZpc2lvbiAwKQor
KysgU291cmNlL1dlYkNvcmUvTW9kdWxlcy9wbHVnaW5zL1F1aWNrVGltZVBsdWdpblJlcGxhY2Vt
ZW50LmNzcwkod29ya2luZyBjb3B5KQpAQCAtMCwwICsxLDM0IEBACisvKgorICogQ29weXJpZ2h0
IChDKSAyMDEzIEFwcGxlIEluYy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0
cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRo
b3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9s
bG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Yg
c291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNl
LCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgor
ICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBh
Ym92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5k
IHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5k
L29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgor
ICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBDT01QVVRFUiwgSU5DLiBgYEFT
IElTJycgQU5EIEFOWQorICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElO
RywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKKyAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJD
SEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICogUFVSUE9TRSBBUkUg
RElTQ0xBSU1FRC4gIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIENPTVBVVEVSLCBJTkMuIE9SCisg
KiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURF
TlRBTCwgU1BFQ0lBTCwKKyAqIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJ
TkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFBST0ZJVFM7IE9SIEJVU0lORVNTIElO
VEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkKKyAqIE9GIExJQUJJ
TElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorICog
KElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9V
VCBPRiBUSEUgVVNFCisgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhF
IFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLiAKKyAqLworCitlbWJlZDo6LXdlYmtpdC1wbHVn
aW4tcmVwbGFjZW1lbnQsCitvYmplY3Q6Oi13ZWJraXQtcGx1Z2luLXJlcGxhY2VtZW50Cit7Cisg
ICAgcG9zaXRpb246IHJlbGF0aXZlOworICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsKKyAgICB3
aWR0aDogMTAwJTsKKyAgICBoZWlnaHQ6IDEwMCU7CisgICAgei1pbmRleDogMDsKK30KKwpJbmRl
eDogU291cmNlL1dlYkNvcmUvTW9kdWxlcy9wbHVnaW5zL1F1aWNrVGltZVBsdWdpblJlcGxhY2Vt
ZW50LmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvTW9kdWxlcy9wbHVnaW5zL1F1aWNr
VGltZVBsdWdpblJlcGxhY2VtZW50LmgJKHJldmlzaW9uIDApCisrKyBTb3VyY2UvV2ViQ29yZS9N
b2R1bGVzL3BsdWdpbnMvUXVpY2tUaW1lUGx1Z2luUmVwbGFjZW1lbnQuaAkod29ya2luZyBjb3B5
KQpAQCAtMCwwICsxLDc2IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDEzIEFwcGxlIEluYy4g
QWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNv
dXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwg
YXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICog
YXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFp
biB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRp
b25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMg
aW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAg
bm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFp
bWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHBy
b3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBS
T1ZJREVEIEJZIEFQUExFIENPTVBVVEVSLCBJTkMuIGBgQVMgSVMnJyBBTkQgQU5ZCisgKiBFWFBS
RVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8s
IFRIRQorICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVT
UyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiAgSU4gTk8gRVZF
TlQgU0hBTEwgQVBQTEUgQ09NUFVURVIsIElOQy4gT1IKKyAqIENPTlRSSUJVVE9SUyBCRSBMSUFC
TEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLAorICogRVhF
TVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1J
VEVEIFRPLAorICogUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsg
TE9TUyBPRiBVU0UsIERBVEEsIE9SCisgKiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJ
T04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZCisgKiBPRiBMSUFCSUxJVFksIFdI
RVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKKyAqIChJTkNMVURJ
TkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhF
IFVTRQorICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJ
TElUWSBPRiBTVUNIIERBTUFHRS4gCisgKi8KKworI2lmbmRlZiBRdWlja1RpbWVQbHVnaW5SZXBs
YWNlbWVudF9oCisjZGVmaW5lIFF1aWNrVGltZVBsdWdpblJlcGxhY2VtZW50X2gKKworI2luY2x1
ZGUgIlBsdWdpblJlcGxhY2VtZW50LmgiCisjaW5jbHVkZSAiU2NyaXB0U3RhdGUuaCIKKyNpbmNs
dWRlICJTY3JpcHRWYWx1ZS5oIgorI2luY2x1ZGUgPHd0Zi9SZWZDb3VudGVkLmg+CisjaW5jbHVk
ZSA8d3RmL3RleHQvV1RGU3RyaW5nLmg+CisKK25hbWVzcGFjZSBXZWJDb3JlIHsKKworY2xhc3Mg
SFRNTFBsdWdJbkVsZW1lbnQ7CitjbGFzcyBIVE1MVmlkZW9FbGVtZW50OworY2xhc3MgUmVuZGVy
RWxlbWVudDsKK2NsYXNzIFJlbmRlclN0eWxlOworY2xhc3MgU2hhZG93Um9vdDsKKworY2xhc3Mg
UXVpY2tUaW1lUGx1Z2luUmVwbGFjZW1lbnQgOiBwdWJsaWMgUGx1Z2luUmVwbGFjZW1lbnQgewor
cHVibGljOgorICAgIHN0YXRpYyB2b2lkIHJlZ2lzdGVyUGx1Z2luUmVwbGFjZW1lbnQoUGx1Z2lu
UmVwbGFjZW1lbnRSZWdpc3RyYXIpOworICAgIHN0YXRpYyBib29sIHN1cHBvcnRzTWltZVR5cGUo
Y29uc3QgU3RyaW5nJik7CisgICAgc3RhdGljIGJvb2wgc3VwcG9ydHNGaWxlRXh0ZW5zaW9uKGNv
bnN0IFN0cmluZyYpOworICAgIAorICAgIHN0YXRpYyBQYXNzUmVmUHRyPFBsdWdpblJlcGxhY2Vt
ZW50PiBjcmVhdGUoSFRNTFBsdWdJbkVsZW1lbnQmLCBjb25zdCBWZWN0b3I8U3RyaW5nPiYgcGFy
YW1OYW1lcywgY29uc3QgVmVjdG9yPFN0cmluZz4mIHBhcmFtVmFsdWVzKTsKKyAgICB+UXVpY2tU
aW1lUGx1Z2luUmVwbGFjZW1lbnQoKTsKKworICAgIHZpcnR1YWwgYm9vbCBpbnN0YWxsUmVwbGFj
ZW1lbnQoU2hhZG93Um9vdCopIE9WRVJSSURFOworICAgIHZpcnR1YWwgSlNDOjpKU09iamVjdCog
c2NyaXB0T2JqZWN0KCkgT1ZFUlJJREUgeyByZXR1cm4gbV9zY3JpcHRPYmplY3Q7IH0KKworICAg
IHZpcnR1YWwgYm9vbCB3aWxsQ3JlYXRlUmVuZGVyZXIoKSBPVkVSUklERSB7IHJldHVybiBtX21l
ZGlhRWxlbWVudDsgfQorICAgIHZpcnR1YWwgUmVuZGVyRWxlbWVudCogY3JlYXRlUmVuZGVyZXIo
SFRNTFBsdWdJbkVsZW1lbnQmLCBQYXNzUmVmPFJlbmRlclN0eWxlPikgT1ZFUlJJREU7CisKKyAg
ICB1bnNpZ25lZCBsb25nIGxvbmcgbW92aWVTaXplKCkgY29uc3Q7CisgICAgdm9pZCBwb3N0RXZl
bnQoY29uc3QgU3RyaW5nJik7CisKK3ByaXZhdGU6CisgICAgUXVpY2tUaW1lUGx1Z2luUmVwbGFj
ZW1lbnQoSFRNTFBsdWdJbkVsZW1lbnQmLCBjb25zdCBWZWN0b3I8U3RyaW5nPiYgcGFyYW1OYW1l
cywgY29uc3QgVmVjdG9yPFN0cmluZz4mIHBhcmFtVmFsdWVzKTsKKworICAgIGJvb2wgZW5zdXJl
UmVwbGFjZW1lbnRTY3JpcHRJbmplY3RlZCgpOworICAgIERPTVdyYXBwZXJXb3JsZCYgaXNvbGF0
ZWRXb3JsZCgpOworCisgICAgSFRNTFBsdWdJbkVsZW1lbnQqIG1fcGFyZW50RWxlbWVudDsKKyAg
ICBSZWZQdHI8SFRNTFZpZGVvRWxlbWVudD4gbV9tZWRpYUVsZW1lbnQ7CisgICAgY29uc3QgVmVj
dG9yPFN0cmluZz4gbV9uYW1lczsKKyAgICBjb25zdCBWZWN0b3I8U3RyaW5nPiBtX3ZhbHVlczsK
KyAgICBKU0M6OkpTT2JqZWN0KiBtX3NjcmlwdE9iamVjdDsKK307CisKK30KKworI2VuZGlmCklu
ZGV4OiBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3BsdWdpbnMvUXVpY2tUaW1lUGx1Z2luUmVwbGFj
ZW1lbnQuaWRsCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvcGx1Z2lucy9R
dWlja1RpbWVQbHVnaW5SZXBsYWNlbWVudC5pZGwJKHJldmlzaW9uIDApCisrKyBTb3VyY2UvV2Vi
Q29yZS9Nb2R1bGVzL3BsdWdpbnMvUXVpY2tUaW1lUGx1Z2luUmVwbGFjZW1lbnQuaWRsCSh3b3Jr
aW5nIGNvcHkpCkBAIC0wLDAgKzEsMzMgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTMgQXBw
bGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1
c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZp
Y2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRp
b25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11
c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9m
IGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJp
YnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0
CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5n
IGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRl
cmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdB
UkUgSVMgUFJPVklERUQgQlkgQVBQTEUgQ09NUFVURVIsIElOQy4gYGBBUyBJUycnIEFORCBBTlkK
KyAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElN
SVRFRCBUTywgVEhFCisgKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFO
RCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuICBJ
TiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBDT01QVVRFUiwgSU5DLiBPUgorICogQ09OVFJJQlVUT1JT
IEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUws
CisgKiBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQg
Tk9UIExJTUlURUQgVE8sCisgKiBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNF
UlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IKKyAqIFBST0ZJVFM7IE9SIEJVU0lORVNTIElO
VEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkKKyAqIE9GIExJQUJJ
TElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorICog
KElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9V
VCBPRiBUSEUgVVNFCisgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhF
IFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLiAKKyAqLworCitbCisgICAgTm9JbnRlcmZhY2VP
YmplY3QsCisgICAgT3BlcmF0aW9uc05vdERlbGV0YWJsZSwKKyAgICBKU0dlbmVyYXRlVG9KU09i
amVjdCwKK10gaW50ZXJmYWNlIFF1aWNrVGltZVBsdWdpblJlcGxhY2VtZW50IHsKKyAgICByZWFk
b25seSBhdHRyaWJ1dGUgdW5zaWduZWQgbG9uZyBsb25nIG1vdmllU2l6ZTsKKyAgICB2b2lkIHBv
c3RFdmVudChET01TdHJpbmcgZXZlbnROYW1lKTsKK307CkluZGV4OiBTb3VyY2UvV2ViQ29yZS9N
b2R1bGVzL3BsdWdpbnMvUXVpY2tUaW1lUGx1Z2luUmVwbGFjZW1lbnQuanMKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gU291cmNlL1dlYkNvcmUvTW9kdWxlcy9wbHVnaW5zL1F1aWNrVGltZVBsdWdpblJlcGxhY2Vt
ZW50LmpzCShyZXZpc2lvbiAwKQorKysgU291cmNlL1dlYkNvcmUvTW9kdWxlcy9wbHVnaW5zL1F1
aWNrVGltZVBsdWdpblJlcGxhY2VtZW50LmpzCSh3b3JraW5nIGNvcHkpCkBAIC0wLDAgKzEsMzI1
IEBACisKK2Z1bmN0aW9uIGNyZWF0ZVBsdWdpblJlcGxhY2VtZW50KHJvb3QsIHBhcmVudCwgaG9z
dCwgYXR0cmlidXRlTmFtZXMsIGF0dHJpYnV0ZVZhbHVlcykKK3sKKyAgICByZXR1cm4gbmV3IFJl
cGxhY2VtZW50KHJvb3QsIHBhcmVudCwgaG9zdCwgYXR0cmlidXRlTmFtZXMsIGF0dHJpYnV0ZVZh
bHVlcyk7Cit9OworCitmdW5jdGlvbiBSZXBsYWNlbWVudChyb290LCBwYXJlbnQsIGhvc3QsIGF0
dHJpYnV0ZU5hbWVzLCBhdHRyaWJ1dGVWYWx1ZXMpCit7CisgICAgdGhpcy5yb290ID0gcm9vdDsK
KyAgICB0aGlzLnBhcmVudCA9IHBhcmVudDsKKyAgICB0aGlzLmhvc3QgPSBob3N0OworICAgIHRo
aXMubGlzdGVuZXJzID0ge307CisgICAgdGhpcy5zY3JpcHRPYmplY3QgPSB7fTsKKworICAgIHRo
aXMuYXV0b0V4aXRGdWxsU2NyZWVuID0gdHJ1ZTsKKyAgICB0aGlzLnBvc3RFdmVudHMgPSBmYWxz
ZTsKKyAgICB0aGlzLmhlaWdodCA9IDA7CisgICAgdGhpcy53aWR0aCA9IDA7CisgICAgdGhpcy5z
cmMgPSAnJzsKKyAgICB0aGlzLmF1dG9ocmVmID0gZmFsc2U7CisgICAgdGhpcy5ocmVmID0gJyc7
CisgICAgdGhpcy5xdHNyYyA9ICcnOworICAgIHRoaXMudGFyZ2V0ID0gJyc7CisKKyAgICB0aGlz
LmNyZWF0ZVZpZGVvRWxlbWVudChhdHRyaWJ1dGVOYW1lcywgYXR0cmlidXRlVmFsdWVzKTsKKyAg
ICB0aGlzLmNyZWF0ZVNjcmlwdEludGVyZmFjZSgpOworfTsKKworUmVwbGFjZW1lbnQucHJvdG90
eXBlID0geworCisgICAgSGFuZGxlZFZpZGVvRXZlbnRzOiB7CisgICAgICAgIGxvYWRzdGFydDog
J2hhbmRsZUxvYWRTdGFydCcsCisgICAgICAgIGVycm9yOiAnaGFuZGxlRXJyb3InLAorICAgICAg
ICBsb2FkZWRtZXRhZGF0YTogJ2hhbmRsZUxvYWRlZE1ldGFEYXRhJywKKyAgICAgICAgY2FucGxh
eTogJ3F0X2NhbnBsYXknLAorICAgICAgICBjYW5wbGF5dGhyb3VnaDogJ3F0X2NhbnBsYXl0aHJv
dWdoJywKKyAgICAgICAgcGxheTogJ3F0X3BsYXknLAorICAgICAgICBwYXVzZTogJ3F0X3BhdXNl
JywKKyAgICAgICAgZW5kZWQ6ICdoYW5kbGVFbmRlZCcsCisgICAgICAgIHdlYmtpdGZ1bGxzY3Jl
ZW5jaGFuZ2U6ICdoYW5kbGVGdWxsc2NyZWVuQ2hhbmdlJywKKyAgICB9LAorCisgICAgQXR0cmli
dXRlTWFwOiB7CisgICAgICAgIGF1dG9leGl0ZnVsbHNjcmVlbjogJ2F1dG9FeGl0RnVsbFNjcmVl
bicsCisgICAgICAgIHBvc3Rkb21ldmVudHM6ICdwb3N0RXZlbnRzJywKKyAgICAgICAgaGVpZ2h0
OiAnaGVpZ2h0JywKKyAgICAgICAgd2lkdGg6ICd3aWR0aCcsCisgICAgICAgIHNyYzogJ3NyYycs
CisgICAgICAgIGFpcnBsYXk6ICd4LXdlYmtpdC1haXJwbGF5PScsCisgICAgICAgIGhyZWY6ICdo
cmVmJywKKyAgICAgICAgdGFyZ2V0OiAndGFyZ2V0JywKKyAgICB9LAorICAgIAorICAgIE1ldGhv
ZE1hcDogeworICAgICAgICBTZXRVUkwgOiAnc2V0VVJMJywKKyAgICAgICAgR2V0VVJMIDogJ3Vy
bCcsCisgICAgICAgIFBsYXkgOiAncGxheScsCisgICAgICAgIFN0b3AgOiAncGF1c2UnLAorICAg
ICAgICBHZXRSYXRlIDogJ3JhdGUnLAorICAgICAgICBTZXRSYXRlIDogJ3NldFJhdGUnLAorICAg
ICAgICBJc0Z1bGxTY3JlZW4gOiAnaXNGdWxsU2NyZWVuJywKKyAgICAgICAgRXhpdEZ1bGxTY3Jl
ZW4gOiAnZXhpdEZ1bGxTY3JlZW4nLAorICAgICAgICBHZXRQbHVnaW5TdGF0dXMgOiAncGx1Z2lu
U3RhdHVzJywKKyAgICAgICAgR2V0VGltZSA6ICdjdXJyZW50VGltZScsCisgICAgICAgIFNldFRp
bWUgOiAnc2V0Q3VycmVudFRpbWUnLAorICAgICAgICBTZWVrVG9EYXRlIDogJ3NlZWtUb0RhdGUn
LAorICAgICAgICBHZXREYXRlIDogJ2RhdGUnLAorICAgICAgICBHZXREdXJhdGlvbiA6ICdkdXJh
dGlvbicsCisgICAgICAgIEdldFRpbWVTY2FsZSA6ICd0aW1lU2NhbGUnLAorICAgICAgICBHZXRN
YXhUaW1lTG9hZGVkIDogJ21heFRpbWVMb2FkZWQnLAorICAgICAgICBHZXRNYXhCeXRlc0xvYWRl
ZCA6ICdtYXhCeXRlc0xvYWRlZCcsCisgICAgICAgIEdldE1vdmllU2l6ZSA6ICdtb3ZpZVNpemUn
LAorICAgICAgICBHZXRUaW1lZE1ldGFkYXRhVXBkYXRlcyA6ICd0aW1lZE1ldGFkYXRhVXBkYXRl
cycsCisgICAgICAgIEdldEFjY2Vzc0xvZyA6ICdhY2Nlc3NMb2cnLAorICAgICAgICBHZXRFcnJv
ckxvZyA6ICdlcnJvckxvZycsCisgICAgfSwKKworICAgIFRpbWVTY2FsZTogMzAwMDAsCisKKyAg
ICBjcmVhdGVWaWRlb0VsZW1lbnQ6IGZ1bmN0aW9uKGF0dHJpYnV0ZU5hbWVzLCBhdHRyaWJ1dGVW
YWx1ZXMpCisgICAgeworICAgICAgICB2YXIgdmlkZW8gPSB0aGlzLnZpZGVvID0gZG9jdW1lbnQu
Y3JlYXRlRWxlbWVudCgndmlkZW8nKTsKKworICAgICAgICBmb3IgKG5hbWUgaW4gdGhpcy5IYW5k
bGVkVmlkZW9FdmVudHMpCisgICAgICAgICAgICB2aWRlby5hZGRFdmVudExpc3RlbmVyKG5hbWUs
IHRoaXMsIGZhbHNlKTsKKyAgICAgICAgCisgICAgICAgIGZvciAoaSA9IDA7IGkgPCBhdHRyaWJ1
dGVOYW1lcy5sZW5ndGg7IGkrKykgeworICAgICAgICAgICAgdmFyIHByb3BlcnR5ID0gdGhpcy5B
dHRyaWJ1dGVNYXBbYXR0cmlidXRlTmFtZXNbaV1dOworICAgICAgICAgICAgaWYgKHRoaXNbcHJv
cGVydHldICE9IHVuZGVmaW5lZCkKKyAgICAgICAgICAgICAgICB0aGlzW3Byb3BlcnR5XSA9IGF0
dHJpYnV0ZVZhbHVlc1tpXTsKKyAgICAgICAgfQorCisgICAgICAgIHZpZGVvLnNldEF0dHJpYnV0
ZSgncHNldWRvJywgJy13ZWJraXQtcGx1Z2luLXJlcGxhY2VtZW50Jyk7CisgICAgICAgIHZpZGVv
LnNldEF0dHJpYnV0ZSgnY29udHJvbHMnLCAnY29udHJvbHMnKTsKKyAgICAgICAgdGhpcy5zZXRT
dGF0dXMoJ1dhaXRpbmcnKTsKKworICAgICAgICB2YXIgc3JjID0gdGhpcy5zcmM7CisgICAgICAg
IGlmICh0aGlzLmhyZWYgJiYgdGhpcy50YXJnZXQpIHsKKyAgICAgICAgICAgIHNyYyA9IHRoaXMu
cmVzb2x2ZVJlbGF0aXZlVG9VcmwodGhpcy5ocmVmLCB0aGlzLnNyYyk7CisgICAgICAgICAgICB2
aWRlby5wb3N0ZXIgPSB0aGlzLnNyYzsKKyAgICAgICAgICAgIHZpZGVvLnNldEF0dHJpYnV0ZSgn
cHJlbG9hZCcsICdub25lJyk7CisgICAgICAgIH0KKyAgICAgICAgCisgICAgICAgIGlmIChzcmMu
bGVuZ3RoKQorICAgICAgICAgICAgdGhpcy5zZXRVUkwoc3JjKTsKKworICAgICAgICB0aGlzLnJv
b3QuYXBwZW5kQ2hpbGQodmlkZW8pOworICAgIH0sCisKKyAgICByZXNvbHZlUmVsYXRpdmVUb1Vy
bDogZnVuY3Rpb24odXJsLCBiYXNlVXJsKQorICAgIHsKKyAgICAgICAgaWYgKHVybC5pbmRleE9m
KCc6Ly8nKSAhPSAtMSkKKyAgICAgICAgICAgIHJldHVybiB1cmw7CisgICAgICAgIGlmIChiYXNl
VXJsLmluZGV4T2YoJzovLycpID09IC0xKQorICAgICAgICAgICAgYmFzZVVybCA9IHRoaXMucmVz
b2x2ZVJlbGF0aXZlVG9VcmwoYmFzZVVybCwgZG9jdW1lbnQuYmFzZVVSSSk7CisKKyAgICAgICAg
dmFyIGJhc2UgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCJiYXNlIik7CisgICAgICAgIGJhc2Uu
aHJlZiA9IGJhc2VVcmw7CisgICAgICAgIGRvY3VtZW50LmhlYWQuYXBwZW5kQ2hpbGQoYmFzZSk7
CisKKyAgICAgICAgdmFyIHJlc29sdmVyID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnYScpOwor
ICAgICAgICByZXNvbHZlci5ocmVmID0gdXJsOworICAgICAgICB1cmwgPSByZXNvbHZlci5ocmVm
OworCisgICAgICAgIGRvY3VtZW50LmhlYWQucmVtb3ZlQ2hpbGQoYmFzZSk7CisgICAgICAgIGJh
c2UgPSBudWxsOworCisgICAgICAgIHJldHVybiB1cmw7CisgICAgfSwKKyAKKyAgICBjcmVhdGVT
Y3JpcHRJbnRlcmZhY2U6IGZ1bmN0aW9uKCkKKyAgICB7CisgICAgICAgIGZvciAobmFtZSBpbiB0
aGlzLk1ldGhvZE1hcCkgeworICAgICAgICAgICAgdmFyIG1ldGhvZE5hbWUgPSB0aGlzLk1ldGhv
ZE1hcFtuYW1lXTsKKyAgICAgICAgICAgIHRoaXMuc2NyaXB0T2JqZWN0W25hbWVdID0gdGhpc1tt
ZXRob2ROYW1lXS5iaW5kKHRoaXMpOworICAgICAgICB9CisgICAgfSwKKworICAgIGhhbmRsZUV2
ZW50OiBmdW5jdGlvbihldmVudCkKKyAgICB7CisgICAgICAgIGlmIChldmVudC50YXJnZXQgIT09
IHRoaXMudmlkZW8pCisgICAgICAgICAgICByZXR1cm47CisKKyAgICAgICAgdHJ5IHsKKyAgICAg
ICAgICAgIHZhciBldmVudERhdGEgPSB0aGlzLkhhbmRsZWRWaWRlb0V2ZW50c1tldmVudC50eXBl
XTsKKyAgICAgICAgICAgIGlmICghZXZlbnREYXRhKQorICAgICAgICAgICAgICAgIHJldHVybjsK
KworICAgICAgICAgICAgaWYgKHRoaXNbZXZlbnREYXRhXSAmJiB0aGlzW2V2ZW50RGF0YV0gaW5z
dGFuY2VvZiBGdW5jdGlvbikKKyAgICAgICAgICAgICAgICB0aGlzW2V2ZW50RGF0YV0uY2FsbCh0
aGlzLCBldmVudCk7CisgICAgICAgICAgICBlbHNlCisgICAgICAgICAgICAgICAgdGhpcy5wb3N0
RXZlbnQoZXZlbnREYXRhKTsKKyAgICAgICAgfSBjYXRjaChlKSB7CisgICAgICAgICAgICBpZiAo
d2luZG93LmNvbnNvbGUpCisgICAgICAgICAgICAgICAgY29uc29sZS5lcnJvcihlKTsKKyAgICAg
ICAgfQorICAgIH0sCisKKyAgICBwb3N0RXZlbnQ6IGZ1bmN0aW9uKGV2ZW50TmFtZSkKKyAgICB7
CisgICAgICAgIHRyeSB7CisgICAgICAgICAgICBpZiAodGhpcy5wb3N0RXZlbnRzKQorICAgICAg
ICAgICAgICAgIHRoaXMuaG9zdC5wb3N0RXZlbnQoZXZlbnROYW1lKTsKKyAgICAgICAgfSBjYXRj
aChlKSB7IH0KKyAgICB9LAorCisgICAgc2V0U3RhdHVzOiBmdW5jdGlvbihzdGF0dXMpCisgICAg
eworICAgICAgICB0aGlzLnN0YXR1cyA9IHN0YXR1czsKKyAgICB9LAorCisgICAgaGFuZGxlTG9h
ZGVkTWV0YURhdGE6IGZ1bmN0aW9uKGV2ZW50KQorICAgIHsKKyAgICAgICAgdGhpcy5zZXRTdGF0
dXMoJ1BsYXlhYmxlJyk7CisgICAgICAgIHRoaXMucG9zdEV2ZW50KCdxdF92YWxpZGF0ZWQnKTsK
KyAgICAgICAgdGhpcy5wb3N0RXZlbnQoJ3F0X2xvYWRlZGZpcnN0ZnJhbWUnKTsKKyAgICAgICAg
dGhpcy5wb3N0RXZlbnQoJ3F0X2xvYWRlZG1ldGFkYXRhJyk7CisgICAgfSwKKworICAgIGhhbmRs
ZUZ1bGxzY3JlZW5DaGFuZ2U6IGZ1bmN0aW9uKGV2ZW50KQorICAgIHsKKyAgICAgICAgdGhpcy5w
b3N0RXZlbnQodGhpcy5pc0Z1bGxTY3JlZW4oKSA/ICdxdF9lbnRlcmZ1bGxzY3JlZW4nIDogJ3F0
X2V4aXRmdWxsc2NyZWVuJyk7CisgICAgfSwKKworICAgIGhhbmRsZUVycm9yOiBmdW5jdGlvbihl
dmVudCkKKyAgICB7CisgICAgICAgIHRoaXMuc2V0U3RhdHVzKCdFcnJvcicpOworICAgICAgICB0
aGlzLnBvc3RFdmVudCgncXRfZXJyb3InKTsKKyAgICB9LAorCisgICAgaGFuZGxlTG9hZFN0YXJ0
OmZ1bmN0aW9uKGV2ZW50KQorICAgIHsKKyAgICAgICAgaWYgKHRoaXMudmlkZW8ucG9zdGVyKQor
ICAgICAgICAgICAgdGhpcy5zZXRTdGF0dXMoJ1dhaXRpbmcnKTsKKyAgICAgICAgZWxzZQorICAg
ICAgICAgICAgdGhpcy5zZXRTdGF0dXMoJ0xvYWRpbmcnKTsKKyAgICAgICAgdGhpcy5wb3N0RXZl
bnQoJ3F0X2JlZ2luJyk7CisgICAgfSwKKworICAgIGhhbmRsZUVuZGVkOiBmdW5jdGlvbihldmVu
dCkKKyAgICB7CisgICAgICAgIHRoaXMucG9zdEV2ZW50KCdxdF9lbmRlZCcpOworICAgICAgICBp
ZiAodGhpcy5pc0Z1bGxTY3JlZW4oKSAmJiB0aGlzLmF1dG9FeGl0RnVsbFNjcmVlbikKKyAgICAg
ICAgICAgIGRvY3VtZW50LndlYmtpdEV4aXRGdWxsc2NyZWVuKCk7CisgICAgfSwKKworICAgIGlz
RnVsbFNjcmVlbjogZnVuY3Rpb24oKQorICAgIHsKKyAgICAgICAgcmV0dXJuIGRvY3VtZW50Lndl
YmtpdEN1cnJlbnRGdWxsU2NyZWVuRWxlbWVudCA9PT0gdGhpcy52aWRlbzsKKyAgICB9LAorCisg
ICAgc2V0VVJMOiBmdW5jdGlvbih1cmwpCisgICAgeworICAgICAgICB0aGlzLnNldFN0YXR1cygn
VmFsaWRhdGluZycpOworICAgICAgICB0aGlzLnZpZGVvLnNyYyA9IHVybDsKKyAgICB9LAorICAg
IAorICAgIHVybDogZnVuY3Rpb24oKQorICAgIHsKKyAgICAgICAgcmV0dXJuIHRoaXMudmlkZW8u
Y3VycmVudFNyYzsKKyAgICB9LAorICAgIAorICAgIHBsYXk6IGZ1bmN0aW9uKCkKKyAgICB7Cisg
ICAgICAgIHRoaXMudmlkZW8ucGxheSgpOworICAgIH0sCisgICAgCisgICAgcGF1c2U6IGZ1bmN0
aW9uKCkKKyAgICB7CisgICAgICAgIHRoaXMudmlkZW8ucGxheWJhY2tSYXRlID0gMDsKKyAgICAg
ICAgdGhpcy52aWRlby5wYXVzZSgpOworICAgIH0sCisgICAgCisgICAgcmF0ZTogZnVuY3Rpb24o
KQorICAgIHsKKyAgICAgICAgcmV0dXJuIHRoaXMudmlkZW8ucGF1c2VkID8gMCA6IDE7CisgICAg
fSwKKyAgICAKKyAgICBzZXRSYXRlOiBmdW5jdGlvbihyYXRlKQorICAgIHsKKyAgICAgICAgaWYg
KHJhdGUpCisgICAgICAgICAgICB0aGlzLnZpZGVvLnBsYXkoKTsKKyAgICAgICAgZWxzZQorICAg
ICAgICAgICAgdGhpcy52aWRlby5wYXVzZSgpOworICAgIH0sCisgICAgCisgICAgZXhpdEZ1bGxT
Y3JlZW46IGZ1bmN0aW9uKCkKKyAgICB7CisgICAgICAgIGRvY3VtZW50LndlYmtpdEV4aXRGdWxs
c2NyZWVuKCk7CisgICAgfSwKKyAgICAKKyAgICBwbHVnaW5TdGF0dXM6IGZ1bmN0aW9uKCkKKyAg
ICB7CisgICAgICAgIHJldHVybiB0aGlzLnN0YXR1czsKKyAgICB9LAorCisgICAgY3VycmVudFRp
bWU6IGZ1bmN0aW9uKCkKKyAgICB7CisgICAgICAgIHJldHVybiB0aGlzLnZpZGVvLmN1cnJlbnRU
aW1lICogdGhpcy5UaW1lU2NhbGU7CisgICAgfSwKKworICAgIHNldEN1cnJlbnRUaW1lOiBmdW5j
dGlvbih0aW1lKQorICAgIHsKKyAgICAgICAgdGhpcy52aWRlby5jdXJyZW50VGltZSA9IHRpbWUg
LyB0aGlzLlRpbWVTY2FsZQorICAgIH0sCisKKyAgICBzZWVrVG9EYXRlOiBmdW5jdGlvbigpCisg
ICAgeworICAgICAgICAvLyBGSVhNRTogbm90IGltcGxlbWVudGVkIHlldC4KKyAgICB9LAorICAg
IAorICAgIGRhdGU6IGZ1bmN0aW9uKCkKKyAgICB7CisgICAgICAgIHJldHVybiBuZXcgRGF0ZSgp
OworICAgIH0sCisgICAgCisgICAgZHVyYXRpb246IGZ1bmN0aW9uKCkKKyAgICB7CisgICAgICAg
IHJldHVybiB0aGlzLnZpZGVvLmR1cmF0aW9uICogdGhpcy5UaW1lU2NhbGU7CisgICAgfSwKKyAg
ICAKKyAgICB0aW1lU2NhbGU6IGZ1bmN0aW9uKCkKKyAgICB7CisgICAgICAgIHJldHVybiAzMDAw
MDsKKyAgICB9LAorICAgIAorICAgIG1heFRpbWVMb2FkZWQ6IGZ1bmN0aW9uKCkKKyAgICB7Cisg
ICAgICAgIHJldHVybiB0aGlzLnZpZGVvLmR1cmF0aW9uICogdGhpcy5UaW1lU2NhbGU7CisgICAg
fSwKKyAgICAKKyAgICBtYXhCeXRlc0xvYWRlZDogZnVuY3Rpb24oKQorICAgIHsKKyAgICAgICAg
dmFyIHBlcmNlbnRMb2FkZWQgPSB0aGlzLnZpZGVvLmJ1ZmZlcmVkLmVuZCgwKSAvIHRoaXMudmlk
ZW8uZHVyYXRpb247CisgICAgICAgIHJldHVybiBwZXJjZW50TG9hZGVkICogdGhpcy5tb3ZpZVNp
emUoKTsKKyAgICB9LAorICAgIAorICAgIG1vdmllU2l6ZTogZnVuY3Rpb24oKQorICAgIHsKKyAg
ICAgICAgdHJ5IHsKKyAgICAgICAgICAgIHJldHVybiB0aGlzLmhvc3QubW92aWVTaXplOworICAg
ICAgICB9IGNhdGNoKGUpIHsgfQorCisgICAgICAgIHJldHVybiAwOworICAgIH0sCisgICAgCisg
ICAgdGltZWRNZXRhZGF0YVVwZGF0ZXM6IGZ1bmN0aW9uKCkKKyAgICB7CisgICAgICAgIC8vIEZJ
WE1FOiBub3QgaW1wbGVtZW50ZWQgeWV0LgorICAgICAgICByZXR1cm4gbnVsbDsKKyAgICB9LAor
ICAgIAorICAgIGFjY2Vzc0xvZzogZnVuY3Rpb24oKQorICAgIHsKKyAgICAgICAgLy8gRklYTUU6
IG5vdCBpbXBsZW1lbnRlZCB5ZXQuCisgICAgICAgIHJldHVybiBudWxsOworICAgIH0sCisgICAg
CisgICAgZXJyb3JMb2c6IGZ1bmN0aW9uKCkKKyAgICB7CisgICAgICAgIC8vIEZJWE1FOiBub3Qg
aW1wbGVtZW50ZWQgeWV0LgorICAgICAgICByZXR1cm4gbnVsbDsKKyAgICB9LAorfTsKKwpJbmRl
eDogU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJv
agkocmV2aXNpb24gMTU5NzM2KQorKysgU291cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ov
cHJvamVjdC5wYnhwcm9qCSh3b3JraW5nIGNvcHkpCkBAIC0xNDYsNiArMTQ2LDkgQEAKIAkJMDcy
NzdFNTMxN0QwMThDQzAwMTU1MzREIC8qIEpTTWVkaWFTdHJlYW1UcmFjay5oIGluIEhlYWRlcnMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMDcyNzdFNDcxN0QwMThDQzAwMTU1
MzREIC8qIEpTTWVkaWFTdHJlYW1UcmFjay5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0g
KFByaXZhdGUsICk7IH07IH07CiAJCTA3Mjc3RTU0MTdEMDE4Q0MwMDE1NTM0RCAvKiBKU01lZGlh
U3RyZWFtVHJhY2tFdmVudC5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSAwNzI3N0U0ODE3RDAxOENDMDAxNTUzNEQgLyogSlNNZWRpYVN0cmVhbVRyYWNr
RXZlbnQuY3BwICovOyB9OwogCQkwNzI3N0U1NTE3RDAxOENDMDAxNTUzNEQgLyogSlNNZWRpYVN0
cmVhbVRyYWNrRXZlbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IDA3Mjc3RTQ5MTdEMDE4Q0MwMDE1NTM0RCAvKiBKU01lZGlhU3RyZWFtVHJhY2tFdmVu
dC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTA3
MkFFMUU1MTgzQzA3NDEwMDBBNTk4OCAvKiBQbHVnaW5SZXBsYWNlbWVudC5oIGluIEhlYWRlcnMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMDcyQUUxREYxODNDMDc0MTAwMEE1
OTg4IC8qIFBsdWdpblJlcGxhY2VtZW50LmggKi87IH07CisJCTA3MkFFMUU2MTgzQzA3NDEwMDBB
NTk4OCAvKiBRdWlja1RpbWVQbHVnaW5SZXBsYWNlbWVudC5jcHAgaW4gU291cmNlcyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAwNzJBRTFFMDE4M0MwNzQxMDAwQTU5ODggLyog
UXVpY2tUaW1lUGx1Z2luUmVwbGFjZW1lbnQuY3BwICovOyB9OworCQkwNzJBRTFFODE4M0MwNzQx
MDAwQTU5ODggLyogUXVpY2tUaW1lUGx1Z2luUmVwbGFjZW1lbnQuaCBpbiBIZWFkZXJzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDA3MkFFMUUyMTgzQzA3NDEwMDBBNTk4OCAv
KiBRdWlja1RpbWVQbHVnaW5SZXBsYWNlbWVudC5oICovOyB9OwogCQkwNzJDOEIxMTEzMUM1MTg2
MDBBNEZDRTkgLyogTWVkaWFQbGF5ZXJQcml2YXRlQVZGb3VuZGF0aW9uLmNwcCBpbiBTb3VyY2Vz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDA3NkYwRDA5MTJCODE5MjcwMEMy
NkFBNCAvKiBNZWRpYVBsYXllclByaXZhdGVBVkZvdW5kYXRpb24uY3BwICovOyB9OwogCQkwNzJD
QTg2MTE2Q0I0REMzMDA4QUUxMzEgLyogQ2FwdGlvblVzZXJQcmVmZXJlbmNlcy5jcHAgaW4gU291
cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAwNzJDQTg2MDE2Q0I0REMz
MDA4QUUxMzEgLyogQ2FwdGlvblVzZXJQcmVmZXJlbmNlcy5jcHAgKi87IH07CiAJCTA3MzVFRTZB
MEY0MEM1RTQwMDRBMjYwNCAvKiBNZWRpYVBsYXllclByb3h5LmggaW4gSGVhZGVycyAqLyA9IHtp
c2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAwNzM1RUU2OTBGNDBDNUU0MDA0QTI2MDQgLyog
TWVkaWFQbGF5ZXJQcm94eS5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUs
ICk7IH07IH07CkBAIC0xODAsNiArMTgzLDggQEAKIAkJMDc2OTcwODYxNDYzQUQ4NzAwRjUwMkNG
IC8qIFRleHRUcmFja0xpc3QuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxl
OyBmaWxlUmVmID0gMDc2OTcwODQxNDYzQUQ4NzAwRjUwMkNGIC8qIFRleHRUcmFja0xpc3QuY3Bw
ICovOyB9OwogCQkwNzY5NzA4NzE0NjNBRDg3MDBGNTAyQ0YgLyogVGV4dFRyYWNrTGlzdC5oIGlu
IEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMDc2OTcwODUxNDYz
QUQ4NzAwRjUwMkNGIC8qIFRleHRUcmFja0xpc3QuaCAqLzsgfTsKIAkJMDc2RjBEMEUxMkI4MTky
NzAwQzI2QUE0IC8qIE1lZGlhUGxheWVyUHJpdmF0ZUFWRm91bmRhdGlvbi5oIGluIEhlYWRlcnMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMDc2RjBEMEExMkI4MTkyNzAwQzI2
QUE0IC8qIE1lZGlhUGxheWVyUHJpdmF0ZUFWRm91bmRhdGlvbi5oICovOyB9OworCQkwNzc2NjRG
QzE4M0U2QjVDMDAxMzNCOTIgLyogSlNRdWlja1RpbWVQbHVnaW5SZXBsYWNlbWVudC5jcHAgaW4g
U291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAwNzc2NjRGQTE4M0U2
QjVDMDAxMzNCOTIgLyogSlNRdWlja1RpbWVQbHVnaW5SZXBsYWNlbWVudC5jcHAgKi87IH07CisJ
CTA3NzY2NEZEMTgzRTZCNUMwMDEzM0I5MiAvKiBKU1F1aWNrVGltZVBsdWdpblJlcGxhY2VtZW50
LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAwNzc2NjRG
QjE4M0U2QjVDMDAxMzNCOTIgLyogSlNRdWlja1RpbWVQbHVnaW5SZXBsYWNlbWVudC5oICovOyB9
OwogCQkwNzgzMjI4NDE4MDEzRUQ4MDA5OTlFMEMgLyogTWVkaWFTdHJlYW1BdWRpb1NvdXJjZS5j
cHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAwNzgzMjI4
MjE4MDEzRUQ3MDA5OTlFMEMgLyogTWVkaWFTdHJlYW1BdWRpb1NvdXJjZS5jcHAgKi87IH07CiAJ
CTA3ODMyMjg1MTgwMTNFRDgwMDk5OUUwQyAvKiBNZWRpYVN0cmVhbUF1ZGlvU291cmNlLmggaW4g
SGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAwNzgzMjI4MzE4MDEz
RUQ4MDA5OTlFMEMgLyogTWVkaWFTdHJlYW1BdWRpb1NvdXJjZS5oICovOyB9OwogCQkwNzg0NjM0
MjE0NUIxNTFBMDBBNThERjEgLyogSlNUcmFja0V2ZW50LmNwcCBpbiBTb3VyY2VzICovID0ge2lz
YSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDA3ODQ2MzQwMTQ1QjE1MUEwMEE1OERGMSAvKiBK
U1RyYWNrRXZlbnQuY3BwICovOyB9OwpAQCAtNjc2Myw2ICs2NzY4LDEyIEBACiAJCTA3Mjg0N0Uz
MTZFQkM1QjAwMDQzQ0ZBNCAvKiBQbGF0Zm9ybVRleHRUcmFja01lbnUuaCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRo
ID0gUGxhdGZvcm1UZXh0VHJhY2tNZW51Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJ
CTA3MjlCMTRFMTdDRkNDQTAwMDRGMUQ2MCAvKiBNZWRpYVN0cmVhbUNlbnRlck1hYy5jcHAgKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBNZWRpYVN0cmVhbUNlbnRlck1hYy5j
cHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTA3MjlCMTRGMTdDRkNDQTAwMDRGMUQ2
MCAvKiBNZWRpYVN0cmVhbUNlbnRlck1hYy5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBh
dGggPSBNZWRpYVN0cmVhbUNlbnRlck1hYy5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQkwNzJBRTFERjE4M0MwNzQxMDAwQTU5ODggLyogUGx1Z2luUmVwbGFjZW1lbnQuaCAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuYy5oOyBuYW1lID0gUGx1Z2luUmVwbGFjZW1lbnQuaDsgcGF0aCA9IHBs
dWdpbnMvUGx1Z2luUmVwbGFjZW1lbnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJ
MDcyQUUxRTAxODNDMDc0MTAwMEE1OTg4IC8qIFF1aWNrVGltZVBsdWdpblJlcGxhY2VtZW50LmNw
cCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgbmFtZSA9IFF1aWNrVGltZVBsdWdpblJl
cGxhY2VtZW50LmNwcDsgcGF0aCA9IHBsdWdpbnMvUXVpY2tUaW1lUGx1Z2luUmVwbGFjZW1lbnQu
Y3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkwNzJBRTFFMTE4M0MwNzQxMDAwQTU5
ODggLyogUXVpY2tUaW1lUGx1Z2luUmVwbGFjZW1lbnQuY3NzICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dC5jc3M7
IG5hbWUgPSBRdWlja1RpbWVQbHVnaW5SZXBsYWNlbWVudC5jc3M7IHBhdGggPSBwbHVnaW5zL1F1
aWNrVGltZVBsdWdpblJlcGxhY2VtZW50LmNzczsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJMDcyQUUxRTIxODNDMDc0MTAwMEE1OTg4IC8qIFF1aWNrVGltZVBsdWdpblJlcGxhY2VtZW50
LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgbmFtZSA9IFF1aWNrVGltZVBsdWdpblJlcGxh
Y2VtZW50Lmg7IHBhdGggPSBwbHVnaW5zL1F1aWNrVGltZVBsdWdpblJlcGxhY2VtZW50Lmg7IHNv
dXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTA3MkFFMUUzMTgzQzA3NDEwMDBBNTk4OCAvKiBR
dWlja1RpbWVQbHVnaW5SZXBsYWNlbWVudC5pZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0OyBuYW1lID0gUXVp
Y2tUaW1lUGx1Z2luUmVwbGFjZW1lbnQuaWRsOyBwYXRoID0gcGx1Z2lucy9RdWlja1RpbWVQbHVn
aW5SZXBsYWNlbWVudC5pZGw7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTA3MkFFMUU0
MTgzQzA3NDEwMDBBNTk4OCAvKiBRdWlja1RpbWVQbHVnaW5SZXBsYWNlbWVudC5qcyAqLyA9IHtp
c2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlw
ZSA9IHNvdXJjZWNvZGUuamF2YXNjcmlwdDsgbmFtZSA9IFF1aWNrVGltZVBsdWdpblJlcGxhY2Vt
ZW50LmpzOyBwYXRoID0gcGx1Z2lucy9RdWlja1RpbWVQbHVnaW5SZXBsYWNlbWVudC5qczsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMDcyQ0E4NjAxNkNCNERDMzAwOEFFMTMxIC8qIENh
cHRpb25Vc2VyUHJlZmVyZW5jZXMuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBw
YXRoID0gQ2FwdGlvblVzZXJQcmVmZXJlbmNlcy5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CiAJCTA3MzVFRTY5MEY0MEM1RTQwMDRBMjYwNCAvKiBNZWRpYVBsYXllclByb3h5LmggKi8g
PSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmls
ZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IE1lZGlhUGxheWVyUHJveHkuaDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMDczNjdEREQxNzJDQTY3RjAwRDg2MUI5IC8qIEluYmFu
ZFRleHRUcmFja1ByaXZhdGVMZWdhY3lBVkZPYmpDLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMu
aDsgbmFtZSA9IEluYmFuZFRleHRUcmFja1ByaXZhdGVMZWdhY3lBVkZPYmpDLmg7IHBhdGggPSBv
YmpjL0luYmFuZFRleHRUcmFja1ByaXZhdGVMZWdhY3lBVkZPYmpDLmg7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CkBAIC02Nzk2LDYgKzY4MDcsOCBAQAogCQkwNzY5NzA4NTE0NjNBRDg3MDBG
NTAyQ0YgLyogVGV4dFRyYWNrTGlzdC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGgg
PSBUZXh0VHJhY2tMaXN0Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTA3NkYwRDA5
MTJCODE5MjcwMEMyNkFBNCAvKiBNZWRpYVBsYXllclByaXZhdGVBVkZvdW5kYXRpb24uY3BwICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gTWVkaWFQbGF5ZXJQcml2YXRlQVZG
b3VuZGF0aW9uLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMDc2RjBEMEExMkI4
MTkyNzAwQzI2QUE0IC8qIE1lZGlhUGxheWVyUHJpdmF0ZUFWRm91bmRhdGlvbi5oICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBNZWRpYVBsYXllclByaXZhdGVBVkZvdW5kYXRpb24u
aDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMDc3NjY0RkExODNFNkI1QzAwMTMzQjky
IC8qIEpTUXVpY2tUaW1lUGx1Z2luUmVwbGFjZW1lbnQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVS
ZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jcHAuY3BwOyBuYW1lID0gSlNRdWlja1RpbWVQbHVnaW5SZXBsYWNlbWVudC5jcHA7IHBhdGgg
PSBKU1F1aWNrVGltZVBsdWdpblJlcGxhY2VtZW50LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKKwkJMDc3NjY0RkIxODNFNkI1QzAwMTMzQjkyIC8qIEpTUXVpY2tUaW1lUGx1Z2luUmVw
bGFjZW1lbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0
OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBuYW1lID0gSlNRdWlja1RpbWVQ
bHVnaW5SZXBsYWNlbWVudC5oOyBwYXRoID0gSlNRdWlja1RpbWVQbHVnaW5SZXBsYWNlbWVudC5o
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkwNzgzMjI4MjE4MDEzRUQ3MDA5OTlFMEMg
LyogTWVkaWFTdHJlYW1BdWRpb1NvdXJjZS5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5j
cHA7IHBhdGggPSBNZWRpYVN0cmVhbUF1ZGlvU291cmNlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKIAkJMDc4MzIyODMxODAxM0VEODAwOTk5RTBDIC8qIE1lZGlhU3RyZWFtQXVkaW9T
b3VyY2UuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gTWVkaWFTdHJlYW1BdWRp
b1NvdXJjZS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkwNzg0NjM0MDE0NUIxNTFB
MDBBNThERjEgLyogSlNUcmFja0V2ZW50LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNw
cDsgcGF0aCA9IEpTVHJhY2tFdmVudC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CkBA
IC0xMzc0Nyw2ICsxMzc2MCwxOSBAQAogCQkJcGF0aCA9IG1hYzsKIAkJCXNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7CiAJCX07CisJCTA3MkFFMURFMTgzQzA1MTMwMDBBNTk4OCAvKiBwbHVnaW5zICov
ID0geworCQkJaXNhID0gUEJYR3JvdXA7CisJCQljaGlsZHJlbiA9ICgKKwkJCQkwNzJBRTFERjE4
M0MwNzQxMDAwQTU5ODggLyogUGx1Z2luUmVwbGFjZW1lbnQuaCAqLywKKwkJCQkwNzJBRTFFMDE4
M0MwNzQxMDAwQTU5ODggLyogUXVpY2tUaW1lUGx1Z2luUmVwbGFjZW1lbnQuY3BwICovLAorCQkJ
CTA3MkFFMUUxMTgzQzA3NDEwMDBBNTk4OCAvKiBRdWlja1RpbWVQbHVnaW5SZXBsYWNlbWVudC5j
c3MgKi8sCisJCQkJMDcyQUUxRTIxODNDMDc0MTAwMEE1OTg4IC8qIFF1aWNrVGltZVBsdWdpblJl
cGxhY2VtZW50LmggKi8sCisJCQkJMDcyQUUxRTMxODNDMDc0MTAwMEE1OTg4IC8qIFF1aWNrVGlt
ZVBsdWdpblJlcGxhY2VtZW50LmlkbCAqLywKKwkJCQkwNzJBRTFFNDE4M0MwNzQxMDAwQTU5ODgg
LyogUXVpY2tUaW1lUGx1Z2luUmVwbGFjZW1lbnQuanMgKi8sCisJCQkpOworCQkJbmFtZSA9IHBs
dWdpbnM7CisJCQlzb3VyY2VUcmVlID0gIjxncm91cD4iOworCQl9OwogCQkwNzZGMEQwODEyQjgx
OTI3MDBDMjZBQTQgLyogYXZmb3VuZGF0aW9uICovID0gewogCQkJaXNhID0gUEJYR3JvdXA7CiAJ
CQljaGlsZHJlbiA9ICgKQEAgLTE0MDkyLDYgKzE0MTE4LDggQEAKIAkJMTRERkIzM0YwQTdERjc2
MzAwMThGNzY5IC8qIERlcml2ZWQgU291cmNlcyAqLyA9IHsKIAkJCWlzYSA9IFBCWEdyb3VwOwog
CQkJY2hpbGRyZW4gPSAoCisJCQkJMDc3NjY0RkExODNFNkI1QzAwMTMzQjkyIC8qIEpTUXVpY2tU
aW1lUGx1Z2luUmVwbGFjZW1lbnQuY3BwICovLAorCQkJCTA3NzY2NEZCMTgzRTZCNUMwMDEzM0I5
MiAvKiBKU1F1aWNrVGltZVBsdWdpblJlcGxhY2VtZW50LmggKi8sCiAJCQkJQTgzQjc5MTAwQ0NC
MDAxQjAwMEIwODI1IC8qIENvcmUgKi8sCiAJCQkJRTFGRjhGNjExODA3NDVDNjAwMTMyNjc0IC8q
IENyeXB0byAqLywKIAkJCQlBODNCNzkwRTBDQ0FGRjk3MDAwQjA4MjUgLyogQ1NTICovLApAQCAt
MTY5NDYsNiArMTY5NzQsNyBAQAogCQk5NzExNDVGRTE0RUYwMDZFMDA2NzRGRDkgLyogTW9kdWxl
cyAqLyA9IHsKIAkJCWlzYSA9IFBCWEdyb3VwOwogCQkJY2hpbGRyZW4gPSAoCisJCQkJMDcyQUUx
REUxODNDMDUxMzAwMEE1OTg4IC8qIHBsdWdpbnMgKi8sCiAJCQkJQ0RBOThEQkQxNjAxNEUwODAw
RkVBM0IxIC8qIGVuY3J5cHRlZG1lZGlhICovLAogCQkJCTk3MTE0NUZGMTRFRjAwNzkwMDY3NEZE
OSAvKiBnZW9sb2NhdGlvbiAqLywKIAkJCQk5NzEyQTU1MzE1MDA0RTNDMDA0OEFGMTAgLyogaW5k
ZXhlZGRiICovLApAQCAtMjE5ODgsNiArMjIwMTcsNyBAQAogCQkJCTI5NDg5RkM3MTJDMDBGMDMw
MEQ4M0YwRiAvKiBBY2Nlc3NpYmlsaXR5U2Nyb2xsVmlldy5oIGluIEhlYWRlcnMgKi8sCiAJCQkJ
MDcwOUZDNEUxMDI1REVFMzAwNTlDREJBIC8qIEFjY2Vzc2liaWxpdHlTbGlkZXIuaCBpbiBIZWFk
ZXJzICovLAogCQkJCTUxRDcxOUQ3MTgxMTA2RTAwMDE2REM1MSAvKiBJREJIaXN0b2dyYW1zLmgg
aW4gSGVhZGVycyAqLywKKwkJCQkwNzJBRTFFODE4M0MwNzQxMDAwQTU5ODggLyogUXVpY2tUaW1l
UGx1Z2luUmVwbGFjZW1lbnQuaCBpbiBIZWFkZXJzICovLAogCQkJCTI5RDdCQ0ZBMTQ0NEFGN0Qw
MDcwNjE5QyAvKiBBY2Nlc3NpYmlsaXR5U3BpbkJ1dHRvbi5oIGluIEhlYWRlcnMgKi8sCiAJCQkJ
QUFDMDhDRjMxNUY5NDFGRDAwRjFFMTg4IC8qIEFjY2Vzc2liaWxpdHlTVkdSb290LmggaW4gSGVh
ZGVycyAqLywKIAkJCQkyOUE4MTIyQjBGQkI5QzFEMDA1MTAyOTMgLyogQWNjZXNzaWJpbGl0eVRh
YmxlLmggaW4gSGVhZGVycyAqLywKQEAgLTIyMTg0LDYgKzIyMjE0LDcgQEAKIAkJCQlGRDMxNUZG
RjEyQjAyNjc2MDBDMUEzNTkgLyogQ2hhbm5lbE1lcmdlck5vZGUuaCBpbiBIZWFkZXJzICovLAog
CQkJCUZEMzE2MDAyMTJCMDI2NzYwMEMxQTM1OSAvKiBDaGFubmVsU3BsaXR0ZXJOb2RlLmggaW4g
SGVhZGVycyAqLywKIAkJCQk2NTUwQjZBMDA5OURGMDI3MDA5MEQ3ODEgLyogQ2hhcmFjdGVyRGF0
YS5oIGluIEhlYWRlcnMgKi8sCisJCQkJMDc3NjY0RkQxODNFNkI1QzAwMTMzQjkyIC8qIEpTUXVp
Y2tUaW1lUGx1Z2luUmVwbGFjZW1lbnQuaCBpbiBIZWFkZXJzICovLAogCQkJCTk3QjhGRkQxMTZB
RTdGOTYwMDM4Mzg4RCAvKiBDaGFyYWN0ZXJSZWZlcmVuY2VQYXJzZXJJbmxpbmVzLmggaW4gSGVh
ZGVycyAqLywKIAkJCQlFMTY0RkFBMzE4MzE1QkY0MDBEQjRFNjEgLyogQ3J5cHRvS2V5UlNBLmgg
aW4gSGVhZGVycyAqLywKIAkJCQlCMkMzREEyQTBEMDA2QzFEMDBFRjZGMjYgLyogQ2hhcnNldERh
dGEuaCBpbiBIZWFkZXJzICovLApAQCAtMjQ4ODMsNiArMjQ5MTQsNyBAQAogCQkJCUUxODA4MTE3
MTZGQ0Y5Q0IwMEI4MEQwNyAvKiBTeW5jaHJvbm91c0xvYWRlckNsaWVudC5oIGluIEhlYWRlcnMg
Ki8sCiAJCQkJNURBOTdFQ0QxNjhFNzg3QjAwMEUzNjc2IC8qIFN5c3RlbVZlcnNpb25NYWMuaCBp
biBIZWFkZXJzICovLAogCQkJCUE4Q0ZGMDUxMEExNTRGMDkwMDBBNDIzNCAvKiBUYWJsZUxheW91
dC5oIGluIEhlYWRlcnMgKi8sCisJCQkJMDcyQUUxRTUxODNDMDc0MTAwMEE1OTg4IC8qIFBsdWdp
blJlcGxhY2VtZW50LmggaW4gSGVhZGVycyAqLywKIAkJCQlCQ0UzQkVDMzBEMjIyQjFEMDA3RTA2
RTQgLyogVGFnTm9kZUxpc3QuaCBpbiBIZWFkZXJzICovLAogCQkJCUY1NUIzREQ2MTI1MUYxMkQw
MDNFRjI2OSAvKiBUZWxlcGhvbmVJbnB1dFR5cGUuaCBpbiBIZWFkZXJzICovLAogCQkJCUM2NTA0
NkE5MTY3QkZCNTUwMENDMkE0RCAvKiBUZW1wbGF0ZUNvbnRlbnREb2N1bWVudEZyYWdtZW50Lmgg
aW4gSGVhZGVycyAqLywKQEAgLTI3MDMyLDYgKzI3MDY0LDcgQEAKIAkJCQk4NDg1MjI3QjExOTAx
NjJDMDA2RURDN0YgLyogSlNTVkdIS2VybkVsZW1lbnQuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJ
QjJGQTNEOUUwQUI3NUE2RjAwMEU1QUM0IC8qIEpTU1ZHSW1hZ2VFbGVtZW50LmNwcCBpbiBTb3Vy
Y2VzICovLAogCQkJCUIyRkEzREEwMEFCNzVBNkYwMDBFNUFDNCAvKiBKU1NWR0xlbmd0aC5jcHAg
aW4gU291cmNlcyAqLywKKwkJCQkwNzc2NjRGQzE4M0U2QjVDMDAxMzNCOTIgLyogSlNRdWlja1Rp
bWVQbHVnaW5SZXBsYWNlbWVudC5jcHAgaW4gU291cmNlcyAqLywKIAkJCQkwOEU0RkU0NjBFMkJE
NDE0MDBGNENBRTAgLyogSlNTVkdMZW5ndGhDdXN0b20uY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJ
QjJGQTNEQTIwQUI3NUE2RjAwMEU1QUM0IC8qIEpTU1ZHTGVuZ3RoTGlzdC5jcHAgaW4gU291cmNl
cyAqLywKIAkJCQlCMkZBM0RBNDBBQjc1QTZGMDAwRTVBQzQgLyogSlNTVkdMaW5lYXJHcmFkaWVu
dEVsZW1lbnQuY3BwIGluIFNvdXJjZXMgKi8sCkBAIC0yNzIzOCw2ICsyNzI3MSw3IEBACiAJCQkJ
MDcwNTg1MDIxN0ZBMTBEMDAwNUYyQkNCIC8qIEpTQWxsVmlkZW9DYXBhYmlsaXRpZXMuY3BwIGlu
IFNvdXJjZXMgKi8sCiAJCQkJOTc1OUU5M0UxNEVGMUNGODAwMjZBMkREIC8qIExvYWRhYmxlVGV4
dFRyYWNrLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTY1NkQzNzMzMEFEQkE1REUwMEE0NTU0RCAv
KiBMb2FkZXJOU1VSTEV4dHJhcy5tbSBpbiBTb3VyY2VzICovLAorCQkJCTA3MkFFMUU2MTgzQzA3
NDEwMDBBNTk4OCAvKiBRdWlja1RpbWVQbHVnaW5SZXBsYWNlbWVudC5jcHAgaW4gU291cmNlcyAq
LywKIAkJCQk3RUU2ODQ2ODEyRDI2RTM4MDBFNzk0MTUgLyogTG9hZGVyUnVuTG9vcENGLmNwcCBp
biBTb3VyY2VzICovLAogCQkJCTUxQUJGNjREMTYzOTJFMjgwMDEzMkE3QSAvKiBMb2FkZXJTdHJh
dGVneS5jcHAgaW4gU291cmNlcyAqLywKIAkJCQkwNkU4MUVFQzBBQjVEQTk3MDBDODc4MzcgLyog
TG9jYWxDdXJyZW50R3JhcGhpY3NDb250ZXh0Lm1tIGluIFNvdXJjZXMgKi8sCkluZGV4OiBTb3Vy
Y2UvV2ViQ29yZS9iaW5kaW5ncy9nZW5lcmljL1J1bnRpbWVFbmFibGVkRmVhdHVyZXMuaAo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9nZW5lcmljL1J1bnRpbWVFbmFibGVk
RmVhdHVyZXMuaAkocmV2aXNpb24gMTU5NzM2KQorKysgU291cmNlL1dlYkNvcmUvYmluZGluZ3Mv
Z2VuZXJpYy9SdW50aW1lRW5hYmxlZEZlYXR1cmVzLmgJKHdvcmtpbmcgY29weSkKQEAgLTIyOCw2
ICsyMjgsOSBAQCBwdWJsaWM6CiAgICAgLy8gVGhlIGxhbmcgYXR0cmlidXRlIHN1cHBvcnQgaXMg
aW5jb21wbGV0ZSBhbmQgc2hvdWxkIG9ubHkgYmUgdHVybmVkIG9uIGZvciB0ZXN0cy4KICAgICB2
b2lkIHNldExhbmdBdHRyaWJ1dGVBd2FyZUZvcm1Db250cm9sVUlFbmFibGVkKGJvb2wgaXNFbmFi
bGVkKSB7IG1faXNMYW5nQXR0cmlidXRlQXdhcmVGb3JtQ29udHJvbFVJRW5hYmxlZCA9IGlzRW5h
YmxlZDsgfQogCisgICAgdm9pZCBzZXRQbHVnaW5SZXBsYWNlbWVudEVuYWJsZWQoYm9vbCBpc0Vu
YWJsZWQpIHsgbV9pc1BsdWdpblJlcGxhY2VtZW50RW5hYmxlZCA9IGlzRW5hYmxlZDsgfQorICAg
IGJvb2wgcGx1Z2luUmVwbGFjZW1lbnRFbmFibGVkKCkgY29uc3QgeyByZXR1cm4gbV9pc1BsdWdp
blJlcGxhY2VtZW50RW5hYmxlZDsgfQorCiAgICAgc3RhdGljIFJ1bnRpbWVFbmFibGVkRmVhdHVy
ZXMmIHNoYXJlZEZlYXR1cmVzKCk7CiAKIHByaXZhdGU6CkBAIC0yNTAsNiArMjUzLDggQEAgcHJp
dmF0ZToKICAgICBib29sIG1faXNDU1NSZWdpb25zRW5hYmxlZDsKICAgICBib29sIG1faXNDU1ND
b21wb3NpdGluZ0VuYWJsZWQ7CiAgICAgYm9vbCBtX2lzTGFuZ0F0dHJpYnV0ZUF3YXJlRm9ybUNv
bnRyb2xVSUVuYWJsZWQ7CisgICAgYm9vbCBtX2lzUGx1Z2luUmVwbGFjZW1lbnRFbmFibGVkOwor
CiAjaWYgRU5BQkxFKFNDUklQVEVEX1NQRUVDSCkKICAgICBib29sIG1faXNTY3JpcHRlZFNwZWVj
aEVuYWJsZWQ7CiAjZW5kaWYKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRE9N
QmluZGluZy5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRE9N
QmluZGluZy5oCShyZXZpc2lvbiAxNTk3MzYpCisrKyBTb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9q
cy9KU0RPTUJpbmRpbmcuaAkod29ya2luZyBjb3B5KQpAQCAtMzkyLDYgKzM5MiwxMSBAQCBpbmxp
bmUgSlNDOjpKU1ZhbHVlIHRvSlMoSlNDOjpFeGVjU3RhdGUqCiAgICAgcmV0dXJuIGFycmF5Owog
fQogCitpbmxpbmUgSlNDOjpKU1ZhbHVlIHRvSlMoSlNDOjpFeGVjU3RhdGUqIGV4ZWMsIEpTRE9N
R2xvYmFsT2JqZWN0KiwgY29uc3QgU3RyaW5nJiB2YWx1ZSkKK3sKKyAgICByZXR1cm4ganNTdHJp
bmdPck51bGwoZXhlYywgdmFsdWUpOworfQorCiB0ZW1wbGF0ZSA8Y2xhc3MgVD4KIHN0cnVjdCBK
U1ZhbHVlVHJhaXRzIHsKICAgICBzdGF0aWMgaW5saW5lIEpTQzo6SlNWYWx1ZSBhcnJheUpTVmFs
dWUoSlNDOjpFeGVjU3RhdGUqIGV4ZWMsIEpTRE9NR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3Qs
IGNvbnN0IFQmIHZhbHVlKQpJbmRleDogU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNQbHVn
aW5FbGVtZW50RnVuY3Rpb25zLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9iaW5k
aW5ncy9qcy9KU1BsdWdpbkVsZW1lbnRGdW5jdGlvbnMuY3BwCShyZXZpc2lvbiAxNTk3MzYpCisr
KyBTb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU1BsdWdpbkVsZW1lbnRGdW5jdGlvbnMuY3Bw
CSh3b3JraW5nIGNvcHkpCkBAIC04Miw3ICs4MiwxMSBAQCBKU09iamVjdCogcGx1Z2luU2NyaXB0
T2JqZWN0KEV4ZWNTdGF0ZSogCiAKICAgICBIVE1MUGx1Z0luRWxlbWVudCYgcGx1Z2luRWxlbWVu
dCA9IHRvSFRNTFBsdWdJbkVsZW1lbnQoZWxlbWVudCk7CiAKLSAgICAvLyBGaXJzdCwgc2VlIGlm
IHdlIGNhbiBhc2sgdGhlIHBsdWctaW4gdmlldyBmb3IgaXRzIHNjcmlwdCBvYmplY3QuCisgICAg
Ly8gRmlyc3QsIHNlZSBpZiB0aGUgZWxlbWVudCBoYXMgYSBwbHVnLWluIHJlcGxhY2VtZW50IHdp
dGggYSBzY3JpcHQuCisgICAgaWYgKEpTT2JqZWN0KiBzY3JpcHRPYmplY3QgPSBwbHVnaW5FbGVt
ZW50LnNjcmlwdE9iamVjdEZvclBsdWdpblJlcGxhY2VtZW50KCkpCisgICAgICAgIHJldHVybiBz
Y3JpcHRPYmplY3Q7CisgICAgCisgICAgLy8gTmV4dCwgc2VlIGlmIHdlIGNhbiBhc2sgdGhlIHBs
dWctaW4gdmlldyBmb3IgaXRzIHNjcmlwdCBvYmplY3QuCiAgICAgaWYgKEpTT2JqZWN0KiBzY3Jp
cHRPYmplY3QgPSBwbHVnaW5TY3JpcHRPYmplY3RGcm9tUGx1Z2luVmlld0Jhc2UocGx1Z2luRWxl
bWVudCwganNIVE1MRWxlbWVudC0+Z2xvYmFsT2JqZWN0KCkpKQogICAgICAgICByZXR1cm4gc2Ny
aXB0T2JqZWN0OwogCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxFbWJlZEVsZW1lbnQu
Y3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTEVtYmVkRWxlbWVudC5j
cHAJKHJldmlzaW9uIDE1OTczNikKKysrIFNvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTEVtYmVkRWxl
bWVudC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTE3MCw5ICsxNzAsOCBAQCB2b2lkIEhUTUxFbWJl
ZEVsZW1lbnQ6OnVwZGF0ZVdpZGdldChQbHVnCiAgICAgaWYgKCFyZW5kZXJlcigpKSAvLyBEbyBu
b3QgbG9hZCB0aGUgcGx1Z2luIGlmIGJlZm9yZWxvYWQgcmVtb3ZlZCB0aGlzIGVsZW1lbnQgb3Ig
aXRzIHJlbmRlcmVyLgogICAgICAgICByZXR1cm47CiAKLSAgICBTdWJmcmFtZUxvYWRlciYgbG9h
ZGVyID0gZG9jdW1lbnQoKS5mcmFtZSgpLT5sb2FkZXIoKS5zdWJmcmFtZUxvYWRlcigpOwogICAg
IC8vIEZJWE1FOiBiZWZvcmVMb2FkIGNvdWxkIGhhdmUgZGV0YWNoZWQgdGhlIHJlbmRlcmVyISAg
SnVzdCBsaWtlIGluIHRoZSA8b2JqZWN0PiBjYXNlIGFib3ZlLgotICAgIGxvYWRlci5yZXF1ZXN0
T2JqZWN0KCp0aGlzLCBtX3VybCwgZ2V0TmFtZUF0dHJpYnV0ZSgpLCBtX3NlcnZpY2VUeXBlLCBw
YXJhbU5hbWVzLCBwYXJhbVZhbHVlcyk7CisgICAgcmVxdWVzdE9iamVjdChtX3VybCwgbV9zZXJ2
aWNlVHlwZSwgcGFyYW1OYW1lcywgcGFyYW1WYWx1ZXMpOwogfQogCiBib29sIEhUTUxFbWJlZEVs
ZW1lbnQ6OnJlbmRlcmVySXNOZWVkZWQoY29uc3QgUmVuZGVyU3R5bGUmIHN0eWxlKQpJbmRleDog
U291cmNlL1dlYkNvcmUvaHRtbC9IVE1MTWVkaWFFbGVtZW50LmNwcAo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBT
b3VyY2UvV2ViQ29yZS9odG1sL0hUTUxNZWRpYUVsZW1lbnQuY3BwCShyZXZpc2lvbiAxNTk3MzYp
CisrKyBTb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxNZWRpYUVsZW1lbnQuY3BwCSh3b3JraW5nIGNv
cHkpCkBAIC01MjgxLDYgKzUyODEsMTQgQEAgdm9pZCBIVE1MTWVkaWFFbGVtZW50OjpkaWRBZGRV
c2VyQWdlbnRTaAogfQogI2VuZGlmCiAKK3Vuc2lnbmVkIGxvbmcgbG9uZyBIVE1MTWVkaWFFbGVt
ZW50OjpmaWxlU2l6ZSgpIGNvbnN0Cit7CisgICAgaWYgKG1fcGxheWVyKQorICAgICAgICByZXR1
cm4gbV9wbGF5ZXItPmZpbGVTaXplKCk7CisgICAgCisgICAgcmV0dXJuIDA7Cit9CisKIH0KIAog
I2VuZGlmCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxNZWRpYUVsZW1lbnQuaAo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxNZWRpYUVsZW1lbnQuaAkocmV2aXNp
b24gMTU5NzM2KQorKysgU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MTWVkaWFFbGVtZW50LmgJKHdv
cmtpbmcgY29weSkKQEAgLTM4Niw2ICszODYsOCBAQCBwdWJsaWM6CiAgICAgYm9vbCBzaG91bGRV
c2VWaWRlb1BsdWdpblByb3h5KCkgY29uc3Q7CiAjZW5kaWYKIAorICAgIHVuc2lnbmVkIGxvbmcg
bG9uZyBmaWxlU2l6ZSgpIGNvbnN0OworCiBwcm90ZWN0ZWQ6CiAgICAgSFRNTE1lZGlhRWxlbWVu
dChjb25zdCBRdWFsaWZpZWROYW1lJiwgRG9jdW1lbnQmLCBib29sKTsKICAgICB2aXJ0dWFsIH5I
VE1MTWVkaWFFbGVtZW50KCk7CkluZGV4OiBTb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxPYmplY3RF
bGVtZW50LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxPYmplY3RF
bGVtZW50LmNwcAkocmV2aXNpb24gMTU5NzM2KQorKysgU291cmNlL1dlYkNvcmUvaHRtbC9IVE1M
T2JqZWN0RWxlbWVudC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTMwNyw4ICszMDcsOSBAQCB2b2lk
IEhUTUxPYmplY3RFbGVtZW50Ojp1cGRhdGVXaWRnZXQoUGx1CiAgICAgaWYgKCFyZW5kZXJlcigp
KSAvLyBEbyBub3QgbG9hZCB0aGUgcGx1Z2luIGlmIGJlZm9yZWxvYWQgcmVtb3ZlZCB0aGlzIGVs
ZW1lbnQgb3IgaXRzIHJlbmRlcmVyLgogICAgICAgICByZXR1cm47CiAKLSAgICBTdWJmcmFtZUxv
YWRlciYgbG9hZGVyID0gZG9jdW1lbnQoKS5mcmFtZSgpLT5sb2FkZXIoKS5zdWJmcmFtZUxvYWRl
cigpOwotICAgIGJvb2wgc3VjY2VzcyA9IGJlZm9yZUxvYWRBbGxvd2VkTG9hZCAmJiBoYXNWYWxp
ZENsYXNzSWQoKSAmJiBsb2FkZXIucmVxdWVzdE9iamVjdCgqdGhpcywgdXJsLCBnZXROYW1lQXR0
cmlidXRlKCksIHNlcnZpY2VUeXBlLCBwYXJhbU5hbWVzLCBwYXJhbVZhbHVlcyk7CisgICAgYm9v
bCBzdWNjZXNzID0gYmVmb3JlTG9hZEFsbG93ZWRMb2FkICYmIGhhc1ZhbGlkQ2xhc3NJZCgpOwor
ICAgIGlmIChzdWNjZXNzKQorICAgICAgICBzdWNjZXNzID0gcmVxdWVzdE9iamVjdCh1cmwsIHNl
cnZpY2VUeXBlLCBwYXJhbU5hbWVzLCBwYXJhbVZhbHVlcyk7CiAgICAgaWYgKCFzdWNjZXNzICYm
IGhhc0ZhbGxiYWNrQ29udGVudCgpKQogICAgICAgICByZW5kZXJGYWxsYmFja0NvbnRlbnQoKTsK
IH0KSW5kZXg6IFNvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTFBsdWdJbkVsZW1lbnQuY3BwCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTFBsdWdJbkVsZW1lbnQuY3BwCShyZXZp
c2lvbiAxNTk3MzYpCisrKyBTb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxQbHVnSW5FbGVtZW50LmNw
cAkod29ya2luZyBjb3B5KQpAQCAtMzUsMTkgKzM1LDI5IEBACiAjaW5jbHVkZSAiRnJhbWVMb2Fk
ZXIuaCIKICNpbmNsdWRlICJGcmFtZVRyZWUuaCIKICNpbmNsdWRlICJIVE1MTmFtZXMuaCIKKyNp
bmNsdWRlICJNSU1FVHlwZVJlZ2lzdHJ5LmgiCiAjaW5jbHVkZSAiUGFnZS5oIgorI2luY2x1ZGUg
IlBsdWdpbkRhdGEuaCIKKyNpbmNsdWRlICJQbHVnaW5SZXBsYWNlbWVudC5oIgogI2luY2x1ZGUg
IlBsdWdpblZpZXdCYXNlLmgiCiAjaW5jbHVkZSAiUmVuZGVyRW1iZWRkZWRPYmplY3QuaCIKICNp
bmNsdWRlICJSZW5kZXJTbmFwc2hvdHRlZFBsdWdJbi5oIgogI2luY2x1ZGUgIlJlbmRlcldpZGdl
dC5oIgorI2luY2x1ZGUgIlJ1bnRpbWVFbmFibGVkRmVhdHVyZXMuaCIKICNpbmNsdWRlICJTY3Jp
cHRDb250cm9sbGVyLmgiCiAjaW5jbHVkZSAiU2V0dGluZ3MuaCIKKyNpbmNsdWRlICJTaGFkb3dS
b290LmgiCisjaW5jbHVkZSAiU3ViZnJhbWVMb2FkZXIuaCIKICNpbmNsdWRlICJXaWRnZXQuaCIK
IAogI2lmIEVOQUJMRShORVRTQ0FQRV9QTFVHSU5fQVBJKQogI2luY2x1ZGUgIm5wcnVudGltZV9p
bXBsLmgiCiAjZW5kaWYKIAorI2lmIFBMQVRGT1JNKE1BQykKKyNpbmNsdWRlICJRdWlja1RpbWVQ
bHVnaW5SZXBsYWNlbWVudC5oIgorI2VuZGlmCisKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogdXNp
bmcgbmFtZXNwYWNlIEhUTUxOYW1lczsKQEAgLTU1LDYgKzY1LDcgQEAgdXNpbmcgbmFtZXNwYWNl
IEhUTUxOYW1lczsKIEhUTUxQbHVnSW5FbGVtZW50OjpIVE1MUGx1Z0luRWxlbWVudChjb25zdCBR
dWFsaWZpZWROYW1lJiB0YWdOYW1lLCBEb2N1bWVudCYgZG9jdW1lbnQpCiAgICAgOiBIVE1MRnJh
bWVPd25lckVsZW1lbnQodGFnTmFtZSwgZG9jdW1lbnQpCiAgICAgLCBtX2luQmVmb3JlTG9hZEV2
ZW50SGFuZGxlcihmYWxzZSkKKyAgICAsIG1fc3dhcFJlbmRlcmVyVGltZXIodGhpcywgJkhUTUxQ
bHVnSW5FbGVtZW50Ojpzd2FwUmVuZGVyZXJUaW1lckZpcmVkKQogI2lmIEVOQUJMRShORVRTQ0FQ
RV9QTFVHSU5fQVBJKQogICAgICwgbV9OUE9iamVjdCgwKQogI2VuZGlmCkBAIC0yNjIsNCArMjcz
LDEzMiBAQCBOUE9iamVjdCogSFRNTFBsdWdJbkVsZW1lbnQ6OmdldE5QT2JqZWN0CiAKICNlbmRp
ZiAvKiBFTkFCTEUoTkVUU0NBUEVfUExVR0lOX0FQSSkgKi8KIAorUmVuZGVyRWxlbWVudCogSFRN
TFBsdWdJbkVsZW1lbnQ6OmNyZWF0ZVJlbmRlcmVyKFBhc3NSZWY8UmVuZGVyU3R5bGU+IHN0eWxl
KQoreworICAgIGlmIChtX3BsdWdpblJlcGxhY2VtZW50ICYmIG1fcGx1Z2luUmVwbGFjZW1lbnQt
PndpbGxDcmVhdGVSZW5kZXJlcigpKQorICAgICAgICByZXR1cm4gbV9wbHVnaW5SZXBsYWNlbWVu
dC0+Y3JlYXRlUmVuZGVyZXIoKnRoaXMsIHN0ZDo6bW92ZShzdHlsZSkpOworCisgICAgcmV0dXJu
IG5ldyBSZW5kZXJFbWJlZGRlZE9iamVjdCgqdGhpcywgc3RkOjptb3ZlKHN0eWxlKSk7Cit9CisK
K3ZvaWQgSFRNTFBsdWdJbkVsZW1lbnQ6OnN3YXBSZW5kZXJlclRpbWVyRmlyZWQoVGltZXI8SFRN
TFBsdWdJbkVsZW1lbnQ+KikKK3sKKyAgICBBU1NFUlQoZGlzcGxheVN0YXRlKCkgPT0gUHJlcGFy
aW5nUGx1Z2luUmVwbGFjZW1lbnQgfHwgZGlzcGxheVN0YXRlKCkgPT0gRGlzcGxheWluZ1NuYXBz
aG90KTsKKyAgICBpZiAodXNlckFnZW50U2hhZG93Um9vdCgpKQorICAgICAgICByZXR1cm47Cisg
ICAgCisgICAgLy8gQ3JlYXRlIGEgc2hhZG93IHJvb3QsIHdoaWNoIHdpbGwgdHJpZ2dlciB0aGUg
Y29kZSB0byBhZGQgYSBzbmFwc2hvdCBjb250YWluZXIKKyAgICAvLyBhbmQgcmVhdHRhY2gsIHRo
dXMgbWFraW5nIGEgbmV3IFJlbmRlcmVyLgorICAgIGVuc3VyZVVzZXJBZ2VudFNoYWRvd1Jvb3Qo
KTsKK30KKwordm9pZCBIVE1MUGx1Z0luRWxlbWVudDo6c2V0RGlzcGxheVN0YXRlKERpc3BsYXlT
dGF0ZSBzdGF0ZSkKK3sKKyAgICBtX2Rpc3BsYXlTdGF0ZSA9IHN0YXRlOworICAgIAorICAgIGlm
ICgoc3RhdGUgPT0gRGlzcGxheWluZ1NuYXBzaG90IHx8IGRpc3BsYXlTdGF0ZSgpID09IFByZXBh
cmluZ1BsdWdpblJlcGxhY2VtZW50KSAmJiAhbV9zd2FwUmVuZGVyZXJUaW1lci5pc0FjdGl2ZSgp
KQorICAgICAgICBtX3N3YXBSZW5kZXJlclRpbWVyLnN0YXJ0T25lU2hvdCgwKTsKK30KKwordm9p
ZCBIVE1MUGx1Z0luRWxlbWVudDo6ZGlkQWRkVXNlckFnZW50U2hhZG93Um9vdChTaGFkb3dSb290
KiByb290KQoreworICAgIGlmICghbV9wbHVnaW5SZXBsYWNlbWVudCB8fCAhZG9jdW1lbnQoKS5w
YWdlKCkgfHwgZGlzcGxheVN0YXRlKCkgIT0gUHJlcGFyaW5nUGx1Z2luUmVwbGFjZW1lbnQpCisg
ICAgICAgIHJldHVybjsKKyAgICAKKyAgICByb290LT5zZXRSZXNldFN0eWxlSW5oZXJpdGFuY2Uo
dHJ1ZSk7CisgICAgaWYgKG1fcGx1Z2luUmVwbGFjZW1lbnQtPmluc3RhbGxSZXBsYWNlbWVudChy
b290KSkgeworICAgICAgICBzZXREaXNwbGF5U3RhdGUoRGlzcGxheWluZ1BsdWdpblJlcGxhY2Vt
ZW50KTsKKyAgICAgICAgU3R5bGU6OnJlYXR0YWNoUmVuZGVyVHJlZSgqdGhpcyk7CisgICAgfQor
fQorCitzdGF0aWMgdm9pZCByZWdpc3RlclBsdWdpblJlcGxhY2VtZW50KGNvbnN0IFJlcGxhY2Vt
ZW50UGx1Z2luJik7CisKK3N0YXRpYyBWZWN0b3I8UmVwbGFjZW1lbnRQbHVnaW4qPiYgcmVnaXN0
ZXJlZFBsdWdpblJlcGxhY2VtZW50cygpCit7CisgICAgREVGSU5FX1NUQVRJQ19MT0NBTChWZWN0
b3I8UmVwbGFjZW1lbnRQbHVnaW4qPiwgcmVnaXN0ZXJlZFJlcGxhY2VtZW50cywgKCkpOworICAg
IHN0YXRpYyBib29sIGVuZ2luZXNRdWVyaWVkID0gZmFsc2U7CisgICAgCisgICAgaWYgKGVuZ2lu
ZXNRdWVyaWVkKQorICAgICAgICByZXR1cm4gcmVnaXN0ZXJlZFJlcGxhY2VtZW50czsKKyAgICBl
bmdpbmVzUXVlcmllZCA9IHRydWU7CisKKyNpZiBQTEFURk9STShNQUMpCisgICAgUXVpY2tUaW1l
UGx1Z2luUmVwbGFjZW1lbnQ6OnJlZ2lzdGVyUGx1Z2luUmVwbGFjZW1lbnQocmVnaXN0ZXJQbHVn
aW5SZXBsYWNlbWVudCk7CisjZW5kaWYKKyAgICAKKyAgICByZXR1cm4gcmVnaXN0ZXJlZFJlcGxh
Y2VtZW50czsKK30KKworc3RhdGljIHZvaWQgcmVnaXN0ZXJQbHVnaW5SZXBsYWNlbWVudChjb25z
dCBSZXBsYWNlbWVudFBsdWdpbiYgcmVwbGFjZW1lbnQpCit7CisgICAgcmVnaXN0ZXJlZFBsdWdp
blJlcGxhY2VtZW50cygpLmFwcGVuZChuZXcgUmVwbGFjZW1lbnRQbHVnaW4ocmVwbGFjZW1lbnQp
KTsKK30KKworc3RhdGljIFJlcGxhY2VtZW50UGx1Z2luKiBwbHVnaW5SZXBsYWNlbWVudEZvclR5
cGUoY29uc3QgVVJMJiB1cmwsIGNvbnN0IFN0cmluZyYgbWltZVR5cGUpCit7CisgICAgVmVjdG9y
PFJlcGxhY2VtZW50UGx1Z2luKj4mIHJlcGxhY2VtZW50cyA9IHJlZ2lzdGVyZWRQbHVnaW5SZXBs
YWNlbWVudHMoKTsKKyAgICBpZiAocmVwbGFjZW1lbnRzLmlzRW1wdHkoKSkKKyAgICAgICAgcmV0
dXJuIG51bGxwdHI7CisKKyAgICBTdHJpbmcgZXh0ZW5zaW9uOworICAgIFN0cmluZyBsYXN0UGF0
aENvbXBvbmVudCA9IHVybC5sYXN0UGF0aENvbXBvbmVudCgpOworICAgIHNpemVfdCBkb3RPZmZz
ZXQgPSBsYXN0UGF0aENvbXBvbmVudC5yZXZlcnNlRmluZCgnLicpOworICAgIGlmIChkb3RPZmZz
ZXQgIT0gbm90Rm91bmQpCisgICAgICAgIGV4dGVuc2lvbiA9IGxhc3RQYXRoQ29tcG9uZW50LnN1
YnN0cmluZyhkb3RPZmZzZXQgKyAxKTsKKworICAgIFN0cmluZyB0eXBlID0gbWltZVR5cGU7Cisg
ICAgaWYgKHR5cGUuaXNFbXB0eSgpICYmIHVybC5wcm90b2NvbElzRGF0YSgpKQorICAgICAgICB0
eXBlID0gbWltZVR5cGVGcm9tRGF0YVVSTCh1cmwuc3RyaW5nKCkpOworICAgIAorICAgIGlmICh0
eXBlLmlzRW1wdHkoKSAmJiAhZXh0ZW5zaW9uLmlzRW1wdHkoKSkgeworICAgICAgICBmb3IgKHNp
emVfdCBpID0gMDsgaSA8IHJlcGxhY2VtZW50cy5zaXplKCk7IGkrKykKKyAgICAgICAgICAgIGlm
IChyZXBsYWNlbWVudHNbaV0tPnN1cHBvcnRzRmlsZUV4dGVuc2lvbihleHRlbnNpb24pKQorICAg
ICAgICAgICAgICAgIHJldHVybiByZXBsYWNlbWVudHNbaV07CisgICAgfQorICAgIAorICAgIGlm
ICh0eXBlLmlzRW1wdHkoKSkgeworICAgICAgICBpZiAoZXh0ZW5zaW9uLmlzRW1wdHkoKSkKKyAg
ICAgICAgICAgIHJldHVybiBudWxscHRyOworICAgICAgICB0eXBlID0gTUlNRVR5cGVSZWdpc3Ry
eTo6Z2V0TWVkaWFNSU1FVHlwZUZvckV4dGVuc2lvbihleHRlbnNpb24pOworICAgIH0KKworICAg
IGlmICh0eXBlLmlzRW1wdHkoKSkKKyAgICAgICAgcmV0dXJuIG51bGxwdHI7CisKKyAgICBmb3Ig
KHVuc2lnbmVkIGkgPSAwOyBpIDwgcmVwbGFjZW1lbnRzLnNpemUoKTsgaSsrKQorICAgICAgICBp
ZiAocmVwbGFjZW1lbnRzW2ldLT5zdXBwb3J0c1R5cGUodHlwZSkpCisgICAgICAgICAgICByZXR1
cm4gcmVwbGFjZW1lbnRzW2ldOworCisgICAgcmV0dXJuIG51bGxwdHI7Cit9CisKK2Jvb2wgSFRN
TFBsdWdJbkVsZW1lbnQ6OnJlcXVlc3RPYmplY3QoY29uc3QgU3RyaW5nJiB1cmwsIGNvbnN0IFN0
cmluZyYgbWltZVR5cGUsIGNvbnN0IFZlY3RvcjxTdHJpbmc+JiBwYXJhbU5hbWVzLCBjb25zdCBW
ZWN0b3I8U3RyaW5nPiYgcGFyYW1WYWx1ZXMpCit7CisgICAgaWYgKCFSdW50aW1lRW5hYmxlZEZl
YXR1cmVzOjpzaGFyZWRGZWF0dXJlcygpLnBsdWdpblJlcGxhY2VtZW50RW5hYmxlZCgpKQorICAg
ICAgICByZXR1cm4gZmFsc2U7CisKKyAgICBpZiAobV9wbHVnaW5SZXBsYWNlbWVudCkKKyAgICAg
ICAgcmV0dXJuIHRydWU7CisKKyAgICBVUkwgY29tcGxldGVkVVJMOworICAgIGlmICghdXJsLmlz
RW1wdHkoKSkKKyAgICAgICAgY29tcGxldGVkVVJMID0gZG9jdW1lbnQoKS5jb21wbGV0ZVVSTCh1
cmwpOworCisgICAgUmVwbGFjZW1lbnRQbHVnaW4qIHJlcGxhY2VtZW50ID0gcGx1Z2luUmVwbGFj
ZW1lbnRGb3JUeXBlKGNvbXBsZXRlZFVSTCwgbWltZVR5cGUpOworICAgIGlmICghcmVwbGFjZW1l
bnQpCisgICAgICAgIHJldHVybiBmYWxzZTsKKworICAgIG1fcGx1Z2luUmVwbGFjZW1lbnQgPSBy
ZXBsYWNlbWVudC0+Y3JlYXRlKCp0aGlzLCBwYXJhbU5hbWVzLCBwYXJhbVZhbHVlcyk7CisgICAg
c2V0RGlzcGxheVN0YXRlKFByZXBhcmluZ1BsdWdpblJlcGxhY2VtZW50KTsKKyAgICByZXR1cm4g
dHJ1ZTsKK30KKworSlNDOjpKU09iamVjdCogSFRNTFBsdWdJbkVsZW1lbnQ6OnNjcmlwdE9iamVj
dEZvclBsdWdpblJlcGxhY2VtZW50KCkKK3sKKyAgICBpZiAobV9wbHVnaW5SZXBsYWNlbWVudCkK
KyAgICAgICAgcmV0dXJuIG1fcGx1Z2luUmVwbGFjZW1lbnQtPnNjcmlwdE9iamVjdCgpOworICAg
IHJldHVybiBudWxscHRyOworfQorCiB9CkluZGV4OiBTb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxQ
bHVnSW5FbGVtZW50LmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MUGx1
Z0luRWxlbWVudC5oCShyZXZpc2lvbiAxNTk3MzYpCisrKyBTb3VyY2UvV2ViQ29yZS9odG1sL0hU
TUxQbHVnSW5FbGVtZW50LmgJKHdvcmtpbmcgY29weSkKQEAgLTM4LDYgKzM4LDcgQEAgY2xhc3Mg
SW5zdGFuY2U7CiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAorY2xhc3MgUGx1Z2luUmVwbGFjZW1l
bnQ7CiBjbGFzcyBSZW5kZXJFbWJlZGRlZE9iamVjdDsKIGNsYXNzIFJlbmRlcldpZGdldDsKIGNs
YXNzIFdpZGdldDsKQEAgLTU3LDE0ICs1OCwxOCBAQCBwdWJsaWM6CiAgICAgICAgIERpc3BsYXlp
bmdTbmFwc2hvdCwKICAgICAgICAgUmVzdGFydGluZywKICAgICAgICAgUmVzdGFydGluZ1dpdGhQ
ZW5kaW5nTW91c2VDbGljaywKLSAgICAgICAgUGxheWluZworICAgICAgICBQbGF5aW5nLAorICAg
ICAgICBQcmVwYXJpbmdQbHVnaW5SZXBsYWNlbWVudCwKKyAgICAgICAgRGlzcGxheWluZ1BsdWdp
blJlcGxhY2VtZW50LAogICAgIH07CiAgICAgRGlzcGxheVN0YXRlIGRpc3BsYXlTdGF0ZSgpIGNv
bnN0IHsgcmV0dXJuIG1fZGlzcGxheVN0YXRlOyB9Ci0gICAgdmlydHVhbCB2b2lkIHNldERpc3Bs
YXlTdGF0ZShEaXNwbGF5U3RhdGUgc3RhdGUpIHsgbV9kaXNwbGF5U3RhdGUgPSBzdGF0ZTsgfQor
ICAgIHZpcnR1YWwgdm9pZCBzZXREaXNwbGF5U3RhdGUoRGlzcGxheVN0YXRlKTsKICAgICB2aXJ0
dWFsIHZvaWQgdXBkYXRlU25hcHNob3QoUGFzc1JlZlB0cjxJbWFnZT4pIHsgfQogICAgIHZpcnR1
YWwgdm9pZCBkaXNwYXRjaFBlbmRpbmdNb3VzZUNsaWNrKCkgeyB9CiAgICAgdmlydHVhbCBib29s
IGlzUmVzdGFydGVkUGx1Z2luKCkgY29uc3QgeyByZXR1cm4gZmFsc2U7IH0KIAorICAgIEpTQzo6
SlNPYmplY3QqIHNjcmlwdE9iamVjdEZvclBsdWdpblJlcGxhY2VtZW50KCk7CisKICNpZiBFTkFC
TEUoTkVUU0NBUEVfUExVR0lOX0FQSSkKICAgICBOUE9iamVjdCogZ2V0TlBPYmplY3QoKTsKICNl
bmRpZgpAQCAtOTEsMTIgKzk2LDE5IEBAIHByb3RlY3RlZDoKIAogICAgIHZpcnR1YWwgdm9pZCBk
ZWZhdWx0RXZlbnRIYW5kbGVyKEV2ZW50KikgT1ZFUlJJREU7CiAKKyAgICB2aXJ0dWFsIGJvb2wg
cmVxdWVzdE9iamVjdChjb25zdCBTdHJpbmcmIHVybCwgY29uc3QgU3RyaW5nJiBtaW1lVHlwZSwg
Y29uc3QgVmVjdG9yPFN0cmluZz4mIHBhcmFtTmFtZXMsIGNvbnN0IFZlY3RvcjxTdHJpbmc+JiBw
YXJhbVZhbHVlcyk7CisgICAgdmlydHVhbCBSZW5kZXJFbGVtZW50KiBjcmVhdGVSZW5kZXJlcihQ
YXNzUmVmPFJlbmRlclN0eWxlPikgT1ZFUlJJREU7CisgICAgdmlydHVhbCB2b2lkIGRpZEFkZFVz
ZXJBZ2VudFNoYWRvd1Jvb3QoU2hhZG93Um9vdCopIE9WRVJSSURFOworCiAgICAgLy8gU3ViY2xh
c3NlcyBzaG91bGQgdXNlIGd1YXJkZWREaXNwYXRjaEJlZm9yZUxvYWRFdmVudCBpbnN0ZWFkIG9m
IGNhbGxpbmcgZGlzcGF0Y2hCZWZvcmVMb2FkRXZlbnQgZGlyZWN0bHkuCiAgICAgYm9vbCBndWFy
ZGVkRGlzcGF0Y2hCZWZvcmVMb2FkRXZlbnQoY29uc3QgU3RyaW5nJiBzb3VyY2VVUkwpOwogCiAg
ICAgYm9vbCBtX2luQmVmb3JlTG9hZEV2ZW50SGFuZGxlcjsKIAogcHJpdmF0ZToKKyAgICB2b2lk
IHN3YXBSZW5kZXJlclRpbWVyRmlyZWQoVGltZXI8SFRNTFBsdWdJbkVsZW1lbnQ+Kik7CisgICAg
Ym9vbCBzaG91bGRPdmVycmlkZVBsdWdpbihjb25zdCBTdHJpbmcmIHVybCwgY29uc3QgU3RyaW5n
JiBtaW1lVHlwZSk7CisKICAgICBib29sIGRpc3BhdGNoQmVmb3JlTG9hZEV2ZW50KGNvbnN0IFN0
cmluZyYgc291cmNlVVJMKTsgLy8gTm90IGltcGxlbWVudGVkLCBnZW5lcmF0ZXMgYSBjb21waWxl
IGVycm9yIGlmIHN1YmNsYXNzZXMgY2FsbCB0aGlzIGJ5IG1pc3Rha2UuCiAKICAgICB2aXJ0dWFs
IGJvb2wgYXJlQXV0aG9yU2hhZG93c0FsbG93ZWQoKSBjb25zdCBPVkVSUklERSB7IHJldHVybiBm
YWxzZTsgfQpAQCAtMTA5LDYgKzEyMSw4IEBAIHByaXZhdGU6CiAgICAgdmlydHVhbCBib29sIGlz
UGx1Z2luRWxlbWVudCgpIGNvbnN0IE9WRVJSSURFIEZJTkFMOwogCiAgICAgUmVmUHRyPEpTQzo6
QmluZGluZ3M6Okluc3RhbmNlPiBtX2luc3RhbmNlOworICAgIFRpbWVyPEhUTUxQbHVnSW5FbGVt
ZW50PiBtX3N3YXBSZW5kZXJlclRpbWVyOworICAgIFJlZlB0cjxQbHVnaW5SZXBsYWNlbWVudD4g
bV9wbHVnaW5SZXBsYWNlbWVudDsKICNpZiBFTkFCTEUoTkVUU0NBUEVfUExVR0lOX0FQSSkKICAg
ICBOUE9iamVjdCogbV9OUE9iamVjdDsKICNlbmRpZgpJbmRleDogU291cmNlL1dlYkNvcmUvaHRt
bC9IVE1MUGx1Z0luSW1hZ2VFbGVtZW50LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29y
ZS9odG1sL0hUTUxQbHVnSW5JbWFnZUVsZW1lbnQuY3BwCShyZXZpc2lvbiAxNTk3MzYpCisrKyBT
b3VyY2UvV2ViQ29yZS9odG1sL0hUTUxQbHVnSW5JbWFnZUVsZW1lbnQuY3BwCSh3b3JraW5nIGNv
cHkpCkBAIC0xMDgsNyArMTA4LDYgQEAgSFRNTFBsdWdJbkltYWdlRWxlbWVudDo6SFRNTFBsdWdJ
bkltYWdlRQogICAgICwgbV9zaG91bGRQcmVmZXJQbHVnSW5zRm9ySW1hZ2VzKHByZWZlclBsdWdJ
bnNGb3JJbWFnZXNPcHRpb24gPT0gU2hvdWxkUHJlZmVyUGx1Z0luc0ZvckltYWdlcykKICAgICAs
IG1fbmVlZHNEb2N1bWVudEFjdGl2YXRpb25DYWxsYmFja3MoZmFsc2UpCiAgICAgLCBtX3NpbXVs
YXRlZE1vdXNlQ2xpY2tUaW1lcih0aGlzLCAmSFRNTFBsdWdJbkltYWdlRWxlbWVudDo6c2ltdWxh
dGVkTW91c2VDbGlja1RpbWVyRmlyZWQsIHNpbXVsYXRlZE1vdXNlQ2xpY2tUaW1lckRlbGF5KQot
ICAgICwgbV9zd2FwUmVuZGVyZXJUaW1lcih0aGlzLCAmSFRNTFBsdWdJbkltYWdlRWxlbWVudDo6
c3dhcFJlbmRlcmVyVGltZXJGaXJlZCkKICAgICAsIG1fcmVtb3ZlU25hcHNob3RUaW1lcih0aGlz
LCAmSFRNTFBsdWdJbkltYWdlRWxlbWVudDo6cmVtb3ZlU25hcHNob3RUaW1lckZpcmVkKQogICAg
ICwgbV9jcmVhdGVkRHVyaW5nVXNlckdlc3R1cmUoU2NyaXB0Q29udHJvbGxlcjo6cHJvY2Vzc2lu
Z1VzZXJHZXN0dXJlKCkpCiAgICAgLCBtX2lzUmVzdGFydGVkUGx1Z2luKGZhbHNlKQpAQCAtMTM5
LDkgKzEzOCw2IEBAIHZvaWQgSFRNTFBsdWdJbkltYWdlRWxlbWVudDo6c2V0RGlzcGxheVMKICNl
bmRpZgogCiAgICAgSFRNTFBsdWdJbkVsZW1lbnQ6OnNldERpc3BsYXlTdGF0ZShzdGF0ZSk7Ci0K
LSAgICBpZiAoc3RhdGUgPT0gRGlzcGxheWluZ1NuYXBzaG90KQotICAgICAgICBtX3N3YXBSZW5k
ZXJlclRpbWVyLnN0YXJ0T25lU2hvdCgwKTsKIH0KIAogUmVuZGVyRW1iZWRkZWRPYmplY3QqIEhU
TUxQbHVnSW5JbWFnZUVsZW1lbnQ6OnJlbmRlckVtYmVkZGVkT2JqZWN0KCkgY29uc3QKQEAgLTE5
Niw2ICsxOTIsOSBAQCBib29sIEhUTUxQbHVnSW5JbWFnZUVsZW1lbnQ6OndvdWxkTG9hZEFzCiAK
IFJlbmRlckVsZW1lbnQqIEhUTUxQbHVnSW5JbWFnZUVsZW1lbnQ6OmNyZWF0ZVJlbmRlcmVyKFBh
c3NSZWY8UmVuZGVyU3R5bGU+IHN0eWxlKQogeworICAgIGlmIChkaXNwbGF5U3RhdGUoKSA+PSBQ
cmVwYXJpbmdQbHVnaW5SZXBsYWNlbWVudCkKKyAgICAgICAgcmV0dXJuIEhUTUxQbHVnSW5FbGVt
ZW50OjpjcmVhdGVSZW5kZXJlcihzdGQ6Om1vdmUoc3R5bGUpKTsKKwogICAgIC8vIE9uY2UgYSBQ
bHVnSW4gRWxlbWVudCBjcmVhdGVzIGl0cyByZW5kZXJlciwgaXQgbmVlZHMgdG8gYmUgdG9sZCB3
aGVuIHRoZSBEb2N1bWVudCBnb2VzCiAgICAgLy8gaW5hY3RpdmUgb3IgcmVhY3RpdmF0ZXMgc28g
aXQgY2FuIGNsZWFyIHRoZSByZW5kZXJlciBiZWZvcmUgZ29pbmcgaW50byB0aGUgcGFnZSBjYWNo
ZS4KICAgICBpZiAoIW1fbmVlZHNEb2N1bWVudEFjdGl2YXRpb25DYWxsYmFja3MpIHsKQEAgLTIy
MSw3ICsyMjAsNyBAQCBSZW5kZXJFbGVtZW50KiBIVE1MUGx1Z0luSW1hZ2VFbGVtZW50OjpjCiAg
ICAgICAgIHJldHVybiBpbWFnZTsKICAgICB9CiAKLSAgICByZXR1cm4gbmV3IFJlbmRlckVtYmVk
ZGVkT2JqZWN0KCp0aGlzLCBzdGQ6Om1vdmUoc3R5bGUpKTsKKyAgICByZXR1cm4gSFRNTFBsdWdJ
bkVsZW1lbnQ6OmNyZWF0ZVJlbmRlcmVyKHN0ZDo6bW92ZShzdHlsZSkpOwogfQogCiBib29sIEhU
TUxQbHVnSW5JbWFnZUVsZW1lbnQ6OndpbGxSZWNhbGNTdHlsZShTdHlsZTo6Q2hhbmdlKQpAQCAt
MzYzLDggKzM2MiwxMiBAQCBzdGF0aWMgRE9NV3JhcHBlcldvcmxkJiBwbHVnSW5JbWFnZUVsZW1l
CiAKIHZvaWQgSFRNTFBsdWdJbkltYWdlRWxlbWVudDo6ZGlkQWRkVXNlckFnZW50U2hhZG93Um9v
dChTaGFkb3dSb290KiByb290KQogeworICAgIEhUTUxQbHVnSW5FbGVtZW50OjpkaWRBZGRVc2Vy
QWdlbnRTaGFkb3dSb290KHJvb3QpOworICAgIGlmIChkaXNwbGF5U3RhdGUoKSA+PSBQcmVwYXJp
bmdQbHVnaW5SZXBsYWNlbWVudCkKKyAgICAgICAgcmV0dXJuOworCiAgICAgUGFnZSogcGFnZSA9
IGRvY3VtZW50KCkucGFnZSgpOwotICAgIGlmICghcGFnZSkKKyAgICBpZiAocGFnZSkKICAgICAg
ICAgcmV0dXJuOwogCiAgICAgLy8gUmVzZXQgYW55IGF1dGhvciBzdHlsZXMgdGhhdCBtYXkgYXBw
bHkgYXMgd2Ugb25seSB3YW50IGV4cGxpY2l0CkBAIC00MDksMTcgKzQxMiw2IEBAIGJvb2wgSFRN
TFBsdWdJbkltYWdlRWxlbWVudDo6cGFydE9mU25hcHMKICAgICByZXR1cm4gbm9kZSAmJiBzbmFw
c2hvdExhYmVsICYmIChub2RlID09IHNuYXBzaG90TGFiZWwuZ2V0KCkgfHwgbm9kZS0+aXNEZXNj
ZW5kYW50T2Yoc25hcHNob3RMYWJlbC5nZXQoKSkpOwogfQogCi12b2lkIEhUTUxQbHVnSW5JbWFn
ZUVsZW1lbnQ6OnN3YXBSZW5kZXJlclRpbWVyRmlyZWQoVGltZXI8SFRNTFBsdWdJbkltYWdlRWxl
bWVudD4qKQotewotICAgIEFTU0VSVChkaXNwbGF5U3RhdGUoKSA9PSBEaXNwbGF5aW5nU25hcHNo
b3QpOwotICAgIGlmICh1c2VyQWdlbnRTaGFkb3dSb290KCkpCi0gICAgICAgIHJldHVybjsKLQot
ICAgIC8vIENyZWF0ZSBhIHNoYWRvdyByb290LCB3aGljaCB3aWxsIHRyaWdnZXIgdGhlIGNvZGUg
dG8gYWRkIGEgc25hcHNob3QgY29udGFpbmVyCi0gICAgLy8gYW5kIHJlYXR0YWNoLCB0aHVzIG1h
a2luZyBhIG5ldyBSZW5kZXJlci4KLSAgICBlbnN1cmVVc2VyQWdlbnRTaGFkb3dSb290KCk7Ci19
Ci0KIHZvaWQgSFRNTFBsdWdJbkltYWdlRWxlbWVudDo6cmVtb3ZlU25hcHNob3RUaW1lckZpcmVk
KFRpbWVyPEhUTUxQbHVnSW5JbWFnZUVsZW1lbnQ+KikKIHsKICAgICBtX3NuYXBzaG90SW1hZ2Ug
PSBudWxscHRyOwpAQCAtNDk2LDcgKzQ4OCw3IEBAIHZvaWQgSFRNTFBsdWdJbkltYWdlRWxlbWVu
dDo6dXNlckRpZENsaWMKICAgICBMT0coUGx1Z2lucywgIiVwIFVzZXIgY2xpY2tlZCBvbiBzbmFw
c2hvdHRlZCBwbHVnLWluLiBSZXN0YXJ0LiIsIHRoaXMpOwogICAgIHJlc3RhcnRTbmFwc2hvdHRl
ZFBsdWdJbigpOwogICAgIGlmIChmb3J3YXJkRXZlbnQpCi0gICAgICAgIHNldERpc3BsYXlTdGF0
ZShIVE1MUGx1Z0luRWxlbWVudDo6UmVzdGFydGluZ1dpdGhQZW5kaW5nTW91c2VDbGljayk7Cisg
ICAgICAgIHNldERpc3BsYXlTdGF0ZShSZXN0YXJ0aW5nV2l0aFBlbmRpbmdNb3VzZUNsaWNrKTsK
ICAgICByZXN0YXJ0U2ltaWxhclBsdWdJbnMoKTsKIH0KIApAQCAtNzMyLDQgKzcyNCwxMyBAQCB2
b2lkIEhUTUxQbHVnSW5JbWFnZUVsZW1lbnQ6OmRlZmF1bHRFdmVuCiAgICAgSFRNTFBsdWdJbkVs
ZW1lbnQ6OmRlZmF1bHRFdmVudEhhbmRsZXIoZXZlbnQpOwogfQogCitib29sIEhUTUxQbHVnSW5J
bWFnZUVsZW1lbnQ6OnJlcXVlc3RPYmplY3QoY29uc3QgU3RyaW5nJiB1cmwsIGNvbnN0IFN0cmlu
ZyYgbWltZVR5cGUsIGNvbnN0IFZlY3RvcjxTdHJpbmc+JiBwYXJhbU5hbWVzLCBjb25zdCBWZWN0
b3I8U3RyaW5nPiYgcGFyYW1WYWx1ZXMpCit7CisgICAgaWYgKEhUTUxQbHVnSW5FbGVtZW50Ojpy
ZXF1ZXN0T2JqZWN0KHVybCwgbWltZVR5cGUsIHBhcmFtTmFtZXMsIHBhcmFtVmFsdWVzKSkKKyAg
ICAgICAgcmV0dXJuIHRydWU7CisgICAgCisgICAgU3ViZnJhbWVMb2FkZXImIGxvYWRlciA9IGRv
Y3VtZW50KCkuZnJhbWUoKS0+bG9hZGVyKCkuc3ViZnJhbWVMb2FkZXIoKTsKKyAgICByZXR1cm4g
bG9hZGVyLnJlcXVlc3RPYmplY3QoKnRoaXMsIHVybCwgZ2V0TmFtZUF0dHJpYnV0ZSgpLCBtaW1l
VHlwZSwgcGFyYW1OYW1lcywgcGFyYW1WYWx1ZXMpOworfQorCiB9IC8vIG5hbWVzcGFjZSBXZWJD
b3JlCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxQbHVnSW5JbWFnZUVsZW1lbnQuaAo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxQbHVnSW5JbWFnZUVsZW1lbnQu
aAkocmV2aXNpb24gMTU5NzM2KQorKysgU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MUGx1Z0luSW1h
Z2VFbGVtZW50LmgJKHdvcmtpbmcgY29weSkKQEAgLTI5LDYgKzI5LDcgQEAKIG5hbWVzcGFjZSBX
ZWJDb3JlIHsKIAogY2xhc3MgSFRNTEltYWdlTG9hZGVyOworY2xhc3MgSFRNTFZpZGVvRWxlbWVu
dDsKIGNsYXNzIEZyYW1lTG9hZGVyOwogY2xhc3MgSW1hZ2U7CiBjbGFzcyBNb3VzZUV2ZW50OwpA
QCAtMTIzLDYgKzEyNCw3IEBAIHByb3RlY3RlZDoKICAgICB2aXJ0dWFsIFBhc3NSZWZQdHI8UmVu
ZGVyU3R5bGU+IGN1c3RvbVN0eWxlRm9yUmVuZGVyZXIoKSBPVkVSUklERTsKIAogICAgIHZpcnR1
YWwgYm9vbCBpc1Jlc3RhcnRlZFBsdWdpbigpIGNvbnN0IE9WRVJSSURFIHsgcmV0dXJuIG1faXNS
ZXN0YXJ0ZWRQbHVnaW47IH0KKyAgICB2aXJ0dWFsIGJvb2wgcmVxdWVzdE9iamVjdChjb25zdCBT
dHJpbmcmIHVybCwgY29uc3QgU3RyaW5nJiBtaW1lVHlwZSwgY29uc3QgVmVjdG9yPFN0cmluZz4m
IHBhcmFtTmFtZXMsIGNvbnN0IFZlY3RvcjxTdHJpbmc+JiBwYXJhbVZhbHVlcykgT1ZFUlJJREU7
CiAKIHByaXZhdGU6CiAgICAgdmlydHVhbCBSZW5kZXJFbGVtZW50KiBjcmVhdGVSZW5kZXJlcihQ
YXNzUmVmPFJlbmRlclN0eWxlPikgT1ZFUlJJREU7CkBAIC0xMzgsOCArMTQwLDYgQEAgcHJpdmF0
ZToKICAgICB2aXJ0dWFsIHZvaWQgZGlzcGF0Y2hQZW5kaW5nTW91c2VDbGljaygpIE9WRVJSSURF
OwogICAgIHZvaWQgc2ltdWxhdGVkTW91c2VDbGlja1RpbWVyRmlyZWQoRGVmZXJyYWJsZU9uZVNo
b3RUaW1lcjxIVE1MUGx1Z0luSW1hZ2VFbGVtZW50PiopOwogCi0gICAgdm9pZCBzd2FwUmVuZGVy
ZXJUaW1lckZpcmVkKFRpbWVyPEhUTUxQbHVnSW5JbWFnZUVsZW1lbnQ+Kik7Ci0KICAgICB2b2lk
IHJlc3RhcnRTaW1pbGFyUGx1Z0lucygpOwogCiAgICAgdmlydHVhbCBib29sIGlzUGx1Z0luSW1h
Z2VFbGVtZW50KCkgY29uc3QgT1ZFUlJJREUgeyByZXR1cm4gdHJ1ZTsgfQpAQCAtMTU0LDcgKzE1
NCw2IEBAIHByaXZhdGU6CiAgICAgUmVmUHRyPFJlbmRlclN0eWxlPiBtX2N1c3RvbVN0eWxlRm9y
UGFnZUNhY2hlOwogICAgIFJlZlB0cjxNb3VzZUV2ZW50PiBtX3BlbmRpbmdDbGlja0V2ZW50RnJv
bVNuYXBzaG90OwogICAgIERlZmVycmFibGVPbmVTaG90VGltZXI8SFRNTFBsdWdJbkltYWdlRWxl
bWVudD4gbV9zaW11bGF0ZWRNb3VzZUNsaWNrVGltZXI7Ci0gICAgVGltZXI8SFRNTFBsdWdJbklt
YWdlRWxlbWVudD4gbV9zd2FwUmVuZGVyZXJUaW1lcjsKICAgICBUaW1lcjxIVE1MUGx1Z0luSW1h
Z2VFbGVtZW50PiBtX3JlbW92ZVNuYXBzaG90VGltZXI7CiAgICAgUmVmUHRyPEltYWdlPiBtX3Nu
YXBzaG90SW1hZ2U7CiAgICAgYm9vbCBtX2NyZWF0ZWREdXJpbmdVc2VyR2VzdHVyZTsKSW5kZXg6
IFNvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTFZpZGVvRWxlbWVudC5oCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNv
dXJjZS9XZWJDb3JlL2h0bWwvSFRNTFZpZGVvRWxlbWVudC5oCShyZXZpc2lvbiAxNTk3MzYpCisr
KyBTb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxWaWRlb0VsZW1lbnQuaAkod29ya2luZyBjb3B5KQpA
QCAtNzIsMTIgKzcyLDEyIEBAIHB1YmxpYzoKICAgICBib29sIHNob3VsZERpc3BsYXlQb3N0ZXJJ
bWFnZSgpIGNvbnN0IHsgcmV0dXJuIGRpc3BsYXlNb2RlKCkgPT0gUG9zdGVyIHx8IGRpc3BsYXlN
b2RlKCkgPT0gUG9zdGVyV2FpdGluZ0ZvclZpZGVvOyB9CiAKICAgICBVUkwgcG9zdGVySW1hZ2VV
UkwoKSBjb25zdDsKKyAgICB2aXJ0dWFsIFJlbmRlckVsZW1lbnQqIGNyZWF0ZVJlbmRlcmVyKFBh
c3NSZWY8UmVuZGVyU3R5bGU+KSBPVkVSUklERTsKIAogcHJpdmF0ZToKICAgICBIVE1MVmlkZW9F
bGVtZW50KGNvbnN0IFF1YWxpZmllZE5hbWUmLCBEb2N1bWVudCYsIGJvb2wpOwogCiAgICAgdmly
dHVhbCBib29sIHJlbmRlcmVySXNOZWVkZWQoY29uc3QgUmVuZGVyU3R5bGUmKSBPVkVSUklERTsK
LSAgICB2aXJ0dWFsIFJlbmRlckVsZW1lbnQqIGNyZWF0ZVJlbmRlcmVyKFBhc3NSZWY8UmVuZGVy
U3R5bGU+KSBPVkVSUklERTsKICAgICB2aXJ0dWFsIHZvaWQgZGlkQXR0YWNoUmVuZGVyZXJzKCkg
T1ZFUlJJREU7CiAgICAgdmlydHVhbCB2b2lkIHBhcnNlQXR0cmlidXRlKGNvbnN0IFF1YWxpZmll
ZE5hbWUmLCBjb25zdCBBdG9taWNTdHJpbmcmKSBPVkVSUklERTsKICAgICB2aXJ0dWFsIGJvb2wg
aXNQcmVzZW50YXRpb25BdHRyaWJ1dGUoY29uc3QgUXVhbGlmaWVkTmFtZSYpIGNvbnN0IE9WRVJS
SURFOwpJbmRleDogU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvTWVkaWFQbGF5ZXIu
Y3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL01lZGlh
UGxheWVyLmNwcAkocmV2aXNpb24gMTU5NzM2KQorKysgU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
Z3JhcGhpY3MvTWVkaWFQbGF5ZXIuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0xMjI1LDYgKzEyMjUs
MTQgQEAgc2l6ZV90IE1lZGlhUGxheWVyOjpleHRyYU1lbW9yeUNvc3QoKSBjbwogICAgIHJldHVy
biBtX3ByaXZhdGUtPmV4dHJhTWVtb3J5Q29zdCgpOwogfQogCit1bnNpZ25lZCBsb25nIGxvbmcg
TWVkaWFQbGF5ZXI6OmZpbGVTaXplKCkgY29uc3QKK3sKKyAgICBpZiAoIW1fcHJpdmF0ZSkKKyAg
ICAgICAgcmV0dXJuIDA7CisgICAgCisgICAgcmV0dXJuIG1fcHJpdmF0ZS0+ZmlsZVNpemUoKTsK
K30KKwogdm9pZCBNZWRpYVBsYXllckZhY3RvcnlTdXBwb3J0OjpjYWxsUmVnaXN0ZXJNZWRpYUVu
Z2luZShNZWRpYUVuZ2luZVJlZ2lzdGVyIHJlZ2lzdGVyTWVkaWFFbmdpbmUpCiB7CiAgICAgcmVn
aXN0ZXJNZWRpYUVuZ2luZShhZGRNZWRpYUVuZ2luZSk7CkluZGV4OiBTb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9ncmFwaGljcy9NZWRpYVBsYXllci5oCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL2dyYXBoaWNzL01lZGlhUGxheWVyLmgJKHJldmlzaW9uIDE1OTczNikKKysr
IFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL01lZGlhUGxheWVyLmgJKHdvcmtpbmcg
Y29weSkKQEAgLTUwOCw2ICs1MDgsOCBAQCBwdWJsaWM6CiAKICAgICBzaXplX3QgZXh0cmFNZW1v
cnlDb3N0KCkgY29uc3Q7CiAKKyAgICB1bnNpZ25lZCBsb25nIGxvbmcgZmlsZVNpemUoKSBjb25z
dDsKKwogcHJpdmF0ZToKICAgICBNZWRpYVBsYXllcihNZWRpYVBsYXllckNsaWVudCopOwogICAg
IE1lZGlhUGxheWVyRmFjdG9yeSogbmV4dEJlc3RNZWRpYUVuZ2luZShNZWRpYVBsYXllckZhY3Rv
cnkqKSBjb25zdDsKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL01lZGlh
UGxheWVyUHJpdmF0ZS5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dy
YXBoaWNzL01lZGlhUGxheWVyUHJpdmF0ZS5oCShyZXZpc2lvbiAxNTk3MzYpCisrKyBTb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9NZWRpYVBsYXllclByaXZhdGUuaAkod29ya2luZyBj
b3B5KQpAQCAtMjEzLDYgKzIxMyw4IEBAIHB1YmxpYzoKICAgICB2aXJ0dWFsIFN0cmluZyBsYW5n
dWFnZU9mUHJpbWFyeUF1ZGlvVHJhY2soKSBjb25zdCB7IHJldHVybiBlbXB0eVN0cmluZygpOyB9
CiAKICAgICB2aXJ0dWFsIHNpemVfdCBleHRyYU1lbW9yeUNvc3QoKSBjb25zdCB7IHJldHVybiAw
OyB9CisgICAgCisgICAgdmlydHVhbCB1bnNpZ25lZCBsb25nIGxvbmcgZmlsZVNpemUoKSBjb25z
dCB7IHJldHVybiAwOyB9CiB9OwogCiB9CkluZGV4OiBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9n
cmFwaGljcy9hdmZvdW5kYXRpb24vTWVkaWFQbGF5ZXJQcml2YXRlQVZGb3VuZGF0aW9uLmNwcAo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9hdmZvdW5kYXRp
b24vTWVkaWFQbGF5ZXJQcml2YXRlQVZGb3VuZGF0aW9uLmNwcAkocmV2aXNpb24gMTU5NzM2KQor
KysgU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvYXZmb3VuZGF0aW9uL01lZGlhUGxh
eWVyUHJpdmF0ZUFWRm91bmRhdGlvbi5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTkyMSw3ICs5MjEs
OCBAQCBzaXplX3QgTWVkaWFQbGF5ZXJQcml2YXRlQVZGb3VuZGF0aW9uOjplCiAgICAgaWYgKCFk
dXJhdGlvbikKICAgICAgICAgcmV0dXJuIDA7CiAKLSAgICByZXR1cm4gdG90YWxCeXRlcygpICog
YnVmZmVyZWQoKS0+dG90YWxEdXJhdGlvbigpIC8gZHVyYXRpb247CisgICAgdW5zaWduZWQgbG9u
ZyBsb25nIGV4dHJhID0gdG90YWxCeXRlcygpICogYnVmZmVyZWQoKS0+dG90YWxEdXJhdGlvbigp
IC8gZHVyYXRpb247CisgICAgcmV0dXJuIHN0YXRpY19jYXN0PHVuc2lnbmVkPihleHRyYSk7CiB9
CiAKIHZvaWQgTWVkaWFQbGF5ZXJQcml2YXRlQVZGb3VuZGF0aW9uOjpjbGVhclRleHRUcmFja3Mo
KQpJbmRleDogU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvYXZmb3VuZGF0aW9uL01l
ZGlhUGxheWVyUHJpdmF0ZUFWRm91bmRhdGlvbi5oCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL2dyYXBoaWNzL2F2Zm91bmRhdGlvbi9NZWRpYVBsYXllclByaXZhdGVBVkZv
dW5kYXRpb24uaAkocmV2aXNpb24gMTU5NzM2KQorKysgU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
Z3JhcGhpY3MvYXZmb3VuZGF0aW9uL01lZGlhUGxheWVyUHJpdmF0ZUFWRm91bmRhdGlvbi5oCSh3
b3JraW5nIGNvcHkpCkBAIC0xOTAsNiArMTkwLDcgQEAgcHJvdGVjdGVkOgogCiAgICAgdmlydHVh
bCBib29sIHN1cHBvcnRzRnVsbHNjcmVlbigpIGNvbnN0OwogICAgIHZpcnR1YWwgYm9vbCBzdXBw
b3J0c1NjYW5uaW5nKCkgY29uc3QgeyByZXR1cm4gdHJ1ZTsgfQorICAgIHVuc2lnbmVkIGxvbmcg
bG9uZyBmaWxlU2l6ZSgpIGNvbnN0IHsgcmV0dXJuIHRvdGFsQnl0ZXMoKTsgfQogCiAgICAgLy8g
UmVxdWlyZWQgaW50ZXJmYWNlcyBmb3IgY29uY3JldGUgZGVyaXZlZCBjbGFzc2VzLgogICAgIHZp
cnR1YWwgdm9pZCBjcmVhdGVBVkFzc2V0Rm9yVVJMKGNvbnN0IFN0cmluZyYpID0gMDsKQEAgLTIy
NSw3ICsyMjYsNyBAQCBwcm90ZWN0ZWQ6CiAgICAgdmlydHVhbCB2b2lkIHVwZGF0ZVJhdGUoKSA9
IDA7CiAgICAgdmlydHVhbCBmbG9hdCByYXRlKCkgY29uc3QgPSAwOwogICAgIHZpcnR1YWwgdm9p
ZCBzZWVrVG9UaW1lKGRvdWJsZSB0aW1lLCBkb3VibGUgbmVnYXRpdmVUb2xlcmFuY2UsIGRvdWJs
ZSBwb3NpdGl2ZVRvbGVyYW5jZSkgPSAwOwotICAgIHZpcnR1YWwgdW5zaWduZWQgdG90YWxCeXRl
cygpIGNvbnN0ID0gMDsKKyAgICB2aXJ0dWFsIHVuc2lnbmVkIGxvbmcgbG9uZyB0b3RhbEJ5dGVz
KCkgY29uc3QgPSAwOwogICAgIHZpcnR1YWwgUGFzc1JlZlB0cjxUaW1lUmFuZ2VzPiBwbGF0Zm9y
bUJ1ZmZlcmVkVGltZVJhbmdlcygpIGNvbnN0ID0gMDsKICAgICB2aXJ0dWFsIGRvdWJsZSBwbGF0
Zm9ybU1heFRpbWVTZWVrYWJsZSgpIGNvbnN0ID0gMDsKICAgICB2aXJ0dWFsIGRvdWJsZSBwbGF0
Zm9ybU1pblRpbWVTZWVrYWJsZSgpIGNvbnN0ID0gMDsKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2dyYXBoaWNzL2F2Zm91bmRhdGlvbi9jZi9NZWRpYVBsYXllclByaXZhdGVBVkZvdW5k
YXRpb25DRi5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhp
Y3MvYXZmb3VuZGF0aW9uL2NmL01lZGlhUGxheWVyUHJpdmF0ZUFWRm91bmRhdGlvbkNGLmNwcAko
cmV2aXNpb24gMTU5NzM2KQorKysgU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvYXZm
b3VuZGF0aW9uL2NmL01lZGlhUGxheWVyUHJpdmF0ZUFWRm91bmRhdGlvbkNGLmNwcAkod29ya2lu
ZyBjb3B5KQpAQCAtNzIxLDcgKzcyMSw3IEBAIGZsb2F0IE1lZGlhUGxheWVyUHJpdmF0ZUFWRm91
bmRhdGlvbkNGOjoKICAgICByZXR1cm4gbWF4VGltZUxvYWRlZDsgICAKIH0KIAotdW5zaWduZWQg
TWVkaWFQbGF5ZXJQcml2YXRlQVZGb3VuZGF0aW9uQ0Y6OnRvdGFsQnl0ZXMoKSBjb25zdAordW5z
aWduZWQgbG9uZyBsb25nIE1lZGlhUGxheWVyUHJpdmF0ZUFWRm91bmRhdGlvbkNGOjp0b3RhbEJ5
dGVzKCkgY29uc3QKIHsKICAgICBpZiAoIW1ldGFEYXRhQXZhaWxhYmxlKCkgfHwgIWF2QXNzZXQo
bV9hdmZXcmFwcGVyKSkKICAgICAgICAgcmV0dXJuIDA7CkBAIC03MzQsOCArNzM0LDcgQEAgdW5z
aWduZWQgTWVkaWFQbGF5ZXJQcml2YXRlQVZGb3VuZGF0aW9uQwogICAgICAgICB0b3RhbE1lZGlh
U2l6ZSArPSBBVkNGQXNzZXRUcmFja0dldFRvdGFsU2FtcGxlRGF0YUxlbmd0aChhc3NldFRyYWNr
KTsKICAgICB9CiAKLSAgICAvLyBGSVhNRTogSXQgZG9lc24ndCBzZWVtIHNhZmUgdG8gY2FzdCBh
biBpbnQ2NF90IHRvIHVuc2lnbmVkLgotICAgIHJldHVybiBzdGF0aWNfY2FzdDx1bnNpZ25lZD4o
dG90YWxNZWRpYVNpemUpOworICAgIHJldHVybiBzdGF0aWNfY2FzdDx1bnNpZ25lZCBsb25nIGxv
bmc+KHRvdGFsTWVkaWFTaXplKTsKIH0KIAogTWVkaWFQbGF5ZXJQcml2YXRlQVZGb3VuZGF0aW9u
OjpBc3NldFN0YXR1cyBNZWRpYVBsYXllclByaXZhdGVBVkZvdW5kYXRpb25DRjo6YXNzZXRTdGF0
dXMoKSBjb25zdApJbmRleDogU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvYXZmb3Vu
ZGF0aW9uL2NmL01lZGlhUGxheWVyUHJpdmF0ZUFWRm91bmRhdGlvbkNGLmgKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvYXZmb3VuZGF0aW9uL2NmL01lZGlh
UGxheWVyUHJpdmF0ZUFWRm91bmRhdGlvbkNGLmgJKHJldmlzaW9uIDE1OTczNikKKysrIFNvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2F2Zm91bmRhdGlvbi9jZi9NZWRpYVBsYXllclBy
aXZhdGVBVkZvdW5kYXRpb25DRi5oCSh3b3JraW5nIGNvcHkpCkBAIC03Nyw3ICs3Nyw3IEBAIHBy
aXZhdGU6CiAgICAgdmlydHVhbCB2b2lkIHVwZGF0ZVJhdGUoKTsKICAgICB2aXJ0dWFsIGZsb2F0
IHJhdGUoKSBjb25zdDsKICAgICB2aXJ0dWFsIHZvaWQgc2Vla1RvVGltZShkb3VibGUgdGltZSwg
ZG91YmxlIG5lZ2F0aXZlVG9sZXJhbmNlLCBkb3VibGUgcG9zaXRpdmVUb2xlcmFuY2UpOwotICAg
IHZpcnR1YWwgdW5zaWduZWQgdG90YWxCeXRlcygpIGNvbnN0OworICAgIHZpcnR1YWwgdW5zaWdu
ZWQgbG9uZyBsb25nIHRvdGFsQnl0ZXMoKSBjb25zdDsKICAgICB2aXJ0dWFsIFBhc3NSZWZQdHI8
VGltZVJhbmdlcz4gcGxhdGZvcm1CdWZmZXJlZFRpbWVSYW5nZXMoKSBjb25zdDsKICAgICB2aXJ0
dWFsIGRvdWJsZSBwbGF0Zm9ybU1pblRpbWVTZWVrYWJsZSgpIGNvbnN0OwogICAgIHZpcnR1YWwg
ZG91YmxlIHBsYXRmb3JtTWF4VGltZVNlZWthYmxlKCkgY29uc3Q7CkluZGV4OiBTb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9ncmFwaGljcy9hdmZvdW5kYXRpb24vb2JqYy9NZWRpYVBsYXllclByaXZh
dGVBVkZvdW5kYXRpb25PYmpDLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vZ3JhcGhpY3MvYXZmb3VuZGF0aW9uL29iamMvTWVkaWFQbGF5ZXJQcml2YXRlQVZGb3VuZGF0
aW9uT2JqQy5oCShyZXZpc2lvbiAxNTk3MzYpCisrKyBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9n
cmFwaGljcy9hdmZvdW5kYXRpb24vb2JqYy9NZWRpYVBsYXllclByaXZhdGVBVkZvdW5kYXRpb25P
YmpDLmgJKHdvcmtpbmcgY29weSkKQEAgLTE0OCw3ICsxNDgsNyBAQCBwcml2YXRlOgogICAgIHZp
cnR1YWwgdm9pZCB1cGRhdGVSYXRlKCk7CiAgICAgdmlydHVhbCBmbG9hdCByYXRlKCkgY29uc3Q7
CiAgICAgdmlydHVhbCB2b2lkIHNlZWtUb1RpbWUoZG91YmxlIHRpbWUsIGRvdWJsZSBuZWdhdGl2
ZVRvbGVyYW5jZSwgZG91YmxlIHBvc2l0aXZlVG9sZXJhbmNlKTsKLSAgICB2aXJ0dWFsIHVuc2ln
bmVkIHRvdGFsQnl0ZXMoKSBjb25zdDsKKyAgICB2aXJ0dWFsIHVuc2lnbmVkIGxvbmcgbG9uZyB0
b3RhbEJ5dGVzKCkgY29uc3Q7CiAgICAgdmlydHVhbCBQYXNzUmVmUHRyPFRpbWVSYW5nZXM+IHBs
YXRmb3JtQnVmZmVyZWRUaW1lUmFuZ2VzKCkgY29uc3Q7CiAgICAgdmlydHVhbCBkb3VibGUgcGxh
dGZvcm1NaW5UaW1lU2Vla2FibGUoKSBjb25zdDsKICAgICB2aXJ0dWFsIGRvdWJsZSBwbGF0Zm9y
bU1heFRpbWVTZWVrYWJsZSgpIGNvbnN0OwpJbmRleDogU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
Z3JhcGhpY3MvYXZmb3VuZGF0aW9uL29iamMvTWVkaWFQbGF5ZXJQcml2YXRlQVZGb3VuZGF0aW9u
T2JqQy5tbQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9h
dmZvdW5kYXRpb24vb2JqYy9NZWRpYVBsYXllclByaXZhdGVBVkZvdW5kYXRpb25PYmpDLm1tCShy
ZXZpc2lvbiAxNTk3MzYpCisrKyBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9hdmZv
dW5kYXRpb24vb2JqYy9NZWRpYVBsYXllclByaXZhdGVBVkZvdW5kYXRpb25PYmpDLm1tCSh3b3Jr
aW5nIGNvcHkpCkBAIC04MDMsNyArODAzLDcgQEAgZmxvYXQgTWVkaWFQbGF5ZXJQcml2YXRlQVZG
b3VuZGF0aW9uT2JqQwogICAgIHJldHVybiBtYXhUaW1lTG9hZGVkOyAgIAogfQogCi11bnNpZ25l
ZCBNZWRpYVBsYXllclByaXZhdGVBVkZvdW5kYXRpb25PYmpDOjp0b3RhbEJ5dGVzKCkgY29uc3QK
K3Vuc2lnbmVkIGxvbmcgbG9uZyBNZWRpYVBsYXllclByaXZhdGVBVkZvdW5kYXRpb25PYmpDOjp0
b3RhbEJ5dGVzKCkgY29uc3QKIHsKICAgICBpZiAoIW1ldGFEYXRhQXZhaWxhYmxlKCkpCiAgICAg
ICAgIHJldHVybiAwOwpAQCAtODEyLDcgKzgxMiw3IEBAIHVuc2lnbmVkIE1lZGlhUGxheWVyUHJp
dmF0ZUFWRm91bmRhdGlvbk8KICAgICBmb3IgKEFWUGxheWVySXRlbVRyYWNrICp0aGlzVHJhY2sg
aW4gbV9jYWNoZWRUcmFja3MuZ2V0KCkpCiAgICAgICAgIHRvdGFsTWVkaWFTaXplICs9IFtbdGhp
c1RyYWNrIGFzc2V0VHJhY2tdIHRvdGFsU2FtcGxlRGF0YUxlbmd0aF07CiAKLSAgICByZXR1cm4g
c3RhdGljX2Nhc3Q8dW5zaWduZWQ+KHRvdGFsTWVkaWFTaXplKTsKKyAgICByZXR1cm4gdG90YWxN
ZWRpYVNpemU7CiB9CiAKIHZvaWQgTWVkaWFQbGF5ZXJQcml2YXRlQVZGb3VuZGF0aW9uT2JqQzo6
c2V0QXNzZXQoaWQgYXNzZXQpCkluZGV4OiBTb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFs
U2V0dGluZ3MuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJu
YWxTZXR0aW5ncy5jcHAJKHJldmlzaW9uIDE1OTczNikKKysrIFNvdXJjZS9XZWJDb3JlL3Rlc3Rp
bmcvSW50ZXJuYWxTZXR0aW5ncy5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTk0LDYgKzk0LDcgQEAg
SW50ZXJuYWxTZXR0aW5nczo6QmFja3VwOjpCYWNrdXAoU2V0dGluZwogICAgICwgbV9vcmlnaW5h
bFRpbWVXaXRob3V0TW91c2VNb3ZlbWVudEJlZm9yZUhpZGluZ0NvbnRyb2xzKHNldHRpbmdzLnRp
bWVXaXRob3V0TW91c2VNb3ZlbWVudEJlZm9yZUhpZGluZ0NvbnRyb2xzKCkpCiAgICAgLCBtX3Vz
ZUxlZ2FjeUJhY2tncm91bmRTaXplU2hvcnRoYW5kQmVoYXZpb3Ioc2V0dGluZ3MudXNlTGVnYWN5
QmFja2dyb3VuZFNpemVTaG9ydGhhbmRCZWhhdmlvcigpKQogICAgICwgbV9hdXRvc2Nyb2xsRm9y
RHJhZ0FuZERyb3BFbmFibGVkKHNldHRpbmdzLmF1dG9zY3JvbGxGb3JEcmFnQW5kRHJvcEVuYWJs
ZWQoKSkKKyAgICAsIG1fcGx1Z2luUmVwbGFjZW1lbnRFbmFibGVkKFJ1bnRpbWVFbmFibGVkRmVh
dHVyZXM6OnNoYXJlZEZlYXR1cmVzKCkucGx1Z2luUmVwbGFjZW1lbnRFbmFibGVkKCkpCiB7CiB9
CiAKQEAgLTE1Niw2ICsxNTcsNyBAQCB2b2lkIEludGVybmFsU2V0dGluZ3M6OkJhY2t1cDo6cmVz
dG9yZVRvCiAgICAgc2V0dGluZ3Muc2V0VGltZVdpdGhvdXRNb3VzZU1vdmVtZW50QmVmb3JlSGlk
aW5nQ29udHJvbHMobV9vcmlnaW5hbFRpbWVXaXRob3V0TW91c2VNb3ZlbWVudEJlZm9yZUhpZGlu
Z0NvbnRyb2xzKTsKICAgICBzZXR0aW5ncy5zZXRVc2VMZWdhY3lCYWNrZ3JvdW5kU2l6ZVNob3J0
aGFuZEJlaGF2aW9yKG1fdXNlTGVnYWN5QmFja2dyb3VuZFNpemVTaG9ydGhhbmRCZWhhdmlvcik7
CiAgICAgc2V0dGluZ3Muc2V0QXV0b3Njcm9sbEZvckRyYWdBbmREcm9wRW5hYmxlZChtX2F1dG9z
Y3JvbGxGb3JEcmFnQW5kRHJvcEVuYWJsZWQpOworICAgIFJ1bnRpbWVFbmFibGVkRmVhdHVyZXM6
OnNoYXJlZEZlYXR1cmVzKCkuc2V0UGx1Z2luUmVwbGFjZW1lbnRFbmFibGVkKG1fcGx1Z2luUmVw
bGFjZW1lbnRFbmFibGVkKTsKIH0KIAogLy8gV2UgY2FuJ3QgdXNlIFJlZkNvdW50ZWRTdXBwbGVt
ZW50IGJlY2F1c2UgdGhhdCB3b3VsZCB0cnkgdG8gbWFrZSBJbnRlcm5hbFNldHRpbmdzIFJlZkNv
dW50ZWQKQEAgLTUyOCw0ICs1MzAsOSBAQCB2b2lkIEludGVybmFsU2V0dGluZ3M6OnNldEZvbnRG
YWxsYmFja1ByCiAgICAgc2V0dGluZ3MoKS0+c2V0Rm9udEZhbGxiYWNrUHJlZmVyc1BpY3RvZ3Jh
cGhzKHByZWZlclBpY3RvZ3JhcGhzKTsKIH0KIAordm9pZCBJbnRlcm5hbFNldHRpbmdzOjpzZXRQ
bHVnaW5SZXBsYWNlbWVudEVuYWJsZWQoYm9vbCBlbmFibGVkKQoreworICAgIFJ1bnRpbWVFbmFi
bGVkRmVhdHVyZXM6OnNoYXJlZEZlYXR1cmVzKCkuc2V0UGx1Z2luUmVwbGFjZW1lbnRFbmFibGVk
KGVuYWJsZWQpOworfQorCiB9CkluZGV4OiBTb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFs
U2V0dGluZ3MuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFs
U2V0dGluZ3MuaAkocmV2aXNpb24gMTU5NzM2KQorKysgU291cmNlL1dlYkNvcmUvdGVzdGluZy9J
bnRlcm5hbFNldHRpbmdzLmgJKHdvcmtpbmcgY29weSkKQEAgLTkxLDYgKzkxLDcgQEAgcHVibGlj
OgogICAgICAgICBib29sIG1fb3JpZ2luYWxUaW1lV2l0aG91dE1vdXNlTW92ZW1lbnRCZWZvcmVI
aWRpbmdDb250cm9sczsKICAgICAgICAgYm9vbCBtX3VzZUxlZ2FjeUJhY2tncm91bmRTaXplU2hv
cnRoYW5kQmVoYXZpb3I7CiAgICAgICAgIGJvb2wgbV9hdXRvc2Nyb2xsRm9yRHJhZ0FuZERyb3BF
bmFibGVkOworICAgICAgICBib29sIG1fcGx1Z2luUmVwbGFjZW1lbnRFbmFibGVkOwogICAgIH07
CiAKICAgICBzdGF0aWMgUGFzc1JlZlB0cjxJbnRlcm5hbFNldHRpbmdzPiBjcmVhdGUoUGFnZSog
cGFnZSkKQEAgLTEzNiw2ICsxMzcsNyBAQCBwdWJsaWM6CiAgICAgdm9pZCBzZXRVc2VMZWdhY3lC
YWNrZ3JvdW5kU2l6ZVNob3J0aGFuZEJlaGF2aW9yKGJvb2wgZW5hYmxlZCwgRXhjZXB0aW9uQ29k
ZSYpOwogICAgIHZvaWQgc2V0QXV0b3Njcm9sbEZvckRyYWdBbmREcm9wRW5hYmxlZChib29sIGVu
YWJsZWQsIEV4Y2VwdGlvbkNvZGUmKTsKICAgICB2b2lkIHNldEZvbnRGYWxsYmFja1ByZWZlcnNQ
aWN0b2dyYXBocyhib29sIHByZWZlclBpY3RvZ3JhcGhzLCBFeGNlcHRpb25Db2RlJik7CisgICAg
dm9pZCBzZXRQbHVnaW5SZXBsYWNlbWVudEVuYWJsZWQoYm9vbCk7CiAKIHByaXZhdGU6CiAgICAg
ZXhwbGljaXQgSW50ZXJuYWxTZXR0aW5ncyhQYWdlKik7CkluZGV4OiBTb3VyY2UvV2ViQ29yZS90
ZXN0aW5nL0ludGVybmFsU2V0dGluZ3MuaWRsCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3Jl
L3Rlc3RpbmcvSW50ZXJuYWxTZXR0aW5ncy5pZGwJKHJldmlzaW9uIDE1OTczNikKKysrIFNvdXJj
ZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxTZXR0aW5ncy5pZGwJKHdvcmtpbmcgY29weSkKQEAg
LTYwLDQgKzYwLDUgQEAKICAgICBbUmFpc2VzRXhjZXB0aW9uXSB2b2lkIHNldFVzZUxlZ2FjeUJh
Y2tncm91bmRTaXplU2hvcnRoYW5kQmVoYXZpb3IoYm9vbGVhbiBlbmFibGVkKTsKICAgICBbUmFp
c2VzRXhjZXB0aW9uXSB2b2lkIHNldEF1dG9zY3JvbGxGb3JEcmFnQW5kRHJvcEVuYWJsZWQoYm9v
bGVhbiBlbmFibGVkKTsKICAgICBbUmFpc2VzRXhjZXB0aW9uXSB2b2lkIHNldEZvbnRGYWxsYmFj
a1ByZWZlcnNQaWN0b2dyYXBocyhib29sZWFuIHByZWZlclBpY3RvZ3JhcGhzKTsKKyAgICB2b2lk
IHNldFBsdWdpblJlcGxhY2VtZW50RW5hYmxlZChib29sZWFuIGVuYWJsZWQpOwogfTsKSW5kZXg6
IExheW91dFRlc3RzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9DaGFuZ2VM
b2cJKHJldmlzaW9uIDE1OTc5MCkKKysrIExheW91dFRlc3RzL0NoYW5nZUxvZwkod29ya2luZyBj
b3B5KQpAQCAtMSwzICsxLDE4IEBACisyMDEzLTExLTI2ICBFcmljIENhcmxzb24gIDxlcmljLmNh
cmxzb25AYXBwbGUuY29tPgorCisgICAgICAgIEFsbG93IHRoZSBRdWlja1RpbWUgcGx1Zy1pbiB0
byBiZSByZXBsYWNlZCBieSBzY3JpcHQgaW4gYW4gaXNvbGF0ZWQgd29yZAorICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTI0OTAwCisKKyAgICAgICAgUmV2
aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBwbGF0Zm9ybS9lZmwvVGVzdEV4
cGVjdGF0aW9uczogU2tpcCB0aGUgbmV3IHRlc3QuCisgICAgICAgICogcGxhdGZvcm0vZ3RrL1Rl
c3RFeHBlY3RhdGlvbnM6IERpdHRvLgorICAgICAgICAqIHBsYXRmb3JtL3dpbmNhaXJvL1Rlc3RF
eHBlY3RhdGlvbnM6IERpdHRvLgorICAgICAgICAqIHBsdWdpbnMvcXVpY2t0aW1lLXBsdWdpbi1y
ZXBsYWNlbWVudC5odG1sOiBBZGRlZC4KKyAgICAgICAgKiBwbHVnaW5zL3F1aWNrdGltZS1wbHVn
aW4tcmVwbGFjZW1lbnQtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKyAgICAgICAgKiBwbHVnaW5zL3Jl
c291cmNlcy9vcmFuZ2UubW92OiBSZXBsYWNlIG1vdmllIGNvbXByZXNzZWQgd2l0aCBhbmNpZW50
IGFuaW1hdGVkIGdpZiBjb2RlYyB3aXRoCisgICAgICAgICAgICBvbmUgY29tcHJlc3NlZCB3aXRo
IEguMjY0IGNvZGVjLgorCiAyMDEzLTExLTI2ICBPbGl2ZXIgSHVudCAgPG9saXZlckBhcHBsZS5j
b20+CiAKICAgICAgICAgQ3Jhc2ggaW4gSlNDOjpBU1RCdWlsZGVyOjpFeHByZXNzaW9uIEpTQzo6
UGFyc2VyPEpTQzo6TGV4ZXI8dW5zaWduZWQgY2hhcj4gPjo6cGFyc2VVbmFyeUV4cHJlc3Npb248
SlNDOjpBU1RCdWlsZGVyPihKU0M6OkFTVEJ1aWxkZXImKQpJbmRleDogTGF5b3V0VGVzdHMvcGxh
dGZvcm0vZWZsL1Rlc3RFeHBlY3RhdGlvbnMKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvcGxh
dGZvcm0vZWZsL1Rlc3RFeHBlY3RhdGlvbnMJKHJldmlzaW9uIDE1OTc5MCkKKysrIExheW91dFRl
c3RzL3BsYXRmb3JtL2VmbC9UZXN0RXhwZWN0YXRpb25zCSh3b3JraW5nIGNvcHkpCkBAIC0xNzMz
LDMgKzE3MzMsNiBAQCB3ZWJraXQub3JnL2IvMTI0NjY1IG1lZGlhL3ZpZGVvLWVuZGVkLWV2CiB3
ZWJraXQub3JnL2IvMTI0ODkwIHBsYXRmb3JtL2VmbC9hY2Nlc3NpYmlsaXR5L21lZGlhLWVtaXRz
LW9iamVjdC1yZXBsYWNlbWVudC5odG1sIFsgRmFpbHVyZSBdCiAKIHdlYmtpdC5vcmcvYi8xMjQ4
OTQgYWNjZXNzaWJpbGl0eS9maWVsZHNldC1lbGVtZW50Lmh0bWwgWyBNaXNzaW5nIF0KKworIyBR
dWlja1RpbWUgcGx1Zy1pbiBub3QgcmVsZXZhbnQgdG8gdGhpcyBwb3J0CitwbHVnaW5zL3F1aWNr
dGltZS1wbHVnaW4tcmVwbGFjZW1lbnQuaHRtbCBbIFNraXAgXQpJbmRleDogTGF5b3V0VGVzdHMv
cGxhdGZvcm0vZ3RrL1Rlc3RFeHBlY3RhdGlvbnMKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMv
cGxhdGZvcm0vZ3RrL1Rlc3RFeHBlY3RhdGlvbnMJKHJldmlzaW9uIDE1OTc5MCkKKysrIExheW91
dFRlc3RzL3BsYXRmb3JtL2d0ay9UZXN0RXhwZWN0YXRpb25zCSh3b3JraW5nIGNvcHkpCkBAIC01
MTEsNiArNTExLDkgQEAgd2Via2l0Lm9yZy9iLzEwNzE5NCBodHRwL3Rlc3RzL3NlY3VyaXR5Lwog
IyBjcnlwdG8uc3VidGxlIGlzIG5vdCB5ZXQgZW5hYmxlZAogY3J5cHRvL3N1YnRsZSBbIFNraXAg
XQogCisjIFF1aWNrVGltZSBwbHVnLWluIG5vdCByZWxldmFudCB0byB0aGlzIHBvcnQKK3BsdWdp
bnMvcXVpY2t0aW1lLXBsdWdpbi1yZXBsYWNlbWVudC5odG1sIFsgU2tpcCBdCisKICMvLy8vLy8v
Ly8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8v
Ly8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCiAjIEVuZCBvZiBFeHBlY3RlZCBmYWlsdXJlcwogIy8v
Ly8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8v
Ly8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KSW5kZXg6IExheW91dFRlc3RzL3BsYXRmb3Jt
L3dpbmNhaXJvL1Rlc3RFeHBlY3RhdGlvbnMKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvcGxh
dGZvcm0vd2luY2Fpcm8vVGVzdEV4cGVjdGF0aW9ucwkocmV2aXNpb24gMTU5NzkwKQorKysgTGF5
b3V0VGVzdHMvcGxhdGZvcm0vd2luY2Fpcm8vVGVzdEV4cGVjdGF0aW9ucwkod29ya2luZyBjb3B5
KQpAQCAtMjg1MywzICsyODUzLDYgQEAgZWRpdGluZy9zZWN1cmUtaW5wdXQgWyBGYWlsdXJlIF0K
IAogIyBjcnlwdG8uc3VidGxlIGlzIG5vdCB5ZXQgZW5hYmxlZAogY3J5cHRvL3N1YnRsZSBbIFNr
aXAgXQorCisjIFF1aWNrVGltZSBwbHVnLWluIG5vdCByZWxldmFudCB0byB0aGlzIHBvcnQKK3Bs
dWdpbnMvcXVpY2t0aW1lLXBsdWdpbi1yZXBsYWNlbWVudC5odG1sIFsgU2tpcCBdCkluZGV4OiBM
YXlvdXRUZXN0cy9wbHVnaW5zL3F1aWNrdGltZS1wbHVnaW4tcmVwbGFjZW1lbnQtZXhwZWN0ZWQu
dHh0Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL3BsdWdpbnMvcXVpY2t0aW1lLXBsdWdpbi1y
ZXBsYWNlbWVudC1leHBlY3RlZC50eHQJKHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9wbHVn
aW5zL3F1aWNrdGltZS1wbHVnaW4tcmVwbGFjZW1lbnQtZXhwZWN0ZWQudHh0CSh3b3JraW5nIGNv
cHkpCkBAIC0wLDAgKzEsNjMgQEAKKworRVZFTlQocXRfYmVnaW4pCitFVkVOVChxdF92YWxpZGF0
ZWQpCitFVkVOVChxdF9jYW5wbGF5KQorRVZFTlQocXRfY2FucGxheXRocm91Z2gpCisKKyoqIFRl
c3QgdG8gbWFrZSBzdXJlIDx2aWRlbz4gZWxlbWVudCBpcyBpbiB0aGUgc2hhZG93IERPTS4KK3No
YWRvd0VsZW1lbnQgPSBpbnRlcm5hbHMuc2hhZG93Um9vdChlbWJlZCkuZmlyc3RDaGlsZAorUEFT
UyBzaGFkb3dFbGVtZW50LnRhZ05hbWUgaXMgIlZJREVPIgorUEFTUyBpbnRlcm5hbHMuc2hhZG93
UHNldWRvSWQoc2hhZG93RWxlbWVudCkgaXMgIi13ZWJraXQtcGx1Z2luLXJlcGxhY2VtZW50Igor
CisqKiBUZXN0IGZvciB0aGUgcHJlc2VuY2Ugb2Ygb3ZlcnJpZGRlbiBtZXRob2RzLgorUEFTUyBl
bWJlZC5TZXRVUkwgaXMgYSBmdW5jdGlvbi4KK1BBU1MgZW1iZWQuR2V0VVJMIGlzIGEgZnVuY3Rp
b24uCitQQVNTIGVtYmVkLlBsYXkgaXMgYSBmdW5jdGlvbi4KK1BBU1MgZW1iZWQuU3RvcCBpcyBh
IGZ1bmN0aW9uLgorUEFTUyBlbWJlZC5HZXRSYXRlIGlzIGEgZnVuY3Rpb24uCitQQVNTIGVtYmVk
LlNldFJhdGUgaXMgYSBmdW5jdGlvbi4KK1BBU1MgZW1iZWQuSXNGdWxsU2NyZWVuIGlzIGEgZnVu
Y3Rpb24uCitQQVNTIGVtYmVkLkV4aXRGdWxsU2NyZWVuIGlzIGEgZnVuY3Rpb24uCitQQVNTIGVt
YmVkLkdldFBsdWdpblN0YXR1cyBpcyBhIGZ1bmN0aW9uLgorUEFTUyBlbWJlZC5HZXRUaW1lIGlz
IGEgZnVuY3Rpb24uCitQQVNTIGVtYmVkLlNldFRpbWUgaXMgYSBmdW5jdGlvbi4KK1BBU1MgZW1i
ZWQuU2Vla1RvRGF0ZSBpcyBhIGZ1bmN0aW9uLgorUEFTUyBlbWJlZC5HZXREYXRlIGlzIGEgZnVu
Y3Rpb24uCitQQVNTIGVtYmVkLkdldER1cmF0aW9uIGlzIGEgZnVuY3Rpb24uCitQQVNTIGVtYmVk
LkdldFRpbWVTY2FsZSBpcyBhIGZ1bmN0aW9uLgorUEFTUyBlbWJlZC5HZXRNYXhUaW1lTG9hZGVk
IGlzIGEgZnVuY3Rpb24uCitQQVNTIGVtYmVkLkdldE1heEJ5dGVzTG9hZGVkIGlzIGEgZnVuY3Rp
b24uCitQQVNTIGVtYmVkLkdldE1vdmllU2l6ZSBpcyBhIGZ1bmN0aW9uLgorUEFTUyBlbWJlZC5H
ZXRUaW1lZE1ldGFkYXRhVXBkYXRlcyBpcyBhIGZ1bmN0aW9uLgorUEFTUyBlbWJlZC5HZXRBY2Nl
c3NMb2cgaXMgYSBmdW5jdGlvbi4KK1BBU1MgZW1iZWQuR2V0RXJyb3JMb2cgaXMgYSBmdW5jdGlv
bi4KKworKiogVGVzdCBvdmVycmlkZGVuIG1ldGhvZHMuCitQQVNTIGVtYmVkLkdldFVSTCgpLmlu
ZGV4T2YoJ3Jlc291cmNlcy9vcmFuZ2UubW92JykgIT0gLTEgaXMgdHJ1ZQorUEFTUyBlbWJlZC5H
ZXREdXJhdGlvbigpIGlzIDMwMDAwMAorUEFTUyBlbWJlZC5HZXRNb3ZpZVNpemUoKSBpcyAyNDk2
MgorUEFTUyBlbWJlZC5HZXRNYXhUaW1lTG9hZGVkKCkgaXMgMzAwMDAwCitQQVNTIGVtYmVkLkdl
dE1heEJ5dGVzTG9hZGVkKCkgaXMgMjQ5NjIKK1BBU1MgZW1iZWQuR2V0TW92aWVTaXplKCkgaXMg
MjQ5NjIKK1BBU1MgZW1iZWQuR2V0UGx1Z2luU3RhdHVzKCkgaXMgIlBsYXlhYmxlIgorUEFTUyBu
ZXcgRGF0ZShlbWJlZC5HZXREYXRlKCkpIC0gbmV3IERhdGUoKSBpcyB3aXRoaW4gMTAwIG9mIDAK
K2VtYmVkLlNldFRpbWUoZW1iZWQuR2V0VGltZVNjYWxlKCkgKiAyKQorCitQQVNTIGVtYmVkLkdl
dFRpbWUoKSBpcyA2MDAwMAorZW1iZWQuUGxheSgpCisKK0VWRU5UKHF0X3BsYXkpCitQQVNTIGVt
YmVkLkdldFJhdGUoKSBpcyAxCitlbWJlZC5TdG9wKCkKKworRVZFTlQocXRfcGF1c2UpCitQQVNT
IGVtYmVkLkdldFJhdGUoKSBpcyAwCisKK2VtYmVkLlNldFVSTCgnJykKK0VWRU5UKHF0X2JlZ2lu
KQorRVZFTlQocXRfZXJyb3IpCitQQVNTIGVtYmVkLkdldFVSTCgpIGlzICIiCitQQVNTIGVtYmVk
LkdldFBsdWdpblN0YXR1cygpIGlzICJFcnJvciIKKworRU5EIFRFU1QuCisKSW5kZXg6IExheW91
dFRlc3RzL3BsdWdpbnMvcXVpY2t0aW1lLXBsdWdpbi1yZXBsYWNlbWVudC5odG1sCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIExheW91dFRlc3RzL3BsdWdpbnMvcXVpY2t0aW1lLXBsdWdpbi1yZXBsYWNlbWVudC5o
dG1sCShyZXZpc2lvbiAwKQorKysgTGF5b3V0VGVzdHMvcGx1Z2lucy9xdWlja3RpbWUtcGx1Z2lu
LXJlcGxhY2VtZW50Lmh0bWwJKHdvcmtpbmcgY29weSkKQEAgLTAsMCArMSwxMjQgQEAKKzwhRE9D
VFlQRSBodG1sPgorPGh0bWw+CisgICAgPGhlYWQ+CisgICAgICAgIDxzY3JpcHQgc3JjPSIuLi9y
ZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0PgorICAgICAgICA8c2NyaXB0PgorICAg
ICAgICAgICAgdmFyIGVtYmVkOworICAgICAgICAgICAgdmFyIHNyYyA9ICJyZXNvdXJjZXMvb3Jh
bmdlLm1vdiI7CisKKyAgICAgICAgICAgIGZ1bmN0aW9uIGxvZ0V2ZW50KGV2ZW50KQorICAgICAg
ICAgICAgeworICAgICAgICAgICAgICAgIGRlYnVnKCI8aT5FVkVOVCgiICsgZXZlbnQudHlwZSAr
ICIpPC9pPiIpOworICAgICAgICAgICAgfQorICAgICAgICAgICAgCisgICAgICAgICAgICBmdW5j
dGlvbiBzZWVrZWQoKQorICAgICAgICAgICAgeworICAgICAgICAgICAgICAgIGRlYnVnKCIiKTsK
KyAgICAgICAgICAgICAgICBzaG91bGRFdmFsdWF0ZVRvKCJlbWJlZC5HZXRUaW1lKCkiLCBlbWJl
ZC5HZXRUaW1lU2NhbGUoKSAqIDIpOworICAgICAgICAgICAgICAgIGV2YWxBbmRMb2coImVtYmVk
LlBsYXkoKSIpOworICAgICAgICAgICAgfQorCisgICAgICAgICAgICBmdW5jdGlvbiBwbGF5aW5n
KGV2ZW50KQorICAgICAgICAgICAgeworICAgICAgICAgICAgICAgIGRlYnVnKCIiKTsKKyAgICAg
ICAgICAgICAgICBsb2dFdmVudChldmVudCk7CisgICAgICAgICAgICAgICAgc2hvdWxkRXZhbHVh
dGVUbygiZW1iZWQuR2V0UmF0ZSgpIiwgMSk7CisgICAgICAgICAgICAgICAgZXZhbEFuZExvZygi
ZW1iZWQuU3RvcCgpIik7CisgICAgICAgICAgICB9CisgICAgICAgICAgICAKKyAgICAgICAgICAg
IGZ1bmN0aW9uIHBhdXNlZChldmVudCkKKyAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICBk
ZWJ1ZygiIik7CisgICAgICAgICAgICAgICAgbG9nRXZlbnQoZXZlbnQpCisgICAgICAgICAgICAg
ICAgc2hvdWxkRXZhbHVhdGVUbygiZW1iZWQuR2V0UmF0ZSgpIiwgMCk7CisKKyAgICAgICAgICAg
ICAgICBkZWJ1ZygiIik7CisgICAgICAgICAgICAgICAgZXZhbEFuZExvZygiZW1iZWQuU2V0VVJM
KCcnKSIpOworICAgICAgICAgICAgfQorICAgICAgICAgICAgCisgICAgICAgICAgICBmdW5jdGlv
biBlcnJvcihldmVudCkKKyAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICBsb2dFdmVudChl
dmVudCkKKyAgICAgICAgICAgICAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoImVtYmVkLkdldFVS
TCgpIiwgIiIpOworICAgICAgICAgICAgICAgIHNob3VsZEJlRXF1YWxUb1N0cmluZygiZW1iZWQu
R2V0UGx1Z2luU3RhdHVzKCkiLCAiRXJyb3IiKTsKKyAgICAgICAgICAgICAgICBkZWJ1ZygiPGJy
PkVORCBURVNULiIpOworICAgICAgICAgICAgICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikKKyAg
ICAgICAgICAgICAgICAgICAgdGVzdFJ1bm5lci5ub3RpZnlEb25lKCk7CisgICAgICAgICAgICB9
CisgICAgICAgICAgICAKKyAgICAgICAgICAgIGZ1bmN0aW9uIHRlc3QoZXZlbnQpCisgICAgICAg
ICAgICB7CisgICAgICAgICAgICAgICAgbG9nRXZlbnQoZXZlbnQpCisKKyAgICAgICAgICAgICAg
ICBpZiAod2luZG93LmludGVybmFscykgeworICAgICAgICAgICAgICAgICAgICBkZWJ1ZygiPGJy
PioqIFRlc3QgdG8gbWFrZSBzdXJlICZsdDt2aWRlbyZndDsgZWxlbWVudCBpcyBpbiB0aGUgc2hh
ZG93IERPTS4iKTsKKyAgICAgICAgICAgICAgICAgICAgZXZhbEFuZExvZygic2hhZG93RWxlbWVu
dCA9IGludGVybmFscy5zaGFkb3dSb290KGVtYmVkKS5maXJzdENoaWxkIik7CisgICAgICAgICAg
ICAgICAgICAgIHNob3VsZEJlRXF1YWxUb1N0cmluZygic2hhZG93RWxlbWVudC50YWdOYW1lIiwg
IlZJREVPIik7CisgICAgICAgICAgICAgICAgICAgIHNob3VsZEJlRXF1YWxUb1N0cmluZygiaW50
ZXJuYWxzLnNoYWRvd1BzZXVkb0lkKHNoYWRvd0VsZW1lbnQpIiwgIi13ZWJraXQtcGx1Z2luLXJl
cGxhY2VtZW50Iik7CisgICAgICAgICAgICAgICAgfSBlbHNlIHsKKyAgICAgICAgICAgICAgICAg
ICAgZGVidWcoIiIpOworICAgICAgICAgICAgICAgICAgICB0ZXN0RmFpbGVkKCJUaGlzIHRlc3Qg
bXVzdCBiZSBydW4gaW4gRFJULiIpOworICAgICAgICAgICAgICAgICAgICBkZWJ1ZygiIik7Cisg
ICAgICAgICAgICAgICAgfQorCisgICAgICAgICAgICAgICAgZGVidWcoIjxicj4qKiBUZXN0IGZv
ciB0aGUgcHJlc2VuY2Ugb2Ygb3ZlcnJpZGRlbiBtZXRob2RzLiIpOworICAgICAgICAgICAgICAg
IHZhciBtZXRob2RzID0gWyAiU2V0VVJMIiwgIkdldFVSTCIsICJQbGF5IiwgIlN0b3AiLCAiR2V0
UmF0ZSIsICJTZXRSYXRlIiwgIklzRnVsbFNjcmVlbiIsIAorICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAiRXhpdEZ1bGxTY3JlZW4iLCAiR2V0UGx1Z2luU3RhdHVzIiwgIkdldFRpbWUi
LCAiU2V0VGltZSIsICJTZWVrVG9EYXRlIiwgIkdldERhdGUiLCAKKyAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgIkdldER1cmF0aW9uIiwgIkdldFRpbWVTY2FsZSIsICJHZXRNYXhUaW1l
TG9hZGVkIiwgIkdldE1heEJ5dGVzTG9hZGVkIiwgCisgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICJHZXRNb3ZpZVNpemUiLCAiR2V0VGltZWRNZXRhZGF0YVVwZGF0ZXMiLCAiR2V0QWNj
ZXNzTG9nIiwgIkdldEVycm9yTG9nIgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXTsK
KyAgICAgICAgICAgICAgICBmb3IgKGkgPSAwOyBpIDwgbWV0aG9kcy5sZW5ndGg7ICsraSkgewor
ICAgICAgICAgICAgICAgICAgICB2YXIgdHlwZSA9IHR5cGVvZiBlbWJlZFttZXRob2RzW2ldXTsK
KyAgICAgICAgICAgICAgICAgICAgaWYgKHR5cGUgPT0gImZ1bmN0aW9uIikKKyAgICAgICAgICAg
ICAgICAgICAgICAgIHRlc3RQYXNzZWQoImVtYmVkLiIgKyBtZXRob2RzW2ldICsgIiBpcyBhIGZ1
bmN0aW9uLiIpOworICAgICAgICAgICAgICAgICAgICBlbHNlCisgICAgICAgICAgICAgICAgICAg
ICAgICB0ZXN0RmFpbGVkKCJlbWJlZC4iICsgbWV0aG9kc1tpXSArICIgc2hvdWxkIGJlIGEgZnVu
Y3Rpb24gYnV0IGlzIFwiIiArIHR5cGUgKyAiXCIuIik7CisgICAgICAgICAgICAgICAgfQorCisg
ICAgICAgICAgICAgICAgZGVidWcoIjxicj4qKiBUZXN0IG92ZXJyaWRkZW4gbWV0aG9kcy4iKTsK
KyAgICAgICAgICAgICAgICBzaG91bGRCZVRydWUoImVtYmVkLkdldFVSTCgpLmluZGV4T2YoJyIg
KyBzcmMgKyAiJykgIT0gLTEiKTsKKyAgICAgICAgICAgICAgICBzaG91bGRFdmFsdWF0ZVRvKCJl
bWJlZC5HZXREdXJhdGlvbigpIiwgMzAwMDAwKTsKKyAgICAgICAgICAgICAgICBzaG91bGRFdmFs
dWF0ZVRvKCJlbWJlZC5HZXRNb3ZpZVNpemUoKSIsIDI0OTYyKTsKKyAgICAgICAgICAgICAgICBz
aG91bGRFdmFsdWF0ZVRvKCJlbWJlZC5HZXRNYXhUaW1lTG9hZGVkKCkiLCAzMDAwMDApOworICAg
ICAgICAgICAgICAgIHNob3VsZEV2YWx1YXRlVG8oImVtYmVkLkdldE1heEJ5dGVzTG9hZGVkKCki
LCAyNDk2Mik7CisgICAgICAgICAgICAgICAgc2hvdWxkRXZhbHVhdGVUbygiZW1iZWQuR2V0TW92
aWVTaXplKCkiLCAyNDk2Mik7CisgICAgICAgICAgICAgICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5n
KCJlbWJlZC5HZXRQbHVnaW5TdGF0dXMoKSIsICJQbGF5YWJsZSIpOworICAgICAgICAgICAgICAg
IAorICAgICAgICAgICAgICAgIC8vICJHZXREYXRlKCkiIHNob3VsZCByZXR1cm4gdGhlIGN1cnJl
bnQgZGF0ZSwgY2xlYXIgc2Vjb25kcyBhbmQgbWlsbGlzZWNvbmRzIAorICAgICAgICAgICAgICAg
IHZhciBub3cgPSBuZXcgRGF0ZSgpOworICAgICAgICAgICAgICAgIHNob3VsZEJlQ2xvc2VUbygi
bmV3IERhdGUoZW1iZWQuR2V0RGF0ZSgpKSAtIG5ldyBEYXRlKCkiLCAwLCAxMDApOworCisgICAg
ICAgICAgICAgICAgZXZhbEFuZExvZygiZW1iZWQuU2V0VGltZShlbWJlZC5HZXRUaW1lU2NhbGUo
KSAqIDIpIik7CisgICAgICAgICAgICAgICAgc2V0VGltZW91dChzZWVrZWQsIDUwMCk7CisgICAg
ICAgICAgICB9CisgICAgICAgICAgICAKKyAgICAgICAgICAgIGZ1bmN0aW9uIHNldHVwKCkKKyAg
ICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpIHsKKyAg
ICAgICAgICAgICAgICAgICAgd2luZG93LnRlc3RSdW5uZXIud2FpdFVudGlsRG9uZSgpOworICAg
ICAgICAgICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5lci5kdW1wQXNUZXh0KCkKKyAgICAgICAg
ICAgICAgICAgICAgd2luZG93LmludGVybmFscy5zZXR0aW5ncy5zZXRQbHVnaW5SZXBsYWNlbWVu
dEVuYWJsZWQodHJ1ZSk7CisgICAgICAgICAgICAgICAgfQorICAgICAgICAgICAgICAgIGRpdiA9
IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJwYXJlbnQiKTsKKyAgICAgICAgICAgICAgICBkaXYu
aW5uZXJIVE1MID0gJzxlbWJlZCBzcmM9IicgKyBzcmMgKyAnIiB3aWR0aD0iNjQwIiBoZWlnaHQ9
IjQ4MCIgcG9zdGRvbWV2ZW50cz10cnVlPic7CisgICAgICAgICAgICAgICAgCisgICAgICAgICAg
ICAgICAgdmFyIGV2ZW50cyA9IFsgInF0X2JlZ2luIiwgInF0X3ZhbGlkYXRlZCIsICJxdF9lbnRl
cmZ1bGxzY3JlZW4iLCAicXRfZXhpdGZ1bGxzY3JlZW4iLCAKKyAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgInF0X2xvYWRlZG1ldGFkYSIsICJxdF9jYW5wbGF5IiwgInF0X2VuZGVkIiwg
InF0X3RpbWVkbWV0YWRhdGF1cGRhdGVkIiAKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IF07CisgICAgICAgICAgICAgICAgZW1iZWQgPSBkaXYuZmlyc3RDaGlsZDsKKyAgICAgICAgICAg
ICAgICBmb3IgKGkgPSAwOyBpIDwgZXZlbnRzLmxlbmd0aDsgKytpKQorICAgICAgICAgICAgICAg
ICAgICBlbWJlZC5hZGRFdmVudExpc3RlbmVyKGV2ZW50c1tpXSwgbG9nRXZlbnQsIHRydWUpOwor
ICAgICAgICAgICAgICAgIGVtYmVkLmFkZEV2ZW50TGlzdGVuZXIoInF0X2NhbnBsYXl0aHJvdWdo
IiwgdGVzdCwgdHJ1ZSk7CisgICAgICAgICAgICAgICAgZW1iZWQuYWRkRXZlbnRMaXN0ZW5lcigi
cXRfcGxheSIsIHBsYXlpbmcsIHRydWUpOworICAgICAgICAgICAgICAgIGVtYmVkLmFkZEV2ZW50
TGlzdGVuZXIoInF0X3BhdXNlIiwgcGF1c2VkLCB0cnVlKTsKKyAgICAgICAgICAgICAgICBlbWJl
ZC5hZGRFdmVudExpc3RlbmVyKCJxdF9lcnJvciIsIGVycm9yLCB0cnVlKTsKKyAgICAgICAgICAg
IH0KKyAgICAgICAgPC9zY3JpcHQ+CisgICAgPC9oZWFkPgorCisgICAgPGJvZHkgb25sb2FkPSJz
ZXR1cCgpIj4KKyAgICAgICAgPGRpdiBpZD1wYXJlbnQ+PC9kaXY+CisgICAgICAgIDxwPgorICAg
ICAgICA8ZGl2IGlkPWNvbnNvbGU+PC9kaXY+CisgICAgPC9ib2R5PgorPC9odG1sPgpJbmRleDog
TGF5b3V0VGVzdHMvcGx1Z2lucy9yZXNvdXJjZXMvb3JhbmdlLm1vdgo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CkNhbm5v
dCBkaXNwbGF5OiBmaWxlIG1hcmtlZCBhcyBhIGJpbmFyeSB0eXBlLgpzdm46bWltZS10eXBlID0g
YXBwbGljYXRpb24vb2N0ZXQtc3RyZWFtCgpBQUFBSUdaMGVYQnhkQ0FnSUFVREFIRjBJQ0FBQUFB
QUFBQUFBQUFBQUFBQUFBN1RiVzl2ZGdBQUFHeHRkbWhrQUFBQUFNNjVlbVRPCnVYcGtBQUFDV0FB
QUYzQUFBUUFBQVFBQUFBQUFBQUFBQUFBQUFBRks5d0FBQUFBQUFBQUFBQUFBQUFBQlNxc0FBQUFB
QUFBQUFBQUEKQUFCQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBZ0FB
Qy9GMGNtRnJBQUFBWEhScmFHUUFBQUFQenJsNQpXczY1ZW1RQUFBQUJBQUFBQUFBQUYzQUFBQUFB
QUFBQUFBQUFBQUFBQUFBQUFBRUFBQUFBQUFBQUFBQUFBQUFBQUFBQkFBQUFBQUFBCkFBQUFBQUFB
QUFCQUFBQUFBcXNBQUFIZ0FBQUFBQUJFZEdGd2RBQUFBQlJqYkdWbUFBQUFBQUtyQUFBQjRBQUFB
QUFBRkhCeWIyWUEKQUFBQUFxc0FBQUhnQUFBQUFBQVVaVzV2WmdBQUFBQUNxd0FBQWVBQUFBQUFB
Q1JsWkhSekFBQUFIR1ZzYzNRQUFBQUFBQUFBQVFBQQpGM0FBQUFBQUFBRUFBQUFBQ3hsdFpHbGhB
QUFBSUcxa2FHUUFBQUFBenJsNlpNNjVlbVFBQUFKWUFBQVhtQUFBQUFBQUFBQTZhR1JzCmNnQUFB
QUJ0YUd4eWRtbGtaV0Z3Y0d3UUFBQUFBQUVBNVJsQmNIQnNaU0JXYVdSbGJ5Qk5aV1JwWVNCSVlX
NWtiR1Z5QUFBS3QyMXAKYm1ZQUFBQVVkbTFvWkFBQUFBRUFRSUFBZ0FDQUFBQUFBRGxvWkd4eUFB
QUFBR1JvYkhKaGJHbHpZWEJ3YkJBQUFBRUFBUUQ5R0VGdwpjR3hsSUVGc2FXRnpJRVJoZEdFZ1NH
RnVaR3hsY2dBQUFDUmthVzVtQUFBQUhHUnlaV1lBQUFBQUFBQUFBUUFBQUF4aGJHbHpBQUFBCkFR
QUFDajV6ZEdKc0FBQUFwM04wYzJRQUFBQUFBQUFBQVFBQUFKZGhkbU14QUFBQUFBQUFBQUVBQVFB
QllYQndiQUFBQkFBQUFBUUEKQXFzQjRBQklBQUFBU0FBQUFBQUFBQUFCQlVndU1qWTBBQUFBQUFB
QUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFHUC8vQUFBQQpFbU52YkhKdVkyeGpBQVlBQVFB
R0FBQUFLMkYyWTBNQlRVQVcvd0VBRkNkTlFCYXBHQldIdmZnRFVHQVFZd3JYdmZBUUFRQUVLTjRK
CnlBQUFBQUFBQUFBWWMzUjBjd0FBQUFBQUFBQUJBQUFBbHdBQUFDZ0FBQVNZWTNSMGN3QUFBQUFB
QUFDUkFBQUFBUUFBQUFBQUFBQUIKQUFBQUtBQUFBQUgvLy8vWUFBQUFBUUFBQUNnQUFBQUIvLy8v
MkFBQUFBRUFBQUFvQUFBQUFmLy8vOWdBQUFBQkFBQUFLQUFBQUFILwovLy9ZQUFBQUFRQUFBQ2dB
QUFBQi8vLy8yQUFBQUFFQUFBQW9BQUFBQWYvLy85Z0FBQUFCQUFBQUtBQUFBQUgvLy8vWUFBQUFB
UUFBCkFDZ0FBQUFCLy8vLzJBQUFBQUVBQUFBb0FBQUFBZi8vLzlnQUFBQUJBQUFBS0FBQUFBSC8v
Ly9ZQUFBQUFRQUFBQ2dBQUFBQi8vLy8KMkFBQUFBSUFBQUFBQUFBQUFRQUFBQ2dBQUFBQi8vLy8y
QUFBQUFFQUFBQW9BQUFBQWYvLy85Z0FBQUFCQUFBQUtBQUFBQUgvLy8vWQpBQUFBQVFBQUFDZ0FB
QUFCLy8vLzJBQUFBQUVBQUFBb0FBQUFBZi8vLzlnQUFBQUJBQUFBS0FBQUFBSC8vLy9ZQUFBQUFR
QUFBQ2dBCkFBQUIvLy8vMkFBQUFBRUFBQUFvQUFBQUFmLy8vOWdBQUFBQkFBQUFLQUFBQUFILy8v
L1lBQUFBQVFBQUFDZ0FBQUFCLy8vLzJBQUEKQUFFQUFBQW9BQUFBQWYvLy85Z0FBQUFDQUFBQUFB
QUFBQUVBQUFBb0FBQUFBZi8vLzlnQUFBQUJBQUFBS0FBQUFBSC8vLy9ZQUFBQQpBUUFBQUNnQUFB
QUIvLy8vMkFBQUFBRUFBQUFvQUFBQUFmLy8vOWdBQUFBQkFBQUFLQUFBQUFILy8vL1lBQUFBQVFB
QUFDZ0FBQUFCCi8vLy8yQUFBQUFFQUFBQW9BQUFBQWYvLy85Z0FBQUFCQUFBQUtBQUFBQUgvLy8v
WUFBQUFBUUFBQUNnQUFBQUIvLy8vMkFBQUFBRUEKQUFBb0FBQUFBZi8vLzlnQUFBQUJBQUFBS0FB
QUFBSC8vLy9ZQUFBQUFnQUFBQUFBQUFBQkFBQUFLQUFBQUFILy8vL1lBQUFBQVFBQQpBQ2dBQUFB
Qi8vLy8yQUFBQUFFQUFBQW9BQUFBQWYvLy85Z0FBQUFCQUFBQUtBQUFBQUgvLy8vWUFBQUFBUUFB
QUNnQUFBQUIvLy8vCjJBQUFBQUVBQUFBb0FBQUFBZi8vLzlnQUFBQUJBQUFBS0FBQUFBSC8vLy9Z
QUFBQUFRQUFBQ2dBQUFBQi8vLy8yQUFBQUFFQUFBQW8KQUFBQUFmLy8vOWdBQUFBQkFBQUFLQUFB
QUFILy8vL1lBQUFBQVFBQUFDZ0FBQUFCLy8vLzJBQUFBQUlBQUFBQUFBQUFBUUFBQUNnQQpBQUFC
Ly8vLzJBQUFBQUVBQUFBb0FBQUFBZi8vLzlnQUFBQUJBQUFBS0FBQUFBSC8vLy9ZQUFBQUFRQUFB
Q2dBQUFBQi8vLy8yQUFBCkFBRUFBQUFvQUFBQUFmLy8vOWdBQUFBQkFBQUFLQUFBQUFILy8vL1lB
QUFBQVFBQUFDZ0FBQUFCLy8vLzJBQUFBQUVBQUFBb0FBQUEKQWYvLy85Z0FBQUFCQUFBQUtBQUFB
QUgvLy8vWUFBQUFBUUFBQUNnQUFBQUIvLy8vMkFBQUFBRUFBQUFvQUFBQUFmLy8vOWdBQUFBQwpB
QUFBQUFBQUFBRUFBQUFvQUFBQUFmLy8vOWdBQUFBQkFBQUFLQUFBQUFILy8vL1lBQUFBQVFBQUFD
Z0FBQUFCLy8vLzJBQUFBQUVBCkFBQW9BQUFBQWYvLy85Z0FBQUFCQUFBQUtBQUFBQUgvLy8vWUFB
QUFBUUFBQUNnQUFBQUIvLy8vMkFBQUFBRUFBQUFvQUFBQUFmLy8KLzlnQUFBQUJBQUFBS0FBQUFB
SC8vLy9ZQUFBQUFRQUFBQ2dBQUFBQi8vLy8yQUFBQUFFQUFBQW9BQUFBQWYvLy85Z0FBQUFCQUFB
QQpLQUFBQUFILy8vL1lBQUFBQWdBQUFBQUFBQUFCQUFBQUtBQUFBQUgvLy8vWUFBQUFBUUFBQUNn
QUFBQUIvLy8vMkFBQUFBRUFBQUFvCkFBQUFBZi8vLzlnQUFBQWdZM05zWndBQUFBQUFBQUFvLy8v
LzJBQUFBQ2dBQUFBQUFBQVhtQUFBQUN4emRITnpBQUFBQUFBQUFBY0EKQUFBQkFBQUFHUUFBQURF
QUFBQkpBQUFBWVFBQUFIa0FBQUNSQUFBQW8zTmtkSEFBQUFBQUFFQUlRQWhBQ0VBSVFBaEFDRUFJ
UUFoQQpDRUFJUUFnSUFFQUlRQWhBQ0VBSVFBaEFDRUFJUUFoQUNFQUlRQWdJQUVBSVFBaEFDRUFJ
UUFoQUNFQUlRQWhBQ0VBSVFBZ0lBRUFJClFBaEFDRUFJUUFoQUNFQUlRQWhBQ0VBSVFBZ0lBRUFJ
UUFoQUNFQUlRQWhBQ0VBSVFBaEFDRUFJUUFnSUFFQUlRQWhBQ0VBSVFBaEEKQ0VBSVFBaEFDRUFJ
UUFnSUFFQUlRQWhBQ0FBQUFNUnpkSE5qQUFBQUFBQUFBQThBQUFBQkFBQUFCQUFBQUFFQUFBQUdB
QUFBQVFBQQpBQUVBQUFBSEFBQUFCQUFBQUFFQUFBQU1BQUFBQVFBQUFBRUFBQUFOQUFBQUJBQUFB
QUVBQUFBU0FBQUFBUUFBQUFFQUFBQVRBQUFBCkJBQUFBQUVBQUFBWUFBQUFBUUFBQUFFQUFBQVpB
QUFBQkFBQUFBRUFBQUFlQUFBQUFRQUFBQUVBQUFBZkFBQUFCQUFBQUFFQUFBQWsKQUFBQUFRQUFB
QUVBQUFBbEFBQUFCQUFBQUFFQUFBQXFBQUFBQVFBQUFBRUFBQUFyQUFBQUJBQUFBQUVBQUFKd2Mz
UnplZ0FBQUFBQQpBQUFBQUFBQWx3QUFCbVVBQUFCZkFBQUFYZ0FBQUY4QUFBQmVBQUFBWHdBQUFG
NEFBQUJmQUFBQVhnQUFBRjhBQUFCZUFBQUFYd0FBCkFGNEFBQUJmQUFBQVhnQUFBRjhBQUFCZUFB
QUFYd0FBQUY0QUFBQmZBQUFBWGdBQUFGOEFBQUJlQUFBQVhRQUFCbFVBQUFCZkFBQUEKWGdBQUFG
OEFBQUJlQUFBQVh3QUFBRjRBQUFCZkFBQUFYZ0FBQUY4QUFBQmVBQUFBWHdBQUFGNEFBQUJmQUFB
QVhnQUFBRjhBQUFCZQpBQUFBWHdBQUFGNEFBQUJmQUFBQVhnQUFBRjhBQUFCZUFBQUFYUUFBQmxV
QUFBQmZBQUFBWGdBQUFGOEFBQUJlQUFBQVh3QUFBRjRBCkFBQmZBQUFBWGdBQUFGOEFBQUJlQUFB
QVh3QUFBRjRBQUFCZkFBQUFYZ0FBQUY4QUFBQmVBQUFBWHdBQUFGNEFBQUJmQUFBQVhnQUEKQUY4
QUFBQmVBQUFBWFFBQUJsVUFBQUJmQUFBQVhnQUFBRjhBQUFCZUFBQUFYd0FBQUY0QUFBQmZBQUFB
WGdBQUFGOEFBQUJlQUFBQQpYd0FBQUY0QUFBQmZBQUFBWGdBQUFGOEFBQUJlQUFBQVh3QUFBRjRB
QUFCZkFBQUFYZ0FBQUY4QUFBQmVBQUFBWFFBQUJsVUFBQUJmCkFBQUFYZ0FBQUY4QUFBQmVBQUFB
WHdBQUFGNEFBQUJmQUFBQVhnQUFBRjhBQUFCZUFBQUFYd0FBQUY0QUFBQmZBQUFBWGdBQUFGOEEK
QUFCZUFBQUFYd0FBQUY0QUFBQmZBQUFBWGdBQUFGOEFBQUJlQUFBQVhRQUFCbFVBQUFCZkFBQUFY
Z0FBQUY4QUFBQmVBQUFBWHdBQQpBRjRBQUFCZkFBQUFYZ0FBQUY4QUFBQmVBQUFBWHdBQUFGNEFB
QUJmQUFBQVhnQUFBRjhBQUFCZUFBQUFYd0FBQUY0QUFBQmZBQUFBClhnQUFBRjhBQUFCZUFBQUFY
UUFBQmxVQUFBQmZBQUFBWGdBQUFGOEFBQUJlQUFBQVh3QUFBRjRBQUFDOGMzUmpid0FBQUFBQUFB
QXIKQUFBUEd3QUFGcHdBQUJnV0FBQVprQUFBR3dvQUFCeUVBQUFjNGdBQUpGRUFBQ1hMQUFBblJR
QUFLTDhBQUNvNUFBQXFtQUFBTEJJQQpBRE9CQUFBMCt3QUFOblVBQURmdkFBQTRUUUFBT2NjQUFE
dEJBQUJDc0FBQVJDb0FBRVdrQUFCR0F3QUFSMzBBQUVqM0FBQktid0FBClVlQUFBRk5hQUFCVHVB
QUFWVElBQUZhc0FBQllKZ0FBWDVVQUFHRVBBQUJoYmdBQVl1Z0FBR1JpQUFCbDNBQUFaMVlBQUc3
RkFBQnYKSXdBQUFBeDFaSFJoQUFBQUFBQUFBa1J0WlhSaEFBQUFJR2hrYkhJQUFBQUFBQUFBQUcx
a2RHRUFBQUFBQUFBQUFBQUFBQUFBQUFFNAphMlY1Y3dBQUFBQUFBQUFHQUFBQU9tMWtkR0ZqYjIw
dVlYQndiR1V1Y1hWcFkydDBhVzFsTG5Cc1lYbGxjaTV0YjNacFpTNTJhWE4xCllXd3VZbkpwWjJo
MGJtVnpjd0FBQURWdFpIUmhZMjl0TG1Gd2NHeGxMbkYxYVdOcmRHbHRaUzV3YkdGNVpYSXViVzky
YVdVdWRtbHoKZFdGc0xtTnZiRzl5QUFBQU5HMWtkR0ZqYjIwdVlYQndiR1V1Y1hWcFkydDBhVzFs
TG5Cc1lYbGxjaTV0YjNacFpTNTJhWE4xWVd3dQpkR2x1ZEFBQUFEaHRaSFJoWTI5dExtRndjR3hs
TG5GMWFXTnJkR2x0WlM1d2JHRjVaWEl1Ylc5MmFXVXVkbWx6ZFdGc0xtTnZiblJ5CllYTjBBQUFB
S20xa2RHRmpiMjB1WVhCd2JHVXVjWFZwWTJ0MGFXMWxMbkJzWVhsbGNpNTJaWEp6YVc5dUFBQUFJ
MjFrZEdGamIyMHUKWVhCd2JHVXVjWFZwWTJ0MGFXMWxMblpsY25OcGIyNEFBQURrYVd4emRBQUFB
QndBQUFBQkFBQUFGR1JoZEdFQUFBQVhBQUFBQUFBQQpBQUFBQUFBY0FBQUFBZ0FBQUJSa1lYUmhB
QUFBRndBQUFBQS9nQUFBQUFBQUhBQUFBQU1BQUFBVVpHRjBZUUFBQUJjQUFBQUFBQUFBCkFBQUFB
QndBQUFBRUFBQUFGR1JoZEdFQUFBQVhBQUFBQUQrQUFBQUFBQUFsQUFBQUJRQUFBQjFrWVhSaEFB
QUFBUUFBQUFBM0xqWXUKTmlBb055NDJMallwQUFBQVJ3QUFBQVlBQUFBL1pHRjBZUUFBQUFFQUFB
QUFOeTQzTGpNZ0tESTRNallwSURCNE56Y3pPREF3TUNBbwpUV0ZqSUU5VElGZ3NJREV3TGprc0lE
RXpRVFU1T0NrQUFBQXFkV1IwWVFBQUFBeFhURTlEQUMwQVNnQUFBQWxUWld4UEFBQUFBQWxCCmJH
eEdBQUFBQUFBQUFBQUlabkpsWlFBQUFBaDNhV1JsQUFCaG1tMWtZWFFBQUFBSWQybGtaUUFBQUFC
dFpHRjBBQUFBREFZQUI0Q3YKeUFBQUF3QkFnQUFBQUJVR0JSRURoL1JPelFwTDNLR1VPc1BVbXhj
ZkFJQUFBQUZQSmJnZ0lDbGYvL2dyZ0FjUkVRQ0VwUXJqREFBYwpRWWNLa0FBSlg0RGdBQ1M0QUJT
U0lrSnNoa1pndzRBRmRzMnh2MUtydUdIY3Q5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5
Cjk5OTk5OTk5LytIL2h3Z0FGR0lJM0pFbGh1ZXpoTmY4QXdUblk0RkFBQ0V5QUFJUGdnQUFnL0FB
Q0RIZ0FiNXVtQUFJREhrd0FBZzYKdnBZQUFnTkFBQ0R1eEFCcEphQUFFQkhXZ0FDQzUvNTBzQUFR
RXdBQkJlWVV0ZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZApkZGRkZGRkZGRkTWxTMTEx
MTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTEweVZMWFhYWFhYWFhYWFhYWFhY
WFhYClhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYVEpVdGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRk
ZGRkZGRkZGRkZGRkZGRkTWxTMTExMTEKMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTEx
MTExMHlZQUFBRWdKUUNCdUNBZ0xWLy8rQ0tLQUFJVW5qZ0FDYy9IQUFFeAo2KysrKysrKysrKysr
KysrKysrKysrKysrKysrKysrKysrKysrKysrKy8vRC93V0VBY0FBc0FLQkJWTS9pQUFDRXVBQUlQ
VVFBQVFmCmdBQkJqd2NBQVFHZ0FCQjNZZzRBQWdOQUFDRHV4QndBQkFUQUFFRjVpRGdBQ0FtQUFJ
THpDbHJycnJycnJycnJycnJycnJycnJycnIKcnJycnJycnJycnJycnJycnJycnBrcVd1dXV1dXV1
dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dW1TcGE2NjY2NjY2Ngo2NjY2NjY2NjY2
NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjZaS2xycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJy
cnJycnJycnJyCnJwa3FXdXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXVt
VEFBQUJJU1VBUUs0SUNBdFgvLzRJb29BQWhTZU8KQUFKejhjQUFUSHI3Nzc3Nzc3Nzc3Nzc3Nzc3
Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3LzhQL0JZUUJ3QUN3QW9FRlV6K0lBQUlTNApBQWc5UkFB
QkIrQUFFR1BCd0FCQWFBQUVIZGlEZ0FDQTBBQUlPN0VIQUFFQk1BQVFYbUlPQUFJQ1lBQWd2TUtX
dXV1dXV1dXV1dXV1CnV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1bVNwYTY2NjY2NjY2NjY2
NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2WksKbHJycnJycnJycnJycnJycnJycnJycnJy
cnJycnJycnJycnJycnJycnJycGtxV3V1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dQp1dXV1
dXV1dXV1dW1TcGE2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NlpNQUFB
QUVoSlFCZzdnZ0lDMWYvCi9naWlnQUNGSjQ0QUFuUHh3QUJNZXZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2
dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2L3cvOEZoQUhBQUxBQ2cKUVZUUDRnQUFoTGdBQ0QxRUFBRUg0
QUFRWThIQUFFQm9BQVFkMklPQUFJRFFBQWc3c1FjQUFRRXdBQkJlWWc0QUFnSmdBQ0M4d3BhNgo2
NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2WktscnJycnJycnJycnJycnJy
cnJycnJycnJycnJycnJycnJyCnJycnJycnJycGtxV3V1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1
dXV1dXV1dXV1dXV1dXV1bVNwYTY2NjY2NjY2NjY2NjY2NjY2NjYKNjY2NjY2NjY2NjY2NjY2NjY2
NjY2NlpLbHJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycGt3QUFBQVhj
bApBQ0JMZ2dJQzFmLy9naWlnQUNGSjQ0QUFuUHh3QUJNZXZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2
dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2L3cvCjhGaEFIQUFMQUNnUVZUUDRnQUFoTGdBQ0QxRUFBRUg0QUFR
WThIQUFFQm9BQVFkMklPQUFJRFFBQWc3c1FjQUFRRXdBQkJlWWc0QUEKZ0pnQUNDOHdwYTY2NjY2
NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2WktscnJycnJycnJycnJycnJycnJy
cnJycgpycnJycnJycnJycnJycnJycnJycGtxV3V1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1
dXV1dXV1dXV1dXV1bVNwYTY2NjY2NjY2CjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2
NlpJV3dBRVprWkdaR1JHUmtYL2dBR3lNd0VMU2hmR1dDL3dscEFDNEFGZE0KallueUhSMkR3QUtU
UnBEYnFSV2NOUzExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTF3c3lBQUl5
SXpJeklqSQpqTXYvOEFEcUVGYnNpUEsyNHpkOTRCM2dBYVpQazN6bjNBQ2VhbWwzL3JjQUFBQVZC
Z1VSQTRmMFRzMEtTOXlobERyRDFKc1hId0NBCkFBQUFDQ0hoQ1FDbEFFRGdBQUFBQ2lFQWdlRUpB
TFVBUU9BQUFBQUtJUUJBdUVKQUxVQVFPQUFBQUFvaEFHRDRRa0F0UUJBNEFBQUEKRENFQUlFNFFr
QXRRRFk4RmNBQUFBQlVHQlJFRGgvUk96UXBMM0tHVU9zUFVteGNmQUlBQUFBQUlBYWlCWUJHZ0NC
d0FBQUFLQVFDQgpxSUZnRmFBSUhBQUFBQW9CQUVDcUlGZ0ZhQUlIQUFBQUNnRUFZT29nV0FWb0Fn
Y0FBQUFMQVFBZ1NvZ1dBVm9BZ2NBQUFBQVZCZ1VSCkE0ZjBUczBLUzl5aGxEckQxSnNYSHdDQUFB
QUFDQ0hpRVFDbEFFRGdBQUFBQ2lFQWdlSVJBTFVBUU9BQUFBQUtJUUJBdUlSQUxVQVEKT0FBQUFB
b2hBR0Q0aEVBdFFCQTRBQUFBRENFQUlFNGhFQXRRRFk4RmNBQUFBQlVHQlJFRGgvUk96UXBMM0tH
VU9zUFVteGNmQUlBQQpBQUFJQWFqRFlCR2dDQndBQUFBS0FRQ0JxTU5nRmFBSUhBQUFBQW9CQUVD
cU1OZ0ZhQUlIQUFBQUNnRUFZT293MkFWb0FnY0FBQUFMCkFRQWdTb3cyQVZvQWdjQUFBQUFWQmdV
UkE0ZjBUczBLUzl5aGxEckQxSnNYSHdDQUFBQUFDQ0hqR1FDbEFFRGdBQUFBQ2lFQWdlTVoKQUxV
QVFPQUFBQUFLSVFCQXVNWkFMVUFRT0FBQUFBb2hBR0Q0eGtBdFFCQTRBQUFBRENFQUlFNHhrQXRR
RFk4RmNBQUFBQlVHQlJFRApoL1JPelFwTDNLR1VPc1BVbXhjZkFJQUFBQUFJQWFrRllCR2dDQndB
QUFBS0FRQ0JxUVZnRmFBSUhBQUFBQW9CQUVDcVFWZ0ZhQUlICkFBQUFDZ0VBWU9wQldBVm9BZ2NB
QUFBTEFRQWdTcEJXQVZvQWdjQUFBQUFWQmdVUkE0ZjBUczBLUzl5aGxEckQxSnNYSHdDQUFBQUEK
Q0NIa0lRQ2xBRURnQUFBQUNpRUFnZVFoQUxVQVFPQUFBQUFLSVFCQXVRaEFMVUFRT0FBQUFBb2hB
R0Q1Q0VBdFFCQTRBQUFBRENFQQpJRTVDRUF0UURZOEZjQUFBQUJVR0JSRURoL1JPelFwTDNLR1VP
c1BVbXhjZkFJQUFBQUFJQWFsSFlCR2dDQndBQUFBS0FRQ0JxVWRnCkZhQUlIQUFBQUFvQkFFQ3FV
ZGdGYUFJSEFBQUFDZ0VBWU9wUjJBVm9BZ2NBQUFBTEFRQWdTcFIyQVZvQWdjQUFBQUFWQmdVUkE0
ZjAKVHMwS1M5eWhsRHJEMUpzWEh3Q0FBQUFBQ0NIbEtRQ2xBRURnQUFBQUNpRUFnZVVwQUxVQVFP
QUFBQUFLSVFCQXVVcEFMVUFRT0FBQQpBQW9oQUdENVNrQXRRQkE0QUFBQURDRUFJRTVTa0F0UURZ
OEZjQUFBQUJVR0JSRURoL1JPelFwTDNLR1VPc1BVbXhjZkFJQUFBQUFJCkFhbUpZQkdnQ0J3QUFB
QUtBUUNCcVlsZ0ZhQUlIQUFBQUFvQkFFQ3FZbGdGYUFJSEFBQUFDZ0VBWU9waVdBVm9BZ2NBQUFB
TEFRQWcKU3BpV0FWb0FnY0FBQUFBVkJnVVJBNGYwVHMwS1M5eWhsRHJEMUpzWEh3Q0FBQUFBQ0NI
bU1RQ2xBRURnQUFBQUNpRUFnZVl4QUxVQQpRT0FBQUFBS0lRQkF1WXhBTFVBUU9BQUFBQW9oQUdE
NWpFQXRRQkE0QUFBQURDRUFJRTVqRUF0UURZOEZjQUFBQUJVR0JSRURoL1JPCnpRcEwzS0dVT3NQ
VW14Y2ZBSUFBQUFBSUFhbkxZQkdnQ0J3QUFBQUtBUUNCcWN0Z0ZhQUlIQUFBQUFvQkFFQ3FjdGdG
YUFJSEFBQUEKQ2dFQVlPcHkyQVZvQWdjQUFBQUxBUUFnU3B5MkFWb0FnY0FBQUFBVkJnVVJBNGYw
VHMwS1M5eWhsRHJEMUpzWEh3Q0FBQUFBQ0NIbgpPUUNsQUVEZ0FBQUFDaUVBZ2VjNUFMVUFRT0FB
QUFBS0lRQkF1YzVBTFVBUU9BQUFBQW9oQUdENXprQXRRQkE0QUFBQURDRUFJRTV6CmtBdFFEWThG
Y0FBQUFCVUdCUkVEaC9ST3pRcEwzS0dVT3NQVW14Y2ZBSUFBQUFBSUFhb05ZQkdnQ0J3QUFBQUtB
UUNCcWcxZ0ZhQUkKSEFBQUFBb0JBRUNxZzFnRmFBSUhBQUFBQ2dFQVlPcURXQVZvQWdjQUFBQUxB
UUFnU3FEV0FWb0FnY0FBQUFBVkJnVVJBNGYwVHMwSwpTOXlobERyRDFKc1hId0NBQUFBQUNDSG9R
UUNsQUVEZ0FBQUFDaUVBZ2VoQkFMVUFRT0FBQUFBS0lRQkF1aEJBTFVBUU9BQUFBQW9oCkFHRDZF
RUF0UUJBNEFBQUFEQ0VBSUU2RUVBdFFEWThGY0FBQUFCVUdCUkVEaC9ST3pRcEwzS0dVT3NQVW14
Y2ZBSUFBQUFBSUFhcFAKWUJHZ0NCd0FBQUFLQVFDQnFrOWdGYUFJSEFBQUFBb0JBRUNxazlnRmFB
SUhBQUFBQ2dFQVlPcVQyQVZvQWdjQUFBQUxBUUFnU3FUMgpBVm9BZ2NBQUFBQVZCZ1VSQTRmMFRz
MEtTOXlobERyRDFKc1hId0NBQUFBQUNDSHBTUUNsQUVEZ0FBQUFDaUVBZ2VsSkFMVUFRT0FBCkFB
QUtJUUJBdWxKQUxVQVFPQUFBQUFvaEFHRDZVa0F0UUJBNEFBQUFEQ0VBSUU2VWtBdFFEWThGY0FB
QUFCVUdCUkVEaC9ST3pRcEwKM0tHVU9zUFVteGNmQUlBQUFBQUlBYXFSWUJHZ0NCd0FBQUFLQVFD
QnFwRmdGYUFJSEFBQUFBb0JBRUNxcEZnRmFBSUhBQUFBQ2dFQQpZT3FrV0FWb0FnY0FBQUFMQVFB
Z1Nxa1dBVm9BZ2NBQUFBQVZCZ1VSQTRmMFRzMEtTOXlobERyRDFKc1hId0NBQUFBQUNDSHFVUUNs
CkFFRGdBQUFBQ2lFQWdlcFJBTFVBUU9BQUFBQUtJUUJBdXBSQUxVQVFPQUFBQUFvaEFHRDZsRUF0
UUJBNEFBQUFEQ0VBSUU2bEVBdFEKRFk4RmNBQUFBQlVHQlJFRGgvUk96UXBMM0tHVU9zUFVteGNm
QUlBQUFBQUlBYXJUWUJHZ0NCd0FBQUFLQVFDQnF0TmdGYUFJSEFBQQpBQW9CQUVDcXROZ0ZhQUlI
QUFBQUNnRUFZT3EwMkFWb0FnY0FBQUFMQVFBZ1NxMDJBVm9BZ2NBQUFBQVZCZ1VSQTRmMFRzMEtT
OXloCmxEckQxSnNYSHdDQUFBQUFDQ0hyV1FDbEFFRGdBQUFBQ2lFQWdldFpBTFVBUU9BQUFBQUtJ
UUJBdXRaQUxVQVFPQUFBQUFvaEFHRDYKMWtBdFFCQTRBQUFBRENFQUlFNjFrQXRRRFk4RmNBQUFB
QlVHQlJFRGgvUk96UXBMM0tHVU9zUFVteGNmQUlBQUFBQUlBYXNWWUJHZwpDQndBQUFBS0FRQ0Jx
eFZnRmFBSUhBQUFBQW9CQUVDcXhWZ0ZhQUlIQUFBQUNnRUFZT3JGV0FWb0FnY0FBQUFMQVFBZ1Ny
RldBVm9BCmdjQUFBQUFWQmdVUkE0ZjBUczBLUzl5aGxEckQxSnNYSHdDQUFBQUFDQUhzWFFFYUFJ
SEFBQUFBQ2dFQWdleGRBVm9BZ2NBQUFBQUsKQVFCQXV4ZEFWb0FnY0FBQUFBb0JBR0Q3RjBCV2dD
QndBQUFBQ2dFQUlFN0YwQldnQ0J3QUFBQVZCZ1VSQTRmMFRzMEtTOXlobERyRAoxSnNYSHdDQUFB
QUJUeVc0SUNBcFgvLzRLNEFIRVJFQWhLVUs0d3dBSEVHSENwQUFDVitBNEFBa3VBQVVraUpDYkla
R1lNT0FCWGJOCnNiOVNxN2hoM0xmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZm
ZmZmL2gvNGNJQUJSaUNOeVJKWWJuczRUWC9BTUUKNTJPQlFBQWhNZ0FDRDRJQUFJUHdBQWd4NEFH
K2JwZ0FDQXg1TUFBSU9yNldBQUlEUUFBZzdzUUFhU1dnQUJBUjFvQUFndWYrZExBQQpFQk1BQVFY
bUZMWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhUSlV0ZGRkZGRkZGRk
ZGRkZGRkZGRkZGRkCmRkZGRkZGRkZGRkZGRkZGRkZGRkTWxTMTExMTExMTExMTExMTExMTExMTEx
MTExMTExMTExMTExMTExMTExMTEweVZMWFhYWFhYWFgKWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhY
WFhYWFhYWFhYVEpVdGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZApkZE1t
QUFBQklDVUFnYmdnSUMxZi8vZ2lpZ0FDRko0NEFBblB4d0FCTWV2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2
dnZ2dnZ2dnZ2dnZ2dnZ2CnZ2dnZ2dnYvdy84RmhBSEFBTEFDZ1FWVFA0Z0FBaExnQUNEMUVBQUVI
NEFBUVk4SEFBRUJvQUFRZDJJT0FBSURRQUFnN3NRY0FBUUUKd0FCQmVZZzRBQWdKZ0FDQzh3cGE2
NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NlpLbHJycnJycnJycnJycgpy
cnJycnJycnJycnJycnJycnJycnJycnJycnJycnBrcVd1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1
dXV1dXV1dXV1dXV1dXV1dW1TCnBhNjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2
NjY2NjZaS2xycnJycnJycnJycnJycnJycnJycnJycnJycnJycnIKcnJycnJycnJycnJwa3dBQUFT
RWxBRUN1Q0FnTFYvLytDS0tBQUlVbmpnQUNjL0hBQUV4NisrKysrKysrKysrKysrKysrKysrKysr
KworKysrKysrKysrKysrKysrLy9EL3dXRUFjQUFzQUtCQlZNL2lBQUNFdUFBSVBVUUFBUWZnQUJC
andjQUFRR2dBQkIzWWc0QUFnTkFBCkNEdXhCd0FCQVRBQUVGNWlEZ0FDQW1BQUlMekNscnJycnJy
cnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJwa3FXdXUKdXV1dXV1dXV1dXV1dXV1
dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1bVNwYTY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2
NjY2Ngo2NjY2NjY2NlpLbHJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJy
cGtxV3V1dXV1dXV1dXV1dXV1dXV1dXV1CnV1dXV1dXV1dXV1dXV1dXV1dXV1dW1UQUFBQUJJU1VB
WU80SUNBdFgvLzRJb29BQWhTZU9BQUp6OGNBQVRIcjc3Nzc3Nzc3Nzc3NzcKNzc3Nzc3Nzc3Nzc3
Nzc3Nzc3Nzc3Nzc3Nzc3LzhQL0JZUUJ3QUN3QW9FRlV6K0lBQUlTNEFBZzlSQUFCQitBQUVHUEJ3
QUJBYUFBRQpIZGlEZ0FDQTBBQUlPN0VIQUFFQk1BQVFYbUlPQUFJQ1lBQWd2TUtXdXV1dXV1dXV1
dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1CnV1dXV1bVNwYTY2NjY2NjY2NjY2NjY2NjY2NjY2
NjY2NjY2NjY2NjY2NjY2NjY2NjY2WktscnJycnJycnJycnJycnJycnJycnJycnIKcnJycnJycnJy
cnJycnJycnJycGtxV3V1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1bVNw
YTY2NjY2NjY2Ngo2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NlpNQUFBQUYzSlFBZ1M0
SUNBdFgvLzRJb29BQWhTZU9BQUp6OGNBQVRIcjc3Cjc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3
Nzc3Nzc3Nzc3Nzc3LzhQL0JZUUJ3QUN3QW9FRlV6K0lBQUlTNEFBZzlSQUFCQitBQUUKR1BCd0FC
QWFBQUVIZGlEZ0FDQTBBQUlPN0VIQUFFQk1BQVFYbUlPQUFJQ1lBQWd2TUtXdXV1dXV1dXV1dXV1
dXV1dXV1dXV1dXV1dQp1dXV1dXV1dXV1dXV1dXV1bVNwYTY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2
NjY2NjY2NjY2NjY2NjY2NjY2WktscnJycnJycnJycnJyCnJycnJycnJycnJycnJycnJycnJycnJy
cnJycnJycGtxV3V1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1bVMKRnNB
QkdaR1JtUmtSa1pGLzRBQnNqTUJDMG9YeGxndjhKYVFBdUFCWFRJMko4aDBkZzhBQ2swYVEyNmtW
bkRVdGRkZGRkZGRkZGRkZApkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRjTE1nQUNNaU15TXlJ
eUl6TC8vQUE2aEJXN0lqeXR1TTNmZUFkNEFHbVQ1Tjg1OXdBCm5tcHBkLzYzQUFBQUZRWUZFUU9I
OUU3TkNrdmNvWlE2dzlTYkZ4OEFnQUFBQUFnaDRRa0FwUUJBNEFBQUFBb2hBSUhoQ1FDMUFFRGcK
QUFBQUNpRUFRTGhDUUMxQUVEZ0FBQUFLSVFCZytFSkFMVUFRT0FBQUFBd2hBQ0JPRUpBTFVBMlBC
WEFBQUFBVkJnVVJBNGYwVHMwSwpTOXlobERyRDFKc1hId0NBQUFBQUNBR29nV0FSb0FnY0FBQUFD
Z0VBZ2FpQllCV2dDQndBQUFBS0FRQkFxaUJZQldnQ0J3QUFBQW9CCkFHRHFJRmdGYUFJSEFBQUFD
d0VBSUVxSUZnRmFBSUhBQUFBQUZRWUZFUU9IOUU3TkNrdmNvWlE2dzlTYkZ4OEFnQUFBQUFnaDRo
RUEKcFFCQTRBQUFBQW9oQUlIaUVRQzFBRURnQUFBQUNpRUFRTGlFUUMxQUVEZ0FBQUFLSVFCZytJ
UkFMVUFRT0FBQUFBd2hBQ0JPSVJBTApVQTJQQlhBQUFBQVZCZ1VSQTRmMFRzMEtTOXlobERyRDFK
c1hId0NBQUFBQUNBR293MkFSb0FnY0FBQUFDZ0VBZ2FqRFlCV2dDQndBCkFBQUtBUUJBcWpEWUJX
Z0NCd0FBQUFvQkFHRHFNTmdGYUFJSEFBQUFDd0VBSUVxTU5nRmFBSUhBQUFBQUZRWUZFUU9IOUU3
TkNrdmMKb1pRNnc5U2JGeDhBZ0FBQUFBZ2g0eGtBcFFCQTRBQUFBQW9oQUlIakdRQzFBRURnQUFB
QUNpRUFRTGpHUUMxQUVEZ0FBQUFLSVFCZworTVpBTFVBUU9BQUFBQXdoQUNCT01aQUxVQTJQQlhB
QUFBQVZCZ1VSQTRmMFRzMEtTOXlobERyRDFKc1hId0NBQUFBQUNBR3BCV0FSCm9BZ2NBQUFBQ2dF
QWdha0ZZQldnQ0J3QUFBQUtBUUJBcWtGWUJXZ0NCd0FBQUFvQkFHRHFRVmdGYUFJSEFBQUFDd0VB
SUVxUVZnRmEKQUlIQUFBQUFGUVlGRVFPSDlFN05Da3Zjb1pRNnc5U2JGeDhBZ0FBQUFBZ2g1Q0VB
cFFCQTRBQUFBQW9oQUlIa0lRQzFBRURnQUFBQQpDaUVBUUxrSVFDMUFFRGdBQUFBS0lRQmcrUWhB
TFVBUU9BQUFBQXdoQUNCT1FoQUxVQTJQQlhBQUFBQVZCZ1VSQTRmMFRzMEtTOXloCmxEckQxSnNY
SHdDQUFBQUFDQUdwUjJBUm9BZ2NBQUFBQ2dFQWdhbEhZQldnQ0J3QUFBQUtBUUJBcWxIWUJXZ0NC
d0FBQUFvQkFHRHEKVWRnRmFBSUhBQUFBQ3dFQUlFcVVkZ0ZhQUlIQUFBQUFGUVlGRVFPSDlFN05D
a3Zjb1pRNnc5U2JGeDhBZ0FBQUFBZ2g1U2tBcFFCQQo0QUFBQUFvaEFJSGxLUUMxQUVEZ0FBQUFD
aUVBUUxsS1FDMUFFRGdBQUFBS0lRQmcrVXBBTFVBUU9BQUFBQXdoQUNCT1VwQUxVQTJQCkJYQUFB
QUFWQmdVUkE0ZjBUczBLUzl5aGxEckQxSnNYSHdDQUFBQUFDQUdwaVdBUm9BZ2NBQUFBQ2dFQWdh
bUpZQldnQ0J3QUFBQUsKQVFCQXFtSllCV2dDQndBQUFBb0JBR0RxWWxnRmFBSUhBQUFBQ3dFQUlF
cVlsZ0ZhQUlIQUFBQUFGUVlGRVFPSDlFN05Da3Zjb1pRNgp3OVNiRng4QWdBQUFBQWdoNWpFQXBR
QkE0QUFBQUFvaEFJSG1NUUMxQUVEZ0FBQUFDaUVBUUxtTVFDMUFFRGdBQUFBS0lRQmcrWXhBCkxV
QVFPQUFBQUF3aEFDQk9ZeEFMVUEyUEJYQUFBQUFWQmdVUkE0ZjBUczBLUzl5aGxEckQxSnNYSHdD
QUFBQUFDQUdweTJBUm9BZ2MKQUFBQUNnRUFnYW5MWUJXZ0NCd0FBQUFLQVFCQXFuTFlCV2dDQndB
QUFBb0JBR0RxY3RnRmFBSUhBQUFBQ3dFQUlFcWN0Z0ZhQUlIQQpBQUFBRlFZRkVRT0g5RTdOQ2t2
Y29aUTZ3OVNiRng4QWdBQUFBQWdoNXprQXBRQkE0QUFBQUFvaEFJSG5PUUMxQUVEZ0FBQUFDaUVB
ClFMbk9RQzFBRURnQUFBQUtJUUJnK2M1QUxVQVFPQUFBQUF3aEFDQk9jNUFMVUEyUEJYQUFBQUFW
QmdVUkE0ZjBUczBLUzl5aGxEckQKMUpzWEh3Q0FBQUFBQ0FHcURXQVJvQWdjQUFBQUNnRUFnYW9O
WUJXZ0NCd0FBQUFLQVFCQXFvTllCV2dDQndBQUFBb0JBR0RxZzFnRgphQUlIQUFBQUN3RUFJRXFn
MWdGYUFJSEFBQUFBRlFZRkVRT0g5RTdOQ2t2Y29aUTZ3OVNiRng4QWdBQUFBQWdoNkVFQXBRQkE0
QUFBCkFBb2hBSUhvUVFDMUFFRGdBQUFBQ2lFQVFMb1FRQzFBRURnQUFBQUtJUUJnK2hCQUxVQVFP
QUFBQUF3aEFDQk9oQkFMVUEyUEJYQUEKQUFBVkJnVVJBNGYwVHMwS1M5eWhsRHJEMUpzWEh3Q0FB
QUFBQ0FHcVQyQVJvQWdjQUFBQUNnRUFnYXBQWUJXZ0NCd0FBQUFLQVFCQQpxcFBZQldnQ0J3QUFB
QW9CQUdEcWs5Z0ZhQUlIQUFBQUN3RUFJRXFrOWdGYUFJSEFBQUFBRlFZRkVRT0g5RTdOQ2t2Y29a
UTZ3OVNiCkZ4OEFnQUFBQUFnaDZVa0FwUUJBNEFBQUFBb2hBSUhwU1FDMUFFRGdBQUFBQ2lFQVFM
cFNRQzFBRURnQUFBQUtJUUJnK2xKQUxVQVEKT0FBQUFBd2hBQ0JPbEpBTFVBMlBCWEFBQUFBVkJn
VVJBNGYwVHMwS1M5eWhsRHJEMUpzWEh3Q0FBQUFBQ0FHcWtXQVJvQWdjQUFBQQpDZ0VBZ2FxUllC
V2dDQndBQUFBS0FRQkFxcVJZQldnQ0J3QUFBQW9CQUdEcXBGZ0ZhQUlIQUFBQUN3RUFJRXFwRmdG
YUFJSEFBQUFBCkZRWUZFUU9IOUU3TkNrdmNvWlE2dzlTYkZ4OEFnQUFBQUFnaDZsRUFwUUJBNEFB
QUFBb2hBSUhxVVFDMUFFRGdBQUFBQ2lFQVFMcVUKUUMxQUVEZ0FBQUFLSVFCZytwUkFMVUFRT0FB
QUFBd2hBQ0JPcFJBTFVBMlBCWEFBQUFBVkJnVVJBNGYwVHMwS1M5eWhsRHJEMUpzWApId0NBQUFB
QUNBR3EwMkFSb0FnY0FBQUFDZ0VBZ2FyVFlCV2dDQndBQUFBS0FRQkFxclRZQldnQ0J3QUFBQW9C
QUdEcXROZ0ZhQUlICkFBQUFDd0VBSUVxdE5nRmFBSUhBQUFBQUZRWUZFUU9IOUU3TkNrdmNvWlE2
dzlTYkZ4OEFnQUFBQUFnaDYxa0FwUUJBNEFBQUFBb2gKQUlIcldRQzFBRURnQUFBQUNpRUFRTHJX
UUMxQUVEZ0FBQUFLSVFCZyt0WkFMVUFRT0FBQUFBd2hBQ0JPdFpBTFVBMlBCWEFBQUFBVgpCZ1VS
QTRmMFRzMEtTOXlobERyRDFKc1hId0NBQUFBQUNBR3JGV0FSb0FnY0FBQUFDZ0VBZ2FzVllCV2dD
QndBQUFBS0FRQkFxc1ZZCkJXZ0NCd0FBQUFvQkFHRHF4VmdGYUFJSEFBQUFDd0VBSUVxeFZnRmFB
SUhBQUFBQUZRWUZFUU9IOUU3TkNrdmNvWlE2dzlTYkZ4OEEKZ0FBQUFBZ0I3RjBCR2dDQndBQUFB
QW9CQUlIc1hRRmFBSUhBQUFBQUNnRUFRTHNYUUZhQUlIQUFBQUFLQVFCZyt4ZEFWb0FnY0FBQQpB
QW9CQUNCT3hkQVZvQWdjQUFBQUZRWUZFUU9IOUU3TkNrdmNvWlE2dzlTYkZ4OEFnQUFBQVU4bHVD
QWdLVi8vK0N1QUJ4RVJBSVNsCkN1TU1BQnhCaHdxUUFBbGZnT0FBSkxnQUZKSWlRbXlHUm1ERGdB
VjJ6YkcvVXF1NFlkeTMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMKMzMzMzMzMzMzMzMzMzMzLzRm
K0hDQUFVWWdqY2tTV0c1N09FMS93REJPZGpnVUFBSVRJQUFnK0NBQUNEOEFBSU1lQUJ2bTZZQUFn
TQplVEFBQ0RxK2xnQUNBMEFBSU83RUFHa2xvQUFRRWRhQUFJTG4vblN3QUJBVEFBRUY1aFMxMTEx
MTExMTExMTExMTExMTExMTExMTExCjExMTExMTExMTExMTExMTEweVZMWFhYWFhYWFhYWFhYWFhY
WFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhUSlV0ZGRkZGRkZGRkZGQKZGRkZGRkZGRkZGRkZGRk
ZGRkZGRkZGRkZGRkZGRkTWxTMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTEx
MTEweQpWTFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYVEpnQUFBU0Fs
QUlHNElDQXRYLy80SW9vQUFoU2VPQUFKCno4Y0FBVEhyNzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3
Nzc3Nzc3Nzc3Nzc3Nzc3Ny84UC9CWVFCd0FDd0FvRUZVeitJQUFJUzRBQWcKOVJBQUJCK0FBRUdQ
QndBQkFhQUFFSGRpRGdBQ0EwQUFJTzdFSEFBRUJNQUFRWG1JT0FBSUNZQUFndk1LV3V1dXV1dXV1
dXV1dXV1dQp1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dW1TcGE2NjY2NjY2NjY2NjY2NjY2NjY2
NjY2NjY2NjY2NjY2NjY2NjY2NjY2NlpLbHJyCnJycnJycnJycnJycnJycnJycnJycnJycnJycnJy
cnJycnJycnJycnBrcVd1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXUKdXV1dXV1dXVt
U3BhNjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjZaTUFBQUVoSlFCQXJn
Z0lDMWYvL2dpaQpnQUNGSjQ0QUFuUHh3QUJNZXZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2
dnZ2dnZ2dnZ2dnZ2L3cvOEZoQUhBQUxBQ2dRVlRQCjRnQUFoTGdBQ0QxRUFBRUg0QUFRWThIQUFF
Qm9BQVFkMklPQUFJRFFBQWc3c1FjQUFRRXdBQkJlWWc0QUFnSmdBQ0M4d3BhNjY2NjYKNjY2NjY2
NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2WktscnJycnJycnJycnJycnJycnJycnJycnJy
cnJycnJycnJycnJycgpycnJycGtxV3V1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1
dXV1dXV1bVNwYTY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2CjY2NjY2NjY2NjY2NjY2NjY2NlpLbHJy
cnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycGt3QUFBQVNFbEFHRHUKQ0Fn
TFYvLytDS0tBQUlVbmpnQUNjL0hBQUV4NisrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysr
KysrKysrKysvL0Qvd1dFQQpjQUFzQUtCQlZNL2lBQUNFdUFBSVBVUUFBUWZnQUJCandjQUFRR2dB
QkIzWWc0QUFnTkFBQ0R1eEJ3QUJBVEFBRUY1aURnQUNBbUFBCklMekNscnJycnJycnJycnJycnJy
cnJycnJycnJycnJycnJycnJycnJycnJycnJwa3FXdXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXUK
dXV1dXV1dXV1dXV1dXV1bVNwYTY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2
NjY2WktscnJycnJycnJycnJycgpycnJycnJycnJycnJycnJycnJycnJycnJycnJycGtxV3V1dXV1
dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1bVRBCkFBQUJkeVVBSUV1Q0FnTFYv
LytDS0tBQUlVbmpnQUNjL0hBQUV4NisrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysr
KysKKysrLy9EL3dXRUFjQUFzQUtCQlZNL2lBQUNFdUFBSVBVUUFBUWZnQUJCandjQUFRR2dBQkIz
WWc0QUFnTkFBQ0R1eEJ3QUJBVEFBRQpGNWlEZ0FDQW1BQUlMekNscnJycnJycnJycnJycnJycnJy
cnJycnJycnJycnJycnJycnJycnJycnJwa3FXdXV1dXV1dXV1dXV1dXV1CnV1dXV1dXV1dXV1dXV1
dXV1dXV1dXV1dXV1bVNwYTY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2
WktscnIKcnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycGtoYkFBUm1Sa1pr
WkVaR1JmK0FBYkl6QVF0S0Y4WllML0NXawpBTGdBVjB5TmlmSWRIWVBBQXBOR2tOdXBGWncxTFhY
WFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhDeklBQWpJCmpNak1pTWlNeS8v
d0FPb1FWdXlJOHJiak4zM2dIZUFCcGsrVGZPZmNBSjVxYVhmK3R3QUFBQlVHQlJFRGgvUk96UXBM
M0tHVU9zUFUKbXhjZkFJQUFBQUFJSWVFSkFLVUFRT0FBQUFBS0lRQ0I0UWtBdFFCQTRBQUFBQW9o
QUVDNFFrQXRRQkE0QUFBQUNpRUFZUGhDUUMxQQpFRGdBQUFBTUlRQWdUaENRQzFBTmp3VndBQUFB
RlFZRkVRT0g5RTdOQ2t2Y29aUTZ3OVNiRng4QWdBQUFBQWdCcUlGZ0VhQUlIQUFBCkFBb0JBSUdv
Z1dBVm9BZ2NBQUFBQ2dFQVFLb2dXQVZvQWdjQUFBQUtBUUJnNmlCWUJXZ0NCd0FBQUFzQkFDQktp
QllCV2dDQndBQUEKQUJVR0JSRURoL1JPelFwTDNLR1VPc1BVbXhjZkFJQUFBQUFJSWVJUkFLVUFR
T0FBQUFBS0lRQ0I0aEVBdFFCQTRBQUFBQW9oQUVDNApoRUF0UUJBNEFBQUFDaUVBWVBpRVFDMUFF
RGdBQUFBTUlRQWdUaUVRQzFBTmp3VndBQUFBRlFZRkVRT0g5RTdOQ2t2Y29aUTZ3OVNiCkZ4OEFn
QUFBQUFnQnFNTmdFYUFJSEFBQUFBb0JBSUdvdzJBVm9BZ2NBQUFBQ2dFQVFLb3cyQVZvQWdjQUFB
QUtBUUJnNmpEWUJXZ0MKQndBQUFBc0JBQ0JLakRZQldnQ0J3QUFBQUJVR0JSRURoL1JPelFwTDNL
R1VPc1BVbXhjZkFJQUFBQUFJSWVNWkFLVUFRT0FBQUFBSwpJUUNCNHhrQXRRQkE0QUFBQUFvaEFF
QzR4a0F0UUJBNEFBQUFDaUVBWVBqR1FDMUFFRGdBQUFBTUlRQWdUakdRQzFBTmp3VndBQUFBCkZR
WUZFUU9IOUU3TkNrdmNvWlE2dzlTYkZ4OEFnQUFBQUFnQnFRVmdFYUFJSEFBQUFBb0JBSUdwQldB
Vm9BZ2NBQUFBQ2dFQVFLcEIKV0FWb0FnY0FBQUFLQVFCZzZrRllCV2dDQndBQUFBc0JBQ0JLa0ZZ
QldnQ0J3QUFBQUJVR0JSRURoL1JPelFwTDNLR1VPc1BVbXhjZgpBSUFBQUFBSUllUWhBS1VBUU9B
QUFBQUtJUUNCNUNFQXRRQkE0QUFBQUFvaEFFQzVDRUF0UUJBNEFBQUFDaUVBWVBrSVFDMUFFRGdB
CkFBQU1JUUFnVGtJUUMxQU5qd1Z3QUFBQUZRWUZFUU9IOUU3TkNrdmNvWlE2dzlTYkZ4OEFnQUFB
QUFnQnFVZGdFYUFJSEFBQUFBb0IKQUlHcFIyQVZvQWdjQUFBQUNnRUFRS3BSMkFWb0FnY0FBQUFL
QVFCZzZsSFlCV2dDQndBQUFBc0JBQ0JLbEhZQldnQ0J3QUFBQUJVRwpCUkVEaC9ST3pRcEwzS0dV
T3NQVW14Y2ZBSUFBQUFBSUllVXBBS1VBUU9BQUFBQUtJUUNCNVNrQXRRQkE0QUFBQUFvaEFFQzVT
a0F0ClFCQTRBQUFBQ2lFQVlQbEtRQzFBRURnQUFBQU1JUUFnVGxLUUMxQU5qd1Z3QUFBQUZRWUZF
UU9IOUU3TkNrdmNvWlE2dzlTYkZ4OEEKZ0FBQUFBZ0JxWWxnRWFBSUhBQUFBQW9CQUlHcGlXQVZv
QWdjQUFBQUNnRUFRS3BpV0FWb0FnY0FBQUFLQVFCZzZtSllCV2dDQndBQQpBQXNCQUNCS21KWUJX
Z0NCd0FBQUFCVUdCUkVEaC9ST3pRcEwzS0dVT3NQVW14Y2ZBSUFBQUFBSUllWXhBS1VBUU9BQUFB
QUtJUUNCCjVqRUF0UUJBNEFBQUFBb2hBRUM1akVBdFFCQTRBQUFBQ2lFQVlQbU1RQzFBRURnQUFB
QU1JUUFnVG1NUUMxQU5qd1Z3QUFBQUZRWUYKRVFPSDlFN05Da3Zjb1pRNnc5U2JGeDhBZ0FBQUFB
Z0JxY3RnRWFBSUhBQUFBQW9CQUlHcHkyQVZvQWdjQUFBQUNnRUFRS3B5MkFWbwpBZ2NBQUFBS0FR
Qmc2bkxZQldnQ0J3QUFBQXNCQUNCS25MWUJXZ0NCd0FBQUFCVUdCUkVEaC9ST3pRcEwzS0dVT3NQ
VW14Y2ZBSUFBCkFBQUlJZWM1QUtVQVFPQUFBQUFLSVFDQjV6a0F0UUJBNEFBQUFBb2hBRUM1emtB
dFFCQTRBQUFBQ2lFQVlQbk9RQzFBRURnQUFBQU0KSVFBZ1RuT1FDMUFOandWd0FBQUFGUVlGRVFP
SDlFN05Da3Zjb1pRNnc5U2JGeDhBZ0FBQUFBZ0JxZzFnRWFBSUhBQUFBQW9CQUlHcQpEV0FWb0Fn
Y0FBQUFDZ0VBUUtxRFdBVm9BZ2NBQUFBS0FRQmc2b05ZQldnQ0J3QUFBQXNCQUNCS29OWUJXZ0NC
d0FBQUFCVUdCUkVECmgvUk96UXBMM0tHVU9zUFVteGNmQUlBQUFBQUlJZWhCQUtVQVFPQUFBQUFL
SVFDQjZFRUF0UUJBNEFBQUFBb2hBRUM2RUVBdFFCQTQKQUFBQUNpRUFZUG9RUUMxQUVEZ0FBQUFN
SVFBZ1RvUVFDMUFOandWd0FBQUFGUVlGRVFPSDlFN05Da3Zjb1pRNnc5U2JGeDhBZ0FBQQpBQWdC
cWs5Z0VhQUlIQUFBQUFvQkFJR3FUMkFWb0FnY0FBQUFDZ0VBUUtxVDJBVm9BZ2NBQUFBS0FRQmc2
cFBZQldnQ0J3QUFBQXNCCkFDQktwUFlCV2dDQndBQUFBQlVHQlJFRGgvUk96UXBMM0tHVU9zUFVt
eGNmQUlBQUFBQUlJZWxKQUtVQVFPQUFBQUFLSVFDQjZVa0EKdFFCQTRBQUFBQW9oQUVDNlVrQXRR
QkE0QUFBQUNpRUFZUHBTUUMxQUVEZ0FBQUFNSVFBZ1RwU1FDMUFOandWd0FBQUFGUVlGRVFPSAo5
RTdOQ2t2Y29aUTZ3OVNiRng4QWdBQUFBQWdCcXBGZ0VhQUlIQUFBQUFvQkFJR3FrV0FWb0FnY0FB
QUFDZ0VBUUtxa1dBVm9BZ2NBCkFBQUtBUUJnNnFSWUJXZ0NCd0FBQUFzQkFDQktxUllCV2dDQndB
QUFBQlVHQlJFRGgvUk96UXBMM0tHVU9zUFVteGNmQUlBQUFBQUkKSWVwUkFLVUFRT0FBQUFBS0lR
Q0I2bEVBdFFCQTRBQUFBQW9oQUVDNmxFQXRRQkE0QUFBQUNpRUFZUHFVUUMxQUVEZ0FBQUFNSVFB
ZwpUcVVRQzFBTmp3VndBQUFBRlFZRkVRT0g5RTdOQ2t2Y29aUTZ3OVNiRng4QWdBQUFBQWdCcXRO
Z0VhQUlIQUFBQUFvQkFJR3EwMkFWCm9BZ2NBQUFBQ2dFQVFLcTAyQVZvQWdjQUFBQUtBUUJnNnJU
WUJXZ0NCd0FBQUFzQkFDQktyVFlCV2dDQndBQUFBQlVHQlJFRGgvUk8KelFwTDNLR1VPc1BVbXhj
ZkFJQUFBQUFJSWV0WkFLVUFRT0FBQUFBS0lRQ0I2MWtBdFFCQTRBQUFBQW9oQUVDNjFrQXRRQkE0
QUFBQQpDaUVBWVByV1FDMUFFRGdBQUFBTUlRQWdUcldRQzFBTmp3VndBQUFBRlFZRkVRT0g5RTdO
Q2t2Y29aUTZ3OVNiRng4QWdBQUFBQWdCCnF4VmdFYUFJSEFBQUFBb0JBSUdyRldBVm9BZ2NBQUFB
Q2dFQVFLckZXQVZvQWdjQUFBQUtBUUJnNnNWWUJXZ0NCd0FBQUFzQkFDQksKc1ZZQldnQ0J3QUFB
QUJVR0JSRURoL1JPelFwTDNLR1VPc1BVbXhjZkFJQUFBQUFJQWV4ZEFSb0FnY0FBQUFBS0FRQ0I3
RjBCV2dDQgp3QUFBQUFvQkFFQzdGMEJXZ0NCd0FBQUFDZ0VBWVBzWFFGYUFJSEFBQUFBS0FRQWdU
c1hRRmFBSUhBQUFBQlVHQlJFRGgvUk96UXBMCjNLR1VPc1BVbXhjZkFJQUFBQUZQSmJnZ0lDbGYv
L2dyZ0FjUkVRQ0VwUXJqREFBY1FZY0trQUFKWDREZ0FDUzRBQlNTSWtKc2hrWmcKdzRBRmRzMnh2
MUtydUdIY3Q5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTkvK0gvaHdnQUZH
SUkzSkVsaHVlegpoTmY4QXdUblk0RkFBQ0V5QUFJUGdnQUFnL0FBQ0RIZ0FiNXVtQUFJREhrd0FB
ZzZ2cFlBQWdOQUFDRHV4QUJwSmFBQUVCSFdnQUNDCjUvNTBzQUFRRXdBQkJlWVV0ZGRkZGRkZGRk
ZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRNbFMxMTExMTExMTExMTExMTEKMTExMTEx
MTExMTExMTExMTExMTExMTExMTEweVZMWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhY
WFhYWFhYWFhUSlV0ZApkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkTWxT
MTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExCjExMTExMTExMHlZQUFBRWdKUUNCdUNB
Z0xWLy8rQ0tLQUFJVW5qZ0FDYy9IQUFFeDYrKysrKysrKysrKysrKysrKysrKysrKysrKysKKysr
KysrKysrKysrKy8vRC93V0VBY0FBc0FLQkJWTS9pQUFDRXVBQUlQVVFBQVFmZ0FCQmp3Y0FBUUdn
QUJCM1lnNEFBZ05BQUNEdQp4QndBQkFUQUFFRjVpRGdBQ0FtQUFJTHpDbHJycnJycnJycnJycnJy
cnJycnJycnJycnJycnJycnJycnJycnJycnJycGtxV3V1dXV1CnV1dXV1dXV1dXV1dXV1dXV1dXV1
dXV1dXV1dXV1dXV1dXV1dW1TcGE2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjYK
NjY2NjZaS2xycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnBrcVd1dXV1
dXV1dXV1dXV1dXV1dXV1dXV1dQp1dXV1dXV1dXV1dXV1dXV1dXVtVEFBQUJJU1VBUUs0SUNBdFgv
LzRJb29BQWhTZU9BQUp6OGNBQVRIcjc3Nzc3Nzc3Nzc3Nzc3Nzc3Cjc3Nzc3Nzc3Nzc3Nzc3Nzc3
Nzc3Nzc3LzhQL0JZUUJ3QUN3QW9FRlV6K0lBQUlTNEFBZzlSQUFCQitBQUVHUEJ3QUJBYUFBRUhk
aUQKZ0FDQTBBQUlPN0VIQUFFQk1BQVFYbUlPQUFJQ1lBQWd2TUtXdXV1dXV1dXV1dXV1dXV1dXV1
dXV1dXV1dXV1dXV1dXV1dXV1dXV1dQp1bVNwYTY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2
NjY2NjY2NjY2NjY2WktscnJycnJycnJycnJycnJycnJycnJycnJycnJyCnJycnJycnJycnJycnJy
cGtxV3V1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1bVNwYTY2NjY2NjY2
NjY2NjYKNjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NlpNQUFBQUVoSlFCZzdnZ0lDMWYvL2dp
aWdBQ0ZKNDRBQW5QeHdBQk1ldnZ2dnZ2dgp2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2
dnZ2L3cvOEZoQUhBQUxBQ2dRVlRQNGdBQWhMZ0FDRDFFQUFFSDRBQVFZOEhBCkFFQm9BQVFkMklP
QUFJRFFBQWc3c1FjQUFRRXdBQkJlWWc0QUFnSmdBQ0M4d3BhNjY2NjY2NjY2NjY2NjY2NjY2NjY2
NjY2NjY2NjYKNjY2NjY2NjY2NjY2WktscnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJy
cnJycnJycnJwa3FXdXV1dXV1dXV1dXV1dXV1dQp1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1bVNw
YTY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2WktscnJyCnJycnJycnJy
cnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycGt3QUFBQVhjbEFDQkxnZ0lDMWYvL2dpaWdB
Q0ZKNDRBQW5QeHcKQUJNZXZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2
L3cvOEZoQUhBQUxBQ2dRVlRQNGdBQWhMZ0FDRDFFQQpBRUg0QUFRWThIQUFFQm9BQVFkMklPQUFJ
RFFBQWc3c1FjQUFRRXdBQkJlWWc0QUFnSmdBQ0M4d3BhNjY2NjY2NjY2NjY2NjY2NjY2CjY2NjY2
NjY2NjY2NjY2NjY2NjY2NjY2WktscnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJy
cnJycnJwa3FXdXV1dXUKdXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1bVNwYTY2
NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2Ngo2NjY2NlpJV3dBRVprWkdaR1JHUmtY
L2dBR3lNd0VMU2hmR1dDL3dscEFDNEFGZE1qWW55SFIyRHdBS1RScERicVJXY05TMTExMTExCjEx
MTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTF3c3lBQUl5SXpJeklqSWpNdi84QURxRUZi
c2lQSzI0emQ5NEIzZ0FhWlAKazN6bjNBQ2VhbWwzL3JjQUFBQVZCZ1VSQTRmMFRzMEtTOXlobERy
RDFKc1hId0NBQUFBQUNDSGhDUUNsQUVEZ0FBQUFDaUVBZ2VFSgpBTFVBUU9BQUFBQUtJUUJBdUVK
QUxVQVFPQUFBQUFvaEFHRDRRa0F0UUJBNEFBQUFEQ0VBSUU0UWtBdFFEWThGY0FBQUFCVUdCUkVE
CmgvUk96UXBMM0tHVU9zUFVteGNmQUlBQUFBQUlBYWlCWUJHZ0NCd0FBQUFLQVFDQnFJRmdGYUFJ
SEFBQUFBb0JBRUNxSUZnRmFBSUgKQUFBQUNnRUFZT29nV0FWb0FnY0FBQUFMQVFBZ1NvZ1dBVm9B
Z2NBQUFBQVZCZ1VSQTRmMFRzMEtTOXlobERyRDFKc1hId0NBQUFBQQpDQ0hpRVFDbEFFRGdBQUFB
Q2lFQWdlSVJBTFVBUU9BQUFBQUtJUUJBdUlSQUxVQVFPQUFBQUFvaEFHRDRoRUF0UUJBNEFBQUFE
Q0VBCklFNGhFQXRRRFk4RmNBQUFBQlVHQlJFRGgvUk96UXBMM0tHVU9zUFVteGNmQUlBQUFBQUlB
YWpEWUJHZ0NCd0FBQUFLQVFDQnFNTmcKRmFBSUhBQUFBQW9CQUVDcU1OZ0ZhQUlIQUFBQUNnRUFZ
T293MkFWb0FnY0FBQUFMQVFBZ1NvdzJBVm9BZ2NBQUFBQVZCZ1VSQTRmMApUczBLUzl5aGxEckQx
SnNYSHdDQUFBQUFDQ0hqR1FDbEFFRGdBQUFBQ2lFQWdlTVpBTFVBUU9BQUFBQUtJUUJBdU1aQUxV
QVFPQUFBCkFBb2hBR0Q0eGtBdFFCQTRBQUFBRENFQUlFNHhrQXRRRFk4RmNBQUFBQlVHQlJFRGgv
Uk96UXBMM0tHVU9zUFVteGNmQUlBQUFBQUkKQWFrRllCR2dDQndBQUFBS0FRQ0JxUVZnRmFBSUhB
QUFBQW9CQUVDcVFWZ0ZhQUlIQUFBQUNnRUFZT3BCV0FWb0FnY0FBQUFMQVFBZwpTcEJXQVZvQWdj
QUFBQUFWQmdVUkE0ZjBUczBLUzl5aGxEckQxSnNYSHdDQUFBQUFDQ0hrSVFDbEFFRGdBQUFBQ2lF
QWdlUWhBTFVBClFPQUFBQUFLSVFCQXVRaEFMVUFRT0FBQUFBb2hBR0Q1Q0VBdFFCQTRBQUFBRENF
QUlFNUNFQXRRRFk4RmNBQUFBQlVHQlJFRGgvUk8KelFwTDNLR1VPc1BVbXhjZkFJQUFBQUFJQWFs
SFlCR2dDQndBQUFBS0FRQ0JxVWRnRmFBSUhBQUFBQW9CQUVDcVVkZ0ZhQUlIQUFBQQpDZ0VBWU9w
UjJBVm9BZ2NBQUFBTEFRQWdTcFIyQVZvQWdjQUFBQUFWQmdVUkE0ZjBUczBLUzl5aGxEckQxSnNY
SHdDQUFBQUFDQ0hsCktRQ2xBRURnQUFBQUNpRUFnZVVwQUxVQVFPQUFBQUFLSVFCQXVVcEFMVUFR
T0FBQUFBb2hBR0Q1U2tBdFFCQTRBQUFBRENFQUlFNVMKa0F0UURZOEZjQUFBQUJVR0JSRURoL1JP
elFwTDNLR1VPc1BVbXhjZkFJQUFBQUFJQWFtSllCR2dDQndBQUFBS0FRQ0JxWWxnRmFBSQpIQUFB
QUFvQkFFQ3FZbGdGYUFJSEFBQUFDZ0VBWU9waVdBVm9BZ2NBQUFBTEFRQWdTcGlXQVZvQWdjQUFB
QUFWQmdVUkE0ZjBUczBLClM5eWhsRHJEMUpzWEh3Q0FBQUFBQ0NIbU1RQ2xBRURnQUFBQUNpRUFn
ZVl4QUxVQVFPQUFBQUFLSVFCQXVZeEFMVUFRT0FBQUFBb2gKQUdENWpFQXRRQkE0QUFBQURDRUFJ
RTVqRUF0UURZOEZjQUFBQUJVR0JSRURoL1JPelFwTDNLR1VPc1BVbXhjZkFJQUFBQUFJQWFuTApZ
QkdnQ0J3QUFBQUtBUUNCcWN0Z0ZhQUlIQUFBQUFvQkFFQ3FjdGdGYUFJSEFBQUFDZ0VBWU9weTJB
Vm9BZ2NBQUFBTEFRQWdTcHkyCkFWb0FnY0FBQUFBVkJnVVJBNGYwVHMwS1M5eWhsRHJEMUpzWEh3
Q0FBQUFBQ0NIbk9RQ2xBRURnQUFBQUNpRUFnZWM1QUxVQVFPQUEKQUFBS0lRQkF1YzVBTFVBUU9B
QUFBQW9oQUdENXprQXRRQkE0QUFBQURDRUFJRTV6a0F0UURZOEZjQUFBQUJVR0JSRURoL1JPelFw
TAozS0dVT3NQVW14Y2ZBSUFBQUFBSUFhb05ZQkdnQ0J3QUFBQUtBUUNCcWcxZ0ZhQUlIQUFBQUFv
QkFFQ3FnMWdGYUFJSEFBQUFDZ0VBCllPcURXQVZvQWdjQUFBQUxBUUFnU3FEV0FWb0FnY0FBQUFB
VkJnVVJBNGYwVHMwS1M5eWhsRHJEMUpzWEh3Q0FBQUFBQ0NIb1FRQ2wKQUVEZ0FBQUFDaUVBZ2Vo
QkFMVUFRT0FBQUFBS0lRQkF1aEJBTFVBUU9BQUFBQW9oQUdENkVFQXRRQkE0QUFBQURDRUFJRTZF
RUF0UQpEWThGY0FBQUFCVUdCUkVEaC9ST3pRcEwzS0dVT3NQVW14Y2ZBSUFBQUFBSUFhcFBZQkdn
Q0J3QUFBQUtBUUNCcWs5Z0ZhQUlIQUFBCkFBb0JBRUNxazlnRmFBSUhBQUFBQ2dFQVlPcVQyQVZv
QWdjQUFBQUxBUUFnU3FUMkFWb0FnY0FBQUFBVkJnVVJBNGYwVHMwS1M5eWgKbERyRDFKc1hId0NB
QUFBQUNDSHBTUUNsQUVEZ0FBQUFDaUVBZ2VsSkFMVUFRT0FBQUFBS0lRQkF1bEpBTFVBUU9BQUFB
QW9oQUdENgpVa0F0UUJBNEFBQUFEQ0VBSUU2VWtBdFFEWThGY0FBQUFCVUdCUkVEaC9ST3pRcEwz
S0dVT3NQVW14Y2ZBSUFBQUFBSUFhcVJZQkdnCkNCd0FBQUFLQVFDQnFwRmdGYUFJSEFBQUFBb0JB
RUNxcEZnRmFBSUhBQUFBQ2dFQVlPcWtXQVZvQWdjQUFBQUxBUUFnU3FrV0FWb0EKZ2NBQUFBQVZC
Z1VSQTRmMFRzMEtTOXlobERyRDFKc1hId0NBQUFBQUNDSHFVUUNsQUVEZ0FBQUFDaUVBZ2VwUkFM
VUFRT0FBQUFBSwpJUUJBdXBSQUxVQVFPQUFBQUFvaEFHRDZsRUF0UUJBNEFBQUFEQ0VBSUU2bEVB
dFFEWThGY0FBQUFCVUdCUkVEaC9ST3pRcEwzS0dVCk9zUFVteGNmQUlBQUFBQUlBYXJUWUJHZ0NC
d0FBQUFLQVFDQnF0TmdGYUFJSEFBQUFBb0JBRUNxdE5nRmFBSUhBQUFBQ2dFQVlPcTAKMkFWb0Fn
Y0FBQUFMQVFBZ1NxMDJBVm9BZ2NBQUFBQVZCZ1VSQTRmMFRzMEtTOXlobERyRDFKc1hId0NBQUFB
QUNDSHJXUUNsQUVEZwpBQUFBQ2lFQWdldFpBTFVBUU9BQUFBQUtJUUJBdXRaQUxVQVFPQUFBQUFv
aEFHRDYxa0F0UUJBNEFBQUFEQ0VBSUU2MWtBdFFEWThGCmNBQUFBQlVHQlJFRGgvUk96UXBMM0tH
VU9zUFVteGNmQUlBQUFBQUlBYXNWWUJHZ0NCd0FBQUFLQVFDQnF4VmdGYUFJSEFBQUFBb0IKQUVD
cXhWZ0ZhQUlIQUFBQUNnRUFZT3JGV0FWb0FnY0FBQUFMQVFBZ1NyRldBVm9BZ2NBQUFBQVZCZ1VS
QTRmMFRzMEtTOXlobERyRAoxSnNYSHdDQUFBQUFDQUhzWFFFYUFJSEFBQUFBQ2dFQWdleGRBVm9B
Z2NBQUFBQUtBUUJBdXhkQVZvQWdjQUFBQUFvQkFHRDdGMEJXCmdDQndBQUFBQ2dFQUlFN0YwQldn
Q0J3QUFBQVZCZ1VSQTRmMFRzMEtTOXlobERyRDFKc1hId0NBQUFBQlR5VzRJQ0FwWC8vNEs0QUgK
RVJFQWhLVUs0d3dBSEVHSENwQUFDVitBNEFBa3VBQVVraUpDYklaR1lNT0FCWGJOc2I5U3E3aGgz
TGZmZmZmZmZmZmZmZmZmZmZmZgpmZmZmZmZmZmZmZmZmZmZmZmZmZmZmL2gvNGNJQUJSaUNOeVJK
WWJuczRUWC9BTUU1Mk9CUUFBaE1nQUNENElBQUlQd0FBZ3g0QUcrCmJwZ0FDQXg1TUFBSU9yNldB
QUlEUUFBZzdzUUFhU1dnQUJBUjFvQUFndWYrZExBQUVCTUFBUVhtRkxYWFhYWFhYWFhYWFhYWFhY
WFgKWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhUSlV0ZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRk
ZGRkZGRkZGRkZGRkZGRNbFMxMTExMQoxMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTEx
MTEweVZMWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYClhYWFhYVEpVdGRkZGRk
ZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkTW1BQUFCSUNVQWdiZ2dJQzFmLy9n
aWlnQUMKRko0NEFBblB4d0FCTWV2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2
dnZ2di93LzhGaEFIQUFMQUNnUVZUUDRnQQpBaExnQUNEMUVBQUVINEFBUVk4SEFBRUJvQUFRZDJJ
T0FBSURRQUFnN3NRY0FBUUV3QUJCZVlnNEFBZ0pnQUNDOHdwYTY2NjY2NjY2CjY2NjY2NjY2NjY2
NjY2NjY2NjY2NjY2NjY2NjY2NjY2NlpLbHJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJy
cnJycnJycnIKcnBrcVd1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dW1T
cGE2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2Ngo2NjY2NjY2NjY2NjY2NjZaS2xycnJycnJycnJy
cnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnBrd0FBQVNFbEFFQ3VDQWdMClYvLytDS0tB
QUlVbmpnQUNjL0hBQUV4NisrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysv
L0Qvd1dFQWNBQXMKQUtCQlZNL2lBQUNFdUFBSVBVUUFBUWZnQUJCandjQUFRR2dBQkIzWWc0QUFn
TkFBQ0R1eEJ3QUJBVEFBRUY1aURnQUNBbUFBSUx6QwpscnJycnJycnJycnJycnJycnJycnJycnJy
cnJycnJycnJycnJycnJycnJwa3FXdXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1CnV1dXV1
dXV1dXV1bVNwYTY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2WktscnJy
cnJycnJycnJycnJycnIKcnJycnJycnJycnJycnJycnJycnJycnJycGtxV3V1dXV1dXV1dXV1dXV1
dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1bVRBQUFBQgpJU1VBWU80SUNBdFgvLzRJb29BQWhT
ZU9BQUp6OGNBQVRIcjc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3NzcvCjhQ
L0JZUUJ3QUN3QW9FRlV6K0lBQUlTNEFBZzlSQUFCQitBQUVHUEJ3QUJBYUFBRUhkaURnQUNBMEFB
SU83RUhBQUVCTUFBUVhtSU8KQUFJQ1lBQWd2TUtXdXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1
dXV1dXV1dXV1dXV1dXVtU3BhNjY2NjY2NjY2NjY2NjY2NjY2Ngo2NjY2NjY2NjY2NjY2NjY2NjY2
NjY2WktscnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJwa3FXdXV1dXV1
CnV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1bVNwYTY2NjY2NjY2NjY2NjY2NjY2
NjY2NjY2NjY2NjY2NjY2NjY2NjYKNjY2NlpNQUFBQUYzSlFBZ1M0SUNBdFgvLzRJb29BQWhTZU9B
QUp6OGNBQVRIcjc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nwo3Nzc3Nzc3Nzc3LzhQL0JZ
UUJ3QUN3QW9FRlV6K0lBQUlTNEFBZzlSQUFCQitBQUVHUEJ3QUJBYUFBRUhkaURnQUNBMEFBSU83
RUhBCkFFQk1BQVFYbUlPQUFJQ1lBQWd2TUtXdXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1
dXV1dXV1dXV1dXVtU3BhNjY2NjY2NjYKNjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2
WktscnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycgpycGtxV3V1dXV1dXV1
dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1bVNGc0FCR1pHUm1Sa1JrWkYvNEFCc2pN
QkMwb1h4CmxndjhKYVFBdUFCWFRJMko4aDBkZzhBQ2swYVEyNmtWbkRVdGRkZGRkZGRkZGRkZGRk
ZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGMKTE1nQUNNaU15TXlJeUl6TC8vQUE2aEJXN0lqeXR1
TTNmZUFkNEFHbVQ1Tjg1OXdBbm1wcGQvNjNBQUFBRlFZRkVRT0g5RTdOQ2t2YwpvWlE2dzlTYkZ4
OEFnQUFBQUFnaDRRa0FwUUJBNEFBQUFBb2hBSUhoQ1FDMUFFRGdBQUFBQ2lFQVFMaENRQzFBRURn
QUFBQUtJUUJnCitFSkFMVUFRT0FBQUFBd2hBQ0JPRUpBTFVBMlBCWEFBQUFBVkJnVVJBNGYwVHMw
S1M5eWhsRHJEMUpzWEh3Q0FBQUFBQ0FHb2dXQVIKb0FnY0FBQUFDZ0VBZ2FpQllCV2dDQndBQUFB
S0FRQkFxaUJZQldnQ0J3QUFBQW9CQUdEcUlGZ0ZhQUlIQUFBQUN3RUFJRXFJRmdGYQpBSUhBQUFB
QUZRWUZFUU9IOUU3TkNrdmNvWlE2dzlTYkZ4OEFnQUFBQUFnaDRoRUFwUUJBNEFBQUFBb2hBSUhp
RVFDMUFFRGdBQUFBCkNpRUFRTGlFUUMxQUVEZ0FBQUFLSVFCZytJUkFMVUFRT0FBQUFBd2hBQ0JP
SVJBTFVBMlBCWEFBQUFBVkJnVVJBNGYwVHMwS1M5eWgKbERyRDFKc1hId0NBQUFBQUNBR293MkFS
b0FnY0FBQUFDZ0VBZ2FqRFlCV2dDQndBQUFBS0FRQkFxakRZQldnQ0J3QUFBQW9CQUdEcQpNTmdG
YUFJSEFBQUFDd0VBSUVxTU5nRmFBSUhBQUFBQUZRWUZFUU9IOUU3TkNrdmNvWlE2dzlTYkZ4OEFn
QUFBQUFnaDR4a0FwUUJBCjRBQUFBQW9oQUlIakdRQzFBRURnQUFBQUNpRUFRTGpHUUMxQUVEZ0FB
QUFLSVFCZytNWkFMVUFRT0FBQUFBd2hBQ0JPTVpBTFVBMlAKQlhBQUFBQVZCZ1VSQTRmMFRzMEtT
OXlobERyRDFKc1hId0NBQUFBQUNBR3BCV0FSb0FnY0FBQUFDZ0VBZ2FrRllCV2dDQndBQUFBSwpB
UUJBcWtGWUJXZ0NCd0FBQUFvQkFHRHFRVmdGYUFJSEFBQUFDd0VBSUVxUVZnRmFBSUhBQUFBQUZR
WUZFUU9IOUU3TkNrdmNvWlE2Cnc5U2JGeDhBZ0FBQUFBZ2g1Q0VBcFFCQTRBQUFBQW9oQUlIa0lR
QzFBRURnQUFBQUNpRUFRTGtJUUMxQUVEZ0FBQUFLSVFCZytRaEEKTFVBUU9BQUFBQXdoQUNCT1Fo
QUxVQTJQQlhBQUFBQVZCZ1VSQTRmMFRzMEtTOXlobERyRDFKc1hId0NBQUFBQUNBR3BSMkFSb0Fn
YwpBQUFBQ2dFQWdhbEhZQldnQ0J3QUFBQUtBUUJBcWxIWUJXZ0NCd0FBQUFvQkFHRHFVZGdGYUFJ
SEFBQUFDd0VBSUVxVWRnRmFBSUhBCkFBQUFGUVlGRVFPSDlFN05Da3Zjb1pRNnc5U2JGeDhBZ0FB
QUFBZ2g1U2tBcFFCQTRBQUFBQW9oQUlIbEtRQzFBRURnQUFBQUNpRUEKUUxsS1FDMUFFRGdBQUFB
S0lRQmcrVXBBTFVBUU9BQUFBQXdoQUNCT1VwQUxVQTJQQlhBQUFBQVZCZ1VSQTRmMFRzMEtTOXlo
bERyRAoxSnNYSHdDQUFBQUFDQUdwaVdBUm9BZ2NBQUFBQ2dFQWdhbUpZQldnQ0J3QUFBQUtBUUJB
cW1KWUJXZ0NCd0FBQUFvQkFHRHFZbGdGCmFBSUhBQUFBQ3dFQUlFcVlsZ0ZhQUlIQUFBQUFGUVlG
RVFPSDlFN05Da3Zjb1pRNnc5U2JGeDhBZ0FBQUFBZ2g1akVBcFFCQTRBQUEKQUFvaEFJSG1NUUMx
QUVEZ0FBQUFDaUVBUUxtTVFDMUFFRGdBQUFBS0lRQmcrWXhBTFVBUU9BQUFBQXdoQUNCT1l4QUxV
QTJQQlhBQQpBQUFWQmdVUkE0ZjBUczBLUzl5aGxEckQxSnNYSHdDQUFBQUFDQUdweTJBUm9BZ2NB
QUFBQ2dFQWdhbkxZQldnQ0J3QUFBQUtBUUJBCnFuTFlCV2dDQndBQUFBb0JBR0RxY3RnRmFBSUhB
QUFBQ3dFQUlFcWN0Z0ZhQUlIQUFBQUFGUVlGRVFPSDlFN05Da3Zjb1pRNnc5U2IKRng4QWdBQUFB
QWdoNXprQXBRQkE0QUFBQUFvaEFJSG5PUUMxQUVEZ0FBQUFDaUVBUUxuT1FDMUFFRGdBQUFBS0lR
QmcrYzVBTFVBUQpPQUFBQUF3aEFDQk9jNUFMVUEyUEJYQUFBQUFWQmdVUkE0ZjBUczBLUzl5aGxE
ckQxSnNYSHdDQUFBQUFDQUdxRFdBUm9BZ2NBQUFBCkNnRUFnYW9OWUJXZ0NCd0FBQUFLQVFCQXFv
TllCV2dDQndBQUFBb0JBR0RxZzFnRmFBSUhBQUFBQ3dFQUlFcWcxZ0ZhQUlIQUFBQUEKRlFZRkVR
T0g5RTdOQ2t2Y29aUTZ3OVNiRng4QWdBQUFBQWdoNkVFQXBRQkE0QUFBQUFvaEFJSG9RUUMxQUVE
Z0FBQUFDaUVBUUxvUQpRQzFBRURnQUFBQUtJUUJnK2hCQUxVQVFPQUFBQUF3aEFDQk9oQkFMVUEy
UEJYQUFBQUFWQmdVUkE0ZjBUczBLUzl5aGxEckQxSnNYCkh3Q0FBQUFBQ0FHcVQyQVJvQWdjQUFB
QUNnRUFnYXBQWUJXZ0NCd0FBQUFLQVFCQXFwUFlCV2dDQndBQUFBb0JBR0RxazlnRmFBSUgKQUFB
QUN3RUFJRXFrOWdGYUFJSEFBQUFBRlFZRkVRT0g5RTdOQ2t2Y29aUTZ3OVNiRng4QWdBQUFBQWdo
NlVrQXBRQkE0QUFBQUFvaApBSUhwU1FDMUFFRGdBQUFBQ2lFQVFMcFNRQzFBRURnQUFBQUtJUUJn
K2xKQUxVQVFPQUFBQUF3aEFDQk9sSkFMVUEyUEJYQUFBQUFWCkJnVVJBNGYwVHMwS1M5eWhsRHJE
MUpzWEh3Q0FBQUFBQ0FHcWtXQVJvQWdjQUFBQUNnRUFnYXFSWUJXZ0NCd0FBQUFLQVFCQXFxUlkK
QldnQ0J3QUFBQW9CQUdEcXBGZ0ZhQUlIQUFBQUN3RUFJRXFwRmdGYUFJSEFBQUFBRlFZRkVRT0g5
RTdOQ2t2Y29aUTZ3OVNiRng4QQpnQUFBQUFnaDZsRUFwUUJBNEFBQUFBb2hBSUhxVVFDMUFFRGdB
QUFBQ2lFQVFMcVVRQzFBRURnQUFBQUtJUUJnK3BSQUxVQVFPQUFBCkFBd2hBQ0JPcFJBTFVBMlBC
WEFBQUFBVkJnVVJBNGYwVHMwS1M5eWhsRHJEMUpzWEh3Q0FBQUFBQ0FHcTAyQVJvQWdjQUFBQUNn
RUEKZ2FyVFlCV2dDQndBQUFBS0FRQkFxclRZQldnQ0J3QUFBQW9CQUdEcXROZ0ZhQUlIQUFBQUN3
RUFJRXF0TmdGYUFJSEFBQUFBRlFZRgpFUU9IOUU3TkNrdmNvWlE2dzlTYkZ4OEFnQUFBQUFnaDYx
a0FwUUJBNEFBQUFBb2hBSUhyV1FDMUFFRGdBQUFBQ2lFQVFMcldRQzFBCkVEZ0FBQUFLSVFCZyt0
WkFMVUFRT0FBQUFBd2hBQ0JPdFpBTFVBMlBCWEFBQUFBVkJnVVJBNGYwVHMwS1M5eWhsRHJEMUpz
WEh3Q0EKQUFBQUNBR3JGV0FSb0FnY0FBQUFDZ0VBZ2FzVllCV2dDQndBQUFBS0FRQkFxc1ZZQldn
Q0J3QUFBQW9CQUdEcXhWZ0ZhQUlIQUFBQQpDd0VBSUVxeFZnRmFBSUhBQUFBQUZRWUZFUU9IOUU3
TkNrdmNvWlE2dzlTYkZ4OEFnQUFBQUFnQjdGMEJHZ0NCd0FBQUFBb0JBSUhzClhRRmFBSUhBQUFB
QUNnRUFRTHNYUUZhQUlIQUFBQUFLQVFCZyt4ZEFWb0FnY0FBQUFBb0JBQ0JPeGRBVm9BZ2NBQUFB
RlFZRkVRT0gKOUU3TkNrdmNvWlE2dzlTYkZ4OEFnQUFBQVU4bHVDQWdLVi8vK0N1QUJ4RVJBSVNs
Q3VNTUFCeEJod3FRQUFsZmdPQUFKTGdBRkpJaQpRbXlHUm1ERGdBVjJ6YkcvVXF1NFlkeTMzMzMz
MzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMvNGYrSENBQVVZZ2pjCmtTV0c1N09F
MS93REJPZGpnVUFBSVRJQUFnK0NBQUNEOEFBSU1lQUJ2bTZZQUFnTWVUQUFDRHErbGdBQ0EwQUFJ
TzdFQUdrbG9BQVEKRWRhQUFJTG4vblN3QUJBVEFBRUY1aFMxMTExMTExMTExMTExMTExMTExMTEx
MTExMTExMTExMTExMTExMTExMTB5VkxYWFhYWFhYWApYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhY
WFhYWFhYWFhUSlV0ZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkCmRkTWxT
MTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTEweVZMWFhYWFhYWFhYWFhY
WFhYWFhYWFhYWFhYWFgKWFhYWFhYWFhYWFhYWFhYVEpnQUFBU0FsQUlHNElDQXRYLy80SW9vQUFo
U2VPQUFKejhjQUFUSHI3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nwo3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Ny84
UC9CWVFCd0FDd0FvRUZVeitJQUFJUzRBQWc5UkFBQkIrQUFFR1BCd0FCQWFBQUVIZGlEZ0FDCkEw
QUFJTzdFSEFBRUJNQUFRWG1JT0FBSUNZQUFndk1LV3V1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1
dXV1dXV1dXV1dXV1dXV1bVMKcGE2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2
NjY2NlpLbHJycnJycnJycnJycnJycnJycnJycnJycnJycnJycgpycnJycnJycnJycnBrcVd1dXV1
dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dW1TcGE2NjY2NjY2NjY2NjY2NjY2
CjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjZaTUFBQUVoSlFCQXJnZ0lDMWYvL2dpaWdBQ0ZKNDRB
QW5QeHdBQk1ldnZ2dnZ2dnZ2dnYKdnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2L3cvOEZo
QUhBQUxBQ2dRVlRQNGdBQWhMZ0FDRDFFQUFFSDRBQVFZOEhBQUVCbwpBQVFkMklPQUFJRFFBQWc3
c1FjQUFRRXdBQkJlWWc0QUFnSmdBQ0M4d3BhNjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2
NjY2CjY2NjY2NjY2WktscnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJw
a3FXdXV1dXV1dXV1dXV1dXV1dXV1dXUKdXV1dXV1dXV1dXV1dXV1dXV1dXV1bVNwYTY2NjY2NjY2
NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2WktscnJycnJycgpycnJycnJycnJycnJy
cnJycnJycnJycnJycnJycnJycnJycGt3QUFBQVNFbEFHRHVDQWdMVi8vK0NLS0FBSVVuamdBQ2Mv
SEFBRXg2CisrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysvL0Qvd1dFQWNB
QXNBS0JCVk0vaUFBQ0V1QUFJUFVRQUFRZmcKQUJCandjQUFRR2dBQkIzWWc0QUFnTkFBQ0R1eEJ3
QUJBVEFBRUY1aURnQUNBbUFBSUx6Q2xycnJycnJycnJycnJycnJycnJycnJycgpycnJycnJycnJy
cnJycnJycnJwa3FXdXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXVtU3Bh
NjY2NjY2NjY2CjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2WktscnJycnJycnJycnJy
cnJycnJycnJycnJycnJycnJycnJycnJycnJycnIKcGtxV3V1dXV1dXV1dXV1dXV1dXV1dXV1dXV1
dXV1dXV1dXV1dXV1dXV1dXV1bVRBQUFBQmR5VUFJRXVDQWdMVi8vK0NLS0FBSVVuagpnQUNjL0hB
QUV4NisrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysvL0Qvd1dFQWNBQXNB
S0JCVk0vaUFBQ0V1CkFBSVBVUUFBUWZnQUJCandjQUFRR2dBQkIzWWc0QUFnTkFBQ0R1eEJ3QUJB
VEFBRUY1aURnQUNBbUFBSUx6Q2xycnJycnJycnJycnIKcnJycnJycnJycnJycnJycnJycnJycnJy
cnJycnJwa3FXdXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXVtUwpwYTY2
NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2WktscnJycnJycnJycnJycnJy
cnJycnJycnJycnJycnJyCnJycnJycnJycnJycGtoYkFBUm1Sa1prWkVaR1JmK0FBYkl6QVF0S0Y4
WllML0NXa0FMZ0FWMHlOaWZJZEhZUEFBcE5Ha051cEZadzEKTFhYWFhYWFhYWFhYWFhYWFhYWFhY
WFhYWFhYWFhYWFhYWFhYWFhYWFhDeklBQWpJak1qTWlNaU15Ly93QU9vUVZ1eUk4cmJqTjMzZwpI
ZUFCcGsrVGZPZmNBSjVxYVhmK3R3QUFBQlVHQlJFRGgvUk96UXBMM0tHVU9zUFVteGNmQUlBQUFB
QUlJZUVKQUtVQVFPQUFBQUFLCklRQ0I0UWtBdFFCQTRBQUFBQW9oQUVDNFFrQXRRQkE0QUFBQUNp
RUFZUGhDUUMxQUVEZ0FBQUFNSVFBZ1RoQ1FDMUFOandWd0FBQUEKRlFZRkVRT0g5RTdOQ2t2Y29a
UTZ3OVNiRng4QWdBQUFBQWdCcUlGZ0VhQUlIQUFBQUFvQkFJR29nV0FWb0FnY0FBQUFDZ0VBUUtv
ZwpXQVZvQWdjQUFBQUtBUUJnNmlCWUJXZ0NCd0FBQUFzQkFDQktpQllCV2dDQndBQUFBQlVHQlJF
RGgvUk96UXBMM0tHVU9zUFVteGNmCkFJQUFBQUFJSWVJUkFLVUFRT0FBQUFBS0lRQ0I0aEVBdFFC
QTRBQUFBQW9oQUVDNGhFQXRRQkE0QUFBQUNpRUFZUGlFUUMxQUVEZ0EKQUFBTUlRQWdUaUVRQzFB
Tmp3VndBQUFBRlFZRkVRT0g5RTdOQ2t2Y29aUTZ3OVNiRng4QWdBQUFBQWdCcU1OZ0VhQUlIQUFB
QUFvQgpBSUdvdzJBVm9BZ2NBQUFBQ2dFQVFLb3cyQVZvQWdjQUFBQUtBUUJnNmpEWUJXZ0NCd0FB
QUFzQkFDQktqRFlCV2dDQndBQUFBQlVHCkJSRURoL1JPelFwTDNLR1VPc1BVbXhjZkFJQUFBQUFJ
SWVNWkFLVUFRT0FBQUFBS0lRQ0I0eGtBdFFCQTRBQUFBQW9oQUVDNHhrQXQKUUJBNEFBQUFDaUVB
WVBqR1FDMUFFRGdBQUFBTUlRQWdUakdRQzFBTmp3VndBQUFBRlFZRkVRT0g5RTdOQ2t2Y29aUTZ3
OVNiRng4QQpnQUFBQUFnQnFRVmdFYUFJSEFBQUFBb0JBSUdwQldBVm9BZ2NBQUFBQ2dFQVFLcEJX
QVZvQWdjQUFBQUtBUUJnNmtGWUJXZ0NCd0FBCkFBc0JBQ0JLa0ZZQldnQ0J3QUFBQUJVR0JSRURo
L1JPelFwTDNLR1VPc1BVbXhjZkFJQUFBQUFJSWVRaEFLVUFRT0FBQUFBS0lRQ0IKNUNFQXRRQkE0
QUFBQUFvaEFFQzVDRUF0UUJBNEFBQUFDaUVBWVBrSVFDMUFFRGdBQUFBTUlRQWdUa0lRQzFBTmp3
VndBQUFBRlFZRgpFUU9IOUU3TkNrdmNvWlE2dzlTYkZ4OEFnQUFBQUFnQnFVZGdFYUFJSEFBQUFB
b0JBSUdwUjJBVm9BZ2NBQUFBQ2dFQVFLcFIyQVZvCkFnY0FBQUFLQVFCZzZsSFlCV2dDQndBQUFB
c0JBQ0JLbEhZQldnQ0J3QUFBQUJVR0JSRURoL1JPelFwTDNLR1VPc1BVbXhjZkFJQUEKQUFBSUll
VXBBS1VBUU9BQUFBQUtJUUNCNVNrQXRRQkE0QUFBQUFvaEFFQzVTa0F0UUJBNEFBQUFDaUVBWVBs
S1FDMUFFRGdBQUFBTQpJUUFnVGxLUUMxQU5qd1Z3QUFBQUZRWUZFUU9IOUU3TkNrdmNvWlE2dzlT
YkZ4OEFnQUFBQUFnQnFZbGdFYUFJSEFBQUFBb0JBSUdwCmlXQVZvQWdjQUFBQUNnRUFRS3BpV0FW
b0FnY0FBQUFLQVFCZzZtSllCV2dDQndBQUFBc0JBQ0JLbUpZQldnQ0J3QUFBQUJVR0JSRUQKaC9S
T3pRcEwzS0dVT3NQVW14Y2ZBSUFBQUFBSUllWXhBS1VBUU9BQUFBQUtJUUNCNWpFQXRRQkE0QUFB
QUFvaEFFQzVqRUF0UUJBNApBQUFBQ2lFQVlQbU1RQzFBRURnQUFBQU1JUUFnVG1NUUMxQU5qd1Z3
QUFBQUZRWUZFUU9IOUU3TkNrdmNvWlE2dzlTYkZ4OEFnQUFBCkFBZ0JxY3RnRWFBSUhBQUFBQW9C
QUlHcHkyQVZvQWdjQUFBQUNnRUFRS3B5MkFWb0FnY0FBQUFLQVFCZzZuTFlCV2dDQndBQUFBc0IK
QUNCS25MWUJXZ0NCd0FBQUFCVUdCUkVEaC9ST3pRcEwzS0dVT3NQVW14Y2ZBSUFBQUFBSUllYzVB
S1VBUU9BQUFBQUtJUUNCNXprQQp0UUJBNEFBQUFBb2hBRUM1emtBdFFCQTRBQUFBQ2lFQVlQbk9R
QzFBRURnQUFBQU1JUUFnVG5PUUMxQU5qd1Z3QUFBQUZRWUZFUU9ICjlFN05Da3Zjb1pRNnc5U2JG
eDhBZ0FBQUFBZ0JxZzFnRWFBSUhBQUFBQW9CQUlHcURXQVZvQWdjQUFBQUNnRUFRS3FEV0FWb0Fn
Y0EKQUFBS0FRQmc2b05ZQldnQ0J3QUFBQXNCQUNCS29OWUJXZ0NCd0FBQUFCVUdCUkVEaC9ST3pR
cEwzS0dVT3NQVW14Y2ZBSUFBQUFBSQpJZWhCQUtVQVFPQUFBQUFLSVFDQjZFRUF0UUJBNEFBQUFB
b2hBRUM2RUVBdFFCQTRBQUFBQ2lFQVlQb1FRQzFBRURnQUFBQU1JUUFnClRvUVFDMUFOandWd0FB
QUFGUVlGRVFPSDlFN05Da3Zjb1pRNnc5U2JGeDhBZ0FBQUFBZ0JxazlnRWFBSUhBQUFBQW9CQUlH
cVQyQVYKb0FnY0FBQUFDZ0VBUUtxVDJBVm9BZ2NBQUFBS0FRQmc2cFBZQldnQ0J3QUFBQXNCQUNC
S3BQWUJXZ0NCd0FBQUFCVUdCUkVEaC9STwp6UXBMM0tHVU9zUFVteGNmQUlBQUFBQUlJZWxKQUtV
QVFPQUFBQUFLSVFDQjZVa0F0UUJBNEFBQUFBb2hBRUM2VWtBdFFCQTRBQUFBCkNpRUFZUHBTUUMx
QUVEZ0FBQUFNSVFBZ1RwU1FDMUFOandWd0FBQUFGUVlGRVFPSDlFN05Da3Zjb1pRNnc5U2JGeDhB
Z0FBQUFBZ0IKcXBGZ0VhQUlIQUFBQUFvQkFJR3FrV0FWb0FnY0FBQUFDZ0VBUUtxa1dBVm9BZ2NB
QUFBS0FRQmc2cVJZQldnQ0J3QUFBQXNCQUNCSwpxUllCV2dDQndBQUFBQlVHQlJFRGgvUk96UXBM
M0tHVU9zUFVteGNmQUlBQUFBQUlJZXBSQUtVQVFPQUFBQUFLSVFDQjZsRUF0UUJBCjRBQUFBQW9o
QUVDNmxFQXRRQkE0QUFBQUNpRUFZUHFVUUMxQUVEZ0FBQUFNSVFBZ1RxVVFDMUFOandWd0FBQUFG
UVlGRVFPSDlFN04KQ2t2Y29aUTZ3OVNiRng4QWdBQUFBQWdCcXROZ0VhQUlIQUFBQUFvQkFJR3Ew
MkFWb0FnY0FBQUFDZ0VBUUtxMDJBVm9BZ2NBQUFBSwpBUUJnNnJUWUJXZ0NCd0FBQUFzQkFDQkty
VFlCV2dDQndBQUFBQlVHQlJFRGgvUk96UXBMM0tHVU9zUFVteGNmQUlBQUFBQUlJZXRaCkFLVUFR
T0FBQUFBS0lRQ0I2MWtBdFFCQTRBQUFBQW9oQUVDNjFrQXRRQkE0QUFBQUNpRUFZUHJXUUMxQUVE
Z0FBQUFNSVFBZ1RyV1EKQzFBTmp3VndBQUFBRlFZRkVRT0g5RTdOQ2t2Y29aUTZ3OVNiRng4QWdB
QUFBQWdCcXhWZ0VhQUlIQUFBQUFvQkFJR3JGV0FWb0FnYwpBQUFBQ2dFQVFLckZXQVZvQWdjQUFB
QUtBUUJnNnNWWUJXZ0NCd0FBQUFzQkFDQktzVllCV2dDQndBQUFBQlVHQlJFRGgvUk96UXBMCjNL
R1VPc1BVbXhjZkFJQUFBQUFJQWV4ZEFSb0FnY0FBQUFBS0FRQ0I3RjBCV2dDQndBQUFBQW9CQUVD
N0YwQldnQ0J3QUFBQUNnRUEKWVBzWFFGYUFJSEFBQUFBS0FRQWdUc1hRRmFBSUhBQUFBQlVHQlJF
RGgvUk96UXBMM0tHVU9zUFVteGNmQUlBQUFBRlBKYmdnSUNsZgovL2dyZ0FjUkVRQ0VwUXJqREFB
Y1FZY0trQUFKWDREZ0FDUzRBQlNTSWtKc2hrWmd3NEFGZHMyeHYxS3J1R0hjdDk5OTk5OTk5OTk5
Cjk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTkvK0gvaHdnQUZHSUkzSkVsaHVlemhOZjhBd1Ru
WTRGQUFDRXlBQUlQZ2dBQWcvQUEKQ0RIZ0FiNXVtQUFJREhrd0FBZzZ2cFlBQWdOQUFDRHV4QUJw
SmFBQUVCSFdnQUNDNS81MHNBQVFFd0FCQmVZVXRkZGRkZGRkZGRkZApkZGRkZGRkZGRkZGRkZGRk
ZGRkZGRkZGRkZGRkZGRNbFMxMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTEx
MTB5ClZMWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhUSlV0ZGRkZGRk
ZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGQKZGRkZGRkZGRkZGRkTWxTMTExMTExMTExMTExMTExMTEx
MTExMTExMTExMTExMTExMTExMTExMTEweVlBQUFFZ0pRQ0J1Q0FnTFYvLworQ0tLQUFJVW5qZ0FD
Yy9IQUFFeDYrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrLy9EL3dXRUFj
QUFzQUtCCkJWTS9pQUFDRXVBQUlQVVFBQVFmZ0FCQmp3Y0FBUUdnQUJCM1lnNEFBZ05BQUNEdXhC
d0FCQVRBQUVGNWlEZ0FDQW1BQUlMekNscnIKcnJycnJycnJycnJycnJycnJycnJycnJycnJycnJy
cnJycnJycnJycGtxV3V1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dQp1dXV1dXV1dW1T
cGE2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NlpLbHJycnJycnJycnJy
cnJycnJycnJyCnJycnJycnJycnJycnJycnJycnJycnBrcVd1dXV1dXV1dXV1dXV1dXV1dXV1dXV1
dXV1dXV1dXV1dXV1dXV1dXV1dW1UQUFBQklTVUEKUUs0SUNBdFgvLzRJb29BQWhTZU9BQUp6OGNB
QVRIcjc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3NzcvOFAvQgpZUUJ3QUN3
QW9FRlV6K0lBQUlTNEFBZzlSQUFCQitBQUVHUEJ3QUJBYUFBRUhkaURnQUNBMEFBSU83RUhBQUVC
TUFBUVhtSU9BQUlDCllBQWd2TUtXdXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1
dXV1dXVtU3BhNjY2NjY2NjY2NjY2NjY2NjY2NjY2NjYKNjY2NjY2NjY2NjY2NjY2NjY2WktscnJy
cnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJwa3FXdXV1dXV1dXV1dQp1dXV1
dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1bVNwYTY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2
NjY2NjY2NjY2NjY2NjY2ClpNQUFBQUVoSlFCZzdnZ0lDMWYvL2dpaWdBQ0ZKNDRBQW5QeHdBQk1l
dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnYKdnZ2dnZ2L3cvOEZoQUhBQUxBQ2dR
VlRQNGdBQWhMZ0FDRDFFQUFFSDRBQVFZOEhBQUVCb0FBUWQySU9BQUlEUUFBZzdzUWNBQVFFdwpB
QkJlWWc0QUFnSmdBQ0M4d3BhNjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2
NjZaS2xycnJycnJycnJycnJyCnJycnJycnJycnJycnJycnJycnJycnJycnJycnJwa3FXdXV1dXV1
dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXVtU3AKYTY2NjY2NjY2NjY2NjY2NjY2
NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2WktscnJycnJycnJycnJycnJycnJycnJycnJycnJycnJy
cgpycnJycnJycnJycGt3QUFBQVhjbEFDQkxnZ0lDMWYvL2dpaWdBQ0ZKNDRBQW5QeHdBQk1ldnZ2
dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2CnZ2dnZ2dnZ2dnZ2dnZ2dnZ2L3cvOEZoQUhBQUxBQ2dRVlRQ
NGdBQWhMZ0FDRDFFQUFFSDRBQVFZOEhBQUVCb0FBUWQySU9BQUlEUUEKQWc3c1FjQUFRRXdBQkJl
WWc0QUFnSmdBQ0M4d3BhNjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjZa
S2xycgpycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJwa3FXdXV1dXV1dXV1
dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1CnV1dXV1dXV1bVNwYTY2NjY2NjY2NjY2NjY2NjY2NjY2
NjY2NjY2NjY2NjY2NjY2NjY2NjY2WklXd0FFWmtaR1pHUkdSa1gvZ0FHeU0Kd0VMU2hmR1dDL3ds
cEFDNEFGZE1qWW55SFIyRHdBS1RScERicVJXY05TMTExMTExMTExMTExMTExMTExMTExMTExMTEx
MTExMTExMQoxMTExMTF3c3lBQUl5SXpJeklqSWpNdi84QURxRUZic2lQSzI0emQ5NEIzZ0FhWlBr
M3puM0FDZWFtbDMvcmNBQUFBVkJnVVJBNGYwClRzMEtTOXlobERyRDFKc1hId0NBQUFBQUNDSGhD
UUNsQUVEZ0FBQUFDaUVBZ2VFSkFMVUFRT0FBQUFBS0lRQkF1RUpBTFVBUU9BQUEKQUFvaEFHRDRR
a0F0UUJBNEFBQUFEQ0VBSUU0UWtBdFFEWThGY0FBQUFCVUdCUkVEaC9ST3pRcEwzS0dVT3NQVW14
Y2ZBSUFBQUFBSQpBYWlCWUJHZ0NCd0FBQUFLQVFDQnFJRmdGYUFJSEFBQUFBb0JBRUNxSUZnRmFB
SUhBQUFBQ2dFQVlPb2dXQVZvQWdjQUFBQUxBUUFnClNvZ1dBVm9BZ2NBQUFBQVZCZ1VSQTRmMFRz
MEtTOXlobERyRDFKc1hId0NBQUFBQUNDSGlFUUNsQUVEZ0FBQUFDaUVBZ2VJUkFMVUEKUU9BQUFB
QUtJUUJBdUlSQUxVQVFPQUFBQUFvaEFHRDRoRUF0UUJBNEFBQUFEQ0VBSUU0aEVBdFFEWThGY0FB
QUFCVUdCUkVEaC9STwp6UXBMM0tHVU9zUFVteGNmQUlBQUFBQUlBYWpEWUJHZ0NCd0FBQUFLQVFD
QnFNTmdGYUFJSEFBQUFBb0JBRUNxTU5nRmFBSUhBQUFBCkNnRUFZT293MkFWb0FnY0FBQUFMQVFB
Z1NvdzJBVm9BZ2NBQUFBQVZCZ1VSQTRmMFRzMEtTOXlobERyRDFKc1hId0NBQUFBQUNDSGoKR1FD
bEFFRGdBQUFBQ2lFQWdlTVpBTFVBUU9BQUFBQUtJUUJBdU1aQUxVQVFPQUFBQUFvaEFHRDR4a0F0
UUJBNEFBQUFEQ0VBSUU0eAprQXRRRFk4RmNBQUFBQlVHQlJFRGgvUk96UXBMM0tHVU9zUFVteGNm
QUlBQUFBQUlBYWtGWUJHZ0NCd0FBQUFLQVFDQnFRVmdGYUFJCkhBQUFBQW9CQUVDcVFWZ0ZhQUlI
QUFBQUNnRUFZT3BCV0FWb0FnY0FBQUFMQVFBZ1NwQldBVm9BZ2NBPQoK
</data>
<flag name="commit-queue"
          id="241132"
          type_id="3"
          status="-"
          setter="eflews.bot"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>217906</attachid>
            <date>2013-11-26 14:59:54 -0800</date>
            <delta_ts>2013-11-26 17:29:29 -0800</delta_ts>
            <desc>Updated patch</desc>
            <filename>patch_11.txt</filename>
            <type>text/plain</type>
            <size>128600</size>
            <attacher name="Eric Carlson">eric.carlson</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDE1OTc5MCkKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDEwNiBAQAorMjAxMy0xMS0yNiAgRXJpYyBD
YXJsc29uICA8ZXJpYy5jYXJsc29uQGFwcGxlLmNvbT4KKworICAgICAgICBBbGxvdyB0aGUgUXVp
Y2tUaW1lIHBsdWctaW4gdG8gYmUgcmVwbGFjZWQgYnkgc2NyaXB0IGluIGFuIGlzb2xhdGVkIHdv
cmQKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEyNDkw
MAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFRlc3Q6
IHBsdWdpbnMvcXVpY2t0aW1lLXBsdWdpbi1yZXBsYWNlbWVudC5odG1sCisKKyAgICAgICAgKiBE
ZXJpdmVkU291cmNlcy5tYWtlOiBBZGQgbmV3IGZpbGVzLgorICAgICAgICAqIENNYWtlTGlzdHMu
dHh0OiBBZGQgbmV3IE1vZHVsZXMgcGF0aC4KKworICAgICAgICAqIE1vZHVsZXMvcGx1Z2luczog
QWRkZWQuCisgICAgICAgICogTW9kdWxlcy9wbHVnaW5zL1BsdWdpblJlcGxhY2VtZW50Lmg6IEFk
ZGVkLiBEZWZpbmVzIHRoZSBpbnRlcmZhY2UgZm9yIGEgcGx1Zy1pbiByZXBsYWNlbWVudC4KKwor
ICAgICAgICBDcmVhdGUgYSByZXBsYWNlbWVudCBmb3IgdGhlIFF1aWNrVGltZSBwbHVnLWluLgor
ICAgICAgICAqIE1vZHVsZXMvcGx1Z2lucy9RdWlja1RpbWVQbHVnaW5SZXBsYWNlbWVudC5jcHA6
IEFkZGVkLgorICAgICAgICAqIE1vZHVsZXMvcGx1Z2lucy9RdWlja1RpbWVQbHVnaW5SZXBsYWNl
bWVudC5jc3M6IEFkZGVkLgorICAgICAgICAqIE1vZHVsZXMvcGx1Z2lucy9RdWlja1RpbWVQbHVn
aW5SZXBsYWNlbWVudC5oOiBBZGRlZC4KKyAgICAgICAgKiBNb2R1bGVzL3BsdWdpbnMvUXVpY2tU
aW1lUGx1Z2luUmVwbGFjZW1lbnQuaWRsOiBBZGRlZC4KKyAgICAgICAgKiBNb2R1bGVzL3BsdWdp
bnMvUXVpY2tUaW1lUGx1Z2luUmVwbGFjZW1lbnQuanM6IEFkZGVkLgorCisgICAgICAgICogV2Vi
Q29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qOiBBZGQgbmV3IGZpbGVzLgorCisgICAgICAg
IEFsbG93IHBsdWctaW4gcmVwbGFjZW1lbnQgdG8gYmUgZW5hYmxlZCBhdCBydW50aW1lLgorICAg
ICAgICAqIGJpbmRpbmdzL2dlbmVyaWMvUnVudGltZUVuYWJsZWRGZWF0dXJlcy5oOgorICAgICAg
ICAoV2ViQ29yZTo6UnVudGltZUVuYWJsZWRGZWF0dXJlczo6c2V0UGx1Z2luUmVwbGFjZW1lbnRF
bmFibGVkKToKKyAgICAgICAgKFdlYkNvcmU6OlJ1bnRpbWVFbmFibGVkRmVhdHVyZXM6OnBsdWdp
blJlcGxhY2VtZW50RW5hYmxlZCk6CisKKyAgICAgICAgKiBiaW5kaW5ncy9qcy9KU0RPTUJpbmRp
bmcuaDoKKyAgICAgICAgKFdlYkNvcmU6OnRvSlMpOiBBZGQgdG9KUyguLi4gY29uc3QgU3RyaW5n
JiAuLi4pLgorCisgICAgICAgICogYmluZGluZ3MvanMvSlNQbHVnaW5FbGVtZW50RnVuY3Rpb25z
LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OnBsdWdpblNjcmlwdE9iamVjdCk6IEdpdmUgYSBwbHVn
LWluIHJlcGxhY2VtZW50IGEgZmlyc3Qgc2hvdCBhdCBkZWZpbmluZyB0aGUKKyAgICAgICAgICAg
IHNjcmlwdCBpbnRlcmZhY2UuCisKKyAgICAgICAgKiBodG1sL0hUTUxFbWJlZEVsZW1lbnQuY3Bw
OgorICAgICAgICAoV2ViQ29yZTo6SFRNTEVtYmVkRWxlbWVudDo6dXBkYXRlV2lkZ2V0KTogQ2Fs
bCBiYXNlIGNsYXNzIHJlcXVlc3RPYmplY3QuCisKKyAgICAgICAgKiBodG1sL0hUTUxNZWRpYUVs
ZW1lbnQuY3BwOgorICAgICAgICAoSFRNTE1lZGlhRWxlbWVudDo6ZmlsZVNpemUpOiBOZXcsIHBh
c3N0aHJvdWdoIHRvIG1lZGlhIGVuZ2luZS4KKyAgICAgICAgKiBodG1sL0hUTUxNZWRpYUVsZW1l
bnQuaDoKKworICAgICAgICAqIGh0bWwvSFRNTE9iamVjdEVsZW1lbnQuY3BwOgorICAgICAgICAo
V2ViQ29yZTo6SFRNTE9iamVjdEVsZW1lbnQ6OnVwZGF0ZVdpZGdldCk6IENhbGwgYmFzZSBjbGFz
cyByZXF1ZXN0T2JqZWN0LgorCisgICAgICAgIE1vdmVkIHNvbWUgbG9naWMgdGhhdCB3YXMgcHJl
dmlvdXNseSB1c2VkIG9ubHkgZm9yIGNyZWF0aW5nIGEgcGx1Zy1pbiBzbmFwc2hvdCB0byB0aGUg
YmFzZQorICAgICAgICBjbGFzcyBzbyBpdCBjYW4gYmUgc2hhcmVkIGJ5IGEgcGx1Zy1pbiByZXBs
YWNlbWVudC4KKyAgICAgICAgKiBodG1sL0hUTUxQbHVnSW5FbGVtZW50LmNwcDoKKyAgICAgICAg
KFdlYkNvcmU6OkhUTUxQbHVnSW5FbGVtZW50OjpIVE1MUGx1Z0luRWxlbWVudCk6IEluaXRpYWxp
emUgdGltZXIgdXNlZCB0byBzd2FwIHJlbmRlcmVycy4KKyAgICAgICAgKFdlYkNvcmU6OkhUTUxQ
bHVnSW5FbGVtZW50OjpjcmVhdGVSZW5kZXJlcik6IEFsbG93IHBsdWctaW4gcmVwbGFjZW1lbnQg
dG8gY3JlYXRlIHRoZSByZW5kZXJlci4KKyAgICAgICAgKFdlYkNvcmU6OkhUTUxQbHVnSW5FbGVt
ZW50Ojpzd2FwUmVuZGVyZXJUaW1lckZpcmVkKTogQ3JlYXRlIGEgc2hhZG93IHJvb3QuCisgICAg
ICAgIChXZWJDb3JlOjpIVE1MUGx1Z0luRWxlbWVudDo6c2V0RGlzcGxheVN0YXRlKTogU2V0IHRo
ZSBuZXcgc3RhdGUsIHByaW1lIHRoZSBzd2FwIHJlbmRlcmVyIAorICAgICAgICAgICAgdGltZXIg
aWYgbmVjZXNzYXJ5LgorICAgICAgICAoV2ViQ29yZTo6SFRNTFBsdWdJbkVsZW1lbnQ6OmRpZEFk
ZFVzZXJBZ2VudFNoYWRvd1Jvb3QpOiBUZWxsIHRoZSBwbHVnLWluIHJlcGxhY2VtZW50IHRvCisg
ICAgICAgICAgICBpbnN0YWxsIGl0c2VsZiBpbiB0aGUgbmV3IHNoYWRvdyBET00uCisgICAgICAg
IChXZWJDb3JlOjpyZWdpc3RlcmVkUGx1Z2luUmVwbGFjZW1lbnRzKTogUmV0dXJuIHZlY3RvciBv
ZiBhbGwgcmVnaXN0ZXJlZCBwbHVnLWluIHJlcGxhY2VtZW50cy4KKyAgICAgICAgKFdlYkNvcmU6
OnJlZ2lzdGVyUGx1Z2luUmVwbGFjZW1lbnQpOiBBZGQgYSBwbHVnLWluIHJlcGxhY2VtZW50Lgor
ICAgICAgICAoV2ViQ29yZTo6cGx1Z2luUmVwbGFjZW1lbnRGb3JUeXBlKTogRmluZCBhIHBsdWct
aW4gcmVwbGFjZW1lbnQgZm9yIGEgTUlNRSB0eXBlLgorICAgICAgICAoV2ViQ29yZTo6SFRNTFBs
dWdJbkVsZW1lbnQ6OnJlcXVlc3RPYmplY3QpOiBJZiB0aGVyZSBpcyBhIHBsdWctaW4gcmVwbGFj
ZW1lbnQgZm9yIHRoZSBNSU1FIHR5cGUsCisgICAgICAgICAgICBjcmVhdGUgaXQgYW5kIHNldCB0
aGUgZGlzcGxheSBzdGF0ZS4KKyAgICAgICAgKFdlYkNvcmU6OkhUTUxQbHVnSW5FbGVtZW50Ojpz
Y3JpcHRPYmplY3RGb3JQbHVnaW5SZXBsYWNlbWVudCk6IFJldHVybiB0aGUgc2NyaXB0IG9iamVj
dCBmb3IgCisgICAgICAgICAgICB0aGUgY3VycmVudCBwbHVnLWluIHJlcGxhY2VtZW50LCBpZiBh
bnkuCisgICAgICAgICogaHRtbC9IVE1MUGx1Z0luRWxlbWVudC5oOgorCisgICAgICAgIE1vdmUg
c29tZSBwbHVnLWluIHNuYXBzaG90IGNvZGUgaW50byB0aGUgYmFzZSBjbGFzcy4KKyAgICAgICAg
KiBodG1sL0hUTUxQbHVnSW5JbWFnZUVsZW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6SFRN
TFBsdWdJbkltYWdlRWxlbWVudDo6SFRNTFBsdWdJbkltYWdlRWxlbWVudCk6IE5vIG5lZWQgdG8g
aW5pdGlhbGl6ZSB0aW1lci4KKyAgICAgICAgKFdlYkNvcmU6OkhUTUxQbHVnSW5JbWFnZUVsZW1l
bnQ6OnNldERpc3BsYXlTdGF0ZSk6IENhbGwgYmFzZSBjbGFzcy4KKyAgICAgICAgKFdlYkNvcmU6
OkhUTUxQbHVnSW5JbWFnZUVsZW1lbnQ6OmNyZWF0ZVJlbmRlcmVyKTogRGl0dG8uCisgICAgICAg
IChXZWJDb3JlOjpIVE1MUGx1Z0luSW1hZ2VFbGVtZW50OjpkaWRBZGRVc2VyQWdlbnRTaGFkb3dS
b290KTogRGl0dG8uCisgICAgICAgIChXZWJDb3JlOjpIVE1MUGx1Z0luSW1hZ2VFbGVtZW50Ojp1
c2VyRGlkQ2xpY2tTbmFwc2hvdCk6IFJlbW92ZSB1bm5lY2Vzc2FyeSBjbGFzcyBuYW1lLgorICAg
ICAgICAoV2ViQ29yZTo6SFRNTFBsdWdJbkltYWdlRWxlbWVudDo6cmVxdWVzdE9iamVjdCk6IE5l
dy4KKyAgICAgICAgKiBodG1sL0hUTUxQbHVnSW5JbWFnZUVsZW1lbnQuaDoKKworICAgICAgICAq
IGh0bWwvSFRNTFZpZGVvRWxlbWVudC5oOiBNYWtlIGNyZWF0ZVJlbmRlcmVyIHB1YmxpYyBzbyB0
aGUgUXVpY2tUaW1lIHBsdWctaW4gcmVwbGFjZW1lbnQgY2FuCisgICAgICAgICAgICBjYWxsIGl0
LgorCisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvTWVkaWFQbGF5ZXIuY3BwOgorICAgICAg
ICAoV2ViQ29yZTo6TWVkaWFQbGF5ZXI6OmZpbGVTaXplKTogTmV3LgorICAgICAgICAqIHBsYXRm
b3JtL2dyYXBoaWNzL01lZGlhUGxheWVyLmg6CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3Mv
TWVkaWFQbGF5ZXJQcml2YXRlLmg6CisKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9hdmZv
dW5kYXRpb24vTWVkaWFQbGF5ZXJQcml2YXRlQVZGb3VuZGF0aW9uLmNwcDoKKyAgICAgICAgKFdl
YkNvcmU6Ok1lZGlhUGxheWVyUHJpdmF0ZUFWRm91bmRhdGlvbjo6ZXh0cmFNZW1vcnlDb3N0KTog
dG90YWxCeXRlcyByZXR1cm5zIGFuIHVuc2lnbmVkIGxvbmcgbG9uZy4KKyAgICAgICAgKiBwbGF0
Zm9ybS9ncmFwaGljcy9hdmZvdW5kYXRpb24vTWVkaWFQbGF5ZXJQcml2YXRlQVZGb3VuZGF0aW9u
Lmg6CisgICAgICAgIChXZWJDb3JlOjpNZWRpYVBsYXllclByaXZhdGVBVkZvdW5kYXRpb246OmZp
bGVTaXplKToKKworICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL2F2Zm91bmRhdGlvbi9jZi9N
ZWRpYVBsYXllclByaXZhdGVBVkZvdW5kYXRpb25DRi5jcHA6CisgICAgICAgIChXZWJDb3JlOjpN
ZWRpYVBsYXllclByaXZhdGVBVkZvdW5kYXRpb25DRjo6dG90YWxCeXRlcyk6IFJldHVybiBhbiB1
bnNpZ25lZCBsb25nIGxvbmcuCisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvYXZmb3VuZGF0
aW9uL2NmL01lZGlhUGxheWVyUHJpdmF0ZUFWRm91bmRhdGlvbkNGLmg6CisKKyAgICAgICAgKiBw
bGF0Zm9ybS9ncmFwaGljcy9hdmZvdW5kYXRpb24vb2JqYy9NZWRpYVBsYXllclByaXZhdGVBVkZv
dW5kYXRpb25PYmpDLmg6CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvYXZmb3VuZGF0aW9u
L29iamMvTWVkaWFQbGF5ZXJQcml2YXRlQVZGb3VuZGF0aW9uT2JqQy5tbToKKyAgICAgICAgKFdl
YkNvcmU6Ok1lZGlhUGxheWVyUHJpdmF0ZUFWRm91bmRhdGlvbk9iakM6OnRvdGFsQnl0ZXMpOiBE
aXR0by4KKworICAgICAgICAqIHRlc3RpbmcvSW50ZXJuYWxTZXR0aW5ncy5jcHA6CisgICAgICAg
IChXZWJDb3JlOjpJbnRlcm5hbFNldHRpbmdzOjpCYWNrdXA6OkJhY2t1cCk6IEJhY2t1cCB0aGUg
cGx1Zy1pbiByZXBsYWNlbWVudCBydW50aW1lIHNldHRpbmcuCisgICAgICAgIChXZWJDb3JlOjpJ
bnRlcm5hbFNldHRpbmdzOjpCYWNrdXA6OnJlc3RvcmVUbyk6IFJlc3RvcmUgaXQuCisgICAgICAg
IChXZWJDb3JlOjpJbnRlcm5hbFNldHRpbmdzOjpzZXRQbHVnaW5SZXBsYWNlbWVudEVuYWJsZWQp
OiBTZXQgaXQuCisgICAgICAgICogdGVzdGluZy9JbnRlcm5hbFNldHRpbmdzLmg6CisgICAgICAg
ICogdGVzdGluZy9JbnRlcm5hbFNldHRpbmdzLmlkbDoKKwogMjAxMy0xMS0yNiAgRXJpYyBDYXJs
c29uICA8ZXJpYy5jYXJsc29uQGFwcGxlLmNvbT4KIAogICAgICAgICB2aWRlby5jdXJyZW50U3Jj
IHNob3VsZCByZXR1cm4gZW1wdHkgd2hlbiBubyByZXNvdXJjZSBpcyBsb2FkZWQKSW5kZXg6IFNv
dXJjZS9XZWJDb3JlL0NNYWtlTGlzdHMudHh0Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3Jl
L0NNYWtlTGlzdHMudHh0CShyZXZpc2lvbiAxNTk3MzYpCisrKyBTb3VyY2UvV2ViQ29yZS9DTWFr
ZUxpc3RzLnR4dAkod29ya2luZyBjb3B5KQpAQCAtMTEsNiArMTEsNyBAQCBzZXQoV2ViQ29yZV9J
TkNMVURFX0RJUkVDVE9SSUVTCiAgICAgIiR7V0VCQ09SRV9ESVJ9L01vZHVsZXMvbmF2aWdhdG9y
Y29udGVudHV0aWxzIgogICAgICIke1dFQkNPUkVfRElSfS9Nb2R1bGVzL25ldHdvcmtpbmZvIgog
ICAgICIke1dFQkNPUkVfRElSfS9Nb2R1bGVzL25vdGlmaWNhdGlvbnMiCisgICAgIiR7V0VCQ09S
RV9ESVJ9L01vZHVsZXMvcGx1Z2lucyIKICAgICAiJHtXRUJDT1JFX0RJUn0vTW9kdWxlcy9wcm94
aW1pdHkiCiAgICAgIiR7V0VCQ09SRV9ESVJ9L01vZHVsZXMvcXVvdGEiCiAgICAgIiR7V0VCQ09S
RV9ESVJ9L01vZHVsZXMvdmlicmF0aW9uIgpJbmRleDogU291cmNlL1dlYkNvcmUvRGVyaXZlZFNv
dXJjZXMubWFrZQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9EZXJpdmVkU291cmNlcy5t
YWtlCShyZXZpc2lvbiAxNTk3MzYpCisrKyBTb3VyY2UvV2ViQ29yZS9EZXJpdmVkU291cmNlcy5t
YWtlCSh3b3JraW5nIGNvcHkpCkBAIC0zNiw2ICszNiw3IEBAIFZQQVRIID0gXAogICAgICQoV2Vi
Q29yZSkvTW9kdWxlcy9tZWRpYXNvdXJjZSBcCiAgICAgJChXZWJDb3JlKS9Nb2R1bGVzL21lZGlh
c3RyZWFtIFwKICAgICAkKFdlYkNvcmUpL01vZHVsZXMvbm90aWZpY2F0aW9ucyBcCisgICAgJChX
ZWJDb3JlKS9Nb2R1bGVzL3BsdWdpbnMgXAogICAgICQoV2ViQ29yZSkvTW9kdWxlcy9xdW90YSBc
CiAgICAgJChXZWJDb3JlKS9Nb2R1bGVzL3NwZWVjaCBcCiAgICAgJChXZWJDb3JlKS9Nb2R1bGVz
L3dlYmF1ZGlvIFwKQEAgLTE0MCw2ICsxNDEsNyBAQCBCSU5ESU5HX0lETFMgPSBcCiAgICAgJChX
ZWJDb3JlKS9Nb2R1bGVzL25vdGlmaWNhdGlvbnMvTm90aWZpY2F0aW9uQ2VudGVyLmlkbCBcCiAg
ICAgJChXZWJDb3JlKS9Nb2R1bGVzL25vdGlmaWNhdGlvbnMvTm90aWZpY2F0aW9uUGVybWlzc2lv
bkNhbGxiYWNrLmlkbCBcCiAgICAgJChXZWJDb3JlKS9Nb2R1bGVzL25vdGlmaWNhdGlvbnMvV29y
a2VyR2xvYmFsU2NvcGVOb3RpZmljYXRpb25zLmlkbCBcCisgICAgJChXZWJDb3JlKS9Nb2R1bGVz
L3BsdWdpbnMvUXVpY2tUaW1lUGx1Z2luUmVwbGFjZW1lbnQuaWRsIFwKICAgICAkKFdlYkNvcmUp
L01vZHVsZXMvcXVvdGEvRE9NV2luZG93UXVvdGEuaWRsIFwKICAgICAkKFdlYkNvcmUpL01vZHVs
ZXMvcXVvdGEvTmF2aWdhdG9yU3RvcmFnZVF1b3RhLmlkbCBcCiAgICAgJChXZWJDb3JlKS9Nb2R1
bGVzL3F1b3RhL1N0b3JhZ2VJbmZvLmlkbCBcCkBAIC04NjksNiArODcxLDEwIEBAIGlmZXEgKCQo
ZmluZHN0cmluZyBFTkFCTEVfTUVESUFfQ09OVFJPTFMKIAlVU0VSX0FHRU5UX1NUWUxFX1NIRUVU
UyA6PSAkKFVTRVJfQUdFTlRfU1RZTEVfU0hFRVRTKSAkKFdlYkNvcmUpL01vZHVsZXMvbWVkaWFj
b250cm9scy9tZWRpYUNvbnRyb2xzQXBwbGUuY3NzCiBlbmRpZgogCitpZmVxICgkKE9TKSxNQUNP
UykKKwlVU0VSX0FHRU5UX1NUWUxFX1NIRUVUUyAgOj0gJChVU0VSX0FHRU5UX1NUWUxFX1NIRUVU
UykgJChXZWJDb3JlKS9Nb2R1bGVzL3BsdWdpbnMvUXVpY2tUaW1lUGx1Z2luUmVwbGFjZW1lbnQu
Y3NzCitlbmRpZgorCiBVc2VyQWdlbnRTdHlsZVNoZWV0cy5oIDogY3NzL21ha2UtY3NzLWZpbGUt
YXJyYXlzLnBsIGJpbmRpbmdzL3NjcmlwdHMvcHJlcHJvY2Vzc29yLnBtICQoVVNFUl9BR0VOVF9T
VFlMRV9TSEVFVFMpICQoUExBVEZPUk1fRkVBVFVSRV9ERUZJTkVTKQogCXBlcmwgLUkkKFdlYkNv
cmUpL2JpbmRpbmdzL3NjcmlwdHMgJDwgLS1kZWZpbmVzICIkKEZFQVRVUkVfREVGSU5FUykiICRA
IFVzZXJBZ2VudFN0eWxlU2hlZXRzRGF0YS5jcHAgJChVU0VSX0FHRU5UX1NUWUxFX1NIRUVUUykK
IApAQCAtODgyLDYgKzg4OCw5IEBAIGlmZXEgKCQoZmluZHN0cmluZyBFTkFCTEVfTUVESUFfQ09O
VFJPTFMKIAlVU0VSX0FHRU5UX1NDUklQVFMgOj0gJChVU0VSX0FHRU5UX1NDUklQVFMpICQoV2Vi
Q29yZSkvTW9kdWxlcy9tZWRpYWNvbnRyb2xzL21lZGlhQ29udHJvbHNBcHBsZS5qcwogZW5kaWYK
IAoraWZlcSAoJChPUyksTUFDT1MpCisJVVNFUl9BR0VOVF9TQ1JJUFRTICA6PSAkKFVTRVJfQUdF
TlRfU0NSSVBUUykgJChXZWJDb3JlKS9Nb2R1bGVzL3BsdWdpbnMvUXVpY2tUaW1lUGx1Z2luUmVw
bGFjZW1lbnQuanMKK2VuZGlmCiAKIFVzZXJBZ2VudFNjcmlwdHMuaCA6IGNzcy9tYWtlLWNzcy1m
aWxlLWFycmF5cy5wbCBiaW5kaW5ncy9zY3JpcHRzL3ByZXByb2Nlc3Nvci5wbSAkKFVTRVJfQUdF
TlRfU0NSSVBUUykgJChQTEFURk9STV9GRUFUVVJFX0RFRklORVMpCiAJcGVybCAtSSQoV2ViQ29y
ZSkvYmluZGluZ3Mvc2NyaXB0cyAkPCAtLWRlZmluZXMgIiQoRkVBVFVSRV9ERUZJTkVTKSIgJEAg
VXNlckFnZW50U2NyaXB0c0RhdGEuY3BwICQoVVNFUl9BR0VOVF9TQ1JJUFRTKQpJbmRleDogU291
cmNlL1dlYkNvcmUvTW9kdWxlcy9wbHVnaW5zL1BsdWdpblJlcGxhY2VtZW50LmgKPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gU291cmNlL1dlYkNvcmUvTW9kdWxlcy9wbHVnaW5zL1BsdWdpblJlcGxhY2VtZW50LmgJ
KHJldmlzaW9uIDApCisrKyBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3BsdWdpbnMvUGx1Z2luUmVw
bGFjZW1lbnQuaAkod29ya2luZyBjb3B5KQpAQCAtMCwwICsxLDkxIEBACisvKgorICogQ29weXJp
Z2h0IChDKSAyMDEzIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRp
c3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdp
dGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBm
b2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBv
ZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3Rp
Y2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIu
CisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhl
IGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBh
bmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBh
bmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAq
CisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIENPTVBVVEVSLCBJTkMuIGBg
QVMgSVMnJyBBTkQgQU5ZCisgKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVE
SU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQorICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1F
UkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFS
RSBESVNDTEFJTUVELiAgSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgQ09NUFVURVIsIElOQy4gT1IK
KyAqIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJ
REVOVEFMLCBTUEVDSUFMLAorICogRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMg
KElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAorICogUFJPQ1VSRU1FTlQgT0YgU1VCU1RJ
VFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SCisgKiBQUk9GSVRT
OyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhF
T1JZCisgKiBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJ
VFksIE9SIFRPUlQKKyAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJ
TkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQorICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJ
RiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4gCisgKi8KKworI2lm
bmRlZiBQbHVnaW5SZXBsYWNlbWVudF9oCisjZGVmaW5lIFBsdWdpblJlcGxhY2VtZW50X2gKKwor
I2luY2x1ZGUgPHd0Zi9SZWZDb3VudGVkLmg+CisjaW5jbHVkZSA8d3RmL3RleHQvV1RGU3RyaW5n
Lmg+CisKK25hbWVzcGFjZSBKU0MgeworY2xhc3MgSlNPYmplY3Q7Cit9CisKK25hbWVzcGFjZSBX
ZWJDb3JlIHsKKworY2xhc3MgSFRNTFBsdWdJbkVsZW1lbnQ7CitjbGFzcyBSZW5kZXJFbGVtZW50
OworY2xhc3MgUmVuZGVyU3R5bGU7CitjbGFzcyBTaGFkb3dSb290OworCitjbGFzcyBQbHVnaW5S
ZXBsYWNlbWVudCA6IHB1YmxpYyBSZWZDb3VudGVkPFBsdWdpblJlcGxhY2VtZW50PiB7CitwdWJs
aWM6CisgICAgdmlydHVhbCB+UGx1Z2luUmVwbGFjZW1lbnQoKSB7IH0KKworICAgIHZpcnR1YWwg
Ym9vbCBpbnN0YWxsUmVwbGFjZW1lbnQoU2hhZG93Um9vdCopID0gMDsKKyAgICB2aXJ0dWFsIEpT
Qzo6SlNPYmplY3QqIHNjcmlwdE9iamVjdCgpIHsgcmV0dXJuIDA7IH0KKworICAgIHZpcnR1YWwg
Ym9vbCB3aWxsQ3JlYXRlUmVuZGVyZXIoKSB7IHJldHVybiBmYWxzZTsgfQorICAgIHZpcnR1YWwg
UmVuZGVyRWxlbWVudCogY3JlYXRlUmVuZGVyZXIoSFRNTFBsdWdJbkVsZW1lbnQmLCBQYXNzUmVm
PFJlbmRlclN0eWxlPikgPSAwOworCitwcm90ZWN0ZWQ6CisgICAgUGx1Z2luUmVwbGFjZW1lbnQo
KSB7IH0KK307CisKK3R5cGVkZWYgUGFzc1JlZlB0cjxQbHVnaW5SZXBsYWNlbWVudD4gKCpDcmVh
dGVQbHVnaW5SZXBsYWNlbWVudCkoSFRNTFBsdWdJbkVsZW1lbnQmLCBjb25zdCBWZWN0b3I8U3Ry
aW5nPiYgcGFyYW1OYW1lcywgY29uc3QgVmVjdG9yPFN0cmluZz4mIHBhcmFtVmFsdWVzKTsKK3R5
cGVkZWYgYm9vbCAoKlBsdWdpblJlcGxhY2VtZW50U3VwcG9ydHNUeXBlKShjb25zdCBTdHJpbmcm
KTsKK3R5cGVkZWYgYm9vbCAoKlBsdWdpblJlcGxhY2VtZW50U3VwcG9ydHNGaWxlRXh0ZW5zaW9u
KShjb25zdCBTdHJpbmcmKTsKKworY2xhc3MgUmVwbGFjZW1lbnRQbHVnaW4geworcHVibGljOgor
ICAgIFJlcGxhY2VtZW50UGx1Z2luKENyZWF0ZVBsdWdpblJlcGxhY2VtZW50IGNvbnN0cnVjdG9y
LCBQbHVnaW5SZXBsYWNlbWVudFN1cHBvcnRzVHlwZSBzdXBwb3J0c1R5cGUsIFBsdWdpblJlcGxh
Y2VtZW50U3VwcG9ydHNGaWxlRXh0ZW5zaW9uIHN1cHBvcnRzRmlsZUV4dGVuc2lvbikKKyAgICAg
ICAgOiBtX2NvbnN0cnVjdG9yKGNvbnN0cnVjdG9yKQorICAgICAgICAsIG1fc3VwcG9ydHNUeXBl
KHN1cHBvcnRzVHlwZSkKKyAgICAgICAgLCBtX3N1cHBvcnRzRmlsZUV4dGVuc2lvbihzdXBwb3J0
c0ZpbGVFeHRlbnNpb24pCisgICAgeworICAgIH0KKworICAgIGV4cGxpY2l0IFJlcGxhY2VtZW50
UGx1Z2luKGNvbnN0IFJlcGxhY2VtZW50UGx1Z2luJiBvdGhlcikKKyAgICAgICAgOiBtX2NvbnN0
cnVjdG9yKG90aGVyLm1fY29uc3RydWN0b3IpCisgICAgICAgICwgbV9zdXBwb3J0c1R5cGUob3Ro
ZXIubV9zdXBwb3J0c1R5cGUpCisgICAgICAgICwgbV9zdXBwb3J0c0ZpbGVFeHRlbnNpb24ob3Ro
ZXIubV9zdXBwb3J0c0ZpbGVFeHRlbnNpb24pCisgICAgeworICAgIH0KKworICAgIFBhc3NSZWZQ
dHI8UGx1Z2luUmVwbGFjZW1lbnQ+IGNyZWF0ZShIVE1MUGx1Z0luRWxlbWVudCYgZWxlbWVudCwg
Y29uc3QgVmVjdG9yPFN0cmluZz4mIHBhcmFtTmFtZXMsIGNvbnN0IFZlY3RvcjxTdHJpbmc+JiBw
YXJhbVZhbHVlcykgY29uc3QgeyByZXR1cm4gbV9jb25zdHJ1Y3RvcihlbGVtZW50LCBwYXJhbU5h
bWVzLCBwYXJhbVZhbHVlcyk7IH0KKyAgICBib29sIHN1cHBvcnRzVHlwZShjb25zdCBTdHJpbmcm
IG1pbWVUeXBlKSBjb25zdCB7IHJldHVybiBtX3N1cHBvcnRzVHlwZShtaW1lVHlwZSk7IH0KKyAg
ICBib29sIHN1cHBvcnRzRmlsZUV4dGVuc2lvbihjb25zdCBTdHJpbmcmIGV4dGVuc2lvbikgY29u
c3QgeyByZXR1cm4gbV9zdXBwb3J0c0ZpbGVFeHRlbnNpb24oZXh0ZW5zaW9uKTsgfQorCitwcml2
YXRlOgorICAgIENyZWF0ZVBsdWdpblJlcGxhY2VtZW50IG1fY29uc3RydWN0b3I7CisgICAgUGx1
Z2luUmVwbGFjZW1lbnRTdXBwb3J0c1R5cGUgbV9zdXBwb3J0c1R5cGU7CisgICAgUGx1Z2luUmVw
bGFjZW1lbnRTdXBwb3J0c0ZpbGVFeHRlbnNpb24gbV9zdXBwb3J0c0ZpbGVFeHRlbnNpb247Cit9
OworCit0eXBlZGVmIHZvaWQgKCpQbHVnaW5SZXBsYWNlbWVudFJlZ2lzdHJhcikoY29uc3QgUmVw
bGFjZW1lbnRQbHVnaW4mKTsKKworfQorCisjZW5kaWYKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL01v
ZHVsZXMvcGx1Z2lucy9RdWlja1RpbWVQbHVnaW5SZXBsYWNlbWVudC5jcHAKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gU291cmNlL1dlYkNvcmUvTW9kdWxlcy9wbHVnaW5zL1F1aWNrVGltZVBsdWdpblJlcGxhY2Vt
ZW50LmNwcAkocmV2aXNpb24gMCkKKysrIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvcGx1Z2lucy9R
dWlja1RpbWVQbHVnaW5SZXBsYWNlbWVudC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTAsMCArMSwy
MzQgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTMgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJl
c2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5h
cnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVk
IHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICog
MS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBj
b3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBm
b2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9y
bSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMg
bGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisg
KiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0
aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQ
TEUgQ09NUFVURVIsIElOQy4gYGBBUyBJUycnIEFORCBBTlkKKyAqIEVYUFJFU1MgT1IgSU1QTElF
RCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCisgKiBJTVBM
SUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJ
Q1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuICBJTiBOTyBFVkVOVCBTSEFMTCBBUFBM
RSBDT01QVVRFUiwgSU5DLiBPUgorICogQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJ
UkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsCisgKiBFWEVNUExBUlksIE9SIENP
TlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBQ
Uk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwg
REFUQSwgT1IKKyAqIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBD
QVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkKKyAqIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05U
UkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorICogKElOQ0xVRElORyBORUdMSUdFTkNF
IE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCisgKiBPRiBU
SElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0gg
REFNQUdFLiAKKyAqLworCisjaW5jbHVkZSAiY29uZmlnLmgiCisKKyNpZiBFTkFCTEUoTUVESUFf
Q09OVFJPTFNfU0NSSVBUKQorCisjaW5jbHVkZSAiUXVpY2tUaW1lUGx1Z2luUmVwbGFjZW1lbnQu
aCIKKworI2luY2x1ZGUgIkV2ZW50LmgiCisjaW5jbHVkZSAiSFRNTFBsdWdJbkVsZW1lbnQuaCIK
KyNpbmNsdWRlICJIVE1MVmlkZW9FbGVtZW50LmgiCisjaW5jbHVkZSAiSlNET01CaW5kaW5nLmgi
CisjaW5jbHVkZSAiSlNET01HbG9iYWxPYmplY3QuaCIKKyNpbmNsdWRlICJKU0hUTUxWaWRlb0Vs
ZW1lbnQuaCIKKyNpbmNsdWRlICJKU1F1aWNrVGltZVBsdWdpblJlcGxhY2VtZW50LmgiCisjaW5j
bHVkZSAiTWFpbkZyYW1lLmgiCisjaW5jbHVkZSAiUGFnZS5oIgorI2luY2x1ZGUgIlJlbmRlckVs
ZW1lbnQuaCIKKyNpbmNsdWRlICJTY3JpcHRDb250cm9sbGVyLmgiCisjaW5jbHVkZSAiU2NyaXB0
T2JqZWN0LmgiCisjaW5jbHVkZSAiU2NyaXB0U291cmNlQ29kZS5oIgorI2luY2x1ZGUgIlVzZXJB
Z2VudFNjcmlwdHMuaCIKKyNpbmNsdWRlIDxKYXZhU2NyaXB0Q29yZS9BUElDYXN0Lmg+CisjaW5j
bHVkZSA8SmF2YVNjcmlwdENvcmUvSlNCYXNlLmg+CisjaW5jbHVkZSA8SmF2YVNjcmlwdENvcmUv
SlNDSlNWYWx1ZUlubGluZXMuaD4KKwordXNpbmcgbmFtZXNwYWNlIEpTQzsKKworbmFtZXNwYWNl
IFdlYkNvcmUgeworCitzdGF0aWMgU3RyaW5nIHF1aWNrVGltZVBsdWdpblJlcGxhY2VtZW50U2Ny
aXB0KCkKK3sKKyAgICBERUZJTkVfU1RBVElDX0xPQ0FMKFN0cmluZywgc2NyaXB0LCAoUXVpY2tU
aW1lUGx1Z2luUmVwbGFjZW1lbnRKYXZhU2NyaXB0LCBzaXplb2YoUXVpY2tUaW1lUGx1Z2luUmVw
bGFjZW1lbnRKYXZhU2NyaXB0KSkpOworICAgIHJldHVybiBzY3JpcHQ7Cit9CisKK3ZvaWQgUXVp
Y2tUaW1lUGx1Z2luUmVwbGFjZW1lbnQ6OnJlZ2lzdGVyUGx1Z2luUmVwbGFjZW1lbnQoUGx1Z2lu
UmVwbGFjZW1lbnRSZWdpc3RyYXIgcmVnaXN0cmFyKQoreworICAgIHJlZ2lzdHJhcihSZXBsYWNl
bWVudFBsdWdpbihjcmVhdGUsIHN1cHBvcnRzTWltZVR5cGUsIHN1cHBvcnRzRmlsZUV4dGVuc2lv
bikpOworfQorCitQYXNzUmVmUHRyPFBsdWdpblJlcGxhY2VtZW50PiBRdWlja1RpbWVQbHVnaW5S
ZXBsYWNlbWVudDo6Y3JlYXRlKEhUTUxQbHVnSW5FbGVtZW50JiBwbHVnaW4sIGNvbnN0IFZlY3Rv
cjxTdHJpbmc+JiBwYXJhbU5hbWVzLCBjb25zdCBWZWN0b3I8U3RyaW5nPiYgcGFyYW1WYWx1ZXMp
Cit7CisgICAgcmV0dXJuIGFkb3B0UmVmKG5ldyBRdWlja1RpbWVQbHVnaW5SZXBsYWNlbWVudChw
bHVnaW4sIHBhcmFtTmFtZXMsIHBhcmFtVmFsdWVzKSk7Cit9CisKK2Jvb2wgUXVpY2tUaW1lUGx1
Z2luUmVwbGFjZW1lbnQ6OnN1cHBvcnRzTWltZVR5cGUoY29uc3QgU3RyaW5nJiBtaW1lVHlwZSkK
K3sKKyAgICBzdGF0aWMgY29uc3QgY2hhciogdHlwZXNbXSA9IHsKKyAgICAgICAgImFwcGxpY2F0
aW9uL3ZuZC5hcHBsZS5tcGVndXJsIiwgImFwcGxpY2F0aW9uL3gtbXBlZ3VybCIsICJhdWRpby8z
Z3BwIiwgImF1ZGlvLzNncHAyIiwgImF1ZGlvL2FhYyIsICJhdWRpby9haWZmIiwKKyAgICAgICAg
ImF1ZGlvL2FtciIsICJhdWRpby9iYXNpYyIsICJhdWRpby9tcDMiLCAiYXVkaW8vbXA0IiwgImF1
ZGlvL21wZWciLCAiYXVkaW8vbXBlZzMiLCAiYXVkaW8vbXBlZ3VybCIsICJhdWRpby9zY3BscyIs
CisgICAgICAgICJhdWRpby93YXYiLCAiYXVkaW8veC1hYWMiLCAiYXVkaW8veC1haWZmIiwgImF1
ZGlvL3gtY2FmIiwgImF1ZGlvL3gtbTRhIiwgImF1ZGlvL3gtbTRiIiwgImF1ZGlvL3gtbTRwIiwK
KyAgICAgICAgImF1ZGlvL3gtbTRyIiwgImF1ZGlvL3gtbXAzIiwgImF1ZGlvL3gtbXBlZyIsICJh
dWRpby94LW1wZWczIiwgImF1ZGlvL3gtbXBlZ3VybCIsICJhdWRpby94LXNjcGxzIiwgImF1ZGlv
L3gtd2F2IiwKKyAgICAgICAgInZpZGVvLzNncHAiLCAidmlkZW8vM2dwcDIiLCAidmlkZW8vbXA0
IiwgInZpZGVvL3F1aWNrdGltZSIsICJ2aWRlby94LW00diIKKyAgICB9OworICAgIERFRklORV9T
VEFUSUNfTE9DQUwoSGFzaFNldDxTdHJpbmc+LCB0eXBlSGFzaCwgKCkpOworICAgIGlmICghdHlw
ZUhhc2guc2l6ZSgpKSB7CisgICAgICAgIGZvciAoc2l6ZV90IGkgPSAwOyBpIDwgV1RGX0FSUkFZ
X0xFTkdUSCh0eXBlcyk7ICsraSkKKyAgICAgICAgICAgIHR5cGVIYXNoLmFkZCh0eXBlc1tpXSk7
CisgICAgfQorCisgICAgcmV0dXJuIHR5cGVIYXNoLmNvbnRhaW5zKG1pbWVUeXBlKTsKK30KKwor
Ym9vbCBRdWlja1RpbWVQbHVnaW5SZXBsYWNlbWVudDo6c3VwcG9ydHNGaWxlRXh0ZW5zaW9uKGNv
bnN0IFN0cmluZyYgZXh0ZW5zaW9uKQoreworICAgIHN0YXRpYyBjb25zdCBjaGFyKiBleHRlbnNp
b25zW10gPSB7CisgICAgICAgICIzZzIiLCAiM2dwIiwgIjNncDIiLCAiM2dwcCIsICJhYWMiLCAi
YWR0cyIsICJhaWYiLCAiYWlmYyIsICJhaWZmIiwgIkFNUiIsICJhdSIsICJid2YiLCAiY2FmIiwg
ImNkZGEiLCAibTN1IiwKKyAgICAgICAgIm0zdTgiLCAibTRhIiwgIm00YiIsICJtNHAiLCAibTRy
IiwgIm00diIsICJtb3YiLCAibXAzIiwgIm1wMyIsICJtcDQiLCAibXBlZyIsICJtcGciLCAibXF2
IiwgInBscyIsICJxdCIsCisgICAgICAgICJzbmQiLCAic3dhIiwgInRzIiwgInVsdyIsICJ3YXYi
CisgICAgfTsKKyAgICBERUZJTkVfU1RBVElDX0xPQ0FMKEhhc2hTZXQ8U3RyaW5nPiwgZXh0ZW5z
aW9uSGFzaCwgKCkpOworICAgIGlmICghZXh0ZW5zaW9uSGFzaC5zaXplKCkpIHsKKyAgICAgICAg
Zm9yIChzaXplX3QgaSA9IDA7IGkgPCBXVEZfQVJSQVlfTEVOR1RIKGV4dGVuc2lvbnMpOyArK2kp
CisgICAgICAgICAgICBleHRlbnNpb25IYXNoLmFkZChleHRlbnNpb25zW2ldKTsKKyAgICB9CisK
KyAgICByZXR1cm4gZXh0ZW5zaW9uSGFzaC5jb250YWlucyhleHRlbnNpb24pOworfQorCitRdWlj
a1RpbWVQbHVnaW5SZXBsYWNlbWVudDo6UXVpY2tUaW1lUGx1Z2luUmVwbGFjZW1lbnQoSFRNTFBs
dWdJbkVsZW1lbnQmIHBsdWdpbiwgY29uc3QgVmVjdG9yPFN0cmluZz4mIHBhcmFtTmFtZXMsIGNv
bnN0IFZlY3RvcjxTdHJpbmc+JiBwYXJhbVZhbHVlcykKKyAgICA6UGx1Z2luUmVwbGFjZW1lbnQo
KQorICAgICwgbV9wYXJlbnRFbGVtZW50KCZwbHVnaW4pCisgICAgLCBtX25hbWVzKHBhcmFtTmFt
ZXMpCisgICAgLCBtX3ZhbHVlcyhwYXJhbVZhbHVlcykKKyAgICAsIG1fc2NyaXB0T2JqZWN0KG51
bGxwdHIpCit7Cit9CisKK1F1aWNrVGltZVBsdWdpblJlcGxhY2VtZW50Ojp+UXVpY2tUaW1lUGx1
Z2luUmVwbGFjZW1lbnQoKQoreworICAgIG1fcGFyZW50RWxlbWVudCA9IG51bGxwdHI7CisgICAg
bV9zY3JpcHRPYmplY3QgPSBudWxscHRyOworICAgIG1fbWVkaWFFbGVtZW50ID0gbnVsbHB0cjsK
K30KKworUmVuZGVyRWxlbWVudCogUXVpY2tUaW1lUGx1Z2luUmVwbGFjZW1lbnQ6OmNyZWF0ZVJl
bmRlcmVyKEhUTUxQbHVnSW5FbGVtZW50JiBwbHVnaW4sIFBhc3NSZWY8UmVuZGVyU3R5bGU+IHN0
eWxlKQoreworICAgIEFTU0VSVF9VTlVTRUQocGx1Z2luLCBtX3BhcmVudEVsZW1lbnQgPT0gJnBs
dWdpbik7CisKKyAgICBpZiAobV9tZWRpYUVsZW1lbnQpCisgICAgICAgIHJldHVybiBtX21lZGlh
RWxlbWVudC0+Y3JlYXRlUmVuZGVyZXIoc3RkOjptb3ZlKHN0eWxlKSk7CisKKyAgICByZXR1cm4g
MDsKK30KKworRE9NV3JhcHBlcldvcmxkJiBRdWlja1RpbWVQbHVnaW5SZXBsYWNlbWVudDo6aXNv
bGF0ZWRXb3JsZCgpCit7CisgICAgc3RhdGljIERPTVdyYXBwZXJXb3JsZCYgaXNvbGF0ZWRXb3Js
ZCA9ICpET01XcmFwcGVyV29ybGQ6OmNyZWF0ZShKU0RPTVdpbmRvdzo6Y29tbW9uVk0oKSkubGVh
a1JlZigpOworICAgIHJldHVybiBpc29sYXRlZFdvcmxkOworfQorCitib29sIFF1aWNrVGltZVBs
dWdpblJlcGxhY2VtZW50OjplbnN1cmVSZXBsYWNlbWVudFNjcmlwdEluamVjdGVkKCkKK3sKKyAg
ICBQYWdlKiBwYWdlID0gbV9wYXJlbnRFbGVtZW50LT5kb2N1bWVudCgpLnBhZ2UoKTsKKyAgICBp
ZiAoIXBhZ2UpCisgICAgICAgIHJldHVybiBmYWxzZTsKKyAgICAKKyAgICBET01XcmFwcGVyV29y
bGQmIHdvcmxkID0gaXNvbGF0ZWRXb3JsZCgpOworICAgIFNjcmlwdENvbnRyb2xsZXImIHNjcmlw
dENvbnRyb2xsZXIgPSBwYWdlLT5tYWluRnJhbWUoKS5zY3JpcHQoKTsKKyAgICBKU0RPTUdsb2Jh
bE9iamVjdCogZ2xvYmFsT2JqZWN0ID0ganNDYXN0PEpTRE9NR2xvYmFsT2JqZWN0Kj4oc2NyaXB0
Q29udHJvbGxlci5nbG9iYWxPYmplY3Qod29ybGQpKTsKKyAgICBFeGVjU3RhdGUqIGV4ZWMgPSBn
bG9iYWxPYmplY3QtPmdsb2JhbEV4ZWMoKTsKKyAgICAKKyAgICBKU1ZhbHVlIHJlcGxhY2VtZW50
RnVuY3Rpb24gPSBnbG9iYWxPYmplY3QtPmdldChleGVjLCBJZGVudGlmaWVyKGV4ZWMsICJjcmVh
dGVQbHVnaW5SZXBsYWNlbWVudCIpKTsKKyAgICBpZiAocmVwbGFjZW1lbnRGdW5jdGlvbi5pc0Z1
bmN0aW9uKCkpCisgICAgICAgIHJldHVybiB0cnVlOworICAgIAorICAgIHNjcmlwdENvbnRyb2xs
ZXIuZXZhbHVhdGVJbldvcmxkKFNjcmlwdFNvdXJjZUNvZGUocXVpY2tUaW1lUGx1Z2luUmVwbGFj
ZW1lbnRTY3JpcHQoKSksIHdvcmxkKTsKKyAgICBpZiAoZXhlYy0+aGFkRXhjZXB0aW9uKCkpIHsK
KyAgICAgICAgZXhlYy0+Y2xlYXJFeGNlcHRpb24oKTsKKyAgICAgICAgcmV0dXJuIGZhbHNlOwor
ICAgIH0KKyAgICAKKyAgICByZXR1cm4gdHJ1ZTsKK30KKworYm9vbCBRdWlja1RpbWVQbHVnaW5S
ZXBsYWNlbWVudDo6aW5zdGFsbFJlcGxhY2VtZW50KFNoYWRvd1Jvb3QqIHJvb3QpCit7CisgICAg
UGFnZSogcGFnZSA9IG1fcGFyZW50RWxlbWVudC0+ZG9jdW1lbnQoKS5wYWdlKCk7CisKKyAgICBp
ZiAoIWVuc3VyZVJlcGxhY2VtZW50U2NyaXB0SW5qZWN0ZWQoKSkKKyAgICAgICAgcmV0dXJuIGZh
bHNlOworCisgICAgRE9NV3JhcHBlcldvcmxkJiB3b3JsZCA9IGlzb2xhdGVkV29ybGQoKTsKKyAg
ICBTY3JpcHRDb250cm9sbGVyJiBzY3JpcHRDb250cm9sbGVyID0gcGFnZS0+bWFpbkZyYW1lKCku
c2NyaXB0KCk7CisgICAgSlNET01HbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCA9IGpzQ2FzdDxK
U0RPTUdsb2JhbE9iamVjdCo+KHNjcmlwdENvbnRyb2xsZXIuZ2xvYmFsT2JqZWN0KHdvcmxkKSk7
CisgICAgRXhlY1N0YXRlKiBleGVjID0gZ2xvYmFsT2JqZWN0LT5nbG9iYWxFeGVjKCk7CisgICAg
SlNMb2NrSG9sZGVyIGxvY2soZXhlYyk7CisgICAgCisgICAgLy8gTG9va3VwIHRoZSAiY3JlYXRl
UGx1Z2luUmVwbGFjZW1lbnQiIGZ1bmN0aW9uCisgICAgSlNWYWx1ZSByZXBsYWNlbWVudEZ1bmN0
aW9uID0gZ2xvYmFsT2JqZWN0LT5nZXQoZXhlYywgSWRlbnRpZmllcihleGVjLCAiY3JlYXRlUGx1
Z2luUmVwbGFjZW1lbnQiKSk7CisgICAgaWYgKHJlcGxhY2VtZW50RnVuY3Rpb24uaXNVbmRlZmlu
ZWRPck51bGwoKSkKKyAgICAgICAgcmV0dXJuIGZhbHNlOworICAgIEpTT2JqZWN0KiByZXBsYWNl
bWVudE9iamVjdCA9IHJlcGxhY2VtZW50RnVuY3Rpb24udG9PYmplY3QoZXhlYyk7CisgICAgQ2Fs
bERhdGEgY2FsbERhdGE7CisgICAgQ2FsbFR5cGUgY2FsbFR5cGUgPSByZXBsYWNlbWVudE9iamVj
dC0+bWV0aG9kVGFibGUoKS0+Z2V0Q2FsbERhdGEocmVwbGFjZW1lbnRPYmplY3QsIGNhbGxEYXRh
KTsKKyAgICBpZiAoY2FsbFR5cGUgPT0gQ2FsbFR5cGVOb25lKQorICAgICAgICByZXR1cm4gZmFs
c2U7CisKKyAgICBNYXJrZWRBcmd1bWVudEJ1ZmZlciBhcmdMaXN0OworICAgIGFyZ0xpc3QuYXBw
ZW5kKHRvSlMoZXhlYywgZ2xvYmFsT2JqZWN0LCByb290KSk7CisgICAgYXJnTGlzdC5hcHBlbmQo
dG9KUyhleGVjLCBnbG9iYWxPYmplY3QsIG1fcGFyZW50RWxlbWVudCkpOworICAgIGFyZ0xpc3Qu
YXBwZW5kKHRvSlMoZXhlYywgZ2xvYmFsT2JqZWN0LCB0aGlzKSk7CisgICAgYXJnTGlzdC5hcHBl
bmQodG9KUzxTdHJpbmc+KGV4ZWMsIGdsb2JhbE9iamVjdCwgbV9uYW1lcykpOworICAgIGFyZ0xp
c3QuYXBwZW5kKHRvSlM8U3RyaW5nPihleGVjLCBnbG9iYWxPYmplY3QsIG1fdmFsdWVzKSk7Cisg
ICAgSlNWYWx1ZSByZXBsYWNlbWVudCA9IGNhbGwoZXhlYywgcmVwbGFjZW1lbnRPYmplY3QsIGNh
bGxUeXBlLCBjYWxsRGF0YSwgZ2xvYmFsT2JqZWN0LCBhcmdMaXN0KTsKKyAgICBpZiAoZXhlYy0+
aGFkRXhjZXB0aW9uKCkpIHsKKyAgICAgICAgZXhlYy0+Y2xlYXJFeGNlcHRpb24oKTsKKyAgICAg
ICAgcmV0dXJuIGZhbHNlOworICAgIH0KKworICAgIC8vIEdldCB0aGUgPHZpZGVvPiBjcmVhdGVk
IHRvIHJlcGxhY2UgdGhlIHBsdWctaW4uCisgICAgSlNWYWx1ZSB2YWx1ZSA9IHJlcGxhY2VtZW50
LmdldChleGVjLCBJZGVudGlmaWVyKGV4ZWMsICJ2aWRlbyIpKTsKKyAgICBpZiAoIWV4ZWMtPmhh
ZEV4Y2VwdGlvbigpICYmICF2YWx1ZS5pc1VuZGVmaW5lZE9yTnVsbCgpKQorICAgICAgICBtX21l
ZGlhRWxlbWVudCA9IHRvSFRNTFZpZGVvRWxlbWVudCh2YWx1ZSk7CisKKyAgICBpZiAoIW1fbWVk
aWFFbGVtZW50KSB7CisgICAgICAgIGV4ZWMtPmNsZWFyRXhjZXB0aW9uKCk7CisgICAgICAgIHJl
dHVybiBmYWxzZTsKKyAgICB9CisKKyAgICAvLyBHZXQgdGhlIHNjcmlwdGluZyBpbnRlcmZhY2Uu
CisgICAgdmFsdWUgPSByZXBsYWNlbWVudC5nZXQoZXhlYywgSWRlbnRpZmllcihleGVjLCAic2Ny
aXB0T2JqZWN0IikpOworICAgIGlmICghZXhlYy0+aGFkRXhjZXB0aW9uKCkgJiYgIXZhbHVlLmlz
VW5kZWZpbmVkT3JOdWxsKCkpCisgICAgICAgIG1fc2NyaXB0T2JqZWN0ID0gdmFsdWUudG9PYmpl
Y3QoZXhlYyk7CisKKyAgICBpZiAoIW1fc2NyaXB0T2JqZWN0KSB7CisgICAgICAgIGV4ZWMtPmNs
ZWFyRXhjZXB0aW9uKCk7CisgICAgICAgIHJldHVybiBmYWxzZTsKKyAgICB9CisKKyAgICByZXR1
cm4gdHJ1ZTsKK30KKwordW5zaWduZWQgbG9uZyBsb25nIFF1aWNrVGltZVBsdWdpblJlcGxhY2Vt
ZW50Ojptb3ZpZVNpemUoKSBjb25zdAoreworICAgIGlmIChtX21lZGlhRWxlbWVudCkKKyAgICAg
ICAgcmV0dXJuIG1fbWVkaWFFbGVtZW50LT5maWxlU2l6ZSgpOworCisgICAgcmV0dXJuIDA7Cit9
CisKK3ZvaWQgUXVpY2tUaW1lUGx1Z2luUmVwbGFjZW1lbnQ6OnBvc3RFdmVudChjb25zdCBTdHJp
bmcmIGV2ZW50TmFtZSkKK3sKKyAgICBSZWY8SFRNTFBsdWdJbkVsZW1lbnQ+IHByb3RlY3QoKm1f
cGFyZW50RWxlbWVudCk7CisgICAgUmVmUHRyPEV2ZW50PiBldmVudCA9IEV2ZW50OjpjcmVhdGUo
ZXZlbnROYW1lLCBmYWxzZSwgdHJ1ZSk7CisgICAgbV9wYXJlbnRFbGVtZW50LT5kaXNwYXRjaEV2
ZW50KGV2ZW50LmdldCgpKTsKK30KKworfQorI2VuZGlmCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9N
b2R1bGVzL3BsdWdpbnMvUXVpY2tUaW1lUGx1Z2luUmVwbGFjZW1lbnQuY3NzCj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LS0tIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvcGx1Z2lucy9RdWlja1RpbWVQbHVnaW5SZXBsYWNl
bWVudC5jc3MJKHJldmlzaW9uIDApCisrKyBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3BsdWdpbnMv
UXVpY2tUaW1lUGx1Z2luUmVwbGFjZW1lbnQuY3NzCSh3b3JraW5nIGNvcHkpCkBAIC0wLDAgKzEs
MzQgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTMgQXBwbGUgSW5jLiAgQWxsIHJpZ2h0cyBy
ZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmlu
YXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRl
ZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAq
IDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUg
Y29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUg
Zm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZv
cm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlz
IGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQor
ICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGgg
dGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQ
UExFIENPTVBVVEVSLCBJTkMuIGBgQVMgSVMnJyBBTkQgQU5ZCisgKiBFWFBSRVNTIE9SIElNUExJ
RUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQorICogSU1Q
TElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJU
SUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiAgSU4gTk8gRVZFTlQgU0hBTEwgQVBQ
TEUgQ09NUFVURVIsIElOQy4gT1IKKyAqIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBE
SVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLAorICogRVhFTVBMQVJZLCBPUiBD
T05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAorICog
UFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04g
QU5ZIFRIRU9SWQorICogT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1Qg
TElBQklMSVRZLCBPUiBUT1JUCisgKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNF
KSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKKyAqIE9GIFRISVMgU09GVFdBUkUs
IEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuIAorICov
CisKK2VtYmVkOjotd2Via2l0LXBsdWdpbi1yZXBsYWNlbWVudCwKK29iamVjdDo6LXdlYmtpdC1w
bHVnaW4tcmVwbGFjZW1lbnQKK3sKKyAgICBwb3NpdGlvbjogcmVsYXRpdmU7CisgICAgZGlzcGxh
eTogaW5saW5lLWJsb2NrOworICAgIHdpZHRoOiAxMDAlOworICAgIGhlaWdodDogMTAwJTsKKyAg
ICB6LWluZGV4OiAwOworfQorCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3BsdWdpbnMv
UXVpY2tUaW1lUGx1Z2luUmVwbGFjZW1lbnQuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29y
ZS9Nb2R1bGVzL3BsdWdpbnMvUXVpY2tUaW1lUGx1Z2luUmVwbGFjZW1lbnQuaAkocmV2aXNpb24g
MCkKKysrIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvcGx1Z2lucy9RdWlja1RpbWVQbHVnaW5SZXBs
YWNlbWVudC5oCSh3b3JraW5nIGNvcHkpCkBAIC0wLDAgKzEsNzYgQEAKKy8qCisgKiBDb3B5cmln
aHQgKEMpIDIwMTMgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlz
dHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0
aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZv
bGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9m
IHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGlj
ZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4K
KyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUg
YWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFu
ZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFu
ZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoK
KyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgQ09NUFVURVIsIElOQy4gYGBB
UyBJUycnIEFORCBBTlkKKyAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJ
TkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCisgKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVS
Q0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJF
IERJU0NMQUlNRUQuICBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBDT01QVVRFUiwgSU5DLiBPUgor
ICogQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lE
RU5UQUwsIFNQRUNJQUwsCisgKiBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAo
SU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBQUk9DVVJFTUVOVCBPRiBTVUJTVElU
VVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IKKyAqIFBST0ZJVFM7
IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVP
UlkKKyAqIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElU
WSwgT1IgVE9SVAorICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lO
RyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCisgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElG
IEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLiAKKyAqLworCisjaWZu
ZGVmIFF1aWNrVGltZVBsdWdpblJlcGxhY2VtZW50X2gKKyNkZWZpbmUgUXVpY2tUaW1lUGx1Z2lu
UmVwbGFjZW1lbnRfaAorCisjaW5jbHVkZSAiUGx1Z2luUmVwbGFjZW1lbnQuaCIKKyNpbmNsdWRl
ICJTY3JpcHRTdGF0ZS5oIgorI2luY2x1ZGUgIlNjcmlwdFZhbHVlLmgiCisjaW5jbHVkZSA8d3Rm
L1JlZkNvdW50ZWQuaD4KKyNpbmNsdWRlIDx3dGYvdGV4dC9XVEZTdHJpbmcuaD4KKworbmFtZXNw
YWNlIFdlYkNvcmUgeworCitjbGFzcyBIVE1MUGx1Z0luRWxlbWVudDsKK2NsYXNzIEhUTUxWaWRl
b0VsZW1lbnQ7CitjbGFzcyBSZW5kZXJFbGVtZW50OworY2xhc3MgUmVuZGVyU3R5bGU7CitjbGFz
cyBTaGFkb3dSb290OworCitjbGFzcyBRdWlja1RpbWVQbHVnaW5SZXBsYWNlbWVudCA6IHB1Ymxp
YyBQbHVnaW5SZXBsYWNlbWVudCB7CitwdWJsaWM6CisgICAgc3RhdGljIHZvaWQgcmVnaXN0ZXJQ
bHVnaW5SZXBsYWNlbWVudChQbHVnaW5SZXBsYWNlbWVudFJlZ2lzdHJhcik7CisgICAgc3RhdGlj
IGJvb2wgc3VwcG9ydHNNaW1lVHlwZShjb25zdCBTdHJpbmcmKTsKKyAgICBzdGF0aWMgYm9vbCBz
dXBwb3J0c0ZpbGVFeHRlbnNpb24oY29uc3QgU3RyaW5nJik7CisgICAgCisgICAgc3RhdGljIFBh
c3NSZWZQdHI8UGx1Z2luUmVwbGFjZW1lbnQ+IGNyZWF0ZShIVE1MUGx1Z0luRWxlbWVudCYsIGNv
bnN0IFZlY3RvcjxTdHJpbmc+JiBwYXJhbU5hbWVzLCBjb25zdCBWZWN0b3I8U3RyaW5nPiYgcGFy
YW1WYWx1ZXMpOworICAgIH5RdWlja1RpbWVQbHVnaW5SZXBsYWNlbWVudCgpOworCisgICAgdmly
dHVhbCBib29sIGluc3RhbGxSZXBsYWNlbWVudChTaGFkb3dSb290KikgT1ZFUlJJREU7CisgICAg
dmlydHVhbCBKU0M6OkpTT2JqZWN0KiBzY3JpcHRPYmplY3QoKSBPVkVSUklERSB7IHJldHVybiBt
X3NjcmlwdE9iamVjdDsgfQorCisgICAgdmlydHVhbCBib29sIHdpbGxDcmVhdGVSZW5kZXJlcigp
IE9WRVJSSURFIHsgcmV0dXJuIG1fbWVkaWFFbGVtZW50OyB9CisgICAgdmlydHVhbCBSZW5kZXJF
bGVtZW50KiBjcmVhdGVSZW5kZXJlcihIVE1MUGx1Z0luRWxlbWVudCYsIFBhc3NSZWY8UmVuZGVy
U3R5bGU+KSBPVkVSUklERTsKKworICAgIHVuc2lnbmVkIGxvbmcgbG9uZyBtb3ZpZVNpemUoKSBj
b25zdDsKKyAgICB2b2lkIHBvc3RFdmVudChjb25zdCBTdHJpbmcmKTsKKworcHJpdmF0ZToKKyAg
ICBRdWlja1RpbWVQbHVnaW5SZXBsYWNlbWVudChIVE1MUGx1Z0luRWxlbWVudCYsIGNvbnN0IFZl
Y3RvcjxTdHJpbmc+JiBwYXJhbU5hbWVzLCBjb25zdCBWZWN0b3I8U3RyaW5nPiYgcGFyYW1WYWx1
ZXMpOworCisgICAgYm9vbCBlbnN1cmVSZXBsYWNlbWVudFNjcmlwdEluamVjdGVkKCk7CisgICAg
RE9NV3JhcHBlcldvcmxkJiBpc29sYXRlZFdvcmxkKCk7CisKKyAgICBIVE1MUGx1Z0luRWxlbWVu
dCogbV9wYXJlbnRFbGVtZW50OworICAgIFJlZlB0cjxIVE1MVmlkZW9FbGVtZW50PiBtX21lZGlh
RWxlbWVudDsKKyAgICBjb25zdCBWZWN0b3I8U3RyaW5nPiBtX25hbWVzOworICAgIGNvbnN0IFZl
Y3RvcjxTdHJpbmc+IG1fdmFsdWVzOworICAgIEpTQzo6SlNPYmplY3QqIG1fc2NyaXB0T2JqZWN0
OworfTsKKworfQorCisjZW5kaWYKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvcGx1Z2lu
cy9RdWlja1RpbWVQbHVnaW5SZXBsYWNlbWVudC5pZGwKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dl
YkNvcmUvTW9kdWxlcy9wbHVnaW5zL1F1aWNrVGltZVBsdWdpblJlcGxhY2VtZW50LmlkbAkocmV2
aXNpb24gMCkKKysrIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvcGx1Z2lucy9RdWlja1RpbWVQbHVn
aW5SZXBsYWNlbWVudC5pZGwJKHdvcmtpbmcgY29weSkKQEAgLTAsMCArMSwzMyBAQAorLyoKKyAq
IENvcHlyaWdodCAoQykgMjAxMyBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgor
ICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0
aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhh
dCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1
dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICog
ICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNj
bGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9k
dWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRp
dGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50
YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRp
b24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBDT01QVVRFUiwg
SU5DLiBgYEFTIElTJycgQU5EIEFOWQorICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMs
IElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKKyAqIElNUExJRUQgV0FSUkFOVElF
UyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICogUFVS
UE9TRSBBUkUgRElTQ0xBSU1FRC4gIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIENPTVBVVEVSLCBJ
TkMuIE9SCisgKiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVD
VCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwKKyAqIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBE
QU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFBST0NVUkVNRU5UIE9G
IFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUgorICog
UFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04g
QU5ZIFRIRU9SWQorICogT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1Qg
TElBQklMSVRZLCBPUiBUT1JUCisgKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNF
KSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKKyAqIE9GIFRISVMgU09GVFdBUkUs
IEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuIAorICov
CisKK1sKKyAgICBOb0ludGVyZmFjZU9iamVjdCwKKyAgICBPcGVyYXRpb25zTm90RGVsZXRhYmxl
LAorICAgIEpTR2VuZXJhdGVUb0pTT2JqZWN0LAorXSBpbnRlcmZhY2UgUXVpY2tUaW1lUGx1Z2lu
UmVwbGFjZW1lbnQgeworICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSB1bnNpZ25lZCBsb25nIGxvbmcg
bW92aWVTaXplOworICAgIHZvaWQgcG9zdEV2ZW50KERPTVN0cmluZyBldmVudE5hbWUpOworfTsK
SW5kZXg6IFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvcGx1Z2lucy9RdWlja1RpbWVQbHVnaW5SZXBs
YWNlbWVudC5qcwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3BsdWdpbnMv
UXVpY2tUaW1lUGx1Z2luUmVwbGFjZW1lbnQuanMJKHJldmlzaW9uIDApCisrKyBTb3VyY2UvV2Vi
Q29yZS9Nb2R1bGVzL3BsdWdpbnMvUXVpY2tUaW1lUGx1Z2luUmVwbGFjZW1lbnQuanMJKHdvcmtp
bmcgY29weSkKQEAgLTAsMCArMSwzMjUgQEAKKworZnVuY3Rpb24gY3JlYXRlUGx1Z2luUmVwbGFj
ZW1lbnQocm9vdCwgcGFyZW50LCBob3N0LCBhdHRyaWJ1dGVOYW1lcywgYXR0cmlidXRlVmFsdWVz
KQoreworICAgIHJldHVybiBuZXcgUmVwbGFjZW1lbnQocm9vdCwgcGFyZW50LCBob3N0LCBhdHRy
aWJ1dGVOYW1lcywgYXR0cmlidXRlVmFsdWVzKTsKK307CisKK2Z1bmN0aW9uIFJlcGxhY2VtZW50
KHJvb3QsIHBhcmVudCwgaG9zdCwgYXR0cmlidXRlTmFtZXMsIGF0dHJpYnV0ZVZhbHVlcykKK3sK
KyAgICB0aGlzLnJvb3QgPSByb290OworICAgIHRoaXMucGFyZW50ID0gcGFyZW50OworICAgIHRo
aXMuaG9zdCA9IGhvc3Q7CisgICAgdGhpcy5saXN0ZW5lcnMgPSB7fTsKKyAgICB0aGlzLnNjcmlw
dE9iamVjdCA9IHt9OworCisgICAgdGhpcy5hdXRvRXhpdEZ1bGxTY3JlZW4gPSB0cnVlOworICAg
IHRoaXMucG9zdEV2ZW50cyA9IGZhbHNlOworICAgIHRoaXMuaGVpZ2h0ID0gMDsKKyAgICB0aGlz
LndpZHRoID0gMDsKKyAgICB0aGlzLnNyYyA9ICcnOworICAgIHRoaXMuYXV0b2hyZWYgPSBmYWxz
ZTsKKyAgICB0aGlzLmhyZWYgPSAnJzsKKyAgICB0aGlzLnF0c3JjID0gJyc7CisgICAgdGhpcy50
YXJnZXQgPSAnJzsKKworICAgIHRoaXMuY3JlYXRlVmlkZW9FbGVtZW50KGF0dHJpYnV0ZU5hbWVz
LCBhdHRyaWJ1dGVWYWx1ZXMpOworICAgIHRoaXMuY3JlYXRlU2NyaXB0SW50ZXJmYWNlKCk7Cit9
OworCitSZXBsYWNlbWVudC5wcm90b3R5cGUgPSB7CisKKyAgICBIYW5kbGVkVmlkZW9FdmVudHM6
IHsKKyAgICAgICAgbG9hZHN0YXJ0OiAnaGFuZGxlTG9hZFN0YXJ0JywKKyAgICAgICAgZXJyb3I6
ICdoYW5kbGVFcnJvcicsCisgICAgICAgIGxvYWRlZG1ldGFkYXRhOiAnaGFuZGxlTG9hZGVkTWV0
YURhdGEnLAorICAgICAgICBjYW5wbGF5OiAncXRfY2FucGxheScsCisgICAgICAgIGNhbnBsYXl0
aHJvdWdoOiAncXRfY2FucGxheXRocm91Z2gnLAorICAgICAgICBwbGF5OiAncXRfcGxheScsCisg
ICAgICAgIHBhdXNlOiAncXRfcGF1c2UnLAorICAgICAgICBlbmRlZDogJ2hhbmRsZUVuZGVkJywK
KyAgICAgICAgd2Via2l0ZnVsbHNjcmVlbmNoYW5nZTogJ2hhbmRsZUZ1bGxzY3JlZW5DaGFuZ2Un
LAorICAgIH0sCisKKyAgICBBdHRyaWJ1dGVNYXA6IHsKKyAgICAgICAgYXV0b2V4aXRmdWxsc2Ny
ZWVuOiAnYXV0b0V4aXRGdWxsU2NyZWVuJywKKyAgICAgICAgcG9zdGRvbWV2ZW50czogJ3Bvc3RF
dmVudHMnLAorICAgICAgICBoZWlnaHQ6ICdoZWlnaHQnLAorICAgICAgICB3aWR0aDogJ3dpZHRo
JywKKyAgICAgICAgc3JjOiAnc3JjJywKKyAgICAgICAgYWlycGxheTogJ3gtd2Via2l0LWFpcnBs
YXk9JywKKyAgICAgICAgaHJlZjogJ2hyZWYnLAorICAgICAgICB0YXJnZXQ6ICd0YXJnZXQnLAor
ICAgIH0sCisgICAgCisgICAgTWV0aG9kTWFwOiB7CisgICAgICAgIFNldFVSTCA6ICdzZXRVUkwn
LAorICAgICAgICBHZXRVUkwgOiAndXJsJywKKyAgICAgICAgUGxheSA6ICdwbGF5JywKKyAgICAg
ICAgU3RvcCA6ICdwYXVzZScsCisgICAgICAgIEdldFJhdGUgOiAncmF0ZScsCisgICAgICAgIFNl
dFJhdGUgOiAnc2V0UmF0ZScsCisgICAgICAgIElzRnVsbFNjcmVlbiA6ICdpc0Z1bGxTY3JlZW4n
LAorICAgICAgICBFeGl0RnVsbFNjcmVlbiA6ICdleGl0RnVsbFNjcmVlbicsCisgICAgICAgIEdl
dFBsdWdpblN0YXR1cyA6ICdwbHVnaW5TdGF0dXMnLAorICAgICAgICBHZXRUaW1lIDogJ2N1cnJl
bnRUaW1lJywKKyAgICAgICAgU2V0VGltZSA6ICdzZXRDdXJyZW50VGltZScsCisgICAgICAgIFNl
ZWtUb0RhdGUgOiAnc2Vla1RvRGF0ZScsCisgICAgICAgIEdldERhdGUgOiAnZGF0ZScsCisgICAg
ICAgIEdldER1cmF0aW9uIDogJ2R1cmF0aW9uJywKKyAgICAgICAgR2V0VGltZVNjYWxlIDogJ3Rp
bWVTY2FsZScsCisgICAgICAgIEdldE1heFRpbWVMb2FkZWQgOiAnbWF4VGltZUxvYWRlZCcsCisg
ICAgICAgIEdldE1heEJ5dGVzTG9hZGVkIDogJ21heEJ5dGVzTG9hZGVkJywKKyAgICAgICAgR2V0
TW92aWVTaXplIDogJ21vdmllU2l6ZScsCisgICAgICAgIEdldFRpbWVkTWV0YWRhdGFVcGRhdGVz
IDogJ3RpbWVkTWV0YWRhdGFVcGRhdGVzJywKKyAgICAgICAgR2V0QWNjZXNzTG9nIDogJ2FjY2Vz
c0xvZycsCisgICAgICAgIEdldEVycm9yTG9nIDogJ2Vycm9yTG9nJywKKyAgICB9LAorCisgICAg
VGltZVNjYWxlOiAzMDAwMCwKKworICAgIGNyZWF0ZVZpZGVvRWxlbWVudDogZnVuY3Rpb24oYXR0
cmlidXRlTmFtZXMsIGF0dHJpYnV0ZVZhbHVlcykKKyAgICB7CisgICAgICAgIHZhciB2aWRlbyA9
IHRoaXMudmlkZW8gPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCd2aWRlbycpOworCisgICAgICAg
IGZvciAobmFtZSBpbiB0aGlzLkhhbmRsZWRWaWRlb0V2ZW50cykKKyAgICAgICAgICAgIHZpZGVv
LmFkZEV2ZW50TGlzdGVuZXIobmFtZSwgdGhpcywgZmFsc2UpOworICAgICAgICAKKyAgICAgICAg
Zm9yIChpID0gMDsgaSA8IGF0dHJpYnV0ZU5hbWVzLmxlbmd0aDsgaSsrKSB7CisgICAgICAgICAg
ICB2YXIgcHJvcGVydHkgPSB0aGlzLkF0dHJpYnV0ZU1hcFthdHRyaWJ1dGVOYW1lc1tpXV07Cisg
ICAgICAgICAgICBpZiAodGhpc1twcm9wZXJ0eV0gIT0gdW5kZWZpbmVkKQorICAgICAgICAgICAg
ICAgIHRoaXNbcHJvcGVydHldID0gYXR0cmlidXRlVmFsdWVzW2ldOworICAgICAgICB9CisKKyAg
ICAgICAgdmlkZW8uc2V0QXR0cmlidXRlKCdwc2V1ZG8nLCAnLXdlYmtpdC1wbHVnaW4tcmVwbGFj
ZW1lbnQnKTsKKyAgICAgICAgdmlkZW8uc2V0QXR0cmlidXRlKCdjb250cm9scycsICdjb250cm9s
cycpOworICAgICAgICB0aGlzLnNldFN0YXR1cygnV2FpdGluZycpOworCisgICAgICAgIHZhciBz
cmMgPSB0aGlzLnNyYzsKKyAgICAgICAgaWYgKHRoaXMuaHJlZiAmJiB0aGlzLnRhcmdldCkgewor
ICAgICAgICAgICAgc3JjID0gdGhpcy5yZXNvbHZlUmVsYXRpdmVUb1VybCh0aGlzLmhyZWYsIHRo
aXMuc3JjKTsKKyAgICAgICAgICAgIHZpZGVvLnBvc3RlciA9IHRoaXMuc3JjOworICAgICAgICAg
ICAgdmlkZW8uc2V0QXR0cmlidXRlKCdwcmVsb2FkJywgJ25vbmUnKTsKKyAgICAgICAgfQorICAg
ICAgICAKKyAgICAgICAgaWYgKHNyYy5sZW5ndGgpCisgICAgICAgICAgICB0aGlzLnNldFVSTChz
cmMpOworCisgICAgICAgIHRoaXMucm9vdC5hcHBlbmRDaGlsZCh2aWRlbyk7CisgICAgfSwKKwor
ICAgIHJlc29sdmVSZWxhdGl2ZVRvVXJsOiBmdW5jdGlvbih1cmwsIGJhc2VVcmwpCisgICAgewor
ICAgICAgICBpZiAodXJsLmluZGV4T2YoJzovLycpICE9IC0xKQorICAgICAgICAgICAgcmV0dXJu
IHVybDsKKyAgICAgICAgaWYgKGJhc2VVcmwuaW5kZXhPZignOi8vJykgPT0gLTEpCisgICAgICAg
ICAgICBiYXNlVXJsID0gdGhpcy5yZXNvbHZlUmVsYXRpdmVUb1VybChiYXNlVXJsLCBkb2N1bWVu
dC5iYXNlVVJJKTsKKworICAgICAgICB2YXIgYmFzZSA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQo
ImJhc2UiKTsKKyAgICAgICAgYmFzZS5ocmVmID0gYmFzZVVybDsKKyAgICAgICAgZG9jdW1lbnQu
aGVhZC5hcHBlbmRDaGlsZChiYXNlKTsKKworICAgICAgICB2YXIgcmVzb2x2ZXIgPSBkb2N1bWVu
dC5jcmVhdGVFbGVtZW50KCdhJyk7CisgICAgICAgIHJlc29sdmVyLmhyZWYgPSB1cmw7CisgICAg
ICAgIHVybCA9IHJlc29sdmVyLmhyZWY7CisKKyAgICAgICAgZG9jdW1lbnQuaGVhZC5yZW1vdmVD
aGlsZChiYXNlKTsKKyAgICAgICAgYmFzZSA9IG51bGw7CisKKyAgICAgICAgcmV0dXJuIHVybDsK
KyAgICB9LAorIAorICAgIGNyZWF0ZVNjcmlwdEludGVyZmFjZTogZnVuY3Rpb24oKQorICAgIHsK
KyAgICAgICAgZm9yIChuYW1lIGluIHRoaXMuTWV0aG9kTWFwKSB7CisgICAgICAgICAgICB2YXIg
bWV0aG9kTmFtZSA9IHRoaXMuTWV0aG9kTWFwW25hbWVdOworICAgICAgICAgICAgdGhpcy5zY3Jp
cHRPYmplY3RbbmFtZV0gPSB0aGlzW21ldGhvZE5hbWVdLmJpbmQodGhpcyk7CisgICAgICAgIH0K
KyAgICB9LAorCisgICAgaGFuZGxlRXZlbnQ6IGZ1bmN0aW9uKGV2ZW50KQorICAgIHsKKyAgICAg
ICAgaWYgKGV2ZW50LnRhcmdldCAhPT0gdGhpcy52aWRlbykKKyAgICAgICAgICAgIHJldHVybjsK
KworICAgICAgICB0cnkgeworICAgICAgICAgICAgdmFyIGV2ZW50RGF0YSA9IHRoaXMuSGFuZGxl
ZFZpZGVvRXZlbnRzW2V2ZW50LnR5cGVdOworICAgICAgICAgICAgaWYgKCFldmVudERhdGEpCisg
ICAgICAgICAgICAgICAgcmV0dXJuOworCisgICAgICAgICAgICBpZiAodGhpc1tldmVudERhdGFd
ICYmIHRoaXNbZXZlbnREYXRhXSBpbnN0YW5jZW9mIEZ1bmN0aW9uKQorICAgICAgICAgICAgICAg
IHRoaXNbZXZlbnREYXRhXS5jYWxsKHRoaXMsIGV2ZW50KTsKKyAgICAgICAgICAgIGVsc2UKKyAg
ICAgICAgICAgICAgICB0aGlzLnBvc3RFdmVudChldmVudERhdGEpOworICAgICAgICB9IGNhdGNo
KGUpIHsKKyAgICAgICAgICAgIGlmICh3aW5kb3cuY29uc29sZSkKKyAgICAgICAgICAgICAgICBj
b25zb2xlLmVycm9yKGUpOworICAgICAgICB9CisgICAgfSwKKworICAgIHBvc3RFdmVudDogZnVu
Y3Rpb24oZXZlbnROYW1lKQorICAgIHsKKyAgICAgICAgdHJ5IHsKKyAgICAgICAgICAgIGlmICh0
aGlzLnBvc3RFdmVudHMpCisgICAgICAgICAgICAgICAgdGhpcy5ob3N0LnBvc3RFdmVudChldmVu
dE5hbWUpOworICAgICAgICB9IGNhdGNoKGUpIHsgfQorICAgIH0sCisKKyAgICBzZXRTdGF0dXM6
IGZ1bmN0aW9uKHN0YXR1cykKKyAgICB7CisgICAgICAgIHRoaXMuc3RhdHVzID0gc3RhdHVzOwor
ICAgIH0sCisKKyAgICBoYW5kbGVMb2FkZWRNZXRhRGF0YTogZnVuY3Rpb24oZXZlbnQpCisgICAg
eworICAgICAgICB0aGlzLnNldFN0YXR1cygnUGxheWFibGUnKTsKKyAgICAgICAgdGhpcy5wb3N0
RXZlbnQoJ3F0X3ZhbGlkYXRlZCcpOworICAgICAgICB0aGlzLnBvc3RFdmVudCgncXRfbG9hZGVk
Zmlyc3RmcmFtZScpOworICAgICAgICB0aGlzLnBvc3RFdmVudCgncXRfbG9hZGVkbWV0YWRhdGEn
KTsKKyAgICB9LAorCisgICAgaGFuZGxlRnVsbHNjcmVlbkNoYW5nZTogZnVuY3Rpb24oZXZlbnQp
CisgICAgeworICAgICAgICB0aGlzLnBvc3RFdmVudCh0aGlzLmlzRnVsbFNjcmVlbigpID8gJ3F0
X2VudGVyZnVsbHNjcmVlbicgOiAncXRfZXhpdGZ1bGxzY3JlZW4nKTsKKyAgICB9LAorCisgICAg
aGFuZGxlRXJyb3I6IGZ1bmN0aW9uKGV2ZW50KQorICAgIHsKKyAgICAgICAgdGhpcy5zZXRTdGF0
dXMoJ0Vycm9yJyk7CisgICAgICAgIHRoaXMucG9zdEV2ZW50KCdxdF9lcnJvcicpOworICAgIH0s
CisKKyAgICBoYW5kbGVMb2FkU3RhcnQ6ZnVuY3Rpb24oZXZlbnQpCisgICAgeworICAgICAgICBp
ZiAodGhpcy52aWRlby5wb3N0ZXIpCisgICAgICAgICAgICB0aGlzLnNldFN0YXR1cygnV2FpdGlu
ZycpOworICAgICAgICBlbHNlCisgICAgICAgICAgICB0aGlzLnNldFN0YXR1cygnTG9hZGluZycp
OworICAgICAgICB0aGlzLnBvc3RFdmVudCgncXRfYmVnaW4nKTsKKyAgICB9LAorCisgICAgaGFu
ZGxlRW5kZWQ6IGZ1bmN0aW9uKGV2ZW50KQorICAgIHsKKyAgICAgICAgdGhpcy5wb3N0RXZlbnQo
J3F0X2VuZGVkJyk7CisgICAgICAgIGlmICh0aGlzLmlzRnVsbFNjcmVlbigpICYmIHRoaXMuYXV0
b0V4aXRGdWxsU2NyZWVuKQorICAgICAgICAgICAgZG9jdW1lbnQud2Via2l0RXhpdEZ1bGxzY3Jl
ZW4oKTsKKyAgICB9LAorCisgICAgaXNGdWxsU2NyZWVuOiBmdW5jdGlvbigpCisgICAgeworICAg
ICAgICByZXR1cm4gZG9jdW1lbnQud2Via2l0Q3VycmVudEZ1bGxTY3JlZW5FbGVtZW50ID09PSB0
aGlzLnZpZGVvOworICAgIH0sCisKKyAgICBzZXRVUkw6IGZ1bmN0aW9uKHVybCkKKyAgICB7Cisg
ICAgICAgIHRoaXMuc2V0U3RhdHVzKCdWYWxpZGF0aW5nJyk7CisgICAgICAgIHRoaXMudmlkZW8u
c3JjID0gdXJsOworICAgIH0sCisgICAgCisgICAgdXJsOiBmdW5jdGlvbigpCisgICAgeworICAg
ICAgICByZXR1cm4gdGhpcy52aWRlby5jdXJyZW50U3JjOworICAgIH0sCisgICAgCisgICAgcGxh
eTogZnVuY3Rpb24oKQorICAgIHsKKyAgICAgICAgdGhpcy52aWRlby5wbGF5KCk7CisgICAgfSwK
KyAgICAKKyAgICBwYXVzZTogZnVuY3Rpb24oKQorICAgIHsKKyAgICAgICAgdGhpcy52aWRlby5w
bGF5YmFja1JhdGUgPSAwOworICAgICAgICB0aGlzLnZpZGVvLnBhdXNlKCk7CisgICAgfSwKKyAg
ICAKKyAgICByYXRlOiBmdW5jdGlvbigpCisgICAgeworICAgICAgICByZXR1cm4gdGhpcy52aWRl
by5wYXVzZWQgPyAwIDogMTsKKyAgICB9LAorICAgIAorICAgIHNldFJhdGU6IGZ1bmN0aW9uKHJh
dGUpCisgICAgeworICAgICAgICBpZiAocmF0ZSkKKyAgICAgICAgICAgIHRoaXMudmlkZW8ucGxh
eSgpOworICAgICAgICBlbHNlCisgICAgICAgICAgICB0aGlzLnZpZGVvLnBhdXNlKCk7CisgICAg
fSwKKyAgICAKKyAgICBleGl0RnVsbFNjcmVlbjogZnVuY3Rpb24oKQorICAgIHsKKyAgICAgICAg
ZG9jdW1lbnQud2Via2l0RXhpdEZ1bGxzY3JlZW4oKTsKKyAgICB9LAorICAgIAorICAgIHBsdWdp
blN0YXR1czogZnVuY3Rpb24oKQorICAgIHsKKyAgICAgICAgcmV0dXJuIHRoaXMuc3RhdHVzOwor
ICAgIH0sCisKKyAgICBjdXJyZW50VGltZTogZnVuY3Rpb24oKQorICAgIHsKKyAgICAgICAgcmV0
dXJuIHRoaXMudmlkZW8uY3VycmVudFRpbWUgKiB0aGlzLlRpbWVTY2FsZTsKKyAgICB9LAorCisg
ICAgc2V0Q3VycmVudFRpbWU6IGZ1bmN0aW9uKHRpbWUpCisgICAgeworICAgICAgICB0aGlzLnZp
ZGVvLmN1cnJlbnRUaW1lID0gdGltZSAvIHRoaXMuVGltZVNjYWxlCisgICAgfSwKKworICAgIHNl
ZWtUb0RhdGU6IGZ1bmN0aW9uKCkKKyAgICB7CisgICAgICAgIC8vIEZJWE1FOiBub3QgaW1wbGVt
ZW50ZWQgeWV0LgorICAgIH0sCisgICAgCisgICAgZGF0ZTogZnVuY3Rpb24oKQorICAgIHsKKyAg
ICAgICAgcmV0dXJuIG5ldyBEYXRlKCk7CisgICAgfSwKKyAgICAKKyAgICBkdXJhdGlvbjogZnVu
Y3Rpb24oKQorICAgIHsKKyAgICAgICAgcmV0dXJuIHRoaXMudmlkZW8uZHVyYXRpb24gKiB0aGlz
LlRpbWVTY2FsZTsKKyAgICB9LAorICAgIAorICAgIHRpbWVTY2FsZTogZnVuY3Rpb24oKQorICAg
IHsKKyAgICAgICAgcmV0dXJuIDMwMDAwOworICAgIH0sCisgICAgCisgICAgbWF4VGltZUxvYWRl
ZDogZnVuY3Rpb24oKQorICAgIHsKKyAgICAgICAgcmV0dXJuIHRoaXMudmlkZW8uZHVyYXRpb24g
KiB0aGlzLlRpbWVTY2FsZTsKKyAgICB9LAorICAgIAorICAgIG1heEJ5dGVzTG9hZGVkOiBmdW5j
dGlvbigpCisgICAgeworICAgICAgICB2YXIgcGVyY2VudExvYWRlZCA9IHRoaXMudmlkZW8uYnVm
ZmVyZWQuZW5kKDApIC8gdGhpcy52aWRlby5kdXJhdGlvbjsKKyAgICAgICAgcmV0dXJuIHBlcmNl
bnRMb2FkZWQgKiB0aGlzLm1vdmllU2l6ZSgpOworICAgIH0sCisgICAgCisgICAgbW92aWVTaXpl
OiBmdW5jdGlvbigpCisgICAgeworICAgICAgICB0cnkgeworICAgICAgICAgICAgcmV0dXJuIHRo
aXMuaG9zdC5tb3ZpZVNpemU7CisgICAgICAgIH0gY2F0Y2goZSkgeyB9CisKKyAgICAgICAgcmV0
dXJuIDA7CisgICAgfSwKKyAgICAKKyAgICB0aW1lZE1ldGFkYXRhVXBkYXRlczogZnVuY3Rpb24o
KQorICAgIHsKKyAgICAgICAgLy8gRklYTUU6IG5vdCBpbXBsZW1lbnRlZCB5ZXQuCisgICAgICAg
IHJldHVybiBudWxsOworICAgIH0sCisgICAgCisgICAgYWNjZXNzTG9nOiBmdW5jdGlvbigpCisg
ICAgeworICAgICAgICAvLyBGSVhNRTogbm90IGltcGxlbWVudGVkIHlldC4KKyAgICAgICAgcmV0
dXJuIG51bGw7CisgICAgfSwKKyAgICAKKyAgICBlcnJvckxvZzogZnVuY3Rpb24oKQorICAgIHsK
KyAgICAgICAgLy8gRklYTUU6IG5vdCBpbXBsZW1lbnRlZCB5ZXQuCisgICAgICAgIHJldHVybiBu
dWxsOworICAgIH0sCit9OworCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJv
ai9wcm9qZWN0LnBieHByb2oKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvV2ViQ29yZS54
Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCShyZXZpc2lvbiAxNTk3MzYpCisrKyBTb3VyY2UvV2Vi
Q29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oJKHdvcmtpbmcgY29weSkKQEAg
LTE0Niw2ICsxNDYsOSBAQAogCQkwNzI3N0U1MzE3RDAxOENDMDAxNTUzNEQgLyogSlNNZWRpYVN0
cmVhbVRyYWNrLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSAwNzI3N0U0NzE3RDAxOENDMDAxNTUzNEQgLyogSlNNZWRpYVN0cmVhbVRyYWNrLmggKi87IHNl
dHRpbmdzID0ge0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKIAkJMDcyNzdFNTQxN0Qw
MThDQzAwMTU1MzREIC8qIEpTTWVkaWFTdHJlYW1UcmFja0V2ZW50LmNwcCBpbiBTb3VyY2VzICov
ID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDA3Mjc3RTQ4MTdEMDE4Q0MwMDE1NTM0
RCAvKiBKU01lZGlhU3RyZWFtVHJhY2tFdmVudC5jcHAgKi87IH07CiAJCTA3Mjc3RTU1MTdEMDE4
Q0MwMDE1NTM0RCAvKiBKU01lZGlhU3RyZWFtVHJhY2tFdmVudC5oIGluIEhlYWRlcnMgKi8gPSB7
aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMDcyNzdFNDkxN0QwMThDQzAwMTU1MzREIC8q
IEpTTWVkaWFTdHJlYW1UcmFja0V2ZW50LmggKi87IHNldHRpbmdzID0ge0FUVFJJQlVURVMgPSAo
UHJpdmF0ZSwgKTsgfTsgfTsKKwkJMDcyQUUxRTUxODNDMDc0MTAwMEE1OTg4IC8qIFBsdWdpblJl
cGxhY2VtZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSAwNzJBRTFERjE4M0MwNzQxMDAwQTU5ODggLyogUGx1Z2luUmVwbGFjZW1lbnQuaCAqLzsgfTsK
KwkJMDcyQUUxRTYxODNDMDc0MTAwMEE1OTg4IC8qIFF1aWNrVGltZVBsdWdpblJlcGxhY2VtZW50
LmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDA3MkFF
MUUwMTgzQzA3NDEwMDBBNTk4OCAvKiBRdWlja1RpbWVQbHVnaW5SZXBsYWNlbWVudC5jcHAgKi87
IH07CisJCTA3MkFFMUU4MTgzQzA3NDEwMDBBNTk4OCAvKiBRdWlja1RpbWVQbHVnaW5SZXBsYWNl
bWVudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMDcy
QUUxRTIxODNDMDc0MTAwMEE1OTg4IC8qIFF1aWNrVGltZVBsdWdpblJlcGxhY2VtZW50LmggKi87
IH07CiAJCTA3MkM4QjExMTMxQzUxODYwMEE0RkNFOSAvKiBNZWRpYVBsYXllclByaXZhdGVBVkZv
dW5kYXRpb24uY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVm
ID0gMDc2RjBEMDkxMkI4MTkyNzAwQzI2QUE0IC8qIE1lZGlhUGxheWVyUHJpdmF0ZUFWRm91bmRh
dGlvbi5jcHAgKi87IH07CiAJCTA3MkNBODYxMTZDQjREQzMwMDhBRTEzMSAvKiBDYXB0aW9uVXNl
clByZWZlcmVuY2VzLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IDA3MkNBODYwMTZDQjREQzMwMDhBRTEzMSAvKiBDYXB0aW9uVXNlclByZWZlcmVuY2Vz
LmNwcCAqLzsgfTsKIAkJMDczNUVFNkEwRjQwQzVFNDAwNEEyNjA0IC8qIE1lZGlhUGxheWVyUHJv
eHkuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDA3MzVF
RTY5MEY0MEM1RTQwMDRBMjYwNCAvKiBNZWRpYVBsYXllclByb3h5LmggKi87IHNldHRpbmdzID0g
e0FUVFJJQlVURVMgPSAoUHJpdmF0ZSwgKTsgfTsgfTsKQEAgLTE4MCw2ICsxODMsOCBAQAogCQkw
NzY5NzA4NjE0NjNBRDg3MDBGNTAyQ0YgLyogVGV4dFRyYWNrTGlzdC5jcHAgaW4gU291cmNlcyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAwNzY5NzA4NDE0NjNBRDg3MDBGNTAy
Q0YgLyogVGV4dFRyYWNrTGlzdC5jcHAgKi87IH07CiAJCTA3Njk3MDg3MTQ2M0FEODcwMEY1MDJD
RiAvKiBUZXh0VHJhY2tMaXN0LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSAwNzY5NzA4NTE0NjNBRDg3MDBGNTAyQ0YgLyogVGV4dFRyYWNrTGlzdC5oICov
OyB9OwogCQkwNzZGMEQwRTEyQjgxOTI3MDBDMjZBQTQgLyogTWVkaWFQbGF5ZXJQcml2YXRlQVZG
b3VuZGF0aW9uLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSAwNzZGMEQwQTEyQjgxOTI3MDBDMjZBQTQgLyogTWVkaWFQbGF5ZXJQcml2YXRlQVZGb3VuZGF0
aW9uLmggKi87IH07CisJCTA3NzY2NEZDMTgzRTZCNUMwMDEzM0I5MiAvKiBKU1F1aWNrVGltZVBs
dWdpblJlcGxhY2VtZW50LmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IDA3NzY2NEZBMTgzRTZCNUMwMDEzM0I5MiAvKiBKU1F1aWNrVGltZVBsdWdpblJl
cGxhY2VtZW50LmNwcCAqLzsgfTsKKwkJMDc3NjY0RkQxODNFNkI1QzAwMTMzQjkyIC8qIEpTUXVp
Y2tUaW1lUGx1Z2luUmVwbGFjZW1lbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IDA3NzY2NEZCMTgzRTZCNUMwMDEzM0I5MiAvKiBKU1F1aWNrVGltZVBs
dWdpblJlcGxhY2VtZW50LmggKi87IH07CiAJCTA3ODMyMjg0MTgwMTNFRDgwMDk5OUUwQyAvKiBN
ZWRpYVN0cmVhbUF1ZGlvU291cmNlLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IDA3ODMyMjgyMTgwMTNFRDcwMDk5OUUwQyAvKiBNZWRpYVN0cmVhbUF1
ZGlvU291cmNlLmNwcCAqLzsgfTsKIAkJMDc4MzIyODUxODAxM0VEODAwOTk5RTBDIC8qIE1lZGlh
U3RyZWFtQXVkaW9Tb3VyY2UuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IDA3ODMyMjgzMTgwMTNFRDgwMDk5OUUwQyAvKiBNZWRpYVN0cmVhbUF1ZGlvU291
cmNlLmggKi87IH07CiAJCTA3ODQ2MzQyMTQ1QjE1MUEwMEE1OERGMSAvKiBKU1RyYWNrRXZlbnQu
Y3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMDc4NDYz
NDAxNDVCMTUxQTAwQTU4REYxIC8qIEpTVHJhY2tFdmVudC5jcHAgKi87IH07CkBAIC02NzYzLDYg
KzY3NjgsMTIgQEAKIAkJMDcyODQ3RTMxNkVCQzVCMDAwNDNDRkE0IC8qIFBsYXRmb3JtVGV4dFRy
YWNrTWVudS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBQbGF0Zm9ybVRleHRUcmFja01lbnUuaDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMDcyOUIxNEUxN0NGQ0NBMDAwNEYxRDYwIC8qIE1lZGlh
U3RyZWFtQ2VudGVyTWFjLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9
IE1lZGlhU3RyZWFtQ2VudGVyTWFjLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJ
MDcyOUIxNEYxN0NGQ0NBMDAwNEYxRDYwIC8qIE1lZGlhU3RyZWFtQ2VudGVyTWFjLmggKi8gPSB7
aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5
cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IE1lZGlhU3RyZWFtQ2VudGVyTWFjLmg7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTA3MkFFMURGMTgzQzA3NDEwMDBBNTk4OCAvKiBQbHVn
aW5SZXBsYWNlbWVudC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IG5hbWUgPSBQbHVnaW5S
ZXBsYWNlbWVudC5oOyBwYXRoID0gcGx1Z2lucy9QbHVnaW5SZXBsYWNlbWVudC5oOyBzb3VyY2VU
cmVlID0gIjxncm91cD4iOyB9OworCQkwNzJBRTFFMDE4M0MwNzQxMDAwQTU5ODggLyogUXVpY2tU
aW1lUGx1Z2luUmVwbGFjZW1lbnQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZp
bGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBu
YW1lID0gUXVpY2tUaW1lUGx1Z2luUmVwbGFjZW1lbnQuY3BwOyBwYXRoID0gcGx1Z2lucy9RdWlj
a1RpbWVQbHVnaW5SZXBsYWNlbWVudC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CTA3MkFFMUUxMTgzQzA3NDEwMDBBNTk4OCAvKiBRdWlja1RpbWVQbHVnaW5SZXBsYWNlbWVudC5j
c3MgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSB0ZXh0LmNzczsgbmFtZSA9IFF1aWNrVGltZVBsdWdpblJlcGxhY2VtZW50
LmNzczsgcGF0aCA9IHBsdWdpbnMvUXVpY2tUaW1lUGx1Z2luUmVwbGFjZW1lbnQuY3NzOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OworCQkwNzJBRTFFMjE4M0MwNzQxMDAwQTU5ODggLyogUXVp
Y2tUaW1lUGx1Z2luUmVwbGFjZW1lbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBm
aWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBuYW1l
ID0gUXVpY2tUaW1lUGx1Z2luUmVwbGFjZW1lbnQuaDsgcGF0aCA9IHBsdWdpbnMvUXVpY2tUaW1l
UGx1Z2luUmVwbGFjZW1lbnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMDcyQUUx
RTMxODNDMDc0MTAwMEE1OTg4IC8qIFF1aWNrVGltZVBsdWdpblJlcGxhY2VtZW50LmlkbCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHRleHQ7IG5hbWUgPSBRdWlja1RpbWVQbHVnaW5SZXBsYWNlbWVudC5pZGw7IHBhdGgg
PSBwbHVnaW5zL1F1aWNrVGltZVBsdWdpblJlcGxhY2VtZW50LmlkbDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKKwkJMDcyQUUxRTQxODNDMDc0MTAwMEE1OTg4IC8qIFF1aWNrVGltZVBsdWdp
blJlcGxhY2VtZW50LmpzICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGlu
ZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5qYXZhc2NyaXB0OyBuYW1lID0g
UXVpY2tUaW1lUGx1Z2luUmVwbGFjZW1lbnQuanM7IHBhdGggPSBwbHVnaW5zL1F1aWNrVGltZVBs
dWdpblJlcGxhY2VtZW50LmpzOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkwNzJDQTg2
MDE2Q0I0REMzMDA4QUUxMzEgLyogQ2FwdGlvblVzZXJQcmVmZXJlbmNlcy5jcHAgKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBDYXB0aW9uVXNlclByZWZlcmVuY2VzLmNwcDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMDczNUVFNjkwRjQwQzVFNDAwNEEyNjA0IC8q
IE1lZGlhUGxheWVyUHJveHkuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5j
b2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gTWVk
aWFQbGF5ZXJQcm94eS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkwNzM2N0RERDE3
MkNBNjdGMDBEODYxQjkgLyogSW5iYW5kVGV4dFRyYWNrUHJpdmF0ZUxlZ2FjeUFWRk9iakMuaCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBuYW1lID0gSW5iYW5kVGV4dFRyYWNrUHJpdmF0ZUxl
Z2FjeUFWRk9iakMuaDsgcGF0aCA9IG9iamMvSW5iYW5kVGV4dFRyYWNrUHJpdmF0ZUxlZ2FjeUFW
Rk9iakMuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKQEAgLTY3OTYsNiArNjgwNyw4IEBA
CiAJCTA3Njk3MDg1MTQ2M0FEODcwMEY1MDJDRiAvKiBUZXh0VHJhY2tMaXN0LmggKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IFRleHRUcmFja0xpc3QuaDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKIAkJMDc2RjBEMDkxMkI4MTkyNzAwQzI2QUE0IC8qIE1lZGlhUGxheWVyUHJp
dmF0ZUFWRm91bmRhdGlvbi5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVu
Y29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGgg
PSBNZWRpYVBsYXllclByaXZhdGVBVkZvdW5kYXRpb24uY3BwOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OwogCQkwNzZGMEQwQTEyQjgxOTI3MDBDMjZBQTQgLyogTWVkaWFQbGF5ZXJQcml2YXRl
QVZGb3VuZGF0aW9uLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5n
ID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IE1lZGlhUGxh
eWVyUHJpdmF0ZUFWRm91bmRhdGlvbi5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkw
Nzc2NjRGQTE4M0U2QjVDMDAxMzNCOTIgLyogSlNRdWlja1RpbWVQbHVnaW5SZXBsYWNlbWVudC5j
cHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IG5hbWUgPSBKU1F1aWNrVGltZVBsdWdp
blJlcGxhY2VtZW50LmNwcDsgcGF0aCA9IEpTUXVpY2tUaW1lUGx1Z2luUmVwbGFjZW1lbnQuY3Bw
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkwNzc2NjRGQjE4M0U2QjVDMDAxMzNCOTIg
LyogSlNRdWlja1RpbWVQbHVnaW5SZXBsYWNlbWVudC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZl
cmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5j
Lmg7IG5hbWUgPSBKU1F1aWNrVGltZVBsdWdpblJlcGxhY2VtZW50Lmg7IHBhdGggPSBKU1F1aWNr
VGltZVBsdWdpblJlcGxhY2VtZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTA3
ODMyMjgyMTgwMTNFRDcwMDk5OUUwQyAvKiBNZWRpYVN0cmVhbUF1ZGlvU291cmNlLmNwcCAqLyA9
IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxl
VHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IE1lZGlhU3RyZWFtQXVkaW9Tb3VyY2Uu
Y3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkwNzgzMjI4MzE4MDEzRUQ4MDA5OTlF
MEMgLyogTWVkaWFTdHJlYW1BdWRpb1NvdXJjZS5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVu
Y2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7
IHBhdGggPSBNZWRpYVN0cmVhbUF1ZGlvU291cmNlLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CiAJCTA3ODQ2MzQwMTQ1QjE1MUEwMEE1OERGMSAvKiBKU1RyYWNrRXZlbnQuY3BwICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gSlNUcmFja0V2ZW50LmNwcDsgc291cmNl
VHJlZSA9ICI8Z3JvdXA+IjsgfTsKQEAgLTEzNzQ3LDYgKzEzNzYwLDE5IEBACiAJCQlwYXRoID0g
bWFjOwogCQkJc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsKIAkJfTsKKwkJMDcyQUUxREUxODNDMDUx
MzAwMEE1OTg4IC8qIHBsdWdpbnMgKi8gPSB7CisJCQlpc2EgPSBQQlhHcm91cDsKKwkJCWNoaWxk
cmVuID0gKAorCQkJCTA3MkFFMURGMTgzQzA3NDEwMDBBNTk4OCAvKiBQbHVnaW5SZXBsYWNlbWVu
dC5oICovLAorCQkJCTA3MkFFMUUwMTgzQzA3NDEwMDBBNTk4OCAvKiBRdWlja1RpbWVQbHVnaW5S
ZXBsYWNlbWVudC5jcHAgKi8sCisJCQkJMDcyQUUxRTExODNDMDc0MTAwMEE1OTg4IC8qIFF1aWNr
VGltZVBsdWdpblJlcGxhY2VtZW50LmNzcyAqLywKKwkJCQkwNzJBRTFFMjE4M0MwNzQxMDAwQTU5
ODggLyogUXVpY2tUaW1lUGx1Z2luUmVwbGFjZW1lbnQuaCAqLywKKwkJCQkwNzJBRTFFMzE4M0Mw
NzQxMDAwQTU5ODggLyogUXVpY2tUaW1lUGx1Z2luUmVwbGFjZW1lbnQuaWRsICovLAorCQkJCTA3
MkFFMUU0MTgzQzA3NDEwMDBBNTk4OCAvKiBRdWlja1RpbWVQbHVnaW5SZXBsYWNlbWVudC5qcyAq
LywKKwkJCSk7CisJCQluYW1lID0gcGx1Z2luczsKKwkJCXNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
CisJCX07CiAJCTA3NkYwRDA4MTJCODE5MjcwMEMyNkFBNCAvKiBhdmZvdW5kYXRpb24gKi8gPSB7
CiAJCQlpc2EgPSBQQlhHcm91cDsKIAkJCWNoaWxkcmVuID0gKApAQCAtMTQwOTIsNiArMTQxMTgs
OCBAQAogCQkxNERGQjMzRjBBN0RGNzYzMDAxOEY3NjkgLyogRGVyaXZlZCBTb3VyY2VzICovID0g
ewogCQkJaXNhID0gUEJYR3JvdXA7CiAJCQljaGlsZHJlbiA9ICgKKwkJCQkwNzc2NjRGQTE4M0U2
QjVDMDAxMzNCOTIgLyogSlNRdWlja1RpbWVQbHVnaW5SZXBsYWNlbWVudC5jcHAgKi8sCisJCQkJ
MDc3NjY0RkIxODNFNkI1QzAwMTMzQjkyIC8qIEpTUXVpY2tUaW1lUGx1Z2luUmVwbGFjZW1lbnQu
aCAqLywKIAkJCQlBODNCNzkxMDBDQ0IwMDFCMDAwQjA4MjUgLyogQ29yZSAqLywKIAkJCQlFMUZG
OEY2MTE4MDc0NUM2MDAxMzI2NzQgLyogQ3J5cHRvICovLAogCQkJCUE4M0I3OTBFMENDQUZGOTcw
MDBCMDgyNSAvKiBDU1MgKi8sCkBAIC0xNjk0Niw2ICsxNjk3NCw3IEBACiAJCTk3MTE0NUZFMTRF
RjAwNkUwMDY3NEZEOSAvKiBNb2R1bGVzICovID0gewogCQkJaXNhID0gUEJYR3JvdXA7CiAJCQlj
aGlsZHJlbiA9ICgKKwkJCQkwNzJBRTFERTE4M0MwNTEzMDAwQTU5ODggLyogcGx1Z2lucyAqLywK
IAkJCQlDREE5OERCRDE2MDE0RTA4MDBGRUEzQjEgLyogZW5jcnlwdGVkbWVkaWEgKi8sCiAJCQkJ
OTcxMTQ1RkYxNEVGMDA3OTAwNjc0RkQ5IC8qIGdlb2xvY2F0aW9uICovLAogCQkJCTk3MTJBNTUz
MTUwMDRFM0MwMDQ4QUYxMCAvKiBpbmRleGVkZGIgKi8sCkBAIC0yMTk4OCw2ICsyMjAxNyw3IEBA
CiAJCQkJMjk0ODlGQzcxMkMwMEYwMzAwRDgzRjBGIC8qIEFjY2Vzc2liaWxpdHlTY3JvbGxWaWV3
LmggaW4gSGVhZGVycyAqLywKIAkJCQkwNzA5RkM0RTEwMjVERUUzMDA1OUNEQkEgLyogQWNjZXNz
aWJpbGl0eVNsaWRlci5oIGluIEhlYWRlcnMgKi8sCiAJCQkJNTFENzE5RDcxODExMDZFMDAwMTZE
QzUxIC8qIElEQkhpc3RvZ3JhbXMuaCBpbiBIZWFkZXJzICovLAorCQkJCTA3MkFFMUU4MTgzQzA3
NDEwMDBBNTk4OCAvKiBRdWlja1RpbWVQbHVnaW5SZXBsYWNlbWVudC5oIGluIEhlYWRlcnMgKi8s
CiAJCQkJMjlEN0JDRkExNDQ0QUY3RDAwNzA2MTlDIC8qIEFjY2Vzc2liaWxpdHlTcGluQnV0dG9u
LmggaW4gSGVhZGVycyAqLywKIAkJCQlBQUMwOENGMzE1Rjk0MUZEMDBGMUUxODggLyogQWNjZXNz
aWJpbGl0eVNWR1Jvb3QuaCBpbiBIZWFkZXJzICovLAogCQkJCTI5QTgxMjJCMEZCQjlDMUQwMDUx
MDI5MyAvKiBBY2Nlc3NpYmlsaXR5VGFibGUuaCBpbiBIZWFkZXJzICovLApAQCAtMjIxODQsNiAr
MjIyMTQsNyBAQAogCQkJCUZEMzE1RkZGMTJCMDI2NzYwMEMxQTM1OSAvKiBDaGFubmVsTWVyZ2Vy
Tm9kZS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJRkQzMTYwMDIxMkIwMjY3NjAwQzFBMzU5IC8qIENo
YW5uZWxTcGxpdHRlck5vZGUuaCBpbiBIZWFkZXJzICovLAogCQkJCTY1NTBCNkEwMDk5REYwMjcw
MDkwRDc4MSAvKiBDaGFyYWN0ZXJEYXRhLmggaW4gSGVhZGVycyAqLywKKwkJCQkwNzc2NjRGRDE4
M0U2QjVDMDAxMzNCOTIgLyogSlNRdWlja1RpbWVQbHVnaW5SZXBsYWNlbWVudC5oIGluIEhlYWRl
cnMgKi8sCiAJCQkJOTdCOEZGRDExNkFFN0Y5NjAwMzgzODhEIC8qIENoYXJhY3RlclJlZmVyZW5j
ZVBhcnNlcklubGluZXMuaCBpbiBIZWFkZXJzICovLAogCQkJCUUxNjRGQUEzMTgzMTVCRjQwMERC
NEU2MSAvKiBDcnlwdG9LZXlSU0EuaCBpbiBIZWFkZXJzICovLAogCQkJCUIyQzNEQTJBMEQwMDZD
MUQwMEVGNkYyNiAvKiBDaGFyc2V0RGF0YS5oIGluIEhlYWRlcnMgKi8sCkBAIC0yNDg4Myw2ICsy
NDkxNCw3IEBACiAJCQkJRTE4MDgxMTcxNkZDRjlDQjAwQjgwRDA3IC8qIFN5bmNocm9ub3VzTG9h
ZGVyQ2xpZW50LmggaW4gSGVhZGVycyAqLywKIAkJCQk1REE5N0VDRDE2OEU3ODdCMDAwRTM2NzYg
LyogU3lzdGVtVmVyc2lvbk1hYy5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQThDRkYwNTEwQTE1NEYw
OTAwMEE0MjM0IC8qIFRhYmxlTGF5b3V0LmggaW4gSGVhZGVycyAqLywKKwkJCQkwNzJBRTFFNTE4
M0MwNzQxMDAwQTU5ODggLyogUGx1Z2luUmVwbGFjZW1lbnQuaCBpbiBIZWFkZXJzICovLAogCQkJ
CUJDRTNCRUMzMEQyMjJCMUQwMDdFMDZFNCAvKiBUYWdOb2RlTGlzdC5oIGluIEhlYWRlcnMgKi8s
CiAJCQkJRjU1QjNERDYxMjUxRjEyRDAwM0VGMjY5IC8qIFRlbGVwaG9uZUlucHV0VHlwZS5oIGlu
IEhlYWRlcnMgKi8sCiAJCQkJQzY1MDQ2QTkxNjdCRkI1NTAwQ0MyQTREIC8qIFRlbXBsYXRlQ29u
dGVudERvY3VtZW50RnJhZ21lbnQuaCBpbiBIZWFkZXJzICovLApAQCAtMjcwMzIsNiArMjcwNjQs
NyBAQAogCQkJCTg0ODUyMjdCMTE5MDE2MkMwMDZFREM3RiAvKiBKU1NWR0hLZXJuRWxlbWVudC5j
cHAgaW4gU291cmNlcyAqLywKIAkJCQlCMkZBM0Q5RTBBQjc1QTZGMDAwRTVBQzQgLyogSlNTVkdJ
bWFnZUVsZW1lbnQuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJQjJGQTNEQTAwQUI3NUE2RjAwMEU1
QUM0IC8qIEpTU1ZHTGVuZ3RoLmNwcCBpbiBTb3VyY2VzICovLAorCQkJCTA3NzY2NEZDMTgzRTZC
NUMwMDEzM0I5MiAvKiBKU1F1aWNrVGltZVBsdWdpblJlcGxhY2VtZW50LmNwcCBpbiBTb3VyY2Vz
ICovLAogCQkJCTA4RTRGRTQ2MEUyQkQ0MTQwMEY0Q0FFMCAvKiBKU1NWR0xlbmd0aEN1c3RvbS5j
cHAgaW4gU291cmNlcyAqLywKIAkJCQlCMkZBM0RBMjBBQjc1QTZGMDAwRTVBQzQgLyogSlNTVkdM
ZW5ndGhMaXN0LmNwcCBpbiBTb3VyY2VzICovLAogCQkJCUIyRkEzREE0MEFCNzVBNkYwMDBFNUFD
NCAvKiBKU1NWR0xpbmVhckdyYWRpZW50RWxlbWVudC5jcHAgaW4gU291cmNlcyAqLywKQEAgLTI3
MjM4LDYgKzI3MjcxLDcgQEAKIAkJCQkwNzA1ODUwMjE3RkExMEQwMDA1RjJCQ0IgLyogSlNBbGxW
aWRlb0NhcGFiaWxpdGllcy5jcHAgaW4gU291cmNlcyAqLywKIAkJCQk5NzU5RTkzRTE0RUYxQ0Y4
MDAyNkEyREQgLyogTG9hZGFibGVUZXh0VHJhY2suY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJNjU2
RDM3MzMwQURCQTVERTAwQTQ1NTREIC8qIExvYWRlck5TVVJMRXh0cmFzLm1tIGluIFNvdXJjZXMg
Ki8sCisJCQkJMDcyQUUxRTYxODNDMDc0MTAwMEE1OTg4IC8qIFF1aWNrVGltZVBsdWdpblJlcGxh
Y2VtZW50LmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTdFRTY4NDY4MTJEMjZFMzgwMEU3OTQxNSAv
KiBMb2FkZXJSdW5Mb29wQ0YuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJNTFBQkY2NEQxNjM5MkUy
ODAwMTMyQTdBIC8qIExvYWRlclN0cmF0ZWd5LmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTA2RTgx
RUVDMEFCNURBOTcwMEM4NzgzNyAvKiBMb2NhbEN1cnJlbnRHcmFwaGljc0NvbnRleHQubW0gaW4g
U291cmNlcyAqLywKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2dlbmVyaWMvUnVudGlt
ZUVuYWJsZWRGZWF0dXJlcy5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL2JpbmRpbmdz
L2dlbmVyaWMvUnVudGltZUVuYWJsZWRGZWF0dXJlcy5oCShyZXZpc2lvbiAxNTk3MzYpCisrKyBT
b3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9nZW5lcmljL1J1bnRpbWVFbmFibGVkRmVhdHVyZXMuaAko
d29ya2luZyBjb3B5KQpAQCAtMjI4LDYgKzIyOCw5IEBAIHB1YmxpYzoKICAgICAvLyBUaGUgbGFu
ZyBhdHRyaWJ1dGUgc3VwcG9ydCBpcyBpbmNvbXBsZXRlIGFuZCBzaG91bGQgb25seSBiZSB0dXJu
ZWQgb24gZm9yIHRlc3RzLgogICAgIHZvaWQgc2V0TGFuZ0F0dHJpYnV0ZUF3YXJlRm9ybUNvbnRy
b2xVSUVuYWJsZWQoYm9vbCBpc0VuYWJsZWQpIHsgbV9pc0xhbmdBdHRyaWJ1dGVBd2FyZUZvcm1D
b250cm9sVUlFbmFibGVkID0gaXNFbmFibGVkOyB9CiAKKyAgICB2b2lkIHNldFBsdWdpblJlcGxh
Y2VtZW50RW5hYmxlZChib29sIGlzRW5hYmxlZCkgeyBtX2lzUGx1Z2luUmVwbGFjZW1lbnRFbmFi
bGVkID0gaXNFbmFibGVkOyB9CisgICAgYm9vbCBwbHVnaW5SZXBsYWNlbWVudEVuYWJsZWQoKSBj
b25zdCB7IHJldHVybiBtX2lzUGx1Z2luUmVwbGFjZW1lbnRFbmFibGVkOyB9CisKICAgICBzdGF0
aWMgUnVudGltZUVuYWJsZWRGZWF0dXJlcyYgc2hhcmVkRmVhdHVyZXMoKTsKIAogcHJpdmF0ZToK
QEAgLTI1MCw2ICsyNTMsOCBAQCBwcml2YXRlOgogICAgIGJvb2wgbV9pc0NTU1JlZ2lvbnNFbmFi
bGVkOwogICAgIGJvb2wgbV9pc0NTU0NvbXBvc2l0aW5nRW5hYmxlZDsKICAgICBib29sIG1faXNM
YW5nQXR0cmlidXRlQXdhcmVGb3JtQ29udHJvbFVJRW5hYmxlZDsKKyAgICBib29sIG1faXNQbHVn
aW5SZXBsYWNlbWVudEVuYWJsZWQ7CisKICNpZiBFTkFCTEUoU0NSSVBURURfU1BFRUNIKQogICAg
IGJvb2wgbV9pc1NjcmlwdGVkU3BlZWNoRW5hYmxlZDsKICNlbmRpZgpJbmRleDogU291cmNlL1dl
YkNvcmUvYmluZGluZ3MvanMvSlNET01CaW5kaW5nLmgKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dl
YkNvcmUvYmluZGluZ3MvanMvSlNET01CaW5kaW5nLmgJKHJldmlzaW9uIDE1OTczNikKKysrIFNv
dXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRE9NQmluZGluZy5oCSh3b3JraW5nIGNvcHkpCkBA
IC0zOTIsNiArMzkyLDExIEBAIGlubGluZSBKU0M6OkpTVmFsdWUgdG9KUyhKU0M6OkV4ZWNTdGF0
ZSoKICAgICByZXR1cm4gYXJyYXk7CiB9CiAKK2lubGluZSBKU0M6OkpTVmFsdWUgdG9KUyhKU0M6
OkV4ZWNTdGF0ZSogZXhlYywgSlNET01HbG9iYWxPYmplY3QqLCBjb25zdCBTdHJpbmcmIHZhbHVl
KQoreworICAgIHJldHVybiBqc1N0cmluZ09yTnVsbChleGVjLCB2YWx1ZSk7Cit9CisKIHRlbXBs
YXRlIDxjbGFzcyBUPgogc3RydWN0IEpTVmFsdWVUcmFpdHMgewogICAgIHN0YXRpYyBpbmxpbmUg
SlNDOjpKU1ZhbHVlIGFycmF5SlNWYWx1ZShKU0M6OkV4ZWNTdGF0ZSogZXhlYywgSlNET01HbG9i
YWxPYmplY3QqIGdsb2JhbE9iamVjdCwgY29uc3QgVCYgdmFsdWUpCkluZGV4OiBTb3VyY2UvV2Vi
Q29yZS9iaW5kaW5ncy9qcy9KU1BsdWdpbkVsZW1lbnRGdW5jdGlvbnMuY3BwCj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LS0tIFNvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTUGx1Z2luRWxlbWVudEZ1bmN0aW9ucy5j
cHAJKHJldmlzaW9uIDE1OTczNikKKysrIFNvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTUGx1
Z2luRWxlbWVudEZ1bmN0aW9ucy5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTgyLDcgKzgyLDExIEBA
IEpTT2JqZWN0KiBwbHVnaW5TY3JpcHRPYmplY3QoRXhlY1N0YXRlKiAKIAogICAgIEhUTUxQbHVn
SW5FbGVtZW50JiBwbHVnaW5FbGVtZW50ID0gdG9IVE1MUGx1Z0luRWxlbWVudChlbGVtZW50KTsK
IAotICAgIC8vIEZpcnN0LCBzZWUgaWYgd2UgY2FuIGFzayB0aGUgcGx1Zy1pbiB2aWV3IGZvciBp
dHMgc2NyaXB0IG9iamVjdC4KKyAgICAvLyBGaXJzdCwgc2VlIGlmIHRoZSBlbGVtZW50IGhhcyBh
IHBsdWctaW4gcmVwbGFjZW1lbnQgd2l0aCBhIHNjcmlwdC4KKyAgICBpZiAoSlNPYmplY3QqIHNj
cmlwdE9iamVjdCA9IHBsdWdpbkVsZW1lbnQuc2NyaXB0T2JqZWN0Rm9yUGx1Z2luUmVwbGFjZW1l
bnQoKSkKKyAgICAgICAgcmV0dXJuIHNjcmlwdE9iamVjdDsKKyAgICAKKyAgICAvLyBOZXh0LCBz
ZWUgaWYgd2UgY2FuIGFzayB0aGUgcGx1Zy1pbiB2aWV3IGZvciBpdHMgc2NyaXB0IG9iamVjdC4K
ICAgICBpZiAoSlNPYmplY3QqIHNjcmlwdE9iamVjdCA9IHBsdWdpblNjcmlwdE9iamVjdEZyb21Q
bHVnaW5WaWV3QmFzZShwbHVnaW5FbGVtZW50LCBqc0hUTUxFbGVtZW50LT5nbG9iYWxPYmplY3Qo
KSkpCiAgICAgICAgIHJldHVybiBzY3JpcHRPYmplY3Q7CiAKSW5kZXg6IFNvdXJjZS9XZWJDb3Jl
L2h0bWwvSFRNTEVtYmVkRWxlbWVudC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUv
aHRtbC9IVE1MRW1iZWRFbGVtZW50LmNwcAkocmV2aXNpb24gMTU5NzM2KQorKysgU291cmNlL1dl
YkNvcmUvaHRtbC9IVE1MRW1iZWRFbGVtZW50LmNwcAkod29ya2luZyBjb3B5KQpAQCAtMTcwLDkg
KzE3MCw4IEBAIHZvaWQgSFRNTEVtYmVkRWxlbWVudDo6dXBkYXRlV2lkZ2V0KFBsdWcKICAgICBp
ZiAoIXJlbmRlcmVyKCkpIC8vIERvIG5vdCBsb2FkIHRoZSBwbHVnaW4gaWYgYmVmb3JlbG9hZCBy
ZW1vdmVkIHRoaXMgZWxlbWVudCBvciBpdHMgcmVuZGVyZXIuCiAgICAgICAgIHJldHVybjsKIAot
ICAgIFN1YmZyYW1lTG9hZGVyJiBsb2FkZXIgPSBkb2N1bWVudCgpLmZyYW1lKCktPmxvYWRlcigp
LnN1YmZyYW1lTG9hZGVyKCk7CiAgICAgLy8gRklYTUU6IGJlZm9yZUxvYWQgY291bGQgaGF2ZSBk
ZXRhY2hlZCB0aGUgcmVuZGVyZXIhICBKdXN0IGxpa2UgaW4gdGhlIDxvYmplY3Q+IGNhc2UgYWJv
dmUuCi0gICAgbG9hZGVyLnJlcXVlc3RPYmplY3QoKnRoaXMsIG1fdXJsLCBnZXROYW1lQXR0cmli
dXRlKCksIG1fc2VydmljZVR5cGUsIHBhcmFtTmFtZXMsIHBhcmFtVmFsdWVzKTsKKyAgICByZXF1
ZXN0T2JqZWN0KG1fdXJsLCBtX3NlcnZpY2VUeXBlLCBwYXJhbU5hbWVzLCBwYXJhbVZhbHVlcyk7
CiB9CiAKIGJvb2wgSFRNTEVtYmVkRWxlbWVudDo6cmVuZGVyZXJJc05lZWRlZChjb25zdCBSZW5k
ZXJTdHlsZSYgc3R5bGUpCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxNZWRpYUVsZW1l
bnQuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTE1lZGlhRWxlbWVu
dC5jcHAJKHJldmlzaW9uIDE1OTczNikKKysrIFNvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTE1lZGlh
RWxlbWVudC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTUyODEsNiArNTI4MSwxNCBAQCB2b2lkIEhU
TUxNZWRpYUVsZW1lbnQ6OmRpZEFkZFVzZXJBZ2VudFNoCiB9CiAjZW5kaWYKIAordW5zaWduZWQg
bG9uZyBsb25nIEhUTUxNZWRpYUVsZW1lbnQ6OmZpbGVTaXplKCkgY29uc3QKK3sKKyAgICBpZiAo
bV9wbGF5ZXIpCisgICAgICAgIHJldHVybiBtX3BsYXllci0+ZmlsZVNpemUoKTsKKyAgICAKKyAg
ICByZXR1cm4gMDsKK30KKwogfQogCiAjZW5kaWYKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL2h0bWwv
SFRNTE1lZGlhRWxlbWVudC5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL2h0bWwvSFRN
TE1lZGlhRWxlbWVudC5oCShyZXZpc2lvbiAxNTk3MzYpCisrKyBTb3VyY2UvV2ViQ29yZS9odG1s
L0hUTUxNZWRpYUVsZW1lbnQuaAkod29ya2luZyBjb3B5KQpAQCAtMzg2LDYgKzM4Niw4IEBAIHB1
YmxpYzoKICAgICBib29sIHNob3VsZFVzZVZpZGVvUGx1Z2luUHJveHkoKSBjb25zdDsKICNlbmRp
ZgogCisgICAgdW5zaWduZWQgbG9uZyBsb25nIGZpbGVTaXplKCkgY29uc3Q7CisKIHByb3RlY3Rl
ZDoKICAgICBIVE1MTWVkaWFFbGVtZW50KGNvbnN0IFF1YWxpZmllZE5hbWUmLCBEb2N1bWVudCYs
IGJvb2wpOwogICAgIHZpcnR1YWwgfkhUTUxNZWRpYUVsZW1lbnQoKTsKSW5kZXg6IFNvdXJjZS9X
ZWJDb3JlL2h0bWwvSFRNTE9iamVjdEVsZW1lbnQuY3BwCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9X
ZWJDb3JlL2h0bWwvSFRNTE9iamVjdEVsZW1lbnQuY3BwCShyZXZpc2lvbiAxNTk3MzYpCisrKyBT
b3VyY2UvV2ViQ29yZS9odG1sL0hUTUxPYmplY3RFbGVtZW50LmNwcAkod29ya2luZyBjb3B5KQpA
QCAtMzA3LDggKzMwNyw5IEBAIHZvaWQgSFRNTE9iamVjdEVsZW1lbnQ6OnVwZGF0ZVdpZGdldChQ
bHUKICAgICBpZiAoIXJlbmRlcmVyKCkpIC8vIERvIG5vdCBsb2FkIHRoZSBwbHVnaW4gaWYgYmVm
b3JlbG9hZCByZW1vdmVkIHRoaXMgZWxlbWVudCBvciBpdHMgcmVuZGVyZXIuCiAgICAgICAgIHJl
dHVybjsKIAotICAgIFN1YmZyYW1lTG9hZGVyJiBsb2FkZXIgPSBkb2N1bWVudCgpLmZyYW1lKCkt
PmxvYWRlcigpLnN1YmZyYW1lTG9hZGVyKCk7Ci0gICAgYm9vbCBzdWNjZXNzID0gYmVmb3JlTG9h
ZEFsbG93ZWRMb2FkICYmIGhhc1ZhbGlkQ2xhc3NJZCgpICYmIGxvYWRlci5yZXF1ZXN0T2JqZWN0
KCp0aGlzLCB1cmwsIGdldE5hbWVBdHRyaWJ1dGUoKSwgc2VydmljZVR5cGUsIHBhcmFtTmFtZXMs
IHBhcmFtVmFsdWVzKTsKKyAgICBib29sIHN1Y2Nlc3MgPSBiZWZvcmVMb2FkQWxsb3dlZExvYWQg
JiYgaGFzVmFsaWRDbGFzc0lkKCk7CisgICAgaWYgKHN1Y2Nlc3MpCisgICAgICAgIHN1Y2Nlc3Mg
PSByZXF1ZXN0T2JqZWN0KHVybCwgc2VydmljZVR5cGUsIHBhcmFtTmFtZXMsIHBhcmFtVmFsdWVz
KTsKICAgICBpZiAoIXN1Y2Nlc3MgJiYgaGFzRmFsbGJhY2tDb250ZW50KCkpCiAgICAgICAgIHJl
bmRlckZhbGxiYWNrQ29udGVudCgpOwogfQpJbmRleDogU291cmNlL1dlYkNvcmUvaHRtbC9IVE1M
UGx1Z0luRWxlbWVudC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvaHRtbC9IVE1M
UGx1Z0luRWxlbWVudC5jcHAJKHJldmlzaW9uIDE1OTczNikKKysrIFNvdXJjZS9XZWJDb3JlL2h0
bWwvSFRNTFBsdWdJbkVsZW1lbnQuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0zNSwxOSArMzUsMjkg
QEAKICNpbmNsdWRlICJGcmFtZUxvYWRlci5oIgogI2luY2x1ZGUgIkZyYW1lVHJlZS5oIgogI2lu
Y2x1ZGUgIkhUTUxOYW1lcy5oIgorI2luY2x1ZGUgIk1JTUVUeXBlUmVnaXN0cnkuaCIKICNpbmNs
dWRlICJQYWdlLmgiCisjaW5jbHVkZSAiUGx1Z2luRGF0YS5oIgorI2luY2x1ZGUgIlBsdWdpblJl
cGxhY2VtZW50LmgiCiAjaW5jbHVkZSAiUGx1Z2luVmlld0Jhc2UuaCIKICNpbmNsdWRlICJSZW5k
ZXJFbWJlZGRlZE9iamVjdC5oIgogI2luY2x1ZGUgIlJlbmRlclNuYXBzaG90dGVkUGx1Z0luLmgi
CiAjaW5jbHVkZSAiUmVuZGVyV2lkZ2V0LmgiCisjaW5jbHVkZSAiUnVudGltZUVuYWJsZWRGZWF0
dXJlcy5oIgogI2luY2x1ZGUgIlNjcmlwdENvbnRyb2xsZXIuaCIKICNpbmNsdWRlICJTZXR0aW5n
cy5oIgorI2luY2x1ZGUgIlNoYWRvd1Jvb3QuaCIKKyNpbmNsdWRlICJTdWJmcmFtZUxvYWRlci5o
IgogI2luY2x1ZGUgIldpZGdldC5oIgogCiAjaWYgRU5BQkxFKE5FVFNDQVBFX1BMVUdJTl9BUEkp
CiAjaW5jbHVkZSAibnBydW50aW1lX2ltcGwuaCIKICNlbmRpZgogCisjaWYgUExBVEZPUk0oTUFD
KQorI2luY2x1ZGUgIlF1aWNrVGltZVBsdWdpblJlcGxhY2VtZW50LmgiCisjZW5kaWYKKwogbmFt
ZXNwYWNlIFdlYkNvcmUgewogCiB1c2luZyBuYW1lc3BhY2UgSFRNTE5hbWVzOwpAQCAtNTUsNiAr
NjUsNyBAQCB1c2luZyBuYW1lc3BhY2UgSFRNTE5hbWVzOwogSFRNTFBsdWdJbkVsZW1lbnQ6OkhU
TUxQbHVnSW5FbGVtZW50KGNvbnN0IFF1YWxpZmllZE5hbWUmIHRhZ05hbWUsIERvY3VtZW50JiBk
b2N1bWVudCkKICAgICA6IEhUTUxGcmFtZU93bmVyRWxlbWVudCh0YWdOYW1lLCBkb2N1bWVudCkK
ICAgICAsIG1faW5CZWZvcmVMb2FkRXZlbnRIYW5kbGVyKGZhbHNlKQorICAgICwgbV9zd2FwUmVu
ZGVyZXJUaW1lcih0aGlzLCAmSFRNTFBsdWdJbkVsZW1lbnQ6OnN3YXBSZW5kZXJlclRpbWVyRmly
ZWQpCiAjaWYgRU5BQkxFKE5FVFNDQVBFX1BMVUdJTl9BUEkpCiAgICAgLCBtX05QT2JqZWN0KDAp
CiAjZW5kaWYKQEAgLTI2Miw0ICsyNzMsMTMyIEBAIE5QT2JqZWN0KiBIVE1MUGx1Z0luRWxlbWVu
dDo6Z2V0TlBPYmplY3QKIAogI2VuZGlmIC8qIEVOQUJMRShORVRTQ0FQRV9QTFVHSU5fQVBJKSAq
LwogCitSZW5kZXJFbGVtZW50KiBIVE1MUGx1Z0luRWxlbWVudDo6Y3JlYXRlUmVuZGVyZXIoUGFz
c1JlZjxSZW5kZXJTdHlsZT4gc3R5bGUpCit7CisgICAgaWYgKG1fcGx1Z2luUmVwbGFjZW1lbnQg
JiYgbV9wbHVnaW5SZXBsYWNlbWVudC0+d2lsbENyZWF0ZVJlbmRlcmVyKCkpCisgICAgICAgIHJl
dHVybiBtX3BsdWdpblJlcGxhY2VtZW50LT5jcmVhdGVSZW5kZXJlcigqdGhpcywgc3RkOjptb3Zl
KHN0eWxlKSk7CisKKyAgICByZXR1cm4gbmV3IFJlbmRlckVtYmVkZGVkT2JqZWN0KCp0aGlzLCBz
dGQ6Om1vdmUoc3R5bGUpKTsKK30KKwordm9pZCBIVE1MUGx1Z0luRWxlbWVudDo6c3dhcFJlbmRl
cmVyVGltZXJGaXJlZChUaW1lcjxIVE1MUGx1Z0luRWxlbWVudD4qKQoreworICAgIEFTU0VSVChk
aXNwbGF5U3RhdGUoKSA9PSBQcmVwYXJpbmdQbHVnaW5SZXBsYWNlbWVudCB8fCBkaXNwbGF5U3Rh
dGUoKSA9PSBEaXNwbGF5aW5nU25hcHNob3QpOworICAgIGlmICh1c2VyQWdlbnRTaGFkb3dSb290
KCkpCisgICAgICAgIHJldHVybjsKKyAgICAKKyAgICAvLyBDcmVhdGUgYSBzaGFkb3cgcm9vdCwg
d2hpY2ggd2lsbCB0cmlnZ2VyIHRoZSBjb2RlIHRvIGFkZCBhIHNuYXBzaG90IGNvbnRhaW5lcgor
ICAgIC8vIGFuZCByZWF0dGFjaCwgdGh1cyBtYWtpbmcgYSBuZXcgUmVuZGVyZXIuCisgICAgZW5z
dXJlVXNlckFnZW50U2hhZG93Um9vdCgpOworfQorCit2b2lkIEhUTUxQbHVnSW5FbGVtZW50Ojpz
ZXREaXNwbGF5U3RhdGUoRGlzcGxheVN0YXRlIHN0YXRlKQoreworICAgIG1fZGlzcGxheVN0YXRl
ID0gc3RhdGU7CisgICAgCisgICAgaWYgKChzdGF0ZSA9PSBEaXNwbGF5aW5nU25hcHNob3QgfHwg
ZGlzcGxheVN0YXRlKCkgPT0gUHJlcGFyaW5nUGx1Z2luUmVwbGFjZW1lbnQpICYmICFtX3N3YXBS
ZW5kZXJlclRpbWVyLmlzQWN0aXZlKCkpCisgICAgICAgIG1fc3dhcFJlbmRlcmVyVGltZXIuc3Rh
cnRPbmVTaG90KDApOworfQorCit2b2lkIEhUTUxQbHVnSW5FbGVtZW50OjpkaWRBZGRVc2VyQWdl
bnRTaGFkb3dSb290KFNoYWRvd1Jvb3QqIHJvb3QpCit7CisgICAgaWYgKCFtX3BsdWdpblJlcGxh
Y2VtZW50IHx8ICFkb2N1bWVudCgpLnBhZ2UoKSB8fCBkaXNwbGF5U3RhdGUoKSAhPSBQcmVwYXJp
bmdQbHVnaW5SZXBsYWNlbWVudCkKKyAgICAgICAgcmV0dXJuOworICAgIAorICAgIHJvb3QtPnNl
dFJlc2V0U3R5bGVJbmhlcml0YW5jZSh0cnVlKTsKKyAgICBpZiAobV9wbHVnaW5SZXBsYWNlbWVu
dC0+aW5zdGFsbFJlcGxhY2VtZW50KHJvb3QpKSB7CisgICAgICAgIHNldERpc3BsYXlTdGF0ZShE
aXNwbGF5aW5nUGx1Z2luUmVwbGFjZW1lbnQpOworICAgICAgICBTdHlsZTo6cmVhdHRhY2hSZW5k
ZXJUcmVlKCp0aGlzKTsKKyAgICB9Cit9CisKK3N0YXRpYyB2b2lkIHJlZ2lzdGVyUGx1Z2luUmVw
bGFjZW1lbnQoY29uc3QgUmVwbGFjZW1lbnRQbHVnaW4mKTsKKworc3RhdGljIFZlY3RvcjxSZXBs
YWNlbWVudFBsdWdpbio+JiByZWdpc3RlcmVkUGx1Z2luUmVwbGFjZW1lbnRzKCkKK3sKKyAgICBE
RUZJTkVfU1RBVElDX0xPQ0FMKFZlY3RvcjxSZXBsYWNlbWVudFBsdWdpbio+LCByZWdpc3RlcmVk
UmVwbGFjZW1lbnRzLCAoKSk7CisgICAgc3RhdGljIGJvb2wgZW5naW5lc1F1ZXJpZWQgPSBmYWxz
ZTsKKyAgICAKKyAgICBpZiAoZW5naW5lc1F1ZXJpZWQpCisgICAgICAgIHJldHVybiByZWdpc3Rl
cmVkUmVwbGFjZW1lbnRzOworICAgIGVuZ2luZXNRdWVyaWVkID0gdHJ1ZTsKKworI2lmIFBMQVRG
T1JNKE1BQykKKyAgICBRdWlja1RpbWVQbHVnaW5SZXBsYWNlbWVudDo6cmVnaXN0ZXJQbHVnaW5S
ZXBsYWNlbWVudChyZWdpc3RlclBsdWdpblJlcGxhY2VtZW50KTsKKyNlbmRpZgorICAgIAorICAg
IHJldHVybiByZWdpc3RlcmVkUmVwbGFjZW1lbnRzOworfQorCitzdGF0aWMgdm9pZCByZWdpc3Rl
clBsdWdpblJlcGxhY2VtZW50KGNvbnN0IFJlcGxhY2VtZW50UGx1Z2luJiByZXBsYWNlbWVudCkK
K3sKKyAgICByZWdpc3RlcmVkUGx1Z2luUmVwbGFjZW1lbnRzKCkuYXBwZW5kKG5ldyBSZXBsYWNl
bWVudFBsdWdpbihyZXBsYWNlbWVudCkpOworfQorCitzdGF0aWMgUmVwbGFjZW1lbnRQbHVnaW4q
IHBsdWdpblJlcGxhY2VtZW50Rm9yVHlwZShjb25zdCBVUkwmIHVybCwgY29uc3QgU3RyaW5nJiBt
aW1lVHlwZSkKK3sKKyAgICBWZWN0b3I8UmVwbGFjZW1lbnRQbHVnaW4qPiYgcmVwbGFjZW1lbnRz
ID0gcmVnaXN0ZXJlZFBsdWdpblJlcGxhY2VtZW50cygpOworICAgIGlmIChyZXBsYWNlbWVudHMu
aXNFbXB0eSgpKQorICAgICAgICByZXR1cm4gbnVsbHB0cjsKKworICAgIFN0cmluZyBleHRlbnNp
b247CisgICAgU3RyaW5nIGxhc3RQYXRoQ29tcG9uZW50ID0gdXJsLmxhc3RQYXRoQ29tcG9uZW50
KCk7CisgICAgc2l6ZV90IGRvdE9mZnNldCA9IGxhc3RQYXRoQ29tcG9uZW50LnJldmVyc2VGaW5k
KCcuJyk7CisgICAgaWYgKGRvdE9mZnNldCAhPSBub3RGb3VuZCkKKyAgICAgICAgZXh0ZW5zaW9u
ID0gbGFzdFBhdGhDb21wb25lbnQuc3Vic3RyaW5nKGRvdE9mZnNldCArIDEpOworCisgICAgU3Ry
aW5nIHR5cGUgPSBtaW1lVHlwZTsKKyAgICBpZiAodHlwZS5pc0VtcHR5KCkgJiYgdXJsLnByb3Rv
Y29sSXNEYXRhKCkpCisgICAgICAgIHR5cGUgPSBtaW1lVHlwZUZyb21EYXRhVVJMKHVybC5zdHJp
bmcoKSk7CisgICAgCisgICAgaWYgKHR5cGUuaXNFbXB0eSgpICYmICFleHRlbnNpb24uaXNFbXB0
eSgpKSB7CisgICAgICAgIGZvciAoc2l6ZV90IGkgPSAwOyBpIDwgcmVwbGFjZW1lbnRzLnNpemUo
KTsgaSsrKQorICAgICAgICAgICAgaWYgKHJlcGxhY2VtZW50c1tpXS0+c3VwcG9ydHNGaWxlRXh0
ZW5zaW9uKGV4dGVuc2lvbikpCisgICAgICAgICAgICAgICAgcmV0dXJuIHJlcGxhY2VtZW50c1tp
XTsKKyAgICB9CisgICAgCisgICAgaWYgKHR5cGUuaXNFbXB0eSgpKSB7CisgICAgICAgIGlmIChl
eHRlbnNpb24uaXNFbXB0eSgpKQorICAgICAgICAgICAgcmV0dXJuIG51bGxwdHI7CisgICAgICAg
IHR5cGUgPSBNSU1FVHlwZVJlZ2lzdHJ5OjpnZXRNZWRpYU1JTUVUeXBlRm9yRXh0ZW5zaW9uKGV4
dGVuc2lvbik7CisgICAgfQorCisgICAgaWYgKHR5cGUuaXNFbXB0eSgpKQorICAgICAgICByZXR1
cm4gbnVsbHB0cjsKKworICAgIGZvciAodW5zaWduZWQgaSA9IDA7IGkgPCByZXBsYWNlbWVudHMu
c2l6ZSgpOyBpKyspCisgICAgICAgIGlmIChyZXBsYWNlbWVudHNbaV0tPnN1cHBvcnRzVHlwZSh0
eXBlKSkKKyAgICAgICAgICAgIHJldHVybiByZXBsYWNlbWVudHNbaV07CisKKyAgICByZXR1cm4g
bnVsbHB0cjsKK30KKworYm9vbCBIVE1MUGx1Z0luRWxlbWVudDo6cmVxdWVzdE9iamVjdChjb25z
dCBTdHJpbmcmIHVybCwgY29uc3QgU3RyaW5nJiBtaW1lVHlwZSwgY29uc3QgVmVjdG9yPFN0cmlu
Zz4mIHBhcmFtTmFtZXMsIGNvbnN0IFZlY3RvcjxTdHJpbmc+JiBwYXJhbVZhbHVlcykKK3sKKyAg
ICBpZiAoIVJ1bnRpbWVFbmFibGVkRmVhdHVyZXM6OnNoYXJlZEZlYXR1cmVzKCkucGx1Z2luUmVw
bGFjZW1lbnRFbmFibGVkKCkpCisgICAgICAgIHJldHVybiBmYWxzZTsKKworICAgIGlmIChtX3Bs
dWdpblJlcGxhY2VtZW50KQorICAgICAgICByZXR1cm4gdHJ1ZTsKKworICAgIFVSTCBjb21wbGV0
ZWRVUkw7CisgICAgaWYgKCF1cmwuaXNFbXB0eSgpKQorICAgICAgICBjb21wbGV0ZWRVUkwgPSBk
b2N1bWVudCgpLmNvbXBsZXRlVVJMKHVybCk7CisKKyAgICBSZXBsYWNlbWVudFBsdWdpbiogcmVw
bGFjZW1lbnQgPSBwbHVnaW5SZXBsYWNlbWVudEZvclR5cGUoY29tcGxldGVkVVJMLCBtaW1lVHlw
ZSk7CisgICAgaWYgKCFyZXBsYWNlbWVudCkKKyAgICAgICAgcmV0dXJuIGZhbHNlOworCisgICAg
bV9wbHVnaW5SZXBsYWNlbWVudCA9IHJlcGxhY2VtZW50LT5jcmVhdGUoKnRoaXMsIHBhcmFtTmFt
ZXMsIHBhcmFtVmFsdWVzKTsKKyAgICBzZXREaXNwbGF5U3RhdGUoUHJlcGFyaW5nUGx1Z2luUmVw
bGFjZW1lbnQpOworICAgIHJldHVybiB0cnVlOworfQorCitKU0M6OkpTT2JqZWN0KiBIVE1MUGx1
Z0luRWxlbWVudDo6c2NyaXB0T2JqZWN0Rm9yUGx1Z2luUmVwbGFjZW1lbnQoKQoreworICAgIGlm
IChtX3BsdWdpblJlcGxhY2VtZW50KQorICAgICAgICByZXR1cm4gbV9wbHVnaW5SZXBsYWNlbWVu
dC0+c2NyaXB0T2JqZWN0KCk7CisgICAgcmV0dXJuIG51bGxwdHI7Cit9CisKIH0KSW5kZXg6IFNv
dXJjZS9XZWJDb3JlL2h0bWwvSFRNTFBsdWdJbkVsZW1lbnQuaAo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3Vy
Y2UvV2ViQ29yZS9odG1sL0hUTUxQbHVnSW5FbGVtZW50LmgJKHJldmlzaW9uIDE1OTczNikKKysr
IFNvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTFBsdWdJbkVsZW1lbnQuaAkod29ya2luZyBjb3B5KQpA
QCAtMzgsNiArMzgsNyBAQCBjbGFzcyBJbnN0YW5jZTsKIAogbmFtZXNwYWNlIFdlYkNvcmUgewog
CitjbGFzcyBQbHVnaW5SZXBsYWNlbWVudDsKIGNsYXNzIFJlbmRlckVtYmVkZGVkT2JqZWN0Owog
Y2xhc3MgUmVuZGVyV2lkZ2V0OwogY2xhc3MgV2lkZ2V0OwpAQCAtNTcsMTQgKzU4LDE4IEBAIHB1
YmxpYzoKICAgICAgICAgRGlzcGxheWluZ1NuYXBzaG90LAogICAgICAgICBSZXN0YXJ0aW5nLAog
ICAgICAgICBSZXN0YXJ0aW5nV2l0aFBlbmRpbmdNb3VzZUNsaWNrLAotICAgICAgICBQbGF5aW5n
CisgICAgICAgIFBsYXlpbmcsCisgICAgICAgIFByZXBhcmluZ1BsdWdpblJlcGxhY2VtZW50LAor
ICAgICAgICBEaXNwbGF5aW5nUGx1Z2luUmVwbGFjZW1lbnQsCiAgICAgfTsKICAgICBEaXNwbGF5
U3RhdGUgZGlzcGxheVN0YXRlKCkgY29uc3QgeyByZXR1cm4gbV9kaXNwbGF5U3RhdGU7IH0KLSAg
ICB2aXJ0dWFsIHZvaWQgc2V0RGlzcGxheVN0YXRlKERpc3BsYXlTdGF0ZSBzdGF0ZSkgeyBtX2Rp
c3BsYXlTdGF0ZSA9IHN0YXRlOyB9CisgICAgdmlydHVhbCB2b2lkIHNldERpc3BsYXlTdGF0ZShE
aXNwbGF5U3RhdGUpOwogICAgIHZpcnR1YWwgdm9pZCB1cGRhdGVTbmFwc2hvdChQYXNzUmVmUHRy
PEltYWdlPikgeyB9CiAgICAgdmlydHVhbCB2b2lkIGRpc3BhdGNoUGVuZGluZ01vdXNlQ2xpY2so
KSB7IH0KICAgICB2aXJ0dWFsIGJvb2wgaXNSZXN0YXJ0ZWRQbHVnaW4oKSBjb25zdCB7IHJldHVy
biBmYWxzZTsgfQogCisgICAgSlNDOjpKU09iamVjdCogc2NyaXB0T2JqZWN0Rm9yUGx1Z2luUmVw
bGFjZW1lbnQoKTsKKwogI2lmIEVOQUJMRShORVRTQ0FQRV9QTFVHSU5fQVBJKQogICAgIE5QT2Jq
ZWN0KiBnZXROUE9iamVjdCgpOwogI2VuZGlmCkBAIC05MSwxMiArOTYsMTkgQEAgcHJvdGVjdGVk
OgogCiAgICAgdmlydHVhbCB2b2lkIGRlZmF1bHRFdmVudEhhbmRsZXIoRXZlbnQqKSBPVkVSUklE
RTsKIAorICAgIHZpcnR1YWwgYm9vbCByZXF1ZXN0T2JqZWN0KGNvbnN0IFN0cmluZyYgdXJsLCBj
b25zdCBTdHJpbmcmIG1pbWVUeXBlLCBjb25zdCBWZWN0b3I8U3RyaW5nPiYgcGFyYW1OYW1lcywg
Y29uc3QgVmVjdG9yPFN0cmluZz4mIHBhcmFtVmFsdWVzKTsKKyAgICB2aXJ0dWFsIFJlbmRlckVs
ZW1lbnQqIGNyZWF0ZVJlbmRlcmVyKFBhc3NSZWY8UmVuZGVyU3R5bGU+KSBPVkVSUklERTsKKyAg
ICB2aXJ0dWFsIHZvaWQgZGlkQWRkVXNlckFnZW50U2hhZG93Um9vdChTaGFkb3dSb290KikgT1ZF
UlJJREU7CisKICAgICAvLyBTdWJjbGFzc2VzIHNob3VsZCB1c2UgZ3VhcmRlZERpc3BhdGNoQmVm
b3JlTG9hZEV2ZW50IGluc3RlYWQgb2YgY2FsbGluZyBkaXNwYXRjaEJlZm9yZUxvYWRFdmVudCBk
aXJlY3RseS4KICAgICBib29sIGd1YXJkZWREaXNwYXRjaEJlZm9yZUxvYWRFdmVudChjb25zdCBT
dHJpbmcmIHNvdXJjZVVSTCk7CiAKICAgICBib29sIG1faW5CZWZvcmVMb2FkRXZlbnRIYW5kbGVy
OwogCiBwcml2YXRlOgorICAgIHZvaWQgc3dhcFJlbmRlcmVyVGltZXJGaXJlZChUaW1lcjxIVE1M
UGx1Z0luRWxlbWVudD4qKTsKKyAgICBib29sIHNob3VsZE92ZXJyaWRlUGx1Z2luKGNvbnN0IFN0
cmluZyYgdXJsLCBjb25zdCBTdHJpbmcmIG1pbWVUeXBlKTsKKwogICAgIGJvb2wgZGlzcGF0Y2hC
ZWZvcmVMb2FkRXZlbnQoY29uc3QgU3RyaW5nJiBzb3VyY2VVUkwpOyAvLyBOb3QgaW1wbGVtZW50
ZWQsIGdlbmVyYXRlcyBhIGNvbXBpbGUgZXJyb3IgaWYgc3ViY2xhc3NlcyBjYWxsIHRoaXMgYnkg
bWlzdGFrZS4KIAogICAgIHZpcnR1YWwgYm9vbCBhcmVBdXRob3JTaGFkb3dzQWxsb3dlZCgpIGNv
bnN0IE9WRVJSSURFIHsgcmV0dXJuIGZhbHNlOyB9CkBAIC0xMDksNiArMTIxLDggQEAgcHJpdmF0
ZToKICAgICB2aXJ0dWFsIGJvb2wgaXNQbHVnaW5FbGVtZW50KCkgY29uc3QgT1ZFUlJJREUgRklO
QUw7CiAKICAgICBSZWZQdHI8SlNDOjpCaW5kaW5nczo6SW5zdGFuY2U+IG1faW5zdGFuY2U7Cisg
ICAgVGltZXI8SFRNTFBsdWdJbkVsZW1lbnQ+IG1fc3dhcFJlbmRlcmVyVGltZXI7CisgICAgUmVm
UHRyPFBsdWdpblJlcGxhY2VtZW50PiBtX3BsdWdpblJlcGxhY2VtZW50OwogI2lmIEVOQUJMRShO
RVRTQ0FQRV9QTFVHSU5fQVBJKQogICAgIE5QT2JqZWN0KiBtX05QT2JqZWN0OwogI2VuZGlmCklu
ZGV4OiBTb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxQbHVnSW5JbWFnZUVsZW1lbnQuY3BwCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTFBsdWdJbkltYWdlRWxlbWVudC5jcHAJ
KHJldmlzaW9uIDE1OTczNikKKysrIFNvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTFBsdWdJbkltYWdl
RWxlbWVudC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTEwOCw3ICsxMDgsNiBAQCBIVE1MUGx1Z0lu
SW1hZ2VFbGVtZW50OjpIVE1MUGx1Z0luSW1hZ2VFCiAgICAgLCBtX3Nob3VsZFByZWZlclBsdWdJ
bnNGb3JJbWFnZXMocHJlZmVyUGx1Z0luc0ZvckltYWdlc09wdGlvbiA9PSBTaG91bGRQcmVmZXJQ
bHVnSW5zRm9ySW1hZ2VzKQogICAgICwgbV9uZWVkc0RvY3VtZW50QWN0aXZhdGlvbkNhbGxiYWNr
cyhmYWxzZSkKICAgICAsIG1fc2ltdWxhdGVkTW91c2VDbGlja1RpbWVyKHRoaXMsICZIVE1MUGx1
Z0luSW1hZ2VFbGVtZW50OjpzaW11bGF0ZWRNb3VzZUNsaWNrVGltZXJGaXJlZCwgc2ltdWxhdGVk
TW91c2VDbGlja1RpbWVyRGVsYXkpCi0gICAgLCBtX3N3YXBSZW5kZXJlclRpbWVyKHRoaXMsICZI
VE1MUGx1Z0luSW1hZ2VFbGVtZW50Ojpzd2FwUmVuZGVyZXJUaW1lckZpcmVkKQogICAgICwgbV9y
ZW1vdmVTbmFwc2hvdFRpbWVyKHRoaXMsICZIVE1MUGx1Z0luSW1hZ2VFbGVtZW50OjpyZW1vdmVT
bmFwc2hvdFRpbWVyRmlyZWQpCiAgICAgLCBtX2NyZWF0ZWREdXJpbmdVc2VyR2VzdHVyZShTY3Jp
cHRDb250cm9sbGVyOjpwcm9jZXNzaW5nVXNlckdlc3R1cmUoKSkKICAgICAsIG1faXNSZXN0YXJ0
ZWRQbHVnaW4oZmFsc2UpCkBAIC0xMzksOSArMTM4LDYgQEAgdm9pZCBIVE1MUGx1Z0luSW1hZ2VF
bGVtZW50OjpzZXREaXNwbGF5UwogI2VuZGlmCiAKICAgICBIVE1MUGx1Z0luRWxlbWVudDo6c2V0
RGlzcGxheVN0YXRlKHN0YXRlKTsKLQotICAgIGlmIChzdGF0ZSA9PSBEaXNwbGF5aW5nU25hcHNo
b3QpCi0gICAgICAgIG1fc3dhcFJlbmRlcmVyVGltZXIuc3RhcnRPbmVTaG90KDApOwogfQogCiBS
ZW5kZXJFbWJlZGRlZE9iamVjdCogSFRNTFBsdWdJbkltYWdlRWxlbWVudDo6cmVuZGVyRW1iZWRk
ZWRPYmplY3QoKSBjb25zdApAQCAtMTk2LDYgKzE5Miw5IEBAIGJvb2wgSFRNTFBsdWdJbkltYWdl
RWxlbWVudDo6d291bGRMb2FkQXMKIAogUmVuZGVyRWxlbWVudCogSFRNTFBsdWdJbkltYWdlRWxl
bWVudDo6Y3JlYXRlUmVuZGVyZXIoUGFzc1JlZjxSZW5kZXJTdHlsZT4gc3R5bGUpCiB7CisgICAg
aWYgKGRpc3BsYXlTdGF0ZSgpID49IFByZXBhcmluZ1BsdWdpblJlcGxhY2VtZW50KQorICAgICAg
ICByZXR1cm4gSFRNTFBsdWdJbkVsZW1lbnQ6OmNyZWF0ZVJlbmRlcmVyKHN0ZDo6bW92ZShzdHls
ZSkpOworCiAgICAgLy8gT25jZSBhIFBsdWdJbiBFbGVtZW50IGNyZWF0ZXMgaXRzIHJlbmRlcmVy
LCBpdCBuZWVkcyB0byBiZSB0b2xkIHdoZW4gdGhlIERvY3VtZW50IGdvZXMKICAgICAvLyBpbmFj
dGl2ZSBvciByZWFjdGl2YXRlcyBzbyBpdCBjYW4gY2xlYXIgdGhlIHJlbmRlcmVyIGJlZm9yZSBn
b2luZyBpbnRvIHRoZSBwYWdlIGNhY2hlLgogICAgIGlmICghbV9uZWVkc0RvY3VtZW50QWN0aXZh
dGlvbkNhbGxiYWNrcykgewpAQCAtMjIxLDcgKzIyMCw3IEBAIFJlbmRlckVsZW1lbnQqIEhUTUxQ
bHVnSW5JbWFnZUVsZW1lbnQ6OmMKICAgICAgICAgcmV0dXJuIGltYWdlOwogICAgIH0KIAotICAg
IHJldHVybiBuZXcgUmVuZGVyRW1iZWRkZWRPYmplY3QoKnRoaXMsIHN0ZDo6bW92ZShzdHlsZSkp
OworICAgIHJldHVybiBIVE1MUGx1Z0luRWxlbWVudDo6Y3JlYXRlUmVuZGVyZXIoc3RkOjptb3Zl
KHN0eWxlKSk7CiB9CiAKIGJvb2wgSFRNTFBsdWdJbkltYWdlRWxlbWVudDo6d2lsbFJlY2FsY1N0
eWxlKFN0eWxlOjpDaGFuZ2UpCkBAIC0zNjMsOCArMzYyLDEyIEBAIHN0YXRpYyBET01XcmFwcGVy
V29ybGQmIHBsdWdJbkltYWdlRWxlbWUKIAogdm9pZCBIVE1MUGx1Z0luSW1hZ2VFbGVtZW50Ojpk
aWRBZGRVc2VyQWdlbnRTaGFkb3dSb290KFNoYWRvd1Jvb3QqIHJvb3QpCiB7CisgICAgSFRNTFBs
dWdJbkVsZW1lbnQ6OmRpZEFkZFVzZXJBZ2VudFNoYWRvd1Jvb3Qocm9vdCk7CisgICAgaWYgKGRp
c3BsYXlTdGF0ZSgpID49IFByZXBhcmluZ1BsdWdpblJlcGxhY2VtZW50KQorICAgICAgICByZXR1
cm47CisKICAgICBQYWdlKiBwYWdlID0gZG9jdW1lbnQoKS5wYWdlKCk7Ci0gICAgaWYgKCFwYWdl
KQorICAgIGlmIChwYWdlKQogICAgICAgICByZXR1cm47CiAKICAgICAvLyBSZXNldCBhbnkgYXV0
aG9yIHN0eWxlcyB0aGF0IG1heSBhcHBseSBhcyB3ZSBvbmx5IHdhbnQgZXhwbGljaXQKQEAgLTQw
OSwxNyArNDEyLDYgQEAgYm9vbCBIVE1MUGx1Z0luSW1hZ2VFbGVtZW50OjpwYXJ0T2ZTbmFwcwog
ICAgIHJldHVybiBub2RlICYmIHNuYXBzaG90TGFiZWwgJiYgKG5vZGUgPT0gc25hcHNob3RMYWJl
bC5nZXQoKSB8fCBub2RlLT5pc0Rlc2NlbmRhbnRPZihzbmFwc2hvdExhYmVsLmdldCgpKSk7CiB9
CiAKLXZvaWQgSFRNTFBsdWdJbkltYWdlRWxlbWVudDo6c3dhcFJlbmRlcmVyVGltZXJGaXJlZChU
aW1lcjxIVE1MUGx1Z0luSW1hZ2VFbGVtZW50PiopCi17Ci0gICAgQVNTRVJUKGRpc3BsYXlTdGF0
ZSgpID09IERpc3BsYXlpbmdTbmFwc2hvdCk7Ci0gICAgaWYgKHVzZXJBZ2VudFNoYWRvd1Jvb3Qo
KSkKLSAgICAgICAgcmV0dXJuOwotCi0gICAgLy8gQ3JlYXRlIGEgc2hhZG93IHJvb3QsIHdoaWNo
IHdpbGwgdHJpZ2dlciB0aGUgY29kZSB0byBhZGQgYSBzbmFwc2hvdCBjb250YWluZXIKLSAgICAv
LyBhbmQgcmVhdHRhY2gsIHRodXMgbWFraW5nIGEgbmV3IFJlbmRlcmVyLgotICAgIGVuc3VyZVVz
ZXJBZ2VudFNoYWRvd1Jvb3QoKTsKLX0KLQogdm9pZCBIVE1MUGx1Z0luSW1hZ2VFbGVtZW50Ojpy
ZW1vdmVTbmFwc2hvdFRpbWVyRmlyZWQoVGltZXI8SFRNTFBsdWdJbkltYWdlRWxlbWVudD4qKQog
ewogICAgIG1fc25hcHNob3RJbWFnZSA9IG51bGxwdHI7CkBAIC00OTYsNyArNDg4LDcgQEAgdm9p
ZCBIVE1MUGx1Z0luSW1hZ2VFbGVtZW50Ojp1c2VyRGlkQ2xpYwogICAgIExPRyhQbHVnaW5zLCAi
JXAgVXNlciBjbGlja2VkIG9uIHNuYXBzaG90dGVkIHBsdWctaW4uIFJlc3RhcnQuIiwgdGhpcyk7
CiAgICAgcmVzdGFydFNuYXBzaG90dGVkUGx1Z0luKCk7CiAgICAgaWYgKGZvcndhcmRFdmVudCkK
LSAgICAgICAgc2V0RGlzcGxheVN0YXRlKEhUTUxQbHVnSW5FbGVtZW50OjpSZXN0YXJ0aW5nV2l0
aFBlbmRpbmdNb3VzZUNsaWNrKTsKKyAgICAgICAgc2V0RGlzcGxheVN0YXRlKFJlc3RhcnRpbmdX
aXRoUGVuZGluZ01vdXNlQ2xpY2spOwogICAgIHJlc3RhcnRTaW1pbGFyUGx1Z0lucygpOwogfQog
CkBAIC03MzIsNCArNzI0LDEzIEBAIHZvaWQgSFRNTFBsdWdJbkltYWdlRWxlbWVudDo6ZGVmYXVs
dEV2ZW4KICAgICBIVE1MUGx1Z0luRWxlbWVudDo6ZGVmYXVsdEV2ZW50SGFuZGxlcihldmVudCk7
CiB9CiAKK2Jvb2wgSFRNTFBsdWdJbkltYWdlRWxlbWVudDo6cmVxdWVzdE9iamVjdChjb25zdCBT
dHJpbmcmIHVybCwgY29uc3QgU3RyaW5nJiBtaW1lVHlwZSwgY29uc3QgVmVjdG9yPFN0cmluZz4m
IHBhcmFtTmFtZXMsIGNvbnN0IFZlY3RvcjxTdHJpbmc+JiBwYXJhbVZhbHVlcykKK3sKKyAgICBp
ZiAoSFRNTFBsdWdJbkVsZW1lbnQ6OnJlcXVlc3RPYmplY3QodXJsLCBtaW1lVHlwZSwgcGFyYW1O
YW1lcywgcGFyYW1WYWx1ZXMpKQorICAgICAgICByZXR1cm4gdHJ1ZTsKKyAgICAKKyAgICBTdWJm
cmFtZUxvYWRlciYgbG9hZGVyID0gZG9jdW1lbnQoKS5mcmFtZSgpLT5sb2FkZXIoKS5zdWJmcmFt
ZUxvYWRlcigpOworICAgIHJldHVybiBsb2FkZXIucmVxdWVzdE9iamVjdCgqdGhpcywgdXJsLCBn
ZXROYW1lQXR0cmlidXRlKCksIG1pbWVUeXBlLCBwYXJhbU5hbWVzLCBwYXJhbVZhbHVlcyk7Cit9
CisKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL2h0bWwvSFRN
TFBsdWdJbkltYWdlRWxlbWVudC5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL2h0bWwv
SFRNTFBsdWdJbkltYWdlRWxlbWVudC5oCShyZXZpc2lvbiAxNTk3MzYpCisrKyBTb3VyY2UvV2Vi
Q29yZS9odG1sL0hUTUxQbHVnSW5JbWFnZUVsZW1lbnQuaAkod29ya2luZyBjb3B5KQpAQCAtMjks
NiArMjksNyBAQAogbmFtZXNwYWNlIFdlYkNvcmUgewogCiBjbGFzcyBIVE1MSW1hZ2VMb2FkZXI7
CitjbGFzcyBIVE1MVmlkZW9FbGVtZW50OwogY2xhc3MgRnJhbWVMb2FkZXI7CiBjbGFzcyBJbWFn
ZTsKIGNsYXNzIE1vdXNlRXZlbnQ7CkBAIC0xMjMsNiArMTI0LDcgQEAgcHJvdGVjdGVkOgogICAg
IHZpcnR1YWwgUGFzc1JlZlB0cjxSZW5kZXJTdHlsZT4gY3VzdG9tU3R5bGVGb3JSZW5kZXJlcigp
IE9WRVJSSURFOwogCiAgICAgdmlydHVhbCBib29sIGlzUmVzdGFydGVkUGx1Z2luKCkgY29uc3Qg
T1ZFUlJJREUgeyByZXR1cm4gbV9pc1Jlc3RhcnRlZFBsdWdpbjsgfQorICAgIHZpcnR1YWwgYm9v
bCByZXF1ZXN0T2JqZWN0KGNvbnN0IFN0cmluZyYgdXJsLCBjb25zdCBTdHJpbmcmIG1pbWVUeXBl
LCBjb25zdCBWZWN0b3I8U3RyaW5nPiYgcGFyYW1OYW1lcywgY29uc3QgVmVjdG9yPFN0cmluZz4m
IHBhcmFtVmFsdWVzKSBPVkVSUklERTsKIAogcHJpdmF0ZToKICAgICB2aXJ0dWFsIFJlbmRlckVs
ZW1lbnQqIGNyZWF0ZVJlbmRlcmVyKFBhc3NSZWY8UmVuZGVyU3R5bGU+KSBPVkVSUklERTsKQEAg
LTEzOCw4ICsxNDAsNiBAQCBwcml2YXRlOgogICAgIHZpcnR1YWwgdm9pZCBkaXNwYXRjaFBlbmRp
bmdNb3VzZUNsaWNrKCkgT1ZFUlJJREU7CiAgICAgdm9pZCBzaW11bGF0ZWRNb3VzZUNsaWNrVGlt
ZXJGaXJlZChEZWZlcnJhYmxlT25lU2hvdFRpbWVyPEhUTUxQbHVnSW5JbWFnZUVsZW1lbnQ+Kik7
CiAKLSAgICB2b2lkIHN3YXBSZW5kZXJlclRpbWVyRmlyZWQoVGltZXI8SFRNTFBsdWdJbkltYWdl
RWxlbWVudD4qKTsKLQogICAgIHZvaWQgcmVzdGFydFNpbWlsYXJQbHVnSW5zKCk7CiAKICAgICB2
aXJ0dWFsIGJvb2wgaXNQbHVnSW5JbWFnZUVsZW1lbnQoKSBjb25zdCBPVkVSUklERSB7IHJldHVy
biB0cnVlOyB9CkBAIC0xNTQsNyArMTU0LDYgQEAgcHJpdmF0ZToKICAgICBSZWZQdHI8UmVuZGVy
U3R5bGU+IG1fY3VzdG9tU3R5bGVGb3JQYWdlQ2FjaGU7CiAgICAgUmVmUHRyPE1vdXNlRXZlbnQ+
IG1fcGVuZGluZ0NsaWNrRXZlbnRGcm9tU25hcHNob3Q7CiAgICAgRGVmZXJyYWJsZU9uZVNob3RU
aW1lcjxIVE1MUGx1Z0luSW1hZ2VFbGVtZW50PiBtX3NpbXVsYXRlZE1vdXNlQ2xpY2tUaW1lcjsK
LSAgICBUaW1lcjxIVE1MUGx1Z0luSW1hZ2VFbGVtZW50PiBtX3N3YXBSZW5kZXJlclRpbWVyOwog
ICAgIFRpbWVyPEhUTUxQbHVnSW5JbWFnZUVsZW1lbnQ+IG1fcmVtb3ZlU25hcHNob3RUaW1lcjsK
ICAgICBSZWZQdHI8SW1hZ2U+IG1fc25hcHNob3RJbWFnZTsKICAgICBib29sIG1fY3JlYXRlZER1
cmluZ1VzZXJHZXN0dXJlOwpJbmRleDogU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MVmlkZW9FbGVt
ZW50LmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MVmlkZW9FbGVtZW50
LmgJKHJldmlzaW9uIDE1OTczNikKKysrIFNvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTFZpZGVvRWxl
bWVudC5oCSh3b3JraW5nIGNvcHkpCkBAIC03MiwxMiArNzIsMTIgQEAgcHVibGljOgogICAgIGJv
b2wgc2hvdWxkRGlzcGxheVBvc3RlckltYWdlKCkgY29uc3QgeyByZXR1cm4gZGlzcGxheU1vZGUo
KSA9PSBQb3N0ZXIgfHwgZGlzcGxheU1vZGUoKSA9PSBQb3N0ZXJXYWl0aW5nRm9yVmlkZW87IH0K
IAogICAgIFVSTCBwb3N0ZXJJbWFnZVVSTCgpIGNvbnN0OworICAgIHZpcnR1YWwgUmVuZGVyRWxl
bWVudCogY3JlYXRlUmVuZGVyZXIoUGFzc1JlZjxSZW5kZXJTdHlsZT4pIE9WRVJSSURFOwogCiBw
cml2YXRlOgogICAgIEhUTUxWaWRlb0VsZW1lbnQoY29uc3QgUXVhbGlmaWVkTmFtZSYsIERvY3Vt
ZW50JiwgYm9vbCk7CiAKICAgICB2aXJ0dWFsIGJvb2wgcmVuZGVyZXJJc05lZWRlZChjb25zdCBS
ZW5kZXJTdHlsZSYpIE9WRVJSSURFOwotICAgIHZpcnR1YWwgUmVuZGVyRWxlbWVudCogY3JlYXRl
UmVuZGVyZXIoUGFzc1JlZjxSZW5kZXJTdHlsZT4pIE9WRVJSSURFOwogICAgIHZpcnR1YWwgdm9p
ZCBkaWRBdHRhY2hSZW5kZXJlcnMoKSBPVkVSUklERTsKICAgICB2aXJ0dWFsIHZvaWQgcGFyc2VB
dHRyaWJ1dGUoY29uc3QgUXVhbGlmaWVkTmFtZSYsIGNvbnN0IEF0b21pY1N0cmluZyYpIE9WRVJS
SURFOwogICAgIHZpcnR1YWwgYm9vbCBpc1ByZXNlbnRhdGlvbkF0dHJpYnV0ZShjb25zdCBRdWFs
aWZpZWROYW1lJikgY29uc3QgT1ZFUlJJREU7CkluZGV4OiBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9ncmFwaGljcy9NZWRpYVBsYXllci5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vZ3JhcGhpY3MvTWVkaWFQbGF5ZXIuY3BwCShyZXZpc2lvbiAxNTk3MzYpCisrKyBT
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9NZWRpYVBsYXllci5jcHAJKHdvcmtpbmcg
Y29weSkKQEAgLTEyMjUsNiArMTIyNSwxNCBAQCBzaXplX3QgTWVkaWFQbGF5ZXI6OmV4dHJhTWVt
b3J5Q29zdCgpIGNvCiAgICAgcmV0dXJuIG1fcHJpdmF0ZS0+ZXh0cmFNZW1vcnlDb3N0KCk7CiB9
CiAKK3Vuc2lnbmVkIGxvbmcgbG9uZyBNZWRpYVBsYXllcjo6ZmlsZVNpemUoKSBjb25zdAorewor
ICAgIGlmICghbV9wcml2YXRlKQorICAgICAgICByZXR1cm4gMDsKKyAgICAKKyAgICByZXR1cm4g
bV9wcml2YXRlLT5maWxlU2l6ZSgpOworfQorCiB2b2lkIE1lZGlhUGxheWVyRmFjdG9yeVN1cHBv
cnQ6OmNhbGxSZWdpc3Rlck1lZGlhRW5naW5lKE1lZGlhRW5naW5lUmVnaXN0ZXIgcmVnaXN0ZXJN
ZWRpYUVuZ2luZSkKIHsKICAgICByZWdpc3Rlck1lZGlhRW5naW5lKGFkZE1lZGlhRW5naW5lKTsK
SW5kZXg6IFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL01lZGlhUGxheWVyLmgKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvTWVkaWFQbGF5ZXIu
aAkocmV2aXNpb24gMTU5NzM2KQorKysgU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mv
TWVkaWFQbGF5ZXIuaAkod29ya2luZyBjb3B5KQpAQCAtNTA4LDYgKzUwOCw4IEBAIHB1YmxpYzoK
IAogICAgIHNpemVfdCBleHRyYU1lbW9yeUNvc3QoKSBjb25zdDsKIAorICAgIHVuc2lnbmVkIGxv
bmcgbG9uZyBmaWxlU2l6ZSgpIGNvbnN0OworCiBwcml2YXRlOgogICAgIE1lZGlhUGxheWVyKE1l
ZGlhUGxheWVyQ2xpZW50Kik7CiAgICAgTWVkaWFQbGF5ZXJGYWN0b3J5KiBuZXh0QmVzdE1lZGlh
RW5naW5lKE1lZGlhUGxheWVyRmFjdG9yeSopIGNvbnN0OwpJbmRleDogU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vZ3JhcGhpY3MvTWVkaWFQbGF5ZXJQcml2YXRlLmgKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvTWVkaWFQbGF5ZXJQcml2YXRlLmgJKHJldmlz
aW9uIDE1OTczNikKKysrIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL01lZGlhUGxh
eWVyUHJpdmF0ZS5oCSh3b3JraW5nIGNvcHkpCkBAIC0yMTMsNiArMjEzLDggQEAgcHVibGljOgog
ICAgIHZpcnR1YWwgU3RyaW5nIGxhbmd1YWdlT2ZQcmltYXJ5QXVkaW9UcmFjaygpIGNvbnN0IHsg
cmV0dXJuIGVtcHR5U3RyaW5nKCk7IH0KIAogICAgIHZpcnR1YWwgc2l6ZV90IGV4dHJhTWVtb3J5
Q29zdCgpIGNvbnN0IHsgcmV0dXJuIDA7IH0KKyAgICAKKyAgICB2aXJ0dWFsIHVuc2lnbmVkIGxv
bmcgbG9uZyBmaWxlU2l6ZSgpIGNvbnN0IHsgcmV0dXJuIDA7IH0KIH07CiAKIH0KSW5kZXg6IFNv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2F2Zm91bmRhdGlvbi9NZWRpYVBsYXllclBy
aXZhdGVBVkZvdW5kYXRpb24uY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL2dyYXBoaWNzL2F2Zm91bmRhdGlvbi9NZWRpYVBsYXllclByaXZhdGVBVkZvdW5kYXRpb24u
Y3BwCShyZXZpc2lvbiAxNTk3MzYpCisrKyBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGlj
cy9hdmZvdW5kYXRpb24vTWVkaWFQbGF5ZXJQcml2YXRlQVZGb3VuZGF0aW9uLmNwcAkod29ya2lu
ZyBjb3B5KQpAQCAtOTIxLDcgKzkyMSw4IEBAIHNpemVfdCBNZWRpYVBsYXllclByaXZhdGVBVkZv
dW5kYXRpb246OmUKICAgICBpZiAoIWR1cmF0aW9uKQogICAgICAgICByZXR1cm4gMDsKIAotICAg
IHJldHVybiB0b3RhbEJ5dGVzKCkgKiBidWZmZXJlZCgpLT50b3RhbER1cmF0aW9uKCkgLyBkdXJh
dGlvbjsKKyAgICB1bnNpZ25lZCBsb25nIGxvbmcgZXh0cmEgPSB0b3RhbEJ5dGVzKCkgKiBidWZm
ZXJlZCgpLT50b3RhbER1cmF0aW9uKCkgLyBkdXJhdGlvbjsKKyAgICByZXR1cm4gc3RhdGljX2Nh
c3Q8dW5zaWduZWQ+KGV4dHJhKTsKIH0KIAogdm9pZCBNZWRpYVBsYXllclByaXZhdGVBVkZvdW5k
YXRpb246OmNsZWFyVGV4dFRyYWNrcygpCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9n
cmFwaGljcy9hdmZvdW5kYXRpb24vTWVkaWFQbGF5ZXJQcml2YXRlQVZGb3VuZGF0aW9uLmgKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvYXZmb3VuZGF0aW9u
L01lZGlhUGxheWVyUHJpdmF0ZUFWRm91bmRhdGlvbi5oCShyZXZpc2lvbiAxNTk3MzYpCisrKyBT
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9hdmZvdW5kYXRpb24vTWVkaWFQbGF5ZXJQ
cml2YXRlQVZGb3VuZGF0aW9uLmgJKHdvcmtpbmcgY29weSkKQEAgLTE5MCw2ICsxOTAsNyBAQCBw
cm90ZWN0ZWQ6CiAKICAgICB2aXJ0dWFsIGJvb2wgc3VwcG9ydHNGdWxsc2NyZWVuKCkgY29uc3Q7
CiAgICAgdmlydHVhbCBib29sIHN1cHBvcnRzU2Nhbm5pbmcoKSBjb25zdCB7IHJldHVybiB0cnVl
OyB9CisgICAgdW5zaWduZWQgbG9uZyBsb25nIGZpbGVTaXplKCkgY29uc3QgeyByZXR1cm4gdG90
YWxCeXRlcygpOyB9CiAKICAgICAvLyBSZXF1aXJlZCBpbnRlcmZhY2VzIGZvciBjb25jcmV0ZSBk
ZXJpdmVkIGNsYXNzZXMuCiAgICAgdmlydHVhbCB2b2lkIGNyZWF0ZUFWQXNzZXRGb3JVUkwoY29u
c3QgU3RyaW5nJikgPSAwOwpAQCAtMjI1LDcgKzIyNiw3IEBAIHByb3RlY3RlZDoKICAgICB2aXJ0
dWFsIHZvaWQgdXBkYXRlUmF0ZSgpID0gMDsKICAgICB2aXJ0dWFsIGZsb2F0IHJhdGUoKSBjb25z
dCA9IDA7CiAgICAgdmlydHVhbCB2b2lkIHNlZWtUb1RpbWUoZG91YmxlIHRpbWUsIGRvdWJsZSBu
ZWdhdGl2ZVRvbGVyYW5jZSwgZG91YmxlIHBvc2l0aXZlVG9sZXJhbmNlKSA9IDA7Ci0gICAgdmly
dHVhbCB1bnNpZ25lZCB0b3RhbEJ5dGVzKCkgY29uc3QgPSAwOworICAgIHZpcnR1YWwgdW5zaWdu
ZWQgbG9uZyBsb25nIHRvdGFsQnl0ZXMoKSBjb25zdCA9IDA7CiAgICAgdmlydHVhbCBQYXNzUmVm
UHRyPFRpbWVSYW5nZXM+IHBsYXRmb3JtQnVmZmVyZWRUaW1lUmFuZ2VzKCkgY29uc3QgPSAwOwog
ICAgIHZpcnR1YWwgZG91YmxlIHBsYXRmb3JtTWF4VGltZVNlZWthYmxlKCkgY29uc3QgPSAwOwog
ICAgIHZpcnR1YWwgZG91YmxlIHBsYXRmb3JtTWluVGltZVNlZWthYmxlKCkgY29uc3QgPSAwOwpJ
bmRleDogU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvYXZmb3VuZGF0aW9uL2NmL01l
ZGlhUGxheWVyUHJpdmF0ZUFWRm91bmRhdGlvbkNGLmNwcAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9hdmZvdW5kYXRpb24vY2YvTWVkaWFQbGF5ZXJQcml2
YXRlQVZGb3VuZGF0aW9uQ0YuY3BwCShyZXZpc2lvbiAxNTk3MzYpCisrKyBTb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9ncmFwaGljcy9hdmZvdW5kYXRpb24vY2YvTWVkaWFQbGF5ZXJQcml2YXRlQVZG
b3VuZGF0aW9uQ0YuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC03MjEsNyArNzIxLDcgQEAgZmxvYXQg
TWVkaWFQbGF5ZXJQcml2YXRlQVZGb3VuZGF0aW9uQ0Y6OgogICAgIHJldHVybiBtYXhUaW1lTG9h
ZGVkOyAgIAogfQogCi11bnNpZ25lZCBNZWRpYVBsYXllclByaXZhdGVBVkZvdW5kYXRpb25DRjo6
dG90YWxCeXRlcygpIGNvbnN0Cit1bnNpZ25lZCBsb25nIGxvbmcgTWVkaWFQbGF5ZXJQcml2YXRl
QVZGb3VuZGF0aW9uQ0Y6OnRvdGFsQnl0ZXMoKSBjb25zdAogewogICAgIGlmICghbWV0YURhdGFB
dmFpbGFibGUoKSB8fCAhYXZBc3NldChtX2F2ZldyYXBwZXIpKQogICAgICAgICByZXR1cm4gMDsK
QEAgLTczNCw4ICs3MzQsNyBAQCB1bnNpZ25lZCBNZWRpYVBsYXllclByaXZhdGVBVkZvdW5kYXRp
b25DCiAgICAgICAgIHRvdGFsTWVkaWFTaXplICs9IEFWQ0ZBc3NldFRyYWNrR2V0VG90YWxTYW1w
bGVEYXRhTGVuZ3RoKGFzc2V0VHJhY2spOwogICAgIH0KIAotICAgIC8vIEZJWE1FOiBJdCBkb2Vz
bid0IHNlZW0gc2FmZSB0byBjYXN0IGFuIGludDY0X3QgdG8gdW5zaWduZWQuCi0gICAgcmV0dXJu
IHN0YXRpY19jYXN0PHVuc2lnbmVkPih0b3RhbE1lZGlhU2l6ZSk7CisgICAgcmV0dXJuIHN0YXRp
Y19jYXN0PHVuc2lnbmVkIGxvbmcgbG9uZz4odG90YWxNZWRpYVNpemUpOwogfQogCiBNZWRpYVBs
YXllclByaXZhdGVBVkZvdW5kYXRpb246OkFzc2V0U3RhdHVzIE1lZGlhUGxheWVyUHJpdmF0ZUFW
Rm91bmRhdGlvbkNGOjphc3NldFN0YXR1cygpIGNvbnN0CkluZGV4OiBTb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9ncmFwaGljcy9hdmZvdW5kYXRpb24vY2YvTWVkaWFQbGF5ZXJQcml2YXRlQVZGb3Vu
ZGF0aW9uQ0YuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGlj
cy9hdmZvdW5kYXRpb24vY2YvTWVkaWFQbGF5ZXJQcml2YXRlQVZGb3VuZGF0aW9uQ0YuaAkocmV2
aXNpb24gMTU5NzM2KQorKysgU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvYXZmb3Vu
ZGF0aW9uL2NmL01lZGlhUGxheWVyUHJpdmF0ZUFWRm91bmRhdGlvbkNGLmgJKHdvcmtpbmcgY29w
eSkKQEAgLTc3LDcgKzc3LDcgQEAgcHJpdmF0ZToKICAgICB2aXJ0dWFsIHZvaWQgdXBkYXRlUmF0
ZSgpOwogICAgIHZpcnR1YWwgZmxvYXQgcmF0ZSgpIGNvbnN0OwogICAgIHZpcnR1YWwgdm9pZCBz
ZWVrVG9UaW1lKGRvdWJsZSB0aW1lLCBkb3VibGUgbmVnYXRpdmVUb2xlcmFuY2UsIGRvdWJsZSBw
b3NpdGl2ZVRvbGVyYW5jZSk7Ci0gICAgdmlydHVhbCB1bnNpZ25lZCB0b3RhbEJ5dGVzKCkgY29u
c3Q7CisgICAgdmlydHVhbCB1bnNpZ25lZCBsb25nIGxvbmcgdG90YWxCeXRlcygpIGNvbnN0Owog
ICAgIHZpcnR1YWwgUGFzc1JlZlB0cjxUaW1lUmFuZ2VzPiBwbGF0Zm9ybUJ1ZmZlcmVkVGltZVJh
bmdlcygpIGNvbnN0OwogICAgIHZpcnR1YWwgZG91YmxlIHBsYXRmb3JtTWluVGltZVNlZWthYmxl
KCkgY29uc3Q7CiAgICAgdmlydHVhbCBkb3VibGUgcGxhdGZvcm1NYXhUaW1lU2Vla2FibGUoKSBj
b25zdDsKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2F2Zm91bmRhdGlv
bi9vYmpjL01lZGlhUGxheWVyUHJpdmF0ZUFWRm91bmRhdGlvbk9iakMuaAo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9hdmZvdW5kYXRpb24vb2JqYy9NZWRp
YVBsYXllclByaXZhdGVBVkZvdW5kYXRpb25PYmpDLmgJKHJldmlzaW9uIDE1OTczNikKKysrIFNv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2F2Zm91bmRhdGlvbi9vYmpjL01lZGlhUGxh
eWVyUHJpdmF0ZUFWRm91bmRhdGlvbk9iakMuaAkod29ya2luZyBjb3B5KQpAQCAtMTQ4LDcgKzE0
OCw3IEBAIHByaXZhdGU6CiAgICAgdmlydHVhbCB2b2lkIHVwZGF0ZVJhdGUoKTsKICAgICB2aXJ0
dWFsIGZsb2F0IHJhdGUoKSBjb25zdDsKICAgICB2aXJ0dWFsIHZvaWQgc2Vla1RvVGltZShkb3Vi
bGUgdGltZSwgZG91YmxlIG5lZ2F0aXZlVG9sZXJhbmNlLCBkb3VibGUgcG9zaXRpdmVUb2xlcmFu
Y2UpOwotICAgIHZpcnR1YWwgdW5zaWduZWQgdG90YWxCeXRlcygpIGNvbnN0OworICAgIHZpcnR1
YWwgdW5zaWduZWQgbG9uZyBsb25nIHRvdGFsQnl0ZXMoKSBjb25zdDsKICAgICB2aXJ0dWFsIFBh
c3NSZWZQdHI8VGltZVJhbmdlcz4gcGxhdGZvcm1CdWZmZXJlZFRpbWVSYW5nZXMoKSBjb25zdDsK
ICAgICB2aXJ0dWFsIGRvdWJsZSBwbGF0Zm9ybU1pblRpbWVTZWVrYWJsZSgpIGNvbnN0OwogICAg
IHZpcnR1YWwgZG91YmxlIHBsYXRmb3JtTWF4VGltZVNlZWthYmxlKCkgY29uc3Q7CkluZGV4OiBT
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9hdmZvdW5kYXRpb24vb2JqYy9NZWRpYVBs
YXllclByaXZhdGVBVkZvdW5kYXRpb25PYmpDLm1tCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL2dyYXBoaWNzL2F2Zm91bmRhdGlvbi9vYmpjL01lZGlhUGxheWVyUHJpdmF0
ZUFWRm91bmRhdGlvbk9iakMubW0JKHJldmlzaW9uIDE1OTczNikKKysrIFNvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2dyYXBoaWNzL2F2Zm91bmRhdGlvbi9vYmpjL01lZGlhUGxheWVyUHJpdmF0ZUFW
Rm91bmRhdGlvbk9iakMubW0JKHdvcmtpbmcgY29weSkKQEAgLTgwMyw3ICs4MDMsNyBAQCBmbG9h
dCBNZWRpYVBsYXllclByaXZhdGVBVkZvdW5kYXRpb25PYmpDCiAgICAgcmV0dXJuIG1heFRpbWVM
b2FkZWQ7ICAgCiB9CiAKLXVuc2lnbmVkIE1lZGlhUGxheWVyUHJpdmF0ZUFWRm91bmRhdGlvbk9i
akM6OnRvdGFsQnl0ZXMoKSBjb25zdAordW5zaWduZWQgbG9uZyBsb25nIE1lZGlhUGxheWVyUHJp
dmF0ZUFWRm91bmRhdGlvbk9iakM6OnRvdGFsQnl0ZXMoKSBjb25zdAogewogICAgIGlmICghbWV0
YURhdGFBdmFpbGFibGUoKSkKICAgICAgICAgcmV0dXJuIDA7CkBAIC04MTIsNyArODEyLDcgQEAg
dW5zaWduZWQgTWVkaWFQbGF5ZXJQcml2YXRlQVZGb3VuZGF0aW9uTwogICAgIGZvciAoQVZQbGF5
ZXJJdGVtVHJhY2sgKnRoaXNUcmFjayBpbiBtX2NhY2hlZFRyYWNrcy5nZXQoKSkKICAgICAgICAg
dG90YWxNZWRpYVNpemUgKz0gW1t0aGlzVHJhY2sgYXNzZXRUcmFja10gdG90YWxTYW1wbGVEYXRh
TGVuZ3RoXTsKIAotICAgIHJldHVybiBzdGF0aWNfY2FzdDx1bnNpZ25lZD4odG90YWxNZWRpYVNp
emUpOworICAgIHJldHVybiB0b3RhbE1lZGlhU2l6ZTsKIH0KIAogdm9pZCBNZWRpYVBsYXllclBy
aXZhdGVBVkZvdW5kYXRpb25PYmpDOjpzZXRBc3NldChpZCBhc3NldCkKSW5kZXg6IFNvdXJjZS9X
ZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxTZXR0aW5ncy5jcHAKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNl
L1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbFNldHRpbmdzLmNwcAkocmV2aXNpb24gMTU5NzM2KQor
KysgU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbFNldHRpbmdzLmNwcAkod29ya2luZyBj
b3B5KQpAQCAtOTQsNiArOTQsNyBAQCBJbnRlcm5hbFNldHRpbmdzOjpCYWNrdXA6OkJhY2t1cChT
ZXR0aW5nCiAgICAgLCBtX29yaWdpbmFsVGltZVdpdGhvdXRNb3VzZU1vdmVtZW50QmVmb3JlSGlk
aW5nQ29udHJvbHMoc2V0dGluZ3MudGltZVdpdGhvdXRNb3VzZU1vdmVtZW50QmVmb3JlSGlkaW5n
Q29udHJvbHMoKSkKICAgICAsIG1fdXNlTGVnYWN5QmFja2dyb3VuZFNpemVTaG9ydGhhbmRCZWhh
dmlvcihzZXR0aW5ncy51c2VMZWdhY3lCYWNrZ3JvdW5kU2l6ZVNob3J0aGFuZEJlaGF2aW9yKCkp
CiAgICAgLCBtX2F1dG9zY3JvbGxGb3JEcmFnQW5kRHJvcEVuYWJsZWQoc2V0dGluZ3MuYXV0b3Nj
cm9sbEZvckRyYWdBbmREcm9wRW5hYmxlZCgpKQorICAgICwgbV9wbHVnaW5SZXBsYWNlbWVudEVu
YWJsZWQoUnVudGltZUVuYWJsZWRGZWF0dXJlczo6c2hhcmVkRmVhdHVyZXMoKS5wbHVnaW5SZXBs
YWNlbWVudEVuYWJsZWQoKSkKIHsKIH0KIApAQCAtMTU2LDYgKzE1Nyw3IEBAIHZvaWQgSW50ZXJu
YWxTZXR0aW5nczo6QmFja3VwOjpyZXN0b3JlVG8KICAgICBzZXR0aW5ncy5zZXRUaW1lV2l0aG91
dE1vdXNlTW92ZW1lbnRCZWZvcmVIaWRpbmdDb250cm9scyhtX29yaWdpbmFsVGltZVdpdGhvdXRN
b3VzZU1vdmVtZW50QmVmb3JlSGlkaW5nQ29udHJvbHMpOwogICAgIHNldHRpbmdzLnNldFVzZUxl
Z2FjeUJhY2tncm91bmRTaXplU2hvcnRoYW5kQmVoYXZpb3IobV91c2VMZWdhY3lCYWNrZ3JvdW5k
U2l6ZVNob3J0aGFuZEJlaGF2aW9yKTsKICAgICBzZXR0aW5ncy5zZXRBdXRvc2Nyb2xsRm9yRHJh
Z0FuZERyb3BFbmFibGVkKG1fYXV0b3Njcm9sbEZvckRyYWdBbmREcm9wRW5hYmxlZCk7CisgICAg
UnVudGltZUVuYWJsZWRGZWF0dXJlczo6c2hhcmVkRmVhdHVyZXMoKS5zZXRQbHVnaW5SZXBsYWNl
bWVudEVuYWJsZWQobV9wbHVnaW5SZXBsYWNlbWVudEVuYWJsZWQpOwogfQogCiAvLyBXZSBjYW4n
dCB1c2UgUmVmQ291bnRlZFN1cHBsZW1lbnQgYmVjYXVzZSB0aGF0IHdvdWxkIHRyeSB0byBtYWtl
IEludGVybmFsU2V0dGluZ3MgUmVmQ291bnRlZApAQCAtNTI4LDQgKzUzMCw5IEBAIHZvaWQgSW50
ZXJuYWxTZXR0aW5nczo6c2V0Rm9udEZhbGxiYWNrUHIKICAgICBzZXR0aW5ncygpLT5zZXRGb250
RmFsbGJhY2tQcmVmZXJzUGljdG9ncmFwaHMocHJlZmVyUGljdG9ncmFwaHMpOwogfQogCit2b2lk
IEludGVybmFsU2V0dGluZ3M6OnNldFBsdWdpblJlcGxhY2VtZW50RW5hYmxlZChib29sIGVuYWJs
ZWQpCit7CisgICAgUnVudGltZUVuYWJsZWRGZWF0dXJlczo6c2hhcmVkRmVhdHVyZXMoKS5zZXRQ
bHVnaW5SZXBsYWNlbWVudEVuYWJsZWQoZW5hYmxlZCk7Cit9CisKIH0KSW5kZXg6IFNvdXJjZS9X
ZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxTZXR0aW5ncy5oCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9X
ZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxTZXR0aW5ncy5oCShyZXZpc2lvbiAxNTk3MzYpCisrKyBT
b3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFsU2V0dGluZ3MuaAkod29ya2luZyBjb3B5KQpA
QCAtOTEsNiArOTEsNyBAQCBwdWJsaWM6CiAgICAgICAgIGJvb2wgbV9vcmlnaW5hbFRpbWVXaXRo
b3V0TW91c2VNb3ZlbWVudEJlZm9yZUhpZGluZ0NvbnRyb2xzOwogICAgICAgICBib29sIG1fdXNl
TGVnYWN5QmFja2dyb3VuZFNpemVTaG9ydGhhbmRCZWhhdmlvcjsKICAgICAgICAgYm9vbCBtX2F1
dG9zY3JvbGxGb3JEcmFnQW5kRHJvcEVuYWJsZWQ7CisgICAgICAgIGJvb2wgbV9wbHVnaW5SZXBs
YWNlbWVudEVuYWJsZWQ7CiAgICAgfTsKIAogICAgIHN0YXRpYyBQYXNzUmVmUHRyPEludGVybmFs
U2V0dGluZ3M+IGNyZWF0ZShQYWdlKiBwYWdlKQpAQCAtMTM2LDYgKzEzNyw3IEBAIHB1YmxpYzoK
ICAgICB2b2lkIHNldFVzZUxlZ2FjeUJhY2tncm91bmRTaXplU2hvcnRoYW5kQmVoYXZpb3IoYm9v
bCBlbmFibGVkLCBFeGNlcHRpb25Db2RlJik7CiAgICAgdm9pZCBzZXRBdXRvc2Nyb2xsRm9yRHJh
Z0FuZERyb3BFbmFibGVkKGJvb2wgZW5hYmxlZCwgRXhjZXB0aW9uQ29kZSYpOwogICAgIHZvaWQg
c2V0Rm9udEZhbGxiYWNrUHJlZmVyc1BpY3RvZ3JhcGhzKGJvb2wgcHJlZmVyUGljdG9ncmFwaHMs
IEV4Y2VwdGlvbkNvZGUmKTsKKyAgICB2b2lkIHNldFBsdWdpblJlcGxhY2VtZW50RW5hYmxlZChi
b29sKTsKIAogcHJpdmF0ZToKICAgICBleHBsaWNpdCBJbnRlcm5hbFNldHRpbmdzKFBhZ2UqKTsK
SW5kZXg6IFNvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxTZXR0aW5ncy5pZGwKPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbFNldHRpbmdzLmlkbAkocmV2
aXNpb24gMTU5NzM2KQorKysgU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbFNldHRpbmdz
LmlkbAkod29ya2luZyBjb3B5KQpAQCAtNjAsNCArNjAsNSBAQAogICAgIFtSYWlzZXNFeGNlcHRp
b25dIHZvaWQgc2V0VXNlTGVnYWN5QmFja2dyb3VuZFNpemVTaG9ydGhhbmRCZWhhdmlvcihib29s
ZWFuIGVuYWJsZWQpOwogICAgIFtSYWlzZXNFeGNlcHRpb25dIHZvaWQgc2V0QXV0b3Njcm9sbEZv
ckRyYWdBbmREcm9wRW5hYmxlZChib29sZWFuIGVuYWJsZWQpOwogICAgIFtSYWlzZXNFeGNlcHRp
b25dIHZvaWQgc2V0Rm9udEZhbGxiYWNrUHJlZmVyc1BpY3RvZ3JhcGhzKGJvb2xlYW4gcHJlZmVy
UGljdG9ncmFwaHMpOworICAgIHZvaWQgc2V0UGx1Z2luUmVwbGFjZW1lbnRFbmFibGVkKGJvb2xl
YW4gZW5hYmxlZCk7CiB9OwpJbmRleDogTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LS0tIExheW91dFRlc3RzL0NoYW5nZUxvZwkocmV2aXNpb24gMTU5NzkwKQorKysgTGF5b3V0VGVz
dHMvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMTggQEAKKzIwMTMtMTEtMjYg
IEVyaWMgQ2FybHNvbiAgPGVyaWMuY2FybHNvbkBhcHBsZS5jb20+CisKKyAgICAgICAgQWxsb3cg
dGhlIFF1aWNrVGltZSBwbHVnLWluIHRvIGJlIHJlcGxhY2VkIGJ5IHNjcmlwdCBpbiBhbiBpc29s
YXRlZCB3b3JkCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9p
ZD0xMjQ5MDAKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAg
ICAqIHBsYXRmb3JtL2VmbC9UZXN0RXhwZWN0YXRpb25zOiBTa2lwIHRoZSBuZXcgdGVzdC4KKyAg
ICAgICAgKiBwbGF0Zm9ybS9ndGsvVGVzdEV4cGVjdGF0aW9uczogRGl0dG8uCisgICAgICAgICog
cGxhdGZvcm0vd2luY2Fpcm8vVGVzdEV4cGVjdGF0aW9uczogRGl0dG8uCisgICAgICAgICogcGx1
Z2lucy9xdWlja3RpbWUtcGx1Z2luLXJlcGxhY2VtZW50Lmh0bWw6IEFkZGVkLgorICAgICAgICAq
IHBsdWdpbnMvcXVpY2t0aW1lLXBsdWdpbi1yZXBsYWNlbWVudC1leHBlY3RlZC50eHQ6IEFkZGVk
LgorICAgICAgICAqIHBsdWdpbnMvcmVzb3VyY2VzL29yYW5nZS5tb3Y6IFJlcGxhY2UgbW92aWUg
Y29tcHJlc3NlZCB3aXRoIGFuY2llbnQgYW5pbWF0ZWQgZ2lmIGNvZGVjIHdpdGgKKyAgICAgICAg
ICAgIG9uZSBjb21wcmVzc2VkIHdpdGggSC4yNjQgY29kZWMuCisKIDIwMTMtMTEtMjYgIE9saXZl
ciBIdW50ICA8b2xpdmVyQGFwcGxlLmNvbT4KIAogICAgICAgICBDcmFzaCBpbiBKU0M6OkFTVEJ1
aWxkZXI6OkV4cHJlc3Npb24gSlNDOjpQYXJzZXI8SlNDOjpMZXhlcjx1bnNpZ25lZCBjaGFyPiA+
OjpwYXJzZVVuYXJ5RXhwcmVzc2lvbjxKU0M6OkFTVEJ1aWxkZXI+KEpTQzo6QVNUQnVpbGRlciYp
CkluZGV4OiBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9lZmwvVGVzdEV4cGVjdGF0aW9ucwo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9lZmwvVGVzdEV4cGVjdGF0aW9ucwkocmV2aXNp
b24gMTU5NzkwKQorKysgTGF5b3V0VGVzdHMvcGxhdGZvcm0vZWZsL1Rlc3RFeHBlY3RhdGlvbnMJ
KHdvcmtpbmcgY29weSkKQEAgLTE3MzMsMyArMTczMyw2IEBAIHdlYmtpdC5vcmcvYi8xMjQ2NjUg
bWVkaWEvdmlkZW8tZW5kZWQtZXYKIHdlYmtpdC5vcmcvYi8xMjQ4OTAgcGxhdGZvcm0vZWZsL2Fj
Y2Vzc2liaWxpdHkvbWVkaWEtZW1pdHMtb2JqZWN0LXJlcGxhY2VtZW50Lmh0bWwgWyBGYWlsdXJl
IF0KIAogd2Via2l0Lm9yZy9iLzEyNDg5NCBhY2Nlc3NpYmlsaXR5L2ZpZWxkc2V0LWVsZW1lbnQu
aHRtbCBbIE1pc3NpbmcgXQorCisjIFF1aWNrVGltZSBwbHVnLWluIG5vdCByZWxldmFudCB0byB0
aGlzIHBvcnQKK3BsdWdpbnMvcXVpY2t0aW1lLXBsdWdpbi1yZXBsYWNlbWVudC5odG1sIFsgU2tp
cCBdCkluZGV4OiBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9ndGsvVGVzdEV4cGVjdGF0aW9ucwo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9ndGsvVGVzdEV4cGVjdGF0aW9ucwkocmV2
aXNpb24gMTU5NzkwKQorKysgTGF5b3V0VGVzdHMvcGxhdGZvcm0vZ3RrL1Rlc3RFeHBlY3RhdGlv
bnMJKHdvcmtpbmcgY29weSkKQEAgLTUxMSw2ICs1MTEsOSBAQCB3ZWJraXQub3JnL2IvMTA3MTk0
IGh0dHAvdGVzdHMvc2VjdXJpdHkvCiAjIGNyeXB0by5zdWJ0bGUgaXMgbm90IHlldCBlbmFibGVk
CiBjcnlwdG8vc3VidGxlIFsgU2tpcCBdCiAKKyMgUXVpY2tUaW1lIHBsdWctaW4gbm90IHJlbGV2
YW50IHRvIHRoaXMgcG9ydAorcGx1Z2lucy9xdWlja3RpbWUtcGx1Z2luLXJlcGxhY2VtZW50Lmh0
bWwgWyBTa2lwIF0KKwogIy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8v
Ly8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8KICMgRW5kIG9m
IEV4cGVjdGVkIGZhaWx1cmVzCiAjLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8v
Ly8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwpJbmRl
eDogTGF5b3V0VGVzdHMvcGxhdGZvcm0vd2luY2Fpcm8vVGVzdEV4cGVjdGF0aW9ucwo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBMYXlvdXRUZXN0cy9wbGF0Zm9ybS93aW5jYWlyby9UZXN0RXhwZWN0YXRpb25zCShy
ZXZpc2lvbiAxNTk3OTApCisrKyBMYXlvdXRUZXN0cy9wbGF0Zm9ybS93aW5jYWlyby9UZXN0RXhw
ZWN0YXRpb25zCSh3b3JraW5nIGNvcHkpCkBAIC0yODUzLDMgKzI4NTMsNiBAQCBlZGl0aW5nL3Nl
Y3VyZS1pbnB1dCBbIEZhaWx1cmUgXQogCiAjIGNyeXB0by5zdWJ0bGUgaXMgbm90IHlldCBlbmFi
bGVkCiBjcnlwdG8vc3VidGxlIFsgU2tpcCBdCisKKyMgUXVpY2tUaW1lIHBsdWctaW4gbm90IHJl
bGV2YW50IHRvIHRoaXMgcG9ydAorcGx1Z2lucy9xdWlja3RpbWUtcGx1Z2luLXJlcGxhY2VtZW50
Lmh0bWwgWyBTa2lwIF0KSW5kZXg6IExheW91dFRlc3RzL3BsdWdpbnMvcXVpY2t0aW1lLXBsdWdp
bi1yZXBsYWNlbWVudC1leHBlY3RlZC50eHQKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvcGx1
Z2lucy9xdWlja3RpbWUtcGx1Z2luLXJlcGxhY2VtZW50LWV4cGVjdGVkLnR4dAkocmV2aXNpb24g
MCkKKysrIExheW91dFRlc3RzL3BsdWdpbnMvcXVpY2t0aW1lLXBsdWdpbi1yZXBsYWNlbWVudC1l
eHBlY3RlZC50eHQJKHdvcmtpbmcgY29weSkKQEAgLTAsMCArMSw2MyBAQAorCitFVkVOVChxdF9i
ZWdpbikKK0VWRU5UKHF0X3ZhbGlkYXRlZCkKK0VWRU5UKHF0X2NhbnBsYXkpCitFVkVOVChxdF9j
YW5wbGF5dGhyb3VnaCkKKworKiogVGVzdCB0byBtYWtlIHN1cmUgPHZpZGVvPiBlbGVtZW50IGlz
IGluIHRoZSBzaGFkb3cgRE9NLgorc2hhZG93RWxlbWVudCA9IGludGVybmFscy5zaGFkb3dSb290
KGVtYmVkKS5maXJzdENoaWxkCitQQVNTIHNoYWRvd0VsZW1lbnQudGFnTmFtZSBpcyAiVklERU8i
CitQQVNTIGludGVybmFscy5zaGFkb3dQc2V1ZG9JZChzaGFkb3dFbGVtZW50KSBpcyAiLXdlYmtp
dC1wbHVnaW4tcmVwbGFjZW1lbnQiCisKKyoqIFRlc3QgZm9yIHRoZSBwcmVzZW5jZSBvZiBvdmVy
cmlkZGVuIG1ldGhvZHMuCitQQVNTIGVtYmVkLlNldFVSTCBpcyBhIGZ1bmN0aW9uLgorUEFTUyBl
bWJlZC5HZXRVUkwgaXMgYSBmdW5jdGlvbi4KK1BBU1MgZW1iZWQuUGxheSBpcyBhIGZ1bmN0aW9u
LgorUEFTUyBlbWJlZC5TdG9wIGlzIGEgZnVuY3Rpb24uCitQQVNTIGVtYmVkLkdldFJhdGUgaXMg
YSBmdW5jdGlvbi4KK1BBU1MgZW1iZWQuU2V0UmF0ZSBpcyBhIGZ1bmN0aW9uLgorUEFTUyBlbWJl
ZC5Jc0Z1bGxTY3JlZW4gaXMgYSBmdW5jdGlvbi4KK1BBU1MgZW1iZWQuRXhpdEZ1bGxTY3JlZW4g
aXMgYSBmdW5jdGlvbi4KK1BBU1MgZW1iZWQuR2V0UGx1Z2luU3RhdHVzIGlzIGEgZnVuY3Rpb24u
CitQQVNTIGVtYmVkLkdldFRpbWUgaXMgYSBmdW5jdGlvbi4KK1BBU1MgZW1iZWQuU2V0VGltZSBp
cyBhIGZ1bmN0aW9uLgorUEFTUyBlbWJlZC5TZWVrVG9EYXRlIGlzIGEgZnVuY3Rpb24uCitQQVNT
IGVtYmVkLkdldERhdGUgaXMgYSBmdW5jdGlvbi4KK1BBU1MgZW1iZWQuR2V0RHVyYXRpb24gaXMg
YSBmdW5jdGlvbi4KK1BBU1MgZW1iZWQuR2V0VGltZVNjYWxlIGlzIGEgZnVuY3Rpb24uCitQQVNT
IGVtYmVkLkdldE1heFRpbWVMb2FkZWQgaXMgYSBmdW5jdGlvbi4KK1BBU1MgZW1iZWQuR2V0TWF4
Qnl0ZXNMb2FkZWQgaXMgYSBmdW5jdGlvbi4KK1BBU1MgZW1iZWQuR2V0TW92aWVTaXplIGlzIGEg
ZnVuY3Rpb24uCitQQVNTIGVtYmVkLkdldFRpbWVkTWV0YWRhdGFVcGRhdGVzIGlzIGEgZnVuY3Rp
b24uCitQQVNTIGVtYmVkLkdldEFjY2Vzc0xvZyBpcyBhIGZ1bmN0aW9uLgorUEFTUyBlbWJlZC5H
ZXRFcnJvckxvZyBpcyBhIGZ1bmN0aW9uLgorCisqKiBUZXN0IG92ZXJyaWRkZW4gbWV0aG9kcy4K
K1BBU1MgZW1iZWQuR2V0VVJMKCkuaW5kZXhPZigncmVzb3VyY2VzL29yYW5nZS5tb3YnKSAhPSAt
MSBpcyB0cnVlCitQQVNTIGVtYmVkLkdldER1cmF0aW9uKCkgaXMgMzAwMDAwCitQQVNTIGVtYmVk
LkdldE1vdmllU2l6ZSgpIGlzIDI0OTYyCitQQVNTIGVtYmVkLkdldE1heFRpbWVMb2FkZWQoKSBp
cyAzMDAwMDAKK1BBU1MgZW1iZWQuR2V0TWF4Qnl0ZXNMb2FkZWQoKSBpcyAyNDk2MgorUEFTUyBl
bWJlZC5HZXRNb3ZpZVNpemUoKSBpcyAyNDk2MgorUEFTUyBlbWJlZC5HZXRQbHVnaW5TdGF0dXMo
KSBpcyAiUGxheWFibGUiCitQQVNTIG5ldyBEYXRlKGVtYmVkLkdldERhdGUoKSkgLSBuZXcgRGF0
ZSgpIGlzIHdpdGhpbiAxMDAgb2YgMAorZW1iZWQuU2V0VGltZShlbWJlZC5HZXRUaW1lU2NhbGUo
KSAqIDIpCisKK1BBU1MgZW1iZWQuR2V0VGltZSgpIGlzIDYwMDAwCitlbWJlZC5QbGF5KCkKKwor
RVZFTlQocXRfcGxheSkKK1BBU1MgZW1iZWQuR2V0UmF0ZSgpIGlzIDEKK2VtYmVkLlN0b3AoKQor
CitFVkVOVChxdF9wYXVzZSkKK1BBU1MgZW1iZWQuR2V0UmF0ZSgpIGlzIDAKKworZW1iZWQuU2V0
VVJMKCcnKQorRVZFTlQocXRfYmVnaW4pCitFVkVOVChxdF9lcnJvcikKK1BBU1MgZW1iZWQuR2V0
VVJMKCkgaXMgIiIKK1BBU1MgZW1iZWQuR2V0UGx1Z2luU3RhdHVzKCkgaXMgIkVycm9yIgorCitF
TkQgVEVTVC4KKwpJbmRleDogTGF5b3V0VGVzdHMvcGx1Z2lucy9xdWlja3RpbWUtcGx1Z2luLXJl
cGxhY2VtZW50Lmh0bWwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvcGx1Z2lucy9xdWlja3Rp
bWUtcGx1Z2luLXJlcGxhY2VtZW50Lmh0bWwJKHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9w
bHVnaW5zL3F1aWNrdGltZS1wbHVnaW4tcmVwbGFjZW1lbnQuaHRtbAkod29ya2luZyBjb3B5KQpA
QCAtMCwwICsxLDEyNCBAQAorPCFET0NUWVBFIGh0bWw+Cis8aHRtbD4KKyAgICA8aGVhZD4KKyAg
ICAgICAgPHNjcmlwdCBzcmM9Ii4uL3Jlc291cmNlcy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+
CisgICAgICAgIDxzY3JpcHQ+CisgICAgICAgICAgICB2YXIgZW1iZWQ7CisgICAgICAgICAgICB2
YXIgc3JjID0gInJlc291cmNlcy9vcmFuZ2UubW92IjsKKworICAgICAgICAgICAgZnVuY3Rpb24g
bG9nRXZlbnQoZXZlbnQpCisgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgZGVidWcoIjxp
PkVWRU5UKCIgKyBldmVudC50eXBlICsgIik8L2k+Iik7CisgICAgICAgICAgICB9CisgICAgICAg
ICAgICAKKyAgICAgICAgICAgIGZ1bmN0aW9uIHNlZWtlZCgpCisgICAgICAgICAgICB7CisgICAg
ICAgICAgICAgICAgZGVidWcoIiIpOworICAgICAgICAgICAgICAgIHNob3VsZEV2YWx1YXRlVG8o
ImVtYmVkLkdldFRpbWUoKSIsIGVtYmVkLkdldFRpbWVTY2FsZSgpICogMik7CisgICAgICAgICAg
ICAgICAgZXZhbEFuZExvZygiZW1iZWQuUGxheSgpIik7CisgICAgICAgICAgICB9CisKKyAgICAg
ICAgICAgIGZ1bmN0aW9uIHBsYXlpbmcoZXZlbnQpCisgICAgICAgICAgICB7CisgICAgICAgICAg
ICAgICAgZGVidWcoIiIpOworICAgICAgICAgICAgICAgIGxvZ0V2ZW50KGV2ZW50KTsKKyAgICAg
ICAgICAgICAgICBzaG91bGRFdmFsdWF0ZVRvKCJlbWJlZC5HZXRSYXRlKCkiLCAxKTsKKyAgICAg
ICAgICAgICAgICBldmFsQW5kTG9nKCJlbWJlZC5TdG9wKCkiKTsKKyAgICAgICAgICAgIH0KKyAg
ICAgICAgICAgIAorICAgICAgICAgICAgZnVuY3Rpb24gcGF1c2VkKGV2ZW50KQorICAgICAgICAg
ICAgeworICAgICAgICAgICAgICAgIGRlYnVnKCIiKTsKKyAgICAgICAgICAgICAgICBsb2dFdmVu
dChldmVudCkKKyAgICAgICAgICAgICAgICBzaG91bGRFdmFsdWF0ZVRvKCJlbWJlZC5HZXRSYXRl
KCkiLCAwKTsKKworICAgICAgICAgICAgICAgIGRlYnVnKCIiKTsKKyAgICAgICAgICAgICAgICBl
dmFsQW5kTG9nKCJlbWJlZC5TZXRVUkwoJycpIik7CisgICAgICAgICAgICB9CisgICAgICAgICAg
ICAKKyAgICAgICAgICAgIGZ1bmN0aW9uIGVycm9yKGV2ZW50KQorICAgICAgICAgICAgeworICAg
ICAgICAgICAgICAgIGxvZ0V2ZW50KGV2ZW50KQorICAgICAgICAgICAgICAgIHNob3VsZEJlRXF1
YWxUb1N0cmluZygiZW1iZWQuR2V0VVJMKCkiLCAiIik7CisgICAgICAgICAgICAgICAgc2hvdWxk
QmVFcXVhbFRvU3RyaW5nKCJlbWJlZC5HZXRQbHVnaW5TdGF0dXMoKSIsICJFcnJvciIpOworICAg
ICAgICAgICAgICAgIGRlYnVnKCI8YnI+RU5EIFRFU1QuIik7CisgICAgICAgICAgICAgICAgaWYg
KHdpbmRvdy50ZXN0UnVubmVyKQorICAgICAgICAgICAgICAgICAgICB0ZXN0UnVubmVyLm5vdGlm
eURvbmUoKTsKKyAgICAgICAgICAgIH0KKyAgICAgICAgICAgIAorICAgICAgICAgICAgZnVuY3Rp
b24gdGVzdChldmVudCkKKyAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICBsb2dFdmVudChl
dmVudCkKKworICAgICAgICAgICAgICAgIGlmICh3aW5kb3cuaW50ZXJuYWxzKSB7CisgICAgICAg
ICAgICAgICAgICAgIGRlYnVnKCI8YnI+KiogVGVzdCB0byBtYWtlIHN1cmUgJmx0O3ZpZGVvJmd0
OyBlbGVtZW50IGlzIGluIHRoZSBzaGFkb3cgRE9NLiIpOworICAgICAgICAgICAgICAgICAgICBl
dmFsQW5kTG9nKCJzaGFkb3dFbGVtZW50ID0gaW50ZXJuYWxzLnNoYWRvd1Jvb3QoZW1iZWQpLmZp
cnN0Q2hpbGQiKTsKKyAgICAgICAgICAgICAgICAgICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJz
aGFkb3dFbGVtZW50LnRhZ05hbWUiLCAiVklERU8iKTsKKyAgICAgICAgICAgICAgICAgICAgc2hv
dWxkQmVFcXVhbFRvU3RyaW5nKCJpbnRlcm5hbHMuc2hhZG93UHNldWRvSWQoc2hhZG93RWxlbWVu
dCkiLCAiLXdlYmtpdC1wbHVnaW4tcmVwbGFjZW1lbnQiKTsKKyAgICAgICAgICAgICAgICB9IGVs
c2UgeworICAgICAgICAgICAgICAgICAgICBkZWJ1ZygiIik7CisgICAgICAgICAgICAgICAgICAg
IHRlc3RGYWlsZWQoIlRoaXMgdGVzdCBtdXN0IGJlIHJ1biBpbiBEUlQuIik7CisgICAgICAgICAg
ICAgICAgICAgIGRlYnVnKCIiKTsKKyAgICAgICAgICAgICAgICB9CisKKyAgICAgICAgICAgICAg
ICBkZWJ1ZygiPGJyPioqIFRlc3QgZm9yIHRoZSBwcmVzZW5jZSBvZiBvdmVycmlkZGVuIG1ldGhv
ZHMuIik7CisgICAgICAgICAgICAgICAgdmFyIG1ldGhvZHMgPSBbICJTZXRVUkwiLCAiR2V0VVJM
IiwgIlBsYXkiLCAiU3RvcCIsICJHZXRSYXRlIiwgIlNldFJhdGUiLCAiSXNGdWxsU2NyZWVuIiwg
CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJFeGl0RnVsbFNjcmVlbiIsICJHZXRQ
bHVnaW5TdGF0dXMiLCAiR2V0VGltZSIsICJTZXRUaW1lIiwgIlNlZWtUb0RhdGUiLCAiR2V0RGF0
ZSIsIAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiR2V0RHVyYXRpb24iLCAiR2V0
VGltZVNjYWxlIiwgIkdldE1heFRpbWVMb2FkZWQiLCAiR2V0TWF4Qnl0ZXNMb2FkZWQiLCAKKyAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIkdldE1vdmllU2l6ZSIsICJHZXRUaW1lZE1l
dGFkYXRhVXBkYXRlcyIsICJHZXRBY2Nlc3NMb2ciLCAiR2V0RXJyb3JMb2ciCisgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICBdOworICAgICAgICAgICAgICAgIGZvciAoaSA9IDA7IGkgPCBt
ZXRob2RzLmxlbmd0aDsgKytpKSB7CisgICAgICAgICAgICAgICAgICAgIHZhciB0eXBlID0gdHlw
ZW9mIGVtYmVkW21ldGhvZHNbaV1dOworICAgICAgICAgICAgICAgICAgICBpZiAodHlwZSA9PSAi
ZnVuY3Rpb24iKQorICAgICAgICAgICAgICAgICAgICAgICAgdGVzdFBhc3NlZCgiZW1iZWQuIiAr
IG1ldGhvZHNbaV0gKyAiIGlzIGEgZnVuY3Rpb24uIik7CisgICAgICAgICAgICAgICAgICAgIGVs
c2UKKyAgICAgICAgICAgICAgICAgICAgICAgIHRlc3RGYWlsZWQoImVtYmVkLiIgKyBtZXRob2Rz
W2ldICsgIiBzaG91bGQgYmUgYSBmdW5jdGlvbiBidXQgaXMgXCIiICsgdHlwZSArICJcIi4iKTsK
KyAgICAgICAgICAgICAgICB9CisKKyAgICAgICAgICAgICAgICBkZWJ1ZygiPGJyPioqIFRlc3Qg
b3ZlcnJpZGRlbiBtZXRob2RzLiIpOworICAgICAgICAgICAgICAgIHNob3VsZEJlVHJ1ZSgiZW1i
ZWQuR2V0VVJMKCkuaW5kZXhPZignIiArIHNyYyArICInKSAhPSAtMSIpOworICAgICAgICAgICAg
ICAgIHNob3VsZEV2YWx1YXRlVG8oImVtYmVkLkdldER1cmF0aW9uKCkiLCAzMDAwMDApOworICAg
ICAgICAgICAgICAgIHNob3VsZEV2YWx1YXRlVG8oImVtYmVkLkdldE1vdmllU2l6ZSgpIiwgMjQ5
NjIpOworICAgICAgICAgICAgICAgIHNob3VsZEV2YWx1YXRlVG8oImVtYmVkLkdldE1heFRpbWVM
b2FkZWQoKSIsIDMwMDAwMCk7CisgICAgICAgICAgICAgICAgc2hvdWxkRXZhbHVhdGVUbygiZW1i
ZWQuR2V0TWF4Qnl0ZXNMb2FkZWQoKSIsIDI0OTYyKTsKKyAgICAgICAgICAgICAgICBzaG91bGRF
dmFsdWF0ZVRvKCJlbWJlZC5HZXRNb3ZpZVNpemUoKSIsIDI0OTYyKTsKKyAgICAgICAgICAgICAg
ICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoImVtYmVkLkdldFBsdWdpblN0YXR1cygpIiwgIlBsYXlh
YmxlIik7CisgICAgICAgICAgICAgICAgCisgICAgICAgICAgICAgICAgLy8gIkdldERhdGUoKSIg
c2hvdWxkIHJldHVybiB0aGUgY3VycmVudCBkYXRlLCBjbGVhciBzZWNvbmRzIGFuZCBtaWxsaXNl
Y29uZHMgCisgICAgICAgICAgICAgICAgdmFyIG5vdyA9IG5ldyBEYXRlKCk7CisgICAgICAgICAg
ICAgICAgc2hvdWxkQmVDbG9zZVRvKCJuZXcgRGF0ZShlbWJlZC5HZXREYXRlKCkpIC0gbmV3IERh
dGUoKSIsIDAsIDEwMCk7CisKKyAgICAgICAgICAgICAgICBldmFsQW5kTG9nKCJlbWJlZC5TZXRU
aW1lKGVtYmVkLkdldFRpbWVTY2FsZSgpICogMikiKTsKKyAgICAgICAgICAgICAgICBzZXRUaW1l
b3V0KHNlZWtlZCwgNTAwKTsKKyAgICAgICAgICAgIH0KKyAgICAgICAgICAgIAorICAgICAgICAg
ICAgZnVuY3Rpb24gc2V0dXAoKQorICAgICAgICAgICAgeworICAgICAgICAgICAgICAgIGlmICh3
aW5kb3cudGVzdFJ1bm5lcikgeworICAgICAgICAgICAgICAgICAgICB3aW5kb3cudGVzdFJ1bm5l
ci53YWl0VW50aWxEb25lKCk7CisgICAgICAgICAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVubmVy
LmR1bXBBc1RleHQoKQorICAgICAgICAgICAgICAgICAgICB3aW5kb3cuaW50ZXJuYWxzLnNldHRp
bmdzLnNldFBsdWdpblJlcGxhY2VtZW50RW5hYmxlZCh0cnVlKTsKKyAgICAgICAgICAgICAgICB9
CisgICAgICAgICAgICAgICAgZGl2ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInBhcmVudCIp
OworICAgICAgICAgICAgICAgIGRpdi5pbm5lckhUTUwgPSAnPGVtYmVkIHNyYz0iJyArIHNyYyAr
ICciIHdpZHRoPSI2NDAiIGhlaWdodD0iNDgwIiBwb3N0ZG9tZXZlbnRzPXRydWU+JzsKKyAgICAg
ICAgICAgICAgICAKKyAgICAgICAgICAgICAgICB2YXIgZXZlbnRzID0gWyAicXRfYmVnaW4iLCAi
cXRfdmFsaWRhdGVkIiwgInF0X2VudGVyZnVsbHNjcmVlbiIsICJxdF9leGl0ZnVsbHNjcmVlbiIs
IAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAicXRfbG9hZGVkbWV0YWRhIiwgInF0
X2NhbnBsYXkiLCAicXRfZW5kZWQiLCAicXRfdGltZWRtZXRhZGF0YXVwZGF0ZWQiIAorICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgXTsKKyAgICAgICAgICAgICAgICBlbWJlZCA9IGRpdi5m
aXJzdENoaWxkOworICAgICAgICAgICAgICAgIGZvciAoaSA9IDA7IGkgPCBldmVudHMubGVuZ3Ro
OyArK2kpCisgICAgICAgICAgICAgICAgICAgIGVtYmVkLmFkZEV2ZW50TGlzdGVuZXIoZXZlbnRz
W2ldLCBsb2dFdmVudCwgdHJ1ZSk7CisgICAgICAgICAgICAgICAgZW1iZWQuYWRkRXZlbnRMaXN0
ZW5lcigicXRfY2FucGxheXRocm91Z2giLCB0ZXN0LCB0cnVlKTsKKyAgICAgICAgICAgICAgICBl
bWJlZC5hZGRFdmVudExpc3RlbmVyKCJxdF9wbGF5IiwgcGxheWluZywgdHJ1ZSk7CisgICAgICAg
ICAgICAgICAgZW1iZWQuYWRkRXZlbnRMaXN0ZW5lcigicXRfcGF1c2UiLCBwYXVzZWQsIHRydWUp
OworICAgICAgICAgICAgICAgIGVtYmVkLmFkZEV2ZW50TGlzdGVuZXIoInF0X2Vycm9yIiwgZXJy
b3IsIHRydWUpOworICAgICAgICAgICAgfQorICAgICAgICA8L3NjcmlwdD4KKyAgICA8L2hlYWQ+
CisKKyAgICA8Ym9keSBvbmxvYWQ9InNldHVwKCkiPgorICAgICAgICA8ZGl2IGlkPXBhcmVudD48
L2Rpdj4KKyAgICAgICAgPHA+CisgICAgICAgIDxkaXYgaWQ9Y29uc29sZT48L2Rpdj4KKyAgICA8
L2JvZHk+Cis8L2h0bWw+CkluZGV4OiBMYXlvdXRUZXN0cy9wbHVnaW5zL3Jlc291cmNlcy9vcmFu
Z2UubW92Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KQ2Fubm90IGRpc3BsYXk6IGZpbGUgbWFya2VkIGFzIGEgYmluYXJ5
IHR5cGUuCnN2bjptaW1lLXR5cGUgPSBhcHBsaWNhdGlvbi9vY3RldC1zdHJlYW0KCkFBQUFJR1ow
ZVhCeGRDQWdJQVVEQUhGMElDQUFBQUFBQUFBQUFBQUFBQUFBQUE3VGJXOXZkZ0FBQUd4dGRtaGtB
QUFBQU02NWVtVE8KdVhwa0FBQUNXQUFBRjNBQUFRQUFBUUFBQUFBQUFBQUFBQUFBQUFGSzl3QUFB
QUFBQUFBQUFBQUFBQUFCU3FzQUFBQUFBQUFBQUFBQQpBQUJBQUFBQUFBQUFBQUFBQUFBQUFBQUFB
QUFBQUFBQUFBQUFBQUFBQUFBQUFnQUFDL0YwY21GckFBQUFYSFJyYUdRQUFBQVB6cmw1CldzNjVl
bVFBQUFBQkFBQUFBQUFBRjNBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFFQUFBQUFBQUFBQUFBQUFB
QUFBQUFCQUFBQUFBQUEKQUFBQUFBQUFBQUJBQUFBQUFxc0FBQUhnQUFBQUFBQkVkR0Z3ZEFBQUFC
UmpiR1ZtQUFBQUFBS3JBQUFCNEFBQUFBQUFGSEJ5YjJZQQpBQUFBQXFzQUFBSGdBQUFBQUFBVVpX
NXZaZ0FBQUFBQ3F3QUFBZUFBQUFBQUFDUmxaSFJ6QUFBQUhHVnNjM1FBQUFBQUFBQUFBUUFBCkYz
QUFBQUFBQUFFQUFBQUFDeGx0WkdsaEFBQUFJRzFrYUdRQUFBQUF6cmw2Wk02NWVtUUFBQUpZQUFB
WG1BQUFBQUFBQUFBNmFHUnMKY2dBQUFBQnRhR3h5ZG1sa1pXRndjR3dRQUFBQUFBRUE1UmxCY0hC
c1pTQldhV1JsYnlCTlpXUnBZU0JJWVc1a2JHVnlBQUFLdDIxcApibVlBQUFBVWRtMW9aQUFBQUFF
QVFJQUFnQUNBQUFBQUFEbG9aR3h5QUFBQUFHUm9iSEpoYkdsellYQndiQkFBQUFFQUFRRDlHRUZ3
CmNHeGxJRUZzYVdGeklFUmhkR0VnU0dGdVpHeGxjZ0FBQUNSa2FXNW1BQUFBSEdSeVpXWUFBQUFB
QUFBQUFRQUFBQXhoYkdsekFBQUEKQVFBQUNqNXpkR0pzQUFBQXAzTjBjMlFBQUFBQUFBQUFBUUFB
QUpkaGRtTXhBQUFBQUFBQUFBRUFBUUFCWVhCd2JBQUFCQUFBQUFRQQpBcXNCNEFCSUFBQUFTQUFB
QUFBQUFBQUJCVWd1TWpZMEFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUdQLy9B
QUFBCkVtTnZiSEp1WTJ4akFBWUFBUUFHQUFBQUsyRjJZME1CVFVBVy93RUFGQ2ROUUJhcEdCV0h2
ZmdEVUdBUVl3clh2ZkFRQVFBRUtONEoKeUFBQUFBQUFBQUFZYzNSMGN3QUFBQUFBQUFBQkFBQUFs
d0FBQUNnQUFBU1lZM1IwY3dBQUFBQUFBQUNSQUFBQUFRQUFBQUFBQUFBQgpBQUFBS0FBQUFBSC8v
Ly9ZQUFBQUFRQUFBQ2dBQUFBQi8vLy8yQUFBQUFFQUFBQW9BQUFBQWYvLy85Z0FBQUFCQUFBQUtB
QUFBQUgvCi8vL1lBQUFBQVFBQUFDZ0FBQUFCLy8vLzJBQUFBQUVBQUFBb0FBQUFBZi8vLzlnQUFB
QUJBQUFBS0FBQUFBSC8vLy9ZQUFBQUFRQUEKQUNnQUFBQUIvLy8vMkFBQUFBRUFBQUFvQUFBQUFm
Ly8vOWdBQUFBQkFBQUFLQUFBQUFILy8vL1lBQUFBQVFBQUFDZ0FBQUFCLy8vLwoyQUFBQUFJQUFB
QUFBQUFBQVFBQUFDZ0FBQUFCLy8vLzJBQUFBQUVBQUFBb0FBQUFBZi8vLzlnQUFBQUJBQUFBS0FB
QUFBSC8vLy9ZCkFBQUFBUUFBQUNnQUFBQUIvLy8vMkFBQUFBRUFBQUFvQUFBQUFmLy8vOWdBQUFB
QkFBQUFLQUFBQUFILy8vL1lBQUFBQVFBQUFDZ0EKQUFBQi8vLy8yQUFBQUFFQUFBQW9BQUFBQWYv
Ly85Z0FBQUFCQUFBQUtBQUFBQUgvLy8vWUFBQUFBUUFBQUNnQUFBQUIvLy8vMkFBQQpBQUVBQUFB
b0FBQUFBZi8vLzlnQUFBQUNBQUFBQUFBQUFBRUFBQUFvQUFBQUFmLy8vOWdBQUFBQkFBQUFLQUFB
QUFILy8vL1lBQUFBCkFRQUFBQ2dBQUFBQi8vLy8yQUFBQUFFQUFBQW9BQUFBQWYvLy85Z0FBQUFC
QUFBQUtBQUFBQUgvLy8vWUFBQUFBUUFBQUNnQUFBQUIKLy8vLzJBQUFBQUVBQUFBb0FBQUFBZi8v
LzlnQUFBQUJBQUFBS0FBQUFBSC8vLy9ZQUFBQUFRQUFBQ2dBQUFBQi8vLy8yQUFBQUFFQQpBQUFv
QUFBQUFmLy8vOWdBQUFBQkFBQUFLQUFBQUFILy8vL1lBQUFBQWdBQUFBQUFBQUFCQUFBQUtBQUFB
QUgvLy8vWUFBQUFBUUFBCkFDZ0FBQUFCLy8vLzJBQUFBQUVBQUFBb0FBQUFBZi8vLzlnQUFBQUJB
QUFBS0FBQUFBSC8vLy9ZQUFBQUFRQUFBQ2dBQUFBQi8vLy8KMkFBQUFBRUFBQUFvQUFBQUFmLy8v
OWdBQUFBQkFBQUFLQUFBQUFILy8vL1lBQUFBQVFBQUFDZ0FBQUFCLy8vLzJBQUFBQUVBQUFBbwpB
QUFBQWYvLy85Z0FBQUFCQUFBQUtBQUFBQUgvLy8vWUFBQUFBUUFBQUNnQUFBQUIvLy8vMkFBQUFB
SUFBQUFBQUFBQUFRQUFBQ2dBCkFBQUIvLy8vMkFBQUFBRUFBQUFvQUFBQUFmLy8vOWdBQUFBQkFB
QUFLQUFBQUFILy8vL1lBQUFBQVFBQUFDZ0FBQUFCLy8vLzJBQUEKQUFFQUFBQW9BQUFBQWYvLy85
Z0FBQUFCQUFBQUtBQUFBQUgvLy8vWUFBQUFBUUFBQUNnQUFBQUIvLy8vMkFBQUFBRUFBQUFvQUFB
QQpBZi8vLzlnQUFBQUJBQUFBS0FBQUFBSC8vLy9ZQUFBQUFRQUFBQ2dBQUFBQi8vLy8yQUFBQUFF
QUFBQW9BQUFBQWYvLy85Z0FBQUFDCkFBQUFBQUFBQUFFQUFBQW9BQUFBQWYvLy85Z0FBQUFCQUFB
QUtBQUFBQUgvLy8vWUFBQUFBUUFBQUNnQUFBQUIvLy8vMkFBQUFBRUEKQUFBb0FBQUFBZi8vLzln
QUFBQUJBQUFBS0FBQUFBSC8vLy9ZQUFBQUFRQUFBQ2dBQUFBQi8vLy8yQUFBQUFFQUFBQW9BQUFB
QWYvLwovOWdBQUFBQkFBQUFLQUFBQUFILy8vL1lBQUFBQVFBQUFDZ0FBQUFCLy8vLzJBQUFBQUVB
QUFBb0FBQUFBZi8vLzlnQUFBQUJBQUFBCktBQUFBQUgvLy8vWUFBQUFBZ0FBQUFBQUFBQUJBQUFB
S0FBQUFBSC8vLy9ZQUFBQUFRQUFBQ2dBQUFBQi8vLy8yQUFBQUFFQUFBQW8KQUFBQUFmLy8vOWdB
QUFBZ1kzTnNad0FBQUFBQUFBQW8vLy8vMkFBQUFDZ0FBQUFBQUFBWG1BQUFBQ3h6ZEhOekFBQUFB
QUFBQUFjQQpBQUFCQUFBQUdRQUFBREVBQUFCSkFBQUFZUUFBQUhrQUFBQ1JBQUFBbzNOa2RIQUFB
QUFBQUVBSVFBaEFDRUFJUUFoQUNFQUlRQWhBCkNFQUlRQWdJQUVBSVFBaEFDRUFJUUFoQUNFQUlR
QWhBQ0VBSVFBZ0lBRUFJUUFoQUNFQUlRQWhBQ0VBSVFBaEFDRUFJUUFnSUFFQUkKUUFoQUNFQUlR
QWhBQ0VBSVFBaEFDRUFJUUFnSUFFQUlRQWhBQ0VBSVFBaEFDRUFJUUFoQUNFQUlRQWdJQUVBSVFB
aEFDRUFJUUFoQQpDRUFJUUFoQUNFQUlRQWdJQUVBSVFBaEFDQUFBQU1SemRITmpBQUFBQUFBQUFB
OEFBQUFCQUFBQUJBQUFBQUVBQUFBR0FBQUFBUUFBCkFBRUFBQUFIQUFBQUJBQUFBQUVBQUFBTUFB
QUFBUUFBQUFFQUFBQU5BQUFBQkFBQUFBRUFBQUFTQUFBQUFRQUFBQUVBQUFBVEFBQUEKQkFBQUFB
RUFBQUFZQUFBQUFRQUFBQUVBQUFBWkFBQUFCQUFBQUFFQUFBQWVBQUFBQVFBQUFBRUFBQUFmQUFB
QUJBQUFBQUVBQUFBawpBQUFBQVFBQUFBRUFBQUFsQUFBQUJBQUFBQUVBQUFBcUFBQUFBUUFBQUFF
QUFBQXJBQUFBQkFBQUFBRUFBQUp3YzNSemVnQUFBQUFBCkFBQUFBQUFBbHdBQUJtVUFBQUJmQUFB
QVhnQUFBRjhBQUFCZUFBQUFYd0FBQUY0QUFBQmZBQUFBWGdBQUFGOEFBQUJlQUFBQVh3QUEKQUY0
QUFBQmZBQUFBWGdBQUFGOEFBQUJlQUFBQVh3QUFBRjRBQUFCZkFBQUFYZ0FBQUY4QUFBQmVBQUFB
WFFBQUJsVUFBQUJmQUFBQQpYZ0FBQUY4QUFBQmVBQUFBWHdBQUFGNEFBQUJmQUFBQVhnQUFBRjhB
QUFCZUFBQUFYd0FBQUY0QUFBQmZBQUFBWGdBQUFGOEFBQUJlCkFBQUFYd0FBQUY0QUFBQmZBQUFB
WGdBQUFGOEFBQUJlQUFBQVhRQUFCbFVBQUFCZkFBQUFYZ0FBQUY4QUFBQmVBQUFBWHdBQUFGNEEK
QUFCZkFBQUFYZ0FBQUY4QUFBQmVBQUFBWHdBQUFGNEFBQUJmQUFBQVhnQUFBRjhBQUFCZUFBQUFY
d0FBQUY0QUFBQmZBQUFBWGdBQQpBRjhBQUFCZUFBQUFYUUFBQmxVQUFBQmZBQUFBWGdBQUFGOEFB
QUJlQUFBQVh3QUFBRjRBQUFCZkFBQUFYZ0FBQUY4QUFBQmVBQUFBClh3QUFBRjRBQUFCZkFBQUFY
Z0FBQUY4QUFBQmVBQUFBWHdBQUFGNEFBQUJmQUFBQVhnQUFBRjhBQUFCZUFBQUFYUUFBQmxVQUFB
QmYKQUFBQVhnQUFBRjhBQUFCZUFBQUFYd0FBQUY0QUFBQmZBQUFBWGdBQUFGOEFBQUJlQUFBQVh3
QUFBRjRBQUFCZkFBQUFYZ0FBQUY4QQpBQUJlQUFBQVh3QUFBRjRBQUFCZkFBQUFYZ0FBQUY4QUFB
QmVBQUFBWFFBQUJsVUFBQUJmQUFBQVhnQUFBRjhBQUFCZUFBQUFYd0FBCkFGNEFBQUJmQUFBQVhn
QUFBRjhBQUFCZUFBQUFYd0FBQUY0QUFBQmZBQUFBWGdBQUFGOEFBQUJlQUFBQVh3QUFBRjRBQUFC
ZkFBQUEKWGdBQUFGOEFBQUJlQUFBQVhRQUFCbFVBQUFCZkFBQUFYZ0FBQUY4QUFBQmVBQUFBWHdB
QUFGNEFBQUM4YzNSamJ3QUFBQUFBQUFBcgpBQUFQR3dBQUZwd0FBQmdXQUFBWmtBQUFHd29BQUJ5
RUFBQWM0Z0FBSkZFQUFDWExBQUFuUlFBQUtMOEFBQ281QUFBcW1BQUFMQklBCkFET0JBQUEwK3dB
QU5uVUFBRGZ2QUFBNFRRQUFPY2NBQUR0QkFBQkNzQUFBUkNvQUFFV2tBQUJHQXdBQVIzMEFBRWoz
QUFCS2J3QUEKVWVBQUFGTmFBQUJUdUFBQVZUSUFBRmFzQUFCWUpnQUFYNVVBQUdFUEFBQmhiZ0FB
WXVnQUFHUmlBQUJsM0FBQVoxWUFBRzdGQUFCdgpJd0FBQUF4MVpIUmhBQUFBQUFBQUFrUnRaWFJo
QUFBQUlHaGtiSElBQUFBQUFBQUFBRzFrZEdFQUFBQUFBQUFBQUFBQUFBQUFBQUU0CmEyVjVjd0FB
QUFBQUFBQUdBQUFBT20xa2RHRmpiMjB1WVhCd2JHVXVjWFZwWTJ0MGFXMWxMbkJzWVhsbGNpNXRi
M1pwWlM1MmFYTjEKWVd3dVluSnBaMmgwYm1WemN3QUFBRFZ0WkhSaFkyOXRMbUZ3Y0d4bExuRjFh
V05yZEdsdFpTNXdiR0Y1WlhJdWJXOTJhV1V1ZG1segpkV0ZzTG1OdmJHOXlBQUFBTkcxa2RHRmpi
MjB1WVhCd2JHVXVjWFZwWTJ0MGFXMWxMbkJzWVhsbGNpNXRiM1pwWlM1MmFYTjFZV3d1CmRHbHVk
QUFBQURodFpIUmhZMjl0TG1Gd2NHeGxMbkYxYVdOcmRHbHRaUzV3YkdGNVpYSXViVzkyYVdVdWRt
bHpkV0ZzTG1OdmJuUnkKWVhOMEFBQUFLbTFrZEdGamIyMHVZWEJ3YkdVdWNYVnBZMnQwYVcxbExu
QnNZWGxsY2k1MlpYSnphVzl1QUFBQUkyMWtkR0ZqYjIwdQpZWEJ3YkdVdWNYVnBZMnQwYVcxbExu
Wmxjbk5wYjI0QUFBRGthV3h6ZEFBQUFCd0FBQUFCQUFBQUZHUmhkR0VBQUFBWEFBQUFBQUFBCkFB
QUFBQUFjQUFBQUFnQUFBQlJrWVhSaEFBQUFGd0FBQUFBL2dBQUFBQUFBSEFBQUFBTUFBQUFVWkdG
MFlRQUFBQmNBQUFBQUFBQUEKQUFBQUFCd0FBQUFFQUFBQUZHUmhkR0VBQUFBWEFBQUFBRCtBQUFB
QUFBQWxBQUFBQlFBQUFCMWtZWFJoQUFBQUFRQUFBQUEzTGpZdQpOaUFvTnk0MkxqWXBBQUFBUndB
QUFBWUFBQUEvWkdGMFlRQUFBQUVBQUFBQU55NDNMak1nS0RJNE1qWXBJREI0Tnpjek9EQXdNQ0Fv
ClRXRmpJRTlUSUZnc0lERXdMamtzSURFelFUVTVPQ2tBQUFBcWRXUjBZUUFBQUF4WFRFOURBQzBB
U2dBQUFBbFRaV3hQQUFBQUFBbEIKYkd4R0FBQUFBQUFBQUFBSVpuSmxaUUFBQUFoM2FXUmxBQUJo
bW0xa1lYUUFBQUFJZDJsa1pRQUFBQUJ0WkdGMEFBQUFEQVlBQjRDdgp5QUFBQXdCQWdBQUFBQlVH
QlJFRGgvUk96UXBMM0tHVU9zUFVteGNmQUlBQUFBRlBKYmdnSUNsZi8vZ3JnQWNSRVFDRXBRcmpE
QUFjClFZY0trQUFKWDREZ0FDUzRBQlNTSWtKc2hrWmd3NEFGZHMyeHYxS3J1R0hjdDk5OTk5OTk5
OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTkKOTk5OTk5OTkvK0gvaHdnQUZHSUkzSkVsaHVlemhOZjhB
d1RuWTRGQUFDRXlBQUlQZ2dBQWcvQUFDREhnQWI1dW1BQUlESGt3QUFnNgp2cFlBQWdOQUFDRHV4
QUJwSmFBQUVCSFdnQUNDNS81MHNBQVFFd0FCQmVZVXRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRk
ZGRkZGRkCmRkZGRkZGRkZGRNbFMxMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTEx
MTExMTB5VkxYWFhYWFhYWFhYWFhYWFhYWFgKWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhUSlV0ZGRk
ZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRNbFMxMTExMQoxMTExMTExMTEx
MTExMTExMTExMTExMTExMTExMTExMTExMTEweVlBQUFFZ0pRQ0J1Q0FnTFYvLytDS0tBQUlVbmpn
QUNjL0hBQUV4CjYrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrLy9EL3dX
RUFjQUFzQUtCQlZNL2lBQUNFdUFBSVBVUUFBUWYKZ0FCQmp3Y0FBUUdnQUJCM1lnNEFBZ05BQUNE
dXhCd0FCQVRBQUVGNWlEZ0FDQW1BQUlMekNscnJycnJycnJycnJycnJycnJycnJycgpycnJycnJy
cnJycnJycnJycnJycGtxV3V1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1
bVNwYTY2NjY2NjY2CjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NlpLbHJycnJycnJy
cnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnIKcnBrcVd1dXV1dXV1dXV1dXV1dXV1dXV1
dXV1dXV1dXV1dXV1dXV1dXV1dXV1dW1UQUFBQklTVUFRSzRJQ0F0WC8vNElvb0FBaFNlTwpBQUp6
OGNBQVRIcjc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3NzcvOFAvQllRQndB
Q3dBb0VGVXorSUFBSVM0CkFBZzlSQUFCQitBQUVHUEJ3QUJBYUFBRUhkaURnQUNBMEFBSU83RUhB
QUVCTUFBUVhtSU9BQUlDWUFBZ3ZNS1d1dXV1dXV1dXV1dXUKdXV1dXV1dXV1dXV1dXV1dXV1dXV1
dXV1dXV1dXVtU3BhNjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjZaSwps
cnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJwa3FXdXV1dXV1dXV1dXV1
dXV1dXV1dXV1dXV1dXV1dXV1CnV1dXV1dXV1dXV1bVNwYTY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2
NjY2NjY2NjY2NjY2NjY2NjY2Wk1BQUFBRWhKUUJnN2dnSUMxZi8KL2dpaWdBQ0ZKNDRBQW5QeHdB
Qk1ldnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnYvdy84RmhBSEFBTEFD
ZwpRVlRQNGdBQWhMZ0FDRDFFQUFFSDRBQVFZOEhBQUVCb0FBUWQySU9BQUlEUUFBZzdzUWNBQVFF
d0FCQmVZZzRBQWdKZ0FDQzh3cGE2CjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2
NjY2NjZaS2xycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnIKcnJycnJycnJwa3FXdXV1
dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXVtU3BhNjY2NjY2NjY2NjY2NjY2
NjY2Ngo2NjY2NjY2NjY2NjY2NjY2NjY2NjY2WktscnJycnJycnJycnJycnJycnJycnJycnJycnJy
cnJycnJycnJycnJycnJwa3dBQUFBWGNsCkFDQkxnZ0lDMWYvL2dpaWdBQ0ZKNDRBQW5QeHdBQk1l
dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnYvdy8KOEZoQUhBQUxBQ2dR
VlRQNGdBQWhMZ0FDRDFFQUFFSDRBQVFZOEhBQUVCb0FBUWQySU9BQUlEUUFBZzdzUWNBQVFFd0FC
QmVZZzRBQQpnSmdBQ0M4d3BhNjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2
NjZaS2xycnJycnJycnJycnJycnJycnJycnJyCnJycnJycnJycnJycnJycnJycnJwa3FXdXV1dXV1
dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXVtU3BhNjY2NjY2NjYKNjY2NjY2NjY2
NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2WklXd0FFWmtaR1pHUkdSa1gvZ0FHeU13RUxTaGZHV0Mv
d2xwQUM0QUZkTQpqWW55SFIyRHdBS1RScERicVJXY05TMTExMTExMTExMTExMTExMTExMTExMTEx
MTExMTExMTExMTExMTExMXdzeUFBSXlJekl6SWpJCmpNdi84QURxRUZic2lQSzI0emQ5NEIzZ0Fh
WlBrM3puM0FDZWFtbDMvcmNBQUFBVkJnVVJBNGYwVHMwS1M5eWhsRHJEMUpzWEh3Q0EKQUFBQUND
SGhDUUNsQUVEZ0FBQUFDaUVBZ2VFSkFMVUFRT0FBQUFBS0lRQkF1RUpBTFVBUU9BQUFBQW9oQUdE
NFFrQXRRQkE0QUFBQQpEQ0VBSUU0UWtBdFFEWThGY0FBQUFCVUdCUkVEaC9ST3pRcEwzS0dVT3NQ
VW14Y2ZBSUFBQUFBSUFhaUJZQkdnQ0J3QUFBQUtBUUNCCnFJRmdGYUFJSEFBQUFBb0JBRUNxSUZn
RmFBSUhBQUFBQ2dFQVlPb2dXQVZvQWdjQUFBQUxBUUFnU29nV0FWb0FnY0FBQUFBVkJnVVIKQTRm
MFRzMEtTOXlobERyRDFKc1hId0NBQUFBQUNDSGlFUUNsQUVEZ0FBQUFDaUVBZ2VJUkFMVUFRT0FB
QUFBS0lRQkF1SVJBTFVBUQpPQUFBQUFvaEFHRDRoRUF0UUJBNEFBQUFEQ0VBSUU0aEVBdFFEWThG
Y0FBQUFCVUdCUkVEaC9ST3pRcEwzS0dVT3NQVW14Y2ZBSUFBCkFBQUlBYWpEWUJHZ0NCd0FBQUFL
QVFDQnFNTmdGYUFJSEFBQUFBb0JBRUNxTU5nRmFBSUhBQUFBQ2dFQVlPb3cyQVZvQWdjQUFBQUwK
QVFBZ1NvdzJBVm9BZ2NBQUFBQVZCZ1VSQTRmMFRzMEtTOXlobERyRDFKc1hId0NBQUFBQUNDSGpH
UUNsQUVEZ0FBQUFDaUVBZ2VNWgpBTFVBUU9BQUFBQUtJUUJBdU1aQUxVQVFPQUFBQUFvaEFHRDR4
a0F0UUJBNEFBQUFEQ0VBSUU0eGtBdFFEWThGY0FBQUFCVUdCUkVECmgvUk96UXBMM0tHVU9zUFVt
eGNmQUlBQUFBQUlBYWtGWUJHZ0NCd0FBQUFLQVFDQnFRVmdGYUFJSEFBQUFBb0JBRUNxUVZnRmFB
SUgKQUFBQUNnRUFZT3BCV0FWb0FnY0FBQUFMQVFBZ1NwQldBVm9BZ2NBQUFBQVZCZ1VSQTRmMFRz
MEtTOXlobERyRDFKc1hId0NBQUFBQQpDQ0hrSVFDbEFFRGdBQUFBQ2lFQWdlUWhBTFVBUU9BQUFB
QUtJUUJBdVFoQUxVQVFPQUFBQUFvaEFHRDVDRUF0UUJBNEFBQUFEQ0VBCklFNUNFQXRRRFk4RmNB
QUFBQlVHQlJFRGgvUk96UXBMM0tHVU9zUFVteGNmQUlBQUFBQUlBYWxIWUJHZ0NCd0FBQUFLQVFD
QnFVZGcKRmFBSUhBQUFBQW9CQUVDcVVkZ0ZhQUlIQUFBQUNnRUFZT3BSMkFWb0FnY0FBQUFMQVFB
Z1NwUjJBVm9BZ2NBQUFBQVZCZ1VSQTRmMApUczBLUzl5aGxEckQxSnNYSHdDQUFBQUFDQ0hsS1FD
bEFFRGdBQUFBQ2lFQWdlVXBBTFVBUU9BQUFBQUtJUUJBdVVwQUxVQVFPQUFBCkFBb2hBR0Q1U2tB
dFFCQTRBQUFBRENFQUlFNVNrQXRRRFk4RmNBQUFBQlVHQlJFRGgvUk96UXBMM0tHVU9zUFVteGNm
QUlBQUFBQUkKQWFtSllCR2dDQndBQUFBS0FRQ0JxWWxnRmFBSUhBQUFBQW9CQUVDcVlsZ0ZhQUlI
QUFBQUNnRUFZT3BpV0FWb0FnY0FBQUFMQVFBZwpTcGlXQVZvQWdjQUFBQUFWQmdVUkE0ZjBUczBL
Uzl5aGxEckQxSnNYSHdDQUFBQUFDQ0htTVFDbEFFRGdBQUFBQ2lFQWdlWXhBTFVBClFPQUFBQUFL
SVFCQXVZeEFMVUFRT0FBQUFBb2hBR0Q1akVBdFFCQTRBQUFBRENFQUlFNWpFQXRRRFk4RmNBQUFB
QlVHQlJFRGgvUk8KelFwTDNLR1VPc1BVbXhjZkFJQUFBQUFJQWFuTFlCR2dDQndBQUFBS0FRQ0Jx
Y3RnRmFBSUhBQUFBQW9CQUVDcWN0Z0ZhQUlIQUFBQQpDZ0VBWU9weTJBVm9BZ2NBQUFBTEFRQWdT
cHkyQVZvQWdjQUFBQUFWQmdVUkE0ZjBUczBLUzl5aGxEckQxSnNYSHdDQUFBQUFDQ0huCk9RQ2xB
RURnQUFBQUNpRUFnZWM1QUxVQVFPQUFBQUFLSVFCQXVjNUFMVUFRT0FBQUFBb2hBR0Q1emtBdFFC
QTRBQUFBRENFQUlFNXoKa0F0UURZOEZjQUFBQUJVR0JSRURoL1JPelFwTDNLR1VPc1BVbXhjZkFJ
QUFBQUFJQWFvTllCR2dDQndBQUFBS0FRQ0JxZzFnRmFBSQpIQUFBQUFvQkFFQ3FnMWdGYUFJSEFB
QUFDZ0VBWU9xRFdBVm9BZ2NBQUFBTEFRQWdTcURXQVZvQWdjQUFBQUFWQmdVUkE0ZjBUczBLClM5
eWhsRHJEMUpzWEh3Q0FBQUFBQ0NIb1FRQ2xBRURnQUFBQUNpRUFnZWhCQUxVQVFPQUFBQUFLSVFC
QXVoQkFMVUFRT0FBQUFBb2gKQUdENkVFQXRRQkE0QUFBQURDRUFJRTZFRUF0UURZOEZjQUFBQUJV
R0JSRURoL1JPelFwTDNLR1VPc1BVbXhjZkFJQUFBQUFJQWFwUApZQkdnQ0J3QUFBQUtBUUNCcWs5
Z0ZhQUlIQUFBQUFvQkFFQ3FrOWdGYUFJSEFBQUFDZ0VBWU9xVDJBVm9BZ2NBQUFBTEFRQWdTcVQy
CkFWb0FnY0FBQUFBVkJnVVJBNGYwVHMwS1M5eWhsRHJEMUpzWEh3Q0FBQUFBQ0NIcFNRQ2xBRURn
QUFBQUNpRUFnZWxKQUxVQVFPQUEKQUFBS0lRQkF1bEpBTFVBUU9BQUFBQW9oQUdENlVrQXRRQkE0
QUFBQURDRUFJRTZVa0F0UURZOEZjQUFBQUJVR0JSRURoL1JPelFwTAozS0dVT3NQVW14Y2ZBSUFB
QUFBSUFhcVJZQkdnQ0J3QUFBQUtBUUNCcXBGZ0ZhQUlIQUFBQUFvQkFFQ3FwRmdGYUFJSEFBQUFD
Z0VBCllPcWtXQVZvQWdjQUFBQUxBUUFnU3FrV0FWb0FnY0FBQUFBVkJnVVJBNGYwVHMwS1M5eWhs
RHJEMUpzWEh3Q0FBQUFBQ0NIcVVRQ2wKQUVEZ0FBQUFDaUVBZ2VwUkFMVUFRT0FBQUFBS0lRQkF1
cFJBTFVBUU9BQUFBQW9oQUdENmxFQXRRQkE0QUFBQURDRUFJRTZsRUF0UQpEWThGY0FBQUFCVUdC
UkVEaC9ST3pRcEwzS0dVT3NQVW14Y2ZBSUFBQUFBSUFhclRZQkdnQ0J3QUFBQUtBUUNCcXROZ0Zh
QUlIQUFBCkFBb0JBRUNxdE5nRmFBSUhBQUFBQ2dFQVlPcTAyQVZvQWdjQUFBQUxBUUFnU3EwMkFW
b0FnY0FBQUFBVkJnVVJBNGYwVHMwS1M5eWgKbERyRDFKc1hId0NBQUFBQUNDSHJXUUNsQUVEZ0FB
QUFDaUVBZ2V0WkFMVUFRT0FBQUFBS0lRQkF1dFpBTFVBUU9BQUFBQW9oQUdENgoxa0F0UUJBNEFB
QUFEQ0VBSUU2MWtBdFFEWThGY0FBQUFCVUdCUkVEaC9ST3pRcEwzS0dVT3NQVW14Y2ZBSUFBQUFB
SUFhc1ZZQkdnCkNCd0FBQUFLQVFDQnF4VmdGYUFJSEFBQUFBb0JBRUNxeFZnRmFBSUhBQUFBQ2dF
QVlPckZXQVZvQWdjQUFBQUxBUUFnU3JGV0FWb0EKZ2NBQUFBQVZCZ1VSQTRmMFRzMEtTOXlobERy
RDFKc1hId0NBQUFBQUNBSHNYUUVhQUlIQUFBQUFDZ0VBZ2V4ZEFWb0FnY0FBQUFBSwpBUUJBdXhk
QVZvQWdjQUFBQUFvQkFHRDdGMEJXZ0NCd0FBQUFDZ0VBSUU3RjBCV2dDQndBQUFBVkJnVVJBNGYw
VHMwS1M5eWhsRHJECjFKc1hId0NBQUFBQlR5VzRJQ0FwWC8vNEs0QUhFUkVBaEtVSzR3d0FIRUdI
Q3BBQUNWK0E0QUFrdUFBVWtpSkNiSVpHWU1PQUJYYk4Kc2I5U3E3aGgzTGZmZmZmZmZmZmZmZmZm
ZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmYvaC80Y0lBQlJpQ055UkpZYm5zNFRYL0FNRQo1Mk9C
UUFBaE1nQUNENElBQUlQd0FBZ3g0QUcrYnBnQUNBeDVNQUFJT3I2V0FBSURRQUFnN3NRQWFTV2dB
QkFSMW9BQWd1ZitkTEFBCkVCTUFBUVhtRkxYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhY
WFhYWFhYWFhYWFRKVXRkZGRkZGRkZGRkZGRkZGRkZGRkZGQKZGRkZGRkZGRkZGRkZGRkZGRkZGRN
bFMxMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTB5VkxYWFhYWFhYWApY
WFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhUSlV0ZGRkZGRkZGRkZGRkZGRkZGRkZGRk
ZGRkZGRkZGRkZGRkZGRkZGRkCmRkTW1BQUFCSUNVQWdiZ2dJQzFmLy9naWlnQUNGSjQ0QUFuUHh3
QUJNZXZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnYKdnZ2dnZ2di93LzhGaEFIQUFM
QUNnUVZUUDRnQUFoTGdBQ0QxRUFBRUg0QUFRWThIQUFFQm9BQVFkMklPQUFJRFFBQWc3c1FjQUFR
RQp3QUJCZVlnNEFBZ0pnQUNDOHdwYTY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2
NjY2NjY2WktscnJycnJycnJycnJyCnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycGtxV3V1
dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1bVMKcGE2NjY2NjY2NjY2NjY2
NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NlpLbHJycnJycnJycnJycnJycnJycnJycnJycnJy
cnJycgpycnJycnJycnJycnBrd0FBQVNFbEFFQ3VDQWdMVi8vK0NLS0FBSVVuamdBQ2MvSEFBRXg2
KysrKysrKysrKysrKysrKysrKysrKysrCisrKysrKysrKysrKysrKysvL0Qvd1dFQWNBQXNBS0JC
Vk0vaUFBQ0V1QUFJUFVRQUFRZmdBQkJqd2NBQVFHZ0FCQjNZZzRBQWdOQUEKQ0R1eEJ3QUJBVEFB
RUY1aURnQUNBbUFBSUx6Q2xycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJy
cnBrcVd1dQp1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXVtU3BhNjY2NjY2
NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2CjY2NjY2NjY2WktscnJycnJycnJycnJycnJycnJy
cnJycnJycnJycnJycnJycnJycnJycnJwa3FXdXV1dXV1dXV1dXV1dXV1dXV1dXUKdXV1dXV1dXV1
dXV1dXV1dXV1dXV1bVRBQUFBQklTVUFZTzRJQ0F0WC8vNElvb0FBaFNlT0FBSno4Y0FBVEhyNzc3
Nzc3Nzc3Nzc3Nwo3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3NzcvOFAvQllRQndBQ3dBb0VGVXor
SUFBSVM0QUFnOVJBQUJCK0FBRUdQQndBQkFhQUFFCkhkaURnQUNBMEFBSU83RUhBQUVCTUFBUVht
SU9BQUlDWUFBZ3ZNS1d1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXUKdXV1dXVt
U3BhNjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjZaS2xycnJycnJycnJy
cnJycnJycnJycnJycgpycnJycnJycnJycnJycnJycnJwa3FXdXV1dXV1dXV1dXV1dXV1dXV1dXV1
dXV1dXV1dXV1dXV1dXV1dXV1dXVtU3BhNjY2NjY2NjY2CjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2
NjY2NjY2NjY2Wk1BQUFBRjNKUUFnUzRJQ0F0WC8vNElvb0FBaFNlT0FBSno4Y0FBVEhyNzcKNzc3
Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3NzcvOFAvQllRQndBQ3dBb0VGVXorSUFB
SVM0QUFnOVJBQUJCK0FBRQpHUEJ3QUJBYUFBRUhkaURnQUNBMEFBSU83RUhBQUVCTUFBUVhtSU9B
QUlDWUFBZ3ZNS1d1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1CnV1dXV1dXV1dXV1dXV1dXVtU3Bh
NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjZaS2xycnJycnJycnJycnIK
cnJycnJycnJycnJycnJycnJycnJycnJycnJycnJwa3FXdXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1
dXV1dXV1dXV1dXV1dXV1dXVtUwpGc0FCR1pHUm1Sa1JrWkYvNEFCc2pNQkMwb1h4bGd2OEphUUF1
QUJYVEkySjhoMGRnOEFDazBhUTI2a1ZuRFV0ZGRkZGRkZGRkZGRkCmRkZGRkZGRkZGRkZGRkZGRk
ZGRkZGRkZGRkZGNMTWdBQ01pTXlNeUl5SXpMLy9BQTZoQlc3SWp5dHVNM2ZlQWQ0QUdtVDVOODU5
d0EKbm1wcGQvNjNBQUFBRlFZRkVRT0g5RTdOQ2t2Y29aUTZ3OVNiRng4QWdBQUFBQWdoNFFrQXBR
QkE0QUFBQUFvaEFJSGhDUUMxQUVEZwpBQUFBQ2lFQVFMaENRQzFBRURnQUFBQUtJUUJnK0VKQUxV
QVFPQUFBQUF3aEFDQk9FSkFMVUEyUEJYQUFBQUFWQmdVUkE0ZjBUczBLClM5eWhsRHJEMUpzWEh3
Q0FBQUFBQ0FHb2dXQVJvQWdjQUFBQUNnRUFnYWlCWUJXZ0NCd0FBQUFLQVFCQXFpQllCV2dDQndB
QUFBb0IKQUdEcUlGZ0ZhQUlIQUFBQUN3RUFJRXFJRmdGYUFJSEFBQUFBRlFZRkVRT0g5RTdOQ2t2
Y29aUTZ3OVNiRng4QWdBQUFBQWdoNGhFQQpwUUJBNEFBQUFBb2hBSUhpRVFDMUFFRGdBQUFBQ2lF
QVFMaUVRQzFBRURnQUFBQUtJUUJnK0lSQUxVQVFPQUFBQUF3aEFDQk9JUkFMClVBMlBCWEFBQUFB
VkJnVVJBNGYwVHMwS1M5eWhsRHJEMUpzWEh3Q0FBQUFBQ0FHb3cyQVJvQWdjQUFBQUNnRUFnYWpE
WUJXZ0NCd0EKQUFBS0FRQkFxakRZQldnQ0J3QUFBQW9CQUdEcU1OZ0ZhQUlIQUFBQUN3RUFJRXFN
TmdGYUFJSEFBQUFBRlFZRkVRT0g5RTdOQ2t2YwpvWlE2dzlTYkZ4OEFnQUFBQUFnaDR4a0FwUUJB
NEFBQUFBb2hBSUhqR1FDMUFFRGdBQUFBQ2lFQVFMakdRQzFBRURnQUFBQUtJUUJnCitNWkFMVUFR
T0FBQUFBd2hBQ0JPTVpBTFVBMlBCWEFBQUFBVkJnVVJBNGYwVHMwS1M5eWhsRHJEMUpzWEh3Q0FB
QUFBQ0FHcEJXQVIKb0FnY0FBQUFDZ0VBZ2FrRllCV2dDQndBQUFBS0FRQkFxa0ZZQldnQ0J3QUFB
QW9CQUdEcVFWZ0ZhQUlIQUFBQUN3RUFJRXFRVmdGYQpBSUhBQUFBQUZRWUZFUU9IOUU3TkNrdmNv
WlE2dzlTYkZ4OEFnQUFBQUFnaDVDRUFwUUJBNEFBQUFBb2hBSUhrSVFDMUFFRGdBQUFBCkNpRUFR
TGtJUUMxQUVEZ0FBQUFLSVFCZytRaEFMVUFRT0FBQUFBd2hBQ0JPUWhBTFVBMlBCWEFBQUFBVkJn
VVJBNGYwVHMwS1M5eWgKbERyRDFKc1hId0NBQUFBQUNBR3BSMkFSb0FnY0FBQUFDZ0VBZ2FsSFlC
V2dDQndBQUFBS0FRQkFxbEhZQldnQ0J3QUFBQW9CQUdEcQpVZGdGYUFJSEFBQUFDd0VBSUVxVWRn
RmFBSUhBQUFBQUZRWUZFUU9IOUU3TkNrdmNvWlE2dzlTYkZ4OEFnQUFBQUFnaDVTa0FwUUJBCjRB
QUFBQW9oQUlIbEtRQzFBRURnQUFBQUNpRUFRTGxLUUMxQUVEZ0FBQUFLSVFCZytVcEFMVUFRT0FB
QUFBd2hBQ0JPVXBBTFVBMlAKQlhBQUFBQVZCZ1VSQTRmMFRzMEtTOXlobERyRDFKc1hId0NBQUFB
QUNBR3BpV0FSb0FnY0FBQUFDZ0VBZ2FtSllCV2dDQndBQUFBSwpBUUJBcW1KWUJXZ0NCd0FBQUFv
QkFHRHFZbGdGYUFJSEFBQUFDd0VBSUVxWWxnRmFBSUhBQUFBQUZRWUZFUU9IOUU3TkNrdmNvWlE2
Cnc5U2JGeDhBZ0FBQUFBZ2g1akVBcFFCQTRBQUFBQW9oQUlIbU1RQzFBRURnQUFBQUNpRUFRTG1N
UUMxQUVEZ0FBQUFLSVFCZytZeEEKTFVBUU9BQUFBQXdoQUNCT1l4QUxVQTJQQlhBQUFBQVZCZ1VS
QTRmMFRzMEtTOXlobERyRDFKc1hId0NBQUFBQUNBR3B5MkFSb0FnYwpBQUFBQ2dFQWdhbkxZQldn
Q0J3QUFBQUtBUUJBcW5MWUJXZ0NCd0FBQUFvQkFHRHFjdGdGYUFJSEFBQUFDd0VBSUVxY3RnRmFB
SUhBCkFBQUFGUVlGRVFPSDlFN05Da3Zjb1pRNnc5U2JGeDhBZ0FBQUFBZ2g1emtBcFFCQTRBQUFB
QW9oQUlIbk9RQzFBRURnQUFBQUNpRUEKUUxuT1FDMUFFRGdBQUFBS0lRQmcrYzVBTFVBUU9BQUFB
QXdoQUNCT2M1QUxVQTJQQlhBQUFBQVZCZ1VSQTRmMFRzMEtTOXlobERyRAoxSnNYSHdDQUFBQUFD
QUdxRFdBUm9BZ2NBQUFBQ2dFQWdhb05ZQldnQ0J3QUFBQUtBUUJBcW9OWUJXZ0NCd0FBQUFvQkFH
RHFnMWdGCmFBSUhBQUFBQ3dFQUlFcWcxZ0ZhQUlIQUFBQUFGUVlGRVFPSDlFN05Da3Zjb1pRNnc5
U2JGeDhBZ0FBQUFBZ2g2RUVBcFFCQTRBQUEKQUFvaEFJSG9RUUMxQUVEZ0FBQUFDaUVBUUxvUVFD
MUFFRGdBQUFBS0lRQmcraEJBTFVBUU9BQUFBQXdoQUNCT2hCQUxVQTJQQlhBQQpBQUFWQmdVUkE0
ZjBUczBLUzl5aGxEckQxSnNYSHdDQUFBQUFDQUdxVDJBUm9BZ2NBQUFBQ2dFQWdhcFBZQldnQ0J3
QUFBQUtBUUJBCnFwUFlCV2dDQndBQUFBb0JBR0RxazlnRmFBSUhBQUFBQ3dFQUlFcWs5Z0ZhQUlI
QUFBQUFGUVlGRVFPSDlFN05Da3Zjb1pRNnc5U2IKRng4QWdBQUFBQWdoNlVrQXBRQkE0QUFBQUFv
aEFJSHBTUUMxQUVEZ0FBQUFDaUVBUUxwU1FDMUFFRGdBQUFBS0lRQmcrbEpBTFVBUQpPQUFBQUF3
aEFDQk9sSkFMVUEyUEJYQUFBQUFWQmdVUkE0ZjBUczBLUzl5aGxEckQxSnNYSHdDQUFBQUFDQUdx
a1dBUm9BZ2NBQUFBCkNnRUFnYXFSWUJXZ0NCd0FBQUFLQVFCQXFxUllCV2dDQndBQUFBb0JBR0Rx
cEZnRmFBSUhBQUFBQ3dFQUlFcXBGZ0ZhQUlIQUFBQUEKRlFZRkVRT0g5RTdOQ2t2Y29aUTZ3OVNi
Rng4QWdBQUFBQWdoNmxFQXBRQkE0QUFBQUFvaEFJSHFVUUMxQUVEZ0FBQUFDaUVBUUxxVQpRQzFB
RURnQUFBQUtJUUJnK3BSQUxVQVFPQUFBQUF3aEFDQk9wUkFMVUEyUEJYQUFBQUFWQmdVUkE0ZjBU
czBLUzl5aGxEckQxSnNYCkh3Q0FBQUFBQ0FHcTAyQVJvQWdjQUFBQUNnRUFnYXJUWUJXZ0NCd0FB
QUFLQVFCQXFyVFlCV2dDQndBQUFBb0JBR0RxdE5nRmFBSUgKQUFBQUN3RUFJRXF0TmdGYUFJSEFB
QUFBRlFZRkVRT0g5RTdOQ2t2Y29aUTZ3OVNiRng4QWdBQUFBQWdoNjFrQXBRQkE0QUFBQUFvaApB
SUhyV1FDMUFFRGdBQUFBQ2lFQVFMcldRQzFBRURnQUFBQUtJUUJnK3RaQUxVQVFPQUFBQUF3aEFD
Qk90WkFMVUEyUEJYQUFBQUFWCkJnVVJBNGYwVHMwS1M5eWhsRHJEMUpzWEh3Q0FBQUFBQ0FHckZX
QVJvQWdjQUFBQUNnRUFnYXNWWUJXZ0NCd0FBQUFLQVFCQXFzVlkKQldnQ0J3QUFBQW9CQUdEcXhW
Z0ZhQUlIQUFBQUN3RUFJRXF4VmdGYUFJSEFBQUFBRlFZRkVRT0g5RTdOQ2t2Y29aUTZ3OVNiRng4
QQpnQUFBQUFnQjdGMEJHZ0NCd0FBQUFBb0JBSUhzWFFGYUFJSEFBQUFBQ2dFQVFMc1hRRmFBSUhB
QUFBQUtBUUJnK3hkQVZvQWdjQUFBCkFBb0JBQ0JPeGRBVm9BZ2NBQUFBRlFZRkVRT0g5RTdOQ2t2
Y29aUTZ3OVNiRng4QWdBQUFBVThsdUNBZ0tWLy8rQ3VBQnhFUkFJU2wKQ3VNTUFCeEJod3FRQUFs
ZmdPQUFKTGdBRkpJaVFteUdSbUREZ0FWMnpiRy9VcXU0WWR5MzMzMzMzMzMzMzMzMzMzMzMzMzMz
MzMzMwozMzMzMzMzMzMzMzMzMzMvNGYrSENBQVVZZ2pja1NXRzU3T0UxL3dEQk9kamdVQUFJVElB
QWcrQ0FBQ0Q4QUFJTWVBQnZtNllBQWdNCmVUQUFDRHErbGdBQ0EwQUFJTzdFQUdrbG9BQVFFZGFB
QUlMbi9uU3dBQkFUQUFFRjVoUzExMTExMTExMTExMTExMTExMTExMTExMTEKMTExMTExMTExMTEx
MTExMTB5VkxYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFRKVXRkZGRk
ZGRkZGRkZApkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRNbFMxMTExMTExMTExMTExMTEx
MTExMTExMTExMTExMTExMTExMTExMTExMTB5ClZMWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhY
WFhYWFhYWFhYWFhYWFhUSmdBQUFTQWxBSUc0SUNBdFgvLzRJb29BQWhTZU9BQUoKejhjQUFUSHI3
Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3LzhQL0JZUUJ3QUN3QW9FRlV6
K0lBQUlTNEFBZwo5UkFBQkIrQUFFR1BCd0FCQWFBQUVIZGlEZ0FDQTBBQUlPN0VIQUFFQk1BQVFY
bUlPQUFJQ1lBQWd2TUtXdXV1dXV1dXV1dXV1dXV1CnV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1
bVNwYTY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2WktscnIKcnJycnJy
cnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycGtxV3V1dXV1dXV1dXV1dXV1dXV1dXV1
dXV1dXV1dXV1dXV1dQp1dXV1dXV1dW1TcGE2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2
NjY2NjY2NjY2NlpNQUFBRWhKUUJBcmdnSUMxZi8vZ2lpCmdBQ0ZKNDRBQW5QeHdBQk1ldnZ2dnZ2
dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnYvdy84RmhBSEFBTEFDZ1FWVFAKNGdB
QWhMZ0FDRDFFQUFFSDRBQVFZOEhBQUVCb0FBUWQySU9BQUlEUUFBZzdzUWNBQVFFd0FCQmVZZzRB
QWdKZ0FDQzh3cGE2NjY2Ngo2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjZaS2xy
cnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJyCnJycnJwa3FXdXV1dXV1dXV1dXV1
dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXVtU3BhNjY2NjY2NjY2NjY2NjY2NjY2NjY2NjYK
NjY2NjY2NjY2NjY2NjY2NjY2WktscnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJy
cnJycnJwa3dBQUFBU0VsQUdEdQpDQWdMVi8vK0NLS0FBSVVuamdBQ2MvSEFBRXg2KysrKysrKysr
KysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKy8vRC93V0VBCmNBQXNBS0JCVk0vaUFBQ0V1
QUFJUFVRQUFRZmdBQkJqd2NBQVFHZ0FCQjNZZzRBQWdOQUFDRHV4QndBQkFUQUFFRjVpRGdBQ0Ft
QUEKSUx6Q2xycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnBrcVd1dXV1
dXV1dXV1dXV1dXV1dXV1dXV1dXV1dQp1dXV1dXV1dXV1dXV1dXVtU3BhNjY2NjY2NjY2NjY2NjY2
NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjZaS2xycnJycnJycnJycnJyCnJycnJycnJycnJycnJy
cnJycnJycnJycnJycnJwa3FXdXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1
dXVtVEEKQUFBQmR5VUFJRXVDQWdMVi8vK0NLS0FBSVVuamdBQ2MvSEFBRXg2KysrKysrKysrKysr
KysrKysrKysrKysrKysrKysrKysrKysrKworKysvL0Qvd1dFQWNBQXNBS0JCVk0vaUFBQ0V1QUFJ
UFVRQUFRZmdBQkJqd2NBQVFHZ0FCQjNZZzRBQWdOQUFDRHV4QndBQkFUQUFFCkY1aURnQUNBbUFB
SUx6Q2xycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnBrcVd1dXV1dXV1
dXV1dXV1dXUKdXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXVtU3BhNjY2NjY2NjY2NjY2NjY2NjY2
NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjZaS2xycgpycnJycnJycnJycnJycnJycnJycnJycnJycnJy
cnJycnJycnJycnJwa2hiQUFSbVJrWmtaRVpHUmYrQUFiSXpBUXRLRjhaWUwvQ1drCkFMZ0FWMHlO
aWZJZEhZUEFBcE5Ha051cEZadzFMWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhY
WFhYWEN6SUFBakkKak1qTWlNaU15Ly93QU9vUVZ1eUk4cmJqTjMzZ0hlQUJwaytUZk9mY0FKNXFh
WGYrdHdBQUFCVUdCUkVEaC9ST3pRcEwzS0dVT3NQVQpteGNmQUlBQUFBQUlJZUVKQUtVQVFPQUFB
QUFLSVFDQjRRa0F0UUJBNEFBQUFBb2hBRUM0UWtBdFFCQTRBQUFBQ2lFQVlQaENRQzFBCkVEZ0FB
QUFNSVFBZ1RoQ1FDMUFOandWd0FBQUFGUVlGRVFPSDlFN05Da3Zjb1pRNnc5U2JGeDhBZ0FBQUFB
Z0JxSUZnRWFBSUhBQUEKQUFvQkFJR29nV0FWb0FnY0FBQUFDZ0VBUUtvZ1dBVm9BZ2NBQUFBS0FR
Qmc2aUJZQldnQ0J3QUFBQXNCQUNCS2lCWUJXZ0NCd0FBQQpBQlVHQlJFRGgvUk96UXBMM0tHVU9z
UFVteGNmQUlBQUFBQUlJZUlSQUtVQVFPQUFBQUFLSVFDQjRoRUF0UUJBNEFBQUFBb2hBRUM0CmhF
QXRRQkE0QUFBQUNpRUFZUGlFUUMxQUVEZ0FBQUFNSVFBZ1RpRVFDMUFOandWd0FBQUFGUVlGRVFP
SDlFN05Da3Zjb1pRNnc5U2IKRng4QWdBQUFBQWdCcU1OZ0VhQUlIQUFBQUFvQkFJR293MkFWb0Fn
Y0FBQUFDZ0VBUUtvdzJBVm9BZ2NBQUFBS0FRQmc2akRZQldnQwpCd0FBQUFzQkFDQktqRFlCV2dD
QndBQUFBQlVHQlJFRGgvUk96UXBMM0tHVU9zUFVteGNmQUlBQUFBQUlJZU1aQUtVQVFPQUFBQUFL
CklRQ0I0eGtBdFFCQTRBQUFBQW9oQUVDNHhrQXRRQkE0QUFBQUNpRUFZUGpHUUMxQUVEZ0FBQUFN
SVFBZ1RqR1FDMUFOandWd0FBQUEKRlFZRkVRT0g5RTdOQ2t2Y29aUTZ3OVNiRng4QWdBQUFBQWdC
cVFWZ0VhQUlIQUFBQUFvQkFJR3BCV0FWb0FnY0FBQUFDZ0VBUUtwQgpXQVZvQWdjQUFBQUtBUUJn
NmtGWUJXZ0NCd0FBQUFzQkFDQktrRllCV2dDQndBQUFBQlVHQlJFRGgvUk96UXBMM0tHVU9zUFVt
eGNmCkFJQUFBQUFJSWVRaEFLVUFRT0FBQUFBS0lRQ0I1Q0VBdFFCQTRBQUFBQW9oQUVDNUNFQXRR
QkE0QUFBQUNpRUFZUGtJUUMxQUVEZ0EKQUFBTUlRQWdUa0lRQzFBTmp3VndBQUFBRlFZRkVRT0g5
RTdOQ2t2Y29aUTZ3OVNiRng4QWdBQUFBQWdCcVVkZ0VhQUlIQUFBQUFvQgpBSUdwUjJBVm9BZ2NB
QUFBQ2dFQVFLcFIyQVZvQWdjQUFBQUtBUUJnNmxIWUJXZ0NCd0FBQUFzQkFDQktsSFlCV2dDQndB
QUFBQlVHCkJSRURoL1JPelFwTDNLR1VPc1BVbXhjZkFJQUFBQUFJSWVVcEFLVUFRT0FBQUFBS0lR
Q0I1U2tBdFFCQTRBQUFBQW9oQUVDNVNrQXQKUUJBNEFBQUFDaUVBWVBsS1FDMUFFRGdBQUFBTUlR
QWdUbEtRQzFBTmp3VndBQUFBRlFZRkVRT0g5RTdOQ2t2Y29aUTZ3OVNiRng4QQpnQUFBQUFnQnFZ
bGdFYUFJSEFBQUFBb0JBSUdwaVdBVm9BZ2NBQUFBQ2dFQVFLcGlXQVZvQWdjQUFBQUtBUUJnNm1K
WUJXZ0NCd0FBCkFBc0JBQ0JLbUpZQldnQ0J3QUFBQUJVR0JSRURoL1JPelFwTDNLR1VPc1BVbXhj
ZkFJQUFBQUFJSWVZeEFLVUFRT0FBQUFBS0lRQ0IKNWpFQXRRQkE0QUFBQUFvaEFFQzVqRUF0UUJB
NEFBQUFDaUVBWVBtTVFDMUFFRGdBQUFBTUlRQWdUbU1RQzFBTmp3VndBQUFBRlFZRgpFUU9IOUU3
TkNrdmNvWlE2dzlTYkZ4OEFnQUFBQUFnQnFjdGdFYUFJSEFBQUFBb0JBSUdweTJBVm9BZ2NBQUFB
Q2dFQVFLcHkyQVZvCkFnY0FBQUFLQVFCZzZuTFlCV2dDQndBQUFBc0JBQ0JLbkxZQldnQ0J3QUFB
QUJVR0JSRURoL1JPelFwTDNLR1VPc1BVbXhjZkFJQUEKQUFBSUllYzVBS1VBUU9BQUFBQUtJUUNC
NXprQXRRQkE0QUFBQUFvaEFFQzV6a0F0UUJBNEFBQUFDaUVBWVBuT1FDMUFFRGdBQUFBTQpJUUFn
VG5PUUMxQU5qd1Z3QUFBQUZRWUZFUU9IOUU3TkNrdmNvWlE2dzlTYkZ4OEFnQUFBQUFnQnFnMWdF
YUFJSEFBQUFBb0JBSUdxCkRXQVZvQWdjQUFBQUNnRUFRS3FEV0FWb0FnY0FBQUFLQVFCZzZvTllC
V2dDQndBQUFBc0JBQ0JLb05ZQldnQ0J3QUFBQUJVR0JSRUQKaC9ST3pRcEwzS0dVT3NQVW14Y2ZB
SUFBQUFBSUllaEJBS1VBUU9BQUFBQUtJUUNCNkVFQXRRQkE0QUFBQUFvaEFFQzZFRUF0UUJBNApB
QUFBQ2lFQVlQb1FRQzFBRURnQUFBQU1JUUFnVG9RUUMxQU5qd1Z3QUFBQUZRWUZFUU9IOUU3TkNr
dmNvWlE2dzlTYkZ4OEFnQUFBCkFBZ0JxazlnRWFBSUhBQUFBQW9CQUlHcVQyQVZvQWdjQUFBQUNn
RUFRS3FUMkFWb0FnY0FBQUFLQVFCZzZwUFlCV2dDQndBQUFBc0IKQUNCS3BQWUJXZ0NCd0FBQUFC
VUdCUkVEaC9ST3pRcEwzS0dVT3NQVW14Y2ZBSUFBQUFBSUllbEpBS1VBUU9BQUFBQUtJUUNCNlVr
QQp0UUJBNEFBQUFBb2hBRUM2VWtBdFFCQTRBQUFBQ2lFQVlQcFNRQzFBRURnQUFBQU1JUUFnVHBT
UUMxQU5qd1Z3QUFBQUZRWUZFUU9ICjlFN05Da3Zjb1pRNnc5U2JGeDhBZ0FBQUFBZ0JxcEZnRWFB
SUhBQUFBQW9CQUlHcWtXQVZvQWdjQUFBQUNnRUFRS3FrV0FWb0FnY0EKQUFBS0FRQmc2cVJZQldn
Q0J3QUFBQXNCQUNCS3FSWUJXZ0NCd0FBQUFCVUdCUkVEaC9ST3pRcEwzS0dVT3NQVW14Y2ZBSUFB
QUFBSQpJZXBSQUtVQVFPQUFBQUFLSVFDQjZsRUF0UUJBNEFBQUFBb2hBRUM2bEVBdFFCQTRBQUFB
Q2lFQVlQcVVRQzFBRURnQUFBQU1JUUFnClRxVVFDMUFOandWd0FBQUFGUVlGRVFPSDlFN05Da3Zj
b1pRNnc5U2JGeDhBZ0FBQUFBZ0JxdE5nRWFBSUhBQUFBQW9CQUlHcTAyQVYKb0FnY0FBQUFDZ0VB
UUtxMDJBVm9BZ2NBQUFBS0FRQmc2clRZQldnQ0J3QUFBQXNCQUNCS3JUWUJXZ0NCd0FBQUFCVUdC
UkVEaC9STwp6UXBMM0tHVU9zUFVteGNmQUlBQUFBQUlJZXRaQUtVQVFPQUFBQUFLSVFDQjYxa0F0
UUJBNEFBQUFBb2hBRUM2MWtBdFFCQTRBQUFBCkNpRUFZUHJXUUMxQUVEZ0FBQUFNSVFBZ1RyV1FD
MUFOandWd0FBQUFGUVlGRVFPSDlFN05Da3Zjb1pRNnc5U2JGeDhBZ0FBQUFBZ0IKcXhWZ0VhQUlI
QUFBQUFvQkFJR3JGV0FWb0FnY0FBQUFDZ0VBUUtyRldBVm9BZ2NBQUFBS0FRQmc2c1ZZQldnQ0J3
QUFBQXNCQUNCSwpzVllCV2dDQndBQUFBQlVHQlJFRGgvUk96UXBMM0tHVU9zUFVteGNmQUlBQUFB
QUlBZXhkQVJvQWdjQUFBQUFLQVFDQjdGMEJXZ0NCCndBQUFBQW9CQUVDN0YwQldnQ0J3QUFBQUNn
RUFZUHNYUUZhQUlIQUFBQUFLQVFBZ1RzWFFGYUFJSEFBQUFCVUdCUkVEaC9ST3pRcEwKM0tHVU9z
UFVteGNmQUlBQUFBRlBKYmdnSUNsZi8vZ3JnQWNSRVFDRXBRcmpEQUFjUVljS2tBQUpYNERnQUNT
NEFCU1NJa0pzaGtaZwp3NEFGZHMyeHYxS3J1R0hjdDk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5
OTk5OTk5OTk5OTk5OS8rSC9od2dBRkdJSTNKRWxodWV6CmhOZjhBd1RuWTRGQUFDRXlBQUlQZ2dB
QWcvQUFDREhnQWI1dW1BQUlESGt3QUFnNnZwWUFBZ05BQUNEdXhBQnBKYUFBRUJIV2dBQ0MKNS81
MHNBQVFFd0FCQmVZVXRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZE1s
UzExMTExMTExMTExMTExMQoxMTExMTExMTExMTExMTExMTExMTExMTExMTB5VkxYWFhYWFhYWFhY
WFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFRKVXRkCmRkZGRkZGRkZGRkZGRkZGRkZGRk
ZGRkZGRkZGRkZGRkZGRkZGRkZGRNbFMxMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTEK
MTExMTExMTEweVlBQUFFZ0pRQ0J1Q0FnTFYvLytDS0tBQUlVbmpnQUNjL0hBQUV4NisrKysrKysr
KysrKysrKysrKysrKysrKysrKworKysrKysrKysrKysrLy9EL3dXRUFjQUFzQUtCQlZNL2lBQUNF
dUFBSVBVUUFBUWZnQUJCandjQUFRR2dBQkIzWWc0QUFnTkFBQ0R1CnhCd0FCQVRBQUVGNWlEZ0FD
QW1BQUlMekNscnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJwa3FXdXV1
dXUKdXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1bVNwYTY2NjY2NjY2NjY2NjY2
NjY2NjY2NjY2NjY2NjY2NjY2NjY2Ngo2NjY2NlpLbHJycnJycnJycnJycnJycnJycnJycnJycnJy
cnJycnJycnJycnJycnJycGtxV3V1dXV1dXV1dXV1dXV1dXV1dXV1dXV1CnV1dXV1dXV1dXV1dXV1
dXV1dW1UQUFBQklTVUFRSzRJQ0F0WC8vNElvb0FBaFNlT0FBSno4Y0FBVEhyNzc3Nzc3Nzc3Nzc3
Nzc3NzcKNzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3NzcvOFAvQllRQndBQ3dBb0VGVXorSUFBSVM0QUFn
OVJBQUJCK0FBRUdQQndBQkFhQUFFSGRpRApnQUNBMEFBSU83RUhBQUVCTUFBUVhtSU9BQUlDWUFB
Z3ZNS1d1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1CnVtU3BhNjY2NjY2
NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjZaS2xycnJycnJycnJycnJycnJycnJy
cnJycnJycnIKcnJycnJycnJycnJycnJwa3FXdXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1
dXV1dXV1dXV1dXVtU3BhNjY2NjY2NjY2NjY2Ngo2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2
Wk1BQUFBRWhKUUJnN2dnSUMxZi8vZ2lpZ0FDRko0NEFBblB4d0FCTWV2dnZ2dnZ2CnZ2dnZ2dnZ2
dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnYvdy84RmhBSEFBTEFDZ1FWVFA0Z0FBaExnQUNEMUVB
QUVINEFBUVk4SEEKQUVCb0FBUWQySU9BQUlEUUFBZzdzUWNBQVFFd0FCQmVZZzRBQWdKZ0FDQzh3
cGE2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2Ngo2NjY2NjY2NjY2NjZaS2xycnJycnJycnJy
cnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnBrcVd1dXV1dXV1dXV1dXV1dXV1CnV1dXV1
dXV1dXV1dXV1dXV1dXV1dXV1dXVtU3BhNjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2
NjY2NjY2NjZaS2xycnIKcnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJwa3dB
QUFBWGNsQUNCTGdnSUMxZi8vZ2lpZ0FDRko0NEFBblB4dwpBQk1ldnZ2dnZ2dnZ2dnZ2dnZ2dnZ2
dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnYvdy84RmhBSEFBTEFDZ1FWVFA0Z0FBaExnQUNEMUVBCkFF
SDRBQVFZOEhBQUVCb0FBUWQySU9BQUlEUUFBZzdzUWNBQVFFd0FCQmVZZzRBQWdKZ0FDQzh3cGE2
NjY2NjY2NjY2NjY2NjY2NjYKNjY2NjY2NjY2NjY2NjY2NjY2NjY2NjZaS2xycnJycnJycnJycnJy
cnJycnJycnJycnJycnJycnJycnJycnJycnJycnBrcVd1dXV1dQp1dXV1dXV1dXV1dXV1dXV1dXV1
dXV1dXV1dXV1dXV1dXV1dXVtU3BhNjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2
CjY2NjY2WklXd0FFWmtaR1pHUkdSa1gvZ0FHeU13RUxTaGZHV0Mvd2xwQUM0QUZkTWpZbnlIUjJE
d0FLVFJwRGJxUldjTlMxMTExMTEKMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMXdz
eUFBSXlJekl6SWpJak12LzhBRHFFRmJzaVBLMjR6ZDk0QjNnQWFaUAprM3puM0FDZWFtbDMvcmNB
QUFBVkJnVVJBNGYwVHMwS1M5eWhsRHJEMUpzWEh3Q0FBQUFBQ0NIaENRQ2xBRURnQUFBQUNpRUFn
ZUVKCkFMVUFRT0FBQUFBS0lRQkF1RUpBTFVBUU9BQUFBQW9oQUdENFFrQXRRQkE0QUFBQURDRUFJ
RTRRa0F0UURZOEZjQUFBQUJVR0JSRUQKaC9ST3pRcEwzS0dVT3NQVW14Y2ZBSUFBQUFBSUFhaUJZ
QkdnQ0J3QUFBQUtBUUNCcUlGZ0ZhQUlIQUFBQUFvQkFFQ3FJRmdGYUFJSApBQUFBQ2dFQVlPb2dX
QVZvQWdjQUFBQUxBUUFnU29nV0FWb0FnY0FBQUFBVkJnVVJBNGYwVHMwS1M5eWhsRHJEMUpzWEh3
Q0FBQUFBCkNDSGlFUUNsQUVEZ0FBQUFDaUVBZ2VJUkFMVUFRT0FBQUFBS0lRQkF1SVJBTFVBUU9B
QUFBQW9oQUdENGhFQXRRQkE0QUFBQURDRUEKSUU0aEVBdFFEWThGY0FBQUFCVUdCUkVEaC9ST3pR
cEwzS0dVT3NQVW14Y2ZBSUFBQUFBSUFhakRZQkdnQ0J3QUFBQUtBUUNCcU1OZwpGYUFJSEFBQUFB
b0JBRUNxTU5nRmFBSUhBQUFBQ2dFQVlPb3cyQVZvQWdjQUFBQUxBUUFnU293MkFWb0FnY0FBQUFB
VkJnVVJBNGYwClRzMEtTOXlobERyRDFKc1hId0NBQUFBQUNDSGpHUUNsQUVEZ0FBQUFDaUVBZ2VN
WkFMVUFRT0FBQUFBS0lRQkF1TVpBTFVBUU9BQUEKQUFvaEFHRDR4a0F0UUJBNEFBQUFEQ0VBSUU0
eGtBdFFEWThGY0FBQUFCVUdCUkVEaC9ST3pRcEwzS0dVT3NQVW14Y2ZBSUFBQUFBSQpBYWtGWUJH
Z0NCd0FBQUFLQVFDQnFRVmdGYUFJSEFBQUFBb0JBRUNxUVZnRmFBSUhBQUFBQ2dFQVlPcEJXQVZv
QWdjQUFBQUxBUUFnClNwQldBVm9BZ2NBQUFBQVZCZ1VSQTRmMFRzMEtTOXlobERyRDFKc1hId0NB
QUFBQUNDSGtJUUNsQUVEZ0FBQUFDaUVBZ2VRaEFMVUEKUU9BQUFBQUtJUUJBdVFoQUxVQVFPQUFB
QUFvaEFHRDVDRUF0UUJBNEFBQUFEQ0VBSUU1Q0VBdFFEWThGY0FBQUFCVUdCUkVEaC9STwp6UXBM
M0tHVU9zUFVteGNmQUlBQUFBQUlBYWxIWUJHZ0NCd0FBQUFLQVFDQnFVZGdGYUFJSEFBQUFBb0JB
RUNxVWRnRmFBSUhBQUFBCkNnRUFZT3BSMkFWb0FnY0FBQUFMQVFBZ1NwUjJBVm9BZ2NBQUFBQVZC
Z1VSQTRmMFRzMEtTOXlobERyRDFKc1hId0NBQUFBQUNDSGwKS1FDbEFFRGdBQUFBQ2lFQWdlVXBB
TFVBUU9BQUFBQUtJUUJBdVVwQUxVQVFPQUFBQUFvaEFHRDVTa0F0UUJBNEFBQUFEQ0VBSUU1Uwpr
QXRRRFk4RmNBQUFBQlVHQlJFRGgvUk96UXBMM0tHVU9zUFVteGNmQUlBQUFBQUlBYW1KWUJHZ0NC
d0FBQUFLQVFDQnFZbGdGYUFJCkhBQUFBQW9CQUVDcVlsZ0ZhQUlIQUFBQUNnRUFZT3BpV0FWb0Fn
Y0FBQUFMQVFBZ1NwaVdBVm9BZ2NBQUFBQVZCZ1VSQTRmMFRzMEsKUzl5aGxEckQxSnNYSHdDQUFB
QUFDQ0htTVFDbEFFRGdBQUFBQ2lFQWdlWXhBTFVBUU9BQUFBQUtJUUJBdVl4QUxVQVFPQUFBQUFv
aApBR0Q1akVBdFFCQTRBQUFBRENFQUlFNWpFQXRRRFk4RmNBQUFBQlVHQlJFRGgvUk96UXBMM0tH
VU9zUFVteGNmQUlBQUFBQUlBYW5MCllCR2dDQndBQUFBS0FRQ0JxY3RnRmFBSUhBQUFBQW9CQUVD
cWN0Z0ZhQUlIQUFBQUNnRUFZT3B5MkFWb0FnY0FBQUFMQVFBZ1NweTIKQVZvQWdjQUFBQUFWQmdV
UkE0ZjBUczBLUzl5aGxEckQxSnNYSHdDQUFBQUFDQ0huT1FDbEFFRGdBQUFBQ2lFQWdlYzVBTFVB
UU9BQQpBQUFLSVFCQXVjNUFMVUFRT0FBQUFBb2hBR0Q1emtBdFFCQTRBQUFBRENFQUlFNXprQXRR
RFk4RmNBQUFBQlVHQlJFRGgvUk96UXBMCjNLR1VPc1BVbXhjZkFJQUFBQUFJQWFvTllCR2dDQndB
QUFBS0FRQ0JxZzFnRmFBSUhBQUFBQW9CQUVDcWcxZ0ZhQUlIQUFBQUNnRUEKWU9xRFdBVm9BZ2NB
QUFBTEFRQWdTcURXQVZvQWdjQUFBQUFWQmdVUkE0ZjBUczBLUzl5aGxEckQxSnNYSHdDQUFBQUFD
Q0hvUVFDbApBRURnQUFBQUNpRUFnZWhCQUxVQVFPQUFBQUFLSVFCQXVoQkFMVUFRT0FBQUFBb2hB
R0Q2RUVBdFFCQTRBQUFBRENFQUlFNkVFQXRRCkRZOEZjQUFBQUJVR0JSRURoL1JPelFwTDNLR1VP
c1BVbXhjZkFJQUFBQUFJQWFwUFlCR2dDQndBQUFBS0FRQ0JxazlnRmFBSUhBQUEKQUFvQkFFQ3Fr
OWdGYUFJSEFBQUFDZ0VBWU9xVDJBVm9BZ2NBQUFBTEFRQWdTcVQyQVZvQWdjQUFBQUFWQmdVUkE0
ZjBUczBLUzl5aApsRHJEMUpzWEh3Q0FBQUFBQ0NIcFNRQ2xBRURnQUFBQUNpRUFnZWxKQUxVQVFP
QUFBQUFLSVFCQXVsSkFMVUFRT0FBQUFBb2hBR0Q2ClVrQXRRQkE0QUFBQURDRUFJRTZVa0F0UURZ
OEZjQUFBQUJVR0JSRURoL1JPelFwTDNLR1VPc1BVbXhjZkFJQUFBQUFJQWFxUllCR2cKQ0J3QUFB
QUtBUUNCcXBGZ0ZhQUlIQUFBQUFvQkFFQ3FwRmdGYUFJSEFBQUFDZ0VBWU9xa1dBVm9BZ2NBQUFB
TEFRQWdTcWtXQVZvQQpnY0FBQUFBVkJnVVJBNGYwVHMwS1M5eWhsRHJEMUpzWEh3Q0FBQUFBQ0NI
cVVRQ2xBRURnQUFBQUNpRUFnZXBSQUxVQVFPQUFBQUFLCklRQkF1cFJBTFVBUU9BQUFBQW9oQUdE
NmxFQXRRQkE0QUFBQURDRUFJRTZsRUF0UURZOEZjQUFBQUJVR0JSRURoL1JPelFwTDNLR1UKT3NQ
VW14Y2ZBSUFBQUFBSUFhclRZQkdnQ0J3QUFBQUtBUUNCcXROZ0ZhQUlIQUFBQUFvQkFFQ3F0TmdG
YUFJSEFBQUFDZ0VBWU9xMAoyQVZvQWdjQUFBQUxBUUFnU3EwMkFWb0FnY0FBQUFBVkJnVVJBNGYw
VHMwS1M5eWhsRHJEMUpzWEh3Q0FBQUFBQ0NIcldRQ2xBRURnCkFBQUFDaUVBZ2V0WkFMVUFRT0FB
QUFBS0lRQkF1dFpBTFVBUU9BQUFBQW9oQUdENjFrQXRRQkE0QUFBQURDRUFJRTYxa0F0UURZOEYK
Y0FBQUFCVUdCUkVEaC9ST3pRcEwzS0dVT3NQVW14Y2ZBSUFBQUFBSUFhc1ZZQkdnQ0J3QUFBQUtB
UUNCcXhWZ0ZhQUlIQUFBQUFvQgpBRUNxeFZnRmFBSUhBQUFBQ2dFQVlPckZXQVZvQWdjQUFBQUxB
UUFnU3JGV0FWb0FnY0FBQUFBVkJnVVJBNGYwVHMwS1M5eWhsRHJECjFKc1hId0NBQUFBQUNBSHNY
UUVhQUlIQUFBQUFDZ0VBZ2V4ZEFWb0FnY0FBQUFBS0FRQkF1eGRBVm9BZ2NBQUFBQW9CQUdEN0Yw
QlcKZ0NCd0FBQUFDZ0VBSUU3RjBCV2dDQndBQUFBVkJnVVJBNGYwVHMwS1M5eWhsRHJEMUpzWEh3
Q0FBQUFCVHlXNElDQXBYLy80SzRBSApFUkVBaEtVSzR3d0FIRUdIQ3BBQUNWK0E0QUFrdUFBVWtp
SkNiSVpHWU1PQUJYYk5zYjlTcTdoaDNMZmZmZmZmZmZmZmZmZmZmZmZmCmZmZmZmZmZmZmZmZmZm
ZmZmZmZmZmYvaC80Y0lBQlJpQ055UkpZYm5zNFRYL0FNRTUyT0JRQUFoTWdBQ0Q0SUFBSVB3QUFn
eDRBRysKYnBnQUNBeDVNQUFJT3I2V0FBSURRQUFnN3NRQWFTV2dBQkFSMW9BQWd1ZitkTEFBRUJN
QUFRWG1GTFhYWFhYWFhYWFhYWFhYWFhYWApYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFRKVXRkZGRk
ZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZE1sUzExMTExCjExMTExMTExMTEx
MTExMTExMTExMTExMTExMTExMTExMTExMTB5VkxYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhY
WFhYWFhYWFgKWFhYWFhUSlV0ZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRk
ZGRNbUFBQUJJQ1VBZ2JnZ0lDMWYvL2dpaWdBQwpGSjQ0QUFuUHh3QUJNZXZ2dnZ2dnZ2dnZ2dnZ2
dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2L3cvOEZoQUhBQUxBQ2dRVlRQNGdBCkFoTGdBQ0Qx
RUFBRUg0QUFRWThIQUFFQm9BQVFkMklPQUFJRFFBQWc3c1FjQUFRRXdBQkJlWWc0QUFnSmdBQ0M4
d3BhNjY2NjY2NjYKNjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2WktscnJycnJycnJy
cnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycgpycGtxV3V1dXV1dXV1dXV1dXV1dXV1dXV1
dXV1dXV1dXV1dXV1dXV1dXV1dXV1bVNwYTY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2CjY2NjY2
NjY2NjY2NjY2NlpLbHJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycGt3
QUFBU0VsQUVDdUNBZ0wKVi8vK0NLS0FBSVVuamdBQ2MvSEFBRXg2KysrKysrKysrKysrKysrKysr
KysrKysrKysrKysrKysrKysrKysrKy8vRC93V0VBY0FBcwpBS0JCVk0vaUFBQ0V1QUFJUFVRQUFR
ZmdBQkJqd2NBQVFHZ0FCQjNZZzRBQWdOQUFDRHV4QndBQkFUQUFFRjVpRGdBQ0FtQUFJTHpDCmxy
cnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnBrcVd1dXV1dXV1dXV1dXV1
dXV1dXV1dXV1dXV1dXV1dXUKdXV1dXV1dXV1dXVtU3BhNjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2
NjY2NjY2NjY2NjY2NjY2NjZaS2xycnJycnJycnJycnJycnJycgpycnJycnJycnJycnJycnJycnJy
cnJycnJwa3FXdXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXVtVEFBQUFC
CklTVUFZTzRJQ0F0WC8vNElvb0FBaFNlT0FBSno4Y0FBVEhyNzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3
Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Ny8KOFAvQllRQndBQ3dBb0VGVXorSUFBSVM0QUFnOVJBQUJCK0FB
RUdQQndBQkFhQUFFSGRpRGdBQ0EwQUFJTzdFSEFBRUJNQUFRWG1JTwpBQUlDWUFBZ3ZNS1d1dXV1
dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dW1TcGE2NjY2NjY2NjY2NjY2NjY2
NjY2CjY2NjY2NjY2NjY2NjY2NjY2NjY2NjZaS2xycnJycnJycnJycnJycnJycnJycnJycnJycnJy
cnJycnJycnJycnJycnBrcVd1dXV1dXUKdXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1
dXVtU3BhNjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2Ngo2NjY2Wk1BQUFBRjNK
UUFnUzRJQ0F0WC8vNElvb0FBaFNlT0FBSno4Y0FBVEhyNzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3
Nzc3Nzc3Cjc3Nzc3Nzc3NzcvOFAvQllRQndBQ3dBb0VGVXorSUFBSVM0QUFnOVJBQUJCK0FBRUdQ
QndBQkFhQUFFSGRpRGdBQ0EwQUFJTzdFSEEKQUVCTUFBUVhtSU9BQUlDWUFBZ3ZNS1d1dXV1dXV1
dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dW1TcGE2NjY2NjY2Ngo2NjY2NjY2NjY2
NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjZaS2xycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJy
cnJycnJycnJyCnJwa3FXdXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXVt
U0ZzQUJHWkdSbVJrUmtaRi80QUJzak1CQzBvWHgKbGd2OEphUUF1QUJYVEkySjhoMGRnOEFDazBh
UTI2a1ZuRFV0ZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkYwpMTWdBQ01p
TXlNeUl5SXpMLy9BQTZoQlc3SWp5dHVNM2ZlQWQ0QUdtVDVOODU5d0FubXBwZC82M0FBQUFGUVlG
RVFPSDlFN05Da3ZjCm9aUTZ3OVNiRng4QWdBQUFBQWdoNFFrQXBRQkE0QUFBQUFvaEFJSGhDUUMx
QUVEZ0FBQUFDaUVBUUxoQ1FDMUFFRGdBQUFBS0lRQmcKK0VKQUxVQVFPQUFBQUF3aEFDQk9FSkFM
VUEyUEJYQUFBQUFWQmdVUkE0ZjBUczBLUzl5aGxEckQxSnNYSHdDQUFBQUFDQUdvZ1dBUgpvQWdj
QUFBQUNnRUFnYWlCWUJXZ0NCd0FBQUFLQVFCQXFpQllCV2dDQndBQUFBb0JBR0RxSUZnRmFBSUhB
QUFBQ3dFQUlFcUlGZ0ZhCkFJSEFBQUFBRlFZRkVRT0g5RTdOQ2t2Y29aUTZ3OVNiRng4QWdBQUFB
QWdoNGhFQXBRQkE0QUFBQUFvaEFJSGlFUUMxQUVEZ0FBQUEKQ2lFQVFMaUVRQzFBRURnQUFBQUtJ
UUJnK0lSQUxVQVFPQUFBQUF3aEFDQk9JUkFMVUEyUEJYQUFBQUFWQmdVUkE0ZjBUczBLUzl5aAps
RHJEMUpzWEh3Q0FBQUFBQ0FHb3cyQVJvQWdjQUFBQUNnRUFnYWpEWUJXZ0NCd0FBQUFLQVFCQXFq
RFlCV2dDQndBQUFBb0JBR0RxCk1OZ0ZhQUlIQUFBQUN3RUFJRXFNTmdGYUFJSEFBQUFBRlFZRkVR
T0g5RTdOQ2t2Y29aUTZ3OVNiRng4QWdBQUFBQWdoNHhrQXBRQkEKNEFBQUFBb2hBSUhqR1FDMUFF
RGdBQUFBQ2lFQVFMakdRQzFBRURnQUFBQUtJUUJnK01aQUxVQVFPQUFBQUF3aEFDQk9NWkFMVUEy
UApCWEFBQUFBVkJnVVJBNGYwVHMwS1M5eWhsRHJEMUpzWEh3Q0FBQUFBQ0FHcEJXQVJvQWdjQUFB
QUNnRUFnYWtGWUJXZ0NCd0FBQUFLCkFRQkFxa0ZZQldnQ0J3QUFBQW9CQUdEcVFWZ0ZhQUlIQUFB
QUN3RUFJRXFRVmdGYUFJSEFBQUFBRlFZRkVRT0g5RTdOQ2t2Y29aUTYKdzlTYkZ4OEFnQUFBQUFn
aDVDRUFwUUJBNEFBQUFBb2hBSUhrSVFDMUFFRGdBQUFBQ2lFQVFMa0lRQzFBRURnQUFBQUtJUUJn
K1FoQQpMVUFRT0FBQUFBd2hBQ0JPUWhBTFVBMlBCWEFBQUFBVkJnVVJBNGYwVHMwS1M5eWhsRHJE
MUpzWEh3Q0FBQUFBQ0FHcFIyQVJvQWdjCkFBQUFDZ0VBZ2FsSFlCV2dDQndBQUFBS0FRQkFxbEhZ
QldnQ0J3QUFBQW9CQUdEcVVkZ0ZhQUlIQUFBQUN3RUFJRXFVZGdGYUFJSEEKQUFBQUZRWUZFUU9I
OUU3TkNrdmNvWlE2dzlTYkZ4OEFnQUFBQUFnaDVTa0FwUUJBNEFBQUFBb2hBSUhsS1FDMUFFRGdB
QUFBQ2lFQQpRTGxLUUMxQUVEZ0FBQUFLSVFCZytVcEFMVUFRT0FBQUFBd2hBQ0JPVXBBTFVBMlBC
WEFBQUFBVkJnVVJBNGYwVHMwS1M5eWhsRHJECjFKc1hId0NBQUFBQUNBR3BpV0FSb0FnY0FBQUFD
Z0VBZ2FtSllCV2dDQndBQUFBS0FRQkFxbUpZQldnQ0J3QUFBQW9CQUdEcVlsZ0YKYUFJSEFBQUFD
d0VBSUVxWWxnRmFBSUhBQUFBQUZRWUZFUU9IOUU3TkNrdmNvWlE2dzlTYkZ4OEFnQUFBQUFnaDVq
RUFwUUJBNEFBQQpBQW9oQUlIbU1RQzFBRURnQUFBQUNpRUFRTG1NUUMxQUVEZ0FBQUFLSVFCZytZ
eEFMVUFRT0FBQUFBd2hBQ0JPWXhBTFVBMlBCWEFBCkFBQVZCZ1VSQTRmMFRzMEtTOXlobERyRDFK
c1hId0NBQUFBQUNBR3B5MkFSb0FnY0FBQUFDZ0VBZ2FuTFlCV2dDQndBQUFBS0FRQkEKcW5MWUJX
Z0NCd0FBQUFvQkFHRHFjdGdGYUFJSEFBQUFDd0VBSUVxY3RnRmFBSUhBQUFBQUZRWUZFUU9IOUU3
TkNrdmNvWlE2dzlTYgpGeDhBZ0FBQUFBZ2g1emtBcFFCQTRBQUFBQW9oQUlIbk9RQzFBRURnQUFB
QUNpRUFRTG5PUUMxQUVEZ0FBQUFLSVFCZytjNUFMVUFRCk9BQUFBQXdoQUNCT2M1QUxVQTJQQlhB
QUFBQVZCZ1VSQTRmMFRzMEtTOXlobERyRDFKc1hId0NBQUFBQUNBR3FEV0FSb0FnY0FBQUEKQ2dF
QWdhb05ZQldnQ0J3QUFBQUtBUUJBcW9OWUJXZ0NCd0FBQUFvQkFHRHFnMWdGYUFJSEFBQUFDd0VB
SUVxZzFnRmFBSUhBQUFBQQpGUVlGRVFPSDlFN05Da3Zjb1pRNnc5U2JGeDhBZ0FBQUFBZ2g2RUVB
cFFCQTRBQUFBQW9oQUlIb1FRQzFBRURnQUFBQUNpRUFRTG9RClFDMUFFRGdBQUFBS0lRQmcraEJB
TFVBUU9BQUFBQXdoQUNCT2hCQUxVQTJQQlhBQUFBQVZCZ1VSQTRmMFRzMEtTOXlobERyRDFKc1gK
SHdDQUFBQUFDQUdxVDJBUm9BZ2NBQUFBQ2dFQWdhcFBZQldnQ0J3QUFBQUtBUUJBcXBQWUJXZ0NC
d0FBQUFvQkFHRHFrOWdGYUFJSApBQUFBQ3dFQUlFcWs5Z0ZhQUlIQUFBQUFGUVlGRVFPSDlFN05D
a3Zjb1pRNnc5U2JGeDhBZ0FBQUFBZ2g2VWtBcFFCQTRBQUFBQW9oCkFJSHBTUUMxQUVEZ0FBQUFD
aUVBUUxwU1FDMUFFRGdBQUFBS0lRQmcrbEpBTFVBUU9BQUFBQXdoQUNCT2xKQUxVQTJQQlhBQUFB
QVYKQmdVUkE0ZjBUczBLUzl5aGxEckQxSnNYSHdDQUFBQUFDQUdxa1dBUm9BZ2NBQUFBQ2dFQWdh
cVJZQldnQ0J3QUFBQUtBUUJBcXFSWQpCV2dDQndBQUFBb0JBR0RxcEZnRmFBSUhBQUFBQ3dFQUlF
cXBGZ0ZhQUlIQUFBQUFGUVlGRVFPSDlFN05Da3Zjb1pRNnc5U2JGeDhBCmdBQUFBQWdoNmxFQXBR
QkE0QUFBQUFvaEFJSHFVUUMxQUVEZ0FBQUFDaUVBUUxxVVFDMUFFRGdBQUFBS0lRQmcrcFJBTFVB
UU9BQUEKQUF3aEFDQk9wUkFMVUEyUEJYQUFBQUFWQmdVUkE0ZjBUczBLUzl5aGxEckQxSnNYSHdD
QUFBQUFDQUdxMDJBUm9BZ2NBQUFBQ2dFQQpnYXJUWUJXZ0NCd0FBQUFLQVFCQXFyVFlCV2dDQndB
QUFBb0JBR0RxdE5nRmFBSUhBQUFBQ3dFQUlFcXROZ0ZhQUlIQUFBQUFGUVlGCkVRT0g5RTdOQ2t2
Y29aUTZ3OVNiRng4QWdBQUFBQWdoNjFrQXBRQkE0QUFBQUFvaEFJSHJXUUMxQUVEZ0FBQUFDaUVB
UUxyV1FDMUEKRURnQUFBQUtJUUJnK3RaQUxVQVFPQUFBQUF3aEFDQk90WkFMVUEyUEJYQUFBQUFW
QmdVUkE0ZjBUczBLUzl5aGxEckQxSnNYSHdDQQpBQUFBQ0FHckZXQVJvQWdjQUFBQUNnRUFnYXNW
WUJXZ0NCd0FBQUFLQVFCQXFzVllCV2dDQndBQUFBb0JBR0RxeFZnRmFBSUhBQUFBCkN3RUFJRXF4
VmdGYUFJSEFBQUFBRlFZRkVRT0g5RTdOQ2t2Y29aUTZ3OVNiRng4QWdBQUFBQWdCN0YwQkdnQ0J3
QUFBQUFvQkFJSHMKWFFGYUFJSEFBQUFBQ2dFQVFMc1hRRmFBSUhBQUFBQUtBUUJnK3hkQVZvQWdj
QUFBQUFvQkFDQk94ZEFWb0FnY0FBQUFGUVlGRVFPSAo5RTdOQ2t2Y29aUTZ3OVNiRng4QWdBQUFB
VThsdUNBZ0tWLy8rQ3VBQnhFUkFJU2xDdU1NQUJ4Qmh3cVFBQWxmZ09BQUpMZ0FGSklpClFteUdS
bUREZ0FWMnpiRy9VcXU0WWR5MzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMz
My80ZitIQ0FBVVlnamMKa1NXRzU3T0UxL3dEQk9kamdVQUFJVElBQWcrQ0FBQ0Q4QUFJTWVBQnZt
NllBQWdNZVRBQUNEcStsZ0FDQTBBQUlPN0VBR2tsb0FBUQpFZGFBQUlMbi9uU3dBQkFUQUFFRjVo
UzExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMHlWTFhYWFhYWFhYClhY
WFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFRKVXRkZGRkZGRkZGRkZGRkZGRkZGRkZGRk
ZGRkZGRkZGRkZGRkZGRkZGQKZGRNbFMxMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTEx
MTExMTExMTB5VkxYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWApYWFhYWFhYWFhYWFhYWFhUSmdB
QUFTQWxBSUc0SUNBdFgvLzRJb29BQWhTZU9BQUp6OGNBQVRIcjc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3
Cjc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3LzhQL0JZUUJ3QUN3QW9FRlV6K0lBQUlTNEFBZzlSQUFCQitB
QUVHUEJ3QUJBYUFBRUhkaURnQUMKQTBBQUlPN0VIQUFFQk1BQVFYbUlPQUFJQ1lBQWd2TUtXdXV1
dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXVtUwpwYTY2NjY2NjY2NjY2NjY2
NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2WktscnJycnJycnJycnJycnJycnJycnJycnJycnJy
cnJyCnJycnJycnJycnJycGtxV3V1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1
dXV1bVNwYTY2NjY2NjY2NjY2NjY2NjYKNjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NlpNQUFBRWhK
UUJBcmdnSUMxZi8vZ2lpZ0FDRko0NEFBblB4d0FCTWV2dnZ2dnZ2dnZ2dgp2dnZ2dnZ2dnZ2dnZ2
dnZ2dnZ2dnZ2dnZ2dnZ2dnYvdy84RmhBSEFBTEFDZ1FWVFA0Z0FBaExnQUNEMUVBQUVINEFBUVk4
SEFBRUJvCkFBUWQySU9BQUlEUUFBZzdzUWNBQVFFd0FCQmVZZzRBQWdKZ0FDQzh3cGE2NjY2NjY2
NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjYKNjY2NjY2NjZaS2xycnJycnJycnJycnJycnJycnJy
cnJycnJycnJycnJycnJycnJycnJycnBrcVd1dXV1dXV1dXV1dXV1dXV1dXV1dQp1dXV1dXV1dXV1
dXV1dXV1dXV1dXVtU3BhNjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjZa
S2xycnJycnJyCnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJwa3dBQUFBU0VsQUdE
dUNBZ0xWLy8rQ0tLQUFJVW5qZ0FDYy9IQUFFeDYKKysrKysrKysrKysrKysrKysrKysrKysrKysr
KysrKysrKysrKysrKy8vRC93V0VBY0FBc0FLQkJWTS9pQUFDRXVBQUlQVVFBQVFmZwpBQkJqd2NB
QVFHZ0FCQjNZZzRBQWdOQUFDRHV4QndBQkFUQUFFRjVpRGdBQ0FtQUFJTHpDbHJycnJycnJycnJy
cnJycnJycnJycnJyCnJycnJycnJycnJycnJycnJycnBrcVd1dXV1dXV1dXV1dXV1dXV1dXV1dXV1
dXV1dXV1dXV1dXV1dXV1dXV1dW1TcGE2NjY2NjY2NjYKNjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2
NjY2NjY2NjZaS2xycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycgpwa3FX
dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXVtVEFBQUFCZHlVQUlFdUNB
Z0xWLy8rQ0tLQUFJVW5qCmdBQ2MvSEFBRXg2KysrKysrKysrKysrKysrKysrKysrKysrKysrKysr
KysrKysrKysrKy8vRC93V0VBY0FBc0FLQkJWTS9pQUFDRXUKQUFJUFVRQUFRZmdBQkJqd2NBQVFH
Z0FCQjNZZzRBQWdOQUFDRHV4QndBQkFUQUFFRjVpRGdBQ0FtQUFJTHpDbHJycnJycnJycnJycgpy
cnJycnJycnJycnJycnJycnJycnJycnJycnJycnBrcVd1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1
dXV1dXV1dXV1dXV1dXV1dW1TCnBhNjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2
NjY2NjZaS2xycnJycnJycnJycnJycnJycnJycnJycnJycnJycnIKcnJycnJycnJycnJwa2hiQUFS
bVJrWmtaRVpHUmYrQUFiSXpBUXRLRjhaWUwvQ1drQUxnQVYweU5pZklkSFlQQUFwTkdrTnVwRlp3
MQpMWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWEN6SUFBaklqTWpNaU1p
TXkvL3dBT29RVnV5SThyYmpOMzNnCkhlQUJwaytUZk9mY0FKNXFhWGYrdHdBQUFCVUdCUkVEaC9S
T3pRcEwzS0dVT3NQVW14Y2ZBSUFBQUFBSUllRUpBS1VBUU9BQUFBQUsKSVFDQjRRa0F0UUJBNEFB
QUFBb2hBRUM0UWtBdFFCQTRBQUFBQ2lFQVlQaENRQzFBRURnQUFBQU1JUUFnVGhDUUMxQU5qd1Z3
QUFBQQpGUVlGRVFPSDlFN05Da3Zjb1pRNnc5U2JGeDhBZ0FBQUFBZ0JxSUZnRWFBSUhBQUFBQW9C
QUlHb2dXQVZvQWdjQUFBQUNnRUFRS29nCldBVm9BZ2NBQUFBS0FRQmc2aUJZQldnQ0J3QUFBQXNC
QUNCS2lCWUJXZ0NCd0FBQUFCVUdCUkVEaC9ST3pRcEwzS0dVT3NQVW14Y2YKQUlBQUFBQUlJZUlS
QUtVQVFPQUFBQUFLSVFDQjRoRUF0UUJBNEFBQUFBb2hBRUM0aEVBdFFCQTRBQUFBQ2lFQVlQaUVR
QzFBRURnQQpBQUFNSVFBZ1RpRVFDMUFOandWd0FBQUFGUVlGRVFPSDlFN05Da3Zjb1pRNnc5U2JG
eDhBZ0FBQUFBZ0JxTU5nRWFBSUhBQUFBQW9CCkFJR293MkFWb0FnY0FBQUFDZ0VBUUtvdzJBVm9B
Z2NBQUFBS0FRQmc2akRZQldnQ0J3QUFBQXNCQUNCS2pEWUJXZ0NCd0FBQUFCVUcKQlJFRGgvUk96
UXBMM0tHVU9zUFVteGNmQUlBQUFBQUlJZU1aQUtVQVFPQUFBQUFLSVFDQjR4a0F0UUJBNEFBQUFB
b2hBRUM0eGtBdApRQkE0QUFBQUNpRUFZUGpHUUMxQUVEZ0FBQUFNSVFBZ1RqR1FDMUFOandWd0FB
QUFGUVlGRVFPSDlFN05Da3Zjb1pRNnc5U2JGeDhBCmdBQUFBQWdCcVFWZ0VhQUlIQUFBQUFvQkFJ
R3BCV0FWb0FnY0FBQUFDZ0VBUUtwQldBVm9BZ2NBQUFBS0FRQmc2a0ZZQldnQ0J3QUEKQUFzQkFD
QktrRllCV2dDQndBQUFBQlVHQlJFRGgvUk96UXBMM0tHVU9zUFVteGNmQUlBQUFBQUlJZVFoQUtV
QVFPQUFBQUFLSVFDQgo1Q0VBdFFCQTRBQUFBQW9oQUVDNUNFQXRRQkE0QUFBQUNpRUFZUGtJUUMx
QUVEZ0FBQUFNSVFBZ1RrSVFDMUFOandWd0FBQUFGUVlGCkVRT0g5RTdOQ2t2Y29aUTZ3OVNiRng4
QWdBQUFBQWdCcVVkZ0VhQUlIQUFBQUFvQkFJR3BSMkFWb0FnY0FBQUFDZ0VBUUtwUjJBVm8KQWdj
QUFBQUtBUUJnNmxIWUJXZ0NCd0FBQUFzQkFDQktsSFlCV2dDQndBQUFBQlVHQlJFRGgvUk96UXBM
M0tHVU9zUFVteGNmQUlBQQpBQUFJSWVVcEFLVUFRT0FBQUFBS0lRQ0I1U2tBdFFCQTRBQUFBQW9o
QUVDNVNrQXRRQkE0QUFBQUNpRUFZUGxLUUMxQUVEZ0FBQUFNCklRQWdUbEtRQzFBTmp3VndBQUFB
RlFZRkVRT0g5RTdOQ2t2Y29aUTZ3OVNiRng4QWdBQUFBQWdCcVlsZ0VhQUlIQUFBQUFvQkFJR3AK
aVdBVm9BZ2NBQUFBQ2dFQVFLcGlXQVZvQWdjQUFBQUtBUUJnNm1KWUJXZ0NCd0FBQUFzQkFDQktt
SllCV2dDQndBQUFBQlVHQlJFRApoL1JPelFwTDNLR1VPc1BVbXhjZkFJQUFBQUFJSWVZeEFLVUFR
T0FBQUFBS0lRQ0I1akVBdFFCQTRBQUFBQW9oQUVDNWpFQXRRQkE0CkFBQUFDaUVBWVBtTVFDMUFF
RGdBQUFBTUlRQWdUbU1RQzFBTmp3VndBQUFBRlFZRkVRT0g5RTdOQ2t2Y29aUTZ3OVNiRng4QWdB
QUEKQUFnQnFjdGdFYUFJSEFBQUFBb0JBSUdweTJBVm9BZ2NBQUFBQ2dFQVFLcHkyQVZvQWdjQUFB
QUtBUUJnNm5MWUJXZ0NCd0FBQUFzQgpBQ0JLbkxZQldnQ0J3QUFBQUJVR0JSRURoL1JPelFwTDNL
R1VPc1BVbXhjZkFJQUFBQUFJSWVjNUFLVUFRT0FBQUFBS0lRQ0I1emtBCnRRQkE0QUFBQUFvaEFF
QzV6a0F0UUJBNEFBQUFDaUVBWVBuT1FDMUFFRGdBQUFBTUlRQWdUbk9RQzFBTmp3VndBQUFBRlFZ
RkVRT0gKOUU3TkNrdmNvWlE2dzlTYkZ4OEFnQUFBQUFnQnFnMWdFYUFJSEFBQUFBb0JBSUdxRFdB
Vm9BZ2NBQUFBQ2dFQVFLcURXQVZvQWdjQQpBQUFLQVFCZzZvTllCV2dDQndBQUFBc0JBQ0JLb05Z
QldnQ0J3QUFBQUJVR0JSRURoL1JPelFwTDNLR1VPc1BVbXhjZkFJQUFBQUFJCkllaEJBS1VBUU9B
QUFBQUtJUUNCNkVFQXRRQkE0QUFBQUFvaEFFQzZFRUF0UUJBNEFBQUFDaUVBWVBvUVFDMUFFRGdB
QUFBTUlRQWcKVG9RUUMxQU5qd1Z3QUFBQUZRWUZFUU9IOUU3TkNrdmNvWlE2dzlTYkZ4OEFnQUFB
QUFnQnFrOWdFYUFJSEFBQUFBb0JBSUdxVDJBVgpvQWdjQUFBQUNnRUFRS3FUMkFWb0FnY0FBQUFL
QVFCZzZwUFlCV2dDQndBQUFBc0JBQ0JLcFBZQldnQ0J3QUFBQUJVR0JSRURoL1JPCnpRcEwzS0dV
T3NQVW14Y2ZBSUFBQUFBSUllbEpBS1VBUU9BQUFBQUtJUUNCNlVrQXRRQkE0QUFBQUFvaEFFQzZV
a0F0UUJBNEFBQUEKQ2lFQVlQcFNRQzFBRURnQUFBQU1JUUFnVHBTUUMxQU5qd1Z3QUFBQUZRWUZF
UU9IOUU3TkNrdmNvWlE2dzlTYkZ4OEFnQUFBQUFnQgpxcEZnRWFBSUhBQUFBQW9CQUlHcWtXQVZv
QWdjQUFBQUNnRUFRS3FrV0FWb0FnY0FBQUFLQVFCZzZxUllCV2dDQndBQUFBc0JBQ0JLCnFSWUJX
Z0NCd0FBQUFCVUdCUkVEaC9ST3pRcEwzS0dVT3NQVW14Y2ZBSUFBQUFBSUllcFJBS1VBUU9BQUFB
QUtJUUNCNmxFQXRRQkEKNEFBQUFBb2hBRUM2bEVBdFFCQTRBQUFBQ2lFQVlQcVVRQzFBRURnQUFB
QU1JUUFnVHFVUUMxQU5qd1Z3QUFBQUZRWUZFUU9IOUU3TgpDa3Zjb1pRNnc5U2JGeDhBZ0FBQUFB
Z0JxdE5nRWFBSUhBQUFBQW9CQUlHcTAyQVZvQWdjQUFBQUNnRUFRS3EwMkFWb0FnY0FBQUFLCkFR
Qmc2clRZQldnQ0J3QUFBQXNCQUNCS3JUWUJXZ0NCd0FBQUFCVUdCUkVEaC9ST3pRcEwzS0dVT3NQ
VW14Y2ZBSUFBQUFBSUlldFoKQUtVQVFPQUFBQUFLSVFDQjYxa0F0UUJBNEFBQUFBb2hBRUM2MWtB
dFFCQTRBQUFBQ2lFQVlQcldRQzFBRURnQUFBQU1JUUFnVHJXUQpDMUFOandWd0FBQUFGUVlGRVFP
SDlFN05Da3Zjb1pRNnc5U2JGeDhBZ0FBQUFBZ0JxeFZnRWFBSUhBQUFBQW9CQUlHckZXQVZvQWdj
CkFBQUFDZ0VBUUtyRldBVm9BZ2NBQUFBS0FRQmc2c1ZZQldnQ0J3QUFBQXNCQUNCS3NWWUJXZ0NC
d0FBQUFCVUdCUkVEaC9ST3pRcEwKM0tHVU9zUFVteGNmQUlBQUFBQUlBZXhkQVJvQWdjQUFBQUFL
QVFDQjdGMEJXZ0NCd0FBQUFBb0JBRUM3RjBCV2dDQndBQUFBQ2dFQQpZUHNYUUZhQUlIQUFBQUFL
QVFBZ1RzWFFGYUFJSEFBQUFCVUdCUkVEaC9ST3pRcEwzS0dVT3NQVW14Y2ZBSUFBQUFGUEpiZ2dJ
Q2xmCi8vZ3JnQWNSRVFDRXBRcmpEQUFjUVljS2tBQUpYNERnQUNTNEFCU1NJa0pzaGtaZ3c0QUZk
czJ4djFLcnVHSGN0OTk5OTk5OTk5OTkKOTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OS8rSC9o
d2dBRkdJSTNKRWxodWV6aE5mOEF3VG5ZNEZBQUNFeUFBSVBnZ0FBZy9BQQpDREhnQWI1dW1BQUlE
SGt3QUFnNnZwWUFBZ05BQUNEdXhBQnBKYUFBRUJIV2dBQ0M1LzUwc0FBUUV3QUJCZVlVdGRkZGRk
ZGRkZGRkCmRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZE1sUzExMTExMTExMTExMTExMTEx
MTExMTExMTExMTExMTExMTExMTExMTExMHkKVkxYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhY
WFhYWFhYWFhYWFhYWFRKVXRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZApkZGRkZGRkZGRk
ZGRNbFMxMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTB5WUFBQUVnSlFD
QnVDQWdMVi8vCitDS0tBQUlVbmpnQUNjL0hBQUV4NisrKysrKysrKysrKysrKysrKysrKysrKysr
KysrKysrKysrKysrKysvL0Qvd1dFQWNBQXNBS0IKQlZNL2lBQUNFdUFBSVBVUUFBUWZnQUJCandj
QUFRR2dBQkIzWWc0QUFnTkFBQ0R1eEJ3QUJBVEFBRUY1aURnQUNBbUFBSUx6Q2xycgpycnJycnJy
cnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJwa3FXdXV1dXV1dXV1dXV1dXV1dXV1dXV1
dXV1dXV1dXV1dXV1CnV1dXV1dXV1bVNwYTY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2
NjY2NjY2NjY2WktscnJycnJycnJycnJycnJycnJycnIKcnJycnJycnJycnJycnJycnJycnJycGtx
V3V1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1bVRBQUFCSVNVQQpRSzRJ
Q0F0WC8vNElvb0FBaFNlT0FBSno4Y0FBVEhyNzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3
Nzc3Nzc3Nzc3Ny84UC9CCllRQndBQ3dBb0VGVXorSUFBSVM0QUFnOVJBQUJCK0FBRUdQQndBQkFh
QUFFSGRpRGdBQ0EwQUFJTzdFSEFBRUJNQUFRWG1JT0FBSUMKWUFBZ3ZNS1d1dXV1dXV1dXV1dXV1
dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dW1TcGE2NjY2NjY2NjY2NjY2NjY2NjY2NjY2Ngo2
NjY2NjY2NjY2NjY2NjY2NjZaS2xycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJy
cnJycnBrcVd1dXV1dXV1dXV1CnV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXVtU3BhNjY2
NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjYKWk1BQUFBRWhKUUJnN2dnSUMx
Zi8vZ2lpZ0FDRko0NEFBblB4d0FCTWV2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2
dgp2dnZ2dnYvdy84RmhBSEFBTEFDZ1FWVFA0Z0FBaExnQUNEMUVBQUVINEFBUVk4SEFBRUJvQUFR
ZDJJT0FBSURRQUFnN3NRY0FBUUV3CkFCQmVZZzRBQWdKZ0FDQzh3cGE2NjY2NjY2NjY2NjY2NjY2
NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NlpLbHJycnJycnJycnJycnIKcnJycnJycnJycnJycnJy
cnJycnJycnJycnJycnBrcVd1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1
dW1TcAphNjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjZaS2xycnJycnJy
cnJycnJycnJycnJycnJycnJycnJycnJyCnJycnJycnJycnJwa3dBQUFBWGNsQUNCTGdnSUMxZi8v
Z2lpZ0FDRko0NEFBblB4d0FCTWV2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnYKdnZ2dnZ2dnZ2dnZ2
dnZ2dnYvdy84RmhBSEFBTEFDZ1FWVFA0Z0FBaExnQUNEMUVBQUVINEFBUVk4SEFBRUJvQUFRZDJJ
T0FBSURRQQpBZzdzUWNBQVFFd0FCQmVZZzRBQWdKZ0FDQzh3cGE2NjY2NjY2NjY2NjY2NjY2NjY2
NjY2NjY2NjY2NjY2NjY2NjY2NjY2NlpLbHJyCnJycnJycnJycnJycnJycnJycnJycnJycnJycnJy
cnJycnJycnJycnBrcVd1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXUKdXV1dXV1dXVt
U3BhNjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjZaSVd3QUVaa1pHWkdS
R1JrWC9nQUd5TQp3RUxTaGZHV0Mvd2xwQUM0QUZkTWpZbnlIUjJEd0FLVFJwRGJxUldjTlMxMTEx
MTExMTExMTExMTExMTExMTExMTExMTExMTExMTExCjExMTExMXdzeUFBSXlJekl6SWpJak12LzhB
RHFFRmJzaVBLMjR6ZDk0QjNnQWFaUGszem4zQUNlYW1sMy9yY0FBQUFWQmdVUkE0ZjAKVHMwS1M5
eWhsRHJEMUpzWEh3Q0FBQUFBQ0NIaENRQ2xBRURnQUFBQUNpRUFnZUVKQUxVQVFPQUFBQUFLSVFC
QXVFSkFMVUFRT0FBQQpBQW9oQUdENFFrQXRRQkE0QUFBQURDRUFJRTRRa0F0UURZOEZjQUFBQUJV
R0JSRURoL1JPelFwTDNLR1VPc1BVbXhjZkFJQUFBQUFJCkFhaUJZQkdnQ0J3QUFBQUtBUUNCcUlG
Z0ZhQUlIQUFBQUFvQkFFQ3FJRmdGYUFJSEFBQUFDZ0VBWU9vZ1dBVm9BZ2NBQUFBTEFRQWcKU29n
V0FWb0FnY0FBQUFBVkJnVVJBNGYwVHMwS1M5eWhsRHJEMUpzWEh3Q0FBQUFBQ0NIaUVRQ2xBRURn
QUFBQUNpRUFnZUlSQUxVQQpRT0FBQUFBS0lRQkF1SVJBTFVBUU9BQUFBQW9oQUdENGhFQXRRQkE0
QUFBQURDRUFJRTRoRUF0UURZOEZjQUFBQUJVR0JSRURoL1JPCnpRcEwzS0dVT3NQVW14Y2ZBSUFB
QUFBSUFhakRZQkdnQ0J3QUFBQUtBUUNCcU1OZ0ZhQUlIQUFBQUFvQkFFQ3FNTmdGYUFJSEFBQUEK
Q2dFQVlPb3cyQVZvQWdjQUFBQUxBUUFnU293MkFWb0FnY0FBQUFBVkJnVVJBNGYwVHMwS1M5eWhs
RHJEMUpzWEh3Q0FBQUFBQ0NIagpHUUNsQUVEZ0FBQUFDaUVBZ2VNWkFMVUFRT0FBQUFBS0lRQkF1
TVpBTFVBUU9BQUFBQW9oQUdENHhrQXRRQkE0QUFBQURDRUFJRTR4CmtBdFFEWThGY0FBQUFCVUdC
UkVEaC9ST3pRcEwzS0dVT3NQVW14Y2ZBSUFBQUFBSUFha0ZZQkdnQ0J3QUFBQUtBUUNCcVFWZ0Zh
QUkKSEFBQUFBb0JBRUNxUVZnRmFBSUhBQUFBQ2dFQVlPcEJXQVZvQWdjQUFBQUxBUUFnU3BCV0FW
b0FnY0E9Cgo=
</data>
<flag name="commit-queue"
          id="241137"
          type_id="3"
          status="-"
          setter="eflews.bot"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>217913</attachid>
            <date>2013-11-26 17:29:29 -0800</date>
            <delta_ts>2013-11-27 11:16:42 -0800</delta_ts>
            <desc>Updated patch</desc>
            <filename>patch_12.txt</filename>
            <type>text/plain</type>
            <size>130260</size>
            <attacher name="Eric Carlson">eric.carlson</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDE1OTc5MCkKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDEwOCBAQAorMjAxMy0xMS0yNiAgRXJpYyBD
YXJsc29uICA8ZXJpYy5jYXJsc29uQGFwcGxlLmNvbT4KKworICAgICAgICBBbGxvdyB0aGUgUXVp
Y2tUaW1lIHBsdWctaW4gdG8gYmUgcmVwbGFjZWQgYnkgc2NyaXB0IGluIGFuIGlzb2xhdGVkIHdv
cmQKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEyNDkw
MAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFRlc3Q6
IHBsdWdpbnMvcXVpY2t0aW1lLXBsdWdpbi1yZXBsYWNlbWVudC5odG1sCisKKyAgICAgICAgKiBD
TWFrZUxpc3RzLnR4dDogQWRkIG5ldyBNb2R1bGVzIHBhdGguCisgICAgICAgICogRGVyaXZlZFNv
dXJjZXMubWFrZTogQWRkIG5ldyBmaWxlcy4KKyAgICAgICAgKiBHTlVtYWtlZmlsZS5saXN0LmFt
OiBJbmNsdWRlIG5ldyBoZWFkZXIuCisgICAgICAgICogV2ViQ29yZS52Y3hwcm9qL1dlYkNvcmUu
dmN4cHJvajoKKworICAgICAgICAqIE1vZHVsZXMvcGx1Z2luczogQWRkZWQuCisgICAgICAgICog
TW9kdWxlcy9wbHVnaW5zL1BsdWdpblJlcGxhY2VtZW50Lmg6IEFkZGVkLiBEZWZpbmVzIHRoZSBp
bnRlcmZhY2UgZm9yIGEgcGx1Zy1pbiByZXBsYWNlbWVudC4KKworICAgICAgICBDcmVhdGUgYSBy
ZXBsYWNlbWVudCBmb3IgdGhlIFF1aWNrVGltZSBwbHVnLWluLgorICAgICAgICAqIE1vZHVsZXMv
cGx1Z2lucy9RdWlja1RpbWVQbHVnaW5SZXBsYWNlbWVudC5jcHA6IEFkZGVkLgorICAgICAgICAq
IE1vZHVsZXMvcGx1Z2lucy9RdWlja1RpbWVQbHVnaW5SZXBsYWNlbWVudC5jc3M6IEFkZGVkLgor
ICAgICAgICAqIE1vZHVsZXMvcGx1Z2lucy9RdWlja1RpbWVQbHVnaW5SZXBsYWNlbWVudC5oOiBB
ZGRlZC4KKyAgICAgICAgKiBNb2R1bGVzL3BsdWdpbnMvUXVpY2tUaW1lUGx1Z2luUmVwbGFjZW1l
bnQuaWRsOiBBZGRlZC4KKyAgICAgICAgKiBNb2R1bGVzL3BsdWdpbnMvUXVpY2tUaW1lUGx1Z2lu
UmVwbGFjZW1lbnQuanM6IEFkZGVkLgorCisgICAgICAgICogV2ViQ29yZS54Y29kZXByb2ovcHJv
amVjdC5wYnhwcm9qOiBBZGQgbmV3IGZpbGVzLgorCisgICAgICAgIEFsbG93IHBsdWctaW4gcmVw
bGFjZW1lbnQgdG8gYmUgZW5hYmxlZCBhdCBydW50aW1lLgorICAgICAgICAqIGJpbmRpbmdzL2dl
bmVyaWMvUnVudGltZUVuYWJsZWRGZWF0dXJlcy5oOgorICAgICAgICAoV2ViQ29yZTo6UnVudGlt
ZUVuYWJsZWRGZWF0dXJlczo6c2V0UGx1Z2luUmVwbGFjZW1lbnRFbmFibGVkKToKKyAgICAgICAg
KFdlYkNvcmU6OlJ1bnRpbWVFbmFibGVkRmVhdHVyZXM6OnBsdWdpblJlcGxhY2VtZW50RW5hYmxl
ZCk6CisKKyAgICAgICAgKiBiaW5kaW5ncy9qcy9KU0RPTUJpbmRpbmcuaDoKKyAgICAgICAgKFdl
YkNvcmU6OnRvSlMpOiBBZGQgdG9KUyguLi4gY29uc3QgU3RyaW5nJiAuLi4pLgorCisgICAgICAg
ICogYmluZGluZ3MvanMvSlNQbHVnaW5FbGVtZW50RnVuY3Rpb25zLmNwcDoKKyAgICAgICAgKFdl
YkNvcmU6OnBsdWdpblNjcmlwdE9iamVjdCk6IEdpdmUgYSBwbHVnLWluIHJlcGxhY2VtZW50IGEg
Zmlyc3Qgc2hvdCBhdCBkZWZpbmluZyB0aGUKKyAgICAgICAgICAgIHNjcmlwdCBpbnRlcmZhY2Uu
CisKKyAgICAgICAgKiBodG1sL0hUTUxFbWJlZEVsZW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29y
ZTo6SFRNTEVtYmVkRWxlbWVudDo6dXBkYXRlV2lkZ2V0KTogQ2FsbCBiYXNlIGNsYXNzIHJlcXVl
c3RPYmplY3QuCisKKyAgICAgICAgKiBodG1sL0hUTUxNZWRpYUVsZW1lbnQuY3BwOgorICAgICAg
ICAoSFRNTE1lZGlhRWxlbWVudDo6ZmlsZVNpemUpOiBOZXcsIHBhc3N0aHJvdWdoIHRvIG1lZGlh
IGVuZ2luZS4KKyAgICAgICAgKiBodG1sL0hUTUxNZWRpYUVsZW1lbnQuaDoKKworICAgICAgICAq
IGh0bWwvSFRNTE9iamVjdEVsZW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6SFRNTE9iamVj
dEVsZW1lbnQ6OnVwZGF0ZVdpZGdldCk6IENhbGwgYmFzZSBjbGFzcyByZXF1ZXN0T2JqZWN0Lgor
CisgICAgICAgIE1vdmVkIHNvbWUgbG9naWMgdGhhdCB3YXMgcHJldmlvdXNseSB1c2VkIG9ubHkg
Zm9yIGNyZWF0aW5nIGEgcGx1Zy1pbiBzbmFwc2hvdCB0byB0aGUgYmFzZQorICAgICAgICBjbGFz
cyBzbyBpdCBjYW4gYmUgc2hhcmVkIGJ5IGEgcGx1Zy1pbiByZXBsYWNlbWVudC4KKyAgICAgICAg
KiBodG1sL0hUTUxQbHVnSW5FbGVtZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkhUTUxQbHVn
SW5FbGVtZW50OjpIVE1MUGx1Z0luRWxlbWVudCk6IEluaXRpYWxpemUgdGltZXIgdXNlZCB0byBz
d2FwIHJlbmRlcmVycy4KKyAgICAgICAgKFdlYkNvcmU6OkhUTUxQbHVnSW5FbGVtZW50OjpjcmVh
dGVSZW5kZXJlcik6IEFsbG93IHBsdWctaW4gcmVwbGFjZW1lbnQgdG8gY3JlYXRlIHRoZSByZW5k
ZXJlci4KKyAgICAgICAgKFdlYkNvcmU6OkhUTUxQbHVnSW5FbGVtZW50Ojpzd2FwUmVuZGVyZXJU
aW1lckZpcmVkKTogQ3JlYXRlIGEgc2hhZG93IHJvb3QuCisgICAgICAgIChXZWJDb3JlOjpIVE1M
UGx1Z0luRWxlbWVudDo6c2V0RGlzcGxheVN0YXRlKTogU2V0IHRoZSBuZXcgc3RhdGUsIHByaW1l
IHRoZSBzd2FwIHJlbmRlcmVyIAorICAgICAgICAgICAgdGltZXIgaWYgbmVjZXNzYXJ5LgorICAg
ICAgICAoV2ViQ29yZTo6SFRNTFBsdWdJbkVsZW1lbnQ6OmRpZEFkZFVzZXJBZ2VudFNoYWRvd1Jv
b3QpOiBUZWxsIHRoZSBwbHVnLWluIHJlcGxhY2VtZW50IHRvCisgICAgICAgICAgICBpbnN0YWxs
IGl0c2VsZiBpbiB0aGUgbmV3IHNoYWRvdyBET00uCisgICAgICAgIChXZWJDb3JlOjpyZWdpc3Rl
cmVkUGx1Z2luUmVwbGFjZW1lbnRzKTogUmV0dXJuIHZlY3RvciBvZiBhbGwgcmVnaXN0ZXJlZCBw
bHVnLWluIHJlcGxhY2VtZW50cy4KKyAgICAgICAgKFdlYkNvcmU6OnJlZ2lzdGVyUGx1Z2luUmVw
bGFjZW1lbnQpOiBBZGQgYSBwbHVnLWluIHJlcGxhY2VtZW50LgorICAgICAgICAoV2ViQ29yZTo6
cGx1Z2luUmVwbGFjZW1lbnRGb3JUeXBlKTogRmluZCBhIHBsdWctaW4gcmVwbGFjZW1lbnQgZm9y
IGEgTUlNRSB0eXBlLgorICAgICAgICAoV2ViQ29yZTo6SFRNTFBsdWdJbkVsZW1lbnQ6OnJlcXVl
c3RPYmplY3QpOiBJZiB0aGVyZSBpcyBhIHBsdWctaW4gcmVwbGFjZW1lbnQgZm9yIHRoZSBNSU1F
IHR5cGUsCisgICAgICAgICAgICBjcmVhdGUgaXQgYW5kIHNldCB0aGUgZGlzcGxheSBzdGF0ZS4K
KyAgICAgICAgKFdlYkNvcmU6OkhUTUxQbHVnSW5FbGVtZW50OjpzY3JpcHRPYmplY3RGb3JQbHVn
aW5SZXBsYWNlbWVudCk6IFJldHVybiB0aGUgc2NyaXB0IG9iamVjdCBmb3IgCisgICAgICAgICAg
ICB0aGUgY3VycmVudCBwbHVnLWluIHJlcGxhY2VtZW50LCBpZiBhbnkuCisgICAgICAgICogaHRt
bC9IVE1MUGx1Z0luRWxlbWVudC5oOgorCisgICAgICAgIE1vdmUgc29tZSBwbHVnLWluIHNuYXBz
aG90IGNvZGUgaW50byB0aGUgYmFzZSBjbGFzcy4KKyAgICAgICAgKiBodG1sL0hUTUxQbHVnSW5J
bWFnZUVsZW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6SFRNTFBsdWdJbkltYWdlRWxlbWVu
dDo6SFRNTFBsdWdJbkltYWdlRWxlbWVudCk6IE5vIG5lZWQgdG8gaW5pdGlhbGl6ZSB0aW1lci4K
KyAgICAgICAgKFdlYkNvcmU6OkhUTUxQbHVnSW5JbWFnZUVsZW1lbnQ6OnNldERpc3BsYXlTdGF0
ZSk6IENhbGwgYmFzZSBjbGFzcy4KKyAgICAgICAgKFdlYkNvcmU6OkhUTUxQbHVnSW5JbWFnZUVs
ZW1lbnQ6OmNyZWF0ZVJlbmRlcmVyKTogRGl0dG8uCisgICAgICAgIChXZWJDb3JlOjpIVE1MUGx1
Z0luSW1hZ2VFbGVtZW50OjpkaWRBZGRVc2VyQWdlbnRTaGFkb3dSb290KTogRGl0dG8uCisgICAg
ICAgIChXZWJDb3JlOjpIVE1MUGx1Z0luSW1hZ2VFbGVtZW50Ojp1c2VyRGlkQ2xpY2tTbmFwc2hv
dCk6IFJlbW92ZSB1bm5lY2Vzc2FyeSBjbGFzcyBuYW1lLgorICAgICAgICAoV2ViQ29yZTo6SFRN
TFBsdWdJbkltYWdlRWxlbWVudDo6cmVxdWVzdE9iamVjdCk6IE5ldy4KKyAgICAgICAgKiBodG1s
L0hUTUxQbHVnSW5JbWFnZUVsZW1lbnQuaDoKKworICAgICAgICAqIGh0bWwvSFRNTFZpZGVvRWxl
bWVudC5oOiBNYWtlIGNyZWF0ZVJlbmRlcmVyIHB1YmxpYyBzbyB0aGUgUXVpY2tUaW1lIHBsdWct
aW4gcmVwbGFjZW1lbnQgY2FuCisgICAgICAgICAgICBjYWxsIGl0LgorCisgICAgICAgICogcGxh
dGZvcm0vZ3JhcGhpY3MvTWVkaWFQbGF5ZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6TWVkaWFQ
bGF5ZXI6OmZpbGVTaXplKTogTmV3LgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL01lZGlh
UGxheWVyLmg6CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvTWVkaWFQbGF5ZXJQcml2YXRl
Lmg6CisKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9hdmZvdW5kYXRpb24vTWVkaWFQbGF5
ZXJQcml2YXRlQVZGb3VuZGF0aW9uLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6Ok1lZGlhUGxheWVy
UHJpdmF0ZUFWRm91bmRhdGlvbjo6ZXh0cmFNZW1vcnlDb3N0KTogdG90YWxCeXRlcyByZXR1cm5z
IGFuIHVuc2lnbmVkIGxvbmcgbG9uZy4KKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9hdmZv
dW5kYXRpb24vTWVkaWFQbGF5ZXJQcml2YXRlQVZGb3VuZGF0aW9uLmg6CisgICAgICAgIChXZWJD
b3JlOjpNZWRpYVBsYXllclByaXZhdGVBVkZvdW5kYXRpb246OmZpbGVTaXplKToKKworICAgICAg
ICAqIHBsYXRmb3JtL2dyYXBoaWNzL2F2Zm91bmRhdGlvbi9jZi9NZWRpYVBsYXllclByaXZhdGVB
VkZvdW5kYXRpb25DRi5jcHA6CisgICAgICAgIChXZWJDb3JlOjpNZWRpYVBsYXllclByaXZhdGVB
VkZvdW5kYXRpb25DRjo6dG90YWxCeXRlcyk6IFJldHVybiBhbiB1bnNpZ25lZCBsb25nIGxvbmcu
CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvYXZmb3VuZGF0aW9uL2NmL01lZGlhUGxheWVy
UHJpdmF0ZUFWRm91bmRhdGlvbkNGLmg6CisKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9h
dmZvdW5kYXRpb24vb2JqYy9NZWRpYVBsYXllclByaXZhdGVBVkZvdW5kYXRpb25PYmpDLmg6Cisg
ICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvYXZmb3VuZGF0aW9uL29iamMvTWVkaWFQbGF5ZXJQ
cml2YXRlQVZGb3VuZGF0aW9uT2JqQy5tbToKKyAgICAgICAgKFdlYkNvcmU6Ok1lZGlhUGxheWVy
UHJpdmF0ZUFWRm91bmRhdGlvbk9iakM6OnRvdGFsQnl0ZXMpOiBEaXR0by4KKworICAgICAgICAq
IHRlc3RpbmcvSW50ZXJuYWxTZXR0aW5ncy5jcHA6CisgICAgICAgIChXZWJDb3JlOjpJbnRlcm5h
bFNldHRpbmdzOjpCYWNrdXA6OkJhY2t1cCk6IEJhY2t1cCB0aGUgcGx1Zy1pbiByZXBsYWNlbWVu
dCBydW50aW1lIHNldHRpbmcuCisgICAgICAgIChXZWJDb3JlOjpJbnRlcm5hbFNldHRpbmdzOjpC
YWNrdXA6OnJlc3RvcmVUbyk6IFJlc3RvcmUgaXQuCisgICAgICAgIChXZWJDb3JlOjpJbnRlcm5h
bFNldHRpbmdzOjpzZXRQbHVnaW5SZXBsYWNlbWVudEVuYWJsZWQpOiBTZXQgaXQuCisgICAgICAg
ICogdGVzdGluZy9JbnRlcm5hbFNldHRpbmdzLmg6CisgICAgICAgICogdGVzdGluZy9JbnRlcm5h
bFNldHRpbmdzLmlkbDoKKwogMjAxMy0xMS0yNiAgRXJpYyBDYXJsc29uICA8ZXJpYy5jYXJsc29u
QGFwcGxlLmNvbT4KIAogICAgICAgICB2aWRlby5jdXJyZW50U3JjIHNob3VsZCByZXR1cm4gZW1w
dHkgd2hlbiBubyByZXNvdXJjZSBpcyBsb2FkZWQKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NNYWtl
TGlzdHMudHh0Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL0NNYWtlTGlzdHMudHh0CShy
ZXZpc2lvbiAxNTk3MzYpCisrKyBTb3VyY2UvV2ViQ29yZS9DTWFrZUxpc3RzLnR4dAkod29ya2lu
ZyBjb3B5KQpAQCAtMTEsNiArMTEsNyBAQCBzZXQoV2ViQ29yZV9JTkNMVURFX0RJUkVDVE9SSUVT
CiAgICAgIiR7V0VCQ09SRV9ESVJ9L01vZHVsZXMvbmF2aWdhdG9yY29udGVudHV0aWxzIgogICAg
ICIke1dFQkNPUkVfRElSfS9Nb2R1bGVzL25ldHdvcmtpbmZvIgogICAgICIke1dFQkNPUkVfRElS
fS9Nb2R1bGVzL25vdGlmaWNhdGlvbnMiCisgICAgIiR7V0VCQ09SRV9ESVJ9L01vZHVsZXMvcGx1
Z2lucyIKICAgICAiJHtXRUJDT1JFX0RJUn0vTW9kdWxlcy9wcm94aW1pdHkiCiAgICAgIiR7V0VC
Q09SRV9ESVJ9L01vZHVsZXMvcXVvdGEiCiAgICAgIiR7V0VCQ09SRV9ESVJ9L01vZHVsZXMvdmli
cmF0aW9uIgpJbmRleDogU291cmNlL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMubWFrZQo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9EZXJpdmVkU291cmNlcy5tYWtlCShyZXZpc2lvbiAxNTk3
MzYpCisrKyBTb3VyY2UvV2ViQ29yZS9EZXJpdmVkU291cmNlcy5tYWtlCSh3b3JraW5nIGNvcHkp
CkBAIC0zNiw2ICszNiw3IEBAIFZQQVRIID0gXAogICAgICQoV2ViQ29yZSkvTW9kdWxlcy9tZWRp
YXNvdXJjZSBcCiAgICAgJChXZWJDb3JlKS9Nb2R1bGVzL21lZGlhc3RyZWFtIFwKICAgICAkKFdl
YkNvcmUpL01vZHVsZXMvbm90aWZpY2F0aW9ucyBcCisgICAgJChXZWJDb3JlKS9Nb2R1bGVzL3Bs
dWdpbnMgXAogICAgICQoV2ViQ29yZSkvTW9kdWxlcy9xdW90YSBcCiAgICAgJChXZWJDb3JlKS9N
b2R1bGVzL3NwZWVjaCBcCiAgICAgJChXZWJDb3JlKS9Nb2R1bGVzL3dlYmF1ZGlvIFwKQEAgLTE0
MCw2ICsxNDEsNyBAQCBCSU5ESU5HX0lETFMgPSBcCiAgICAgJChXZWJDb3JlKS9Nb2R1bGVzL25v
dGlmaWNhdGlvbnMvTm90aWZpY2F0aW9uQ2VudGVyLmlkbCBcCiAgICAgJChXZWJDb3JlKS9Nb2R1
bGVzL25vdGlmaWNhdGlvbnMvTm90aWZpY2F0aW9uUGVybWlzc2lvbkNhbGxiYWNrLmlkbCBcCiAg
ICAgJChXZWJDb3JlKS9Nb2R1bGVzL25vdGlmaWNhdGlvbnMvV29ya2VyR2xvYmFsU2NvcGVOb3Rp
ZmljYXRpb25zLmlkbCBcCisgICAgJChXZWJDb3JlKS9Nb2R1bGVzL3BsdWdpbnMvUXVpY2tUaW1l
UGx1Z2luUmVwbGFjZW1lbnQuaWRsIFwKICAgICAkKFdlYkNvcmUpL01vZHVsZXMvcXVvdGEvRE9N
V2luZG93UXVvdGEuaWRsIFwKICAgICAkKFdlYkNvcmUpL01vZHVsZXMvcXVvdGEvTmF2aWdhdG9y
U3RvcmFnZVF1b3RhLmlkbCBcCiAgICAgJChXZWJDb3JlKS9Nb2R1bGVzL3F1b3RhL1N0b3JhZ2VJ
bmZvLmlkbCBcCkBAIC04NjksNiArODcxLDEwIEBAIGlmZXEgKCQoZmluZHN0cmluZyBFTkFCTEVf
TUVESUFfQ09OVFJPTFMKIAlVU0VSX0FHRU5UX1NUWUxFX1NIRUVUUyA6PSAkKFVTRVJfQUdFTlRf
U1RZTEVfU0hFRVRTKSAkKFdlYkNvcmUpL01vZHVsZXMvbWVkaWFjb250cm9scy9tZWRpYUNvbnRy
b2xzQXBwbGUuY3NzCiBlbmRpZgogCitpZmVxICgkKE9TKSxNQUNPUykKKwlVU0VSX0FHRU5UX1NU
WUxFX1NIRUVUUyAgOj0gJChVU0VSX0FHRU5UX1NUWUxFX1NIRUVUUykgJChXZWJDb3JlKS9Nb2R1
bGVzL3BsdWdpbnMvUXVpY2tUaW1lUGx1Z2luUmVwbGFjZW1lbnQuY3NzCitlbmRpZgorCiBVc2Vy
QWdlbnRTdHlsZVNoZWV0cy5oIDogY3NzL21ha2UtY3NzLWZpbGUtYXJyYXlzLnBsIGJpbmRpbmdz
L3NjcmlwdHMvcHJlcHJvY2Vzc29yLnBtICQoVVNFUl9BR0VOVF9TVFlMRV9TSEVFVFMpICQoUExB
VEZPUk1fRkVBVFVSRV9ERUZJTkVTKQogCXBlcmwgLUkkKFdlYkNvcmUpL2JpbmRpbmdzL3Njcmlw
dHMgJDwgLS1kZWZpbmVzICIkKEZFQVRVUkVfREVGSU5FUykiICRAIFVzZXJBZ2VudFN0eWxlU2hl
ZXRzRGF0YS5jcHAgJChVU0VSX0FHRU5UX1NUWUxFX1NIRUVUUykKIApAQCAtODgyLDYgKzg4OCw5
IEBAIGlmZXEgKCQoZmluZHN0cmluZyBFTkFCTEVfTUVESUFfQ09OVFJPTFMKIAlVU0VSX0FHRU5U
X1NDUklQVFMgOj0gJChVU0VSX0FHRU5UX1NDUklQVFMpICQoV2ViQ29yZSkvTW9kdWxlcy9tZWRp
YWNvbnRyb2xzL21lZGlhQ29udHJvbHNBcHBsZS5qcwogZW5kaWYKIAoraWZlcSAoJChPUyksTUFD
T1MpCisJVVNFUl9BR0VOVF9TQ1JJUFRTICA6PSAkKFVTRVJfQUdFTlRfU0NSSVBUUykgJChXZWJD
b3JlKS9Nb2R1bGVzL3BsdWdpbnMvUXVpY2tUaW1lUGx1Z2luUmVwbGFjZW1lbnQuanMKK2VuZGlm
CiAKIFVzZXJBZ2VudFNjcmlwdHMuaCA6IGNzcy9tYWtlLWNzcy1maWxlLWFycmF5cy5wbCBiaW5k
aW5ncy9zY3JpcHRzL3ByZXByb2Nlc3Nvci5wbSAkKFVTRVJfQUdFTlRfU0NSSVBUUykgJChQTEFU
Rk9STV9GRUFUVVJFX0RFRklORVMpCiAJcGVybCAtSSQoV2ViQ29yZSkvYmluZGluZ3Mvc2NyaXB0
cyAkPCAtLWRlZmluZXMgIiQoRkVBVFVSRV9ERUZJTkVTKSIgJEAgVXNlckFnZW50U2NyaXB0c0Rh
dGEuY3BwICQoVVNFUl9BR0VOVF9TQ1JJUFRTKQpJbmRleDogU291cmNlL1dlYkNvcmUvR05VbWFr
ZWZpbGUubGlzdC5hbQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9HTlVtYWtlZmlsZS5s
aXN0LmFtCShyZXZpc2lvbiAxNTk3MzYpCisrKyBTb3VyY2UvV2ViQ29yZS9HTlVtYWtlZmlsZS5s
aXN0LmFtCSh3b3JraW5nIGNvcHkpCkBAIC0xOTczLDYgKzE5NzMsNyBAQCB3ZWJjb3JlX21vZHVs
ZXNfc291cmNlcyArPSBcCiAJU291cmNlL1dlYkNvcmUvTW9kdWxlcy9ub3RpZmljYXRpb25zL05v
dGlmaWNhdGlvblBlcm1pc3Npb25DYWxsYmFjay5oIFwKIAlTb3VyY2UvV2ViQ29yZS9Nb2R1bGVz
L25vdGlmaWNhdGlvbnMvV29ya2VyR2xvYmFsU2NvcGVOb3RpZmljYXRpb25zLmNwcCBcCiAJU291
cmNlL1dlYkNvcmUvTW9kdWxlcy9ub3RpZmljYXRpb25zL1dvcmtlckdsb2JhbFNjb3BlTm90aWZp
Y2F0aW9ucy5oIFwKKwlTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3BsdWdpbnMvUGx1Z2luUmVwbGFj
ZW1lbnQuaCBcCiAJU291cmNlL1dlYkNvcmUvTW9kdWxlcy9wcm94aW1pdHkvRGV2aWNlUHJveGlt
aXR5Q2xpZW50LmggXAogCVNvdXJjZS9XZWJDb3JlL01vZHVsZXMvcHJveGltaXR5L0RldmljZVBy
b3hpbWl0eUNvbnRyb2xsZXIuY3BwIFwKIAlTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3Byb3hpbWl0
eS9EZXZpY2VQcm94aW1pdHlDb250cm9sbGVyLmggXApJbmRleDogU291cmNlL1dlYkNvcmUvTW9k
dWxlcy9wbHVnaW5zL1BsdWdpblJlcGxhY2VtZW50LmgKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dl
YkNvcmUvTW9kdWxlcy9wbHVnaW5zL1BsdWdpblJlcGxhY2VtZW50LmgJKHJldmlzaW9uIDApCisr
KyBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3BsdWdpbnMvUGx1Z2luUmVwbGFjZW1lbnQuaAkod29y
a2luZyBjb3B5KQpAQCAtMCwwICsxLDkxIEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDEzIEFw
cGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQg
dXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlm
aWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0
aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBt
dXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBv
ZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3Ry
aWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdo
dAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2lu
ZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0
ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRX
QVJFIElTIFBST1ZJREVEIEJZIEFQUExFIENPTVBVVEVSLCBJTkMuIGBgQVMgSVMnJyBBTkQgQU5Z
CisgKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJ
TUlURUQgVE8sIFRIRQorICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBB
TkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiAg
SU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgQ09NUFVURVIsIElOQy4gT1IKKyAqIENPTlRSSUJVVE9S
UyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFM
LAorICogRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVU
IE5PVCBMSU1JVEVEIFRPLAorICogUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBT
RVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SCisgKiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJ
TlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZCisgKiBPRiBMSUFC
SUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKKyAq
IChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBP
VVQgT0YgVEhFIFVTRQorICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRI
RSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4gCisgKi8KKworI2lmbmRlZiBQbHVnaW5SZXBs
YWNlbWVudF9oCisjZGVmaW5lIFBsdWdpblJlcGxhY2VtZW50X2gKKworI2luY2x1ZGUgPHd0Zi9S
ZWZDb3VudGVkLmg+CisjaW5jbHVkZSA8d3RmL3RleHQvV1RGU3RyaW5nLmg+CisKK25hbWVzcGFj
ZSBKU0MgeworY2xhc3MgSlNPYmplY3Q7Cit9CisKK25hbWVzcGFjZSBXZWJDb3JlIHsKKworY2xh
c3MgSFRNTFBsdWdJbkVsZW1lbnQ7CitjbGFzcyBSZW5kZXJFbGVtZW50OworY2xhc3MgUmVuZGVy
U3R5bGU7CitjbGFzcyBTaGFkb3dSb290OworCitjbGFzcyBQbHVnaW5SZXBsYWNlbWVudCA6IHB1
YmxpYyBSZWZDb3VudGVkPFBsdWdpblJlcGxhY2VtZW50PiB7CitwdWJsaWM6CisgICAgdmlydHVh
bCB+UGx1Z2luUmVwbGFjZW1lbnQoKSB7IH0KKworICAgIHZpcnR1YWwgYm9vbCBpbnN0YWxsUmVw
bGFjZW1lbnQoU2hhZG93Um9vdCopID0gMDsKKyAgICB2aXJ0dWFsIEpTQzo6SlNPYmplY3QqIHNj
cmlwdE9iamVjdCgpIHsgcmV0dXJuIDA7IH0KKworICAgIHZpcnR1YWwgYm9vbCB3aWxsQ3JlYXRl
UmVuZGVyZXIoKSB7IHJldHVybiBmYWxzZTsgfQorICAgIHZpcnR1YWwgUmVuZGVyRWxlbWVudCog
Y3JlYXRlUmVuZGVyZXIoSFRNTFBsdWdJbkVsZW1lbnQmLCBQYXNzUmVmPFJlbmRlclN0eWxlPikg
PSAwOworCitwcm90ZWN0ZWQ6CisgICAgUGx1Z2luUmVwbGFjZW1lbnQoKSB7IH0KK307CisKK3R5
cGVkZWYgUGFzc1JlZlB0cjxQbHVnaW5SZXBsYWNlbWVudD4gKCpDcmVhdGVQbHVnaW5SZXBsYWNl
bWVudCkoSFRNTFBsdWdJbkVsZW1lbnQmLCBjb25zdCBWZWN0b3I8U3RyaW5nPiYgcGFyYW1OYW1l
cywgY29uc3QgVmVjdG9yPFN0cmluZz4mIHBhcmFtVmFsdWVzKTsKK3R5cGVkZWYgYm9vbCAoKlBs
dWdpblJlcGxhY2VtZW50U3VwcG9ydHNUeXBlKShjb25zdCBTdHJpbmcmKTsKK3R5cGVkZWYgYm9v
bCAoKlBsdWdpblJlcGxhY2VtZW50U3VwcG9ydHNGaWxlRXh0ZW5zaW9uKShjb25zdCBTdHJpbmcm
KTsKKworY2xhc3MgUmVwbGFjZW1lbnRQbHVnaW4geworcHVibGljOgorICAgIFJlcGxhY2VtZW50
UGx1Z2luKENyZWF0ZVBsdWdpblJlcGxhY2VtZW50IGNvbnN0cnVjdG9yLCBQbHVnaW5SZXBsYWNl
bWVudFN1cHBvcnRzVHlwZSBzdXBwb3J0c1R5cGUsIFBsdWdpblJlcGxhY2VtZW50U3VwcG9ydHNG
aWxlRXh0ZW5zaW9uIHN1cHBvcnRzRmlsZUV4dGVuc2lvbikKKyAgICAgICAgOiBtX2NvbnN0cnVj
dG9yKGNvbnN0cnVjdG9yKQorICAgICAgICAsIG1fc3VwcG9ydHNUeXBlKHN1cHBvcnRzVHlwZSkK
KyAgICAgICAgLCBtX3N1cHBvcnRzRmlsZUV4dGVuc2lvbihzdXBwb3J0c0ZpbGVFeHRlbnNpb24p
CisgICAgeworICAgIH0KKworICAgIGV4cGxpY2l0IFJlcGxhY2VtZW50UGx1Z2luKGNvbnN0IFJl
cGxhY2VtZW50UGx1Z2luJiBvdGhlcikKKyAgICAgICAgOiBtX2NvbnN0cnVjdG9yKG90aGVyLm1f
Y29uc3RydWN0b3IpCisgICAgICAgICwgbV9zdXBwb3J0c1R5cGUob3RoZXIubV9zdXBwb3J0c1R5
cGUpCisgICAgICAgICwgbV9zdXBwb3J0c0ZpbGVFeHRlbnNpb24ob3RoZXIubV9zdXBwb3J0c0Zp
bGVFeHRlbnNpb24pCisgICAgeworICAgIH0KKworICAgIFBhc3NSZWZQdHI8UGx1Z2luUmVwbGFj
ZW1lbnQ+IGNyZWF0ZShIVE1MUGx1Z0luRWxlbWVudCYgZWxlbWVudCwgY29uc3QgVmVjdG9yPFN0
cmluZz4mIHBhcmFtTmFtZXMsIGNvbnN0IFZlY3RvcjxTdHJpbmc+JiBwYXJhbVZhbHVlcykgY29u
c3QgeyByZXR1cm4gbV9jb25zdHJ1Y3RvcihlbGVtZW50LCBwYXJhbU5hbWVzLCBwYXJhbVZhbHVl
cyk7IH0KKyAgICBib29sIHN1cHBvcnRzVHlwZShjb25zdCBTdHJpbmcmIG1pbWVUeXBlKSBjb25z
dCB7IHJldHVybiBtX3N1cHBvcnRzVHlwZShtaW1lVHlwZSk7IH0KKyAgICBib29sIHN1cHBvcnRz
RmlsZUV4dGVuc2lvbihjb25zdCBTdHJpbmcmIGV4dGVuc2lvbikgY29uc3QgeyByZXR1cm4gbV9z
dXBwb3J0c0ZpbGVFeHRlbnNpb24oZXh0ZW5zaW9uKTsgfQorCitwcml2YXRlOgorICAgIENyZWF0
ZVBsdWdpblJlcGxhY2VtZW50IG1fY29uc3RydWN0b3I7CisgICAgUGx1Z2luUmVwbGFjZW1lbnRT
dXBwb3J0c1R5cGUgbV9zdXBwb3J0c1R5cGU7CisgICAgUGx1Z2luUmVwbGFjZW1lbnRTdXBwb3J0
c0ZpbGVFeHRlbnNpb24gbV9zdXBwb3J0c0ZpbGVFeHRlbnNpb247Cit9OworCit0eXBlZGVmIHZv
aWQgKCpQbHVnaW5SZXBsYWNlbWVudFJlZ2lzdHJhcikoY29uc3QgUmVwbGFjZW1lbnRQbHVnaW4m
KTsKKworfQorCisjZW5kaWYKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvcGx1Z2lucy9R
dWlja1RpbWVQbHVnaW5SZXBsYWNlbWVudC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNv
cmUvTW9kdWxlcy9wbHVnaW5zL1F1aWNrVGltZVBsdWdpblJlcGxhY2VtZW50LmNwcAkocmV2aXNp
b24gMCkKKysrIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvcGx1Z2lucy9RdWlja1RpbWVQbHVnaW5S
ZXBsYWNlbWVudC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTAsMCArMSwyMzQgQEAKKy8qCisgKiBD
b3B5cmlnaHQgKEMpIDIwMTMgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAq
IFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGgg
b3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQg
dGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRp
b25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAg
IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xh
aW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVj
ZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRp
b25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0
aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9u
LgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgQ09NUFVURVIsIElO
Qy4gYGBBUyBJUycnIEFORCBBTlkKKyAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJ
TkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCisgKiBJTVBMSUVEIFdBUlJBTlRJRVMg
T0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAqIFBVUlBP
U0UgQVJFIERJU0NMQUlNRUQuICBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBDT01QVVRFUiwgSU5D
LiBPUgorICogQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1Qs
IElOQ0lERU5UQUwsIFNQRUNJQUwsCisgKiBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFN
QUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBQUk9DVVJFTUVOVCBPRiBT
VUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IKKyAqIFBS
T0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFO
WSBUSEVPUlkKKyAqIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJ
QUJJTElUWSwgT1IgVE9SVAorICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkg
QVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCisgKiBPRiBUSElTIFNPRlRXQVJFLCBF
VkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLiAKKyAqLwor
CisjaW5jbHVkZSAiY29uZmlnLmgiCisKKyNpZiBFTkFCTEUoTUVESUFfQ09OVFJPTFNfU0NSSVBU
KQorCisjaW5jbHVkZSAiUXVpY2tUaW1lUGx1Z2luUmVwbGFjZW1lbnQuaCIKKworI2luY2x1ZGUg
IkV2ZW50LmgiCisjaW5jbHVkZSAiSFRNTFBsdWdJbkVsZW1lbnQuaCIKKyNpbmNsdWRlICJIVE1M
VmlkZW9FbGVtZW50LmgiCisjaW5jbHVkZSAiSlNET01CaW5kaW5nLmgiCisjaW5jbHVkZSAiSlNE
T01HbG9iYWxPYmplY3QuaCIKKyNpbmNsdWRlICJKU0hUTUxWaWRlb0VsZW1lbnQuaCIKKyNpbmNs
dWRlICJKU1F1aWNrVGltZVBsdWdpblJlcGxhY2VtZW50LmgiCisjaW5jbHVkZSAiTWFpbkZyYW1l
LmgiCisjaW5jbHVkZSAiUGFnZS5oIgorI2luY2x1ZGUgIlJlbmRlckVsZW1lbnQuaCIKKyNpbmNs
dWRlICJTY3JpcHRDb250cm9sbGVyLmgiCisjaW5jbHVkZSAiU2NyaXB0T2JqZWN0LmgiCisjaW5j
bHVkZSAiU2NyaXB0U291cmNlQ29kZS5oIgorI2luY2x1ZGUgIlVzZXJBZ2VudFNjcmlwdHMuaCIK
KyNpbmNsdWRlIDxKYXZhU2NyaXB0Q29yZS9BUElDYXN0Lmg+CisjaW5jbHVkZSA8SmF2YVNjcmlw
dENvcmUvSlNCYXNlLmg+CisjaW5jbHVkZSA8SmF2YVNjcmlwdENvcmUvSlNDSlNWYWx1ZUlubGlu
ZXMuaD4KKwordXNpbmcgbmFtZXNwYWNlIEpTQzsKKworbmFtZXNwYWNlIFdlYkNvcmUgeworCitz
dGF0aWMgU3RyaW5nIHF1aWNrVGltZVBsdWdpblJlcGxhY2VtZW50U2NyaXB0KCkKK3sKKyAgICBE
RUZJTkVfU1RBVElDX0xPQ0FMKFN0cmluZywgc2NyaXB0LCAoUXVpY2tUaW1lUGx1Z2luUmVwbGFj
ZW1lbnRKYXZhU2NyaXB0LCBzaXplb2YoUXVpY2tUaW1lUGx1Z2luUmVwbGFjZW1lbnRKYXZhU2Ny
aXB0KSkpOworICAgIHJldHVybiBzY3JpcHQ7Cit9CisKK3ZvaWQgUXVpY2tUaW1lUGx1Z2luUmVw
bGFjZW1lbnQ6OnJlZ2lzdGVyUGx1Z2luUmVwbGFjZW1lbnQoUGx1Z2luUmVwbGFjZW1lbnRSZWdp
c3RyYXIgcmVnaXN0cmFyKQoreworICAgIHJlZ2lzdHJhcihSZXBsYWNlbWVudFBsdWdpbihjcmVh
dGUsIHN1cHBvcnRzTWltZVR5cGUsIHN1cHBvcnRzRmlsZUV4dGVuc2lvbikpOworfQorCitQYXNz
UmVmUHRyPFBsdWdpblJlcGxhY2VtZW50PiBRdWlja1RpbWVQbHVnaW5SZXBsYWNlbWVudDo6Y3Jl
YXRlKEhUTUxQbHVnSW5FbGVtZW50JiBwbHVnaW4sIGNvbnN0IFZlY3RvcjxTdHJpbmc+JiBwYXJh
bU5hbWVzLCBjb25zdCBWZWN0b3I8U3RyaW5nPiYgcGFyYW1WYWx1ZXMpCit7CisgICAgcmV0dXJu
IGFkb3B0UmVmKG5ldyBRdWlja1RpbWVQbHVnaW5SZXBsYWNlbWVudChwbHVnaW4sIHBhcmFtTmFt
ZXMsIHBhcmFtVmFsdWVzKSk7Cit9CisKK2Jvb2wgUXVpY2tUaW1lUGx1Z2luUmVwbGFjZW1lbnQ6
OnN1cHBvcnRzTWltZVR5cGUoY29uc3QgU3RyaW5nJiBtaW1lVHlwZSkKK3sKKyAgICBzdGF0aWMg
Y29uc3QgY2hhciogdHlwZXNbXSA9IHsKKyAgICAgICAgImFwcGxpY2F0aW9uL3ZuZC5hcHBsZS5t
cGVndXJsIiwgImFwcGxpY2F0aW9uL3gtbXBlZ3VybCIsICJhdWRpby8zZ3BwIiwgImF1ZGlvLzNn
cHAyIiwgImF1ZGlvL2FhYyIsICJhdWRpby9haWZmIiwKKyAgICAgICAgImF1ZGlvL2FtciIsICJh
dWRpby9iYXNpYyIsICJhdWRpby9tcDMiLCAiYXVkaW8vbXA0IiwgImF1ZGlvL21wZWciLCAiYXVk
aW8vbXBlZzMiLCAiYXVkaW8vbXBlZ3VybCIsICJhdWRpby9zY3BscyIsCisgICAgICAgICJhdWRp
by93YXYiLCAiYXVkaW8veC1hYWMiLCAiYXVkaW8veC1haWZmIiwgImF1ZGlvL3gtY2FmIiwgImF1
ZGlvL3gtbTRhIiwgImF1ZGlvL3gtbTRiIiwgImF1ZGlvL3gtbTRwIiwKKyAgICAgICAgImF1ZGlv
L3gtbTRyIiwgImF1ZGlvL3gtbXAzIiwgImF1ZGlvL3gtbXBlZyIsICJhdWRpby94LW1wZWczIiwg
ImF1ZGlvL3gtbXBlZ3VybCIsICJhdWRpby94LXNjcGxzIiwgImF1ZGlvL3gtd2F2IiwKKyAgICAg
ICAgInZpZGVvLzNncHAiLCAidmlkZW8vM2dwcDIiLCAidmlkZW8vbXA0IiwgInZpZGVvL3F1aWNr
dGltZSIsICJ2aWRlby94LW00diIKKyAgICB9OworICAgIERFRklORV9TVEFUSUNfTE9DQUwoSGFz
aFNldDxTdHJpbmc+LCB0eXBlSGFzaCwgKCkpOworICAgIGlmICghdHlwZUhhc2guc2l6ZSgpKSB7
CisgICAgICAgIGZvciAoc2l6ZV90IGkgPSAwOyBpIDwgV1RGX0FSUkFZX0xFTkdUSCh0eXBlcyk7
ICsraSkKKyAgICAgICAgICAgIHR5cGVIYXNoLmFkZCh0eXBlc1tpXSk7CisgICAgfQorCisgICAg
cmV0dXJuIHR5cGVIYXNoLmNvbnRhaW5zKG1pbWVUeXBlKTsKK30KKworYm9vbCBRdWlja1RpbWVQ
bHVnaW5SZXBsYWNlbWVudDo6c3VwcG9ydHNGaWxlRXh0ZW5zaW9uKGNvbnN0IFN0cmluZyYgZXh0
ZW5zaW9uKQoreworICAgIHN0YXRpYyBjb25zdCBjaGFyKiBleHRlbnNpb25zW10gPSB7CisgICAg
ICAgICIzZzIiLCAiM2dwIiwgIjNncDIiLCAiM2dwcCIsICJhYWMiLCAiYWR0cyIsICJhaWYiLCAi
YWlmYyIsICJhaWZmIiwgIkFNUiIsICJhdSIsICJid2YiLCAiY2FmIiwgImNkZGEiLCAibTN1IiwK
KyAgICAgICAgIm0zdTgiLCAibTRhIiwgIm00YiIsICJtNHAiLCAibTRyIiwgIm00diIsICJtb3Yi
LCAibXAzIiwgIm1wMyIsICJtcDQiLCAibXBlZyIsICJtcGciLCAibXF2IiwgInBscyIsICJxdCIs
CisgICAgICAgICJzbmQiLCAic3dhIiwgInRzIiwgInVsdyIsICJ3YXYiCisgICAgfTsKKyAgICBE
RUZJTkVfU1RBVElDX0xPQ0FMKEhhc2hTZXQ8U3RyaW5nPiwgZXh0ZW5zaW9uSGFzaCwgKCkpOwor
ICAgIGlmICghZXh0ZW5zaW9uSGFzaC5zaXplKCkpIHsKKyAgICAgICAgZm9yIChzaXplX3QgaSA9
IDA7IGkgPCBXVEZfQVJSQVlfTEVOR1RIKGV4dGVuc2lvbnMpOyArK2kpCisgICAgICAgICAgICBl
eHRlbnNpb25IYXNoLmFkZChleHRlbnNpb25zW2ldKTsKKyAgICB9CisKKyAgICByZXR1cm4gZXh0
ZW5zaW9uSGFzaC5jb250YWlucyhleHRlbnNpb24pOworfQorCitRdWlja1RpbWVQbHVnaW5SZXBs
YWNlbWVudDo6UXVpY2tUaW1lUGx1Z2luUmVwbGFjZW1lbnQoSFRNTFBsdWdJbkVsZW1lbnQmIHBs
dWdpbiwgY29uc3QgVmVjdG9yPFN0cmluZz4mIHBhcmFtTmFtZXMsIGNvbnN0IFZlY3RvcjxTdHJp
bmc+JiBwYXJhbVZhbHVlcykKKyAgICA6UGx1Z2luUmVwbGFjZW1lbnQoKQorICAgICwgbV9wYXJl
bnRFbGVtZW50KCZwbHVnaW4pCisgICAgLCBtX25hbWVzKHBhcmFtTmFtZXMpCisgICAgLCBtX3Zh
bHVlcyhwYXJhbVZhbHVlcykKKyAgICAsIG1fc2NyaXB0T2JqZWN0KG51bGxwdHIpCit7Cit9CisK
K1F1aWNrVGltZVBsdWdpblJlcGxhY2VtZW50Ojp+UXVpY2tUaW1lUGx1Z2luUmVwbGFjZW1lbnQo
KQoreworICAgIG1fcGFyZW50RWxlbWVudCA9IG51bGxwdHI7CisgICAgbV9zY3JpcHRPYmplY3Qg
PSBudWxscHRyOworICAgIG1fbWVkaWFFbGVtZW50ID0gbnVsbHB0cjsKK30KKworUmVuZGVyRWxl
bWVudCogUXVpY2tUaW1lUGx1Z2luUmVwbGFjZW1lbnQ6OmNyZWF0ZVJlbmRlcmVyKEhUTUxQbHVn
SW5FbGVtZW50JiBwbHVnaW4sIFBhc3NSZWY8UmVuZGVyU3R5bGU+IHN0eWxlKQoreworICAgIEFT
U0VSVF9VTlVTRUQocGx1Z2luLCBtX3BhcmVudEVsZW1lbnQgPT0gJnBsdWdpbik7CisKKyAgICBp
ZiAobV9tZWRpYUVsZW1lbnQpCisgICAgICAgIHJldHVybiBtX21lZGlhRWxlbWVudC0+Y3JlYXRl
UmVuZGVyZXIoc3RkOjptb3ZlKHN0eWxlKSk7CisKKyAgICByZXR1cm4gMDsKK30KKworRE9NV3Jh
cHBlcldvcmxkJiBRdWlja1RpbWVQbHVnaW5SZXBsYWNlbWVudDo6aXNvbGF0ZWRXb3JsZCgpCit7
CisgICAgc3RhdGljIERPTVdyYXBwZXJXb3JsZCYgaXNvbGF0ZWRXb3JsZCA9ICpET01XcmFwcGVy
V29ybGQ6OmNyZWF0ZShKU0RPTVdpbmRvdzo6Y29tbW9uVk0oKSkubGVha1JlZigpOworICAgIHJl
dHVybiBpc29sYXRlZFdvcmxkOworfQorCitib29sIFF1aWNrVGltZVBsdWdpblJlcGxhY2VtZW50
OjplbnN1cmVSZXBsYWNlbWVudFNjcmlwdEluamVjdGVkKCkKK3sKKyAgICBQYWdlKiBwYWdlID0g
bV9wYXJlbnRFbGVtZW50LT5kb2N1bWVudCgpLnBhZ2UoKTsKKyAgICBpZiAoIXBhZ2UpCisgICAg
ICAgIHJldHVybiBmYWxzZTsKKyAgICAKKyAgICBET01XcmFwcGVyV29ybGQmIHdvcmxkID0gaXNv
bGF0ZWRXb3JsZCgpOworICAgIFNjcmlwdENvbnRyb2xsZXImIHNjcmlwdENvbnRyb2xsZXIgPSBw
YWdlLT5tYWluRnJhbWUoKS5zY3JpcHQoKTsKKyAgICBKU0RPTUdsb2JhbE9iamVjdCogZ2xvYmFs
T2JqZWN0ID0ganNDYXN0PEpTRE9NR2xvYmFsT2JqZWN0Kj4oc2NyaXB0Q29udHJvbGxlci5nbG9i
YWxPYmplY3Qod29ybGQpKTsKKyAgICBFeGVjU3RhdGUqIGV4ZWMgPSBnbG9iYWxPYmplY3QtPmds
b2JhbEV4ZWMoKTsKKyAgICAKKyAgICBKU1ZhbHVlIHJlcGxhY2VtZW50RnVuY3Rpb24gPSBnbG9i
YWxPYmplY3QtPmdldChleGVjLCBJZGVudGlmaWVyKGV4ZWMsICJjcmVhdGVQbHVnaW5SZXBsYWNl
bWVudCIpKTsKKyAgICBpZiAocmVwbGFjZW1lbnRGdW5jdGlvbi5pc0Z1bmN0aW9uKCkpCisgICAg
ICAgIHJldHVybiB0cnVlOworICAgIAorICAgIHNjcmlwdENvbnRyb2xsZXIuZXZhbHVhdGVJbldv
cmxkKFNjcmlwdFNvdXJjZUNvZGUocXVpY2tUaW1lUGx1Z2luUmVwbGFjZW1lbnRTY3JpcHQoKSks
IHdvcmxkKTsKKyAgICBpZiAoZXhlYy0+aGFkRXhjZXB0aW9uKCkpIHsKKyAgICAgICAgZXhlYy0+
Y2xlYXJFeGNlcHRpb24oKTsKKyAgICAgICAgcmV0dXJuIGZhbHNlOworICAgIH0KKyAgICAKKyAg
ICByZXR1cm4gdHJ1ZTsKK30KKworYm9vbCBRdWlja1RpbWVQbHVnaW5SZXBsYWNlbWVudDo6aW5z
dGFsbFJlcGxhY2VtZW50KFNoYWRvd1Jvb3QqIHJvb3QpCit7CisgICAgUGFnZSogcGFnZSA9IG1f
cGFyZW50RWxlbWVudC0+ZG9jdW1lbnQoKS5wYWdlKCk7CisKKyAgICBpZiAoIWVuc3VyZVJlcGxh
Y2VtZW50U2NyaXB0SW5qZWN0ZWQoKSkKKyAgICAgICAgcmV0dXJuIGZhbHNlOworCisgICAgRE9N
V3JhcHBlcldvcmxkJiB3b3JsZCA9IGlzb2xhdGVkV29ybGQoKTsKKyAgICBTY3JpcHRDb250cm9s
bGVyJiBzY3JpcHRDb250cm9sbGVyID0gcGFnZS0+bWFpbkZyYW1lKCkuc2NyaXB0KCk7CisgICAg
SlNET01HbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCA9IGpzQ2FzdDxKU0RPTUdsb2JhbE9iamVj
dCo+KHNjcmlwdENvbnRyb2xsZXIuZ2xvYmFsT2JqZWN0KHdvcmxkKSk7CisgICAgRXhlY1N0YXRl
KiBleGVjID0gZ2xvYmFsT2JqZWN0LT5nbG9iYWxFeGVjKCk7CisgICAgSlNMb2NrSG9sZGVyIGxv
Y2soZXhlYyk7CisgICAgCisgICAgLy8gTG9va3VwIHRoZSAiY3JlYXRlUGx1Z2luUmVwbGFjZW1l
bnQiIGZ1bmN0aW9uCisgICAgSlNWYWx1ZSByZXBsYWNlbWVudEZ1bmN0aW9uID0gZ2xvYmFsT2Jq
ZWN0LT5nZXQoZXhlYywgSWRlbnRpZmllcihleGVjLCAiY3JlYXRlUGx1Z2luUmVwbGFjZW1lbnQi
KSk7CisgICAgaWYgKHJlcGxhY2VtZW50RnVuY3Rpb24uaXNVbmRlZmluZWRPck51bGwoKSkKKyAg
ICAgICAgcmV0dXJuIGZhbHNlOworICAgIEpTT2JqZWN0KiByZXBsYWNlbWVudE9iamVjdCA9IHJl
cGxhY2VtZW50RnVuY3Rpb24udG9PYmplY3QoZXhlYyk7CisgICAgQ2FsbERhdGEgY2FsbERhdGE7
CisgICAgQ2FsbFR5cGUgY2FsbFR5cGUgPSByZXBsYWNlbWVudE9iamVjdC0+bWV0aG9kVGFibGUo
KS0+Z2V0Q2FsbERhdGEocmVwbGFjZW1lbnRPYmplY3QsIGNhbGxEYXRhKTsKKyAgICBpZiAoY2Fs
bFR5cGUgPT0gQ2FsbFR5cGVOb25lKQorICAgICAgICByZXR1cm4gZmFsc2U7CisKKyAgICBNYXJr
ZWRBcmd1bWVudEJ1ZmZlciBhcmdMaXN0OworICAgIGFyZ0xpc3QuYXBwZW5kKHRvSlMoZXhlYywg
Z2xvYmFsT2JqZWN0LCByb290KSk7CisgICAgYXJnTGlzdC5hcHBlbmQodG9KUyhleGVjLCBnbG9i
YWxPYmplY3QsIG1fcGFyZW50RWxlbWVudCkpOworICAgIGFyZ0xpc3QuYXBwZW5kKHRvSlMoZXhl
YywgZ2xvYmFsT2JqZWN0LCB0aGlzKSk7CisgICAgYXJnTGlzdC5hcHBlbmQodG9KUzxTdHJpbmc+
KGV4ZWMsIGdsb2JhbE9iamVjdCwgbV9uYW1lcykpOworICAgIGFyZ0xpc3QuYXBwZW5kKHRvSlM8
U3RyaW5nPihleGVjLCBnbG9iYWxPYmplY3QsIG1fdmFsdWVzKSk7CisgICAgSlNWYWx1ZSByZXBs
YWNlbWVudCA9IGNhbGwoZXhlYywgcmVwbGFjZW1lbnRPYmplY3QsIGNhbGxUeXBlLCBjYWxsRGF0
YSwgZ2xvYmFsT2JqZWN0LCBhcmdMaXN0KTsKKyAgICBpZiAoZXhlYy0+aGFkRXhjZXB0aW9uKCkp
IHsKKyAgICAgICAgZXhlYy0+Y2xlYXJFeGNlcHRpb24oKTsKKyAgICAgICAgcmV0dXJuIGZhbHNl
OworICAgIH0KKworICAgIC8vIEdldCB0aGUgPHZpZGVvPiBjcmVhdGVkIHRvIHJlcGxhY2UgdGhl
IHBsdWctaW4uCisgICAgSlNWYWx1ZSB2YWx1ZSA9IHJlcGxhY2VtZW50LmdldChleGVjLCBJZGVu
dGlmaWVyKGV4ZWMsICJ2aWRlbyIpKTsKKyAgICBpZiAoIWV4ZWMtPmhhZEV4Y2VwdGlvbigpICYm
ICF2YWx1ZS5pc1VuZGVmaW5lZE9yTnVsbCgpKQorICAgICAgICBtX21lZGlhRWxlbWVudCA9IHRv
SFRNTFZpZGVvRWxlbWVudCh2YWx1ZSk7CisKKyAgICBpZiAoIW1fbWVkaWFFbGVtZW50KSB7Cisg
ICAgICAgIGV4ZWMtPmNsZWFyRXhjZXB0aW9uKCk7CisgICAgICAgIHJldHVybiBmYWxzZTsKKyAg
ICB9CisKKyAgICAvLyBHZXQgdGhlIHNjcmlwdGluZyBpbnRlcmZhY2UuCisgICAgdmFsdWUgPSBy
ZXBsYWNlbWVudC5nZXQoZXhlYywgSWRlbnRpZmllcihleGVjLCAic2NyaXB0T2JqZWN0IikpOwor
ICAgIGlmICghZXhlYy0+aGFkRXhjZXB0aW9uKCkgJiYgIXZhbHVlLmlzVW5kZWZpbmVkT3JOdWxs
KCkpCisgICAgICAgIG1fc2NyaXB0T2JqZWN0ID0gdmFsdWUudG9PYmplY3QoZXhlYyk7CisKKyAg
ICBpZiAoIW1fc2NyaXB0T2JqZWN0KSB7CisgICAgICAgIGV4ZWMtPmNsZWFyRXhjZXB0aW9uKCk7
CisgICAgICAgIHJldHVybiBmYWxzZTsKKyAgICB9CisKKyAgICByZXR1cm4gdHJ1ZTsKK30KKwor
dW5zaWduZWQgbG9uZyBsb25nIFF1aWNrVGltZVBsdWdpblJlcGxhY2VtZW50Ojptb3ZpZVNpemUo
KSBjb25zdAoreworICAgIGlmIChtX21lZGlhRWxlbWVudCkKKyAgICAgICAgcmV0dXJuIG1fbWVk
aWFFbGVtZW50LT5maWxlU2l6ZSgpOworCisgICAgcmV0dXJuIDA7Cit9CisKK3ZvaWQgUXVpY2tU
aW1lUGx1Z2luUmVwbGFjZW1lbnQ6OnBvc3RFdmVudChjb25zdCBTdHJpbmcmIGV2ZW50TmFtZSkK
K3sKKyAgICBSZWY8SFRNTFBsdWdJbkVsZW1lbnQ+IHByb3RlY3QoKm1fcGFyZW50RWxlbWVudCk7
CisgICAgUmVmUHRyPEV2ZW50PiBldmVudCA9IEV2ZW50OjpjcmVhdGUoZXZlbnROYW1lLCBmYWxz
ZSwgdHJ1ZSk7CisgICAgbV9wYXJlbnRFbGVtZW50LT5kaXNwYXRjaEV2ZW50KGV2ZW50LmdldCgp
KTsKK30KKworfQorI2VuZGlmCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3BsdWdpbnMv
UXVpY2tUaW1lUGx1Z2luUmVwbGFjZW1lbnQuY3NzCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJD
b3JlL01vZHVsZXMvcGx1Z2lucy9RdWlja1RpbWVQbHVnaW5SZXBsYWNlbWVudC5jc3MJKHJldmlz
aW9uIDApCisrKyBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3BsdWdpbnMvUXVpY2tUaW1lUGx1Z2lu
UmVwbGFjZW1lbnQuY3NzCSh3b3JraW5nIGNvcHkpCkBAIC0wLDAgKzEsMzQgQEAKKy8qCisgKiBD
b3B5cmlnaHQgKEMpIDIwMTMgQXBwbGUgSW5jLiAgQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisg
KiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRo
IG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0
IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0
aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAg
ICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2Ns
YWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1
Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0
aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRh
dGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlv
bi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIENPTVBVVEVSLCBJ
TkMuIGBgQVMgSVMnJyBBTkQgQU5ZCisgKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywg
SU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQorICogSU1QTElFRCBXQVJSQU5USUVT
IE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQ
T1NFIEFSRSBESVNDTEFJTUVELiAgSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgQ09NUFVURVIsIElO
Qy4gT1IKKyAqIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNU
LCBJTkNJREVOVEFMLCBTUEVDSUFMLAorICogRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERB
TUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAorICogUFJPRklUUzsgT1IgQlVT
SU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWQorICog
T0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBU
T1JUCisgKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFO
WSBXQVkgT1VUIE9GIFRIRSBVU0UKKyAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNF
RCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuIAorICovCisKK2VtYmVkOjotd2Vi
a2l0LXBsdWdpbi1yZXBsYWNlbWVudCwKK29iamVjdDo6LXdlYmtpdC1wbHVnaW4tcmVwbGFjZW1l
bnQKK3sKKyAgICBwb3NpdGlvbjogcmVsYXRpdmU7CisgICAgZGlzcGxheTogaW5saW5lLWJsb2Nr
OworICAgIHdpZHRoOiAxMDAlOworICAgIGhlaWdodDogMTAwJTsKKyAgICB6LWluZGV4OiAwOwor
fQorCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3BsdWdpbnMvUXVpY2tUaW1lUGx1Z2lu
UmVwbGFjZW1lbnQuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3BsdWdp
bnMvUXVpY2tUaW1lUGx1Z2luUmVwbGFjZW1lbnQuaAkocmV2aXNpb24gMCkKKysrIFNvdXJjZS9X
ZWJDb3JlL01vZHVsZXMvcGx1Z2lucy9RdWlja1RpbWVQbHVnaW5SZXBsYWNlbWVudC5oCSh3b3Jr
aW5nIGNvcHkpCkBAIC0wLDAgKzEsNzYgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTMgQXBw
bGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1
c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZp
Y2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRp
b25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11
c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9m
IGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJp
YnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0
CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5n
IGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRl
cmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdB
UkUgSVMgUFJPVklERUQgQlkgQVBQTEUgQ09NUFVURVIsIElOQy4gYGBBUyBJUycnIEFORCBBTlkK
KyAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElN
SVRFRCBUTywgVEhFCisgKiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFO
RCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuICBJ
TiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBDT01QVVRFUiwgSU5DLiBPUgorICogQ09OVFJJQlVUT1JT
IEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUws
CisgKiBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQg
Tk9UIExJTUlURUQgVE8sCisgKiBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNF
UlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IKKyAqIFBST0ZJVFM7IE9SIEJVU0lORVNTIElO
VEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkKKyAqIE9GIExJQUJJ
TElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorICog
KElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9V
VCBPRiBUSEUgVVNFCisgKiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhF
IFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLiAKKyAqLworCisjaWZuZGVmIFF1aWNrVGltZVBs
dWdpblJlcGxhY2VtZW50X2gKKyNkZWZpbmUgUXVpY2tUaW1lUGx1Z2luUmVwbGFjZW1lbnRfaAor
CisjaW5jbHVkZSAiUGx1Z2luUmVwbGFjZW1lbnQuaCIKKyNpbmNsdWRlICJTY3JpcHRTdGF0ZS5o
IgorI2luY2x1ZGUgIlNjcmlwdFZhbHVlLmgiCisjaW5jbHVkZSA8d3RmL1JlZkNvdW50ZWQuaD4K
KyNpbmNsdWRlIDx3dGYvdGV4dC9XVEZTdHJpbmcuaD4KKworbmFtZXNwYWNlIFdlYkNvcmUgewor
CitjbGFzcyBIVE1MUGx1Z0luRWxlbWVudDsKK2NsYXNzIEhUTUxWaWRlb0VsZW1lbnQ7CitjbGFz
cyBSZW5kZXJFbGVtZW50OworY2xhc3MgUmVuZGVyU3R5bGU7CitjbGFzcyBTaGFkb3dSb290Owor
CitjbGFzcyBRdWlja1RpbWVQbHVnaW5SZXBsYWNlbWVudCA6IHB1YmxpYyBQbHVnaW5SZXBsYWNl
bWVudCB7CitwdWJsaWM6CisgICAgc3RhdGljIHZvaWQgcmVnaXN0ZXJQbHVnaW5SZXBsYWNlbWVu
dChQbHVnaW5SZXBsYWNlbWVudFJlZ2lzdHJhcik7CisgICAgc3RhdGljIGJvb2wgc3VwcG9ydHNN
aW1lVHlwZShjb25zdCBTdHJpbmcmKTsKKyAgICBzdGF0aWMgYm9vbCBzdXBwb3J0c0ZpbGVFeHRl
bnNpb24oY29uc3QgU3RyaW5nJik7CisgICAgCisgICAgc3RhdGljIFBhc3NSZWZQdHI8UGx1Z2lu
UmVwbGFjZW1lbnQ+IGNyZWF0ZShIVE1MUGx1Z0luRWxlbWVudCYsIGNvbnN0IFZlY3RvcjxTdHJp
bmc+JiBwYXJhbU5hbWVzLCBjb25zdCBWZWN0b3I8U3RyaW5nPiYgcGFyYW1WYWx1ZXMpOworICAg
IH5RdWlja1RpbWVQbHVnaW5SZXBsYWNlbWVudCgpOworCisgICAgdmlydHVhbCBib29sIGluc3Rh
bGxSZXBsYWNlbWVudChTaGFkb3dSb290KikgT1ZFUlJJREU7CisgICAgdmlydHVhbCBKU0M6OkpT
T2JqZWN0KiBzY3JpcHRPYmplY3QoKSBPVkVSUklERSB7IHJldHVybiBtX3NjcmlwdE9iamVjdDsg
fQorCisgICAgdmlydHVhbCBib29sIHdpbGxDcmVhdGVSZW5kZXJlcigpIE9WRVJSSURFIHsgcmV0
dXJuIG1fbWVkaWFFbGVtZW50OyB9CisgICAgdmlydHVhbCBSZW5kZXJFbGVtZW50KiBjcmVhdGVS
ZW5kZXJlcihIVE1MUGx1Z0luRWxlbWVudCYsIFBhc3NSZWY8UmVuZGVyU3R5bGU+KSBPVkVSUklE
RTsKKworICAgIHVuc2lnbmVkIGxvbmcgbG9uZyBtb3ZpZVNpemUoKSBjb25zdDsKKyAgICB2b2lk
IHBvc3RFdmVudChjb25zdCBTdHJpbmcmKTsKKworcHJpdmF0ZToKKyAgICBRdWlja1RpbWVQbHVn
aW5SZXBsYWNlbWVudChIVE1MUGx1Z0luRWxlbWVudCYsIGNvbnN0IFZlY3RvcjxTdHJpbmc+JiBw
YXJhbU5hbWVzLCBjb25zdCBWZWN0b3I8U3RyaW5nPiYgcGFyYW1WYWx1ZXMpOworCisgICAgYm9v
bCBlbnN1cmVSZXBsYWNlbWVudFNjcmlwdEluamVjdGVkKCk7CisgICAgRE9NV3JhcHBlcldvcmxk
JiBpc29sYXRlZFdvcmxkKCk7CisKKyAgICBIVE1MUGx1Z0luRWxlbWVudCogbV9wYXJlbnRFbGVt
ZW50OworICAgIFJlZlB0cjxIVE1MVmlkZW9FbGVtZW50PiBtX21lZGlhRWxlbWVudDsKKyAgICBj
b25zdCBWZWN0b3I8U3RyaW5nPiBtX25hbWVzOworICAgIGNvbnN0IFZlY3RvcjxTdHJpbmc+IG1f
dmFsdWVzOworICAgIEpTQzo6SlNPYmplY3QqIG1fc2NyaXB0T2JqZWN0OworfTsKKworfQorCisj
ZW5kaWYKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvcGx1Z2lucy9RdWlja1RpbWVQbHVn
aW5SZXBsYWNlbWVudC5pZGwKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvTW9kdWxlcy9w
bHVnaW5zL1F1aWNrVGltZVBsdWdpblJlcGxhY2VtZW50LmlkbAkocmV2aXNpb24gMCkKKysrIFNv
dXJjZS9XZWJDb3JlL01vZHVsZXMvcGx1Z2lucy9RdWlja1RpbWVQbHVnaW5SZXBsYWNlbWVudC5p
ZGwJKHdvcmtpbmcgY29weSkKQEAgLTAsMCArMSwzMyBAQAorLyoKKyAqIENvcHlyaWdodCAoQykg
MjAxMyBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRp
b24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Cisg
KiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5n
IGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNl
IGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlz
IGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4g
UmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBj
b3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBm
b2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90
aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJ
UyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBDT01QVVRFUiwgSU5DLiBgYEFTIElTJycg
QU5EIEFOWQorICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVU
IE5PVCBMSU1JVEVEIFRPLCBUSEUKKyAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFC
SUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICogUFVSUE9TRSBBUkUgRElTQ0xB
SU1FRC4gIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIENPTVBVVEVSLCBJTkMuIE9SCisgKiBDT05U
UklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwg
U1BFQ0lBTCwKKyAqIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJ
TkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFBST0NVUkVNRU5UIE9GIFNVQlNUSVRVVEUgR09P
RFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUgorICogUFJPRklUUzsgT1IgQlVT
SU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQgT04gQU5ZIFRIRU9SWQorICog
T0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJQ1QgTElBQklMSVRZLCBPUiBU
T1JUCisgKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJXSVNFKSBBUklTSU5HIElOIEFO
WSBXQVkgT1VUIE9GIFRIRSBVU0UKKyAqIE9GIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURWSVNF
RCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuIAorICovCisKK1sKKyAgICBOb0lu
dGVyZmFjZU9iamVjdCwKKyAgICBPcGVyYXRpb25zTm90RGVsZXRhYmxlLAorICAgIEpTR2VuZXJh
dGVUb0pTT2JqZWN0LAorXSBpbnRlcmZhY2UgUXVpY2tUaW1lUGx1Z2luUmVwbGFjZW1lbnQgewor
ICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSB1bnNpZ25lZCBsb25nIGxvbmcgbW92aWVTaXplOworICAg
IHZvaWQgcG9zdEV2ZW50KERPTVN0cmluZyBldmVudE5hbWUpOworfTsKSW5kZXg6IFNvdXJjZS9X
ZWJDb3JlL01vZHVsZXMvcGx1Z2lucy9RdWlja1RpbWVQbHVnaW5SZXBsYWNlbWVudC5qcwo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3BsdWdpbnMvUXVpY2tUaW1lUGx1Z2lu
UmVwbGFjZW1lbnQuanMJKHJldmlzaW9uIDApCisrKyBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3Bs
dWdpbnMvUXVpY2tUaW1lUGx1Z2luUmVwbGFjZW1lbnQuanMJKHdvcmtpbmcgY29weSkKQEAgLTAs
MCArMSwzMjUgQEAKKworZnVuY3Rpb24gY3JlYXRlUGx1Z2luUmVwbGFjZW1lbnQocm9vdCwgcGFy
ZW50LCBob3N0LCBhdHRyaWJ1dGVOYW1lcywgYXR0cmlidXRlVmFsdWVzKQoreworICAgIHJldHVy
biBuZXcgUmVwbGFjZW1lbnQocm9vdCwgcGFyZW50LCBob3N0LCBhdHRyaWJ1dGVOYW1lcywgYXR0
cmlidXRlVmFsdWVzKTsKK307CisKK2Z1bmN0aW9uIFJlcGxhY2VtZW50KHJvb3QsIHBhcmVudCwg
aG9zdCwgYXR0cmlidXRlTmFtZXMsIGF0dHJpYnV0ZVZhbHVlcykKK3sKKyAgICB0aGlzLnJvb3Qg
PSByb290OworICAgIHRoaXMucGFyZW50ID0gcGFyZW50OworICAgIHRoaXMuaG9zdCA9IGhvc3Q7
CisgICAgdGhpcy5saXN0ZW5lcnMgPSB7fTsKKyAgICB0aGlzLnNjcmlwdE9iamVjdCA9IHt9Owor
CisgICAgdGhpcy5hdXRvRXhpdEZ1bGxTY3JlZW4gPSB0cnVlOworICAgIHRoaXMucG9zdEV2ZW50
cyA9IGZhbHNlOworICAgIHRoaXMuaGVpZ2h0ID0gMDsKKyAgICB0aGlzLndpZHRoID0gMDsKKyAg
ICB0aGlzLnNyYyA9ICcnOworICAgIHRoaXMuYXV0b2hyZWYgPSBmYWxzZTsKKyAgICB0aGlzLmhy
ZWYgPSAnJzsKKyAgICB0aGlzLnF0c3JjID0gJyc7CisgICAgdGhpcy50YXJnZXQgPSAnJzsKKwor
ICAgIHRoaXMuY3JlYXRlVmlkZW9FbGVtZW50KGF0dHJpYnV0ZU5hbWVzLCBhdHRyaWJ1dGVWYWx1
ZXMpOworICAgIHRoaXMuY3JlYXRlU2NyaXB0SW50ZXJmYWNlKCk7Cit9OworCitSZXBsYWNlbWVu
dC5wcm90b3R5cGUgPSB7CisKKyAgICBIYW5kbGVkVmlkZW9FdmVudHM6IHsKKyAgICAgICAgbG9h
ZHN0YXJ0OiAnaGFuZGxlTG9hZFN0YXJ0JywKKyAgICAgICAgZXJyb3I6ICdoYW5kbGVFcnJvcics
CisgICAgICAgIGxvYWRlZG1ldGFkYXRhOiAnaGFuZGxlTG9hZGVkTWV0YURhdGEnLAorICAgICAg
ICBjYW5wbGF5OiAncXRfY2FucGxheScsCisgICAgICAgIGNhbnBsYXl0aHJvdWdoOiAncXRfY2Fu
cGxheXRocm91Z2gnLAorICAgICAgICBwbGF5OiAncXRfcGxheScsCisgICAgICAgIHBhdXNlOiAn
cXRfcGF1c2UnLAorICAgICAgICBlbmRlZDogJ2hhbmRsZUVuZGVkJywKKyAgICAgICAgd2Via2l0
ZnVsbHNjcmVlbmNoYW5nZTogJ2hhbmRsZUZ1bGxzY3JlZW5DaGFuZ2UnLAorICAgIH0sCisKKyAg
ICBBdHRyaWJ1dGVNYXA6IHsKKyAgICAgICAgYXV0b2V4aXRmdWxsc2NyZWVuOiAnYXV0b0V4aXRG
dWxsU2NyZWVuJywKKyAgICAgICAgcG9zdGRvbWV2ZW50czogJ3Bvc3RFdmVudHMnLAorICAgICAg
ICBoZWlnaHQ6ICdoZWlnaHQnLAorICAgICAgICB3aWR0aDogJ3dpZHRoJywKKyAgICAgICAgc3Jj
OiAnc3JjJywKKyAgICAgICAgYWlycGxheTogJ3gtd2Via2l0LWFpcnBsYXk9JywKKyAgICAgICAg
aHJlZjogJ2hyZWYnLAorICAgICAgICB0YXJnZXQ6ICd0YXJnZXQnLAorICAgIH0sCisgICAgCisg
ICAgTWV0aG9kTWFwOiB7CisgICAgICAgIFNldFVSTCA6ICdzZXRVUkwnLAorICAgICAgICBHZXRV
UkwgOiAndXJsJywKKyAgICAgICAgUGxheSA6ICdwbGF5JywKKyAgICAgICAgU3RvcCA6ICdwYXVz
ZScsCisgICAgICAgIEdldFJhdGUgOiAncmF0ZScsCisgICAgICAgIFNldFJhdGUgOiAnc2V0UmF0
ZScsCisgICAgICAgIElzRnVsbFNjcmVlbiA6ICdpc0Z1bGxTY3JlZW4nLAorICAgICAgICBFeGl0
RnVsbFNjcmVlbiA6ICdleGl0RnVsbFNjcmVlbicsCisgICAgICAgIEdldFBsdWdpblN0YXR1cyA6
ICdwbHVnaW5TdGF0dXMnLAorICAgICAgICBHZXRUaW1lIDogJ2N1cnJlbnRUaW1lJywKKyAgICAg
ICAgU2V0VGltZSA6ICdzZXRDdXJyZW50VGltZScsCisgICAgICAgIFNlZWtUb0RhdGUgOiAnc2Vl
a1RvRGF0ZScsCisgICAgICAgIEdldERhdGUgOiAnZGF0ZScsCisgICAgICAgIEdldER1cmF0aW9u
IDogJ2R1cmF0aW9uJywKKyAgICAgICAgR2V0VGltZVNjYWxlIDogJ3RpbWVTY2FsZScsCisgICAg
ICAgIEdldE1heFRpbWVMb2FkZWQgOiAnbWF4VGltZUxvYWRlZCcsCisgICAgICAgIEdldE1heEJ5
dGVzTG9hZGVkIDogJ21heEJ5dGVzTG9hZGVkJywKKyAgICAgICAgR2V0TW92aWVTaXplIDogJ21v
dmllU2l6ZScsCisgICAgICAgIEdldFRpbWVkTWV0YWRhdGFVcGRhdGVzIDogJ3RpbWVkTWV0YWRh
dGFVcGRhdGVzJywKKyAgICAgICAgR2V0QWNjZXNzTG9nIDogJ2FjY2Vzc0xvZycsCisgICAgICAg
IEdldEVycm9yTG9nIDogJ2Vycm9yTG9nJywKKyAgICB9LAorCisgICAgVGltZVNjYWxlOiAzMDAw
MCwKKworICAgIGNyZWF0ZVZpZGVvRWxlbWVudDogZnVuY3Rpb24oYXR0cmlidXRlTmFtZXMsIGF0
dHJpYnV0ZVZhbHVlcykKKyAgICB7CisgICAgICAgIHZhciB2aWRlbyA9IHRoaXMudmlkZW8gPSBk
b2N1bWVudC5jcmVhdGVFbGVtZW50KCd2aWRlbycpOworCisgICAgICAgIGZvciAobmFtZSBpbiB0
aGlzLkhhbmRsZWRWaWRlb0V2ZW50cykKKyAgICAgICAgICAgIHZpZGVvLmFkZEV2ZW50TGlzdGVu
ZXIobmFtZSwgdGhpcywgZmFsc2UpOworICAgICAgICAKKyAgICAgICAgZm9yIChpID0gMDsgaSA8
IGF0dHJpYnV0ZU5hbWVzLmxlbmd0aDsgaSsrKSB7CisgICAgICAgICAgICB2YXIgcHJvcGVydHkg
PSB0aGlzLkF0dHJpYnV0ZU1hcFthdHRyaWJ1dGVOYW1lc1tpXV07CisgICAgICAgICAgICBpZiAo
dGhpc1twcm9wZXJ0eV0gIT0gdW5kZWZpbmVkKQorICAgICAgICAgICAgICAgIHRoaXNbcHJvcGVy
dHldID0gYXR0cmlidXRlVmFsdWVzW2ldOworICAgICAgICB9CisKKyAgICAgICAgdmlkZW8uc2V0
QXR0cmlidXRlKCdwc2V1ZG8nLCAnLXdlYmtpdC1wbHVnaW4tcmVwbGFjZW1lbnQnKTsKKyAgICAg
ICAgdmlkZW8uc2V0QXR0cmlidXRlKCdjb250cm9scycsICdjb250cm9scycpOworICAgICAgICB0
aGlzLnNldFN0YXR1cygnV2FpdGluZycpOworCisgICAgICAgIHZhciBzcmMgPSB0aGlzLnNyYzsK
KyAgICAgICAgaWYgKHRoaXMuaHJlZiAmJiB0aGlzLnRhcmdldCkgeworICAgICAgICAgICAgc3Jj
ID0gdGhpcy5yZXNvbHZlUmVsYXRpdmVUb1VybCh0aGlzLmhyZWYsIHRoaXMuc3JjKTsKKyAgICAg
ICAgICAgIHZpZGVvLnBvc3RlciA9IHRoaXMuc3JjOworICAgICAgICAgICAgdmlkZW8uc2V0QXR0
cmlidXRlKCdwcmVsb2FkJywgJ25vbmUnKTsKKyAgICAgICAgfQorICAgICAgICAKKyAgICAgICAg
aWYgKHNyYy5sZW5ndGgpCisgICAgICAgICAgICB0aGlzLnNldFVSTChzcmMpOworCisgICAgICAg
IHRoaXMucm9vdC5hcHBlbmRDaGlsZCh2aWRlbyk7CisgICAgfSwKKworICAgIHJlc29sdmVSZWxh
dGl2ZVRvVXJsOiBmdW5jdGlvbih1cmwsIGJhc2VVcmwpCisgICAgeworICAgICAgICBpZiAodXJs
LmluZGV4T2YoJzovLycpICE9IC0xKQorICAgICAgICAgICAgcmV0dXJuIHVybDsKKyAgICAgICAg
aWYgKGJhc2VVcmwuaW5kZXhPZignOi8vJykgPT0gLTEpCisgICAgICAgICAgICBiYXNlVXJsID0g
dGhpcy5yZXNvbHZlUmVsYXRpdmVUb1VybChiYXNlVXJsLCBkb2N1bWVudC5iYXNlVVJJKTsKKwor
ICAgICAgICB2YXIgYmFzZSA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImJhc2UiKTsKKyAgICAg
ICAgYmFzZS5ocmVmID0gYmFzZVVybDsKKyAgICAgICAgZG9jdW1lbnQuaGVhZC5hcHBlbmRDaGls
ZChiYXNlKTsKKworICAgICAgICB2YXIgcmVzb2x2ZXIgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50
KCdhJyk7CisgICAgICAgIHJlc29sdmVyLmhyZWYgPSB1cmw7CisgICAgICAgIHVybCA9IHJlc29s
dmVyLmhyZWY7CisKKyAgICAgICAgZG9jdW1lbnQuaGVhZC5yZW1vdmVDaGlsZChiYXNlKTsKKyAg
ICAgICAgYmFzZSA9IG51bGw7CisKKyAgICAgICAgcmV0dXJuIHVybDsKKyAgICB9LAorIAorICAg
IGNyZWF0ZVNjcmlwdEludGVyZmFjZTogZnVuY3Rpb24oKQorICAgIHsKKyAgICAgICAgZm9yIChu
YW1lIGluIHRoaXMuTWV0aG9kTWFwKSB7CisgICAgICAgICAgICB2YXIgbWV0aG9kTmFtZSA9IHRo
aXMuTWV0aG9kTWFwW25hbWVdOworICAgICAgICAgICAgdGhpcy5zY3JpcHRPYmplY3RbbmFtZV0g
PSB0aGlzW21ldGhvZE5hbWVdLmJpbmQodGhpcyk7CisgICAgICAgIH0KKyAgICB9LAorCisgICAg
aGFuZGxlRXZlbnQ6IGZ1bmN0aW9uKGV2ZW50KQorICAgIHsKKyAgICAgICAgaWYgKGV2ZW50LnRh
cmdldCAhPT0gdGhpcy52aWRlbykKKyAgICAgICAgICAgIHJldHVybjsKKworICAgICAgICB0cnkg
eworICAgICAgICAgICAgdmFyIGV2ZW50RGF0YSA9IHRoaXMuSGFuZGxlZFZpZGVvRXZlbnRzW2V2
ZW50LnR5cGVdOworICAgICAgICAgICAgaWYgKCFldmVudERhdGEpCisgICAgICAgICAgICAgICAg
cmV0dXJuOworCisgICAgICAgICAgICBpZiAodGhpc1tldmVudERhdGFdICYmIHRoaXNbZXZlbnRE
YXRhXSBpbnN0YW5jZW9mIEZ1bmN0aW9uKQorICAgICAgICAgICAgICAgIHRoaXNbZXZlbnREYXRh
XS5jYWxsKHRoaXMsIGV2ZW50KTsKKyAgICAgICAgICAgIGVsc2UKKyAgICAgICAgICAgICAgICB0
aGlzLnBvc3RFdmVudChldmVudERhdGEpOworICAgICAgICB9IGNhdGNoKGUpIHsKKyAgICAgICAg
ICAgIGlmICh3aW5kb3cuY29uc29sZSkKKyAgICAgICAgICAgICAgICBjb25zb2xlLmVycm9yKGUp
OworICAgICAgICB9CisgICAgfSwKKworICAgIHBvc3RFdmVudDogZnVuY3Rpb24oZXZlbnROYW1l
KQorICAgIHsKKyAgICAgICAgdHJ5IHsKKyAgICAgICAgICAgIGlmICh0aGlzLnBvc3RFdmVudHMp
CisgICAgICAgICAgICAgICAgdGhpcy5ob3N0LnBvc3RFdmVudChldmVudE5hbWUpOworICAgICAg
ICB9IGNhdGNoKGUpIHsgfQorICAgIH0sCisKKyAgICBzZXRTdGF0dXM6IGZ1bmN0aW9uKHN0YXR1
cykKKyAgICB7CisgICAgICAgIHRoaXMuc3RhdHVzID0gc3RhdHVzOworICAgIH0sCisKKyAgICBo
YW5kbGVMb2FkZWRNZXRhRGF0YTogZnVuY3Rpb24oZXZlbnQpCisgICAgeworICAgICAgICB0aGlz
LnNldFN0YXR1cygnUGxheWFibGUnKTsKKyAgICAgICAgdGhpcy5wb3N0RXZlbnQoJ3F0X3ZhbGlk
YXRlZCcpOworICAgICAgICB0aGlzLnBvc3RFdmVudCgncXRfbG9hZGVkZmlyc3RmcmFtZScpOwor
ICAgICAgICB0aGlzLnBvc3RFdmVudCgncXRfbG9hZGVkbWV0YWRhdGEnKTsKKyAgICB9LAorCisg
ICAgaGFuZGxlRnVsbHNjcmVlbkNoYW5nZTogZnVuY3Rpb24oZXZlbnQpCisgICAgeworICAgICAg
ICB0aGlzLnBvc3RFdmVudCh0aGlzLmlzRnVsbFNjcmVlbigpID8gJ3F0X2VudGVyZnVsbHNjcmVl
bicgOiAncXRfZXhpdGZ1bGxzY3JlZW4nKTsKKyAgICB9LAorCisgICAgaGFuZGxlRXJyb3I6IGZ1
bmN0aW9uKGV2ZW50KQorICAgIHsKKyAgICAgICAgdGhpcy5zZXRTdGF0dXMoJ0Vycm9yJyk7Cisg
ICAgICAgIHRoaXMucG9zdEV2ZW50KCdxdF9lcnJvcicpOworICAgIH0sCisKKyAgICBoYW5kbGVM
b2FkU3RhcnQ6ZnVuY3Rpb24oZXZlbnQpCisgICAgeworICAgICAgICBpZiAodGhpcy52aWRlby5w
b3N0ZXIpCisgICAgICAgICAgICB0aGlzLnNldFN0YXR1cygnV2FpdGluZycpOworICAgICAgICBl
bHNlCisgICAgICAgICAgICB0aGlzLnNldFN0YXR1cygnTG9hZGluZycpOworICAgICAgICB0aGlz
LnBvc3RFdmVudCgncXRfYmVnaW4nKTsKKyAgICB9LAorCisgICAgaGFuZGxlRW5kZWQ6IGZ1bmN0
aW9uKGV2ZW50KQorICAgIHsKKyAgICAgICAgdGhpcy5wb3N0RXZlbnQoJ3F0X2VuZGVkJyk7Cisg
ICAgICAgIGlmICh0aGlzLmlzRnVsbFNjcmVlbigpICYmIHRoaXMuYXV0b0V4aXRGdWxsU2NyZWVu
KQorICAgICAgICAgICAgZG9jdW1lbnQud2Via2l0RXhpdEZ1bGxzY3JlZW4oKTsKKyAgICB9LAor
CisgICAgaXNGdWxsU2NyZWVuOiBmdW5jdGlvbigpCisgICAgeworICAgICAgICByZXR1cm4gZG9j
dW1lbnQud2Via2l0Q3VycmVudEZ1bGxTY3JlZW5FbGVtZW50ID09PSB0aGlzLnZpZGVvOworICAg
IH0sCisKKyAgICBzZXRVUkw6IGZ1bmN0aW9uKHVybCkKKyAgICB7CisgICAgICAgIHRoaXMuc2V0
U3RhdHVzKCdWYWxpZGF0aW5nJyk7CisgICAgICAgIHRoaXMudmlkZW8uc3JjID0gdXJsOworICAg
IH0sCisgICAgCisgICAgdXJsOiBmdW5jdGlvbigpCisgICAgeworICAgICAgICByZXR1cm4gdGhp
cy52aWRlby5jdXJyZW50U3JjOworICAgIH0sCisgICAgCisgICAgcGxheTogZnVuY3Rpb24oKQor
ICAgIHsKKyAgICAgICAgdGhpcy52aWRlby5wbGF5KCk7CisgICAgfSwKKyAgICAKKyAgICBwYXVz
ZTogZnVuY3Rpb24oKQorICAgIHsKKyAgICAgICAgdGhpcy52aWRlby5wbGF5YmFja1JhdGUgPSAw
OworICAgICAgICB0aGlzLnZpZGVvLnBhdXNlKCk7CisgICAgfSwKKyAgICAKKyAgICByYXRlOiBm
dW5jdGlvbigpCisgICAgeworICAgICAgICByZXR1cm4gdGhpcy52aWRlby5wYXVzZWQgPyAwIDog
MTsKKyAgICB9LAorICAgIAorICAgIHNldFJhdGU6IGZ1bmN0aW9uKHJhdGUpCisgICAgeworICAg
ICAgICBpZiAocmF0ZSkKKyAgICAgICAgICAgIHRoaXMudmlkZW8ucGxheSgpOworICAgICAgICBl
bHNlCisgICAgICAgICAgICB0aGlzLnZpZGVvLnBhdXNlKCk7CisgICAgfSwKKyAgICAKKyAgICBl
eGl0RnVsbFNjcmVlbjogZnVuY3Rpb24oKQorICAgIHsKKyAgICAgICAgZG9jdW1lbnQud2Via2l0
RXhpdEZ1bGxzY3JlZW4oKTsKKyAgICB9LAorICAgIAorICAgIHBsdWdpblN0YXR1czogZnVuY3Rp
b24oKQorICAgIHsKKyAgICAgICAgcmV0dXJuIHRoaXMuc3RhdHVzOworICAgIH0sCisKKyAgICBj
dXJyZW50VGltZTogZnVuY3Rpb24oKQorICAgIHsKKyAgICAgICAgcmV0dXJuIHRoaXMudmlkZW8u
Y3VycmVudFRpbWUgKiB0aGlzLlRpbWVTY2FsZTsKKyAgICB9LAorCisgICAgc2V0Q3VycmVudFRp
bWU6IGZ1bmN0aW9uKHRpbWUpCisgICAgeworICAgICAgICB0aGlzLnZpZGVvLmN1cnJlbnRUaW1l
ID0gdGltZSAvIHRoaXMuVGltZVNjYWxlCisgICAgfSwKKworICAgIHNlZWtUb0RhdGU6IGZ1bmN0
aW9uKCkKKyAgICB7CisgICAgICAgIC8vIEZJWE1FOiBub3QgaW1wbGVtZW50ZWQgeWV0LgorICAg
IH0sCisgICAgCisgICAgZGF0ZTogZnVuY3Rpb24oKQorICAgIHsKKyAgICAgICAgcmV0dXJuIG5l
dyBEYXRlKCk7CisgICAgfSwKKyAgICAKKyAgICBkdXJhdGlvbjogZnVuY3Rpb24oKQorICAgIHsK
KyAgICAgICAgcmV0dXJuIHRoaXMudmlkZW8uZHVyYXRpb24gKiB0aGlzLlRpbWVTY2FsZTsKKyAg
ICB9LAorICAgIAorICAgIHRpbWVTY2FsZTogZnVuY3Rpb24oKQorICAgIHsKKyAgICAgICAgcmV0
dXJuIDMwMDAwOworICAgIH0sCisgICAgCisgICAgbWF4VGltZUxvYWRlZDogZnVuY3Rpb24oKQor
ICAgIHsKKyAgICAgICAgcmV0dXJuIHRoaXMudmlkZW8uZHVyYXRpb24gKiB0aGlzLlRpbWVTY2Fs
ZTsKKyAgICB9LAorICAgIAorICAgIG1heEJ5dGVzTG9hZGVkOiBmdW5jdGlvbigpCisgICAgewor
ICAgICAgICB2YXIgcGVyY2VudExvYWRlZCA9IHRoaXMudmlkZW8uYnVmZmVyZWQuZW5kKDApIC8g
dGhpcy52aWRlby5kdXJhdGlvbjsKKyAgICAgICAgcmV0dXJuIHBlcmNlbnRMb2FkZWQgKiB0aGlz
Lm1vdmllU2l6ZSgpOworICAgIH0sCisgICAgCisgICAgbW92aWVTaXplOiBmdW5jdGlvbigpCisg
ICAgeworICAgICAgICB0cnkgeworICAgICAgICAgICAgcmV0dXJuIHRoaXMuaG9zdC5tb3ZpZVNp
emU7CisgICAgICAgIH0gY2F0Y2goZSkgeyB9CisKKyAgICAgICAgcmV0dXJuIDA7CisgICAgfSwK
KyAgICAKKyAgICB0aW1lZE1ldGFkYXRhVXBkYXRlczogZnVuY3Rpb24oKQorICAgIHsKKyAgICAg
ICAgLy8gRklYTUU6IG5vdCBpbXBsZW1lbnRlZCB5ZXQuCisgICAgICAgIHJldHVybiBudWxsOwor
ICAgIH0sCisgICAgCisgICAgYWNjZXNzTG9nOiBmdW5jdGlvbigpCisgICAgeworICAgICAgICAv
LyBGSVhNRTogbm90IGltcGxlbWVudGVkIHlldC4KKyAgICAgICAgcmV0dXJuIG51bGw7CisgICAg
fSwKKyAgICAKKyAgICBlcnJvckxvZzogZnVuY3Rpb24oKQorICAgIHsKKyAgICAgICAgLy8gRklY
TUU6IG5vdCBpbXBsZW1lbnRlZCB5ZXQuCisgICAgICAgIHJldHVybiBudWxsOworICAgIH0sCit9
OworCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnZjeHByb2ovV2ViQ29yZS52Y3hwcm9q
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL1dlYkNvcmUudmN4cHJvai9XZWJDb3JlLnZj
eHByb2oJKHJldmlzaW9uIDE1OTczNikKKysrIFNvdXJjZS9XZWJDb3JlL1dlYkNvcmUudmN4cHJv
ai9XZWJDb3JlLnZjeHByb2oJKHdvcmtpbmcgY29weSkKQEAgLTE4Njk1LDYgKzE4Njk1LDcgQEAK
ICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXE1vZHVsZXNcbm90aWZpY2F0aW9uc1xOb3RpZmlj
YXRpb25DZW50ZXIuaCIgLz4KICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXE1vZHVsZXNcbm90
aWZpY2F0aW9uc1xOb3RpZmljYXRpb25DbGllbnQuaCIgLz4KICAgICA8Q2xJbmNsdWRlIEluY2x1
ZGU9Ii4uXE1vZHVsZXNcbm90aWZpY2F0aW9uc1xXb3JrZXJHbG9iYWxTY29wZU5vdGlmaWNhdGlv
bnMuaCIgLz4KKyAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXE1vZHVsZXNccGx1Z2luc1xQbHVn
aW5SZXBsYWNlbWVudC5oIiAvPgogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5cTW9kdWxlc1x3
ZWJkYXRhYmFzZVxBYnN0cmFjdERhdGFiYXNlU2VydmVyLmgiIC8+CiAgICAgPENsSW5jbHVkZSBJ
bmNsdWRlPSIuLlxNb2R1bGVzXHdlYmRhdGFiYXNlXEFic3RyYWN0U1FMU3RhdGVtZW50LmgiIC8+
CiAgICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxNb2R1bGVzXHdlYmRhdGFiYXNlXEFic3RyYWN0
U1FMU3RhdGVtZW50QmFja2VuZC5oIiAvPgpJbmRleDogU291cmNlL1dlYkNvcmUvV2ViQ29yZS54
Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL1dl
YkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvagkocmV2aXNpb24gMTU5NzM2KQorKysgU291
cmNlL1dlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCSh3b3JraW5nIGNv
cHkpCkBAIC0xNDYsNiArMTQ2LDkgQEAKIAkJMDcyNzdFNTMxN0QwMThDQzAwMTU1MzREIC8qIEpT
TWVkaWFTdHJlYW1UcmFjay5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gMDcyNzdFNDcxN0QwMThDQzAwMTU1MzREIC8qIEpTTWVkaWFTdHJlYW1UcmFjay5o
ICovOyBzZXR0aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CiAJCTA3Mjc3
RTU0MTdEMDE4Q0MwMDE1NTM0RCAvKiBKU01lZGlhU3RyZWFtVHJhY2tFdmVudC5jcHAgaW4gU291
cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAwNzI3N0U0ODE3RDAxOEND
MDAxNTUzNEQgLyogSlNNZWRpYVN0cmVhbVRyYWNrRXZlbnQuY3BwICovOyB9OwogCQkwNzI3N0U1
NTE3RDAxOENDMDAxNTUzNEQgLyogSlNNZWRpYVN0cmVhbVRyYWNrRXZlbnQuaCBpbiBIZWFkZXJz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDA3Mjc3RTQ5MTdEMDE4Q0MwMDE1
NTM0RCAvKiBKU01lZGlhU3RyZWFtVHJhY2tFdmVudC5oICovOyBzZXR0aW5ncyA9IHtBVFRSSUJV
VEVTID0gKFByaXZhdGUsICk7IH07IH07CisJCTA3MkFFMUU1MTgzQzA3NDEwMDBBNTk4OCAvKiBQ
bHVnaW5SZXBsYWNlbWVudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gMDcyQUUxREYxODNDMDc0MTAwMEE1OTg4IC8qIFBsdWdpblJlcGxhY2VtZW50Lmgg
Ki87IH07CisJCTA3MkFFMUU2MTgzQzA3NDEwMDBBNTk4OCAvKiBRdWlja1RpbWVQbHVnaW5SZXBs
YWNlbWVudC5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSAwNzJBRTFFMDE4M0MwNzQxMDAwQTU5ODggLyogUXVpY2tUaW1lUGx1Z2luUmVwbGFjZW1lbnQu
Y3BwICovOyB9OworCQkwNzJBRTFFODE4M0MwNzQxMDAwQTU5ODggLyogUXVpY2tUaW1lUGx1Z2lu
UmVwbGFjZW1lbnQuaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJl
ZiA9IDA3MkFFMUUyMTgzQzA3NDEwMDBBNTk4OCAvKiBRdWlja1RpbWVQbHVnaW5SZXBsYWNlbWVu
dC5oICovOyB9OwogCQkwNzJDOEIxMTEzMUM1MTg2MDBBNEZDRTkgLyogTWVkaWFQbGF5ZXJQcml2
YXRlQVZGb3VuZGF0aW9uLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IDA3NkYwRDA5MTJCODE5MjcwMEMyNkFBNCAvKiBNZWRpYVBsYXllclByaXZhdGVB
VkZvdW5kYXRpb24uY3BwICovOyB9OwogCQkwNzJDQTg2MTE2Q0I0REMzMDA4QUUxMzEgLyogQ2Fw
dGlvblVzZXJQcmVmZXJlbmNlcy5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZp
bGU7IGZpbGVSZWYgPSAwNzJDQTg2MDE2Q0I0REMzMDA4QUUxMzEgLyogQ2FwdGlvblVzZXJQcmVm
ZXJlbmNlcy5jcHAgKi87IH07CiAJCTA3MzVFRTZBMEY0MEM1RTQwMDRBMjYwNCAvKiBNZWRpYVBs
YXllclByb3h5LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSAwNzM1RUU2OTBGNDBDNUU0MDA0QTI2MDQgLyogTWVkaWFQbGF5ZXJQcm94eS5oICovOyBzZXR0
aW5ncyA9IHtBVFRSSUJVVEVTID0gKFByaXZhdGUsICk7IH07IH07CkBAIC0xODAsNiArMTgzLDgg
QEAKIAkJMDc2OTcwODYxNDYzQUQ4NzAwRjUwMkNGIC8qIFRleHRUcmFja0xpc3QuY3BwIGluIFNv
dXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMDc2OTcwODQxNDYzQUQ4
NzAwRjUwMkNGIC8qIFRleHRUcmFja0xpc3QuY3BwICovOyB9OwogCQkwNzY5NzA4NzE0NjNBRDg3
MDBGNTAyQ0YgLyogVGV4dFRyYWNrTGlzdC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gMDc2OTcwODUxNDYzQUQ4NzAwRjUwMkNGIC8qIFRleHRUcmFja0xp
c3QuaCAqLzsgfTsKIAkJMDc2RjBEMEUxMkI4MTkyNzAwQzI2QUE0IC8qIE1lZGlhUGxheWVyUHJp
dmF0ZUFWRm91bmRhdGlvbi5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gMDc2RjBEMEExMkI4MTkyNzAwQzI2QUE0IC8qIE1lZGlhUGxheWVyUHJpdmF0ZUFW
Rm91bmRhdGlvbi5oICovOyB9OworCQkwNzc2NjRGQzE4M0U2QjVDMDAxMzNCOTIgLyogSlNRdWlj
a1RpbWVQbHVnaW5SZXBsYWNlbWVudC5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSAwNzc2NjRGQTE4M0U2QjVDMDAxMzNCOTIgLyogSlNRdWlja1RpbWVQ
bHVnaW5SZXBsYWNlbWVudC5jcHAgKi87IH07CisJCTA3NzY2NEZEMTgzRTZCNUMwMDEzM0I5MiAv
KiBKU1F1aWNrVGltZVBsdWdpblJlcGxhY2VtZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAwNzc2NjRGQjE4M0U2QjVDMDAxMzNCOTIgLyogSlNRdWlj
a1RpbWVQbHVnaW5SZXBsYWNlbWVudC5oICovOyB9OwogCQkwNzgzMjI4NDE4MDEzRUQ4MDA5OTlF
MEMgLyogTWVkaWFTdHJlYW1BdWRpb1NvdXJjZS5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQ
QlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAwNzgzMjI4MjE4MDEzRUQ3MDA5OTlFMEMgLyogTWVkaWFT
dHJlYW1BdWRpb1NvdXJjZS5jcHAgKi87IH07CiAJCTA3ODMyMjg1MTgwMTNFRDgwMDk5OUUwQyAv
KiBNZWRpYVN0cmVhbUF1ZGlvU291cmNlLmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWls
ZEZpbGU7IGZpbGVSZWYgPSAwNzgzMjI4MzE4MDEzRUQ4MDA5OTlFMEMgLyogTWVkaWFTdHJlYW1B
dWRpb1NvdXJjZS5oICovOyB9OwogCQkwNzg0NjM0MjE0NUIxNTFBMDBBNThERjEgLyogSlNUcmFj
a0V2ZW50LmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9
IDA3ODQ2MzQwMTQ1QjE1MUEwMEE1OERGMSAvKiBKU1RyYWNrRXZlbnQuY3BwICovOyB9OwpAQCAt
Njc2Myw2ICs2NzY4LDEyIEBACiAJCTA3Mjg0N0UzMTZFQkM1QjAwMDQzQ0ZBNCAvKiBQbGF0Zm9y
bVRleHRUcmFja01lbnUuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gUGxhdGZvcm1UZXh0VHJhY2tNZW51Lmg7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTA3MjlCMTRFMTdDRkNDQTAwMDRGMUQ2MCAv
KiBNZWRpYVN0cmVhbUNlbnRlck1hYy5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7
IHBhdGggPSBNZWRpYVN0cmVhbUNlbnRlck1hYy5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7
IH07CiAJCTA3MjlCMTRGMTdDRkNDQTAwMDRGMUQ2MCAvKiBNZWRpYVN0cmVhbUNlbnRlck1hYy5o
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBNZWRpYVN0cmVhbUNlbnRlck1hYy5o
OyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OworCQkwNzJBRTFERjE4M0MwNzQxMDAwQTU5ODgg
LyogUGx1Z2luUmVwbGFjZW1lbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBuYW1lID0g
UGx1Z2luUmVwbGFjZW1lbnQuaDsgcGF0aCA9IHBsdWdpbnMvUGx1Z2luUmVwbGFjZW1lbnQuaDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMDcyQUUxRTAxODNDMDc0MTAwMEE1OTg4IC8q
IFF1aWNrVGltZVBsdWdpblJlcGxhY2VtZW50LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3Bw
LmNwcDsgbmFtZSA9IFF1aWNrVGltZVBsdWdpblJlcGxhY2VtZW50LmNwcDsgcGF0aCA9IHBsdWdp
bnMvUXVpY2tUaW1lUGx1Z2luUmVwbGFjZW1lbnQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4i
OyB9OworCQkwNzJBRTFFMTE4M0MwNzQxMDAwQTU5ODggLyogUXVpY2tUaW1lUGx1Z2luUmVwbGFj
ZW1lbnQuY3NzICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4dC5jc3M7IG5hbWUgPSBRdWlja1RpbWVQbHVnaW5SZXBs
YWNlbWVudC5jc3M7IHBhdGggPSBwbHVnaW5zL1F1aWNrVGltZVBsdWdpblJlcGxhY2VtZW50LmNz
czsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMDcyQUUxRTIxODNDMDc0MTAwMEE1OTg4
IC8qIFF1aWNrVGltZVBsdWdpblJlcGxhY2VtZW50LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVy
ZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMu
aDsgbmFtZSA9IFF1aWNrVGltZVBsdWdpblJlcGxhY2VtZW50Lmg7IHBhdGggPSBwbHVnaW5zL1F1
aWNrVGltZVBsdWdpblJlcGxhY2VtZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJ
CTA3MkFFMUUzMTgzQzA3NDEwMDBBNTk4OCAvKiBRdWlja1RpbWVQbHVnaW5SZXBsYWNlbWVudC5p
ZGwgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSB0ZXh0OyBuYW1lID0gUXVpY2tUaW1lUGx1Z2luUmVwbGFjZW1lbnQuaWRs
OyBwYXRoID0gcGx1Z2lucy9RdWlja1RpbWVQbHVnaW5SZXBsYWNlbWVudC5pZGw7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CisJCTA3MkFFMUU0MTgzQzA3NDEwMDBBNTk4OCAvKiBRdWlja1Rp
bWVQbHVnaW5SZXBsYWNlbWVudC5qcyAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuamF2YXNjcmlwdDsg
bmFtZSA9IFF1aWNrVGltZVBsdWdpblJlcGxhY2VtZW50LmpzOyBwYXRoID0gcGx1Z2lucy9RdWlj
a1RpbWVQbHVnaW5SZXBsYWNlbWVudC5qczsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJ
MDcyQ0E4NjAxNkNCNERDMzAwOEFFMTMxIC8qIENhcHRpb25Vc2VyUHJlZmVyZW5jZXMuY3BwICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBwYXRoID0gQ2FwdGlvblVzZXJQcmVmZXJlbmNl
cy5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTA3MzVFRTY5MEY0MEM1RTQwMDRB
MjYwNCAvKiBNZWRpYVBsYXllclByb3h5LmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgcGF0
aCA9IE1lZGlhUGxheWVyUHJveHkuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMDcz
NjdEREQxNzJDQTY3RjAwRDg2MUI5IC8qIEluYmFuZFRleHRUcmFja1ByaXZhdGVMZWdhY3lBVkZP
YmpDLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFz
dEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsgbmFtZSA9IEluYmFuZFRleHRUcmFja1By
aXZhdGVMZWdhY3lBVkZPYmpDLmg7IHBhdGggPSBvYmpjL0luYmFuZFRleHRUcmFja1ByaXZhdGVM
ZWdhY3lBVkZPYmpDLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CkBAIC02Nzk2LDYgKzY4
MDcsOCBAQAogCQkwNzY5NzA4NTE0NjNBRDg3MDBGNTAyQ0YgLyogVGV4dFRyYWNrTGlzdC5oICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZp
bGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBUZXh0VHJhY2tMaXN0Lmg7IHNvdXJjZVRy
ZWUgPSAiPGdyb3VwPiI7IH07CiAJCTA3NkYwRDA5MTJCODE5MjcwMEMyNkFBNCAvKiBNZWRpYVBs
YXllclByaXZhdGVBVkZvdW5kYXRpb24uY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7
IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3Bw
OyBwYXRoID0gTWVkaWFQbGF5ZXJQcml2YXRlQVZGb3VuZGF0aW9uLmNwcDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKIAkJMDc2RjBEMEExMkI4MTkyNzAwQzI2QUE0IC8qIE1lZGlhUGxheWVy
UHJpdmF0ZUFWRm91bmRhdGlvbi5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVF
bmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBN
ZWRpYVBsYXllclByaXZhdGVBVkZvdW5kYXRpb24uaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKKwkJMDc3NjY0RkExODNFNkI1QzAwMTMzQjkyIC8qIEpTUXVpY2tUaW1lUGx1Z2luUmVwbGFj
ZW1lbnQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7
IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gSlNRdWlja1Rp
bWVQbHVnaW5SZXBsYWNlbWVudC5jcHA7IHBhdGggPSBKU1F1aWNrVGltZVBsdWdpblJlcGxhY2Vt
ZW50LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMDc3NjY0RkIxODNFNkI1QzAw
MTMzQjkyIC8qIEpTUXVpY2tUaW1lUGx1Z2luUmVwbGFjZW1lbnQuaCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJj
ZWNvZGUuYy5oOyBuYW1lID0gSlNRdWlja1RpbWVQbHVnaW5SZXBsYWNlbWVudC5oOyBwYXRoID0g
SlNRdWlja1RpbWVQbHVnaW5SZXBsYWNlbWVudC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OwogCQkwNzgzMjI4MjE4MDEzRUQ3MDA5OTlFMEMgLyogTWVkaWFTdHJlYW1BdWRpb1NvdXJjZS5j
cHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtu
b3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7IHBhdGggPSBNZWRpYVN0cmVhbUF1ZGlv
U291cmNlLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMDc4MzIyODMxODAxM0VE
ODAwOTk5RTBDIC8qIE1lZGlhU3RyZWFtQXVkaW9Tb3VyY2UuaCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuYy5oOyBwYXRoID0gTWVkaWFTdHJlYW1BdWRpb1NvdXJjZS5oOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OwogCQkwNzg0NjM0MDE0NUIxNTFBMDBBNThERjEgLyogSlNUcmFja0V2ZW50LmNw
cCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25v
d25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTVHJhY2tFdmVudC5jcHA7
IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CkBAIC0xMzc0Nyw2ICsxMzc2MCwxOSBAQAogCQkJ
cGF0aCA9IG1hYzsKIAkJCXNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7CiAJCX07CisJCTA3MkFFMURF
MTgzQzA1MTMwMDBBNTk4OCAvKiBwbHVnaW5zICovID0geworCQkJaXNhID0gUEJYR3JvdXA7CisJ
CQljaGlsZHJlbiA9ICgKKwkJCQkwNzJBRTFERjE4M0MwNzQxMDAwQTU5ODggLyogUGx1Z2luUmVw
bGFjZW1lbnQuaCAqLywKKwkJCQkwNzJBRTFFMDE4M0MwNzQxMDAwQTU5ODggLyogUXVpY2tUaW1l
UGx1Z2luUmVwbGFjZW1lbnQuY3BwICovLAorCQkJCTA3MkFFMUUxMTgzQzA3NDEwMDBBNTk4OCAv
KiBRdWlja1RpbWVQbHVnaW5SZXBsYWNlbWVudC5jc3MgKi8sCisJCQkJMDcyQUUxRTIxODNDMDc0
MTAwMEE1OTg4IC8qIFF1aWNrVGltZVBsdWdpblJlcGxhY2VtZW50LmggKi8sCisJCQkJMDcyQUUx
RTMxODNDMDc0MTAwMEE1OTg4IC8qIFF1aWNrVGltZVBsdWdpblJlcGxhY2VtZW50LmlkbCAqLywK
KwkJCQkwNzJBRTFFNDE4M0MwNzQxMDAwQTU5ODggLyogUXVpY2tUaW1lUGx1Z2luUmVwbGFjZW1l
bnQuanMgKi8sCisJCQkpOworCQkJbmFtZSA9IHBsdWdpbnM7CisJCQlzb3VyY2VUcmVlID0gIjxn
cm91cD4iOworCQl9OwogCQkwNzZGMEQwODEyQjgxOTI3MDBDMjZBQTQgLyogYXZmb3VuZGF0aW9u
ICovID0gewogCQkJaXNhID0gUEJYR3JvdXA7CiAJCQljaGlsZHJlbiA9ICgKQEAgLTE0MDkyLDYg
KzE0MTE4LDggQEAKIAkJMTRERkIzM0YwQTdERjc2MzAwMThGNzY5IC8qIERlcml2ZWQgU291cmNl
cyAqLyA9IHsKIAkJCWlzYSA9IFBCWEdyb3VwOwogCQkJY2hpbGRyZW4gPSAoCisJCQkJMDc3NjY0
RkExODNFNkI1QzAwMTMzQjkyIC8qIEpTUXVpY2tUaW1lUGx1Z2luUmVwbGFjZW1lbnQuY3BwICov
LAorCQkJCTA3NzY2NEZCMTgzRTZCNUMwMDEzM0I5MiAvKiBKU1F1aWNrVGltZVBsdWdpblJlcGxh
Y2VtZW50LmggKi8sCiAJCQkJQTgzQjc5MTAwQ0NCMDAxQjAwMEIwODI1IC8qIENvcmUgKi8sCiAJ
CQkJRTFGRjhGNjExODA3NDVDNjAwMTMyNjc0IC8qIENyeXB0byAqLywKIAkJCQlBODNCNzkwRTBD
Q0FGRjk3MDAwQjA4MjUgLyogQ1NTICovLApAQCAtMTY5NDYsNiArMTY5NzQsNyBAQAogCQk5NzEx
NDVGRTE0RUYwMDZFMDA2NzRGRDkgLyogTW9kdWxlcyAqLyA9IHsKIAkJCWlzYSA9IFBCWEdyb3Vw
OwogCQkJY2hpbGRyZW4gPSAoCisJCQkJMDcyQUUxREUxODNDMDUxMzAwMEE1OTg4IC8qIHBsdWdp
bnMgKi8sCiAJCQkJQ0RBOThEQkQxNjAxNEUwODAwRkVBM0IxIC8qIGVuY3J5cHRlZG1lZGlhICov
LAogCQkJCTk3MTE0NUZGMTRFRjAwNzkwMDY3NEZEOSAvKiBnZW9sb2NhdGlvbiAqLywKIAkJCQk5
NzEyQTU1MzE1MDA0RTNDMDA0OEFGMTAgLyogaW5kZXhlZGRiICovLApAQCAtMjE5ODgsNiArMjIw
MTcsNyBAQAogCQkJCTI5NDg5RkM3MTJDMDBGMDMwMEQ4M0YwRiAvKiBBY2Nlc3NpYmlsaXR5U2Ny
b2xsVmlldy5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMDcwOUZDNEUxMDI1REVFMzAwNTlDREJBIC8q
IEFjY2Vzc2liaWxpdHlTbGlkZXIuaCBpbiBIZWFkZXJzICovLAogCQkJCTUxRDcxOUQ3MTgxMTA2
RTAwMDE2REM1MSAvKiBJREJIaXN0b2dyYW1zLmggaW4gSGVhZGVycyAqLywKKwkJCQkwNzJBRTFF
ODE4M0MwNzQxMDAwQTU5ODggLyogUXVpY2tUaW1lUGx1Z2luUmVwbGFjZW1lbnQuaCBpbiBIZWFk
ZXJzICovLAogCQkJCTI5RDdCQ0ZBMTQ0NEFGN0QwMDcwNjE5QyAvKiBBY2Nlc3NpYmlsaXR5U3Bp
bkJ1dHRvbi5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQUFDMDhDRjMxNUY5NDFGRDAwRjFFMTg4IC8q
IEFjY2Vzc2liaWxpdHlTVkdSb290LmggaW4gSGVhZGVycyAqLywKIAkJCQkyOUE4MTIyQjBGQkI5
QzFEMDA1MTAyOTMgLyogQWNjZXNzaWJpbGl0eVRhYmxlLmggaW4gSGVhZGVycyAqLywKQEAgLTIy
MTg0LDYgKzIyMjE0LDcgQEAKIAkJCQlGRDMxNUZGRjEyQjAyNjc2MDBDMUEzNTkgLyogQ2hhbm5l
bE1lcmdlck5vZGUuaCBpbiBIZWFkZXJzICovLAogCQkJCUZEMzE2MDAyMTJCMDI2NzYwMEMxQTM1
OSAvKiBDaGFubmVsU3BsaXR0ZXJOb2RlLmggaW4gSGVhZGVycyAqLywKIAkJCQk2NTUwQjZBMDA5
OURGMDI3MDA5MEQ3ODEgLyogQ2hhcmFjdGVyRGF0YS5oIGluIEhlYWRlcnMgKi8sCisJCQkJMDc3
NjY0RkQxODNFNkI1QzAwMTMzQjkyIC8qIEpTUXVpY2tUaW1lUGx1Z2luUmVwbGFjZW1lbnQuaCBp
biBIZWFkZXJzICovLAogCQkJCTk3QjhGRkQxMTZBRTdGOTYwMDM4Mzg4RCAvKiBDaGFyYWN0ZXJS
ZWZlcmVuY2VQYXJzZXJJbmxpbmVzLmggaW4gSGVhZGVycyAqLywKIAkJCQlFMTY0RkFBMzE4MzE1
QkY0MDBEQjRFNjEgLyogQ3J5cHRvS2V5UlNBLmggaW4gSGVhZGVycyAqLywKIAkJCQlCMkMzREEy
QTBEMDA2QzFEMDBFRjZGMjYgLyogQ2hhcnNldERhdGEuaCBpbiBIZWFkZXJzICovLApAQCAtMjQ4
ODMsNiArMjQ5MTQsNyBAQAogCQkJCUUxODA4MTE3MTZGQ0Y5Q0IwMEI4MEQwNyAvKiBTeW5jaHJv
bm91c0xvYWRlckNsaWVudC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJNURBOTdFQ0QxNjhFNzg3QjAw
MEUzNjc2IC8qIFN5c3RlbVZlcnNpb25NYWMuaCBpbiBIZWFkZXJzICovLAogCQkJCUE4Q0ZGMDUx
MEExNTRGMDkwMDBBNDIzNCAvKiBUYWJsZUxheW91dC5oIGluIEhlYWRlcnMgKi8sCisJCQkJMDcy
QUUxRTUxODNDMDc0MTAwMEE1OTg4IC8qIFBsdWdpblJlcGxhY2VtZW50LmggaW4gSGVhZGVycyAq
LywKIAkJCQlCQ0UzQkVDMzBEMjIyQjFEMDA3RTA2RTQgLyogVGFnTm9kZUxpc3QuaCBpbiBIZWFk
ZXJzICovLAogCQkJCUY1NUIzREQ2MTI1MUYxMkQwMDNFRjI2OSAvKiBUZWxlcGhvbmVJbnB1dFR5
cGUuaCBpbiBIZWFkZXJzICovLAogCQkJCUM2NTA0NkE5MTY3QkZCNTUwMENDMkE0RCAvKiBUZW1w
bGF0ZUNvbnRlbnREb2N1bWVudEZyYWdtZW50LmggaW4gSGVhZGVycyAqLywKQEAgLTI3MDMyLDYg
KzI3MDY0LDcgQEAKIAkJCQk4NDg1MjI3QjExOTAxNjJDMDA2RURDN0YgLyogSlNTVkdIS2VybkVs
ZW1lbnQuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJQjJGQTNEOUUwQUI3NUE2RjAwMEU1QUM0IC8q
IEpTU1ZHSW1hZ2VFbGVtZW50LmNwcCBpbiBTb3VyY2VzICovLAogCQkJCUIyRkEzREEwMEFCNzVB
NkYwMDBFNUFDNCAvKiBKU1NWR0xlbmd0aC5jcHAgaW4gU291cmNlcyAqLywKKwkJCQkwNzc2NjRG
QzE4M0U2QjVDMDAxMzNCOTIgLyogSlNRdWlja1RpbWVQbHVnaW5SZXBsYWNlbWVudC5jcHAgaW4g
U291cmNlcyAqLywKIAkJCQkwOEU0RkU0NjBFMkJENDE0MDBGNENBRTAgLyogSlNTVkdMZW5ndGhD
dXN0b20uY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJQjJGQTNEQTIwQUI3NUE2RjAwMEU1QUM0IC8q
IEpTU1ZHTGVuZ3RoTGlzdC5jcHAgaW4gU291cmNlcyAqLywKIAkJCQlCMkZBM0RBNDBBQjc1QTZG
MDAwRTVBQzQgLyogSlNTVkdMaW5lYXJHcmFkaWVudEVsZW1lbnQuY3BwIGluIFNvdXJjZXMgKi8s
CkBAIC0yNzIzOCw2ICsyNzI3MSw3IEBACiAJCQkJMDcwNTg1MDIxN0ZBMTBEMDAwNUYyQkNCIC8q
IEpTQWxsVmlkZW9DYXBhYmlsaXRpZXMuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJOTc1OUU5M0Ux
NEVGMUNGODAwMjZBMkREIC8qIExvYWRhYmxlVGV4dFRyYWNrLmNwcCBpbiBTb3VyY2VzICovLAog
CQkJCTY1NkQzNzMzMEFEQkE1REUwMEE0NTU0RCAvKiBMb2FkZXJOU1VSTEV4dHJhcy5tbSBpbiBT
b3VyY2VzICovLAorCQkJCTA3MkFFMUU2MTgzQzA3NDEwMDBBNTk4OCAvKiBRdWlja1RpbWVQbHVn
aW5SZXBsYWNlbWVudC5jcHAgaW4gU291cmNlcyAqLywKIAkJCQk3RUU2ODQ2ODEyRDI2RTM4MDBF
Nzk0MTUgLyogTG9hZGVyUnVuTG9vcENGLmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTUxQUJGNjRE
MTYzOTJFMjgwMDEzMkE3QSAvKiBMb2FkZXJTdHJhdGVneS5jcHAgaW4gU291cmNlcyAqLywKIAkJ
CQkwNkU4MUVFQzBBQjVEQTk3MDBDODc4MzcgLyogTG9jYWxDdXJyZW50R3JhcGhpY3NDb250ZXh0
Lm1tIGluIFNvdXJjZXMgKi8sCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9nZW5lcmlj
L1J1bnRpbWVFbmFibGVkRmVhdHVyZXMuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9i
aW5kaW5ncy9nZW5lcmljL1J1bnRpbWVFbmFibGVkRmVhdHVyZXMuaAkocmV2aXNpb24gMTU5NzM2
KQorKysgU291cmNlL1dlYkNvcmUvYmluZGluZ3MvZ2VuZXJpYy9SdW50aW1lRW5hYmxlZEZlYXR1
cmVzLmgJKHdvcmtpbmcgY29weSkKQEAgLTIyOCw2ICsyMjgsOSBAQCBwdWJsaWM6CiAgICAgLy8g
VGhlIGxhbmcgYXR0cmlidXRlIHN1cHBvcnQgaXMgaW5jb21wbGV0ZSBhbmQgc2hvdWxkIG9ubHkg
YmUgdHVybmVkIG9uIGZvciB0ZXN0cy4KICAgICB2b2lkIHNldExhbmdBdHRyaWJ1dGVBd2FyZUZv
cm1Db250cm9sVUlFbmFibGVkKGJvb2wgaXNFbmFibGVkKSB7IG1faXNMYW5nQXR0cmlidXRlQXdh
cmVGb3JtQ29udHJvbFVJRW5hYmxlZCA9IGlzRW5hYmxlZDsgfQogCisgICAgdm9pZCBzZXRQbHVn
aW5SZXBsYWNlbWVudEVuYWJsZWQoYm9vbCBpc0VuYWJsZWQpIHsgbV9pc1BsdWdpblJlcGxhY2Vt
ZW50RW5hYmxlZCA9IGlzRW5hYmxlZDsgfQorICAgIGJvb2wgcGx1Z2luUmVwbGFjZW1lbnRFbmFi
bGVkKCkgY29uc3QgeyByZXR1cm4gbV9pc1BsdWdpblJlcGxhY2VtZW50RW5hYmxlZDsgfQorCiAg
ICAgc3RhdGljIFJ1bnRpbWVFbmFibGVkRmVhdHVyZXMmIHNoYXJlZEZlYXR1cmVzKCk7CiAKIHBy
aXZhdGU6CkBAIC0yNTAsNiArMjUzLDggQEAgcHJpdmF0ZToKICAgICBib29sIG1faXNDU1NSZWdp
b25zRW5hYmxlZDsKICAgICBib29sIG1faXNDU1NDb21wb3NpdGluZ0VuYWJsZWQ7CiAgICAgYm9v
bCBtX2lzTGFuZ0F0dHJpYnV0ZUF3YXJlRm9ybUNvbnRyb2xVSUVuYWJsZWQ7CisgICAgYm9vbCBt
X2lzUGx1Z2luUmVwbGFjZW1lbnRFbmFibGVkOworCiAjaWYgRU5BQkxFKFNDUklQVEVEX1NQRUVD
SCkKICAgICBib29sIG1faXNTY3JpcHRlZFNwZWVjaEVuYWJsZWQ7CiAjZW5kaWYKSW5kZXg6IFNv
dXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRE9NQmluZGluZy5oCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNv
dXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRE9NQmluZGluZy5oCShyZXZpc2lvbiAxNTk3MzYp
CisrKyBTb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0RPTUJpbmRpbmcuaAkod29ya2luZyBj
b3B5KQpAQCAtMzkyLDYgKzM5MiwxMSBAQCBpbmxpbmUgSlNDOjpKU1ZhbHVlIHRvSlMoSlNDOjpF
eGVjU3RhdGUqCiAgICAgcmV0dXJuIGFycmF5OwogfQogCitpbmxpbmUgSlNDOjpKU1ZhbHVlIHRv
SlMoSlNDOjpFeGVjU3RhdGUqIGV4ZWMsIEpTRE9NR2xvYmFsT2JqZWN0KiwgY29uc3QgU3RyaW5n
JiB2YWx1ZSkKK3sKKyAgICByZXR1cm4ganNTdHJpbmdPck51bGwoZXhlYywgdmFsdWUpOworfQor
CiB0ZW1wbGF0ZSA8Y2xhc3MgVD4KIHN0cnVjdCBKU1ZhbHVlVHJhaXRzIHsKICAgICBzdGF0aWMg
aW5saW5lIEpTQzo6SlNWYWx1ZSBhcnJheUpTVmFsdWUoSlNDOjpFeGVjU3RhdGUqIGV4ZWMsIEpT
RE9NR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIGNvbnN0IFQmIHZhbHVlKQpJbmRleDogU291
cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNQbHVnaW5FbGVtZW50RnVuY3Rpb25zLmNwcAo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU1BsdWdpbkVsZW1lbnRGdW5j
dGlvbnMuY3BwCShyZXZpc2lvbiAxNTk3MzYpCisrKyBTb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9q
cy9KU1BsdWdpbkVsZW1lbnRGdW5jdGlvbnMuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC04Miw3ICs4
MiwxMSBAQCBKU09iamVjdCogcGx1Z2luU2NyaXB0T2JqZWN0KEV4ZWNTdGF0ZSogCiAKICAgICBI
VE1MUGx1Z0luRWxlbWVudCYgcGx1Z2luRWxlbWVudCA9IHRvSFRNTFBsdWdJbkVsZW1lbnQoZWxl
bWVudCk7CiAKLSAgICAvLyBGaXJzdCwgc2VlIGlmIHdlIGNhbiBhc2sgdGhlIHBsdWctaW4gdmll
dyBmb3IgaXRzIHNjcmlwdCBvYmplY3QuCisgICAgLy8gRmlyc3QsIHNlZSBpZiB0aGUgZWxlbWVu
dCBoYXMgYSBwbHVnLWluIHJlcGxhY2VtZW50IHdpdGggYSBzY3JpcHQuCisgICAgaWYgKEpTT2Jq
ZWN0KiBzY3JpcHRPYmplY3QgPSBwbHVnaW5FbGVtZW50LnNjcmlwdE9iamVjdEZvclBsdWdpblJl
cGxhY2VtZW50KCkpCisgICAgICAgIHJldHVybiBzY3JpcHRPYmplY3Q7CisgICAgCisgICAgLy8g
TmV4dCwgc2VlIGlmIHdlIGNhbiBhc2sgdGhlIHBsdWctaW4gdmlldyBmb3IgaXRzIHNjcmlwdCBv
YmplY3QuCiAgICAgaWYgKEpTT2JqZWN0KiBzY3JpcHRPYmplY3QgPSBwbHVnaW5TY3JpcHRPYmpl
Y3RGcm9tUGx1Z2luVmlld0Jhc2UocGx1Z2luRWxlbWVudCwganNIVE1MRWxlbWVudC0+Z2xvYmFs
T2JqZWN0KCkpKQogICAgICAgICByZXR1cm4gc2NyaXB0T2JqZWN0OwogCkluZGV4OiBTb3VyY2Uv
V2ViQ29yZS9odG1sL0hUTUxFbWJlZEVsZW1lbnQuY3BwCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9X
ZWJDb3JlL2h0bWwvSFRNTEVtYmVkRWxlbWVudC5jcHAJKHJldmlzaW9uIDE1OTczNikKKysrIFNv
dXJjZS9XZWJDb3JlL2h0bWwvSFRNTEVtYmVkRWxlbWVudC5jcHAJKHdvcmtpbmcgY29weSkKQEAg
LTE3MCw5ICsxNzAsOCBAQCB2b2lkIEhUTUxFbWJlZEVsZW1lbnQ6OnVwZGF0ZVdpZGdldChQbHVn
CiAgICAgaWYgKCFyZW5kZXJlcigpKSAvLyBEbyBub3QgbG9hZCB0aGUgcGx1Z2luIGlmIGJlZm9y
ZWxvYWQgcmVtb3ZlZCB0aGlzIGVsZW1lbnQgb3IgaXRzIHJlbmRlcmVyLgogICAgICAgICByZXR1
cm47CiAKLSAgICBTdWJmcmFtZUxvYWRlciYgbG9hZGVyID0gZG9jdW1lbnQoKS5mcmFtZSgpLT5s
b2FkZXIoKS5zdWJmcmFtZUxvYWRlcigpOwogICAgIC8vIEZJWE1FOiBiZWZvcmVMb2FkIGNvdWxk
IGhhdmUgZGV0YWNoZWQgdGhlIHJlbmRlcmVyISAgSnVzdCBsaWtlIGluIHRoZSA8b2JqZWN0PiBj
YXNlIGFib3ZlLgotICAgIGxvYWRlci5yZXF1ZXN0T2JqZWN0KCp0aGlzLCBtX3VybCwgZ2V0TmFt
ZUF0dHJpYnV0ZSgpLCBtX3NlcnZpY2VUeXBlLCBwYXJhbU5hbWVzLCBwYXJhbVZhbHVlcyk7Cisg
ICAgcmVxdWVzdE9iamVjdChtX3VybCwgbV9zZXJ2aWNlVHlwZSwgcGFyYW1OYW1lcywgcGFyYW1W
YWx1ZXMpOwogfQogCiBib29sIEhUTUxFbWJlZEVsZW1lbnQ6OnJlbmRlcmVySXNOZWVkZWQoY29u
c3QgUmVuZGVyU3R5bGUmIHN0eWxlKQpJbmRleDogU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MTWVk
aWFFbGVtZW50LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxNZWRp
YUVsZW1lbnQuY3BwCShyZXZpc2lvbiAxNTk3MzYpCisrKyBTb3VyY2UvV2ViQ29yZS9odG1sL0hU
TUxNZWRpYUVsZW1lbnQuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC01MjgxLDYgKzUyODEsMTQgQEAg
dm9pZCBIVE1MTWVkaWFFbGVtZW50OjpkaWRBZGRVc2VyQWdlbnRTaAogfQogI2VuZGlmCiAKK3Vu
c2lnbmVkIGxvbmcgbG9uZyBIVE1MTWVkaWFFbGVtZW50OjpmaWxlU2l6ZSgpIGNvbnN0Cit7Cisg
ICAgaWYgKG1fcGxheWVyKQorICAgICAgICByZXR1cm4gbV9wbGF5ZXItPmZpbGVTaXplKCk7Cisg
ICAgCisgICAgcmV0dXJuIDA7Cit9CisKIH0KIAogI2VuZGlmCkluZGV4OiBTb3VyY2UvV2ViQ29y
ZS9odG1sL0hUTUxNZWRpYUVsZW1lbnQuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9o
dG1sL0hUTUxNZWRpYUVsZW1lbnQuaAkocmV2aXNpb24gMTU5NzM2KQorKysgU291cmNlL1dlYkNv
cmUvaHRtbC9IVE1MTWVkaWFFbGVtZW50LmgJKHdvcmtpbmcgY29weSkKQEAgLTM4Niw2ICszODYs
OCBAQCBwdWJsaWM6CiAgICAgYm9vbCBzaG91bGRVc2VWaWRlb1BsdWdpblByb3h5KCkgY29uc3Q7
CiAjZW5kaWYKIAorICAgIHVuc2lnbmVkIGxvbmcgbG9uZyBmaWxlU2l6ZSgpIGNvbnN0OworCiBw
cm90ZWN0ZWQ6CiAgICAgSFRNTE1lZGlhRWxlbWVudChjb25zdCBRdWFsaWZpZWROYW1lJiwgRG9j
dW1lbnQmLCBib29sKTsKICAgICB2aXJ0dWFsIH5IVE1MTWVkaWFFbGVtZW50KCk7CkluZGV4OiBT
b3VyY2UvV2ViQ29yZS9odG1sL0hUTUxPYmplY3RFbGVtZW50LmNwcAo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBT
b3VyY2UvV2ViQ29yZS9odG1sL0hUTUxPYmplY3RFbGVtZW50LmNwcAkocmV2aXNpb24gMTU5NzM2
KQorKysgU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MT2JqZWN0RWxlbWVudC5jcHAJKHdvcmtpbmcg
Y29weSkKQEAgLTMwNyw4ICszMDcsOSBAQCB2b2lkIEhUTUxPYmplY3RFbGVtZW50Ojp1cGRhdGVX
aWRnZXQoUGx1CiAgICAgaWYgKCFyZW5kZXJlcigpKSAvLyBEbyBub3QgbG9hZCB0aGUgcGx1Z2lu
IGlmIGJlZm9yZWxvYWQgcmVtb3ZlZCB0aGlzIGVsZW1lbnQgb3IgaXRzIHJlbmRlcmVyLgogICAg
ICAgICByZXR1cm47CiAKLSAgICBTdWJmcmFtZUxvYWRlciYgbG9hZGVyID0gZG9jdW1lbnQoKS5m
cmFtZSgpLT5sb2FkZXIoKS5zdWJmcmFtZUxvYWRlcigpOwotICAgIGJvb2wgc3VjY2VzcyA9IGJl
Zm9yZUxvYWRBbGxvd2VkTG9hZCAmJiBoYXNWYWxpZENsYXNzSWQoKSAmJiBsb2FkZXIucmVxdWVz
dE9iamVjdCgqdGhpcywgdXJsLCBnZXROYW1lQXR0cmlidXRlKCksIHNlcnZpY2VUeXBlLCBwYXJh
bU5hbWVzLCBwYXJhbVZhbHVlcyk7CisgICAgYm9vbCBzdWNjZXNzID0gYmVmb3JlTG9hZEFsbG93
ZWRMb2FkICYmIGhhc1ZhbGlkQ2xhc3NJZCgpOworICAgIGlmIChzdWNjZXNzKQorICAgICAgICBz
dWNjZXNzID0gcmVxdWVzdE9iamVjdCh1cmwsIHNlcnZpY2VUeXBlLCBwYXJhbU5hbWVzLCBwYXJh
bVZhbHVlcyk7CiAgICAgaWYgKCFzdWNjZXNzICYmIGhhc0ZhbGxiYWNrQ29udGVudCgpKQogICAg
ICAgICByZW5kZXJGYWxsYmFja0NvbnRlbnQoKTsKIH0KSW5kZXg6IFNvdXJjZS9XZWJDb3JlL2h0
bWwvSFRNTFBsdWdJbkVsZW1lbnQuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL2h0
bWwvSFRNTFBsdWdJbkVsZW1lbnQuY3BwCShyZXZpc2lvbiAxNTk3MzYpCisrKyBTb3VyY2UvV2Vi
Q29yZS9odG1sL0hUTUxQbHVnSW5FbGVtZW50LmNwcAkod29ya2luZyBjb3B5KQpAQCAtMzUsMTkg
KzM1LDI5IEBACiAjaW5jbHVkZSAiRnJhbWVMb2FkZXIuaCIKICNpbmNsdWRlICJGcmFtZVRyZWUu
aCIKICNpbmNsdWRlICJIVE1MTmFtZXMuaCIKKyNpbmNsdWRlICJNSU1FVHlwZVJlZ2lzdHJ5Lmgi
CiAjaW5jbHVkZSAiUGFnZS5oIgorI2luY2x1ZGUgIlBsdWdpbkRhdGEuaCIKKyNpbmNsdWRlICJQ
bHVnaW5SZXBsYWNlbWVudC5oIgogI2luY2x1ZGUgIlBsdWdpblZpZXdCYXNlLmgiCiAjaW5jbHVk
ZSAiUmVuZGVyRW1iZWRkZWRPYmplY3QuaCIKICNpbmNsdWRlICJSZW5kZXJTbmFwc2hvdHRlZFBs
dWdJbi5oIgogI2luY2x1ZGUgIlJlbmRlcldpZGdldC5oIgorI2luY2x1ZGUgIlJ1bnRpbWVFbmFi
bGVkRmVhdHVyZXMuaCIKICNpbmNsdWRlICJTY3JpcHRDb250cm9sbGVyLmgiCiAjaW5jbHVkZSAi
U2V0dGluZ3MuaCIKKyNpbmNsdWRlICJTaGFkb3dSb290LmgiCisjaW5jbHVkZSAiU3ViZnJhbWVM
b2FkZXIuaCIKICNpbmNsdWRlICJXaWRnZXQuaCIKIAogI2lmIEVOQUJMRShORVRTQ0FQRV9QTFVH
SU5fQVBJKQogI2luY2x1ZGUgIm5wcnVudGltZV9pbXBsLmgiCiAjZW5kaWYKIAorI2lmIFBMQVRG
T1JNKE1BQykKKyNpbmNsdWRlICJRdWlja1RpbWVQbHVnaW5SZXBsYWNlbWVudC5oIgorI2VuZGlm
CisKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogdXNpbmcgbmFtZXNwYWNlIEhUTUxOYW1lczsKQEAg
LTU1LDYgKzY1LDcgQEAgdXNpbmcgbmFtZXNwYWNlIEhUTUxOYW1lczsKIEhUTUxQbHVnSW5FbGVt
ZW50OjpIVE1MUGx1Z0luRWxlbWVudChjb25zdCBRdWFsaWZpZWROYW1lJiB0YWdOYW1lLCBEb2N1
bWVudCYgZG9jdW1lbnQpCiAgICAgOiBIVE1MRnJhbWVPd25lckVsZW1lbnQodGFnTmFtZSwgZG9j
dW1lbnQpCiAgICAgLCBtX2luQmVmb3JlTG9hZEV2ZW50SGFuZGxlcihmYWxzZSkKKyAgICAsIG1f
c3dhcFJlbmRlcmVyVGltZXIodGhpcywgJkhUTUxQbHVnSW5FbGVtZW50Ojpzd2FwUmVuZGVyZXJU
aW1lckZpcmVkKQogI2lmIEVOQUJMRShORVRTQ0FQRV9QTFVHSU5fQVBJKQogICAgICwgbV9OUE9i
amVjdCgwKQogI2VuZGlmCkBAIC0yNjIsNCArMjczLDEzMiBAQCBOUE9iamVjdCogSFRNTFBsdWdJ
bkVsZW1lbnQ6OmdldE5QT2JqZWN0CiAKICNlbmRpZiAvKiBFTkFCTEUoTkVUU0NBUEVfUExVR0lO
X0FQSSkgKi8KIAorUmVuZGVyRWxlbWVudCogSFRNTFBsdWdJbkVsZW1lbnQ6OmNyZWF0ZVJlbmRl
cmVyKFBhc3NSZWY8UmVuZGVyU3R5bGU+IHN0eWxlKQoreworICAgIGlmIChtX3BsdWdpblJlcGxh
Y2VtZW50ICYmIG1fcGx1Z2luUmVwbGFjZW1lbnQtPndpbGxDcmVhdGVSZW5kZXJlcigpKQorICAg
ICAgICByZXR1cm4gbV9wbHVnaW5SZXBsYWNlbWVudC0+Y3JlYXRlUmVuZGVyZXIoKnRoaXMsIHN0
ZDo6bW92ZShzdHlsZSkpOworCisgICAgcmV0dXJuIG5ldyBSZW5kZXJFbWJlZGRlZE9iamVjdCgq
dGhpcywgc3RkOjptb3ZlKHN0eWxlKSk7Cit9CisKK3ZvaWQgSFRNTFBsdWdJbkVsZW1lbnQ6OnN3
YXBSZW5kZXJlclRpbWVyRmlyZWQoVGltZXI8SFRNTFBsdWdJbkVsZW1lbnQ+KikKK3sKKyAgICBB
U1NFUlQoZGlzcGxheVN0YXRlKCkgPT0gUHJlcGFyaW5nUGx1Z2luUmVwbGFjZW1lbnQgfHwgZGlz
cGxheVN0YXRlKCkgPT0gRGlzcGxheWluZ1NuYXBzaG90KTsKKyAgICBpZiAodXNlckFnZW50U2hh
ZG93Um9vdCgpKQorICAgICAgICByZXR1cm47CisgICAgCisgICAgLy8gQ3JlYXRlIGEgc2hhZG93
IHJvb3QsIHdoaWNoIHdpbGwgdHJpZ2dlciB0aGUgY29kZSB0byBhZGQgYSBzbmFwc2hvdCBjb250
YWluZXIKKyAgICAvLyBhbmQgcmVhdHRhY2gsIHRodXMgbWFraW5nIGEgbmV3IFJlbmRlcmVyLgor
ICAgIGVuc3VyZVVzZXJBZ2VudFNoYWRvd1Jvb3QoKTsKK30KKwordm9pZCBIVE1MUGx1Z0luRWxl
bWVudDo6c2V0RGlzcGxheVN0YXRlKERpc3BsYXlTdGF0ZSBzdGF0ZSkKK3sKKyAgICBtX2Rpc3Bs
YXlTdGF0ZSA9IHN0YXRlOworICAgIAorICAgIGlmICgoc3RhdGUgPT0gRGlzcGxheWluZ1NuYXBz
aG90IHx8IGRpc3BsYXlTdGF0ZSgpID09IFByZXBhcmluZ1BsdWdpblJlcGxhY2VtZW50KSAmJiAh
bV9zd2FwUmVuZGVyZXJUaW1lci5pc0FjdGl2ZSgpKQorICAgICAgICBtX3N3YXBSZW5kZXJlclRp
bWVyLnN0YXJ0T25lU2hvdCgwKTsKK30KKwordm9pZCBIVE1MUGx1Z0luRWxlbWVudDo6ZGlkQWRk
VXNlckFnZW50U2hhZG93Um9vdChTaGFkb3dSb290KiByb290KQoreworICAgIGlmICghbV9wbHVn
aW5SZXBsYWNlbWVudCB8fCAhZG9jdW1lbnQoKS5wYWdlKCkgfHwgZGlzcGxheVN0YXRlKCkgIT0g
UHJlcGFyaW5nUGx1Z2luUmVwbGFjZW1lbnQpCisgICAgICAgIHJldHVybjsKKyAgICAKKyAgICBy
b290LT5zZXRSZXNldFN0eWxlSW5oZXJpdGFuY2UodHJ1ZSk7CisgICAgaWYgKG1fcGx1Z2luUmVw
bGFjZW1lbnQtPmluc3RhbGxSZXBsYWNlbWVudChyb290KSkgeworICAgICAgICBzZXREaXNwbGF5
U3RhdGUoRGlzcGxheWluZ1BsdWdpblJlcGxhY2VtZW50KTsKKyAgICAgICAgU3R5bGU6OnJlYXR0
YWNoUmVuZGVyVHJlZSgqdGhpcyk7CisgICAgfQorfQorCitzdGF0aWMgdm9pZCByZWdpc3RlclBs
dWdpblJlcGxhY2VtZW50KGNvbnN0IFJlcGxhY2VtZW50UGx1Z2luJik7CisKK3N0YXRpYyBWZWN0
b3I8UmVwbGFjZW1lbnRQbHVnaW4qPiYgcmVnaXN0ZXJlZFBsdWdpblJlcGxhY2VtZW50cygpCit7
CisgICAgREVGSU5FX1NUQVRJQ19MT0NBTChWZWN0b3I8UmVwbGFjZW1lbnRQbHVnaW4qPiwgcmVn
aXN0ZXJlZFJlcGxhY2VtZW50cywgKCkpOworICAgIHN0YXRpYyBib29sIGVuZ2luZXNRdWVyaWVk
ID0gZmFsc2U7CisgICAgCisgICAgaWYgKGVuZ2luZXNRdWVyaWVkKQorICAgICAgICByZXR1cm4g
cmVnaXN0ZXJlZFJlcGxhY2VtZW50czsKKyAgICBlbmdpbmVzUXVlcmllZCA9IHRydWU7CisKKyNp
ZiBQTEFURk9STShNQUMpCisgICAgUXVpY2tUaW1lUGx1Z2luUmVwbGFjZW1lbnQ6OnJlZ2lzdGVy
UGx1Z2luUmVwbGFjZW1lbnQocmVnaXN0ZXJQbHVnaW5SZXBsYWNlbWVudCk7CisjZW5kaWYKKyAg
ICAKKyAgICByZXR1cm4gcmVnaXN0ZXJlZFJlcGxhY2VtZW50czsKK30KKworc3RhdGljIHZvaWQg
cmVnaXN0ZXJQbHVnaW5SZXBsYWNlbWVudChjb25zdCBSZXBsYWNlbWVudFBsdWdpbiYgcmVwbGFj
ZW1lbnQpCit7CisgICAgcmVnaXN0ZXJlZFBsdWdpblJlcGxhY2VtZW50cygpLmFwcGVuZChuZXcg
UmVwbGFjZW1lbnRQbHVnaW4ocmVwbGFjZW1lbnQpKTsKK30KKworc3RhdGljIFJlcGxhY2VtZW50
UGx1Z2luKiBwbHVnaW5SZXBsYWNlbWVudEZvclR5cGUoY29uc3QgVVJMJiB1cmwsIGNvbnN0IFN0
cmluZyYgbWltZVR5cGUpCit7CisgICAgVmVjdG9yPFJlcGxhY2VtZW50UGx1Z2luKj4mIHJlcGxh
Y2VtZW50cyA9IHJlZ2lzdGVyZWRQbHVnaW5SZXBsYWNlbWVudHMoKTsKKyAgICBpZiAocmVwbGFj
ZW1lbnRzLmlzRW1wdHkoKSkKKyAgICAgICAgcmV0dXJuIG51bGxwdHI7CisKKyAgICBTdHJpbmcg
ZXh0ZW5zaW9uOworICAgIFN0cmluZyBsYXN0UGF0aENvbXBvbmVudCA9IHVybC5sYXN0UGF0aENv
bXBvbmVudCgpOworICAgIHNpemVfdCBkb3RPZmZzZXQgPSBsYXN0UGF0aENvbXBvbmVudC5yZXZl
cnNlRmluZCgnLicpOworICAgIGlmIChkb3RPZmZzZXQgIT0gbm90Rm91bmQpCisgICAgICAgIGV4
dGVuc2lvbiA9IGxhc3RQYXRoQ29tcG9uZW50LnN1YnN0cmluZyhkb3RPZmZzZXQgKyAxKTsKKwor
ICAgIFN0cmluZyB0eXBlID0gbWltZVR5cGU7CisgICAgaWYgKHR5cGUuaXNFbXB0eSgpICYmIHVy
bC5wcm90b2NvbElzRGF0YSgpKQorICAgICAgICB0eXBlID0gbWltZVR5cGVGcm9tRGF0YVVSTCh1
cmwuc3RyaW5nKCkpOworICAgIAorICAgIGlmICh0eXBlLmlzRW1wdHkoKSAmJiAhZXh0ZW5zaW9u
LmlzRW1wdHkoKSkgeworICAgICAgICBmb3IgKHNpemVfdCBpID0gMDsgaSA8IHJlcGxhY2VtZW50
cy5zaXplKCk7IGkrKykKKyAgICAgICAgICAgIGlmIChyZXBsYWNlbWVudHNbaV0tPnN1cHBvcnRz
RmlsZUV4dGVuc2lvbihleHRlbnNpb24pKQorICAgICAgICAgICAgICAgIHJldHVybiByZXBsYWNl
bWVudHNbaV07CisgICAgfQorICAgIAorICAgIGlmICh0eXBlLmlzRW1wdHkoKSkgeworICAgICAg
ICBpZiAoZXh0ZW5zaW9uLmlzRW1wdHkoKSkKKyAgICAgICAgICAgIHJldHVybiBudWxscHRyOwor
ICAgICAgICB0eXBlID0gTUlNRVR5cGVSZWdpc3RyeTo6Z2V0TWVkaWFNSU1FVHlwZUZvckV4dGVu
c2lvbihleHRlbnNpb24pOworICAgIH0KKworICAgIGlmICh0eXBlLmlzRW1wdHkoKSkKKyAgICAg
ICAgcmV0dXJuIG51bGxwdHI7CisKKyAgICBmb3IgKHVuc2lnbmVkIGkgPSAwOyBpIDwgcmVwbGFj
ZW1lbnRzLnNpemUoKTsgaSsrKQorICAgICAgICBpZiAocmVwbGFjZW1lbnRzW2ldLT5zdXBwb3J0
c1R5cGUodHlwZSkpCisgICAgICAgICAgICByZXR1cm4gcmVwbGFjZW1lbnRzW2ldOworCisgICAg
cmV0dXJuIG51bGxwdHI7Cit9CisKK2Jvb2wgSFRNTFBsdWdJbkVsZW1lbnQ6OnJlcXVlc3RPYmpl
Y3QoY29uc3QgU3RyaW5nJiB1cmwsIGNvbnN0IFN0cmluZyYgbWltZVR5cGUsIGNvbnN0IFZlY3Rv
cjxTdHJpbmc+JiBwYXJhbU5hbWVzLCBjb25zdCBWZWN0b3I8U3RyaW5nPiYgcGFyYW1WYWx1ZXMp
Cit7CisgICAgaWYgKCFSdW50aW1lRW5hYmxlZEZlYXR1cmVzOjpzaGFyZWRGZWF0dXJlcygpLnBs
dWdpblJlcGxhY2VtZW50RW5hYmxlZCgpKQorICAgICAgICByZXR1cm4gZmFsc2U7CisKKyAgICBp
ZiAobV9wbHVnaW5SZXBsYWNlbWVudCkKKyAgICAgICAgcmV0dXJuIHRydWU7CisKKyAgICBVUkwg
Y29tcGxldGVkVVJMOworICAgIGlmICghdXJsLmlzRW1wdHkoKSkKKyAgICAgICAgY29tcGxldGVk
VVJMID0gZG9jdW1lbnQoKS5jb21wbGV0ZVVSTCh1cmwpOworCisgICAgUmVwbGFjZW1lbnRQbHVn
aW4qIHJlcGxhY2VtZW50ID0gcGx1Z2luUmVwbGFjZW1lbnRGb3JUeXBlKGNvbXBsZXRlZFVSTCwg
bWltZVR5cGUpOworICAgIGlmICghcmVwbGFjZW1lbnQpCisgICAgICAgIHJldHVybiBmYWxzZTsK
KworICAgIG1fcGx1Z2luUmVwbGFjZW1lbnQgPSByZXBsYWNlbWVudC0+Y3JlYXRlKCp0aGlzLCBw
YXJhbU5hbWVzLCBwYXJhbVZhbHVlcyk7CisgICAgc2V0RGlzcGxheVN0YXRlKFByZXBhcmluZ1Bs
dWdpblJlcGxhY2VtZW50KTsKKyAgICByZXR1cm4gdHJ1ZTsKK30KKworSlNDOjpKU09iamVjdCog
SFRNTFBsdWdJbkVsZW1lbnQ6OnNjcmlwdE9iamVjdEZvclBsdWdpblJlcGxhY2VtZW50KCkKK3sK
KyAgICBpZiAobV9wbHVnaW5SZXBsYWNlbWVudCkKKyAgICAgICAgcmV0dXJuIG1fcGx1Z2luUmVw
bGFjZW1lbnQtPnNjcmlwdE9iamVjdCgpOworICAgIHJldHVybiBudWxscHRyOworfQorCiB9Cklu
ZGV4OiBTb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxQbHVnSW5FbGVtZW50LmgKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MUGx1Z0luRWxlbWVudC5oCShyZXZpc2lvbiAxNTk3
MzYpCisrKyBTb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxQbHVnSW5FbGVtZW50LmgJKHdvcmtpbmcg
Y29weSkKQEAgLTM4LDYgKzM4LDcgQEAgY2xhc3MgSW5zdGFuY2U7CiAKIG5hbWVzcGFjZSBXZWJD
b3JlIHsKIAorY2xhc3MgUGx1Z2luUmVwbGFjZW1lbnQ7CiBjbGFzcyBSZW5kZXJFbWJlZGRlZE9i
amVjdDsKIGNsYXNzIFJlbmRlcldpZGdldDsKIGNsYXNzIFdpZGdldDsKQEAgLTU3LDE0ICs1OCwx
OCBAQCBwdWJsaWM6CiAgICAgICAgIERpc3BsYXlpbmdTbmFwc2hvdCwKICAgICAgICAgUmVzdGFy
dGluZywKICAgICAgICAgUmVzdGFydGluZ1dpdGhQZW5kaW5nTW91c2VDbGljaywKLSAgICAgICAg
UGxheWluZworICAgICAgICBQbGF5aW5nLAorICAgICAgICBQcmVwYXJpbmdQbHVnaW5SZXBsYWNl
bWVudCwKKyAgICAgICAgRGlzcGxheWluZ1BsdWdpblJlcGxhY2VtZW50LAogICAgIH07CiAgICAg
RGlzcGxheVN0YXRlIGRpc3BsYXlTdGF0ZSgpIGNvbnN0IHsgcmV0dXJuIG1fZGlzcGxheVN0YXRl
OyB9Ci0gICAgdmlydHVhbCB2b2lkIHNldERpc3BsYXlTdGF0ZShEaXNwbGF5U3RhdGUgc3RhdGUp
IHsgbV9kaXNwbGF5U3RhdGUgPSBzdGF0ZTsgfQorICAgIHZpcnR1YWwgdm9pZCBzZXREaXNwbGF5
U3RhdGUoRGlzcGxheVN0YXRlKTsKICAgICB2aXJ0dWFsIHZvaWQgdXBkYXRlU25hcHNob3QoUGFz
c1JlZlB0cjxJbWFnZT4pIHsgfQogICAgIHZpcnR1YWwgdm9pZCBkaXNwYXRjaFBlbmRpbmdNb3Vz
ZUNsaWNrKCkgeyB9CiAgICAgdmlydHVhbCBib29sIGlzUmVzdGFydGVkUGx1Z2luKCkgY29uc3Qg
eyByZXR1cm4gZmFsc2U7IH0KIAorICAgIEpTQzo6SlNPYmplY3QqIHNjcmlwdE9iamVjdEZvclBs
dWdpblJlcGxhY2VtZW50KCk7CisKICNpZiBFTkFCTEUoTkVUU0NBUEVfUExVR0lOX0FQSSkKICAg
ICBOUE9iamVjdCogZ2V0TlBPYmplY3QoKTsKICNlbmRpZgpAQCAtOTEsMTIgKzk2LDE5IEBAIHBy
b3RlY3RlZDoKIAogICAgIHZpcnR1YWwgdm9pZCBkZWZhdWx0RXZlbnRIYW5kbGVyKEV2ZW50Kikg
T1ZFUlJJREU7CiAKKyAgICB2aXJ0dWFsIGJvb2wgcmVxdWVzdE9iamVjdChjb25zdCBTdHJpbmcm
IHVybCwgY29uc3QgU3RyaW5nJiBtaW1lVHlwZSwgY29uc3QgVmVjdG9yPFN0cmluZz4mIHBhcmFt
TmFtZXMsIGNvbnN0IFZlY3RvcjxTdHJpbmc+JiBwYXJhbVZhbHVlcyk7CisgICAgdmlydHVhbCBS
ZW5kZXJFbGVtZW50KiBjcmVhdGVSZW5kZXJlcihQYXNzUmVmPFJlbmRlclN0eWxlPikgT1ZFUlJJ
REU7CisgICAgdmlydHVhbCB2b2lkIGRpZEFkZFVzZXJBZ2VudFNoYWRvd1Jvb3QoU2hhZG93Um9v
dCopIE9WRVJSSURFOworCiAgICAgLy8gU3ViY2xhc3NlcyBzaG91bGQgdXNlIGd1YXJkZWREaXNw
YXRjaEJlZm9yZUxvYWRFdmVudCBpbnN0ZWFkIG9mIGNhbGxpbmcgZGlzcGF0Y2hCZWZvcmVMb2Fk
RXZlbnQgZGlyZWN0bHkuCiAgICAgYm9vbCBndWFyZGVkRGlzcGF0Y2hCZWZvcmVMb2FkRXZlbnQo
Y29uc3QgU3RyaW5nJiBzb3VyY2VVUkwpOwogCiAgICAgYm9vbCBtX2luQmVmb3JlTG9hZEV2ZW50
SGFuZGxlcjsKIAogcHJpdmF0ZToKKyAgICB2b2lkIHN3YXBSZW5kZXJlclRpbWVyRmlyZWQoVGlt
ZXI8SFRNTFBsdWdJbkVsZW1lbnQ+Kik7CisgICAgYm9vbCBzaG91bGRPdmVycmlkZVBsdWdpbihj
b25zdCBTdHJpbmcmIHVybCwgY29uc3QgU3RyaW5nJiBtaW1lVHlwZSk7CisKICAgICBib29sIGRp
c3BhdGNoQmVmb3JlTG9hZEV2ZW50KGNvbnN0IFN0cmluZyYgc291cmNlVVJMKTsgLy8gTm90IGlt
cGxlbWVudGVkLCBnZW5lcmF0ZXMgYSBjb21waWxlIGVycm9yIGlmIHN1YmNsYXNzZXMgY2FsbCB0
aGlzIGJ5IG1pc3Rha2UuCiAKICAgICB2aXJ0dWFsIGJvb2wgYXJlQXV0aG9yU2hhZG93c0FsbG93
ZWQoKSBjb25zdCBPVkVSUklERSB7IHJldHVybiBmYWxzZTsgfQpAQCAtMTA5LDYgKzEyMSw4IEBA
IHByaXZhdGU6CiAgICAgdmlydHVhbCBib29sIGlzUGx1Z2luRWxlbWVudCgpIGNvbnN0IE9WRVJS
SURFIEZJTkFMOwogCiAgICAgUmVmUHRyPEpTQzo6QmluZGluZ3M6Okluc3RhbmNlPiBtX2luc3Rh
bmNlOworICAgIFRpbWVyPEhUTUxQbHVnSW5FbGVtZW50PiBtX3N3YXBSZW5kZXJlclRpbWVyOwor
ICAgIFJlZlB0cjxQbHVnaW5SZXBsYWNlbWVudD4gbV9wbHVnaW5SZXBsYWNlbWVudDsKICNpZiBF
TkFCTEUoTkVUU0NBUEVfUExVR0lOX0FQSSkKICAgICBOUE9iamVjdCogbV9OUE9iamVjdDsKICNl
bmRpZgpJbmRleDogU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MUGx1Z0luSW1hZ2VFbGVtZW50LmNw
cAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxQbHVnSW5JbWFnZUVsZW1l
bnQuY3BwCShyZXZpc2lvbiAxNTk3MzYpCisrKyBTb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxQbHVn
SW5JbWFnZUVsZW1lbnQuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0xMDgsNyArMTA4LDYgQEAgSFRN
TFBsdWdJbkltYWdlRWxlbWVudDo6SFRNTFBsdWdJbkltYWdlRQogICAgICwgbV9zaG91bGRQcmVm
ZXJQbHVnSW5zRm9ySW1hZ2VzKHByZWZlclBsdWdJbnNGb3JJbWFnZXNPcHRpb24gPT0gU2hvdWxk
UHJlZmVyUGx1Z0luc0ZvckltYWdlcykKICAgICAsIG1fbmVlZHNEb2N1bWVudEFjdGl2YXRpb25D
YWxsYmFja3MoZmFsc2UpCiAgICAgLCBtX3NpbXVsYXRlZE1vdXNlQ2xpY2tUaW1lcih0aGlzLCAm
SFRNTFBsdWdJbkltYWdlRWxlbWVudDo6c2ltdWxhdGVkTW91c2VDbGlja1RpbWVyRmlyZWQsIHNp
bXVsYXRlZE1vdXNlQ2xpY2tUaW1lckRlbGF5KQotICAgICwgbV9zd2FwUmVuZGVyZXJUaW1lcih0
aGlzLCAmSFRNTFBsdWdJbkltYWdlRWxlbWVudDo6c3dhcFJlbmRlcmVyVGltZXJGaXJlZCkKICAg
ICAsIG1fcmVtb3ZlU25hcHNob3RUaW1lcih0aGlzLCAmSFRNTFBsdWdJbkltYWdlRWxlbWVudDo6
cmVtb3ZlU25hcHNob3RUaW1lckZpcmVkKQogICAgICwgbV9jcmVhdGVkRHVyaW5nVXNlckdlc3R1
cmUoU2NyaXB0Q29udHJvbGxlcjo6cHJvY2Vzc2luZ1VzZXJHZXN0dXJlKCkpCiAgICAgLCBtX2lz
UmVzdGFydGVkUGx1Z2luKGZhbHNlKQpAQCAtMTM5LDkgKzEzOCw2IEBAIHZvaWQgSFRNTFBsdWdJ
bkltYWdlRWxlbWVudDo6c2V0RGlzcGxheVMKICNlbmRpZgogCiAgICAgSFRNTFBsdWdJbkVsZW1l
bnQ6OnNldERpc3BsYXlTdGF0ZShzdGF0ZSk7Ci0KLSAgICBpZiAoc3RhdGUgPT0gRGlzcGxheWlu
Z1NuYXBzaG90KQotICAgICAgICBtX3N3YXBSZW5kZXJlclRpbWVyLnN0YXJ0T25lU2hvdCgwKTsK
IH0KIAogUmVuZGVyRW1iZWRkZWRPYmplY3QqIEhUTUxQbHVnSW5JbWFnZUVsZW1lbnQ6OnJlbmRl
ckVtYmVkZGVkT2JqZWN0KCkgY29uc3QKQEAgLTE5Niw2ICsxOTIsOSBAQCBib29sIEhUTUxQbHVn
SW5JbWFnZUVsZW1lbnQ6OndvdWxkTG9hZEFzCiAKIFJlbmRlckVsZW1lbnQqIEhUTUxQbHVnSW5J
bWFnZUVsZW1lbnQ6OmNyZWF0ZVJlbmRlcmVyKFBhc3NSZWY8UmVuZGVyU3R5bGU+IHN0eWxlKQog
eworICAgIGlmIChkaXNwbGF5U3RhdGUoKSA+PSBQcmVwYXJpbmdQbHVnaW5SZXBsYWNlbWVudCkK
KyAgICAgICAgcmV0dXJuIEhUTUxQbHVnSW5FbGVtZW50OjpjcmVhdGVSZW5kZXJlcihzdGQ6Om1v
dmUoc3R5bGUpKTsKKwogICAgIC8vIE9uY2UgYSBQbHVnSW4gRWxlbWVudCBjcmVhdGVzIGl0cyBy
ZW5kZXJlciwgaXQgbmVlZHMgdG8gYmUgdG9sZCB3aGVuIHRoZSBEb2N1bWVudCBnb2VzCiAgICAg
Ly8gaW5hY3RpdmUgb3IgcmVhY3RpdmF0ZXMgc28gaXQgY2FuIGNsZWFyIHRoZSByZW5kZXJlciBi
ZWZvcmUgZ29pbmcgaW50byB0aGUgcGFnZSBjYWNoZS4KICAgICBpZiAoIW1fbmVlZHNEb2N1bWVu
dEFjdGl2YXRpb25DYWxsYmFja3MpIHsKQEAgLTIyMSw3ICsyMjAsNyBAQCBSZW5kZXJFbGVtZW50
KiBIVE1MUGx1Z0luSW1hZ2VFbGVtZW50OjpjCiAgICAgICAgIHJldHVybiBpbWFnZTsKICAgICB9
CiAKLSAgICByZXR1cm4gbmV3IFJlbmRlckVtYmVkZGVkT2JqZWN0KCp0aGlzLCBzdGQ6Om1vdmUo
c3R5bGUpKTsKKyAgICByZXR1cm4gSFRNTFBsdWdJbkVsZW1lbnQ6OmNyZWF0ZVJlbmRlcmVyKHN0
ZDo6bW92ZShzdHlsZSkpOwogfQogCiBib29sIEhUTUxQbHVnSW5JbWFnZUVsZW1lbnQ6OndpbGxS
ZWNhbGNTdHlsZShTdHlsZTo6Q2hhbmdlKQpAQCAtMzYzLDggKzM2MiwxMiBAQCBzdGF0aWMgRE9N
V3JhcHBlcldvcmxkJiBwbHVnSW5JbWFnZUVsZW1lCiAKIHZvaWQgSFRNTFBsdWdJbkltYWdlRWxl
bWVudDo6ZGlkQWRkVXNlckFnZW50U2hhZG93Um9vdChTaGFkb3dSb290KiByb290KQogeworICAg
IEhUTUxQbHVnSW5FbGVtZW50OjpkaWRBZGRVc2VyQWdlbnRTaGFkb3dSb290KHJvb3QpOworICAg
IGlmIChkaXNwbGF5U3RhdGUoKSA+PSBQcmVwYXJpbmdQbHVnaW5SZXBsYWNlbWVudCkKKyAgICAg
ICAgcmV0dXJuOworCiAgICAgUGFnZSogcGFnZSA9IGRvY3VtZW50KCkucGFnZSgpOwotICAgIGlm
ICghcGFnZSkKKyAgICBpZiAocGFnZSkKICAgICAgICAgcmV0dXJuOwogCiAgICAgLy8gUmVzZXQg
YW55IGF1dGhvciBzdHlsZXMgdGhhdCBtYXkgYXBwbHkgYXMgd2Ugb25seSB3YW50IGV4cGxpY2l0
CkBAIC00MDksMTcgKzQxMiw2IEBAIGJvb2wgSFRNTFBsdWdJbkltYWdlRWxlbWVudDo6cGFydE9m
U25hcHMKICAgICByZXR1cm4gbm9kZSAmJiBzbmFwc2hvdExhYmVsICYmIChub2RlID09IHNuYXBz
aG90TGFiZWwuZ2V0KCkgfHwgbm9kZS0+aXNEZXNjZW5kYW50T2Yoc25hcHNob3RMYWJlbC5nZXQo
KSkpOwogfQogCi12b2lkIEhUTUxQbHVnSW5JbWFnZUVsZW1lbnQ6OnN3YXBSZW5kZXJlclRpbWVy
RmlyZWQoVGltZXI8SFRNTFBsdWdJbkltYWdlRWxlbWVudD4qKQotewotICAgIEFTU0VSVChkaXNw
bGF5U3RhdGUoKSA9PSBEaXNwbGF5aW5nU25hcHNob3QpOwotICAgIGlmICh1c2VyQWdlbnRTaGFk
b3dSb290KCkpCi0gICAgICAgIHJldHVybjsKLQotICAgIC8vIENyZWF0ZSBhIHNoYWRvdyByb290
LCB3aGljaCB3aWxsIHRyaWdnZXIgdGhlIGNvZGUgdG8gYWRkIGEgc25hcHNob3QgY29udGFpbmVy
Ci0gICAgLy8gYW5kIHJlYXR0YWNoLCB0aHVzIG1ha2luZyBhIG5ldyBSZW5kZXJlci4KLSAgICBl
bnN1cmVVc2VyQWdlbnRTaGFkb3dSb290KCk7Ci19Ci0KIHZvaWQgSFRNTFBsdWdJbkltYWdlRWxl
bWVudDo6cmVtb3ZlU25hcHNob3RUaW1lckZpcmVkKFRpbWVyPEhUTUxQbHVnSW5JbWFnZUVsZW1l
bnQ+KikKIHsKICAgICBtX3NuYXBzaG90SW1hZ2UgPSBudWxscHRyOwpAQCAtNDk2LDcgKzQ4OCw3
IEBAIHZvaWQgSFRNTFBsdWdJbkltYWdlRWxlbWVudDo6dXNlckRpZENsaWMKICAgICBMT0coUGx1
Z2lucywgIiVwIFVzZXIgY2xpY2tlZCBvbiBzbmFwc2hvdHRlZCBwbHVnLWluLiBSZXN0YXJ0LiIs
IHRoaXMpOwogICAgIHJlc3RhcnRTbmFwc2hvdHRlZFBsdWdJbigpOwogICAgIGlmIChmb3J3YXJk
RXZlbnQpCi0gICAgICAgIHNldERpc3BsYXlTdGF0ZShIVE1MUGx1Z0luRWxlbWVudDo6UmVzdGFy
dGluZ1dpdGhQZW5kaW5nTW91c2VDbGljayk7CisgICAgICAgIHNldERpc3BsYXlTdGF0ZShSZXN0
YXJ0aW5nV2l0aFBlbmRpbmdNb3VzZUNsaWNrKTsKICAgICByZXN0YXJ0U2ltaWxhclBsdWdJbnMo
KTsKIH0KIApAQCAtNzMyLDQgKzcyNCwxMyBAQCB2b2lkIEhUTUxQbHVnSW5JbWFnZUVsZW1lbnQ6
OmRlZmF1bHRFdmVuCiAgICAgSFRNTFBsdWdJbkVsZW1lbnQ6OmRlZmF1bHRFdmVudEhhbmRsZXIo
ZXZlbnQpOwogfQogCitib29sIEhUTUxQbHVnSW5JbWFnZUVsZW1lbnQ6OnJlcXVlc3RPYmplY3Qo
Y29uc3QgU3RyaW5nJiB1cmwsIGNvbnN0IFN0cmluZyYgbWltZVR5cGUsIGNvbnN0IFZlY3RvcjxT
dHJpbmc+JiBwYXJhbU5hbWVzLCBjb25zdCBWZWN0b3I8U3RyaW5nPiYgcGFyYW1WYWx1ZXMpCit7
CisgICAgaWYgKEhUTUxQbHVnSW5FbGVtZW50OjpyZXF1ZXN0T2JqZWN0KHVybCwgbWltZVR5cGUs
IHBhcmFtTmFtZXMsIHBhcmFtVmFsdWVzKSkKKyAgICAgICAgcmV0dXJuIHRydWU7CisgICAgCisg
ICAgU3ViZnJhbWVMb2FkZXImIGxvYWRlciA9IGRvY3VtZW50KCkuZnJhbWUoKS0+bG9hZGVyKCku
c3ViZnJhbWVMb2FkZXIoKTsKKyAgICByZXR1cm4gbG9hZGVyLnJlcXVlc3RPYmplY3QoKnRoaXMs
IHVybCwgZ2V0TmFtZUF0dHJpYnV0ZSgpLCBtaW1lVHlwZSwgcGFyYW1OYW1lcywgcGFyYW1WYWx1
ZXMpOworfQorCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9o
dG1sL0hUTUxQbHVnSW5JbWFnZUVsZW1lbnQuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29y
ZS9odG1sL0hUTUxQbHVnSW5JbWFnZUVsZW1lbnQuaAkocmV2aXNpb24gMTU5NzM2KQorKysgU291
cmNlL1dlYkNvcmUvaHRtbC9IVE1MUGx1Z0luSW1hZ2VFbGVtZW50LmgJKHdvcmtpbmcgY29weSkK
QEAgLTI5LDYgKzI5LDcgQEAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogY2xhc3MgSFRNTEltYWdl
TG9hZGVyOworY2xhc3MgSFRNTFZpZGVvRWxlbWVudDsKIGNsYXNzIEZyYW1lTG9hZGVyOwogY2xh
c3MgSW1hZ2U7CiBjbGFzcyBNb3VzZUV2ZW50OwpAQCAtMTIzLDYgKzEyNCw3IEBAIHByb3RlY3Rl
ZDoKICAgICB2aXJ0dWFsIFBhc3NSZWZQdHI8UmVuZGVyU3R5bGU+IGN1c3RvbVN0eWxlRm9yUmVu
ZGVyZXIoKSBPVkVSUklERTsKIAogICAgIHZpcnR1YWwgYm9vbCBpc1Jlc3RhcnRlZFBsdWdpbigp
IGNvbnN0IE9WRVJSSURFIHsgcmV0dXJuIG1faXNSZXN0YXJ0ZWRQbHVnaW47IH0KKyAgICB2aXJ0
dWFsIGJvb2wgcmVxdWVzdE9iamVjdChjb25zdCBTdHJpbmcmIHVybCwgY29uc3QgU3RyaW5nJiBt
aW1lVHlwZSwgY29uc3QgVmVjdG9yPFN0cmluZz4mIHBhcmFtTmFtZXMsIGNvbnN0IFZlY3RvcjxT
dHJpbmc+JiBwYXJhbVZhbHVlcykgT1ZFUlJJREU7CiAKIHByaXZhdGU6CiAgICAgdmlydHVhbCBS
ZW5kZXJFbGVtZW50KiBjcmVhdGVSZW5kZXJlcihQYXNzUmVmPFJlbmRlclN0eWxlPikgT1ZFUlJJ
REU7CkBAIC0xMzgsOCArMTQwLDYgQEAgcHJpdmF0ZToKICAgICB2aXJ0dWFsIHZvaWQgZGlzcGF0
Y2hQZW5kaW5nTW91c2VDbGljaygpIE9WRVJSSURFOwogICAgIHZvaWQgc2ltdWxhdGVkTW91c2VD
bGlja1RpbWVyRmlyZWQoRGVmZXJyYWJsZU9uZVNob3RUaW1lcjxIVE1MUGx1Z0luSW1hZ2VFbGVt
ZW50PiopOwogCi0gICAgdm9pZCBzd2FwUmVuZGVyZXJUaW1lckZpcmVkKFRpbWVyPEhUTUxQbHVn
SW5JbWFnZUVsZW1lbnQ+Kik7Ci0KICAgICB2b2lkIHJlc3RhcnRTaW1pbGFyUGx1Z0lucygpOwog
CiAgICAgdmlydHVhbCBib29sIGlzUGx1Z0luSW1hZ2VFbGVtZW50KCkgY29uc3QgT1ZFUlJJREUg
eyByZXR1cm4gdHJ1ZTsgfQpAQCAtMTU0LDcgKzE1NCw2IEBAIHByaXZhdGU6CiAgICAgUmVmUHRy
PFJlbmRlclN0eWxlPiBtX2N1c3RvbVN0eWxlRm9yUGFnZUNhY2hlOwogICAgIFJlZlB0cjxNb3Vz
ZUV2ZW50PiBtX3BlbmRpbmdDbGlja0V2ZW50RnJvbVNuYXBzaG90OwogICAgIERlZmVycmFibGVP
bmVTaG90VGltZXI8SFRNTFBsdWdJbkltYWdlRWxlbWVudD4gbV9zaW11bGF0ZWRNb3VzZUNsaWNr
VGltZXI7Ci0gICAgVGltZXI8SFRNTFBsdWdJbkltYWdlRWxlbWVudD4gbV9zd2FwUmVuZGVyZXJU
aW1lcjsKICAgICBUaW1lcjxIVE1MUGx1Z0luSW1hZ2VFbGVtZW50PiBtX3JlbW92ZVNuYXBzaG90
VGltZXI7CiAgICAgUmVmUHRyPEltYWdlPiBtX3NuYXBzaG90SW1hZ2U7CiAgICAgYm9vbCBtX2Ny
ZWF0ZWREdXJpbmdVc2VyR2VzdHVyZTsKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTFZp
ZGVvRWxlbWVudC5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTFZpZGVv
RWxlbWVudC5oCShyZXZpc2lvbiAxNTk3MzYpCisrKyBTb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxW
aWRlb0VsZW1lbnQuaAkod29ya2luZyBjb3B5KQpAQCAtNzIsMTIgKzcyLDEyIEBAIHB1YmxpYzoK
ICAgICBib29sIHNob3VsZERpc3BsYXlQb3N0ZXJJbWFnZSgpIGNvbnN0IHsgcmV0dXJuIGRpc3Bs
YXlNb2RlKCkgPT0gUG9zdGVyIHx8IGRpc3BsYXlNb2RlKCkgPT0gUG9zdGVyV2FpdGluZ0ZvclZp
ZGVvOyB9CiAKICAgICBVUkwgcG9zdGVySW1hZ2VVUkwoKSBjb25zdDsKKyAgICB2aXJ0dWFsIFJl
bmRlckVsZW1lbnQqIGNyZWF0ZVJlbmRlcmVyKFBhc3NSZWY8UmVuZGVyU3R5bGU+KSBPVkVSUklE
RTsKIAogcHJpdmF0ZToKICAgICBIVE1MVmlkZW9FbGVtZW50KGNvbnN0IFF1YWxpZmllZE5hbWUm
LCBEb2N1bWVudCYsIGJvb2wpOwogCiAgICAgdmlydHVhbCBib29sIHJlbmRlcmVySXNOZWVkZWQo
Y29uc3QgUmVuZGVyU3R5bGUmKSBPVkVSUklERTsKLSAgICB2aXJ0dWFsIFJlbmRlckVsZW1lbnQq
IGNyZWF0ZVJlbmRlcmVyKFBhc3NSZWY8UmVuZGVyU3R5bGU+KSBPVkVSUklERTsKICAgICB2aXJ0
dWFsIHZvaWQgZGlkQXR0YWNoUmVuZGVyZXJzKCkgT1ZFUlJJREU7CiAgICAgdmlydHVhbCB2b2lk
IHBhcnNlQXR0cmlidXRlKGNvbnN0IFF1YWxpZmllZE5hbWUmLCBjb25zdCBBdG9taWNTdHJpbmcm
KSBPVkVSUklERTsKICAgICB2aXJ0dWFsIGJvb2wgaXNQcmVzZW50YXRpb25BdHRyaWJ1dGUoY29u
c3QgUXVhbGlmaWVkTmFtZSYpIGNvbnN0IE9WRVJSSURFOwpJbmRleDogU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vZ3JhcGhpY3MvTWVkaWFQbGF5ZXIuY3BwCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL01lZGlhUGxheWVyLmNwcAkocmV2aXNpb24gMTU5NzM2
KQorKysgU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvTWVkaWFQbGF5ZXIuY3BwCSh3
b3JraW5nIGNvcHkpCkBAIC0xMjI1LDYgKzEyMjUsMTQgQEAgc2l6ZV90IE1lZGlhUGxheWVyOjpl
eHRyYU1lbW9yeUNvc3QoKSBjbwogICAgIHJldHVybiBtX3ByaXZhdGUtPmV4dHJhTWVtb3J5Q29z
dCgpOwogfQogCit1bnNpZ25lZCBsb25nIGxvbmcgTWVkaWFQbGF5ZXI6OmZpbGVTaXplKCkgY29u
c3QKK3sKKyAgICBpZiAoIW1fcHJpdmF0ZSkKKyAgICAgICAgcmV0dXJuIDA7CisgICAgCisgICAg
cmV0dXJuIG1fcHJpdmF0ZS0+ZmlsZVNpemUoKTsKK30KKwogdm9pZCBNZWRpYVBsYXllckZhY3Rv
cnlTdXBwb3J0OjpjYWxsUmVnaXN0ZXJNZWRpYUVuZ2luZShNZWRpYUVuZ2luZVJlZ2lzdGVyIHJl
Z2lzdGVyTWVkaWFFbmdpbmUpCiB7CiAgICAgcmVnaXN0ZXJNZWRpYUVuZ2luZShhZGRNZWRpYUVu
Z2luZSk7CkluZGV4OiBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9NZWRpYVBsYXll
ci5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL01lZGlh
UGxheWVyLmgJKHJldmlzaW9uIDE1OTczNikKKysrIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dy
YXBoaWNzL01lZGlhUGxheWVyLmgJKHdvcmtpbmcgY29weSkKQEAgLTUwOCw2ICs1MDgsOCBAQCBw
dWJsaWM6CiAKICAgICBzaXplX3QgZXh0cmFNZW1vcnlDb3N0KCkgY29uc3Q7CiAKKyAgICB1bnNp
Z25lZCBsb25nIGxvbmcgZmlsZVNpemUoKSBjb25zdDsKKwogcHJpdmF0ZToKICAgICBNZWRpYVBs
YXllcihNZWRpYVBsYXllckNsaWVudCopOwogICAgIE1lZGlhUGxheWVyRmFjdG9yeSogbmV4dEJl
c3RNZWRpYUVuZ2luZShNZWRpYVBsYXllckZhY3RvcnkqKSBjb25zdDsKSW5kZXg6IFNvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL01lZGlhUGxheWVyUHJpdmF0ZS5oCj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LS0tIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL01lZGlhUGxheWVyUHJpdmF0ZS5o
CShyZXZpc2lvbiAxNTk3MzYpCisrKyBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9N
ZWRpYVBsYXllclByaXZhdGUuaAkod29ya2luZyBjb3B5KQpAQCAtMjEzLDYgKzIxMyw4IEBAIHB1
YmxpYzoKICAgICB2aXJ0dWFsIFN0cmluZyBsYW5ndWFnZU9mUHJpbWFyeUF1ZGlvVHJhY2soKSBj
b25zdCB7IHJldHVybiBlbXB0eVN0cmluZygpOyB9CiAKICAgICB2aXJ0dWFsIHNpemVfdCBleHRy
YU1lbW9yeUNvc3QoKSBjb25zdCB7IHJldHVybiAwOyB9CisgICAgCisgICAgdmlydHVhbCB1bnNp
Z25lZCBsb25nIGxvbmcgZmlsZVNpemUoKSBjb25zdCB7IHJldHVybiAwOyB9CiB9OwogCiB9Cklu
ZGV4OiBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9hdmZvdW5kYXRpb24vTWVkaWFQ
bGF5ZXJQcml2YXRlQVZGb3VuZGF0aW9uLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9ncmFwaGljcy9hdmZvdW5kYXRpb24vTWVkaWFQbGF5ZXJQcml2YXRlQVZGb3Vu
ZGF0aW9uLmNwcAkocmV2aXNpb24gMTU5NzM2KQorKysgU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
Z3JhcGhpY3MvYXZmb3VuZGF0aW9uL01lZGlhUGxheWVyUHJpdmF0ZUFWRm91bmRhdGlvbi5jcHAJ
KHdvcmtpbmcgY29weSkKQEAgLTkyMSw3ICs5MjEsOCBAQCBzaXplX3QgTWVkaWFQbGF5ZXJQcml2
YXRlQVZGb3VuZGF0aW9uOjplCiAgICAgaWYgKCFkdXJhdGlvbikKICAgICAgICAgcmV0dXJuIDA7
CiAKLSAgICByZXR1cm4gdG90YWxCeXRlcygpICogYnVmZmVyZWQoKS0+dG90YWxEdXJhdGlvbigp
IC8gZHVyYXRpb247CisgICAgdW5zaWduZWQgbG9uZyBsb25nIGV4dHJhID0gdG90YWxCeXRlcygp
ICogYnVmZmVyZWQoKS0+dG90YWxEdXJhdGlvbigpIC8gZHVyYXRpb247CisgICAgcmV0dXJuIHN0
YXRpY19jYXN0PHVuc2lnbmVkPihleHRyYSk7CiB9CiAKIHZvaWQgTWVkaWFQbGF5ZXJQcml2YXRl
QVZGb3VuZGF0aW9uOjpjbGVhclRleHRUcmFja3MoKQpJbmRleDogU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vZ3JhcGhpY3MvYXZmb3VuZGF0aW9uL01lZGlhUGxheWVyUHJpdmF0ZUFWRm91bmRhdGlv
bi5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2F2Zm91
bmRhdGlvbi9NZWRpYVBsYXllclByaXZhdGVBVkZvdW5kYXRpb24uaAkocmV2aXNpb24gMTU5NzM2
KQorKysgU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvYXZmb3VuZGF0aW9uL01lZGlh
UGxheWVyUHJpdmF0ZUFWRm91bmRhdGlvbi5oCSh3b3JraW5nIGNvcHkpCkBAIC0xOTAsNiArMTkw
LDcgQEAgcHJvdGVjdGVkOgogCiAgICAgdmlydHVhbCBib29sIHN1cHBvcnRzRnVsbHNjcmVlbigp
IGNvbnN0OwogICAgIHZpcnR1YWwgYm9vbCBzdXBwb3J0c1NjYW5uaW5nKCkgY29uc3QgeyByZXR1
cm4gdHJ1ZTsgfQorICAgIHVuc2lnbmVkIGxvbmcgbG9uZyBmaWxlU2l6ZSgpIGNvbnN0IHsgcmV0
dXJuIHRvdGFsQnl0ZXMoKTsgfQogCiAgICAgLy8gUmVxdWlyZWQgaW50ZXJmYWNlcyBmb3IgY29u
Y3JldGUgZGVyaXZlZCBjbGFzc2VzLgogICAgIHZpcnR1YWwgdm9pZCBjcmVhdGVBVkFzc2V0Rm9y
VVJMKGNvbnN0IFN0cmluZyYpID0gMDsKQEAgLTIyNSw3ICsyMjYsNyBAQCBwcm90ZWN0ZWQ6CiAg
ICAgdmlydHVhbCB2b2lkIHVwZGF0ZVJhdGUoKSA9IDA7CiAgICAgdmlydHVhbCBmbG9hdCByYXRl
KCkgY29uc3QgPSAwOwogICAgIHZpcnR1YWwgdm9pZCBzZWVrVG9UaW1lKGRvdWJsZSB0aW1lLCBk
b3VibGUgbmVnYXRpdmVUb2xlcmFuY2UsIGRvdWJsZSBwb3NpdGl2ZVRvbGVyYW5jZSkgPSAwOwot
ICAgIHZpcnR1YWwgdW5zaWduZWQgdG90YWxCeXRlcygpIGNvbnN0ID0gMDsKKyAgICB2aXJ0dWFs
IHVuc2lnbmVkIGxvbmcgbG9uZyB0b3RhbEJ5dGVzKCkgY29uc3QgPSAwOwogICAgIHZpcnR1YWwg
UGFzc1JlZlB0cjxUaW1lUmFuZ2VzPiBwbGF0Zm9ybUJ1ZmZlcmVkVGltZVJhbmdlcygpIGNvbnN0
ID0gMDsKICAgICB2aXJ0dWFsIGRvdWJsZSBwbGF0Zm9ybU1heFRpbWVTZWVrYWJsZSgpIGNvbnN0
ID0gMDsKICAgICB2aXJ0dWFsIGRvdWJsZSBwbGF0Zm9ybU1pblRpbWVTZWVrYWJsZSgpIGNvbnN0
ID0gMDsKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2F2Zm91bmRhdGlv
bi9jZi9NZWRpYVBsYXllclByaXZhdGVBVkZvdW5kYXRpb25DRi5jcHAKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvYXZmb3VuZGF0aW9uL2NmL01lZGlhUGxh
eWVyUHJpdmF0ZUFWRm91bmRhdGlvbkNGLmNwcAkocmV2aXNpb24gMTU5NzM2KQorKysgU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvYXZmb3VuZGF0aW9uL2NmL01lZGlhUGxheWVyUHJp
dmF0ZUFWRm91bmRhdGlvbkNGLmNwcAkod29ya2luZyBjb3B5KQpAQCAtNzIxLDcgKzcyMSw3IEBA
IGZsb2F0IE1lZGlhUGxheWVyUHJpdmF0ZUFWRm91bmRhdGlvbkNGOjoKICAgICByZXR1cm4gbWF4
VGltZUxvYWRlZDsgICAKIH0KIAotdW5zaWduZWQgTWVkaWFQbGF5ZXJQcml2YXRlQVZGb3VuZGF0
aW9uQ0Y6OnRvdGFsQnl0ZXMoKSBjb25zdAordW5zaWduZWQgbG9uZyBsb25nIE1lZGlhUGxheWVy
UHJpdmF0ZUFWRm91bmRhdGlvbkNGOjp0b3RhbEJ5dGVzKCkgY29uc3QKIHsKICAgICBpZiAoIW1l
dGFEYXRhQXZhaWxhYmxlKCkgfHwgIWF2QXNzZXQobV9hdmZXcmFwcGVyKSkKICAgICAgICAgcmV0
dXJuIDA7CkBAIC03MzQsOCArNzM0LDcgQEAgdW5zaWduZWQgTWVkaWFQbGF5ZXJQcml2YXRlQVZG
b3VuZGF0aW9uQwogICAgICAgICB0b3RhbE1lZGlhU2l6ZSArPSBBVkNGQXNzZXRUcmFja0dldFRv
dGFsU2FtcGxlRGF0YUxlbmd0aChhc3NldFRyYWNrKTsKICAgICB9CiAKLSAgICAvLyBGSVhNRTog
SXQgZG9lc24ndCBzZWVtIHNhZmUgdG8gY2FzdCBhbiBpbnQ2NF90IHRvIHVuc2lnbmVkLgotICAg
IHJldHVybiBzdGF0aWNfY2FzdDx1bnNpZ25lZD4odG90YWxNZWRpYVNpemUpOworICAgIHJldHVy
biBzdGF0aWNfY2FzdDx1bnNpZ25lZCBsb25nIGxvbmc+KHRvdGFsTWVkaWFTaXplKTsKIH0KIAog
TWVkaWFQbGF5ZXJQcml2YXRlQVZGb3VuZGF0aW9uOjpBc3NldFN0YXR1cyBNZWRpYVBsYXllclBy
aXZhdGVBVkZvdW5kYXRpb25DRjo6YXNzZXRTdGF0dXMoKSBjb25zdApJbmRleDogU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvYXZmb3VuZGF0aW9uL2NmL01lZGlhUGxheWVyUHJpdmF0
ZUFWRm91bmRhdGlvbkNGLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
Z3JhcGhpY3MvYXZmb3VuZGF0aW9uL2NmL01lZGlhUGxheWVyUHJpdmF0ZUFWRm91bmRhdGlvbkNG
LmgJKHJldmlzaW9uIDE1OTczNikKKysrIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNz
L2F2Zm91bmRhdGlvbi9jZi9NZWRpYVBsYXllclByaXZhdGVBVkZvdW5kYXRpb25DRi5oCSh3b3Jr
aW5nIGNvcHkpCkBAIC03Nyw3ICs3Nyw3IEBAIHByaXZhdGU6CiAgICAgdmlydHVhbCB2b2lkIHVw
ZGF0ZVJhdGUoKTsKICAgICB2aXJ0dWFsIGZsb2F0IHJhdGUoKSBjb25zdDsKICAgICB2aXJ0dWFs
IHZvaWQgc2Vla1RvVGltZShkb3VibGUgdGltZSwgZG91YmxlIG5lZ2F0aXZlVG9sZXJhbmNlLCBk
b3VibGUgcG9zaXRpdmVUb2xlcmFuY2UpOwotICAgIHZpcnR1YWwgdW5zaWduZWQgdG90YWxCeXRl
cygpIGNvbnN0OworICAgIHZpcnR1YWwgdW5zaWduZWQgbG9uZyBsb25nIHRvdGFsQnl0ZXMoKSBj
b25zdDsKICAgICB2aXJ0dWFsIFBhc3NSZWZQdHI8VGltZVJhbmdlcz4gcGxhdGZvcm1CdWZmZXJl
ZFRpbWVSYW5nZXMoKSBjb25zdDsKICAgICB2aXJ0dWFsIGRvdWJsZSBwbGF0Zm9ybU1pblRpbWVT
ZWVrYWJsZSgpIGNvbnN0OwogICAgIHZpcnR1YWwgZG91YmxlIHBsYXRmb3JtTWF4VGltZVNlZWth
YmxlKCkgY29uc3Q7CkluZGV4OiBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9hdmZv
dW5kYXRpb24vb2JqYy9NZWRpYVBsYXllclByaXZhdGVBVkZvdW5kYXRpb25PYmpDLmgKPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvYXZmb3VuZGF0aW9uL29i
amMvTWVkaWFQbGF5ZXJQcml2YXRlQVZGb3VuZGF0aW9uT2JqQy5oCShyZXZpc2lvbiAxNTk3MzYp
CisrKyBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9hdmZvdW5kYXRpb24vb2JqYy9N
ZWRpYVBsYXllclByaXZhdGVBVkZvdW5kYXRpb25PYmpDLmgJKHdvcmtpbmcgY29weSkKQEAgLTE0
OCw3ICsxNDgsNyBAQCBwcml2YXRlOgogICAgIHZpcnR1YWwgdm9pZCB1cGRhdGVSYXRlKCk7CiAg
ICAgdmlydHVhbCBmbG9hdCByYXRlKCkgY29uc3Q7CiAgICAgdmlydHVhbCB2b2lkIHNlZWtUb1Rp
bWUoZG91YmxlIHRpbWUsIGRvdWJsZSBuZWdhdGl2ZVRvbGVyYW5jZSwgZG91YmxlIHBvc2l0aXZl
VG9sZXJhbmNlKTsKLSAgICB2aXJ0dWFsIHVuc2lnbmVkIHRvdGFsQnl0ZXMoKSBjb25zdDsKKyAg
ICB2aXJ0dWFsIHVuc2lnbmVkIGxvbmcgbG9uZyB0b3RhbEJ5dGVzKCkgY29uc3Q7CiAgICAgdmly
dHVhbCBQYXNzUmVmUHRyPFRpbWVSYW5nZXM+IHBsYXRmb3JtQnVmZmVyZWRUaW1lUmFuZ2VzKCkg
Y29uc3Q7CiAgICAgdmlydHVhbCBkb3VibGUgcGxhdGZvcm1NaW5UaW1lU2Vla2FibGUoKSBjb25z
dDsKICAgICB2aXJ0dWFsIGRvdWJsZSBwbGF0Zm9ybU1heFRpbWVTZWVrYWJsZSgpIGNvbnN0OwpJ
bmRleDogU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvYXZmb3VuZGF0aW9uL29iamMv
TWVkaWFQbGF5ZXJQcml2YXRlQVZGb3VuZGF0aW9uT2JqQy5tbQo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9hdmZvdW5kYXRpb24vb2JqYy9NZWRpYVBsYXll
clByaXZhdGVBVkZvdW5kYXRpb25PYmpDLm1tCShyZXZpc2lvbiAxNTk3MzYpCisrKyBTb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9hdmZvdW5kYXRpb24vb2JqYy9NZWRpYVBsYXllclBy
aXZhdGVBVkZvdW5kYXRpb25PYmpDLm1tCSh3b3JraW5nIGNvcHkpCkBAIC04MDMsNyArODAzLDcg
QEAgZmxvYXQgTWVkaWFQbGF5ZXJQcml2YXRlQVZGb3VuZGF0aW9uT2JqQwogICAgIHJldHVybiBt
YXhUaW1lTG9hZGVkOyAgIAogfQogCi11bnNpZ25lZCBNZWRpYVBsYXllclByaXZhdGVBVkZvdW5k
YXRpb25PYmpDOjp0b3RhbEJ5dGVzKCkgY29uc3QKK3Vuc2lnbmVkIGxvbmcgbG9uZyBNZWRpYVBs
YXllclByaXZhdGVBVkZvdW5kYXRpb25PYmpDOjp0b3RhbEJ5dGVzKCkgY29uc3QKIHsKICAgICBp
ZiAoIW1ldGFEYXRhQXZhaWxhYmxlKCkpCiAgICAgICAgIHJldHVybiAwOwpAQCAtODEyLDcgKzgx
Miw3IEBAIHVuc2lnbmVkIE1lZGlhUGxheWVyUHJpdmF0ZUFWRm91bmRhdGlvbk8KICAgICBmb3Ig
KEFWUGxheWVySXRlbVRyYWNrICp0aGlzVHJhY2sgaW4gbV9jYWNoZWRUcmFja3MuZ2V0KCkpCiAg
ICAgICAgIHRvdGFsTWVkaWFTaXplICs9IFtbdGhpc1RyYWNrIGFzc2V0VHJhY2tdIHRvdGFsU2Ft
cGxlRGF0YUxlbmd0aF07CiAKLSAgICByZXR1cm4gc3RhdGljX2Nhc3Q8dW5zaWduZWQ+KHRvdGFs
TWVkaWFTaXplKTsKKyAgICByZXR1cm4gdG90YWxNZWRpYVNpemU7CiB9CiAKIHZvaWQgTWVkaWFQ
bGF5ZXJQcml2YXRlQVZGb3VuZGF0aW9uT2JqQzo6c2V0QXNzZXQoaWQgYXNzZXQpCkluZGV4OiBT
b3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFsU2V0dGluZ3MuY3BwCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IFNvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxTZXR0aW5ncy5jcHAJKHJldmlzaW9uIDE1
OTczNikKKysrIFNvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxTZXR0aW5ncy5jcHAJKHdv
cmtpbmcgY29weSkKQEAgLTk0LDYgKzk0LDcgQEAgSW50ZXJuYWxTZXR0aW5nczo6QmFja3VwOjpC
YWNrdXAoU2V0dGluZwogICAgICwgbV9vcmlnaW5hbFRpbWVXaXRob3V0TW91c2VNb3ZlbWVudEJl
Zm9yZUhpZGluZ0NvbnRyb2xzKHNldHRpbmdzLnRpbWVXaXRob3V0TW91c2VNb3ZlbWVudEJlZm9y
ZUhpZGluZ0NvbnRyb2xzKCkpCiAgICAgLCBtX3VzZUxlZ2FjeUJhY2tncm91bmRTaXplU2hvcnRo
YW5kQmVoYXZpb3Ioc2V0dGluZ3MudXNlTGVnYWN5QmFja2dyb3VuZFNpemVTaG9ydGhhbmRCZWhh
dmlvcigpKQogICAgICwgbV9hdXRvc2Nyb2xsRm9yRHJhZ0FuZERyb3BFbmFibGVkKHNldHRpbmdz
LmF1dG9zY3JvbGxGb3JEcmFnQW5kRHJvcEVuYWJsZWQoKSkKKyAgICAsIG1fcGx1Z2luUmVwbGFj
ZW1lbnRFbmFibGVkKFJ1bnRpbWVFbmFibGVkRmVhdHVyZXM6OnNoYXJlZEZlYXR1cmVzKCkucGx1
Z2luUmVwbGFjZW1lbnRFbmFibGVkKCkpCiB7CiB9CiAKQEAgLTE1Niw2ICsxNTcsNyBAQCB2b2lk
IEludGVybmFsU2V0dGluZ3M6OkJhY2t1cDo6cmVzdG9yZVRvCiAgICAgc2V0dGluZ3Muc2V0VGlt
ZVdpdGhvdXRNb3VzZU1vdmVtZW50QmVmb3JlSGlkaW5nQ29udHJvbHMobV9vcmlnaW5hbFRpbWVX
aXRob3V0TW91c2VNb3ZlbWVudEJlZm9yZUhpZGluZ0NvbnRyb2xzKTsKICAgICBzZXR0aW5ncy5z
ZXRVc2VMZWdhY3lCYWNrZ3JvdW5kU2l6ZVNob3J0aGFuZEJlaGF2aW9yKG1fdXNlTGVnYWN5QmFj
a2dyb3VuZFNpemVTaG9ydGhhbmRCZWhhdmlvcik7CiAgICAgc2V0dGluZ3Muc2V0QXV0b3Njcm9s
bEZvckRyYWdBbmREcm9wRW5hYmxlZChtX2F1dG9zY3JvbGxGb3JEcmFnQW5kRHJvcEVuYWJsZWQp
OworICAgIFJ1bnRpbWVFbmFibGVkRmVhdHVyZXM6OnNoYXJlZEZlYXR1cmVzKCkuc2V0UGx1Z2lu
UmVwbGFjZW1lbnRFbmFibGVkKG1fcGx1Z2luUmVwbGFjZW1lbnRFbmFibGVkKTsKIH0KIAogLy8g
V2UgY2FuJ3QgdXNlIFJlZkNvdW50ZWRTdXBwbGVtZW50IGJlY2F1c2UgdGhhdCB3b3VsZCB0cnkg
dG8gbWFrZSBJbnRlcm5hbFNldHRpbmdzIFJlZkNvdW50ZWQKQEAgLTUyOCw0ICs1MzAsOSBAQCB2
b2lkIEludGVybmFsU2V0dGluZ3M6OnNldEZvbnRGYWxsYmFja1ByCiAgICAgc2V0dGluZ3MoKS0+
c2V0Rm9udEZhbGxiYWNrUHJlZmVyc1BpY3RvZ3JhcGhzKHByZWZlclBpY3RvZ3JhcGhzKTsKIH0K
IAordm9pZCBJbnRlcm5hbFNldHRpbmdzOjpzZXRQbHVnaW5SZXBsYWNlbWVudEVuYWJsZWQoYm9v
bCBlbmFibGVkKQoreworICAgIFJ1bnRpbWVFbmFibGVkRmVhdHVyZXM6OnNoYXJlZEZlYXR1cmVz
KCkuc2V0UGx1Z2luUmVwbGFjZW1lbnRFbmFibGVkKGVuYWJsZWQpOworfQorCiB9CkluZGV4OiBT
b3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFsU2V0dGluZ3MuaAo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBT
b3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFsU2V0dGluZ3MuaAkocmV2aXNpb24gMTU5NzM2
KQorKysgU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbFNldHRpbmdzLmgJKHdvcmtpbmcg
Y29weSkKQEAgLTkxLDYgKzkxLDcgQEAgcHVibGljOgogICAgICAgICBib29sIG1fb3JpZ2luYWxU
aW1lV2l0aG91dE1vdXNlTW92ZW1lbnRCZWZvcmVIaWRpbmdDb250cm9sczsKICAgICAgICAgYm9v
bCBtX3VzZUxlZ2FjeUJhY2tncm91bmRTaXplU2hvcnRoYW5kQmVoYXZpb3I7CiAgICAgICAgIGJv
b2wgbV9hdXRvc2Nyb2xsRm9yRHJhZ0FuZERyb3BFbmFibGVkOworICAgICAgICBib29sIG1fcGx1
Z2luUmVwbGFjZW1lbnRFbmFibGVkOwogICAgIH07CiAKICAgICBzdGF0aWMgUGFzc1JlZlB0cjxJ
bnRlcm5hbFNldHRpbmdzPiBjcmVhdGUoUGFnZSogcGFnZSkKQEAgLTEzNiw2ICsxMzcsNyBAQCBw
dWJsaWM6CiAgICAgdm9pZCBzZXRVc2VMZWdhY3lCYWNrZ3JvdW5kU2l6ZVNob3J0aGFuZEJlaGF2
aW9yKGJvb2wgZW5hYmxlZCwgRXhjZXB0aW9uQ29kZSYpOwogICAgIHZvaWQgc2V0QXV0b3Njcm9s
bEZvckRyYWdBbmREcm9wRW5hYmxlZChib29sIGVuYWJsZWQsIEV4Y2VwdGlvbkNvZGUmKTsKICAg
ICB2b2lkIHNldEZvbnRGYWxsYmFja1ByZWZlcnNQaWN0b2dyYXBocyhib29sIHByZWZlclBpY3Rv
Z3JhcGhzLCBFeGNlcHRpb25Db2RlJik7CisgICAgdm9pZCBzZXRQbHVnaW5SZXBsYWNlbWVudEVu
YWJsZWQoYm9vbCk7CiAKIHByaXZhdGU6CiAgICAgZXhwbGljaXQgSW50ZXJuYWxTZXR0aW5ncyhQ
YWdlKik7CkluZGV4OiBTb3VyY2UvV2ViQ29yZS90ZXN0aW5nL0ludGVybmFsU2V0dGluZ3MuaWRs
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxTZXR0aW5ncy5p
ZGwJKHJldmlzaW9uIDE1OTczNikKKysrIFNvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxT
ZXR0aW5ncy5pZGwJKHdvcmtpbmcgY29weSkKQEAgLTYwLDQgKzYwLDUgQEAKICAgICBbUmFpc2Vz
RXhjZXB0aW9uXSB2b2lkIHNldFVzZUxlZ2FjeUJhY2tncm91bmRTaXplU2hvcnRoYW5kQmVoYXZp
b3IoYm9vbGVhbiBlbmFibGVkKTsKICAgICBbUmFpc2VzRXhjZXB0aW9uXSB2b2lkIHNldEF1dG9z
Y3JvbGxGb3JEcmFnQW5kRHJvcEVuYWJsZWQoYm9vbGVhbiBlbmFibGVkKTsKICAgICBbUmFpc2Vz
RXhjZXB0aW9uXSB2b2lkIHNldEZvbnRGYWxsYmFja1ByZWZlcnNQaWN0b2dyYXBocyhib29sZWFu
IHByZWZlclBpY3RvZ3JhcGhzKTsKKyAgICB2b2lkIHNldFBsdWdpblJlcGxhY2VtZW50RW5hYmxl
ZChib29sZWFuIGVuYWJsZWQpOwogfTsKSW5kZXg6IExheW91dFRlc3RzL0NoYW5nZUxvZwo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9DaGFuZ2VMb2cJKHJldmlzaW9uIDE1OTc5MCkKKysrIExh
eW91dFRlc3RzL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDE4IEBACisyMDEz
LTExLTI2ICBFcmljIENhcmxzb24gIDxlcmljLmNhcmxzb25AYXBwbGUuY29tPgorCisgICAgICAg
IEFsbG93IHRoZSBRdWlja1RpbWUgcGx1Zy1pbiB0byBiZSByZXBsYWNlZCBieSBzY3JpcHQgaW4g
YW4gaXNvbGF0ZWQgd29yZAorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9MTI0OTAwCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisK
KyAgICAgICAgKiBwbGF0Zm9ybS9lZmwvVGVzdEV4cGVjdGF0aW9uczogU2tpcCB0aGUgbmV3IHRl
c3QuCisgICAgICAgICogcGxhdGZvcm0vZ3RrL1Rlc3RFeHBlY3RhdGlvbnM6IERpdHRvLgorICAg
ICAgICAqIHBsYXRmb3JtL3dpbmNhaXJvL1Rlc3RFeHBlY3RhdGlvbnM6IERpdHRvLgorICAgICAg
ICAqIHBsdWdpbnMvcXVpY2t0aW1lLXBsdWdpbi1yZXBsYWNlbWVudC5odG1sOiBBZGRlZC4KKyAg
ICAgICAgKiBwbHVnaW5zL3F1aWNrdGltZS1wbHVnaW4tcmVwbGFjZW1lbnQtZXhwZWN0ZWQudHh0
OiBBZGRlZC4KKyAgICAgICAgKiBwbHVnaW5zL3Jlc291cmNlcy9vcmFuZ2UubW92OiBSZXBsYWNl
IG1vdmllIGNvbXByZXNzZWQgd2l0aCBhbmNpZW50IGFuaW1hdGVkIGdpZiBjb2RlYyB3aXRoCisg
ICAgICAgICAgICBvbmUgY29tcHJlc3NlZCB3aXRoIEguMjY0IGNvZGVjLgorCiAyMDEzLTExLTI2
ICBPbGl2ZXIgSHVudCAgPG9saXZlckBhcHBsZS5jb20+CiAKICAgICAgICAgQ3Jhc2ggaW4gSlND
OjpBU1RCdWlsZGVyOjpFeHByZXNzaW9uIEpTQzo6UGFyc2VyPEpTQzo6TGV4ZXI8dW5zaWduZWQg
Y2hhcj4gPjo6cGFyc2VVbmFyeUV4cHJlc3Npb248SlNDOjpBU1RCdWlsZGVyPihKU0M6OkFTVEJ1
aWxkZXImKQpJbmRleDogTGF5b3V0VGVzdHMvcGxhdGZvcm0vZWZsL1Rlc3RFeHBlY3RhdGlvbnMK
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvcGxhdGZvcm0vZWZsL1Rlc3RFeHBlY3RhdGlvbnMJ
KHJldmlzaW9uIDE1OTc5MCkKKysrIExheW91dFRlc3RzL3BsYXRmb3JtL2VmbC9UZXN0RXhwZWN0
YXRpb25zCSh3b3JraW5nIGNvcHkpCkBAIC0xNzMzLDMgKzE3MzMsNiBAQCB3ZWJraXQub3JnL2Iv
MTI0NjY1IG1lZGlhL3ZpZGVvLWVuZGVkLWV2CiB3ZWJraXQub3JnL2IvMTI0ODkwIHBsYXRmb3Jt
L2VmbC9hY2Nlc3NpYmlsaXR5L21lZGlhLWVtaXRzLW9iamVjdC1yZXBsYWNlbWVudC5odG1sIFsg
RmFpbHVyZSBdCiAKIHdlYmtpdC5vcmcvYi8xMjQ4OTQgYWNjZXNzaWJpbGl0eS9maWVsZHNldC1l
bGVtZW50Lmh0bWwgWyBNaXNzaW5nIF0KKworIyBRdWlja1RpbWUgcGx1Zy1pbiBub3QgcmVsZXZh
bnQgdG8gdGhpcyBwb3J0CitwbHVnaW5zL3F1aWNrdGltZS1wbHVnaW4tcmVwbGFjZW1lbnQuaHRt
bCBbIFNraXAgXQpJbmRleDogTGF5b3V0VGVzdHMvcGxhdGZvcm0vZ3RrL1Rlc3RFeHBlY3RhdGlv
bnMKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvcGxhdGZvcm0vZ3RrL1Rlc3RFeHBlY3RhdGlv
bnMJKHJldmlzaW9uIDE1OTc5MCkKKysrIExheW91dFRlc3RzL3BsYXRmb3JtL2d0ay9UZXN0RXhw
ZWN0YXRpb25zCSh3b3JraW5nIGNvcHkpCkBAIC01MTEsNiArNTExLDkgQEAgd2Via2l0Lm9yZy9i
LzEwNzE5NCBodHRwL3Rlc3RzL3NlY3VyaXR5LwogIyBjcnlwdG8uc3VidGxlIGlzIG5vdCB5ZXQg
ZW5hYmxlZAogY3J5cHRvL3N1YnRsZSBbIFNraXAgXQogCisjIFF1aWNrVGltZSBwbHVnLWluIG5v
dCByZWxldmFudCB0byB0aGlzIHBvcnQKK3BsdWdpbnMvcXVpY2t0aW1lLXBsdWdpbi1yZXBsYWNl
bWVudC5odG1sIFsgU2tpcCBdCisKICMvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8v
Ly8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCiAj
IEVuZCBvZiBFeHBlY3RlZCBmYWlsdXJlcwogIy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8v
Ly8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8v
Ly8KSW5kZXg6IExheW91dFRlc3RzL3BsYXRmb3JtL3dpbmNhaXJvL1Rlc3RFeHBlY3RhdGlvbnMK
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvcGxhdGZvcm0vd2luY2Fpcm8vVGVzdEV4cGVjdGF0
aW9ucwkocmV2aXNpb24gMTU5NzkwKQorKysgTGF5b3V0VGVzdHMvcGxhdGZvcm0vd2luY2Fpcm8v
VGVzdEV4cGVjdGF0aW9ucwkod29ya2luZyBjb3B5KQpAQCAtMjg1MywzICsyODUzLDYgQEAgZWRp
dGluZy9zZWN1cmUtaW5wdXQgWyBGYWlsdXJlIF0KIAogIyBjcnlwdG8uc3VidGxlIGlzIG5vdCB5
ZXQgZW5hYmxlZAogY3J5cHRvL3N1YnRsZSBbIFNraXAgXQorCisjIFF1aWNrVGltZSBwbHVnLWlu
IG5vdCByZWxldmFudCB0byB0aGlzIHBvcnQKK3BsdWdpbnMvcXVpY2t0aW1lLXBsdWdpbi1yZXBs
YWNlbWVudC5odG1sIFsgU2tpcCBdCkluZGV4OiBMYXlvdXRUZXN0cy9wbHVnaW5zL3F1aWNrdGlt
ZS1wbHVnaW4tcmVwbGFjZW1lbnQtZXhwZWN0ZWQudHh0Cj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRl
c3RzL3BsdWdpbnMvcXVpY2t0aW1lLXBsdWdpbi1yZXBsYWNlbWVudC1leHBlY3RlZC50eHQJKHJl
dmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9wbHVnaW5zL3F1aWNrdGltZS1wbHVnaW4tcmVwbGFj
ZW1lbnQtZXhwZWN0ZWQudHh0CSh3b3JraW5nIGNvcHkpCkBAIC0wLDAgKzEsNjMgQEAKKworRVZF
TlQocXRfYmVnaW4pCitFVkVOVChxdF92YWxpZGF0ZWQpCitFVkVOVChxdF9jYW5wbGF5KQorRVZF
TlQocXRfY2FucGxheXRocm91Z2gpCisKKyoqIFRlc3QgdG8gbWFrZSBzdXJlIDx2aWRlbz4gZWxl
bWVudCBpcyBpbiB0aGUgc2hhZG93IERPTS4KK3NoYWRvd0VsZW1lbnQgPSBpbnRlcm5hbHMuc2hh
ZG93Um9vdChlbWJlZCkuZmlyc3RDaGlsZAorUEFTUyBzaGFkb3dFbGVtZW50LnRhZ05hbWUgaXMg
IlZJREVPIgorUEFTUyBpbnRlcm5hbHMuc2hhZG93UHNldWRvSWQoc2hhZG93RWxlbWVudCkgaXMg
Ii13ZWJraXQtcGx1Z2luLXJlcGxhY2VtZW50IgorCisqKiBUZXN0IGZvciB0aGUgcHJlc2VuY2Ug
b2Ygb3ZlcnJpZGRlbiBtZXRob2RzLgorUEFTUyBlbWJlZC5TZXRVUkwgaXMgYSBmdW5jdGlvbi4K
K1BBU1MgZW1iZWQuR2V0VVJMIGlzIGEgZnVuY3Rpb24uCitQQVNTIGVtYmVkLlBsYXkgaXMgYSBm
dW5jdGlvbi4KK1BBU1MgZW1iZWQuU3RvcCBpcyBhIGZ1bmN0aW9uLgorUEFTUyBlbWJlZC5HZXRS
YXRlIGlzIGEgZnVuY3Rpb24uCitQQVNTIGVtYmVkLlNldFJhdGUgaXMgYSBmdW5jdGlvbi4KK1BB
U1MgZW1iZWQuSXNGdWxsU2NyZWVuIGlzIGEgZnVuY3Rpb24uCitQQVNTIGVtYmVkLkV4aXRGdWxs
U2NyZWVuIGlzIGEgZnVuY3Rpb24uCitQQVNTIGVtYmVkLkdldFBsdWdpblN0YXR1cyBpcyBhIGZ1
bmN0aW9uLgorUEFTUyBlbWJlZC5HZXRUaW1lIGlzIGEgZnVuY3Rpb24uCitQQVNTIGVtYmVkLlNl
dFRpbWUgaXMgYSBmdW5jdGlvbi4KK1BBU1MgZW1iZWQuU2Vla1RvRGF0ZSBpcyBhIGZ1bmN0aW9u
LgorUEFTUyBlbWJlZC5HZXREYXRlIGlzIGEgZnVuY3Rpb24uCitQQVNTIGVtYmVkLkdldER1cmF0
aW9uIGlzIGEgZnVuY3Rpb24uCitQQVNTIGVtYmVkLkdldFRpbWVTY2FsZSBpcyBhIGZ1bmN0aW9u
LgorUEFTUyBlbWJlZC5HZXRNYXhUaW1lTG9hZGVkIGlzIGEgZnVuY3Rpb24uCitQQVNTIGVtYmVk
LkdldE1heEJ5dGVzTG9hZGVkIGlzIGEgZnVuY3Rpb24uCitQQVNTIGVtYmVkLkdldE1vdmllU2l6
ZSBpcyBhIGZ1bmN0aW9uLgorUEFTUyBlbWJlZC5HZXRUaW1lZE1ldGFkYXRhVXBkYXRlcyBpcyBh
IGZ1bmN0aW9uLgorUEFTUyBlbWJlZC5HZXRBY2Nlc3NMb2cgaXMgYSBmdW5jdGlvbi4KK1BBU1Mg
ZW1iZWQuR2V0RXJyb3JMb2cgaXMgYSBmdW5jdGlvbi4KKworKiogVGVzdCBvdmVycmlkZGVuIG1l
dGhvZHMuCitQQVNTIGVtYmVkLkdldFVSTCgpLmluZGV4T2YoJ3Jlc291cmNlcy9vcmFuZ2UubW92
JykgIT0gLTEgaXMgdHJ1ZQorUEFTUyBlbWJlZC5HZXREdXJhdGlvbigpIGlzIDMwMDAwMAorUEFT
UyBlbWJlZC5HZXRNb3ZpZVNpemUoKSBpcyAyNDk2MgorUEFTUyBlbWJlZC5HZXRNYXhUaW1lTG9h
ZGVkKCkgaXMgMzAwMDAwCitQQVNTIGVtYmVkLkdldE1heEJ5dGVzTG9hZGVkKCkgaXMgMjQ5NjIK
K1BBU1MgZW1iZWQuR2V0TW92aWVTaXplKCkgaXMgMjQ5NjIKK1BBU1MgZW1iZWQuR2V0UGx1Z2lu
U3RhdHVzKCkgaXMgIlBsYXlhYmxlIgorUEFTUyBuZXcgRGF0ZShlbWJlZC5HZXREYXRlKCkpIC0g
bmV3IERhdGUoKSBpcyB3aXRoaW4gMTAwIG9mIDAKK2VtYmVkLlNldFRpbWUoZW1iZWQuR2V0VGlt
ZVNjYWxlKCkgKiAyKQorCitQQVNTIGVtYmVkLkdldFRpbWUoKSBpcyA2MDAwMAorZW1iZWQuUGxh
eSgpCisKK0VWRU5UKHF0X3BsYXkpCitQQVNTIGVtYmVkLkdldFJhdGUoKSBpcyAxCitlbWJlZC5T
dG9wKCkKKworRVZFTlQocXRfcGF1c2UpCitQQVNTIGVtYmVkLkdldFJhdGUoKSBpcyAwCisKK2Vt
YmVkLlNldFVSTCgnJykKK0VWRU5UKHF0X2JlZ2luKQorRVZFTlQocXRfZXJyb3IpCitQQVNTIGVt
YmVkLkdldFVSTCgpIGlzICIiCitQQVNTIGVtYmVkLkdldFBsdWdpblN0YXR1cygpIGlzICJFcnJv
ciIKKworRU5EIFRFU1QuCisKSW5kZXg6IExheW91dFRlc3RzL3BsdWdpbnMvcXVpY2t0aW1lLXBs
dWdpbi1yZXBsYWNlbWVudC5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL3BsdWdpbnMv
cXVpY2t0aW1lLXBsdWdpbi1yZXBsYWNlbWVudC5odG1sCShyZXZpc2lvbiAwKQorKysgTGF5b3V0
VGVzdHMvcGx1Z2lucy9xdWlja3RpbWUtcGx1Z2luLXJlcGxhY2VtZW50Lmh0bWwJKHdvcmtpbmcg
Y29weSkKQEAgLTAsMCArMSwxMjQgQEAKKzwhRE9DVFlQRSBodG1sPgorPGh0bWw+CisgICAgPGhl
YWQ+CisgICAgICAgIDxzY3JpcHQgc3JjPSIuLi9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwv
c2NyaXB0PgorICAgICAgICA8c2NyaXB0PgorICAgICAgICAgICAgdmFyIGVtYmVkOworICAgICAg
ICAgICAgdmFyIHNyYyA9ICJyZXNvdXJjZXMvb3JhbmdlLm1vdiI7CisKKyAgICAgICAgICAgIGZ1
bmN0aW9uIGxvZ0V2ZW50KGV2ZW50KQorICAgICAgICAgICAgeworICAgICAgICAgICAgICAgIGRl
YnVnKCI8aT5FVkVOVCgiICsgZXZlbnQudHlwZSArICIpPC9pPiIpOworICAgICAgICAgICAgfQor
ICAgICAgICAgICAgCisgICAgICAgICAgICBmdW5jdGlvbiBzZWVrZWQoKQorICAgICAgICAgICAg
eworICAgICAgICAgICAgICAgIGRlYnVnKCIiKTsKKyAgICAgICAgICAgICAgICBzaG91bGRFdmFs
dWF0ZVRvKCJlbWJlZC5HZXRUaW1lKCkiLCBlbWJlZC5HZXRUaW1lU2NhbGUoKSAqIDIpOworICAg
ICAgICAgICAgICAgIGV2YWxBbmRMb2coImVtYmVkLlBsYXkoKSIpOworICAgICAgICAgICAgfQor
CisgICAgICAgICAgICBmdW5jdGlvbiBwbGF5aW5nKGV2ZW50KQorICAgICAgICAgICAgeworICAg
ICAgICAgICAgICAgIGRlYnVnKCIiKTsKKyAgICAgICAgICAgICAgICBsb2dFdmVudChldmVudCk7
CisgICAgICAgICAgICAgICAgc2hvdWxkRXZhbHVhdGVUbygiZW1iZWQuR2V0UmF0ZSgpIiwgMSk7
CisgICAgICAgICAgICAgICAgZXZhbEFuZExvZygiZW1iZWQuU3RvcCgpIik7CisgICAgICAgICAg
ICB9CisgICAgICAgICAgICAKKyAgICAgICAgICAgIGZ1bmN0aW9uIHBhdXNlZChldmVudCkKKyAg
ICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICBkZWJ1ZygiIik7CisgICAgICAgICAgICAgICAg
bG9nRXZlbnQoZXZlbnQpCisgICAgICAgICAgICAgICAgc2hvdWxkRXZhbHVhdGVUbygiZW1iZWQu
R2V0UmF0ZSgpIiwgMCk7CisKKyAgICAgICAgICAgICAgICBkZWJ1ZygiIik7CisgICAgICAgICAg
ICAgICAgZXZhbEFuZExvZygiZW1iZWQuU2V0VVJMKCcnKSIpOworICAgICAgICAgICAgfQorICAg
ICAgICAgICAgCisgICAgICAgICAgICBmdW5jdGlvbiBlcnJvcihldmVudCkKKyAgICAgICAgICAg
IHsKKyAgICAgICAgICAgICAgICBsb2dFdmVudChldmVudCkKKyAgICAgICAgICAgICAgICBzaG91
bGRCZUVxdWFsVG9TdHJpbmcoImVtYmVkLkdldFVSTCgpIiwgIiIpOworICAgICAgICAgICAgICAg
IHNob3VsZEJlRXF1YWxUb1N0cmluZygiZW1iZWQuR2V0UGx1Z2luU3RhdHVzKCkiLCAiRXJyb3Ii
KTsKKyAgICAgICAgICAgICAgICBkZWJ1ZygiPGJyPkVORCBURVNULiIpOworICAgICAgICAgICAg
ICAgIGlmICh3aW5kb3cudGVzdFJ1bm5lcikKKyAgICAgICAgICAgICAgICAgICAgdGVzdFJ1bm5l
ci5ub3RpZnlEb25lKCk7CisgICAgICAgICAgICB9CisgICAgICAgICAgICAKKyAgICAgICAgICAg
IGZ1bmN0aW9uIHRlc3QoZXZlbnQpCisgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgbG9n
RXZlbnQoZXZlbnQpCisKKyAgICAgICAgICAgICAgICBpZiAod2luZG93LmludGVybmFscykgewor
ICAgICAgICAgICAgICAgICAgICBkZWJ1ZygiPGJyPioqIFRlc3QgdG8gbWFrZSBzdXJlICZsdDt2
aWRlbyZndDsgZWxlbWVudCBpcyBpbiB0aGUgc2hhZG93IERPTS4iKTsKKyAgICAgICAgICAgICAg
ICAgICAgZXZhbEFuZExvZygic2hhZG93RWxlbWVudCA9IGludGVybmFscy5zaGFkb3dSb290KGVt
YmVkKS5maXJzdENoaWxkIik7CisgICAgICAgICAgICAgICAgICAgIHNob3VsZEJlRXF1YWxUb1N0
cmluZygic2hhZG93RWxlbWVudC50YWdOYW1lIiwgIlZJREVPIik7CisgICAgICAgICAgICAgICAg
ICAgIHNob3VsZEJlRXF1YWxUb1N0cmluZygiaW50ZXJuYWxzLnNoYWRvd1BzZXVkb0lkKHNoYWRv
d0VsZW1lbnQpIiwgIi13ZWJraXQtcGx1Z2luLXJlcGxhY2VtZW50Iik7CisgICAgICAgICAgICAg
ICAgfSBlbHNlIHsKKyAgICAgICAgICAgICAgICAgICAgZGVidWcoIiIpOworICAgICAgICAgICAg
ICAgICAgICB0ZXN0RmFpbGVkKCJUaGlzIHRlc3QgbXVzdCBiZSBydW4gaW4gRFJULiIpOworICAg
ICAgICAgICAgICAgICAgICBkZWJ1ZygiIik7CisgICAgICAgICAgICAgICAgfQorCisgICAgICAg
ICAgICAgICAgZGVidWcoIjxicj4qKiBUZXN0IGZvciB0aGUgcHJlc2VuY2Ugb2Ygb3ZlcnJpZGRl
biBtZXRob2RzLiIpOworICAgICAgICAgICAgICAgIHZhciBtZXRob2RzID0gWyAiU2V0VVJMIiwg
IkdldFVSTCIsICJQbGF5IiwgIlN0b3AiLCAiR2V0UmF0ZSIsICJTZXRSYXRlIiwgIklzRnVsbFNj
cmVlbiIsIAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiRXhpdEZ1bGxTY3JlZW4i
LCAiR2V0UGx1Z2luU3RhdHVzIiwgIkdldFRpbWUiLCAiU2V0VGltZSIsICJTZWVrVG9EYXRlIiwg
IkdldERhdGUiLCAKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIkdldER1cmF0aW9u
IiwgIkdldFRpbWVTY2FsZSIsICJHZXRNYXhUaW1lTG9hZGVkIiwgIkdldE1heEJ5dGVzTG9hZGVk
IiwgCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJHZXRNb3ZpZVNpemUiLCAiR2V0
VGltZWRNZXRhZGF0YVVwZGF0ZXMiLCAiR2V0QWNjZXNzTG9nIiwgIkdldEVycm9yTG9nIgorICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgXTsKKyAgICAgICAgICAgICAgICBmb3IgKGkgPSAw
OyBpIDwgbWV0aG9kcy5sZW5ndGg7ICsraSkgeworICAgICAgICAgICAgICAgICAgICB2YXIgdHlw
ZSA9IHR5cGVvZiBlbWJlZFttZXRob2RzW2ldXTsKKyAgICAgICAgICAgICAgICAgICAgaWYgKHR5
cGUgPT0gImZ1bmN0aW9uIikKKyAgICAgICAgICAgICAgICAgICAgICAgIHRlc3RQYXNzZWQoImVt
YmVkLiIgKyBtZXRob2RzW2ldICsgIiBpcyBhIGZ1bmN0aW9uLiIpOworICAgICAgICAgICAgICAg
ICAgICBlbHNlCisgICAgICAgICAgICAgICAgICAgICAgICB0ZXN0RmFpbGVkKCJlbWJlZC4iICsg
bWV0aG9kc1tpXSArICIgc2hvdWxkIGJlIGEgZnVuY3Rpb24gYnV0IGlzIFwiIiArIHR5cGUgKyAi
XCIuIik7CisgICAgICAgICAgICAgICAgfQorCisgICAgICAgICAgICAgICAgZGVidWcoIjxicj4q
KiBUZXN0IG92ZXJyaWRkZW4gbWV0aG9kcy4iKTsKKyAgICAgICAgICAgICAgICBzaG91bGRCZVRy
dWUoImVtYmVkLkdldFVSTCgpLmluZGV4T2YoJyIgKyBzcmMgKyAiJykgIT0gLTEiKTsKKyAgICAg
ICAgICAgICAgICBzaG91bGRFdmFsdWF0ZVRvKCJlbWJlZC5HZXREdXJhdGlvbigpIiwgMzAwMDAw
KTsKKyAgICAgICAgICAgICAgICBzaG91bGRFdmFsdWF0ZVRvKCJlbWJlZC5HZXRNb3ZpZVNpemUo
KSIsIDI0OTYyKTsKKyAgICAgICAgICAgICAgICBzaG91bGRFdmFsdWF0ZVRvKCJlbWJlZC5HZXRN
YXhUaW1lTG9hZGVkKCkiLCAzMDAwMDApOworICAgICAgICAgICAgICAgIHNob3VsZEV2YWx1YXRl
VG8oImVtYmVkLkdldE1heEJ5dGVzTG9hZGVkKCkiLCAyNDk2Mik7CisgICAgICAgICAgICAgICAg
c2hvdWxkRXZhbHVhdGVUbygiZW1iZWQuR2V0TW92aWVTaXplKCkiLCAyNDk2Mik7CisgICAgICAg
ICAgICAgICAgc2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJlbWJlZC5HZXRQbHVnaW5TdGF0dXMoKSIs
ICJQbGF5YWJsZSIpOworICAgICAgICAgICAgICAgIAorICAgICAgICAgICAgICAgIC8vICJHZXRE
YXRlKCkiIHNob3VsZCByZXR1cm4gdGhlIGN1cnJlbnQgZGF0ZSwgY2xlYXIgc2Vjb25kcyBhbmQg
bWlsbGlzZWNvbmRzIAorICAgICAgICAgICAgICAgIHZhciBub3cgPSBuZXcgRGF0ZSgpOworICAg
ICAgICAgICAgICAgIHNob3VsZEJlQ2xvc2VUbygibmV3IERhdGUoZW1iZWQuR2V0RGF0ZSgpKSAt
IG5ldyBEYXRlKCkiLCAwLCAxMDApOworCisgICAgICAgICAgICAgICAgZXZhbEFuZExvZygiZW1i
ZWQuU2V0VGltZShlbWJlZC5HZXRUaW1lU2NhbGUoKSAqIDIpIik7CisgICAgICAgICAgICAgICAg
c2V0VGltZW91dChzZWVrZWQsIDUwMCk7CisgICAgICAgICAgICB9CisgICAgICAgICAgICAKKyAg
ICAgICAgICAgIGZ1bmN0aW9uIHNldHVwKCkKKyAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAg
ICBpZiAod2luZG93LnRlc3RSdW5uZXIpIHsKKyAgICAgICAgICAgICAgICAgICAgd2luZG93LnRl
c3RSdW5uZXIud2FpdFVudGlsRG9uZSgpOworICAgICAgICAgICAgICAgICAgICB3aW5kb3cudGVz
dFJ1bm5lci5kdW1wQXNUZXh0KCkKKyAgICAgICAgICAgICAgICAgICAgd2luZG93LmludGVybmFs
cy5zZXR0aW5ncy5zZXRQbHVnaW5SZXBsYWNlbWVudEVuYWJsZWQodHJ1ZSk7CisgICAgICAgICAg
ICAgICAgfQorICAgICAgICAgICAgICAgIGRpdiA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJw
YXJlbnQiKTsKKyAgICAgICAgICAgICAgICBkaXYuaW5uZXJIVE1MID0gJzxlbWJlZCBzcmM9Iicg
KyBzcmMgKyAnIiB3aWR0aD0iNjQwIiBoZWlnaHQ9IjQ4MCIgcG9zdGRvbWV2ZW50cz10cnVlPic7
CisgICAgICAgICAgICAgICAgCisgICAgICAgICAgICAgICAgdmFyIGV2ZW50cyA9IFsgInF0X2Jl
Z2luIiwgInF0X3ZhbGlkYXRlZCIsICJxdF9lbnRlcmZ1bGxzY3JlZW4iLCAicXRfZXhpdGZ1bGxz
Y3JlZW4iLCAKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInF0X2xvYWRlZG1ldGFk
YSIsICJxdF9jYW5wbGF5IiwgInF0X2VuZGVkIiwgInF0X3RpbWVkbWV0YWRhdGF1cGRhdGVkIiAK
KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF07CisgICAgICAgICAgICAgICAgZW1iZWQg
PSBkaXYuZmlyc3RDaGlsZDsKKyAgICAgICAgICAgICAgICBmb3IgKGkgPSAwOyBpIDwgZXZlbnRz
Lmxlbmd0aDsgKytpKQorICAgICAgICAgICAgICAgICAgICBlbWJlZC5hZGRFdmVudExpc3RlbmVy
KGV2ZW50c1tpXSwgbG9nRXZlbnQsIHRydWUpOworICAgICAgICAgICAgICAgIGVtYmVkLmFkZEV2
ZW50TGlzdGVuZXIoInF0X2NhbnBsYXl0aHJvdWdoIiwgdGVzdCwgdHJ1ZSk7CisgICAgICAgICAg
ICAgICAgZW1iZWQuYWRkRXZlbnRMaXN0ZW5lcigicXRfcGxheSIsIHBsYXlpbmcsIHRydWUpOwor
ICAgICAgICAgICAgICAgIGVtYmVkLmFkZEV2ZW50TGlzdGVuZXIoInF0X3BhdXNlIiwgcGF1c2Vk
LCB0cnVlKTsKKyAgICAgICAgICAgICAgICBlbWJlZC5hZGRFdmVudExpc3RlbmVyKCJxdF9lcnJv
ciIsIGVycm9yLCB0cnVlKTsKKyAgICAgICAgICAgIH0KKyAgICAgICAgPC9zY3JpcHQ+CisgICAg
PC9oZWFkPgorCisgICAgPGJvZHkgb25sb2FkPSJzZXR1cCgpIj4KKyAgICAgICAgPGRpdiBpZD1w
YXJlbnQ+PC9kaXY+CisgICAgICAgIDxwPgorICAgICAgICA8ZGl2IGlkPWNvbnNvbGU+PC9kaXY+
CisgICAgPC9ib2R5PgorPC9odG1sPgpJbmRleDogTGF5b3V0VGVzdHMvcGx1Z2lucy9yZXNvdXJj
ZXMvb3JhbmdlLm1vdgo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09CkNhbm5vdCBkaXNwbGF5OiBmaWxlIG1hcmtlZCBhcyBh
IGJpbmFyeSB0eXBlLgpzdm46bWltZS10eXBlID0gYXBwbGljYXRpb24vb2N0ZXQtc3RyZWFtCgpB
QUFBSUdaMGVYQnhkQ0FnSUFVREFIRjBJQ0FBQUFBQUFBQUFBQUFBQUFBQUFBN1RiVzl2ZGdBQUFH
eHRkbWhrQUFBQUFNNjVlbVRPCnVYcGtBQUFDV0FBQUYzQUFBUUFBQVFBQUFBQUFBQUFBQUFBQUFB
Rks5d0FBQUFBQUFBQUFBQUFBQUFBQlNxc0FBQUFBQUFBQUFBQUEKQUFCQUFBQUFBQUFBQUFBQUFB
QUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBZ0FBQy9GMGNtRnJBQUFBWEhScmFHUUFBQUFQenJs
NQpXczY1ZW1RQUFBQUJBQUFBQUFBQUYzQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBRUFBQUFBQUFB
QUFBQUFBQUFBQUFBQkFBQUFBQUFBCkFBQUFBQUFBQUFCQUFBQUFBcXNBQUFIZ0FBQUFBQUJFZEdG
d2RBQUFBQlJqYkdWbUFBQUFBQUtyQUFBQjRBQUFBQUFBRkhCeWIyWUEKQUFBQUFxc0FBQUhnQUFB
QUFBQVVaVzV2WmdBQUFBQUNxd0FBQWVBQUFBQUFBQ1JsWkhSekFBQUFIR1ZzYzNRQUFBQUFBQUFB
QVFBQQpGM0FBQUFBQUFBRUFBQUFBQ3hsdFpHbGhBQUFBSUcxa2FHUUFBQUFBenJsNlpNNjVlbVFB
QUFKWUFBQVhtQUFBQUFBQUFBQTZhR1JzCmNnQUFBQUJ0YUd4eWRtbGtaV0Z3Y0d3UUFBQUFBQUVB
NVJsQmNIQnNaU0JXYVdSbGJ5Qk5aV1JwWVNCSVlXNWtiR1Z5QUFBS3QyMXAKYm1ZQUFBQVVkbTFv
WkFBQUFBRUFRSUFBZ0FDQUFBQUFBRGxvWkd4eUFBQUFBR1JvYkhKaGJHbHpZWEJ3YkJBQUFBRUFB
UUQ5R0VGdwpjR3hsSUVGc2FXRnpJRVJoZEdFZ1NHRnVaR3hsY2dBQUFDUmthVzVtQUFBQUhHUnla
V1lBQUFBQUFBQUFBUUFBQUF4aGJHbHpBQUFBCkFRQUFDajV6ZEdKc0FBQUFwM04wYzJRQUFBQUFB
QUFBQVFBQUFKZGhkbU14QUFBQUFBQUFBQUVBQVFBQllYQndiQUFBQkFBQUFBUUEKQXFzQjRBQklB
QUFBU0FBQUFBQUFBQUFCQlVndU1qWTBBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFB
QUFHUC8vQUFBQQpFbU52YkhKdVkyeGpBQVlBQVFBR0FBQUFLMkYyWTBNQlRVQVcvd0VBRkNkTlFC
YXBHQldIdmZnRFVHQVFZd3JYdmZBUUFRQUVLTjRKCnlBQUFBQUFBQUFBWWMzUjBjd0FBQUFBQUFB
QUJBQUFBbHdBQUFDZ0FBQVNZWTNSMGN3QUFBQUFBQUFDUkFBQUFBUUFBQUFBQUFBQUIKQUFBQUtB
QUFBQUgvLy8vWUFBQUFBUUFBQUNnQUFBQUIvLy8vMkFBQUFBRUFBQUFvQUFBQUFmLy8vOWdBQUFB
QkFBQUFLQUFBQUFILwovLy9ZQUFBQUFRQUFBQ2dBQUFBQi8vLy8yQUFBQUFFQUFBQW9BQUFBQWYv
Ly85Z0FBQUFCQUFBQUtBQUFBQUgvLy8vWUFBQUFBUUFBCkFDZ0FBQUFCLy8vLzJBQUFBQUVBQUFB
b0FBQUFBZi8vLzlnQUFBQUJBQUFBS0FBQUFBSC8vLy9ZQUFBQUFRQUFBQ2dBQUFBQi8vLy8KMkFB
QUFBSUFBQUFBQUFBQUFRQUFBQ2dBQUFBQi8vLy8yQUFBQUFFQUFBQW9BQUFBQWYvLy85Z0FBQUFC
QUFBQUtBQUFBQUgvLy8vWQpBQUFBQVFBQUFDZ0FBQUFCLy8vLzJBQUFBQUVBQUFBb0FBQUFBZi8v
LzlnQUFBQUJBQUFBS0FBQUFBSC8vLy9ZQUFBQUFRQUFBQ2dBCkFBQUIvLy8vMkFBQUFBRUFBQUFv
QUFBQUFmLy8vOWdBQUFBQkFBQUFLQUFBQUFILy8vL1lBQUFBQVFBQUFDZ0FBQUFCLy8vLzJBQUEK
QUFFQUFBQW9BQUFBQWYvLy85Z0FBQUFDQUFBQUFBQUFBQUVBQUFBb0FBQUFBZi8vLzlnQUFBQUJB
QUFBS0FBQUFBSC8vLy9ZQUFBQQpBUUFBQUNnQUFBQUIvLy8vMkFBQUFBRUFBQUFvQUFBQUFmLy8v
OWdBQUFBQkFBQUFLQUFBQUFILy8vL1lBQUFBQVFBQUFDZ0FBQUFCCi8vLy8yQUFBQUFFQUFBQW9B
QUFBQWYvLy85Z0FBQUFCQUFBQUtBQUFBQUgvLy8vWUFBQUFBUUFBQUNnQUFBQUIvLy8vMkFBQUFB
RUEKQUFBb0FBQUFBZi8vLzlnQUFBQUJBQUFBS0FBQUFBSC8vLy9ZQUFBQUFnQUFBQUFBQUFBQkFB
QUFLQUFBQUFILy8vL1lBQUFBQVFBQQpBQ2dBQUFBQi8vLy8yQUFBQUFFQUFBQW9BQUFBQWYvLy85
Z0FBQUFCQUFBQUtBQUFBQUgvLy8vWUFBQUFBUUFBQUNnQUFBQUIvLy8vCjJBQUFBQUVBQUFBb0FB
QUFBZi8vLzlnQUFBQUJBQUFBS0FBQUFBSC8vLy9ZQUFBQUFRQUFBQ2dBQUFBQi8vLy8yQUFBQUFF
QUFBQW8KQUFBQUFmLy8vOWdBQUFBQkFBQUFLQUFBQUFILy8vL1lBQUFBQVFBQUFDZ0FBQUFCLy8v
LzJBQUFBQUlBQUFBQUFBQUFBUUFBQUNnQQpBQUFCLy8vLzJBQUFBQUVBQUFBb0FBQUFBZi8vLzln
QUFBQUJBQUFBS0FBQUFBSC8vLy9ZQUFBQUFRQUFBQ2dBQUFBQi8vLy8yQUFBCkFBRUFBQUFvQUFB
QUFmLy8vOWdBQUFBQkFBQUFLQUFBQUFILy8vL1lBQUFBQVFBQUFDZ0FBQUFCLy8vLzJBQUFBQUVB
QUFBb0FBQUEKQWYvLy85Z0FBQUFCQUFBQUtBQUFBQUgvLy8vWUFBQUFBUUFBQUNnQUFBQUIvLy8v
MkFBQUFBRUFBQUFvQUFBQUFmLy8vOWdBQUFBQwpBQUFBQUFBQUFBRUFBQUFvQUFBQUFmLy8vOWdB
QUFBQkFBQUFLQUFBQUFILy8vL1lBQUFBQVFBQUFDZ0FBQUFCLy8vLzJBQUFBQUVBCkFBQW9BQUFB
QWYvLy85Z0FBQUFCQUFBQUtBQUFBQUgvLy8vWUFBQUFBUUFBQUNnQUFBQUIvLy8vMkFBQUFBRUFB
QUFvQUFBQUFmLy8KLzlnQUFBQUJBQUFBS0FBQUFBSC8vLy9ZQUFBQUFRQUFBQ2dBQUFBQi8vLy8y
QUFBQUFFQUFBQW9BQUFBQWYvLy85Z0FBQUFCQUFBQQpLQUFBQUFILy8vL1lBQUFBQWdBQUFBQUFB
QUFCQUFBQUtBQUFBQUgvLy8vWUFBQUFBUUFBQUNnQUFBQUIvLy8vMkFBQUFBRUFBQUFvCkFBQUFB
Zi8vLzlnQUFBQWdZM05zWndBQUFBQUFBQUFvLy8vLzJBQUFBQ2dBQUFBQUFBQVhtQUFBQUN4emRI
TnpBQUFBQUFBQUFBY0EKQUFBQkFBQUFHUUFBQURFQUFBQkpBQUFBWVFBQUFIa0FBQUNSQUFBQW8z
TmtkSEFBQUFBQUFFQUlRQWhBQ0VBSVFBaEFDRUFJUUFoQQpDRUFJUUFnSUFFQUlRQWhBQ0VBSVFB
aEFDRUFJUUFoQUNFQUlRQWdJQUVBSVFBaEFDRUFJUUFoQUNFQUlRQWhBQ0VBSVFBZ0lBRUFJClFB
aEFDRUFJUUFoQUNFQUlRQWhBQ0VBSVFBZ0lBRUFJUUFoQUNFQUlRQWhBQ0VBSVFBaEFDRUFJUUFn
SUFFQUlRQWhBQ0VBSVFBaEEKQ0VBSVFBaEFDRUFJUUFnSUFFQUlRQWhBQ0FBQUFNUnpkSE5qQUFB
QUFBQUFBQThBQUFBQkFBQUFCQUFBQUFFQUFBQUdBQUFBQVFBQQpBQUVBQUFBSEFBQUFCQUFBQUFF
QUFBQU1BQUFBQVFBQUFBRUFBQUFOQUFBQUJBQUFBQUVBQUFBU0FBQUFBUUFBQUFFQUFBQVRBQUFB
CkJBQUFBQUVBQUFBWUFBQUFBUUFBQUFFQUFBQVpBQUFBQkFBQUFBRUFBQUFlQUFBQUFRQUFBQUVB
QUFBZkFBQUFCQUFBQUFFQUFBQWsKQUFBQUFRQUFBQUVBQUFBbEFBQUFCQUFBQUFFQUFBQXFBQUFB
QVFBQUFBRUFBQUFyQUFBQUJBQUFBQUVBQUFKd2MzUnplZ0FBQUFBQQpBQUFBQUFBQWx3QUFCbVVB
QUFCZkFBQUFYZ0FBQUY4QUFBQmVBQUFBWHdBQUFGNEFBQUJmQUFBQVhnQUFBRjhBQUFCZUFBQUFY
d0FBCkFGNEFBQUJmQUFBQVhnQUFBRjhBQUFCZUFBQUFYd0FBQUY0QUFBQmZBQUFBWGdBQUFGOEFB
QUJlQUFBQVhRQUFCbFVBQUFCZkFBQUEKWGdBQUFGOEFBQUJlQUFBQVh3QUFBRjRBQUFCZkFBQUFY
Z0FBQUY4QUFBQmVBQUFBWHdBQUFGNEFBQUJmQUFBQVhnQUFBRjhBQUFCZQpBQUFBWHdBQUFGNEFB
QUJmQUFBQVhnQUFBRjhBQUFCZUFBQUFYUUFBQmxVQUFBQmZBQUFBWGdBQUFGOEFBQUJlQUFBQVh3
QUFBRjRBCkFBQmZBQUFBWGdBQUFGOEFBQUJlQUFBQVh3QUFBRjRBQUFCZkFBQUFYZ0FBQUY4QUFB
QmVBQUFBWHdBQUFGNEFBQUJmQUFBQVhnQUEKQUY4QUFBQmVBQUFBWFFBQUJsVUFBQUJmQUFBQVhn
QUFBRjhBQUFCZUFBQUFYd0FBQUY0QUFBQmZBQUFBWGdBQUFGOEFBQUJlQUFBQQpYd0FBQUY0QUFB
QmZBQUFBWGdBQUFGOEFBQUJlQUFBQVh3QUFBRjRBQUFCZkFBQUFYZ0FBQUY4QUFBQmVBQUFBWFFB
QUJsVUFBQUJmCkFBQUFYZ0FBQUY4QUFBQmVBQUFBWHdBQUFGNEFBQUJmQUFBQVhnQUFBRjhBQUFC
ZUFBQUFYd0FBQUY0QUFBQmZBQUFBWGdBQUFGOEEKQUFCZUFBQUFYd0FBQUY0QUFBQmZBQUFBWGdB
QUFGOEFBQUJlQUFBQVhRQUFCbFVBQUFCZkFBQUFYZ0FBQUY4QUFBQmVBQUFBWHdBQQpBRjRBQUFC
ZkFBQUFYZ0FBQUY4QUFBQmVBQUFBWHdBQUFGNEFBQUJmQUFBQVhnQUFBRjhBQUFCZUFBQUFYd0FB
QUY0QUFBQmZBQUFBClhnQUFBRjhBQUFCZUFBQUFYUUFBQmxVQUFBQmZBQUFBWGdBQUFGOEFBQUJl
QUFBQVh3QUFBRjRBQUFDOGMzUmpid0FBQUFBQUFBQXIKQUFBUEd3QUFGcHdBQUJnV0FBQVprQUFB
R3dvQUFCeUVBQUFjNGdBQUpGRUFBQ1hMQUFBblJRQUFLTDhBQUNvNUFBQXFtQUFBTEJJQQpBRE9C
QUFBMCt3QUFOblVBQURmdkFBQTRUUUFBT2NjQUFEdEJBQUJDc0FBQVJDb0FBRVdrQUFCR0F3QUFS
MzBBQUVqM0FBQktid0FBClVlQUFBRk5hQUFCVHVBQUFWVElBQUZhc0FBQllKZ0FBWDVVQUFHRVBB
QUJoYmdBQVl1Z0FBR1JpQUFCbDNBQUFaMVlBQUc3RkFBQnYKSXdBQUFBeDFaSFJoQUFBQUFBQUFB
a1J0WlhSaEFBQUFJR2hrYkhJQUFBQUFBQUFBQUcxa2RHRUFBQUFBQUFBQUFBQUFBQUFBQUFFNAph
MlY1Y3dBQUFBQUFBQUFHQUFBQU9tMWtkR0ZqYjIwdVlYQndiR1V1Y1hWcFkydDBhVzFsTG5Cc1lY
bGxjaTV0YjNacFpTNTJhWE4xCllXd3VZbkpwWjJoMGJtVnpjd0FBQURWdFpIUmhZMjl0TG1Gd2NH
eGxMbkYxYVdOcmRHbHRaUzV3YkdGNVpYSXViVzkyYVdVdWRtbHoKZFdGc0xtTnZiRzl5QUFBQU5H
MWtkR0ZqYjIwdVlYQndiR1V1Y1hWcFkydDBhVzFsTG5Cc1lYbGxjaTV0YjNacFpTNTJhWE4xWVd3
dQpkR2x1ZEFBQUFEaHRaSFJoWTI5dExtRndjR3hsTG5GMWFXTnJkR2x0WlM1d2JHRjVaWEl1Ylc5
MmFXVXVkbWx6ZFdGc0xtTnZiblJ5CllYTjBBQUFBS20xa2RHRmpiMjB1WVhCd2JHVXVjWFZwWTJ0
MGFXMWxMbkJzWVhsbGNpNTJaWEp6YVc5dUFBQUFJMjFrZEdGamIyMHUKWVhCd2JHVXVjWFZwWTJ0
MGFXMWxMblpsY25OcGIyNEFBQURrYVd4emRBQUFBQndBQUFBQkFBQUFGR1JoZEdFQUFBQVhBQUFB
QUFBQQpBQUFBQUFBY0FBQUFBZ0FBQUJSa1lYUmhBQUFBRndBQUFBQS9nQUFBQUFBQUhBQUFBQU1B
QUFBVVpHRjBZUUFBQUJjQUFBQUFBQUFBCkFBQUFBQndBQUFBRUFBQUFGR1JoZEdFQUFBQVhBQUFB
QUQrQUFBQUFBQUFsQUFBQUJRQUFBQjFrWVhSaEFBQUFBUUFBQUFBM0xqWXUKTmlBb055NDJMallw
QUFBQVJ3QUFBQVlBQUFBL1pHRjBZUUFBQUFFQUFBQUFOeTQzTGpNZ0tESTRNallwSURCNE56Y3pP
REF3TUNBbwpUV0ZqSUU5VElGZ3NJREV3TGprc0lERXpRVFU1T0NrQUFBQXFkV1IwWVFBQUFBeFhU
RTlEQUMwQVNnQUFBQWxUWld4UEFBQUFBQWxCCmJHeEdBQUFBQUFBQUFBQUlabkpsWlFBQUFBaDNh
V1JsQUFCaG1tMWtZWFFBQUFBSWQybGtaUUFBQUFCdFpHRjBBQUFBREFZQUI0Q3YKeUFBQUF3QkFn
QUFBQUJVR0JSRURoL1JPelFwTDNLR1VPc1BVbXhjZkFJQUFBQUZQSmJnZ0lDbGYvL2dyZ0FjUkVR
Q0VwUXJqREFBYwpRWWNLa0FBSlg0RGdBQ1M0QUJTU0lrSnNoa1pndzRBRmRzMnh2MUtydUdIY3Q5
OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5Cjk5OTk5OTk5LytIL2h3Z0FGR0lJM0pFbGh1
ZXpoTmY4QXdUblk0RkFBQ0V5QUFJUGdnQUFnL0FBQ0RIZ0FiNXVtQUFJREhrd0FBZzYKdnBZQUFn
TkFBQ0R1eEFCcEphQUFFQkhXZ0FDQzUvNTBzQUFRRXdBQkJlWVV0ZGRkZGRkZGRkZGRkZGRkZGRk
ZGRkZGRkZGRkZGRkZApkZGRkZGRkZGRkTWxTMTExMTExMTExMTExMTExMTExMTExMTExMTExMTEx
MTExMTExMTExMTEweVZMWFhYWFhYWFhYWFhYWFhYWFhYClhYWFhYWFhYWFhYWFhYWFhYWFhYWFhY
VEpVdGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkTWxTMTExMTEKMTEx
MTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMHlZQUFBRWdKUUNCdUNBZ0xWLy8rQ0tL
QUFJVW5qZ0FDYy9IQUFFeAo2KysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysr
Ky8vRC93V0VBY0FBc0FLQkJWTS9pQUFDRXVBQUlQVVFBQVFmCmdBQkJqd2NBQVFHZ0FCQjNZZzRB
QWdOQUFDRHV4QndBQkFUQUFFRjVpRGdBQ0FtQUFJTHpDbHJycnJycnJycnJycnJycnJycnJycnIK
cnJycnJycnJycnJycnJycnJycnBrcVd1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1
dXV1dXV1dW1TcGE2NjY2NjY2Ngo2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjZaS2xy
cnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJyCnJwa3FXdXV1dXV1dXV1dXV1
dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXVtVEFBQUJJU1VBUUs0SUNBdFgvLzRJb29BQWhT
ZU8KQUFKejhjQUFUSHI3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3LzhQ
L0JZUUJ3QUN3QW9FRlV6K0lBQUlTNApBQWc5UkFBQkIrQUFFR1BCd0FCQWFBQUVIZGlEZ0FDQTBB
QUlPN0VIQUFFQk1BQVFYbUlPQUFJQ1lBQWd2TUtXdXV1dXV1dXV1dXV1CnV1dXV1dXV1dXV1dXV1
dXV1dXV1dXV1dXV1dXV1bVNwYTY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2
NjY2WksKbHJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycGtxV3V1dXV1
dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dQp1dXV1dXV1dXV1dW1TcGE2NjY2NjY2NjY2NjY2NjY2
NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NlpNQUFBQUVoSlFCZzdnZ0lDMWYvCi9naWlnQUNGSjQ0
QUFuUHh3QUJNZXZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2L3cvOEZo
QUhBQUxBQ2cKUVZUUDRnQUFoTGdBQ0QxRUFBRUg0QUFRWThIQUFFQm9BQVFkMklPQUFJRFFBQWc3
c1FjQUFRRXdBQkJlWWc0QUFnSmdBQ0M4d3BhNgo2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2
NjY2NjY2NjY2NjY2WktscnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJyCnJycnJycnJy
cGtxV3V1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1bVNwYTY2NjY2NjY2
NjY2NjY2NjY2NjYKNjY2NjY2NjY2NjY2NjY2NjY2NjY2NlpLbHJycnJycnJycnJycnJycnJycnJy
cnJycnJycnJycnJycnJycnJycnJycGt3QUFBQVhjbApBQ0JMZ2dJQzFmLy9naWlnQUNGSjQ0QUFu
UHh3QUJNZXZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2L3cvCjhGaEFI
QUFMQUNnUVZUUDRnQUFoTGdBQ0QxRUFBRUg0QUFRWThIQUFFQm9BQVFkMklPQUFJRFFBQWc3c1Fj
QUFRRXdBQkJlWWc0QUEKZ0pnQUNDOHdwYTY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2
NjY2NjY2NjY2WktscnJycnJycnJycnJycnJycnJycnJycgpycnJycnJycnJycnJycnJycnJycGtx
V3V1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1bVNwYTY2NjY2NjY2CjY2
NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NlpJV3dBRVprWkdaR1JHUmtYL2dBR3lNd0VM
U2hmR1dDL3dscEFDNEFGZE0KallueUhSMkR3QUtUUnBEYnFSV2NOUzExMTExMTExMTExMTExMTEx
MTExMTExMTExMTExMTExMTExMTExMTF3c3lBQUl5SXpJeklqSQpqTXYvOEFEcUVGYnNpUEsyNHpk
OTRCM2dBYVpQazN6bjNBQ2VhbWwzL3JjQUFBQVZCZ1VSQTRmMFRzMEtTOXlobERyRDFKc1hId0NB
CkFBQUFDQ0hoQ1FDbEFFRGdBQUFBQ2lFQWdlRUpBTFVBUU9BQUFBQUtJUUJBdUVKQUxVQVFPQUFB
QUFvaEFHRDRRa0F0UUJBNEFBQUEKRENFQUlFNFFrQXRRRFk4RmNBQUFBQlVHQlJFRGgvUk96UXBM
M0tHVU9zUFVteGNmQUlBQUFBQUlBYWlCWUJHZ0NCd0FBQUFLQVFDQgpxSUZnRmFBSUhBQUFBQW9C
QUVDcUlGZ0ZhQUlIQUFBQUNnRUFZT29nV0FWb0FnY0FBQUFMQVFBZ1NvZ1dBVm9BZ2NBQUFBQVZC
Z1VSCkE0ZjBUczBLUzl5aGxEckQxSnNYSHdDQUFBQUFDQ0hpRVFDbEFFRGdBQUFBQ2lFQWdlSVJB
TFVBUU9BQUFBQUtJUUJBdUlSQUxVQVEKT0FBQUFBb2hBR0Q0aEVBdFFCQTRBQUFBRENFQUlFNGhF
QXRRRFk4RmNBQUFBQlVHQlJFRGgvUk96UXBMM0tHVU9zUFVteGNmQUlBQQpBQUFJQWFqRFlCR2dD
QndBQUFBS0FRQ0JxTU5nRmFBSUhBQUFBQW9CQUVDcU1OZ0ZhQUlIQUFBQUNnRUFZT293MkFWb0Fn
Y0FBQUFMCkFRQWdTb3cyQVZvQWdjQUFBQUFWQmdVUkE0ZjBUczBLUzl5aGxEckQxSnNYSHdDQUFB
QUFDQ0hqR1FDbEFFRGdBQUFBQ2lFQWdlTVoKQUxVQVFPQUFBQUFLSVFCQXVNWkFMVUFRT0FBQUFB
b2hBR0Q0eGtBdFFCQTRBQUFBRENFQUlFNHhrQXRRRFk4RmNBQUFBQlVHQlJFRApoL1JPelFwTDNL
R1VPc1BVbXhjZkFJQUFBQUFJQWFrRllCR2dDQndBQUFBS0FRQ0JxUVZnRmFBSUhBQUFBQW9CQUVD
cVFWZ0ZhQUlICkFBQUFDZ0VBWU9wQldBVm9BZ2NBQUFBTEFRQWdTcEJXQVZvQWdjQUFBQUFWQmdV
UkE0ZjBUczBLUzl5aGxEckQxSnNYSHdDQUFBQUEKQ0NIa0lRQ2xBRURnQUFBQUNpRUFnZVFoQUxV
QVFPQUFBQUFLSVFCQXVRaEFMVUFRT0FBQUFBb2hBR0Q1Q0VBdFFCQTRBQUFBRENFQQpJRTVDRUF0
UURZOEZjQUFBQUJVR0JSRURoL1JPelFwTDNLR1VPc1BVbXhjZkFJQUFBQUFJQWFsSFlCR2dDQndB
QUFBS0FRQ0JxVWRnCkZhQUlIQUFBQUFvQkFFQ3FVZGdGYUFJSEFBQUFDZ0VBWU9wUjJBVm9BZ2NB
QUFBTEFRQWdTcFIyQVZvQWdjQUFBQUFWQmdVUkE0ZjAKVHMwS1M5eWhsRHJEMUpzWEh3Q0FBQUFB
Q0NIbEtRQ2xBRURnQUFBQUNpRUFnZVVwQUxVQVFPQUFBQUFLSVFCQXVVcEFMVUFRT0FBQQpBQW9o
QUdENVNrQXRRQkE0QUFBQURDRUFJRTVTa0F0UURZOEZjQUFBQUJVR0JSRURoL1JPelFwTDNLR1VP
c1BVbXhjZkFJQUFBQUFJCkFhbUpZQkdnQ0J3QUFBQUtBUUNCcVlsZ0ZhQUlIQUFBQUFvQkFFQ3FZ
bGdGYUFJSEFBQUFDZ0VBWU9waVdBVm9BZ2NBQUFBTEFRQWcKU3BpV0FWb0FnY0FBQUFBVkJnVVJB
NGYwVHMwS1M5eWhsRHJEMUpzWEh3Q0FBQUFBQ0NIbU1RQ2xBRURnQUFBQUNpRUFnZVl4QUxVQQpR
T0FBQUFBS0lRQkF1WXhBTFVBUU9BQUFBQW9oQUdENWpFQXRRQkE0QUFBQURDRUFJRTVqRUF0UURZ
OEZjQUFBQUJVR0JSRURoL1JPCnpRcEwzS0dVT3NQVW14Y2ZBSUFBQUFBSUFhbkxZQkdnQ0J3QUFB
QUtBUUNCcWN0Z0ZhQUlIQUFBQUFvQkFFQ3FjdGdGYUFJSEFBQUEKQ2dFQVlPcHkyQVZvQWdjQUFB
QUxBUUFnU3B5MkFWb0FnY0FBQUFBVkJnVVJBNGYwVHMwS1M5eWhsRHJEMUpzWEh3Q0FBQUFBQ0NI
bgpPUUNsQUVEZ0FBQUFDaUVBZ2VjNUFMVUFRT0FBQUFBS0lRQkF1YzVBTFVBUU9BQUFBQW9oQUdE
NXprQXRRQkE0QUFBQURDRUFJRTV6CmtBdFFEWThGY0FBQUFCVUdCUkVEaC9ST3pRcEwzS0dVT3NQ
VW14Y2ZBSUFBQUFBSUFhb05ZQkdnQ0J3QUFBQUtBUUNCcWcxZ0ZhQUkKSEFBQUFBb0JBRUNxZzFn
RmFBSUhBQUFBQ2dFQVlPcURXQVZvQWdjQUFBQUxBUUFnU3FEV0FWb0FnY0FBQUFBVkJnVVJBNGYw
VHMwSwpTOXlobERyRDFKc1hId0NBQUFBQUNDSG9RUUNsQUVEZ0FBQUFDaUVBZ2VoQkFMVUFRT0FB
QUFBS0lRQkF1aEJBTFVBUU9BQUFBQW9oCkFHRDZFRUF0UUJBNEFBQUFEQ0VBSUU2RUVBdFFEWThG
Y0FBQUFCVUdCUkVEaC9ST3pRcEwzS0dVT3NQVW14Y2ZBSUFBQUFBSUFhcFAKWUJHZ0NCd0FBQUFL
QVFDQnFrOWdGYUFJSEFBQUFBb0JBRUNxazlnRmFBSUhBQUFBQ2dFQVlPcVQyQVZvQWdjQUFBQUxB
UUFnU3FUMgpBVm9BZ2NBQUFBQVZCZ1VSQTRmMFRzMEtTOXlobERyRDFKc1hId0NBQUFBQUNDSHBT
UUNsQUVEZ0FBQUFDaUVBZ2VsSkFMVUFRT0FBCkFBQUtJUUJBdWxKQUxVQVFPQUFBQUFvaEFHRDZV
a0F0UUJBNEFBQUFEQ0VBSUU2VWtBdFFEWThGY0FBQUFCVUdCUkVEaC9ST3pRcEwKM0tHVU9zUFVt
eGNmQUlBQUFBQUlBYXFSWUJHZ0NCd0FBQUFLQVFDQnFwRmdGYUFJSEFBQUFBb0JBRUNxcEZnRmFB
SUhBQUFBQ2dFQQpZT3FrV0FWb0FnY0FBQUFMQVFBZ1Nxa1dBVm9BZ2NBQUFBQVZCZ1VSQTRmMFRz
MEtTOXlobERyRDFKc1hId0NBQUFBQUNDSHFVUUNsCkFFRGdBQUFBQ2lFQWdlcFJBTFVBUU9BQUFB
QUtJUUJBdXBSQUxVQVFPQUFBQUFvaEFHRDZsRUF0UUJBNEFBQUFEQ0VBSUU2bEVBdFEKRFk4RmNB
QUFBQlVHQlJFRGgvUk96UXBMM0tHVU9zUFVteGNmQUlBQUFBQUlBYXJUWUJHZ0NCd0FBQUFLQVFD
QnF0TmdGYUFJSEFBQQpBQW9CQUVDcXROZ0ZhQUlIQUFBQUNnRUFZT3EwMkFWb0FnY0FBQUFMQVFB
Z1NxMDJBVm9BZ2NBQUFBQVZCZ1VSQTRmMFRzMEtTOXloCmxEckQxSnNYSHdDQUFBQUFDQ0hyV1FD
bEFFRGdBQUFBQ2lFQWdldFpBTFVBUU9BQUFBQUtJUUJBdXRaQUxVQVFPQUFBQUFvaEFHRDYKMWtB
dFFCQTRBQUFBRENFQUlFNjFrQXRRRFk4RmNBQUFBQlVHQlJFRGgvUk96UXBMM0tHVU9zUFVteGNm
QUlBQUFBQUlBYXNWWUJHZwpDQndBQUFBS0FRQ0JxeFZnRmFBSUhBQUFBQW9CQUVDcXhWZ0ZhQUlI
QUFBQUNnRUFZT3JGV0FWb0FnY0FBQUFMQVFBZ1NyRldBVm9BCmdjQUFBQUFWQmdVUkE0ZjBUczBL
Uzl5aGxEckQxSnNYSHdDQUFBQUFDQUhzWFFFYUFJSEFBQUFBQ2dFQWdleGRBVm9BZ2NBQUFBQUsK
QVFCQXV4ZEFWb0FnY0FBQUFBb0JBR0Q3RjBCV2dDQndBQUFBQ2dFQUlFN0YwQldnQ0J3QUFBQVZC
Z1VSQTRmMFRzMEtTOXlobERyRAoxSnNYSHdDQUFBQUJUeVc0SUNBcFgvLzRLNEFIRVJFQWhLVUs0
d3dBSEVHSENwQUFDVitBNEFBa3VBQVVraUpDYklaR1lNT0FCWGJOCnNiOVNxN2hoM0xmZmZmZmZm
ZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmL2gvNGNJQUJSaUNOeVJKWWJuczRUWC9B
TUUKNTJPQlFBQWhNZ0FDRDRJQUFJUHdBQWd4NEFHK2JwZ0FDQXg1TUFBSU9yNldBQUlEUUFBZzdz
UUFhU1dnQUJBUjFvQUFndWYrZExBQQpFQk1BQVFYbUZMWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhY
WFhYWFhYWFhYWFhYWFhYWFhUSlV0ZGRkZGRkZGRkZGRkZGRkZGRkZGRkCmRkZGRkZGRkZGRkZGRk
ZGRkZGRkTWxTMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTEweVZMWFhY
WFhYWFgKWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYVEpVdGRkZGRkZGRkZGRkZGRk
ZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZApkZE1tQUFBQklDVUFnYmdnSUMxZi8vZ2lpZ0FDRko0
NEFBblB4d0FCTWV2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2CnZ2dnZ2dnYvdy84
RmhBSEFBTEFDZ1FWVFA0Z0FBaExnQUNEMUVBQUVINEFBUVk4SEFBRUJvQUFRZDJJT0FBSURRQUFn
N3NRY0FBUUUKd0FCQmVZZzRBQWdKZ0FDQzh3cGE2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2
NjY2NjY2NjY2NjY2NlpLbHJycnJycnJycnJycgpycnJycnJycnJycnJycnJycnJycnJycnJycnJy
cnBrcVd1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dW1TCnBhNjY2NjY2
NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjZaS2xycnJycnJycnJycnJycnJycnJy
cnJycnJycnJycnIKcnJycnJycnJycnJwa3dBQUFTRWxBRUN1Q0FnTFYvLytDS0tBQUlVbmpnQUNj
L0hBQUV4NisrKysrKysrKysrKysrKysrKysrKysrKworKysrKysrKysrKysrKysrLy9EL3dXRUFj
QUFzQUtCQlZNL2lBQUNFdUFBSVBVUUFBUWZnQUJCandjQUFRR2dBQkIzWWc0QUFnTkFBCkNEdXhC
d0FCQVRBQUVGNWlEZ0FDQW1BQUlMekNscnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJy
cnJycnJycnJwa3FXdXUKdXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1bVNw
YTY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2Ngo2NjY2NjY2NlpLbHJycnJycnJycnJy
cnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycGtxV3V1dXV1dXV1dXV1dXV1dXV1dXV1CnV1
dXV1dXV1dXV1dXV1dXV1dXV1dW1UQUFBQUJJU1VBWU80SUNBdFgvLzRJb29BQWhTZU9BQUp6OGNB
QVRIcjc3Nzc3Nzc3Nzc3NzcKNzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3LzhQL0JZUUJ3QUN3
QW9FRlV6K0lBQUlTNEFBZzlSQUFCQitBQUVHUEJ3QUJBYUFBRQpIZGlEZ0FDQTBBQUlPN0VIQUFF
Qk1BQVFYbUlPQUFJQ1lBQWd2TUtXdXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1
CnV1dXV1bVNwYTY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2WktscnJy
cnJycnJycnJycnJycnJycnJycnIKcnJycnJycnJycnJycnJycnJycGtxV3V1dXV1dXV1dXV1dXV1
dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1bVNwYTY2NjY2NjY2Ngo2NjY2NjY2NjY2NjY2NjY2
NjY2NjY2NjY2NjY2NjY2NlpNQUFBQUYzSlFBZ1M0SUNBdFgvLzRJb29BQWhTZU9BQUp6OGNBQVRI
cjc3Cjc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3LzhQL0JZUUJ3QUN3QW9F
RlV6K0lBQUlTNEFBZzlSQUFCQitBQUUKR1BCd0FCQWFBQUVIZGlEZ0FDQTBBQUlPN0VIQUFFQk1B
QVFYbUlPQUFJQ1lBQWd2TUtXdXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dQp1dXV1dXV1dXV1dXV1
dXV1bVNwYTY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2WktscnJycnJy
cnJycnJyCnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycGtxV3V1dXV1dXV1dXV1dXV1dXV1
dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1bVMKRnNBQkdaR1JtUmtSa1pGLzRBQnNqTUJDMG9YeGxn
djhKYVFBdUFCWFRJMko4aDBkZzhBQ2swYVEyNmtWbkRVdGRkZGRkZGRkZGRkZApkZGRkZGRkZGRk
ZGRkZGRkZGRkZGRkZGRkZGRjTE1nQUNNaU15TXlJeUl6TC8vQUE2aEJXN0lqeXR1TTNmZUFkNEFH
bVQ1Tjg1OXdBCm5tcHBkLzYzQUFBQUZRWUZFUU9IOUU3TkNrdmNvWlE2dzlTYkZ4OEFnQUFBQUFn
aDRRa0FwUUJBNEFBQUFBb2hBSUhoQ1FDMUFFRGcKQUFBQUNpRUFRTGhDUUMxQUVEZ0FBQUFLSVFC
ZytFSkFMVUFRT0FBQUFBd2hBQ0JPRUpBTFVBMlBCWEFBQUFBVkJnVVJBNGYwVHMwSwpTOXlobERy
RDFKc1hId0NBQUFBQUNBR29nV0FSb0FnY0FBQUFDZ0VBZ2FpQllCV2dDQndBQUFBS0FRQkFxaUJZ
QldnQ0J3QUFBQW9CCkFHRHFJRmdGYUFJSEFBQUFDd0VBSUVxSUZnRmFBSUhBQUFBQUZRWUZFUU9I
OUU3TkNrdmNvWlE2dzlTYkZ4OEFnQUFBQUFnaDRoRUEKcFFCQTRBQUFBQW9oQUlIaUVRQzFBRURn
QUFBQUNpRUFRTGlFUUMxQUVEZ0FBQUFLSVFCZytJUkFMVUFRT0FBQUFBd2hBQ0JPSVJBTApVQTJQ
QlhBQUFBQVZCZ1VSQTRmMFRzMEtTOXlobERyRDFKc1hId0NBQUFBQUNBR293MkFSb0FnY0FBQUFD
Z0VBZ2FqRFlCV2dDQndBCkFBQUtBUUJBcWpEWUJXZ0NCd0FBQUFvQkFHRHFNTmdGYUFJSEFBQUFD
d0VBSUVxTU5nRmFBSUhBQUFBQUZRWUZFUU9IOUU3TkNrdmMKb1pRNnc5U2JGeDhBZ0FBQUFBZ2g0
eGtBcFFCQTRBQUFBQW9oQUlIakdRQzFBRURnQUFBQUNpRUFRTGpHUUMxQUVEZ0FBQUFLSVFCZwor
TVpBTFVBUU9BQUFBQXdoQUNCT01aQUxVQTJQQlhBQUFBQVZCZ1VSQTRmMFRzMEtTOXlobERyRDFK
c1hId0NBQUFBQUNBR3BCV0FSCm9BZ2NBQUFBQ2dFQWdha0ZZQldnQ0J3QUFBQUtBUUJBcWtGWUJX
Z0NCd0FBQUFvQkFHRHFRVmdGYUFJSEFBQUFDd0VBSUVxUVZnRmEKQUlIQUFBQUFGUVlGRVFPSDlF
N05Da3Zjb1pRNnc5U2JGeDhBZ0FBQUFBZ2g1Q0VBcFFCQTRBQUFBQW9oQUlIa0lRQzFBRURnQUFB
QQpDaUVBUUxrSVFDMUFFRGdBQUFBS0lRQmcrUWhBTFVBUU9BQUFBQXdoQUNCT1FoQUxVQTJQQlhB
QUFBQVZCZ1VSQTRmMFRzMEtTOXloCmxEckQxSnNYSHdDQUFBQUFDQUdwUjJBUm9BZ2NBQUFBQ2dF
QWdhbEhZQldnQ0J3QUFBQUtBUUJBcWxIWUJXZ0NCd0FBQUFvQkFHRHEKVWRnRmFBSUhBQUFBQ3dF
QUlFcVVkZ0ZhQUlIQUFBQUFGUVlGRVFPSDlFN05Da3Zjb1pRNnc5U2JGeDhBZ0FBQUFBZ2g1U2tB
cFFCQQo0QUFBQUFvaEFJSGxLUUMxQUVEZ0FBQUFDaUVBUUxsS1FDMUFFRGdBQUFBS0lRQmcrVXBB
TFVBUU9BQUFBQXdoQUNCT1VwQUxVQTJQCkJYQUFBQUFWQmdVUkE0ZjBUczBLUzl5aGxEckQxSnNY
SHdDQUFBQUFDQUdwaVdBUm9BZ2NBQUFBQ2dFQWdhbUpZQldnQ0J3QUFBQUsKQVFCQXFtSllCV2dD
QndBQUFBb0JBR0RxWWxnRmFBSUhBQUFBQ3dFQUlFcVlsZ0ZhQUlIQUFBQUFGUVlGRVFPSDlFN05D
a3Zjb1pRNgp3OVNiRng4QWdBQUFBQWdoNWpFQXBRQkE0QUFBQUFvaEFJSG1NUUMxQUVEZ0FBQUFD
aUVBUUxtTVFDMUFFRGdBQUFBS0lRQmcrWXhBCkxVQVFPQUFBQUF3aEFDQk9ZeEFMVUEyUEJYQUFB
QUFWQmdVUkE0ZjBUczBLUzl5aGxEckQxSnNYSHdDQUFBQUFDQUdweTJBUm9BZ2MKQUFBQUNnRUFn
YW5MWUJXZ0NCd0FBQUFLQVFCQXFuTFlCV2dDQndBQUFBb0JBR0RxY3RnRmFBSUhBQUFBQ3dFQUlF
cWN0Z0ZhQUlIQQpBQUFBRlFZRkVRT0g5RTdOQ2t2Y29aUTZ3OVNiRng4QWdBQUFBQWdoNXprQXBR
QkE0QUFBQUFvaEFJSG5PUUMxQUVEZ0FBQUFDaUVBClFMbk9RQzFBRURnQUFBQUtJUUJnK2M1QUxV
QVFPQUFBQUF3aEFDQk9jNUFMVUEyUEJYQUFBQUFWQmdVUkE0ZjBUczBLUzl5aGxEckQKMUpzWEh3
Q0FBQUFBQ0FHcURXQVJvQWdjQUFBQUNnRUFnYW9OWUJXZ0NCd0FBQUFLQVFCQXFvTllCV2dDQndB
QUFBb0JBR0RxZzFnRgphQUlIQUFBQUN3RUFJRXFnMWdGYUFJSEFBQUFBRlFZRkVRT0g5RTdOQ2t2
Y29aUTZ3OVNiRng4QWdBQUFBQWdoNkVFQXBRQkE0QUFBCkFBb2hBSUhvUVFDMUFFRGdBQUFBQ2lF
QVFMb1FRQzFBRURnQUFBQUtJUUJnK2hCQUxVQVFPQUFBQUF3aEFDQk9oQkFMVUEyUEJYQUEKQUFB
VkJnVVJBNGYwVHMwS1M5eWhsRHJEMUpzWEh3Q0FBQUFBQ0FHcVQyQVJvQWdjQUFBQUNnRUFnYXBQ
WUJXZ0NCd0FBQUFLQVFCQQpxcFBZQldnQ0J3QUFBQW9CQUdEcWs5Z0ZhQUlIQUFBQUN3RUFJRXFr
OWdGYUFJSEFBQUFBRlFZRkVRT0g5RTdOQ2t2Y29aUTZ3OVNiCkZ4OEFnQUFBQUFnaDZVa0FwUUJB
NEFBQUFBb2hBSUhwU1FDMUFFRGdBQUFBQ2lFQVFMcFNRQzFBRURnQUFBQUtJUUJnK2xKQUxVQVEK
T0FBQUFBd2hBQ0JPbEpBTFVBMlBCWEFBQUFBVkJnVVJBNGYwVHMwS1M5eWhsRHJEMUpzWEh3Q0FB
QUFBQ0FHcWtXQVJvQWdjQUFBQQpDZ0VBZ2FxUllCV2dDQndBQUFBS0FRQkFxcVJZQldnQ0J3QUFB
QW9CQUdEcXBGZ0ZhQUlIQUFBQUN3RUFJRXFwRmdGYUFJSEFBQUFBCkZRWUZFUU9IOUU3TkNrdmNv
WlE2dzlTYkZ4OEFnQUFBQUFnaDZsRUFwUUJBNEFBQUFBb2hBSUhxVVFDMUFFRGdBQUFBQ2lFQVFM
cVUKUUMxQUVEZ0FBQUFLSVFCZytwUkFMVUFRT0FBQUFBd2hBQ0JPcFJBTFVBMlBCWEFBQUFBVkJn
VVJBNGYwVHMwS1M5eWhsRHJEMUpzWApId0NBQUFBQUNBR3EwMkFSb0FnY0FBQUFDZ0VBZ2FyVFlC
V2dDQndBQUFBS0FRQkFxclRZQldnQ0J3QUFBQW9CQUdEcXROZ0ZhQUlICkFBQUFDd0VBSUVxdE5n
RmFBSUhBQUFBQUZRWUZFUU9IOUU3TkNrdmNvWlE2dzlTYkZ4OEFnQUFBQUFnaDYxa0FwUUJBNEFB
QUFBb2gKQUlIcldRQzFBRURnQUFBQUNpRUFRTHJXUUMxQUVEZ0FBQUFLSVFCZyt0WkFMVUFRT0FB
QUFBd2hBQ0JPdFpBTFVBMlBCWEFBQUFBVgpCZ1VSQTRmMFRzMEtTOXlobERyRDFKc1hId0NBQUFB
QUNBR3JGV0FSb0FnY0FBQUFDZ0VBZ2FzVllCV2dDQndBQUFBS0FRQkFxc1ZZCkJXZ0NCd0FBQUFv
QkFHRHF4VmdGYUFJSEFBQUFDd0VBSUVxeFZnRmFBSUhBQUFBQUZRWUZFUU9IOUU3TkNrdmNvWlE2
dzlTYkZ4OEEKZ0FBQUFBZ0I3RjBCR2dDQndBQUFBQW9CQUlIc1hRRmFBSUhBQUFBQUNnRUFRTHNY
UUZhQUlIQUFBQUFLQVFCZyt4ZEFWb0FnY0FBQQpBQW9CQUNCT3hkQVZvQWdjQUFBQUZRWUZFUU9I
OUU3TkNrdmNvWlE2dzlTYkZ4OEFnQUFBQVU4bHVDQWdLVi8vK0N1QUJ4RVJBSVNsCkN1TU1BQnhC
aHdxUUFBbGZnT0FBSkxnQUZKSWlRbXlHUm1ERGdBVjJ6YkcvVXF1NFlkeTMzMzMzMzMzMzMzMzMz
MzMzMzMzMzMzMzMKMzMzMzMzMzMzMzMzMzMzLzRmK0hDQUFVWWdqY2tTV0c1N09FMS93REJPZGpn
VUFBSVRJQUFnK0NBQUNEOEFBSU1lQUJ2bTZZQUFnTQplVEFBQ0RxK2xnQUNBMEFBSU83RUFHa2xv
QUFRRWRhQUFJTG4vblN3QUJBVEFBRUY1aFMxMTExMTExMTExMTExMTExMTExMTExMTExCjExMTEx
MTExMTExMTExMTEweVZMWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhU
SlV0ZGRkZGRkZGRkZGQKZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkTWxTMTExMTExMTEx
MTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTEweQpWTFhYWFhYWFhYWFhYWFhYWFhYWFhY
WFhYWFhYWFhYWFhYWFhYWFhYWFhYVEpnQUFBU0FsQUlHNElDQXRYLy80SW9vQUFoU2VPQUFKCno4
Y0FBVEhyNzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Ny84UC9CWVFCd0FD
d0FvRUZVeitJQUFJUzRBQWcKOVJBQUJCK0FBRUdQQndBQkFhQUFFSGRpRGdBQ0EwQUFJTzdFSEFB
RUJNQUFRWG1JT0FBSUNZQUFndk1LV3V1dXV1dXV1dXV1dXV1dQp1dXV1dXV1dXV1dXV1dXV1dXV1
dXV1dXV1dW1TcGE2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NlpLbHJy
CnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnBrcVd1dXV1dXV1dXV1dXV1
dXV1dXV1dXV1dXV1dXV1dXV1dXUKdXV1dXV1dXVtU3BhNjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2
NjY2NjY2NjY2NjY2NjY2NjZaTUFBQUVoSlFCQXJnZ0lDMWYvL2dpaQpnQUNGSjQ0QUFuUHh3QUJN
ZXZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2L3cvOEZoQUhBQUxBQ2dR
VlRQCjRnQUFoTGdBQ0QxRUFBRUg0QUFRWThIQUFFQm9BQVFkMklPQUFJRFFBQWc3c1FjQUFRRXdB
QkJlWWc0QUFnSmdBQ0M4d3BhNjY2NjYKNjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2
NjY2WktscnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycgpycnJycGtxV3V1dXV1
dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1bVNwYTY2NjY2NjY2NjY2NjY2NjY2
NjY2NjY2CjY2NjY2NjY2NjY2NjY2NjY2NlpLbHJycnJycnJycnJycnJycnJycnJycnJycnJycnJy
cnJycnJycnJycnJycGt3QUFBQVNFbEFHRHUKQ0FnTFYvLytDS0tBQUlVbmpnQUNjL0hBQUV4Nisr
KysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysvL0Qvd1dFQQpjQUFzQUtCQlZN
L2lBQUNFdUFBSVBVUUFBUWZnQUJCandjQUFRR2dBQkIzWWc0QUFnTkFBQ0R1eEJ3QUJBVEFBRUY1
aURnQUNBbUFBCklMekNscnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJw
a3FXdXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXUKdXV1dXV1dXV1dXV1dXV1bVNwYTY2NjY2NjY2
NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2WktscnJycnJycnJycnJycgpycnJycnJy
cnJycnJycnJycnJycnJycnJycnJycGtxV3V1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1
dXV1dXV1dXV1bVRBCkFBQUJkeVVBSUV1Q0FnTFYvLytDS0tBQUlVbmpnQUNjL0hBQUV4NisrKysr
KysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysKKysrLy9EL3dXRUFjQUFzQUtCQlZNL2lB
QUNFdUFBSVBVUUFBUWZnQUJCandjQUFRR2dBQkIzWWc0QUFnTkFBQ0R1eEJ3QUJBVEFBRQpGNWlE
Z0FDQW1BQUlMekNscnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJwa3FX
dXV1dXV1dXV1dXV1dXV1CnV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1bVNwYTY2NjY2NjY2NjY2
NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2WktscnIKcnJycnJycnJycnJycnJycnJycnJy
cnJycnJycnJycnJycnJycnJycGtoYkFBUm1Sa1prWkVaR1JmK0FBYkl6QVF0S0Y4WllML0NXawpB
TGdBVjB5TmlmSWRIWVBBQXBOR2tOdXBGWncxTFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhY
WFhYWFhYWFhYWFhDeklBQWpJCmpNak1pTWlNeS8vd0FPb1FWdXlJOHJiak4zM2dIZUFCcGsrVGZP
ZmNBSjVxYVhmK3R3QUFBQlVHQlJFRGgvUk96UXBMM0tHVU9zUFUKbXhjZkFJQUFBQUFJSWVFSkFL
VUFRT0FBQUFBS0lRQ0I0UWtBdFFCQTRBQUFBQW9oQUVDNFFrQXRRQkE0QUFBQUNpRUFZUGhDUUMx
QQpFRGdBQUFBTUlRQWdUaENRQzFBTmp3VndBQUFBRlFZRkVRT0g5RTdOQ2t2Y29aUTZ3OVNiRng4
QWdBQUFBQWdCcUlGZ0VhQUlIQUFBCkFBb0JBSUdvZ1dBVm9BZ2NBQUFBQ2dFQVFLb2dXQVZvQWdj
QUFBQUtBUUJnNmlCWUJXZ0NCd0FBQUFzQkFDQktpQllCV2dDQndBQUEKQUJVR0JSRURoL1JPelFw
TDNLR1VPc1BVbXhjZkFJQUFBQUFJSWVJUkFLVUFRT0FBQUFBS0lRQ0I0aEVBdFFCQTRBQUFBQW9o
QUVDNApoRUF0UUJBNEFBQUFDaUVBWVBpRVFDMUFFRGdBQUFBTUlRQWdUaUVRQzFBTmp3VndBQUFB
RlFZRkVRT0g5RTdOQ2t2Y29aUTZ3OVNiCkZ4OEFnQUFBQUFnQnFNTmdFYUFJSEFBQUFBb0JBSUdv
dzJBVm9BZ2NBQUFBQ2dFQVFLb3cyQVZvQWdjQUFBQUtBUUJnNmpEWUJXZ0MKQndBQUFBc0JBQ0JL
akRZQldnQ0J3QUFBQUJVR0JSRURoL1JPelFwTDNLR1VPc1BVbXhjZkFJQUFBQUFJSWVNWkFLVUFR
T0FBQUFBSwpJUUNCNHhrQXRRQkE0QUFBQUFvaEFFQzR4a0F0UUJBNEFBQUFDaUVBWVBqR1FDMUFF
RGdBQUFBTUlRQWdUakdRQzFBTmp3VndBQUFBCkZRWUZFUU9IOUU3TkNrdmNvWlE2dzlTYkZ4OEFn
QUFBQUFnQnFRVmdFYUFJSEFBQUFBb0JBSUdwQldBVm9BZ2NBQUFBQ2dFQVFLcEIKV0FWb0FnY0FB
QUFLQVFCZzZrRllCV2dDQndBQUFBc0JBQ0JLa0ZZQldnQ0J3QUFBQUJVR0JSRURoL1JPelFwTDNL
R1VPc1BVbXhjZgpBSUFBQUFBSUllUWhBS1VBUU9BQUFBQUtJUUNCNUNFQXRRQkE0QUFBQUFvaEFF
QzVDRUF0UUJBNEFBQUFDaUVBWVBrSVFDMUFFRGdBCkFBQU1JUUFnVGtJUUMxQU5qd1Z3QUFBQUZR
WUZFUU9IOUU3TkNrdmNvWlE2dzlTYkZ4OEFnQUFBQUFnQnFVZGdFYUFJSEFBQUFBb0IKQUlHcFIy
QVZvQWdjQUFBQUNnRUFRS3BSMkFWb0FnY0FBQUFLQVFCZzZsSFlCV2dDQndBQUFBc0JBQ0JLbEhZ
QldnQ0J3QUFBQUJVRwpCUkVEaC9ST3pRcEwzS0dVT3NQVW14Y2ZBSUFBQUFBSUllVXBBS1VBUU9B
QUFBQUtJUUNCNVNrQXRRQkE0QUFBQUFvaEFFQzVTa0F0ClFCQTRBQUFBQ2lFQVlQbEtRQzFBRURn
QUFBQU1JUUFnVGxLUUMxQU5qd1Z3QUFBQUZRWUZFUU9IOUU3TkNrdmNvWlE2dzlTYkZ4OEEKZ0FB
QUFBZ0JxWWxnRWFBSUhBQUFBQW9CQUlHcGlXQVZvQWdjQUFBQUNnRUFRS3BpV0FWb0FnY0FBQUFL
QVFCZzZtSllCV2dDQndBQQpBQXNCQUNCS21KWUJXZ0NCd0FBQUFCVUdCUkVEaC9ST3pRcEwzS0dV
T3NQVW14Y2ZBSUFBQUFBSUllWXhBS1VBUU9BQUFBQUtJUUNCCjVqRUF0UUJBNEFBQUFBb2hBRUM1
akVBdFFCQTRBQUFBQ2lFQVlQbU1RQzFBRURnQUFBQU1JUUFnVG1NUUMxQU5qd1Z3QUFBQUZRWUYK
RVFPSDlFN05Da3Zjb1pRNnc5U2JGeDhBZ0FBQUFBZ0JxY3RnRWFBSUhBQUFBQW9CQUlHcHkyQVZv
QWdjQUFBQUNnRUFRS3B5MkFWbwpBZ2NBQUFBS0FRQmc2bkxZQldnQ0J3QUFBQXNCQUNCS25MWUJX
Z0NCd0FBQUFCVUdCUkVEaC9ST3pRcEwzS0dVT3NQVW14Y2ZBSUFBCkFBQUlJZWM1QUtVQVFPQUFB
QUFLSVFDQjV6a0F0UUJBNEFBQUFBb2hBRUM1emtBdFFCQTRBQUFBQ2lFQVlQbk9RQzFBRURnQUFB
QU0KSVFBZ1RuT1FDMUFOandWd0FBQUFGUVlGRVFPSDlFN05Da3Zjb1pRNnc5U2JGeDhBZ0FBQUFB
Z0JxZzFnRWFBSUhBQUFBQW9CQUlHcQpEV0FWb0FnY0FBQUFDZ0VBUUtxRFdBVm9BZ2NBQUFBS0FR
Qmc2b05ZQldnQ0J3QUFBQXNCQUNCS29OWUJXZ0NCd0FBQUFCVUdCUkVECmgvUk96UXBMM0tHVU9z
UFVteGNmQUlBQUFBQUlJZWhCQUtVQVFPQUFBQUFLSVFDQjZFRUF0UUJBNEFBQUFBb2hBRUM2RUVB
dFFCQTQKQUFBQUNpRUFZUG9RUUMxQUVEZ0FBQUFNSVFBZ1RvUVFDMUFOandWd0FBQUFGUVlGRVFP
SDlFN05Da3Zjb1pRNnc5U2JGeDhBZ0FBQQpBQWdCcWs5Z0VhQUlIQUFBQUFvQkFJR3FUMkFWb0Fn
Y0FBQUFDZ0VBUUtxVDJBVm9BZ2NBQUFBS0FRQmc2cFBZQldnQ0J3QUFBQXNCCkFDQktwUFlCV2dD
QndBQUFBQlVHQlJFRGgvUk96UXBMM0tHVU9zUFVteGNmQUlBQUFBQUlJZWxKQUtVQVFPQUFBQUFL
SVFDQjZVa0EKdFFCQTRBQUFBQW9oQUVDNlVrQXRRQkE0QUFBQUNpRUFZUHBTUUMxQUVEZ0FBQUFN
SVFBZ1RwU1FDMUFOandWd0FBQUFGUVlGRVFPSAo5RTdOQ2t2Y29aUTZ3OVNiRng4QWdBQUFBQWdC
cXBGZ0VhQUlIQUFBQUFvQkFJR3FrV0FWb0FnY0FBQUFDZ0VBUUtxa1dBVm9BZ2NBCkFBQUtBUUJn
NnFSWUJXZ0NCd0FBQUFzQkFDQktxUllCV2dDQndBQUFBQlVHQlJFRGgvUk96UXBMM0tHVU9zUFVt
eGNmQUlBQUFBQUkKSWVwUkFLVUFRT0FBQUFBS0lRQ0I2bEVBdFFCQTRBQUFBQW9oQUVDNmxFQXRR
QkE0QUFBQUNpRUFZUHFVUUMxQUVEZ0FBQUFNSVFBZwpUcVVRQzFBTmp3VndBQUFBRlFZRkVRT0g5
RTdOQ2t2Y29aUTZ3OVNiRng4QWdBQUFBQWdCcXROZ0VhQUlIQUFBQUFvQkFJR3EwMkFWCm9BZ2NB
QUFBQ2dFQVFLcTAyQVZvQWdjQUFBQUtBUUJnNnJUWUJXZ0NCd0FBQUFzQkFDQktyVFlCV2dDQndB
QUFBQlVHQlJFRGgvUk8KelFwTDNLR1VPc1BVbXhjZkFJQUFBQUFJSWV0WkFLVUFRT0FBQUFBS0lR
Q0I2MWtBdFFCQTRBQUFBQW9oQUVDNjFrQXRRQkE0QUFBQQpDaUVBWVByV1FDMUFFRGdBQUFBTUlR
QWdUcldRQzFBTmp3VndBQUFBRlFZRkVRT0g5RTdOQ2t2Y29aUTZ3OVNiRng4QWdBQUFBQWdCCnF4
VmdFYUFJSEFBQUFBb0JBSUdyRldBVm9BZ2NBQUFBQ2dFQVFLckZXQVZvQWdjQUFBQUtBUUJnNnNW
WUJXZ0NCd0FBQUFzQkFDQksKc1ZZQldnQ0J3QUFBQUJVR0JSRURoL1JPelFwTDNLR1VPc1BVbXhj
ZkFJQUFBQUFJQWV4ZEFSb0FnY0FBQUFBS0FRQ0I3RjBCV2dDQgp3QUFBQUFvQkFFQzdGMEJXZ0NC
d0FBQUFDZ0VBWVBzWFFGYUFJSEFBQUFBS0FRQWdUc1hRRmFBSUhBQUFBQlVHQlJFRGgvUk96UXBM
CjNLR1VPc1BVbXhjZkFJQUFBQUZQSmJnZ0lDbGYvL2dyZ0FjUkVRQ0VwUXJqREFBY1FZY0trQUFK
WDREZ0FDUzRBQlNTSWtKc2hrWmcKdzRBRmRzMnh2MUtydUdIY3Q5OTk5OTk5OTk5OTk5OTk5OTk5
OTk5OTk5OTk5OTk5OTk5OTk5OTkvK0gvaHdnQUZHSUkzSkVsaHVlegpoTmY4QXdUblk0RkFBQ0V5
QUFJUGdnQUFnL0FBQ0RIZ0FiNXVtQUFJREhrd0FBZzZ2cFlBQWdOQUFDRHV4QUJwSmFBQUVCSFdn
QUNDCjUvNTBzQUFRRXdBQkJlWVV0ZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRk
ZGRkZGRNbFMxMTExMTExMTExMTExMTEKMTExMTExMTExMTExMTExMTExMTExMTExMTEweVZMWFhY
WFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhUSlV0ZApkZGRkZGRkZGRkZGRk
ZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkTWxTMTExMTExMTExMTExMTExMTExMTExMTExMTEx
MTExMTExCjExMTExMTExMHlZQUFBRWdKUUNCdUNBZ0xWLy8rQ0tLQUFJVW5qZ0FDYy9IQUFFeDYr
KysrKysrKysrKysrKysrKysrKysrKysrKysKKysrKysrKysrKysrKy8vRC93V0VBY0FBc0FLQkJW
TS9pQUFDRXVBQUlQVVFBQVFmZ0FCQmp3Y0FBUUdnQUJCM1lnNEFBZ05BQUNEdQp4QndBQkFUQUFF
RjVpRGdBQ0FtQUFJTHpDbHJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJy
cGtxV3V1dXV1CnV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dW1TcGE2NjY2NjY2
NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjYKNjY2NjZaS2xycnJycnJycnJycnJycnJycnJy
cnJycnJycnJycnJycnJycnJycnJycnBrcVd1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dQp1dXV1dXV1
dXV1dXV1dXV1dXVtVEFBQUJJU1VBUUs0SUNBdFgvLzRJb29BQWhTZU9BQUp6OGNBQVRIcjc3Nzc3
Nzc3Nzc3Nzc3Nzc3Cjc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3LzhQL0JZUUJ3QUN3QW9FRlV6K0lB
QUlTNEFBZzlSQUFCQitBQUVHUEJ3QUJBYUFBRUhkaUQKZ0FDQTBBQUlPN0VIQUFFQk1BQVFYbUlP
QUFJQ1lBQWd2TUtXdXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dQp1bVNw
YTY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2WktscnJycnJycnJycnJy
cnJycnJycnJycnJycnJyCnJycnJycnJycnJycnJycGtxV3V1dXV1dXV1dXV1dXV1dXV1dXV1dXV1
dXV1dXV1dXV1dXV1dXV1dXV1bVNwYTY2NjY2NjY2NjY2NjYKNjY2NjY2NjY2NjY2NjY2NjY2NjY2
NjY2NjY2NlpNQUFBQUVoSlFCZzdnZ0lDMWYvL2dpaWdBQ0ZKNDRBQW5QeHdBQk1ldnZ2dnZ2dgp2
dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2L3cvOEZoQUhBQUxBQ2dRVlRQNGdBQWhM
Z0FDRDFFQUFFSDRBQVFZOEhBCkFFQm9BQVFkMklPQUFJRFFBQWc3c1FjQUFRRXdBQkJlWWc0QUFn
SmdBQ0M4d3BhNjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjYKNjY2NjY2NjY2NjY2WktscnJy
cnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJwa3FXdXV1dXV1dXV1dXV1dXV1
dQp1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1bVNwYTY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2
NjY2NjY2NjY2NjY2NjY2WktscnJyCnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJy
cnJycGt3QUFBQVhjbEFDQkxnZ0lDMWYvL2dpaWdBQ0ZKNDRBQW5QeHcKQUJNZXZ2dnZ2dnZ2dnZ2
dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2L3cvOEZoQUhBQUxBQ2dRVlRQNGdBQWhMZ0FD
RDFFQQpBRUg0QUFRWThIQUFFQm9BQVFkMklPQUFJRFFBQWc3c1FjQUFRRXdBQkJlWWc0QUFnSmdB
Q0M4d3BhNjY2NjY2NjY2NjY2NjY2NjY2CjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2WktscnJycnJy
cnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJwa3FXdXV1dXUKdXV1dXV1dXV1dXV1
dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1bVNwYTY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2
NjY2NjY2Ngo2NjY2NlpJV3dBRVprWkdaR1JHUmtYL2dBR3lNd0VMU2hmR1dDL3dscEFDNEFGZE1q
WW55SFIyRHdBS1RScERicVJXY05TMTExMTExCjExMTExMTExMTExMTExMTExMTExMTExMTExMTEx
MTExMTF3c3lBQUl5SXpJeklqSWpNdi84QURxRUZic2lQSzI0emQ5NEIzZ0FhWlAKazN6bjNBQ2Vh
bWwzL3JjQUFBQVZCZ1VSQTRmMFRzMEtTOXlobERyRDFKc1hId0NBQUFBQUNDSGhDUUNsQUVEZ0FB
QUFDaUVBZ2VFSgpBTFVBUU9BQUFBQUtJUUJBdUVKQUxVQVFPQUFBQUFvaEFHRDRRa0F0UUJBNEFB
QUFEQ0VBSUU0UWtBdFFEWThGY0FBQUFCVUdCUkVECmgvUk96UXBMM0tHVU9zUFVteGNmQUlBQUFB
QUlBYWlCWUJHZ0NCd0FBQUFLQVFDQnFJRmdGYUFJSEFBQUFBb0JBRUNxSUZnRmFBSUgKQUFBQUNn
RUFZT29nV0FWb0FnY0FBQUFMQVFBZ1NvZ1dBVm9BZ2NBQUFBQVZCZ1VSQTRmMFRzMEtTOXlobERy
RDFKc1hId0NBQUFBQQpDQ0hpRVFDbEFFRGdBQUFBQ2lFQWdlSVJBTFVBUU9BQUFBQUtJUUJBdUlS
QUxVQVFPQUFBQUFvaEFHRDRoRUF0UUJBNEFBQUFEQ0VBCklFNGhFQXRRRFk4RmNBQUFBQlVHQlJF
RGgvUk96UXBMM0tHVU9zUFVteGNmQUlBQUFBQUlBYWpEWUJHZ0NCd0FBQUFLQVFDQnFNTmcKRmFB
SUhBQUFBQW9CQUVDcU1OZ0ZhQUlIQUFBQUNnRUFZT293MkFWb0FnY0FBQUFMQVFBZ1NvdzJBVm9B
Z2NBQUFBQVZCZ1VSQTRmMApUczBLUzl5aGxEckQxSnNYSHdDQUFBQUFDQ0hqR1FDbEFFRGdBQUFB
Q2lFQWdlTVpBTFVBUU9BQUFBQUtJUUJBdU1aQUxVQVFPQUFBCkFBb2hBR0Q0eGtBdFFCQTRBQUFB
RENFQUlFNHhrQXRRRFk4RmNBQUFBQlVHQlJFRGgvUk96UXBMM0tHVU9zUFVteGNmQUlBQUFBQUkK
QWFrRllCR2dDQndBQUFBS0FRQ0JxUVZnRmFBSUhBQUFBQW9CQUVDcVFWZ0ZhQUlIQUFBQUNnRUFZ
T3BCV0FWb0FnY0FBQUFMQVFBZwpTcEJXQVZvQWdjQUFBQUFWQmdVUkE0ZjBUczBLUzl5aGxEckQx
SnNYSHdDQUFBQUFDQ0hrSVFDbEFFRGdBQUFBQ2lFQWdlUWhBTFVBClFPQUFBQUFLSVFCQXVRaEFM
VUFRT0FBQUFBb2hBR0Q1Q0VBdFFCQTRBQUFBRENFQUlFNUNFQXRRRFk4RmNBQUFBQlVHQlJFRGgv
Uk8KelFwTDNLR1VPc1BVbXhjZkFJQUFBQUFJQWFsSFlCR2dDQndBQUFBS0FRQ0JxVWRnRmFBSUhB
QUFBQW9CQUVDcVVkZ0ZhQUlIQUFBQQpDZ0VBWU9wUjJBVm9BZ2NBQUFBTEFRQWdTcFIyQVZvQWdj
QUFBQUFWQmdVUkE0ZjBUczBLUzl5aGxEckQxSnNYSHdDQUFBQUFDQ0hsCktRQ2xBRURnQUFBQUNp
RUFnZVVwQUxVQVFPQUFBQUFLSVFCQXVVcEFMVUFRT0FBQUFBb2hBR0Q1U2tBdFFCQTRBQUFBRENF
QUlFNVMKa0F0UURZOEZjQUFBQUJVR0JSRURoL1JPelFwTDNLR1VPc1BVbXhjZkFJQUFBQUFJQWFt
SllCR2dDQndBQUFBS0FRQ0JxWWxnRmFBSQpIQUFBQUFvQkFFQ3FZbGdGYUFJSEFBQUFDZ0VBWU9w
aVdBVm9BZ2NBQUFBTEFRQWdTcGlXQVZvQWdjQUFBQUFWQmdVUkE0ZjBUczBLClM5eWhsRHJEMUpz
WEh3Q0FBQUFBQ0NIbU1RQ2xBRURnQUFBQUNpRUFnZVl4QUxVQVFPQUFBQUFLSVFCQXVZeEFMVUFR
T0FBQUFBb2gKQUdENWpFQXRRQkE0QUFBQURDRUFJRTVqRUF0UURZOEZjQUFBQUJVR0JSRURoL1JP
elFwTDNLR1VPc1BVbXhjZkFJQUFBQUFJQWFuTApZQkdnQ0J3QUFBQUtBUUNCcWN0Z0ZhQUlIQUFB
QUFvQkFFQ3FjdGdGYUFJSEFBQUFDZ0VBWU9weTJBVm9BZ2NBQUFBTEFRQWdTcHkyCkFWb0FnY0FB
QUFBVkJnVVJBNGYwVHMwS1M5eWhsRHJEMUpzWEh3Q0FBQUFBQ0NIbk9RQ2xBRURnQUFBQUNpRUFn
ZWM1QUxVQVFPQUEKQUFBS0lRQkF1YzVBTFVBUU9BQUFBQW9oQUdENXprQXRRQkE0QUFBQURDRUFJ
RTV6a0F0UURZOEZjQUFBQUJVR0JSRURoL1JPelFwTAozS0dVT3NQVW14Y2ZBSUFBQUFBSUFhb05Z
QkdnQ0J3QUFBQUtBUUNCcWcxZ0ZhQUlIQUFBQUFvQkFFQ3FnMWdGYUFJSEFBQUFDZ0VBCllPcURX
QVZvQWdjQUFBQUxBUUFnU3FEV0FWb0FnY0FBQUFBVkJnVVJBNGYwVHMwS1M5eWhsRHJEMUpzWEh3
Q0FBQUFBQ0NIb1FRQ2wKQUVEZ0FBQUFDaUVBZ2VoQkFMVUFRT0FBQUFBS0lRQkF1aEJBTFVBUU9B
QUFBQW9oQUdENkVFQXRRQkE0QUFBQURDRUFJRTZFRUF0UQpEWThGY0FBQUFCVUdCUkVEaC9ST3pR
cEwzS0dVT3NQVW14Y2ZBSUFBQUFBSUFhcFBZQkdnQ0J3QUFBQUtBUUNCcWs5Z0ZhQUlIQUFBCkFB
b0JBRUNxazlnRmFBSUhBQUFBQ2dFQVlPcVQyQVZvQWdjQUFBQUxBUUFnU3FUMkFWb0FnY0FBQUFB
VkJnVVJBNGYwVHMwS1M5eWgKbERyRDFKc1hId0NBQUFBQUNDSHBTUUNsQUVEZ0FBQUFDaUVBZ2Vs
SkFMVUFRT0FBQUFBS0lRQkF1bEpBTFVBUU9BQUFBQW9oQUdENgpVa0F0UUJBNEFBQUFEQ0VBSUU2
VWtBdFFEWThGY0FBQUFCVUdCUkVEaC9ST3pRcEwzS0dVT3NQVW14Y2ZBSUFBQUFBSUFhcVJZQkdn
CkNCd0FBQUFLQVFDQnFwRmdGYUFJSEFBQUFBb0JBRUNxcEZnRmFBSUhBQUFBQ2dFQVlPcWtXQVZv
QWdjQUFBQUxBUUFnU3FrV0FWb0EKZ2NBQUFBQVZCZ1VSQTRmMFRzMEtTOXlobERyRDFKc1hId0NB
QUFBQUNDSHFVUUNsQUVEZ0FBQUFDaUVBZ2VwUkFMVUFRT0FBQUFBSwpJUUJBdXBSQUxVQVFPQUFB
QUFvaEFHRDZsRUF0UUJBNEFBQUFEQ0VBSUU2bEVBdFFEWThGY0FBQUFCVUdCUkVEaC9ST3pRcEwz
S0dVCk9zUFVteGNmQUlBQUFBQUlBYXJUWUJHZ0NCd0FBQUFLQVFDQnF0TmdGYUFJSEFBQUFBb0JB
RUNxdE5nRmFBSUhBQUFBQ2dFQVlPcTAKMkFWb0FnY0FBQUFMQVFBZ1NxMDJBVm9BZ2NBQUFBQVZC
Z1VSQTRmMFRzMEtTOXlobERyRDFKc1hId0NBQUFBQUNDSHJXUUNsQUVEZwpBQUFBQ2lFQWdldFpB
TFVBUU9BQUFBQUtJUUJBdXRaQUxVQVFPQUFBQUFvaEFHRDYxa0F0UUJBNEFBQUFEQ0VBSUU2MWtB
dFFEWThGCmNBQUFBQlVHQlJFRGgvUk96UXBMM0tHVU9zUFVteGNmQUlBQUFBQUlBYXNWWUJHZ0NC
d0FBQUFLQVFDQnF4VmdGYUFJSEFBQUFBb0IKQUVDcXhWZ0ZhQUlIQUFBQUNnRUFZT3JGV0FWb0Fn
Y0FBQUFMQVFBZ1NyRldBVm9BZ2NBQUFBQVZCZ1VSQTRmMFRzMEtTOXlobERyRAoxSnNYSHdDQUFB
QUFDQUhzWFFFYUFJSEFBQUFBQ2dFQWdleGRBVm9BZ2NBQUFBQUtBUUJBdXhkQVZvQWdjQUFBQUFv
QkFHRDdGMEJXCmdDQndBQUFBQ2dFQUlFN0YwQldnQ0J3QUFBQVZCZ1VSQTRmMFRzMEtTOXlobERy
RDFKc1hId0NBQUFBQlR5VzRJQ0FwWC8vNEs0QUgKRVJFQWhLVUs0d3dBSEVHSENwQUFDVitBNEFB
a3VBQVVraUpDYklaR1lNT0FCWGJOc2I5U3E3aGgzTGZmZmZmZmZmZmZmZmZmZmZmZgpmZmZmZmZm
ZmZmZmZmZmZmZmZmZmZmL2gvNGNJQUJSaUNOeVJKWWJuczRUWC9BTUU1Mk9CUUFBaE1nQUNENElB
QUlQd0FBZ3g0QUcrCmJwZ0FDQXg1TUFBSU9yNldBQUlEUUFBZzdzUUFhU1dnQUJBUjFvQUFndWYr
ZExBQUVCTUFBUVhtRkxYWFhYWFhYWFhYWFhYWFhYWFgKWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhU
SlV0ZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRNbFMxMTExMQoxMTEx
MTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTEweVZMWFhYWFhYWFhYWFhYWFhYWFhYWFhY
WFhYWFhYWFhYWFhYWFhYClhYWFhYVEpVdGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRk
ZGRkZGRkZGRkTW1BQUFCSUNVQWdiZ2dJQzFmLy9naWlnQUMKRko0NEFBblB4d0FCTWV2dnZ2dnZ2
dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2di93LzhGaEFIQUFMQUNnUVZUUDRnQQpB
aExnQUNEMUVBQUVINEFBUVk4SEFBRUJvQUFRZDJJT0FBSURRQUFnN3NRY0FBUUV3QUJCZVlnNEFB
Z0pnQUNDOHdwYTY2NjY2NjY2CjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NlpLbHJy
cnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnIKcnBrcVd1dXV1dXV1dXV1dXV1
dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dW1TcGE2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2
Ngo2NjY2NjY2NjY2NjY2NjZaS2xycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJy
cnJycnBrd0FBQVNFbEFFQ3VDQWdMClYvLytDS0tBQUlVbmpnQUNjL0hBQUV4NisrKysrKysrKysr
KysrKysrKysrKysrKysrKysrKysrKysrKysrKysvL0Qvd1dFQWNBQXMKQUtCQlZNL2lBQUNFdUFB
SVBVUUFBUWZnQUJCandjQUFRR2dBQkIzWWc0QUFnTkFBQ0R1eEJ3QUJBVEFBRUY1aURnQUNBbUFB
SUx6QwpscnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJwa3FXdXV1dXV1
dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1CnV1dXV1dXV1dXV1bVNwYTY2NjY2NjY2NjY2NjY2NjY2
NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2WktscnJycnJycnJycnJycnJycnIKcnJycnJycnJycnJy
cnJycnJycnJycnJycGtxV3V1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1
bVRBQUFBQgpJU1VBWU80SUNBdFgvLzRJb29BQWhTZU9BQUp6OGNBQVRIcjc3Nzc3Nzc3Nzc3Nzc3
Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3NzcvCjhQL0JZUUJ3QUN3QW9FRlV6K0lBQUlTNEFBZzlS
QUFCQitBQUVHUEJ3QUJBYUFBRUhkaURnQUNBMEFBSU83RUhBQUVCTUFBUVhtSU8KQUFJQ1lBQWd2
TUtXdXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXVtU3BhNjY2NjY2NjY2
NjY2NjY2NjY2Ngo2NjY2NjY2NjY2NjY2NjY2NjY2NjY2WktscnJycnJycnJycnJycnJycnJycnJy
cnJycnJycnJycnJycnJycnJycnJwa3FXdXV1dXV1CnV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1
dXV1dXV1dXV1bVNwYTY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjYKNjY2NlpN
QUFBQUYzSlFBZ1M0SUNBdFgvLzRJb29BQWhTZU9BQUp6OGNBQVRIcjc3Nzc3Nzc3Nzc3Nzc3Nzc3
Nzc3Nzc3Nzc3Nzc3Nwo3Nzc3Nzc3Nzc3LzhQL0JZUUJ3QUN3QW9FRlV6K0lBQUlTNEFBZzlSQUFC
QitBQUVHUEJ3QUJBYUFBRUhkaURnQUNBMEFBSU83RUhBCkFFQk1BQVFYbUlPQUFJQ1lBQWd2TUtX
dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXVtU3BhNjY2NjY2NjYKNjY2
NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2WktscnJycnJycnJycnJycnJycnJycnJycnJy
cnJycnJycnJycnJycnJycgpycGtxV3V1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1
dXV1dXV1bVNGc0FCR1pHUm1Sa1JrWkYvNEFCc2pNQkMwb1h4CmxndjhKYVFBdUFCWFRJMko4aDBk
ZzhBQ2swYVEyNmtWbkRVdGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGMK
TE1nQUNNaU15TXlJeUl6TC8vQUE2aEJXN0lqeXR1TTNmZUFkNEFHbVQ1Tjg1OXdBbm1wcGQvNjNB
QUFBRlFZRkVRT0g5RTdOQ2t2YwpvWlE2dzlTYkZ4OEFnQUFBQUFnaDRRa0FwUUJBNEFBQUFBb2hB
SUhoQ1FDMUFFRGdBQUFBQ2lFQVFMaENRQzFBRURnQUFBQUtJUUJnCitFSkFMVUFRT0FBQUFBd2hB
Q0JPRUpBTFVBMlBCWEFBQUFBVkJnVVJBNGYwVHMwS1M5eWhsRHJEMUpzWEh3Q0FBQUFBQ0FHb2dX
QVIKb0FnY0FBQUFDZ0VBZ2FpQllCV2dDQndBQUFBS0FRQkFxaUJZQldnQ0J3QUFBQW9CQUdEcUlG
Z0ZhQUlIQUFBQUN3RUFJRXFJRmdGYQpBSUhBQUFBQUZRWUZFUU9IOUU3TkNrdmNvWlE2dzlTYkZ4
OEFnQUFBQUFnaDRoRUFwUUJBNEFBQUFBb2hBSUhpRVFDMUFFRGdBQUFBCkNpRUFRTGlFUUMxQUVE
Z0FBQUFLSVFCZytJUkFMVUFRT0FBQUFBd2hBQ0JPSVJBTFVBMlBCWEFBQUFBVkJnVVJBNGYwVHMw
S1M5eWgKbERyRDFKc1hId0NBQUFBQUNBR293MkFSb0FnY0FBQUFDZ0VBZ2FqRFlCV2dDQndBQUFB
S0FRQkFxakRZQldnQ0J3QUFBQW9CQUdEcQpNTmdGYUFJSEFBQUFDd0VBSUVxTU5nRmFBSUhBQUFB
QUZRWUZFUU9IOUU3TkNrdmNvWlE2dzlTYkZ4OEFnQUFBQUFnaDR4a0FwUUJBCjRBQUFBQW9oQUlI
akdRQzFBRURnQUFBQUNpRUFRTGpHUUMxQUVEZ0FBQUFLSVFCZytNWkFMVUFRT0FBQUFBd2hBQ0JP
TVpBTFVBMlAKQlhBQUFBQVZCZ1VSQTRmMFRzMEtTOXlobERyRDFKc1hId0NBQUFBQUNBR3BCV0FS
b0FnY0FBQUFDZ0VBZ2FrRllCV2dDQndBQUFBSwpBUUJBcWtGWUJXZ0NCd0FBQUFvQkFHRHFRVmdG
YUFJSEFBQUFDd0VBSUVxUVZnRmFBSUhBQUFBQUZRWUZFUU9IOUU3TkNrdmNvWlE2Cnc5U2JGeDhB
Z0FBQUFBZ2g1Q0VBcFFCQTRBQUFBQW9oQUlIa0lRQzFBRURnQUFBQUNpRUFRTGtJUUMxQUVEZ0FB
QUFLSVFCZytRaEEKTFVBUU9BQUFBQXdoQUNCT1FoQUxVQTJQQlhBQUFBQVZCZ1VSQTRmMFRzMEtT
OXlobERyRDFKc1hId0NBQUFBQUNBR3BSMkFSb0FnYwpBQUFBQ2dFQWdhbEhZQldnQ0J3QUFBQUtB
UUJBcWxIWUJXZ0NCd0FBQUFvQkFHRHFVZGdGYUFJSEFBQUFDd0VBSUVxVWRnRmFBSUhBCkFBQUFG
UVlGRVFPSDlFN05Da3Zjb1pRNnc5U2JGeDhBZ0FBQUFBZ2g1U2tBcFFCQTRBQUFBQW9oQUlIbEtR
QzFBRURnQUFBQUNpRUEKUUxsS1FDMUFFRGdBQUFBS0lRQmcrVXBBTFVBUU9BQUFBQXdoQUNCT1Vw
QUxVQTJQQlhBQUFBQVZCZ1VSQTRmMFRzMEtTOXlobERyRAoxSnNYSHdDQUFBQUFDQUdwaVdBUm9B
Z2NBQUFBQ2dFQWdhbUpZQldnQ0J3QUFBQUtBUUJBcW1KWUJXZ0NCd0FBQUFvQkFHRHFZbGdGCmFB
SUhBQUFBQ3dFQUlFcVlsZ0ZhQUlIQUFBQUFGUVlGRVFPSDlFN05Da3Zjb1pRNnc5U2JGeDhBZ0FB
QUFBZ2g1akVBcFFCQTRBQUEKQUFvaEFJSG1NUUMxQUVEZ0FBQUFDaUVBUUxtTVFDMUFFRGdBQUFB
S0lRQmcrWXhBTFVBUU9BQUFBQXdoQUNCT1l4QUxVQTJQQlhBQQpBQUFWQmdVUkE0ZjBUczBLUzl5
aGxEckQxSnNYSHdDQUFBQUFDQUdweTJBUm9BZ2NBQUFBQ2dFQWdhbkxZQldnQ0J3QUFBQUtBUUJB
CnFuTFlCV2dDQndBQUFBb0JBR0RxY3RnRmFBSUhBQUFBQ3dFQUlFcWN0Z0ZhQUlIQUFBQUFGUVlG
RVFPSDlFN05Da3Zjb1pRNnc5U2IKRng4QWdBQUFBQWdoNXprQXBRQkE0QUFBQUFvaEFJSG5PUUMx
QUVEZ0FBQUFDaUVBUUxuT1FDMUFFRGdBQUFBS0lRQmcrYzVBTFVBUQpPQUFBQUF3aEFDQk9jNUFM
VUEyUEJYQUFBQUFWQmdVUkE0ZjBUczBLUzl5aGxEckQxSnNYSHdDQUFBQUFDQUdxRFdBUm9BZ2NB
QUFBCkNnRUFnYW9OWUJXZ0NCd0FBQUFLQVFCQXFvTllCV2dDQndBQUFBb0JBR0RxZzFnRmFBSUhB
QUFBQ3dFQUlFcWcxZ0ZhQUlIQUFBQUEKRlFZRkVRT0g5RTdOQ2t2Y29aUTZ3OVNiRng4QWdBQUFB
QWdoNkVFQXBRQkE0QUFBQUFvaEFJSG9RUUMxQUVEZ0FBQUFDaUVBUUxvUQpRQzFBRURnQUFBQUtJ
UUJnK2hCQUxVQVFPQUFBQUF3aEFDQk9oQkFMVUEyUEJYQUFBQUFWQmdVUkE0ZjBUczBLUzl5aGxE
ckQxSnNYCkh3Q0FBQUFBQ0FHcVQyQVJvQWdjQUFBQUNnRUFnYXBQWUJXZ0NCd0FBQUFLQVFCQXFw
UFlCV2dDQndBQUFBb0JBR0RxazlnRmFBSUgKQUFBQUN3RUFJRXFrOWdGYUFJSEFBQUFBRlFZRkVR
T0g5RTdOQ2t2Y29aUTZ3OVNiRng4QWdBQUFBQWdoNlVrQXBRQkE0QUFBQUFvaApBSUhwU1FDMUFF
RGdBQUFBQ2lFQVFMcFNRQzFBRURnQUFBQUtJUUJnK2xKQUxVQVFPQUFBQUF3aEFDQk9sSkFMVUEy
UEJYQUFBQUFWCkJnVVJBNGYwVHMwS1M5eWhsRHJEMUpzWEh3Q0FBQUFBQ0FHcWtXQVJvQWdjQUFB
QUNnRUFnYXFSWUJXZ0NCd0FBQUFLQVFCQXFxUlkKQldnQ0J3QUFBQW9CQUdEcXBGZ0ZhQUlIQUFB
QUN3RUFJRXFwRmdGYUFJSEFBQUFBRlFZRkVRT0g5RTdOQ2t2Y29aUTZ3OVNiRng4QQpnQUFBQUFn
aDZsRUFwUUJBNEFBQUFBb2hBSUhxVVFDMUFFRGdBQUFBQ2lFQVFMcVVRQzFBRURnQUFBQUtJUUJn
K3BSQUxVQVFPQUFBCkFBd2hBQ0JPcFJBTFVBMlBCWEFBQUFBVkJnVVJBNGYwVHMwS1M5eWhsRHJE
MUpzWEh3Q0FBQUFBQ0FHcTAyQVJvQWdjQUFBQUNnRUEKZ2FyVFlCV2dDQndBQUFBS0FRQkFxclRZ
QldnQ0J3QUFBQW9CQUdEcXROZ0ZhQUlIQUFBQUN3RUFJRXF0TmdGYUFJSEFBQUFBRlFZRgpFUU9I
OUU3TkNrdmNvWlE2dzlTYkZ4OEFnQUFBQUFnaDYxa0FwUUJBNEFBQUFBb2hBSUhyV1FDMUFFRGdB
QUFBQ2lFQVFMcldRQzFBCkVEZ0FBQUFLSVFCZyt0WkFMVUFRT0FBQUFBd2hBQ0JPdFpBTFVBMlBC
WEFBQUFBVkJnVVJBNGYwVHMwS1M5eWhsRHJEMUpzWEh3Q0EKQUFBQUNBR3JGV0FSb0FnY0FBQUFD
Z0VBZ2FzVllCV2dDQndBQUFBS0FRQkFxc1ZZQldnQ0J3QUFBQW9CQUdEcXhWZ0ZhQUlIQUFBQQpD
d0VBSUVxeFZnRmFBSUhBQUFBQUZRWUZFUU9IOUU3TkNrdmNvWlE2dzlTYkZ4OEFnQUFBQUFnQjdG
MEJHZ0NCd0FBQUFBb0JBSUhzClhRRmFBSUhBQUFBQUNnRUFRTHNYUUZhQUlIQUFBQUFLQVFCZyt4
ZEFWb0FnY0FBQUFBb0JBQ0JPeGRBVm9BZ2NBQUFBRlFZRkVRT0gKOUU3TkNrdmNvWlE2dzlTYkZ4
OEFnQUFBQVU4bHVDQWdLVi8vK0N1QUJ4RVJBSVNsQ3VNTUFCeEJod3FRQUFsZmdPQUFKTGdBRkpJ
aQpRbXlHUm1ERGdBVjJ6YkcvVXF1NFlkeTMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMz
MzMzMzMzMzMvNGYrSENBQVVZZ2pjCmtTV0c1N09FMS93REJPZGpnVUFBSVRJQUFnK0NBQUNEOEFB
SU1lQUJ2bTZZQUFnTWVUQUFDRHErbGdBQ0EwQUFJTzdFQUdrbG9BQVEKRWRhQUFJTG4vblN3QUJB
VEFBRUY1aFMxMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTB5VkxYWFhY
WFhYWApYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhUSlV0ZGRkZGRkZGRkZGRkZGRk
ZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkCmRkTWxTMTExMTExMTExMTExMTExMTExMTExMTExMTEx
MTExMTExMTExMTExMTEweVZMWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFgKWFhYWFhYWFhYWFhY
WFhYVEpnQUFBU0FsQUlHNElDQXRYLy80SW9vQUFoU2VPQUFKejhjQUFUSHI3Nzc3Nzc3Nzc3Nzc3
Nzc3Nzc3Nwo3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Ny84UC9CWVFCd0FDd0FvRUZVeitJQUFJUzRBQWc5
UkFBQkIrQUFFR1BCd0FCQWFBQUVIZGlEZ0FDCkEwQUFJTzdFSEFBRUJNQUFRWG1JT0FBSUNZQUFn
dk1LV3V1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1bVMKcGE2NjY2NjY2
NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NlpLbHJycnJycnJycnJycnJycnJycnJy
cnJycnJycnJycgpycnJycnJycnJycnBrcVd1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1
dXV1dXV1dXV1dW1TcGE2NjY2NjY2NjY2NjY2NjY2CjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjZa
TUFBQUVoSlFCQXJnZ0lDMWYvL2dpaWdBQ0ZKNDRBQW5QeHdBQk1ldnZ2dnZ2dnZ2dnYKdnZ2dnZ2
dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2L3cvOEZoQUhBQUxBQ2dRVlRQNGdBQWhMZ0FDRDFFQUFF
SDRBQVFZOEhBQUVCbwpBQVFkMklPQUFJRFFBQWc3c1FjQUFRRXdBQkJlWWc0QUFnSmdBQ0M4d3Bh
NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2CjY2NjY2NjY2WktscnJycnJycnJycnJy
cnJycnJycnJycnJycnJycnJycnJycnJycnJycnJwa3FXdXV1dXV1dXV1dXV1dXV1dXV1dXUKdXV1
dXV1dXV1dXV1dXV1dXV1dXV1bVNwYTY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2
NjY2NjY2WktscnJycnJycgpycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycGt3QUFB
QVNFbEFHRHVDQWdMVi8vK0NLS0FBSVVuamdBQ2MvSEFBRXg2CisrKysrKysrKysrKysrKysrKysr
KysrKysrKysrKysrKysrKysrKysvL0Qvd1dFQWNBQXNBS0JCVk0vaUFBQ0V1QUFJUFVRQUFRZmcK
QUJCandjQUFRR2dBQkIzWWc0QUFnTkFBQ0R1eEJ3QUJBVEFBRUY1aURnQUNBbUFBSUx6Q2xycnJy
cnJycnJycnJycnJycnJycnJycgpycnJycnJycnJycnJycnJycnJwa3FXdXV1dXV1dXV1dXV1dXV1
dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXVtU3BhNjY2NjY2NjY2CjY2NjY2NjY2NjY2NjY2NjY2
NjY2NjY2NjY2NjY2NjY2WktscnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJy
cnIKcGtxV3V1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1bVRBQUFBQmR5
VUFJRXVDQWdMVi8vK0NLS0FBSVVuagpnQUNjL0hBQUV4NisrKysrKysrKysrKysrKysrKysrKysr
KysrKysrKysrKysrKysrKysvL0Qvd1dFQWNBQXNBS0JCVk0vaUFBQ0V1CkFBSVBVUUFBUWZnQUJC
andjQUFRR2dBQkIzWWc0QUFnTkFBQ0R1eEJ3QUJBVEFBRUY1aURnQUNBbUFBSUx6Q2xycnJycnJy
cnJycnIKcnJycnJycnJycnJycnJycnJycnJycnJycnJycnJwa3FXdXV1dXV1dXV1dXV1dXV1dXV1
dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXVtUwpwYTY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2
NjY2NjY2NjY2NjY2WktscnJycnJycnJycnJycnJycnJycnJycnJycnJycnJyCnJycnJycnJycnJy
cGtoYkFBUm1Sa1prWkVaR1JmK0FBYkl6QVF0S0Y4WllML0NXa0FMZ0FWMHlOaWZJZEhZUEFBcE5H
a051cEZadzEKTFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhDeklBQWpJ
ak1qTWlNaU15Ly93QU9vUVZ1eUk4cmJqTjMzZwpIZUFCcGsrVGZPZmNBSjVxYVhmK3R3QUFBQlVH
QlJFRGgvUk96UXBMM0tHVU9zUFVteGNmQUlBQUFBQUlJZUVKQUtVQVFPQUFBQUFLCklRQ0I0UWtB
dFFCQTRBQUFBQW9oQUVDNFFrQXRRQkE0QUFBQUNpRUFZUGhDUUMxQUVEZ0FBQUFNSVFBZ1RoQ1FD
MUFOandWd0FBQUEKRlFZRkVRT0g5RTdOQ2t2Y29aUTZ3OVNiRng4QWdBQUFBQWdCcUlGZ0VhQUlI
QUFBQUFvQkFJR29nV0FWb0FnY0FBQUFDZ0VBUUtvZwpXQVZvQWdjQUFBQUtBUUJnNmlCWUJXZ0NC
d0FBQUFzQkFDQktpQllCV2dDQndBQUFBQlVHQlJFRGgvUk96UXBMM0tHVU9zUFVteGNmCkFJQUFB
QUFJSWVJUkFLVUFRT0FBQUFBS0lRQ0I0aEVBdFFCQTRBQUFBQW9oQUVDNGhFQXRRQkE0QUFBQUNp
RUFZUGlFUUMxQUVEZ0EKQUFBTUlRQWdUaUVRQzFBTmp3VndBQUFBRlFZRkVRT0g5RTdOQ2t2Y29a
UTZ3OVNiRng4QWdBQUFBQWdCcU1OZ0VhQUlIQUFBQUFvQgpBSUdvdzJBVm9BZ2NBQUFBQ2dFQVFL
b3cyQVZvQWdjQUFBQUtBUUJnNmpEWUJXZ0NCd0FBQUFzQkFDQktqRFlCV2dDQndBQUFBQlVHCkJS
RURoL1JPelFwTDNLR1VPc1BVbXhjZkFJQUFBQUFJSWVNWkFLVUFRT0FBQUFBS0lRQ0I0eGtBdFFC
QTRBQUFBQW9oQUVDNHhrQXQKUUJBNEFBQUFDaUVBWVBqR1FDMUFFRGdBQUFBTUlRQWdUakdRQzFB
Tmp3VndBQUFBRlFZRkVRT0g5RTdOQ2t2Y29aUTZ3OVNiRng4QQpnQUFBQUFnQnFRVmdFYUFJSEFB
QUFBb0JBSUdwQldBVm9BZ2NBQUFBQ2dFQVFLcEJXQVZvQWdjQUFBQUtBUUJnNmtGWUJXZ0NCd0FB
CkFBc0JBQ0JLa0ZZQldnQ0J3QUFBQUJVR0JSRURoL1JPelFwTDNLR1VPc1BVbXhjZkFJQUFBQUFJ
SWVRaEFLVUFRT0FBQUFBS0lRQ0IKNUNFQXRRQkE0QUFBQUFvaEFFQzVDRUF0UUJBNEFBQUFDaUVB
WVBrSVFDMUFFRGdBQUFBTUlRQWdUa0lRQzFBTmp3VndBQUFBRlFZRgpFUU9IOUU3TkNrdmNvWlE2
dzlTYkZ4OEFnQUFBQUFnQnFVZGdFYUFJSEFBQUFBb0JBSUdwUjJBVm9BZ2NBQUFBQ2dFQVFLcFIy
QVZvCkFnY0FBQUFLQVFCZzZsSFlCV2dDQndBQUFBc0JBQ0JLbEhZQldnQ0J3QUFBQUJVR0JSRURo
L1JPelFwTDNLR1VPc1BVbXhjZkFJQUEKQUFBSUllVXBBS1VBUU9BQUFBQUtJUUNCNVNrQXRRQkE0
QUFBQUFvaEFFQzVTa0F0UUJBNEFBQUFDaUVBWVBsS1FDMUFFRGdBQUFBTQpJUUFnVGxLUUMxQU5q
d1Z3QUFBQUZRWUZFUU9IOUU3TkNrdmNvWlE2dzlTYkZ4OEFnQUFBQUFnQnFZbGdFYUFJSEFBQUFB
b0JBSUdwCmlXQVZvQWdjQUFBQUNnRUFRS3BpV0FWb0FnY0FBQUFLQVFCZzZtSllCV2dDQndBQUFB
c0JBQ0JLbUpZQldnQ0J3QUFBQUJVR0JSRUQKaC9ST3pRcEwzS0dVT3NQVW14Y2ZBSUFBQUFBSUll
WXhBS1VBUU9BQUFBQUtJUUNCNWpFQXRRQkE0QUFBQUFvaEFFQzVqRUF0UUJBNApBQUFBQ2lFQVlQ
bU1RQzFBRURnQUFBQU1JUUFnVG1NUUMxQU5qd1Z3QUFBQUZRWUZFUU9IOUU3TkNrdmNvWlE2dzlT
YkZ4OEFnQUFBCkFBZ0JxY3RnRWFBSUhBQUFBQW9CQUlHcHkyQVZvQWdjQUFBQUNnRUFRS3B5MkFW
b0FnY0FBQUFLQVFCZzZuTFlCV2dDQndBQUFBc0IKQUNCS25MWUJXZ0NCd0FBQUFCVUdCUkVEaC9S
T3pRcEwzS0dVT3NQVW14Y2ZBSUFBQUFBSUllYzVBS1VBUU9BQUFBQUtJUUNCNXprQQp0UUJBNEFB
QUFBb2hBRUM1emtBdFFCQTRBQUFBQ2lFQVlQbk9RQzFBRURnQUFBQU1JUUFnVG5PUUMxQU5qd1Z3
QUFBQUZRWUZFUU9ICjlFN05Da3Zjb1pRNnc5U2JGeDhBZ0FBQUFBZ0JxZzFnRWFBSUhBQUFBQW9C
QUlHcURXQVZvQWdjQUFBQUNnRUFRS3FEV0FWb0FnY0EKQUFBS0FRQmc2b05ZQldnQ0J3QUFBQXNC
QUNCS29OWUJXZ0NCd0FBQUFCVUdCUkVEaC9ST3pRcEwzS0dVT3NQVW14Y2ZBSUFBQUFBSQpJZWhC
QUtVQVFPQUFBQUFLSVFDQjZFRUF0UUJBNEFBQUFBb2hBRUM2RUVBdFFCQTRBQUFBQ2lFQVlQb1FR
QzFBRURnQUFBQU1JUUFnClRvUVFDMUFOandWd0FBQUFGUVlGRVFPSDlFN05Da3Zjb1pRNnc5U2JG
eDhBZ0FBQUFBZ0JxazlnRWFBSUhBQUFBQW9CQUlHcVQyQVYKb0FnY0FBQUFDZ0VBUUtxVDJBVm9B
Z2NBQUFBS0FRQmc2cFBZQldnQ0J3QUFBQXNCQUNCS3BQWUJXZ0NCd0FBQUFCVUdCUkVEaC9STwp6
UXBMM0tHVU9zUFVteGNmQUlBQUFBQUlJZWxKQUtVQVFPQUFBQUFLSVFDQjZVa0F0UUJBNEFBQUFB
b2hBRUM2VWtBdFFCQTRBQUFBCkNpRUFZUHBTUUMxQUVEZ0FBQUFNSVFBZ1RwU1FDMUFOandWd0FB
QUFGUVlGRVFPSDlFN05Da3Zjb1pRNnc5U2JGeDhBZ0FBQUFBZ0IKcXBGZ0VhQUlIQUFBQUFvQkFJ
R3FrV0FWb0FnY0FBQUFDZ0VBUUtxa1dBVm9BZ2NBQUFBS0FRQmc2cVJZQldnQ0J3QUFBQXNCQUNC
SwpxUllCV2dDQndBQUFBQlVHQlJFRGgvUk96UXBMM0tHVU9zUFVteGNmQUlBQUFBQUlJZXBSQUtV
QVFPQUFBQUFLSVFDQjZsRUF0UUJBCjRBQUFBQW9oQUVDNmxFQXRRQkE0QUFBQUNpRUFZUHFVUUMx
QUVEZ0FBQUFNSVFBZ1RxVVFDMUFOandWd0FBQUFGUVlGRVFPSDlFN04KQ2t2Y29aUTZ3OVNiRng4
QWdBQUFBQWdCcXROZ0VhQUlIQUFBQUFvQkFJR3EwMkFWb0FnY0FBQUFDZ0VBUUtxMDJBVm9BZ2NB
QUFBSwpBUUJnNnJUWUJXZ0NCd0FBQUFzQkFDQktyVFlCV2dDQndBQUFBQlVHQlJFRGgvUk96UXBM
M0tHVU9zUFVteGNmQUlBQUFBQUlJZXRaCkFLVUFRT0FBQUFBS0lRQ0I2MWtBdFFCQTRBQUFBQW9o
QUVDNjFrQXRRQkE0QUFBQUNpRUFZUHJXUUMxQUVEZ0FBQUFNSVFBZ1RyV1EKQzFBTmp3VndBQUFB
RlFZRkVRT0g5RTdOQ2t2Y29aUTZ3OVNiRng4QWdBQUFBQWdCcXhWZ0VhQUlIQUFBQUFvQkFJR3JG
V0FWb0FnYwpBQUFBQ2dFQVFLckZXQVZvQWdjQUFBQUtBUUJnNnNWWUJXZ0NCd0FBQUFzQkFDQktz
VllCV2dDQndBQUFBQlVHQlJFRGgvUk96UXBMCjNLR1VPc1BVbXhjZkFJQUFBQUFJQWV4ZEFSb0Fn
Y0FBQUFBS0FRQ0I3RjBCV2dDQndBQUFBQW9CQUVDN0YwQldnQ0J3QUFBQUNnRUEKWVBzWFFGYUFJ
SEFBQUFBS0FRQWdUc1hRRmFBSUhBQUFBQlVHQlJFRGgvUk96UXBMM0tHVU9zUFVteGNmQUlBQUFB
RlBKYmdnSUNsZgovL2dyZ0FjUkVRQ0VwUXJqREFBY1FZY0trQUFKWDREZ0FDUzRBQlNTSWtKc2hr
Wmd3NEFGZHMyeHYxS3J1R0hjdDk5OTk5OTk5OTk5Cjk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5
OTkvK0gvaHdnQUZHSUkzSkVsaHVlemhOZjhBd1RuWTRGQUFDRXlBQUlQZ2dBQWcvQUEKQ0RIZ0Fi
NXVtQUFJREhrd0FBZzZ2cFlBQWdOQUFDRHV4QUJwSmFBQUVCSFdnQUNDNS81MHNBQVFFd0FCQmVZ
VXRkZGRkZGRkZGRkZApkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRNbFMxMTExMTExMTEx
MTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTB5ClZMWFhYWFhYWFhYWFhYWFhYWFhYWFhY
WFhYWFhYWFhYWFhYWFhYWFhYWFhUSlV0ZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGQKZGRk
ZGRkZGRkZGRkTWxTMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTEweVlB
QUFFZ0pRQ0J1Q0FnTFYvLworQ0tLQUFJVW5qZ0FDYy9IQUFFeDYrKysrKysrKysrKysrKysrKysr
KysrKysrKysrKysrKysrKysrKysrLy9EL3dXRUFjQUFzQUtCCkJWTS9pQUFDRXVBQUlQVVFBQVFm
Z0FCQmp3Y0FBUUdnQUJCM1lnNEFBZ05BQUNEdXhCd0FCQVRBQUVGNWlEZ0FDQW1BQUlMekNscnIK
cnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycGtxV3V1dXV1dXV1dXV1dXV1
dXV1dXV1dXV1dXV1dXV1dXV1dQp1dXV1dXV1dW1TcGE2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2
NjY2NjY2NjY2NjY2NjY2NlpLbHJycnJycnJycnJycnJycnJycnJyCnJycnJycnJycnJycnJycnJy
cnJycnBrcVd1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dW1UQUFBQklT
VUEKUUs0SUNBdFgvLzRJb29BQWhTZU9BQUp6OGNBQVRIcjc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3
Nzc3Nzc3Nzc3Nzc3Nzc3NzcvOFAvQgpZUUJ3QUN3QW9FRlV6K0lBQUlTNEFBZzlSQUFCQitBQUVH
UEJ3QUJBYUFBRUhkaURnQUNBMEFBSU83RUhBQUVCTUFBUVhtSU9BQUlDCllBQWd2TUtXdXV1dXV1
dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXVtU3BhNjY2NjY2NjY2NjY2NjY2NjY2
NjY2NjYKNjY2NjY2NjY2NjY2NjY2NjY2WktscnJycnJycnJycnJycnJycnJycnJycnJycnJycnJy
cnJycnJycnJycnJwa3FXdXV1dXV1dXV1dQp1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1
bVNwYTY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2ClpNQUFBQUVoSlFC
ZzdnZ0lDMWYvL2dpaWdBQ0ZKNDRBQW5QeHdBQk1ldnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2
dnZ2dnZ2dnYKdnZ2dnZ2L3cvOEZoQUhBQUxBQ2dRVlRQNGdBQWhMZ0FDRDFFQUFFSDRBQVFZOEhB
QUVCb0FBUWQySU9BQUlEUUFBZzdzUWNBQVFFdwpBQkJlWWc0QUFnSmdBQ0M4d3BhNjY2NjY2NjY2
NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjZaS2xycnJycnJycnJycnJyCnJycnJycnJy
cnJycnJycnJycnJycnJycnJycnJwa3FXdXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1
dXV1dXV1dXVtU3AKYTY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2Wkts
cnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycgpycnJycnJycnJycGt3QUFBQVhjbEFDQkxn
Z0lDMWYvL2dpaWdBQ0ZKNDRBQW5QeHdBQk1ldnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2CnZ2dnZ2
dnZ2dnZ2dnZ2dnZ2L3cvOEZoQUhBQUxBQ2dRVlRQNGdBQWhMZ0FDRDFFQUFFSDRBQVFZOEhBQUVC
b0FBUWQySU9BQUlEUUEKQWc3c1FjQUFRRXdBQkJlWWc0QUFnSmdBQ0M4d3BhNjY2NjY2NjY2NjY2
NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjZaS2xycgpycnJycnJycnJycnJycnJycnJycnJy
cnJycnJycnJycnJycnJycnJwa3FXdXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1CnV1
dXV1dXV1bVNwYTY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2WklXd0FF
WmtaR1pHUkdSa1gvZ0FHeU0Kd0VMU2hmR1dDL3dscEFDNEFGZE1qWW55SFIyRHdBS1RScERicVJX
Y05TMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMQoxMTExMTF3c3lBQUl5SXpJeklq
SWpNdi84QURxRUZic2lQSzI0emQ5NEIzZ0FhWlBrM3puM0FDZWFtbDMvcmNBQUFBVkJnVVJBNGYw
ClRzMEtTOXlobERyRDFKc1hId0NBQUFBQUNDSGhDUUNsQUVEZ0FBQUFDaUVBZ2VFSkFMVUFRT0FB
QUFBS0lRQkF1RUpBTFVBUU9BQUEKQUFvaEFHRDRRa0F0UUJBNEFBQUFEQ0VBSUU0UWtBdFFEWThG
Y0FBQUFCVUdCUkVEaC9ST3pRcEwzS0dVT3NQVW14Y2ZBSUFBQUFBSQpBYWlCWUJHZ0NCd0FBQUFL
QVFDQnFJRmdGYUFJSEFBQUFBb0JBRUNxSUZnRmFBSUhBQUFBQ2dFQVlPb2dXQVZvQWdjQUFBQUxB
UUFnClNvZ1dBVm9BZ2NBQUFBQVZCZ1VSQTRmMFRzMEtTOXlobERyRDFKc1hId0NBQUFBQUNDSGlF
UUNsQUVEZ0FBQUFDaUVBZ2VJUkFMVUEKUU9BQUFBQUtJUUJBdUlSQUxVQVFPQUFBQUFvaEFHRDRo
RUF0UUJBNEFBQUFEQ0VBSUU0aEVBdFFEWThGY0FBQUFCVUdCUkVEaC9STwp6UXBMM0tHVU9zUFVt
eGNmQUlBQUFBQUlBYWpEWUJHZ0NCd0FBQUFLQVFDQnFNTmdGYUFJSEFBQUFBb0JBRUNxTU5nRmFB
SUhBQUFBCkNnRUFZT293MkFWb0FnY0FBQUFMQVFBZ1NvdzJBVm9BZ2NBQUFBQVZCZ1VSQTRmMFRz
MEtTOXlobERyRDFKc1hId0NBQUFBQUNDSGoKR1FDbEFFRGdBQUFBQ2lFQWdlTVpBTFVBUU9BQUFB
QUtJUUJBdU1aQUxVQVFPQUFBQUFvaEFHRDR4a0F0UUJBNEFBQUFEQ0VBSUU0eAprQXRRRFk4RmNB
QUFBQlVHQlJFRGgvUk96UXBMM0tHVU9zUFVteGNmQUlBQUFBQUlBYWtGWUJHZ0NCd0FBQUFLQVFD
QnFRVmdGYUFJCkhBQUFBQW9CQUVDcVFWZ0ZhQUlIQUFBQUNnRUFZT3BCV0FWb0FnY0FBQUFMQVFB
Z1NwQldBVm9BZ2NBPQoK
</data>
<flag name="commit-queue"
          id="241148"
          type_id="3"
          status="-"
          setter="eflews.bot"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>217959</attachid>
            <date>2013-11-27 11:16:42 -0800</date>
            <delta_ts>2013-11-27 12:39:14 -0800</delta_ts>
            <desc>Another patch</desc>
            <filename>patch_14.txt</filename>
            <type>text/plain</type>
            <size>130093</size>
            <attacher name="Eric Carlson">eric.carlson</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDE1OTgyMCkKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDEwOCBAQAorMjAxMy0xMS0yNyAgRXJpYyBD
YXJsc29uICA8ZXJpYy5jYXJsc29uQGFwcGxlLmNvbT4KKworICAgICAgICBBbGxvdyB0aGUgUXVp
Y2tUaW1lIHBsdWctaW4gdG8gYmUgcmVwbGFjZWQgYnkgc2NyaXB0IGluIGFuIGlzb2xhdGVkIHdv
cmQKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEyNDkw
MAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFRlc3Q6
IHBsdWdpbnMvcXVpY2t0aW1lLXBsdWdpbi1yZXBsYWNlbWVudC5odG1sCisKKyAgICAgICAgKiBD
TWFrZUxpc3RzLnR4dDogQWRkIG5ldyBNb2R1bGVzIHBhdGguCisgICAgICAgICogRGVyaXZlZFNv
dXJjZXMubWFrZTogQWRkIG5ldyBmaWxlcy4KKyAgICAgICAgKiBHTlVtYWtlZmlsZS5saXN0LmFt
OiBJbmNsdWRlIG5ldyBoZWFkZXIuCisgICAgICAgICogV2ViQ29yZS52Y3hwcm9qL1dlYkNvcmUu
dmN4cHJvajoKKworICAgICAgICAqIE1vZHVsZXMvcGx1Z2luczogQWRkZWQuCisgICAgICAgICog
TW9kdWxlcy9wbHVnaW5zL1BsdWdpblJlcGxhY2VtZW50Lmg6IEFkZGVkLiBEZWZpbmVzIHRoZSBp
bnRlcmZhY2UgZm9yIGEgcGx1Zy1pbiByZXBsYWNlbWVudC4KKworICAgICAgICBDcmVhdGUgYSBy
ZXBsYWNlbWVudCBmb3IgdGhlIFF1aWNrVGltZSBwbHVnLWluLgorICAgICAgICAqIE1vZHVsZXMv
cGx1Z2lucy9RdWlja1RpbWVQbHVnaW5SZXBsYWNlbWVudC5jcHA6IEFkZGVkLgorICAgICAgICAq
IE1vZHVsZXMvcGx1Z2lucy9RdWlja1RpbWVQbHVnaW5SZXBsYWNlbWVudC5jc3M6IEFkZGVkLgor
ICAgICAgICAqIE1vZHVsZXMvcGx1Z2lucy9RdWlja1RpbWVQbHVnaW5SZXBsYWNlbWVudC5oOiBB
ZGRlZC4KKyAgICAgICAgKiBNb2R1bGVzL3BsdWdpbnMvUXVpY2tUaW1lUGx1Z2luUmVwbGFjZW1l
bnQuaWRsOiBBZGRlZC4KKyAgICAgICAgKiBNb2R1bGVzL3BsdWdpbnMvUXVpY2tUaW1lUGx1Z2lu
UmVwbGFjZW1lbnQuanM6IEFkZGVkLgorCisgICAgICAgICogV2ViQ29yZS54Y29kZXByb2ovcHJv
amVjdC5wYnhwcm9qOiBBZGQgbmV3IGZpbGVzLgorCisgICAgICAgIEFsbG93IHBsdWctaW4gcmVw
bGFjZW1lbnQgdG8gYmUgZW5hYmxlZCBhdCBydW50aW1lLgorICAgICAgICAqIGJpbmRpbmdzL2dl
bmVyaWMvUnVudGltZUVuYWJsZWRGZWF0dXJlcy5oOgorICAgICAgICAoV2ViQ29yZTo6UnVudGlt
ZUVuYWJsZWRGZWF0dXJlczo6c2V0UGx1Z2luUmVwbGFjZW1lbnRFbmFibGVkKToKKyAgICAgICAg
KFdlYkNvcmU6OlJ1bnRpbWVFbmFibGVkRmVhdHVyZXM6OnBsdWdpblJlcGxhY2VtZW50RW5hYmxl
ZCk6CisKKyAgICAgICAgKiBiaW5kaW5ncy9qcy9KU0RPTUJpbmRpbmcuaDoKKyAgICAgICAgKFdl
YkNvcmU6OnRvSlMpOiBBZGQgdG9KUyguLi4gY29uc3QgU3RyaW5nJiAuLi4pLgorCisgICAgICAg
ICogYmluZGluZ3MvanMvSlNQbHVnaW5FbGVtZW50RnVuY3Rpb25zLmNwcDoKKyAgICAgICAgKFdl
YkNvcmU6OnBsdWdpblNjcmlwdE9iamVjdCk6IEdpdmUgYSBwbHVnLWluIHJlcGxhY2VtZW50IGEg
Zmlyc3Qgc2hvdCBhdCBkZWZpbmluZyB0aGUKKyAgICAgICAgICAgIHNjcmlwdCBpbnRlcmZhY2Uu
CisKKyAgICAgICAgKiBodG1sL0hUTUxFbWJlZEVsZW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29y
ZTo6SFRNTEVtYmVkRWxlbWVudDo6dXBkYXRlV2lkZ2V0KTogQ2FsbCBiYXNlIGNsYXNzIHJlcXVl
c3RPYmplY3QuCisKKyAgICAgICAgKiBodG1sL0hUTUxNZWRpYUVsZW1lbnQuY3BwOgorICAgICAg
ICAoSFRNTE1lZGlhRWxlbWVudDo6ZmlsZVNpemUpOiBOZXcsIHBhc3N0aHJvdWdoIHRvIG1lZGlh
IGVuZ2luZS4KKyAgICAgICAgKiBodG1sL0hUTUxNZWRpYUVsZW1lbnQuaDoKKworICAgICAgICAq
IGh0bWwvSFRNTE9iamVjdEVsZW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6SFRNTE9iamVj
dEVsZW1lbnQ6OnVwZGF0ZVdpZGdldCk6IENhbGwgYmFzZSBjbGFzcyByZXF1ZXN0T2JqZWN0Lgor
CisgICAgICAgIE1vdmVkIHNvbWUgbG9naWMgdGhhdCB3YXMgcHJldmlvdXNseSB1c2VkIG9ubHkg
Zm9yIGNyZWF0aW5nIGEgcGx1Zy1pbiBzbmFwc2hvdCB0byB0aGUgYmFzZQorICAgICAgICBjbGFz
cyBzbyBpdCBjYW4gYmUgc2hhcmVkIGJ5IGEgcGx1Zy1pbiByZXBsYWNlbWVudC4KKyAgICAgICAg
KiBodG1sL0hUTUxQbHVnSW5FbGVtZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkhUTUxQbHVn
SW5FbGVtZW50OjpIVE1MUGx1Z0luRWxlbWVudCk6IEluaXRpYWxpemUgdGltZXIgdXNlZCB0byBz
d2FwIHJlbmRlcmVycy4KKyAgICAgICAgKFdlYkNvcmU6OkhUTUxQbHVnSW5FbGVtZW50OjpjcmVh
dGVSZW5kZXJlcik6IEFsbG93IHBsdWctaW4gcmVwbGFjZW1lbnQgdG8gY3JlYXRlIHRoZSByZW5k
ZXJlci4KKyAgICAgICAgKFdlYkNvcmU6OkhUTUxQbHVnSW5FbGVtZW50Ojpzd2FwUmVuZGVyZXJU
aW1lckZpcmVkKTogQ3JlYXRlIGEgc2hhZG93IHJvb3QuCisgICAgICAgIChXZWJDb3JlOjpIVE1M
UGx1Z0luRWxlbWVudDo6c2V0RGlzcGxheVN0YXRlKTogU2V0IHRoZSBuZXcgc3RhdGUsIHByaW1l
IHRoZSBzd2FwIHJlbmRlcmVyIAorICAgICAgICAgICAgdGltZXIgaWYgbmVjZXNzYXJ5LgorICAg
ICAgICAoV2ViQ29yZTo6SFRNTFBsdWdJbkVsZW1lbnQ6OmRpZEFkZFVzZXJBZ2VudFNoYWRvd1Jv
b3QpOiBUZWxsIHRoZSBwbHVnLWluIHJlcGxhY2VtZW50IHRvCisgICAgICAgICAgICBpbnN0YWxs
IGl0c2VsZiBpbiB0aGUgbmV3IHNoYWRvdyBET00uCisgICAgICAgIChXZWJDb3JlOjpyZWdpc3Rl
cmVkUGx1Z2luUmVwbGFjZW1lbnRzKTogUmV0dXJuIHZlY3RvciBvZiBhbGwgcmVnaXN0ZXJlZCBw
bHVnLWluIHJlcGxhY2VtZW50cy4KKyAgICAgICAgKFdlYkNvcmU6OnJlZ2lzdGVyUGx1Z2luUmVw
bGFjZW1lbnQpOiBBZGQgYSBwbHVnLWluIHJlcGxhY2VtZW50LgorICAgICAgICAoV2ViQ29yZTo6
cGx1Z2luUmVwbGFjZW1lbnRGb3JUeXBlKTogRmluZCBhIHBsdWctaW4gcmVwbGFjZW1lbnQgZm9y
IGEgTUlNRSB0eXBlLgorICAgICAgICAoV2ViQ29yZTo6SFRNTFBsdWdJbkVsZW1lbnQ6OnJlcXVl
c3RPYmplY3QpOiBJZiB0aGVyZSBpcyBhIHBsdWctaW4gcmVwbGFjZW1lbnQgZm9yIHRoZSBNSU1F
IHR5cGUsCisgICAgICAgICAgICBjcmVhdGUgaXQgYW5kIHNldCB0aGUgZGlzcGxheSBzdGF0ZS4K
KyAgICAgICAgKFdlYkNvcmU6OkhUTUxQbHVnSW5FbGVtZW50OjpzY3JpcHRPYmplY3RGb3JQbHVn
aW5SZXBsYWNlbWVudCk6IFJldHVybiB0aGUgc2NyaXB0IG9iamVjdCBmb3IgCisgICAgICAgICAg
ICB0aGUgY3VycmVudCBwbHVnLWluIHJlcGxhY2VtZW50LCBpZiBhbnkuCisgICAgICAgICogaHRt
bC9IVE1MUGx1Z0luRWxlbWVudC5oOgorCisgICAgICAgIE1vdmUgc29tZSBwbHVnLWluIHNuYXBz
aG90IGNvZGUgaW50byB0aGUgYmFzZSBjbGFzcy4KKyAgICAgICAgKiBodG1sL0hUTUxQbHVnSW5J
bWFnZUVsZW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6SFRNTFBsdWdJbkltYWdlRWxlbWVu
dDo6SFRNTFBsdWdJbkltYWdlRWxlbWVudCk6IE5vIG5lZWQgdG8gaW5pdGlhbGl6ZSB0aW1lci4K
KyAgICAgICAgKFdlYkNvcmU6OkhUTUxQbHVnSW5JbWFnZUVsZW1lbnQ6OnNldERpc3BsYXlTdGF0
ZSk6IENhbGwgYmFzZSBjbGFzcy4KKyAgICAgICAgKFdlYkNvcmU6OkhUTUxQbHVnSW5JbWFnZUVs
ZW1lbnQ6OmNyZWF0ZVJlbmRlcmVyKTogRGl0dG8uCisgICAgICAgIChXZWJDb3JlOjpIVE1MUGx1
Z0luSW1hZ2VFbGVtZW50OjpkaWRBZGRVc2VyQWdlbnRTaGFkb3dSb290KTogRGl0dG8uCisgICAg
ICAgIChXZWJDb3JlOjpIVE1MUGx1Z0luSW1hZ2VFbGVtZW50Ojp1c2VyRGlkQ2xpY2tTbmFwc2hv
dCk6IFJlbW92ZSB1bm5lY2Vzc2FyeSBjbGFzcyBuYW1lLgorICAgICAgICAoV2ViQ29yZTo6SFRN
TFBsdWdJbkltYWdlRWxlbWVudDo6cmVxdWVzdE9iamVjdCk6IE5ldy4KKyAgICAgICAgKiBodG1s
L0hUTUxQbHVnSW5JbWFnZUVsZW1lbnQuaDoKKworICAgICAgICAqIGh0bWwvSFRNTFZpZGVvRWxl
bWVudC5oOiBNYWtlIGNyZWF0ZVJlbmRlcmVyIHB1YmxpYyBzbyB0aGUgUXVpY2tUaW1lIHBsdWct
aW4gcmVwbGFjZW1lbnQgY2FuCisgICAgICAgICAgICBjYWxsIGl0LgorCisgICAgICAgICogcGxh
dGZvcm0vZ3JhcGhpY3MvTWVkaWFQbGF5ZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6TWVkaWFQ
bGF5ZXI6OmZpbGVTaXplKTogTmV3LgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL01lZGlh
UGxheWVyLmg6CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvTWVkaWFQbGF5ZXJQcml2YXRl
Lmg6CisKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9hdmZvdW5kYXRpb24vTWVkaWFQbGF5
ZXJQcml2YXRlQVZGb3VuZGF0aW9uLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6Ok1lZGlhUGxheWVy
UHJpdmF0ZUFWRm91bmRhdGlvbjo6ZXh0cmFNZW1vcnlDb3N0KTogdG90YWxCeXRlcyByZXR1cm5z
IGFuIHVuc2lnbmVkIGxvbmcgbG9uZy4KKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9hdmZv
dW5kYXRpb24vTWVkaWFQbGF5ZXJQcml2YXRlQVZGb3VuZGF0aW9uLmg6CisgICAgICAgIChXZWJD
b3JlOjpNZWRpYVBsYXllclByaXZhdGVBVkZvdW5kYXRpb246OmZpbGVTaXplKToKKworICAgICAg
ICAqIHBsYXRmb3JtL2dyYXBoaWNzL2F2Zm91bmRhdGlvbi9jZi9NZWRpYVBsYXllclByaXZhdGVB
VkZvdW5kYXRpb25DRi5jcHA6CisgICAgICAgIChXZWJDb3JlOjpNZWRpYVBsYXllclByaXZhdGVB
VkZvdW5kYXRpb25DRjo6dG90YWxCeXRlcyk6IFJldHVybiBhbiB1bnNpZ25lZCBsb25nIGxvbmcu
CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvYXZmb3VuZGF0aW9uL2NmL01lZGlhUGxheWVy
UHJpdmF0ZUFWRm91bmRhdGlvbkNGLmg6CisKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9h
dmZvdW5kYXRpb24vb2JqYy9NZWRpYVBsYXllclByaXZhdGVBVkZvdW5kYXRpb25PYmpDLmg6Cisg
ICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvYXZmb3VuZGF0aW9uL29iamMvTWVkaWFQbGF5ZXJQ
cml2YXRlQVZGb3VuZGF0aW9uT2JqQy5tbToKKyAgICAgICAgKFdlYkNvcmU6Ok1lZGlhUGxheWVy
UHJpdmF0ZUFWRm91bmRhdGlvbk9iakM6OnRvdGFsQnl0ZXMpOiBEaXR0by4KKworICAgICAgICAq
IHRlc3RpbmcvSW50ZXJuYWxTZXR0aW5ncy5jcHA6CisgICAgICAgIChXZWJDb3JlOjpJbnRlcm5h
bFNldHRpbmdzOjpCYWNrdXA6OkJhY2t1cCk6IEJhY2t1cCB0aGUgcGx1Zy1pbiByZXBsYWNlbWVu
dCBydW50aW1lIHNldHRpbmcuCisgICAgICAgIChXZWJDb3JlOjpJbnRlcm5hbFNldHRpbmdzOjpC
YWNrdXA6OnJlc3RvcmVUbyk6IFJlc3RvcmUgaXQuCisgICAgICAgIChXZWJDb3JlOjpJbnRlcm5h
bFNldHRpbmdzOjpzZXRQbHVnaW5SZXBsYWNlbWVudEVuYWJsZWQpOiBTZXQgaXQuCisgICAgICAg
ICogdGVzdGluZy9JbnRlcm5hbFNldHRpbmdzLmg6CisgICAgICAgICogdGVzdGluZy9JbnRlcm5h
bFNldHRpbmdzLmlkbDoKKwogMjAxMy0xMS0yNyAgTmljayBEaWVnbyBZYW1hbmUgIDxuaWNrLnlh
bWFuZUBvcGVuYm9zc2Eub3JnPgogCiAgICAgICAgIFJlbW92ZSBRdC1zcGVjaWZpYyAucXJjIGZp
bGVzCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9DTWFrZUxpc3RzLnR4dAo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBT
b3VyY2UvV2ViQ29yZS9DTWFrZUxpc3RzLnR4dAkocmV2aXNpb24gMTU5ODIwKQorKysgU291cmNl
L1dlYkNvcmUvQ01ha2VMaXN0cy50eHQJKHdvcmtpbmcgY29weSkKQEAgLTExLDYgKzExLDcgQEAg
c2V0KFdlYkNvcmVfSU5DTFVERV9ESVJFQ1RPUklFUwogICAgICIke1dFQkNPUkVfRElSfS9Nb2R1
bGVzL25hdmlnYXRvcmNvbnRlbnR1dGlscyIKICAgICAiJHtXRUJDT1JFX0RJUn0vTW9kdWxlcy9u
ZXR3b3JraW5mbyIKICAgICAiJHtXRUJDT1JFX0RJUn0vTW9kdWxlcy9ub3RpZmljYXRpb25zIgor
ICAgICIke1dFQkNPUkVfRElSfS9Nb2R1bGVzL3BsdWdpbnMiCiAgICAgIiR7V0VCQ09SRV9ESVJ9
L01vZHVsZXMvcHJveGltaXR5IgogICAgICIke1dFQkNPUkVfRElSfS9Nb2R1bGVzL3F1b3RhIgog
ICAgICIke1dFQkNPUkVfRElSfS9Nb2R1bGVzL3ZpYnJhdGlvbiIKSW5kZXg6IFNvdXJjZS9XZWJD
b3JlL0Rlcml2ZWRTb3VyY2VzLm1ha2UKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvRGVy
aXZlZFNvdXJjZXMubWFrZQkocmV2aXNpb24gMTU5ODIwKQorKysgU291cmNlL1dlYkNvcmUvRGVy
aXZlZFNvdXJjZXMubWFrZQkod29ya2luZyBjb3B5KQpAQCAtMzYsNiArMzYsNyBAQCBWUEFUSCA9
IFwKICAgICAkKFdlYkNvcmUpL01vZHVsZXMvbWVkaWFzb3VyY2UgXAogICAgICQoV2ViQ29yZSkv
TW9kdWxlcy9tZWRpYXN0cmVhbSBcCiAgICAgJChXZWJDb3JlKS9Nb2R1bGVzL25vdGlmaWNhdGlv
bnMgXAorICAgICQoV2ViQ29yZSkvTW9kdWxlcy9wbHVnaW5zIFwKICAgICAkKFdlYkNvcmUpL01v
ZHVsZXMvcXVvdGEgXAogICAgICQoV2ViQ29yZSkvTW9kdWxlcy9zcGVlY2ggXAogICAgICQoV2Vi
Q29yZSkvTW9kdWxlcy93ZWJhdWRpbyBcCkBAIC0xNDEsNiArMTQyLDcgQEAgQklORElOR19JRExT
ID0gXAogICAgICQoV2ViQ29yZSkvTW9kdWxlcy9ub3RpZmljYXRpb25zL05vdGlmaWNhdGlvbkNl
bnRlci5pZGwgXAogICAgICQoV2ViQ29yZSkvTW9kdWxlcy9ub3RpZmljYXRpb25zL05vdGlmaWNh
dGlvblBlcm1pc3Npb25DYWxsYmFjay5pZGwgXAogICAgICQoV2ViQ29yZSkvTW9kdWxlcy9ub3Rp
ZmljYXRpb25zL1dvcmtlckdsb2JhbFNjb3BlTm90aWZpY2F0aW9ucy5pZGwgXAorICAgICQoV2Vi
Q29yZSkvTW9kdWxlcy9wbHVnaW5zL1F1aWNrVGltZVBsdWdpblJlcGxhY2VtZW50LmlkbCBcCiAg
ICAgJChXZWJDb3JlKS9Nb2R1bGVzL3F1b3RhL0RPTVdpbmRvd1F1b3RhLmlkbCBcCiAgICAgJChX
ZWJDb3JlKS9Nb2R1bGVzL3F1b3RhL05hdmlnYXRvclN0b3JhZ2VRdW90YS5pZGwgXAogICAgICQo
V2ViQ29yZSkvTW9kdWxlcy9xdW90YS9TdG9yYWdlSW5mby5pZGwgXApAQCAtODcwLDYgKzg3Miwx
MCBAQCBpZmVxICgkKGZpbmRzdHJpbmcgRU5BQkxFX01FRElBX0NPTlRST0xTCiAJVVNFUl9BR0VO
VF9TVFlMRV9TSEVFVFMgOj0gJChVU0VSX0FHRU5UX1NUWUxFX1NIRUVUUykgJChXZWJDb3JlKS9N
b2R1bGVzL21lZGlhY29udHJvbHMvbWVkaWFDb250cm9sc0FwcGxlLmNzcwogZW5kaWYKIAoraWZl
cSAoJChPUyksTUFDT1MpCisJVVNFUl9BR0VOVF9TVFlMRV9TSEVFVFMgIDo9ICQoVVNFUl9BR0VO
VF9TVFlMRV9TSEVFVFMpICQoV2ViQ29yZSkvTW9kdWxlcy9wbHVnaW5zL1F1aWNrVGltZVBsdWdp
blJlcGxhY2VtZW50LmNzcworZW5kaWYKKwogVXNlckFnZW50U3R5bGVTaGVldHMuaCA6IGNzcy9t
YWtlLWNzcy1maWxlLWFycmF5cy5wbCBiaW5kaW5ncy9zY3JpcHRzL3ByZXByb2Nlc3Nvci5wbSAk
KFVTRVJfQUdFTlRfU1RZTEVfU0hFRVRTKSAkKFBMQVRGT1JNX0ZFQVRVUkVfREVGSU5FUykKIAlw
ZXJsIC1JJChXZWJDb3JlKS9iaW5kaW5ncy9zY3JpcHRzICQ8IC0tZGVmaW5lcyAiJChGRUFUVVJF
X0RFRklORVMpIiAkQCBVc2VyQWdlbnRTdHlsZVNoZWV0c0RhdGEuY3BwICQoVVNFUl9BR0VOVF9T
VFlMRV9TSEVFVFMpCiAKQEAgLTg4Myw2ICs4ODksOSBAQCBpZmVxICgkKGZpbmRzdHJpbmcgRU5B
QkxFX01FRElBX0NPTlRST0xTCiAJVVNFUl9BR0VOVF9TQ1JJUFRTIDo9ICQoVVNFUl9BR0VOVF9T
Q1JJUFRTKSAkKFdlYkNvcmUpL01vZHVsZXMvbWVkaWFjb250cm9scy9tZWRpYUNvbnRyb2xzQXBw
bGUuanMKIGVuZGlmCiAKK2lmZXEgKCQoT1MpLE1BQ09TKQorCVVTRVJfQUdFTlRfU0NSSVBUUyAg
Oj0gJChVU0VSX0FHRU5UX1NDUklQVFMpICQoV2ViQ29yZSkvTW9kdWxlcy9wbHVnaW5zL1F1aWNr
VGltZVBsdWdpblJlcGxhY2VtZW50LmpzCitlbmRpZgogCiBVc2VyQWdlbnRTY3JpcHRzLmggOiBj
c3MvbWFrZS1jc3MtZmlsZS1hcnJheXMucGwgYmluZGluZ3Mvc2NyaXB0cy9wcmVwcm9jZXNzb3Iu
cG0gJChVU0VSX0FHRU5UX1NDUklQVFMpICQoUExBVEZPUk1fRkVBVFVSRV9ERUZJTkVTKQogCXBl
cmwgLUkkKFdlYkNvcmUpL2JpbmRpbmdzL3NjcmlwdHMgJDwgLS1kZWZpbmVzICIkKEZFQVRVUkVf
REVGSU5FUykiICRAIFVzZXJBZ2VudFNjcmlwdHNEYXRhLmNwcCAkKFVTRVJfQUdFTlRfU0NSSVBU
UykKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL0dOVW1ha2VmaWxlLmxpc3QuYW0KPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gU291cmNlL1dlYkNvcmUvR05VbWFrZWZpbGUubGlzdC5hbQkocmV2aXNpb24gMTU5ODIwKQor
KysgU291cmNlL1dlYkNvcmUvR05VbWFrZWZpbGUubGlzdC5hbQkod29ya2luZyBjb3B5KQpAQCAt
MTk3Nyw2ICsxOTc3LDcgQEAgd2ViY29yZV9tb2R1bGVzX3NvdXJjZXMgKz0gXAogCVNvdXJjZS9X
ZWJDb3JlL01vZHVsZXMvbm90aWZpY2F0aW9ucy9Ob3RpZmljYXRpb25QZXJtaXNzaW9uQ2FsbGJh
Y2suaCBcCiAJU291cmNlL1dlYkNvcmUvTW9kdWxlcy9ub3RpZmljYXRpb25zL1dvcmtlckdsb2Jh
bFNjb3BlTm90aWZpY2F0aW9ucy5jcHAgXAogCVNvdXJjZS9XZWJDb3JlL01vZHVsZXMvbm90aWZp
Y2F0aW9ucy9Xb3JrZXJHbG9iYWxTY29wZU5vdGlmaWNhdGlvbnMuaCBcCisJU291cmNlL1dlYkNv
cmUvTW9kdWxlcy9wbHVnaW5zL1BsdWdpblJlcGxhY2VtZW50LmggXAogCVNvdXJjZS9XZWJDb3Jl
L01vZHVsZXMvcHJveGltaXR5L0RldmljZVByb3hpbWl0eUNsaWVudC5oIFwKIAlTb3VyY2UvV2Vi
Q29yZS9Nb2R1bGVzL3Byb3hpbWl0eS9EZXZpY2VQcm94aW1pdHlDb250cm9sbGVyLmNwcCBcCiAJ
U291cmNlL1dlYkNvcmUvTW9kdWxlcy9wcm94aW1pdHkvRGV2aWNlUHJveGltaXR5Q29udHJvbGxl
ci5oIFwKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvcGx1Z2lucy9QbHVnaW5SZXBsYWNl
bWVudC5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvcGx1Z2lucy9QbHVn
aW5SZXBsYWNlbWVudC5oCShyZXZpc2lvbiAwKQorKysgU291cmNlL1dlYkNvcmUvTW9kdWxlcy9w
bHVnaW5zL1BsdWdpblJlcGxhY2VtZW50LmgJKHdvcmtpbmcgY29weSkKQEAgLTAsMCArMSw5MSBA
QAorLyoKKyAqIENvcHlyaWdodCAoQykgMjAxMyBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2
ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBm
b3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJv
dmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBS
ZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHly
aWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxv
d2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11
c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0
IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAg
IGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBk
aXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBD
T01QVVRFUiwgSU5DLiBgYEFTIElTJycgQU5EIEFOWQorICogRVhQUkVTUyBPUiBJTVBMSUVEIFdB
UlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKKyAqIElNUExJRUQg
V0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxB
UgorICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIENP
TVBVVEVSLCBJTkMuIE9SCisgKiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNU
LCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwKKyAqIEVYRU1QTEFSWSwgT1IgQ09OU0VR
VUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFBST0NV
UkVNRU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRB
LCBPUgorICogUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNF
RCBBTkQgT04gQU5ZIFRIRU9SWQorICogT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNU
LCBTVFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisgKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1Ig
T1RIRVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKKyAqIE9GIFRISVMg
U09GVFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1B
R0UuIAorICovCisKKyNpZm5kZWYgUGx1Z2luUmVwbGFjZW1lbnRfaAorI2RlZmluZSBQbHVnaW5S
ZXBsYWNlbWVudF9oCisKKyNpbmNsdWRlIDx3dGYvUmVmQ291bnRlZC5oPgorI2luY2x1ZGUgPHd0
Zi90ZXh0L1dURlN0cmluZy5oPgorCituYW1lc3BhY2UgSlNDIHsKK2NsYXNzIEpTT2JqZWN0Owor
fQorCituYW1lc3BhY2UgV2ViQ29yZSB7CisKK2NsYXNzIEhUTUxQbHVnSW5FbGVtZW50OworY2xh
c3MgUmVuZGVyRWxlbWVudDsKK2NsYXNzIFJlbmRlclN0eWxlOworY2xhc3MgU2hhZG93Um9vdDsK
KworY2xhc3MgUGx1Z2luUmVwbGFjZW1lbnQgOiBwdWJsaWMgUmVmQ291bnRlZDxQbHVnaW5SZXBs
YWNlbWVudD4geworcHVibGljOgorICAgIHZpcnR1YWwgflBsdWdpblJlcGxhY2VtZW50KCkgeyB9
CisKKyAgICB2aXJ0dWFsIGJvb2wgaW5zdGFsbFJlcGxhY2VtZW50KFNoYWRvd1Jvb3QqKSA9IDA7
CisgICAgdmlydHVhbCBKU0M6OkpTT2JqZWN0KiBzY3JpcHRPYmplY3QoKSB7IHJldHVybiAwOyB9
CisKKyAgICB2aXJ0dWFsIGJvb2wgd2lsbENyZWF0ZVJlbmRlcmVyKCkgeyByZXR1cm4gZmFsc2U7
IH0KKyAgICB2aXJ0dWFsIFJlbmRlckVsZW1lbnQqIGNyZWF0ZVJlbmRlcmVyKEhUTUxQbHVnSW5F
bGVtZW50JiwgUGFzc1JlZjxSZW5kZXJTdHlsZT4pID0gMDsKKworcHJvdGVjdGVkOgorICAgIFBs
dWdpblJlcGxhY2VtZW50KCkgeyB9Cit9OworCit0eXBlZGVmIFBhc3NSZWZQdHI8UGx1Z2luUmVw
bGFjZW1lbnQ+ICgqQ3JlYXRlUGx1Z2luUmVwbGFjZW1lbnQpKEhUTUxQbHVnSW5FbGVtZW50Jiwg
Y29uc3QgVmVjdG9yPFN0cmluZz4mIHBhcmFtTmFtZXMsIGNvbnN0IFZlY3RvcjxTdHJpbmc+JiBw
YXJhbVZhbHVlcyk7Cit0eXBlZGVmIGJvb2wgKCpQbHVnaW5SZXBsYWNlbWVudFN1cHBvcnRzVHlw
ZSkoY29uc3QgU3RyaW5nJik7Cit0eXBlZGVmIGJvb2wgKCpQbHVnaW5SZXBsYWNlbWVudFN1cHBv
cnRzRmlsZUV4dGVuc2lvbikoY29uc3QgU3RyaW5nJik7CisKK2NsYXNzIFJlcGxhY2VtZW50UGx1
Z2luIHsKK3B1YmxpYzoKKyAgICBSZXBsYWNlbWVudFBsdWdpbihDcmVhdGVQbHVnaW5SZXBsYWNl
bWVudCBjb25zdHJ1Y3RvciwgUGx1Z2luUmVwbGFjZW1lbnRTdXBwb3J0c1R5cGUgc3VwcG9ydHNU
eXBlLCBQbHVnaW5SZXBsYWNlbWVudFN1cHBvcnRzRmlsZUV4dGVuc2lvbiBzdXBwb3J0c0ZpbGVF
eHRlbnNpb24pCisgICAgICAgIDogbV9jb25zdHJ1Y3Rvcihjb25zdHJ1Y3RvcikKKyAgICAgICAg
LCBtX3N1cHBvcnRzVHlwZShzdXBwb3J0c1R5cGUpCisgICAgICAgICwgbV9zdXBwb3J0c0ZpbGVF
eHRlbnNpb24oc3VwcG9ydHNGaWxlRXh0ZW5zaW9uKQorICAgIHsKKyAgICB9CisKKyAgICBleHBs
aWNpdCBSZXBsYWNlbWVudFBsdWdpbihjb25zdCBSZXBsYWNlbWVudFBsdWdpbiYgb3RoZXIpCisg
ICAgICAgIDogbV9jb25zdHJ1Y3RvcihvdGhlci5tX2NvbnN0cnVjdG9yKQorICAgICAgICAsIG1f
c3VwcG9ydHNUeXBlKG90aGVyLm1fc3VwcG9ydHNUeXBlKQorICAgICAgICAsIG1fc3VwcG9ydHNG
aWxlRXh0ZW5zaW9uKG90aGVyLm1fc3VwcG9ydHNGaWxlRXh0ZW5zaW9uKQorICAgIHsKKyAgICB9
CisKKyAgICBQYXNzUmVmUHRyPFBsdWdpblJlcGxhY2VtZW50PiBjcmVhdGUoSFRNTFBsdWdJbkVs
ZW1lbnQmIGVsZW1lbnQsIGNvbnN0IFZlY3RvcjxTdHJpbmc+JiBwYXJhbU5hbWVzLCBjb25zdCBW
ZWN0b3I8U3RyaW5nPiYgcGFyYW1WYWx1ZXMpIGNvbnN0IHsgcmV0dXJuIG1fY29uc3RydWN0b3Io
ZWxlbWVudCwgcGFyYW1OYW1lcywgcGFyYW1WYWx1ZXMpOyB9CisgICAgYm9vbCBzdXBwb3J0c1R5
cGUoY29uc3QgU3RyaW5nJiBtaW1lVHlwZSkgY29uc3QgeyByZXR1cm4gbV9zdXBwb3J0c1R5cGUo
bWltZVR5cGUpOyB9CisgICAgYm9vbCBzdXBwb3J0c0ZpbGVFeHRlbnNpb24oY29uc3QgU3RyaW5n
JiBleHRlbnNpb24pIGNvbnN0IHsgcmV0dXJuIG1fc3VwcG9ydHNGaWxlRXh0ZW5zaW9uKGV4dGVu
c2lvbik7IH0KKworcHJpdmF0ZToKKyAgICBDcmVhdGVQbHVnaW5SZXBsYWNlbWVudCBtX2NvbnN0
cnVjdG9yOworICAgIFBsdWdpblJlcGxhY2VtZW50U3VwcG9ydHNUeXBlIG1fc3VwcG9ydHNUeXBl
OworICAgIFBsdWdpblJlcGxhY2VtZW50U3VwcG9ydHNGaWxlRXh0ZW5zaW9uIG1fc3VwcG9ydHNG
aWxlRXh0ZW5zaW9uOworfTsKKwordHlwZWRlZiB2b2lkICgqUGx1Z2luUmVwbGFjZW1lbnRSZWdp
c3RyYXIpKGNvbnN0IFJlcGxhY2VtZW50UGx1Z2luJik7CisKK30KKworI2VuZGlmCkluZGV4OiBT
b3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3BsdWdpbnMvUXVpY2tUaW1lUGx1Z2luUmVwbGFjZW1lbnQu
Y3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvcGx1Z2lucy9RdWlja1Rp
bWVQbHVnaW5SZXBsYWNlbWVudC5jcHAJKHJldmlzaW9uIDApCisrKyBTb3VyY2UvV2ViQ29yZS9N
b2R1bGVzL3BsdWdpbnMvUXVpY2tUaW1lUGx1Z2luUmVwbGFjZW1lbnQuY3BwCSh3b3JraW5nIGNv
cHkpCkBAIC0wLDAgKzEsMjM0IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDEzIEFwcGxlIElu
Yy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGlu
IHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlv
biwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwor
ICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJl
dGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25k
aXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlv
bnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICog
ICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNj
bGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxz
IHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElT
IFBST1ZJREVEIEJZIEFQUExFIENPTVBVVEVSLCBJTkMuIGBgQVMgSVMnJyBBTkQgQU5ZCisgKiBF
WFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQg
VE8sIFRIRQorICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklU
TkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiAgSU4gTk8g
RVZFTlQgU0hBTEwgQVBQTEUgQ09NUFVURVIsIElOQy4gT1IKKyAqIENPTlRSSUJVVE9SUyBCRSBM
SUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLAorICog
RVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBM
SU1JVEVEIFRPLAorICogUFJPQ1VSRU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNF
UzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SCisgKiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJV
UFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBBTlkgVEhFT1JZCisgKiBPRiBMSUFCSUxJVFks
IFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKKyAqIChJTkNM
VURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0Yg
VEhFIFVTRQorICogT0YgVEhJUyBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NT
SUJJTElUWSBPRiBTVUNIIERBTUFHRS4gCisgKi8KKworI2luY2x1ZGUgImNvbmZpZy5oIgorCisj
aWYgRU5BQkxFKE1FRElBX0NPTlRST0xTX1NDUklQVCkKKworI2luY2x1ZGUgIlF1aWNrVGltZVBs
dWdpblJlcGxhY2VtZW50LmgiCisKKyNpbmNsdWRlICJFdmVudC5oIgorI2luY2x1ZGUgIkhUTUxQ
bHVnSW5FbGVtZW50LmgiCisjaW5jbHVkZSAiSFRNTFZpZGVvRWxlbWVudC5oIgorI2luY2x1ZGUg
IkpTRE9NQmluZGluZy5oIgorI2luY2x1ZGUgIkpTRE9NR2xvYmFsT2JqZWN0LmgiCisjaW5jbHVk
ZSAiSlNIVE1MVmlkZW9FbGVtZW50LmgiCisjaW5jbHVkZSAiSlNRdWlja1RpbWVQbHVnaW5SZXBs
YWNlbWVudC5oIgorI2luY2x1ZGUgIk1haW5GcmFtZS5oIgorI2luY2x1ZGUgIlBhZ2UuaCIKKyNp
bmNsdWRlICJSZW5kZXJFbGVtZW50LmgiCisjaW5jbHVkZSAiU2NyaXB0Q29udHJvbGxlci5oIgor
I2luY2x1ZGUgIlNjcmlwdE9iamVjdC5oIgorI2luY2x1ZGUgIlNjcmlwdFNvdXJjZUNvZGUuaCIK
KyNpbmNsdWRlICJVc2VyQWdlbnRTY3JpcHRzLmgiCisjaW5jbHVkZSA8SmF2YVNjcmlwdENvcmUv
QVBJQ2FzdC5oPgorI2luY2x1ZGUgPEphdmFTY3JpcHRDb3JlL0pTQmFzZS5oPgorI2luY2x1ZGUg
PEphdmFTY3JpcHRDb3JlL0pTQ0pTVmFsdWVJbmxpbmVzLmg+CisKK3VzaW5nIG5hbWVzcGFjZSBK
U0M7CisKK25hbWVzcGFjZSBXZWJDb3JlIHsKKworc3RhdGljIFN0cmluZyBxdWlja1RpbWVQbHVn
aW5SZXBsYWNlbWVudFNjcmlwdCgpCit7CisgICAgREVGSU5FX1NUQVRJQ19MT0NBTChTdHJpbmcs
IHNjcmlwdCwgKFF1aWNrVGltZVBsdWdpblJlcGxhY2VtZW50SmF2YVNjcmlwdCwgc2l6ZW9mKFF1
aWNrVGltZVBsdWdpblJlcGxhY2VtZW50SmF2YVNjcmlwdCkpKTsKKyAgICByZXR1cm4gc2NyaXB0
OworfQorCit2b2lkIFF1aWNrVGltZVBsdWdpblJlcGxhY2VtZW50OjpyZWdpc3RlclBsdWdpblJl
cGxhY2VtZW50KFBsdWdpblJlcGxhY2VtZW50UmVnaXN0cmFyIHJlZ2lzdHJhcikKK3sKKyAgICBy
ZWdpc3RyYXIoUmVwbGFjZW1lbnRQbHVnaW4oY3JlYXRlLCBzdXBwb3J0c01pbWVUeXBlLCBzdXBw
b3J0c0ZpbGVFeHRlbnNpb24pKTsKK30KKworUGFzc1JlZlB0cjxQbHVnaW5SZXBsYWNlbWVudD4g
UXVpY2tUaW1lUGx1Z2luUmVwbGFjZW1lbnQ6OmNyZWF0ZShIVE1MUGx1Z0luRWxlbWVudCYgcGx1
Z2luLCBjb25zdCBWZWN0b3I8U3RyaW5nPiYgcGFyYW1OYW1lcywgY29uc3QgVmVjdG9yPFN0cmlu
Zz4mIHBhcmFtVmFsdWVzKQoreworICAgIHJldHVybiBhZG9wdFJlZihuZXcgUXVpY2tUaW1lUGx1
Z2luUmVwbGFjZW1lbnQocGx1Z2luLCBwYXJhbU5hbWVzLCBwYXJhbVZhbHVlcykpOworfQorCiti
b29sIFF1aWNrVGltZVBsdWdpblJlcGxhY2VtZW50OjpzdXBwb3J0c01pbWVUeXBlKGNvbnN0IFN0
cmluZyYgbWltZVR5cGUpCit7CisgICAgc3RhdGljIGNvbnN0IGNoYXIqIHR5cGVzW10gPSB7Cisg
ICAgICAgICJhcHBsaWNhdGlvbi92bmQuYXBwbGUubXBlZ3VybCIsICJhcHBsaWNhdGlvbi94LW1w
ZWd1cmwiLCAiYXVkaW8vM2dwcCIsICJhdWRpby8zZ3BwMiIsICJhdWRpby9hYWMiLCAiYXVkaW8v
YWlmZiIsCisgICAgICAgICJhdWRpby9hbXIiLCAiYXVkaW8vYmFzaWMiLCAiYXVkaW8vbXAzIiwg
ImF1ZGlvL21wNCIsICJhdWRpby9tcGVnIiwgImF1ZGlvL21wZWczIiwgImF1ZGlvL21wZWd1cmwi
LCAiYXVkaW8vc2NwbHMiLAorICAgICAgICAiYXVkaW8vd2F2IiwgImF1ZGlvL3gtYWFjIiwgImF1
ZGlvL3gtYWlmZiIsICJhdWRpby94LWNhZiIsICJhdWRpby94LW00YSIsICJhdWRpby94LW00YiIs
ICJhdWRpby94LW00cCIsCisgICAgICAgICJhdWRpby94LW00ciIsICJhdWRpby94LW1wMyIsICJh
dWRpby94LW1wZWciLCAiYXVkaW8veC1tcGVnMyIsICJhdWRpby94LW1wZWd1cmwiLCAiYXVkaW8v
eC1zY3BscyIsICJhdWRpby94LXdhdiIsCisgICAgICAgICJ2aWRlby8zZ3BwIiwgInZpZGVvLzNn
cHAyIiwgInZpZGVvL21wNCIsICJ2aWRlby9xdWlja3RpbWUiLCAidmlkZW8veC1tNHYiCisgICAg
fTsKKyAgICBERUZJTkVfU1RBVElDX0xPQ0FMKEhhc2hTZXQ8U3RyaW5nPiwgdHlwZUhhc2gsICgp
KTsKKyAgICBpZiAoIXR5cGVIYXNoLnNpemUoKSkgeworICAgICAgICBmb3IgKHNpemVfdCBpID0g
MDsgaSA8IFdURl9BUlJBWV9MRU5HVEgodHlwZXMpOyArK2kpCisgICAgICAgICAgICB0eXBlSGFz
aC5hZGQodHlwZXNbaV0pOworICAgIH0KKworICAgIHJldHVybiB0eXBlSGFzaC5jb250YWlucyht
aW1lVHlwZSk7Cit9CisKK2Jvb2wgUXVpY2tUaW1lUGx1Z2luUmVwbGFjZW1lbnQ6OnN1cHBvcnRz
RmlsZUV4dGVuc2lvbihjb25zdCBTdHJpbmcmIGV4dGVuc2lvbikKK3sKKyAgICBzdGF0aWMgY29u
c3QgY2hhciogZXh0ZW5zaW9uc1tdID0geworICAgICAgICAiM2cyIiwgIjNncCIsICIzZ3AyIiwg
IjNncHAiLCAiYWFjIiwgImFkdHMiLCAiYWlmIiwgImFpZmMiLCAiYWlmZiIsICJBTVIiLCAiYXUi
LCAiYndmIiwgImNhZiIsICJjZGRhIiwgIm0zdSIsCisgICAgICAgICJtM3U4IiwgIm00YSIsICJt
NGIiLCAibTRwIiwgIm00ciIsICJtNHYiLCAibW92IiwgIm1wMyIsICJtcDMiLCAibXA0IiwgIm1w
ZWciLCAibXBnIiwgIm1xdiIsICJwbHMiLCAicXQiLAorICAgICAgICAic25kIiwgInN3YSIsICJ0
cyIsICJ1bHciLCAid2F2IgorICAgIH07CisgICAgREVGSU5FX1NUQVRJQ19MT0NBTChIYXNoU2V0
PFN0cmluZz4sIGV4dGVuc2lvbkhhc2gsICgpKTsKKyAgICBpZiAoIWV4dGVuc2lvbkhhc2guc2l6
ZSgpKSB7CisgICAgICAgIGZvciAoc2l6ZV90IGkgPSAwOyBpIDwgV1RGX0FSUkFZX0xFTkdUSChl
eHRlbnNpb25zKTsgKytpKQorICAgICAgICAgICAgZXh0ZW5zaW9uSGFzaC5hZGQoZXh0ZW5zaW9u
c1tpXSk7CisgICAgfQorCisgICAgcmV0dXJuIGV4dGVuc2lvbkhhc2guY29udGFpbnMoZXh0ZW5z
aW9uKTsKK30KKworUXVpY2tUaW1lUGx1Z2luUmVwbGFjZW1lbnQ6OlF1aWNrVGltZVBsdWdpblJl
cGxhY2VtZW50KEhUTUxQbHVnSW5FbGVtZW50JiBwbHVnaW4sIGNvbnN0IFZlY3RvcjxTdHJpbmc+
JiBwYXJhbU5hbWVzLCBjb25zdCBWZWN0b3I8U3RyaW5nPiYgcGFyYW1WYWx1ZXMpCisgICAgOlBs
dWdpblJlcGxhY2VtZW50KCkKKyAgICAsIG1fcGFyZW50RWxlbWVudCgmcGx1Z2luKQorICAgICwg
bV9uYW1lcyhwYXJhbU5hbWVzKQorICAgICwgbV92YWx1ZXMocGFyYW1WYWx1ZXMpCisgICAgLCBt
X3NjcmlwdE9iamVjdChudWxscHRyKQoreworfQorCitRdWlja1RpbWVQbHVnaW5SZXBsYWNlbWVu
dDo6flF1aWNrVGltZVBsdWdpblJlcGxhY2VtZW50KCkKK3sKKyAgICBtX3BhcmVudEVsZW1lbnQg
PSBudWxscHRyOworICAgIG1fc2NyaXB0T2JqZWN0ID0gbnVsbHB0cjsKKyAgICBtX21lZGlhRWxl
bWVudCA9IG51bGxwdHI7Cit9CisKK1JlbmRlckVsZW1lbnQqIFF1aWNrVGltZVBsdWdpblJlcGxh
Y2VtZW50OjpjcmVhdGVSZW5kZXJlcihIVE1MUGx1Z0luRWxlbWVudCYgcGx1Z2luLCBQYXNzUmVm
PFJlbmRlclN0eWxlPiBzdHlsZSkKK3sKKyAgICBBU1NFUlRfVU5VU0VEKHBsdWdpbiwgbV9wYXJl
bnRFbGVtZW50ID09ICZwbHVnaW4pOworCisgICAgaWYgKG1fbWVkaWFFbGVtZW50KQorICAgICAg
ICByZXR1cm4gbV9tZWRpYUVsZW1lbnQtPmNyZWF0ZVJlbmRlcmVyKHN0ZDo6bW92ZShzdHlsZSkp
OworCisgICAgcmV0dXJuIDA7Cit9CisKK0RPTVdyYXBwZXJXb3JsZCYgUXVpY2tUaW1lUGx1Z2lu
UmVwbGFjZW1lbnQ6Omlzb2xhdGVkV29ybGQoKQoreworICAgIHN0YXRpYyBET01XcmFwcGVyV29y
bGQmIGlzb2xhdGVkV29ybGQgPSAqRE9NV3JhcHBlcldvcmxkOjpjcmVhdGUoSlNET01XaW5kb3c6
OmNvbW1vblZNKCkpLmxlYWtSZWYoKTsKKyAgICByZXR1cm4gaXNvbGF0ZWRXb3JsZDsKK30KKwor
Ym9vbCBRdWlja1RpbWVQbHVnaW5SZXBsYWNlbWVudDo6ZW5zdXJlUmVwbGFjZW1lbnRTY3JpcHRJ
bmplY3RlZCgpCit7CisgICAgUGFnZSogcGFnZSA9IG1fcGFyZW50RWxlbWVudC0+ZG9jdW1lbnQo
KS5wYWdlKCk7CisgICAgaWYgKCFwYWdlKQorICAgICAgICByZXR1cm4gZmFsc2U7CisgICAgCisg
ICAgRE9NV3JhcHBlcldvcmxkJiB3b3JsZCA9IGlzb2xhdGVkV29ybGQoKTsKKyAgICBTY3JpcHRD
b250cm9sbGVyJiBzY3JpcHRDb250cm9sbGVyID0gcGFnZS0+bWFpbkZyYW1lKCkuc2NyaXB0KCk7
CisgICAgSlNET01HbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCA9IGpzQ2FzdDxKU0RPTUdsb2Jh
bE9iamVjdCo+KHNjcmlwdENvbnRyb2xsZXIuZ2xvYmFsT2JqZWN0KHdvcmxkKSk7CisgICAgRXhl
Y1N0YXRlKiBleGVjID0gZ2xvYmFsT2JqZWN0LT5nbG9iYWxFeGVjKCk7CisgICAgCisgICAgSlNW
YWx1ZSByZXBsYWNlbWVudEZ1bmN0aW9uID0gZ2xvYmFsT2JqZWN0LT5nZXQoZXhlYywgSWRlbnRp
ZmllcihleGVjLCAiY3JlYXRlUGx1Z2luUmVwbGFjZW1lbnQiKSk7CisgICAgaWYgKHJlcGxhY2Vt
ZW50RnVuY3Rpb24uaXNGdW5jdGlvbigpKQorICAgICAgICByZXR1cm4gdHJ1ZTsKKyAgICAKKyAg
ICBzY3JpcHRDb250cm9sbGVyLmV2YWx1YXRlSW5Xb3JsZChTY3JpcHRTb3VyY2VDb2RlKHF1aWNr
VGltZVBsdWdpblJlcGxhY2VtZW50U2NyaXB0KCkpLCB3b3JsZCk7CisgICAgaWYgKGV4ZWMtPmhh
ZEV4Y2VwdGlvbigpKSB7CisgICAgICAgIGV4ZWMtPmNsZWFyRXhjZXB0aW9uKCk7CisgICAgICAg
IHJldHVybiBmYWxzZTsKKyAgICB9CisgICAgCisgICAgcmV0dXJuIHRydWU7Cit9CisKK2Jvb2wg
UXVpY2tUaW1lUGx1Z2luUmVwbGFjZW1lbnQ6Omluc3RhbGxSZXBsYWNlbWVudChTaGFkb3dSb290
KiByb290KQoreworICAgIFBhZ2UqIHBhZ2UgPSBtX3BhcmVudEVsZW1lbnQtPmRvY3VtZW50KCku
cGFnZSgpOworCisgICAgaWYgKCFlbnN1cmVSZXBsYWNlbWVudFNjcmlwdEluamVjdGVkKCkpCisg
ICAgICAgIHJldHVybiBmYWxzZTsKKworICAgIERPTVdyYXBwZXJXb3JsZCYgd29ybGQgPSBpc29s
YXRlZFdvcmxkKCk7CisgICAgU2NyaXB0Q29udHJvbGxlciYgc2NyaXB0Q29udHJvbGxlciA9IHBh
Z2UtPm1haW5GcmFtZSgpLnNjcmlwdCgpOworICAgIEpTRE9NR2xvYmFsT2JqZWN0KiBnbG9iYWxP
YmplY3QgPSBqc0Nhc3Q8SlNET01HbG9iYWxPYmplY3QqPihzY3JpcHRDb250cm9sbGVyLmdsb2Jh
bE9iamVjdCh3b3JsZCkpOworICAgIEV4ZWNTdGF0ZSogZXhlYyA9IGdsb2JhbE9iamVjdC0+Z2xv
YmFsRXhlYygpOworICAgIEpTTG9ja0hvbGRlciBsb2NrKGV4ZWMpOworICAgIAorICAgIC8vIExv
b2t1cCB0aGUgImNyZWF0ZVBsdWdpblJlcGxhY2VtZW50IiBmdW5jdGlvbgorICAgIEpTVmFsdWUg
cmVwbGFjZW1lbnRGdW5jdGlvbiA9IGdsb2JhbE9iamVjdC0+Z2V0KGV4ZWMsIElkZW50aWZpZXIo
ZXhlYywgImNyZWF0ZVBsdWdpblJlcGxhY2VtZW50IikpOworICAgIGlmIChyZXBsYWNlbWVudEZ1
bmN0aW9uLmlzVW5kZWZpbmVkT3JOdWxsKCkpCisgICAgICAgIHJldHVybiBmYWxzZTsKKyAgICBK
U09iamVjdCogcmVwbGFjZW1lbnRPYmplY3QgPSByZXBsYWNlbWVudEZ1bmN0aW9uLnRvT2JqZWN0
KGV4ZWMpOworICAgIENhbGxEYXRhIGNhbGxEYXRhOworICAgIENhbGxUeXBlIGNhbGxUeXBlID0g
cmVwbGFjZW1lbnRPYmplY3QtPm1ldGhvZFRhYmxlKCktPmdldENhbGxEYXRhKHJlcGxhY2VtZW50
T2JqZWN0LCBjYWxsRGF0YSk7CisgICAgaWYgKGNhbGxUeXBlID09IENhbGxUeXBlTm9uZSkKKyAg
ICAgICAgcmV0dXJuIGZhbHNlOworCisgICAgTWFya2VkQXJndW1lbnRCdWZmZXIgYXJnTGlzdDsK
KyAgICBhcmdMaXN0LmFwcGVuZCh0b0pTKGV4ZWMsIGdsb2JhbE9iamVjdCwgcm9vdCkpOworICAg
IGFyZ0xpc3QuYXBwZW5kKHRvSlMoZXhlYywgZ2xvYmFsT2JqZWN0LCBtX3BhcmVudEVsZW1lbnQp
KTsKKyAgICBhcmdMaXN0LmFwcGVuZCh0b0pTKGV4ZWMsIGdsb2JhbE9iamVjdCwgdGhpcykpOwor
ICAgIGFyZ0xpc3QuYXBwZW5kKHRvSlM8U3RyaW5nPihleGVjLCBnbG9iYWxPYmplY3QsIG1fbmFt
ZXMpKTsKKyAgICBhcmdMaXN0LmFwcGVuZCh0b0pTPFN0cmluZz4oZXhlYywgZ2xvYmFsT2JqZWN0
LCBtX3ZhbHVlcykpOworICAgIEpTVmFsdWUgcmVwbGFjZW1lbnQgPSBjYWxsKGV4ZWMsIHJlcGxh
Y2VtZW50T2JqZWN0LCBjYWxsVHlwZSwgY2FsbERhdGEsIGdsb2JhbE9iamVjdCwgYXJnTGlzdCk7
CisgICAgaWYgKGV4ZWMtPmhhZEV4Y2VwdGlvbigpKSB7CisgICAgICAgIGV4ZWMtPmNsZWFyRXhj
ZXB0aW9uKCk7CisgICAgICAgIHJldHVybiBmYWxzZTsKKyAgICB9CisKKyAgICAvLyBHZXQgdGhl
IDx2aWRlbz4gY3JlYXRlZCB0byByZXBsYWNlIHRoZSBwbHVnLWluLgorICAgIEpTVmFsdWUgdmFs
dWUgPSByZXBsYWNlbWVudC5nZXQoZXhlYywgSWRlbnRpZmllcihleGVjLCAidmlkZW8iKSk7Cisg
ICAgaWYgKCFleGVjLT5oYWRFeGNlcHRpb24oKSAmJiAhdmFsdWUuaXNVbmRlZmluZWRPck51bGwo
KSkKKyAgICAgICAgbV9tZWRpYUVsZW1lbnQgPSB0b0hUTUxWaWRlb0VsZW1lbnQodmFsdWUpOwor
CisgICAgaWYgKCFtX21lZGlhRWxlbWVudCkgeworICAgICAgICBleGVjLT5jbGVhckV4Y2VwdGlv
bigpOworICAgICAgICByZXR1cm4gZmFsc2U7CisgICAgfQorCisgICAgLy8gR2V0IHRoZSBzY3Jp
cHRpbmcgaW50ZXJmYWNlLgorICAgIHZhbHVlID0gcmVwbGFjZW1lbnQuZ2V0KGV4ZWMsIElkZW50
aWZpZXIoZXhlYywgInNjcmlwdE9iamVjdCIpKTsKKyAgICBpZiAoIWV4ZWMtPmhhZEV4Y2VwdGlv
bigpICYmICF2YWx1ZS5pc1VuZGVmaW5lZE9yTnVsbCgpKQorICAgICAgICBtX3NjcmlwdE9iamVj
dCA9IHZhbHVlLnRvT2JqZWN0KGV4ZWMpOworCisgICAgaWYgKCFtX3NjcmlwdE9iamVjdCkgewor
ICAgICAgICBleGVjLT5jbGVhckV4Y2VwdGlvbigpOworICAgICAgICByZXR1cm4gZmFsc2U7Cisg
ICAgfQorCisgICAgcmV0dXJuIHRydWU7Cit9CisKK3Vuc2lnbmVkIGxvbmcgbG9uZyBRdWlja1Rp
bWVQbHVnaW5SZXBsYWNlbWVudDo6bW92aWVTaXplKCkgY29uc3QKK3sKKyAgICBpZiAobV9tZWRp
YUVsZW1lbnQpCisgICAgICAgIHJldHVybiBtX21lZGlhRWxlbWVudC0+ZmlsZVNpemUoKTsKKwor
ICAgIHJldHVybiAwOworfQorCit2b2lkIFF1aWNrVGltZVBsdWdpblJlcGxhY2VtZW50Ojpwb3N0
RXZlbnQoY29uc3QgU3RyaW5nJiBldmVudE5hbWUpCit7CisgICAgUmVmPEhUTUxQbHVnSW5FbGVt
ZW50PiBwcm90ZWN0KCptX3BhcmVudEVsZW1lbnQpOworICAgIFJlZlB0cjxFdmVudD4gZXZlbnQg
PSBFdmVudDo6Y3JlYXRlKGV2ZW50TmFtZSwgZmFsc2UsIHRydWUpOworICAgIG1fcGFyZW50RWxl
bWVudC0+ZGlzcGF0Y2hFdmVudChldmVudC5nZXQoKSk7Cit9CisKK30KKyNlbmRpZgpJbmRleDog
U291cmNlL1dlYkNvcmUvTW9kdWxlcy9wbHVnaW5zL1F1aWNrVGltZVBsdWdpblJlcGxhY2VtZW50
LmNzcwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3BsdWdpbnMvUXVpY2tU
aW1lUGx1Z2luUmVwbGFjZW1lbnQuY3NzCShyZXZpc2lvbiAwKQorKysgU291cmNlL1dlYkNvcmUv
TW9kdWxlcy9wbHVnaW5zL1F1aWNrVGltZVBsdWdpblJlcGxhY2VtZW50LmNzcwkod29ya2luZyBj
b3B5KQpAQCAtMCwwICsxLDM0IEBACisvKgorICogQ29weXJpZ2h0IChDKSAyMDEzIEFwcGxlIElu
Yy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBp
biBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRp
b24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMK
KyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCBy
ZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29u
ZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRp
b25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAq
ICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlz
Y2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFs
cyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJ
UyBQUk9WSURFRCBCWSBBUFBMRSBDT01QVVRFUiwgSU5DLiBgYEFTIElTJycgQU5EIEFOWQorICog
RVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJBTlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVE
IFRPLCBUSEUKKyAqIElNUExJRUQgV0FSUkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJ
VE5FU1MgRk9SIEEgUEFSVElDVUxBUgorICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gIElOIE5P
IEVWRU5UIFNIQUxMIEFQUExFIENPTVBVVEVSLCBJTkMuIE9SCisgKiBDT05UUklCVVRPUlMgQkUg
TElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwKKyAq
IEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1Qg
TElNSVRFRCBUTywKKyAqIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZF
UiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkKKyAqIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBD
T05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorICogKElOQ0xVRElORyBORUdMSUdF
TkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCisgKiBP
RiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNV
Q0ggREFNQUdFLiAKKyAqLworCitlbWJlZDo6LXdlYmtpdC1wbHVnaW4tcmVwbGFjZW1lbnQsCitv
YmplY3Q6Oi13ZWJraXQtcGx1Z2luLXJlcGxhY2VtZW50Cit7CisgICAgcG9zaXRpb246IHJlbGF0
aXZlOworICAgIGRpc3BsYXk6IGlubGluZS1ibG9jazsKKyAgICB3aWR0aDogMTAwJTsKKyAgICBo
ZWlnaHQ6IDEwMCU7CisgICAgei1pbmRleDogMDsKK30KKwpJbmRleDogU291cmNlL1dlYkNvcmUv
TW9kdWxlcy9wbHVnaW5zL1F1aWNrVGltZVBsdWdpblJlcGxhY2VtZW50LmgKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gU291cmNlL1dlYkNvcmUvTW9kdWxlcy9wbHVnaW5zL1F1aWNrVGltZVBsdWdpblJlcGxhY2Vt
ZW50LmgJKHJldmlzaW9uIDApCisrKyBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3BsdWdpbnMvUXVp
Y2tUaW1lUGx1Z2luUmVwbGFjZW1lbnQuaAkod29ya2luZyBjb3B5KQpAQCAtMCwwICsxLDc2IEBA
CisvKgorICogQ29weXJpZ2h0IChDKSAyMDEzIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZl
ZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZv
cm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92
aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJl
ZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJp
Z2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93
aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVz
dCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qg
b2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAg
ZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRp
c3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIENP
TVBVVEVSLCBJTkMuIGBgQVMgSVMnJyBBTkQgQU5ZCisgKiBFWFBSRVNTIE9SIElNUExJRUQgV0FS
UkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQorICogSU1QTElFRCBX
QVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFS
CisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiAgSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgQ09N
UFVURVIsIElOQy4gT1IKKyAqIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1Qs
IElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLAorICogRVhFTVBMQVJZLCBPUiBDT05TRVFV
RU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAorICogUFJPQ1VS
RU1FTlQgT0YgU1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEs
IE9SCisgKiBQUk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VE
IEFORCBPTiBBTlkgVEhFT1JZCisgKiBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1Qs
IFNUUklDVCBMSUFCSUxJVFksIE9SIFRPUlQKKyAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBP
VEhFUldJU0UpIEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQorICogT0YgVEhJUyBT
T0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFH
RS4gCisgKi8KKworI2lmbmRlZiBRdWlja1RpbWVQbHVnaW5SZXBsYWNlbWVudF9oCisjZGVmaW5l
IFF1aWNrVGltZVBsdWdpblJlcGxhY2VtZW50X2gKKworI2luY2x1ZGUgIlBsdWdpblJlcGxhY2Vt
ZW50LmgiCisjaW5jbHVkZSAiU2NyaXB0U3RhdGUuaCIKKyNpbmNsdWRlICJTY3JpcHRWYWx1ZS5o
IgorI2luY2x1ZGUgPHd0Zi9SZWZDb3VudGVkLmg+CisjaW5jbHVkZSA8d3RmL3RleHQvV1RGU3Ry
aW5nLmg+CisKK25hbWVzcGFjZSBXZWJDb3JlIHsKKworY2xhc3MgSFRNTFBsdWdJbkVsZW1lbnQ7
CitjbGFzcyBIVE1MVmlkZW9FbGVtZW50OworY2xhc3MgUmVuZGVyRWxlbWVudDsKK2NsYXNzIFJl
bmRlclN0eWxlOworY2xhc3MgU2hhZG93Um9vdDsKKworY2xhc3MgUXVpY2tUaW1lUGx1Z2luUmVw
bGFjZW1lbnQgOiBwdWJsaWMgUGx1Z2luUmVwbGFjZW1lbnQgeworcHVibGljOgorICAgIHN0YXRp
YyB2b2lkIHJlZ2lzdGVyUGx1Z2luUmVwbGFjZW1lbnQoUGx1Z2luUmVwbGFjZW1lbnRSZWdpc3Ry
YXIpOworICAgIHN0YXRpYyBib29sIHN1cHBvcnRzTWltZVR5cGUoY29uc3QgU3RyaW5nJik7Cisg
ICAgc3RhdGljIGJvb2wgc3VwcG9ydHNGaWxlRXh0ZW5zaW9uKGNvbnN0IFN0cmluZyYpOworICAg
IAorICAgIHN0YXRpYyBQYXNzUmVmUHRyPFBsdWdpblJlcGxhY2VtZW50PiBjcmVhdGUoSFRNTFBs
dWdJbkVsZW1lbnQmLCBjb25zdCBWZWN0b3I8U3RyaW5nPiYgcGFyYW1OYW1lcywgY29uc3QgVmVj
dG9yPFN0cmluZz4mIHBhcmFtVmFsdWVzKTsKKyAgICB+UXVpY2tUaW1lUGx1Z2luUmVwbGFjZW1l
bnQoKTsKKworICAgIHZpcnR1YWwgYm9vbCBpbnN0YWxsUmVwbGFjZW1lbnQoU2hhZG93Um9vdCop
IE9WRVJSSURFOworICAgIHZpcnR1YWwgSlNDOjpKU09iamVjdCogc2NyaXB0T2JqZWN0KCkgT1ZF
UlJJREUgeyByZXR1cm4gbV9zY3JpcHRPYmplY3Q7IH0KKworICAgIHZpcnR1YWwgYm9vbCB3aWxs
Q3JlYXRlUmVuZGVyZXIoKSBPVkVSUklERSB7IHJldHVybiBtX21lZGlhRWxlbWVudDsgfQorICAg
IHZpcnR1YWwgUmVuZGVyRWxlbWVudCogY3JlYXRlUmVuZGVyZXIoSFRNTFBsdWdJbkVsZW1lbnQm
LCBQYXNzUmVmPFJlbmRlclN0eWxlPikgT1ZFUlJJREU7CisKKyAgICB1bnNpZ25lZCBsb25nIGxv
bmcgbW92aWVTaXplKCkgY29uc3Q7CisgICAgdm9pZCBwb3N0RXZlbnQoY29uc3QgU3RyaW5nJik7
CisKK3ByaXZhdGU6CisgICAgUXVpY2tUaW1lUGx1Z2luUmVwbGFjZW1lbnQoSFRNTFBsdWdJbkVs
ZW1lbnQmLCBjb25zdCBWZWN0b3I8U3RyaW5nPiYgcGFyYW1OYW1lcywgY29uc3QgVmVjdG9yPFN0
cmluZz4mIHBhcmFtVmFsdWVzKTsKKworICAgIGJvb2wgZW5zdXJlUmVwbGFjZW1lbnRTY3JpcHRJ
bmplY3RlZCgpOworICAgIERPTVdyYXBwZXJXb3JsZCYgaXNvbGF0ZWRXb3JsZCgpOworCisgICAg
SFRNTFBsdWdJbkVsZW1lbnQqIG1fcGFyZW50RWxlbWVudDsKKyAgICBSZWZQdHI8SFRNTFZpZGVv
RWxlbWVudD4gbV9tZWRpYUVsZW1lbnQ7CisgICAgY29uc3QgVmVjdG9yPFN0cmluZz4gbV9uYW1l
czsKKyAgICBjb25zdCBWZWN0b3I8U3RyaW5nPiBtX3ZhbHVlczsKKyAgICBKU0M6OkpTT2JqZWN0
KiBtX3NjcmlwdE9iamVjdDsKK307CisKK30KKworI2VuZGlmCkluZGV4OiBTb3VyY2UvV2ViQ29y
ZS9Nb2R1bGVzL3BsdWdpbnMvUXVpY2tUaW1lUGx1Z2luUmVwbGFjZW1lbnQuaWRsCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvcGx1Z2lucy9RdWlja1RpbWVQbHVnaW5SZXBs
YWNlbWVudC5pZGwJKHJldmlzaW9uIDApCisrKyBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3BsdWdp
bnMvUXVpY2tUaW1lUGx1Z2luUmVwbGFjZW1lbnQuaWRsCSh3b3JraW5nIGNvcHkpCkBAIC0wLDAg
KzEsMzMgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTMgQXBwbGUgSW5jLiBBbGwgcmlnaHRz
IHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBi
aW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0
dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0Ogor
ICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92
ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRo
ZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkg
Zm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRo
aXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhl
CisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0
aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkg
QVBQTEUgQ09NUFVURVIsIElOQy4gYGBBUyBJUycnIEFORCBBTlkKKyAqIEVYUFJFU1MgT1IgSU1Q
TElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCisgKiBJ
TVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBB
UlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuICBJTiBOTyBFVkVOVCBTSEFMTCBB
UFBMRSBDT01QVVRFUiwgSU5DLiBPUgorICogQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5Z
IERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsCisgKiBFWEVNUExBUlksIE9S
IENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisg
KiBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVT
RSwgREFUQSwgT1IKKyAqIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZF
UiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkKKyAqIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBD
T05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorICogKElOQ0xVRElORyBORUdMSUdF
TkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCisgKiBP
RiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNV
Q0ggREFNQUdFLiAKKyAqLworCitbCisgICAgTm9JbnRlcmZhY2VPYmplY3QsCisgICAgT3BlcmF0
aW9uc05vdERlbGV0YWJsZSwKKyAgICBKU0dlbmVyYXRlVG9KU09iamVjdCwKK10gaW50ZXJmYWNl
IFF1aWNrVGltZVBsdWdpblJlcGxhY2VtZW50IHsKKyAgICByZWFkb25seSBhdHRyaWJ1dGUgdW5z
aWduZWQgbG9uZyBsb25nIG1vdmllU2l6ZTsKKyAgICB2b2lkIHBvc3RFdmVudChET01TdHJpbmcg
ZXZlbnROYW1lKTsKK307CkluZGV4OiBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3BsdWdpbnMvUXVp
Y2tUaW1lUGx1Z2luUmVwbGFjZW1lbnQuanMKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUv
TW9kdWxlcy9wbHVnaW5zL1F1aWNrVGltZVBsdWdpblJlcGxhY2VtZW50LmpzCShyZXZpc2lvbiAw
KQorKysgU291cmNlL1dlYkNvcmUvTW9kdWxlcy9wbHVnaW5zL1F1aWNrVGltZVBsdWdpblJlcGxh
Y2VtZW50LmpzCSh3b3JraW5nIGNvcHkpCkBAIC0wLDAgKzEsMzI1IEBACisKK2Z1bmN0aW9uIGNy
ZWF0ZVBsdWdpblJlcGxhY2VtZW50KHJvb3QsIHBhcmVudCwgaG9zdCwgYXR0cmlidXRlTmFtZXMs
IGF0dHJpYnV0ZVZhbHVlcykKK3sKKyAgICByZXR1cm4gbmV3IFJlcGxhY2VtZW50KHJvb3QsIHBh
cmVudCwgaG9zdCwgYXR0cmlidXRlTmFtZXMsIGF0dHJpYnV0ZVZhbHVlcyk7Cit9OworCitmdW5j
dGlvbiBSZXBsYWNlbWVudChyb290LCBwYXJlbnQsIGhvc3QsIGF0dHJpYnV0ZU5hbWVzLCBhdHRy
aWJ1dGVWYWx1ZXMpCit7CisgICAgdGhpcy5yb290ID0gcm9vdDsKKyAgICB0aGlzLnBhcmVudCA9
IHBhcmVudDsKKyAgICB0aGlzLmhvc3QgPSBob3N0OworICAgIHRoaXMubGlzdGVuZXJzID0ge307
CisgICAgdGhpcy5zY3JpcHRPYmplY3QgPSB7fTsKKworICAgIHRoaXMuYXV0b0V4aXRGdWxsU2Ny
ZWVuID0gdHJ1ZTsKKyAgICB0aGlzLnBvc3RFdmVudHMgPSBmYWxzZTsKKyAgICB0aGlzLmhlaWdo
dCA9IDA7CisgICAgdGhpcy53aWR0aCA9IDA7CisgICAgdGhpcy5zcmMgPSAnJzsKKyAgICB0aGlz
LmF1dG9ocmVmID0gZmFsc2U7CisgICAgdGhpcy5ocmVmID0gJyc7CisgICAgdGhpcy5xdHNyYyA9
ICcnOworICAgIHRoaXMudGFyZ2V0ID0gJyc7CisKKyAgICB0aGlzLmNyZWF0ZVZpZGVvRWxlbWVu
dChhdHRyaWJ1dGVOYW1lcywgYXR0cmlidXRlVmFsdWVzKTsKKyAgICB0aGlzLmNyZWF0ZVNjcmlw
dEludGVyZmFjZSgpOworfTsKKworUmVwbGFjZW1lbnQucHJvdG90eXBlID0geworCisgICAgSGFu
ZGxlZFZpZGVvRXZlbnRzOiB7CisgICAgICAgIGxvYWRzdGFydDogJ2hhbmRsZUxvYWRTdGFydCcs
CisgICAgICAgIGVycm9yOiAnaGFuZGxlRXJyb3InLAorICAgICAgICBsb2FkZWRtZXRhZGF0YTog
J2hhbmRsZUxvYWRlZE1ldGFEYXRhJywKKyAgICAgICAgY2FucGxheTogJ3F0X2NhbnBsYXknLAor
ICAgICAgICBjYW5wbGF5dGhyb3VnaDogJ3F0X2NhbnBsYXl0aHJvdWdoJywKKyAgICAgICAgcGxh
eTogJ3F0X3BsYXknLAorICAgICAgICBwYXVzZTogJ3F0X3BhdXNlJywKKyAgICAgICAgZW5kZWQ6
ICdoYW5kbGVFbmRlZCcsCisgICAgICAgIHdlYmtpdGZ1bGxzY3JlZW5jaGFuZ2U6ICdoYW5kbGVG
dWxsc2NyZWVuQ2hhbmdlJywKKyAgICB9LAorCisgICAgQXR0cmlidXRlTWFwOiB7CisgICAgICAg
IGF1dG9leGl0ZnVsbHNjcmVlbjogJ2F1dG9FeGl0RnVsbFNjcmVlbicsCisgICAgICAgIHBvc3Rk
b21ldmVudHM6ICdwb3N0RXZlbnRzJywKKyAgICAgICAgaGVpZ2h0OiAnaGVpZ2h0JywKKyAgICAg
ICAgd2lkdGg6ICd3aWR0aCcsCisgICAgICAgIHNyYzogJ3NyYycsCisgICAgICAgIGFpcnBsYXk6
ICd4LXdlYmtpdC1haXJwbGF5PScsCisgICAgICAgIGhyZWY6ICdocmVmJywKKyAgICAgICAgdGFy
Z2V0OiAndGFyZ2V0JywKKyAgICB9LAorICAgIAorICAgIE1ldGhvZE1hcDogeworICAgICAgICBT
ZXRVUkwgOiAnc2V0VVJMJywKKyAgICAgICAgR2V0VVJMIDogJ3VybCcsCisgICAgICAgIFBsYXkg
OiAncGxheScsCisgICAgICAgIFN0b3AgOiAncGF1c2UnLAorICAgICAgICBHZXRSYXRlIDogJ3Jh
dGUnLAorICAgICAgICBTZXRSYXRlIDogJ3NldFJhdGUnLAorICAgICAgICBJc0Z1bGxTY3JlZW4g
OiAnaXNGdWxsU2NyZWVuJywKKyAgICAgICAgRXhpdEZ1bGxTY3JlZW4gOiAnZXhpdEZ1bGxTY3Jl
ZW4nLAorICAgICAgICBHZXRQbHVnaW5TdGF0dXMgOiAncGx1Z2luU3RhdHVzJywKKyAgICAgICAg
R2V0VGltZSA6ICdjdXJyZW50VGltZScsCisgICAgICAgIFNldFRpbWUgOiAnc2V0Q3VycmVudFRp
bWUnLAorICAgICAgICBTZWVrVG9EYXRlIDogJ3NlZWtUb0RhdGUnLAorICAgICAgICBHZXREYXRl
IDogJ2RhdGUnLAorICAgICAgICBHZXREdXJhdGlvbiA6ICdkdXJhdGlvbicsCisgICAgICAgIEdl
dFRpbWVTY2FsZSA6ICd0aW1lU2NhbGUnLAorICAgICAgICBHZXRNYXhUaW1lTG9hZGVkIDogJ21h
eFRpbWVMb2FkZWQnLAorICAgICAgICBHZXRNYXhCeXRlc0xvYWRlZCA6ICdtYXhCeXRlc0xvYWRl
ZCcsCisgICAgICAgIEdldE1vdmllU2l6ZSA6ICdtb3ZpZVNpemUnLAorICAgICAgICBHZXRUaW1l
ZE1ldGFkYXRhVXBkYXRlcyA6ICd0aW1lZE1ldGFkYXRhVXBkYXRlcycsCisgICAgICAgIEdldEFj
Y2Vzc0xvZyA6ICdhY2Nlc3NMb2cnLAorICAgICAgICBHZXRFcnJvckxvZyA6ICdlcnJvckxvZycs
CisgICAgfSwKKworICAgIFRpbWVTY2FsZTogMzAwMDAsCisKKyAgICBjcmVhdGVWaWRlb0VsZW1l
bnQ6IGZ1bmN0aW9uKGF0dHJpYnV0ZU5hbWVzLCBhdHRyaWJ1dGVWYWx1ZXMpCisgICAgeworICAg
ICAgICB2YXIgdmlkZW8gPSB0aGlzLnZpZGVvID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgndmlk
ZW8nKTsKKworICAgICAgICBmb3IgKG5hbWUgaW4gdGhpcy5IYW5kbGVkVmlkZW9FdmVudHMpCisg
ICAgICAgICAgICB2aWRlby5hZGRFdmVudExpc3RlbmVyKG5hbWUsIHRoaXMsIGZhbHNlKTsKKyAg
ICAgICAgCisgICAgICAgIGZvciAoaSA9IDA7IGkgPCBhdHRyaWJ1dGVOYW1lcy5sZW5ndGg7IGkr
KykgeworICAgICAgICAgICAgdmFyIHByb3BlcnR5ID0gdGhpcy5BdHRyaWJ1dGVNYXBbYXR0cmli
dXRlTmFtZXNbaV1dOworICAgICAgICAgICAgaWYgKHRoaXNbcHJvcGVydHldICE9IHVuZGVmaW5l
ZCkKKyAgICAgICAgICAgICAgICB0aGlzW3Byb3BlcnR5XSA9IGF0dHJpYnV0ZVZhbHVlc1tpXTsK
KyAgICAgICAgfQorCisgICAgICAgIHZpZGVvLnNldEF0dHJpYnV0ZSgncHNldWRvJywgJy13ZWJr
aXQtcGx1Z2luLXJlcGxhY2VtZW50Jyk7CisgICAgICAgIHZpZGVvLnNldEF0dHJpYnV0ZSgnY29u
dHJvbHMnLCAnY29udHJvbHMnKTsKKyAgICAgICAgdGhpcy5zZXRTdGF0dXMoJ1dhaXRpbmcnKTsK
KworICAgICAgICB2YXIgc3JjID0gdGhpcy5zcmM7CisgICAgICAgIGlmICh0aGlzLmhyZWYgJiYg
dGhpcy50YXJnZXQpIHsKKyAgICAgICAgICAgIHNyYyA9IHRoaXMucmVzb2x2ZVJlbGF0aXZlVG9V
cmwodGhpcy5ocmVmLCB0aGlzLnNyYyk7CisgICAgICAgICAgICB2aWRlby5wb3N0ZXIgPSB0aGlz
LnNyYzsKKyAgICAgICAgICAgIHZpZGVvLnNldEF0dHJpYnV0ZSgncHJlbG9hZCcsICdub25lJyk7
CisgICAgICAgIH0KKyAgICAgICAgCisgICAgICAgIGlmIChzcmMubGVuZ3RoKQorICAgICAgICAg
ICAgdGhpcy5zZXRVUkwoc3JjKTsKKworICAgICAgICB0aGlzLnJvb3QuYXBwZW5kQ2hpbGQodmlk
ZW8pOworICAgIH0sCisKKyAgICByZXNvbHZlUmVsYXRpdmVUb1VybDogZnVuY3Rpb24odXJsLCBi
YXNlVXJsKQorICAgIHsKKyAgICAgICAgaWYgKHVybC5pbmRleE9mKCc6Ly8nKSAhPSAtMSkKKyAg
ICAgICAgICAgIHJldHVybiB1cmw7CisgICAgICAgIGlmIChiYXNlVXJsLmluZGV4T2YoJzovLycp
ID09IC0xKQorICAgICAgICAgICAgYmFzZVVybCA9IHRoaXMucmVzb2x2ZVJlbGF0aXZlVG9Vcmwo
YmFzZVVybCwgZG9jdW1lbnQuYmFzZVVSSSk7CisKKyAgICAgICAgdmFyIGJhc2UgPSBkb2N1bWVu
dC5jcmVhdGVFbGVtZW50KCJiYXNlIik7CisgICAgICAgIGJhc2UuaHJlZiA9IGJhc2VVcmw7Cisg
ICAgICAgIGRvY3VtZW50LmhlYWQuYXBwZW5kQ2hpbGQoYmFzZSk7CisKKyAgICAgICAgdmFyIHJl
c29sdmVyID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnYScpOworICAgICAgICByZXNvbHZlci5o
cmVmID0gdXJsOworICAgICAgICB1cmwgPSByZXNvbHZlci5ocmVmOworCisgICAgICAgIGRvY3Vt
ZW50LmhlYWQucmVtb3ZlQ2hpbGQoYmFzZSk7CisgICAgICAgIGJhc2UgPSBudWxsOworCisgICAg
ICAgIHJldHVybiB1cmw7CisgICAgfSwKKyAKKyAgICBjcmVhdGVTY3JpcHRJbnRlcmZhY2U6IGZ1
bmN0aW9uKCkKKyAgICB7CisgICAgICAgIGZvciAobmFtZSBpbiB0aGlzLk1ldGhvZE1hcCkgewor
ICAgICAgICAgICAgdmFyIG1ldGhvZE5hbWUgPSB0aGlzLk1ldGhvZE1hcFtuYW1lXTsKKyAgICAg
ICAgICAgIHRoaXMuc2NyaXB0T2JqZWN0W25hbWVdID0gdGhpc1ttZXRob2ROYW1lXS5iaW5kKHRo
aXMpOworICAgICAgICB9CisgICAgfSwKKworICAgIGhhbmRsZUV2ZW50OiBmdW5jdGlvbihldmVu
dCkKKyAgICB7CisgICAgICAgIGlmIChldmVudC50YXJnZXQgIT09IHRoaXMudmlkZW8pCisgICAg
ICAgICAgICByZXR1cm47CisKKyAgICAgICAgdHJ5IHsKKyAgICAgICAgICAgIHZhciBldmVudERh
dGEgPSB0aGlzLkhhbmRsZWRWaWRlb0V2ZW50c1tldmVudC50eXBlXTsKKyAgICAgICAgICAgIGlm
ICghZXZlbnREYXRhKQorICAgICAgICAgICAgICAgIHJldHVybjsKKworICAgICAgICAgICAgaWYg
KHRoaXNbZXZlbnREYXRhXSAmJiB0aGlzW2V2ZW50RGF0YV0gaW5zdGFuY2VvZiBGdW5jdGlvbikK
KyAgICAgICAgICAgICAgICB0aGlzW2V2ZW50RGF0YV0uY2FsbCh0aGlzLCBldmVudCk7CisgICAg
ICAgICAgICBlbHNlCisgICAgICAgICAgICAgICAgdGhpcy5wb3N0RXZlbnQoZXZlbnREYXRhKTsK
KyAgICAgICAgfSBjYXRjaChlKSB7CisgICAgICAgICAgICBpZiAod2luZG93LmNvbnNvbGUpCisg
ICAgICAgICAgICAgICAgY29uc29sZS5lcnJvcihlKTsKKyAgICAgICAgfQorICAgIH0sCisKKyAg
ICBwb3N0RXZlbnQ6IGZ1bmN0aW9uKGV2ZW50TmFtZSkKKyAgICB7CisgICAgICAgIHRyeSB7Cisg
ICAgICAgICAgICBpZiAodGhpcy5wb3N0RXZlbnRzKQorICAgICAgICAgICAgICAgIHRoaXMuaG9z
dC5wb3N0RXZlbnQoZXZlbnROYW1lKTsKKyAgICAgICAgfSBjYXRjaChlKSB7IH0KKyAgICB9LAor
CisgICAgc2V0U3RhdHVzOiBmdW5jdGlvbihzdGF0dXMpCisgICAgeworICAgICAgICB0aGlzLnN0
YXR1cyA9IHN0YXR1czsKKyAgICB9LAorCisgICAgaGFuZGxlTG9hZGVkTWV0YURhdGE6IGZ1bmN0
aW9uKGV2ZW50KQorICAgIHsKKyAgICAgICAgdGhpcy5zZXRTdGF0dXMoJ1BsYXlhYmxlJyk7Cisg
ICAgICAgIHRoaXMucG9zdEV2ZW50KCdxdF92YWxpZGF0ZWQnKTsKKyAgICAgICAgdGhpcy5wb3N0
RXZlbnQoJ3F0X2xvYWRlZGZpcnN0ZnJhbWUnKTsKKyAgICAgICAgdGhpcy5wb3N0RXZlbnQoJ3F0
X2xvYWRlZG1ldGFkYXRhJyk7CisgICAgfSwKKworICAgIGhhbmRsZUZ1bGxzY3JlZW5DaGFuZ2U6
IGZ1bmN0aW9uKGV2ZW50KQorICAgIHsKKyAgICAgICAgdGhpcy5wb3N0RXZlbnQodGhpcy5pc0Z1
bGxTY3JlZW4oKSA/ICdxdF9lbnRlcmZ1bGxzY3JlZW4nIDogJ3F0X2V4aXRmdWxsc2NyZWVuJyk7
CisgICAgfSwKKworICAgIGhhbmRsZUVycm9yOiBmdW5jdGlvbihldmVudCkKKyAgICB7CisgICAg
ICAgIHRoaXMuc2V0U3RhdHVzKCdFcnJvcicpOworICAgICAgICB0aGlzLnBvc3RFdmVudCgncXRf
ZXJyb3InKTsKKyAgICB9LAorCisgICAgaGFuZGxlTG9hZFN0YXJ0OmZ1bmN0aW9uKGV2ZW50KQor
ICAgIHsKKyAgICAgICAgaWYgKHRoaXMudmlkZW8ucG9zdGVyKQorICAgICAgICAgICAgdGhpcy5z
ZXRTdGF0dXMoJ1dhaXRpbmcnKTsKKyAgICAgICAgZWxzZQorICAgICAgICAgICAgdGhpcy5zZXRT
dGF0dXMoJ0xvYWRpbmcnKTsKKyAgICAgICAgdGhpcy5wb3N0RXZlbnQoJ3F0X2JlZ2luJyk7Cisg
ICAgfSwKKworICAgIGhhbmRsZUVuZGVkOiBmdW5jdGlvbihldmVudCkKKyAgICB7CisgICAgICAg
IHRoaXMucG9zdEV2ZW50KCdxdF9lbmRlZCcpOworICAgICAgICBpZiAodGhpcy5pc0Z1bGxTY3Jl
ZW4oKSAmJiB0aGlzLmF1dG9FeGl0RnVsbFNjcmVlbikKKyAgICAgICAgICAgIGRvY3VtZW50Lndl
YmtpdEV4aXRGdWxsc2NyZWVuKCk7CisgICAgfSwKKworICAgIGlzRnVsbFNjcmVlbjogZnVuY3Rp
b24oKQorICAgIHsKKyAgICAgICAgcmV0dXJuIGRvY3VtZW50LndlYmtpdEN1cnJlbnRGdWxsU2Ny
ZWVuRWxlbWVudCA9PT0gdGhpcy52aWRlbzsKKyAgICB9LAorCisgICAgc2V0VVJMOiBmdW5jdGlv
bih1cmwpCisgICAgeworICAgICAgICB0aGlzLnNldFN0YXR1cygnVmFsaWRhdGluZycpOworICAg
ICAgICB0aGlzLnZpZGVvLnNyYyA9IHVybDsKKyAgICB9LAorICAgIAorICAgIHVybDogZnVuY3Rp
b24oKQorICAgIHsKKyAgICAgICAgcmV0dXJuIHRoaXMudmlkZW8uY3VycmVudFNyYzsKKyAgICB9
LAorICAgIAorICAgIHBsYXk6IGZ1bmN0aW9uKCkKKyAgICB7CisgICAgICAgIHRoaXMudmlkZW8u
cGxheSgpOworICAgIH0sCisgICAgCisgICAgcGF1c2U6IGZ1bmN0aW9uKCkKKyAgICB7CisgICAg
ICAgIHRoaXMudmlkZW8ucGxheWJhY2tSYXRlID0gMDsKKyAgICAgICAgdGhpcy52aWRlby5wYXVz
ZSgpOworICAgIH0sCisgICAgCisgICAgcmF0ZTogZnVuY3Rpb24oKQorICAgIHsKKyAgICAgICAg
cmV0dXJuIHRoaXMudmlkZW8ucGF1c2VkID8gMCA6IDE7CisgICAgfSwKKyAgICAKKyAgICBzZXRS
YXRlOiBmdW5jdGlvbihyYXRlKQorICAgIHsKKyAgICAgICAgaWYgKHJhdGUpCisgICAgICAgICAg
ICB0aGlzLnZpZGVvLnBsYXkoKTsKKyAgICAgICAgZWxzZQorICAgICAgICAgICAgdGhpcy52aWRl
by5wYXVzZSgpOworICAgIH0sCisgICAgCisgICAgZXhpdEZ1bGxTY3JlZW46IGZ1bmN0aW9uKCkK
KyAgICB7CisgICAgICAgIGRvY3VtZW50LndlYmtpdEV4aXRGdWxsc2NyZWVuKCk7CisgICAgfSwK
KyAgICAKKyAgICBwbHVnaW5TdGF0dXM6IGZ1bmN0aW9uKCkKKyAgICB7CisgICAgICAgIHJldHVy
biB0aGlzLnN0YXR1czsKKyAgICB9LAorCisgICAgY3VycmVudFRpbWU6IGZ1bmN0aW9uKCkKKyAg
ICB7CisgICAgICAgIHJldHVybiB0aGlzLnZpZGVvLmN1cnJlbnRUaW1lICogdGhpcy5UaW1lU2Nh
bGU7CisgICAgfSwKKworICAgIHNldEN1cnJlbnRUaW1lOiBmdW5jdGlvbih0aW1lKQorICAgIHsK
KyAgICAgICAgdGhpcy52aWRlby5jdXJyZW50VGltZSA9IHRpbWUgLyB0aGlzLlRpbWVTY2FsZQor
ICAgIH0sCisKKyAgICBzZWVrVG9EYXRlOiBmdW5jdGlvbigpCisgICAgeworICAgICAgICAvLyBG
SVhNRTogbm90IGltcGxlbWVudGVkIHlldC4KKyAgICB9LAorICAgIAorICAgIGRhdGU6IGZ1bmN0
aW9uKCkKKyAgICB7CisgICAgICAgIHJldHVybiBuZXcgRGF0ZSgpOworICAgIH0sCisgICAgCisg
ICAgZHVyYXRpb246IGZ1bmN0aW9uKCkKKyAgICB7CisgICAgICAgIHJldHVybiB0aGlzLnZpZGVv
LmR1cmF0aW9uICogdGhpcy5UaW1lU2NhbGU7CisgICAgfSwKKyAgICAKKyAgICB0aW1lU2NhbGU6
IGZ1bmN0aW9uKCkKKyAgICB7CisgICAgICAgIHJldHVybiAzMDAwMDsKKyAgICB9LAorICAgIAor
ICAgIG1heFRpbWVMb2FkZWQ6IGZ1bmN0aW9uKCkKKyAgICB7CisgICAgICAgIHJldHVybiB0aGlz
LnZpZGVvLmR1cmF0aW9uICogdGhpcy5UaW1lU2NhbGU7CisgICAgfSwKKyAgICAKKyAgICBtYXhC
eXRlc0xvYWRlZDogZnVuY3Rpb24oKQorICAgIHsKKyAgICAgICAgdmFyIHBlcmNlbnRMb2FkZWQg
PSB0aGlzLnZpZGVvLmJ1ZmZlcmVkLmVuZCgwKSAvIHRoaXMudmlkZW8uZHVyYXRpb247CisgICAg
ICAgIHJldHVybiBwZXJjZW50TG9hZGVkICogdGhpcy5tb3ZpZVNpemUoKTsKKyAgICB9LAorICAg
IAorICAgIG1vdmllU2l6ZTogZnVuY3Rpb24oKQorICAgIHsKKyAgICAgICAgdHJ5IHsKKyAgICAg
ICAgICAgIHJldHVybiB0aGlzLmhvc3QubW92aWVTaXplOworICAgICAgICB9IGNhdGNoKGUpIHsg
fQorCisgICAgICAgIHJldHVybiAwOworICAgIH0sCisgICAgCisgICAgdGltZWRNZXRhZGF0YVVw
ZGF0ZXM6IGZ1bmN0aW9uKCkKKyAgICB7CisgICAgICAgIC8vIEZJWE1FOiBub3QgaW1wbGVtZW50
ZWQgeWV0LgorICAgICAgICByZXR1cm4gbnVsbDsKKyAgICB9LAorICAgIAorICAgIGFjY2Vzc0xv
ZzogZnVuY3Rpb24oKQorICAgIHsKKyAgICAgICAgLy8gRklYTUU6IG5vdCBpbXBsZW1lbnRlZCB5
ZXQuCisgICAgICAgIHJldHVybiBudWxsOworICAgIH0sCisgICAgCisgICAgZXJyb3JMb2c6IGZ1
bmN0aW9uKCkKKyAgICB7CisgICAgICAgIC8vIEZJWE1FOiBub3QgaW1wbGVtZW50ZWQgeWV0Lgor
ICAgICAgICByZXR1cm4gbnVsbDsKKyAgICB9LAorfTsKKwpJbmRleDogU291cmNlL1dlYkNvcmUv
V2ViQ29yZS52Y3hwcm9qL1dlYkNvcmUudmN4cHJvago9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9XZWJDb3JlLnZjeHByb2ovV2ViQ29yZS52Y3hwcm9qCShyZXZpc2lvbiAxNTk4MjApCisr
KyBTb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnZjeHByb2ovV2ViQ29yZS52Y3hwcm9qCSh3b3JraW5n
IGNvcHkpCkBAIC0xODY5NSw2ICsxODY5NSw3IEBACiAgICAgPENsSW5jbHVkZSBJbmNsdWRlPSIu
LlxNb2R1bGVzXG5vdGlmaWNhdGlvbnNcTm90aWZpY2F0aW9uQ2VudGVyLmgiIC8+CiAgICAgPENs
SW5jbHVkZSBJbmNsdWRlPSIuLlxNb2R1bGVzXG5vdGlmaWNhdGlvbnNcTm90aWZpY2F0aW9uQ2xp
ZW50LmgiIC8+CiAgICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxNb2R1bGVzXG5vdGlmaWNhdGlv
bnNcV29ya2VyR2xvYmFsU2NvcGVOb3RpZmljYXRpb25zLmgiIC8+CisgICAgPENsSW5jbHVkZSBJ
bmNsdWRlPSIuLlxNb2R1bGVzXHBsdWdpbnNcUGx1Z2luUmVwbGFjZW1lbnQuaCIgLz4KICAgICA8
Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXE1vZHVsZXNcd2ViZGF0YWJhc2VcQWJzdHJhY3REYXRhYmFz
ZVNlcnZlci5oIiAvPgogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0iLi5cTW9kdWxlc1x3ZWJkYXRh
YmFzZVxBYnN0cmFjdFNRTFN0YXRlbWVudC5oIiAvPgogICAgIDxDbEluY2x1ZGUgSW5jbHVkZT0i
Li5cTW9kdWxlc1x3ZWJkYXRhYmFzZVxBYnN0cmFjdFNRTFN0YXRlbWVudEJhY2tlbmQuaCIgLz4K
SW5kZXg6IFNvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvago9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBi
eHByb2oJKHJldmlzaW9uIDE1OTgyMCkKKysrIFNvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVw
cm9qL3Byb2plY3QucGJ4cHJvagkod29ya2luZyBjb3B5KQpAQCAtMTQ2LDYgKzE0Niw5IEBACiAJ
CTA3Mjc3RTUzMTdEMDE4Q0MwMDE1NTM0RCAvKiBKU01lZGlhU3RyZWFtVHJhY2suaCBpbiBIZWFk
ZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDA3Mjc3RTQ3MTdEMDE4Q0Mw
MDE1NTM0RCAvKiBKU01lZGlhU3RyZWFtVHJhY2suaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRF
UyA9IChQcml2YXRlLCApOyB9OyB9OwogCQkwNzI3N0U1NDE3RDAxOENDMDAxNTUzNEQgLyogSlNN
ZWRpYVN0cmVhbVRyYWNrRXZlbnQuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gMDcyNzdFNDgxN0QwMThDQzAwMTU1MzREIC8qIEpTTWVkaWFTdHJlYW1U
cmFja0V2ZW50LmNwcCAqLzsgfTsKIAkJMDcyNzdFNTUxN0QwMThDQzAwMTU1MzREIC8qIEpTTWVk
aWFTdHJlYW1UcmFja0V2ZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSAwNzI3N0U0OTE3RDAxOENDMDAxNTUzNEQgLyogSlNNZWRpYVN0cmVhbVRyYWNr
RXZlbnQuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9Owor
CQkwNzJBRTFFNTE4M0MwNzQxMDAwQTU5ODggLyogUGx1Z2luUmVwbGFjZW1lbnQuaCBpbiBIZWFk
ZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDA3MkFFMURGMTgzQzA3NDEw
MDBBNTk4OCAvKiBQbHVnaW5SZXBsYWNlbWVudC5oICovOyB9OworCQkwNzJBRTFFNjE4M0MwNzQx
MDAwQTU5ODggLyogUXVpY2tUaW1lUGx1Z2luUmVwbGFjZW1lbnQuY3BwIGluIFNvdXJjZXMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMDcyQUUxRTAxODNDMDc0MTAwMEE1OTg4
IC8qIFF1aWNrVGltZVBsdWdpblJlcGxhY2VtZW50LmNwcCAqLzsgfTsKKwkJMDcyQUUxRTgxODND
MDc0MTAwMEE1OTg4IC8qIFF1aWNrVGltZVBsdWdpblJlcGxhY2VtZW50LmggaW4gSGVhZGVycyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAwNzJBRTFFMjE4M0MwNzQxMDAwQTU5
ODggLyogUXVpY2tUaW1lUGx1Z2luUmVwbGFjZW1lbnQuaCAqLzsgfTsKIAkJMDcyQzhCMTExMzFD
NTE4NjAwQTRGQ0U5IC8qIE1lZGlhUGxheWVyUHJpdmF0ZUFWRm91bmRhdGlvbi5jcHAgaW4gU291
cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAwNzZGMEQwOTEyQjgxOTI3
MDBDMjZBQTQgLyogTWVkaWFQbGF5ZXJQcml2YXRlQVZGb3VuZGF0aW9uLmNwcCAqLzsgfTsKIAkJ
MDcyQ0E4NjExNkNCNERDMzAwOEFFMTMxIC8qIENhcHRpb25Vc2VyUHJlZmVyZW5jZXMuY3BwIGlu
IFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMDcyQ0E4NjAxNkNC
NERDMzAwOEFFMTMxIC8qIENhcHRpb25Vc2VyUHJlZmVyZW5jZXMuY3BwICovOyB9OwogCQkwNzM1
RUU2QTBGNDBDNUU0MDA0QTI2MDQgLyogTWVkaWFQbGF5ZXJQcm94eS5oIGluIEhlYWRlcnMgKi8g
PSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMDczNUVFNjkwRjQwQzVFNDAwNEEyNjA0
IC8qIE1lZGlhUGxheWVyUHJveHkuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2
YXRlLCApOyB9OyB9OwpAQCAtMTg3LDYgKzE5MCw4IEBACiAJCTA3ODQ2MzQyMTQ1QjE1MUEwMEE1
OERGMSAvKiBKU1RyYWNrRXZlbnQuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRG
aWxlOyBmaWxlUmVmID0gMDc4NDYzNDAxNDVCMTUxQTAwQTU4REYxIC8qIEpTVHJhY2tFdmVudC5j
cHAgKi87IH07CiAJCTA3ODQ2MzQzMTQ1QjE1MUEwMEE1OERGMSAvKiBKU1RyYWNrRXZlbnQuaCBp
biBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDA3ODQ2MzQxMTQ1
QjE1MUEwMEE1OERGMSAvKiBKU1RyYWNrRXZlbnQuaCAqLzsgfTsKIAkJMDc4NDYzODUxNDVCMUI4
RTAwQTU4REYxIC8qIEpTVHJhY2tDdXN0b20uaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1
aWxkRmlsZTsgZmlsZVJlZiA9IDA3ODQ2Mzg0MTQ1QjFCOEUwMEE1OERGMSAvKiBKU1RyYWNrQ3Vz
dG9tLmggKi87IH07CisgCQkwNzc2NjRGQzE4M0U2QjVDMDAxMzNCOTIgLyogSlNRdWlja1RpbWVQ
bHVnaW5SZXBsYWNlbWVudC5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7
IGZpbGVSZWYgPSAwNzc2NjRGQTE4M0U2QjVDMDAxMzNCOTIgLyogSlNRdWlja1RpbWVQbHVnaW5S
ZXBsYWNlbWVudC5jcHAgKi87IH07CisgCQkwNzc2NjRGRDE4M0U2QjVDMDAxMzNCOTIgLyogSlNR
dWlja1RpbWVQbHVnaW5SZXBsYWNlbWVudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVp
bGRGaWxlOyBmaWxlUmVmID0gMDc3NjY0RkIxODNFNkI1QzAwMTMzQjkyIC8qIEpTUXVpY2tUaW1l
UGx1Z2luUmVwbGFjZW1lbnQuaCAqLzsgfTsKIAkJMDc4RTA4RkUxN0QxNENFRTAwNDIwQUExIC8q
IE1lZGlhQ29uc3RyYWludHNJbXBsLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxk
RmlsZTsgZmlsZVJlZiA9IDA3MjIxQjRBMTdDRUMzMjcwMDg0OEU1MSAvKiBNZWRpYUNvbnN0cmFp
bnRzSW1wbC5jcHAgKi87IH07CiAJCTA3OEUwOEZGMTdEMTRDRUUwMDQyMEFBMSAvKiBNZWRpYVN0
cmVhbS5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAw
NzIyMUI0QzE3Q0VDMzI3MDA4NDhFNTEgLyogTWVkaWFTdHJlYW0uY3BwICovOyB9OwogCQkwNzhF
MDkwMDE3RDE0Q0VFMDA0MjBBQTEgLyogTWVkaWFTdHJlYW1FdmVudC5jcHAgaW4gU291cmNlcyAq
LyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAwNzIyMUI0RjE3Q0VDMzI3MDA4NDhF
NTEgLyogTWVkaWFTdHJlYW1FdmVudC5jcHAgKi87IH07CkBAIC02NzY1LDYgKzY3NzAsMTIgQEAK
IAkJMDcyODQ3RTMxNkVCQzVCMDAwNDNDRkE0IC8qIFBsYXRmb3JtVGV4dFRyYWNrTWVudS5oICov
ID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29k
ZS5jLmg7IHBhdGggPSBQbGF0Zm9ybVRleHRUcmFja01lbnUuaDsgc291cmNlVHJlZSA9ICI8Z3Jv
dXA+IjsgfTsKIAkJMDcyOUIxNEUxN0NGQ0NBMDAwNEYxRDYwIC8qIE1lZGlhU3RyZWFtQ2VudGVy
TWFjLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IE1lZGlhU3RyZWFt
Q2VudGVyTWFjLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMDcyOUIxNEYxN0NG
Q0NBMDAwNEYxRDYwIC8qIE1lZGlhU3RyZWFtQ2VudGVyTWFjLmggKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmMuaDsgcGF0aCA9IE1lZGlhU3RyZWFtQ2VudGVyTWFjLmg7IHNvdXJjZVRyZWUgPSAiPGdy
b3VwPiI7IH07CisJCTA3MkFFMURGMTgzQzA3NDEwMDBBNTk4OCAvKiBQbHVnaW5SZXBsYWNlbWVu
dC5oICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IG5hbWUgPSBQbHVnaW5SZXBsYWNlbWVudC5o
OyBwYXRoID0gcGx1Z2lucy9QbHVnaW5SZXBsYWNlbWVudC5oOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworCQkwNzJBRTFFMDE4M0MwNzQxMDAwQTU5ODggLyogUXVpY2tUaW1lUGx1Z2luUmVw
bGFjZW1lbnQuY3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9
IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gUXVpY2tU
aW1lUGx1Z2luUmVwbGFjZW1lbnQuY3BwOyBwYXRoID0gcGx1Z2lucy9RdWlja1RpbWVQbHVnaW5S
ZXBsYWNlbWVudC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTA3MkFFMUUxMTgz
QzA3NDEwMDBBNTk4OCAvKiBRdWlja1RpbWVQbHVnaW5SZXBsYWNlbWVudC5jc3MgKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSB0ZXh0LmNzczsgbmFtZSA9IFF1aWNrVGltZVBsdWdpblJlcGxhY2VtZW50LmNzczsgcGF0aCA9
IHBsdWdpbnMvUXVpY2tUaW1lUGx1Z2luUmVwbGFjZW1lbnQuY3NzOyBzb3VyY2VUcmVlID0gIjxn
cm91cD4iOyB9OworCQkwNzJBRTFFMjE4M0MwNzQxMDAwQTU5ODggLyogUXVpY2tUaW1lUGx1Z2lu
UmVwbGFjZW1lbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBuYW1lID0gUXVpY2tUaW1l
UGx1Z2luUmVwbGFjZW1lbnQuaDsgcGF0aCA9IHBsdWdpbnMvUXVpY2tUaW1lUGx1Z2luUmVwbGFj
ZW1lbnQuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMDcyQUUxRTMxODNDMDc0MTAw
MEE1OTg4IC8qIFF1aWNrVGltZVBsdWdpblJlcGxhY2VtZW50LmlkbCAqLyA9IHtpc2EgPSBQQlhG
aWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7
IG5hbWUgPSBRdWlja1RpbWVQbHVnaW5SZXBsYWNlbWVudC5pZGw7IHBhdGggPSBwbHVnaW5zL1F1
aWNrVGltZVBsdWdpblJlcGxhY2VtZW50LmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
KwkJMDcyQUUxRTQxODNDMDc0MTAwMEE1OTg4IC8qIFF1aWNrVGltZVBsdWdpblJlcGxhY2VtZW50
LmpzICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5qYXZhc2NyaXB0OyBuYW1lID0gUXVpY2tUaW1lUGx1
Z2luUmVwbGFjZW1lbnQuanM7IHBhdGggPSBwbHVnaW5zL1F1aWNrVGltZVBsdWdpblJlcGxhY2Vt
ZW50LmpzOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkwNzJDQTg2MDE2Q0I0REMzMDA4
QUUxMzEgLyogQ2FwdGlvblVzZXJQcmVmZXJlbmNlcy5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJl
ZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2Rl
LmNwcC5jcHA7IHBhdGggPSBDYXB0aW9uVXNlclByZWZlcmVuY2VzLmNwcDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKIAkJMDczNUVFNjkwRjQwQzVFNDAwNEEyNjA0IC8qIE1lZGlhUGxheWVy
UHJveHkuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBs
YXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gTWVkaWFQbGF5ZXJQcm94
eS5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkwNzM2N0RERDE3MkNBNjdGMDBEODYx
QjkgLyogSW5iYW5kVGV4dFRyYWNrUHJpdmF0ZUxlZ2FjeUFWRk9iakMuaCAqLyA9IHtpc2EgPSBQ
QlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNv
dXJjZWNvZGUuYy5oOyBuYW1lID0gSW5iYW5kVGV4dFRyYWNrUHJpdmF0ZUxlZ2FjeUFWRk9iakMu
aDsgcGF0aCA9IG9iamMvSW5iYW5kVGV4dFRyYWNrUHJpdmF0ZUxlZ2FjeUFWRk9iakMuaDsgc291
cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKQEAgLTY4MDMsNiArNjgxNCw4IEBACiAJCTA3NzlCRjBD
MTg0NTMxNjgwMDBCNkFFNyAvKiBIVE1MTWVkaWFFbGVtZW50TWVkaWFTdHJlYW0uaWRsICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gdGV4dDsgcGF0aCA9IEhUTUxNZWRpYUVsZW1lbnRNZWRpYVN0cmVhbS5pZGw7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTA3ODMyMjgyMTgwMTNFRDcwMDk5OUUwQyAvKiBNZWRp
YVN0cmVhbUF1ZGlvU291cmNlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0
aCA9IE1lZGlhU3RyZWFtQXVkaW9Tb3VyY2UuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OwogCQkwNzgzMjI4MzE4MDEzRUQ4MDA5OTlFMEMgLyogTWVkaWFTdHJlYW1BdWRpb1NvdXJjZS5o
ICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93
bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBNZWRpYVN0cmVhbUF1ZGlvU291cmNl
Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisgCQkwNzc2NjRGQTE4M0U2QjVDMDAxMzNC
OTIgLyogSlNRdWlja1RpbWVQbHVnaW5SZXBsYWNlbWVudC5jcHAgKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmNwcC5jcHA7IG5hbWUgPSBKU1F1aWNrVGltZVBsdWdpblJlcGxhY2VtZW50LmNwcDsgcGF0
aCA9IEpTUXVpY2tUaW1lUGx1Z2luUmVwbGFjZW1lbnQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91
cD4iOyB9OworIAkJMDc3NjY0RkIxODNFNkI1QzAwMTMzQjkyIC8qIEpTUXVpY2tUaW1lUGx1Z2lu
UmVwbGFjZW1lbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBuYW1lID0gSlNRdWlja1Rp
bWVQbHVnaW5SZXBsYWNlbWVudC5oOyBwYXRoID0gSlNRdWlja1RpbWVQbHVnaW5SZXBsYWNlbWVu
dC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkwNzg0NjM0MDE0NUIxNTFBMDBBNThE
RjEgLyogSlNUcmFja0V2ZW50LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxl
RW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0
aCA9IEpTVHJhY2tFdmVudC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTA3ODQ2
MzQxMTQ1QjE1MUEwMEE1OERGMSAvKiBKU1RyYWNrRXZlbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxl
UmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNv
ZGUuYy5oOyBwYXRoID0gSlNUcmFja0V2ZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CiAJCTA3ODQ2Mzg0MTQ1QjFCOEUwMEE1OERGMSAvKiBKU1RyYWNrQ3VzdG9tLmggKi8gPSB7aXNh
ID0gUEJYRmlsZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUg
PSBzb3VyY2Vjb2RlLmMuaDsgcGF0aCA9IEpTVHJhY2tDdXN0b20uaDsgc291cmNlVHJlZSA9ICI8
Z3JvdXA+IjsgfTsKQEAgLTEzNzU1LDYgKzEzNzY4LDE5IEBACiAJCQlwYXRoID0gbWFjOwogCQkJ
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsKIAkJfTsKKwkJMDcyQUUxREUxODNDMDUxMzAwMEE1OTg4
IC8qIHBsdWdpbnMgKi8gPSB7CisJCQlpc2EgPSBQQlhHcm91cDsKKwkJCWNoaWxkcmVuID0gKAor
CQkJCTA3MkFFMURGMTgzQzA3NDEwMDBBNTk4OCAvKiBQbHVnaW5SZXBsYWNlbWVudC5oICovLAor
CQkJCTA3MkFFMUUwMTgzQzA3NDEwMDBBNTk4OCAvKiBRdWlja1RpbWVQbHVnaW5SZXBsYWNlbWVu
dC5jcHAgKi8sCisJCQkJMDcyQUUxRTExODNDMDc0MTAwMEE1OTg4IC8qIFF1aWNrVGltZVBsdWdp
blJlcGxhY2VtZW50LmNzcyAqLywKKwkJCQkwNzJBRTFFMjE4M0MwNzQxMDAwQTU5ODggLyogUXVp
Y2tUaW1lUGx1Z2luUmVwbGFjZW1lbnQuaCAqLywKKwkJCQkwNzJBRTFFMzE4M0MwNzQxMDAwQTU5
ODggLyogUXVpY2tUaW1lUGx1Z2luUmVwbGFjZW1lbnQuaWRsICovLAorCQkJCTA3MkFFMUU0MTgz
QzA3NDEwMDBBNTk4OCAvKiBRdWlja1RpbWVQbHVnaW5SZXBsYWNlbWVudC5qcyAqLywKKwkJCSk7
CisJCQluYW1lID0gcGx1Z2luczsKKwkJCXNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7CisJCX07CiAJ
CTA3NkYwRDA4MTJCODE5MjcwMEMyNkFBNCAvKiBhdmZvdW5kYXRpb24gKi8gPSB7CiAJCQlpc2Eg
PSBQQlhHcm91cDsKIAkJCWNoaWxkcmVuID0gKApAQCAtMTQxMDAsNiArMTQxMjYsOCBAQAogCQkx
NERGQjMzRjBBN0RGNzYzMDAxOEY3NjkgLyogRGVyaXZlZCBTb3VyY2VzICovID0gewogCQkJaXNh
ID0gUEJYR3JvdXA7CiAJCQljaGlsZHJlbiA9ICgKKwkJCQkwNzc2NjRGQTE4M0U2QjVDMDAxMzNC
OTIgLyogSlNRdWlja1RpbWVQbHVnaW5SZXBsYWNlbWVudC5jcHAgKi8sCisJCQkJMDc3NjY0RkIx
ODNFNkI1QzAwMTMzQjkyIC8qIEpTUXVpY2tUaW1lUGx1Z2luUmVwbGFjZW1lbnQuaCAqLywKIAkJ
CQlBODNCNzkxMDBDQ0IwMDFCMDAwQjA4MjUgLyogQ29yZSAqLywKIAkJCQlFMUZGOEY2MTE4MDc0
NUM2MDAxMzI2NzQgLyogQ3J5cHRvICovLAogCQkJCUE4M0I3OTBFMENDQUZGOTcwMDBCMDgyNSAv
KiBDU1MgKi8sCkBAIC0xNjk1NCw2ICsxNjk4Miw3IEBACiAJCTk3MTE0NUZFMTRFRjAwNkUwMDY3
NEZEOSAvKiBNb2R1bGVzICovID0gewogCQkJaXNhID0gUEJYR3JvdXA7CiAJCQljaGlsZHJlbiA9
ICgKKwkJCQkwNzJBRTFERTE4M0MwNTEzMDAwQTU5ODggLyogcGx1Z2lucyAqLywKIAkJCQlDREE5
OERCRDE2MDE0RTA4MDBGRUEzQjEgLyogZW5jcnlwdGVkbWVkaWEgKi8sCiAJCQkJOTcxMTQ1RkYx
NEVGMDA3OTAwNjc0RkQ5IC8qIGdlb2xvY2F0aW9uICovLAogCQkJCTk3MTJBNTUzMTUwMDRFM0Mw
MDQ4QUYxMCAvKiBpbmRleGVkZGIgKi8sCkBAIC0yMTk5Niw2ICsyMjAyNSw3IEBACiAJCQkJMjk0
ODlGQzcxMkMwMEYwMzAwRDgzRjBGIC8qIEFjY2Vzc2liaWxpdHlTY3JvbGxWaWV3LmggaW4gSGVh
ZGVycyAqLywKIAkJCQkwNzA5RkM0RTEwMjVERUUzMDA1OUNEQkEgLyogQWNjZXNzaWJpbGl0eVNs
aWRlci5oIGluIEhlYWRlcnMgKi8sCiAJCQkJNTFENzE5RDcxODExMDZFMDAwMTZEQzUxIC8qIElE
Qkhpc3RvZ3JhbXMuaCBpbiBIZWFkZXJzICovLAorCQkJCTA3MkFFMUU4MTgzQzA3NDEwMDBBNTk4
OCAvKiBRdWlja1RpbWVQbHVnaW5SZXBsYWNlbWVudC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMjlE
N0JDRkExNDQ0QUY3RDAwNzA2MTlDIC8qIEFjY2Vzc2liaWxpdHlTcGluQnV0dG9uLmggaW4gSGVh
ZGVycyAqLywKIAkJCQlBQUMwOENGMzE1Rjk0MUZEMDBGMUUxODggLyogQWNjZXNzaWJpbGl0eVNW
R1Jvb3QuaCBpbiBIZWFkZXJzICovLAogCQkJCTI5QTgxMjJCMEZCQjlDMUQwMDUxMDI5MyAvKiBB
Y2Nlc3NpYmlsaXR5VGFibGUuaCBpbiBIZWFkZXJzICovLApAQCAtMjIxOTIsNiArMjIyMjIsNyBA
QAogCQkJCUZEMzE1RkZGMTJCMDI2NzYwMEMxQTM1OSAvKiBDaGFubmVsTWVyZ2VyTm9kZS5oIGlu
IEhlYWRlcnMgKi8sCiAJCQkJRkQzMTYwMDIxMkIwMjY3NjAwQzFBMzU5IC8qIENoYW5uZWxTcGxp
dHRlck5vZGUuaCBpbiBIZWFkZXJzICovLAogCQkJCTY1NTBCNkEwMDk5REYwMjcwMDkwRDc4MSAv
KiBDaGFyYWN0ZXJEYXRhLmggaW4gSGVhZGVycyAqLywKKwkJCQkwNzc2NjRGRDE4M0U2QjVDMDAx
MzNCOTIgLyogSlNRdWlja1RpbWVQbHVnaW5SZXBsYWNlbWVudC5oIGluIEhlYWRlcnMgKi8sCiAJ
CQkJOTdCOEZGRDExNkFFN0Y5NjAwMzgzODhEIC8qIENoYXJhY3RlclJlZmVyZW5jZVBhcnNlcklu
bGluZXMuaCBpbiBIZWFkZXJzICovLAogCQkJCUUxNjRGQUEzMTgzMTVCRjQwMERCNEU2MSAvKiBD
cnlwdG9LZXlSU0EuaCBpbiBIZWFkZXJzICovLAogCQkJCUIyQzNEQTJBMEQwMDZDMUQwMEVGNkYy
NiAvKiBDaGFyc2V0RGF0YS5oIGluIEhlYWRlcnMgKi8sCkBAIC0yNDg5Miw2ICsyNDkyMyw3IEBA
CiAJCQkJRTE4MDgxMTcxNkZDRjlDQjAwQjgwRDA3IC8qIFN5bmNocm9ub3VzTG9hZGVyQ2xpZW50
LmggaW4gSGVhZGVycyAqLywKIAkJCQk1REE5N0VDRDE2OEU3ODdCMDAwRTM2NzYgLyogU3lzdGVt
VmVyc2lvbk1hYy5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQThDRkYwNTEwQTE1NEYwOTAwMEE0MjM0
IC8qIFRhYmxlTGF5b3V0LmggaW4gSGVhZGVycyAqLywKKwkJCQkwNzJBRTFFNTE4M0MwNzQxMDAw
QTU5ODggLyogUGx1Z2luUmVwbGFjZW1lbnQuaCBpbiBIZWFkZXJzICovLAogCQkJCUJDRTNCRUMz
MEQyMjJCMUQwMDdFMDZFNCAvKiBUYWdOb2RlTGlzdC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJRjU1
QjNERDYxMjUxRjEyRDAwM0VGMjY5IC8qIFRlbGVwaG9uZUlucHV0VHlwZS5oIGluIEhlYWRlcnMg
Ki8sCiAJCQkJQzY1MDQ2QTkxNjdCRkI1NTAwQ0MyQTREIC8qIFRlbXBsYXRlQ29udGVudERvY3Vt
ZW50RnJhZ21lbnQuaCBpbiBIZWFkZXJzICovLApAQCAtMjcwNDIsNiArMjcwNzQsNyBAQAogCQkJ
CTg0ODUyMjdCMTE5MDE2MkMwMDZFREM3RiAvKiBKU1NWR0hLZXJuRWxlbWVudC5jcHAgaW4gU291
cmNlcyAqLywKIAkJCQlCMkZBM0Q5RTBBQjc1QTZGMDAwRTVBQzQgLyogSlNTVkdJbWFnZUVsZW1l
bnQuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJQjJGQTNEQTAwQUI3NUE2RjAwMEU1QUM0IC8qIEpT
U1ZHTGVuZ3RoLmNwcCBpbiBTb3VyY2VzICovLAorCQkJCTA3NzY2NEZDMTgzRTZCNUMwMDEzM0I5
MiAvKiBKU1F1aWNrVGltZVBsdWdpblJlcGxhY2VtZW50LmNwcCBpbiBTb3VyY2VzICovLAogCQkJ
CTA4RTRGRTQ2MEUyQkQ0MTQwMEY0Q0FFMCAvKiBKU1NWR0xlbmd0aEN1c3RvbS5jcHAgaW4gU291
cmNlcyAqLywKIAkJCQlCMkZBM0RBMjBBQjc1QTZGMDAwRTVBQzQgLyogSlNTVkdMZW5ndGhMaXN0
LmNwcCBpbiBTb3VyY2VzICovLAogCQkJCUIyRkEzREE0MEFCNzVBNkYwMDBFNUFDNCAvKiBKU1NW
R0xpbmVhckdyYWRpZW50RWxlbWVudC5jcHAgaW4gU291cmNlcyAqLywKQEAgLTI3MjQ4LDYgKzI3
MjgxLDcgQEAKIAkJCQkwNzA1ODUwMjE3RkExMEQwMDA1RjJCQ0IgLyogSlNBbGxWaWRlb0NhcGFi
aWxpdGllcy5jcHAgaW4gU291cmNlcyAqLywKIAkJCQk5NzU5RTkzRTE0RUYxQ0Y4MDAyNkEyREQg
LyogTG9hZGFibGVUZXh0VHJhY2suY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJNjU2RDM3MzMwQURC
QTVERTAwQTQ1NTREIC8qIExvYWRlck5TVVJMRXh0cmFzLm1tIGluIFNvdXJjZXMgKi8sCisJCQkJ
MDcyQUUxRTYxODNDMDc0MTAwMEE1OTg4IC8qIFF1aWNrVGltZVBsdWdpblJlcGxhY2VtZW50LmNw
cCBpbiBTb3VyY2VzICovLAogCQkJCTdFRTY4NDY4MTJEMjZFMzgwMEU3OTQxNSAvKiBMb2FkZXJS
dW5Mb29wQ0YuY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJNTFBQkY2NEQxNjM5MkUyODAwMTMyQTdB
IC8qIExvYWRlclN0cmF0ZWd5LmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTA2RTgxRUVDMEFCNURB
OTcwMEM4NzgzNyAvKiBMb2NhbEN1cnJlbnRHcmFwaGljc0NvbnRleHQubW0gaW4gU291cmNlcyAq
LywKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2dlbmVyaWMvUnVudGltZUVuYWJsZWRG
ZWF0dXJlcy5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2dlbmVyaWMv
UnVudGltZUVuYWJsZWRGZWF0dXJlcy5oCShyZXZpc2lvbiAxNTk4MjApCisrKyBTb3VyY2UvV2Vi
Q29yZS9iaW5kaW5ncy9nZW5lcmljL1J1bnRpbWVFbmFibGVkRmVhdHVyZXMuaAkod29ya2luZyBj
b3B5KQpAQCAtMjI4LDYgKzIyOCw5IEBAIHB1YmxpYzoKICAgICAvLyBUaGUgbGFuZyBhdHRyaWJ1
dGUgc3VwcG9ydCBpcyBpbmNvbXBsZXRlIGFuZCBzaG91bGQgb25seSBiZSB0dXJuZWQgb24gZm9y
IHRlc3RzLgogICAgIHZvaWQgc2V0TGFuZ0F0dHJpYnV0ZUF3YXJlRm9ybUNvbnRyb2xVSUVuYWJs
ZWQoYm9vbCBpc0VuYWJsZWQpIHsgbV9pc0xhbmdBdHRyaWJ1dGVBd2FyZUZvcm1Db250cm9sVUlF
bmFibGVkID0gaXNFbmFibGVkOyB9CiAKKyAgICB2b2lkIHNldFBsdWdpblJlcGxhY2VtZW50RW5h
YmxlZChib29sIGlzRW5hYmxlZCkgeyBtX2lzUGx1Z2luUmVwbGFjZW1lbnRFbmFibGVkID0gaXNF
bmFibGVkOyB9CisgICAgYm9vbCBwbHVnaW5SZXBsYWNlbWVudEVuYWJsZWQoKSBjb25zdCB7IHJl
dHVybiBtX2lzUGx1Z2luUmVwbGFjZW1lbnRFbmFibGVkOyB9CisKICAgICBzdGF0aWMgUnVudGlt
ZUVuYWJsZWRGZWF0dXJlcyYgc2hhcmVkRmVhdHVyZXMoKTsKIAogcHJpdmF0ZToKQEAgLTI1MCw2
ICsyNTMsOCBAQCBwcml2YXRlOgogICAgIGJvb2wgbV9pc0NTU1JlZ2lvbnNFbmFibGVkOwogICAg
IGJvb2wgbV9pc0NTU0NvbXBvc2l0aW5nRW5hYmxlZDsKICAgICBib29sIG1faXNMYW5nQXR0cmli
dXRlQXdhcmVGb3JtQ29udHJvbFVJRW5hYmxlZDsKKyAgICBib29sIG1faXNQbHVnaW5SZXBsYWNl
bWVudEVuYWJsZWQ7CisKICNpZiBFTkFCTEUoU0NSSVBURURfU1BFRUNIKQogICAgIGJvb2wgbV9p
c1NjcmlwdGVkU3BlZWNoRW5hYmxlZDsKICNlbmRpZgpJbmRleDogU291cmNlL1dlYkNvcmUvYmlu
ZGluZ3MvanMvSlNET01CaW5kaW5nLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvYmlu
ZGluZ3MvanMvSlNET01CaW5kaW5nLmgJKHJldmlzaW9uIDE1OTgyMCkKKysrIFNvdXJjZS9XZWJD
b3JlL2JpbmRpbmdzL2pzL0pTRE9NQmluZGluZy5oCSh3b3JraW5nIGNvcHkpCkBAIC0zOTIsNiAr
MzkyLDExIEBAIGlubGluZSBKU0M6OkpTVmFsdWUgdG9KUyhKU0M6OkV4ZWNTdGF0ZSoKICAgICBy
ZXR1cm4gYXJyYXk7CiB9CiAKK2lubGluZSBKU0M6OkpTVmFsdWUgdG9KUyhKU0M6OkV4ZWNTdGF0
ZSogZXhlYywgSlNET01HbG9iYWxPYmplY3QqLCBjb25zdCBTdHJpbmcmIHZhbHVlKQoreworICAg
IHJldHVybiBqc1N0cmluZ09yTnVsbChleGVjLCB2YWx1ZSk7Cit9CisKIHRlbXBsYXRlIDxjbGFz
cyBUPgogc3RydWN0IEpTVmFsdWVUcmFpdHMgewogICAgIHN0YXRpYyBpbmxpbmUgSlNDOjpKU1Zh
bHVlIGFycmF5SlNWYWx1ZShKU0M6OkV4ZWNTdGF0ZSogZXhlYywgSlNET01HbG9iYWxPYmplY3Qq
IGdsb2JhbE9iamVjdCwgY29uc3QgVCYgdmFsdWUpCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9iaW5k
aW5ncy9qcy9KU1BsdWdpbkVsZW1lbnRGdW5jdGlvbnMuY3BwCj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJj
ZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTUGx1Z2luRWxlbWVudEZ1bmN0aW9ucy5jcHAJKHJldmlz
aW9uIDE1OTgyMCkKKysrIFNvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTUGx1Z2luRWxlbWVu
dEZ1bmN0aW9ucy5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTgyLDcgKzgyLDExIEBAIEpTT2JqZWN0
KiBwbHVnaW5TY3JpcHRPYmplY3QoRXhlY1N0YXRlKiAKIAogICAgIEhUTUxQbHVnSW5FbGVtZW50
JiBwbHVnaW5FbGVtZW50ID0gdG9IVE1MUGx1Z0luRWxlbWVudChlbGVtZW50KTsKIAotICAgIC8v
IEZpcnN0LCBzZWUgaWYgd2UgY2FuIGFzayB0aGUgcGx1Zy1pbiB2aWV3IGZvciBpdHMgc2NyaXB0
IG9iamVjdC4KKyAgICAvLyBGaXJzdCwgc2VlIGlmIHRoZSBlbGVtZW50IGhhcyBhIHBsdWctaW4g
cmVwbGFjZW1lbnQgd2l0aCBhIHNjcmlwdC4KKyAgICBpZiAoSlNPYmplY3QqIHNjcmlwdE9iamVj
dCA9IHBsdWdpbkVsZW1lbnQuc2NyaXB0T2JqZWN0Rm9yUGx1Z2luUmVwbGFjZW1lbnQoKSkKKyAg
ICAgICAgcmV0dXJuIHNjcmlwdE9iamVjdDsKKyAgICAKKyAgICAvLyBOZXh0LCBzZWUgaWYgd2Ug
Y2FuIGFzayB0aGUgcGx1Zy1pbiB2aWV3IGZvciBpdHMgc2NyaXB0IG9iamVjdC4KICAgICBpZiAo
SlNPYmplY3QqIHNjcmlwdE9iamVjdCA9IHBsdWdpblNjcmlwdE9iamVjdEZyb21QbHVnaW5WaWV3
QmFzZShwbHVnaW5FbGVtZW50LCBqc0hUTUxFbGVtZW50LT5nbG9iYWxPYmplY3QoKSkpCiAgICAg
ICAgIHJldHVybiBzY3JpcHRPYmplY3Q7CiAKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL2h0bWwvSFRN
TEVtYmVkRWxlbWVudC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvaHRtbC9IVE1M
RW1iZWRFbGVtZW50LmNwcAkocmV2aXNpb24gMTU5ODIwKQorKysgU291cmNlL1dlYkNvcmUvaHRt
bC9IVE1MRW1iZWRFbGVtZW50LmNwcAkod29ya2luZyBjb3B5KQpAQCAtMTcwLDkgKzE3MCw4IEBA
IHZvaWQgSFRNTEVtYmVkRWxlbWVudDo6dXBkYXRlV2lkZ2V0KFBsdWcKICAgICBpZiAoIXJlbmRl
cmVyKCkpIC8vIERvIG5vdCBsb2FkIHRoZSBwbHVnaW4gaWYgYmVmb3JlbG9hZCByZW1vdmVkIHRo
aXMgZWxlbWVudCBvciBpdHMgcmVuZGVyZXIuCiAgICAgICAgIHJldHVybjsKIAotICAgIFN1YmZy
YW1lTG9hZGVyJiBsb2FkZXIgPSBkb2N1bWVudCgpLmZyYW1lKCktPmxvYWRlcigpLnN1YmZyYW1l
TG9hZGVyKCk7CiAgICAgLy8gRklYTUU6IGJlZm9yZUxvYWQgY291bGQgaGF2ZSBkZXRhY2hlZCB0
aGUgcmVuZGVyZXIhICBKdXN0IGxpa2UgaW4gdGhlIDxvYmplY3Q+IGNhc2UgYWJvdmUuCi0gICAg
bG9hZGVyLnJlcXVlc3RPYmplY3QoKnRoaXMsIG1fdXJsLCBnZXROYW1lQXR0cmlidXRlKCksIG1f
c2VydmljZVR5cGUsIHBhcmFtTmFtZXMsIHBhcmFtVmFsdWVzKTsKKyAgICByZXF1ZXN0T2JqZWN0
KG1fdXJsLCBtX3NlcnZpY2VUeXBlLCBwYXJhbU5hbWVzLCBwYXJhbVZhbHVlcyk7CiB9CiAKIGJv
b2wgSFRNTEVtYmVkRWxlbWVudDo6cmVuZGVyZXJJc05lZWRlZChjb25zdCBSZW5kZXJTdHlsZSYg
c3R5bGUpCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxNZWRpYUVsZW1lbnQuY3BwCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTE1lZGlhRWxlbWVudC5jcHAJKHJl
dmlzaW9uIDE1OTgyMCkKKysrIFNvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTE1lZGlhRWxlbWVudC5j
cHAJKHdvcmtpbmcgY29weSkKQEAgLTUzMDAsNiArNTMwMCwxNCBAQCB2b2lkIEhUTUxNZWRpYUVs
ZW1lbnQ6OmRpZEFkZFVzZXJBZ2VudFNoCiB9CiAjZW5kaWYKIAordW5zaWduZWQgbG9uZyBsb25n
IEhUTUxNZWRpYUVsZW1lbnQ6OmZpbGVTaXplKCkgY29uc3QKK3sKKyAgICBpZiAobV9wbGF5ZXIp
CisgICAgICAgIHJldHVybiBtX3BsYXllci0+ZmlsZVNpemUoKTsKKyAgICAKKyAgICByZXR1cm4g
MDsKK30KKwogfQogCiAjZW5kaWYKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTE1lZGlh
RWxlbWVudC5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTE1lZGlhRWxl
bWVudC5oCShyZXZpc2lvbiAxNTk4MjApCisrKyBTb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxNZWRp
YUVsZW1lbnQuaAkod29ya2luZyBjb3B5KQpAQCAtMzkzLDYgKzM5Myw4IEBAIHB1YmxpYzoKICAg
ICBib29sIHNob3VsZFVzZVZpZGVvUGx1Z2luUHJveHkoKSBjb25zdDsKICNlbmRpZgogCisgICAg
dW5zaWduZWQgbG9uZyBsb25nIGZpbGVTaXplKCkgY29uc3Q7CisKIHByb3RlY3RlZDoKICAgICBI
VE1MTWVkaWFFbGVtZW50KGNvbnN0IFF1YWxpZmllZE5hbWUmLCBEb2N1bWVudCYsIGJvb2wpOwog
ICAgIHZpcnR1YWwgfkhUTUxNZWRpYUVsZW1lbnQoKTsKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL2h0
bWwvSFRNTE9iamVjdEVsZW1lbnQuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL2h0
bWwvSFRNTE9iamVjdEVsZW1lbnQuY3BwCShyZXZpc2lvbiAxNTk4MjApCisrKyBTb3VyY2UvV2Vi
Q29yZS9odG1sL0hUTUxPYmplY3RFbGVtZW50LmNwcAkod29ya2luZyBjb3B5KQpAQCAtMzA3LDgg
KzMwNyw5IEBAIHZvaWQgSFRNTE9iamVjdEVsZW1lbnQ6OnVwZGF0ZVdpZGdldChQbHUKICAgICBp
ZiAoIXJlbmRlcmVyKCkpIC8vIERvIG5vdCBsb2FkIHRoZSBwbHVnaW4gaWYgYmVmb3JlbG9hZCBy
ZW1vdmVkIHRoaXMgZWxlbWVudCBvciBpdHMgcmVuZGVyZXIuCiAgICAgICAgIHJldHVybjsKIAot
ICAgIFN1YmZyYW1lTG9hZGVyJiBsb2FkZXIgPSBkb2N1bWVudCgpLmZyYW1lKCktPmxvYWRlcigp
LnN1YmZyYW1lTG9hZGVyKCk7Ci0gICAgYm9vbCBzdWNjZXNzID0gYmVmb3JlTG9hZEFsbG93ZWRM
b2FkICYmIGhhc1ZhbGlkQ2xhc3NJZCgpICYmIGxvYWRlci5yZXF1ZXN0T2JqZWN0KCp0aGlzLCB1
cmwsIGdldE5hbWVBdHRyaWJ1dGUoKSwgc2VydmljZVR5cGUsIHBhcmFtTmFtZXMsIHBhcmFtVmFs
dWVzKTsKKyAgICBib29sIHN1Y2Nlc3MgPSBiZWZvcmVMb2FkQWxsb3dlZExvYWQgJiYgaGFzVmFs
aWRDbGFzc0lkKCk7CisgICAgaWYgKHN1Y2Nlc3MpCisgICAgICAgIHN1Y2Nlc3MgPSByZXF1ZXN0
T2JqZWN0KHVybCwgc2VydmljZVR5cGUsIHBhcmFtTmFtZXMsIHBhcmFtVmFsdWVzKTsKICAgICBp
ZiAoIXN1Y2Nlc3MgJiYgaGFzRmFsbGJhY2tDb250ZW50KCkpCiAgICAgICAgIHJlbmRlckZhbGxi
YWNrQ29udGVudCgpOwogfQpJbmRleDogU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MUGx1Z0luRWxl
bWVudC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MUGx1Z0luRWxl
bWVudC5jcHAJKHJldmlzaW9uIDE1OTgyMCkKKysrIFNvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTFBs
dWdJbkVsZW1lbnQuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0zNSwxOSArMzUsMjkgQEAKICNpbmNs
dWRlICJGcmFtZUxvYWRlci5oIgogI2luY2x1ZGUgIkZyYW1lVHJlZS5oIgogI2luY2x1ZGUgIkhU
TUxOYW1lcy5oIgorI2luY2x1ZGUgIk1JTUVUeXBlUmVnaXN0cnkuaCIKICNpbmNsdWRlICJQYWdl
LmgiCisjaW5jbHVkZSAiUGx1Z2luRGF0YS5oIgorI2luY2x1ZGUgIlBsdWdpblJlcGxhY2VtZW50
LmgiCiAjaW5jbHVkZSAiUGx1Z2luVmlld0Jhc2UuaCIKICNpbmNsdWRlICJSZW5kZXJFbWJlZGRl
ZE9iamVjdC5oIgogI2luY2x1ZGUgIlJlbmRlclNuYXBzaG90dGVkUGx1Z0luLmgiCiAjaW5jbHVk
ZSAiUmVuZGVyV2lkZ2V0LmgiCisjaW5jbHVkZSAiUnVudGltZUVuYWJsZWRGZWF0dXJlcy5oIgog
I2luY2x1ZGUgIlNjcmlwdENvbnRyb2xsZXIuaCIKICNpbmNsdWRlICJTZXR0aW5ncy5oIgorI2lu
Y2x1ZGUgIlNoYWRvd1Jvb3QuaCIKKyNpbmNsdWRlICJTdWJmcmFtZUxvYWRlci5oIgogI2luY2x1
ZGUgIldpZGdldC5oIgogCiAjaWYgRU5BQkxFKE5FVFNDQVBFX1BMVUdJTl9BUEkpCiAjaW5jbHVk
ZSAibnBydW50aW1lX2ltcGwuaCIKICNlbmRpZgogCisjaWYgUExBVEZPUk0oTUFDKQorI2luY2x1
ZGUgIlF1aWNrVGltZVBsdWdpblJlcGxhY2VtZW50LmgiCisjZW5kaWYKKwogbmFtZXNwYWNlIFdl
YkNvcmUgewogCiB1c2luZyBuYW1lc3BhY2UgSFRNTE5hbWVzOwpAQCAtNTUsNiArNjUsNyBAQCB1
c2luZyBuYW1lc3BhY2UgSFRNTE5hbWVzOwogSFRNTFBsdWdJbkVsZW1lbnQ6OkhUTUxQbHVnSW5F
bGVtZW50KGNvbnN0IFF1YWxpZmllZE5hbWUmIHRhZ05hbWUsIERvY3VtZW50JiBkb2N1bWVudCkK
ICAgICA6IEhUTUxGcmFtZU93bmVyRWxlbWVudCh0YWdOYW1lLCBkb2N1bWVudCkKICAgICAsIG1f
aW5CZWZvcmVMb2FkRXZlbnRIYW5kbGVyKGZhbHNlKQorICAgICwgbV9zd2FwUmVuZGVyZXJUaW1l
cih0aGlzLCAmSFRNTFBsdWdJbkVsZW1lbnQ6OnN3YXBSZW5kZXJlclRpbWVyRmlyZWQpCiAjaWYg
RU5BQkxFKE5FVFNDQVBFX1BMVUdJTl9BUEkpCiAgICAgLCBtX05QT2JqZWN0KDApCiAjZW5kaWYK
QEAgLTI2Miw0ICsyNzMsMTM2IEBAIE5QT2JqZWN0KiBIVE1MUGx1Z0luRWxlbWVudDo6Z2V0TlBP
YmplY3QKIAogI2VuZGlmIC8qIEVOQUJMRShORVRTQ0FQRV9QTFVHSU5fQVBJKSAqLwogCitSZW5k
ZXJFbGVtZW50KiBIVE1MUGx1Z0luRWxlbWVudDo6Y3JlYXRlUmVuZGVyZXIoUGFzc1JlZjxSZW5k
ZXJTdHlsZT4gc3R5bGUpCit7CisgICAgaWYgKG1fcGx1Z2luUmVwbGFjZW1lbnQgJiYgbV9wbHVn
aW5SZXBsYWNlbWVudC0+d2lsbENyZWF0ZVJlbmRlcmVyKCkpCisgICAgICAgIHJldHVybiBtX3Bs
dWdpblJlcGxhY2VtZW50LT5jcmVhdGVSZW5kZXJlcigqdGhpcywgc3RkOjptb3ZlKHN0eWxlKSk7
CisKKyAgICByZXR1cm4gbmV3IFJlbmRlckVtYmVkZGVkT2JqZWN0KCp0aGlzLCBzdGQ6Om1vdmUo
c3R5bGUpKTsKK30KKwordm9pZCBIVE1MUGx1Z0luRWxlbWVudDo6c3dhcFJlbmRlcmVyVGltZXJG
aXJlZChUaW1lcjxIVE1MUGx1Z0luRWxlbWVudD4qKQoreworICAgIEFTU0VSVChkaXNwbGF5U3Rh
dGUoKSA9PSBQcmVwYXJpbmdQbHVnaW5SZXBsYWNlbWVudCB8fCBkaXNwbGF5U3RhdGUoKSA9PSBE
aXNwbGF5aW5nU25hcHNob3QpOworICAgIGlmICh1c2VyQWdlbnRTaGFkb3dSb290KCkpCisgICAg
ICAgIHJldHVybjsKKyAgICAKKyAgICAvLyBDcmVhdGUgYSBzaGFkb3cgcm9vdCwgd2hpY2ggd2ls
bCB0cmlnZ2VyIHRoZSBjb2RlIHRvIGFkZCBhIHNuYXBzaG90IGNvbnRhaW5lcgorICAgIC8vIGFu
ZCByZWF0dGFjaCwgdGh1cyBtYWtpbmcgYSBuZXcgUmVuZGVyZXIuCisgICAgZW5zdXJlVXNlckFn
ZW50U2hhZG93Um9vdCgpOworfQorCit2b2lkIEhUTUxQbHVnSW5FbGVtZW50OjpzZXREaXNwbGF5
U3RhdGUoRGlzcGxheVN0YXRlIHN0YXRlKQoreworICAgIG1fZGlzcGxheVN0YXRlID0gc3RhdGU7
CisgICAgCisgICAgaWYgKChzdGF0ZSA9PSBEaXNwbGF5aW5nU25hcHNob3QgfHwgZGlzcGxheVN0
YXRlKCkgPT0gUHJlcGFyaW5nUGx1Z2luUmVwbGFjZW1lbnQpICYmICFtX3N3YXBSZW5kZXJlclRp
bWVyLmlzQWN0aXZlKCkpCisgICAgICAgIG1fc3dhcFJlbmRlcmVyVGltZXIuc3RhcnRPbmVTaG90
KDApOworfQorCit2b2lkIEhUTUxQbHVnSW5FbGVtZW50OjpkaWRBZGRVc2VyQWdlbnRTaGFkb3dS
b290KFNoYWRvd1Jvb3QqIHJvb3QpCit7CisgICAgaWYgKCFtX3BsdWdpblJlcGxhY2VtZW50IHx8
ICFkb2N1bWVudCgpLnBhZ2UoKSB8fCBkaXNwbGF5U3RhdGUoKSAhPSBQcmVwYXJpbmdQbHVnaW5S
ZXBsYWNlbWVudCkKKyAgICAgICAgcmV0dXJuOworICAgIAorICAgIHJvb3QtPnNldFJlc2V0U3R5
bGVJbmhlcml0YW5jZSh0cnVlKTsKKyAgICBpZiAobV9wbHVnaW5SZXBsYWNlbWVudC0+aW5zdGFs
bFJlcGxhY2VtZW50KHJvb3QpKSB7CisgICAgICAgIHNldERpc3BsYXlTdGF0ZShEaXNwbGF5aW5n
UGx1Z2luUmVwbGFjZW1lbnQpOworICAgICAgICBTdHlsZTo6cmVhdHRhY2hSZW5kZXJUcmVlKCp0
aGlzKTsKKyAgICB9Cit9CisKKyNpZiBQTEFURk9STShNQUMpCitzdGF0aWMgdm9pZCByZWdpc3Rl
clBsdWdpblJlcGxhY2VtZW50KGNvbnN0IFJlcGxhY2VtZW50UGx1Z2luJik7CisjZW5kaWYKKwor
c3RhdGljIFZlY3RvcjxSZXBsYWNlbWVudFBsdWdpbio+JiByZWdpc3RlcmVkUGx1Z2luUmVwbGFj
ZW1lbnRzKCkKK3sKKyAgICBERUZJTkVfU1RBVElDX0xPQ0FMKFZlY3RvcjxSZXBsYWNlbWVudFBs
dWdpbio+LCByZWdpc3RlcmVkUmVwbGFjZW1lbnRzLCAoKSk7CisgICAgc3RhdGljIGJvb2wgZW5n
aW5lc1F1ZXJpZWQgPSBmYWxzZTsKKyAgICAKKyAgICBpZiAoZW5naW5lc1F1ZXJpZWQpCisgICAg
ICAgIHJldHVybiByZWdpc3RlcmVkUmVwbGFjZW1lbnRzOworICAgIGVuZ2luZXNRdWVyaWVkID0g
dHJ1ZTsKKworI2lmIFBMQVRGT1JNKE1BQykKKyAgICBRdWlja1RpbWVQbHVnaW5SZXBsYWNlbWVu
dDo6cmVnaXN0ZXJQbHVnaW5SZXBsYWNlbWVudChyZWdpc3RlclBsdWdpblJlcGxhY2VtZW50KTsK
KyNlbmRpZgorICAgIAorICAgIHJldHVybiByZWdpc3RlcmVkUmVwbGFjZW1lbnRzOworfQorCisj
aWYgUExBVEZPUk0oTUFDKQorc3RhdGljIHZvaWQgcmVnaXN0ZXJQbHVnaW5SZXBsYWNlbWVudChj
b25zdCBSZXBsYWNlbWVudFBsdWdpbiYgcmVwbGFjZW1lbnQpCit7CisgICAgcmVnaXN0ZXJlZFBs
dWdpblJlcGxhY2VtZW50cygpLmFwcGVuZChuZXcgUmVwbGFjZW1lbnRQbHVnaW4ocmVwbGFjZW1l
bnQpKTsKK30KKyNlbmRpZgorCitzdGF0aWMgUmVwbGFjZW1lbnRQbHVnaW4qIHBsdWdpblJlcGxh
Y2VtZW50Rm9yVHlwZShjb25zdCBVUkwmIHVybCwgY29uc3QgU3RyaW5nJiBtaW1lVHlwZSkKK3sK
KyAgICBWZWN0b3I8UmVwbGFjZW1lbnRQbHVnaW4qPiYgcmVwbGFjZW1lbnRzID0gcmVnaXN0ZXJl
ZFBsdWdpblJlcGxhY2VtZW50cygpOworICAgIGlmIChyZXBsYWNlbWVudHMuaXNFbXB0eSgpKQor
ICAgICAgICByZXR1cm4gbnVsbHB0cjsKKworICAgIFN0cmluZyBleHRlbnNpb247CisgICAgU3Ry
aW5nIGxhc3RQYXRoQ29tcG9uZW50ID0gdXJsLmxhc3RQYXRoQ29tcG9uZW50KCk7CisgICAgc2l6
ZV90IGRvdE9mZnNldCA9IGxhc3RQYXRoQ29tcG9uZW50LnJldmVyc2VGaW5kKCcuJyk7CisgICAg
aWYgKGRvdE9mZnNldCAhPSBub3RGb3VuZCkKKyAgICAgICAgZXh0ZW5zaW9uID0gbGFzdFBhdGhD
b21wb25lbnQuc3Vic3RyaW5nKGRvdE9mZnNldCArIDEpOworCisgICAgU3RyaW5nIHR5cGUgPSBt
aW1lVHlwZTsKKyAgICBpZiAodHlwZS5pc0VtcHR5KCkgJiYgdXJsLnByb3RvY29sSXNEYXRhKCkp
CisgICAgICAgIHR5cGUgPSBtaW1lVHlwZUZyb21EYXRhVVJMKHVybC5zdHJpbmcoKSk7CisgICAg
CisgICAgaWYgKHR5cGUuaXNFbXB0eSgpICYmICFleHRlbnNpb24uaXNFbXB0eSgpKSB7CisgICAg
ICAgIGZvciAoc2l6ZV90IGkgPSAwOyBpIDwgcmVwbGFjZW1lbnRzLnNpemUoKTsgaSsrKQorICAg
ICAgICAgICAgaWYgKHJlcGxhY2VtZW50c1tpXS0+c3VwcG9ydHNGaWxlRXh0ZW5zaW9uKGV4dGVu
c2lvbikpCisgICAgICAgICAgICAgICAgcmV0dXJuIHJlcGxhY2VtZW50c1tpXTsKKyAgICB9Cisg
ICAgCisgICAgaWYgKHR5cGUuaXNFbXB0eSgpKSB7CisgICAgICAgIGlmIChleHRlbnNpb24uaXNF
bXB0eSgpKQorICAgICAgICAgICAgcmV0dXJuIG51bGxwdHI7CisgICAgICAgIHR5cGUgPSBNSU1F
VHlwZVJlZ2lzdHJ5OjpnZXRNZWRpYU1JTUVUeXBlRm9yRXh0ZW5zaW9uKGV4dGVuc2lvbik7Cisg
ICAgfQorCisgICAgaWYgKHR5cGUuaXNFbXB0eSgpKQorICAgICAgICByZXR1cm4gbnVsbHB0cjsK
KworICAgIGZvciAodW5zaWduZWQgaSA9IDA7IGkgPCByZXBsYWNlbWVudHMuc2l6ZSgpOyBpKysp
CisgICAgICAgIGlmIChyZXBsYWNlbWVudHNbaV0tPnN1cHBvcnRzVHlwZSh0eXBlKSkKKyAgICAg
ICAgICAgIHJldHVybiByZXBsYWNlbWVudHNbaV07CisKKyAgICByZXR1cm4gbnVsbHB0cjsKK30K
KworYm9vbCBIVE1MUGx1Z0luRWxlbWVudDo6cmVxdWVzdE9iamVjdChjb25zdCBTdHJpbmcmIHVy
bCwgY29uc3QgU3RyaW5nJiBtaW1lVHlwZSwgY29uc3QgVmVjdG9yPFN0cmluZz4mIHBhcmFtTmFt
ZXMsIGNvbnN0IFZlY3RvcjxTdHJpbmc+JiBwYXJhbVZhbHVlcykKK3sKKyAgICBpZiAoIVJ1bnRp
bWVFbmFibGVkRmVhdHVyZXM6OnNoYXJlZEZlYXR1cmVzKCkucGx1Z2luUmVwbGFjZW1lbnRFbmFi
bGVkKCkpCisgICAgICAgIHJldHVybiBmYWxzZTsKKworICAgIGlmIChtX3BsdWdpblJlcGxhY2Vt
ZW50KQorICAgICAgICByZXR1cm4gdHJ1ZTsKKworICAgIFVSTCBjb21wbGV0ZWRVUkw7CisgICAg
aWYgKCF1cmwuaXNFbXB0eSgpKQorICAgICAgICBjb21wbGV0ZWRVUkwgPSBkb2N1bWVudCgpLmNv
bXBsZXRlVVJMKHVybCk7CisKKyAgICBSZXBsYWNlbWVudFBsdWdpbiogcmVwbGFjZW1lbnQgPSBw
bHVnaW5SZXBsYWNlbWVudEZvclR5cGUoY29tcGxldGVkVVJMLCBtaW1lVHlwZSk7CisgICAgaWYg
KCFyZXBsYWNlbWVudCkKKyAgICAgICAgcmV0dXJuIGZhbHNlOworCisgICAgbV9wbHVnaW5SZXBs
YWNlbWVudCA9IHJlcGxhY2VtZW50LT5jcmVhdGUoKnRoaXMsIHBhcmFtTmFtZXMsIHBhcmFtVmFs
dWVzKTsKKyAgICBzZXREaXNwbGF5U3RhdGUoUHJlcGFyaW5nUGx1Z2luUmVwbGFjZW1lbnQpOwor
ICAgIHJldHVybiB0cnVlOworfQorCitKU0M6OkpTT2JqZWN0KiBIVE1MUGx1Z0luRWxlbWVudDo6
c2NyaXB0T2JqZWN0Rm9yUGx1Z2luUmVwbGFjZW1lbnQoKQoreworICAgIGlmIChtX3BsdWdpblJl
cGxhY2VtZW50KQorICAgICAgICByZXR1cm4gbV9wbHVnaW5SZXBsYWNlbWVudC0+c2NyaXB0T2Jq
ZWN0KCk7CisgICAgcmV0dXJuIG51bGxwdHI7Cit9CisKIH0KSW5kZXg6IFNvdXJjZS9XZWJDb3Jl
L2h0bWwvSFRNTFBsdWdJbkVsZW1lbnQuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9o
dG1sL0hUTUxQbHVnSW5FbGVtZW50LmgJKHJldmlzaW9uIDE1OTgyMCkKKysrIFNvdXJjZS9XZWJD
b3JlL2h0bWwvSFRNTFBsdWdJbkVsZW1lbnQuaAkod29ya2luZyBjb3B5KQpAQCAtMzgsNiArMzgs
NyBAQCBjbGFzcyBJbnN0YW5jZTsKIAogbmFtZXNwYWNlIFdlYkNvcmUgewogCitjbGFzcyBQbHVn
aW5SZXBsYWNlbWVudDsKIGNsYXNzIFJlbmRlckVtYmVkZGVkT2JqZWN0OwogY2xhc3MgUmVuZGVy
V2lkZ2V0OwogY2xhc3MgV2lkZ2V0OwpAQCAtNTcsMTQgKzU4LDE4IEBAIHB1YmxpYzoKICAgICAg
ICAgRGlzcGxheWluZ1NuYXBzaG90LAogICAgICAgICBSZXN0YXJ0aW5nLAogICAgICAgICBSZXN0
YXJ0aW5nV2l0aFBlbmRpbmdNb3VzZUNsaWNrLAotICAgICAgICBQbGF5aW5nCisgICAgICAgIFBs
YXlpbmcsCisgICAgICAgIFByZXBhcmluZ1BsdWdpblJlcGxhY2VtZW50LAorICAgICAgICBEaXNw
bGF5aW5nUGx1Z2luUmVwbGFjZW1lbnQsCiAgICAgfTsKICAgICBEaXNwbGF5U3RhdGUgZGlzcGxh
eVN0YXRlKCkgY29uc3QgeyByZXR1cm4gbV9kaXNwbGF5U3RhdGU7IH0KLSAgICB2aXJ0dWFsIHZv
aWQgc2V0RGlzcGxheVN0YXRlKERpc3BsYXlTdGF0ZSBzdGF0ZSkgeyBtX2Rpc3BsYXlTdGF0ZSA9
IHN0YXRlOyB9CisgICAgdmlydHVhbCB2b2lkIHNldERpc3BsYXlTdGF0ZShEaXNwbGF5U3RhdGUp
OwogICAgIHZpcnR1YWwgdm9pZCB1cGRhdGVTbmFwc2hvdChQYXNzUmVmUHRyPEltYWdlPikgeyB9
CiAgICAgdmlydHVhbCB2b2lkIGRpc3BhdGNoUGVuZGluZ01vdXNlQ2xpY2soKSB7IH0KICAgICB2
aXJ0dWFsIGJvb2wgaXNSZXN0YXJ0ZWRQbHVnaW4oKSBjb25zdCB7IHJldHVybiBmYWxzZTsgfQog
CisgICAgSlNDOjpKU09iamVjdCogc2NyaXB0T2JqZWN0Rm9yUGx1Z2luUmVwbGFjZW1lbnQoKTsK
KwogI2lmIEVOQUJMRShORVRTQ0FQRV9QTFVHSU5fQVBJKQogICAgIE5QT2JqZWN0KiBnZXROUE9i
amVjdCgpOwogI2VuZGlmCkBAIC05MSwxMiArOTYsMTkgQEAgcHJvdGVjdGVkOgogCiAgICAgdmly
dHVhbCB2b2lkIGRlZmF1bHRFdmVudEhhbmRsZXIoRXZlbnQqKSBPVkVSUklERTsKIAorICAgIHZp
cnR1YWwgYm9vbCByZXF1ZXN0T2JqZWN0KGNvbnN0IFN0cmluZyYgdXJsLCBjb25zdCBTdHJpbmcm
IG1pbWVUeXBlLCBjb25zdCBWZWN0b3I8U3RyaW5nPiYgcGFyYW1OYW1lcywgY29uc3QgVmVjdG9y
PFN0cmluZz4mIHBhcmFtVmFsdWVzKTsKKyAgICB2aXJ0dWFsIFJlbmRlckVsZW1lbnQqIGNyZWF0
ZVJlbmRlcmVyKFBhc3NSZWY8UmVuZGVyU3R5bGU+KSBPVkVSUklERTsKKyAgICB2aXJ0dWFsIHZv
aWQgZGlkQWRkVXNlckFnZW50U2hhZG93Um9vdChTaGFkb3dSb290KikgT1ZFUlJJREU7CisKICAg
ICAvLyBTdWJjbGFzc2VzIHNob3VsZCB1c2UgZ3VhcmRlZERpc3BhdGNoQmVmb3JlTG9hZEV2ZW50
IGluc3RlYWQgb2YgY2FsbGluZyBkaXNwYXRjaEJlZm9yZUxvYWRFdmVudCBkaXJlY3RseS4KICAg
ICBib29sIGd1YXJkZWREaXNwYXRjaEJlZm9yZUxvYWRFdmVudChjb25zdCBTdHJpbmcmIHNvdXJj
ZVVSTCk7CiAKICAgICBib29sIG1faW5CZWZvcmVMb2FkRXZlbnRIYW5kbGVyOwogCiBwcml2YXRl
OgorICAgIHZvaWQgc3dhcFJlbmRlcmVyVGltZXJGaXJlZChUaW1lcjxIVE1MUGx1Z0luRWxlbWVu
dD4qKTsKKyAgICBib29sIHNob3VsZE92ZXJyaWRlUGx1Z2luKGNvbnN0IFN0cmluZyYgdXJsLCBj
b25zdCBTdHJpbmcmIG1pbWVUeXBlKTsKKwogICAgIGJvb2wgZGlzcGF0Y2hCZWZvcmVMb2FkRXZl
bnQoY29uc3QgU3RyaW5nJiBzb3VyY2VVUkwpOyAvLyBOb3QgaW1wbGVtZW50ZWQsIGdlbmVyYXRl
cyBhIGNvbXBpbGUgZXJyb3IgaWYgc3ViY2xhc3NlcyBjYWxsIHRoaXMgYnkgbWlzdGFrZS4KIAog
ICAgIHZpcnR1YWwgYm9vbCBhcmVBdXRob3JTaGFkb3dzQWxsb3dlZCgpIGNvbnN0IE9WRVJSSURF
IHsgcmV0dXJuIGZhbHNlOyB9CkBAIC0xMDksNiArMTIxLDggQEAgcHJpdmF0ZToKICAgICB2aXJ0
dWFsIGJvb2wgaXNQbHVnaW5FbGVtZW50KCkgY29uc3QgT1ZFUlJJREUgRklOQUw7CiAKICAgICBS
ZWZQdHI8SlNDOjpCaW5kaW5nczo6SW5zdGFuY2U+IG1faW5zdGFuY2U7CisgICAgVGltZXI8SFRN
TFBsdWdJbkVsZW1lbnQ+IG1fc3dhcFJlbmRlcmVyVGltZXI7CisgICAgUmVmUHRyPFBsdWdpblJl
cGxhY2VtZW50PiBtX3BsdWdpblJlcGxhY2VtZW50OwogI2lmIEVOQUJMRShORVRTQ0FQRV9QTFVH
SU5fQVBJKQogICAgIE5QT2JqZWN0KiBtX05QT2JqZWN0OwogI2VuZGlmCkluZGV4OiBTb3VyY2Uv
V2ViQ29yZS9odG1sL0hUTUxQbHVnSW5JbWFnZUVsZW1lbnQuY3BwCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNv
dXJjZS9XZWJDb3JlL2h0bWwvSFRNTFBsdWdJbkltYWdlRWxlbWVudC5jcHAJKHJldmlzaW9uIDE1
OTgyMCkKKysrIFNvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTFBsdWdJbkltYWdlRWxlbWVudC5jcHAJ
KHdvcmtpbmcgY29weSkKQEAgLTEwOCw3ICsxMDgsNiBAQCBIVE1MUGx1Z0luSW1hZ2VFbGVtZW50
OjpIVE1MUGx1Z0luSW1hZ2VFCiAgICAgLCBtX3Nob3VsZFByZWZlclBsdWdJbnNGb3JJbWFnZXMo
cHJlZmVyUGx1Z0luc0ZvckltYWdlc09wdGlvbiA9PSBTaG91bGRQcmVmZXJQbHVnSW5zRm9ySW1h
Z2VzKQogICAgICwgbV9uZWVkc0RvY3VtZW50QWN0aXZhdGlvbkNhbGxiYWNrcyhmYWxzZSkKICAg
ICAsIG1fc2ltdWxhdGVkTW91c2VDbGlja1RpbWVyKHRoaXMsICZIVE1MUGx1Z0luSW1hZ2VFbGVt
ZW50OjpzaW11bGF0ZWRNb3VzZUNsaWNrVGltZXJGaXJlZCwgc2ltdWxhdGVkTW91c2VDbGlja1Rp
bWVyRGVsYXkpCi0gICAgLCBtX3N3YXBSZW5kZXJlclRpbWVyKHRoaXMsICZIVE1MUGx1Z0luSW1h
Z2VFbGVtZW50Ojpzd2FwUmVuZGVyZXJUaW1lckZpcmVkKQogICAgICwgbV9yZW1vdmVTbmFwc2hv
dFRpbWVyKHRoaXMsICZIVE1MUGx1Z0luSW1hZ2VFbGVtZW50OjpyZW1vdmVTbmFwc2hvdFRpbWVy
RmlyZWQpCiAgICAgLCBtX2NyZWF0ZWREdXJpbmdVc2VyR2VzdHVyZShTY3JpcHRDb250cm9sbGVy
Ojpwcm9jZXNzaW5nVXNlckdlc3R1cmUoKSkKICAgICAsIG1faXNSZXN0YXJ0ZWRQbHVnaW4oZmFs
c2UpCkBAIC0xMzksOSArMTM4LDYgQEAgdm9pZCBIVE1MUGx1Z0luSW1hZ2VFbGVtZW50OjpzZXRE
aXNwbGF5UwogI2VuZGlmCiAKICAgICBIVE1MUGx1Z0luRWxlbWVudDo6c2V0RGlzcGxheVN0YXRl
KHN0YXRlKTsKLQotICAgIGlmIChzdGF0ZSA9PSBEaXNwbGF5aW5nU25hcHNob3QpCi0gICAgICAg
IG1fc3dhcFJlbmRlcmVyVGltZXIuc3RhcnRPbmVTaG90KDApOwogfQogCiBSZW5kZXJFbWJlZGRl
ZE9iamVjdCogSFRNTFBsdWdJbkltYWdlRWxlbWVudDo6cmVuZGVyRW1iZWRkZWRPYmplY3QoKSBj
b25zdApAQCAtMTk2LDYgKzE5Miw5IEBAIGJvb2wgSFRNTFBsdWdJbkltYWdlRWxlbWVudDo6d291
bGRMb2FkQXMKIAogUmVuZGVyRWxlbWVudCogSFRNTFBsdWdJbkltYWdlRWxlbWVudDo6Y3JlYXRl
UmVuZGVyZXIoUGFzc1JlZjxSZW5kZXJTdHlsZT4gc3R5bGUpCiB7CisgICAgaWYgKGRpc3BsYXlT
dGF0ZSgpID49IFByZXBhcmluZ1BsdWdpblJlcGxhY2VtZW50KQorICAgICAgICByZXR1cm4gSFRN
TFBsdWdJbkVsZW1lbnQ6OmNyZWF0ZVJlbmRlcmVyKHN0ZDo6bW92ZShzdHlsZSkpOworCiAgICAg
Ly8gT25jZSBhIFBsdWdJbiBFbGVtZW50IGNyZWF0ZXMgaXRzIHJlbmRlcmVyLCBpdCBuZWVkcyB0
byBiZSB0b2xkIHdoZW4gdGhlIERvY3VtZW50IGdvZXMKICAgICAvLyBpbmFjdGl2ZSBvciByZWFj
dGl2YXRlcyBzbyBpdCBjYW4gY2xlYXIgdGhlIHJlbmRlcmVyIGJlZm9yZSBnb2luZyBpbnRvIHRo
ZSBwYWdlIGNhY2hlLgogICAgIGlmICghbV9uZWVkc0RvY3VtZW50QWN0aXZhdGlvbkNhbGxiYWNr
cykgewpAQCAtMjIxLDcgKzIyMCw3IEBAIFJlbmRlckVsZW1lbnQqIEhUTUxQbHVnSW5JbWFnZUVs
ZW1lbnQ6OmMKICAgICAgICAgcmV0dXJuIGltYWdlOwogICAgIH0KIAotICAgIHJldHVybiBuZXcg
UmVuZGVyRW1iZWRkZWRPYmplY3QoKnRoaXMsIHN0ZDo6bW92ZShzdHlsZSkpOworICAgIHJldHVy
biBIVE1MUGx1Z0luRWxlbWVudDo6Y3JlYXRlUmVuZGVyZXIoc3RkOjptb3ZlKHN0eWxlKSk7CiB9
CiAKIGJvb2wgSFRNTFBsdWdJbkltYWdlRWxlbWVudDo6d2lsbFJlY2FsY1N0eWxlKFN0eWxlOjpD
aGFuZ2UpCkBAIC0zNjMsOCArMzYyLDEyIEBAIHN0YXRpYyBET01XcmFwcGVyV29ybGQmIHBsdWdJ
bkltYWdlRWxlbWUKIAogdm9pZCBIVE1MUGx1Z0luSW1hZ2VFbGVtZW50OjpkaWRBZGRVc2VyQWdl
bnRTaGFkb3dSb290KFNoYWRvd1Jvb3QqIHJvb3QpCiB7CisgICAgSFRNTFBsdWdJbkVsZW1lbnQ6
OmRpZEFkZFVzZXJBZ2VudFNoYWRvd1Jvb3Qocm9vdCk7CisgICAgaWYgKGRpc3BsYXlTdGF0ZSgp
ID49IFByZXBhcmluZ1BsdWdpblJlcGxhY2VtZW50KQorICAgICAgICByZXR1cm47CisKICAgICBQ
YWdlKiBwYWdlID0gZG9jdW1lbnQoKS5wYWdlKCk7Ci0gICAgaWYgKCFwYWdlKQorICAgIGlmIChw
YWdlKQogICAgICAgICByZXR1cm47CiAKICAgICAvLyBSZXNldCBhbnkgYXV0aG9yIHN0eWxlcyB0
aGF0IG1heSBhcHBseSBhcyB3ZSBvbmx5IHdhbnQgZXhwbGljaXQKQEAgLTQwOSwxNyArNDEyLDYg
QEAgYm9vbCBIVE1MUGx1Z0luSW1hZ2VFbGVtZW50OjpwYXJ0T2ZTbmFwcwogICAgIHJldHVybiBu
b2RlICYmIHNuYXBzaG90TGFiZWwgJiYgKG5vZGUgPT0gc25hcHNob3RMYWJlbC5nZXQoKSB8fCBu
b2RlLT5pc0Rlc2NlbmRhbnRPZihzbmFwc2hvdExhYmVsLmdldCgpKSk7CiB9CiAKLXZvaWQgSFRN
TFBsdWdJbkltYWdlRWxlbWVudDo6c3dhcFJlbmRlcmVyVGltZXJGaXJlZChUaW1lcjxIVE1MUGx1
Z0luSW1hZ2VFbGVtZW50PiopCi17Ci0gICAgQVNTRVJUKGRpc3BsYXlTdGF0ZSgpID09IERpc3Bs
YXlpbmdTbmFwc2hvdCk7Ci0gICAgaWYgKHVzZXJBZ2VudFNoYWRvd1Jvb3QoKSkKLSAgICAgICAg
cmV0dXJuOwotCi0gICAgLy8gQ3JlYXRlIGEgc2hhZG93IHJvb3QsIHdoaWNoIHdpbGwgdHJpZ2dl
ciB0aGUgY29kZSB0byBhZGQgYSBzbmFwc2hvdCBjb250YWluZXIKLSAgICAvLyBhbmQgcmVhdHRh
Y2gsIHRodXMgbWFraW5nIGEgbmV3IFJlbmRlcmVyLgotICAgIGVuc3VyZVVzZXJBZ2VudFNoYWRv
d1Jvb3QoKTsKLX0KLQogdm9pZCBIVE1MUGx1Z0luSW1hZ2VFbGVtZW50OjpyZW1vdmVTbmFwc2hv
dFRpbWVyRmlyZWQoVGltZXI8SFRNTFBsdWdJbkltYWdlRWxlbWVudD4qKQogewogICAgIG1fc25h
cHNob3RJbWFnZSA9IG51bGxwdHI7CkBAIC00OTYsNyArNDg4LDcgQEAgdm9pZCBIVE1MUGx1Z0lu
SW1hZ2VFbGVtZW50Ojp1c2VyRGlkQ2xpYwogICAgIExPRyhQbHVnaW5zLCAiJXAgVXNlciBjbGlj
a2VkIG9uIHNuYXBzaG90dGVkIHBsdWctaW4uIFJlc3RhcnQuIiwgdGhpcyk7CiAgICAgcmVzdGFy
dFNuYXBzaG90dGVkUGx1Z0luKCk7CiAgICAgaWYgKGZvcndhcmRFdmVudCkKLSAgICAgICAgc2V0
RGlzcGxheVN0YXRlKEhUTUxQbHVnSW5FbGVtZW50OjpSZXN0YXJ0aW5nV2l0aFBlbmRpbmdNb3Vz
ZUNsaWNrKTsKKyAgICAgICAgc2V0RGlzcGxheVN0YXRlKFJlc3RhcnRpbmdXaXRoUGVuZGluZ01v
dXNlQ2xpY2spOwogICAgIHJlc3RhcnRTaW1pbGFyUGx1Z0lucygpOwogfQogCkBAIC03MzIsNCAr
NzI0LDEzIEBAIHZvaWQgSFRNTFBsdWdJbkltYWdlRWxlbWVudDo6ZGVmYXVsdEV2ZW4KICAgICBI
VE1MUGx1Z0luRWxlbWVudDo6ZGVmYXVsdEV2ZW50SGFuZGxlcihldmVudCk7CiB9CiAKK2Jvb2wg
SFRNTFBsdWdJbkltYWdlRWxlbWVudDo6cmVxdWVzdE9iamVjdChjb25zdCBTdHJpbmcmIHVybCwg
Y29uc3QgU3RyaW5nJiBtaW1lVHlwZSwgY29uc3QgVmVjdG9yPFN0cmluZz4mIHBhcmFtTmFtZXMs
IGNvbnN0IFZlY3RvcjxTdHJpbmc+JiBwYXJhbVZhbHVlcykKK3sKKyAgICBpZiAoSFRNTFBsdWdJ
bkVsZW1lbnQ6OnJlcXVlc3RPYmplY3QodXJsLCBtaW1lVHlwZSwgcGFyYW1OYW1lcywgcGFyYW1W
YWx1ZXMpKQorICAgICAgICByZXR1cm4gdHJ1ZTsKKyAgICAKKyAgICBTdWJmcmFtZUxvYWRlciYg
bG9hZGVyID0gZG9jdW1lbnQoKS5mcmFtZSgpLT5sb2FkZXIoKS5zdWJmcmFtZUxvYWRlcigpOwor
ICAgIHJldHVybiBsb2FkZXIucmVxdWVzdE9iamVjdCgqdGhpcywgdXJsLCBnZXROYW1lQXR0cmli
dXRlKCksIG1pbWVUeXBlLCBwYXJhbU5hbWVzLCBwYXJhbVZhbHVlcyk7Cit9CisKIH0gLy8gbmFt
ZXNwYWNlIFdlYkNvcmUKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTFBsdWdJbkltYWdl
RWxlbWVudC5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTFBsdWdJbklt
YWdlRWxlbWVudC5oCShyZXZpc2lvbiAxNTk4MjApCisrKyBTb3VyY2UvV2ViQ29yZS9odG1sL0hU
TUxQbHVnSW5JbWFnZUVsZW1lbnQuaAkod29ya2luZyBjb3B5KQpAQCAtMjksNiArMjksNyBAQAog
bmFtZXNwYWNlIFdlYkNvcmUgewogCiBjbGFzcyBIVE1MSW1hZ2VMb2FkZXI7CitjbGFzcyBIVE1M
VmlkZW9FbGVtZW50OwogY2xhc3MgRnJhbWVMb2FkZXI7CiBjbGFzcyBJbWFnZTsKIGNsYXNzIE1v
dXNlRXZlbnQ7CkBAIC0xMjMsNiArMTI0LDcgQEAgcHJvdGVjdGVkOgogICAgIHZpcnR1YWwgUGFz
c1JlZlB0cjxSZW5kZXJTdHlsZT4gY3VzdG9tU3R5bGVGb3JSZW5kZXJlcigpIE9WRVJSSURFOwog
CiAgICAgdmlydHVhbCBib29sIGlzUmVzdGFydGVkUGx1Z2luKCkgY29uc3QgT1ZFUlJJREUgeyBy
ZXR1cm4gbV9pc1Jlc3RhcnRlZFBsdWdpbjsgfQorICAgIHZpcnR1YWwgYm9vbCByZXF1ZXN0T2Jq
ZWN0KGNvbnN0IFN0cmluZyYgdXJsLCBjb25zdCBTdHJpbmcmIG1pbWVUeXBlLCBjb25zdCBWZWN0
b3I8U3RyaW5nPiYgcGFyYW1OYW1lcywgY29uc3QgVmVjdG9yPFN0cmluZz4mIHBhcmFtVmFsdWVz
KSBPVkVSUklERTsKIAogcHJpdmF0ZToKICAgICB2aXJ0dWFsIFJlbmRlckVsZW1lbnQqIGNyZWF0
ZVJlbmRlcmVyKFBhc3NSZWY8UmVuZGVyU3R5bGU+KSBPVkVSUklERTsKQEAgLTEzOCw4ICsxNDAs
NiBAQCBwcml2YXRlOgogICAgIHZpcnR1YWwgdm9pZCBkaXNwYXRjaFBlbmRpbmdNb3VzZUNsaWNr
KCkgT1ZFUlJJREU7CiAgICAgdm9pZCBzaW11bGF0ZWRNb3VzZUNsaWNrVGltZXJGaXJlZChEZWZl
cnJhYmxlT25lU2hvdFRpbWVyPEhUTUxQbHVnSW5JbWFnZUVsZW1lbnQ+Kik7CiAKLSAgICB2b2lk
IHN3YXBSZW5kZXJlclRpbWVyRmlyZWQoVGltZXI8SFRNTFBsdWdJbkltYWdlRWxlbWVudD4qKTsK
LQogICAgIHZvaWQgcmVzdGFydFNpbWlsYXJQbHVnSW5zKCk7CiAKICAgICB2aXJ0dWFsIGJvb2wg
aXNQbHVnSW5JbWFnZUVsZW1lbnQoKSBjb25zdCBPVkVSUklERSB7IHJldHVybiB0cnVlOyB9CkBA
IC0xNTQsNyArMTU0LDYgQEAgcHJpdmF0ZToKICAgICBSZWZQdHI8UmVuZGVyU3R5bGU+IG1fY3Vz
dG9tU3R5bGVGb3JQYWdlQ2FjaGU7CiAgICAgUmVmUHRyPE1vdXNlRXZlbnQ+IG1fcGVuZGluZ0Ns
aWNrRXZlbnRGcm9tU25hcHNob3Q7CiAgICAgRGVmZXJyYWJsZU9uZVNob3RUaW1lcjxIVE1MUGx1
Z0luSW1hZ2VFbGVtZW50PiBtX3NpbXVsYXRlZE1vdXNlQ2xpY2tUaW1lcjsKLSAgICBUaW1lcjxI
VE1MUGx1Z0luSW1hZ2VFbGVtZW50PiBtX3N3YXBSZW5kZXJlclRpbWVyOwogICAgIFRpbWVyPEhU
TUxQbHVnSW5JbWFnZUVsZW1lbnQ+IG1fcmVtb3ZlU25hcHNob3RUaW1lcjsKICAgICBSZWZQdHI8
SW1hZ2U+IG1fc25hcHNob3RJbWFnZTsKICAgICBib29sIG1fY3JlYXRlZER1cmluZ1VzZXJHZXN0
dXJlOwpJbmRleDogU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MVmlkZW9FbGVtZW50LmgKPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MVmlkZW9FbGVtZW50LmgJKHJldmlzaW9u
IDE1OTgyMCkKKysrIFNvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTFZpZGVvRWxlbWVudC5oCSh3b3Jr
aW5nIGNvcHkpCkBAIC03MiwxMiArNzIsMTIgQEAgcHVibGljOgogICAgIGJvb2wgc2hvdWxkRGlz
cGxheVBvc3RlckltYWdlKCkgY29uc3QgeyByZXR1cm4gZGlzcGxheU1vZGUoKSA9PSBQb3N0ZXIg
fHwgZGlzcGxheU1vZGUoKSA9PSBQb3N0ZXJXYWl0aW5nRm9yVmlkZW87IH0KIAogICAgIFVSTCBw
b3N0ZXJJbWFnZVVSTCgpIGNvbnN0OworICAgIHZpcnR1YWwgUmVuZGVyRWxlbWVudCogY3JlYXRl
UmVuZGVyZXIoUGFzc1JlZjxSZW5kZXJTdHlsZT4pIE9WRVJSSURFOwogCiBwcml2YXRlOgogICAg
IEhUTUxWaWRlb0VsZW1lbnQoY29uc3QgUXVhbGlmaWVkTmFtZSYsIERvY3VtZW50JiwgYm9vbCk7
CiAKICAgICB2aXJ0dWFsIGJvb2wgcmVuZGVyZXJJc05lZWRlZChjb25zdCBSZW5kZXJTdHlsZSYp
IE9WRVJSSURFOwotICAgIHZpcnR1YWwgUmVuZGVyRWxlbWVudCogY3JlYXRlUmVuZGVyZXIoUGFz
c1JlZjxSZW5kZXJTdHlsZT4pIE9WRVJSSURFOwogICAgIHZpcnR1YWwgdm9pZCBkaWRBdHRhY2hS
ZW5kZXJlcnMoKSBPVkVSUklERTsKICAgICB2aXJ0dWFsIHZvaWQgcGFyc2VBdHRyaWJ1dGUoY29u
c3QgUXVhbGlmaWVkTmFtZSYsIGNvbnN0IEF0b21pY1N0cmluZyYpIE9WRVJSSURFOwogICAgIHZp
cnR1YWwgYm9vbCBpc1ByZXNlbnRhdGlvbkF0dHJpYnV0ZShjb25zdCBRdWFsaWZpZWROYW1lJikg
Y29uc3QgT1ZFUlJJREU7CkluZGV4OiBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9N
ZWRpYVBsYXllci5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3Jh
cGhpY3MvTWVkaWFQbGF5ZXIuY3BwCShyZXZpc2lvbiAxNTk4MjApCisrKyBTb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9ncmFwaGljcy9NZWRpYVBsYXllci5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTEy
MjUsNiArMTIyNSwxNCBAQCBzaXplX3QgTWVkaWFQbGF5ZXI6OmV4dHJhTWVtb3J5Q29zdCgpIGNv
CiAgICAgcmV0dXJuIG1fcHJpdmF0ZS0+ZXh0cmFNZW1vcnlDb3N0KCk7CiB9CiAKK3Vuc2lnbmVk
IGxvbmcgbG9uZyBNZWRpYVBsYXllcjo6ZmlsZVNpemUoKSBjb25zdAoreworICAgIGlmICghbV9w
cml2YXRlKQorICAgICAgICByZXR1cm4gMDsKKyAgICAKKyAgICByZXR1cm4gbV9wcml2YXRlLT5m
aWxlU2l6ZSgpOworfQorCiB2b2lkIE1lZGlhUGxheWVyRmFjdG9yeVN1cHBvcnQ6OmNhbGxSZWdp
c3Rlck1lZGlhRW5naW5lKE1lZGlhRW5naW5lUmVnaXN0ZXIgcmVnaXN0ZXJNZWRpYUVuZ2luZSkK
IHsKICAgICByZWdpc3Rlck1lZGlhRW5naW5lKGFkZE1lZGlhRW5naW5lKTsKSW5kZXg6IFNvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL01lZGlhUGxheWVyLmgKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvTWVkaWFQbGF5ZXIuaAkocmV2aXNpb24g
MTU5ODIwKQorKysgU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvTWVkaWFQbGF5ZXIu
aAkod29ya2luZyBjb3B5KQpAQCAtNTA4LDYgKzUwOCw4IEBAIHB1YmxpYzoKIAogICAgIHNpemVf
dCBleHRyYU1lbW9yeUNvc3QoKSBjb25zdDsKIAorICAgIHVuc2lnbmVkIGxvbmcgbG9uZyBmaWxl
U2l6ZSgpIGNvbnN0OworCiBwcml2YXRlOgogICAgIE1lZGlhUGxheWVyKE1lZGlhUGxheWVyQ2xp
ZW50Kik7CiAgICAgTWVkaWFQbGF5ZXJGYWN0b3J5KiBuZXh0QmVzdE1lZGlhRW5naW5lKE1lZGlh
UGxheWVyRmFjdG9yeSopIGNvbnN0OwpJbmRleDogU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3Jh
cGhpY3MvTWVkaWFQbGF5ZXJQcml2YXRlLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vZ3JhcGhpY3MvTWVkaWFQbGF5ZXJQcml2YXRlLmgJKHJldmlzaW9uIDE1OTgyMCkK
KysrIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL01lZGlhUGxheWVyUHJpdmF0ZS5o
CSh3b3JraW5nIGNvcHkpCkBAIC0yMTMsNiArMjEzLDggQEAgcHVibGljOgogICAgIHZpcnR1YWwg
U3RyaW5nIGxhbmd1YWdlT2ZQcmltYXJ5QXVkaW9UcmFjaygpIGNvbnN0IHsgcmV0dXJuIGVtcHR5
U3RyaW5nKCk7IH0KIAogICAgIHZpcnR1YWwgc2l6ZV90IGV4dHJhTWVtb3J5Q29zdCgpIGNvbnN0
IHsgcmV0dXJuIDA7IH0KKyAgICAKKyAgICB2aXJ0dWFsIHVuc2lnbmVkIGxvbmcgbG9uZyBmaWxl
U2l6ZSgpIGNvbnN0IHsgcmV0dXJuIDA7IH0KIH07CiAKIH0KSW5kZXg6IFNvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2dyYXBoaWNzL2F2Zm91bmRhdGlvbi9NZWRpYVBsYXllclByaXZhdGVBVkZvdW5k
YXRpb24uY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNz
L2F2Zm91bmRhdGlvbi9NZWRpYVBsYXllclByaXZhdGVBVkZvdW5kYXRpb24uY3BwCShyZXZpc2lv
biAxNTk4MjApCisrKyBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9hdmZvdW5kYXRp
b24vTWVkaWFQbGF5ZXJQcml2YXRlQVZGb3VuZGF0aW9uLmNwcAkod29ya2luZyBjb3B5KQpAQCAt
OTIxLDcgKzkyMSw4IEBAIHNpemVfdCBNZWRpYVBsYXllclByaXZhdGVBVkZvdW5kYXRpb246OmUK
ICAgICBpZiAoIWR1cmF0aW9uKQogICAgICAgICByZXR1cm4gMDsKIAotICAgIHJldHVybiB0b3Rh
bEJ5dGVzKCkgKiBidWZmZXJlZCgpLT50b3RhbER1cmF0aW9uKCkgLyBkdXJhdGlvbjsKKyAgICB1
bnNpZ25lZCBsb25nIGxvbmcgZXh0cmEgPSB0b3RhbEJ5dGVzKCkgKiBidWZmZXJlZCgpLT50b3Rh
bER1cmF0aW9uKCkgLyBkdXJhdGlvbjsKKyAgICByZXR1cm4gc3RhdGljX2Nhc3Q8dW5zaWduZWQ+
KGV4dHJhKTsKIH0KIAogdm9pZCBNZWRpYVBsYXllclByaXZhdGVBVkZvdW5kYXRpb246OmNsZWFy
VGV4dFRyYWNrcygpCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9hdmZv
dW5kYXRpb24vTWVkaWFQbGF5ZXJQcml2YXRlQVZGb3VuZGF0aW9uLmgKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvYXZmb3VuZGF0aW9uL01lZGlhUGxheWVy
UHJpdmF0ZUFWRm91bmRhdGlvbi5oCShyZXZpc2lvbiAxNTk4MjApCisrKyBTb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9ncmFwaGljcy9hdmZvdW5kYXRpb24vTWVkaWFQbGF5ZXJQcml2YXRlQVZGb3Vu
ZGF0aW9uLmgJKHdvcmtpbmcgY29weSkKQEAgLTE5MCw2ICsxOTAsNyBAQCBwcm90ZWN0ZWQ6CiAK
ICAgICB2aXJ0dWFsIGJvb2wgc3VwcG9ydHNGdWxsc2NyZWVuKCkgY29uc3Q7CiAgICAgdmlydHVh
bCBib29sIHN1cHBvcnRzU2Nhbm5pbmcoKSBjb25zdCB7IHJldHVybiB0cnVlOyB9CisgICAgdW5z
aWduZWQgbG9uZyBsb25nIGZpbGVTaXplKCkgY29uc3QgeyByZXR1cm4gdG90YWxCeXRlcygpOyB9
CiAKICAgICAvLyBSZXF1aXJlZCBpbnRlcmZhY2VzIGZvciBjb25jcmV0ZSBkZXJpdmVkIGNsYXNz
ZXMuCiAgICAgdmlydHVhbCB2b2lkIGNyZWF0ZUFWQXNzZXRGb3JVUkwoY29uc3QgU3RyaW5nJikg
PSAwOwpAQCAtMjI1LDcgKzIyNiw3IEBAIHByb3RlY3RlZDoKICAgICB2aXJ0dWFsIHZvaWQgdXBk
YXRlUmF0ZSgpID0gMDsKICAgICB2aXJ0dWFsIGZsb2F0IHJhdGUoKSBjb25zdCA9IDA7CiAgICAg
dmlydHVhbCB2b2lkIHNlZWtUb1RpbWUoZG91YmxlIHRpbWUsIGRvdWJsZSBuZWdhdGl2ZVRvbGVy
YW5jZSwgZG91YmxlIHBvc2l0aXZlVG9sZXJhbmNlKSA9IDA7Ci0gICAgdmlydHVhbCB1bnNpZ25l
ZCB0b3RhbEJ5dGVzKCkgY29uc3QgPSAwOworICAgIHZpcnR1YWwgdW5zaWduZWQgbG9uZyBsb25n
IHRvdGFsQnl0ZXMoKSBjb25zdCA9IDA7CiAgICAgdmlydHVhbCBQYXNzUmVmUHRyPFRpbWVSYW5n
ZXM+IHBsYXRmb3JtQnVmZmVyZWRUaW1lUmFuZ2VzKCkgY29uc3QgPSAwOwogICAgIHZpcnR1YWwg
ZG91YmxlIHBsYXRmb3JtTWF4VGltZVNlZWthYmxlKCkgY29uc3QgPSAwOwogICAgIHZpcnR1YWwg
ZG91YmxlIHBsYXRmb3JtTWluVGltZVNlZWthYmxlKCkgY29uc3QgPSAwOwpJbmRleDogU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvYXZmb3VuZGF0aW9uL2NmL01lZGlhUGxheWVyUHJp
dmF0ZUFWRm91bmRhdGlvbkNGLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9ncmFwaGljcy9hdmZvdW5kYXRpb24vY2YvTWVkaWFQbGF5ZXJQcml2YXRlQVZGb3VuZGF0
aW9uQ0YuY3BwCShyZXZpc2lvbiAxNTk4MjApCisrKyBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9n
cmFwaGljcy9hdmZvdW5kYXRpb24vY2YvTWVkaWFQbGF5ZXJQcml2YXRlQVZGb3VuZGF0aW9uQ0Yu
Y3BwCSh3b3JraW5nIGNvcHkpCkBAIC03MjEsNyArNzIxLDcgQEAgZmxvYXQgTWVkaWFQbGF5ZXJQ
cml2YXRlQVZGb3VuZGF0aW9uQ0Y6OgogICAgIHJldHVybiBtYXhUaW1lTG9hZGVkOyAgIAogfQog
Ci11bnNpZ25lZCBNZWRpYVBsYXllclByaXZhdGVBVkZvdW5kYXRpb25DRjo6dG90YWxCeXRlcygp
IGNvbnN0Cit1bnNpZ25lZCBsb25nIGxvbmcgTWVkaWFQbGF5ZXJQcml2YXRlQVZGb3VuZGF0aW9u
Q0Y6OnRvdGFsQnl0ZXMoKSBjb25zdAogewogICAgIGlmICghbWV0YURhdGFBdmFpbGFibGUoKSB8
fCAhYXZBc3NldChtX2F2ZldyYXBwZXIpKQogICAgICAgICByZXR1cm4gMDsKQEAgLTczNCw4ICs3
MzQsNyBAQCB1bnNpZ25lZCBNZWRpYVBsYXllclByaXZhdGVBVkZvdW5kYXRpb25DCiAgICAgICAg
IHRvdGFsTWVkaWFTaXplICs9IEFWQ0ZBc3NldFRyYWNrR2V0VG90YWxTYW1wbGVEYXRhTGVuZ3Ro
KGFzc2V0VHJhY2spOwogICAgIH0KIAotICAgIC8vIEZJWE1FOiBJdCBkb2Vzbid0IHNlZW0gc2Fm
ZSB0byBjYXN0IGFuIGludDY0X3QgdG8gdW5zaWduZWQuCi0gICAgcmV0dXJuIHN0YXRpY19jYXN0
PHVuc2lnbmVkPih0b3RhbE1lZGlhU2l6ZSk7CisgICAgcmV0dXJuIHN0YXRpY19jYXN0PHVuc2ln
bmVkIGxvbmcgbG9uZz4odG90YWxNZWRpYVNpemUpOwogfQogCiBNZWRpYVBsYXllclByaXZhdGVB
VkZvdW5kYXRpb246OkFzc2V0U3RhdHVzIE1lZGlhUGxheWVyUHJpdmF0ZUFWRm91bmRhdGlvbkNG
Ojphc3NldFN0YXR1cygpIGNvbnN0CkluZGV4OiBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFw
aGljcy9hdmZvdW5kYXRpb24vY2YvTWVkaWFQbGF5ZXJQcml2YXRlQVZGb3VuZGF0aW9uQ0YuaAo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9hdmZvdW5kYXRp
b24vY2YvTWVkaWFQbGF5ZXJQcml2YXRlQVZGb3VuZGF0aW9uQ0YuaAkocmV2aXNpb24gMTU5ODIw
KQorKysgU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvYXZmb3VuZGF0aW9uL2NmL01l
ZGlhUGxheWVyUHJpdmF0ZUFWRm91bmRhdGlvbkNGLmgJKHdvcmtpbmcgY29weSkKQEAgLTc3LDcg
Kzc3LDcgQEAgcHJpdmF0ZToKICAgICB2aXJ0dWFsIHZvaWQgdXBkYXRlUmF0ZSgpOwogICAgIHZp
cnR1YWwgZmxvYXQgcmF0ZSgpIGNvbnN0OwogICAgIHZpcnR1YWwgdm9pZCBzZWVrVG9UaW1lKGRv
dWJsZSB0aW1lLCBkb3VibGUgbmVnYXRpdmVUb2xlcmFuY2UsIGRvdWJsZSBwb3NpdGl2ZVRvbGVy
YW5jZSk7Ci0gICAgdmlydHVhbCB1bnNpZ25lZCB0b3RhbEJ5dGVzKCkgY29uc3Q7CisgICAgdmly
dHVhbCB1bnNpZ25lZCBsb25nIGxvbmcgdG90YWxCeXRlcygpIGNvbnN0OwogICAgIHZpcnR1YWwg
UGFzc1JlZlB0cjxUaW1lUmFuZ2VzPiBwbGF0Zm9ybUJ1ZmZlcmVkVGltZVJhbmdlcygpIGNvbnN0
OwogICAgIHZpcnR1YWwgZG91YmxlIHBsYXRmb3JtTWluVGltZVNlZWthYmxlKCkgY29uc3Q7CiAg
ICAgdmlydHVhbCBkb3VibGUgcGxhdGZvcm1NYXhUaW1lU2Vla2FibGUoKSBjb25zdDsKSW5kZXg6
IFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2F2Zm91bmRhdGlvbi9vYmpjL01lZGlh
UGxheWVyUHJpdmF0ZUFWRm91bmRhdGlvbk9iakMuaAo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9ncmFwaGljcy9hdmZvdW5kYXRpb24vb2JqYy9NZWRpYVBsYXllclByaXZh
dGVBVkZvdW5kYXRpb25PYmpDLmgJKHJldmlzaW9uIDE1OTgyMCkKKysrIFNvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2dyYXBoaWNzL2F2Zm91bmRhdGlvbi9vYmpjL01lZGlhUGxheWVyUHJpdmF0ZUFW
Rm91bmRhdGlvbk9iakMuaAkod29ya2luZyBjb3B5KQpAQCAtMTQ4LDcgKzE0OCw3IEBAIHByaXZh
dGU6CiAgICAgdmlydHVhbCB2b2lkIHVwZGF0ZVJhdGUoKTsKICAgICB2aXJ0dWFsIGZsb2F0IHJh
dGUoKSBjb25zdDsKICAgICB2aXJ0dWFsIHZvaWQgc2Vla1RvVGltZShkb3VibGUgdGltZSwgZG91
YmxlIG5lZ2F0aXZlVG9sZXJhbmNlLCBkb3VibGUgcG9zaXRpdmVUb2xlcmFuY2UpOwotICAgIHZp
cnR1YWwgdW5zaWduZWQgdG90YWxCeXRlcygpIGNvbnN0OworICAgIHZpcnR1YWwgdW5zaWduZWQg
bG9uZyBsb25nIHRvdGFsQnl0ZXMoKSBjb25zdDsKICAgICB2aXJ0dWFsIFBhc3NSZWZQdHI8VGlt
ZVJhbmdlcz4gcGxhdGZvcm1CdWZmZXJlZFRpbWVSYW5nZXMoKSBjb25zdDsKICAgICB2aXJ0dWFs
IGRvdWJsZSBwbGF0Zm9ybU1pblRpbWVTZWVrYWJsZSgpIGNvbnN0OwogICAgIHZpcnR1YWwgZG91
YmxlIHBsYXRmb3JtTWF4VGltZVNlZWthYmxlKCkgY29uc3Q7CkluZGV4OiBTb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9ncmFwaGljcy9hdmZvdW5kYXRpb24vb2JqYy9NZWRpYVBsYXllclByaXZhdGVB
VkZvdW5kYXRpb25PYmpDLm1tCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2dyYXBoaWNzL2F2Zm91bmRhdGlvbi9vYmpjL01lZGlhUGxheWVyUHJpdmF0ZUFWRm91bmRhdGlv
bk9iakMubW0JKHJldmlzaW9uIDE1OTgyMCkKKysrIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dy
YXBoaWNzL2F2Zm91bmRhdGlvbi9vYmpjL01lZGlhUGxheWVyUHJpdmF0ZUFWRm91bmRhdGlvbk9i
akMubW0JKHdvcmtpbmcgY29weSkKQEAgLTgwMyw3ICs4MDMsNyBAQCBmbG9hdCBNZWRpYVBsYXll
clByaXZhdGVBVkZvdW5kYXRpb25PYmpDCiAgICAgcmV0dXJuIG1heFRpbWVMb2FkZWQ7ICAgCiB9
CiAKLXVuc2lnbmVkIE1lZGlhUGxheWVyUHJpdmF0ZUFWRm91bmRhdGlvbk9iakM6OnRvdGFsQnl0
ZXMoKSBjb25zdAordW5zaWduZWQgbG9uZyBsb25nIE1lZGlhUGxheWVyUHJpdmF0ZUFWRm91bmRh
dGlvbk9iakM6OnRvdGFsQnl0ZXMoKSBjb25zdAogewogICAgIGlmICghbWV0YURhdGFBdmFpbGFi
bGUoKSkKICAgICAgICAgcmV0dXJuIDA7CkBAIC04MTIsNyArODEyLDcgQEAgdW5zaWduZWQgTWVk
aWFQbGF5ZXJQcml2YXRlQVZGb3VuZGF0aW9uTwogICAgIGZvciAoQVZQbGF5ZXJJdGVtVHJhY2sg
KnRoaXNUcmFjayBpbiBtX2NhY2hlZFRyYWNrcy5nZXQoKSkKICAgICAgICAgdG90YWxNZWRpYVNp
emUgKz0gW1t0aGlzVHJhY2sgYXNzZXRUcmFja10gdG90YWxTYW1wbGVEYXRhTGVuZ3RoXTsKIAot
ICAgIHJldHVybiBzdGF0aWNfY2FzdDx1bnNpZ25lZD4odG90YWxNZWRpYVNpemUpOworICAgIHJl
dHVybiB0b3RhbE1lZGlhU2l6ZTsKIH0KIAogdm9pZCBNZWRpYVBsYXllclByaXZhdGVBVkZvdW5k
YXRpb25PYmpDOjpzZXRBc3NldChpZCBhc3NldCkKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL3Rlc3Rp
bmcvSW50ZXJuYWxTZXR0aW5ncy5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvdGVz
dGluZy9JbnRlcm5hbFNldHRpbmdzLmNwcAkocmV2aXNpb24gMTU5ODIwKQorKysgU291cmNlL1dl
YkNvcmUvdGVzdGluZy9JbnRlcm5hbFNldHRpbmdzLmNwcAkod29ya2luZyBjb3B5KQpAQCAtOTQs
NiArOTQsNyBAQCBJbnRlcm5hbFNldHRpbmdzOjpCYWNrdXA6OkJhY2t1cChTZXR0aW5nCiAgICAg
LCBtX29yaWdpbmFsVGltZVdpdGhvdXRNb3VzZU1vdmVtZW50QmVmb3JlSGlkaW5nQ29udHJvbHMo
c2V0dGluZ3MudGltZVdpdGhvdXRNb3VzZU1vdmVtZW50QmVmb3JlSGlkaW5nQ29udHJvbHMoKSkK
ICAgICAsIG1fdXNlTGVnYWN5QmFja2dyb3VuZFNpemVTaG9ydGhhbmRCZWhhdmlvcihzZXR0aW5n
cy51c2VMZWdhY3lCYWNrZ3JvdW5kU2l6ZVNob3J0aGFuZEJlaGF2aW9yKCkpCiAgICAgLCBtX2F1
dG9zY3JvbGxGb3JEcmFnQW5kRHJvcEVuYWJsZWQoc2V0dGluZ3MuYXV0b3Njcm9sbEZvckRyYWdB
bmREcm9wRW5hYmxlZCgpKQorICAgICwgbV9wbHVnaW5SZXBsYWNlbWVudEVuYWJsZWQoUnVudGlt
ZUVuYWJsZWRGZWF0dXJlczo6c2hhcmVkRmVhdHVyZXMoKS5wbHVnaW5SZXBsYWNlbWVudEVuYWJs
ZWQoKSkKIHsKIH0KIApAQCAtMTU2LDYgKzE1Nyw3IEBAIHZvaWQgSW50ZXJuYWxTZXR0aW5nczo6
QmFja3VwOjpyZXN0b3JlVG8KICAgICBzZXR0aW5ncy5zZXRUaW1lV2l0aG91dE1vdXNlTW92ZW1l
bnRCZWZvcmVIaWRpbmdDb250cm9scyhtX29yaWdpbmFsVGltZVdpdGhvdXRNb3VzZU1vdmVtZW50
QmVmb3JlSGlkaW5nQ29udHJvbHMpOwogICAgIHNldHRpbmdzLnNldFVzZUxlZ2FjeUJhY2tncm91
bmRTaXplU2hvcnRoYW5kQmVoYXZpb3IobV91c2VMZWdhY3lCYWNrZ3JvdW5kU2l6ZVNob3J0aGFu
ZEJlaGF2aW9yKTsKICAgICBzZXR0aW5ncy5zZXRBdXRvc2Nyb2xsRm9yRHJhZ0FuZERyb3BFbmFi
bGVkKG1fYXV0b3Njcm9sbEZvckRyYWdBbmREcm9wRW5hYmxlZCk7CisgICAgUnVudGltZUVuYWJs
ZWRGZWF0dXJlczo6c2hhcmVkRmVhdHVyZXMoKS5zZXRQbHVnaW5SZXBsYWNlbWVudEVuYWJsZWQo
bV9wbHVnaW5SZXBsYWNlbWVudEVuYWJsZWQpOwogfQogCiAvLyBXZSBjYW4ndCB1c2UgUmVmQ291
bnRlZFN1cHBsZW1lbnQgYmVjYXVzZSB0aGF0IHdvdWxkIHRyeSB0byBtYWtlIEludGVybmFsU2V0
dGluZ3MgUmVmQ291bnRlZApAQCAtNTI4LDQgKzUzMCw5IEBAIHZvaWQgSW50ZXJuYWxTZXR0aW5n
czo6c2V0Rm9udEZhbGxiYWNrUHIKICAgICBzZXR0aW5ncygpLT5zZXRGb250RmFsbGJhY2tQcmVm
ZXJzUGljdG9ncmFwaHMocHJlZmVyUGljdG9ncmFwaHMpOwogfQogCit2b2lkIEludGVybmFsU2V0
dGluZ3M6OnNldFBsdWdpblJlcGxhY2VtZW50RW5hYmxlZChib29sIGVuYWJsZWQpCit7CisgICAg
UnVudGltZUVuYWJsZWRGZWF0dXJlczo6c2hhcmVkRmVhdHVyZXMoKS5zZXRQbHVnaW5SZXBsYWNl
bWVudEVuYWJsZWQoZW5hYmxlZCk7Cit9CisKIH0KSW5kZXg6IFNvdXJjZS9XZWJDb3JlL3Rlc3Rp
bmcvSW50ZXJuYWxTZXR0aW5ncy5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL3Rlc3Rp
bmcvSW50ZXJuYWxTZXR0aW5ncy5oCShyZXZpc2lvbiAxNTk4MjApCisrKyBTb3VyY2UvV2ViQ29y
ZS90ZXN0aW5nL0ludGVybmFsU2V0dGluZ3MuaAkod29ya2luZyBjb3B5KQpAQCAtOTEsNiArOTEs
NyBAQCBwdWJsaWM6CiAgICAgICAgIGJvb2wgbV9vcmlnaW5hbFRpbWVXaXRob3V0TW91c2VNb3Zl
bWVudEJlZm9yZUhpZGluZ0NvbnRyb2xzOwogICAgICAgICBib29sIG1fdXNlTGVnYWN5QmFja2dy
b3VuZFNpemVTaG9ydGhhbmRCZWhhdmlvcjsKICAgICAgICAgYm9vbCBtX2F1dG9zY3JvbGxGb3JE
cmFnQW5kRHJvcEVuYWJsZWQ7CisgICAgICAgIGJvb2wgbV9wbHVnaW5SZXBsYWNlbWVudEVuYWJs
ZWQ7CiAgICAgfTsKIAogICAgIHN0YXRpYyBQYXNzUmVmUHRyPEludGVybmFsU2V0dGluZ3M+IGNy
ZWF0ZShQYWdlKiBwYWdlKQpAQCAtMTM2LDYgKzEzNyw3IEBAIHB1YmxpYzoKICAgICB2b2lkIHNl
dFVzZUxlZ2FjeUJhY2tncm91bmRTaXplU2hvcnRoYW5kQmVoYXZpb3IoYm9vbCBlbmFibGVkLCBF
eGNlcHRpb25Db2RlJik7CiAgICAgdm9pZCBzZXRBdXRvc2Nyb2xsRm9yRHJhZ0FuZERyb3BFbmFi
bGVkKGJvb2wgZW5hYmxlZCwgRXhjZXB0aW9uQ29kZSYpOwogICAgIHZvaWQgc2V0Rm9udEZhbGxi
YWNrUHJlZmVyc1BpY3RvZ3JhcGhzKGJvb2wgcHJlZmVyUGljdG9ncmFwaHMsIEV4Y2VwdGlvbkNv
ZGUmKTsKKyAgICB2b2lkIHNldFBsdWdpblJlcGxhY2VtZW50RW5hYmxlZChib29sKTsKIAogcHJp
dmF0ZToKICAgICBleHBsaWNpdCBJbnRlcm5hbFNldHRpbmdzKFBhZ2UqKTsKSW5kZXg6IFNvdXJj
ZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJuYWxTZXR0aW5ncy5pZGwKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291
cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbFNldHRpbmdzLmlkbAkocmV2aXNpb24gMTU5ODIw
KQorKysgU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbFNldHRpbmdzLmlkbAkod29ya2lu
ZyBjb3B5KQpAQCAtNjAsNCArNjAsNSBAQAogICAgIFtSYWlzZXNFeGNlcHRpb25dIHZvaWQgc2V0
VXNlTGVnYWN5QmFja2dyb3VuZFNpemVTaG9ydGhhbmRCZWhhdmlvcihib29sZWFuIGVuYWJsZWQp
OwogICAgIFtSYWlzZXNFeGNlcHRpb25dIHZvaWQgc2V0QXV0b3Njcm9sbEZvckRyYWdBbmREcm9w
RW5hYmxlZChib29sZWFuIGVuYWJsZWQpOwogICAgIFtSYWlzZXNFeGNlcHRpb25dIHZvaWQgc2V0
Rm9udEZhbGxiYWNrUHJlZmVyc1BpY3RvZ3JhcGhzKGJvb2xlYW4gcHJlZmVyUGljdG9ncmFwaHMp
OworICAgIHZvaWQgc2V0UGx1Z2luUmVwbGFjZW1lbnRFbmFibGVkKGJvb2xlYW4gZW5hYmxlZCk7
CiB9OwpJbmRleDogTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRl
c3RzL0NoYW5nZUxvZwkocmV2aXNpb24gMTU5ODIwKQorKysgTGF5b3V0VGVzdHMvQ2hhbmdlTG9n
CSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMTggQEAKKzIwMTMtMTEtMjcgIEVyaWMgQ2FybHNv
biAgPGVyaWMuY2FybHNvbkBhcHBsZS5jb20+CisKKyAgICAgICAgQWxsb3cgdGhlIFF1aWNrVGlt
ZSBwbHVnLWluIHRvIGJlIHJlcGxhY2VkIGJ5IHNjcmlwdCBpbiBhbiBpc29sYXRlZCB3b3JkCisg
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMjQ5MDAKKwor
ICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIHBsYXRmb3Jt
L2VmbC9UZXN0RXhwZWN0YXRpb25zOiBTa2lwIHRoZSBuZXcgdGVzdC4KKyAgICAgICAgKiBwbGF0
Zm9ybS9ndGsvVGVzdEV4cGVjdGF0aW9uczogRGl0dG8uCisgICAgICAgICogcGxhdGZvcm0vd2lu
Y2Fpcm8vVGVzdEV4cGVjdGF0aW9uczogRGl0dG8uCisgICAgICAgICogcGx1Z2lucy9xdWlja3Rp
bWUtcGx1Z2luLXJlcGxhY2VtZW50Lmh0bWw6IEFkZGVkLgorICAgICAgICAqIHBsdWdpbnMvcXVp
Y2t0aW1lLXBsdWdpbi1yZXBsYWNlbWVudC1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAq
IHBsdWdpbnMvcmVzb3VyY2VzL29yYW5nZS5tb3Y6IFJlcGxhY2UgbW92aWUgY29tcHJlc3NlZCB3
aXRoIGFuY2llbnQgYW5pbWF0ZWQgZ2lmIGNvZGVjIHdpdGgKKyAgICAgICAgICAgIG9uZSBjb21w
cmVzc2VkIHdpdGggSC4yNjQgY29kZWMuCisKIDIwMTMtMTEtMjcgIE1pY2hhxYIgUGFrdcWCYSB2
ZWwgUnV0a2EgIDxtLnBha3VsYUBzYW1zdW5nLmNvbT4KIAogICAgICAgICBVbnJldmlld2VkIEVG
TCBnYXJkZW5pbmcKSW5kZXg6IExheW91dFRlc3RzL3BsYXRmb3JtL2VmbC9UZXN0RXhwZWN0YXRp
b25zCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL3BsYXRmb3JtL2VmbC9UZXN0RXhwZWN0YXRp
b25zCShyZXZpc2lvbiAxNTk4MjApCisrKyBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9lZmwvVGVzdEV4
cGVjdGF0aW9ucwkod29ya2luZyBjb3B5KQpAQCAtMTc1MSwzICsxNzUxLDYgQEAgd2Via2l0Lm9y
Zy9iLzEyNDY2MyBtZWRpYS90cmFjay90cmFjay1sZQogd2Via2l0Lm9yZy9iLzEyNDg5MCBwbGF0
Zm9ybS9lZmwvYWNjZXNzaWJpbGl0eS9tZWRpYS1lbWl0cy1vYmplY3QtcmVwbGFjZW1lbnQuaHRt
bCBbIEZhaWx1cmUgXQogCiB3ZWJraXQub3JnL2IvMTI0ODk0IGFjY2Vzc2liaWxpdHkvZmllbGRz
ZXQtZWxlbWVudC5odG1sIFsgTWlzc2luZyBdCisKKyMgUXVpY2tUaW1lIHBsdWctaW4gbm90IHJl
bGV2YW50IHRvIHRoaXMgcG9ydAorcGx1Z2lucy9xdWlja3RpbWUtcGx1Z2luLXJlcGxhY2VtZW50
Lmh0bWwgWyBTa2lwIF0KSW5kZXg6IExheW91dFRlc3RzL3BsYXRmb3JtL2d0ay9UZXN0RXhwZWN0
YXRpb25zCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL3BsYXRmb3JtL2d0ay9UZXN0RXhwZWN0
YXRpb25zCShyZXZpc2lvbiAxNTk4MjApCisrKyBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9ndGsvVGVz
dEV4cGVjdGF0aW9ucwkod29ya2luZyBjb3B5KQpAQCAtNTExLDYgKzUxMSw5IEBAIHdlYmtpdC5v
cmcvYi8xMDcxOTQgaHR0cC90ZXN0cy9zZWN1cml0eS8KICMgY3J5cHRvLnN1YnRsZSBpcyBub3Qg
eWV0IGVuYWJsZWQKIGNyeXB0by9zdWJ0bGUgWyBTa2lwIF0KIAorIyBRdWlja1RpbWUgcGx1Zy1p
biBub3QgcmVsZXZhbnQgdG8gdGhpcyBwb3J0CitwbHVnaW5zL3F1aWNrdGltZS1wbHVnaW4tcmVw
bGFjZW1lbnQuaHRtbCBbIFNraXAgXQorCiAjLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8v
Ly8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8v
LwogIyBFbmQgb2YgRXhwZWN0ZWQgZmFpbHVyZXMKICMvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8v
Ly8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8v
Ly8vLy8vCkluZGV4OiBMYXlvdXRUZXN0cy9wbGF0Zm9ybS93aW5jYWlyby9UZXN0RXhwZWN0YXRp
b25zCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL3BsYXRmb3JtL3dpbmNhaXJvL1Rlc3RFeHBl
Y3RhdGlvbnMJKHJldmlzaW9uIDE1OTgyMCkKKysrIExheW91dFRlc3RzL3BsYXRmb3JtL3dpbmNh
aXJvL1Rlc3RFeHBlY3RhdGlvbnMJKHdvcmtpbmcgY29weSkKQEAgLTI4NTMsMyArMjg1Myw2IEBA
IGVkaXRpbmcvc2VjdXJlLWlucHV0IFsgRmFpbHVyZSBdCiAKICMgY3J5cHRvLnN1YnRsZSBpcyBu
b3QgeWV0IGVuYWJsZWQKIGNyeXB0by9zdWJ0bGUgWyBTa2lwIF0KKworIyBRdWlja1RpbWUgcGx1
Zy1pbiBub3QgcmVsZXZhbnQgdG8gdGhpcyBwb3J0CitwbHVnaW5zL3F1aWNrdGltZS1wbHVnaW4t
cmVwbGFjZW1lbnQuaHRtbCBbIFNraXAgXQpJbmRleDogTGF5b3V0VGVzdHMvcGx1Z2lucy9xdWlj
a3RpbWUtcGx1Z2luLXJlcGxhY2VtZW50LWV4cGVjdGVkLnR4dAo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlv
dXRUZXN0cy9wbHVnaW5zL3F1aWNrdGltZS1wbHVnaW4tcmVwbGFjZW1lbnQtZXhwZWN0ZWQudHh0
CShyZXZpc2lvbiAwKQorKysgTGF5b3V0VGVzdHMvcGx1Z2lucy9xdWlja3RpbWUtcGx1Z2luLXJl
cGxhY2VtZW50LWV4cGVjdGVkLnR4dAkod29ya2luZyBjb3B5KQpAQCAtMCwwICsxLDYzIEBACisK
K0VWRU5UKHF0X2JlZ2luKQorRVZFTlQocXRfdmFsaWRhdGVkKQorRVZFTlQocXRfY2FucGxheSkK
K0VWRU5UKHF0X2NhbnBsYXl0aHJvdWdoKQorCisqKiBUZXN0IHRvIG1ha2Ugc3VyZSA8dmlkZW8+
IGVsZW1lbnQgaXMgaW4gdGhlIHNoYWRvdyBET00uCitzaGFkb3dFbGVtZW50ID0gaW50ZXJuYWxz
LnNoYWRvd1Jvb3QoZW1iZWQpLmZpcnN0Q2hpbGQKK1BBU1Mgc2hhZG93RWxlbWVudC50YWdOYW1l
IGlzICJWSURFTyIKK1BBU1MgaW50ZXJuYWxzLnNoYWRvd1BzZXVkb0lkKHNoYWRvd0VsZW1lbnQp
IGlzICItd2Via2l0LXBsdWdpbi1yZXBsYWNlbWVudCIKKworKiogVGVzdCBmb3IgdGhlIHByZXNl
bmNlIG9mIG92ZXJyaWRkZW4gbWV0aG9kcy4KK1BBU1MgZW1iZWQuU2V0VVJMIGlzIGEgZnVuY3Rp
b24uCitQQVNTIGVtYmVkLkdldFVSTCBpcyBhIGZ1bmN0aW9uLgorUEFTUyBlbWJlZC5QbGF5IGlz
IGEgZnVuY3Rpb24uCitQQVNTIGVtYmVkLlN0b3AgaXMgYSBmdW5jdGlvbi4KK1BBU1MgZW1iZWQu
R2V0UmF0ZSBpcyBhIGZ1bmN0aW9uLgorUEFTUyBlbWJlZC5TZXRSYXRlIGlzIGEgZnVuY3Rpb24u
CitQQVNTIGVtYmVkLklzRnVsbFNjcmVlbiBpcyBhIGZ1bmN0aW9uLgorUEFTUyBlbWJlZC5FeGl0
RnVsbFNjcmVlbiBpcyBhIGZ1bmN0aW9uLgorUEFTUyBlbWJlZC5HZXRQbHVnaW5TdGF0dXMgaXMg
YSBmdW5jdGlvbi4KK1BBU1MgZW1iZWQuR2V0VGltZSBpcyBhIGZ1bmN0aW9uLgorUEFTUyBlbWJl
ZC5TZXRUaW1lIGlzIGEgZnVuY3Rpb24uCitQQVNTIGVtYmVkLlNlZWtUb0RhdGUgaXMgYSBmdW5j
dGlvbi4KK1BBU1MgZW1iZWQuR2V0RGF0ZSBpcyBhIGZ1bmN0aW9uLgorUEFTUyBlbWJlZC5HZXRE
dXJhdGlvbiBpcyBhIGZ1bmN0aW9uLgorUEFTUyBlbWJlZC5HZXRUaW1lU2NhbGUgaXMgYSBmdW5j
dGlvbi4KK1BBU1MgZW1iZWQuR2V0TWF4VGltZUxvYWRlZCBpcyBhIGZ1bmN0aW9uLgorUEFTUyBl
bWJlZC5HZXRNYXhCeXRlc0xvYWRlZCBpcyBhIGZ1bmN0aW9uLgorUEFTUyBlbWJlZC5HZXRNb3Zp
ZVNpemUgaXMgYSBmdW5jdGlvbi4KK1BBU1MgZW1iZWQuR2V0VGltZWRNZXRhZGF0YVVwZGF0ZXMg
aXMgYSBmdW5jdGlvbi4KK1BBU1MgZW1iZWQuR2V0QWNjZXNzTG9nIGlzIGEgZnVuY3Rpb24uCitQ
QVNTIGVtYmVkLkdldEVycm9yTG9nIGlzIGEgZnVuY3Rpb24uCisKKyoqIFRlc3Qgb3ZlcnJpZGRl
biBtZXRob2RzLgorUEFTUyBlbWJlZC5HZXRVUkwoKS5pbmRleE9mKCdyZXNvdXJjZXMvb3Jhbmdl
Lm1vdicpICE9IC0xIGlzIHRydWUKK1BBU1MgZW1iZWQuR2V0RHVyYXRpb24oKSBpcyAzMDAwMDAK
K1BBU1MgZW1iZWQuR2V0TW92aWVTaXplKCkgaXMgMjQ5NjIKK1BBU1MgZW1iZWQuR2V0TWF4VGlt
ZUxvYWRlZCgpIGlzIDMwMDAwMAorUEFTUyBlbWJlZC5HZXRNYXhCeXRlc0xvYWRlZCgpIGlzIDI0
OTYyCitQQVNTIGVtYmVkLkdldE1vdmllU2l6ZSgpIGlzIDI0OTYyCitQQVNTIGVtYmVkLkdldFBs
dWdpblN0YXR1cygpIGlzICJQbGF5YWJsZSIKK1BBU1MgbmV3IERhdGUoZW1iZWQuR2V0RGF0ZSgp
KSAtIG5ldyBEYXRlKCkgaXMgd2l0aGluIDEwMCBvZiAwCitlbWJlZC5TZXRUaW1lKGVtYmVkLkdl
dFRpbWVTY2FsZSgpICogMikKKworUEFTUyBlbWJlZC5HZXRUaW1lKCkgaXMgNjAwMDAKK2VtYmVk
LlBsYXkoKQorCitFVkVOVChxdF9wbGF5KQorUEFTUyBlbWJlZC5HZXRSYXRlKCkgaXMgMQorZW1i
ZWQuU3RvcCgpCisKK0VWRU5UKHF0X3BhdXNlKQorUEFTUyBlbWJlZC5HZXRSYXRlKCkgaXMgMAor
CitlbWJlZC5TZXRVUkwoJycpCitFVkVOVChxdF9iZWdpbikKK0VWRU5UKHF0X2Vycm9yKQorUEFT
UyBlbWJlZC5HZXRVUkwoKSBpcyAiIgorUEFTUyBlbWJlZC5HZXRQbHVnaW5TdGF0dXMoKSBpcyAi
RXJyb3IiCisKK0VORCBURVNULgorCkluZGV4OiBMYXlvdXRUZXN0cy9wbHVnaW5zL3F1aWNrdGlt
ZS1wbHVnaW4tcmVwbGFjZW1lbnQuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9wbHVn
aW5zL3F1aWNrdGltZS1wbHVnaW4tcmVwbGFjZW1lbnQuaHRtbAkocmV2aXNpb24gMCkKKysrIExh
eW91dFRlc3RzL3BsdWdpbnMvcXVpY2t0aW1lLXBsdWdpbi1yZXBsYWNlbWVudC5odG1sCSh3b3Jr
aW5nIGNvcHkpCkBAIC0wLDAgKzEsMTI0IEBACis8IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorICAg
IDxoZWFkPgorICAgICAgICA8c2NyaXB0IHNyYz0iLi4vcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpz
Ij48L3NjcmlwdD4KKyAgICAgICAgPHNjcmlwdD4KKyAgICAgICAgICAgIHZhciBlbWJlZDsKKyAg
ICAgICAgICAgIHZhciBzcmMgPSAicmVzb3VyY2VzL29yYW5nZS5tb3YiOworCisgICAgICAgICAg
ICBmdW5jdGlvbiBsb2dFdmVudChldmVudCkKKyAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAg
ICBkZWJ1ZygiPGk+RVZFTlQoIiArIGV2ZW50LnR5cGUgKyAiKTwvaT4iKTsKKyAgICAgICAgICAg
IH0KKyAgICAgICAgICAgIAorICAgICAgICAgICAgZnVuY3Rpb24gc2Vla2VkKCkKKyAgICAgICAg
ICAgIHsKKyAgICAgICAgICAgICAgICBkZWJ1ZygiIik7CisgICAgICAgICAgICAgICAgc2hvdWxk
RXZhbHVhdGVUbygiZW1iZWQuR2V0VGltZSgpIiwgZW1iZWQuR2V0VGltZVNjYWxlKCkgKiAyKTsK
KyAgICAgICAgICAgICAgICBldmFsQW5kTG9nKCJlbWJlZC5QbGF5KCkiKTsKKyAgICAgICAgICAg
IH0KKworICAgICAgICAgICAgZnVuY3Rpb24gcGxheWluZyhldmVudCkKKyAgICAgICAgICAgIHsK
KyAgICAgICAgICAgICAgICBkZWJ1ZygiIik7CisgICAgICAgICAgICAgICAgbG9nRXZlbnQoZXZl
bnQpOworICAgICAgICAgICAgICAgIHNob3VsZEV2YWx1YXRlVG8oImVtYmVkLkdldFJhdGUoKSIs
IDEpOworICAgICAgICAgICAgICAgIGV2YWxBbmRMb2coImVtYmVkLlN0b3AoKSIpOworICAgICAg
ICAgICAgfQorICAgICAgICAgICAgCisgICAgICAgICAgICBmdW5jdGlvbiBwYXVzZWQoZXZlbnQp
CisgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgZGVidWcoIiIpOworICAgICAgICAgICAg
ICAgIGxvZ0V2ZW50KGV2ZW50KQorICAgICAgICAgICAgICAgIHNob3VsZEV2YWx1YXRlVG8oImVt
YmVkLkdldFJhdGUoKSIsIDApOworCisgICAgICAgICAgICAgICAgZGVidWcoIiIpOworICAgICAg
ICAgICAgICAgIGV2YWxBbmRMb2coImVtYmVkLlNldFVSTCgnJykiKTsKKyAgICAgICAgICAgIH0K
KyAgICAgICAgICAgIAorICAgICAgICAgICAgZnVuY3Rpb24gZXJyb3IoZXZlbnQpCisgICAgICAg
ICAgICB7CisgICAgICAgICAgICAgICAgbG9nRXZlbnQoZXZlbnQpCisgICAgICAgICAgICAgICAg
c2hvdWxkQmVFcXVhbFRvU3RyaW5nKCJlbWJlZC5HZXRVUkwoKSIsICIiKTsKKyAgICAgICAgICAg
ICAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoImVtYmVkLkdldFBsdWdpblN0YXR1cygpIiwgIkVy
cm9yIik7CisgICAgICAgICAgICAgICAgZGVidWcoIjxicj5FTkQgVEVTVC4iKTsKKyAgICAgICAg
ICAgICAgICBpZiAod2luZG93LnRlc3RSdW5uZXIpCisgICAgICAgICAgICAgICAgICAgIHRlc3RS
dW5uZXIubm90aWZ5RG9uZSgpOworICAgICAgICAgICAgfQorICAgICAgICAgICAgCisgICAgICAg
ICAgICBmdW5jdGlvbiB0ZXN0KGV2ZW50KQorICAgICAgICAgICAgeworICAgICAgICAgICAgICAg
IGxvZ0V2ZW50KGV2ZW50KQorCisgICAgICAgICAgICAgICAgaWYgKHdpbmRvdy5pbnRlcm5hbHMp
IHsKKyAgICAgICAgICAgICAgICAgICAgZGVidWcoIjxicj4qKiBUZXN0IHRvIG1ha2Ugc3VyZSAm
bHQ7dmlkZW8mZ3Q7IGVsZW1lbnQgaXMgaW4gdGhlIHNoYWRvdyBET00uIik7CisgICAgICAgICAg
ICAgICAgICAgIGV2YWxBbmRMb2coInNoYWRvd0VsZW1lbnQgPSBpbnRlcm5hbHMuc2hhZG93Um9v
dChlbWJlZCkuZmlyc3RDaGlsZCIpOworICAgICAgICAgICAgICAgICAgICBzaG91bGRCZUVxdWFs
VG9TdHJpbmcoInNoYWRvd0VsZW1lbnQudGFnTmFtZSIsICJWSURFTyIpOworICAgICAgICAgICAg
ICAgICAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmcoImludGVybmFscy5zaGFkb3dQc2V1ZG9JZChz
aGFkb3dFbGVtZW50KSIsICItd2Via2l0LXBsdWdpbi1yZXBsYWNlbWVudCIpOworICAgICAgICAg
ICAgICAgIH0gZWxzZSB7CisgICAgICAgICAgICAgICAgICAgIGRlYnVnKCIiKTsKKyAgICAgICAg
ICAgICAgICAgICAgdGVzdEZhaWxlZCgiVGhpcyB0ZXN0IG11c3QgYmUgcnVuIGluIERSVC4iKTsK
KyAgICAgICAgICAgICAgICAgICAgZGVidWcoIiIpOworICAgICAgICAgICAgICAgIH0KKworICAg
ICAgICAgICAgICAgIGRlYnVnKCI8YnI+KiogVGVzdCBmb3IgdGhlIHByZXNlbmNlIG9mIG92ZXJy
aWRkZW4gbWV0aG9kcy4iKTsKKyAgICAgICAgICAgICAgICB2YXIgbWV0aG9kcyA9IFsgIlNldFVS
TCIsICJHZXRVUkwiLCAiUGxheSIsICJTdG9wIiwgIkdldFJhdGUiLCAiU2V0UmF0ZSIsICJJc0Z1
bGxTY3JlZW4iLCAKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIkV4aXRGdWxsU2Ny
ZWVuIiwgIkdldFBsdWdpblN0YXR1cyIsICJHZXRUaW1lIiwgIlNldFRpbWUiLCAiU2Vla1RvRGF0
ZSIsICJHZXREYXRlIiwgCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJHZXREdXJh
dGlvbiIsICJHZXRUaW1lU2NhbGUiLCAiR2V0TWF4VGltZUxvYWRlZCIsICJHZXRNYXhCeXRlc0xv
YWRlZCIsIAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiR2V0TW92aWVTaXplIiwg
IkdldFRpbWVkTWV0YWRhdGFVcGRhdGVzIiwgIkdldEFjY2Vzc0xvZyIsICJHZXRFcnJvckxvZyIK
KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF07CisgICAgICAgICAgICAgICAgZm9yIChp
ID0gMDsgaSA8IG1ldGhvZHMubGVuZ3RoOyArK2kpIHsKKyAgICAgICAgICAgICAgICAgICAgdmFy
IHR5cGUgPSB0eXBlb2YgZW1iZWRbbWV0aG9kc1tpXV07CisgICAgICAgICAgICAgICAgICAgIGlm
ICh0eXBlID09ICJmdW5jdGlvbiIpCisgICAgICAgICAgICAgICAgICAgICAgICB0ZXN0UGFzc2Vk
KCJlbWJlZC4iICsgbWV0aG9kc1tpXSArICIgaXMgYSBmdW5jdGlvbi4iKTsKKyAgICAgICAgICAg
ICAgICAgICAgZWxzZQorICAgICAgICAgICAgICAgICAgICAgICAgdGVzdEZhaWxlZCgiZW1iZWQu
IiArIG1ldGhvZHNbaV0gKyAiIHNob3VsZCBiZSBhIGZ1bmN0aW9uIGJ1dCBpcyBcIiIgKyB0eXBl
ICsgIlwiLiIpOworICAgICAgICAgICAgICAgIH0KKworICAgICAgICAgICAgICAgIGRlYnVnKCI8
YnI+KiogVGVzdCBvdmVycmlkZGVuIG1ldGhvZHMuIik7CisgICAgICAgICAgICAgICAgc2hvdWxk
QmVUcnVlKCJlbWJlZC5HZXRVUkwoKS5pbmRleE9mKCciICsgc3JjICsgIicpICE9IC0xIik7Cisg
ICAgICAgICAgICAgICAgc2hvdWxkRXZhbHVhdGVUbygiZW1iZWQuR2V0RHVyYXRpb24oKSIsIDMw
MDAwMCk7CisgICAgICAgICAgICAgICAgc2hvdWxkRXZhbHVhdGVUbygiZW1iZWQuR2V0TW92aWVT
aXplKCkiLCAyNDk2Mik7CisgICAgICAgICAgICAgICAgc2hvdWxkRXZhbHVhdGVUbygiZW1iZWQu
R2V0TWF4VGltZUxvYWRlZCgpIiwgMzAwMDAwKTsKKyAgICAgICAgICAgICAgICBzaG91bGRFdmFs
dWF0ZVRvKCJlbWJlZC5HZXRNYXhCeXRlc0xvYWRlZCgpIiwgMjQ5NjIpOworICAgICAgICAgICAg
ICAgIHNob3VsZEV2YWx1YXRlVG8oImVtYmVkLkdldE1vdmllU2l6ZSgpIiwgMjQ5NjIpOworICAg
ICAgICAgICAgICAgIHNob3VsZEJlRXF1YWxUb1N0cmluZygiZW1iZWQuR2V0UGx1Z2luU3RhdHVz
KCkiLCAiUGxheWFibGUiKTsKKyAgICAgICAgICAgICAgICAKKyAgICAgICAgICAgICAgICAvLyAi
R2V0RGF0ZSgpIiBzaG91bGQgcmV0dXJuIHRoZSBjdXJyZW50IGRhdGUsIGNsZWFyIHNlY29uZHMg
YW5kIG1pbGxpc2Vjb25kcyAKKyAgICAgICAgICAgICAgICB2YXIgbm93ID0gbmV3IERhdGUoKTsK
KyAgICAgICAgICAgICAgICBzaG91bGRCZUNsb3NlVG8oIm5ldyBEYXRlKGVtYmVkLkdldERhdGUo
KSkgLSBuZXcgRGF0ZSgpIiwgMCwgMTAwKTsKKworICAgICAgICAgICAgICAgIGV2YWxBbmRMb2co
ImVtYmVkLlNldFRpbWUoZW1iZWQuR2V0VGltZVNjYWxlKCkgKiAyKSIpOworICAgICAgICAgICAg
ICAgIHNldFRpbWVvdXQoc2Vla2VkLCA1MDApOworICAgICAgICAgICAgfQorICAgICAgICAgICAg
CisgICAgICAgICAgICBmdW5jdGlvbiBzZXR1cCgpCisgICAgICAgICAgICB7CisgICAgICAgICAg
ICAgICAgaWYgKHdpbmRvdy50ZXN0UnVubmVyKSB7CisgICAgICAgICAgICAgICAgICAgIHdpbmRv
dy50ZXN0UnVubmVyLndhaXRVbnRpbERvbmUoKTsKKyAgICAgICAgICAgICAgICAgICAgd2luZG93
LnRlc3RSdW5uZXIuZHVtcEFzVGV4dCgpCisgICAgICAgICAgICAgICAgICAgIHdpbmRvdy5pbnRl
cm5hbHMuc2V0dGluZ3Muc2V0UGx1Z2luUmVwbGFjZW1lbnRFbmFibGVkKHRydWUpOworICAgICAg
ICAgICAgICAgIH0KKyAgICAgICAgICAgICAgICBkaXYgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJ
ZCgicGFyZW50Iik7CisgICAgICAgICAgICAgICAgZGl2LmlubmVySFRNTCA9ICc8ZW1iZWQgc3Jj
PSInICsgc3JjICsgJyIgd2lkdGg9IjY0MCIgaGVpZ2h0PSI0ODAiIHBvc3Rkb21ldmVudHM9dHJ1
ZT4nOworICAgICAgICAgICAgICAgIAorICAgICAgICAgICAgICAgIHZhciBldmVudHMgPSBbICJx
dF9iZWdpbiIsICJxdF92YWxpZGF0ZWQiLCAicXRfZW50ZXJmdWxsc2NyZWVuIiwgInF0X2V4aXRm
dWxsc2NyZWVuIiwgCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJxdF9sb2FkZWRt
ZXRhZGEiLCAicXRfY2FucGxheSIsICJxdF9lbmRlZCIsICJxdF90aW1lZG1ldGFkYXRhdXBkYXRl
ZCIgCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBdOworICAgICAgICAgICAgICAgIGVt
YmVkID0gZGl2LmZpcnN0Q2hpbGQ7CisgICAgICAgICAgICAgICAgZm9yIChpID0gMDsgaSA8IGV2
ZW50cy5sZW5ndGg7ICsraSkKKyAgICAgICAgICAgICAgICAgICAgZW1iZWQuYWRkRXZlbnRMaXN0
ZW5lcihldmVudHNbaV0sIGxvZ0V2ZW50LCB0cnVlKTsKKyAgICAgICAgICAgICAgICBlbWJlZC5h
ZGRFdmVudExpc3RlbmVyKCJxdF9jYW5wbGF5dGhyb3VnaCIsIHRlc3QsIHRydWUpOworICAgICAg
ICAgICAgICAgIGVtYmVkLmFkZEV2ZW50TGlzdGVuZXIoInF0X3BsYXkiLCBwbGF5aW5nLCB0cnVl
KTsKKyAgICAgICAgICAgICAgICBlbWJlZC5hZGRFdmVudExpc3RlbmVyKCJxdF9wYXVzZSIsIHBh
dXNlZCwgdHJ1ZSk7CisgICAgICAgICAgICAgICAgZW1iZWQuYWRkRXZlbnRMaXN0ZW5lcigicXRf
ZXJyb3IiLCBlcnJvciwgdHJ1ZSk7CisgICAgICAgICAgICB9CisgICAgICAgIDwvc2NyaXB0Pgor
ICAgIDwvaGVhZD4KKworICAgIDxib2R5IG9ubG9hZD0ic2V0dXAoKSI+CisgICAgICAgIDxkaXYg
aWQ9cGFyZW50PjwvZGl2PgorICAgICAgICA8cD4KKyAgICAgICAgPGRpdiBpZD1jb25zb2xlPjwv
ZGl2PgorICAgIDwvYm9keT4KKzwvaHRtbD4KSW5kZXg6IExheW91dFRlc3RzL3BsdWdpbnMvcmVz
b3VyY2VzL29yYW5nZS5tb3YKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQpDYW5ub3QgZGlzcGxheTogZmlsZSBtYXJrZWQg
YXMgYSBiaW5hcnkgdHlwZS4Kc3ZuOm1pbWUtdHlwZSA9IGFwcGxpY2F0aW9uL29jdGV0LXN0cmVh
bQoKQUFBQUlHWjBlWEJ4ZENBZ0lBVURBSEYwSUNBQUFBQUFBQUFBQUFBQUFBQUFBQTdUYlc5dmRn
QUFBR3h0ZG1oa0FBQUFBTTY1ZW1UTwp1WHBrQUFBQ1dBQUFGM0FBQVFBQUFRQUFBQUFBQUFBQUFB
QUFBQUZLOXdBQUFBQUFBQUFBQUFBQUFBQUJTcXNBQUFBQUFBQUFBQUFBCkFBQkFBQUFBQUFBQUFB
QUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQWdBQUMvRjBjbUZyQUFBQVhIUnJhR1FBQUFB
UHpybDUKV3M2NWVtUUFBQUFCQUFBQUFBQUFGM0FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUVBQUFB
QUFBQUFBQUFBQUFBQUFBQUJBQUFBQUFBQQpBQUFBQUFBQUFBQkFBQUFBQXFzQUFBSGdBQUFBQUFC
RWRHRndkQUFBQUJSamJHVm1BQUFBQUFLckFBQUI0QUFBQUFBQUZIQnliMllBCkFBQUFBcXNBQUFI
Z0FBQUFBQUFVWlc1dlpnQUFBQUFDcXdBQUFlQUFBQUFBQUNSbFpIUnpBQUFBSEdWc2MzUUFBQUFB
QUFBQUFRQUEKRjNBQUFBQUFBQUVBQUFBQUN4bHRaR2xoQUFBQUlHMWthR1FBQUFBQXpybDZaTTY1
ZW1RQUFBSllBQUFYbUFBQUFBQUFBQUE2YUdScwpjZ0FBQUFCdGFHeHlkbWxrWldGd2NHd1FBQUFB
QUFFQTVSbEJjSEJzWlNCV2FXUmxieUJOWldScFlTQklZVzVrYkdWeUFBQUt0MjFwCmJtWUFBQUFV
ZG0xb1pBQUFBQUVBUUlBQWdBQ0FBQUFBQURsb1pHeHlBQUFBQUdSb2JISmhiR2x6WVhCd2JCQUFB
QUVBQVFEOUdFRncKY0d4bElFRnNhV0Z6SUVSaGRHRWdTR0Z1Wkd4bGNnQUFBQ1JrYVc1bUFBQUFI
R1J5WldZQUFBQUFBQUFBQVFBQUFBeGhiR2x6QUFBQQpBUUFBQ2o1emRHSnNBQUFBcDNOMGMyUUFB
QUFBQUFBQUFRQUFBSmRoZG1NeEFBQUFBQUFBQUFFQUFRQUJZWEJ3YkFBQUJBQUFBQVFBCkFxc0I0
QUJJQUFBQVNBQUFBQUFBQUFBQkJVZ3VNalkwQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFB
QUFBQUFBR1AvL0FBQUEKRW1OdmJISnVZMnhqQUFZQUFRQUdBQUFBSzJGMlkwTUJUVUFXL3dFQUZD
ZE5RQmFwR0JXSHZmZ0RVR0FRWXdyWHZmQVFBUUFFS040Sgp5QUFBQUFBQUFBQVljM1IwY3dBQUFB
QUFBQUFCQUFBQWx3QUFBQ2dBQUFTWVkzUjBjd0FBQUFBQUFBQ1JBQUFBQVFBQUFBQUFBQUFCCkFB
QUFLQUFBQUFILy8vL1lBQUFBQVFBQUFDZ0FBQUFCLy8vLzJBQUFBQUVBQUFBb0FBQUFBZi8vLzln
QUFBQUJBQUFBS0FBQUFBSC8KLy8vWUFBQUFBUUFBQUNnQUFBQUIvLy8vMkFBQUFBRUFBQUFvQUFB
QUFmLy8vOWdBQUFBQkFBQUFLQUFBQUFILy8vL1lBQUFBQVFBQQpBQ2dBQUFBQi8vLy8yQUFBQUFF
QUFBQW9BQUFBQWYvLy85Z0FBQUFCQUFBQUtBQUFBQUgvLy8vWUFBQUFBUUFBQUNnQUFBQUIvLy8v
CjJBQUFBQUlBQUFBQUFBQUFBUUFBQUNnQUFBQUIvLy8vMkFBQUFBRUFBQUFvQUFBQUFmLy8vOWdB
QUFBQkFBQUFLQUFBQUFILy8vL1kKQUFBQUFRQUFBQ2dBQUFBQi8vLy8yQUFBQUFFQUFBQW9BQUFB
QWYvLy85Z0FBQUFCQUFBQUtBQUFBQUgvLy8vWUFBQUFBUUFBQUNnQQpBQUFCLy8vLzJBQUFBQUVB
QUFBb0FBQUFBZi8vLzlnQUFBQUJBQUFBS0FBQUFBSC8vLy9ZQUFBQUFRQUFBQ2dBQUFBQi8vLy8y
QUFBCkFBRUFBQUFvQUFBQUFmLy8vOWdBQUFBQ0FBQUFBQUFBQUFFQUFBQW9BQUFBQWYvLy85Z0FB
QUFCQUFBQUtBQUFBQUgvLy8vWUFBQUEKQVFBQUFDZ0FBQUFCLy8vLzJBQUFBQUVBQUFBb0FBQUFB
Zi8vLzlnQUFBQUJBQUFBS0FBQUFBSC8vLy9ZQUFBQUFRQUFBQ2dBQUFBQgovLy8vMkFBQUFBRUFB
QUFvQUFBQUFmLy8vOWdBQUFBQkFBQUFLQUFBQUFILy8vL1lBQUFBQVFBQUFDZ0FBQUFCLy8vLzJB
QUFBQUVBCkFBQW9BQUFBQWYvLy85Z0FBQUFCQUFBQUtBQUFBQUgvLy8vWUFBQUFBZ0FBQUFBQUFB
QUJBQUFBS0FBQUFBSC8vLy9ZQUFBQUFRQUEKQUNnQUFBQUIvLy8vMkFBQUFBRUFBQUFvQUFBQUFm
Ly8vOWdBQUFBQkFBQUFLQUFBQUFILy8vL1lBQUFBQVFBQUFDZ0FBQUFCLy8vLwoyQUFBQUFFQUFB
QW9BQUFBQWYvLy85Z0FBQUFCQUFBQUtBQUFBQUgvLy8vWUFBQUFBUUFBQUNnQUFBQUIvLy8vMkFB
QUFBRUFBQUFvCkFBQUFBZi8vLzlnQUFBQUJBQUFBS0FBQUFBSC8vLy9ZQUFBQUFRQUFBQ2dBQUFB
Qi8vLy8yQUFBQUFJQUFBQUFBQUFBQVFBQUFDZ0EKQUFBQi8vLy8yQUFBQUFFQUFBQW9BQUFBQWYv
Ly85Z0FBQUFCQUFBQUtBQUFBQUgvLy8vWUFBQUFBUUFBQUNnQUFBQUIvLy8vMkFBQQpBQUVBQUFB
b0FBQUFBZi8vLzlnQUFBQUJBQUFBS0FBQUFBSC8vLy9ZQUFBQUFRQUFBQ2dBQUFBQi8vLy8yQUFB
QUFFQUFBQW9BQUFBCkFmLy8vOWdBQUFBQkFBQUFLQUFBQUFILy8vL1lBQUFBQVFBQUFDZ0FBQUFC
Ly8vLzJBQUFBQUVBQUFBb0FBQUFBZi8vLzlnQUFBQUMKQUFBQUFBQUFBQUVBQUFBb0FBQUFBZi8v
LzlnQUFBQUJBQUFBS0FBQUFBSC8vLy9ZQUFBQUFRQUFBQ2dBQUFBQi8vLy8yQUFBQUFFQQpBQUFv
QUFBQUFmLy8vOWdBQUFBQkFBQUFLQUFBQUFILy8vL1lBQUFBQVFBQUFDZ0FBQUFCLy8vLzJBQUFB
QUVBQUFBb0FBQUFBZi8vCi85Z0FBQUFCQUFBQUtBQUFBQUgvLy8vWUFBQUFBUUFBQUNnQUFBQUIv
Ly8vMkFBQUFBRUFBQUFvQUFBQUFmLy8vOWdBQUFBQkFBQUEKS0FBQUFBSC8vLy9ZQUFBQUFnQUFB
QUFBQUFBQkFBQUFLQUFBQUFILy8vL1lBQUFBQVFBQUFDZ0FBQUFCLy8vLzJBQUFBQUVBQUFBbwpB
QUFBQWYvLy85Z0FBQUFnWTNOc1p3QUFBQUFBQUFBby8vLy8yQUFBQUNnQUFBQUFBQUFYbUFBQUFD
eHpkSE56QUFBQUFBQUFBQWNBCkFBQUJBQUFBR1FBQUFERUFBQUJKQUFBQVlRQUFBSGtBQUFDUkFB
QUFvM05rZEhBQUFBQUFBRUFJUUFoQUNFQUlRQWhBQ0VBSVFBaEEKQ0VBSVFBZ0lBRUFJUUFoQUNF
QUlRQWhBQ0VBSVFBaEFDRUFJUUFnSUFFQUlRQWhBQ0VBSVFBaEFDRUFJUUFoQUNFQUlRQWdJQUVB
SQpRQWhBQ0VBSVFBaEFDRUFJUUFoQUNFQUlRQWdJQUVBSVFBaEFDRUFJUUFoQUNFQUlRQWhBQ0VB
SVFBZ0lBRUFJUUFoQUNFQUlRQWhBCkNFQUlRQWhBQ0VBSVFBZ0lBRUFJUUFoQUNBQUFBTVJ6ZEhO
akFBQUFBQUFBQUE4QUFBQUJBQUFBQkFBQUFBRUFBQUFHQUFBQUFRQUEKQUFFQUFBQUhBQUFBQkFB
QUFBRUFBQUFNQUFBQUFRQUFBQUVBQUFBTkFBQUFCQUFBQUFFQUFBQVNBQUFBQVFBQUFBRUFBQUFU
QUFBQQpCQUFBQUFFQUFBQVlBQUFBQVFBQUFBRUFBQUFaQUFBQUJBQUFBQUVBQUFBZUFBQUFBUUFB
QUFFQUFBQWZBQUFBQkFBQUFBRUFBQUFrCkFBQUFBUUFBQUFFQUFBQWxBQUFBQkFBQUFBRUFBQUFx
QUFBQUFRQUFBQUVBQUFBckFBQUFCQUFBQUFFQUFBSndjM1J6ZWdBQUFBQUEKQUFBQUFBQUFsd0FB
Qm1VQUFBQmZBQUFBWGdBQUFGOEFBQUJlQUFBQVh3QUFBRjRBQUFCZkFBQUFYZ0FBQUY4QUFBQmVB
QUFBWHdBQQpBRjRBQUFCZkFBQUFYZ0FBQUY4QUFBQmVBQUFBWHdBQUFGNEFBQUJmQUFBQVhnQUFB
RjhBQUFCZUFBQUFYUUFBQmxVQUFBQmZBQUFBClhnQUFBRjhBQUFCZUFBQUFYd0FBQUY0QUFBQmZB
QUFBWGdBQUFGOEFBQUJlQUFBQVh3QUFBRjRBQUFCZkFBQUFYZ0FBQUY4QUFBQmUKQUFBQVh3QUFB
RjRBQUFCZkFBQUFYZ0FBQUY4QUFBQmVBQUFBWFFBQUJsVUFBQUJmQUFBQVhnQUFBRjhBQUFCZUFB
QUFYd0FBQUY0QQpBQUJmQUFBQVhnQUFBRjhBQUFCZUFBQUFYd0FBQUY0QUFBQmZBQUFBWGdBQUFG
OEFBQUJlQUFBQVh3QUFBRjRBQUFCZkFBQUFYZ0FBCkFGOEFBQUJlQUFBQVhRQUFCbFVBQUFCZkFB
QUFYZ0FBQUY4QUFBQmVBQUFBWHdBQUFGNEFBQUJmQUFBQVhnQUFBRjhBQUFCZUFBQUEKWHdBQUFG
NEFBQUJmQUFBQVhnQUFBRjhBQUFCZUFBQUFYd0FBQUY0QUFBQmZBQUFBWGdBQUFGOEFBQUJlQUFB
QVhRQUFCbFVBQUFCZgpBQUFBWGdBQUFGOEFBQUJlQUFBQVh3QUFBRjRBQUFCZkFBQUFYZ0FBQUY4
QUFBQmVBQUFBWHdBQUFGNEFBQUJmQUFBQVhnQUFBRjhBCkFBQmVBQUFBWHdBQUFGNEFBQUJmQUFB
QVhnQUFBRjhBQUFCZUFBQUFYUUFBQmxVQUFBQmZBQUFBWGdBQUFGOEFBQUJlQUFBQVh3QUEKQUY0
QUFBQmZBQUFBWGdBQUFGOEFBQUJlQUFBQVh3QUFBRjRBQUFCZkFBQUFYZ0FBQUY4QUFBQmVBQUFB
WHdBQUFGNEFBQUJmQUFBQQpYZ0FBQUY4QUFBQmVBQUFBWFFBQUJsVUFBQUJmQUFBQVhnQUFBRjhB
QUFCZUFBQUFYd0FBQUY0QUFBQzhjM1JqYndBQUFBQUFBQUFyCkFBQVBHd0FBRnB3QUFCZ1dBQUFa
a0FBQUd3b0FBQnlFQUFBYzRnQUFKRkVBQUNYTEFBQW5SUUFBS0w4QUFDbzVBQUFxbUFBQUxCSUEK
QURPQkFBQTArd0FBTm5VQUFEZnZBQUE0VFFBQU9jY0FBRHRCQUFCQ3NBQUFSQ29BQUVXa0FBQkdB
d0FBUjMwQUFFajNBQUJLYndBQQpVZUFBQUZOYUFBQlR1QUFBVlRJQUFGYXNBQUJZSmdBQVg1VUFB
R0VQQUFCaGJnQUFZdWdBQUdSaUFBQmwzQUFBWjFZQUFHN0ZBQUJ2Ckl3QUFBQXgxWkhSaEFBQUFB
QUFBQWtSdFpYUmhBQUFBSUdoa2JISUFBQUFBQUFBQUFHMWtkR0VBQUFBQUFBQUFBQUFBQUFBQUFB
RTQKYTJWNWN3QUFBQUFBQUFBR0FBQUFPbTFrZEdGamIyMHVZWEJ3YkdVdWNYVnBZMnQwYVcxbExu
QnNZWGxsY2k1dGIzWnBaUzUyYVhOMQpZV3d1WW5KcFoyaDBibVZ6Y3dBQUFEVnRaSFJoWTI5dExt
RndjR3hsTG5GMWFXTnJkR2x0WlM1d2JHRjVaWEl1Ylc5MmFXVXVkbWx6CmRXRnNMbU52Ykc5eUFB
QUFORzFrZEdGamIyMHVZWEJ3YkdVdWNYVnBZMnQwYVcxbExuQnNZWGxsY2k1dGIzWnBaUzUyYVhO
MVlXd3UKZEdsdWRBQUFBRGh0WkhSaFkyOXRMbUZ3Y0d4bExuRjFhV05yZEdsdFpTNXdiR0Y1WlhJ
dWJXOTJhV1V1ZG1semRXRnNMbU52Ym5SeQpZWE4wQUFBQUttMWtkR0ZqYjIwdVlYQndiR1V1Y1hW
cFkydDBhVzFsTG5Cc1lYbGxjaTUyWlhKemFXOXVBQUFBSTIxa2RHRmpiMjB1CllYQndiR1V1Y1hW
cFkydDBhVzFsTG5abGNuTnBiMjRBQUFEa2FXeHpkQUFBQUJ3QUFBQUJBQUFBRkdSaGRHRUFBQUFY
QUFBQUFBQUEKQUFBQUFBQWNBQUFBQWdBQUFCUmtZWFJoQUFBQUZ3QUFBQUEvZ0FBQUFBQUFIQUFB
QUFNQUFBQVVaR0YwWVFBQUFCY0FBQUFBQUFBQQpBQUFBQUJ3QUFBQUVBQUFBRkdSaGRHRUFBQUFY
QUFBQUFEK0FBQUFBQUFBbEFBQUFCUUFBQUIxa1lYUmhBQUFBQVFBQUFBQTNMall1Ck5pQW9OeTQy
TGpZcEFBQUFSd0FBQUFZQUFBQS9aR0YwWVFBQUFBRUFBQUFBTnk0M0xqTWdLREk0TWpZcElEQjRO
emN6T0RBd01DQW8KVFdGaklFOVRJRmdzSURFd0xqa3NJREV6UVRVNU9Da0FBQUFxZFdSMFlRQUFB
QXhYVEU5REFDMEFTZ0FBQUFsVFpXeFBBQUFBQUFsQgpiR3hHQUFBQUFBQUFBQUFJWm5KbFpRQUFB
QWgzYVdSbEFBQmhtbTFrWVhRQUFBQUlkMmxrWlFBQUFBQnRaR0YwQUFBQURBWUFCNEN2CnlBQUFB
d0JBZ0FBQUFCVUdCUkVEaC9ST3pRcEwzS0dVT3NQVW14Y2ZBSUFBQUFGUEpiZ2dJQ2xmLy9ncmdB
Y1JFUUNFcFFyakRBQWMKUVljS2tBQUpYNERnQUNTNEFCU1NJa0pzaGtaZ3c0QUZkczJ4djFLcnVH
SGN0OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OQo5OTk5OTk5OS8rSC9od2dBRkdJSTNK
RWxodWV6aE5mOEF3VG5ZNEZBQUNFeUFBSVBnZ0FBZy9BQUNESGdBYjV1bUFBSURIa3dBQWc2CnZw
WUFBZ05BQUNEdXhBQnBKYUFBRUJIV2dBQ0M1LzUwc0FBUUV3QUJCZVlVdGRkZGRkZGRkZGRkZGRk
ZGRkZGRkZGRkZGRkZGRkZGQKZGRkZGRkZGRkZE1sUzExMTExMTExMTExMTExMTExMTExMTExMTEx
MTExMTExMTExMTExMTExMHlWTFhYWFhYWFhYWFhYWFhYWFhYWApYWFhYWFhYWFhYWFhYWFhYWFhY
WFhYWFRKVXRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZE1sUzExMTEx
CjExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTB5WUFBQUVnSlFDQnVDQWdMVi8v
K0NLS0FBSVVuamdBQ2MvSEFBRXgKNisrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysr
KysrKysvL0Qvd1dFQWNBQXNBS0JCVk0vaUFBQ0V1QUFJUFVRQUFRZgpnQUJCandjQUFRR2dBQkIz
WWc0QUFnTkFBQ0R1eEJ3QUJBVEFBRUY1aURnQUNBbUFBSUx6Q2xycnJycnJycnJycnJycnJycnJy
cnJyCnJycnJycnJycnJycnJycnJycnJwa3FXdXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1
dXV1dXV1dXV1dXVtU3BhNjY2NjY2NjYKNjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2
WktscnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycgpycGtxV3V1dXV1dXV1
dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1bVRBQUFCSVNVQVFLNElDQXRYLy80SW9v
QUFoU2VPCkFBSno4Y0FBVEhyNzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3
Ny84UC9CWVFCd0FDd0FvRUZVeitJQUFJUzQKQUFnOVJBQUJCK0FBRUdQQndBQkFhQUFFSGRpRGdB
Q0EwQUFJTzdFSEFBRUJNQUFRWG1JT0FBSUNZQUFndk1LV3V1dXV1dXV1dXV1dQp1dXV1dXV1dXV1
dXV1dXV1dXV1dXV1dXV1dXV1dW1TcGE2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2
NjY2NjY2NlpLCmxycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnBrcVd1
dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXUKdXV1dXV1dXV1dXVtU3BhNjY2NjY2NjY2NjY2
NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjZaTUFBQUFFaEpRQmc3Z2dJQzFmLwovZ2lpZ0FD
Rko0NEFBblB4d0FCTWV2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2di93
LzhGaEFIQUFMQUNnClFWVFA0Z0FBaExnQUNEMUVBQUVINEFBUVk4SEFBRUJvQUFRZDJJT0FBSURR
QUFnN3NRY0FBUUV3QUJCZVlnNEFBZ0pnQUNDOHdwYTYKNjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2
NjY2NjY2NjY2NjY2NjY2NlpLbHJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycgpycnJy
cnJycnBrcVd1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dW1TcGE2NjY2
NjY2NjY2NjY2NjY2NjY2CjY2NjY2NjY2NjY2NjY2NjY2NjY2NjZaS2xycnJycnJycnJycnJycnJy
cnJycnJycnJycnJycnJycnJycnJycnJycnBrd0FBQUFYY2wKQUNCTGdnSUMxZi8vZ2lpZ0FDRko0
NEFBblB4d0FCTWV2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2di93Lwo4
RmhBSEFBTEFDZ1FWVFA0Z0FBaExnQUNEMUVBQUVINEFBUVk4SEFBRUJvQUFRZDJJT0FBSURRQUFn
N3NRY0FBUUV3QUJCZVlnNEFBCmdKZ0FDQzh3cGE2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2
NjY2NjY2NjY2NjY2NlpLbHJycnJycnJycnJycnJycnJycnJycnIKcnJycnJycnJycnJycnJycnJy
cnBrcVd1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dW1TcGE2NjY2NjY2
Ngo2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjZaSVd3QUVaa1pHWkdSR1JrWC9nQUd5
TXdFTFNoZkdXQy93bHBBQzRBRmRNCmpZbnlIUjJEd0FLVFJwRGJxUldjTlMxMTExMTExMTExMTEx
MTExMTExMTExMTExMTExMTExMTExMTExMTExd3N5QUFJeUl6SXpJakkKak12LzhBRHFFRmJzaVBL
MjR6ZDk0QjNnQWFaUGszem4zQUNlYW1sMy9yY0FBQUFWQmdVUkE0ZjBUczBLUzl5aGxEckQxSnNY
SHdDQQpBQUFBQ0NIaENRQ2xBRURnQUFBQUNpRUFnZUVKQUxVQVFPQUFBQUFLSVFCQXVFSkFMVUFR
T0FBQUFBb2hBR0Q0UWtBdFFCQTRBQUFBCkRDRUFJRTRRa0F0UURZOEZjQUFBQUJVR0JSRURoL1JP
elFwTDNLR1VPc1BVbXhjZkFJQUFBQUFJQWFpQllCR2dDQndBQUFBS0FRQ0IKcUlGZ0ZhQUlIQUFB
QUFvQkFFQ3FJRmdGYUFJSEFBQUFDZ0VBWU9vZ1dBVm9BZ2NBQUFBTEFRQWdTb2dXQVZvQWdjQUFB
QUFWQmdVUgpBNGYwVHMwS1M5eWhsRHJEMUpzWEh3Q0FBQUFBQ0NIaUVRQ2xBRURnQUFBQUNpRUFn
ZUlSQUxVQVFPQUFBQUFLSVFCQXVJUkFMVUFRCk9BQUFBQW9oQUdENGhFQXRRQkE0QUFBQURDRUFJ
RTRoRUF0UURZOEZjQUFBQUJVR0JSRURoL1JPelFwTDNLR1VPc1BVbXhjZkFJQUEKQUFBSUFhakRZ
QkdnQ0J3QUFBQUtBUUNCcU1OZ0ZhQUlIQUFBQUFvQkFFQ3FNTmdGYUFJSEFBQUFDZ0VBWU9vdzJB
Vm9BZ2NBQUFBTApBUUFnU293MkFWb0FnY0FBQUFBVkJnVVJBNGYwVHMwS1M5eWhsRHJEMUpzWEh3
Q0FBQUFBQ0NIakdRQ2xBRURnQUFBQUNpRUFnZU1aCkFMVUFRT0FBQUFBS0lRQkF1TVpBTFVBUU9B
QUFBQW9oQUdENHhrQXRRQkE0QUFBQURDRUFJRTR4a0F0UURZOEZjQUFBQUJVR0JSRUQKaC9ST3pR
cEwzS0dVT3NQVW14Y2ZBSUFBQUFBSUFha0ZZQkdnQ0J3QUFBQUtBUUNCcVFWZ0ZhQUlIQUFBQUFv
QkFFQ3FRVmdGYUFJSApBQUFBQ2dFQVlPcEJXQVZvQWdjQUFBQUxBUUFnU3BCV0FWb0FnY0FBQUFB
VkJnVVJBNGYwVHMwS1M5eWhsRHJEMUpzWEh3Q0FBQUFBCkNDSGtJUUNsQUVEZ0FBQUFDaUVBZ2VR
aEFMVUFRT0FBQUFBS0lRQkF1UWhBTFVBUU9BQUFBQW9oQUdENUNFQXRRQkE0QUFBQURDRUEKSUU1
Q0VBdFFEWThGY0FBQUFCVUdCUkVEaC9ST3pRcEwzS0dVT3NQVW14Y2ZBSUFBQUFBSUFhbEhZQkdn
Q0J3QUFBQUtBUUNCcVVkZwpGYUFJSEFBQUFBb0JBRUNxVWRnRmFBSUhBQUFBQ2dFQVlPcFIyQVZv
QWdjQUFBQUxBUUFnU3BSMkFWb0FnY0FBQUFBVkJnVVJBNGYwClRzMEtTOXlobERyRDFKc1hId0NB
QUFBQUNDSGxLUUNsQUVEZ0FBQUFDaUVBZ2VVcEFMVUFRT0FBQUFBS0lRQkF1VXBBTFVBUU9BQUEK
QUFvaEFHRDVTa0F0UUJBNEFBQUFEQ0VBSUU1U2tBdFFEWThGY0FBQUFCVUdCUkVEaC9ST3pRcEwz
S0dVT3NQVW14Y2ZBSUFBQUFBSQpBYW1KWUJHZ0NCd0FBQUFLQVFDQnFZbGdGYUFJSEFBQUFBb0JB
RUNxWWxnRmFBSUhBQUFBQ2dFQVlPcGlXQVZvQWdjQUFBQUxBUUFnClNwaVdBVm9BZ2NBQUFBQVZC
Z1VSQTRmMFRzMEtTOXlobERyRDFKc1hId0NBQUFBQUNDSG1NUUNsQUVEZ0FBQUFDaUVBZ2VZeEFM
VUEKUU9BQUFBQUtJUUJBdVl4QUxVQVFPQUFBQUFvaEFHRDVqRUF0UUJBNEFBQUFEQ0VBSUU1akVB
dFFEWThGY0FBQUFCVUdCUkVEaC9STwp6UXBMM0tHVU9zUFVteGNmQUlBQUFBQUlBYW5MWUJHZ0NC
d0FBQUFLQVFDQnFjdGdGYUFJSEFBQUFBb0JBRUNxY3RnRmFBSUhBQUFBCkNnRUFZT3B5MkFWb0Fn
Y0FBQUFMQVFBZ1NweTJBVm9BZ2NBQUFBQVZCZ1VSQTRmMFRzMEtTOXlobERyRDFKc1hId0NBQUFB
QUNDSG4KT1FDbEFFRGdBQUFBQ2lFQWdlYzVBTFVBUU9BQUFBQUtJUUJBdWM1QUxVQVFPQUFBQUFv
aEFHRDV6a0F0UUJBNEFBQUFEQ0VBSUU1egprQXRRRFk4RmNBQUFBQlVHQlJFRGgvUk96UXBMM0tH
VU9zUFVteGNmQUlBQUFBQUlBYW9OWUJHZ0NCd0FBQUFLQVFDQnFnMWdGYUFJCkhBQUFBQW9CQUVD
cWcxZ0ZhQUlIQUFBQUNnRUFZT3FEV0FWb0FnY0FBQUFMQVFBZ1NxRFdBVm9BZ2NBQUFBQVZCZ1VS
QTRmMFRzMEsKUzl5aGxEckQxSnNYSHdDQUFBQUFDQ0hvUVFDbEFFRGdBQUFBQ2lFQWdlaEJBTFVB
UU9BQUFBQUtJUUJBdWhCQUxVQVFPQUFBQUFvaApBR0Q2RUVBdFFCQTRBQUFBRENFQUlFNkVFQXRR
RFk4RmNBQUFBQlVHQlJFRGgvUk96UXBMM0tHVU9zUFVteGNmQUlBQUFBQUlBYXBQCllCR2dDQndB
QUFBS0FRQ0JxazlnRmFBSUhBQUFBQW9CQUVDcWs5Z0ZhQUlIQUFBQUNnRUFZT3FUMkFWb0FnY0FB
QUFMQVFBZ1NxVDIKQVZvQWdjQUFBQUFWQmdVUkE0ZjBUczBLUzl5aGxEckQxSnNYSHdDQUFBQUFD
Q0hwU1FDbEFFRGdBQUFBQ2lFQWdlbEpBTFVBUU9BQQpBQUFLSVFCQXVsSkFMVUFRT0FBQUFBb2hB
R0Q2VWtBdFFCQTRBQUFBRENFQUlFNlVrQXRRRFk4RmNBQUFBQlVHQlJFRGgvUk96UXBMCjNLR1VP
c1BVbXhjZkFJQUFBQUFJQWFxUllCR2dDQndBQUFBS0FRQ0JxcEZnRmFBSUhBQUFBQW9CQUVDcXBG
Z0ZhQUlIQUFBQUNnRUEKWU9xa1dBVm9BZ2NBQUFBTEFRQWdTcWtXQVZvQWdjQUFBQUFWQmdVUkE0
ZjBUczBLUzl5aGxEckQxSnNYSHdDQUFBQUFDQ0hxVVFDbApBRURnQUFBQUNpRUFnZXBSQUxVQVFP
QUFBQUFLSVFCQXVwUkFMVUFRT0FBQUFBb2hBR0Q2bEVBdFFCQTRBQUFBRENFQUlFNmxFQXRRCkRZ
OEZjQUFBQUJVR0JSRURoL1JPelFwTDNLR1VPc1BVbXhjZkFJQUFBQUFJQWFyVFlCR2dDQndBQUFB
S0FRQ0JxdE5nRmFBSUhBQUEKQUFvQkFFQ3F0TmdGYUFJSEFBQUFDZ0VBWU9xMDJBVm9BZ2NBQUFB
TEFRQWdTcTAyQVZvQWdjQUFBQUFWQmdVUkE0ZjBUczBLUzl5aApsRHJEMUpzWEh3Q0FBQUFBQ0NI
cldRQ2xBRURnQUFBQUNpRUFnZXRaQUxVQVFPQUFBQUFLSVFCQXV0WkFMVUFRT0FBQUFBb2hBR0Q2
CjFrQXRRQkE0QUFBQURDRUFJRTYxa0F0UURZOEZjQUFBQUJVR0JSRURoL1JPelFwTDNLR1VPc1BV
bXhjZkFJQUFBQUFJQWFzVllCR2cKQ0J3QUFBQUtBUUNCcXhWZ0ZhQUlIQUFBQUFvQkFFQ3F4VmdG
YUFJSEFBQUFDZ0VBWU9yRldBVm9BZ2NBQUFBTEFRQWdTckZXQVZvQQpnY0FBQUFBVkJnVVJBNGYw
VHMwS1M5eWhsRHJEMUpzWEh3Q0FBQUFBQ0FIc1hRRWFBSUhBQUFBQUNnRUFnZXhkQVZvQWdjQUFB
QUFLCkFRQkF1eGRBVm9BZ2NBQUFBQW9CQUdEN0YwQldnQ0J3QUFBQUNnRUFJRTdGMEJXZ0NCd0FB
QUFWQmdVUkE0ZjBUczBLUzl5aGxEckQKMUpzWEh3Q0FBQUFCVHlXNElDQXBYLy80SzRBSEVSRUFo
S1VLNHd3QUhFR0hDcEFBQ1YrQTRBQWt1QUFVa2lKQ2JJWkdZTU9BQlhiTgpzYjlTcTdoaDNMZmZm
ZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZi9oLzRjSUFCUmlDTnlSSllibnM0
VFgvQU1FCjUyT0JRQUFoTWdBQ0Q0SUFBSVB3QUFneDRBRyticGdBQ0F4NU1BQUlPcjZXQUFJRFFB
QWc3c1FBYVNXZ0FCQVIxb0FBZ3VmK2RMQUEKRUJNQUFRWG1GTFhYWFhYWFhYWFhYWFhYWFhYWFhY
WFhYWFhYWFhYWFhYWFhYWFhYWFhYVEpVdGRkZGRkZGRkZGRkZGRkZGRkZGRkZApkZGRkZGRkZGRk
ZGRkZGRkZGRkZE1sUzExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMHlW
TFhYWFhYWFhYClhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFRKVXRkZGRkZGRkZGRk
ZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGQKZGRNbUFBQUJJQ1VBZ2JnZ0lDMWYvL2dpaWdB
Q0ZKNDRBQW5QeHdBQk1ldnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dgp2dnZ2dnZ2
L3cvOEZoQUhBQUxBQ2dRVlRQNGdBQWhMZ0FDRDFFQUFFSDRBQVFZOEhBQUVCb0FBUWQySU9BQUlE
UUFBZzdzUWNBQVFFCndBQkJlWWc0QUFnSmdBQ0M4d3BhNjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2
NjY2NjY2NjY2NjY2NjY2NjZaS2xycnJycnJycnJycnIKcnJycnJycnJycnJycnJycnJycnJycnJy
cnJycnJwa3FXdXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXVtUwpwYTY2
NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2WktscnJycnJycnJycnJycnJy
cnJycnJycnJycnJycnJyCnJycnJycnJycnJycGt3QUFBU0VsQUVDdUNBZ0xWLy8rQ0tLQUFJVW5q
Z0FDYy9IQUFFeDYrKysrKysrKysrKysrKysrKysrKysrKysKKysrKysrKysrKysrKysrKy8vRC93
V0VBY0FBc0FLQkJWTS9pQUFDRXVBQUlQVVFBQVFmZ0FCQmp3Y0FBUUdnQUJCM1lnNEFBZ05BQQpD
RHV4QndBQkFUQUFFRjVpRGdBQ0FtQUFJTHpDbHJycnJycnJycnJycnJycnJycnJycnJycnJycnJy
cnJycnJycnJycnJycGtxV3V1CnV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1
dW1TcGE2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjYKNjY2NjY2NjZaS2xycnJycnJy
cnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnBrcVd1dXV1dXV1dXV1dXV1dXV1dXV1
dQp1dXV1dXV1dXV1dXV1dXV1dXV1dXVtVEFBQUFCSVNVQVlPNElDQXRYLy80SW9vQUFoU2VPQUFK
ejhjQUFUSHI3Nzc3Nzc3Nzc3Nzc3Cjc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Ny84UC9CWVFC
d0FDd0FvRUZVeitJQUFJUzRBQWc5UkFBQkIrQUFFR1BCd0FCQWFBQUUKSGRpRGdBQ0EwQUFJTzdF
SEFBRUJNQUFRWG1JT0FBSUNZQUFndk1LV3V1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1
dXV1dQp1dXV1dW1TcGE2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NlpL
bHJycnJycnJycnJycnJycnJycnJycnJyCnJycnJycnJycnJycnJycnJycnBrcVd1dXV1dXV1dXV1
dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dW1TcGE2NjY2NjY2NjYKNjY2NjY2NjY2NjY2
NjY2NjY2NjY2NjY2NjY2NjY2NjZaTUFBQUFGM0pRQWdTNElDQXRYLy80SW9vQUFoU2VPQUFKejhj
QUFUSHI3Nwo3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Ny84UC9CWVFCd0FD
d0FvRUZVeitJQUFJUzRBQWc5UkFBQkIrQUFFCkdQQndBQkFhQUFFSGRpRGdBQ0EwQUFJTzdFSEFB
RUJNQUFRWG1JT0FBSUNZQUFndk1LV3V1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXUKdXV1dXV1dXV1
dXV1dXV1dW1TcGE2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NlpLbHJy
cnJycnJycnJycgpycnJycnJycnJycnJycnJycnJycnJycnJycnJycnBrcVd1dXV1dXV1dXV1dXV1
dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dW1TCkZzQUJHWkdSbVJrUmtaRi80QUJzak1CQzBv
WHhsZ3Y4SmFRQXVBQlhUSTJKOGgwZGc4QUNrMGFRMjZrVm5EVXRkZGRkZGRkZGRkZGQKZGRkZGRk
ZGRkZGRkZGRkZGRkZGRkZGRkZGRkY0xNZ0FDTWlNeU15SXlJekwvL0FBNmhCVzdJanl0dU0zZmVB
ZDRBR21UNU44NTl3QQpubXBwZC82M0FBQUFGUVlGRVFPSDlFN05Da3Zjb1pRNnc5U2JGeDhBZ0FB
QUFBZ2g0UWtBcFFCQTRBQUFBQW9oQUlIaENRQzFBRURnCkFBQUFDaUVBUUxoQ1FDMUFFRGdBQUFB
S0lRQmcrRUpBTFVBUU9BQUFBQXdoQUNCT0VKQUxVQTJQQlhBQUFBQVZCZ1VSQTRmMFRzMEsKUzl5
aGxEckQxSnNYSHdDQUFBQUFDQUdvZ1dBUm9BZ2NBQUFBQ2dFQWdhaUJZQldnQ0J3QUFBQUtBUUJB
cWlCWUJXZ0NCd0FBQUFvQgpBR0RxSUZnRmFBSUhBQUFBQ3dFQUlFcUlGZ0ZhQUlIQUFBQUFGUVlG
RVFPSDlFN05Da3Zjb1pRNnc5U2JGeDhBZ0FBQUFBZ2g0aEVBCnBRQkE0QUFBQUFvaEFJSGlFUUMx
QUVEZ0FBQUFDaUVBUUxpRVFDMUFFRGdBQUFBS0lRQmcrSVJBTFVBUU9BQUFBQXdoQUNCT0lSQUwK
VUEyUEJYQUFBQUFWQmdVUkE0ZjBUczBLUzl5aGxEckQxSnNYSHdDQUFBQUFDQUdvdzJBUm9BZ2NB
QUFBQ2dFQWdhakRZQldnQ0J3QQpBQUFLQVFCQXFqRFlCV2dDQndBQUFBb0JBR0RxTU5nRmFBSUhB
QUFBQ3dFQUlFcU1OZ0ZhQUlIQUFBQUFGUVlGRVFPSDlFN05Da3ZjCm9aUTZ3OVNiRng4QWdBQUFB
QWdoNHhrQXBRQkE0QUFBQUFvaEFJSGpHUUMxQUVEZ0FBQUFDaUVBUUxqR1FDMUFFRGdBQUFBS0lR
QmcKK01aQUxVQVFPQUFBQUF3aEFDQk9NWkFMVUEyUEJYQUFBQUFWQmdVUkE0ZjBUczBLUzl5aGxE
ckQxSnNYSHdDQUFBQUFDQUdwQldBUgpvQWdjQUFBQUNnRUFnYWtGWUJXZ0NCd0FBQUFLQVFCQXFr
RllCV2dDQndBQUFBb0JBR0RxUVZnRmFBSUhBQUFBQ3dFQUlFcVFWZ0ZhCkFJSEFBQUFBRlFZRkVR
T0g5RTdOQ2t2Y29aUTZ3OVNiRng4QWdBQUFBQWdoNUNFQXBRQkE0QUFBQUFvaEFJSGtJUUMxQUVE
Z0FBQUEKQ2lFQVFMa0lRQzFBRURnQUFBQUtJUUJnK1FoQUxVQVFPQUFBQUF3aEFDQk9RaEFMVUEy
UEJYQUFBQUFWQmdVUkE0ZjBUczBLUzl5aApsRHJEMUpzWEh3Q0FBQUFBQ0FHcFIyQVJvQWdjQUFB
QUNnRUFnYWxIWUJXZ0NCd0FBQUFLQVFCQXFsSFlCV2dDQndBQUFBb0JBR0RxClVkZ0ZhQUlIQUFB
QUN3RUFJRXFVZGdGYUFJSEFBQUFBRlFZRkVRT0g5RTdOQ2t2Y29aUTZ3OVNiRng4QWdBQUFBQWdo
NVNrQXBRQkEKNEFBQUFBb2hBSUhsS1FDMUFFRGdBQUFBQ2lFQVFMbEtRQzFBRURnQUFBQUtJUUJn
K1VwQUxVQVFPQUFBQUF3aEFDQk9VcEFMVUEyUApCWEFBQUFBVkJnVVJBNGYwVHMwS1M5eWhsRHJE
MUpzWEh3Q0FBQUFBQ0FHcGlXQVJvQWdjQUFBQUNnRUFnYW1KWUJXZ0NCd0FBQUFLCkFRQkFxbUpZ
QldnQ0J3QUFBQW9CQUdEcVlsZ0ZhQUlIQUFBQUN3RUFJRXFZbGdGYUFJSEFBQUFBRlFZRkVRT0g5
RTdOQ2t2Y29aUTYKdzlTYkZ4OEFnQUFBQUFnaDVqRUFwUUJBNEFBQUFBb2hBSUhtTVFDMUFFRGdB
QUFBQ2lFQVFMbU1RQzFBRURnQUFBQUtJUUJnK1l4QQpMVUFRT0FBQUFBd2hBQ0JPWXhBTFVBMlBC
WEFBQUFBVkJnVVJBNGYwVHMwS1M5eWhsRHJEMUpzWEh3Q0FBQUFBQ0FHcHkyQVJvQWdjCkFBQUFD
Z0VBZ2FuTFlCV2dDQndBQUFBS0FRQkFxbkxZQldnQ0J3QUFBQW9CQUdEcWN0Z0ZhQUlIQUFBQUN3
RUFJRXFjdGdGYUFJSEEKQUFBQUZRWUZFUU9IOUU3TkNrdmNvWlE2dzlTYkZ4OEFnQUFBQUFnaDV6
a0FwUUJBNEFBQUFBb2hBSUhuT1FDMUFFRGdBQUFBQ2lFQQpRTG5PUUMxQUVEZ0FBQUFLSVFCZytj
NUFMVUFRT0FBQUFBd2hBQ0JPYzVBTFVBMlBCWEFBQUFBVkJnVVJBNGYwVHMwS1M5eWhsRHJECjFK
c1hId0NBQUFBQUNBR3FEV0FSb0FnY0FBQUFDZ0VBZ2FvTllCV2dDQndBQUFBS0FRQkFxb05ZQldn
Q0J3QUFBQW9CQUdEcWcxZ0YKYUFJSEFBQUFDd0VBSUVxZzFnRmFBSUhBQUFBQUZRWUZFUU9IOUU3
TkNrdmNvWlE2dzlTYkZ4OEFnQUFBQUFnaDZFRUFwUUJBNEFBQQpBQW9oQUlIb1FRQzFBRURnQUFB
QUNpRUFRTG9RUUMxQUVEZ0FBQUFLSVFCZytoQkFMVUFRT0FBQUFBd2hBQ0JPaEJBTFVBMlBCWEFB
CkFBQVZCZ1VSQTRmMFRzMEtTOXlobERyRDFKc1hId0NBQUFBQUNBR3FUMkFSb0FnY0FBQUFDZ0VB
Z2FwUFlCV2dDQndBQUFBS0FRQkEKcXBQWUJXZ0NCd0FBQUFvQkFHRHFrOWdGYUFJSEFBQUFDd0VB
SUVxazlnRmFBSUhBQUFBQUZRWUZFUU9IOUU3TkNrdmNvWlE2dzlTYgpGeDhBZ0FBQUFBZ2g2VWtB
cFFCQTRBQUFBQW9oQUlIcFNRQzFBRURnQUFBQUNpRUFRTHBTUUMxQUVEZ0FBQUFLSVFCZytsSkFM
VUFRCk9BQUFBQXdoQUNCT2xKQUxVQTJQQlhBQUFBQVZCZ1VSQTRmMFRzMEtTOXlobERyRDFKc1hI
d0NBQUFBQUNBR3FrV0FSb0FnY0FBQUEKQ2dFQWdhcVJZQldnQ0J3QUFBQUtBUUJBcXFSWUJXZ0NC
d0FBQUFvQkFHRHFwRmdGYUFJSEFBQUFDd0VBSUVxcEZnRmFBSUhBQUFBQQpGUVlGRVFPSDlFN05D
a3Zjb1pRNnc5U2JGeDhBZ0FBQUFBZ2g2bEVBcFFCQTRBQUFBQW9oQUlIcVVRQzFBRURnQUFBQUNp
RUFRTHFVClFDMUFFRGdBQUFBS0lRQmcrcFJBTFVBUU9BQUFBQXdoQUNCT3BSQUxVQTJQQlhBQUFB
QVZCZ1VSQTRmMFRzMEtTOXlobERyRDFKc1gKSHdDQUFBQUFDQUdxMDJBUm9BZ2NBQUFBQ2dFQWdh
clRZQldnQ0J3QUFBQUtBUUJBcXJUWUJXZ0NCd0FBQUFvQkFHRHF0TmdGYUFJSApBQUFBQ3dFQUlF
cXROZ0ZhQUlIQUFBQUFGUVlGRVFPSDlFN05Da3Zjb1pRNnc5U2JGeDhBZ0FBQUFBZ2g2MWtBcFFC
QTRBQUFBQW9oCkFJSHJXUUMxQUVEZ0FBQUFDaUVBUUxyV1FDMUFFRGdBQUFBS0lRQmcrdFpBTFVB
UU9BQUFBQXdoQUNCT3RaQUxVQTJQQlhBQUFBQVYKQmdVUkE0ZjBUczBLUzl5aGxEckQxSnNYSHdD
QUFBQUFDQUdyRldBUm9BZ2NBQUFBQ2dFQWdhc1ZZQldnQ0J3QUFBQUtBUUJBcXNWWQpCV2dDQndB
QUFBb0JBR0RxeFZnRmFBSUhBQUFBQ3dFQUlFcXhWZ0ZhQUlIQUFBQUFGUVlGRVFPSDlFN05Da3Zj
b1pRNnc5U2JGeDhBCmdBQUFBQWdCN0YwQkdnQ0J3QUFBQUFvQkFJSHNYUUZhQUlIQUFBQUFDZ0VB
UUxzWFFGYUFJSEFBQUFBS0FRQmcreGRBVm9BZ2NBQUEKQUFvQkFDQk94ZEFWb0FnY0FBQUFGUVlG
RVFPSDlFN05Da3Zjb1pRNnc5U2JGeDhBZ0FBQUFVOGx1Q0FnS1YvLytDdUFCeEVSQUlTbApDdU1N
QUJ4Qmh3cVFBQWxmZ09BQUpMZ0FGSklpUW15R1JtRERnQVYyemJHL1VxdTRZZHkzMzMzMzMzMzMz
MzMzMzMzMzMzMzMzMzMzCjMzMzMzMzMzMzMzMzMzMy80ZitIQ0FBVVlnamNrU1dHNTdPRTEvd0RC
T2RqZ1VBQUlUSUFBZytDQUFDRDhBQUlNZUFCdm02WUFBZ00KZVRBQUNEcStsZ0FDQTBBQUlPN0VB
R2tsb0FBUUVkYUFBSUxuL25Td0FCQVRBQUVGNWhTMTExMTExMTExMTExMTExMTExMTExMTExMQox
MTExMTExMTExMTExMTExMHlWTFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhY
WFhYVEpVdGRkZGRkZGRkZGRkCmRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZE1sUzExMTEx
MTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMHkKVkxYWFhYWFhYWFhYWFhYWFhY
WFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFRKZ0FBQVNBbEFJRzRJQ0F0WC8vNElvb0FBaFNlT0FB
Sgp6OGNBQVRIcjc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3NzcvOFAvQllR
QndBQ3dBb0VGVXorSUFBSVM0QUFnCjlSQUFCQitBQUVHUEJ3QUJBYUFBRUhkaURnQUNBMEFBSU83
RUhBQUVCTUFBUVhtSU9BQUlDWUFBZ3ZNS1d1dXV1dXV1dXV1dXV1dXUKdXV1dXV1dXV1dXV1dXV1
dXV1dXV1dXV1dXVtU3BhNjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjZa
S2xycgpycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJwa3FXdXV1dXV1dXV1
dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1CnV1dXV1dXV1bVNwYTY2NjY2NjY2NjY2NjY2NjY2NjY2
NjY2NjY2NjY2NjY2NjY2NjY2NjY2Wk1BQUFFaEpRQkFyZ2dJQzFmLy9naWkKZ0FDRko0NEFBblB4
d0FCTWV2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2di93LzhGaEFIQUFM
QUNnUVZUUAo0Z0FBaExnQUNEMUVBQUVINEFBUVk4SEFBRUJvQUFRZDJJT0FBSURRQUFnN3NRY0FB
UUV3QUJCZVlnNEFBZ0pnQUNDOHdwYTY2NjY2CjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2
NjY2NjY2NlpLbHJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnIKcnJycnBrcVd1
dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dW1TcGE2NjY2NjY2NjY2NjY2
NjY2NjY2NjY2Ngo2NjY2NjY2NjY2NjY2NjY2NjZaS2xycnJycnJycnJycnJycnJycnJycnJycnJy
cnJycnJycnJycnJycnJycnBrd0FBQUFTRWxBR0R1CkNBZ0xWLy8rQ0tLQUFJVW5qZ0FDYy9IQUFF
eDYrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrLy9EL3dXRUEKY0FBc0FL
QkJWTS9pQUFDRXVBQUlQVVFBQVFmZ0FCQmp3Y0FBUUdnQUJCM1lnNEFBZ05BQUNEdXhCd0FCQVRB
QUVGNWlEZ0FDQW1BQQpJTHpDbHJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJy
cnJycGtxV3V1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1CnV1dXV1dXV1dXV1dXV1dW1TcGE2NjY2
NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NlpLbHJycnJycnJycnJycnIKcnJy
cnJycnJycnJycnJycnJycnJycnJycnJycnBrcVd1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1
dXV1dXV1dXV1dXV1dW1UQQpBQUFCZHlVQUlFdUNBZ0xWLy8rQ0tLQUFJVW5qZ0FDYy9IQUFFeDYr
KysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrCisrKy8vRC93V0VBY0FBc0FLQkJW
TS9pQUFDRXVBQUlQVVFBQVFmZ0FCQmp3Y0FBUUdnQUJCM1lnNEFBZ05BQUNEdXhCd0FCQVRBQUUK
RjVpRGdBQ0FtQUFJTHpDbHJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJy
cGtxV3V1dXV1dXV1dXV1dXV1dQp1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dW1TcGE2NjY2NjY2
NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NlpLbHJyCnJycnJycnJycnJycnJycnJy
cnJycnJycnJycnJycnJycnJycnJycnBraGJBQVJtUmtaa1pFWkdSZitBQWJJekFRdEtGOFpZTC9D
V2sKQUxnQVYweU5pZklkSFlQQUFwTkdrTnVwRlp3MUxYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhY
WFhYWFhYWFhYWFhYWFhYQ3pJQUFqSQpqTWpNaU1pTXkvL3dBT29RVnV5SThyYmpOMzNnSGVBQnBr
K1RmT2ZjQUo1cWFYZit0d0FBQUJVR0JSRURoL1JPelFwTDNLR1VPc1BVCm14Y2ZBSUFBQUFBSUll
RUpBS1VBUU9BQUFBQUtJUUNCNFFrQXRRQkE0QUFBQUFvaEFFQzRRa0F0UUJBNEFBQUFDaUVBWVBo
Q1FDMUEKRURnQUFBQU1JUUFnVGhDUUMxQU5qd1Z3QUFBQUZRWUZFUU9IOUU3TkNrdmNvWlE2dzlT
YkZ4OEFnQUFBQUFnQnFJRmdFYUFJSEFBQQpBQW9CQUlHb2dXQVZvQWdjQUFBQUNnRUFRS29nV0FW
b0FnY0FBQUFLQVFCZzZpQllCV2dDQndBQUFBc0JBQ0JLaUJZQldnQ0J3QUFBCkFCVUdCUkVEaC9S
T3pRcEwzS0dVT3NQVW14Y2ZBSUFBQUFBSUllSVJBS1VBUU9BQUFBQUtJUUNCNGhFQXRRQkE0QUFB
QUFvaEFFQzQKaEVBdFFCQTRBQUFBQ2lFQVlQaUVRQzFBRURnQUFBQU1JUUFnVGlFUUMxQU5qd1Z3
QUFBQUZRWUZFUU9IOUU3TkNrdmNvWlE2dzlTYgpGeDhBZ0FBQUFBZ0JxTU5nRWFBSUhBQUFBQW9C
QUlHb3cyQVZvQWdjQUFBQUNnRUFRS293MkFWb0FnY0FBQUFLQVFCZzZqRFlCV2dDCkJ3QUFBQXNC
QUNCS2pEWUJXZ0NCd0FBQUFCVUdCUkVEaC9ST3pRcEwzS0dVT3NQVW14Y2ZBSUFBQUFBSUllTVpB
S1VBUU9BQUFBQUsKSVFDQjR4a0F0UUJBNEFBQUFBb2hBRUM0eGtBdFFCQTRBQUFBQ2lFQVlQakdR
QzFBRURnQUFBQU1JUUFnVGpHUUMxQU5qd1Z3QUFBQQpGUVlGRVFPSDlFN05Da3Zjb1pRNnc5U2JG
eDhBZ0FBQUFBZ0JxUVZnRWFBSUhBQUFBQW9CQUlHcEJXQVZvQWdjQUFBQUNnRUFRS3BCCldBVm9B
Z2NBQUFBS0FRQmc2a0ZZQldnQ0J3QUFBQXNCQUNCS2tGWUJXZ0NCd0FBQUFCVUdCUkVEaC9ST3pR
cEwzS0dVT3NQVW14Y2YKQUlBQUFBQUlJZVFoQUtVQVFPQUFBQUFLSVFDQjVDRUF0UUJBNEFBQUFB
b2hBRUM1Q0VBdFFCQTRBQUFBQ2lFQVlQa0lRQzFBRURnQQpBQUFNSVFBZ1RrSVFDMUFOandWd0FB
QUFGUVlGRVFPSDlFN05Da3Zjb1pRNnc5U2JGeDhBZ0FBQUFBZ0JxVWRnRWFBSUhBQUFBQW9CCkFJ
R3BSMkFWb0FnY0FBQUFDZ0VBUUtwUjJBVm9BZ2NBQUFBS0FRQmc2bEhZQldnQ0J3QUFBQXNCQUNC
S2xIWUJXZ0NCd0FBQUFCVUcKQlJFRGgvUk96UXBMM0tHVU9zUFVteGNmQUlBQUFBQUlJZVVwQUtV
QVFPQUFBQUFLSVFDQjVTa0F0UUJBNEFBQUFBb2hBRUM1U2tBdApRQkE0QUFBQUNpRUFZUGxLUUMx
QUVEZ0FBQUFNSVFBZ1RsS1FDMUFOandWd0FBQUFGUVlGRVFPSDlFN05Da3Zjb1pRNnc5U2JGeDhB
CmdBQUFBQWdCcVlsZ0VhQUlIQUFBQUFvQkFJR3BpV0FWb0FnY0FBQUFDZ0VBUUtwaVdBVm9BZ2NB
QUFBS0FRQmc2bUpZQldnQ0J3QUEKQUFzQkFDQkttSllCV2dDQndBQUFBQlVHQlJFRGgvUk96UXBM
M0tHVU9zUFVteGNmQUlBQUFBQUlJZVl4QUtVQVFPQUFBQUFLSVFDQgo1akVBdFFCQTRBQUFBQW9o
QUVDNWpFQXRRQkE0QUFBQUNpRUFZUG1NUUMxQUVEZ0FBQUFNSVFBZ1RtTVFDMUFOandWd0FBQUFG
UVlGCkVRT0g5RTdOQ2t2Y29aUTZ3OVNiRng4QWdBQUFBQWdCcWN0Z0VhQUlIQUFBQUFvQkFJR3B5
MkFWb0FnY0FBQUFDZ0VBUUtweTJBVm8KQWdjQUFBQUtBUUJnNm5MWUJXZ0NCd0FBQUFzQkFDQktu
TFlCV2dDQndBQUFBQlVHQlJFRGgvUk96UXBMM0tHVU9zUFVteGNmQUlBQQpBQUFJSWVjNUFLVUFR
T0FBQUFBS0lRQ0I1emtBdFFCQTRBQUFBQW9oQUVDNXprQXRRQkE0QUFBQUNpRUFZUG5PUUMxQUVE
Z0FBQUFNCklRQWdUbk9RQzFBTmp3VndBQUFBRlFZRkVRT0g5RTdOQ2t2Y29aUTZ3OVNiRng4QWdB
QUFBQWdCcWcxZ0VhQUlIQUFBQUFvQkFJR3EKRFdBVm9BZ2NBQUFBQ2dFQVFLcURXQVZvQWdjQUFB
QUtBUUJnNm9OWUJXZ0NCd0FBQUFzQkFDQktvTllCV2dDQndBQUFBQlVHQlJFRApoL1JPelFwTDNL
R1VPc1BVbXhjZkFJQUFBQUFJSWVoQkFLVUFRT0FBQUFBS0lRQ0I2RUVBdFFCQTRBQUFBQW9oQUVD
NkVFQXRRQkE0CkFBQUFDaUVBWVBvUVFDMUFFRGdBQUFBTUlRQWdUb1FRQzFBTmp3VndBQUFBRlFZ
RkVRT0g5RTdOQ2t2Y29aUTZ3OVNiRng4QWdBQUEKQUFnQnFrOWdFYUFJSEFBQUFBb0JBSUdxVDJB
Vm9BZ2NBQUFBQ2dFQVFLcVQyQVZvQWdjQUFBQUtBUUJnNnBQWUJXZ0NCd0FBQUFzQgpBQ0JLcFBZ
QldnQ0J3QUFBQUJVR0JSRURoL1JPelFwTDNLR1VPc1BVbXhjZkFJQUFBQUFJSWVsSkFLVUFRT0FB
QUFBS0lRQ0I2VWtBCnRRQkE0QUFBQUFvaEFFQzZVa0F0UUJBNEFBQUFDaUVBWVBwU1FDMUFFRGdB
QUFBTUlRQWdUcFNRQzFBTmp3VndBQUFBRlFZRkVRT0gKOUU3TkNrdmNvWlE2dzlTYkZ4OEFnQUFB
QUFnQnFwRmdFYUFJSEFBQUFBb0JBSUdxa1dBVm9BZ2NBQUFBQ2dFQVFLcWtXQVZvQWdjQQpBQUFL
QVFCZzZxUllCV2dDQndBQUFBc0JBQ0JLcVJZQldnQ0J3QUFBQUJVR0JSRURoL1JPelFwTDNLR1VP
c1BVbXhjZkFJQUFBQUFJCkllcFJBS1VBUU9BQUFBQUtJUUNCNmxFQXRRQkE0QUFBQUFvaEFFQzZs
RUF0UUJBNEFBQUFDaUVBWVBxVVFDMUFFRGdBQUFBTUlRQWcKVHFVUUMxQU5qd1Z3QUFBQUZRWUZF
UU9IOUU3TkNrdmNvWlE2dzlTYkZ4OEFnQUFBQUFnQnF0TmdFYUFJSEFBQUFBb0JBSUdxMDJBVgpv
QWdjQUFBQUNnRUFRS3EwMkFWb0FnY0FBQUFLQVFCZzZyVFlCV2dDQndBQUFBc0JBQ0JLclRZQldn
Q0J3QUFBQUJVR0JSRURoL1JPCnpRcEwzS0dVT3NQVW14Y2ZBSUFBQUFBSUlldFpBS1VBUU9BQUFB
QUtJUUNCNjFrQXRRQkE0QUFBQUFvaEFFQzYxa0F0UUJBNEFBQUEKQ2lFQVlQcldRQzFBRURnQUFB
QU1JUUFnVHJXUUMxQU5qd1Z3QUFBQUZRWUZFUU9IOUU3TkNrdmNvWlE2dzlTYkZ4OEFnQUFBQUFn
QgpxeFZnRWFBSUhBQUFBQW9CQUlHckZXQVZvQWdjQUFBQUNnRUFRS3JGV0FWb0FnY0FBQUFLQVFC
ZzZzVllCV2dDQndBQUFBc0JBQ0JLCnNWWUJXZ0NCd0FBQUFCVUdCUkVEaC9ST3pRcEwzS0dVT3NQ
VW14Y2ZBSUFBQUFBSUFleGRBUm9BZ2NBQUFBQUtBUUNCN0YwQldnQ0IKd0FBQUFBb0JBRUM3RjBC
V2dDQndBQUFBQ2dFQVlQc1hRRmFBSUhBQUFBQUtBUUFnVHNYUUZhQUlIQUFBQUJVR0JSRURoL1JP
elFwTAozS0dVT3NQVW14Y2ZBSUFBQUFGUEpiZ2dJQ2xmLy9ncmdBY1JFUUNFcFFyakRBQWNRWWNL
a0FBSlg0RGdBQ1M0QUJTU0lrSnNoa1pnCnc0QUZkczJ4djFLcnVHSGN0OTk5OTk5OTk5OTk5OTk5
OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5LytIL2h3Z0FGR0lJM0pFbGh1ZXoKaE5mOEF3VG5ZNEZB
QUNFeUFBSVBnZ0FBZy9BQUNESGdBYjV1bUFBSURIa3dBQWc2dnBZQUFnTkFBQ0R1eEFCcEphQUFF
QkhXZ0FDQwo1LzUwc0FBUUV3QUJCZVlVdGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRk
ZGRkZGRkZGRkTWxTMTExMTExMTExMTExMTExCjExMTExMTExMTExMTExMTExMTExMTExMTExMHlW
TFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYVEpVdGQKZGRkZGRkZGRk
ZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZE1sUzExMTExMTExMTExMTExMTExMTExMTEx
MTExMTExMTExMQoxMTExMTExMTB5WUFBQUVnSlFDQnVDQWdMVi8vK0NLS0FBSVVuamdBQ2MvSEFB
RXg2KysrKysrKysrKysrKysrKysrKysrKysrKysrCisrKysrKysrKysrKysvL0Qvd1dFQWNBQXNB
S0JCVk0vaUFBQ0V1QUFJUFVRQUFRZmdBQkJqd2NBQVFHZ0FCQjNZZzRBQWdOQUFDRHUKeEJ3QUJB
VEFBRUY1aURnQUNBbUFBSUx6Q2xycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJy
cnJycnBrcVd1dXV1dQp1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXVtU3BhNjY2
NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2CjY2NjY2WktscnJycnJycnJycnJycnJy
cnJycnJycnJycnJycnJycnJycnJycnJycnJwa3FXdXV1dXV1dXV1dXV1dXV1dXV1dXV1dXUKdXV1
dXV1dXV1dXV1dXV1dXV1bVRBQUFCSVNVQVFLNElDQXRYLy80SW9vQUFoU2VPQUFKejhjQUFUSHI3
Nzc3Nzc3Nzc3Nzc3Nzc3Nwo3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Ny84UC9CWVFCd0FDd0FvRUZV
eitJQUFJUzRBQWc5UkFBQkIrQUFFR1BCd0FCQWFBQUVIZGlECmdBQ0EwQUFJTzdFSEFBRUJNQUFR
WG1JT0FBSUNZQUFndk1LV3V1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXUK
dW1TcGE2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NlpLbHJycnJycnJy
cnJycnJycnJycnJycnJycnJycgpycnJycnJycnJycnJycnBrcVd1dXV1dXV1dXV1dXV1dXV1dXV1
dXV1dXV1dXV1dXV1dXV1dXV1dXV1dW1TcGE2NjY2NjY2NjY2NjY2CjY2NjY2NjY2NjY2NjY2NjY2
NjY2NjY2NjY2NjZaTUFBQUFFaEpRQmc3Z2dJQzFmLy9naWlnQUNGSjQ0QUFuUHh3QUJNZXZ2dnZ2
dnYKdnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2di93LzhGaEFIQUFMQUNnUVZUUDRn
QUFoTGdBQ0QxRUFBRUg0QUFRWThIQQpBRUJvQUFRZDJJT0FBSURRQUFnN3NRY0FBUUV3QUJCZVln
NEFBZ0pnQUNDOHdwYTY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2CjY2NjY2NjY2NjY2NlpL
bHJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycGtxV3V1dXV1dXV1dXV1
dXV1dXUKdXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dW1TcGE2NjY2NjY2NjY2NjY2NjY2NjY2NjY2
NjY2NjY2NjY2NjY2NjY2NjY2NlpLbHJycgpycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJy
cnJycnJycnBrd0FBQUFYY2xBQ0JMZ2dJQzFmLy9naWlnQUNGSjQ0QUFuUHh3CkFCTWV2dnZ2dnZ2
dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2di93LzhGaEFIQUFMQUNnUVZUUDRnQUFo
TGdBQ0QxRUEKQUVINEFBUVk4SEFBRUJvQUFRZDJJT0FBSURRQUFnN3NRY0FBUUV3QUJCZVlnNEFB
Z0pnQUNDOHdwYTY2NjY2NjY2NjY2NjY2NjY2Ngo2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NlpLbHJy
cnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycGtxV3V1dXV1CnV1dXV1dXV1
dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dW1TcGE2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2
NjY2NjY2NjY2NjYKNjY2NjZaSVd3QUVaa1pHWkdSR1JrWC9nQUd5TXdFTFNoZkdXQy93bHBBQzRB
RmRNallueUhSMkR3QUtUUnBEYnFSV2NOUzExMTExMQoxMTExMTExMTExMTExMTExMTExMTExMTEx
MTExMTExMTExd3N5QUFJeUl6SXpJaklqTXYvOEFEcUVGYnNpUEsyNHpkOTRCM2dBYVpQCmszem4z
QUNlYW1sMy9yY0FBQUFWQmdVUkE0ZjBUczBLUzl5aGxEckQxSnNYSHdDQUFBQUFDQ0hoQ1FDbEFF
RGdBQUFBQ2lFQWdlRUoKQUxVQVFPQUFBQUFLSVFCQXVFSkFMVUFRT0FBQUFBb2hBR0Q0UWtBdFFC
QTRBQUFBRENFQUlFNFFrQXRRRFk4RmNBQUFBQlVHQlJFRApoL1JPelFwTDNLR1VPc1BVbXhjZkFJ
QUFBQUFJQWFpQllCR2dDQndBQUFBS0FRQ0JxSUZnRmFBSUhBQUFBQW9CQUVDcUlGZ0ZhQUlICkFB
QUFDZ0VBWU9vZ1dBVm9BZ2NBQUFBTEFRQWdTb2dXQVZvQWdjQUFBQUFWQmdVUkE0ZjBUczBLUzl5
aGxEckQxSnNYSHdDQUFBQUEKQ0NIaUVRQ2xBRURnQUFBQUNpRUFnZUlSQUxVQVFPQUFBQUFLSVFC
QXVJUkFMVUFRT0FBQUFBb2hBR0Q0aEVBdFFCQTRBQUFBRENFQQpJRTRoRUF0UURZOEZjQUFBQUJV
R0JSRURoL1JPelFwTDNLR1VPc1BVbXhjZkFJQUFBQUFJQWFqRFlCR2dDQndBQUFBS0FRQ0JxTU5n
CkZhQUlIQUFBQUFvQkFFQ3FNTmdGYUFJSEFBQUFDZ0VBWU9vdzJBVm9BZ2NBQUFBTEFRQWdTb3cy
QVZvQWdjQUFBQUFWQmdVUkE0ZjAKVHMwS1M5eWhsRHJEMUpzWEh3Q0FBQUFBQ0NIakdRQ2xBRURn
QUFBQUNpRUFnZU1aQUxVQVFPQUFBQUFLSVFCQXVNWkFMVUFRT0FBQQpBQW9oQUdENHhrQXRRQkE0
QUFBQURDRUFJRTR4a0F0UURZOEZjQUFBQUJVR0JSRURoL1JPelFwTDNLR1VPc1BVbXhjZkFJQUFB
QUFJCkFha0ZZQkdnQ0J3QUFBQUtBUUNCcVFWZ0ZhQUlIQUFBQUFvQkFFQ3FRVmdGYUFJSEFBQUFD
Z0VBWU9wQldBVm9BZ2NBQUFBTEFRQWcKU3BCV0FWb0FnY0FBQUFBVkJnVVJBNGYwVHMwS1M5eWhs
RHJEMUpzWEh3Q0FBQUFBQ0NIa0lRQ2xBRURnQUFBQUNpRUFnZVFoQUxVQQpRT0FBQUFBS0lRQkF1
UWhBTFVBUU9BQUFBQW9oQUdENUNFQXRRQkE0QUFBQURDRUFJRTVDRUF0UURZOEZjQUFBQUJVR0JS
RURoL1JPCnpRcEwzS0dVT3NQVW14Y2ZBSUFBQUFBSUFhbEhZQkdnQ0J3QUFBQUtBUUNCcVVkZ0Zh
QUlIQUFBQUFvQkFFQ3FVZGdGYUFJSEFBQUEKQ2dFQVlPcFIyQVZvQWdjQUFBQUxBUUFnU3BSMkFW
b0FnY0FBQUFBVkJnVVJBNGYwVHMwS1M5eWhsRHJEMUpzWEh3Q0FBQUFBQ0NIbApLUUNsQUVEZ0FB
QUFDaUVBZ2VVcEFMVUFRT0FBQUFBS0lRQkF1VXBBTFVBUU9BQUFBQW9oQUdENVNrQXRRQkE0QUFB
QURDRUFJRTVTCmtBdFFEWThGY0FBQUFCVUdCUkVEaC9ST3pRcEwzS0dVT3NQVW14Y2ZBSUFBQUFB
SUFhbUpZQkdnQ0J3QUFBQUtBUUNCcVlsZ0ZhQUkKSEFBQUFBb0JBRUNxWWxnRmFBSUhBQUFBQ2dF
QVlPcGlXQVZvQWdjQUFBQUxBUUFnU3BpV0FWb0FnY0FBQUFBVkJnVVJBNGYwVHMwSwpTOXlobERy
RDFKc1hId0NBQUFBQUNDSG1NUUNsQUVEZ0FBQUFDaUVBZ2VZeEFMVUFRT0FBQUFBS0lRQkF1WXhB
TFVBUU9BQUFBQW9oCkFHRDVqRUF0UUJBNEFBQUFEQ0VBSUU1akVBdFFEWThGY0FBQUFCVUdCUkVE
aC9ST3pRcEwzS0dVT3NQVW14Y2ZBSUFBQUFBSUFhbkwKWUJHZ0NCd0FBQUFLQVFDQnFjdGdGYUFJ
SEFBQUFBb0JBRUNxY3RnRmFBSUhBQUFBQ2dFQVlPcHkyQVZvQWdjQUFBQUxBUUFnU3B5MgpBVm9B
Z2NBQUFBQVZCZ1VSQTRmMFRzMEtTOXlobERyRDFKc1hId0NBQUFBQUNDSG5PUUNsQUVEZ0FBQUFD
aUVBZ2VjNUFMVUFRT0FBCkFBQUtJUUJBdWM1QUxVQVFPQUFBQUFvaEFHRDV6a0F0UUJBNEFBQUFE
Q0VBSUU1emtBdFFEWThGY0FBQUFCVUdCUkVEaC9ST3pRcEwKM0tHVU9zUFVteGNmQUlBQUFBQUlB
YW9OWUJHZ0NCd0FBQUFLQVFDQnFnMWdGYUFJSEFBQUFBb0JBRUNxZzFnRmFBSUhBQUFBQ2dFQQpZ
T3FEV0FWb0FnY0FBQUFMQVFBZ1NxRFdBVm9BZ2NBQUFBQVZCZ1VSQTRmMFRzMEtTOXlobERyRDFK
c1hId0NBQUFBQUNDSG9RUUNsCkFFRGdBQUFBQ2lFQWdlaEJBTFVBUU9BQUFBQUtJUUJBdWhCQUxV
QVFPQUFBQUFvaEFHRDZFRUF0UUJBNEFBQUFEQ0VBSUU2RUVBdFEKRFk4RmNBQUFBQlVHQlJFRGgv
Uk96UXBMM0tHVU9zUFVteGNmQUlBQUFBQUlBYXBQWUJHZ0NCd0FBQUFLQVFDQnFrOWdGYUFJSEFB
QQpBQW9CQUVDcWs5Z0ZhQUlIQUFBQUNnRUFZT3FUMkFWb0FnY0FBQUFMQVFBZ1NxVDJBVm9BZ2NB
QUFBQVZCZ1VSQTRmMFRzMEtTOXloCmxEckQxSnNYSHdDQUFBQUFDQ0hwU1FDbEFFRGdBQUFBQ2lF
QWdlbEpBTFVBUU9BQUFBQUtJUUJBdWxKQUxVQVFPQUFBQUFvaEFHRDYKVWtBdFFCQTRBQUFBRENF
QUlFNlVrQXRRRFk4RmNBQUFBQlVHQlJFRGgvUk96UXBMM0tHVU9zUFVteGNmQUlBQUFBQUlBYXFS
WUJHZwpDQndBQUFBS0FRQ0JxcEZnRmFBSUhBQUFBQW9CQUVDcXBGZ0ZhQUlIQUFBQUNnRUFZT3Fr
V0FWb0FnY0FBQUFMQVFBZ1Nxa1dBVm9BCmdjQUFBQUFWQmdVUkE0ZjBUczBLUzl5aGxEckQxSnNY
SHdDQUFBQUFDQ0hxVVFDbEFFRGdBQUFBQ2lFQWdlcFJBTFVBUU9BQUFBQUsKSVFCQXVwUkFMVUFR
T0FBQUFBb2hBR0Q2bEVBdFFCQTRBQUFBRENFQUlFNmxFQXRRRFk4RmNBQUFBQlVHQlJFRGgvUk96
UXBMM0tHVQpPc1BVbXhjZkFJQUFBQUFJQWFyVFlCR2dDQndBQUFBS0FRQ0JxdE5nRmFBSUhBQUFB
QW9CQUVDcXROZ0ZhQUlIQUFBQUNnRUFZT3EwCjJBVm9BZ2NBQUFBTEFRQWdTcTAyQVZvQWdjQUFB
QUFWQmdVUkE0ZjBUczBLUzl5aGxEckQxSnNYSHdDQUFBQUFDQ0hyV1FDbEFFRGcKQUFBQUNpRUFn
ZXRaQUxVQVFPQUFBQUFLSVFCQXV0WkFMVUFRT0FBQUFBb2hBR0Q2MWtBdFFCQTRBQUFBRENFQUlF
NjFrQXRRRFk4RgpjQUFBQUJVR0JSRURoL1JPelFwTDNLR1VPc1BVbXhjZkFJQUFBQUFJQWFzVllC
R2dDQndBQUFBS0FRQ0JxeFZnRmFBSUhBQUFBQW9CCkFFQ3F4VmdGYUFJSEFBQUFDZ0VBWU9yRldB
Vm9BZ2NBQUFBTEFRQWdTckZXQVZvQWdjQUFBQUFWQmdVUkE0ZjBUczBLUzl5aGxEckQKMUpzWEh3
Q0FBQUFBQ0FIc1hRRWFBSUhBQUFBQUNnRUFnZXhkQVZvQWdjQUFBQUFLQVFCQXV4ZEFWb0FnY0FB
QUFBb0JBR0Q3RjBCVwpnQ0J3QUFBQUNnRUFJRTdGMEJXZ0NCd0FBQUFWQmdVUkE0ZjBUczBLUzl5
aGxEckQxSnNYSHdDQUFBQUJUeVc0SUNBcFgvLzRLNEFICkVSRUFoS1VLNHd3QUhFR0hDcEFBQ1Yr
QTRBQWt1QUFVa2lKQ2JJWkdZTU9BQlhiTnNiOVNxN2hoM0xmZmZmZmZmZmZmZmZmZmZmZmYKZmZm
ZmZmZmZmZmZmZmZmZmZmZmZmZi9oLzRjSUFCUmlDTnlSSllibnM0VFgvQU1FNTJPQlFBQWhNZ0FD
RDRJQUFJUHdBQWd4NEFHKwpicGdBQ0F4NU1BQUlPcjZXQUFJRFFBQWc3c1FBYVNXZ0FCQVIxb0FB
Z3VmK2RMQUFFQk1BQVFYbUZMWFhYWFhYWFhYWFhYWFhYWFhYClhYWFhYWFhYWFhYWFhYWFhYWFhY
WFhYVEpVdGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkTWxTMTExMTEK
MTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMHlWTFhYWFhYWFhYWFhYWFhYWFhY
WFhYWFhYWFhYWFhYWFhYWFhYWApYWFhYWFRKVXRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRk
ZGRkZGRkZGRkZGRkZE1tQUFBQklDVUFnYmdnSUMxZi8vZ2lpZ0FDCkZKNDRBQW5QeHdBQk1ldnZ2
dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnYvdy84RmhBSEFBTEFDZ1FWVFA0
Z0EKQWhMZ0FDRDFFQUFFSDRBQVFZOEhBQUVCb0FBUWQySU9BQUlEUUFBZzdzUWNBQVFFd0FCQmVZ
ZzRBQWdKZ0FDQzh3cGE2NjY2NjY2Ngo2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjZa
S2xycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJyCnJwa3FXdXV1dXV1dXV1
dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXVtU3BhNjY2NjY2NjY2NjY2NjY2NjY2NjY2
NjY2NjYKNjY2NjY2NjY2NjY2NjY2WktscnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJy
cnJycnJycnJwa3dBQUFTRWxBRUN1Q0FnTApWLy8rQ0tLQUFJVW5qZ0FDYy9IQUFFeDYrKysrKysr
KysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrLy9EL3dXRUFjQUFzCkFLQkJWTS9pQUFD
RXVBQUlQVVFBQVFmZ0FCQmp3Y0FBUUdnQUJCM1lnNEFBZ05BQUNEdXhCd0FCQVRBQUVGNWlEZ0FD
QW1BQUlMekMKbHJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycGtxV3V1
dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dQp1dXV1dXV1dXV1dW1TcGE2NjY2NjY2NjY2NjY2
NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NlpLbHJycnJycnJycnJycnJycnJyCnJycnJycnJy
cnJycnJycnJycnJycnJycnBrcVd1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1
dXV1dW1UQUFBQUIKSVNVQVlPNElDQXRYLy80SW9vQUFoU2VPQUFKejhjQUFUSHI3Nzc3Nzc3Nzc3
Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Lwo4UC9CWVFCd0FDd0FvRUZVeitJQUFJUzRB
QWc5UkFBQkIrQUFFR1BCd0FCQWFBQUVIZGlEZ0FDQTBBQUlPN0VIQUFFQk1BQVFYbUlPCkFBSUNZ
QUFndk1LV3V1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1bVNwYTY2NjY2
NjY2NjY2NjY2NjY2NjYKNjY2NjY2NjY2NjY2NjY2NjY2NjY2NlpLbHJycnJycnJycnJycnJycnJy
cnJycnJycnJycnJycnJycnJycnJycnJycGtxV3V1dXV1dQp1dXV1dXV1dXV1dXV1dXV1dXV1dXV1
dXV1dXV1dXV1dXV1dW1TcGE2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2CjY2
NjZaTUFBQUFGM0pRQWdTNElDQXRYLy80SW9vQUFoU2VPQUFKejhjQUFUSHI3Nzc3Nzc3Nzc3Nzc3
Nzc3Nzc3Nzc3Nzc3Nzc3NzcKNzc3Nzc3Nzc3Ny84UC9CWVFCd0FDd0FvRUZVeitJQUFJUzRBQWc5
UkFBQkIrQUFFR1BCd0FCQWFBQUVIZGlEZ0FDQTBBQUlPN0VIQQpBRUJNQUFRWG1JT0FBSUNZQUFn
dk1LV3V1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1bVNwYTY2NjY2NjY2
CjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NlpLbHJycnJycnJycnJycnJycnJycnJy
cnJycnJycnJycnJycnJycnJycnIKcnBrcVd1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1
dXV1dXV1dXV1dW1TRnNBQkdaR1JtUmtSa1pGLzRBQnNqTUJDMG9YeApsZ3Y4SmFRQXVBQlhUSTJK
OGgwZGc4QUNrMGFRMjZrVm5EVXRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRk
ZGRjCkxNZ0FDTWlNeU15SXlJekwvL0FBNmhCVzdJanl0dU0zZmVBZDRBR21UNU44NTl3QW5tcHBk
LzYzQUFBQUZRWUZFUU9IOUU3TkNrdmMKb1pRNnc5U2JGeDhBZ0FBQUFBZ2g0UWtBcFFCQTRBQUFB
QW9oQUlIaENRQzFBRURnQUFBQUNpRUFRTGhDUUMxQUVEZ0FBQUFLSVFCZworRUpBTFVBUU9BQUFB
QXdoQUNCT0VKQUxVQTJQQlhBQUFBQVZCZ1VSQTRmMFRzMEtTOXlobERyRDFKc1hId0NBQUFBQUNB
R29nV0FSCm9BZ2NBQUFBQ2dFQWdhaUJZQldnQ0J3QUFBQUtBUUJBcWlCWUJXZ0NCd0FBQUFvQkFH
RHFJRmdGYUFJSEFBQUFDd0VBSUVxSUZnRmEKQUlIQUFBQUFGUVlGRVFPSDlFN05Da3Zjb1pRNnc5
U2JGeDhBZ0FBQUFBZ2g0aEVBcFFCQTRBQUFBQW9oQUlIaUVRQzFBRURnQUFBQQpDaUVBUUxpRVFD
MUFFRGdBQUFBS0lRQmcrSVJBTFVBUU9BQUFBQXdoQUNCT0lSQUxVQTJQQlhBQUFBQVZCZ1VSQTRm
MFRzMEtTOXloCmxEckQxSnNYSHdDQUFBQUFDQUdvdzJBUm9BZ2NBQUFBQ2dFQWdhakRZQldnQ0J3
QUFBQUtBUUJBcWpEWUJXZ0NCd0FBQUFvQkFHRHEKTU5nRmFBSUhBQUFBQ3dFQUlFcU1OZ0ZhQUlI
QUFBQUFGUVlGRVFPSDlFN05Da3Zjb1pRNnc5U2JGeDhBZ0FBQUFBZ2g0eGtBcFFCQQo0QUFBQUFv
aEFJSGpHUUMxQUVEZ0FBQUFDaUVBUUxqR1FDMUFFRGdBQUFBS0lRQmcrTVpBTFVBUU9BQUFBQXdo
QUNCT01aQUxVQTJQCkJYQUFBQUFWQmdVUkE0ZjBUczBLUzl5aGxEckQxSnNYSHdDQUFBQUFDQUdw
QldBUm9BZ2NBQUFBQ2dFQWdha0ZZQldnQ0J3QUFBQUsKQVFCQXFrRllCV2dDQndBQUFBb0JBR0Rx
UVZnRmFBSUhBQUFBQ3dFQUlFcVFWZ0ZhQUlIQUFBQUFGUVlGRVFPSDlFN05Da3Zjb1pRNgp3OVNi
Rng4QWdBQUFBQWdoNUNFQXBRQkE0QUFBQUFvaEFJSGtJUUMxQUVEZ0FBQUFDaUVBUUxrSVFDMUFF
RGdBQUFBS0lRQmcrUWhBCkxVQVFPQUFBQUF3aEFDQk9RaEFMVUEyUEJYQUFBQUFWQmdVUkE0ZjBU
czBLUzl5aGxEckQxSnNYSHdDQUFBQUFDQUdwUjJBUm9BZ2MKQUFBQUNnRUFnYWxIWUJXZ0NCd0FB
QUFLQVFCQXFsSFlCV2dDQndBQUFBb0JBR0RxVWRnRmFBSUhBQUFBQ3dFQUlFcVVkZ0ZhQUlIQQpB
QUFBRlFZRkVRT0g5RTdOQ2t2Y29aUTZ3OVNiRng4QWdBQUFBQWdoNVNrQXBRQkE0QUFBQUFvaEFJ
SGxLUUMxQUVEZ0FBQUFDaUVBClFMbEtRQzFBRURnQUFBQUtJUUJnK1VwQUxVQVFPQUFBQUF3aEFD
Qk9VcEFMVUEyUEJYQUFBQUFWQmdVUkE0ZjBUczBLUzl5aGxEckQKMUpzWEh3Q0FBQUFBQ0FHcGlX
QVJvQWdjQUFBQUNnRUFnYW1KWUJXZ0NCd0FBQUFLQVFCQXFtSllCV2dDQndBQUFBb0JBR0RxWWxn
RgphQUlIQUFBQUN3RUFJRXFZbGdGYUFJSEFBQUFBRlFZRkVRT0g5RTdOQ2t2Y29aUTZ3OVNiRng4
QWdBQUFBQWdoNWpFQXBRQkE0QUFBCkFBb2hBSUhtTVFDMUFFRGdBQUFBQ2lFQVFMbU1RQzFBRURn
QUFBQUtJUUJnK1l4QUxVQVFPQUFBQUF3aEFDQk9ZeEFMVUEyUEJYQUEKQUFBVkJnVVJBNGYwVHMw
S1M5eWhsRHJEMUpzWEh3Q0FBQUFBQ0FHcHkyQVJvQWdjQUFBQUNnRUFnYW5MWUJXZ0NCd0FBQUFL
QVFCQQpxbkxZQldnQ0J3QUFBQW9CQUdEcWN0Z0ZhQUlIQUFBQUN3RUFJRXFjdGdGYUFJSEFBQUFB
RlFZRkVRT0g5RTdOQ2t2Y29aUTZ3OVNiCkZ4OEFnQUFBQUFnaDV6a0FwUUJBNEFBQUFBb2hBSUhu
T1FDMUFFRGdBQUFBQ2lFQVFMbk9RQzFBRURnQUFBQUtJUUJnK2M1QUxVQVEKT0FBQUFBd2hBQ0JP
YzVBTFVBMlBCWEFBQUFBVkJnVVJBNGYwVHMwS1M5eWhsRHJEMUpzWEh3Q0FBQUFBQ0FHcURXQVJv
QWdjQUFBQQpDZ0VBZ2FvTllCV2dDQndBQUFBS0FRQkFxb05ZQldnQ0J3QUFBQW9CQUdEcWcxZ0Zh
QUlIQUFBQUN3RUFJRXFnMWdGYUFJSEFBQUFBCkZRWUZFUU9IOUU3TkNrdmNvWlE2dzlTYkZ4OEFn
QUFBQUFnaDZFRUFwUUJBNEFBQUFBb2hBSUhvUVFDMUFFRGdBQUFBQ2lFQVFMb1EKUUMxQUVEZ0FB
QUFLSVFCZytoQkFMVUFRT0FBQUFBd2hBQ0JPaEJBTFVBMlBCWEFBQUFBVkJnVVJBNGYwVHMwS1M5
eWhsRHJEMUpzWApId0NBQUFBQUNBR3FUMkFSb0FnY0FBQUFDZ0VBZ2FwUFlCV2dDQndBQUFBS0FR
QkFxcFBZQldnQ0J3QUFBQW9CQUdEcWs5Z0ZhQUlICkFBQUFDd0VBSUVxazlnRmFBSUhBQUFBQUZR
WUZFUU9IOUU3TkNrdmNvWlE2dzlTYkZ4OEFnQUFBQUFnaDZVa0FwUUJBNEFBQUFBb2gKQUlIcFNR
QzFBRURnQUFBQUNpRUFRTHBTUUMxQUVEZ0FBQUFLSVFCZytsSkFMVUFRT0FBQUFBd2hBQ0JPbEpB
TFVBMlBCWEFBQUFBVgpCZ1VSQTRmMFRzMEtTOXlobERyRDFKc1hId0NBQUFBQUNBR3FrV0FSb0Fn
Y0FBQUFDZ0VBZ2FxUllCV2dDQndBQUFBS0FRQkFxcVJZCkJXZ0NCd0FBQUFvQkFHRHFwRmdGYUFJ
SEFBQUFDd0VBSUVxcEZnRmFBSUhBQUFBQUZRWUZFUU9IOUU3TkNrdmNvWlE2dzlTYkZ4OEEKZ0FB
QUFBZ2g2bEVBcFFCQTRBQUFBQW9oQUlIcVVRQzFBRURnQUFBQUNpRUFRTHFVUUMxQUVEZ0FBQUFL
SVFCZytwUkFMVUFRT0FBQQpBQXdoQUNCT3BSQUxVQTJQQlhBQUFBQVZCZ1VSQTRmMFRzMEtTOXlo
bERyRDFKc1hId0NBQUFBQUNBR3EwMkFSb0FnY0FBQUFDZ0VBCmdhclRZQldnQ0J3QUFBQUtBUUJB
cXJUWUJXZ0NCd0FBQUFvQkFHRHF0TmdGYUFJSEFBQUFDd0VBSUVxdE5nRmFBSUhBQUFBQUZRWUYK
RVFPSDlFN05Da3Zjb1pRNnc5U2JGeDhBZ0FBQUFBZ2g2MWtBcFFCQTRBQUFBQW9oQUlIcldRQzFB
RURnQUFBQUNpRUFRTHJXUUMxQQpFRGdBQUFBS0lRQmcrdFpBTFVBUU9BQUFBQXdoQUNCT3RaQUxV
QTJQQlhBQUFBQVZCZ1VSQTRmMFRzMEtTOXlobERyRDFKc1hId0NBCkFBQUFDQUdyRldBUm9BZ2NB
QUFBQ2dFQWdhc1ZZQldnQ0J3QUFBQUtBUUJBcXNWWUJXZ0NCd0FBQUFvQkFHRHF4VmdGYUFJSEFB
QUEKQ3dFQUlFcXhWZ0ZhQUlIQUFBQUFGUVlGRVFPSDlFN05Da3Zjb1pRNnc5U2JGeDhBZ0FBQUFB
Z0I3RjBCR2dDQndBQUFBQW9CQUlIcwpYUUZhQUlIQUFBQUFDZ0VBUUxzWFFGYUFJSEFBQUFBS0FR
QmcreGRBVm9BZ2NBQUFBQW9CQUNCT3hkQVZvQWdjQUFBQUZRWUZFUU9ICjlFN05Da3Zjb1pRNnc5
U2JGeDhBZ0FBQUFVOGx1Q0FnS1YvLytDdUFCeEVSQUlTbEN1TU1BQnhCaHdxUUFBbGZnT0FBSkxn
QUZKSWkKUW15R1JtRERnQVYyemJHL1VxdTRZZHkzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMz
MzMzMzMzMzMzMzMzLzRmK0hDQUFVWWdqYwprU1dHNTdPRTEvd0RCT2RqZ1VBQUlUSUFBZytDQUFD
RDhBQUlNZUFCdm02WUFBZ01lVEFBQ0RxK2xnQUNBMEFBSU83RUFHa2xvQUFRCkVkYUFBSUxuL25T
d0FCQVRBQUVGNWhTMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTEweVZM
WFhYWFhYWFgKWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYVEpVdGRkZGRkZGRkZGRk
ZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZApkZE1sUzExMTExMTExMTExMTExMTExMTExMTEx
MTExMTExMTExMTExMTExMTExMHlWTFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYClhYWFhYWFhY
WFhYWFhYWFRKZ0FBQVNBbEFJRzRJQ0F0WC8vNElvb0FBaFNlT0FBSno4Y0FBVEhyNzc3Nzc3Nzc3
Nzc3Nzc3Nzc3NzcKNzc3Nzc3Nzc3Nzc3Nzc3Nzc3NzcvOFAvQllRQndBQ3dBb0VGVXorSUFBSVM0
QUFnOVJBQUJCK0FBRUdQQndBQkFhQUFFSGRpRGdBQwpBMEFBSU83RUhBQUVCTUFBUVhtSU9BQUlD
WUFBZ3ZNS1d1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dW1TCnBhNjY2
NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjZaS2xycnJycnJycnJycnJycnJy
cnJycnJycnJycnJycnIKcnJycnJycnJycnJwa3FXdXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1
dXV1dXV1dXV1dXV1dXVtU3BhNjY2NjY2NjY2NjY2NjY2Ngo2NjY2NjY2NjY2NjY2NjY2NjY2NjY2
NjY2Wk1BQUFFaEpRQkFyZ2dJQzFmLy9naWlnQUNGSjQ0QUFuUHh3QUJNZXZ2dnZ2dnZ2dnZ2CnZ2
dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2di93LzhGaEFIQUFMQUNnUVZUUDRnQUFoTGdBQ0Qx
RUFBRUg0QUFRWThIQUFFQm8KQUFRZDJJT0FBSURRQUFnN3NRY0FBUUV3QUJCZVlnNEFBZ0pnQUND
OHdwYTY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2Ngo2NjY2NjY2NlpLbHJycnJycnJy
cnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycGtxV3V1dXV1dXV1dXV1dXV1dXV1dXV1
CnV1dXV1dXV1dXV1dXV1dXV1dXV1dW1TcGE2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2
NjY2NjY2NjY2NlpLbHJycnJycnIKcnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnBr
d0FBQUFTRWxBR0R1Q0FnTFYvLytDS0tBQUlVbmpnQUNjL0hBQUV4NgorKysrKysrKysrKysrKysr
KysrKysrKysrKysrKysrKysrKysrKysrLy9EL3dXRUFjQUFzQUtCQlZNL2lBQUNFdUFBSVBVUUFB
UWZnCkFCQmp3Y0FBUUdnQUJCM1lnNEFBZ05BQUNEdXhCd0FCQVRBQUVGNWlEZ0FDQW1BQUlMekNs
cnJycnJycnJycnJycnJycnJycnJycnIKcnJycnJycnJycnJycnJycnJycGtxV3V1dXV1dXV1dXV1
dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1bVNwYTY2NjY2NjY2Ngo2NjY2NjY2NjY2NjY2
NjY2NjY2NjY2NjY2NjY2NjY2NlpLbHJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJy
cnJycnJyCnBrcVd1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dW1UQUFB
QUJkeVVBSUV1Q0FnTFYvLytDS0tBQUlVbmoKZ0FDYy9IQUFFeDYrKysrKysrKysrKysrKysrKysr
KysrKysrKysrKysrKysrKysrKysrLy9EL3dXRUFjQUFzQUtCQlZNL2lBQUNFdQpBQUlQVVFBQVFm
Z0FCQmp3Y0FBUUdnQUJCM1lnNEFBZ05BQUNEdXhCd0FCQVRBQUVGNWlEZ0FDQW1BQUlMekNscnJy
cnJycnJycnJyCnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycGtxV3V1dXV1dXV1dXV1dXV1
dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1bVMKcGE2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2
NjY2NjY2NjY2NjY2NjY2NlpLbHJycnJycnJycnJycnJycnJycnJycnJycnJycnJycgpycnJycnJy
cnJycnBraGJBQVJtUmtaa1pFWkdSZitBQWJJekFRdEtGOFpZTC9DV2tBTGdBVjB5TmlmSWRIWVBB
QXBOR2tOdXBGWncxCkxYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYQ3pJ
QUFqSWpNak1pTWlNeS8vd0FPb1FWdXlJOHJiak4zM2cKSGVBQnBrK1RmT2ZjQUo1cWFYZit0d0FB
QUJVR0JSRURoL1JPelFwTDNLR1VPc1BVbXhjZkFJQUFBQUFJSWVFSkFLVUFRT0FBQUFBSwpJUUNC
NFFrQXRRQkE0QUFBQUFvaEFFQzRRa0F0UUJBNEFBQUFDaUVBWVBoQ1FDMUFFRGdBQUFBTUlRQWdU
aENRQzFBTmp3VndBQUFBCkZRWUZFUU9IOUU3TkNrdmNvWlE2dzlTYkZ4OEFnQUFBQUFnQnFJRmdF
YUFJSEFBQUFBb0JBSUdvZ1dBVm9BZ2NBQUFBQ2dFQVFLb2cKV0FWb0FnY0FBQUFLQVFCZzZpQllC
V2dDQndBQUFBc0JBQ0JLaUJZQldnQ0J3QUFBQUJVR0JSRURoL1JPelFwTDNLR1VPc1BVbXhjZgpB
SUFBQUFBSUllSVJBS1VBUU9BQUFBQUtJUUNCNGhFQXRRQkE0QUFBQUFvaEFFQzRoRUF0UUJBNEFB
QUFDaUVBWVBpRVFDMUFFRGdBCkFBQU1JUUFnVGlFUUMxQU5qd1Z3QUFBQUZRWUZFUU9IOUU3TkNr
dmNvWlE2dzlTYkZ4OEFnQUFBQUFnQnFNTmdFYUFJSEFBQUFBb0IKQUlHb3cyQVZvQWdjQUFBQUNn
RUFRS293MkFWb0FnY0FBQUFLQVFCZzZqRFlCV2dDQndBQUFBc0JBQ0JLakRZQldnQ0J3QUFBQUJV
RwpCUkVEaC9ST3pRcEwzS0dVT3NQVW14Y2ZBSUFBQUFBSUllTVpBS1VBUU9BQUFBQUtJUUNCNHhr
QXRRQkE0QUFBQUFvaEFFQzR4a0F0ClFCQTRBQUFBQ2lFQVlQakdRQzFBRURnQUFBQU1JUUFnVGpH
UUMxQU5qd1Z3QUFBQUZRWUZFUU9IOUU3TkNrdmNvWlE2dzlTYkZ4OEEKZ0FBQUFBZ0JxUVZnRWFB
SUhBQUFBQW9CQUlHcEJXQVZvQWdjQUFBQUNnRUFRS3BCV0FWb0FnY0FBQUFLQVFCZzZrRllCV2dD
QndBQQpBQXNCQUNCS2tGWUJXZ0NCd0FBQUFCVUdCUkVEaC9ST3pRcEwzS0dVT3NQVW14Y2ZBSUFB
QUFBSUllUWhBS1VBUU9BQUFBQUtJUUNCCjVDRUF0UUJBNEFBQUFBb2hBRUM1Q0VBdFFCQTRBQUFB
Q2lFQVlQa0lRQzFBRURnQUFBQU1JUUFnVGtJUUMxQU5qd1Z3QUFBQUZRWUYKRVFPSDlFN05Da3Zj
b1pRNnc5U2JGeDhBZ0FBQUFBZ0JxVWRnRWFBSUhBQUFBQW9CQUlHcFIyQVZvQWdjQUFBQUNnRUFR
S3BSMkFWbwpBZ2NBQUFBS0FRQmc2bEhZQldnQ0J3QUFBQXNCQUNCS2xIWUJXZ0NCd0FBQUFCVUdC
UkVEaC9ST3pRcEwzS0dVT3NQVW14Y2ZBSUFBCkFBQUlJZVVwQUtVQVFPQUFBQUFLSVFDQjVTa0F0
UUJBNEFBQUFBb2hBRUM1U2tBdFFCQTRBQUFBQ2lFQVlQbEtRQzFBRURnQUFBQU0KSVFBZ1RsS1FD
MUFOandWd0FBQUFGUVlGRVFPSDlFN05Da3Zjb1pRNnc5U2JGeDhBZ0FBQUFBZ0JxWWxnRWFBSUhB
QUFBQW9CQUlHcAppV0FWb0FnY0FBQUFDZ0VBUUtwaVdBVm9BZ2NBQUFBS0FRQmc2bUpZQldnQ0J3
QUFBQXNCQUNCS21KWUJXZ0NCd0FBQUFCVUdCUkVECmgvUk96UXBMM0tHVU9zUFVteGNmQUlBQUFB
QUlJZVl4QUtVQVFPQUFBQUFLSVFDQjVqRUF0UUJBNEFBQUFBb2hBRUM1akVBdFFCQTQKQUFBQUNp
RUFZUG1NUUMxQUVEZ0FBQUFNSVFBZ1RtTVFDMUFOandWd0FBQUFGUVlGRVFPSDlFN05Da3Zjb1pR
Nnc5U2JGeDhBZ0FBQQpBQWdCcWN0Z0VhQUlIQUFBQUFvQkFJR3B5MkFWb0FnY0FBQUFDZ0VBUUtw
eTJBVm9BZ2NBQUFBS0FRQmc2bkxZQldnQ0J3QUFBQXNCCkFDQktuTFlCV2dDQndBQUFBQlVHQlJF
RGgvUk96UXBMM0tHVU9zUFVteGNmQUlBQUFBQUlJZWM1QUtVQVFPQUFBQUFLSVFDQjV6a0EKdFFC
QTRBQUFBQW9oQUVDNXprQXRRQkE0QUFBQUNpRUFZUG5PUUMxQUVEZ0FBQUFNSVFBZ1RuT1FDMUFO
andWd0FBQUFGUVlGRVFPSAo5RTdOQ2t2Y29aUTZ3OVNiRng4QWdBQUFBQWdCcWcxZ0VhQUlIQUFB
QUFvQkFJR3FEV0FWb0FnY0FBQUFDZ0VBUUtxRFdBVm9BZ2NBCkFBQUtBUUJnNm9OWUJXZ0NCd0FB
QUFzQkFDQktvTllCV2dDQndBQUFBQlVHQlJFRGgvUk96UXBMM0tHVU9zUFVteGNmQUlBQUFBQUkK
SWVoQkFLVUFRT0FBQUFBS0lRQ0I2RUVBdFFCQTRBQUFBQW9oQUVDNkVFQXRRQkE0QUFBQUNpRUFZ
UG9RUUMxQUVEZ0FBQUFNSVFBZwpUb1FRQzFBTmp3VndBQUFBRlFZRkVRT0g5RTdOQ2t2Y29aUTZ3
OVNiRng4QWdBQUFBQWdCcWs5Z0VhQUlIQUFBQUFvQkFJR3FUMkFWCm9BZ2NBQUFBQ2dFQVFLcVQy
QVZvQWdjQUFBQUtBUUJnNnBQWUJXZ0NCd0FBQUFzQkFDQktwUFlCV2dDQndBQUFBQlVHQlJFRGgv
Uk8KelFwTDNLR1VPc1BVbXhjZkFJQUFBQUFJSWVsSkFLVUFRT0FBQUFBS0lRQ0I2VWtBdFFCQTRB
QUFBQW9oQUVDNlVrQXRRQkE0QUFBQQpDaUVBWVBwU1FDMUFFRGdBQUFBTUlRQWdUcFNRQzFBTmp3
VndBQUFBRlFZRkVRT0g5RTdOQ2t2Y29aUTZ3OVNiRng4QWdBQUFBQWdCCnFwRmdFYUFJSEFBQUFB
b0JBSUdxa1dBVm9BZ2NBQUFBQ2dFQVFLcWtXQVZvQWdjQUFBQUtBUUJnNnFSWUJXZ0NCd0FBQUFz
QkFDQksKcVJZQldnQ0J3QUFBQUJVR0JSRURoL1JPelFwTDNLR1VPc1BVbXhjZkFJQUFBQUFJSWVw
UkFLVUFRT0FBQUFBS0lRQ0I2bEVBdFFCQQo0QUFBQUFvaEFFQzZsRUF0UUJBNEFBQUFDaUVBWVBx
VVFDMUFFRGdBQUFBTUlRQWdUcVVRQzFBTmp3VndBQUFBRlFZRkVRT0g5RTdOCkNrdmNvWlE2dzlT
YkZ4OEFnQUFBQUFnQnF0TmdFYUFJSEFBQUFBb0JBSUdxMDJBVm9BZ2NBQUFBQ2dFQVFLcTAyQVZv
QWdjQUFBQUsKQVFCZzZyVFlCV2dDQndBQUFBc0JBQ0JLclRZQldnQ0J3QUFBQUJVR0JSRURoL1JP
elFwTDNLR1VPc1BVbXhjZkFJQUFBQUFJSWV0WgpBS1VBUU9BQUFBQUtJUUNCNjFrQXRRQkE0QUFB
QUFvaEFFQzYxa0F0UUJBNEFBQUFDaUVBWVByV1FDMUFFRGdBQUFBTUlRQWdUcldRCkMxQU5qd1Z3
QUFBQUZRWUZFUU9IOUU3TkNrdmNvWlE2dzlTYkZ4OEFnQUFBQUFnQnF4VmdFYUFJSEFBQUFBb0JB
SUdyRldBVm9BZ2MKQUFBQUNnRUFRS3JGV0FWb0FnY0FBQUFLQVFCZzZzVllCV2dDQndBQUFBc0JB
Q0JLc1ZZQldnQ0J3QUFBQUJVR0JSRURoL1JPelFwTAozS0dVT3NQVW14Y2ZBSUFBQUFBSUFleGRB
Um9BZ2NBQUFBQUtBUUNCN0YwQldnQ0J3QUFBQUFvQkFFQzdGMEJXZ0NCd0FBQUFDZ0VBCllQc1hR
RmFBSUhBQUFBQUtBUUFnVHNYUUZhQUlIQUFBQUJVR0JSRURoL1JPelFwTDNLR1VPc1BVbXhjZkFJ
QUFBQUZQSmJnZ0lDbGYKLy9ncmdBY1JFUUNFcFFyakRBQWNRWWNLa0FBSlg0RGdBQ1M0QUJTU0lr
SnNoa1pndzRBRmRzMnh2MUtydUdIY3Q5OTk5OTk5OTk5OQo5OTk5OTk5OTk5OTk5OTk5OTk5OTk5
OTk5OTk5LytIL2h3Z0FGR0lJM0pFbGh1ZXpoTmY4QXdUblk0RkFBQ0V5QUFJUGdnQUFnL0FBCkNE
SGdBYjV1bUFBSURIa3dBQWc2dnBZQUFnTkFBQ0R1eEFCcEphQUFFQkhXZ0FDQzUvNTBzQUFRRXdB
QkJlWVV0ZGRkZGRkZGRkZGQKZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkTWxTMTExMTEx
MTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTEweQpWTFhYWFhYWFhYWFhYWFhYWFhY
WFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYVEpVdGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRk
CmRkZGRkZGRkZGRkZE1sUzExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTEx
MHlZQUFBRWdKUUNCdUNBZ0xWLy8KK0NLS0FBSVVuamdBQ2MvSEFBRXg2KysrKysrKysrKysrKysr
KysrKysrKysrKysrKysrKysrKysrKysrKy8vRC93V0VBY0FBc0FLQgpCVk0vaUFBQ0V1QUFJUFVR
QUFRZmdBQkJqd2NBQVFHZ0FCQjNZZzRBQWdOQUFDRHV4QndBQkFUQUFFRjVpRGdBQ0FtQUFJTHpD
bHJyCnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnBrcVd1dXV1dXV1dXV1
dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXUKdXV1dXV1dXVtU3BhNjY2NjY2NjY2NjY2NjY2NjY2NjY2
NjY2NjY2NjY2NjY2NjY2NjY2NjZaS2xycnJycnJycnJycnJycnJycnJycgpycnJycnJycnJycnJy
cnJycnJycnJwa3FXdXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXVtVEFB
QUJJU1VBClFLNElDQXRYLy80SW9vQUFoU2VPQUFKejhjQUFUSHI3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3
Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3LzhQL0IKWVFCd0FDd0FvRUZVeitJQUFJUzRBQWc5UkFBQkIr
QUFFR1BCd0FCQWFBQUVIZGlEZ0FDQTBBQUlPN0VIQUFFQk1BQVFYbUlPQUFJQwpZQUFndk1LV3V1
dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1bVNwYTY2NjY2NjY2NjY2NjY2
NjY2NjY2NjY2CjY2NjY2NjY2NjY2NjY2NjY2NlpLbHJycnJycnJycnJycnJycnJycnJycnJycnJy
cnJycnJycnJycnJycnJycGtxV3V1dXV1dXV1dXUKdXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1
dXV1dW1TcGE2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NgpaTUFBQUFF
aEpRQmc3Z2dJQzFmLy9naWlnQUNGSjQ0QUFuUHh3QUJNZXZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2
dnZ2dnZ2dnZ2dnZ2CnZ2dnZ2di93LzhGaEFIQUFMQUNnUVZUUDRnQUFoTGdBQ0QxRUFBRUg0QUFR
WThIQUFFQm9BQVFkMklPQUFJRFFBQWc3c1FjQUFRRXcKQUJCZVlnNEFBZ0pnQUNDOHdwYTY2NjY2
NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2WktscnJycnJycnJycnJycgpycnJy
cnJycnJycnJycnJycnJycnJycnJycnJycGtxV3V1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1
dXV1dXV1dXV1dXV1bVNwCmE2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2
NlpLbHJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnIKcnJycnJycnJycnBrd0FBQUFYY2xB
Q0JMZ2dJQzFmLy9naWlnQUNGSjQ0QUFuUHh3QUJNZXZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dgp2
dnZ2dnZ2dnZ2dnZ2dnZ2di93LzhGaEFIQUFMQUNnUVZUUDRnQUFoTGdBQ0QxRUFBRUg0QUFRWThI
QUFFQm9BQVFkMklPQUFJRFFBCkFnN3NRY0FBUUV3QUJCZVlnNEFBZ0pnQUNDOHdwYTY2NjY2NjY2
NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2WktscnIKcnJycnJycnJycnJycnJycnJy
cnJycnJycnJycnJycnJycnJycnJycGtxV3V1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1
dQp1dXV1dXV1dW1TcGE2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NlpJ
V3dBRVprWkdaR1JHUmtYL2dBR3lNCndFTFNoZkdXQy93bHBBQzRBRmRNallueUhSMkR3QUtUUnBE
YnFSV2NOUzExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTEKMTExMTExd3N5QUFJeUl6
SXpJaklqTXYvOEFEcUVGYnNpUEsyNHpkOTRCM2dBYVpQazN6bjNBQ2VhbWwzL3JjQUFBQVZCZ1VS
QTRmMApUczBLUzl5aGxEckQxSnNYSHdDQUFBQUFDQ0hoQ1FDbEFFRGdBQUFBQ2lFQWdlRUpBTFVB
UU9BQUFBQUtJUUJBdUVKQUxVQVFPQUFBCkFBb2hBR0Q0UWtBdFFCQTRBQUFBRENFQUlFNFFrQXRR
RFk4RmNBQUFBQlVHQlJFRGgvUk96UXBMM0tHVU9zUFVteGNmQUlBQUFBQUkKQWFpQllCR2dDQndB
QUFBS0FRQ0JxSUZnRmFBSUhBQUFBQW9CQUVDcUlGZ0ZhQUlIQUFBQUNnRUFZT29nV0FWb0FnY0FB
QUFMQVFBZwpTb2dXQVZvQWdjQUFBQUFWQmdVUkE0ZjBUczBLUzl5aGxEckQxSnNYSHdDQUFBQUFD
Q0hpRVFDbEFFRGdBQUFBQ2lFQWdlSVJBTFVBClFPQUFBQUFLSVFCQXVJUkFMVUFRT0FBQUFBb2hB
R0Q0aEVBdFFCQTRBQUFBRENFQUlFNGhFQXRRRFk4RmNBQUFBQlVHQlJFRGgvUk8KelFwTDNLR1VP
c1BVbXhjZkFJQUFBQUFJQWFqRFlCR2dDQndBQUFBS0FRQ0JxTU5nRmFBSUhBQUFBQW9CQUVDcU1O
Z0ZhQUlIQUFBQQpDZ0VBWU9vdzJBVm9BZ2NBQUFBTEFRQWdTb3cyQVZvQWdjQUFBQUFWQmdVUkE0
ZjBUczBLUzl5aGxEckQxSnNYSHdDQUFBQUFDQ0hqCkdRQ2xBRURnQUFBQUNpRUFnZU1aQUxVQVFP
QUFBQUFLSVFCQXVNWkFMVUFRT0FBQUFBb2hBR0Q0eGtBdFFCQTRBQUFBRENFQUlFNHgKa0F0UURZ
OEZjQUFBQUJVR0JSRURoL1JPelFwTDNLR1VPc1BVbXhjZkFJQUFBQUFJQWFrRllCR2dDQndBQUFB
S0FRQ0JxUVZnRmFBSQpIQUFBQUFvQkFFQ3FRVmdGYUFJSEFBQUFDZ0VBWU9wQldBVm9BZ2NBQUFB
TEFRQWdTcEJXQVZvQWdjQT0KCg==
</data>
<flag name="commit-queue"
          id="241223"
          type_id="3"
          status="-"
          setter="gtk-ews"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>217964</attachid>
            <date>2013-11-27 12:39:14 -0800</date>
            <delta_ts>2013-12-03 12:10:12 -0800</delta_ts>
            <desc>Another attempt</desc>
            <filename>patch_15.txt</filename>
            <type>text/plain</type>
            <size>138349</size>
            <attacher name="Eric Carlson">eric.carlson</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDE1OTgyMCkKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDExMCBAQAorMjAxMy0xMS0yNyAgRXJpYyBD
YXJsc29uICA8ZXJpYy5jYXJsc29uQGFwcGxlLmNvbT4KKworICAgICAgICBBbGxvdyB0aGUgUXVp
Y2tUaW1lIHBsdWctaW4gdG8gYmUgcmVwbGFjZWQgYnkgc2NyaXB0IGluIGFuIGlzb2xhdGVkIHdv
cmQKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEyNDkw
MAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFRlc3Q6
IHBsdWdpbnMvcXVpY2t0aW1lLXBsdWdpbi1yZXBsYWNlbWVudC5odG1sCisKKyAgICAgICAgKiBD
TWFrZUxpc3RzLnR4dDogQWRkIG5ldyBNb2R1bGVzIHBhdGguCisgICAgICAgICogRGVyaXZlZFNv
dXJjZXMubWFrZTogQWRkIG5ldyBmaWxlcy4KKyAgICAgICAgKiBHTlVtYWtlZmlsZS5hbTogQWRk
IG5ldyBNb2R1bGVzIHBhdGguCisgICAgICAgICogR05VbWFrZWZpbGUubGlzdC5hbTogQWRkIG5l
dyBoZWFkZXIuCisgICAgICAgICogV2ViQ29yZS52Y3hwcm9qL1dlYkNvcmUudmN4cHJvajogQWRk
IG5ldyBoZWFkZXIuCisgICAgICAgICogV2ViQ29yZS52Y3hwcm9qL1dlYkNvcmVDb21tb24ucHJv
cHM6IEFkZCBuZXcgTW9kdWxlcyBwYXRoLgorICAgICAgICAqIFdlYkNvcmUueGNvZGVwcm9qL3By
b2plY3QucGJ4cHJvajogQWRkIG5ldyBmaWxlcy4KKworICAgICAgICAqIE1vZHVsZXMvcGx1Z2lu
czogQWRkZWQuCisgICAgICAgICogTW9kdWxlcy9wbHVnaW5zL1BsdWdpblJlcGxhY2VtZW50Lmg6
IEFkZGVkLiBEZWZpbmVzIHRoZSBpbnRlcmZhY2UgZm9yIGEgcGx1Zy1pbiByZXBsYWNlbWVudC4K
KworICAgICAgICBDcmVhdGUgYSByZXBsYWNlbWVudCBmb3IgdGhlIFF1aWNrVGltZSBwbHVnLWlu
LgorICAgICAgICAqIE1vZHVsZXMvcGx1Z2lucy9RdWlja1RpbWVQbHVnaW5SZXBsYWNlbWVudC5j
cHA6IEFkZGVkLgorICAgICAgICAqIE1vZHVsZXMvcGx1Z2lucy9RdWlja1RpbWVQbHVnaW5SZXBs
YWNlbWVudC5jc3M6IEFkZGVkLgorICAgICAgICAqIE1vZHVsZXMvcGx1Z2lucy9RdWlja1RpbWVQ
bHVnaW5SZXBsYWNlbWVudC5oOiBBZGRlZC4KKyAgICAgICAgKiBNb2R1bGVzL3BsdWdpbnMvUXVp
Y2tUaW1lUGx1Z2luUmVwbGFjZW1lbnQuaWRsOiBBZGRlZC4KKyAgICAgICAgKiBNb2R1bGVzL3Bs
dWdpbnMvUXVpY2tUaW1lUGx1Z2luUmVwbGFjZW1lbnQuanM6IEFkZGVkLgorCisKKyAgICAgICAg
QWxsb3cgcGx1Zy1pbiByZXBsYWNlbWVudCB0byBiZSBlbmFibGVkIGF0IHJ1bnRpbWUuCisgICAg
ICAgICogYmluZGluZ3MvZ2VuZXJpYy9SdW50aW1lRW5hYmxlZEZlYXR1cmVzLmg6CisgICAgICAg
IChXZWJDb3JlOjpSdW50aW1lRW5hYmxlZEZlYXR1cmVzOjpzZXRQbHVnaW5SZXBsYWNlbWVudEVu
YWJsZWQpOgorICAgICAgICAoV2ViQ29yZTo6UnVudGltZUVuYWJsZWRGZWF0dXJlczo6cGx1Z2lu
UmVwbGFjZW1lbnRFbmFibGVkKToKKworICAgICAgICAqIGJpbmRpbmdzL2pzL0pTRE9NQmluZGlu
Zy5oOgorICAgICAgICAoV2ViQ29yZTo6dG9KUyk6IEFkZCB0b0pTKC4uLiBjb25zdCBTdHJpbmcm
IC4uLikuCisKKyAgICAgICAgKiBiaW5kaW5ncy9qcy9KU1BsdWdpbkVsZW1lbnRGdW5jdGlvbnMu
Y3BwOgorICAgICAgICAoV2ViQ29yZTo6cGx1Z2luU2NyaXB0T2JqZWN0KTogR2l2ZSBhIHBsdWct
aW4gcmVwbGFjZW1lbnQgYSBmaXJzdCBzaG90IGF0IGRlZmluaW5nIHRoZQorICAgICAgICAgICAg
c2NyaXB0IGludGVyZmFjZS4KKworICAgICAgICAqIGh0bWwvSFRNTEVtYmVkRWxlbWVudC5jcHA6
CisgICAgICAgIChXZWJDb3JlOjpIVE1MRW1iZWRFbGVtZW50Ojp1cGRhdGVXaWRnZXQpOiBDYWxs
IGJhc2UgY2xhc3MgcmVxdWVzdE9iamVjdC4KKworICAgICAgICAqIGh0bWwvSFRNTE1lZGlhRWxl
bWVudC5jcHA6CisgICAgICAgIChIVE1MTWVkaWFFbGVtZW50OjpmaWxlU2l6ZSk6IE5ldywgcGFz
c3Rocm91Z2ggdG8gbWVkaWEgZW5naW5lLgorICAgICAgICAqIGh0bWwvSFRNTE1lZGlhRWxlbWVu
dC5oOgorCisgICAgICAgICogaHRtbC9IVE1MT2JqZWN0RWxlbWVudC5jcHA6CisgICAgICAgIChX
ZWJDb3JlOjpIVE1MT2JqZWN0RWxlbWVudDo6dXBkYXRlV2lkZ2V0KTogQ2FsbCBiYXNlIGNsYXNz
IHJlcXVlc3RPYmplY3QuCisKKyAgICAgICAgTW92ZWQgc29tZSBsb2dpYyB0aGF0IHdhcyBwcmV2
aW91c2x5IHVzZWQgb25seSBmb3IgY3JlYXRpbmcgYSBwbHVnLWluIHNuYXBzaG90IHRvIHRoZSBi
YXNlCisgICAgICAgIGNsYXNzIHNvIGl0IGNhbiBiZSBzaGFyZWQgYnkgYSBwbHVnLWluIHJlcGxh
Y2VtZW50LgorICAgICAgICAqIGh0bWwvSFRNTFBsdWdJbkVsZW1lbnQuY3BwOgorICAgICAgICAo
V2ViQ29yZTo6SFRNTFBsdWdJbkVsZW1lbnQ6OkhUTUxQbHVnSW5FbGVtZW50KTogSW5pdGlhbGl6
ZSB0aW1lciB1c2VkIHRvIHN3YXAgcmVuZGVyZXJzLgorICAgICAgICAoV2ViQ29yZTo6SFRNTFBs
dWdJbkVsZW1lbnQ6OmNyZWF0ZVJlbmRlcmVyKTogQWxsb3cgcGx1Zy1pbiByZXBsYWNlbWVudCB0
byBjcmVhdGUgdGhlIHJlbmRlcmVyLgorICAgICAgICAoV2ViQ29yZTo6SFRNTFBsdWdJbkVsZW1l
bnQ6OnN3YXBSZW5kZXJlclRpbWVyRmlyZWQpOiBDcmVhdGUgYSBzaGFkb3cgcm9vdC4KKyAgICAg
ICAgKFdlYkNvcmU6OkhUTUxQbHVnSW5FbGVtZW50OjpzZXREaXNwbGF5U3RhdGUpOiBTZXQgdGhl
IG5ldyBzdGF0ZSwgcHJpbWUgdGhlIHN3YXAgcmVuZGVyZXIgCisgICAgICAgICAgICB0aW1lciBp
ZiBuZWNlc3NhcnkuCisgICAgICAgIChXZWJDb3JlOjpIVE1MUGx1Z0luRWxlbWVudDo6ZGlkQWRk
VXNlckFnZW50U2hhZG93Um9vdCk6IFRlbGwgdGhlIHBsdWctaW4gcmVwbGFjZW1lbnQgdG8KKyAg
ICAgICAgICAgIGluc3RhbGwgaXRzZWxmIGluIHRoZSBuZXcgc2hhZG93IERPTS4KKyAgICAgICAg
KFdlYkNvcmU6OnJlZ2lzdGVyZWRQbHVnaW5SZXBsYWNlbWVudHMpOiBSZXR1cm4gdmVjdG9yIG9m
IGFsbCByZWdpc3RlcmVkIHBsdWctaW4gcmVwbGFjZW1lbnRzLgorICAgICAgICAoV2ViQ29yZTo6
cmVnaXN0ZXJQbHVnaW5SZXBsYWNlbWVudCk6IEFkZCBhIHBsdWctaW4gcmVwbGFjZW1lbnQuCisg
ICAgICAgIChXZWJDb3JlOjpwbHVnaW5SZXBsYWNlbWVudEZvclR5cGUpOiBGaW5kIGEgcGx1Zy1p
biByZXBsYWNlbWVudCBmb3IgYSBNSU1FIHR5cGUuCisgICAgICAgIChXZWJDb3JlOjpIVE1MUGx1
Z0luRWxlbWVudDo6cmVxdWVzdE9iamVjdCk6IElmIHRoZXJlIGlzIGEgcGx1Zy1pbiByZXBsYWNl
bWVudCBmb3IgdGhlIE1JTUUgdHlwZSwKKyAgICAgICAgICAgIGNyZWF0ZSBpdCBhbmQgc2V0IHRo
ZSBkaXNwbGF5IHN0YXRlLgorICAgICAgICAoV2ViQ29yZTo6SFRNTFBsdWdJbkVsZW1lbnQ6OnNj
cmlwdE9iamVjdEZvclBsdWdpblJlcGxhY2VtZW50KTogUmV0dXJuIHRoZSBzY3JpcHQgb2JqZWN0
IGZvciAKKyAgICAgICAgICAgIHRoZSBjdXJyZW50IHBsdWctaW4gcmVwbGFjZW1lbnQsIGlmIGFu
eS4KKyAgICAgICAgKiBodG1sL0hUTUxQbHVnSW5FbGVtZW50Lmg6CisKKyAgICAgICAgTW92ZSBz
b21lIHBsdWctaW4gc25hcHNob3QgY29kZSBpbnRvIHRoZSBiYXNlIGNsYXNzLgorICAgICAgICAq
IGh0bWwvSFRNTFBsdWdJbkltYWdlRWxlbWVudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpIVE1M
UGx1Z0luSW1hZ2VFbGVtZW50OjpIVE1MUGx1Z0luSW1hZ2VFbGVtZW50KTogTm8gbmVlZCB0byBp
bml0aWFsaXplIHRpbWVyLgorICAgICAgICAoV2ViQ29yZTo6SFRNTFBsdWdJbkltYWdlRWxlbWVu
dDo6c2V0RGlzcGxheVN0YXRlKTogQ2FsbCBiYXNlIGNsYXNzLgorICAgICAgICAoV2ViQ29yZTo6
SFRNTFBsdWdJbkltYWdlRWxlbWVudDo6Y3JlYXRlUmVuZGVyZXIpOiBEaXR0by4KKyAgICAgICAg
KFdlYkNvcmU6OkhUTUxQbHVnSW5JbWFnZUVsZW1lbnQ6OmRpZEFkZFVzZXJBZ2VudFNoYWRvd1Jv
b3QpOiBEaXR0by4KKyAgICAgICAgKFdlYkNvcmU6OkhUTUxQbHVnSW5JbWFnZUVsZW1lbnQ6OnVz
ZXJEaWRDbGlja1NuYXBzaG90KTogUmVtb3ZlIHVubmVjZXNzYXJ5IGNsYXNzIG5hbWUuCisgICAg
ICAgIChXZWJDb3JlOjpIVE1MUGx1Z0luSW1hZ2VFbGVtZW50OjpyZXF1ZXN0T2JqZWN0KTogTmV3
LgorICAgICAgICAqIGh0bWwvSFRNTFBsdWdJbkltYWdlRWxlbWVudC5oOgorCisgICAgICAgICog
aHRtbC9IVE1MVmlkZW9FbGVtZW50Lmg6IE1ha2UgY3JlYXRlUmVuZGVyZXIgcHVibGljIHNvIHRo
ZSBRdWlja1RpbWUgcGx1Zy1pbiByZXBsYWNlbWVudCBjYW4KKyAgICAgICAgICAgIGNhbGwgaXQu
CisKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9NZWRpYVBsYXllci5jcHA6CisgICAgICAg
IChXZWJDb3JlOjpNZWRpYVBsYXllcjo6ZmlsZVNpemUpOiBOZXcuCisgICAgICAgICogcGxhdGZv
cm0vZ3JhcGhpY3MvTWVkaWFQbGF5ZXIuaDoKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9N
ZWRpYVBsYXllclByaXZhdGUuaDoKKworICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL2F2Zm91
bmRhdGlvbi9NZWRpYVBsYXllclByaXZhdGVBVkZvdW5kYXRpb24uY3BwOgorICAgICAgICAoV2Vi
Q29yZTo6TWVkaWFQbGF5ZXJQcml2YXRlQVZGb3VuZGF0aW9uOjpleHRyYU1lbW9yeUNvc3QpOiB0
b3RhbEJ5dGVzIHJldHVybnMgYW4gdW5zaWduZWQgbG9uZyBsb25nLgorICAgICAgICAqIHBsYXRm
b3JtL2dyYXBoaWNzL2F2Zm91bmRhdGlvbi9NZWRpYVBsYXllclByaXZhdGVBVkZvdW5kYXRpb24u
aDoKKyAgICAgICAgKFdlYkNvcmU6Ok1lZGlhUGxheWVyUHJpdmF0ZUFWRm91bmRhdGlvbjo6Zmls
ZVNpemUpOgorCisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvYXZmb3VuZGF0aW9uL2NmL01l
ZGlhUGxheWVyUHJpdmF0ZUFWRm91bmRhdGlvbkNGLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6Ok1l
ZGlhUGxheWVyUHJpdmF0ZUFWRm91bmRhdGlvbkNGOjp0b3RhbEJ5dGVzKTogUmV0dXJuIGFuIHVu
c2lnbmVkIGxvbmcgbG9uZy4KKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9hdmZvdW5kYXRp
b24vY2YvTWVkaWFQbGF5ZXJQcml2YXRlQVZGb3VuZGF0aW9uQ0YuaDoKKworICAgICAgICAqIHBs
YXRmb3JtL2dyYXBoaWNzL2F2Zm91bmRhdGlvbi9vYmpjL01lZGlhUGxheWVyUHJpdmF0ZUFWRm91
bmRhdGlvbk9iakMuaDoKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9hdmZvdW5kYXRpb24v
b2JqYy9NZWRpYVBsYXllclByaXZhdGVBVkZvdW5kYXRpb25PYmpDLm1tOgorICAgICAgICAoV2Vi
Q29yZTo6TWVkaWFQbGF5ZXJQcml2YXRlQVZGb3VuZGF0aW9uT2JqQzo6dG90YWxCeXRlcyk6IERp
dHRvLgorCisgICAgICAgICogdGVzdGluZy9JbnRlcm5hbFNldHRpbmdzLmNwcDoKKyAgICAgICAg
KFdlYkNvcmU6OkludGVybmFsU2V0dGluZ3M6OkJhY2t1cDo6QmFja3VwKTogQmFja3VwIHRoZSBw
bHVnLWluIHJlcGxhY2VtZW50IHJ1bnRpbWUgc2V0dGluZy4KKyAgICAgICAgKFdlYkNvcmU6Oklu
dGVybmFsU2V0dGluZ3M6OkJhY2t1cDo6cmVzdG9yZVRvKTogUmVzdG9yZSBpdC4KKyAgICAgICAg
KFdlYkNvcmU6OkludGVybmFsU2V0dGluZ3M6OnNldFBsdWdpblJlcGxhY2VtZW50RW5hYmxlZCk6
IFNldCBpdC4KKyAgICAgICAgKiB0ZXN0aW5nL0ludGVybmFsU2V0dGluZ3MuaDoKKyAgICAgICAg
KiB0ZXN0aW5nL0ludGVybmFsU2V0dGluZ3MuaWRsOgorCiAyMDEzLTExLTI3ICBOaWNrIERpZWdv
IFlhbWFuZSAgPG5pY2sueWFtYW5lQG9wZW5ib3NzYS5vcmc+CiAKICAgICAgICAgUmVtb3ZlIFF0
LXNwZWNpZmljIC5xcmMgZmlsZXMKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NNYWtlTGlzdHMudHh0
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL0NNYWtlTGlzdHMudHh0CShyZXZpc2lvbiAx
NTk4MjApCisrKyBTb3VyY2UvV2ViQ29yZS9DTWFrZUxpc3RzLnR4dAkod29ya2luZyBjb3B5KQpA
QCAtMTEsNiArMTEsNyBAQCBzZXQoV2ViQ29yZV9JTkNMVURFX0RJUkVDVE9SSUVTCiAgICAgIiR7
V0VCQ09SRV9ESVJ9L01vZHVsZXMvbmF2aWdhdG9yY29udGVudHV0aWxzIgogICAgICIke1dFQkNP
UkVfRElSfS9Nb2R1bGVzL25ldHdvcmtpbmZvIgogICAgICIke1dFQkNPUkVfRElSfS9Nb2R1bGVz
L25vdGlmaWNhdGlvbnMiCisgICAgIiR7V0VCQ09SRV9ESVJ9L01vZHVsZXMvcGx1Z2lucyIKICAg
ICAiJHtXRUJDT1JFX0RJUn0vTW9kdWxlcy9wcm94aW1pdHkiCiAgICAgIiR7V0VCQ09SRV9ESVJ9
L01vZHVsZXMvcXVvdGEiCiAgICAgIiR7V0VCQ09SRV9ESVJ9L01vZHVsZXMvdmlicmF0aW9uIgpJ
bmRleDogU291cmNlL1dlYkNvcmUvRGVyaXZlZFNvdXJjZXMubWFrZQo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBT
b3VyY2UvV2ViQ29yZS9EZXJpdmVkU291cmNlcy5tYWtlCShyZXZpc2lvbiAxNTk4MjApCisrKyBT
b3VyY2UvV2ViQ29yZS9EZXJpdmVkU291cmNlcy5tYWtlCSh3b3JraW5nIGNvcHkpCkBAIC0zNiw2
ICszNiw3IEBAIFZQQVRIID0gXAogICAgICQoV2ViQ29yZSkvTW9kdWxlcy9tZWRpYXNvdXJjZSBc
CiAgICAgJChXZWJDb3JlKS9Nb2R1bGVzL21lZGlhc3RyZWFtIFwKICAgICAkKFdlYkNvcmUpL01v
ZHVsZXMvbm90aWZpY2F0aW9ucyBcCisgICAgJChXZWJDb3JlKS9Nb2R1bGVzL3BsdWdpbnMgXAog
ICAgICQoV2ViQ29yZSkvTW9kdWxlcy9xdW90YSBcCiAgICAgJChXZWJDb3JlKS9Nb2R1bGVzL3Nw
ZWVjaCBcCiAgICAgJChXZWJDb3JlKS9Nb2R1bGVzL3dlYmF1ZGlvIFwKQEAgLTE0MSw2ICsxNDIs
NyBAQCBCSU5ESU5HX0lETFMgPSBcCiAgICAgJChXZWJDb3JlKS9Nb2R1bGVzL25vdGlmaWNhdGlv
bnMvTm90aWZpY2F0aW9uQ2VudGVyLmlkbCBcCiAgICAgJChXZWJDb3JlKS9Nb2R1bGVzL25vdGlm
aWNhdGlvbnMvTm90aWZpY2F0aW9uUGVybWlzc2lvbkNhbGxiYWNrLmlkbCBcCiAgICAgJChXZWJD
b3JlKS9Nb2R1bGVzL25vdGlmaWNhdGlvbnMvV29ya2VyR2xvYmFsU2NvcGVOb3RpZmljYXRpb25z
LmlkbCBcCisgICAgJChXZWJDb3JlKS9Nb2R1bGVzL3BsdWdpbnMvUXVpY2tUaW1lUGx1Z2luUmVw
bGFjZW1lbnQuaWRsIFwKICAgICAkKFdlYkNvcmUpL01vZHVsZXMvcXVvdGEvRE9NV2luZG93UXVv
dGEuaWRsIFwKICAgICAkKFdlYkNvcmUpL01vZHVsZXMvcXVvdGEvTmF2aWdhdG9yU3RvcmFnZVF1
b3RhLmlkbCBcCiAgICAgJChXZWJDb3JlKS9Nb2R1bGVzL3F1b3RhL1N0b3JhZ2VJbmZvLmlkbCBc
CkBAIC04NzAsNiArODcyLDEwIEBAIGlmZXEgKCQoZmluZHN0cmluZyBFTkFCTEVfTUVESUFfQ09O
VFJPTFMKIAlVU0VSX0FHRU5UX1NUWUxFX1NIRUVUUyA6PSAkKFVTRVJfQUdFTlRfU1RZTEVfU0hF
RVRTKSAkKFdlYkNvcmUpL01vZHVsZXMvbWVkaWFjb250cm9scy9tZWRpYUNvbnRyb2xzQXBwbGUu
Y3NzCiBlbmRpZgogCitpZmVxICgkKE9TKSxNQUNPUykKKwlVU0VSX0FHRU5UX1NUWUxFX1NIRUVU
UyAgOj0gJChVU0VSX0FHRU5UX1NUWUxFX1NIRUVUUykgJChXZWJDb3JlKS9Nb2R1bGVzL3BsdWdp
bnMvUXVpY2tUaW1lUGx1Z2luUmVwbGFjZW1lbnQuY3NzCitlbmRpZgorCiBVc2VyQWdlbnRTdHls
ZVNoZWV0cy5oIDogY3NzL21ha2UtY3NzLWZpbGUtYXJyYXlzLnBsIGJpbmRpbmdzL3NjcmlwdHMv
cHJlcHJvY2Vzc29yLnBtICQoVVNFUl9BR0VOVF9TVFlMRV9TSEVFVFMpICQoUExBVEZPUk1fRkVB
VFVSRV9ERUZJTkVTKQogCXBlcmwgLUkkKFdlYkNvcmUpL2JpbmRpbmdzL3NjcmlwdHMgJDwgLS1k
ZWZpbmVzICIkKEZFQVRVUkVfREVGSU5FUykiICRAIFVzZXJBZ2VudFN0eWxlU2hlZXRzRGF0YS5j
cHAgJChVU0VSX0FHRU5UX1NUWUxFX1NIRUVUUykKIApAQCAtODgzLDYgKzg4OSw5IEBAIGlmZXEg
KCQoZmluZHN0cmluZyBFTkFCTEVfTUVESUFfQ09OVFJPTFMKIAlVU0VSX0FHRU5UX1NDUklQVFMg
Oj0gJChVU0VSX0FHRU5UX1NDUklQVFMpICQoV2ViQ29yZSkvTW9kdWxlcy9tZWRpYWNvbnRyb2xz
L21lZGlhQ29udHJvbHNBcHBsZS5qcwogZW5kaWYKIAoraWZlcSAoJChPUyksTUFDT1MpCisJVVNF
Ul9BR0VOVF9TQ1JJUFRTICA6PSAkKFVTRVJfQUdFTlRfU0NSSVBUUykgJChXZWJDb3JlKS9Nb2R1
bGVzL3BsdWdpbnMvUXVpY2tUaW1lUGx1Z2luUmVwbGFjZW1lbnQuanMKK2VuZGlmCiAKIFVzZXJB
Z2VudFNjcmlwdHMuaCA6IGNzcy9tYWtlLWNzcy1maWxlLWFycmF5cy5wbCBiaW5kaW5ncy9zY3Jp
cHRzL3ByZXByb2Nlc3Nvci5wbSAkKFVTRVJfQUdFTlRfU0NSSVBUUykgJChQTEFURk9STV9GRUFU
VVJFX0RFRklORVMpCiAJcGVybCAtSSQoV2ViQ29yZSkvYmluZGluZ3Mvc2NyaXB0cyAkPCAtLWRl
ZmluZXMgIiQoRkVBVFVSRV9ERUZJTkVTKSIgJEAgVXNlckFnZW50U2NyaXB0c0RhdGEuY3BwICQo
VVNFUl9BR0VOVF9TQ1JJUFRTKQpJbmRleDogU291cmNlL1dlYkNvcmUvR05VbWFrZWZpbGUuYW0K
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvR05VbWFrZWZpbGUuYW0JKHJldmlzaW9uIDE1
OTgyMCkKKysrIFNvdXJjZS9XZWJDb3JlL0dOVW1ha2VmaWxlLmFtCSh3b3JraW5nIGNvcHkpCkBA
IC0xOSw2ICsxOSw3IEBAIHdlYmNvcmVfY3BwZmxhZ3MgKz0gXAogCS1JJChzcmNkaXIpL1NvdXJj
ZS9XZWJDb3JlL01vZHVsZXMvbWVkaWFzdHJlYW0gXAogCS1JJChzcmNkaXIpL1NvdXJjZS9XZWJD
b3JlL01vZHVsZXMvbmF2aWdhdG9yY29udGVudHV0aWxzIFwKIAktSSQoc3JjZGlyKS9Tb3VyY2Uv
V2ViQ29yZS9Nb2R1bGVzL25vdGlmaWNhdGlvbnMgXAorCS1JJChzcmNkaXIpL1NvdXJjZS9XZWJD
b3JlL01vZHVsZXMvcGx1Z2lucyBcCiAJLUkkKHNyY2RpcikvU291cmNlL1dlYkNvcmUvTW9kdWxl
cy9wcm94aW1pdHkgXAogCS1JJChzcmNkaXIpL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvcXVvdGEg
XAogCS1JJChzcmNkaXIpL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvd2ViYXVkaW8gXApJbmRleDog
U291cmNlL1dlYkNvcmUvR05VbWFrZWZpbGUubGlzdC5hbQo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2Uv
V2ViQ29yZS9HTlVtYWtlZmlsZS5saXN0LmFtCShyZXZpc2lvbiAxNTk4MjApCisrKyBTb3VyY2Uv
V2ViQ29yZS9HTlVtYWtlZmlsZS5saXN0LmFtCSh3b3JraW5nIGNvcHkpCkBAIC0xOTc3LDYgKzE5
NzcsNyBAQCB3ZWJjb3JlX21vZHVsZXNfc291cmNlcyArPSBcCiAJU291cmNlL1dlYkNvcmUvTW9k
dWxlcy9ub3RpZmljYXRpb25zL05vdGlmaWNhdGlvblBlcm1pc3Npb25DYWxsYmFjay5oIFwKIAlT
b3VyY2UvV2ViQ29yZS9Nb2R1bGVzL25vdGlmaWNhdGlvbnMvV29ya2VyR2xvYmFsU2NvcGVOb3Rp
ZmljYXRpb25zLmNwcCBcCiAJU291cmNlL1dlYkNvcmUvTW9kdWxlcy9ub3RpZmljYXRpb25zL1dv
cmtlckdsb2JhbFNjb3BlTm90aWZpY2F0aW9ucy5oIFwKKwlTb3VyY2UvV2ViQ29yZS9Nb2R1bGVz
L3BsdWdpbnMvUGx1Z2luUmVwbGFjZW1lbnQuaCBcCiAJU291cmNlL1dlYkNvcmUvTW9kdWxlcy9w
cm94aW1pdHkvRGV2aWNlUHJveGltaXR5Q2xpZW50LmggXAogCVNvdXJjZS9XZWJDb3JlL01vZHVs
ZXMvcHJveGltaXR5L0RldmljZVByb3hpbWl0eUNvbnRyb2xsZXIuY3BwIFwKIAlTb3VyY2UvV2Vi
Q29yZS9Nb2R1bGVzL3Byb3hpbWl0eS9EZXZpY2VQcm94aW1pdHlDb250cm9sbGVyLmggXApJbmRl
eDogU291cmNlL1dlYkNvcmUvTW9kdWxlcy9wbHVnaW5zL1BsdWdpblJlcGxhY2VtZW50LmgKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvTW9kdWxlcy9wbHVnaW5zL1BsdWdpblJlcGxhY2Vt
ZW50LmgJKHJldmlzaW9uIDApCisrKyBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3BsdWdpbnMvUGx1
Z2luUmVwbGFjZW1lbnQuaAkod29ya2luZyBjb3B5KQpAQCAtMCwwICsxLDkxIEBACisvKgorICog
Q29weXJpZ2h0IChDKSAyMDEzIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqCisg
KiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRo
IG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0
IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1ldDoKKyAqIDEuIFJlZGlzdHJpYnV0
aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAg
ICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2Ns
YWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1
Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0
aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGluIHRoZQorICogICAgZG9jdW1lbnRh
dGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlv
bi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVEIEJZIEFQUExFIENPTVBVVEVSLCBJ
TkMuIGBgQVMgSVMnJyBBTkQgQU5ZCisgKiBFWFBSRVNTIE9SIElNUExJRUQgV0FSUkFOVElFUywg
SU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQorICogSU1QTElFRCBXQVJSQU5USUVT
IE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSCisgKiBQVVJQ
T1NFIEFSRSBESVNDTEFJTUVELiAgSU4gTk8gRVZFTlQgU0hBTEwgQVBQTEUgQ09NUFVURVIsIElO
Qy4gT1IKKyAqIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9SIEFOWSBESVJFQ1QsIElORElSRUNU
LCBJTkNJREVOVEFMLCBTUEVDSUFMLAorICogRVhFTVBMQVJZLCBPUiBDT05TRVFVRU5USUFMIERB
TUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLAorICogUFJPQ1VSRU1FTlQgT0Yg
U1VCU1RJVFVURSBHT09EUyBPUiBTRVJWSUNFUzsgTE9TUyBPRiBVU0UsIERBVEEsIE9SCisgKiBQ
Uk9GSVRTOyBPUiBCVVNJTkVTUyBJTlRFUlJVUFRJT04pIEhPV0VWRVIgQ0FVU0VEIEFORCBPTiBB
TlkgVEhFT1JZCisgKiBPRiBMSUFCSUxJVFksIFdIRVRIRVIgSU4gQ09OVFJBQ1QsIFNUUklDVCBM
SUFCSUxJVFksIE9SIFRPUlQKKyAqIChJTkNMVURJTkcgTkVHTElHRU5DRSBPUiBPVEhFUldJU0Up
IEFSSVNJTkcgSU4gQU5ZIFdBWSBPVVQgT0YgVEhFIFVTRQorICogT0YgVEhJUyBTT0ZUV0FSRSwg
RVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElUWSBPRiBTVUNIIERBTUFHRS4gCisgKi8K
KworI2lmbmRlZiBQbHVnaW5SZXBsYWNlbWVudF9oCisjZGVmaW5lIFBsdWdpblJlcGxhY2VtZW50
X2gKKworI2luY2x1ZGUgPHd0Zi9SZWZDb3VudGVkLmg+CisjaW5jbHVkZSA8d3RmL3RleHQvV1RG
U3RyaW5nLmg+CisKK25hbWVzcGFjZSBKU0MgeworY2xhc3MgSlNPYmplY3Q7Cit9CisKK25hbWVz
cGFjZSBXZWJDb3JlIHsKKworY2xhc3MgSFRNTFBsdWdJbkVsZW1lbnQ7CitjbGFzcyBSZW5kZXJF
bGVtZW50OworY2xhc3MgUmVuZGVyU3R5bGU7CitjbGFzcyBTaGFkb3dSb290OworCitjbGFzcyBQ
bHVnaW5SZXBsYWNlbWVudCA6IHB1YmxpYyBSZWZDb3VudGVkPFBsdWdpblJlcGxhY2VtZW50PiB7
CitwdWJsaWM6CisgICAgdmlydHVhbCB+UGx1Z2luUmVwbGFjZW1lbnQoKSB7IH0KKworICAgIHZp
cnR1YWwgYm9vbCBpbnN0YWxsUmVwbGFjZW1lbnQoU2hhZG93Um9vdCopID0gMDsKKyAgICB2aXJ0
dWFsIEpTQzo6SlNPYmplY3QqIHNjcmlwdE9iamVjdCgpIHsgcmV0dXJuIDA7IH0KKworICAgIHZp
cnR1YWwgYm9vbCB3aWxsQ3JlYXRlUmVuZGVyZXIoKSB7IHJldHVybiBmYWxzZTsgfQorICAgIHZp
cnR1YWwgUmVuZGVyRWxlbWVudCogY3JlYXRlUmVuZGVyZXIoSFRNTFBsdWdJbkVsZW1lbnQmLCBQ
YXNzUmVmPFJlbmRlclN0eWxlPikgPSAwOworCitwcm90ZWN0ZWQ6CisgICAgUGx1Z2luUmVwbGFj
ZW1lbnQoKSB7IH0KK307CisKK3R5cGVkZWYgUGFzc1JlZlB0cjxQbHVnaW5SZXBsYWNlbWVudD4g
KCpDcmVhdGVQbHVnaW5SZXBsYWNlbWVudCkoSFRNTFBsdWdJbkVsZW1lbnQmLCBjb25zdCBWZWN0
b3I8U3RyaW5nPiYgcGFyYW1OYW1lcywgY29uc3QgVmVjdG9yPFN0cmluZz4mIHBhcmFtVmFsdWVz
KTsKK3R5cGVkZWYgYm9vbCAoKlBsdWdpblJlcGxhY2VtZW50U3VwcG9ydHNUeXBlKShjb25zdCBT
dHJpbmcmKTsKK3R5cGVkZWYgYm9vbCAoKlBsdWdpblJlcGxhY2VtZW50U3VwcG9ydHNGaWxlRXh0
ZW5zaW9uKShjb25zdCBTdHJpbmcmKTsKKworY2xhc3MgUmVwbGFjZW1lbnRQbHVnaW4geworcHVi
bGljOgorICAgIFJlcGxhY2VtZW50UGx1Z2luKENyZWF0ZVBsdWdpblJlcGxhY2VtZW50IGNvbnN0
cnVjdG9yLCBQbHVnaW5SZXBsYWNlbWVudFN1cHBvcnRzVHlwZSBzdXBwb3J0c1R5cGUsIFBsdWdp
blJlcGxhY2VtZW50U3VwcG9ydHNGaWxlRXh0ZW5zaW9uIHN1cHBvcnRzRmlsZUV4dGVuc2lvbikK
KyAgICAgICAgOiBtX2NvbnN0cnVjdG9yKGNvbnN0cnVjdG9yKQorICAgICAgICAsIG1fc3VwcG9y
dHNUeXBlKHN1cHBvcnRzVHlwZSkKKyAgICAgICAgLCBtX3N1cHBvcnRzRmlsZUV4dGVuc2lvbihz
dXBwb3J0c0ZpbGVFeHRlbnNpb24pCisgICAgeworICAgIH0KKworICAgIGV4cGxpY2l0IFJlcGxh
Y2VtZW50UGx1Z2luKGNvbnN0IFJlcGxhY2VtZW50UGx1Z2luJiBvdGhlcikKKyAgICAgICAgOiBt
X2NvbnN0cnVjdG9yKG90aGVyLm1fY29uc3RydWN0b3IpCisgICAgICAgICwgbV9zdXBwb3J0c1R5
cGUob3RoZXIubV9zdXBwb3J0c1R5cGUpCisgICAgICAgICwgbV9zdXBwb3J0c0ZpbGVFeHRlbnNp
b24ob3RoZXIubV9zdXBwb3J0c0ZpbGVFeHRlbnNpb24pCisgICAgeworICAgIH0KKworICAgIFBh
c3NSZWZQdHI8UGx1Z2luUmVwbGFjZW1lbnQ+IGNyZWF0ZShIVE1MUGx1Z0luRWxlbWVudCYgZWxl
bWVudCwgY29uc3QgVmVjdG9yPFN0cmluZz4mIHBhcmFtTmFtZXMsIGNvbnN0IFZlY3RvcjxTdHJp
bmc+JiBwYXJhbVZhbHVlcykgY29uc3QgeyByZXR1cm4gbV9jb25zdHJ1Y3RvcihlbGVtZW50LCBw
YXJhbU5hbWVzLCBwYXJhbVZhbHVlcyk7IH0KKyAgICBib29sIHN1cHBvcnRzVHlwZShjb25zdCBT
dHJpbmcmIG1pbWVUeXBlKSBjb25zdCB7IHJldHVybiBtX3N1cHBvcnRzVHlwZShtaW1lVHlwZSk7
IH0KKyAgICBib29sIHN1cHBvcnRzRmlsZUV4dGVuc2lvbihjb25zdCBTdHJpbmcmIGV4dGVuc2lv
bikgY29uc3QgeyByZXR1cm4gbV9zdXBwb3J0c0ZpbGVFeHRlbnNpb24oZXh0ZW5zaW9uKTsgfQor
Citwcml2YXRlOgorICAgIENyZWF0ZVBsdWdpblJlcGxhY2VtZW50IG1fY29uc3RydWN0b3I7Cisg
ICAgUGx1Z2luUmVwbGFjZW1lbnRTdXBwb3J0c1R5cGUgbV9zdXBwb3J0c1R5cGU7CisgICAgUGx1
Z2luUmVwbGFjZW1lbnRTdXBwb3J0c0ZpbGVFeHRlbnNpb24gbV9zdXBwb3J0c0ZpbGVFeHRlbnNp
b247Cit9OworCit0eXBlZGVmIHZvaWQgKCpQbHVnaW5SZXBsYWNlbWVudFJlZ2lzdHJhcikoY29u
c3QgUmVwbGFjZW1lbnRQbHVnaW4mKTsKKworfQorCisjZW5kaWYKSW5kZXg6IFNvdXJjZS9XZWJD
b3JlL01vZHVsZXMvcGx1Z2lucy9RdWlja1RpbWVQbHVnaW5SZXBsYWNlbWVudC5jcHAKPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gU291cmNlL1dlYkNvcmUvTW9kdWxlcy9wbHVnaW5zL1F1aWNrVGltZVBsdWdpblJl
cGxhY2VtZW50LmNwcAkocmV2aXNpb24gMCkKKysrIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvcGx1
Z2lucy9RdWlja1RpbWVQbHVnaW5SZXBsYWNlbWVudC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTAs
MCArMSwyMzQgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTMgQXBwbGUgSW5jLiBBbGwgcmln
aHRzIHJlc2VydmVkLgorICoKKyAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFu
ZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVy
bWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0
OgorICogMS4gUmVkaXN0cmlidXRpb25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBh
Ym92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5k
IHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5h
cnkgZm9ybSBtdXN0IHJlcHJvZHVjZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2Us
IHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4g
dGhlCisgKiAgICBkb2N1bWVudGF0aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQg
d2l0aCB0aGUgZGlzdHJpYnV0aW9uLgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQg
QlkgQVBQTEUgQ09NUFVURVIsIElOQy4gYGBBUyBJUycnIEFORCBBTlkKKyAqIEVYUFJFU1MgT1Ig
SU1QTElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCisg
KiBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBB
IFBBUlRJQ1VMQVIKKyAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuICBJTiBOTyBFVkVOVCBTSEFM
TCBBUFBMRSBDT01QVVRFUiwgSU5DLiBPUgorICogQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1Ig
QU5ZIERJUkVDVCwgSU5ESVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsCisgKiBFWEVNUExBUlks
IE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8s
CisgKiBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9G
IFVTRSwgREFUQSwgT1IKKyAqIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9X
RVZFUiBDQVVTRUQgQU5EIE9OIEFOWSBUSEVPUlkKKyAqIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJ
TiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorICogKElOQ0xVRElORyBORUdM
SUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCisg
KiBPRiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9G
IFNVQ0ggREFNQUdFLiAKKyAqLworCisjaW5jbHVkZSAiY29uZmlnLmgiCisKKyNpZiBFTkFCTEUo
TUVESUFfQ09OVFJPTFNfU0NSSVBUKQorCisjaW5jbHVkZSAiUXVpY2tUaW1lUGx1Z2luUmVwbGFj
ZW1lbnQuaCIKKworI2luY2x1ZGUgIkV2ZW50LmgiCisjaW5jbHVkZSAiSFRNTFBsdWdJbkVsZW1l
bnQuaCIKKyNpbmNsdWRlICJIVE1MVmlkZW9FbGVtZW50LmgiCisjaW5jbHVkZSAiSlNET01CaW5k
aW5nLmgiCisjaW5jbHVkZSAiSlNET01HbG9iYWxPYmplY3QuaCIKKyNpbmNsdWRlICJKU0hUTUxW
aWRlb0VsZW1lbnQuaCIKKyNpbmNsdWRlICJKU1F1aWNrVGltZVBsdWdpblJlcGxhY2VtZW50Lmgi
CisjaW5jbHVkZSAiTWFpbkZyYW1lLmgiCisjaW5jbHVkZSAiUGFnZS5oIgorI2luY2x1ZGUgIlJl
bmRlckVsZW1lbnQuaCIKKyNpbmNsdWRlICJTY3JpcHRDb250cm9sbGVyLmgiCisjaW5jbHVkZSAi
U2NyaXB0T2JqZWN0LmgiCisjaW5jbHVkZSAiU2NyaXB0U291cmNlQ29kZS5oIgorI2luY2x1ZGUg
IlVzZXJBZ2VudFNjcmlwdHMuaCIKKyNpbmNsdWRlIDxKYXZhU2NyaXB0Q29yZS9BUElDYXN0Lmg+
CisjaW5jbHVkZSA8SmF2YVNjcmlwdENvcmUvSlNCYXNlLmg+CisjaW5jbHVkZSA8SmF2YVNjcmlw
dENvcmUvSlNDSlNWYWx1ZUlubGluZXMuaD4KKwordXNpbmcgbmFtZXNwYWNlIEpTQzsKKworbmFt
ZXNwYWNlIFdlYkNvcmUgeworCitzdGF0aWMgU3RyaW5nIHF1aWNrVGltZVBsdWdpblJlcGxhY2Vt
ZW50U2NyaXB0KCkKK3sKKyAgICBERUZJTkVfU1RBVElDX0xPQ0FMKFN0cmluZywgc2NyaXB0LCAo
UXVpY2tUaW1lUGx1Z2luUmVwbGFjZW1lbnRKYXZhU2NyaXB0LCBzaXplb2YoUXVpY2tUaW1lUGx1
Z2luUmVwbGFjZW1lbnRKYXZhU2NyaXB0KSkpOworICAgIHJldHVybiBzY3JpcHQ7Cit9CisKK3Zv
aWQgUXVpY2tUaW1lUGx1Z2luUmVwbGFjZW1lbnQ6OnJlZ2lzdGVyUGx1Z2luUmVwbGFjZW1lbnQo
UGx1Z2luUmVwbGFjZW1lbnRSZWdpc3RyYXIgcmVnaXN0cmFyKQoreworICAgIHJlZ2lzdHJhcihS
ZXBsYWNlbWVudFBsdWdpbihjcmVhdGUsIHN1cHBvcnRzTWltZVR5cGUsIHN1cHBvcnRzRmlsZUV4
dGVuc2lvbikpOworfQorCitQYXNzUmVmUHRyPFBsdWdpblJlcGxhY2VtZW50PiBRdWlja1RpbWVQ
bHVnaW5SZXBsYWNlbWVudDo6Y3JlYXRlKEhUTUxQbHVnSW5FbGVtZW50JiBwbHVnaW4sIGNvbnN0
IFZlY3RvcjxTdHJpbmc+JiBwYXJhbU5hbWVzLCBjb25zdCBWZWN0b3I8U3RyaW5nPiYgcGFyYW1W
YWx1ZXMpCit7CisgICAgcmV0dXJuIGFkb3B0UmVmKG5ldyBRdWlja1RpbWVQbHVnaW5SZXBsYWNl
bWVudChwbHVnaW4sIHBhcmFtTmFtZXMsIHBhcmFtVmFsdWVzKSk7Cit9CisKK2Jvb2wgUXVpY2tU
aW1lUGx1Z2luUmVwbGFjZW1lbnQ6OnN1cHBvcnRzTWltZVR5cGUoY29uc3QgU3RyaW5nJiBtaW1l
VHlwZSkKK3sKKyAgICBzdGF0aWMgY29uc3QgY2hhciogdHlwZXNbXSA9IHsKKyAgICAgICAgImFw
cGxpY2F0aW9uL3ZuZC5hcHBsZS5tcGVndXJsIiwgImFwcGxpY2F0aW9uL3gtbXBlZ3VybCIsICJh
dWRpby8zZ3BwIiwgImF1ZGlvLzNncHAyIiwgImF1ZGlvL2FhYyIsICJhdWRpby9haWZmIiwKKyAg
ICAgICAgImF1ZGlvL2FtciIsICJhdWRpby9iYXNpYyIsICJhdWRpby9tcDMiLCAiYXVkaW8vbXA0
IiwgImF1ZGlvL21wZWciLCAiYXVkaW8vbXBlZzMiLCAiYXVkaW8vbXBlZ3VybCIsICJhdWRpby9z
Y3BscyIsCisgICAgICAgICJhdWRpby93YXYiLCAiYXVkaW8veC1hYWMiLCAiYXVkaW8veC1haWZm
IiwgImF1ZGlvL3gtY2FmIiwgImF1ZGlvL3gtbTRhIiwgImF1ZGlvL3gtbTRiIiwgImF1ZGlvL3gt
bTRwIiwKKyAgICAgICAgImF1ZGlvL3gtbTRyIiwgImF1ZGlvL3gtbXAzIiwgImF1ZGlvL3gtbXBl
ZyIsICJhdWRpby94LW1wZWczIiwgImF1ZGlvL3gtbXBlZ3VybCIsICJhdWRpby94LXNjcGxzIiwg
ImF1ZGlvL3gtd2F2IiwKKyAgICAgICAgInZpZGVvLzNncHAiLCAidmlkZW8vM2dwcDIiLCAidmlk
ZW8vbXA0IiwgInZpZGVvL3F1aWNrdGltZSIsICJ2aWRlby94LW00diIKKyAgICB9OworICAgIERF
RklORV9TVEFUSUNfTE9DQUwoSGFzaFNldDxTdHJpbmc+LCB0eXBlSGFzaCwgKCkpOworICAgIGlm
ICghdHlwZUhhc2guc2l6ZSgpKSB7CisgICAgICAgIGZvciAoc2l6ZV90IGkgPSAwOyBpIDwgV1RG
X0FSUkFZX0xFTkdUSCh0eXBlcyk7ICsraSkKKyAgICAgICAgICAgIHR5cGVIYXNoLmFkZCh0eXBl
c1tpXSk7CisgICAgfQorCisgICAgcmV0dXJuIHR5cGVIYXNoLmNvbnRhaW5zKG1pbWVUeXBlKTsK
K30KKworYm9vbCBRdWlja1RpbWVQbHVnaW5SZXBsYWNlbWVudDo6c3VwcG9ydHNGaWxlRXh0ZW5z
aW9uKGNvbnN0IFN0cmluZyYgZXh0ZW5zaW9uKQoreworICAgIHN0YXRpYyBjb25zdCBjaGFyKiBl
eHRlbnNpb25zW10gPSB7CisgICAgICAgICIzZzIiLCAiM2dwIiwgIjNncDIiLCAiM2dwcCIsICJh
YWMiLCAiYWR0cyIsICJhaWYiLCAiYWlmYyIsICJhaWZmIiwgIkFNUiIsICJhdSIsICJid2YiLCAi
Y2FmIiwgImNkZGEiLCAibTN1IiwKKyAgICAgICAgIm0zdTgiLCAibTRhIiwgIm00YiIsICJtNHAi
LCAibTRyIiwgIm00diIsICJtb3YiLCAibXAzIiwgIm1wMyIsICJtcDQiLCAibXBlZyIsICJtcGci
LCAibXF2IiwgInBscyIsICJxdCIsCisgICAgICAgICJzbmQiLCAic3dhIiwgInRzIiwgInVsdyIs
ICJ3YXYiCisgICAgfTsKKyAgICBERUZJTkVfU1RBVElDX0xPQ0FMKEhhc2hTZXQ8U3RyaW5nPiwg
ZXh0ZW5zaW9uSGFzaCwgKCkpOworICAgIGlmICghZXh0ZW5zaW9uSGFzaC5zaXplKCkpIHsKKyAg
ICAgICAgZm9yIChzaXplX3QgaSA9IDA7IGkgPCBXVEZfQVJSQVlfTEVOR1RIKGV4dGVuc2lvbnMp
OyArK2kpCisgICAgICAgICAgICBleHRlbnNpb25IYXNoLmFkZChleHRlbnNpb25zW2ldKTsKKyAg
ICB9CisKKyAgICByZXR1cm4gZXh0ZW5zaW9uSGFzaC5jb250YWlucyhleHRlbnNpb24pOworfQor
CitRdWlja1RpbWVQbHVnaW5SZXBsYWNlbWVudDo6UXVpY2tUaW1lUGx1Z2luUmVwbGFjZW1lbnQo
SFRNTFBsdWdJbkVsZW1lbnQmIHBsdWdpbiwgY29uc3QgVmVjdG9yPFN0cmluZz4mIHBhcmFtTmFt
ZXMsIGNvbnN0IFZlY3RvcjxTdHJpbmc+JiBwYXJhbVZhbHVlcykKKyAgICA6UGx1Z2luUmVwbGFj
ZW1lbnQoKQorICAgICwgbV9wYXJlbnRFbGVtZW50KCZwbHVnaW4pCisgICAgLCBtX25hbWVzKHBh
cmFtTmFtZXMpCisgICAgLCBtX3ZhbHVlcyhwYXJhbVZhbHVlcykKKyAgICAsIG1fc2NyaXB0T2Jq
ZWN0KG51bGxwdHIpCit7Cit9CisKK1F1aWNrVGltZVBsdWdpblJlcGxhY2VtZW50Ojp+UXVpY2tU
aW1lUGx1Z2luUmVwbGFjZW1lbnQoKQoreworICAgIG1fcGFyZW50RWxlbWVudCA9IG51bGxwdHI7
CisgICAgbV9zY3JpcHRPYmplY3QgPSBudWxscHRyOworICAgIG1fbWVkaWFFbGVtZW50ID0gbnVs
bHB0cjsKK30KKworUmVuZGVyRWxlbWVudCogUXVpY2tUaW1lUGx1Z2luUmVwbGFjZW1lbnQ6OmNy
ZWF0ZVJlbmRlcmVyKEhUTUxQbHVnSW5FbGVtZW50JiBwbHVnaW4sIFBhc3NSZWY8UmVuZGVyU3R5
bGU+IHN0eWxlKQoreworICAgIEFTU0VSVF9VTlVTRUQocGx1Z2luLCBtX3BhcmVudEVsZW1lbnQg
PT0gJnBsdWdpbik7CisKKyAgICBpZiAobV9tZWRpYUVsZW1lbnQpCisgICAgICAgIHJldHVybiBt
X21lZGlhRWxlbWVudC0+Y3JlYXRlUmVuZGVyZXIoc3RkOjptb3ZlKHN0eWxlKSk7CisKKyAgICBy
ZXR1cm4gMDsKK30KKworRE9NV3JhcHBlcldvcmxkJiBRdWlja1RpbWVQbHVnaW5SZXBsYWNlbWVu
dDo6aXNvbGF0ZWRXb3JsZCgpCit7CisgICAgc3RhdGljIERPTVdyYXBwZXJXb3JsZCYgaXNvbGF0
ZWRXb3JsZCA9ICpET01XcmFwcGVyV29ybGQ6OmNyZWF0ZShKU0RPTVdpbmRvdzo6Y29tbW9uVk0o
KSkubGVha1JlZigpOworICAgIHJldHVybiBpc29sYXRlZFdvcmxkOworfQorCitib29sIFF1aWNr
VGltZVBsdWdpblJlcGxhY2VtZW50OjplbnN1cmVSZXBsYWNlbWVudFNjcmlwdEluamVjdGVkKCkK
K3sKKyAgICBQYWdlKiBwYWdlID0gbV9wYXJlbnRFbGVtZW50LT5kb2N1bWVudCgpLnBhZ2UoKTsK
KyAgICBpZiAoIXBhZ2UpCisgICAgICAgIHJldHVybiBmYWxzZTsKKyAgICAKKyAgICBET01XcmFw
cGVyV29ybGQmIHdvcmxkID0gaXNvbGF0ZWRXb3JsZCgpOworICAgIFNjcmlwdENvbnRyb2xsZXIm
IHNjcmlwdENvbnRyb2xsZXIgPSBwYWdlLT5tYWluRnJhbWUoKS5zY3JpcHQoKTsKKyAgICBKU0RP
TUdsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0ID0ganNDYXN0PEpTRE9NR2xvYmFsT2JqZWN0Kj4o
c2NyaXB0Q29udHJvbGxlci5nbG9iYWxPYmplY3Qod29ybGQpKTsKKyAgICBFeGVjU3RhdGUqIGV4
ZWMgPSBnbG9iYWxPYmplY3QtPmdsb2JhbEV4ZWMoKTsKKyAgICAKKyAgICBKU1ZhbHVlIHJlcGxh
Y2VtZW50RnVuY3Rpb24gPSBnbG9iYWxPYmplY3QtPmdldChleGVjLCBJZGVudGlmaWVyKGV4ZWMs
ICJjcmVhdGVQbHVnaW5SZXBsYWNlbWVudCIpKTsKKyAgICBpZiAocmVwbGFjZW1lbnRGdW5jdGlv
bi5pc0Z1bmN0aW9uKCkpCisgICAgICAgIHJldHVybiB0cnVlOworICAgIAorICAgIHNjcmlwdENv
bnRyb2xsZXIuZXZhbHVhdGVJbldvcmxkKFNjcmlwdFNvdXJjZUNvZGUocXVpY2tUaW1lUGx1Z2lu
UmVwbGFjZW1lbnRTY3JpcHQoKSksIHdvcmxkKTsKKyAgICBpZiAoZXhlYy0+aGFkRXhjZXB0aW9u
KCkpIHsKKyAgICAgICAgZXhlYy0+Y2xlYXJFeGNlcHRpb24oKTsKKyAgICAgICAgcmV0dXJuIGZh
bHNlOworICAgIH0KKyAgICAKKyAgICByZXR1cm4gdHJ1ZTsKK30KKworYm9vbCBRdWlja1RpbWVQ
bHVnaW5SZXBsYWNlbWVudDo6aW5zdGFsbFJlcGxhY2VtZW50KFNoYWRvd1Jvb3QqIHJvb3QpCit7
CisgICAgUGFnZSogcGFnZSA9IG1fcGFyZW50RWxlbWVudC0+ZG9jdW1lbnQoKS5wYWdlKCk7CisK
KyAgICBpZiAoIWVuc3VyZVJlcGxhY2VtZW50U2NyaXB0SW5qZWN0ZWQoKSkKKyAgICAgICAgcmV0
dXJuIGZhbHNlOworCisgICAgRE9NV3JhcHBlcldvcmxkJiB3b3JsZCA9IGlzb2xhdGVkV29ybGQo
KTsKKyAgICBTY3JpcHRDb250cm9sbGVyJiBzY3JpcHRDb250cm9sbGVyID0gcGFnZS0+bWFpbkZy
YW1lKCkuc2NyaXB0KCk7CisgICAgSlNET01HbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCA9IGpz
Q2FzdDxKU0RPTUdsb2JhbE9iamVjdCo+KHNjcmlwdENvbnRyb2xsZXIuZ2xvYmFsT2JqZWN0KHdv
cmxkKSk7CisgICAgRXhlY1N0YXRlKiBleGVjID0gZ2xvYmFsT2JqZWN0LT5nbG9iYWxFeGVjKCk7
CisgICAgSlNMb2NrSG9sZGVyIGxvY2soZXhlYyk7CisgICAgCisgICAgLy8gTG9va3VwIHRoZSAi
Y3JlYXRlUGx1Z2luUmVwbGFjZW1lbnQiIGZ1bmN0aW9uCisgICAgSlNWYWx1ZSByZXBsYWNlbWVu
dEZ1bmN0aW9uID0gZ2xvYmFsT2JqZWN0LT5nZXQoZXhlYywgSWRlbnRpZmllcihleGVjLCAiY3Jl
YXRlUGx1Z2luUmVwbGFjZW1lbnQiKSk7CisgICAgaWYgKHJlcGxhY2VtZW50RnVuY3Rpb24uaXNV
bmRlZmluZWRPck51bGwoKSkKKyAgICAgICAgcmV0dXJuIGZhbHNlOworICAgIEpTT2JqZWN0KiBy
ZXBsYWNlbWVudE9iamVjdCA9IHJlcGxhY2VtZW50RnVuY3Rpb24udG9PYmplY3QoZXhlYyk7Cisg
ICAgQ2FsbERhdGEgY2FsbERhdGE7CisgICAgQ2FsbFR5cGUgY2FsbFR5cGUgPSByZXBsYWNlbWVu
dE9iamVjdC0+bWV0aG9kVGFibGUoKS0+Z2V0Q2FsbERhdGEocmVwbGFjZW1lbnRPYmplY3QsIGNh
bGxEYXRhKTsKKyAgICBpZiAoY2FsbFR5cGUgPT0gQ2FsbFR5cGVOb25lKQorICAgICAgICByZXR1
cm4gZmFsc2U7CisKKyAgICBNYXJrZWRBcmd1bWVudEJ1ZmZlciBhcmdMaXN0OworICAgIGFyZ0xp
c3QuYXBwZW5kKHRvSlMoZXhlYywgZ2xvYmFsT2JqZWN0LCByb290KSk7CisgICAgYXJnTGlzdC5h
cHBlbmQodG9KUyhleGVjLCBnbG9iYWxPYmplY3QsIG1fcGFyZW50RWxlbWVudCkpOworICAgIGFy
Z0xpc3QuYXBwZW5kKHRvSlMoZXhlYywgZ2xvYmFsT2JqZWN0LCB0aGlzKSk7CisgICAgYXJnTGlz
dC5hcHBlbmQodG9KUzxTdHJpbmc+KGV4ZWMsIGdsb2JhbE9iamVjdCwgbV9uYW1lcykpOworICAg
IGFyZ0xpc3QuYXBwZW5kKHRvSlM8U3RyaW5nPihleGVjLCBnbG9iYWxPYmplY3QsIG1fdmFsdWVz
KSk7CisgICAgSlNWYWx1ZSByZXBsYWNlbWVudCA9IGNhbGwoZXhlYywgcmVwbGFjZW1lbnRPYmpl
Y3QsIGNhbGxUeXBlLCBjYWxsRGF0YSwgZ2xvYmFsT2JqZWN0LCBhcmdMaXN0KTsKKyAgICBpZiAo
ZXhlYy0+aGFkRXhjZXB0aW9uKCkpIHsKKyAgICAgICAgZXhlYy0+Y2xlYXJFeGNlcHRpb24oKTsK
KyAgICAgICAgcmV0dXJuIGZhbHNlOworICAgIH0KKworICAgIC8vIEdldCB0aGUgPHZpZGVvPiBj
cmVhdGVkIHRvIHJlcGxhY2UgdGhlIHBsdWctaW4uCisgICAgSlNWYWx1ZSB2YWx1ZSA9IHJlcGxh
Y2VtZW50LmdldChleGVjLCBJZGVudGlmaWVyKGV4ZWMsICJ2aWRlbyIpKTsKKyAgICBpZiAoIWV4
ZWMtPmhhZEV4Y2VwdGlvbigpICYmICF2YWx1ZS5pc1VuZGVmaW5lZE9yTnVsbCgpKQorICAgICAg
ICBtX21lZGlhRWxlbWVudCA9IHRvSFRNTFZpZGVvRWxlbWVudCh2YWx1ZSk7CisKKyAgICBpZiAo
IW1fbWVkaWFFbGVtZW50KSB7CisgICAgICAgIGV4ZWMtPmNsZWFyRXhjZXB0aW9uKCk7CisgICAg
ICAgIHJldHVybiBmYWxzZTsKKyAgICB9CisKKyAgICAvLyBHZXQgdGhlIHNjcmlwdGluZyBpbnRl
cmZhY2UuCisgICAgdmFsdWUgPSByZXBsYWNlbWVudC5nZXQoZXhlYywgSWRlbnRpZmllcihleGVj
LCAic2NyaXB0T2JqZWN0IikpOworICAgIGlmICghZXhlYy0+aGFkRXhjZXB0aW9uKCkgJiYgIXZh
bHVlLmlzVW5kZWZpbmVkT3JOdWxsKCkpCisgICAgICAgIG1fc2NyaXB0T2JqZWN0ID0gdmFsdWUu
dG9PYmplY3QoZXhlYyk7CisKKyAgICBpZiAoIW1fc2NyaXB0T2JqZWN0KSB7CisgICAgICAgIGV4
ZWMtPmNsZWFyRXhjZXB0aW9uKCk7CisgICAgICAgIHJldHVybiBmYWxzZTsKKyAgICB9CisKKyAg
ICByZXR1cm4gdHJ1ZTsKK30KKwordW5zaWduZWQgbG9uZyBsb25nIFF1aWNrVGltZVBsdWdpblJl
cGxhY2VtZW50Ojptb3ZpZVNpemUoKSBjb25zdAoreworICAgIGlmIChtX21lZGlhRWxlbWVudCkK
KyAgICAgICAgcmV0dXJuIG1fbWVkaWFFbGVtZW50LT5maWxlU2l6ZSgpOworCisgICAgcmV0dXJu
IDA7Cit9CisKK3ZvaWQgUXVpY2tUaW1lUGx1Z2luUmVwbGFjZW1lbnQ6OnBvc3RFdmVudChjb25z
dCBTdHJpbmcmIGV2ZW50TmFtZSkKK3sKKyAgICBSZWY8SFRNTFBsdWdJbkVsZW1lbnQ+IHByb3Rl
Y3QoKm1fcGFyZW50RWxlbWVudCk7CisgICAgUmVmUHRyPEV2ZW50PiBldmVudCA9IEV2ZW50Ojpj
cmVhdGUoZXZlbnROYW1lLCBmYWxzZSwgdHJ1ZSk7CisgICAgbV9wYXJlbnRFbGVtZW50LT5kaXNw
YXRjaEV2ZW50KGV2ZW50LmdldCgpKTsKK30KKworfQorI2VuZGlmCkluZGV4OiBTb3VyY2UvV2Vi
Q29yZS9Nb2R1bGVzL3BsdWdpbnMvUXVpY2tUaW1lUGx1Z2luUmVwbGFjZW1lbnQuY3NzCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvcGx1Z2lucy9RdWlja1RpbWVQbHVnaW5S
ZXBsYWNlbWVudC5jc3MJKHJldmlzaW9uIDApCisrKyBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3Bs
dWdpbnMvUXVpY2tUaW1lUGx1Z2luUmVwbGFjZW1lbnQuY3NzCSh3b3JraW5nIGNvcHkpCkBAIC0w
LDAgKzEsMzQgQEAKKy8qCisgKiBDb3B5cmlnaHQgKEMpIDIwMTMgQXBwbGUgSW5jLiAgQWxsIHJp
Z2h0cyByZXNlcnZlZC4KKyAqCisgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBh
bmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKKyAqIG1vZGlmaWNhdGlvbiwgYXJlIHBl
cm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucworICogYXJlIG1l
dDoKKyAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFpbiB0aGUg
YWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRpb25zIGFu
ZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCisgKiAyLiBSZWRpc3RyaWJ1dGlvbnMgaW4gYmlu
YXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAorICogICAgbm90aWNl
LCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyIGlu
IHRoZQorICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHByb3ZpZGVk
IHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KKyAqCisgKiBUSElTIFNPRlRXQVJFIElTIFBST1ZJREVE
IEJZIEFQUExFIENPTVBVVEVSLCBJTkMuIGBgQVMgSVMnJyBBTkQgQU5ZCisgKiBFWFBSRVNTIE9S
IElNUExJRUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQor
ICogSU1QTElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1Ig
QSBQQVJUSUNVTEFSCisgKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiAgSU4gTk8gRVZFTlQgU0hB
TEwgQVBQTEUgQ09NUFVURVIsIElOQy4gT1IKKyAqIENPTlRSSUJVVE9SUyBCRSBMSUFCTEUgRk9S
IEFOWSBESVJFQ1QsIElORElSRUNULCBJTkNJREVOVEFMLCBTUEVDSUFMLAorICogRVhFTVBMQVJZ
LCBPUiBDT05TRVFVRU5USUFMIERBTUFHRVMgKElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRP
LAorICogUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBB
TkQgT04gQU5ZIFRIRU9SWQorICogT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBT
VFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisgKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RI
RVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKKyAqIE9GIFRISVMgU09G
VFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0Uu
IAorICovCisKK2VtYmVkOjotd2Via2l0LXBsdWdpbi1yZXBsYWNlbWVudCwKK29iamVjdDo6LXdl
YmtpdC1wbHVnaW4tcmVwbGFjZW1lbnQKK3sKKyAgICBwb3NpdGlvbjogcmVsYXRpdmU7CisgICAg
ZGlzcGxheTogaW5saW5lLWJsb2NrOworICAgIHdpZHRoOiAxMDAlOworICAgIGhlaWdodDogMTAw
JTsKKyAgICB6LWluZGV4OiAwOworfQorCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3Bs
dWdpbnMvUXVpY2tUaW1lUGx1Z2luUmVwbGFjZW1lbnQuaAo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2Uv
V2ViQ29yZS9Nb2R1bGVzL3BsdWdpbnMvUXVpY2tUaW1lUGx1Z2luUmVwbGFjZW1lbnQuaAkocmV2
aXNpb24gMCkKKysrIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvcGx1Z2lucy9RdWlja1RpbWVQbHVn
aW5SZXBsYWNlbWVudC5oCSh3b3JraW5nIGNvcHkpCkBAIC0wLDAgKzEsNzYgQEAKKy8qCisgKiBD
b3B5cmlnaHQgKEMpIDIwMTMgQXBwbGUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLgorICoKKyAq
IFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4gc291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGgg
b3Igd2l0aG91dAorICogbW9kaWZpY2F0aW9uLCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQg
dGhlIGZvbGxvd2luZyBjb25kaXRpb25zCisgKiBhcmUgbWV0OgorICogMS4gUmVkaXN0cmlidXRp
b25zIG9mIHNvdXJjZSBjb2RlIG11c3QgcmV0YWluIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAg
IG5vdGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xh
aW1lci4KKyAqIDIuIFJlZGlzdHJpYnV0aW9ucyBpbiBiaW5hcnkgZm9ybSBtdXN0IHJlcHJvZHVj
ZSB0aGUgYWJvdmUgY29weXJpZ2h0CisgKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRp
b25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIgaW4gdGhlCisgKiAgICBkb2N1bWVudGF0
aW9uIGFuZC9vciBvdGhlciBtYXRlcmlhbHMgcHJvdmlkZWQgd2l0aCB0aGUgZGlzdHJpYnV0aW9u
LgorICoKKyAqIFRISVMgU09GVFdBUkUgSVMgUFJPVklERUQgQlkgQVBQTEUgQ09NUFVURVIsIElO
Qy4gYGBBUyBJUycnIEFORCBBTlkKKyAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5USUVTLCBJ
TkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCisgKiBJTVBMSUVEIFdBUlJBTlRJRVMg
T0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAqIFBVUlBP
U0UgQVJFIERJU0NMQUlNRUQuICBJTiBOTyBFVkVOVCBTSEFMTCBBUFBMRSBDT01QVVRFUiwgSU5D
LiBPUgorICogQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1Qs
IElOQ0lERU5UQUwsIFNQRUNJQUwsCisgKiBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFN
QUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCisgKiBQUk9DVVJFTUVOVCBPRiBT
VUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IKKyAqIFBS
T0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFO
WSBUSEVPUlkKKyAqIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJ
QUJJTElUWSwgT1IgVE9SVAorICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkg
QVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCisgKiBPRiBUSElTIFNPRlRXQVJFLCBF
VkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLiAKKyAqLwor
CisjaWZuZGVmIFF1aWNrVGltZVBsdWdpblJlcGxhY2VtZW50X2gKKyNkZWZpbmUgUXVpY2tUaW1l
UGx1Z2luUmVwbGFjZW1lbnRfaAorCisjaW5jbHVkZSAiUGx1Z2luUmVwbGFjZW1lbnQuaCIKKyNp
bmNsdWRlICJTY3JpcHRTdGF0ZS5oIgorI2luY2x1ZGUgIlNjcmlwdFZhbHVlLmgiCisjaW5jbHVk
ZSA8d3RmL1JlZkNvdW50ZWQuaD4KKyNpbmNsdWRlIDx3dGYvdGV4dC9XVEZTdHJpbmcuaD4KKwor
bmFtZXNwYWNlIFdlYkNvcmUgeworCitjbGFzcyBIVE1MUGx1Z0luRWxlbWVudDsKK2NsYXNzIEhU
TUxWaWRlb0VsZW1lbnQ7CitjbGFzcyBSZW5kZXJFbGVtZW50OworY2xhc3MgUmVuZGVyU3R5bGU7
CitjbGFzcyBTaGFkb3dSb290OworCitjbGFzcyBRdWlja1RpbWVQbHVnaW5SZXBsYWNlbWVudCA6
IHB1YmxpYyBQbHVnaW5SZXBsYWNlbWVudCB7CitwdWJsaWM6CisgICAgc3RhdGljIHZvaWQgcmVn
aXN0ZXJQbHVnaW5SZXBsYWNlbWVudChQbHVnaW5SZXBsYWNlbWVudFJlZ2lzdHJhcik7CisgICAg
c3RhdGljIGJvb2wgc3VwcG9ydHNNaW1lVHlwZShjb25zdCBTdHJpbmcmKTsKKyAgICBzdGF0aWMg
Ym9vbCBzdXBwb3J0c0ZpbGVFeHRlbnNpb24oY29uc3QgU3RyaW5nJik7CisgICAgCisgICAgc3Rh
dGljIFBhc3NSZWZQdHI8UGx1Z2luUmVwbGFjZW1lbnQ+IGNyZWF0ZShIVE1MUGx1Z0luRWxlbWVu
dCYsIGNvbnN0IFZlY3RvcjxTdHJpbmc+JiBwYXJhbU5hbWVzLCBjb25zdCBWZWN0b3I8U3RyaW5n
PiYgcGFyYW1WYWx1ZXMpOworICAgIH5RdWlja1RpbWVQbHVnaW5SZXBsYWNlbWVudCgpOworCisg
ICAgdmlydHVhbCBib29sIGluc3RhbGxSZXBsYWNlbWVudChTaGFkb3dSb290KikgT1ZFUlJJREU7
CisgICAgdmlydHVhbCBKU0M6OkpTT2JqZWN0KiBzY3JpcHRPYmplY3QoKSBPVkVSUklERSB7IHJl
dHVybiBtX3NjcmlwdE9iamVjdDsgfQorCisgICAgdmlydHVhbCBib29sIHdpbGxDcmVhdGVSZW5k
ZXJlcigpIE9WRVJSSURFIHsgcmV0dXJuIG1fbWVkaWFFbGVtZW50OyB9CisgICAgdmlydHVhbCBS
ZW5kZXJFbGVtZW50KiBjcmVhdGVSZW5kZXJlcihIVE1MUGx1Z0luRWxlbWVudCYsIFBhc3NSZWY8
UmVuZGVyU3R5bGU+KSBPVkVSUklERTsKKworICAgIHVuc2lnbmVkIGxvbmcgbG9uZyBtb3ZpZVNp
emUoKSBjb25zdDsKKyAgICB2b2lkIHBvc3RFdmVudChjb25zdCBTdHJpbmcmKTsKKworcHJpdmF0
ZToKKyAgICBRdWlja1RpbWVQbHVnaW5SZXBsYWNlbWVudChIVE1MUGx1Z0luRWxlbWVudCYsIGNv
bnN0IFZlY3RvcjxTdHJpbmc+JiBwYXJhbU5hbWVzLCBjb25zdCBWZWN0b3I8U3RyaW5nPiYgcGFy
YW1WYWx1ZXMpOworCisgICAgYm9vbCBlbnN1cmVSZXBsYWNlbWVudFNjcmlwdEluamVjdGVkKCk7
CisgICAgRE9NV3JhcHBlcldvcmxkJiBpc29sYXRlZFdvcmxkKCk7CisKKyAgICBIVE1MUGx1Z0lu
RWxlbWVudCogbV9wYXJlbnRFbGVtZW50OworICAgIFJlZlB0cjxIVE1MVmlkZW9FbGVtZW50PiBt
X21lZGlhRWxlbWVudDsKKyAgICBjb25zdCBWZWN0b3I8U3RyaW5nPiBtX25hbWVzOworICAgIGNv
bnN0IFZlY3RvcjxTdHJpbmc+IG1fdmFsdWVzOworICAgIEpTQzo6SlNPYmplY3QqIG1fc2NyaXB0
T2JqZWN0OworfTsKKworfQorCisjZW5kaWYKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL01vZHVsZXMv
cGx1Z2lucy9RdWlja1RpbWVQbHVnaW5SZXBsYWNlbWVudC5pZGwKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291
cmNlL1dlYkNvcmUvTW9kdWxlcy9wbHVnaW5zL1F1aWNrVGltZVBsdWdpblJlcGxhY2VtZW50Lmlk
bAkocmV2aXNpb24gMCkKKysrIFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvcGx1Z2lucy9RdWlja1Rp
bWVQbHVnaW5SZXBsYWNlbWVudC5pZGwJKHdvcmtpbmcgY29weSkKQEAgLTAsMCArMSwzMyBAQAor
LyoKKyAqIENvcHlyaWdodCAoQykgMjAxMyBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQu
CisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jt
cywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlk
ZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAxLiBSZWRp
c3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdo
dAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2lu
ZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3Qg
cmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9m
IGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRv
Y3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0
cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBBUFBMRSBDT01Q
VVRFUiwgSU5DLiBgYEFTIElTJycgQU5EIEFOWQorICogRVhQUkVTUyBPUiBJTVBMSUVEIFdBUlJB
TlRJRVMsIElOQ0xVRElORywgQlVUIE5PVCBMSU1JVEVEIFRPLCBUSEUKKyAqIElNUExJRUQgV0FS
UkFOVElFUyBPRiBNRVJDSEFOVEFCSUxJVFkgQU5EIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUgor
ICogUFVSUE9TRSBBUkUgRElTQ0xBSU1FRC4gIElOIE5PIEVWRU5UIFNIQUxMIEFQUExFIENPTVBV
VEVSLCBJTkMuIE9SCisgKiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJ
TkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwKKyAqIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVO
VElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFBST0NVUkVN
RU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBP
UgorICogUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBB
TkQgT04gQU5ZIFRIRU9SWQorICogT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBT
VFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCisgKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RI
RVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKKyAqIE9GIFRISVMgU09G
VFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0Uu
IAorICovCisKK1sKKyAgICBOb0ludGVyZmFjZU9iamVjdCwKKyAgICBPcGVyYXRpb25zTm90RGVs
ZXRhYmxlLAorICAgIEpTR2VuZXJhdGVUb0pTT2JqZWN0LAorXSBpbnRlcmZhY2UgUXVpY2tUaW1l
UGx1Z2luUmVwbGFjZW1lbnQgeworICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSB1bnNpZ25lZCBsb25n
IGxvbmcgbW92aWVTaXplOworICAgIHZvaWQgcG9zdEV2ZW50KERPTVN0cmluZyBldmVudE5hbWUp
OworfTsKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL01vZHVsZXMvcGx1Z2lucy9RdWlja1RpbWVQbHVn
aW5SZXBsYWNlbWVudC5qcwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3Bs
dWdpbnMvUXVpY2tUaW1lUGx1Z2luUmVwbGFjZW1lbnQuanMJKHJldmlzaW9uIDApCisrKyBTb3Vy
Y2UvV2ViQ29yZS9Nb2R1bGVzL3BsdWdpbnMvUXVpY2tUaW1lUGx1Z2luUmVwbGFjZW1lbnQuanMJ
KHdvcmtpbmcgY29weSkKQEAgLTAsMCArMSwzMjUgQEAKKworZnVuY3Rpb24gY3JlYXRlUGx1Z2lu
UmVwbGFjZW1lbnQocm9vdCwgcGFyZW50LCBob3N0LCBhdHRyaWJ1dGVOYW1lcywgYXR0cmlidXRl
VmFsdWVzKQoreworICAgIHJldHVybiBuZXcgUmVwbGFjZW1lbnQocm9vdCwgcGFyZW50LCBob3N0
LCBhdHRyaWJ1dGVOYW1lcywgYXR0cmlidXRlVmFsdWVzKTsKK307CisKK2Z1bmN0aW9uIFJlcGxh
Y2VtZW50KHJvb3QsIHBhcmVudCwgaG9zdCwgYXR0cmlidXRlTmFtZXMsIGF0dHJpYnV0ZVZhbHVl
cykKK3sKKyAgICB0aGlzLnJvb3QgPSByb290OworICAgIHRoaXMucGFyZW50ID0gcGFyZW50Owor
ICAgIHRoaXMuaG9zdCA9IGhvc3Q7CisgICAgdGhpcy5saXN0ZW5lcnMgPSB7fTsKKyAgICB0aGlz
LnNjcmlwdE9iamVjdCA9IHt9OworCisgICAgdGhpcy5hdXRvRXhpdEZ1bGxTY3JlZW4gPSB0cnVl
OworICAgIHRoaXMucG9zdEV2ZW50cyA9IGZhbHNlOworICAgIHRoaXMuaGVpZ2h0ID0gMDsKKyAg
ICB0aGlzLndpZHRoID0gMDsKKyAgICB0aGlzLnNyYyA9ICcnOworICAgIHRoaXMuYXV0b2hyZWYg
PSBmYWxzZTsKKyAgICB0aGlzLmhyZWYgPSAnJzsKKyAgICB0aGlzLnF0c3JjID0gJyc7CisgICAg
dGhpcy50YXJnZXQgPSAnJzsKKworICAgIHRoaXMuY3JlYXRlVmlkZW9FbGVtZW50KGF0dHJpYnV0
ZU5hbWVzLCBhdHRyaWJ1dGVWYWx1ZXMpOworICAgIHRoaXMuY3JlYXRlU2NyaXB0SW50ZXJmYWNl
KCk7Cit9OworCitSZXBsYWNlbWVudC5wcm90b3R5cGUgPSB7CisKKyAgICBIYW5kbGVkVmlkZW9F
dmVudHM6IHsKKyAgICAgICAgbG9hZHN0YXJ0OiAnaGFuZGxlTG9hZFN0YXJ0JywKKyAgICAgICAg
ZXJyb3I6ICdoYW5kbGVFcnJvcicsCisgICAgICAgIGxvYWRlZG1ldGFkYXRhOiAnaGFuZGxlTG9h
ZGVkTWV0YURhdGEnLAorICAgICAgICBjYW5wbGF5OiAncXRfY2FucGxheScsCisgICAgICAgIGNh
bnBsYXl0aHJvdWdoOiAncXRfY2FucGxheXRocm91Z2gnLAorICAgICAgICBwbGF5OiAncXRfcGxh
eScsCisgICAgICAgIHBhdXNlOiAncXRfcGF1c2UnLAorICAgICAgICBlbmRlZDogJ2hhbmRsZUVu
ZGVkJywKKyAgICAgICAgd2Via2l0ZnVsbHNjcmVlbmNoYW5nZTogJ2hhbmRsZUZ1bGxzY3JlZW5D
aGFuZ2UnLAorICAgIH0sCisKKyAgICBBdHRyaWJ1dGVNYXA6IHsKKyAgICAgICAgYXV0b2V4aXRm
dWxsc2NyZWVuOiAnYXV0b0V4aXRGdWxsU2NyZWVuJywKKyAgICAgICAgcG9zdGRvbWV2ZW50czog
J3Bvc3RFdmVudHMnLAorICAgICAgICBoZWlnaHQ6ICdoZWlnaHQnLAorICAgICAgICB3aWR0aDog
J3dpZHRoJywKKyAgICAgICAgc3JjOiAnc3JjJywKKyAgICAgICAgYWlycGxheTogJ3gtd2Via2l0
LWFpcnBsYXk9JywKKyAgICAgICAgaHJlZjogJ2hyZWYnLAorICAgICAgICB0YXJnZXQ6ICd0YXJn
ZXQnLAorICAgIH0sCisgICAgCisgICAgTWV0aG9kTWFwOiB7CisgICAgICAgIFNldFVSTCA6ICdz
ZXRVUkwnLAorICAgICAgICBHZXRVUkwgOiAndXJsJywKKyAgICAgICAgUGxheSA6ICdwbGF5JywK
KyAgICAgICAgU3RvcCA6ICdwYXVzZScsCisgICAgICAgIEdldFJhdGUgOiAncmF0ZScsCisgICAg
ICAgIFNldFJhdGUgOiAnc2V0UmF0ZScsCisgICAgICAgIElzRnVsbFNjcmVlbiA6ICdpc0Z1bGxT
Y3JlZW4nLAorICAgICAgICBFeGl0RnVsbFNjcmVlbiA6ICdleGl0RnVsbFNjcmVlbicsCisgICAg
ICAgIEdldFBsdWdpblN0YXR1cyA6ICdwbHVnaW5TdGF0dXMnLAorICAgICAgICBHZXRUaW1lIDog
J2N1cnJlbnRUaW1lJywKKyAgICAgICAgU2V0VGltZSA6ICdzZXRDdXJyZW50VGltZScsCisgICAg
ICAgIFNlZWtUb0RhdGUgOiAnc2Vla1RvRGF0ZScsCisgICAgICAgIEdldERhdGUgOiAnZGF0ZScs
CisgICAgICAgIEdldER1cmF0aW9uIDogJ2R1cmF0aW9uJywKKyAgICAgICAgR2V0VGltZVNjYWxl
IDogJ3RpbWVTY2FsZScsCisgICAgICAgIEdldE1heFRpbWVMb2FkZWQgOiAnbWF4VGltZUxvYWRl
ZCcsCisgICAgICAgIEdldE1heEJ5dGVzTG9hZGVkIDogJ21heEJ5dGVzTG9hZGVkJywKKyAgICAg
ICAgR2V0TW92aWVTaXplIDogJ21vdmllU2l6ZScsCisgICAgICAgIEdldFRpbWVkTWV0YWRhdGFV
cGRhdGVzIDogJ3RpbWVkTWV0YWRhdGFVcGRhdGVzJywKKyAgICAgICAgR2V0QWNjZXNzTG9nIDog
J2FjY2Vzc0xvZycsCisgICAgICAgIEdldEVycm9yTG9nIDogJ2Vycm9yTG9nJywKKyAgICB9LAor
CisgICAgVGltZVNjYWxlOiAzMDAwMCwKKworICAgIGNyZWF0ZVZpZGVvRWxlbWVudDogZnVuY3Rp
b24oYXR0cmlidXRlTmFtZXMsIGF0dHJpYnV0ZVZhbHVlcykKKyAgICB7CisgICAgICAgIHZhciB2
aWRlbyA9IHRoaXMudmlkZW8gPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCd2aWRlbycpOworCisg
ICAgICAgIGZvciAobmFtZSBpbiB0aGlzLkhhbmRsZWRWaWRlb0V2ZW50cykKKyAgICAgICAgICAg
IHZpZGVvLmFkZEV2ZW50TGlzdGVuZXIobmFtZSwgdGhpcywgZmFsc2UpOworICAgICAgICAKKyAg
ICAgICAgZm9yIChpID0gMDsgaSA8IGF0dHJpYnV0ZU5hbWVzLmxlbmd0aDsgaSsrKSB7CisgICAg
ICAgICAgICB2YXIgcHJvcGVydHkgPSB0aGlzLkF0dHJpYnV0ZU1hcFthdHRyaWJ1dGVOYW1lc1tp
XV07CisgICAgICAgICAgICBpZiAodGhpc1twcm9wZXJ0eV0gIT0gdW5kZWZpbmVkKQorICAgICAg
ICAgICAgICAgIHRoaXNbcHJvcGVydHldID0gYXR0cmlidXRlVmFsdWVzW2ldOworICAgICAgICB9
CisKKyAgICAgICAgdmlkZW8uc2V0QXR0cmlidXRlKCdwc2V1ZG8nLCAnLXdlYmtpdC1wbHVnaW4t
cmVwbGFjZW1lbnQnKTsKKyAgICAgICAgdmlkZW8uc2V0QXR0cmlidXRlKCdjb250cm9scycsICdj
b250cm9scycpOworICAgICAgICB0aGlzLnNldFN0YXR1cygnV2FpdGluZycpOworCisgICAgICAg
IHZhciBzcmMgPSB0aGlzLnNyYzsKKyAgICAgICAgaWYgKHRoaXMuaHJlZiAmJiB0aGlzLnRhcmdl
dCkgeworICAgICAgICAgICAgc3JjID0gdGhpcy5yZXNvbHZlUmVsYXRpdmVUb1VybCh0aGlzLmhy
ZWYsIHRoaXMuc3JjKTsKKyAgICAgICAgICAgIHZpZGVvLnBvc3RlciA9IHRoaXMuc3JjOworICAg
ICAgICAgICAgdmlkZW8uc2V0QXR0cmlidXRlKCdwcmVsb2FkJywgJ25vbmUnKTsKKyAgICAgICAg
fQorICAgICAgICAKKyAgICAgICAgaWYgKHNyYy5sZW5ndGgpCisgICAgICAgICAgICB0aGlzLnNl
dFVSTChzcmMpOworCisgICAgICAgIHRoaXMucm9vdC5hcHBlbmRDaGlsZCh2aWRlbyk7CisgICAg
fSwKKworICAgIHJlc29sdmVSZWxhdGl2ZVRvVXJsOiBmdW5jdGlvbih1cmwsIGJhc2VVcmwpCisg
ICAgeworICAgICAgICBpZiAodXJsLmluZGV4T2YoJzovLycpICE9IC0xKQorICAgICAgICAgICAg
cmV0dXJuIHVybDsKKyAgICAgICAgaWYgKGJhc2VVcmwuaW5kZXhPZignOi8vJykgPT0gLTEpCisg
ICAgICAgICAgICBiYXNlVXJsID0gdGhpcy5yZXNvbHZlUmVsYXRpdmVUb1VybChiYXNlVXJsLCBk
b2N1bWVudC5iYXNlVVJJKTsKKworICAgICAgICB2YXIgYmFzZSA9IGRvY3VtZW50LmNyZWF0ZUVs
ZW1lbnQoImJhc2UiKTsKKyAgICAgICAgYmFzZS5ocmVmID0gYmFzZVVybDsKKyAgICAgICAgZG9j
dW1lbnQuaGVhZC5hcHBlbmRDaGlsZChiYXNlKTsKKworICAgICAgICB2YXIgcmVzb2x2ZXIgPSBk
b2N1bWVudC5jcmVhdGVFbGVtZW50KCdhJyk7CisgICAgICAgIHJlc29sdmVyLmhyZWYgPSB1cmw7
CisgICAgICAgIHVybCA9IHJlc29sdmVyLmhyZWY7CisKKyAgICAgICAgZG9jdW1lbnQuaGVhZC5y
ZW1vdmVDaGlsZChiYXNlKTsKKyAgICAgICAgYmFzZSA9IG51bGw7CisKKyAgICAgICAgcmV0dXJu
IHVybDsKKyAgICB9LAorIAorICAgIGNyZWF0ZVNjcmlwdEludGVyZmFjZTogZnVuY3Rpb24oKQor
ICAgIHsKKyAgICAgICAgZm9yIChuYW1lIGluIHRoaXMuTWV0aG9kTWFwKSB7CisgICAgICAgICAg
ICB2YXIgbWV0aG9kTmFtZSA9IHRoaXMuTWV0aG9kTWFwW25hbWVdOworICAgICAgICAgICAgdGhp
cy5zY3JpcHRPYmplY3RbbmFtZV0gPSB0aGlzW21ldGhvZE5hbWVdLmJpbmQodGhpcyk7CisgICAg
ICAgIH0KKyAgICB9LAorCisgICAgaGFuZGxlRXZlbnQ6IGZ1bmN0aW9uKGV2ZW50KQorICAgIHsK
KyAgICAgICAgaWYgKGV2ZW50LnRhcmdldCAhPT0gdGhpcy52aWRlbykKKyAgICAgICAgICAgIHJl
dHVybjsKKworICAgICAgICB0cnkgeworICAgICAgICAgICAgdmFyIGV2ZW50RGF0YSA9IHRoaXMu
SGFuZGxlZFZpZGVvRXZlbnRzW2V2ZW50LnR5cGVdOworICAgICAgICAgICAgaWYgKCFldmVudERh
dGEpCisgICAgICAgICAgICAgICAgcmV0dXJuOworCisgICAgICAgICAgICBpZiAodGhpc1tldmVu
dERhdGFdICYmIHRoaXNbZXZlbnREYXRhXSBpbnN0YW5jZW9mIEZ1bmN0aW9uKQorICAgICAgICAg
ICAgICAgIHRoaXNbZXZlbnREYXRhXS5jYWxsKHRoaXMsIGV2ZW50KTsKKyAgICAgICAgICAgIGVs
c2UKKyAgICAgICAgICAgICAgICB0aGlzLnBvc3RFdmVudChldmVudERhdGEpOworICAgICAgICB9
IGNhdGNoKGUpIHsKKyAgICAgICAgICAgIGlmICh3aW5kb3cuY29uc29sZSkKKyAgICAgICAgICAg
ICAgICBjb25zb2xlLmVycm9yKGUpOworICAgICAgICB9CisgICAgfSwKKworICAgIHBvc3RFdmVu
dDogZnVuY3Rpb24oZXZlbnROYW1lKQorICAgIHsKKyAgICAgICAgdHJ5IHsKKyAgICAgICAgICAg
IGlmICh0aGlzLnBvc3RFdmVudHMpCisgICAgICAgICAgICAgICAgdGhpcy5ob3N0LnBvc3RFdmVu
dChldmVudE5hbWUpOworICAgICAgICB9IGNhdGNoKGUpIHsgfQorICAgIH0sCisKKyAgICBzZXRT
dGF0dXM6IGZ1bmN0aW9uKHN0YXR1cykKKyAgICB7CisgICAgICAgIHRoaXMuc3RhdHVzID0gc3Rh
dHVzOworICAgIH0sCisKKyAgICBoYW5kbGVMb2FkZWRNZXRhRGF0YTogZnVuY3Rpb24oZXZlbnQp
CisgICAgeworICAgICAgICB0aGlzLnNldFN0YXR1cygnUGxheWFibGUnKTsKKyAgICAgICAgdGhp
cy5wb3N0RXZlbnQoJ3F0X3ZhbGlkYXRlZCcpOworICAgICAgICB0aGlzLnBvc3RFdmVudCgncXRf
bG9hZGVkZmlyc3RmcmFtZScpOworICAgICAgICB0aGlzLnBvc3RFdmVudCgncXRfbG9hZGVkbWV0
YWRhdGEnKTsKKyAgICB9LAorCisgICAgaGFuZGxlRnVsbHNjcmVlbkNoYW5nZTogZnVuY3Rpb24o
ZXZlbnQpCisgICAgeworICAgICAgICB0aGlzLnBvc3RFdmVudCh0aGlzLmlzRnVsbFNjcmVlbigp
ID8gJ3F0X2VudGVyZnVsbHNjcmVlbicgOiAncXRfZXhpdGZ1bGxzY3JlZW4nKTsKKyAgICB9LAor
CisgICAgaGFuZGxlRXJyb3I6IGZ1bmN0aW9uKGV2ZW50KQorICAgIHsKKyAgICAgICAgdGhpcy5z
ZXRTdGF0dXMoJ0Vycm9yJyk7CisgICAgICAgIHRoaXMucG9zdEV2ZW50KCdxdF9lcnJvcicpOwor
ICAgIH0sCisKKyAgICBoYW5kbGVMb2FkU3RhcnQ6ZnVuY3Rpb24oZXZlbnQpCisgICAgeworICAg
ICAgICBpZiAodGhpcy52aWRlby5wb3N0ZXIpCisgICAgICAgICAgICB0aGlzLnNldFN0YXR1cygn
V2FpdGluZycpOworICAgICAgICBlbHNlCisgICAgICAgICAgICB0aGlzLnNldFN0YXR1cygnTG9h
ZGluZycpOworICAgICAgICB0aGlzLnBvc3RFdmVudCgncXRfYmVnaW4nKTsKKyAgICB9LAorCisg
ICAgaGFuZGxlRW5kZWQ6IGZ1bmN0aW9uKGV2ZW50KQorICAgIHsKKyAgICAgICAgdGhpcy5wb3N0
RXZlbnQoJ3F0X2VuZGVkJyk7CisgICAgICAgIGlmICh0aGlzLmlzRnVsbFNjcmVlbigpICYmIHRo
aXMuYXV0b0V4aXRGdWxsU2NyZWVuKQorICAgICAgICAgICAgZG9jdW1lbnQud2Via2l0RXhpdEZ1
bGxzY3JlZW4oKTsKKyAgICB9LAorCisgICAgaXNGdWxsU2NyZWVuOiBmdW5jdGlvbigpCisgICAg
eworICAgICAgICByZXR1cm4gZG9jdW1lbnQud2Via2l0Q3VycmVudEZ1bGxTY3JlZW5FbGVtZW50
ID09PSB0aGlzLnZpZGVvOworICAgIH0sCisKKyAgICBzZXRVUkw6IGZ1bmN0aW9uKHVybCkKKyAg
ICB7CisgICAgICAgIHRoaXMuc2V0U3RhdHVzKCdWYWxpZGF0aW5nJyk7CisgICAgICAgIHRoaXMu
dmlkZW8uc3JjID0gdXJsOworICAgIH0sCisgICAgCisgICAgdXJsOiBmdW5jdGlvbigpCisgICAg
eworICAgICAgICByZXR1cm4gdGhpcy52aWRlby5jdXJyZW50U3JjOworICAgIH0sCisgICAgCisg
ICAgcGxheTogZnVuY3Rpb24oKQorICAgIHsKKyAgICAgICAgdGhpcy52aWRlby5wbGF5KCk7Cisg
ICAgfSwKKyAgICAKKyAgICBwYXVzZTogZnVuY3Rpb24oKQorICAgIHsKKyAgICAgICAgdGhpcy52
aWRlby5wbGF5YmFja1JhdGUgPSAwOworICAgICAgICB0aGlzLnZpZGVvLnBhdXNlKCk7CisgICAg
fSwKKyAgICAKKyAgICByYXRlOiBmdW5jdGlvbigpCisgICAgeworICAgICAgICByZXR1cm4gdGhp
cy52aWRlby5wYXVzZWQgPyAwIDogMTsKKyAgICB9LAorICAgIAorICAgIHNldFJhdGU6IGZ1bmN0
aW9uKHJhdGUpCisgICAgeworICAgICAgICBpZiAocmF0ZSkKKyAgICAgICAgICAgIHRoaXMudmlk
ZW8ucGxheSgpOworICAgICAgICBlbHNlCisgICAgICAgICAgICB0aGlzLnZpZGVvLnBhdXNlKCk7
CisgICAgfSwKKyAgICAKKyAgICBleGl0RnVsbFNjcmVlbjogZnVuY3Rpb24oKQorICAgIHsKKyAg
ICAgICAgZG9jdW1lbnQud2Via2l0RXhpdEZ1bGxzY3JlZW4oKTsKKyAgICB9LAorICAgIAorICAg
IHBsdWdpblN0YXR1czogZnVuY3Rpb24oKQorICAgIHsKKyAgICAgICAgcmV0dXJuIHRoaXMuc3Rh
dHVzOworICAgIH0sCisKKyAgICBjdXJyZW50VGltZTogZnVuY3Rpb24oKQorICAgIHsKKyAgICAg
ICAgcmV0dXJuIHRoaXMudmlkZW8uY3VycmVudFRpbWUgKiB0aGlzLlRpbWVTY2FsZTsKKyAgICB9
LAorCisgICAgc2V0Q3VycmVudFRpbWU6IGZ1bmN0aW9uKHRpbWUpCisgICAgeworICAgICAgICB0
aGlzLnZpZGVvLmN1cnJlbnRUaW1lID0gdGltZSAvIHRoaXMuVGltZVNjYWxlCisgICAgfSwKKwor
ICAgIHNlZWtUb0RhdGU6IGZ1bmN0aW9uKCkKKyAgICB7CisgICAgICAgIC8vIEZJWE1FOiBub3Qg
aW1wbGVtZW50ZWQgeWV0LgorICAgIH0sCisgICAgCisgICAgZGF0ZTogZnVuY3Rpb24oKQorICAg
IHsKKyAgICAgICAgcmV0dXJuIG5ldyBEYXRlKCk7CisgICAgfSwKKyAgICAKKyAgICBkdXJhdGlv
bjogZnVuY3Rpb24oKQorICAgIHsKKyAgICAgICAgcmV0dXJuIHRoaXMudmlkZW8uZHVyYXRpb24g
KiB0aGlzLlRpbWVTY2FsZTsKKyAgICB9LAorICAgIAorICAgIHRpbWVTY2FsZTogZnVuY3Rpb24o
KQorICAgIHsKKyAgICAgICAgcmV0dXJuIDMwMDAwOworICAgIH0sCisgICAgCisgICAgbWF4VGlt
ZUxvYWRlZDogZnVuY3Rpb24oKQorICAgIHsKKyAgICAgICAgcmV0dXJuIHRoaXMudmlkZW8uZHVy
YXRpb24gKiB0aGlzLlRpbWVTY2FsZTsKKyAgICB9LAorICAgIAorICAgIG1heEJ5dGVzTG9hZGVk
OiBmdW5jdGlvbigpCisgICAgeworICAgICAgICB2YXIgcGVyY2VudExvYWRlZCA9IHRoaXMudmlk
ZW8uYnVmZmVyZWQuZW5kKDApIC8gdGhpcy52aWRlby5kdXJhdGlvbjsKKyAgICAgICAgcmV0dXJu
IHBlcmNlbnRMb2FkZWQgKiB0aGlzLm1vdmllU2l6ZSgpOworICAgIH0sCisgICAgCisgICAgbW92
aWVTaXplOiBmdW5jdGlvbigpCisgICAgeworICAgICAgICB0cnkgeworICAgICAgICAgICAgcmV0
dXJuIHRoaXMuaG9zdC5tb3ZpZVNpemU7CisgICAgICAgIH0gY2F0Y2goZSkgeyB9CisKKyAgICAg
ICAgcmV0dXJuIDA7CisgICAgfSwKKyAgICAKKyAgICB0aW1lZE1ldGFkYXRhVXBkYXRlczogZnVu
Y3Rpb24oKQorICAgIHsKKyAgICAgICAgLy8gRklYTUU6IG5vdCBpbXBsZW1lbnRlZCB5ZXQuCisg
ICAgICAgIHJldHVybiBudWxsOworICAgIH0sCisgICAgCisgICAgYWNjZXNzTG9nOiBmdW5jdGlv
bigpCisgICAgeworICAgICAgICAvLyBGSVhNRTogbm90IGltcGxlbWVudGVkIHlldC4KKyAgICAg
ICAgcmV0dXJuIG51bGw7CisgICAgfSwKKyAgICAKKyAgICBlcnJvckxvZzogZnVuY3Rpb24oKQor
ICAgIHsKKyAgICAgICAgLy8gRklYTUU6IG5vdCBpbXBsZW1lbnRlZCB5ZXQuCisgICAgICAgIHJl
dHVybiBudWxsOworICAgIH0sCit9OworCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnZj
eHByb2ovV2ViQ29yZS52Y3hwcm9qCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL1dlYkNv
cmUudmN4cHJvai9XZWJDb3JlLnZjeHByb2oJKHJldmlzaW9uIDE1OTgyMCkKKysrIFNvdXJjZS9X
ZWJDb3JlL1dlYkNvcmUudmN4cHJvai9XZWJDb3JlLnZjeHByb2oJKHdvcmtpbmcgY29weSkKQEAg
LTE4Njk1LDYgKzE4Njk1LDcgQEAKICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXE1vZHVsZXNc
bm90aWZpY2F0aW9uc1xOb3RpZmljYXRpb25DZW50ZXIuaCIgLz4KICAgICA8Q2xJbmNsdWRlIElu
Y2x1ZGU9Ii4uXE1vZHVsZXNcbm90aWZpY2F0aW9uc1xOb3RpZmljYXRpb25DbGllbnQuaCIgLz4K
ICAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4uXE1vZHVsZXNcbm90aWZpY2F0aW9uc1xXb3JrZXJH
bG9iYWxTY29wZU5vdGlmaWNhdGlvbnMuaCIgLz4KKyAgICA8Q2xJbmNsdWRlIEluY2x1ZGU9Ii4u
XE1vZHVsZXNccGx1Z2luc1xQbHVnaW5SZXBsYWNlbWVudC5oIiAvPgogICAgIDxDbEluY2x1ZGUg
SW5jbHVkZT0iLi5cTW9kdWxlc1x3ZWJkYXRhYmFzZVxBYnN0cmFjdERhdGFiYXNlU2VydmVyLmgi
IC8+CiAgICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxNb2R1bGVzXHdlYmRhdGFiYXNlXEFic3Ry
YWN0U1FMU3RhdGVtZW50LmgiIC8+CiAgICAgPENsSW5jbHVkZSBJbmNsdWRlPSIuLlxNb2R1bGVz
XHdlYmRhdGFiYXNlXEFic3RyYWN0U1FMU3RhdGVtZW50QmFja2VuZC5oIiAvPgpJbmRleDogU291
cmNlL1dlYkNvcmUvV2ViQ29yZS52Y3hwcm9qL1dlYkNvcmVDb21tb24ucHJvcHMKPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gU291cmNlL1dlYkNvcmUvV2ViQ29yZS52Y3hwcm9qL1dlYkNvcmVDb21tb24ucHJvcHMJ
KHJldmlzaW9uIDE1OTgyMCkKKysrIFNvdXJjZS9XZWJDb3JlL1dlYkNvcmUudmN4cHJvai9XZWJD
b3JlQ29tbW9uLnByb3BzCSh3b3JraW5nIGNvcHkpCkBAIC03LDcgKzcsNyBAQAogICA8L1Byb3Bl
cnR5R3JvdXA+CiAgIDxJdGVtRGVmaW5pdGlvbkdyb3VwPgogICAgIDxDbENvbXBpbGU+Ci0gICAg
ICA8QWRkaXRpb25hbEluY2x1ZGVEaXJlY3Rvcmllcz4kKFByb2plY3REaXIpLi47JChQcm9qZWN0
RGlyKS4uXE1vZHVsZXNcbWVkaWFjb250cm9sczskKFByb2plY3REaXIpLi5cTW9kdWxlc1xtZWRp
YXN0cmVhbTskKFByb2plY3REaXIpLi5cTW9kdWxlc1xmaWxlc3lzdGVtOyQoUHJvamVjdERpciku
LlxNb2R1bGVzXGdlb2xvY2F0aW9uOyQoUHJvamVjdERpcikuLlxNb2R1bGVzXGluZGV4ZWRkYjsk
KFByb2plY3REaXIpLi5cTW9kdWxlc1xtZWRpYXNvdXJjZTskKFByb2plY3REaXIpLi5cTW9kdWxl
c1xuYXZpZ2F0b3Jjb250ZW50dXRpbHM7JChQcm9qZWN0RGlyKS4uXE1vZHVsZXNcc3BlZWNoOyQo
UHJvamVjdERpcikuLlxNb2R1bGVzXHByb3hpbWl0eTskKFByb2plY3REaXIpLi5cTW9kdWxlc1xx
dW90YTskKFByb2plY3REaXIpLi5cTW9kdWxlc1xub3RpZmljYXRpb25zOyQoUHJvamVjdERpciku
LlxNb2R1bGVzXHdlYmRhdGFiYXNlOyQoUHJvamVjdERpcikuLlxNb2R1bGVzXHdlYnNvY2tldHM7
JChQcm9qZWN0RGlyKS4uXGFjY2Vzc2liaWxpdHk7JChQcm9qZWN0RGlyKS4uXGFjY2Vzc2liaWxp
dHlcd2luOyQoUHJvamVjdERpcikuLlxicmlkZ2U7JChQcm9qZWN0RGlyKS4uXGJyaWRnZVxjOyQo
UHJvamVjdERpcikuLlxicmlkZ2VcanNjOyQoUHJvamVjdERpcikuLlxjc3M7JChQcm9qZWN0RGly
KS4uXGVkaXRpbmc7JChQcm9qZWN0RGlyKS4uXGZpbGVhcGk7JChQcm9qZWN0RGlyKS4uXHJlbmRl
cmluZzskKFByb2plY3REaXIpLi5ccmVuZGVyaW5nXGxpbmU7JChQcm9qZWN0RGlyKS4uXHJlbmRl
cmluZ1xtYXRobWw7JChQcm9qZWN0RGlyKS4uXHJlbmRlcmluZ1xzaGFwZXM7JChQcm9qZWN0RGly
KS4uXHJlbmRlcmluZ1xzdHlsZTskKFByb2plY3REaXIpLi5ccmVuZGVyaW5nXHN2ZzskKFByb2pl
Y3REaXIpLi5cYmluZGluZ3M7JChQcm9qZWN0RGlyKS4uXGJpbmRpbmdzXGdlbmVyaWM7JChQcm9q
ZWN0RGlyKS4uXGJpbmRpbmdzXGpzOyQoUHJvamVjdERpcikuLlxiaW5kaW5nc1xqc1xzcGVjaWFs
aXphdGlvbjskKFByb2plY3REaXIpLi5cZG9tOyQoUHJvamVjdERpcikuLlxkb21cZGVmYXVsdDsk
KFByb2plY3REaXIpLi5caGlzdG9yeTskKFByb2plY3REaXIpLi5caHRtbDskKFByb2plY3REaXIp
Li5caHRtbFxjYW52YXM7JChQcm9qZWN0RGlyKS4uXGh0bWxcZm9ybXM7JChQcm9qZWN0RGlyKS4u
XGh0bWxccGFyc2VyOyQoUHJvamVjdERpcikuLlxodG1sXHNoYWRvdzskKFByb2plY3REaXIpLi5c
aHRtbFx0cmFjazskKFByb2plY3REaXIpLi5caW5zcGVjdG9yOyQoUHJvamVjdERpcikuLlxsb2Fk
ZXI7JChQcm9qZWN0RGlyKS4uXGxvYWRlclxhcHBjYWNoZTskKFByb2plY3REaXIpLi5cbG9hZGVy
XGFyY2hpdmU7JChQcm9qZWN0RGlyKS4uXGxvYWRlclxhcmNoaXZlXGNmOyQoUHJvamVjdERpciku
Llxsb2FkZXJcY2FjaGU7JChQcm9qZWN0RGlyKS4uXGxvYWRlclxpY29uOyQoUHJvamVjdERpciku
LlxtYXRobWw7JChQcm9qZWN0RGlyKS4uXHBhZ2U7JChQcm9qZWN0RGlyKS4uXHBhZ2VcYW5pbWF0
aW9uOyQoUHJvamVjdERpcikuLlxwYWdlXHNjcm9sbGluZzskKFByb2plY3REaXIpLi5ccGFnZVx3
aW47JChQcm9qZWN0RGlyKS4uXHBsYXRmb3JtOyQoUHJvamVjdERpcikuLlxwbGF0Zm9ybVxhbmlt
YXRpb247JChQcm9qZWN0RGlyKS4uXHBsYXRmb3JtXG1vY2s7JChQcm9qZWN0RGlyKS4uXHBsYXRm
b3JtXHNxbDskKFByb2plY3REaXIpLi5ccGxhdGZvcm1cd2luOyQoUHJvamVjdERpcikuLlxwbGF0
Zm9ybVxuZXR3b3JrOyQoUHJvamVjdERpcikuLlxwbGF0Zm9ybVxuZXR3b3JrXHdpbjskKFByb2pl
Y3REaXIpLi5ccGxhdGZvcm1cY2Y7JChQcm9qZWN0RGlyKS4uXHBsYXRmb3JtXGdyYXBoaWNzOyQo
UHJvamVjdERpcikuLlxwbGF0Zm9ybVxncmFwaGljc1xjYTskKFByb2plY3REaXIpLi5ccGxhdGZv
cm1cZ3JhcGhpY3NcY3B1XGFybVxmaWx0ZXJzOyQoUHJvamVjdERpcikuLlxwbGF0Zm9ybVxncmFw
aGljc1xmaWx0ZXJzOyQoUHJvamVjdERpcikuLlxwbGF0Zm9ybVxncmFwaGljc1xmaWx0ZXJzXGFy
bTskKFByb2plY3REaXIpLi5ccGxhdGZvcm1cZ3JhcGhpY3Ncb3BlbnR5cGU7JChQcm9qZWN0RGly
KS4uXHBsYXRmb3JtXGdyYXBoaWNzXHRyYW5zZm9ybXM7JChQcm9qZWN0RGlyKS4uXHBsYXRmb3Jt
XHRleHQ7JChQcm9qZWN0RGlyKS4uXHBsYXRmb3JtXHRleHRcdHJhbnNjb2RlcjskKFByb2plY3RE
aXIpLi5ccGxhdGZvcm1cZ3JhcGhpY3Ncd2luOyQoUHJvamVjdERpcikuLlx4bWw7JChQcm9qZWN0
RGlyKS4uXHhtbFxwYXJzZXI7JChDb25maWd1cmF0aW9uQnVpbGREaXIpXG9iaiQoUGxhdGZvcm1B
cmNoaXRlY3R1cmUpXFdlYkNvcmVcRGVyaXZlZFNvdXJjZXM7JChQcm9qZWN0RGlyKS4uXHBsdWdp
bnM7JChQcm9qZWN0RGlyKS4uXHBsdWdpbnNcd2luOyQoUHJvamVjdERpcikuLlxzdmdcYW5pbWF0
aW9uOyQoUHJvamVjdERpcikuLlxzdmdcZ3JhcGhpY3M7JChQcm9qZWN0RGlyKS4uXHN2Z1xwcm9w
ZXJ0aWVzOyQoUHJvamVjdERpcikuLlxzdmdcZ3JhcGhpY3NcZmlsdGVyczskKFByb2plY3REaXIp
Li5cc3ZnOyQoUHJvamVjdERpcikuLlx0ZXN0aW5nOyQoUHJvamVjdERpcikuLlxjcnlwdG87JChQ
cm9qZWN0RGlyKS4uXHdtbDskKFByb2plY3REaXIpLi5cc3RvcmFnZTskKFByb2plY3REaXIpLi5c
c3R5bGU7JChQcm9qZWN0RGlyKS4uXHdlYnNvY2tldHM7JChQcm9qZWN0RGlyKS4uXHdvcmtlcnM7
JChDb25maWd1cmF0aW9uQnVpbGREaXIpXGluY2x1ZGU7JChDb25maWd1cmF0aW9uQnVpbGREaXIp
XGluY2x1ZGVccHJpdmF0ZTskKENvbmZpZ3VyYXRpb25CdWlsZERpcilcaW5jbHVkZVxKYXZhU2Ny
aXB0Q29yZTskKENvbmZpZ3VyYXRpb25CdWlsZERpcilcaW5jbHVkZVxwcml2YXRlXEphdmFTY3Jp
cHRDb3JlOyQoUHJvamVjdERpcikuLlxGb3J3YXJkaW5nSGVhZGVyczskKFByb2plY3REaXIpLi5c
cGxhdGZvcm1cZ3JhcGhpY3NcZ3B1OyQoUHJvamVjdERpcikuLlxwbGF0Zm9ybVxncmFwaGljc1xl
Z2w7JChQcm9qZWN0RGlyKS4uXHBsYXRmb3JtXGdyYXBoaWNzXHN1cmZhY2VzOyQoUHJvamVjdERp
cikuLlxwbGF0Zm9ybVxncmFwaGljc1xzdXJmYWNlc1xlZ2w7JChQcm9qZWN0RGlyKS4uXHBsYXRm
b3JtXGdyYXBoaWNzXG9wZW5nbDskKFdlYktpdF9MaWJyYXJpZXMpXGluY2x1ZGU7JChXZWJLaXRf
TGlicmFyaWVzKVxpbmNsdWRlXHByaXZhdGU7JChXZWJLaXRfTGlicmFyaWVzKVxpbmNsdWRlXHBy
aXZhdGVcSmF2YVNjcmlwdENvcmU7JChXZWJLaXRfTGlicmFyaWVzKVxpbmNsdWRlXHNxbGl0ZTsk
KFdlYktpdF9MaWJyYXJpZXMpXGluY2x1ZGVcSmF2YVNjcmlwdENvcmU7JChXZWJLaXRfTGlicmFy
aWVzKVxpbmNsdWRlXHpsaWI7JShBZGRpdGlvbmFsSW5jbHVkZURpcmVjdG9yaWVzKTwvQWRkaXRp
b25hbEluY2x1ZGVEaXJlY3Rvcmllcz4KKyAgICAgIDxBZGRpdGlvbmFsSW5jbHVkZURpcmVjdG9y
aWVzPiQoUHJvamVjdERpcikuLjskKFByb2plY3REaXIpLi5cTW9kdWxlc1xtZWRpYWNvbnRyb2xz
OyQoUHJvamVjdERpcikuLlxNb2R1bGVzXG1lZGlhc3RyZWFtOyQoUHJvamVjdERpcikuLlxNb2R1
bGVzXGZpbGVzeXN0ZW07JChQcm9qZWN0RGlyKS4uXE1vZHVsZXNcZ2VvbG9jYXRpb247JChQcm9q
ZWN0RGlyKS4uXE1vZHVsZXNcaW5kZXhlZGRiOyQoUHJvamVjdERpcikuLlxNb2R1bGVzXG1lZGlh
c291cmNlOyQoUHJvamVjdERpcikuLlxNb2R1bGVzXG5hdmlnYXRvcmNvbnRlbnR1dGlsczskKFBy
b2plY3REaXIpLi5cTW9kdWxlc1xwbHVnaW5zOyQoUHJvamVjdERpcikuLlxNb2R1bGVzXHNwZWVj
aDskKFByb2plY3REaXIpLi5cTW9kdWxlc1xwcm94aW1pdHk7JChQcm9qZWN0RGlyKS4uXE1vZHVs
ZXNccXVvdGE7JChQcm9qZWN0RGlyKS4uXE1vZHVsZXNcbm90aWZpY2F0aW9uczskKFByb2plY3RE
aXIpLi5cTW9kdWxlc1x3ZWJkYXRhYmFzZTskKFByb2plY3REaXIpLi5cTW9kdWxlc1x3ZWJzb2Nr
ZXRzOyQoUHJvamVjdERpcikuLlxhY2Nlc3NpYmlsaXR5OyQoUHJvamVjdERpcikuLlxhY2Nlc3Np
YmlsaXR5XHdpbjskKFByb2plY3REaXIpLi5cYnJpZGdlOyQoUHJvamVjdERpcikuLlxicmlkZ2Vc
YzskKFByb2plY3REaXIpLi5cYnJpZGdlXGpzYzskKFByb2plY3REaXIpLi5cY3NzOyQoUHJvamVj
dERpcikuLlxlZGl0aW5nOyQoUHJvamVjdERpcikuLlxmaWxlYXBpOyQoUHJvamVjdERpcikuLlxy
ZW5kZXJpbmc7JChQcm9qZWN0RGlyKS4uXHJlbmRlcmluZ1xsaW5lOyQoUHJvamVjdERpcikuLlxy
ZW5kZXJpbmdcbWF0aG1sOyQoUHJvamVjdERpcikuLlxyZW5kZXJpbmdcc2hhcGVzOyQoUHJvamVj
dERpcikuLlxyZW5kZXJpbmdcc3R5bGU7JChQcm9qZWN0RGlyKS4uXHJlbmRlcmluZ1xzdmc7JChQ
cm9qZWN0RGlyKS4uXGJpbmRpbmdzOyQoUHJvamVjdERpcikuLlxiaW5kaW5nc1xnZW5lcmljOyQo
UHJvamVjdERpcikuLlxiaW5kaW5nc1xqczskKFByb2plY3REaXIpLi5cYmluZGluZ3NcanNcc3Bl
Y2lhbGl6YXRpb247JChQcm9qZWN0RGlyKS4uXGRvbTskKFByb2plY3REaXIpLi5cZG9tXGRlZmF1
bHQ7JChQcm9qZWN0RGlyKS4uXGhpc3Rvcnk7JChQcm9qZWN0RGlyKS4uXGh0bWw7JChQcm9qZWN0
RGlyKS4uXGh0bWxcY2FudmFzOyQoUHJvamVjdERpcikuLlxodG1sXGZvcm1zOyQoUHJvamVjdERp
cikuLlxodG1sXHBhcnNlcjskKFByb2plY3REaXIpLi5caHRtbFxzaGFkb3c7JChQcm9qZWN0RGly
KS4uXGh0bWxcdHJhY2s7JChQcm9qZWN0RGlyKS4uXGluc3BlY3RvcjskKFByb2plY3REaXIpLi5c
bG9hZGVyOyQoUHJvamVjdERpcikuLlxsb2FkZXJcYXBwY2FjaGU7JChQcm9qZWN0RGlyKS4uXGxv
YWRlclxhcmNoaXZlOyQoUHJvamVjdERpcikuLlxsb2FkZXJcYXJjaGl2ZVxjZjskKFByb2plY3RE
aXIpLi5cbG9hZGVyXGNhY2hlOyQoUHJvamVjdERpcikuLlxsb2FkZXJcaWNvbjskKFByb2plY3RE
aXIpLi5cbWF0aG1sOyQoUHJvamVjdERpcikuLlxwYWdlOyQoUHJvamVjdERpcikuLlxwYWdlXGFu
aW1hdGlvbjskKFByb2plY3REaXIpLi5ccGFnZVxzY3JvbGxpbmc7JChQcm9qZWN0RGlyKS4uXHBh
Z2Vcd2luOyQoUHJvamVjdERpcikuLlxwbGF0Zm9ybTskKFByb2plY3REaXIpLi5ccGxhdGZvcm1c
YW5pbWF0aW9uOyQoUHJvamVjdERpcikuLlxwbGF0Zm9ybVxtb2NrOyQoUHJvamVjdERpcikuLlxw
bGF0Zm9ybVxzcWw7JChQcm9qZWN0RGlyKS4uXHBsYXRmb3JtXHdpbjskKFByb2plY3REaXIpLi5c
cGxhdGZvcm1cbmV0d29yazskKFByb2plY3REaXIpLi5ccGxhdGZvcm1cbmV0d29ya1x3aW47JChQ
cm9qZWN0RGlyKS4uXHBsYXRmb3JtXGNmOyQoUHJvamVjdERpcikuLlxwbGF0Zm9ybVxncmFwaGlj
czskKFByb2plY3REaXIpLi5ccGxhdGZvcm1cZ3JhcGhpY3NcY2E7JChQcm9qZWN0RGlyKS4uXHBs
YXRmb3JtXGdyYXBoaWNzXGNwdVxhcm1cZmlsdGVyczskKFByb2plY3REaXIpLi5ccGxhdGZvcm1c
Z3JhcGhpY3NcZmlsdGVyczskKFByb2plY3REaXIpLi5ccGxhdGZvcm1cZ3JhcGhpY3NcZmlsdGVy
c1xhcm07JChQcm9qZWN0RGlyKS4uXHBsYXRmb3JtXGdyYXBoaWNzXG9wZW50eXBlOyQoUHJvamVj
dERpcikuLlxwbGF0Zm9ybVxncmFwaGljc1x0cmFuc2Zvcm1zOyQoUHJvamVjdERpcikuLlxwbGF0
Zm9ybVx0ZXh0OyQoUHJvamVjdERpcikuLlxwbGF0Zm9ybVx0ZXh0XHRyYW5zY29kZXI7JChQcm9q
ZWN0RGlyKS4uXHBsYXRmb3JtXGdyYXBoaWNzXHdpbjskKFByb2plY3REaXIpLi5ceG1sOyQoUHJv
amVjdERpcikuLlx4bWxccGFyc2VyOyQoQ29uZmlndXJhdGlvbkJ1aWxkRGlyKVxvYmokKFBsYXRm
b3JtQXJjaGl0ZWN0dXJlKVxXZWJDb3JlXERlcml2ZWRTb3VyY2VzOyQoUHJvamVjdERpcikuLlxw
bHVnaW5zOyQoUHJvamVjdERpcikuLlxwbHVnaW5zXHdpbjskKFByb2plY3REaXIpLi5cc3ZnXGFu
aW1hdGlvbjskKFByb2plY3REaXIpLi5cc3ZnXGdyYXBoaWNzOyQoUHJvamVjdERpcikuLlxzdmdc
cHJvcGVydGllczskKFByb2plY3REaXIpLi5cc3ZnXGdyYXBoaWNzXGZpbHRlcnM7JChQcm9qZWN0
RGlyKS4uXHN2ZzskKFByb2plY3REaXIpLi5cdGVzdGluZzskKFByb2plY3REaXIpLi5cY3J5cHRv
OyQoUHJvamVjdERpcikuLlx3bWw7JChQcm9qZWN0RGlyKS4uXHN0b3JhZ2U7JChQcm9qZWN0RGly
KS4uXHN0eWxlOyQoUHJvamVjdERpcikuLlx3ZWJzb2NrZXRzOyQoUHJvamVjdERpcikuLlx3b3Jr
ZXJzOyQoQ29uZmlndXJhdGlvbkJ1aWxkRGlyKVxpbmNsdWRlOyQoQ29uZmlndXJhdGlvbkJ1aWxk
RGlyKVxpbmNsdWRlXHByaXZhdGU7JChDb25maWd1cmF0aW9uQnVpbGREaXIpXGluY2x1ZGVcSmF2
YVNjcmlwdENvcmU7JChDb25maWd1cmF0aW9uQnVpbGREaXIpXGluY2x1ZGVccHJpdmF0ZVxKYXZh
U2NyaXB0Q29yZTskKFByb2plY3REaXIpLi5cRm9yd2FyZGluZ0hlYWRlcnM7JChQcm9qZWN0RGly
KS4uXHBsYXRmb3JtXGdyYXBoaWNzXGdwdTskKFByb2plY3REaXIpLi5ccGxhdGZvcm1cZ3JhcGhp
Y3NcZWdsOyQoUHJvamVjdERpcikuLlxwbGF0Zm9ybVxncmFwaGljc1xzdXJmYWNlczskKFByb2pl
Y3REaXIpLi5ccGxhdGZvcm1cZ3JhcGhpY3Ncc3VyZmFjZXNcZWdsOyQoUHJvamVjdERpcikuLlxw
bGF0Zm9ybVxncmFwaGljc1xvcGVuZ2w7JChXZWJLaXRfTGlicmFyaWVzKVxpbmNsdWRlOyQoV2Vi
S2l0X0xpYnJhcmllcylcaW5jbHVkZVxwcml2YXRlOyQoV2ViS2l0X0xpYnJhcmllcylcaW5jbHVk
ZVxwcml2YXRlXEphdmFTY3JpcHRDb3JlOyQoV2ViS2l0X0xpYnJhcmllcylcaW5jbHVkZVxzcWxp
dGU7JChXZWJLaXRfTGlicmFyaWVzKVxpbmNsdWRlXEphdmFTY3JpcHRDb3JlOyQoV2ViS2l0X0xp
YnJhcmllcylcaW5jbHVkZVx6bGliOyUoQWRkaXRpb25hbEluY2x1ZGVEaXJlY3Rvcmllcyk8L0Fk
ZGl0aW9uYWxJbmNsdWRlRGlyZWN0b3JpZXM+CiAgICAgICA8UHJlcHJvY2Vzc29yRGVmaW5pdGlv
bnM+RElTQUJMRV8zRF9SRU5ERVJJTkc7V0VCQ09SRV9DT05URVhUX01FTlVTOyUoUHJlcHJvY2Vz
c29yRGVmaW5pdGlvbnMpPC9QcmVwcm9jZXNzb3JEZWZpbml0aW9ucz4KICAgICAgIDxQcmVjb21w
aWxlZEhlYWRlcj5Vc2U8L1ByZWNvbXBpbGVkSGVhZGVyPgogICAgICAgPFByZWNvbXBpbGVkSGVh
ZGVyRmlsZT5XZWJDb3JlUHJlZml4Lmg8L1ByZWNvbXBpbGVkSGVhZGVyRmlsZT4KSW5kZXg6IFNv
dXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2plY3QucGJ4cHJvago9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci0tLSBTb3VyY2UvV2ViQ29yZS9XZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2oJKHJl
dmlzaW9uIDE1OTgyMCkKKysrIFNvdXJjZS9XZWJDb3JlL1dlYkNvcmUueGNvZGVwcm9qL3Byb2pl
Y3QucGJ4cHJvagkod29ya2luZyBjb3B5KQpAQCAtMTQ2LDYgKzE0Niw5IEBACiAJCTA3Mjc3RTUz
MTdEMDE4Q0MwMDE1NTM0RCAvKiBKU01lZGlhU3RyZWFtVHJhY2suaCBpbiBIZWFkZXJzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDA3Mjc3RTQ3MTdEMDE4Q0MwMDE1NTM0RCAv
KiBKU01lZGlhU3RyZWFtVHJhY2suaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2
YXRlLCApOyB9OyB9OwogCQkwNzI3N0U1NDE3RDAxOENDMDAxNTUzNEQgLyogSlNNZWRpYVN0cmVh
bVRyYWNrRXZlbnQuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gMDcyNzdFNDgxN0QwMThDQzAwMTU1MzREIC8qIEpTTWVkaWFTdHJlYW1UcmFja0V2ZW50
LmNwcCAqLzsgfTsKIAkJMDcyNzdFNTUxN0QwMThDQzAwMTU1MzREIC8qIEpTTWVkaWFTdHJlYW1U
cmFja0V2ZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSAwNzI3N0U0OTE3RDAxOENDMDAxNTUzNEQgLyogSlNNZWRpYVN0cmVhbVRyYWNrRXZlbnQuaCAq
Lzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9OyB9OworCQkwNzJBRTFF
NTE4M0MwNzQxMDAwQTU5ODggLyogUGx1Z2luUmVwbGFjZW1lbnQuaCBpbiBIZWFkZXJzICovID0g
e2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDA3MkFFMURGMTgzQzA3NDEwMDBBNTk4OCAv
KiBQbHVnaW5SZXBsYWNlbWVudC5oICovOyB9OworCQkwNzJBRTFFNjE4M0MwNzQxMDAwQTU5ODgg
LyogUXVpY2tUaW1lUGx1Z2luUmVwbGFjZW1lbnQuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMDcyQUUxRTAxODNDMDc0MTAwMEE1OTg4IC8qIFF1aWNr
VGltZVBsdWdpblJlcGxhY2VtZW50LmNwcCAqLzsgfTsKKwkJMDcyQUUxRTgxODNDMDc0MTAwMEE1
OTg4IC8qIFF1aWNrVGltZVBsdWdpblJlcGxhY2VtZW50LmggaW4gSGVhZGVycyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAwNzJBRTFFMjE4M0MwNzQxMDAwQTU5ODggLyogUXVp
Y2tUaW1lUGx1Z2luUmVwbGFjZW1lbnQuaCAqLzsgfTsKIAkJMDcyQzhCMTExMzFDNTE4NjAwQTRG
Q0U5IC8qIE1lZGlhUGxheWVyUHJpdmF0ZUFWRm91bmRhdGlvbi5jcHAgaW4gU291cmNlcyAqLyA9
IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAwNzZGMEQwOTEyQjgxOTI3MDBDMjZBQTQg
LyogTWVkaWFQbGF5ZXJQcml2YXRlQVZGb3VuZGF0aW9uLmNwcCAqLzsgfTsKIAkJMDcyQ0E4NjEx
NkNCNERDMzAwOEFFMTMxIC8qIENhcHRpb25Vc2VyUHJlZmVyZW5jZXMuY3BwIGluIFNvdXJjZXMg
Ki8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMDcyQ0E4NjAxNkNCNERDMzAwOEFF
MTMxIC8qIENhcHRpb25Vc2VyUHJlZmVyZW5jZXMuY3BwICovOyB9OwogCQkwNzM1RUU2QTBGNDBD
NUU0MDA0QTI2MDQgLyogTWVkaWFQbGF5ZXJQcm94eS5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0g
UEJYQnVpbGRGaWxlOyBmaWxlUmVmID0gMDczNUVFNjkwRjQwQzVFNDAwNEEyNjA0IC8qIE1lZGlh
UGxheWVyUHJveHkuaCAqLzsgc2V0dGluZ3MgPSB7QVRUUklCVVRFUyA9IChQcml2YXRlLCApOyB9
OyB9OwpAQCAtMTg3LDYgKzE5MCw4IEBACiAJCTA3ODQ2MzQyMTQ1QjE1MUEwMEE1OERGMSAvKiBK
U1RyYWNrRXZlbnQuY3BwIGluIFNvdXJjZXMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBmaWxl
UmVmID0gMDc4NDYzNDAxNDVCMTUxQTAwQTU4REYxIC8qIEpTVHJhY2tFdmVudC5jcHAgKi87IH07
CiAJCTA3ODQ2MzQzMTQ1QjE1MUEwMEE1OERGMSAvKiBKU1RyYWNrRXZlbnQuaCBpbiBIZWFkZXJz
ICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmlsZVJlZiA9IDA3ODQ2MzQxMTQ1QjE1MUEwMEE1
OERGMSAvKiBKU1RyYWNrRXZlbnQuaCAqLzsgfTsKIAkJMDc4NDYzODUxNDVCMUI4RTAwQTU4REYx
IC8qIEpTVHJhY2tDdXN0b20uaCBpbiBIZWFkZXJzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsg
ZmlsZVJlZiA9IDA3ODQ2Mzg0MTQ1QjFCOEUwMEE1OERGMSAvKiBKU1RyYWNrQ3VzdG9tLmggKi87
IH07CisgCQkwNzc2NjRGQzE4M0U2QjVDMDAxMzNCOTIgLyogSlNRdWlja1RpbWVQbHVnaW5SZXBs
YWNlbWVudC5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYg
PSAwNzc2NjRGQTE4M0U2QjVDMDAxMzNCOTIgLyogSlNRdWlja1RpbWVQbHVnaW5SZXBsYWNlbWVu
dC5jcHAgKi87IH07CisgCQkwNzc2NjRGRDE4M0U2QjVDMDAxMzNCOTIgLyogSlNRdWlja1RpbWVQ
bHVnaW5SZXBsYWNlbWVudC5oIGluIEhlYWRlcnMgKi8gPSB7aXNhID0gUEJYQnVpbGRGaWxlOyBm
aWxlUmVmID0gMDc3NjY0RkIxODNFNkI1QzAwMTMzQjkyIC8qIEpTUXVpY2tUaW1lUGx1Z2luUmVw
bGFjZW1lbnQuaCAqLzsgfTsKIAkJMDc4RTA4RkUxN0QxNENFRTAwNDIwQUExIC8qIE1lZGlhQ29u
c3RyYWludHNJbXBsLmNwcCBpbiBTb3VyY2VzICovID0ge2lzYSA9IFBCWEJ1aWxkRmlsZTsgZmls
ZVJlZiA9IDA3MjIxQjRBMTdDRUMzMjcwMDg0OEU1MSAvKiBNZWRpYUNvbnN0cmFpbnRzSW1wbC5j
cHAgKi87IH07CiAJCTA3OEUwOEZGMTdEMTRDRUUwMDQyMEFBMSAvKiBNZWRpYVN0cmVhbS5jcHAg
aW4gU291cmNlcyAqLyA9IHtpc2EgPSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAwNzIyMUI0QzE3
Q0VDMzI3MDA4NDhFNTEgLyogTWVkaWFTdHJlYW0uY3BwICovOyB9OwogCQkwNzhFMDkwMDE3RDE0
Q0VFMDA0MjBBQTEgLyogTWVkaWFTdHJlYW1FdmVudC5jcHAgaW4gU291cmNlcyAqLyA9IHtpc2Eg
PSBQQlhCdWlsZEZpbGU7IGZpbGVSZWYgPSAwNzIyMUI0RjE3Q0VDMzI3MDA4NDhFNTEgLyogTWVk
aWFTdHJlYW1FdmVudC5jcHAgKi87IH07CkBAIC02NzY1LDYgKzY3NzAsMTIgQEAKIAkJMDcyODQ3
RTMxNkVCQzVCMDAwNDNDRkE0IC8qIFBsYXRmb3JtVGV4dFRyYWNrTWVudS5oICovID0ge2lzYSA9
IFBCWEZpbGVSZWZlcmVuY2U7IGxhc3RLbm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jLmg7IHBh
dGggPSBQbGF0Zm9ybVRleHRUcmFja01lbnUuaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsK
IAkJMDcyOUIxNEUxN0NGQ0NBMDAwNEYxRDYwIC8qIE1lZGlhU3RyZWFtQ2VudGVyTWFjLmNwcCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IE1lZGlhU3RyZWFtQ2VudGVyTWFj
LmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKIAkJMDcyOUIxNEYxN0NGQ0NBMDAwNEYx
RDYwIC8qIE1lZGlhU3RyZWFtQ2VudGVyTWFjLmggKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmMuaDsg
cGF0aCA9IE1lZGlhU3RyZWFtQ2VudGVyTWFjLmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07
CisJCTA3MkFFMURGMTgzQzA3NDEwMDBBNTk4OCAvKiBQbHVnaW5SZXBsYWNlbWVudC5oICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5jLmg7IG5hbWUgPSBQbHVnaW5SZXBsYWNlbWVudC5oOyBwYXRoID0g
cGx1Z2lucy9QbHVnaW5SZXBsYWNlbWVudC5oOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
CQkwNzJBRTFFMDE4M0MwNzQxMDAwQTU5ODggLyogUXVpY2tUaW1lUGx1Z2luUmVwbGFjZW1lbnQu
Y3BwICovID0ge2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RL
bm93bkZpbGVUeXBlID0gc291cmNlY29kZS5jcHAuY3BwOyBuYW1lID0gUXVpY2tUaW1lUGx1Z2lu
UmVwbGFjZW1lbnQuY3BwOyBwYXRoID0gcGx1Z2lucy9RdWlja1RpbWVQbHVnaW5SZXBsYWNlbWVu
dC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CisJCTA3MkFFMUUxMTgzQzA3NDEwMDBB
NTk4OCAvKiBRdWlja1RpbWVQbHVnaW5SZXBsYWNlbWVudC5jc3MgKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSB0ZXh0LmNz
czsgbmFtZSA9IFF1aWNrVGltZVBsdWdpblJlcGxhY2VtZW50LmNzczsgcGF0aCA9IHBsdWdpbnMv
UXVpY2tUaW1lUGx1Z2luUmVwbGFjZW1lbnQuY3NzOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9
OworCQkwNzJBRTFFMjE4M0MwNzQxMDAwQTU5ODggLyogUXVpY2tUaW1lUGx1Z2luUmVwbGFjZW1l
bnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBuYW1lID0gUXVpY2tUaW1lUGx1Z2luUmVw
bGFjZW1lbnQuaDsgcGF0aCA9IHBsdWdpbnMvUXVpY2tUaW1lUGx1Z2luUmVwbGFjZW1lbnQuaDsg
c291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMDcyQUUxRTMxODNDMDc0MTAwMEE1OTg4IC8q
IFF1aWNrVGltZVBsdWdpblJlcGxhY2VtZW50LmlkbCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJl
bmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHRleHQ7IG5hbWUgPSBR
dWlja1RpbWVQbHVnaW5SZXBsYWNlbWVudC5pZGw7IHBhdGggPSBwbHVnaW5zL1F1aWNrVGltZVBs
dWdpblJlcGxhY2VtZW50LmlkbDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+IjsgfTsKKwkJMDcyQUUx
RTQxODNDMDc0MTAwMEE1OTg4IC8qIFF1aWNrVGltZVBsdWdpblJlcGxhY2VtZW50LmpzICovID0g
e2lzYSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVU
eXBlID0gc291cmNlY29kZS5qYXZhc2NyaXB0OyBuYW1lID0gUXVpY2tUaW1lUGx1Z2luUmVwbGFj
ZW1lbnQuanM7IHBhdGggPSBwbHVnaW5zL1F1aWNrVGltZVBsdWdpblJlcGxhY2VtZW50LmpzOyBz
b3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkwNzJDQTg2MDE2Q0I0REMzMDA4QUUxMzEgLyog
Q2FwdGlvblVzZXJQcmVmZXJlbmNlcy5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5jZTsg
ZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5jcHA7
IHBhdGggPSBDYXB0aW9uVXNlclByZWZlcmVuY2VzLmNwcDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+
IjsgfTsKIAkJMDczNUVFNjkwRjQwQzVFNDAwNEEyNjA0IC8qIE1lZGlhUGxheWVyUHJveHkuaCAq
LyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25G
aWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBwYXRoID0gTWVkaWFQbGF5ZXJQcm94eS5oOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkwNzM2N0RERDE3MkNBNjdGMDBEODYxQjkgLyogSW5i
YW5kVGV4dFRyYWNrUHJpdmF0ZUxlZ2FjeUFWRk9iakMuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVm
ZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUu
Yy5oOyBuYW1lID0gSW5iYW5kVGV4dFRyYWNrUHJpdmF0ZUxlZ2FjeUFWRk9iakMuaDsgcGF0aCA9
IG9iamMvSW5iYW5kVGV4dFRyYWNrUHJpdmF0ZUxlZ2FjeUFWRk9iakMuaDsgc291cmNlVHJlZSA9
ICI8Z3JvdXA+IjsgfTsKQEAgLTY4MDMsNiArNjgxNCw4IEBACiAJCTA3NzlCRjBDMTg0NTMxNjgw
MDBCNkFFNyAvKiBIVE1MTWVkaWFFbGVtZW50TWVkaWFTdHJlYW0uaWRsICovID0ge2lzYSA9IFBC
WEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBlID0gdGV4
dDsgcGF0aCA9IEhUTUxNZWRpYUVsZW1lbnRNZWRpYVN0cmVhbS5pZGw7IHNvdXJjZVRyZWUgPSAi
PGdyb3VwPiI7IH07CiAJCTA3ODMyMjgyMTgwMTNFRDcwMDk5OUUwQyAvKiBNZWRpYVN0cmVhbUF1
ZGlvU291cmNlLmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IE1lZGlh
U3RyZWFtQXVkaW9Tb3VyY2UuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkwNzgz
MjI4MzE4MDEzRUQ4MDA5OTlFMEMgLyogTWVkaWFTdHJlYW1BdWRpb1NvdXJjZS5oICovID0ge2lz
YSA9IFBCWEZpbGVSZWZlcmVuY2U7IGZpbGVFbmNvZGluZyA9IDQ7IGxhc3RLbm93bkZpbGVUeXBl
ID0gc291cmNlY29kZS5jLmg7IHBhdGggPSBNZWRpYVN0cmVhbUF1ZGlvU291cmNlLmg7IHNvdXJj
ZVRyZWUgPSAiPGdyb3VwPiI7IH07CisgCQkwNzc2NjRGQTE4M0U2QjVDMDAxMzNCOTIgLyogSlNR
dWlja1RpbWVQbHVnaW5SZXBsYWNlbWVudC5jcHAgKi8gPSB7aXNhID0gUEJYRmlsZVJlZmVyZW5j
ZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vjb2RlLmNwcC5j
cHA7IG5hbWUgPSBKU1F1aWNrVGltZVBsdWdpblJlcGxhY2VtZW50LmNwcDsgcGF0aCA9IEpTUXVp
Y2tUaW1lUGx1Z2luUmVwbGFjZW1lbnQuY3BwOyBzb3VyY2VUcmVlID0gIjxncm91cD4iOyB9Owor
IAkJMDc3NjY0RkIxODNFNkI1QzAwMTMzQjkyIC8qIEpTUXVpY2tUaW1lUGx1Z2luUmVwbGFjZW1l
bnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0
S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBuYW1lID0gSlNRdWlja1RpbWVQbHVnaW5S
ZXBsYWNlbWVudC5oOyBwYXRoID0gSlNRdWlja1RpbWVQbHVnaW5SZXBsYWNlbWVudC5oOyBzb3Vy
Y2VUcmVlID0gIjxncm91cD4iOyB9OwogCQkwNzg0NjM0MDE0NUIxNTFBMDBBNThERjEgLyogSlNU
cmFja0V2ZW50LmNwcCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNlOyBmaWxlRW5jb2Rpbmcg
PSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuY3BwLmNwcDsgcGF0aCA9IEpTVHJh
Y2tFdmVudC5jcHA7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTA3ODQ2MzQxMTQ1QjE1
MUEwMEE1OERGMSAvKiBKU1RyYWNrRXZlbnQuaCAqLyA9IHtpc2EgPSBQQlhGaWxlUmVmZXJlbmNl
OyBmaWxlRW5jb2RpbmcgPSA0OyBsYXN0S25vd25GaWxlVHlwZSA9IHNvdXJjZWNvZGUuYy5oOyBw
YXRoID0gSlNUcmFja0V2ZW50Lmg7IHNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7IH07CiAJCTA3ODQ2
Mzg0MTQ1QjFCOEUwMEE1OERGMSAvKiBKU1RyYWNrQ3VzdG9tLmggKi8gPSB7aXNhID0gUEJYRmls
ZVJlZmVyZW5jZTsgZmlsZUVuY29kaW5nID0gNDsgbGFzdEtub3duRmlsZVR5cGUgPSBzb3VyY2Vj
b2RlLmMuaDsgcGF0aCA9IEpTVHJhY2tDdXN0b20uaDsgc291cmNlVHJlZSA9ICI8Z3JvdXA+Ijsg
fTsKQEAgLTEzNzU1LDYgKzEzNzY4LDE5IEBACiAJCQlwYXRoID0gbWFjOwogCQkJc291cmNlVHJl
ZSA9ICI8Z3JvdXA+IjsKIAkJfTsKKwkJMDcyQUUxREUxODNDMDUxMzAwMEE1OTg4IC8qIHBsdWdp
bnMgKi8gPSB7CisJCQlpc2EgPSBQQlhHcm91cDsKKwkJCWNoaWxkcmVuID0gKAorCQkJCTA3MkFF
MURGMTgzQzA3NDEwMDBBNTk4OCAvKiBQbHVnaW5SZXBsYWNlbWVudC5oICovLAorCQkJCTA3MkFF
MUUwMTgzQzA3NDEwMDBBNTk4OCAvKiBRdWlja1RpbWVQbHVnaW5SZXBsYWNlbWVudC5jcHAgKi8s
CisJCQkJMDcyQUUxRTExODNDMDc0MTAwMEE1OTg4IC8qIFF1aWNrVGltZVBsdWdpblJlcGxhY2Vt
ZW50LmNzcyAqLywKKwkJCQkwNzJBRTFFMjE4M0MwNzQxMDAwQTU5ODggLyogUXVpY2tUaW1lUGx1
Z2luUmVwbGFjZW1lbnQuaCAqLywKKwkJCQkwNzJBRTFFMzE4M0MwNzQxMDAwQTU5ODggLyogUXVp
Y2tUaW1lUGx1Z2luUmVwbGFjZW1lbnQuaWRsICovLAorCQkJCTA3MkFFMUU0MTgzQzA3NDEwMDBB
NTk4OCAvKiBRdWlja1RpbWVQbHVnaW5SZXBsYWNlbWVudC5qcyAqLywKKwkJCSk7CisJCQluYW1l
ID0gcGx1Z2luczsKKwkJCXNvdXJjZVRyZWUgPSAiPGdyb3VwPiI7CisJCX07CiAJCTA3NkYwRDA4
MTJCODE5MjcwMEMyNkFBNCAvKiBhdmZvdW5kYXRpb24gKi8gPSB7CiAJCQlpc2EgPSBQQlhHcm91
cDsKIAkJCWNoaWxkcmVuID0gKApAQCAtMTQxMDAsNiArMTQxMjYsOCBAQAogCQkxNERGQjMzRjBB
N0RGNzYzMDAxOEY3NjkgLyogRGVyaXZlZCBTb3VyY2VzICovID0gewogCQkJaXNhID0gUEJYR3Jv
dXA7CiAJCQljaGlsZHJlbiA9ICgKKwkJCQkwNzc2NjRGQTE4M0U2QjVDMDAxMzNCOTIgLyogSlNR
dWlja1RpbWVQbHVnaW5SZXBsYWNlbWVudC5jcHAgKi8sCisJCQkJMDc3NjY0RkIxODNFNkI1QzAw
MTMzQjkyIC8qIEpTUXVpY2tUaW1lUGx1Z2luUmVwbGFjZW1lbnQuaCAqLywKIAkJCQlBODNCNzkx
MDBDQ0IwMDFCMDAwQjA4MjUgLyogQ29yZSAqLywKIAkJCQlFMUZGOEY2MTE4MDc0NUM2MDAxMzI2
NzQgLyogQ3J5cHRvICovLAogCQkJCUE4M0I3OTBFMENDQUZGOTcwMDBCMDgyNSAvKiBDU1MgKi8s
CkBAIC0xNjk1NCw2ICsxNjk4Miw3IEBACiAJCTk3MTE0NUZFMTRFRjAwNkUwMDY3NEZEOSAvKiBN
b2R1bGVzICovID0gewogCQkJaXNhID0gUEJYR3JvdXA7CiAJCQljaGlsZHJlbiA9ICgKKwkJCQkw
NzJBRTFERTE4M0MwNTEzMDAwQTU5ODggLyogcGx1Z2lucyAqLywKIAkJCQlDREE5OERCRDE2MDE0
RTA4MDBGRUEzQjEgLyogZW5jcnlwdGVkbWVkaWEgKi8sCiAJCQkJOTcxMTQ1RkYxNEVGMDA3OTAw
Njc0RkQ5IC8qIGdlb2xvY2F0aW9uICovLAogCQkJCTk3MTJBNTUzMTUwMDRFM0MwMDQ4QUYxMCAv
KiBpbmRleGVkZGIgKi8sCkBAIC0yMTk5Niw2ICsyMjAyNSw3IEBACiAJCQkJMjk0ODlGQzcxMkMw
MEYwMzAwRDgzRjBGIC8qIEFjY2Vzc2liaWxpdHlTY3JvbGxWaWV3LmggaW4gSGVhZGVycyAqLywK
IAkJCQkwNzA5RkM0RTEwMjVERUUzMDA1OUNEQkEgLyogQWNjZXNzaWJpbGl0eVNsaWRlci5oIGlu
IEhlYWRlcnMgKi8sCiAJCQkJNTFENzE5RDcxODExMDZFMDAwMTZEQzUxIC8qIElEQkhpc3RvZ3Jh
bXMuaCBpbiBIZWFkZXJzICovLAorCQkJCTA3MkFFMUU4MTgzQzA3NDEwMDBBNTk4OCAvKiBRdWlj
a1RpbWVQbHVnaW5SZXBsYWNlbWVudC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJMjlEN0JDRkExNDQ0
QUY3RDAwNzA2MTlDIC8qIEFjY2Vzc2liaWxpdHlTcGluQnV0dG9uLmggaW4gSGVhZGVycyAqLywK
IAkJCQlBQUMwOENGMzE1Rjk0MUZEMDBGMUUxODggLyogQWNjZXNzaWJpbGl0eVNWR1Jvb3QuaCBp
biBIZWFkZXJzICovLAogCQkJCTI5QTgxMjJCMEZCQjlDMUQwMDUxMDI5MyAvKiBBY2Nlc3NpYmls
aXR5VGFibGUuaCBpbiBIZWFkZXJzICovLApAQCAtMjIxOTIsNiArMjIyMjIsNyBAQAogCQkJCUZE
MzE1RkZGMTJCMDI2NzYwMEMxQTM1OSAvKiBDaGFubmVsTWVyZ2VyTm9kZS5oIGluIEhlYWRlcnMg
Ki8sCiAJCQkJRkQzMTYwMDIxMkIwMjY3NjAwQzFBMzU5IC8qIENoYW5uZWxTcGxpdHRlck5vZGUu
aCBpbiBIZWFkZXJzICovLAogCQkJCTY1NTBCNkEwMDk5REYwMjcwMDkwRDc4MSAvKiBDaGFyYWN0
ZXJEYXRhLmggaW4gSGVhZGVycyAqLywKKwkJCQkwNzc2NjRGRDE4M0U2QjVDMDAxMzNCOTIgLyog
SlNRdWlja1RpbWVQbHVnaW5SZXBsYWNlbWVudC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJOTdCOEZG
RDExNkFFN0Y5NjAwMzgzODhEIC8qIENoYXJhY3RlclJlZmVyZW5jZVBhcnNlcklubGluZXMuaCBp
biBIZWFkZXJzICovLAogCQkJCUUxNjRGQUEzMTgzMTVCRjQwMERCNEU2MSAvKiBDcnlwdG9LZXlS
U0EuaCBpbiBIZWFkZXJzICovLAogCQkJCUIyQzNEQTJBMEQwMDZDMUQwMEVGNkYyNiAvKiBDaGFy
c2V0RGF0YS5oIGluIEhlYWRlcnMgKi8sCkBAIC0yNDg5Miw2ICsyNDkyMyw3IEBACiAJCQkJRTE4
MDgxMTcxNkZDRjlDQjAwQjgwRDA3IC8qIFN5bmNocm9ub3VzTG9hZGVyQ2xpZW50LmggaW4gSGVh
ZGVycyAqLywKIAkJCQk1REE5N0VDRDE2OEU3ODdCMDAwRTM2NzYgLyogU3lzdGVtVmVyc2lvbk1h
Yy5oIGluIEhlYWRlcnMgKi8sCiAJCQkJQThDRkYwNTEwQTE1NEYwOTAwMEE0MjM0IC8qIFRhYmxl
TGF5b3V0LmggaW4gSGVhZGVycyAqLywKKwkJCQkwNzJBRTFFNTE4M0MwNzQxMDAwQTU5ODggLyog
UGx1Z2luUmVwbGFjZW1lbnQuaCBpbiBIZWFkZXJzICovLAogCQkJCUJDRTNCRUMzMEQyMjJCMUQw
MDdFMDZFNCAvKiBUYWdOb2RlTGlzdC5oIGluIEhlYWRlcnMgKi8sCiAJCQkJRjU1QjNERDYxMjUx
RjEyRDAwM0VGMjY5IC8qIFRlbGVwaG9uZUlucHV0VHlwZS5oIGluIEhlYWRlcnMgKi8sCiAJCQkJ
QzY1MDQ2QTkxNjdCRkI1NTAwQ0MyQTREIC8qIFRlbXBsYXRlQ29udGVudERvY3VtZW50RnJhZ21l
bnQuaCBpbiBIZWFkZXJzICovLApAQCAtMjcwNDIsNiArMjcwNzQsNyBAQAogCQkJCTg0ODUyMjdC
MTE5MDE2MkMwMDZFREM3RiAvKiBKU1NWR0hLZXJuRWxlbWVudC5jcHAgaW4gU291cmNlcyAqLywK
IAkJCQlCMkZBM0Q5RTBBQjc1QTZGMDAwRTVBQzQgLyogSlNTVkdJbWFnZUVsZW1lbnQuY3BwIGlu
IFNvdXJjZXMgKi8sCiAJCQkJQjJGQTNEQTAwQUI3NUE2RjAwMEU1QUM0IC8qIEpTU1ZHTGVuZ3Ro
LmNwcCBpbiBTb3VyY2VzICovLAorCQkJCTA3NzY2NEZDMTgzRTZCNUMwMDEzM0I5MiAvKiBKU1F1
aWNrVGltZVBsdWdpblJlcGxhY2VtZW50LmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTA4RTRGRTQ2
MEUyQkQ0MTQwMEY0Q0FFMCAvKiBKU1NWR0xlbmd0aEN1c3RvbS5jcHAgaW4gU291cmNlcyAqLywK
IAkJCQlCMkZBM0RBMjBBQjc1QTZGMDAwRTVBQzQgLyogSlNTVkdMZW5ndGhMaXN0LmNwcCBpbiBT
b3VyY2VzICovLAogCQkJCUIyRkEzREE0MEFCNzVBNkYwMDBFNUFDNCAvKiBKU1NWR0xpbmVhckdy
YWRpZW50RWxlbWVudC5jcHAgaW4gU291cmNlcyAqLywKQEAgLTI3MjQ4LDYgKzI3MjgxLDcgQEAK
IAkJCQkwNzA1ODUwMjE3RkExMEQwMDA1RjJCQ0IgLyogSlNBbGxWaWRlb0NhcGFiaWxpdGllcy5j
cHAgaW4gU291cmNlcyAqLywKIAkJCQk5NzU5RTkzRTE0RUYxQ0Y4MDAyNkEyREQgLyogTG9hZGFi
bGVUZXh0VHJhY2suY3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJNjU2RDM3MzMwQURCQTVERTAwQTQ1
NTREIC8qIExvYWRlck5TVVJMRXh0cmFzLm1tIGluIFNvdXJjZXMgKi8sCisJCQkJMDcyQUUxRTYx
ODNDMDc0MTAwMEE1OTg4IC8qIFF1aWNrVGltZVBsdWdpblJlcGxhY2VtZW50LmNwcCBpbiBTb3Vy
Y2VzICovLAogCQkJCTdFRTY4NDY4MTJEMjZFMzgwMEU3OTQxNSAvKiBMb2FkZXJSdW5Mb29wQ0Yu
Y3BwIGluIFNvdXJjZXMgKi8sCiAJCQkJNTFBQkY2NEQxNjM5MkUyODAwMTMyQTdBIC8qIExvYWRl
clN0cmF0ZWd5LmNwcCBpbiBTb3VyY2VzICovLAogCQkJCTA2RTgxRUVDMEFCNURBOTcwMEM4Nzgz
NyAvKiBMb2NhbEN1cnJlbnRHcmFwaGljc0NvbnRleHQubW0gaW4gU291cmNlcyAqLywKSW5kZXg6
IFNvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2dlbmVyaWMvUnVudGltZUVuYWJsZWRGZWF0dXJlcy5o
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2dlbmVyaWMvUnVudGltZUVu
YWJsZWRGZWF0dXJlcy5oCShyZXZpc2lvbiAxNTk4MjApCisrKyBTb3VyY2UvV2ViQ29yZS9iaW5k
aW5ncy9nZW5lcmljL1J1bnRpbWVFbmFibGVkRmVhdHVyZXMuaAkod29ya2luZyBjb3B5KQpAQCAt
MjI4LDYgKzIyOCw5IEBAIHB1YmxpYzoKICAgICAvLyBUaGUgbGFuZyBhdHRyaWJ1dGUgc3VwcG9y
dCBpcyBpbmNvbXBsZXRlIGFuZCBzaG91bGQgb25seSBiZSB0dXJuZWQgb24gZm9yIHRlc3RzLgog
ICAgIHZvaWQgc2V0TGFuZ0F0dHJpYnV0ZUF3YXJlRm9ybUNvbnRyb2xVSUVuYWJsZWQoYm9vbCBp
c0VuYWJsZWQpIHsgbV9pc0xhbmdBdHRyaWJ1dGVBd2FyZUZvcm1Db250cm9sVUlFbmFibGVkID0g
aXNFbmFibGVkOyB9CiAKKyAgICB2b2lkIHNldFBsdWdpblJlcGxhY2VtZW50RW5hYmxlZChib29s
IGlzRW5hYmxlZCkgeyBtX2lzUGx1Z2luUmVwbGFjZW1lbnRFbmFibGVkID0gaXNFbmFibGVkOyB9
CisgICAgYm9vbCBwbHVnaW5SZXBsYWNlbWVudEVuYWJsZWQoKSBjb25zdCB7IHJldHVybiBtX2lz
UGx1Z2luUmVwbGFjZW1lbnRFbmFibGVkOyB9CisKICAgICBzdGF0aWMgUnVudGltZUVuYWJsZWRG
ZWF0dXJlcyYgc2hhcmVkRmVhdHVyZXMoKTsKIAogcHJpdmF0ZToKQEAgLTI1MCw2ICsyNTMsOCBA
QCBwcml2YXRlOgogICAgIGJvb2wgbV9pc0NTU1JlZ2lvbnNFbmFibGVkOwogICAgIGJvb2wgbV9p
c0NTU0NvbXBvc2l0aW5nRW5hYmxlZDsKICAgICBib29sIG1faXNMYW5nQXR0cmlidXRlQXdhcmVG
b3JtQ29udHJvbFVJRW5hYmxlZDsKKyAgICBib29sIG1faXNQbHVnaW5SZXBsYWNlbWVudEVuYWJs
ZWQ7CisKICNpZiBFTkFCTEUoU0NSSVBURURfU1BFRUNIKQogICAgIGJvb2wgbV9pc1NjcmlwdGVk
U3BlZWNoRW5hYmxlZDsKICNlbmRpZgpJbmRleDogU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMv
SlNET01CaW5kaW5nLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMv
SlNET01CaW5kaW5nLmgJKHJldmlzaW9uIDE1OTgyMCkKKysrIFNvdXJjZS9XZWJDb3JlL2JpbmRp
bmdzL2pzL0pTRE9NQmluZGluZy5oCSh3b3JraW5nIGNvcHkpCkBAIC0zOTIsNiArMzkyLDExIEBA
IGlubGluZSBKU0M6OkpTVmFsdWUgdG9KUyhKU0M6OkV4ZWNTdGF0ZSoKICAgICByZXR1cm4gYXJy
YXk7CiB9CiAKK2lubGluZSBKU0M6OkpTVmFsdWUgdG9KUyhKU0M6OkV4ZWNTdGF0ZSogZXhlYywg
SlNET01HbG9iYWxPYmplY3QqLCBjb25zdCBTdHJpbmcmIHZhbHVlKQoreworICAgIHJldHVybiBq
c1N0cmluZ09yTnVsbChleGVjLCB2YWx1ZSk7Cit9CisKIHRlbXBsYXRlIDxjbGFzcyBUPgogc3Ry
dWN0IEpTVmFsdWVUcmFpdHMgewogICAgIHN0YXRpYyBpbmxpbmUgSlNDOjpKU1ZhbHVlIGFycmF5
SlNWYWx1ZShKU0M6OkV4ZWNTdGF0ZSogZXhlYywgSlNET01HbG9iYWxPYmplY3QqIGdsb2JhbE9i
amVjdCwgY29uc3QgVCYgdmFsdWUpCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9K
U1BsdWdpbkVsZW1lbnRGdW5jdGlvbnMuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3Jl
L2JpbmRpbmdzL2pzL0pTUGx1Z2luRWxlbWVudEZ1bmN0aW9ucy5jcHAJKHJldmlzaW9uIDE1OTgy
MCkKKysrIFNvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTUGx1Z2luRWxlbWVudEZ1bmN0aW9u
cy5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTgyLDcgKzgyLDExIEBAIEpTT2JqZWN0KiBwbHVnaW5T
Y3JpcHRPYmplY3QoRXhlY1N0YXRlKiAKIAogICAgIEhUTUxQbHVnSW5FbGVtZW50JiBwbHVnaW5F
bGVtZW50ID0gdG9IVE1MUGx1Z0luRWxlbWVudChlbGVtZW50KTsKIAotICAgIC8vIEZpcnN0LCBz
ZWUgaWYgd2UgY2FuIGFzayB0aGUgcGx1Zy1pbiB2aWV3IGZvciBpdHMgc2NyaXB0IG9iamVjdC4K
KyAgICAvLyBGaXJzdCwgc2VlIGlmIHRoZSBlbGVtZW50IGhhcyBhIHBsdWctaW4gcmVwbGFjZW1l
bnQgd2l0aCBhIHNjcmlwdC4KKyAgICBpZiAoSlNPYmplY3QqIHNjcmlwdE9iamVjdCA9IHBsdWdp
bkVsZW1lbnQuc2NyaXB0T2JqZWN0Rm9yUGx1Z2luUmVwbGFjZW1lbnQoKSkKKyAgICAgICAgcmV0
dXJuIHNjcmlwdE9iamVjdDsKKyAgICAKKyAgICAvLyBOZXh0LCBzZWUgaWYgd2UgY2FuIGFzayB0
aGUgcGx1Zy1pbiB2aWV3IGZvciBpdHMgc2NyaXB0IG9iamVjdC4KICAgICBpZiAoSlNPYmplY3Qq
IHNjcmlwdE9iamVjdCA9IHBsdWdpblNjcmlwdE9iamVjdEZyb21QbHVnaW5WaWV3QmFzZShwbHVn
aW5FbGVtZW50LCBqc0hUTUxFbGVtZW50LT5nbG9iYWxPYmplY3QoKSkpCiAgICAgICAgIHJldHVy
biBzY3JpcHRPYmplY3Q7CiAKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTEVtYmVkRWxl
bWVudC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MRW1iZWRFbGVt
ZW50LmNwcAkocmV2aXNpb24gMTU5ODIwKQorKysgU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MRW1i
ZWRFbGVtZW50LmNwcAkod29ya2luZyBjb3B5KQpAQCAtMTcwLDkgKzE3MCw4IEBAIHZvaWQgSFRN
TEVtYmVkRWxlbWVudDo6dXBkYXRlV2lkZ2V0KFBsdWcKICAgICBpZiAoIXJlbmRlcmVyKCkpIC8v
IERvIG5vdCBsb2FkIHRoZSBwbHVnaW4gaWYgYmVmb3JlbG9hZCByZW1vdmVkIHRoaXMgZWxlbWVu
dCBvciBpdHMgcmVuZGVyZXIuCiAgICAgICAgIHJldHVybjsKIAotICAgIFN1YmZyYW1lTG9hZGVy
JiBsb2FkZXIgPSBkb2N1bWVudCgpLmZyYW1lKCktPmxvYWRlcigpLnN1YmZyYW1lTG9hZGVyKCk7
CiAgICAgLy8gRklYTUU6IGJlZm9yZUxvYWQgY291bGQgaGF2ZSBkZXRhY2hlZCB0aGUgcmVuZGVy
ZXIhICBKdXN0IGxpa2UgaW4gdGhlIDxvYmplY3Q+IGNhc2UgYWJvdmUuCi0gICAgbG9hZGVyLnJl
cXVlc3RPYmplY3QoKnRoaXMsIG1fdXJsLCBnZXROYW1lQXR0cmlidXRlKCksIG1fc2VydmljZVR5
cGUsIHBhcmFtTmFtZXMsIHBhcmFtVmFsdWVzKTsKKyAgICByZXF1ZXN0T2JqZWN0KG1fdXJsLCBt
X3NlcnZpY2VUeXBlLCBwYXJhbU5hbWVzLCBwYXJhbVZhbHVlcyk7CiB9CiAKIGJvb2wgSFRNTEVt
YmVkRWxlbWVudDo6cmVuZGVyZXJJc05lZWRlZChjb25zdCBSZW5kZXJTdHlsZSYgc3R5bGUpCklu
ZGV4OiBTb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxNZWRpYUVsZW1lbnQuY3BwCj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LS0tIFNvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTE1lZGlhRWxlbWVudC5jcHAJKHJldmlzaW9uIDE1
OTgyMCkKKysrIFNvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTE1lZGlhRWxlbWVudC5jcHAJKHdvcmtp
bmcgY29weSkKQEAgLTUzMDAsNiArNTMwMCwxNCBAQCB2b2lkIEhUTUxNZWRpYUVsZW1lbnQ6OmRp
ZEFkZFVzZXJBZ2VudFNoCiB9CiAjZW5kaWYKIAordW5zaWduZWQgbG9uZyBsb25nIEhUTUxNZWRp
YUVsZW1lbnQ6OmZpbGVTaXplKCkgY29uc3QKK3sKKyAgICBpZiAobV9wbGF5ZXIpCisgICAgICAg
IHJldHVybiBtX3BsYXllci0+ZmlsZVNpemUoKTsKKyAgICAKKyAgICByZXR1cm4gMDsKK30KKwog
fQogCiAjZW5kaWYKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTE1lZGlhRWxlbWVudC5o
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTE1lZGlhRWxlbWVudC5oCShy
ZXZpc2lvbiAxNTk4MjApCisrKyBTb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxNZWRpYUVsZW1lbnQu
aAkod29ya2luZyBjb3B5KQpAQCAtMzkzLDYgKzM5Myw4IEBAIHB1YmxpYzoKICAgICBib29sIHNo
b3VsZFVzZVZpZGVvUGx1Z2luUHJveHkoKSBjb25zdDsKICNlbmRpZgogCisgICAgdW5zaWduZWQg
bG9uZyBsb25nIGZpbGVTaXplKCkgY29uc3Q7CisKIHByb3RlY3RlZDoKICAgICBIVE1MTWVkaWFF
bGVtZW50KGNvbnN0IFF1YWxpZmllZE5hbWUmLCBEb2N1bWVudCYsIGJvb2wpOwogICAgIHZpcnR1
YWwgfkhUTUxNZWRpYUVsZW1lbnQoKTsKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTE9i
amVjdEVsZW1lbnQuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTE9i
amVjdEVsZW1lbnQuY3BwCShyZXZpc2lvbiAxNTk4MjApCisrKyBTb3VyY2UvV2ViQ29yZS9odG1s
L0hUTUxPYmplY3RFbGVtZW50LmNwcAkod29ya2luZyBjb3B5KQpAQCAtMzA3LDggKzMwNyw5IEBA
IHZvaWQgSFRNTE9iamVjdEVsZW1lbnQ6OnVwZGF0ZVdpZGdldChQbHUKICAgICBpZiAoIXJlbmRl
cmVyKCkpIC8vIERvIG5vdCBsb2FkIHRoZSBwbHVnaW4gaWYgYmVmb3JlbG9hZCByZW1vdmVkIHRo
aXMgZWxlbWVudCBvciBpdHMgcmVuZGVyZXIuCiAgICAgICAgIHJldHVybjsKIAotICAgIFN1YmZy
YW1lTG9hZGVyJiBsb2FkZXIgPSBkb2N1bWVudCgpLmZyYW1lKCktPmxvYWRlcigpLnN1YmZyYW1l
TG9hZGVyKCk7Ci0gICAgYm9vbCBzdWNjZXNzID0gYmVmb3JlTG9hZEFsbG93ZWRMb2FkICYmIGhh
c1ZhbGlkQ2xhc3NJZCgpICYmIGxvYWRlci5yZXF1ZXN0T2JqZWN0KCp0aGlzLCB1cmwsIGdldE5h
bWVBdHRyaWJ1dGUoKSwgc2VydmljZVR5cGUsIHBhcmFtTmFtZXMsIHBhcmFtVmFsdWVzKTsKKyAg
ICBib29sIHN1Y2Nlc3MgPSBiZWZvcmVMb2FkQWxsb3dlZExvYWQgJiYgaGFzVmFsaWRDbGFzc0lk
KCk7CisgICAgaWYgKHN1Y2Nlc3MpCisgICAgICAgIHN1Y2Nlc3MgPSByZXF1ZXN0T2JqZWN0KHVy
bCwgc2VydmljZVR5cGUsIHBhcmFtTmFtZXMsIHBhcmFtVmFsdWVzKTsKICAgICBpZiAoIXN1Y2Nl
c3MgJiYgaGFzRmFsbGJhY2tDb250ZW50KCkpCiAgICAgICAgIHJlbmRlckZhbGxiYWNrQ29udGVu
dCgpOwogfQpJbmRleDogU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MUGx1Z0luRWxlbWVudC5jcHAK
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MUGx1Z0luRWxlbWVudC5jcHAJ
KHJldmlzaW9uIDE1OTgyMCkKKysrIFNvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTFBsdWdJbkVsZW1l
bnQuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0zNSwxOSArMzUsMjkgQEAKICNpbmNsdWRlICJGcmFt
ZUxvYWRlci5oIgogI2luY2x1ZGUgIkZyYW1lVHJlZS5oIgogI2luY2x1ZGUgIkhUTUxOYW1lcy5o
IgorI2luY2x1ZGUgIk1JTUVUeXBlUmVnaXN0cnkuaCIKICNpbmNsdWRlICJQYWdlLmgiCisjaW5j
bHVkZSAiUGx1Z2luRGF0YS5oIgorI2luY2x1ZGUgIlBsdWdpblJlcGxhY2VtZW50LmgiCiAjaW5j
bHVkZSAiUGx1Z2luVmlld0Jhc2UuaCIKICNpbmNsdWRlICJSZW5kZXJFbWJlZGRlZE9iamVjdC5o
IgogI2luY2x1ZGUgIlJlbmRlclNuYXBzaG90dGVkUGx1Z0luLmgiCiAjaW5jbHVkZSAiUmVuZGVy
V2lkZ2V0LmgiCisjaW5jbHVkZSAiUnVudGltZUVuYWJsZWRGZWF0dXJlcy5oIgogI2luY2x1ZGUg
IlNjcmlwdENvbnRyb2xsZXIuaCIKICNpbmNsdWRlICJTZXR0aW5ncy5oIgorI2luY2x1ZGUgIlNo
YWRvd1Jvb3QuaCIKKyNpbmNsdWRlICJTdWJmcmFtZUxvYWRlci5oIgogI2luY2x1ZGUgIldpZGdl
dC5oIgogCiAjaWYgRU5BQkxFKE5FVFNDQVBFX1BMVUdJTl9BUEkpCiAjaW5jbHVkZSAibnBydW50
aW1lX2ltcGwuaCIKICNlbmRpZgogCisjaWYgUExBVEZPUk0oTUFDKQorI2luY2x1ZGUgIlF1aWNr
VGltZVBsdWdpblJlcGxhY2VtZW50LmgiCisjZW5kaWYKKwogbmFtZXNwYWNlIFdlYkNvcmUgewog
CiB1c2luZyBuYW1lc3BhY2UgSFRNTE5hbWVzOwpAQCAtNTUsNiArNjUsNyBAQCB1c2luZyBuYW1l
c3BhY2UgSFRNTE5hbWVzOwogSFRNTFBsdWdJbkVsZW1lbnQ6OkhUTUxQbHVnSW5FbGVtZW50KGNv
bnN0IFF1YWxpZmllZE5hbWUmIHRhZ05hbWUsIERvY3VtZW50JiBkb2N1bWVudCkKICAgICA6IEhU
TUxGcmFtZU93bmVyRWxlbWVudCh0YWdOYW1lLCBkb2N1bWVudCkKICAgICAsIG1faW5CZWZvcmVM
b2FkRXZlbnRIYW5kbGVyKGZhbHNlKQorICAgICwgbV9zd2FwUmVuZGVyZXJUaW1lcih0aGlzLCAm
SFRNTFBsdWdJbkVsZW1lbnQ6OnN3YXBSZW5kZXJlclRpbWVyRmlyZWQpCiAjaWYgRU5BQkxFKE5F
VFNDQVBFX1BMVUdJTl9BUEkpCiAgICAgLCBtX05QT2JqZWN0KDApCiAjZW5kaWYKQEAgLTI2Miw0
ICsyNzMsMTM2IEBAIE5QT2JqZWN0KiBIVE1MUGx1Z0luRWxlbWVudDo6Z2V0TlBPYmplY3QKIAog
I2VuZGlmIC8qIEVOQUJMRShORVRTQ0FQRV9QTFVHSU5fQVBJKSAqLwogCitSZW5kZXJFbGVtZW50
KiBIVE1MUGx1Z0luRWxlbWVudDo6Y3JlYXRlUmVuZGVyZXIoUGFzc1JlZjxSZW5kZXJTdHlsZT4g
c3R5bGUpCit7CisgICAgaWYgKG1fcGx1Z2luUmVwbGFjZW1lbnQgJiYgbV9wbHVnaW5SZXBsYWNl
bWVudC0+d2lsbENyZWF0ZVJlbmRlcmVyKCkpCisgICAgICAgIHJldHVybiBtX3BsdWdpblJlcGxh
Y2VtZW50LT5jcmVhdGVSZW5kZXJlcigqdGhpcywgc3RkOjptb3ZlKHN0eWxlKSk7CisKKyAgICBy
ZXR1cm4gbmV3IFJlbmRlckVtYmVkZGVkT2JqZWN0KCp0aGlzLCBzdGQ6Om1vdmUoc3R5bGUpKTsK
K30KKwordm9pZCBIVE1MUGx1Z0luRWxlbWVudDo6c3dhcFJlbmRlcmVyVGltZXJGaXJlZChUaW1l
cjxIVE1MUGx1Z0luRWxlbWVudD4qKQoreworICAgIEFTU0VSVChkaXNwbGF5U3RhdGUoKSA9PSBQ
cmVwYXJpbmdQbHVnaW5SZXBsYWNlbWVudCB8fCBkaXNwbGF5U3RhdGUoKSA9PSBEaXNwbGF5aW5n
U25hcHNob3QpOworICAgIGlmICh1c2VyQWdlbnRTaGFkb3dSb290KCkpCisgICAgICAgIHJldHVy
bjsKKyAgICAKKyAgICAvLyBDcmVhdGUgYSBzaGFkb3cgcm9vdCwgd2hpY2ggd2lsbCB0cmlnZ2Vy
IHRoZSBjb2RlIHRvIGFkZCBhIHNuYXBzaG90IGNvbnRhaW5lcgorICAgIC8vIGFuZCByZWF0dGFj
aCwgdGh1cyBtYWtpbmcgYSBuZXcgUmVuZGVyZXIuCisgICAgZW5zdXJlVXNlckFnZW50U2hhZG93
Um9vdCgpOworfQorCit2b2lkIEhUTUxQbHVnSW5FbGVtZW50OjpzZXREaXNwbGF5U3RhdGUoRGlz
cGxheVN0YXRlIHN0YXRlKQoreworICAgIG1fZGlzcGxheVN0YXRlID0gc3RhdGU7CisgICAgCisg
ICAgaWYgKChzdGF0ZSA9PSBEaXNwbGF5aW5nU25hcHNob3QgfHwgZGlzcGxheVN0YXRlKCkgPT0g
UHJlcGFyaW5nUGx1Z2luUmVwbGFjZW1lbnQpICYmICFtX3N3YXBSZW5kZXJlclRpbWVyLmlzQWN0
aXZlKCkpCisgICAgICAgIG1fc3dhcFJlbmRlcmVyVGltZXIuc3RhcnRPbmVTaG90KDApOworfQor
Cit2b2lkIEhUTUxQbHVnSW5FbGVtZW50OjpkaWRBZGRVc2VyQWdlbnRTaGFkb3dSb290KFNoYWRv
d1Jvb3QqIHJvb3QpCit7CisgICAgaWYgKCFtX3BsdWdpblJlcGxhY2VtZW50IHx8ICFkb2N1bWVu
dCgpLnBhZ2UoKSB8fCBkaXNwbGF5U3RhdGUoKSAhPSBQcmVwYXJpbmdQbHVnaW5SZXBsYWNlbWVu
dCkKKyAgICAgICAgcmV0dXJuOworICAgIAorICAgIHJvb3QtPnNldFJlc2V0U3R5bGVJbmhlcml0
YW5jZSh0cnVlKTsKKyAgICBpZiAobV9wbHVnaW5SZXBsYWNlbWVudC0+aW5zdGFsbFJlcGxhY2Vt
ZW50KHJvb3QpKSB7CisgICAgICAgIHNldERpc3BsYXlTdGF0ZShEaXNwbGF5aW5nUGx1Z2luUmVw
bGFjZW1lbnQpOworICAgICAgICBTdHlsZTo6cmVhdHRhY2hSZW5kZXJUcmVlKCp0aGlzKTsKKyAg
ICB9Cit9CisKKyNpZiBQTEFURk9STShNQUMpCitzdGF0aWMgdm9pZCByZWdpc3RlclBsdWdpblJl
cGxhY2VtZW50KGNvbnN0IFJlcGxhY2VtZW50UGx1Z2luJik7CisjZW5kaWYKKworc3RhdGljIFZl
Y3RvcjxSZXBsYWNlbWVudFBsdWdpbio+JiByZWdpc3RlcmVkUGx1Z2luUmVwbGFjZW1lbnRzKCkK
K3sKKyAgICBERUZJTkVfU1RBVElDX0xPQ0FMKFZlY3RvcjxSZXBsYWNlbWVudFBsdWdpbio+LCBy
ZWdpc3RlcmVkUmVwbGFjZW1lbnRzLCAoKSk7CisgICAgc3RhdGljIGJvb2wgZW5naW5lc1F1ZXJp
ZWQgPSBmYWxzZTsKKyAgICAKKyAgICBpZiAoZW5naW5lc1F1ZXJpZWQpCisgICAgICAgIHJldHVy
biByZWdpc3RlcmVkUmVwbGFjZW1lbnRzOworICAgIGVuZ2luZXNRdWVyaWVkID0gdHJ1ZTsKKwor
I2lmIFBMQVRGT1JNKE1BQykKKyAgICBRdWlja1RpbWVQbHVnaW5SZXBsYWNlbWVudDo6cmVnaXN0
ZXJQbHVnaW5SZXBsYWNlbWVudChyZWdpc3RlclBsdWdpblJlcGxhY2VtZW50KTsKKyNlbmRpZgor
ICAgIAorICAgIHJldHVybiByZWdpc3RlcmVkUmVwbGFjZW1lbnRzOworfQorCisjaWYgUExBVEZP
Uk0oTUFDKQorc3RhdGljIHZvaWQgcmVnaXN0ZXJQbHVnaW5SZXBsYWNlbWVudChjb25zdCBSZXBs
YWNlbWVudFBsdWdpbiYgcmVwbGFjZW1lbnQpCit7CisgICAgcmVnaXN0ZXJlZFBsdWdpblJlcGxh
Y2VtZW50cygpLmFwcGVuZChuZXcgUmVwbGFjZW1lbnRQbHVnaW4ocmVwbGFjZW1lbnQpKTsKK30K
KyNlbmRpZgorCitzdGF0aWMgUmVwbGFjZW1lbnRQbHVnaW4qIHBsdWdpblJlcGxhY2VtZW50Rm9y
VHlwZShjb25zdCBVUkwmIHVybCwgY29uc3QgU3RyaW5nJiBtaW1lVHlwZSkKK3sKKyAgICBWZWN0
b3I8UmVwbGFjZW1lbnRQbHVnaW4qPiYgcmVwbGFjZW1lbnRzID0gcmVnaXN0ZXJlZFBsdWdpblJl
cGxhY2VtZW50cygpOworICAgIGlmIChyZXBsYWNlbWVudHMuaXNFbXB0eSgpKQorICAgICAgICBy
ZXR1cm4gbnVsbHB0cjsKKworICAgIFN0cmluZyBleHRlbnNpb247CisgICAgU3RyaW5nIGxhc3RQ
YXRoQ29tcG9uZW50ID0gdXJsLmxhc3RQYXRoQ29tcG9uZW50KCk7CisgICAgc2l6ZV90IGRvdE9m
ZnNldCA9IGxhc3RQYXRoQ29tcG9uZW50LnJldmVyc2VGaW5kKCcuJyk7CisgICAgaWYgKGRvdE9m
ZnNldCAhPSBub3RGb3VuZCkKKyAgICAgICAgZXh0ZW5zaW9uID0gbGFzdFBhdGhDb21wb25lbnQu
c3Vic3RyaW5nKGRvdE9mZnNldCArIDEpOworCisgICAgU3RyaW5nIHR5cGUgPSBtaW1lVHlwZTsK
KyAgICBpZiAodHlwZS5pc0VtcHR5KCkgJiYgdXJsLnByb3RvY29sSXNEYXRhKCkpCisgICAgICAg
IHR5cGUgPSBtaW1lVHlwZUZyb21EYXRhVVJMKHVybC5zdHJpbmcoKSk7CisgICAgCisgICAgaWYg
KHR5cGUuaXNFbXB0eSgpICYmICFleHRlbnNpb24uaXNFbXB0eSgpKSB7CisgICAgICAgIGZvciAo
c2l6ZV90IGkgPSAwOyBpIDwgcmVwbGFjZW1lbnRzLnNpemUoKTsgaSsrKQorICAgICAgICAgICAg
aWYgKHJlcGxhY2VtZW50c1tpXS0+c3VwcG9ydHNGaWxlRXh0ZW5zaW9uKGV4dGVuc2lvbikpCisg
ICAgICAgICAgICAgICAgcmV0dXJuIHJlcGxhY2VtZW50c1tpXTsKKyAgICB9CisgICAgCisgICAg
aWYgKHR5cGUuaXNFbXB0eSgpKSB7CisgICAgICAgIGlmIChleHRlbnNpb24uaXNFbXB0eSgpKQor
ICAgICAgICAgICAgcmV0dXJuIG51bGxwdHI7CisgICAgICAgIHR5cGUgPSBNSU1FVHlwZVJlZ2lz
dHJ5OjpnZXRNZWRpYU1JTUVUeXBlRm9yRXh0ZW5zaW9uKGV4dGVuc2lvbik7CisgICAgfQorCisg
ICAgaWYgKHR5cGUuaXNFbXB0eSgpKQorICAgICAgICByZXR1cm4gbnVsbHB0cjsKKworICAgIGZv
ciAodW5zaWduZWQgaSA9IDA7IGkgPCByZXBsYWNlbWVudHMuc2l6ZSgpOyBpKyspCisgICAgICAg
IGlmIChyZXBsYWNlbWVudHNbaV0tPnN1cHBvcnRzVHlwZSh0eXBlKSkKKyAgICAgICAgICAgIHJl
dHVybiByZXBsYWNlbWVudHNbaV07CisKKyAgICByZXR1cm4gbnVsbHB0cjsKK30KKworYm9vbCBI
VE1MUGx1Z0luRWxlbWVudDo6cmVxdWVzdE9iamVjdChjb25zdCBTdHJpbmcmIHVybCwgY29uc3Qg
U3RyaW5nJiBtaW1lVHlwZSwgY29uc3QgVmVjdG9yPFN0cmluZz4mIHBhcmFtTmFtZXMsIGNvbnN0
IFZlY3RvcjxTdHJpbmc+JiBwYXJhbVZhbHVlcykKK3sKKyAgICBpZiAoIVJ1bnRpbWVFbmFibGVk
RmVhdHVyZXM6OnNoYXJlZEZlYXR1cmVzKCkucGx1Z2luUmVwbGFjZW1lbnRFbmFibGVkKCkpCisg
ICAgICAgIHJldHVybiBmYWxzZTsKKworICAgIGlmIChtX3BsdWdpblJlcGxhY2VtZW50KQorICAg
ICAgICByZXR1cm4gdHJ1ZTsKKworICAgIFVSTCBjb21wbGV0ZWRVUkw7CisgICAgaWYgKCF1cmwu
aXNFbXB0eSgpKQorICAgICAgICBjb21wbGV0ZWRVUkwgPSBkb2N1bWVudCgpLmNvbXBsZXRlVVJM
KHVybCk7CisKKyAgICBSZXBsYWNlbWVudFBsdWdpbiogcmVwbGFjZW1lbnQgPSBwbHVnaW5SZXBs
YWNlbWVudEZvclR5cGUoY29tcGxldGVkVVJMLCBtaW1lVHlwZSk7CisgICAgaWYgKCFyZXBsYWNl
bWVudCkKKyAgICAgICAgcmV0dXJuIGZhbHNlOworCisgICAgbV9wbHVnaW5SZXBsYWNlbWVudCA9
IHJlcGxhY2VtZW50LT5jcmVhdGUoKnRoaXMsIHBhcmFtTmFtZXMsIHBhcmFtVmFsdWVzKTsKKyAg
ICBzZXREaXNwbGF5U3RhdGUoUHJlcGFyaW5nUGx1Z2luUmVwbGFjZW1lbnQpOworICAgIHJldHVy
biB0cnVlOworfQorCitKU0M6OkpTT2JqZWN0KiBIVE1MUGx1Z0luRWxlbWVudDo6c2NyaXB0T2Jq
ZWN0Rm9yUGx1Z2luUmVwbGFjZW1lbnQoKQoreworICAgIGlmIChtX3BsdWdpblJlcGxhY2VtZW50
KQorICAgICAgICByZXR1cm4gbV9wbHVnaW5SZXBsYWNlbWVudC0+c2NyaXB0T2JqZWN0KCk7Cisg
ICAgcmV0dXJuIG51bGxwdHI7Cit9CisKIH0KSW5kZXg6IFNvdXJjZS9XZWJDb3JlL2h0bWwvSFRN
TFBsdWdJbkVsZW1lbnQuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxQ
bHVnSW5FbGVtZW50LmgJKHJldmlzaW9uIDE1OTgyMCkKKysrIFNvdXJjZS9XZWJDb3JlL2h0bWwv
SFRNTFBsdWdJbkVsZW1lbnQuaAkod29ya2luZyBjb3B5KQpAQCAtMzgsNiArMzgsNyBAQCBjbGFz
cyBJbnN0YW5jZTsKIAogbmFtZXNwYWNlIFdlYkNvcmUgewogCitjbGFzcyBQbHVnaW5SZXBsYWNl
bWVudDsKIGNsYXNzIFJlbmRlckVtYmVkZGVkT2JqZWN0OwogY2xhc3MgUmVuZGVyV2lkZ2V0Owog
Y2xhc3MgV2lkZ2V0OwpAQCAtNTcsMTQgKzU4LDE4IEBAIHB1YmxpYzoKICAgICAgICAgRGlzcGxh
eWluZ1NuYXBzaG90LAogICAgICAgICBSZXN0YXJ0aW5nLAogICAgICAgICBSZXN0YXJ0aW5nV2l0
aFBlbmRpbmdNb3VzZUNsaWNrLAotICAgICAgICBQbGF5aW5nCisgICAgICAgIFBsYXlpbmcsCisg
ICAgICAgIFByZXBhcmluZ1BsdWdpblJlcGxhY2VtZW50LAorICAgICAgICBEaXNwbGF5aW5nUGx1
Z2luUmVwbGFjZW1lbnQsCiAgICAgfTsKICAgICBEaXNwbGF5U3RhdGUgZGlzcGxheVN0YXRlKCkg
Y29uc3QgeyByZXR1cm4gbV9kaXNwbGF5U3RhdGU7IH0KLSAgICB2aXJ0dWFsIHZvaWQgc2V0RGlz
cGxheVN0YXRlKERpc3BsYXlTdGF0ZSBzdGF0ZSkgeyBtX2Rpc3BsYXlTdGF0ZSA9IHN0YXRlOyB9
CisgICAgdmlydHVhbCB2b2lkIHNldERpc3BsYXlTdGF0ZShEaXNwbGF5U3RhdGUpOwogICAgIHZp
cnR1YWwgdm9pZCB1cGRhdGVTbmFwc2hvdChQYXNzUmVmUHRyPEltYWdlPikgeyB9CiAgICAgdmly
dHVhbCB2b2lkIGRpc3BhdGNoUGVuZGluZ01vdXNlQ2xpY2soKSB7IH0KICAgICB2aXJ0dWFsIGJv
b2wgaXNSZXN0YXJ0ZWRQbHVnaW4oKSBjb25zdCB7IHJldHVybiBmYWxzZTsgfQogCisgICAgSlND
OjpKU09iamVjdCogc2NyaXB0T2JqZWN0Rm9yUGx1Z2luUmVwbGFjZW1lbnQoKTsKKwogI2lmIEVO
QUJMRShORVRTQ0FQRV9QTFVHSU5fQVBJKQogICAgIE5QT2JqZWN0KiBnZXROUE9iamVjdCgpOwog
I2VuZGlmCkBAIC05MSwxMiArOTYsMTkgQEAgcHJvdGVjdGVkOgogCiAgICAgdmlydHVhbCB2b2lk
IGRlZmF1bHRFdmVudEhhbmRsZXIoRXZlbnQqKSBPVkVSUklERTsKIAorICAgIHZpcnR1YWwgYm9v
bCByZXF1ZXN0T2JqZWN0KGNvbnN0IFN0cmluZyYgdXJsLCBjb25zdCBTdHJpbmcmIG1pbWVUeXBl
LCBjb25zdCBWZWN0b3I8U3RyaW5nPiYgcGFyYW1OYW1lcywgY29uc3QgVmVjdG9yPFN0cmluZz4m
IHBhcmFtVmFsdWVzKTsKKyAgICB2aXJ0dWFsIFJlbmRlckVsZW1lbnQqIGNyZWF0ZVJlbmRlcmVy
KFBhc3NSZWY8UmVuZGVyU3R5bGU+KSBPVkVSUklERTsKKyAgICB2aXJ0dWFsIHZvaWQgZGlkQWRk
VXNlckFnZW50U2hhZG93Um9vdChTaGFkb3dSb290KikgT1ZFUlJJREU7CisKICAgICAvLyBTdWJj
bGFzc2VzIHNob3VsZCB1c2UgZ3VhcmRlZERpc3BhdGNoQmVmb3JlTG9hZEV2ZW50IGluc3RlYWQg
b2YgY2FsbGluZyBkaXNwYXRjaEJlZm9yZUxvYWRFdmVudCBkaXJlY3RseS4KICAgICBib29sIGd1
YXJkZWREaXNwYXRjaEJlZm9yZUxvYWRFdmVudChjb25zdCBTdHJpbmcmIHNvdXJjZVVSTCk7CiAK
ICAgICBib29sIG1faW5CZWZvcmVMb2FkRXZlbnRIYW5kbGVyOwogCiBwcml2YXRlOgorICAgIHZv
aWQgc3dhcFJlbmRlcmVyVGltZXJGaXJlZChUaW1lcjxIVE1MUGx1Z0luRWxlbWVudD4qKTsKKyAg
ICBib29sIHNob3VsZE92ZXJyaWRlUGx1Z2luKGNvbnN0IFN0cmluZyYgdXJsLCBjb25zdCBTdHJp
bmcmIG1pbWVUeXBlKTsKKwogICAgIGJvb2wgZGlzcGF0Y2hCZWZvcmVMb2FkRXZlbnQoY29uc3Qg
U3RyaW5nJiBzb3VyY2VVUkwpOyAvLyBOb3QgaW1wbGVtZW50ZWQsIGdlbmVyYXRlcyBhIGNvbXBp
bGUgZXJyb3IgaWYgc3ViY2xhc3NlcyBjYWxsIHRoaXMgYnkgbWlzdGFrZS4KIAogICAgIHZpcnR1
YWwgYm9vbCBhcmVBdXRob3JTaGFkb3dzQWxsb3dlZCgpIGNvbnN0IE9WRVJSSURFIHsgcmV0dXJu
IGZhbHNlOyB9CkBAIC0xMDksNiArMTIxLDggQEAgcHJpdmF0ZToKICAgICB2aXJ0dWFsIGJvb2wg
aXNQbHVnaW5FbGVtZW50KCkgY29uc3QgT1ZFUlJJREUgRklOQUw7CiAKICAgICBSZWZQdHI8SlND
OjpCaW5kaW5nczo6SW5zdGFuY2U+IG1faW5zdGFuY2U7CisgICAgVGltZXI8SFRNTFBsdWdJbkVs
ZW1lbnQ+IG1fc3dhcFJlbmRlcmVyVGltZXI7CisgICAgUmVmUHRyPFBsdWdpblJlcGxhY2VtZW50
PiBtX3BsdWdpblJlcGxhY2VtZW50OwogI2lmIEVOQUJMRShORVRTQ0FQRV9QTFVHSU5fQVBJKQog
ICAgIE5QT2JqZWN0KiBtX05QT2JqZWN0OwogI2VuZGlmCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9o
dG1sL0hUTUxQbHVnSW5JbWFnZUVsZW1lbnQuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJD
b3JlL2h0bWwvSFRNTFBsdWdJbkltYWdlRWxlbWVudC5jcHAJKHJldmlzaW9uIDE1OTgyMCkKKysr
IFNvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTFBsdWdJbkltYWdlRWxlbWVudC5jcHAJKHdvcmtpbmcg
Y29weSkKQEAgLTEwOCw3ICsxMDgsNiBAQCBIVE1MUGx1Z0luSW1hZ2VFbGVtZW50OjpIVE1MUGx1
Z0luSW1hZ2VFCiAgICAgLCBtX3Nob3VsZFByZWZlclBsdWdJbnNGb3JJbWFnZXMocHJlZmVyUGx1
Z0luc0ZvckltYWdlc09wdGlvbiA9PSBTaG91bGRQcmVmZXJQbHVnSW5zRm9ySW1hZ2VzKQogICAg
ICwgbV9uZWVkc0RvY3VtZW50QWN0aXZhdGlvbkNhbGxiYWNrcyhmYWxzZSkKICAgICAsIG1fc2lt
dWxhdGVkTW91c2VDbGlja1RpbWVyKHRoaXMsICZIVE1MUGx1Z0luSW1hZ2VFbGVtZW50OjpzaW11
bGF0ZWRNb3VzZUNsaWNrVGltZXJGaXJlZCwgc2ltdWxhdGVkTW91c2VDbGlja1RpbWVyRGVsYXkp
Ci0gICAgLCBtX3N3YXBSZW5kZXJlclRpbWVyKHRoaXMsICZIVE1MUGx1Z0luSW1hZ2VFbGVtZW50
Ojpzd2FwUmVuZGVyZXJUaW1lckZpcmVkKQogICAgICwgbV9yZW1vdmVTbmFwc2hvdFRpbWVyKHRo
aXMsICZIVE1MUGx1Z0luSW1hZ2VFbGVtZW50OjpyZW1vdmVTbmFwc2hvdFRpbWVyRmlyZWQpCiAg
ICAgLCBtX2NyZWF0ZWREdXJpbmdVc2VyR2VzdHVyZShTY3JpcHRDb250cm9sbGVyOjpwcm9jZXNz
aW5nVXNlckdlc3R1cmUoKSkKICAgICAsIG1faXNSZXN0YXJ0ZWRQbHVnaW4oZmFsc2UpCkBAIC0x
MzksOSArMTM4LDYgQEAgdm9pZCBIVE1MUGx1Z0luSW1hZ2VFbGVtZW50OjpzZXREaXNwbGF5Uwog
I2VuZGlmCiAKICAgICBIVE1MUGx1Z0luRWxlbWVudDo6c2V0RGlzcGxheVN0YXRlKHN0YXRlKTsK
LQotICAgIGlmIChzdGF0ZSA9PSBEaXNwbGF5aW5nU25hcHNob3QpCi0gICAgICAgIG1fc3dhcFJl
bmRlcmVyVGltZXIuc3RhcnRPbmVTaG90KDApOwogfQogCiBSZW5kZXJFbWJlZGRlZE9iamVjdCog
SFRNTFBsdWdJbkltYWdlRWxlbWVudDo6cmVuZGVyRW1iZWRkZWRPYmplY3QoKSBjb25zdApAQCAt
MTk2LDYgKzE5Miw5IEBAIGJvb2wgSFRNTFBsdWdJbkltYWdlRWxlbWVudDo6d291bGRMb2FkQXMK
IAogUmVuZGVyRWxlbWVudCogSFRNTFBsdWdJbkltYWdlRWxlbWVudDo6Y3JlYXRlUmVuZGVyZXIo
UGFzc1JlZjxSZW5kZXJTdHlsZT4gc3R5bGUpCiB7CisgICAgaWYgKGRpc3BsYXlTdGF0ZSgpID49
IFByZXBhcmluZ1BsdWdpblJlcGxhY2VtZW50KQorICAgICAgICByZXR1cm4gSFRNTFBsdWdJbkVs
ZW1lbnQ6OmNyZWF0ZVJlbmRlcmVyKHN0ZDo6bW92ZShzdHlsZSkpOworCiAgICAgLy8gT25jZSBh
IFBsdWdJbiBFbGVtZW50IGNyZWF0ZXMgaXRzIHJlbmRlcmVyLCBpdCBuZWVkcyB0byBiZSB0b2xk
IHdoZW4gdGhlIERvY3VtZW50IGdvZXMKICAgICAvLyBpbmFjdGl2ZSBvciByZWFjdGl2YXRlcyBz
byBpdCBjYW4gY2xlYXIgdGhlIHJlbmRlcmVyIGJlZm9yZSBnb2luZyBpbnRvIHRoZSBwYWdlIGNh
Y2hlLgogICAgIGlmICghbV9uZWVkc0RvY3VtZW50QWN0aXZhdGlvbkNhbGxiYWNrcykgewpAQCAt
MjIxLDcgKzIyMCw3IEBAIFJlbmRlckVsZW1lbnQqIEhUTUxQbHVnSW5JbWFnZUVsZW1lbnQ6OmMK
ICAgICAgICAgcmV0dXJuIGltYWdlOwogICAgIH0KIAotICAgIHJldHVybiBuZXcgUmVuZGVyRW1i
ZWRkZWRPYmplY3QoKnRoaXMsIHN0ZDo6bW92ZShzdHlsZSkpOworICAgIHJldHVybiBIVE1MUGx1
Z0luRWxlbWVudDo6Y3JlYXRlUmVuZGVyZXIoc3RkOjptb3ZlKHN0eWxlKSk7CiB9CiAKIGJvb2wg
SFRNTFBsdWdJbkltYWdlRWxlbWVudDo6d2lsbFJlY2FsY1N0eWxlKFN0eWxlOjpDaGFuZ2UpCkBA
IC0zNjMsOCArMzYyLDEyIEBAIHN0YXRpYyBET01XcmFwcGVyV29ybGQmIHBsdWdJbkltYWdlRWxl
bWUKIAogdm9pZCBIVE1MUGx1Z0luSW1hZ2VFbGVtZW50OjpkaWRBZGRVc2VyQWdlbnRTaGFkb3dS
b290KFNoYWRvd1Jvb3QqIHJvb3QpCiB7CisgICAgSFRNTFBsdWdJbkVsZW1lbnQ6OmRpZEFkZFVz
ZXJBZ2VudFNoYWRvd1Jvb3Qocm9vdCk7CisgICAgaWYgKGRpc3BsYXlTdGF0ZSgpID49IFByZXBh
cmluZ1BsdWdpblJlcGxhY2VtZW50KQorICAgICAgICByZXR1cm47CisKICAgICBQYWdlKiBwYWdl
ID0gZG9jdW1lbnQoKS5wYWdlKCk7Ci0gICAgaWYgKCFwYWdlKQorICAgIGlmIChwYWdlKQogICAg
ICAgICByZXR1cm47CiAKICAgICAvLyBSZXNldCBhbnkgYXV0aG9yIHN0eWxlcyB0aGF0IG1heSBh
cHBseSBhcyB3ZSBvbmx5IHdhbnQgZXhwbGljaXQKQEAgLTQwOSwxNyArNDEyLDYgQEAgYm9vbCBI
VE1MUGx1Z0luSW1hZ2VFbGVtZW50OjpwYXJ0T2ZTbmFwcwogICAgIHJldHVybiBub2RlICYmIHNu
YXBzaG90TGFiZWwgJiYgKG5vZGUgPT0gc25hcHNob3RMYWJlbC5nZXQoKSB8fCBub2RlLT5pc0Rl
c2NlbmRhbnRPZihzbmFwc2hvdExhYmVsLmdldCgpKSk7CiB9CiAKLXZvaWQgSFRNTFBsdWdJbklt
YWdlRWxlbWVudDo6c3dhcFJlbmRlcmVyVGltZXJGaXJlZChUaW1lcjxIVE1MUGx1Z0luSW1hZ2VF
bGVtZW50PiopCi17Ci0gICAgQVNTRVJUKGRpc3BsYXlTdGF0ZSgpID09IERpc3BsYXlpbmdTbmFw
c2hvdCk7Ci0gICAgaWYgKHVzZXJBZ2VudFNoYWRvd1Jvb3QoKSkKLSAgICAgICAgcmV0dXJuOwot
Ci0gICAgLy8gQ3JlYXRlIGEgc2hhZG93IHJvb3QsIHdoaWNoIHdpbGwgdHJpZ2dlciB0aGUgY29k
ZSB0byBhZGQgYSBzbmFwc2hvdCBjb250YWluZXIKLSAgICAvLyBhbmQgcmVhdHRhY2gsIHRodXMg
bWFraW5nIGEgbmV3IFJlbmRlcmVyLgotICAgIGVuc3VyZVVzZXJBZ2VudFNoYWRvd1Jvb3QoKTsK
LX0KLQogdm9pZCBIVE1MUGx1Z0luSW1hZ2VFbGVtZW50OjpyZW1vdmVTbmFwc2hvdFRpbWVyRmly
ZWQoVGltZXI8SFRNTFBsdWdJbkltYWdlRWxlbWVudD4qKQogewogICAgIG1fc25hcHNob3RJbWFn
ZSA9IG51bGxwdHI7CkBAIC00OTYsNyArNDg4LDcgQEAgdm9pZCBIVE1MUGx1Z0luSW1hZ2VFbGVt
ZW50Ojp1c2VyRGlkQ2xpYwogICAgIExPRyhQbHVnaW5zLCAiJXAgVXNlciBjbGlja2VkIG9uIHNu
YXBzaG90dGVkIHBsdWctaW4uIFJlc3RhcnQuIiwgdGhpcyk7CiAgICAgcmVzdGFydFNuYXBzaG90
dGVkUGx1Z0luKCk7CiAgICAgaWYgKGZvcndhcmRFdmVudCkKLSAgICAgICAgc2V0RGlzcGxheVN0
YXRlKEhUTUxQbHVnSW5FbGVtZW50OjpSZXN0YXJ0aW5nV2l0aFBlbmRpbmdNb3VzZUNsaWNrKTsK
KyAgICAgICAgc2V0RGlzcGxheVN0YXRlKFJlc3RhcnRpbmdXaXRoUGVuZGluZ01vdXNlQ2xpY2sp
OwogICAgIHJlc3RhcnRTaW1pbGFyUGx1Z0lucygpOwogfQogCkBAIC03MzIsNCArNzI0LDEzIEBA
IHZvaWQgSFRNTFBsdWdJbkltYWdlRWxlbWVudDo6ZGVmYXVsdEV2ZW4KICAgICBIVE1MUGx1Z0lu
RWxlbWVudDo6ZGVmYXVsdEV2ZW50SGFuZGxlcihldmVudCk7CiB9CiAKK2Jvb2wgSFRNTFBsdWdJ
bkltYWdlRWxlbWVudDo6cmVxdWVzdE9iamVjdChjb25zdCBTdHJpbmcmIHVybCwgY29uc3QgU3Ry
aW5nJiBtaW1lVHlwZSwgY29uc3QgVmVjdG9yPFN0cmluZz4mIHBhcmFtTmFtZXMsIGNvbnN0IFZl
Y3RvcjxTdHJpbmc+JiBwYXJhbVZhbHVlcykKK3sKKyAgICBpZiAoSFRNTFBsdWdJbkVsZW1lbnQ6
OnJlcXVlc3RPYmplY3QodXJsLCBtaW1lVHlwZSwgcGFyYW1OYW1lcywgcGFyYW1WYWx1ZXMpKQor
ICAgICAgICByZXR1cm4gdHJ1ZTsKKyAgICAKKyAgICBTdWJmcmFtZUxvYWRlciYgbG9hZGVyID0g
ZG9jdW1lbnQoKS5mcmFtZSgpLT5sb2FkZXIoKS5zdWJmcmFtZUxvYWRlcigpOworICAgIHJldHVy
biBsb2FkZXIucmVxdWVzdE9iamVjdCgqdGhpcywgdXJsLCBnZXROYW1lQXR0cmlidXRlKCksIG1p
bWVUeXBlLCBwYXJhbU5hbWVzLCBwYXJhbVZhbHVlcyk7Cit9CisKIH0gLy8gbmFtZXNwYWNlIFdl
YkNvcmUKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTFBsdWdJbkltYWdlRWxlbWVudC5o
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTFBsdWdJbkltYWdlRWxlbWVu
dC5oCShyZXZpc2lvbiAxNTk4MjApCisrKyBTb3VyY2UvV2ViQ29yZS9odG1sL0hUTUxQbHVnSW5J
bWFnZUVsZW1lbnQuaAkod29ya2luZyBjb3B5KQpAQCAtMjksNiArMjksNyBAQAogbmFtZXNwYWNl
IFdlYkNvcmUgewogCiBjbGFzcyBIVE1MSW1hZ2VMb2FkZXI7CitjbGFzcyBIVE1MVmlkZW9FbGVt
ZW50OwogY2xhc3MgRnJhbWVMb2FkZXI7CiBjbGFzcyBJbWFnZTsKIGNsYXNzIE1vdXNlRXZlbnQ7
CkBAIC0xMjMsNiArMTI0LDcgQEAgcHJvdGVjdGVkOgogICAgIHZpcnR1YWwgUGFzc1JlZlB0cjxS
ZW5kZXJTdHlsZT4gY3VzdG9tU3R5bGVGb3JSZW5kZXJlcigpIE9WRVJSSURFOwogCiAgICAgdmly
dHVhbCBib29sIGlzUmVzdGFydGVkUGx1Z2luKCkgY29uc3QgT1ZFUlJJREUgeyByZXR1cm4gbV9p
c1Jlc3RhcnRlZFBsdWdpbjsgfQorICAgIHZpcnR1YWwgYm9vbCByZXF1ZXN0T2JqZWN0KGNvbnN0
IFN0cmluZyYgdXJsLCBjb25zdCBTdHJpbmcmIG1pbWVUeXBlLCBjb25zdCBWZWN0b3I8U3RyaW5n
PiYgcGFyYW1OYW1lcywgY29uc3QgVmVjdG9yPFN0cmluZz4mIHBhcmFtVmFsdWVzKSBPVkVSUklE
RTsKIAogcHJpdmF0ZToKICAgICB2aXJ0dWFsIFJlbmRlckVsZW1lbnQqIGNyZWF0ZVJlbmRlcmVy
KFBhc3NSZWY8UmVuZGVyU3R5bGU+KSBPVkVSUklERTsKQEAgLTEzOCw4ICsxNDAsNiBAQCBwcml2
YXRlOgogICAgIHZpcnR1YWwgdm9pZCBkaXNwYXRjaFBlbmRpbmdNb3VzZUNsaWNrKCkgT1ZFUlJJ
REU7CiAgICAgdm9pZCBzaW11bGF0ZWRNb3VzZUNsaWNrVGltZXJGaXJlZChEZWZlcnJhYmxlT25l
U2hvdFRpbWVyPEhUTUxQbHVnSW5JbWFnZUVsZW1lbnQ+Kik7CiAKLSAgICB2b2lkIHN3YXBSZW5k
ZXJlclRpbWVyRmlyZWQoVGltZXI8SFRNTFBsdWdJbkltYWdlRWxlbWVudD4qKTsKLQogICAgIHZv
aWQgcmVzdGFydFNpbWlsYXJQbHVnSW5zKCk7CiAKICAgICB2aXJ0dWFsIGJvb2wgaXNQbHVnSW5J
bWFnZUVsZW1lbnQoKSBjb25zdCBPVkVSUklERSB7IHJldHVybiB0cnVlOyB9CkBAIC0xNTQsNyAr
MTU0LDYgQEAgcHJpdmF0ZToKICAgICBSZWZQdHI8UmVuZGVyU3R5bGU+IG1fY3VzdG9tU3R5bGVG
b3JQYWdlQ2FjaGU7CiAgICAgUmVmUHRyPE1vdXNlRXZlbnQ+IG1fcGVuZGluZ0NsaWNrRXZlbnRG
cm9tU25hcHNob3Q7CiAgICAgRGVmZXJyYWJsZU9uZVNob3RUaW1lcjxIVE1MUGx1Z0luSW1hZ2VF
bGVtZW50PiBtX3NpbXVsYXRlZE1vdXNlQ2xpY2tUaW1lcjsKLSAgICBUaW1lcjxIVE1MUGx1Z0lu
SW1hZ2VFbGVtZW50PiBtX3N3YXBSZW5kZXJlclRpbWVyOwogICAgIFRpbWVyPEhUTUxQbHVnSW5J
bWFnZUVsZW1lbnQ+IG1fcmVtb3ZlU25hcHNob3RUaW1lcjsKICAgICBSZWZQdHI8SW1hZ2U+IG1f
c25hcHNob3RJbWFnZTsKICAgICBib29sIG1fY3JlYXRlZER1cmluZ1VzZXJHZXN0dXJlOwpJbmRl
eDogU291cmNlL1dlYkNvcmUvaHRtbC9IVE1MVmlkZW9FbGVtZW50LmgKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
U291cmNlL1dlYkNvcmUvaHRtbC9IVE1MVmlkZW9FbGVtZW50LmgJKHJldmlzaW9uIDE1OTgyMCkK
KysrIFNvdXJjZS9XZWJDb3JlL2h0bWwvSFRNTFZpZGVvRWxlbWVudC5oCSh3b3JraW5nIGNvcHkp
CkBAIC03MiwxMiArNzIsMTIgQEAgcHVibGljOgogICAgIGJvb2wgc2hvdWxkRGlzcGxheVBvc3Rl
ckltYWdlKCkgY29uc3QgeyByZXR1cm4gZGlzcGxheU1vZGUoKSA9PSBQb3N0ZXIgfHwgZGlzcGxh
eU1vZGUoKSA9PSBQb3N0ZXJXYWl0aW5nRm9yVmlkZW87IH0KIAogICAgIFVSTCBwb3N0ZXJJbWFn
ZVVSTCgpIGNvbnN0OworICAgIHZpcnR1YWwgUmVuZGVyRWxlbWVudCogY3JlYXRlUmVuZGVyZXIo
UGFzc1JlZjxSZW5kZXJTdHlsZT4pIE9WRVJSSURFOwogCiBwcml2YXRlOgogICAgIEhUTUxWaWRl
b0VsZW1lbnQoY29uc3QgUXVhbGlmaWVkTmFtZSYsIERvY3VtZW50JiwgYm9vbCk7CiAKICAgICB2
aXJ0dWFsIGJvb2wgcmVuZGVyZXJJc05lZWRlZChjb25zdCBSZW5kZXJTdHlsZSYpIE9WRVJSSURF
OwotICAgIHZpcnR1YWwgUmVuZGVyRWxlbWVudCogY3JlYXRlUmVuZGVyZXIoUGFzc1JlZjxSZW5k
ZXJTdHlsZT4pIE9WRVJSSURFOwogICAgIHZpcnR1YWwgdm9pZCBkaWRBdHRhY2hSZW5kZXJlcnMo
KSBPVkVSUklERTsKICAgICB2aXJ0dWFsIHZvaWQgcGFyc2VBdHRyaWJ1dGUoY29uc3QgUXVhbGlm
aWVkTmFtZSYsIGNvbnN0IEF0b21pY1N0cmluZyYpIE9WRVJSSURFOwogICAgIHZpcnR1YWwgYm9v
bCBpc1ByZXNlbnRhdGlvbkF0dHJpYnV0ZShjb25zdCBRdWFsaWZpZWROYW1lJikgY29uc3QgT1ZF
UlJJREU7CkluZGV4OiBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9NZWRpYVBsYXll
ci5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvTWVk
aWFQbGF5ZXIuY3BwCShyZXZpc2lvbiAxNTk4MjApCisrKyBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9ncmFwaGljcy9NZWRpYVBsYXllci5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTEyMjUsNiArMTIy
NSwxNCBAQCBzaXplX3QgTWVkaWFQbGF5ZXI6OmV4dHJhTWVtb3J5Q29zdCgpIGNvCiAgICAgcmV0
dXJuIG1fcHJpdmF0ZS0+ZXh0cmFNZW1vcnlDb3N0KCk7CiB9CiAKK3Vuc2lnbmVkIGxvbmcgbG9u
ZyBNZWRpYVBsYXllcjo6ZmlsZVNpemUoKSBjb25zdAoreworICAgIGlmICghbV9wcml2YXRlKQor
ICAgICAgICByZXR1cm4gMDsKKyAgICAKKyAgICByZXR1cm4gbV9wcml2YXRlLT5maWxlU2l6ZSgp
OworfQorCiB2b2lkIE1lZGlhUGxheWVyRmFjdG9yeVN1cHBvcnQ6OmNhbGxSZWdpc3Rlck1lZGlh
RW5naW5lKE1lZGlhRW5naW5lUmVnaXN0ZXIgcmVnaXN0ZXJNZWRpYUVuZ2luZSkKIHsKICAgICBy
ZWdpc3Rlck1lZGlhRW5naW5lKGFkZE1lZGlhRW5naW5lKTsKSW5kZXg6IFNvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2dyYXBoaWNzL01lZGlhUGxheWVyLmgKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvTWVkaWFQbGF5ZXIuaAkocmV2aXNpb24gMTU5ODIwKQor
KysgU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvTWVkaWFQbGF5ZXIuaAkod29ya2lu
ZyBjb3B5KQpAQCAtNTA4LDYgKzUwOCw4IEBAIHB1YmxpYzoKIAogICAgIHNpemVfdCBleHRyYU1l
bW9yeUNvc3QoKSBjb25zdDsKIAorICAgIHVuc2lnbmVkIGxvbmcgbG9uZyBmaWxlU2l6ZSgpIGNv
bnN0OworCiBwcml2YXRlOgogICAgIE1lZGlhUGxheWVyKE1lZGlhUGxheWVyQ2xpZW50Kik7CiAg
ICAgTWVkaWFQbGF5ZXJGYWN0b3J5KiBuZXh0QmVzdE1lZGlhRW5naW5lKE1lZGlhUGxheWVyRmFj
dG9yeSopIGNvbnN0OwpJbmRleDogU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvTWVk
aWFQbGF5ZXJQcml2YXRlLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
Z3JhcGhpY3MvTWVkaWFQbGF5ZXJQcml2YXRlLmgJKHJldmlzaW9uIDE1OTgyMCkKKysrIFNvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL01lZGlhUGxheWVyUHJpdmF0ZS5oCSh3b3JraW5n
IGNvcHkpCkBAIC0yMTMsNiArMjEzLDggQEAgcHVibGljOgogICAgIHZpcnR1YWwgU3RyaW5nIGxh
bmd1YWdlT2ZQcmltYXJ5QXVkaW9UcmFjaygpIGNvbnN0IHsgcmV0dXJuIGVtcHR5U3RyaW5nKCk7
IH0KIAogICAgIHZpcnR1YWwgc2l6ZV90IGV4dHJhTWVtb3J5Q29zdCgpIGNvbnN0IHsgcmV0dXJu
IDA7IH0KKyAgICAKKyAgICB2aXJ0dWFsIHVuc2lnbmVkIGxvbmcgbG9uZyBmaWxlU2l6ZSgpIGNv
bnN0IHsgcmV0dXJuIDA7IH0KIH07CiAKIH0KSW5kZXg6IFNvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2dyYXBoaWNzL2F2Zm91bmRhdGlvbi9NZWRpYVBsYXllclByaXZhdGVBVkZvdW5kYXRpb24uY3Bw
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2F2Zm91bmRh
dGlvbi9NZWRpYVBsYXllclByaXZhdGVBVkZvdW5kYXRpb24uY3BwCShyZXZpc2lvbiAxNTk4MjAp
CisrKyBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9hdmZvdW5kYXRpb24vTWVkaWFQ
bGF5ZXJQcml2YXRlQVZGb3VuZGF0aW9uLmNwcAkod29ya2luZyBjb3B5KQpAQCAtOTIxLDcgKzky
MSw4IEBAIHNpemVfdCBNZWRpYVBsYXllclByaXZhdGVBVkZvdW5kYXRpb246OmUKICAgICBpZiAo
IWR1cmF0aW9uKQogICAgICAgICByZXR1cm4gMDsKIAotICAgIHJldHVybiB0b3RhbEJ5dGVzKCkg
KiBidWZmZXJlZCgpLT50b3RhbER1cmF0aW9uKCkgLyBkdXJhdGlvbjsKKyAgICB1bnNpZ25lZCBs
b25nIGxvbmcgZXh0cmEgPSB0b3RhbEJ5dGVzKCkgKiBidWZmZXJlZCgpLT50b3RhbER1cmF0aW9u
KCkgLyBkdXJhdGlvbjsKKyAgICByZXR1cm4gc3RhdGljX2Nhc3Q8dW5zaWduZWQ+KGV4dHJhKTsK
IH0KIAogdm9pZCBNZWRpYVBsYXllclByaXZhdGVBVkZvdW5kYXRpb246OmNsZWFyVGV4dFRyYWNr
cygpCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9hdmZvdW5kYXRpb24v
TWVkaWFQbGF5ZXJQcml2YXRlQVZGb3VuZGF0aW9uLmgKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvYXZmb3VuZGF0aW9uL01lZGlhUGxheWVyUHJpdmF0ZUFW
Rm91bmRhdGlvbi5oCShyZXZpc2lvbiAxNTk4MjApCisrKyBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9ncmFwaGljcy9hdmZvdW5kYXRpb24vTWVkaWFQbGF5ZXJQcml2YXRlQVZGb3VuZGF0aW9uLmgJ
KHdvcmtpbmcgY29weSkKQEAgLTE5MCw2ICsxOTAsNyBAQCBwcm90ZWN0ZWQ6CiAKICAgICB2aXJ0
dWFsIGJvb2wgc3VwcG9ydHNGdWxsc2NyZWVuKCkgY29uc3Q7CiAgICAgdmlydHVhbCBib29sIHN1
cHBvcnRzU2Nhbm5pbmcoKSBjb25zdCB7IHJldHVybiB0cnVlOyB9CisgICAgdW5zaWduZWQgbG9u
ZyBsb25nIGZpbGVTaXplKCkgY29uc3QgeyByZXR1cm4gdG90YWxCeXRlcygpOyB9CiAKICAgICAv
LyBSZXF1aXJlZCBpbnRlcmZhY2VzIGZvciBjb25jcmV0ZSBkZXJpdmVkIGNsYXNzZXMuCiAgICAg
dmlydHVhbCB2b2lkIGNyZWF0ZUFWQXNzZXRGb3JVUkwoY29uc3QgU3RyaW5nJikgPSAwOwpAQCAt
MjI1LDcgKzIyNiw3IEBAIHByb3RlY3RlZDoKICAgICB2aXJ0dWFsIHZvaWQgdXBkYXRlUmF0ZSgp
ID0gMDsKICAgICB2aXJ0dWFsIGZsb2F0IHJhdGUoKSBjb25zdCA9IDA7CiAgICAgdmlydHVhbCB2
b2lkIHNlZWtUb1RpbWUoZG91YmxlIHRpbWUsIGRvdWJsZSBuZWdhdGl2ZVRvbGVyYW5jZSwgZG91
YmxlIHBvc2l0aXZlVG9sZXJhbmNlKSA9IDA7Ci0gICAgdmlydHVhbCB1bnNpZ25lZCB0b3RhbEJ5
dGVzKCkgY29uc3QgPSAwOworICAgIHZpcnR1YWwgdW5zaWduZWQgbG9uZyBsb25nIHRvdGFsQnl0
ZXMoKSBjb25zdCA9IDA7CiAgICAgdmlydHVhbCBQYXNzUmVmUHRyPFRpbWVSYW5nZXM+IHBsYXRm
b3JtQnVmZmVyZWRUaW1lUmFuZ2VzKCkgY29uc3QgPSAwOwogICAgIHZpcnR1YWwgZG91YmxlIHBs
YXRmb3JtTWF4VGltZVNlZWthYmxlKCkgY29uc3QgPSAwOwogICAgIHZpcnR1YWwgZG91YmxlIHBs
YXRmb3JtTWluVGltZVNlZWthYmxlKCkgY29uc3QgPSAwOwpJbmRleDogU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vZ3JhcGhpY3MvYXZmb3VuZGF0aW9uL2NmL01lZGlhUGxheWVyUHJpdmF0ZUFWRm91
bmRhdGlvbkNGLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFw
aGljcy9hdmZvdW5kYXRpb24vY2YvTWVkaWFQbGF5ZXJQcml2YXRlQVZGb3VuZGF0aW9uQ0YuY3Bw
CShyZXZpc2lvbiAxNTk4MjApCisrKyBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9h
dmZvdW5kYXRpb24vY2YvTWVkaWFQbGF5ZXJQcml2YXRlQVZGb3VuZGF0aW9uQ0YuY3BwCSh3b3Jr
aW5nIGNvcHkpCkBAIC03MjEsNyArNzIxLDcgQEAgZmxvYXQgTWVkaWFQbGF5ZXJQcml2YXRlQVZG
b3VuZGF0aW9uQ0Y6OgogICAgIHJldHVybiBtYXhUaW1lTG9hZGVkOyAgIAogfQogCi11bnNpZ25l
ZCBNZWRpYVBsYXllclByaXZhdGVBVkZvdW5kYXRpb25DRjo6dG90YWxCeXRlcygpIGNvbnN0Cit1
bnNpZ25lZCBsb25nIGxvbmcgTWVkaWFQbGF5ZXJQcml2YXRlQVZGb3VuZGF0aW9uQ0Y6OnRvdGFs
Qnl0ZXMoKSBjb25zdAogewogICAgIGlmICghbWV0YURhdGFBdmFpbGFibGUoKSB8fCAhYXZBc3Nl
dChtX2F2ZldyYXBwZXIpKQogICAgICAgICByZXR1cm4gMDsKQEAgLTczNCw4ICs3MzQsNyBAQCB1
bnNpZ25lZCBNZWRpYVBsYXllclByaXZhdGVBVkZvdW5kYXRpb25DCiAgICAgICAgIHRvdGFsTWVk
aWFTaXplICs9IEFWQ0ZBc3NldFRyYWNrR2V0VG90YWxTYW1wbGVEYXRhTGVuZ3RoKGFzc2V0VHJh
Y2spOwogICAgIH0KIAotICAgIC8vIEZJWE1FOiBJdCBkb2Vzbid0IHNlZW0gc2FmZSB0byBjYXN0
IGFuIGludDY0X3QgdG8gdW5zaWduZWQuCi0gICAgcmV0dXJuIHN0YXRpY19jYXN0PHVuc2lnbmVk
Pih0b3RhbE1lZGlhU2l6ZSk7CisgICAgcmV0dXJuIHN0YXRpY19jYXN0PHVuc2lnbmVkIGxvbmcg
bG9uZz4odG90YWxNZWRpYVNpemUpOwogfQogCiBNZWRpYVBsYXllclByaXZhdGVBVkZvdW5kYXRp
b246OkFzc2V0U3RhdHVzIE1lZGlhUGxheWVyUHJpdmF0ZUFWRm91bmRhdGlvbkNGOjphc3NldFN0
YXR1cygpIGNvbnN0CkluZGV4OiBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9hdmZv
dW5kYXRpb24vY2YvTWVkaWFQbGF5ZXJQcml2YXRlQVZGb3VuZGF0aW9uQ0YuaAo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci0tLSBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9hdmZvdW5kYXRpb24vY2YvTWVk
aWFQbGF5ZXJQcml2YXRlQVZGb3VuZGF0aW9uQ0YuaAkocmV2aXNpb24gMTU5ODIwKQorKysgU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvYXZmb3VuZGF0aW9uL2NmL01lZGlhUGxheWVy
UHJpdmF0ZUFWRm91bmRhdGlvbkNGLmgJKHdvcmtpbmcgY29weSkKQEAgLTc3LDcgKzc3LDcgQEAg
cHJpdmF0ZToKICAgICB2aXJ0dWFsIHZvaWQgdXBkYXRlUmF0ZSgpOwogICAgIHZpcnR1YWwgZmxv
YXQgcmF0ZSgpIGNvbnN0OwogICAgIHZpcnR1YWwgdm9pZCBzZWVrVG9UaW1lKGRvdWJsZSB0aW1l
LCBkb3VibGUgbmVnYXRpdmVUb2xlcmFuY2UsIGRvdWJsZSBwb3NpdGl2ZVRvbGVyYW5jZSk7Ci0g
ICAgdmlydHVhbCB1bnNpZ25lZCB0b3RhbEJ5dGVzKCkgY29uc3Q7CisgICAgdmlydHVhbCB1bnNp
Z25lZCBsb25nIGxvbmcgdG90YWxCeXRlcygpIGNvbnN0OwogICAgIHZpcnR1YWwgUGFzc1JlZlB0
cjxUaW1lUmFuZ2VzPiBwbGF0Zm9ybUJ1ZmZlcmVkVGltZVJhbmdlcygpIGNvbnN0OwogICAgIHZp
cnR1YWwgZG91YmxlIHBsYXRmb3JtTWluVGltZVNlZWthYmxlKCkgY29uc3Q7CiAgICAgdmlydHVh
bCBkb3VibGUgcGxhdGZvcm1NYXhUaW1lU2Vla2FibGUoKSBjb25zdDsKSW5kZXg6IFNvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2F2Zm91bmRhdGlvbi9vYmpjL01lZGlhUGxheWVyUHJp
dmF0ZUFWRm91bmRhdGlvbk9iakMuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9ncmFwaGljcy9hdmZvdW5kYXRpb24vb2JqYy9NZWRpYVBsYXllclByaXZhdGVBVkZvdW5k
YXRpb25PYmpDLmgJKHJldmlzaW9uIDE1OTgyMCkKKysrIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2dyYXBoaWNzL2F2Zm91bmRhdGlvbi9vYmpjL01lZGlhUGxheWVyUHJpdmF0ZUFWRm91bmRhdGlv
bk9iakMuaAkod29ya2luZyBjb3B5KQpAQCAtMTQ4LDcgKzE0OCw3IEBAIHByaXZhdGU6CiAgICAg
dmlydHVhbCB2b2lkIHVwZGF0ZVJhdGUoKTsKICAgICB2aXJ0dWFsIGZsb2F0IHJhdGUoKSBjb25z
dDsKICAgICB2aXJ0dWFsIHZvaWQgc2Vla1RvVGltZShkb3VibGUgdGltZSwgZG91YmxlIG5lZ2F0
aXZlVG9sZXJhbmNlLCBkb3VibGUgcG9zaXRpdmVUb2xlcmFuY2UpOwotICAgIHZpcnR1YWwgdW5z
aWduZWQgdG90YWxCeXRlcygpIGNvbnN0OworICAgIHZpcnR1YWwgdW5zaWduZWQgbG9uZyBsb25n
IHRvdGFsQnl0ZXMoKSBjb25zdDsKICAgICB2aXJ0dWFsIFBhc3NSZWZQdHI8VGltZVJhbmdlcz4g
cGxhdGZvcm1CdWZmZXJlZFRpbWVSYW5nZXMoKSBjb25zdDsKICAgICB2aXJ0dWFsIGRvdWJsZSBw
bGF0Zm9ybU1pblRpbWVTZWVrYWJsZSgpIGNvbnN0OwogICAgIHZpcnR1YWwgZG91YmxlIHBsYXRm
b3JtTWF4VGltZVNlZWthYmxlKCkgY29uc3Q7CkluZGV4OiBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9ncmFwaGljcy9hdmZvdW5kYXRpb24vb2JqYy9NZWRpYVBsYXllclByaXZhdGVBVkZvdW5kYXRp
b25PYmpDLm1tCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNz
L2F2Zm91bmRhdGlvbi9vYmpjL01lZGlhUGxheWVyUHJpdmF0ZUFWRm91bmRhdGlvbk9iakMubW0J
KHJldmlzaW9uIDE1OTgyMCkKKysrIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2F2
Zm91bmRhdGlvbi9vYmpjL01lZGlhUGxheWVyUHJpdmF0ZUFWRm91bmRhdGlvbk9iakMubW0JKHdv
cmtpbmcgY29weSkKQEAgLTgwMyw3ICs4MDMsNyBAQCBmbG9hdCBNZWRpYVBsYXllclByaXZhdGVB
VkZvdW5kYXRpb25PYmpDCiAgICAgcmV0dXJuIG1heFRpbWVMb2FkZWQ7ICAgCiB9CiAKLXVuc2ln
bmVkIE1lZGlhUGxheWVyUHJpdmF0ZUFWRm91bmRhdGlvbk9iakM6OnRvdGFsQnl0ZXMoKSBjb25z
dAordW5zaWduZWQgbG9uZyBsb25nIE1lZGlhUGxheWVyUHJpdmF0ZUFWRm91bmRhdGlvbk9iakM6
OnRvdGFsQnl0ZXMoKSBjb25zdAogewogICAgIGlmICghbWV0YURhdGFBdmFpbGFibGUoKSkKICAg
ICAgICAgcmV0dXJuIDA7CkBAIC04MTIsNyArODEyLDcgQEAgdW5zaWduZWQgTWVkaWFQbGF5ZXJQ
cml2YXRlQVZGb3VuZGF0aW9uTwogICAgIGZvciAoQVZQbGF5ZXJJdGVtVHJhY2sgKnRoaXNUcmFj
ayBpbiBtX2NhY2hlZFRyYWNrcy5nZXQoKSkKICAgICAgICAgdG90YWxNZWRpYVNpemUgKz0gW1t0
aGlzVHJhY2sgYXNzZXRUcmFja10gdG90YWxTYW1wbGVEYXRhTGVuZ3RoXTsKIAotICAgIHJldHVy
biBzdGF0aWNfY2FzdDx1bnNpZ25lZD4odG90YWxNZWRpYVNpemUpOworICAgIHJldHVybiB0b3Rh
bE1lZGlhU2l6ZTsKIH0KIAogdm9pZCBNZWRpYVBsYXllclByaXZhdGVBVkZvdW5kYXRpb25PYmpD
OjpzZXRBc3NldChpZCBhc3NldCkKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJu
YWxTZXR0aW5ncy5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRl
cm5hbFNldHRpbmdzLmNwcAkocmV2aXNpb24gMTU5ODIwKQorKysgU291cmNlL1dlYkNvcmUvdGVz
dGluZy9JbnRlcm5hbFNldHRpbmdzLmNwcAkod29ya2luZyBjb3B5KQpAQCAtOTQsNiArOTQsNyBA
QCBJbnRlcm5hbFNldHRpbmdzOjpCYWNrdXA6OkJhY2t1cChTZXR0aW5nCiAgICAgLCBtX29yaWdp
bmFsVGltZVdpdGhvdXRNb3VzZU1vdmVtZW50QmVmb3JlSGlkaW5nQ29udHJvbHMoc2V0dGluZ3Mu
dGltZVdpdGhvdXRNb3VzZU1vdmVtZW50QmVmb3JlSGlkaW5nQ29udHJvbHMoKSkKICAgICAsIG1f
dXNlTGVnYWN5QmFja2dyb3VuZFNpemVTaG9ydGhhbmRCZWhhdmlvcihzZXR0aW5ncy51c2VMZWdh
Y3lCYWNrZ3JvdW5kU2l6ZVNob3J0aGFuZEJlaGF2aW9yKCkpCiAgICAgLCBtX2F1dG9zY3JvbGxG
b3JEcmFnQW5kRHJvcEVuYWJsZWQoc2V0dGluZ3MuYXV0b3Njcm9sbEZvckRyYWdBbmREcm9wRW5h
YmxlZCgpKQorICAgICwgbV9wbHVnaW5SZXBsYWNlbWVudEVuYWJsZWQoUnVudGltZUVuYWJsZWRG
ZWF0dXJlczo6c2hhcmVkRmVhdHVyZXMoKS5wbHVnaW5SZXBsYWNlbWVudEVuYWJsZWQoKSkKIHsK
IH0KIApAQCAtMTU2LDYgKzE1Nyw3IEBAIHZvaWQgSW50ZXJuYWxTZXR0aW5nczo6QmFja3VwOjpy
ZXN0b3JlVG8KICAgICBzZXR0aW5ncy5zZXRUaW1lV2l0aG91dE1vdXNlTW92ZW1lbnRCZWZvcmVI
aWRpbmdDb250cm9scyhtX29yaWdpbmFsVGltZVdpdGhvdXRNb3VzZU1vdmVtZW50QmVmb3JlSGlk
aW5nQ29udHJvbHMpOwogICAgIHNldHRpbmdzLnNldFVzZUxlZ2FjeUJhY2tncm91bmRTaXplU2hv
cnRoYW5kQmVoYXZpb3IobV91c2VMZWdhY3lCYWNrZ3JvdW5kU2l6ZVNob3J0aGFuZEJlaGF2aW9y
KTsKICAgICBzZXR0aW5ncy5zZXRBdXRvc2Nyb2xsRm9yRHJhZ0FuZERyb3BFbmFibGVkKG1fYXV0
b3Njcm9sbEZvckRyYWdBbmREcm9wRW5hYmxlZCk7CisgICAgUnVudGltZUVuYWJsZWRGZWF0dXJl
czo6c2hhcmVkRmVhdHVyZXMoKS5zZXRQbHVnaW5SZXBsYWNlbWVudEVuYWJsZWQobV9wbHVnaW5S
ZXBsYWNlbWVudEVuYWJsZWQpOwogfQogCiAvLyBXZSBjYW4ndCB1c2UgUmVmQ291bnRlZFN1cHBs
ZW1lbnQgYmVjYXVzZSB0aGF0IHdvdWxkIHRyeSB0byBtYWtlIEludGVybmFsU2V0dGluZ3MgUmVm
Q291bnRlZApAQCAtNTI4LDQgKzUzMCw5IEBAIHZvaWQgSW50ZXJuYWxTZXR0aW5nczo6c2V0Rm9u
dEZhbGxiYWNrUHIKICAgICBzZXR0aW5ncygpLT5zZXRGb250RmFsbGJhY2tQcmVmZXJzUGljdG9n
cmFwaHMocHJlZmVyUGljdG9ncmFwaHMpOwogfQogCit2b2lkIEludGVybmFsU2V0dGluZ3M6OnNl
dFBsdWdpblJlcGxhY2VtZW50RW5hYmxlZChib29sIGVuYWJsZWQpCit7CisgICAgUnVudGltZUVu
YWJsZWRGZWF0dXJlczo6c2hhcmVkRmVhdHVyZXMoKS5zZXRQbHVnaW5SZXBsYWNlbWVudEVuYWJs
ZWQoZW5hYmxlZCk7Cit9CisKIH0KSW5kZXg6IFNvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJu
YWxTZXR0aW5ncy5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL3Rlc3RpbmcvSW50ZXJu
YWxTZXR0aW5ncy5oCShyZXZpc2lvbiAxNTk4MjApCisrKyBTb3VyY2UvV2ViQ29yZS90ZXN0aW5n
L0ludGVybmFsU2V0dGluZ3MuaAkod29ya2luZyBjb3B5KQpAQCAtOTEsNiArOTEsNyBAQCBwdWJs
aWM6CiAgICAgICAgIGJvb2wgbV9vcmlnaW5hbFRpbWVXaXRob3V0TW91c2VNb3ZlbWVudEJlZm9y
ZUhpZGluZ0NvbnRyb2xzOwogICAgICAgICBib29sIG1fdXNlTGVnYWN5QmFja2dyb3VuZFNpemVT
aG9ydGhhbmRCZWhhdmlvcjsKICAgICAgICAgYm9vbCBtX2F1dG9zY3JvbGxGb3JEcmFnQW5kRHJv
cEVuYWJsZWQ7CisgICAgICAgIGJvb2wgbV9wbHVnaW5SZXBsYWNlbWVudEVuYWJsZWQ7CiAgICAg
fTsKIAogICAgIHN0YXRpYyBQYXNzUmVmUHRyPEludGVybmFsU2V0dGluZ3M+IGNyZWF0ZShQYWdl
KiBwYWdlKQpAQCAtMTM2LDYgKzEzNyw3IEBAIHB1YmxpYzoKICAgICB2b2lkIHNldFVzZUxlZ2Fj
eUJhY2tncm91bmRTaXplU2hvcnRoYW5kQmVoYXZpb3IoYm9vbCBlbmFibGVkLCBFeGNlcHRpb25D
b2RlJik7CiAgICAgdm9pZCBzZXRBdXRvc2Nyb2xsRm9yRHJhZ0FuZERyb3BFbmFibGVkKGJvb2wg
ZW5hYmxlZCwgRXhjZXB0aW9uQ29kZSYpOwogICAgIHZvaWQgc2V0Rm9udEZhbGxiYWNrUHJlZmVy
c1BpY3RvZ3JhcGhzKGJvb2wgcHJlZmVyUGljdG9ncmFwaHMsIEV4Y2VwdGlvbkNvZGUmKTsKKyAg
ICB2b2lkIHNldFBsdWdpblJlcGxhY2VtZW50RW5hYmxlZChib29sKTsKIAogcHJpdmF0ZToKICAg
ICBleHBsaWNpdCBJbnRlcm5hbFNldHRpbmdzKFBhZ2UqKTsKSW5kZXg6IFNvdXJjZS9XZWJDb3Jl
L3Rlc3RpbmcvSW50ZXJuYWxTZXR0aW5ncy5pZGwKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNv
cmUvdGVzdGluZy9JbnRlcm5hbFNldHRpbmdzLmlkbAkocmV2aXNpb24gMTU5ODIwKQorKysgU291
cmNlL1dlYkNvcmUvdGVzdGluZy9JbnRlcm5hbFNldHRpbmdzLmlkbAkod29ya2luZyBjb3B5KQpA
QCAtNjAsNCArNjAsNSBAQAogICAgIFtSYWlzZXNFeGNlcHRpb25dIHZvaWQgc2V0VXNlTGVnYWN5
QmFja2dyb3VuZFNpemVTaG9ydGhhbmRCZWhhdmlvcihib29sZWFuIGVuYWJsZWQpOwogICAgIFtS
YWlzZXNFeGNlcHRpb25dIHZvaWQgc2V0QXV0b3Njcm9sbEZvckRyYWdBbmREcm9wRW5hYmxlZChi
b29sZWFuIGVuYWJsZWQpOwogICAgIFtSYWlzZXNFeGNlcHRpb25dIHZvaWQgc2V0Rm9udEZhbGxi
YWNrUHJlZmVyc1BpY3RvZ3JhcGhzKGJvb2xlYW4gcHJlZmVyUGljdG9ncmFwaHMpOworICAgIHZv
aWQgc2V0UGx1Z2luUmVwbGFjZW1lbnRFbmFibGVkKGJvb2xlYW4gZW5hYmxlZCk7CiB9OwpJbmRl
eDogTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL0NoYW5n
ZUxvZwkocmV2aXNpb24gMTU5ODIwKQorKysgTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCSh3b3JraW5n
IGNvcHkpCkBAIC0xLDMgKzEsMTggQEAKKzIwMTMtMTEtMjcgIEVyaWMgQ2FybHNvbiAgPGVyaWMu
Y2FybHNvbkBhcHBsZS5jb20+CisKKyAgICAgICAgQWxsb3cgdGhlIFF1aWNrVGltZSBwbHVnLWlu
IHRvIGJlIHJlcGxhY2VkIGJ5IHNjcmlwdCBpbiBhbiBpc29sYXRlZCB3b3JkCisgICAgICAgIGh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMjQ5MDAKKworICAgICAgICBS
ZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIHBsYXRmb3JtL2VmbC9UZXN0
RXhwZWN0YXRpb25zOiBTa2lwIHRoZSBuZXcgdGVzdC4KKyAgICAgICAgKiBwbGF0Zm9ybS9ndGsv
VGVzdEV4cGVjdGF0aW9uczogRGl0dG8uCisgICAgICAgICogcGxhdGZvcm0vd2luY2Fpcm8vVGVz
dEV4cGVjdGF0aW9uczogRGl0dG8uCisgICAgICAgICogcGx1Z2lucy9xdWlja3RpbWUtcGx1Z2lu
LXJlcGxhY2VtZW50Lmh0bWw6IEFkZGVkLgorICAgICAgICAqIHBsdWdpbnMvcXVpY2t0aW1lLXBs
dWdpbi1yZXBsYWNlbWVudC1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIHBsdWdpbnMv
cmVzb3VyY2VzL29yYW5nZS5tb3Y6IFJlcGxhY2UgbW92aWUgY29tcHJlc3NlZCB3aXRoIGFuY2ll
bnQgYW5pbWF0ZWQgZ2lmIGNvZGVjIHdpdGgKKyAgICAgICAgICAgIG9uZSBjb21wcmVzc2VkIHdp
dGggSC4yNjQgY29kZWMuCisKIDIwMTMtMTEtMjcgIE1pY2hhxYIgUGFrdcWCYSB2ZWwgUnV0a2Eg
IDxtLnBha3VsYUBzYW1zdW5nLmNvbT4KIAogICAgICAgICBVbnJldmlld2VkIEVGTCBnYXJkZW5p
bmcKSW5kZXg6IExheW91dFRlc3RzL3BsYXRmb3JtL2VmbC9UZXN0RXhwZWN0YXRpb25zCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIExheW91dFRlc3RzL3BsYXRmb3JtL2VmbC9UZXN0RXhwZWN0YXRpb25zCShyZXZp
c2lvbiAxNTk4MjApCisrKyBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9lZmwvVGVzdEV4cGVjdGF0aW9u
cwkod29ya2luZyBjb3B5KQpAQCAtMTc1MSwzICsxNzUxLDYgQEAgd2Via2l0Lm9yZy9iLzEyNDY2
MyBtZWRpYS90cmFjay90cmFjay1sZQogd2Via2l0Lm9yZy9iLzEyNDg5MCBwbGF0Zm9ybS9lZmwv
YWNjZXNzaWJpbGl0eS9tZWRpYS1lbWl0cy1vYmplY3QtcmVwbGFjZW1lbnQuaHRtbCBbIEZhaWx1
cmUgXQogCiB3ZWJraXQub3JnL2IvMTI0ODk0IGFjY2Vzc2liaWxpdHkvZmllbGRzZXQtZWxlbWVu
dC5odG1sIFsgTWlzc2luZyBdCisKKyMgUXVpY2tUaW1lIHBsdWctaW4gbm90IHJlbGV2YW50IHRv
IHRoaXMgcG9ydAorcGx1Z2lucy9xdWlja3RpbWUtcGx1Z2luLXJlcGxhY2VtZW50Lmh0bWwgWyBT
a2lwIF0KSW5kZXg6IExheW91dFRlc3RzL3BsYXRmb3JtL2d0ay9UZXN0RXhwZWN0YXRpb25zCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIExheW91dFRlc3RzL3BsYXRmb3JtL2d0ay9UZXN0RXhwZWN0YXRpb25zCShy
ZXZpc2lvbiAxNTk4MjApCisrKyBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9ndGsvVGVzdEV4cGVjdGF0
aW9ucwkod29ya2luZyBjb3B5KQpAQCAtNTExLDYgKzUxMSw5IEBAIHdlYmtpdC5vcmcvYi8xMDcx
OTQgaHR0cC90ZXN0cy9zZWN1cml0eS8KICMgY3J5cHRvLnN1YnRsZSBpcyBub3QgeWV0IGVuYWJs
ZWQKIGNyeXB0by9zdWJ0bGUgWyBTa2lwIF0KIAorIyBRdWlja1RpbWUgcGx1Zy1pbiBub3QgcmVs
ZXZhbnQgdG8gdGhpcyBwb3J0CitwbHVnaW5zL3F1aWNrdGltZS1wbHVnaW4tcmVwbGFjZW1lbnQu
aHRtbCBbIFNraXAgXQorCiAjLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8v
Ly8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLwogIyBFbmQg
b2YgRXhwZWN0ZWQgZmFpbHVyZXMKICMvLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8v
Ly8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vCklu
ZGV4OiBMYXlvdXRUZXN0cy9wbGF0Zm9ybS93aW5jYWlyby9UZXN0RXhwZWN0YXRpb25zCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIExheW91dFRlc3RzL3BsYXRmb3JtL3dpbmNhaXJvL1Rlc3RFeHBlY3RhdGlvbnMJ
KHJldmlzaW9uIDE1OTgyMCkKKysrIExheW91dFRlc3RzL3BsYXRmb3JtL3dpbmNhaXJvL1Rlc3RF
eHBlY3RhdGlvbnMJKHdvcmtpbmcgY29weSkKQEAgLTI4NTMsMyArMjg1Myw2IEBAIGVkaXRpbmcv
c2VjdXJlLWlucHV0IFsgRmFpbHVyZSBdCiAKICMgY3J5cHRvLnN1YnRsZSBpcyBub3QgeWV0IGVu
YWJsZWQKIGNyeXB0by9zdWJ0bGUgWyBTa2lwIF0KKworIyBRdWlja1RpbWUgcGx1Zy1pbiBub3Qg
cmVsZXZhbnQgdG8gdGhpcyBwb3J0CitwbHVnaW5zL3F1aWNrdGltZS1wbHVnaW4tcmVwbGFjZW1l
bnQuaHRtbCBbIFNraXAgXQpJbmRleDogTGF5b3V0VGVzdHMvcGx1Z2lucy9xdWlja3RpbWUtcGx1
Z2luLXJlcGxhY2VtZW50LWV4cGVjdGVkLnR4dAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9w
bHVnaW5zL3F1aWNrdGltZS1wbHVnaW4tcmVwbGFjZW1lbnQtZXhwZWN0ZWQudHh0CShyZXZpc2lv
biAwKQorKysgTGF5b3V0VGVzdHMvcGx1Z2lucy9xdWlja3RpbWUtcGx1Z2luLXJlcGxhY2VtZW50
LWV4cGVjdGVkLnR4dAkod29ya2luZyBjb3B5KQpAQCAtMCwwICsxLDYzIEBACisKK0VWRU5UKHF0
X2JlZ2luKQorRVZFTlQocXRfdmFsaWRhdGVkKQorRVZFTlQocXRfY2FucGxheSkKK0VWRU5UKHF0
X2NhbnBsYXl0aHJvdWdoKQorCisqKiBUZXN0IHRvIG1ha2Ugc3VyZSA8dmlkZW8+IGVsZW1lbnQg
aXMgaW4gdGhlIHNoYWRvdyBET00uCitzaGFkb3dFbGVtZW50ID0gaW50ZXJuYWxzLnNoYWRvd1Jv
b3QoZW1iZWQpLmZpcnN0Q2hpbGQKK1BBU1Mgc2hhZG93RWxlbWVudC50YWdOYW1lIGlzICJWSURF
TyIKK1BBU1MgaW50ZXJuYWxzLnNoYWRvd1BzZXVkb0lkKHNoYWRvd0VsZW1lbnQpIGlzICItd2Vi
a2l0LXBsdWdpbi1yZXBsYWNlbWVudCIKKworKiogVGVzdCBmb3IgdGhlIHByZXNlbmNlIG9mIG92
ZXJyaWRkZW4gbWV0aG9kcy4KK1BBU1MgZW1iZWQuU2V0VVJMIGlzIGEgZnVuY3Rpb24uCitQQVNT
IGVtYmVkLkdldFVSTCBpcyBhIGZ1bmN0aW9uLgorUEFTUyBlbWJlZC5QbGF5IGlzIGEgZnVuY3Rp
b24uCitQQVNTIGVtYmVkLlN0b3AgaXMgYSBmdW5jdGlvbi4KK1BBU1MgZW1iZWQuR2V0UmF0ZSBp
cyBhIGZ1bmN0aW9uLgorUEFTUyBlbWJlZC5TZXRSYXRlIGlzIGEgZnVuY3Rpb24uCitQQVNTIGVt
YmVkLklzRnVsbFNjcmVlbiBpcyBhIGZ1bmN0aW9uLgorUEFTUyBlbWJlZC5FeGl0RnVsbFNjcmVl
biBpcyBhIGZ1bmN0aW9uLgorUEFTUyBlbWJlZC5HZXRQbHVnaW5TdGF0dXMgaXMgYSBmdW5jdGlv
bi4KK1BBU1MgZW1iZWQuR2V0VGltZSBpcyBhIGZ1bmN0aW9uLgorUEFTUyBlbWJlZC5TZXRUaW1l
IGlzIGEgZnVuY3Rpb24uCitQQVNTIGVtYmVkLlNlZWtUb0RhdGUgaXMgYSBmdW5jdGlvbi4KK1BB
U1MgZW1iZWQuR2V0RGF0ZSBpcyBhIGZ1bmN0aW9uLgorUEFTUyBlbWJlZC5HZXREdXJhdGlvbiBp
cyBhIGZ1bmN0aW9uLgorUEFTUyBlbWJlZC5HZXRUaW1lU2NhbGUgaXMgYSBmdW5jdGlvbi4KK1BB
U1MgZW1iZWQuR2V0TWF4VGltZUxvYWRlZCBpcyBhIGZ1bmN0aW9uLgorUEFTUyBlbWJlZC5HZXRN
YXhCeXRlc0xvYWRlZCBpcyBhIGZ1bmN0aW9uLgorUEFTUyBlbWJlZC5HZXRNb3ZpZVNpemUgaXMg
YSBmdW5jdGlvbi4KK1BBU1MgZW1iZWQuR2V0VGltZWRNZXRhZGF0YVVwZGF0ZXMgaXMgYSBmdW5j
dGlvbi4KK1BBU1MgZW1iZWQuR2V0QWNjZXNzTG9nIGlzIGEgZnVuY3Rpb24uCitQQVNTIGVtYmVk
LkdldEVycm9yTG9nIGlzIGEgZnVuY3Rpb24uCisKKyoqIFRlc3Qgb3ZlcnJpZGRlbiBtZXRob2Rz
LgorUEFTUyBlbWJlZC5HZXRVUkwoKS5pbmRleE9mKCdyZXNvdXJjZXMvb3JhbmdlLm1vdicpICE9
IC0xIGlzIHRydWUKK1BBU1MgZW1iZWQuR2V0RHVyYXRpb24oKSBpcyAzMDAwMDAKK1BBU1MgZW1i
ZWQuR2V0TW92aWVTaXplKCkgaXMgMjQ5NjIKK1BBU1MgZW1iZWQuR2V0TWF4VGltZUxvYWRlZCgp
IGlzIDMwMDAwMAorUEFTUyBlbWJlZC5HZXRNYXhCeXRlc0xvYWRlZCgpIGlzIDI0OTYyCitQQVNT
IGVtYmVkLkdldE1vdmllU2l6ZSgpIGlzIDI0OTYyCitQQVNTIGVtYmVkLkdldFBsdWdpblN0YXR1
cygpIGlzICJQbGF5YWJsZSIKK1BBU1MgbmV3IERhdGUoZW1iZWQuR2V0RGF0ZSgpKSAtIG5ldyBE
YXRlKCkgaXMgd2l0aGluIDEwMCBvZiAwCitlbWJlZC5TZXRUaW1lKGVtYmVkLkdldFRpbWVTY2Fs
ZSgpICogMikKKworUEFTUyBlbWJlZC5HZXRUaW1lKCkgaXMgNjAwMDAKK2VtYmVkLlBsYXkoKQor
CitFVkVOVChxdF9wbGF5KQorUEFTUyBlbWJlZC5HZXRSYXRlKCkgaXMgMQorZW1iZWQuU3RvcCgp
CisKK0VWRU5UKHF0X3BhdXNlKQorUEFTUyBlbWJlZC5HZXRSYXRlKCkgaXMgMAorCitlbWJlZC5T
ZXRVUkwoJycpCitFVkVOVChxdF9iZWdpbikKK0VWRU5UKHF0X2Vycm9yKQorUEFTUyBlbWJlZC5H
ZXRVUkwoKSBpcyAiIgorUEFTUyBlbWJlZC5HZXRQbHVnaW5TdGF0dXMoKSBpcyAiRXJyb3IiCisK
K0VORCBURVNULgorCkluZGV4OiBMYXlvdXRUZXN0cy9wbHVnaW5zL3F1aWNrdGltZS1wbHVnaW4t
cmVwbGFjZW1lbnQuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0cy9wbHVnaW5zL3F1aWNr
dGltZS1wbHVnaW4tcmVwbGFjZW1lbnQuaHRtbAkocmV2aXNpb24gMCkKKysrIExheW91dFRlc3Rz
L3BsdWdpbnMvcXVpY2t0aW1lLXBsdWdpbi1yZXBsYWNlbWVudC5odG1sCSh3b3JraW5nIGNvcHkp
CkBAIC0wLDAgKzEsMTI0IEBACis8IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorICAgIDxoZWFkPgor
ICAgICAgICA8c2NyaXB0IHNyYz0iLi4vcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3Njcmlw
dD4KKyAgICAgICAgPHNjcmlwdD4KKyAgICAgICAgICAgIHZhciBlbWJlZDsKKyAgICAgICAgICAg
IHZhciBzcmMgPSAicmVzb3VyY2VzL29yYW5nZS5tb3YiOworCisgICAgICAgICAgICBmdW5jdGlv
biBsb2dFdmVudChldmVudCkKKyAgICAgICAgICAgIHsKKyAgICAgICAgICAgICAgICBkZWJ1Zygi
PGk+RVZFTlQoIiArIGV2ZW50LnR5cGUgKyAiKTwvaT4iKTsKKyAgICAgICAgICAgIH0KKyAgICAg
ICAgICAgIAorICAgICAgICAgICAgZnVuY3Rpb24gc2Vla2VkKCkKKyAgICAgICAgICAgIHsKKyAg
ICAgICAgICAgICAgICBkZWJ1ZygiIik7CisgICAgICAgICAgICAgICAgc2hvdWxkRXZhbHVhdGVU
bygiZW1iZWQuR2V0VGltZSgpIiwgZW1iZWQuR2V0VGltZVNjYWxlKCkgKiAyKTsKKyAgICAgICAg
ICAgICAgICBldmFsQW5kTG9nKCJlbWJlZC5QbGF5KCkiKTsKKyAgICAgICAgICAgIH0KKworICAg
ICAgICAgICAgZnVuY3Rpb24gcGxheWluZyhldmVudCkKKyAgICAgICAgICAgIHsKKyAgICAgICAg
ICAgICAgICBkZWJ1ZygiIik7CisgICAgICAgICAgICAgICAgbG9nRXZlbnQoZXZlbnQpOworICAg
ICAgICAgICAgICAgIHNob3VsZEV2YWx1YXRlVG8oImVtYmVkLkdldFJhdGUoKSIsIDEpOworICAg
ICAgICAgICAgICAgIGV2YWxBbmRMb2coImVtYmVkLlN0b3AoKSIpOworICAgICAgICAgICAgfQor
ICAgICAgICAgICAgCisgICAgICAgICAgICBmdW5jdGlvbiBwYXVzZWQoZXZlbnQpCisgICAgICAg
ICAgICB7CisgICAgICAgICAgICAgICAgZGVidWcoIiIpOworICAgICAgICAgICAgICAgIGxvZ0V2
ZW50KGV2ZW50KQorICAgICAgICAgICAgICAgIHNob3VsZEV2YWx1YXRlVG8oImVtYmVkLkdldFJh
dGUoKSIsIDApOworCisgICAgICAgICAgICAgICAgZGVidWcoIiIpOworICAgICAgICAgICAgICAg
IGV2YWxBbmRMb2coImVtYmVkLlNldFVSTCgnJykiKTsKKyAgICAgICAgICAgIH0KKyAgICAgICAg
ICAgIAorICAgICAgICAgICAgZnVuY3Rpb24gZXJyb3IoZXZlbnQpCisgICAgICAgICAgICB7Cisg
ICAgICAgICAgICAgICAgbG9nRXZlbnQoZXZlbnQpCisgICAgICAgICAgICAgICAgc2hvdWxkQmVF
cXVhbFRvU3RyaW5nKCJlbWJlZC5HZXRVUkwoKSIsICIiKTsKKyAgICAgICAgICAgICAgICBzaG91
bGRCZUVxdWFsVG9TdHJpbmcoImVtYmVkLkdldFBsdWdpblN0YXR1cygpIiwgIkVycm9yIik7Cisg
ICAgICAgICAgICAgICAgZGVidWcoIjxicj5FTkQgVEVTVC4iKTsKKyAgICAgICAgICAgICAgICBp
ZiAod2luZG93LnRlc3RSdW5uZXIpCisgICAgICAgICAgICAgICAgICAgIHRlc3RSdW5uZXIubm90
aWZ5RG9uZSgpOworICAgICAgICAgICAgfQorICAgICAgICAgICAgCisgICAgICAgICAgICBmdW5j
dGlvbiB0ZXN0KGV2ZW50KQorICAgICAgICAgICAgeworICAgICAgICAgICAgICAgIGxvZ0V2ZW50
KGV2ZW50KQorCisgICAgICAgICAgICAgICAgaWYgKHdpbmRvdy5pbnRlcm5hbHMpIHsKKyAgICAg
ICAgICAgICAgICAgICAgZGVidWcoIjxicj4qKiBUZXN0IHRvIG1ha2Ugc3VyZSAmbHQ7dmlkZW8m
Z3Q7IGVsZW1lbnQgaXMgaW4gdGhlIHNoYWRvdyBET00uIik7CisgICAgICAgICAgICAgICAgICAg
IGV2YWxBbmRMb2coInNoYWRvd0VsZW1lbnQgPSBpbnRlcm5hbHMuc2hhZG93Um9vdChlbWJlZCku
Zmlyc3RDaGlsZCIpOworICAgICAgICAgICAgICAgICAgICBzaG91bGRCZUVxdWFsVG9TdHJpbmco
InNoYWRvd0VsZW1lbnQudGFnTmFtZSIsICJWSURFTyIpOworICAgICAgICAgICAgICAgICAgICBz
aG91bGRCZUVxdWFsVG9TdHJpbmcoImludGVybmFscy5zaGFkb3dQc2V1ZG9JZChzaGFkb3dFbGVt
ZW50KSIsICItd2Via2l0LXBsdWdpbi1yZXBsYWNlbWVudCIpOworICAgICAgICAgICAgICAgIH0g
ZWxzZSB7CisgICAgICAgICAgICAgICAgICAgIGRlYnVnKCIiKTsKKyAgICAgICAgICAgICAgICAg
ICAgdGVzdEZhaWxlZCgiVGhpcyB0ZXN0IG11c3QgYmUgcnVuIGluIERSVC4iKTsKKyAgICAgICAg
ICAgICAgICAgICAgZGVidWcoIiIpOworICAgICAgICAgICAgICAgIH0KKworICAgICAgICAgICAg
ICAgIGRlYnVnKCI8YnI+KiogVGVzdCBmb3IgdGhlIHByZXNlbmNlIG9mIG92ZXJyaWRkZW4gbWV0
aG9kcy4iKTsKKyAgICAgICAgICAgICAgICB2YXIgbWV0aG9kcyA9IFsgIlNldFVSTCIsICJHZXRV
UkwiLCAiUGxheSIsICJTdG9wIiwgIkdldFJhdGUiLCAiU2V0UmF0ZSIsICJJc0Z1bGxTY3JlZW4i
LCAKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIkV4aXRGdWxsU2NyZWVuIiwgIkdl
dFBsdWdpblN0YXR1cyIsICJHZXRUaW1lIiwgIlNldFRpbWUiLCAiU2Vla1RvRGF0ZSIsICJHZXRE
YXRlIiwgCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJHZXREdXJhdGlvbiIsICJH
ZXRUaW1lU2NhbGUiLCAiR2V0TWF4VGltZUxvYWRlZCIsICJHZXRNYXhCeXRlc0xvYWRlZCIsIAor
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiR2V0TW92aWVTaXplIiwgIkdldFRpbWVk
TWV0YWRhdGFVcGRhdGVzIiwgIkdldEFjY2Vzc0xvZyIsICJHZXRFcnJvckxvZyIKKyAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgIF07CisgICAgICAgICAgICAgICAgZm9yIChpID0gMDsgaSA8
IG1ldGhvZHMubGVuZ3RoOyArK2kpIHsKKyAgICAgICAgICAgICAgICAgICAgdmFyIHR5cGUgPSB0
eXBlb2YgZW1iZWRbbWV0aG9kc1tpXV07CisgICAgICAgICAgICAgICAgICAgIGlmICh0eXBlID09
ICJmdW5jdGlvbiIpCisgICAgICAgICAgICAgICAgICAgICAgICB0ZXN0UGFzc2VkKCJlbWJlZC4i
ICsgbWV0aG9kc1tpXSArICIgaXMgYSBmdW5jdGlvbi4iKTsKKyAgICAgICAgICAgICAgICAgICAg
ZWxzZQorICAgICAgICAgICAgICAgICAgICAgICAgdGVzdEZhaWxlZCgiZW1iZWQuIiArIG1ldGhv
ZHNbaV0gKyAiIHNob3VsZCBiZSBhIGZ1bmN0aW9uIGJ1dCBpcyBcIiIgKyB0eXBlICsgIlwiLiIp
OworICAgICAgICAgICAgICAgIH0KKworICAgICAgICAgICAgICAgIGRlYnVnKCI8YnI+KiogVGVz
dCBvdmVycmlkZGVuIG1ldGhvZHMuIik7CisgICAgICAgICAgICAgICAgc2hvdWxkQmVUcnVlKCJl
bWJlZC5HZXRVUkwoKS5pbmRleE9mKCciICsgc3JjICsgIicpICE9IC0xIik7CisgICAgICAgICAg
ICAgICAgc2hvdWxkRXZhbHVhdGVUbygiZW1iZWQuR2V0RHVyYXRpb24oKSIsIDMwMDAwMCk7Cisg
ICAgICAgICAgICAgICAgc2hvdWxkRXZhbHVhdGVUbygiZW1iZWQuR2V0TW92aWVTaXplKCkiLCAy
NDk2Mik7CisgICAgICAgICAgICAgICAgc2hvdWxkRXZhbHVhdGVUbygiZW1iZWQuR2V0TWF4VGlt
ZUxvYWRlZCgpIiwgMzAwMDAwKTsKKyAgICAgICAgICAgICAgICBzaG91bGRFdmFsdWF0ZVRvKCJl
bWJlZC5HZXRNYXhCeXRlc0xvYWRlZCgpIiwgMjQ5NjIpOworICAgICAgICAgICAgICAgIHNob3Vs
ZEV2YWx1YXRlVG8oImVtYmVkLkdldE1vdmllU2l6ZSgpIiwgMjQ5NjIpOworICAgICAgICAgICAg
ICAgIHNob3VsZEJlRXF1YWxUb1N0cmluZygiZW1iZWQuR2V0UGx1Z2luU3RhdHVzKCkiLCAiUGxh
eWFibGUiKTsKKyAgICAgICAgICAgICAgICAKKyAgICAgICAgICAgICAgICAvLyAiR2V0RGF0ZSgp
IiBzaG91bGQgcmV0dXJuIHRoZSBjdXJyZW50IGRhdGUsIGNsZWFyIHNlY29uZHMgYW5kIG1pbGxp
c2Vjb25kcyAKKyAgICAgICAgICAgICAgICB2YXIgbm93ID0gbmV3IERhdGUoKTsKKyAgICAgICAg
ICAgICAgICBzaG91bGRCZUNsb3NlVG8oIm5ldyBEYXRlKGVtYmVkLkdldERhdGUoKSkgLSBuZXcg
RGF0ZSgpIiwgMCwgMTAwKTsKKworICAgICAgICAgICAgICAgIGV2YWxBbmRMb2coImVtYmVkLlNl
dFRpbWUoZW1iZWQuR2V0VGltZVNjYWxlKCkgKiAyKSIpOworICAgICAgICAgICAgICAgIHNldFRp
bWVvdXQoc2Vla2VkLCA1MDApOworICAgICAgICAgICAgfQorICAgICAgICAgICAgCisgICAgICAg
ICAgICBmdW5jdGlvbiBzZXR1cCgpCisgICAgICAgICAgICB7CisgICAgICAgICAgICAgICAgaWYg
KHdpbmRvdy50ZXN0UnVubmVyKSB7CisgICAgICAgICAgICAgICAgICAgIHdpbmRvdy50ZXN0UnVu
bmVyLndhaXRVbnRpbERvbmUoKTsKKyAgICAgICAgICAgICAgICAgICAgd2luZG93LnRlc3RSdW5u
ZXIuZHVtcEFzVGV4dCgpCisgICAgICAgICAgICAgICAgICAgIHdpbmRvdy5pbnRlcm5hbHMuc2V0
dGluZ3Muc2V0UGx1Z2luUmVwbGFjZW1lbnRFbmFibGVkKHRydWUpOworICAgICAgICAgICAgICAg
IH0KKyAgICAgICAgICAgICAgICBkaXYgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicGFyZW50
Iik7CisgICAgICAgICAgICAgICAgZGl2LmlubmVySFRNTCA9ICc8ZW1iZWQgc3JjPSInICsgc3Jj
ICsgJyIgd2lkdGg9IjY0MCIgaGVpZ2h0PSI0ODAiIHBvc3Rkb21ldmVudHM9dHJ1ZT4nOworICAg
ICAgICAgICAgICAgIAorICAgICAgICAgICAgICAgIHZhciBldmVudHMgPSBbICJxdF9iZWdpbiIs
ICJxdF92YWxpZGF0ZWQiLCAicXRfZW50ZXJmdWxsc2NyZWVuIiwgInF0X2V4aXRmdWxsc2NyZWVu
IiwgCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJxdF9sb2FkZWRtZXRhZGEiLCAi
cXRfY2FucGxheSIsICJxdF9lbmRlZCIsICJxdF90aW1lZG1ldGFkYXRhdXBkYXRlZCIgCisgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBdOworICAgICAgICAgICAgICAgIGVtYmVkID0gZGl2
LmZpcnN0Q2hpbGQ7CisgICAgICAgICAgICAgICAgZm9yIChpID0gMDsgaSA8IGV2ZW50cy5sZW5n
dGg7ICsraSkKKyAgICAgICAgICAgICAgICAgICAgZW1iZWQuYWRkRXZlbnRMaXN0ZW5lcihldmVu
dHNbaV0sIGxvZ0V2ZW50LCB0cnVlKTsKKyAgICAgICAgICAgICAgICBlbWJlZC5hZGRFdmVudExp
c3RlbmVyKCJxdF9jYW5wbGF5dGhyb3VnaCIsIHRlc3QsIHRydWUpOworICAgICAgICAgICAgICAg
IGVtYmVkLmFkZEV2ZW50TGlzdGVuZXIoInF0X3BsYXkiLCBwbGF5aW5nLCB0cnVlKTsKKyAgICAg
ICAgICAgICAgICBlbWJlZC5hZGRFdmVudExpc3RlbmVyKCJxdF9wYXVzZSIsIHBhdXNlZCwgdHJ1
ZSk7CisgICAgICAgICAgICAgICAgZW1iZWQuYWRkRXZlbnRMaXN0ZW5lcigicXRfZXJyb3IiLCBl
cnJvciwgdHJ1ZSk7CisgICAgICAgICAgICB9CisgICAgICAgIDwvc2NyaXB0PgorICAgIDwvaGVh
ZD4KKworICAgIDxib2R5IG9ubG9hZD0ic2V0dXAoKSI+CisgICAgICAgIDxkaXYgaWQ9cGFyZW50
PjwvZGl2PgorICAgICAgICA8cD4KKyAgICAgICAgPGRpdiBpZD1jb25zb2xlPjwvZGl2PgorICAg
IDwvYm9keT4KKzwvaHRtbD4KSW5kZXg6IExheW91dFRlc3RzL3BsdWdpbnMvcmVzb3VyY2VzL29y
YW5nZS5tb3YKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQpDYW5ub3QgZGlzcGxheTogZmlsZSBtYXJrZWQgYXMgYSBiaW5h
cnkgdHlwZS4Kc3ZuOm1pbWUtdHlwZSA9IGFwcGxpY2F0aW9uL29jdGV0LXN0cmVhbQoKQUFBQUlH
WjBlWEJ4ZENBZ0lBVURBSEYwSUNBQUFBQUFBQUFBQUFBQUFBQUFBQTdUYlc5dmRnQUFBR3h0ZG1o
a0FBQUFBTTY1ZW1UTwp1WHBrQUFBQ1dBQUFGM0FBQVFBQUFRQUFBQUFBQUFBQUFBQUFBQUZLOXdB
QUFBQUFBQUFBQUFBQUFBQUJTcXNBQUFBQUFBQUFBQUFBCkFBQkFBQUFBQUFBQUFBQUFBQUFBQUFB
QUFBQUFBQUFBQUFBQUFBQUFBQUFBQWdBQUMvRjBjbUZyQUFBQVhIUnJhR1FBQUFBUHpybDUKV3M2
NWVtUUFBQUFCQUFBQUFBQUFGM0FBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUVBQUFBQUFBQUFBQUFB
QUFBQUFBQUJBQUFBQUFBQQpBQUFBQUFBQUFBQkFBQUFBQXFzQUFBSGdBQUFBQUFCRWRHRndkQUFB
QUJSamJHVm1BQUFBQUFLckFBQUI0QUFBQUFBQUZIQnliMllBCkFBQUFBcXNBQUFIZ0FBQUFBQUFV
Wlc1dlpnQUFBQUFDcXdBQUFlQUFBQUFBQUNSbFpIUnpBQUFBSEdWc2MzUUFBQUFBQUFBQUFRQUEK
RjNBQUFBQUFBQUVBQUFBQUN4bHRaR2xoQUFBQUlHMWthR1FBQUFBQXpybDZaTTY1ZW1RQUFBSllB
QUFYbUFBQUFBQUFBQUE2YUdScwpjZ0FBQUFCdGFHeHlkbWxrWldGd2NHd1FBQUFBQUFFQTVSbEJj
SEJzWlNCV2FXUmxieUJOWldScFlTQklZVzVrYkdWeUFBQUt0MjFwCmJtWUFBQUFVZG0xb1pBQUFB
QUVBUUlBQWdBQ0FBQUFBQURsb1pHeHlBQUFBQUdSb2JISmhiR2x6WVhCd2JCQUFBQUVBQVFEOUdF
RncKY0d4bElFRnNhV0Z6SUVSaGRHRWdTR0Z1Wkd4bGNnQUFBQ1JrYVc1bUFBQUFIR1J5WldZQUFB
QUFBQUFBQVFBQUFBeGhiR2x6QUFBQQpBUUFBQ2o1emRHSnNBQUFBcDNOMGMyUUFBQUFBQUFBQUFR
QUFBSmRoZG1NeEFBQUFBQUFBQUFFQUFRQUJZWEJ3YkFBQUJBQUFBQVFBCkFxc0I0QUJJQUFBQVNB
QUFBQUFBQUFBQkJVZ3VNalkwQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBR1Av
L0FBQUEKRW1OdmJISnVZMnhqQUFZQUFRQUdBQUFBSzJGMlkwTUJUVUFXL3dFQUZDZE5RQmFwR0JX
SHZmZ0RVR0FRWXdyWHZmQVFBUUFFS040Sgp5QUFBQUFBQUFBQVljM1IwY3dBQUFBQUFBQUFCQUFB
QWx3QUFBQ2dBQUFTWVkzUjBjd0FBQUFBQUFBQ1JBQUFBQVFBQUFBQUFBQUFCCkFBQUFLQUFBQUFI
Ly8vL1lBQUFBQVFBQUFDZ0FBQUFCLy8vLzJBQUFBQUVBQUFBb0FBQUFBZi8vLzlnQUFBQUJBQUFB
S0FBQUFBSC8KLy8vWUFBQUFBUUFBQUNnQUFBQUIvLy8vMkFBQUFBRUFBQUFvQUFBQUFmLy8vOWdB
QUFBQkFBQUFLQUFBQUFILy8vL1lBQUFBQVFBQQpBQ2dBQUFBQi8vLy8yQUFBQUFFQUFBQW9BQUFB
QWYvLy85Z0FBQUFCQUFBQUtBQUFBQUgvLy8vWUFBQUFBUUFBQUNnQUFBQUIvLy8vCjJBQUFBQUlB
QUFBQUFBQUFBUUFBQUNnQUFBQUIvLy8vMkFBQUFBRUFBQUFvQUFBQUFmLy8vOWdBQUFBQkFBQUFL
QUFBQUFILy8vL1kKQUFBQUFRQUFBQ2dBQUFBQi8vLy8yQUFBQUFFQUFBQW9BQUFBQWYvLy85Z0FB
QUFCQUFBQUtBQUFBQUgvLy8vWUFBQUFBUUFBQUNnQQpBQUFCLy8vLzJBQUFBQUVBQUFBb0FBQUFB
Zi8vLzlnQUFBQUJBQUFBS0FBQUFBSC8vLy9ZQUFBQUFRQUFBQ2dBQUFBQi8vLy8yQUFBCkFBRUFB
QUFvQUFBQUFmLy8vOWdBQUFBQ0FBQUFBQUFBQUFFQUFBQW9BQUFBQWYvLy85Z0FBQUFCQUFBQUtB
QUFBQUgvLy8vWUFBQUEKQVFBQUFDZ0FBQUFCLy8vLzJBQUFBQUVBQUFBb0FBQUFBZi8vLzlnQUFB
QUJBQUFBS0FBQUFBSC8vLy9ZQUFBQUFRQUFBQ2dBQUFBQgovLy8vMkFBQUFBRUFBQUFvQUFBQUFm
Ly8vOWdBQUFBQkFBQUFLQUFBQUFILy8vL1lBQUFBQVFBQUFDZ0FBQUFCLy8vLzJBQUFBQUVBCkFB
QW9BQUFBQWYvLy85Z0FBQUFCQUFBQUtBQUFBQUgvLy8vWUFBQUFBZ0FBQUFBQUFBQUJBQUFBS0FB
QUFBSC8vLy9ZQUFBQUFRQUEKQUNnQUFBQUIvLy8vMkFBQUFBRUFBQUFvQUFBQUFmLy8vOWdBQUFB
QkFBQUFLQUFBQUFILy8vL1lBQUFBQVFBQUFDZ0FBQUFCLy8vLwoyQUFBQUFFQUFBQW9BQUFBQWYv
Ly85Z0FBQUFCQUFBQUtBQUFBQUgvLy8vWUFBQUFBUUFBQUNnQUFBQUIvLy8vMkFBQUFBRUFBQUFv
CkFBQUFBZi8vLzlnQUFBQUJBQUFBS0FBQUFBSC8vLy9ZQUFBQUFRQUFBQ2dBQUFBQi8vLy8yQUFB
QUFJQUFBQUFBQUFBQVFBQUFDZ0EKQUFBQi8vLy8yQUFBQUFFQUFBQW9BQUFBQWYvLy85Z0FBQUFC
QUFBQUtBQUFBQUgvLy8vWUFBQUFBUUFBQUNnQUFBQUIvLy8vMkFBQQpBQUVBQUFBb0FBQUFBZi8v
LzlnQUFBQUJBQUFBS0FBQUFBSC8vLy9ZQUFBQUFRQUFBQ2dBQUFBQi8vLy8yQUFBQUFFQUFBQW9B
QUFBCkFmLy8vOWdBQUFBQkFBQUFLQUFBQUFILy8vL1lBQUFBQVFBQUFDZ0FBQUFCLy8vLzJBQUFB
QUVBQUFBb0FBQUFBZi8vLzlnQUFBQUMKQUFBQUFBQUFBQUVBQUFBb0FBQUFBZi8vLzlnQUFBQUJB
QUFBS0FBQUFBSC8vLy9ZQUFBQUFRQUFBQ2dBQUFBQi8vLy8yQUFBQUFFQQpBQUFvQUFBQUFmLy8v
OWdBQUFBQkFBQUFLQUFBQUFILy8vL1lBQUFBQVFBQUFDZ0FBQUFCLy8vLzJBQUFBQUVBQUFBb0FB
QUFBZi8vCi85Z0FBQUFCQUFBQUtBQUFBQUgvLy8vWUFBQUFBUUFBQUNnQUFBQUIvLy8vMkFBQUFB
RUFBQUFvQUFBQUFmLy8vOWdBQUFBQkFBQUEKS0FBQUFBSC8vLy9ZQUFBQUFnQUFBQUFBQUFBQkFB
QUFLQUFBQUFILy8vL1lBQUFBQVFBQUFDZ0FBQUFCLy8vLzJBQUFBQUVBQUFBbwpBQUFBQWYvLy85
Z0FBQUFnWTNOc1p3QUFBQUFBQUFBby8vLy8yQUFBQUNnQUFBQUFBQUFYbUFBQUFDeHpkSE56QUFB
QUFBQUFBQWNBCkFBQUJBQUFBR1FBQUFERUFBQUJKQUFBQVlRQUFBSGtBQUFDUkFBQUFvM05rZEhB
QUFBQUFBRUFJUUFoQUNFQUlRQWhBQ0VBSVFBaEEKQ0VBSVFBZ0lBRUFJUUFoQUNFQUlRQWhBQ0VB
SVFBaEFDRUFJUUFnSUFFQUlRQWhBQ0VBSVFBaEFDRUFJUUFoQUNFQUlRQWdJQUVBSQpRQWhBQ0VB
SVFBaEFDRUFJUUFoQUNFQUlRQWdJQUVBSVFBaEFDRUFJUUFoQUNFQUlRQWhBQ0VBSVFBZ0lBRUFJ
UUFoQUNFQUlRQWhBCkNFQUlRQWhBQ0VBSVFBZ0lBRUFJUUFoQUNBQUFBTVJ6ZEhOakFBQUFBQUFB
QUE4QUFBQUJBQUFBQkFBQUFBRUFBQUFHQUFBQUFRQUEKQUFFQUFBQUhBQUFBQkFBQUFBRUFBQUFN
QUFBQUFRQUFBQUVBQUFBTkFBQUFCQUFBQUFFQUFBQVNBQUFBQVFBQUFBRUFBQUFUQUFBQQpCQUFB
QUFFQUFBQVlBQUFBQVFBQUFBRUFBQUFaQUFBQUJBQUFBQUVBQUFBZUFBQUFBUUFBQUFFQUFBQWZB
QUFBQkFBQUFBRUFBQUFrCkFBQUFBUUFBQUFFQUFBQWxBQUFBQkFBQUFBRUFBQUFxQUFBQUFRQUFB
QUVBQUFBckFBQUFCQUFBQUFFQUFBSndjM1J6ZWdBQUFBQUEKQUFBQUFBQUFsd0FBQm1VQUFBQmZB
QUFBWGdBQUFGOEFBQUJlQUFBQVh3QUFBRjRBQUFCZkFBQUFYZ0FBQUY4QUFBQmVBQUFBWHdBQQpB
RjRBQUFCZkFBQUFYZ0FBQUY4QUFBQmVBQUFBWHdBQUFGNEFBQUJmQUFBQVhnQUFBRjhBQUFCZUFB
QUFYUUFBQmxVQUFBQmZBQUFBClhnQUFBRjhBQUFCZUFBQUFYd0FBQUY0QUFBQmZBQUFBWGdBQUFG
OEFBQUJlQUFBQVh3QUFBRjRBQUFCZkFBQUFYZ0FBQUY4QUFBQmUKQUFBQVh3QUFBRjRBQUFCZkFB
QUFYZ0FBQUY4QUFBQmVBQUFBWFFBQUJsVUFBQUJmQUFBQVhnQUFBRjhBQUFCZUFBQUFYd0FBQUY0
QQpBQUJmQUFBQVhnQUFBRjhBQUFCZUFBQUFYd0FBQUY0QUFBQmZBQUFBWGdBQUFGOEFBQUJlQUFB
QVh3QUFBRjRBQUFCZkFBQUFYZ0FBCkFGOEFBQUJlQUFBQVhRQUFCbFVBQUFCZkFBQUFYZ0FBQUY4
QUFBQmVBQUFBWHdBQUFGNEFBQUJmQUFBQVhnQUFBRjhBQUFCZUFBQUEKWHdBQUFGNEFBQUJmQUFB
QVhnQUFBRjhBQUFCZUFBQUFYd0FBQUY0QUFBQmZBQUFBWGdBQUFGOEFBQUJlQUFBQVhRQUFCbFVB
QUFCZgpBQUFBWGdBQUFGOEFBQUJlQUFBQVh3QUFBRjRBQUFCZkFBQUFYZ0FBQUY4QUFBQmVBQUFB
WHdBQUFGNEFBQUJmQUFBQVhnQUFBRjhBCkFBQmVBQUFBWHdBQUFGNEFBQUJmQUFBQVhnQUFBRjhB
QUFCZUFBQUFYUUFBQmxVQUFBQmZBQUFBWGdBQUFGOEFBQUJlQUFBQVh3QUEKQUY0QUFBQmZBQUFB
WGdBQUFGOEFBQUJlQUFBQVh3QUFBRjRBQUFCZkFBQUFYZ0FBQUY4QUFBQmVBQUFBWHdBQUFGNEFB
QUJmQUFBQQpYZ0FBQUY4QUFBQmVBQUFBWFFBQUJsVUFBQUJmQUFBQVhnQUFBRjhBQUFCZUFBQUFY
d0FBQUY0QUFBQzhjM1JqYndBQUFBQUFBQUFyCkFBQVBHd0FBRnB3QUFCZ1dBQUFaa0FBQUd3b0FB
QnlFQUFBYzRnQUFKRkVBQUNYTEFBQW5SUUFBS0w4QUFDbzVBQUFxbUFBQUxCSUEKQURPQkFBQTAr
d0FBTm5VQUFEZnZBQUE0VFFBQU9jY0FBRHRCQUFCQ3NBQUFSQ29BQUVXa0FBQkdBd0FBUjMwQUFF
ajNBQUJLYndBQQpVZUFBQUZOYUFBQlR1QUFBVlRJQUFGYXNBQUJZSmdBQVg1VUFBR0VQQUFCaGJn
QUFZdWdBQUdSaUFBQmwzQUFBWjFZQUFHN0ZBQUJ2Ckl3QUFBQXgxWkhSaEFBQUFBQUFBQWtSdFpY
UmhBQUFBSUdoa2JISUFBQUFBQUFBQUFHMWtkR0VBQUFBQUFBQUFBQUFBQUFBQUFBRTQKYTJWNWN3
QUFBQUFBQUFBR0FBQUFPbTFrZEdGamIyMHVZWEJ3YkdVdWNYVnBZMnQwYVcxbExuQnNZWGxsY2k1
dGIzWnBaUzUyYVhOMQpZV3d1WW5KcFoyaDBibVZ6Y3dBQUFEVnRaSFJoWTI5dExtRndjR3hsTG5G
MWFXTnJkR2x0WlM1d2JHRjVaWEl1Ylc5MmFXVXVkbWx6CmRXRnNMbU52Ykc5eUFBQUFORzFrZEdG
amIyMHVZWEJ3YkdVdWNYVnBZMnQwYVcxbExuQnNZWGxsY2k1dGIzWnBaUzUyYVhOMVlXd3UKZEds
dWRBQUFBRGh0WkhSaFkyOXRMbUZ3Y0d4bExuRjFhV05yZEdsdFpTNXdiR0Y1WlhJdWJXOTJhV1V1
ZG1semRXRnNMbU52Ym5SeQpZWE4wQUFBQUttMWtkR0ZqYjIwdVlYQndiR1V1Y1hWcFkydDBhVzFs
TG5Cc1lYbGxjaTUyWlhKemFXOXVBQUFBSTIxa2RHRmpiMjB1CllYQndiR1V1Y1hWcFkydDBhVzFs
TG5abGNuTnBiMjRBQUFEa2FXeHpkQUFBQUJ3QUFBQUJBQUFBRkdSaGRHRUFBQUFYQUFBQUFBQUEK
QUFBQUFBQWNBQUFBQWdBQUFCUmtZWFJoQUFBQUZ3QUFBQUEvZ0FBQUFBQUFIQUFBQUFNQUFBQVVa
R0YwWVFBQUFCY0FBQUFBQUFBQQpBQUFBQUJ3QUFBQUVBQUFBRkdSaGRHRUFBQUFYQUFBQUFEK0FB
QUFBQUFBbEFBQUFCUUFBQUIxa1lYUmhBQUFBQVFBQUFBQTNMall1Ck5pQW9OeTQyTGpZcEFBQUFS
d0FBQUFZQUFBQS9aR0YwWVFBQUFBRUFBQUFBTnk0M0xqTWdLREk0TWpZcElEQjROemN6T0RBd01D
QW8KVFdGaklFOVRJRmdzSURFd0xqa3NJREV6UVRVNU9Da0FBQUFxZFdSMFlRQUFBQXhYVEU5REFD
MEFTZ0FBQUFsVFpXeFBBQUFBQUFsQgpiR3hHQUFBQUFBQUFBQUFJWm5KbFpRQUFBQWgzYVdSbEFB
QmhtbTFrWVhRQUFBQUlkMmxrWlFBQUFBQnRaR0YwQUFBQURBWUFCNEN2CnlBQUFBd0JBZ0FBQUFC
VUdCUkVEaC9ST3pRcEwzS0dVT3NQVW14Y2ZBSUFBQUFGUEpiZ2dJQ2xmLy9ncmdBY1JFUUNFcFFy
akRBQWMKUVljS2tBQUpYNERnQUNTNEFCU1NJa0pzaGtaZ3c0QUZkczJ4djFLcnVHSGN0OTk5OTk5
OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OQo5OTk5OTk5OS8rSC9od2dBRkdJSTNKRWxodWV6aE5m
OEF3VG5ZNEZBQUNFeUFBSVBnZ0FBZy9BQUNESGdBYjV1bUFBSURIa3dBQWc2CnZwWUFBZ05BQUNE
dXhBQnBKYUFBRUJIV2dBQ0M1LzUwc0FBUUV3QUJCZVlVdGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRk
ZGRkZGRkZGQKZGRkZGRkZGRkZE1sUzExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTEx
MTExMTExMHlWTFhYWFhYWFhYWFhYWFhYWFhYWApYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFRKVXRk
ZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZE1sUzExMTExCjExMTExMTEx
MTExMTExMTExMTExMTExMTExMTExMTExMTExMTB5WUFBQUVnSlFDQnVDQWdMVi8vK0NLS0FBSVVu
amdBQ2MvSEFBRXgKNisrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysvL0Qv
d1dFQWNBQXNBS0JCVk0vaUFBQ0V1QUFJUFVRQUFRZgpnQUJCandjQUFRR2dBQkIzWWc0QUFnTkFB
Q0R1eEJ3QUJBVEFBRUY1aURnQUNBbUFBSUx6Q2xycnJycnJycnJycnJycnJycnJycnJyCnJycnJy
cnJycnJycnJycnJycnJwa3FXdXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1
dXVtU3BhNjY2NjY2NjYKNjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2WktscnJycnJy
cnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycgpycGtxV3V1dXV1dXV1dXV1dXV1dXV1
dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1bVRBQUFCSVNVQVFLNElDQXRYLy80SW9vQUFoU2VPCkFB
Sno4Y0FBVEhyNzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Ny84UC9CWVFC
d0FDd0FvRUZVeitJQUFJUzQKQUFnOVJBQUJCK0FBRUdQQndBQkFhQUFFSGRpRGdBQ0EwQUFJTzdF
SEFBRUJNQUFRWG1JT0FBSUNZQUFndk1LV3V1dXV1dXV1dXV1dQp1dXV1dXV1dXV1dXV1dXV1dXV1
dXV1dXV1dXV1dW1TcGE2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NlpL
CmxycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnBrcVd1dXV1dXV1dXV1
dXV1dXV1dXV1dXV1dXV1dXV1dXUKdXV1dXV1dXV1dXVtU3BhNjY2NjY2NjY2NjY2NjY2NjY2NjY2
NjY2NjY2NjY2NjY2NjY2NjY2NjZaTUFBQUFFaEpRQmc3Z2dJQzFmLwovZ2lpZ0FDRko0NEFBblB4
d0FCTWV2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2di93LzhGaEFIQUFM
QUNnClFWVFA0Z0FBaExnQUNEMUVBQUVINEFBUVk4SEFBRUJvQUFRZDJJT0FBSURRQUFnN3NRY0FB
UUV3QUJCZVlnNEFBZ0pnQUNDOHdwYTYKNjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2
NjY2NjY2NlpLbHJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycgpycnJycnJycnBrcVd1
dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dW1TcGE2NjY2NjY2NjY2NjY2
NjY2NjY2CjY2NjY2NjY2NjY2NjY2NjY2NjY2NjZaS2xycnJycnJycnJycnJycnJycnJycnJycnJy
cnJycnJycnJycnJycnJycnBrd0FBQUFYY2wKQUNCTGdnSUMxZi8vZ2lpZ0FDRko0NEFBblB4d0FC
TWV2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2di93Lwo4RmhBSEFBTEFD
Z1FWVFA0Z0FBaExnQUNEMUVBQUVINEFBUVk4SEFBRUJvQUFRZDJJT0FBSURRQUFnN3NRY0FBUUV3
QUJCZVlnNEFBCmdKZ0FDQzh3cGE2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2
NjY2NlpLbHJycnJycnJycnJycnJycnJycnJycnIKcnJycnJycnJycnJycnJycnJycnBrcVd1dXV1
dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dW1TcGE2NjY2NjY2Ngo2NjY2NjY2
NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjZaSVd3QUVaa1pHWkdSR1JrWC9nQUd5TXdFTFNoZkdX
Qy93bHBBQzRBRmRNCmpZbnlIUjJEd0FLVFJwRGJxUldjTlMxMTExMTExMTExMTExMTExMTExMTEx
MTExMTExMTExMTExMTExMTExd3N5QUFJeUl6SXpJakkKak12LzhBRHFFRmJzaVBLMjR6ZDk0QjNn
QWFaUGszem4zQUNlYW1sMy9yY0FBQUFWQmdVUkE0ZjBUczBLUzl5aGxEckQxSnNYSHdDQQpBQUFB
Q0NIaENRQ2xBRURnQUFBQUNpRUFnZUVKQUxVQVFPQUFBQUFLSVFCQXVFSkFMVUFRT0FBQUFBb2hB
R0Q0UWtBdFFCQTRBQUFBCkRDRUFJRTRRa0F0UURZOEZjQUFBQUJVR0JSRURoL1JPelFwTDNLR1VP
c1BVbXhjZkFJQUFBQUFJQWFpQllCR2dDQndBQUFBS0FRQ0IKcUlGZ0ZhQUlIQUFBQUFvQkFFQ3FJ
RmdGYUFJSEFBQUFDZ0VBWU9vZ1dBVm9BZ2NBQUFBTEFRQWdTb2dXQVZvQWdjQUFBQUFWQmdVUgpB
NGYwVHMwS1M5eWhsRHJEMUpzWEh3Q0FBQUFBQ0NIaUVRQ2xBRURnQUFBQUNpRUFnZUlSQUxVQVFP
QUFBQUFLSVFCQXVJUkFMVUFRCk9BQUFBQW9oQUdENGhFQXRRQkE0QUFBQURDRUFJRTRoRUF0UURZ
OEZjQUFBQUJVR0JSRURoL1JPelFwTDNLR1VPc1BVbXhjZkFJQUEKQUFBSUFhakRZQkdnQ0J3QUFB
QUtBUUNCcU1OZ0ZhQUlIQUFBQUFvQkFFQ3FNTmdGYUFJSEFBQUFDZ0VBWU9vdzJBVm9BZ2NBQUFB
TApBUUFnU293MkFWb0FnY0FBQUFBVkJnVVJBNGYwVHMwS1M5eWhsRHJEMUpzWEh3Q0FBQUFBQ0NI
akdRQ2xBRURnQUFBQUNpRUFnZU1aCkFMVUFRT0FBQUFBS0lRQkF1TVpBTFVBUU9BQUFBQW9oQUdE
NHhrQXRRQkE0QUFBQURDRUFJRTR4a0F0UURZOEZjQUFBQUJVR0JSRUQKaC9ST3pRcEwzS0dVT3NQ
VW14Y2ZBSUFBQUFBSUFha0ZZQkdnQ0J3QUFBQUtBUUNCcVFWZ0ZhQUlIQUFBQUFvQkFFQ3FRVmdG
YUFJSApBQUFBQ2dFQVlPcEJXQVZvQWdjQUFBQUxBUUFnU3BCV0FWb0FnY0FBQUFBVkJnVVJBNGYw
VHMwS1M5eWhsRHJEMUpzWEh3Q0FBQUFBCkNDSGtJUUNsQUVEZ0FBQUFDaUVBZ2VRaEFMVUFRT0FB
QUFBS0lRQkF1UWhBTFVBUU9BQUFBQW9oQUdENUNFQXRRQkE0QUFBQURDRUEKSUU1Q0VBdFFEWThG
Y0FBQUFCVUdCUkVEaC9ST3pRcEwzS0dVT3NQVW14Y2ZBSUFBQUFBSUFhbEhZQkdnQ0J3QUFBQUtB
UUNCcVVkZwpGYUFJSEFBQUFBb0JBRUNxVWRnRmFBSUhBQUFBQ2dFQVlPcFIyQVZvQWdjQUFBQUxB
UUFnU3BSMkFWb0FnY0FBQUFBVkJnVVJBNGYwClRzMEtTOXlobERyRDFKc1hId0NBQUFBQUNDSGxL
UUNsQUVEZ0FBQUFDaUVBZ2VVcEFMVUFRT0FBQUFBS0lRQkF1VXBBTFVBUU9BQUEKQUFvaEFHRDVT
a0F0UUJBNEFBQUFEQ0VBSUU1U2tBdFFEWThGY0FBQUFCVUdCUkVEaC9ST3pRcEwzS0dVT3NQVW14
Y2ZBSUFBQUFBSQpBYW1KWUJHZ0NCd0FBQUFLQVFDQnFZbGdGYUFJSEFBQUFBb0JBRUNxWWxnRmFB
SUhBQUFBQ2dFQVlPcGlXQVZvQWdjQUFBQUxBUUFnClNwaVdBVm9BZ2NBQUFBQVZCZ1VSQTRmMFRz
MEtTOXlobERyRDFKc1hId0NBQUFBQUNDSG1NUUNsQUVEZ0FBQUFDaUVBZ2VZeEFMVUEKUU9BQUFB
QUtJUUJBdVl4QUxVQVFPQUFBQUFvaEFHRDVqRUF0UUJBNEFBQUFEQ0VBSUU1akVBdFFEWThGY0FB
QUFCVUdCUkVEaC9STwp6UXBMM0tHVU9zUFVteGNmQUlBQUFBQUlBYW5MWUJHZ0NCd0FBQUFLQVFD
QnFjdGdGYUFJSEFBQUFBb0JBRUNxY3RnRmFBSUhBQUFBCkNnRUFZT3B5MkFWb0FnY0FBQUFMQVFB
Z1NweTJBVm9BZ2NBQUFBQVZCZ1VSQTRmMFRzMEtTOXlobERyRDFKc1hId0NBQUFBQUNDSG4KT1FD
bEFFRGdBQUFBQ2lFQWdlYzVBTFVBUU9BQUFBQUtJUUJBdWM1QUxVQVFPQUFBQUFvaEFHRDV6a0F0
UUJBNEFBQUFEQ0VBSUU1egprQXRRRFk4RmNBQUFBQlVHQlJFRGgvUk96UXBMM0tHVU9zUFVteGNm
QUlBQUFBQUlBYW9OWUJHZ0NCd0FBQUFLQVFDQnFnMWdGYUFJCkhBQUFBQW9CQUVDcWcxZ0ZhQUlI
QUFBQUNnRUFZT3FEV0FWb0FnY0FBQUFMQVFBZ1NxRFdBVm9BZ2NBQUFBQVZCZ1VSQTRmMFRzMEsK
Uzl5aGxEckQxSnNYSHdDQUFBQUFDQ0hvUVFDbEFFRGdBQUFBQ2lFQWdlaEJBTFVBUU9BQUFBQUtJ
UUJBdWhCQUxVQVFPQUFBQUFvaApBR0Q2RUVBdFFCQTRBQUFBRENFQUlFNkVFQXRRRFk4RmNBQUFB
QlVHQlJFRGgvUk96UXBMM0tHVU9zUFVteGNmQUlBQUFBQUlBYXBQCllCR2dDQndBQUFBS0FRQ0Jx
azlnRmFBSUhBQUFBQW9CQUVDcWs5Z0ZhQUlIQUFBQUNnRUFZT3FUMkFWb0FnY0FBQUFMQVFBZ1Nx
VDIKQVZvQWdjQUFBQUFWQmdVUkE0ZjBUczBLUzl5aGxEckQxSnNYSHdDQUFBQUFDQ0hwU1FDbEFF
RGdBQUFBQ2lFQWdlbEpBTFVBUU9BQQpBQUFLSVFCQXVsSkFMVUFRT0FBQUFBb2hBR0Q2VWtBdFFC
QTRBQUFBRENFQUlFNlVrQXRRRFk4RmNBQUFBQlVHQlJFRGgvUk96UXBMCjNLR1VPc1BVbXhjZkFJ
QUFBQUFJQWFxUllCR2dDQndBQUFBS0FRQ0JxcEZnRmFBSUhBQUFBQW9CQUVDcXBGZ0ZhQUlIQUFB
QUNnRUEKWU9xa1dBVm9BZ2NBQUFBTEFRQWdTcWtXQVZvQWdjQUFBQUFWQmdVUkE0ZjBUczBLUzl5
aGxEckQxSnNYSHdDQUFBQUFDQ0hxVVFDbApBRURnQUFBQUNpRUFnZXBSQUxVQVFPQUFBQUFLSVFC
QXVwUkFMVUFRT0FBQUFBb2hBR0Q2bEVBdFFCQTRBQUFBRENFQUlFNmxFQXRRCkRZOEZjQUFBQUJV
R0JSRURoL1JPelFwTDNLR1VPc1BVbXhjZkFJQUFBQUFJQWFyVFlCR2dDQndBQUFBS0FRQ0JxdE5n
RmFBSUhBQUEKQUFvQkFFQ3F0TmdGYUFJSEFBQUFDZ0VBWU9xMDJBVm9BZ2NBQUFBTEFRQWdTcTAy
QVZvQWdjQUFBQUFWQmdVUkE0ZjBUczBLUzl5aApsRHJEMUpzWEh3Q0FBQUFBQ0NIcldRQ2xBRURn
QUFBQUNpRUFnZXRaQUxVQVFPQUFBQUFLSVFCQXV0WkFMVUFRT0FBQUFBb2hBR0Q2CjFrQXRRQkE0
QUFBQURDRUFJRTYxa0F0UURZOEZjQUFBQUJVR0JSRURoL1JPelFwTDNLR1VPc1BVbXhjZkFJQUFB
QUFJQWFzVllCR2cKQ0J3QUFBQUtBUUNCcXhWZ0ZhQUlIQUFBQUFvQkFFQ3F4VmdGYUFJSEFBQUFD
Z0VBWU9yRldBVm9BZ2NBQUFBTEFRQWdTckZXQVZvQQpnY0FBQUFBVkJnVVJBNGYwVHMwS1M5eWhs
RHJEMUpzWEh3Q0FBQUFBQ0FIc1hRRWFBSUhBQUFBQUNnRUFnZXhkQVZvQWdjQUFBQUFLCkFRQkF1
eGRBVm9BZ2NBQUFBQW9CQUdEN0YwQldnQ0J3QUFBQUNnRUFJRTdGMEJXZ0NCd0FBQUFWQmdVUkE0
ZjBUczBLUzl5aGxEckQKMUpzWEh3Q0FBQUFCVHlXNElDQXBYLy80SzRBSEVSRUFoS1VLNHd3QUhF
R0hDcEFBQ1YrQTRBQWt1QUFVa2lKQ2JJWkdZTU9BQlhiTgpzYjlTcTdoaDNMZmZmZmZmZmZmZmZm
ZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZi9oLzRjSUFCUmlDTnlSSllibnM0VFgvQU1FCjUy
T0JRQUFoTWdBQ0Q0SUFBSVB3QUFneDRBRyticGdBQ0F4NU1BQUlPcjZXQUFJRFFBQWc3c1FBYVNX
Z0FCQVIxb0FBZ3VmK2RMQUEKRUJNQUFRWG1GTFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhY
WFhYWFhYWFhYWFhYVEpVdGRkZGRkZGRkZGRkZGRkZGRkZGRkZApkZGRkZGRkZGRkZGRkZGRkZGRk
ZE1sUzExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMHlWTFhYWFhYWFhY
ClhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFRKVXRkZGRkZGRkZGRkZGRkZGRkZGRk
ZGRkZGRkZGRkZGRkZGRkZGRkZGQKZGRNbUFBQUJJQ1VBZ2JnZ0lDMWYvL2dpaWdBQ0ZKNDRBQW5Q
eHdBQk1ldnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dgp2dnZ2dnZ2L3cvOEZoQUhB
QUxBQ2dRVlRQNGdBQWhMZ0FDRDFFQUFFSDRBQVFZOEhBQUVCb0FBUWQySU9BQUlEUUFBZzdzUWNB
QVFFCndBQkJlWWc0QUFnSmdBQ0M4d3BhNjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2
NjY2NjY2NjZaS2xycnJycnJycnJycnIKcnJycnJycnJycnJycnJycnJycnJycnJycnJycnJwa3FX
dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXVtUwpwYTY2NjY2NjY2NjY2
NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2WktscnJycnJycnJycnJycnJycnJycnJycnJy
cnJycnJyCnJycnJycnJycnJycGt3QUFBU0VsQUVDdUNBZ0xWLy8rQ0tLQUFJVW5qZ0FDYy9IQUFF
eDYrKysrKysrKysrKysrKysrKysrKysrKysKKysrKysrKysrKysrKysrKy8vRC93V0VBY0FBc0FL
QkJWTS9pQUFDRXVBQUlQVVFBQVFmZ0FCQmp3Y0FBUUdnQUJCM1lnNEFBZ05BQQpDRHV4QndBQkFU
QUFFRjVpRGdBQ0FtQUFJTHpDbHJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJy
cnJycGtxV3V1CnV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dW1TcGE2NjY2
NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjYKNjY2NjY2NjZaS2xycnJycnJycnJycnJycnJy
cnJycnJycnJycnJycnJycnJycnJycnJycnBrcVd1dXV1dXV1dXV1dXV1dXV1dXV1dQp1dXV1dXV1
dXV1dXV1dXV1dXV1dXVtVEFBQUFCSVNVQVlPNElDQXRYLy80SW9vQUFoU2VPQUFKejhjQUFUSHI3
Nzc3Nzc3Nzc3Nzc3Cjc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Ny84UC9CWVFCd0FDd0FvRUZV
eitJQUFJUzRBQWc5UkFBQkIrQUFFR1BCd0FCQWFBQUUKSGRpRGdBQ0EwQUFJTzdFSEFBRUJNQUFR
WG1JT0FBSUNZQUFndk1LV3V1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dQp1dXV1
dW1TcGE2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NlpLbHJycnJycnJy
cnJycnJycnJycnJycnJyCnJycnJycnJycnJycnJycnJycnBrcVd1dXV1dXV1dXV1dXV1dXV1dXV1
dXV1dXV1dXV1dXV1dXV1dXV1dXV1dW1TcGE2NjY2NjY2NjYKNjY2NjY2NjY2NjY2NjY2NjY2NjY2
NjY2NjY2NjY2NjZaTUFBQUFGM0pRQWdTNElDQXRYLy80SW9vQUFoU2VPQUFKejhjQUFUSHI3Nwo3
Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Ny84UC9CWVFCd0FDd0FvRUZVeitJ
QUFJUzRBQWc5UkFBQkIrQUFFCkdQQndBQkFhQUFFSGRpRGdBQ0EwQUFJTzdFSEFBRUJNQUFRWG1J
T0FBSUNZQUFndk1LV3V1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXUKdXV1dXV1dXV1dXV1dXV1dW1T
cGE2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NlpLbHJycnJycnJycnJy
cgpycnJycnJycnJycnJycnJycnJycnJycnJycnJycnBrcVd1dXV1dXV1dXV1dXV1dXV1dXV1dXV1
dXV1dXV1dXV1dXV1dXV1dXV1dW1TCkZzQUJHWkdSbVJrUmtaRi80QUJzak1CQzBvWHhsZ3Y4SmFR
QXVBQlhUSTJKOGgwZGc4QUNrMGFRMjZrVm5EVXRkZGRkZGRkZGRkZGQKZGRkZGRkZGRkZGRkZGRk
ZGRkZGRkZGRkZGRkY0xNZ0FDTWlNeU15SXlJekwvL0FBNmhCVzdJanl0dU0zZmVBZDRBR21UNU44
NTl3QQpubXBwZC82M0FBQUFGUVlGRVFPSDlFN05Da3Zjb1pRNnc5U2JGeDhBZ0FBQUFBZ2g0UWtB
cFFCQTRBQUFBQW9oQUlIaENRQzFBRURnCkFBQUFDaUVBUUxoQ1FDMUFFRGdBQUFBS0lRQmcrRUpB
TFVBUU9BQUFBQXdoQUNCT0VKQUxVQTJQQlhBQUFBQVZCZ1VSQTRmMFRzMEsKUzl5aGxEckQxSnNY
SHdDQUFBQUFDQUdvZ1dBUm9BZ2NBQUFBQ2dFQWdhaUJZQldnQ0J3QUFBQUtBUUJBcWlCWUJXZ0NC
d0FBQUFvQgpBR0RxSUZnRmFBSUhBQUFBQ3dFQUlFcUlGZ0ZhQUlIQUFBQUFGUVlGRVFPSDlFN05D
a3Zjb1pRNnc5U2JGeDhBZ0FBQUFBZ2g0aEVBCnBRQkE0QUFBQUFvaEFJSGlFUUMxQUVEZ0FBQUFD
aUVBUUxpRVFDMUFFRGdBQUFBS0lRQmcrSVJBTFVBUU9BQUFBQXdoQUNCT0lSQUwKVUEyUEJYQUFB
QUFWQmdVUkE0ZjBUczBLUzl5aGxEckQxSnNYSHdDQUFBQUFDQUdvdzJBUm9BZ2NBQUFBQ2dFQWdh
akRZQldnQ0J3QQpBQUFLQVFCQXFqRFlCV2dDQndBQUFBb0JBR0RxTU5nRmFBSUhBQUFBQ3dFQUlF
cU1OZ0ZhQUlIQUFBQUFGUVlGRVFPSDlFN05Da3ZjCm9aUTZ3OVNiRng4QWdBQUFBQWdoNHhrQXBR
QkE0QUFBQUFvaEFJSGpHUUMxQUVEZ0FBQUFDaUVBUUxqR1FDMUFFRGdBQUFBS0lRQmcKK01aQUxV
QVFPQUFBQUF3aEFDQk9NWkFMVUEyUEJYQUFBQUFWQmdVUkE0ZjBUczBLUzl5aGxEckQxSnNYSHdD
QUFBQUFDQUdwQldBUgpvQWdjQUFBQUNnRUFnYWtGWUJXZ0NCd0FBQUFLQVFCQXFrRllCV2dDQndB
QUFBb0JBR0RxUVZnRmFBSUhBQUFBQ3dFQUlFcVFWZ0ZhCkFJSEFBQUFBRlFZRkVRT0g5RTdOQ2t2
Y29aUTZ3OVNiRng4QWdBQUFBQWdoNUNFQXBRQkE0QUFBQUFvaEFJSGtJUUMxQUVEZ0FBQUEKQ2lF
QVFMa0lRQzFBRURnQUFBQUtJUUJnK1FoQUxVQVFPQUFBQUF3aEFDQk9RaEFMVUEyUEJYQUFBQUFW
QmdVUkE0ZjBUczBLUzl5aApsRHJEMUpzWEh3Q0FBQUFBQ0FHcFIyQVJvQWdjQUFBQUNnRUFnYWxI
WUJXZ0NCd0FBQUFLQVFCQXFsSFlCV2dDQndBQUFBb0JBR0RxClVkZ0ZhQUlIQUFBQUN3RUFJRXFV
ZGdGYUFJSEFBQUFBRlFZRkVRT0g5RTdOQ2t2Y29aUTZ3OVNiRng4QWdBQUFBQWdoNVNrQXBRQkEK
NEFBQUFBb2hBSUhsS1FDMUFFRGdBQUFBQ2lFQVFMbEtRQzFBRURnQUFBQUtJUUJnK1VwQUxVQVFP
QUFBQUF3aEFDQk9VcEFMVUEyUApCWEFBQUFBVkJnVVJBNGYwVHMwS1M5eWhsRHJEMUpzWEh3Q0FB
QUFBQ0FHcGlXQVJvQWdjQUFBQUNnRUFnYW1KWUJXZ0NCd0FBQUFLCkFRQkFxbUpZQldnQ0J3QUFB
QW9CQUdEcVlsZ0ZhQUlIQUFBQUN3RUFJRXFZbGdGYUFJSEFBQUFBRlFZRkVRT0g5RTdOQ2t2Y29a
UTYKdzlTYkZ4OEFnQUFBQUFnaDVqRUFwUUJBNEFBQUFBb2hBSUhtTVFDMUFFRGdBQUFBQ2lFQVFM
bU1RQzFBRURnQUFBQUtJUUJnK1l4QQpMVUFRT0FBQUFBd2hBQ0JPWXhBTFVBMlBCWEFBQUFBVkJn
VVJBNGYwVHMwS1M5eWhsRHJEMUpzWEh3Q0FBQUFBQ0FHcHkyQVJvQWdjCkFBQUFDZ0VBZ2FuTFlC
V2dDQndBQUFBS0FRQkFxbkxZQldnQ0J3QUFBQW9CQUdEcWN0Z0ZhQUlIQUFBQUN3RUFJRXFjdGdG
YUFJSEEKQUFBQUZRWUZFUU9IOUU3TkNrdmNvWlE2dzlTYkZ4OEFnQUFBQUFnaDV6a0FwUUJBNEFB
QUFBb2hBSUhuT1FDMUFFRGdBQUFBQ2lFQQpRTG5PUUMxQUVEZ0FBQUFLSVFCZytjNUFMVUFRT0FB
QUFBd2hBQ0JPYzVBTFVBMlBCWEFBQUFBVkJnVVJBNGYwVHMwS1M5eWhsRHJECjFKc1hId0NBQUFB
QUNBR3FEV0FSb0FnY0FBQUFDZ0VBZ2FvTllCV2dDQndBQUFBS0FRQkFxb05ZQldnQ0J3QUFBQW9C
QUdEcWcxZ0YKYUFJSEFBQUFDd0VBSUVxZzFnRmFBSUhBQUFBQUZRWUZFUU9IOUU3TkNrdmNvWlE2
dzlTYkZ4OEFnQUFBQUFnaDZFRUFwUUJBNEFBQQpBQW9oQUlIb1FRQzFBRURnQUFBQUNpRUFRTG9R
UUMxQUVEZ0FBQUFLSVFCZytoQkFMVUFRT0FBQUFBd2hBQ0JPaEJBTFVBMlBCWEFBCkFBQVZCZ1VS
QTRmMFRzMEtTOXlobERyRDFKc1hId0NBQUFBQUNBR3FUMkFSb0FnY0FBQUFDZ0VBZ2FwUFlCV2dD
QndBQUFBS0FRQkEKcXBQWUJXZ0NCd0FBQUFvQkFHRHFrOWdGYUFJSEFBQUFDd0VBSUVxazlnRmFB
SUhBQUFBQUZRWUZFUU9IOUU3TkNrdmNvWlE2dzlTYgpGeDhBZ0FBQUFBZ2g2VWtBcFFCQTRBQUFB
QW9oQUlIcFNRQzFBRURnQUFBQUNpRUFRTHBTUUMxQUVEZ0FBQUFLSVFCZytsSkFMVUFRCk9BQUFB
QXdoQUNCT2xKQUxVQTJQQlhBQUFBQVZCZ1VSQTRmMFRzMEtTOXlobERyRDFKc1hId0NBQUFBQUNB
R3FrV0FSb0FnY0FBQUEKQ2dFQWdhcVJZQldnQ0J3QUFBQUtBUUJBcXFSWUJXZ0NCd0FBQUFvQkFH
RHFwRmdGYUFJSEFBQUFDd0VBSUVxcEZnRmFBSUhBQUFBQQpGUVlGRVFPSDlFN05Da3Zjb1pRNnc5
U2JGeDhBZ0FBQUFBZ2g2bEVBcFFCQTRBQUFBQW9oQUlIcVVRQzFBRURnQUFBQUNpRUFRTHFVClFD
MUFFRGdBQUFBS0lRQmcrcFJBTFVBUU9BQUFBQXdoQUNCT3BSQUxVQTJQQlhBQUFBQVZCZ1VSQTRm
MFRzMEtTOXlobERyRDFKc1gKSHdDQUFBQUFDQUdxMDJBUm9BZ2NBQUFBQ2dFQWdhclRZQldnQ0J3
QUFBQUtBUUJBcXJUWUJXZ0NCd0FBQUFvQkFHRHF0TmdGYUFJSApBQUFBQ3dFQUlFcXROZ0ZhQUlI
QUFBQUFGUVlGRVFPSDlFN05Da3Zjb1pRNnc5U2JGeDhBZ0FBQUFBZ2g2MWtBcFFCQTRBQUFBQW9o
CkFJSHJXUUMxQUVEZ0FBQUFDaUVBUUxyV1FDMUFFRGdBQUFBS0lRQmcrdFpBTFVBUU9BQUFBQXdo
QUNCT3RaQUxVQTJQQlhBQUFBQVYKQmdVUkE0ZjBUczBLUzl5aGxEckQxSnNYSHdDQUFBQUFDQUdy
RldBUm9BZ2NBQUFBQ2dFQWdhc1ZZQldnQ0J3QUFBQUtBUUJBcXNWWQpCV2dDQndBQUFBb0JBR0Rx
eFZnRmFBSUhBQUFBQ3dFQUlFcXhWZ0ZhQUlIQUFBQUFGUVlGRVFPSDlFN05Da3Zjb1pRNnc5U2JG
eDhBCmdBQUFBQWdCN0YwQkdnQ0J3QUFBQUFvQkFJSHNYUUZhQUlIQUFBQUFDZ0VBUUxzWFFGYUFJ
SEFBQUFBS0FRQmcreGRBVm9BZ2NBQUEKQUFvQkFDQk94ZEFWb0FnY0FBQUFGUVlGRVFPSDlFN05D
a3Zjb1pRNnc5U2JGeDhBZ0FBQUFVOGx1Q0FnS1YvLytDdUFCeEVSQUlTbApDdU1NQUJ4Qmh3cVFB
QWxmZ09BQUpMZ0FGSklpUW15R1JtRERnQVYyemJHL1VxdTRZZHkzMzMzMzMzMzMzMzMzMzMzMzMz
MzMzMzMzCjMzMzMzMzMzMzMzMzMzMy80ZitIQ0FBVVlnamNrU1dHNTdPRTEvd0RCT2RqZ1VBQUlU
SUFBZytDQUFDRDhBQUlNZUFCdm02WUFBZ00KZVRBQUNEcStsZ0FDQTBBQUlPN0VBR2tsb0FBUUVk
YUFBSUxuL25Td0FCQVRBQUVGNWhTMTExMTExMTExMTExMTExMTExMTExMTExMQoxMTExMTExMTEx
MTExMTExMHlWTFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYVEpVdGRk
ZGRkZGRkZGRkCmRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZE1sUzExMTExMTExMTExMTEx
MTExMTExMTExMTExMTExMTExMTExMTExMTExMHkKVkxYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhY
WFhYWFhYWFhYWFhYWFhYWFRKZ0FBQVNBbEFJRzRJQ0F0WC8vNElvb0FBaFNlT0FBSgp6OGNBQVRI
cjc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3NzcvOFAvQllRQndBQ3dBb0VG
VXorSUFBSVM0QUFnCjlSQUFCQitBQUVHUEJ3QUJBYUFBRUhkaURnQUNBMEFBSU83RUhBQUVCTUFB
UVhtSU9BQUlDWUFBZ3ZNS1d1dXV1dXV1dXV1dXV1dXUKdXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1
dXVtU3BhNjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjZaS2xycgpycnJy
cnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJwa3FXdXV1dXV1dXV1dXV1dXV1dXV1
dXV1dXV1dXV1dXV1dXV1CnV1dXV1dXV1bVNwYTY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2
NjY2NjY2NjY2NjY2Wk1BQUFFaEpRQkFyZ2dJQzFmLy9naWkKZ0FDRko0NEFBblB4d0FCTWV2dnZ2
dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2di93LzhGaEFIQUFMQUNnUVZUUAo0
Z0FBaExnQUNEMUVBQUVINEFBUVk4SEFBRUJvQUFRZDJJT0FBSURRQUFnN3NRY0FBUUV3QUJCZVln
NEFBZ0pnQUNDOHdwYTY2NjY2CjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NlpL
bHJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnIKcnJycnBrcVd1dXV1dXV1dXV1
dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dW1TcGE2NjY2NjY2NjY2NjY2NjY2NjY2NjY2
Ngo2NjY2NjY2NjY2NjY2NjY2NjZaS2xycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJy
cnJycnJycnBrd0FBQUFTRWxBR0R1CkNBZ0xWLy8rQ0tLQUFJVW5qZ0FDYy9IQUFFeDYrKysrKysr
KysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrLy9EL3dXRUEKY0FBc0FLQkJWTS9pQUFD
RXVBQUlQVVFBQVFmZ0FCQmp3Y0FBUUdnQUJCM1lnNEFBZ05BQUNEdXhCd0FCQVRBQUVGNWlEZ0FD
QW1BQQpJTHpDbHJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycGtxV3V1
dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1CnV1dXV1dXV1dXV1dXV1dW1TcGE2NjY2NjY2NjY2NjY2
NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NlpLbHJycnJycnJycnJycnIKcnJycnJycnJycnJy
cnJycnJycnJycnJycnJycnBrcVd1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1
dXV1dW1UQQpBQUFCZHlVQUlFdUNBZ0xWLy8rQ0tLQUFJVW5qZ0FDYy9IQUFFeDYrKysrKysrKysr
KysrKysrKysrKysrKysrKysrKysrKysrKysrCisrKy8vRC93V0VBY0FBc0FLQkJWTS9pQUFDRXVB
QUlQVVFBQVFmZ0FCQmp3Y0FBUUdnQUJCM1lnNEFBZ05BQUNEdXhCd0FCQVRBQUUKRjVpRGdBQ0Ft
QUFJTHpDbHJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycGtxV3V1dXV1
dXV1dXV1dXV1dQp1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dW1TcGE2NjY2NjY2NjY2NjY2NjY2
NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NlpLbHJyCnJycnJycnJycnJycnJycnJycnJycnJycnJy
cnJycnJycnJycnJycnBraGJBQVJtUmtaa1pFWkdSZitBQWJJekFRdEtGOFpZTC9DV2sKQUxnQVYw
eU5pZklkSFlQQUFwTkdrTnVwRlp3MUxYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhY
WFhYWFhYQ3pJQUFqSQpqTWpNaU1pTXkvL3dBT29RVnV5SThyYmpOMzNnSGVBQnBrK1RmT2ZjQUo1
cWFYZit0d0FBQUJVR0JSRURoL1JPelFwTDNLR1VPc1BVCm14Y2ZBSUFBQUFBSUllRUpBS1VBUU9B
QUFBQUtJUUNCNFFrQXRRQkE0QUFBQUFvaEFFQzRRa0F0UUJBNEFBQUFDaUVBWVBoQ1FDMUEKRURn
QUFBQU1JUUFnVGhDUUMxQU5qd1Z3QUFBQUZRWUZFUU9IOUU3TkNrdmNvWlE2dzlTYkZ4OEFnQUFB
QUFnQnFJRmdFYUFJSEFBQQpBQW9CQUlHb2dXQVZvQWdjQUFBQUNnRUFRS29nV0FWb0FnY0FBQUFL
QVFCZzZpQllCV2dDQndBQUFBc0JBQ0JLaUJZQldnQ0J3QUFBCkFCVUdCUkVEaC9ST3pRcEwzS0dV
T3NQVW14Y2ZBSUFBQUFBSUllSVJBS1VBUU9BQUFBQUtJUUNCNGhFQXRRQkE0QUFBQUFvaEFFQzQK
aEVBdFFCQTRBQUFBQ2lFQVlQaUVRQzFBRURnQUFBQU1JUUFnVGlFUUMxQU5qd1Z3QUFBQUZRWUZF
UU9IOUU3TkNrdmNvWlE2dzlTYgpGeDhBZ0FBQUFBZ0JxTU5nRWFBSUhBQUFBQW9CQUlHb3cyQVZv
QWdjQUFBQUNnRUFRS293MkFWb0FnY0FBQUFLQVFCZzZqRFlCV2dDCkJ3QUFBQXNCQUNCS2pEWUJX
Z0NCd0FBQUFCVUdCUkVEaC9ST3pRcEwzS0dVT3NQVW14Y2ZBSUFBQUFBSUllTVpBS1VBUU9BQUFB
QUsKSVFDQjR4a0F0UUJBNEFBQUFBb2hBRUM0eGtBdFFCQTRBQUFBQ2lFQVlQakdRQzFBRURnQUFB
QU1JUUFnVGpHUUMxQU5qd1Z3QUFBQQpGUVlGRVFPSDlFN05Da3Zjb1pRNnc5U2JGeDhBZ0FBQUFB
Z0JxUVZnRWFBSUhBQUFBQW9CQUlHcEJXQVZvQWdjQUFBQUNnRUFRS3BCCldBVm9BZ2NBQUFBS0FR
Qmc2a0ZZQldnQ0J3QUFBQXNCQUNCS2tGWUJXZ0NCd0FBQUFCVUdCUkVEaC9ST3pRcEwzS0dVT3NQ
VW14Y2YKQUlBQUFBQUlJZVFoQUtVQVFPQUFBQUFLSVFDQjVDRUF0UUJBNEFBQUFBb2hBRUM1Q0VB
dFFCQTRBQUFBQ2lFQVlQa0lRQzFBRURnQQpBQUFNSVFBZ1RrSVFDMUFOandWd0FBQUFGUVlGRVFP
SDlFN05Da3Zjb1pRNnc5U2JGeDhBZ0FBQUFBZ0JxVWRnRWFBSUhBQUFBQW9CCkFJR3BSMkFWb0Fn
Y0FBQUFDZ0VBUUtwUjJBVm9BZ2NBQUFBS0FRQmc2bEhZQldnQ0J3QUFBQXNCQUNCS2xIWUJXZ0NC
d0FBQUFCVUcKQlJFRGgvUk96UXBMM0tHVU9zUFVteGNmQUlBQUFBQUlJZVVwQUtVQVFPQUFBQUFL
SVFDQjVTa0F0UUJBNEFBQUFBb2hBRUM1U2tBdApRQkE0QUFBQUNpRUFZUGxLUUMxQUVEZ0FBQUFN
SVFBZ1RsS1FDMUFOandWd0FBQUFGUVlGRVFPSDlFN05Da3Zjb1pRNnc5U2JGeDhBCmdBQUFBQWdC
cVlsZ0VhQUlIQUFBQUFvQkFJR3BpV0FWb0FnY0FBQUFDZ0VBUUtwaVdBVm9BZ2NBQUFBS0FRQmc2
bUpZQldnQ0J3QUEKQUFzQkFDQkttSllCV2dDQndBQUFBQlVHQlJFRGgvUk96UXBMM0tHVU9zUFVt
eGNmQUlBQUFBQUlJZVl4QUtVQVFPQUFBQUFLSVFDQgo1akVBdFFCQTRBQUFBQW9oQUVDNWpFQXRR
QkE0QUFBQUNpRUFZUG1NUUMxQUVEZ0FBQUFNSVFBZ1RtTVFDMUFOandWd0FBQUFGUVlGCkVRT0g5
RTdOQ2t2Y29aUTZ3OVNiRng4QWdBQUFBQWdCcWN0Z0VhQUlIQUFBQUFvQkFJR3B5MkFWb0FnY0FB
QUFDZ0VBUUtweTJBVm8KQWdjQUFBQUtBUUJnNm5MWUJXZ0NCd0FBQUFzQkFDQktuTFlCV2dDQndB
QUFBQlVHQlJFRGgvUk96UXBMM0tHVU9zUFVteGNmQUlBQQpBQUFJSWVjNUFLVUFRT0FBQUFBS0lR
Q0I1emtBdFFCQTRBQUFBQW9oQUVDNXprQXRRQkE0QUFBQUNpRUFZUG5PUUMxQUVEZ0FBQUFNCklR
QWdUbk9RQzFBTmp3VndBQUFBRlFZRkVRT0g5RTdOQ2t2Y29aUTZ3OVNiRng4QWdBQUFBQWdCcWcx
Z0VhQUlIQUFBQUFvQkFJR3EKRFdBVm9BZ2NBQUFBQ2dFQVFLcURXQVZvQWdjQUFBQUtBUUJnNm9O
WUJXZ0NCd0FBQUFzQkFDQktvTllCV2dDQndBQUFBQlVHQlJFRApoL1JPelFwTDNLR1VPc1BVbXhj
ZkFJQUFBQUFJSWVoQkFLVUFRT0FBQUFBS0lRQ0I2RUVBdFFCQTRBQUFBQW9oQUVDNkVFQXRRQkE0
CkFBQUFDaUVBWVBvUVFDMUFFRGdBQUFBTUlRQWdUb1FRQzFBTmp3VndBQUFBRlFZRkVRT0g5RTdO
Q2t2Y29aUTZ3OVNiRng4QWdBQUEKQUFnQnFrOWdFYUFJSEFBQUFBb0JBSUdxVDJBVm9BZ2NBQUFB
Q2dFQVFLcVQyQVZvQWdjQUFBQUtBUUJnNnBQWUJXZ0NCd0FBQUFzQgpBQ0JLcFBZQldnQ0J3QUFB
QUJVR0JSRURoL1JPelFwTDNLR1VPc1BVbXhjZkFJQUFBQUFJSWVsSkFLVUFRT0FBQUFBS0lRQ0I2
VWtBCnRRQkE0QUFBQUFvaEFFQzZVa0F0UUJBNEFBQUFDaUVBWVBwU1FDMUFFRGdBQUFBTUlRQWdU
cFNRQzFBTmp3VndBQUFBRlFZRkVRT0gKOUU3TkNrdmNvWlE2dzlTYkZ4OEFnQUFBQUFnQnFwRmdF
YUFJSEFBQUFBb0JBSUdxa1dBVm9BZ2NBQUFBQ2dFQVFLcWtXQVZvQWdjQQpBQUFLQVFCZzZxUllC
V2dDQndBQUFBc0JBQ0JLcVJZQldnQ0J3QUFBQUJVR0JSRURoL1JPelFwTDNLR1VPc1BVbXhjZkFJ
QUFBQUFJCkllcFJBS1VBUU9BQUFBQUtJUUNCNmxFQXRRQkE0QUFBQUFvaEFFQzZsRUF0UUJBNEFB
QUFDaUVBWVBxVVFDMUFFRGdBQUFBTUlRQWcKVHFVUUMxQU5qd1Z3QUFBQUZRWUZFUU9IOUU3TkNr
dmNvWlE2dzlTYkZ4OEFnQUFBQUFnQnF0TmdFYUFJSEFBQUFBb0JBSUdxMDJBVgpvQWdjQUFBQUNn
RUFRS3EwMkFWb0FnY0FBQUFLQVFCZzZyVFlCV2dDQndBQUFBc0JBQ0JLclRZQldnQ0J3QUFBQUJV
R0JSRURoL1JPCnpRcEwzS0dVT3NQVW14Y2ZBSUFBQUFBSUlldFpBS1VBUU9BQUFBQUtJUUNCNjFr
QXRRQkE0QUFBQUFvaEFFQzYxa0F0UUJBNEFBQUEKQ2lFQVlQcldRQzFBRURnQUFBQU1JUUFnVHJX
UUMxQU5qd1Z3QUFBQUZRWUZFUU9IOUU3TkNrdmNvWlE2dzlTYkZ4OEFnQUFBQUFnQgpxeFZnRWFB
SUhBQUFBQW9CQUlHckZXQVZvQWdjQUFBQUNnRUFRS3JGV0FWb0FnY0FBQUFLQVFCZzZzVllCV2dD
QndBQUFBc0JBQ0JLCnNWWUJXZ0NCd0FBQUFCVUdCUkVEaC9ST3pRcEwzS0dVT3NQVW14Y2ZBSUFB
QUFBSUFleGRBUm9BZ2NBQUFBQUtBUUNCN0YwQldnQ0IKd0FBQUFBb0JBRUM3RjBCV2dDQndBQUFB
Q2dFQVlQc1hRRmFBSUhBQUFBQUtBUUFnVHNYUUZhQUlIQUFBQUJVR0JSRURoL1JPelFwTAozS0dV
T3NQVW14Y2ZBSUFBQUFGUEpiZ2dJQ2xmLy9ncmdBY1JFUUNFcFFyakRBQWNRWWNLa0FBSlg0RGdB
Q1M0QUJTU0lrSnNoa1pnCnc0QUZkczJ4djFLcnVHSGN0OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5
OTk5OTk5OTk5OTk5OTk5LytIL2h3Z0FGR0lJM0pFbGh1ZXoKaE5mOEF3VG5ZNEZBQUNFeUFBSVBn
Z0FBZy9BQUNESGdBYjV1bUFBSURIa3dBQWc2dnBZQUFnTkFBQ0R1eEFCcEphQUFFQkhXZ0FDQwo1
LzUwc0FBUUV3QUJCZVlVdGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRk
TWxTMTExMTExMTExMTExMTExCjExMTExMTExMTExMTExMTExMTExMTExMTExMHlWTFhYWFhYWFhY
WFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYVEpVdGQKZGRkZGRkZGRkZGRkZGRkZGRk
ZGRkZGRkZGRkZGRkZGRkZGRkZGRkZE1sUzExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTEx
MQoxMTExMTExMTB5WUFBQUVnSlFDQnVDQWdMVi8vK0NLS0FBSVVuamdBQ2MvSEFBRXg2KysrKysr
KysrKysrKysrKysrKysrKysrKysrCisrKysrKysrKysrKysvL0Qvd1dFQWNBQXNBS0JCVk0vaUFB
Q0V1QUFJUFVRQUFRZmdBQkJqd2NBQVFHZ0FCQjNZZzRBQWdOQUFDRHUKeEJ3QUJBVEFBRUY1aURn
QUNBbUFBSUx6Q2xycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnBrcVd1
dXV1dQp1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXVtU3BhNjY2NjY2NjY2NjY2
NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2CjY2NjY2WktscnJycnJycnJycnJycnJycnJycnJycnJy
cnJycnJycnJycnJycnJycnJwa3FXdXV1dXV1dXV1dXV1dXV1dXV1dXV1dXUKdXV1dXV1dXV1dXV1
dXV1dXV1bVRBQUFCSVNVQVFLNElDQXRYLy80SW9vQUFoU2VPQUFKejhjQUFUSHI3Nzc3Nzc3Nzc3
Nzc3Nzc3Nwo3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Ny84UC9CWVFCd0FDd0FvRUZVeitJQUFJUzRB
QWc5UkFBQkIrQUFFR1BCd0FCQWFBQUVIZGlECmdBQ0EwQUFJTzdFSEFBRUJNQUFRWG1JT0FBSUNZ
QUFndk1LV3V1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXUKdW1TcGE2NjY2
NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NlpLbHJycnJycnJycnJycnJycnJy
cnJycnJycnJycgpycnJycnJycnJycnJycnBrcVd1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1
dXV1dXV1dXV1dXV1dW1TcGE2NjY2NjY2NjY2NjY2CjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2
NjZaTUFBQUFFaEpRQmc3Z2dJQzFmLy9naWlnQUNGSjQ0QUFuUHh3QUJNZXZ2dnZ2dnYKdnZ2dnZ2
dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2di93LzhGaEFIQUFMQUNnUVZUUDRnQUFoTGdBQ0Qx
RUFBRUg0QUFRWThIQQpBRUJvQUFRZDJJT0FBSURRQUFnN3NRY0FBUUV3QUJCZVlnNEFBZ0pnQUND
OHdwYTY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2CjY2NjY2NjY2NjY2NlpLbHJycnJycnJy
cnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycGtxV3V1dXV1dXV1dXV1dXV1dXUKdXV1
dXV1dXV1dXV1dXV1dXV1dXV1dXV1dW1TcGE2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2
NjY2NjY2NjY2NlpLbHJycgpycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnBr
d0FBQUFYY2xBQ0JMZ2dJQzFmLy9naWlnQUNGSjQ0QUFuUHh3CkFCTWV2dnZ2dnZ2dnZ2dnZ2dnZ2
dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2di93LzhGaEFIQUFMQUNnUVZUUDRnQUFoTGdBQ0QxRUEK
QUVINEFBUVk4SEFBRUJvQUFRZDJJT0FBSURRQUFnN3NRY0FBUUV3QUJCZVlnNEFBZ0pnQUNDOHdw
YTY2NjY2NjY2NjY2NjY2NjY2Ngo2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NlpLbHJycnJycnJycnJy
cnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycGtxV3V1dXV1CnV1dXV1dXV1dXV1dXV1dXV1
dXV1dXV1dXV1dXV1dXV1dXV1dW1TcGE2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2
NjYKNjY2NjZaSVd3QUVaa1pHWkdSR1JrWC9nQUd5TXdFTFNoZkdXQy93bHBBQzRBRmRNallueUhS
MkR3QUtUUnBEYnFSV2NOUzExMTExMQoxMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTEx
d3N5QUFJeUl6SXpJaklqTXYvOEFEcUVGYnNpUEsyNHpkOTRCM2dBYVpQCmszem4zQUNlYW1sMy9y
Y0FBQUFWQmdVUkE0ZjBUczBLUzl5aGxEckQxSnNYSHdDQUFBQUFDQ0hoQ1FDbEFFRGdBQUFBQ2lF
QWdlRUoKQUxVQVFPQUFBQUFLSVFCQXVFSkFMVUFRT0FBQUFBb2hBR0Q0UWtBdFFCQTRBQUFBRENF
QUlFNFFrQXRRRFk4RmNBQUFBQlVHQlJFRApoL1JPelFwTDNLR1VPc1BVbXhjZkFJQUFBQUFJQWFp
QllCR2dDQndBQUFBS0FRQ0JxSUZnRmFBSUhBQUFBQW9CQUVDcUlGZ0ZhQUlICkFBQUFDZ0VBWU9v
Z1dBVm9BZ2NBQUFBTEFRQWdTb2dXQVZvQWdjQUFBQUFWQmdVUkE0ZjBUczBLUzl5aGxEckQxSnNY
SHdDQUFBQUEKQ0NIaUVRQ2xBRURnQUFBQUNpRUFnZUlSQUxVQVFPQUFBQUFLSVFCQXVJUkFMVUFR
T0FBQUFBb2hBR0Q0aEVBdFFCQTRBQUFBRENFQQpJRTRoRUF0UURZOEZjQUFBQUJVR0JSRURoL1JP
elFwTDNLR1VPc1BVbXhjZkFJQUFBQUFJQWFqRFlCR2dDQndBQUFBS0FRQ0JxTU5nCkZhQUlIQUFB
QUFvQkFFQ3FNTmdGYUFJSEFBQUFDZ0VBWU9vdzJBVm9BZ2NBQUFBTEFRQWdTb3cyQVZvQWdjQUFB
QUFWQmdVUkE0ZjAKVHMwS1M5eWhsRHJEMUpzWEh3Q0FBQUFBQ0NIakdRQ2xBRURnQUFBQUNpRUFn
ZU1aQUxVQVFPQUFBQUFLSVFCQXVNWkFMVUFRT0FBQQpBQW9oQUdENHhrQXRRQkE0QUFBQURDRUFJ
RTR4a0F0UURZOEZjQUFBQUJVR0JSRURoL1JPelFwTDNLR1VPc1BVbXhjZkFJQUFBQUFJCkFha0ZZ
QkdnQ0J3QUFBQUtBUUNCcVFWZ0ZhQUlIQUFBQUFvQkFFQ3FRVmdGYUFJSEFBQUFDZ0VBWU9wQldB
Vm9BZ2NBQUFBTEFRQWcKU3BCV0FWb0FnY0FBQUFBVkJnVVJBNGYwVHMwS1M5eWhsRHJEMUpzWEh3
Q0FBQUFBQ0NIa0lRQ2xBRURnQUFBQUNpRUFnZVFoQUxVQQpRT0FBQUFBS0lRQkF1UWhBTFVBUU9B
QUFBQW9oQUdENUNFQXRRQkE0QUFBQURDRUFJRTVDRUF0UURZOEZjQUFBQUJVR0JSRURoL1JPCnpR
cEwzS0dVT3NQVW14Y2ZBSUFBQUFBSUFhbEhZQkdnQ0J3QUFBQUtBUUNCcVVkZ0ZhQUlIQUFBQUFv
QkFFQ3FVZGdGYUFJSEFBQUEKQ2dFQVlPcFIyQVZvQWdjQUFBQUxBUUFnU3BSMkFWb0FnY0FBQUFB
VkJnVVJBNGYwVHMwS1M5eWhsRHJEMUpzWEh3Q0FBQUFBQ0NIbApLUUNsQUVEZ0FBQUFDaUVBZ2VV
cEFMVUFRT0FBQUFBS0lRQkF1VXBBTFVBUU9BQUFBQW9oQUdENVNrQXRRQkE0QUFBQURDRUFJRTVT
CmtBdFFEWThGY0FBQUFCVUdCUkVEaC9ST3pRcEwzS0dVT3NQVW14Y2ZBSUFBQUFBSUFhbUpZQkdn
Q0J3QUFBQUtBUUNCcVlsZ0ZhQUkKSEFBQUFBb0JBRUNxWWxnRmFBSUhBQUFBQ2dFQVlPcGlXQVZv
QWdjQUFBQUxBUUFnU3BpV0FWb0FnY0FBQUFBVkJnVVJBNGYwVHMwSwpTOXlobERyRDFKc1hId0NB
QUFBQUNDSG1NUUNsQUVEZ0FBQUFDaUVBZ2VZeEFMVUFRT0FBQUFBS0lRQkF1WXhBTFVBUU9BQUFB
QW9oCkFHRDVqRUF0UUJBNEFBQUFEQ0VBSUU1akVBdFFEWThGY0FBQUFCVUdCUkVEaC9ST3pRcEwz
S0dVT3NQVW14Y2ZBSUFBQUFBSUFhbkwKWUJHZ0NCd0FBQUFLQVFDQnFjdGdGYUFJSEFBQUFBb0JB
RUNxY3RnRmFBSUhBQUFBQ2dFQVlPcHkyQVZvQWdjQUFBQUxBUUFnU3B5MgpBVm9BZ2NBQUFBQVZC
Z1VSQTRmMFRzMEtTOXlobERyRDFKc1hId0NBQUFBQUNDSG5PUUNsQUVEZ0FBQUFDaUVBZ2VjNUFM
VUFRT0FBCkFBQUtJUUJBdWM1QUxVQVFPQUFBQUFvaEFHRDV6a0F0UUJBNEFBQUFEQ0VBSUU1emtB
dFFEWThGY0FBQUFCVUdCUkVEaC9ST3pRcEwKM0tHVU9zUFVteGNmQUlBQUFBQUlBYW9OWUJHZ0NC
d0FBQUFLQVFDQnFnMWdGYUFJSEFBQUFBb0JBRUNxZzFnRmFBSUhBQUFBQ2dFQQpZT3FEV0FWb0Fn
Y0FBQUFMQVFBZ1NxRFdBVm9BZ2NBQUFBQVZCZ1VSQTRmMFRzMEtTOXlobERyRDFKc1hId0NBQUFB
QUNDSG9RUUNsCkFFRGdBQUFBQ2lFQWdlaEJBTFVBUU9BQUFBQUtJUUJBdWhCQUxVQVFPQUFBQUFv
aEFHRDZFRUF0UUJBNEFBQUFEQ0VBSUU2RUVBdFEKRFk4RmNBQUFBQlVHQlJFRGgvUk96UXBMM0tH
VU9zUFVteGNmQUlBQUFBQUlBYXBQWUJHZ0NCd0FBQUFLQVFDQnFrOWdGYUFJSEFBQQpBQW9CQUVD
cWs5Z0ZhQUlIQUFBQUNnRUFZT3FUMkFWb0FnY0FBQUFMQVFBZ1NxVDJBVm9BZ2NBQUFBQVZCZ1VS
QTRmMFRzMEtTOXloCmxEckQxSnNYSHdDQUFBQUFDQ0hwU1FDbEFFRGdBQUFBQ2lFQWdlbEpBTFVB
UU9BQUFBQUtJUUJBdWxKQUxVQVFPQUFBQUFvaEFHRDYKVWtBdFFCQTRBQUFBRENFQUlFNlVrQXRR
RFk4RmNBQUFBQlVHQlJFRGgvUk96UXBMM0tHVU9zUFVteGNmQUlBQUFBQUlBYXFSWUJHZwpDQndB
QUFBS0FRQ0JxcEZnRmFBSUhBQUFBQW9CQUVDcXBGZ0ZhQUlIQUFBQUNnRUFZT3FrV0FWb0FnY0FB
QUFMQVFBZ1Nxa1dBVm9BCmdjQUFBQUFWQmdVUkE0ZjBUczBLUzl5aGxEckQxSnNYSHdDQUFBQUFD
Q0hxVVFDbEFFRGdBQUFBQ2lFQWdlcFJBTFVBUU9BQUFBQUsKSVFCQXVwUkFMVUFRT0FBQUFBb2hB
R0Q2bEVBdFFCQTRBQUFBRENFQUlFNmxFQXRRRFk4RmNBQUFBQlVHQlJFRGgvUk96UXBMM0tHVQpP
c1BVbXhjZkFJQUFBQUFJQWFyVFlCR2dDQndBQUFBS0FRQ0JxdE5nRmFBSUhBQUFBQW9CQUVDcXRO
Z0ZhQUlIQUFBQUNnRUFZT3EwCjJBVm9BZ2NBQUFBTEFRQWdTcTAyQVZvQWdjQUFBQUFWQmdVUkE0
ZjBUczBLUzl5aGxEckQxSnNYSHdDQUFBQUFDQ0hyV1FDbEFFRGcKQUFBQUNpRUFnZXRaQUxVQVFP
QUFBQUFLSVFCQXV0WkFMVUFRT0FBQUFBb2hBR0Q2MWtBdFFCQTRBQUFBRENFQUlFNjFrQXRRRFk4
RgpjQUFBQUJVR0JSRURoL1JPelFwTDNLR1VPc1BVbXhjZkFJQUFBQUFJQWFzVllCR2dDQndBQUFB
S0FRQ0JxeFZnRmFBSUhBQUFBQW9CCkFFQ3F4VmdGYUFJSEFBQUFDZ0VBWU9yRldBVm9BZ2NBQUFB
TEFRQWdTckZXQVZvQWdjQUFBQUFWQmdVUkE0ZjBUczBLUzl5aGxEckQKMUpzWEh3Q0FBQUFBQ0FI
c1hRRWFBSUhBQUFBQUNnRUFnZXhkQVZvQWdjQUFBQUFLQVFCQXV4ZEFWb0FnY0FBQUFBb0JBR0Q3
RjBCVwpnQ0J3QUFBQUNnRUFJRTdGMEJXZ0NCd0FBQUFWQmdVUkE0ZjBUczBLUzl5aGxEckQxSnNY
SHdDQUFBQUJUeVc0SUNBcFgvLzRLNEFICkVSRUFoS1VLNHd3QUhFR0hDcEFBQ1YrQTRBQWt1QUFV
a2lKQ2JJWkdZTU9BQlhiTnNiOVNxN2hoM0xmZmZmZmZmZmZmZmZmZmZmZmYKZmZmZmZmZmZmZmZm
ZmZmZmZmZmZmZi9oLzRjSUFCUmlDTnlSSllibnM0VFgvQU1FNTJPQlFBQWhNZ0FDRDRJQUFJUHdB
QWd4NEFHKwpicGdBQ0F4NU1BQUlPcjZXQUFJRFFBQWc3c1FBYVNXZ0FCQVIxb0FBZ3VmK2RMQUFF
Qk1BQVFYbUZMWFhYWFhYWFhYWFhYWFhYWFhYClhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYVEpVdGRk
ZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkTWxTMTExMTEKMTExMTExMTEx
MTExMTExMTExMTExMTExMTExMTExMTExMTExMHlWTFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhY
WFhYWFhYWFhYWApYWFhYWFRKVXRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRk
ZGRkZE1tQUFBQklDVUFnYmdnSUMxZi8vZ2lpZ0FDCkZKNDRBQW5QeHdBQk1ldnZ2dnZ2dnZ2dnZ2
dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnYvdy84RmhBSEFBTEFDZ1FWVFA0Z0EKQWhMZ0FD
RDFFQUFFSDRBQVFZOEhBQUVCb0FBUWQySU9BQUlEUUFBZzdzUWNBQVFFd0FCQmVZZzRBQWdKZ0FD
Qzh3cGE2NjY2NjY2Ngo2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjZaS2xycnJycnJy
cnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJyCnJwa3FXdXV1dXV1dXV1dXV1dXV1dXV1
dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXVtU3BhNjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjYKNjY2
NjY2NjY2NjY2NjY2WktscnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJw
a3dBQUFTRWxBRUN1Q0FnTApWLy8rQ0tLQUFJVW5qZ0FDYy9IQUFFeDYrKysrKysrKysrKysrKysr
KysrKysrKysrKysrKysrKysrKysrKysrLy9EL3dXRUFjQUFzCkFLQkJWTS9pQUFDRXVBQUlQVVFB
QVFmZ0FCQmp3Y0FBUUdnQUJCM1lnNEFBZ05BQUNEdXhCd0FCQVRBQUVGNWlEZ0FDQW1BQUlMekMK
bHJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycGtxV3V1dXV1dXV1dXV1
dXV1dXV1dXV1dXV1dXV1dXV1dQp1dXV1dXV1dXV1dW1TcGE2NjY2NjY2NjY2NjY2NjY2NjY2NjY2
NjY2NjY2NjY2NjY2NjY2NjY2NlpLbHJycnJycnJycnJycnJycnJyCnJycnJycnJycnJycnJycnJy
cnJycnJycnBrcVd1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dW1UQUFB
QUIKSVNVQVlPNElDQXRYLy80SW9vQUFoU2VPQUFKejhjQUFUSHI3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3
Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Lwo4UC9CWVFCd0FDd0FvRUZVeitJQUFJUzRBQWc5UkFBQkIr
QUFFR1BCd0FCQWFBQUVIZGlEZ0FDQTBBQUlPN0VIQUFFQk1BQVFYbUlPCkFBSUNZQUFndk1LV3V1
dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1bVNwYTY2NjY2NjY2NjY2NjY2
NjY2NjYKNjY2NjY2NjY2NjY2NjY2NjY2NjY2NlpLbHJycnJycnJycnJycnJycnJycnJycnJycnJy
cnJycnJycnJycnJycnJycGtxV3V1dXV1dQp1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1
dXV1dW1TcGE2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2CjY2NjZaTUFBQUFG
M0pRQWdTNElDQXRYLy80SW9vQUFoU2VPQUFKejhjQUFUSHI3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3
Nzc3Nzc3NzcKNzc3Nzc3Nzc3Ny84UC9CWVFCd0FDd0FvRUZVeitJQUFJUzRBQWc5UkFBQkIrQUFF
R1BCd0FCQWFBQUVIZGlEZ0FDQTBBQUlPN0VIQQpBRUJNQUFRWG1JT0FBSUNZQUFndk1LV3V1dXV1
dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1bVNwYTY2NjY2NjY2CjY2NjY2NjY2
NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NlpLbHJycnJycnJycnJycnJycnJycnJycnJycnJycnJy
cnJycnJycnJycnIKcnBrcVd1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1
dW1TRnNBQkdaR1JtUmtSa1pGLzRBQnNqTUJDMG9YeApsZ3Y4SmFRQXVBQlhUSTJKOGgwZGc4QUNr
MGFRMjZrVm5EVXRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRjCkxNZ0FD
TWlNeU15SXlJekwvL0FBNmhCVzdJanl0dU0zZmVBZDRBR21UNU44NTl3QW5tcHBkLzYzQUFBQUZR
WUZFUU9IOUU3TkNrdmMKb1pRNnc5U2JGeDhBZ0FBQUFBZ2g0UWtBcFFCQTRBQUFBQW9oQUlIaENR
QzFBRURnQUFBQUNpRUFRTGhDUUMxQUVEZ0FBQUFLSVFCZworRUpBTFVBUU9BQUFBQXdoQUNCT0VK
QUxVQTJQQlhBQUFBQVZCZ1VSQTRmMFRzMEtTOXlobERyRDFKc1hId0NBQUFBQUNBR29nV0FSCm9B
Z2NBQUFBQ2dFQWdhaUJZQldnQ0J3QUFBQUtBUUJBcWlCWUJXZ0NCd0FBQUFvQkFHRHFJRmdGYUFJ
SEFBQUFDd0VBSUVxSUZnRmEKQUlIQUFBQUFGUVlGRVFPSDlFN05Da3Zjb1pRNnc5U2JGeDhBZ0FB
QUFBZ2g0aEVBcFFCQTRBQUFBQW9oQUlIaUVRQzFBRURnQUFBQQpDaUVBUUxpRVFDMUFFRGdBQUFB
S0lRQmcrSVJBTFVBUU9BQUFBQXdoQUNCT0lSQUxVQTJQQlhBQUFBQVZCZ1VSQTRmMFRzMEtTOXlo
CmxEckQxSnNYSHdDQUFBQUFDQUdvdzJBUm9BZ2NBQUFBQ2dFQWdhakRZQldnQ0J3QUFBQUtBUUJB
cWpEWUJXZ0NCd0FBQUFvQkFHRHEKTU5nRmFBSUhBQUFBQ3dFQUlFcU1OZ0ZhQUlIQUFBQUFGUVlG
RVFPSDlFN05Da3Zjb1pRNnc5U2JGeDhBZ0FBQUFBZ2g0eGtBcFFCQQo0QUFBQUFvaEFJSGpHUUMx
QUVEZ0FBQUFDaUVBUUxqR1FDMUFFRGdBQUFBS0lRQmcrTVpBTFVBUU9BQUFBQXdoQUNCT01aQUxV
QTJQCkJYQUFBQUFWQmdVUkE0ZjBUczBLUzl5aGxEckQxSnNYSHdDQUFBQUFDQUdwQldBUm9BZ2NB
QUFBQ2dFQWdha0ZZQldnQ0J3QUFBQUsKQVFCQXFrRllCV2dDQndBQUFBb0JBR0RxUVZnRmFBSUhB
QUFBQ3dFQUlFcVFWZ0ZhQUlIQUFBQUFGUVlGRVFPSDlFN05Da3Zjb1pRNgp3OVNiRng4QWdBQUFB
QWdoNUNFQXBRQkE0QUFBQUFvaEFJSGtJUUMxQUVEZ0FBQUFDaUVBUUxrSVFDMUFFRGdBQUFBS0lR
QmcrUWhBCkxVQVFPQUFBQUF3aEFDQk9RaEFMVUEyUEJYQUFBQUFWQmdVUkE0ZjBUczBLUzl5aGxE
ckQxSnNYSHdDQUFBQUFDQUdwUjJBUm9BZ2MKQUFBQUNnRUFnYWxIWUJXZ0NCd0FBQUFLQVFCQXFs
SFlCV2dDQndBQUFBb0JBR0RxVWRnRmFBSUhBQUFBQ3dFQUlFcVVkZ0ZhQUlIQQpBQUFBRlFZRkVR
T0g5RTdOQ2t2Y29aUTZ3OVNiRng4QWdBQUFBQWdoNVNrQXBRQkE0QUFBQUFvaEFJSGxLUUMxQUVE
Z0FBQUFDaUVBClFMbEtRQzFBRURnQUFBQUtJUUJnK1VwQUxVQVFPQUFBQUF3aEFDQk9VcEFMVUEy
UEJYQUFBQUFWQmdVUkE0ZjBUczBLUzl5aGxEckQKMUpzWEh3Q0FBQUFBQ0FHcGlXQVJvQWdjQUFB
QUNnRUFnYW1KWUJXZ0NCd0FBQUFLQVFCQXFtSllCV2dDQndBQUFBb0JBR0RxWWxnRgphQUlIQUFB
QUN3RUFJRXFZbGdGYUFJSEFBQUFBRlFZRkVRT0g5RTdOQ2t2Y29aUTZ3OVNiRng4QWdBQUFBQWdo
NWpFQXBRQkE0QUFBCkFBb2hBSUhtTVFDMUFFRGdBQUFBQ2lFQVFMbU1RQzFBRURnQUFBQUtJUUJn
K1l4QUxVQVFPQUFBQUF3aEFDQk9ZeEFMVUEyUEJYQUEKQUFBVkJnVVJBNGYwVHMwS1M5eWhsRHJE
MUpzWEh3Q0FBQUFBQ0FHcHkyQVJvQWdjQUFBQUNnRUFnYW5MWUJXZ0NCd0FBQUFLQVFCQQpxbkxZ
QldnQ0J3QUFBQW9CQUdEcWN0Z0ZhQUlIQUFBQUN3RUFJRXFjdGdGYUFJSEFBQUFBRlFZRkVRT0g5
RTdOQ2t2Y29aUTZ3OVNiCkZ4OEFnQUFBQUFnaDV6a0FwUUJBNEFBQUFBb2hBSUhuT1FDMUFFRGdB
QUFBQ2lFQVFMbk9RQzFBRURnQUFBQUtJUUJnK2M1QUxVQVEKT0FBQUFBd2hBQ0JPYzVBTFVBMlBC
WEFBQUFBVkJnVVJBNGYwVHMwS1M5eWhsRHJEMUpzWEh3Q0FBQUFBQ0FHcURXQVJvQWdjQUFBQQpD
Z0VBZ2FvTllCV2dDQndBQUFBS0FRQkFxb05ZQldnQ0J3QUFBQW9CQUdEcWcxZ0ZhQUlIQUFBQUN3
RUFJRXFnMWdGYUFJSEFBQUFBCkZRWUZFUU9IOUU3TkNrdmNvWlE2dzlTYkZ4OEFnQUFBQUFnaDZF
RUFwUUJBNEFBQUFBb2hBSUhvUVFDMUFFRGdBQUFBQ2lFQVFMb1EKUUMxQUVEZ0FBQUFLSVFCZyto
QkFMVUFRT0FBQUFBd2hBQ0JPaEJBTFVBMlBCWEFBQUFBVkJnVVJBNGYwVHMwS1M5eWhsRHJEMUpz
WApId0NBQUFBQUNBR3FUMkFSb0FnY0FBQUFDZ0VBZ2FwUFlCV2dDQndBQUFBS0FRQkFxcFBZQldn
Q0J3QUFBQW9CQUdEcWs5Z0ZhQUlICkFBQUFDd0VBSUVxazlnRmFBSUhBQUFBQUZRWUZFUU9IOUU3
TkNrdmNvWlE2dzlTYkZ4OEFnQUFBQUFnaDZVa0FwUUJBNEFBQUFBb2gKQUlIcFNRQzFBRURnQUFB
QUNpRUFRTHBTUUMxQUVEZ0FBQUFLSVFCZytsSkFMVUFRT0FBQUFBd2hBQ0JPbEpBTFVBMlBCWEFB
QUFBVgpCZ1VSQTRmMFRzMEtTOXlobERyRDFKc1hId0NBQUFBQUNBR3FrV0FSb0FnY0FBQUFDZ0VB
Z2FxUllCV2dDQndBQUFBS0FRQkFxcVJZCkJXZ0NCd0FBQUFvQkFHRHFwRmdGYUFJSEFBQUFDd0VB
SUVxcEZnRmFBSUhBQUFBQUZRWUZFUU9IOUU3TkNrdmNvWlE2dzlTYkZ4OEEKZ0FBQUFBZ2g2bEVB
cFFCQTRBQUFBQW9oQUlIcVVRQzFBRURnQUFBQUNpRUFRTHFVUUMxQUVEZ0FBQUFLSVFCZytwUkFM
VUFRT0FBQQpBQXdoQUNCT3BSQUxVQTJQQlhBQUFBQVZCZ1VSQTRmMFRzMEtTOXlobERyRDFKc1hI
d0NBQUFBQUNBR3EwMkFSb0FnY0FBQUFDZ0VBCmdhclRZQldnQ0J3QUFBQUtBUUJBcXJUWUJXZ0NC
d0FBQUFvQkFHRHF0TmdGYUFJSEFBQUFDd0VBSUVxdE5nRmFBSUhBQUFBQUZRWUYKRVFPSDlFN05D
a3Zjb1pRNnc5U2JGeDhBZ0FBQUFBZ2g2MWtBcFFCQTRBQUFBQW9oQUlIcldRQzFBRURnQUFBQUNp
RUFRTHJXUUMxQQpFRGdBQUFBS0lRQmcrdFpBTFVBUU9BQUFBQXdoQUNCT3RaQUxVQTJQQlhBQUFB
QVZCZ1VSQTRmMFRzMEtTOXlobERyRDFKc1hId0NBCkFBQUFDQUdyRldBUm9BZ2NBQUFBQ2dFQWdh
c1ZZQldnQ0J3QUFBQUtBUUJBcXNWWUJXZ0NCd0FBQUFvQkFHRHF4VmdGYUFJSEFBQUEKQ3dFQUlF
cXhWZ0ZhQUlIQUFBQUFGUVlGRVFPSDlFN05Da3Zjb1pRNnc5U2JGeDhBZ0FBQUFBZ0I3RjBCR2dD
QndBQUFBQW9CQUlIcwpYUUZhQUlIQUFBQUFDZ0VBUUxzWFFGYUFJSEFBQUFBS0FRQmcreGRBVm9B
Z2NBQUFBQW9CQUNCT3hkQVZvQWdjQUFBQUZRWUZFUU9ICjlFN05Da3Zjb1pRNnc5U2JGeDhBZ0FB
QUFVOGx1Q0FnS1YvLytDdUFCeEVSQUlTbEN1TU1BQnhCaHdxUUFBbGZnT0FBSkxnQUZKSWkKUW15
R1JtRERnQVYyemJHL1VxdTRZZHkzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMzMz
MzMzLzRmK0hDQUFVWWdqYwprU1dHNTdPRTEvd0RCT2RqZ1VBQUlUSUFBZytDQUFDRDhBQUlNZUFC
dm02WUFBZ01lVEFBQ0RxK2xnQUNBMEFBSU83RUFHa2xvQUFRCkVkYUFBSUxuL25Td0FCQVRBQUVG
NWhTMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTEweVZMWFhYWFhYWFgK
WFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYVEpVdGRkZGRkZGRkZGRkZGRkZGRkZGRk
ZGRkZGRkZGRkZGRkZGRkZGRkZApkZE1sUzExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTEx
MTExMTExMTExMHlWTFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYClhYWFhYWFhYWFhYWFhYWFRK
Z0FBQVNBbEFJRzRJQ0F0WC8vNElvb0FBaFNlT0FBSno4Y0FBVEhyNzc3Nzc3Nzc3Nzc3Nzc3Nzc3
NzcKNzc3Nzc3Nzc3Nzc3Nzc3Nzc3NzcvOFAvQllRQndBQ3dBb0VGVXorSUFBSVM0QUFnOVJBQUJC
K0FBRUdQQndBQkFhQUFFSGRpRGdBQwpBMEFBSU83RUhBQUVCTUFBUVhtSU9BQUlDWUFBZ3ZNS1d1
dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dW1TCnBhNjY2NjY2NjY2NjY2
NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjZaS2xycnJycnJycnJycnJycnJycnJycnJycnJy
cnJycnIKcnJycnJycnJycnJwa3FXdXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1
dXV1dXVtU3BhNjY2NjY2NjY2NjY2NjY2Ngo2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2Wk1BQUFF
aEpRQkFyZ2dJQzFmLy9naWlnQUNGSjQ0QUFuUHh3QUJNZXZ2dnZ2dnZ2dnZ2CnZ2dnZ2dnZ2dnZ2
dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2di93LzhGaEFIQUFMQUNnUVZUUDRnQUFoTGdBQ0QxRUFBRUg0QUFR
WThIQUFFQm8KQUFRZDJJT0FBSURRQUFnN3NRY0FBUUV3QUJCZVlnNEFBZ0pnQUNDOHdwYTY2NjY2
NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2Ngo2NjY2NjY2NlpLbHJycnJycnJycnJycnJycnJy
cnJycnJycnJycnJycnJycnJycnJycnJycGtxV3V1dXV1dXV1dXV1dXV1dXV1dXV1CnV1dXV1dXV1
dXV1dXV1dXV1dXV1dW1TcGE2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2
NlpLbHJycnJycnIKcnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnBrd0FBQUFTRWxB
R0R1Q0FnTFYvLytDS0tBQUlVbmpnQUNjL0hBQUV4NgorKysrKysrKysrKysrKysrKysrKysrKysr
KysrKysrKysrKysrKysrLy9EL3dXRUFjQUFzQUtCQlZNL2lBQUNFdUFBSVBVUUFBUWZnCkFCQmp3
Y0FBUUdnQUJCM1lnNEFBZ05BQUNEdXhCd0FCQVRBQUVGNWlEZ0FDQW1BQUlMekNscnJycnJycnJy
cnJycnJycnJycnJycnIKcnJycnJycnJycnJycnJycnJycGtxV3V1dXV1dXV1dXV1dXV1dXV1dXV1
dXV1dXV1dXV1dXV1dXV1dXV1dXV1bVNwYTY2NjY2NjY2Ngo2NjY2NjY2NjY2NjY2NjY2NjY2NjY2
NjY2NjY2NjY2NlpLbHJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJyCnBr
cVd1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dW1UQUFBQUJkeVVBSUV1
Q0FnTFYvLytDS0tBQUlVbmoKZ0FDYy9IQUFFeDYrKysrKysrKysrKysrKysrKysrKysrKysrKysr
KysrKysrKysrKysrLy9EL3dXRUFjQUFzQUtCQlZNL2lBQUNFdQpBQUlQVVFBQVFmZ0FCQmp3Y0FB
UUdnQUJCM1lnNEFBZ05BQUNEdXhCd0FCQVRBQUVGNWlEZ0FDQW1BQUlMekNscnJycnJycnJycnJy
CnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycGtxV3V1dXV1dXV1dXV1dXV1dXV1dXV1dXV1
dXV1dXV1dXV1dXV1dXV1dXV1bVMKcGE2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2
NjY2NjY2NlpLbHJycnJycnJycnJycnJycnJycnJycnJycnJycnJycgpycnJycnJycnJycnBraGJB
QVJtUmtaa1pFWkdSZitBQWJJekFRdEtGOFpZTC9DV2tBTGdBVjB5TmlmSWRIWVBBQXBOR2tOdXBG
WncxCkxYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYQ3pJQUFqSWpNak1p
TWlNeS8vd0FPb1FWdXlJOHJiak4zM2cKSGVBQnBrK1RmT2ZjQUo1cWFYZit0d0FBQUJVR0JSRURo
L1JPelFwTDNLR1VPc1BVbXhjZkFJQUFBQUFJSWVFSkFLVUFRT0FBQUFBSwpJUUNCNFFrQXRRQkE0
QUFBQUFvaEFFQzRRa0F0UUJBNEFBQUFDaUVBWVBoQ1FDMUFFRGdBQUFBTUlRQWdUaENRQzFBTmp3
VndBQUFBCkZRWUZFUU9IOUU3TkNrdmNvWlE2dzlTYkZ4OEFnQUFBQUFnQnFJRmdFYUFJSEFBQUFB
b0JBSUdvZ1dBVm9BZ2NBQUFBQ2dFQVFLb2cKV0FWb0FnY0FBQUFLQVFCZzZpQllCV2dDQndBQUFB
c0JBQ0JLaUJZQldnQ0J3QUFBQUJVR0JSRURoL1JPelFwTDNLR1VPc1BVbXhjZgpBSUFBQUFBSUll
SVJBS1VBUU9BQUFBQUtJUUNCNGhFQXRRQkE0QUFBQUFvaEFFQzRoRUF0UUJBNEFBQUFDaUVBWVBp
RVFDMUFFRGdBCkFBQU1JUUFnVGlFUUMxQU5qd1Z3QUFBQUZRWUZFUU9IOUU3TkNrdmNvWlE2dzlT
YkZ4OEFnQUFBQUFnQnFNTmdFYUFJSEFBQUFBb0IKQUlHb3cyQVZvQWdjQUFBQUNnRUFRS293MkFW
b0FnY0FBQUFLQVFCZzZqRFlCV2dDQndBQUFBc0JBQ0JLakRZQldnQ0J3QUFBQUJVRwpCUkVEaC9S
T3pRcEwzS0dVT3NQVW14Y2ZBSUFBQUFBSUllTVpBS1VBUU9BQUFBQUtJUUNCNHhrQXRRQkE0QUFB
QUFvaEFFQzR4a0F0ClFCQTRBQUFBQ2lFQVlQakdRQzFBRURnQUFBQU1JUUFnVGpHUUMxQU5qd1Z3
QUFBQUZRWUZFUU9IOUU3TkNrdmNvWlE2dzlTYkZ4OEEKZ0FBQUFBZ0JxUVZnRWFBSUhBQUFBQW9C
QUlHcEJXQVZvQWdjQUFBQUNnRUFRS3BCV0FWb0FnY0FBQUFLQVFCZzZrRllCV2dDQndBQQpBQXNC
QUNCS2tGWUJXZ0NCd0FBQUFCVUdCUkVEaC9ST3pRcEwzS0dVT3NQVW14Y2ZBSUFBQUFBSUllUWhB
S1VBUU9BQUFBQUtJUUNCCjVDRUF0UUJBNEFBQUFBb2hBRUM1Q0VBdFFCQTRBQUFBQ2lFQVlQa0lR
QzFBRURnQUFBQU1JUUFnVGtJUUMxQU5qd1Z3QUFBQUZRWUYKRVFPSDlFN05Da3Zjb1pRNnc5U2JG
eDhBZ0FBQUFBZ0JxVWRnRWFBSUhBQUFBQW9CQUlHcFIyQVZvQWdjQUFBQUNnRUFRS3BSMkFWbwpB
Z2NBQUFBS0FRQmc2bEhZQldnQ0J3QUFBQXNCQUNCS2xIWUJXZ0NCd0FBQUFCVUdCUkVEaC9ST3pR
cEwzS0dVT3NQVW14Y2ZBSUFBCkFBQUlJZVVwQUtVQVFPQUFBQUFLSVFDQjVTa0F0UUJBNEFBQUFB
b2hBRUM1U2tBdFFCQTRBQUFBQ2lFQVlQbEtRQzFBRURnQUFBQU0KSVFBZ1RsS1FDMUFOandWd0FB
QUFGUVlGRVFPSDlFN05Da3Zjb1pRNnc5U2JGeDhBZ0FBQUFBZ0JxWWxnRWFBSUhBQUFBQW9CQUlH
cAppV0FWb0FnY0FBQUFDZ0VBUUtwaVdBVm9BZ2NBQUFBS0FRQmc2bUpZQldnQ0J3QUFBQXNCQUNC
S21KWUJXZ0NCd0FBQUFCVUdCUkVECmgvUk96UXBMM0tHVU9zUFVteGNmQUlBQUFBQUlJZVl4QUtV
QVFPQUFBQUFLSVFDQjVqRUF0UUJBNEFBQUFBb2hBRUM1akVBdFFCQTQKQUFBQUNpRUFZUG1NUUMx
QUVEZ0FBQUFNSVFBZ1RtTVFDMUFOandWd0FBQUFGUVlGRVFPSDlFN05Da3Zjb1pRNnc5U2JGeDhB
Z0FBQQpBQWdCcWN0Z0VhQUlIQUFBQUFvQkFJR3B5MkFWb0FnY0FBQUFDZ0VBUUtweTJBVm9BZ2NB
QUFBS0FRQmc2bkxZQldnQ0J3QUFBQXNCCkFDQktuTFlCV2dDQndBQUFBQlVHQlJFRGgvUk96UXBM
M0tHVU9zUFVteGNmQUlBQUFBQUlJZWM1QUtVQVFPQUFBQUFLSVFDQjV6a0EKdFFCQTRBQUFBQW9o
QUVDNXprQXRRQkE0QUFBQUNpRUFZUG5PUUMxQUVEZ0FBQUFNSVFBZ1RuT1FDMUFOandWd0FBQUFG
UVlGRVFPSAo5RTdOQ2t2Y29aUTZ3OVNiRng4QWdBQUFBQWdCcWcxZ0VhQUlIQUFBQUFvQkFJR3FE
V0FWb0FnY0FBQUFDZ0VBUUtxRFdBVm9BZ2NBCkFBQUtBUUJnNm9OWUJXZ0NCd0FBQUFzQkFDQktv
TllCV2dDQndBQUFBQlVHQlJFRGgvUk96UXBMM0tHVU9zUFVteGNmQUlBQUFBQUkKSWVoQkFLVUFR
T0FBQUFBS0lRQ0I2RUVBdFFCQTRBQUFBQW9oQUVDNkVFQXRRQkE0QUFBQUNpRUFZUG9RUUMxQUVE
Z0FBQUFNSVFBZwpUb1FRQzFBTmp3VndBQUFBRlFZRkVRT0g5RTdOQ2t2Y29aUTZ3OVNiRng4QWdB
QUFBQWdCcWs5Z0VhQUlIQUFBQUFvQkFJR3FUMkFWCm9BZ2NBQUFBQ2dFQVFLcVQyQVZvQWdjQUFB
QUtBUUJnNnBQWUJXZ0NCd0FBQUFzQkFDQktwUFlCV2dDQndBQUFBQlVHQlJFRGgvUk8KelFwTDNL
R1VPc1BVbXhjZkFJQUFBQUFJSWVsSkFLVUFRT0FBQUFBS0lRQ0I2VWtBdFFCQTRBQUFBQW9oQUVD
NlVrQXRRQkE0QUFBQQpDaUVBWVBwU1FDMUFFRGdBQUFBTUlRQWdUcFNRQzFBTmp3VndBQUFBRlFZ
RkVRT0g5RTdOQ2t2Y29aUTZ3OVNiRng4QWdBQUFBQWdCCnFwRmdFYUFJSEFBQUFBb0JBSUdxa1dB
Vm9BZ2NBQUFBQ2dFQVFLcWtXQVZvQWdjQUFBQUtBUUJnNnFSWUJXZ0NCd0FBQUFzQkFDQksKcVJZ
QldnQ0J3QUFBQUJVR0JSRURoL1JPelFwTDNLR1VPc1BVbXhjZkFJQUFBQUFJSWVwUkFLVUFRT0FB
QUFBS0lRQ0I2bEVBdFFCQQo0QUFBQUFvaEFFQzZsRUF0UUJBNEFBQUFDaUVBWVBxVVFDMUFFRGdB
QUFBTUlRQWdUcVVRQzFBTmp3VndBQUFBRlFZRkVRT0g5RTdOCkNrdmNvWlE2dzlTYkZ4OEFnQUFB
QUFnQnF0TmdFYUFJSEFBQUFBb0JBSUdxMDJBVm9BZ2NBQUFBQ2dFQVFLcTAyQVZvQWdjQUFBQUsK
QVFCZzZyVFlCV2dDQndBQUFBc0JBQ0JLclRZQldnQ0J3QUFBQUJVR0JSRURoL1JPelFwTDNLR1VP
c1BVbXhjZkFJQUFBQUFJSWV0WgpBS1VBUU9BQUFBQUtJUUNCNjFrQXRRQkE0QUFBQUFvaEFFQzYx
a0F0UUJBNEFBQUFDaUVBWVByV1FDMUFFRGdBQUFBTUlRQWdUcldRCkMxQU5qd1Z3QUFBQUZRWUZF
UU9IOUU3TkNrdmNvWlE2dzlTYkZ4OEFnQUFBQUFnQnF4VmdFYUFJSEFBQUFBb0JBSUdyRldBVm9B
Z2MKQUFBQUNnRUFRS3JGV0FWb0FnY0FBQUFLQVFCZzZzVllCV2dDQndBQUFBc0JBQ0JLc1ZZQldn
Q0J3QUFBQUJVR0JSRURoL1JPelFwTAozS0dVT3NQVW14Y2ZBSUFBQUFBSUFleGRBUm9BZ2NBQUFB
QUtBUUNCN0YwQldnQ0J3QUFBQUFvQkFFQzdGMEJXZ0NCd0FBQUFDZ0VBCllQc1hRRmFBSUhBQUFB
QUtBUUFnVHNYUUZhQUlIQUFBQUJVR0JSRURoL1JPelFwTDNLR1VPc1BVbXhjZkFJQUFBQUZQSmJn
Z0lDbGYKLy9ncmdBY1JFUUNFcFFyakRBQWNRWWNLa0FBSlg0RGdBQ1M0QUJTU0lrSnNoa1pndzRB
RmRzMnh2MUtydUdIY3Q5OTk5OTk5OTk5OQo5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5OTk5LytI
L2h3Z0FGR0lJM0pFbGh1ZXpoTmY4QXdUblk0RkFBQ0V5QUFJUGdnQUFnL0FBCkNESGdBYjV1bUFB
SURIa3dBQWc2dnBZQUFnTkFBQ0R1eEFCcEphQUFFQkhXZ0FDQzUvNTBzQUFRRXdBQkJlWVV0ZGRk
ZGRkZGRkZGQKZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkTWxTMTExMTExMTExMTExMTEx
MTExMTExMTExMTExMTExMTExMTExMTExMTEweQpWTFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhY
WFhYWFhYWFhYWFhYWFhYVEpVdGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkCmRkZGRkZGRk
ZGRkZE1sUzExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMHlZQUFBRWdK
UUNCdUNBZ0xWLy8KK0NLS0FBSVVuamdBQ2MvSEFBRXg2KysrKysrKysrKysrKysrKysrKysrKysr
KysrKysrKysrKysrKysrKy8vRC93V0VBY0FBc0FLQgpCVk0vaUFBQ0V1QUFJUFVRQUFRZmdBQkJq
d2NBQVFHZ0FCQjNZZzRBQWdOQUFDRHV4QndBQkFUQUFFRjVpRGdBQ0FtQUFJTHpDbHJyCnJycnJy
cnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnBrcVd1dXV1dXV1dXV1dXV1dXV1dXV1
dXV1dXV1dXV1dXV1dXUKdXV1dXV1dXVtU3BhNjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2
NjY2NjY2NjY2NjZaS2xycnJycnJycnJycnJycnJycnJycgpycnJycnJycnJycnJycnJycnJycnJw
a3FXdXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXVtVEFBQUJJU1VBClFL
NElDQXRYLy80SW9vQUFoU2VPQUFKejhjQUFUSHI3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3Nzc3
Nzc3Nzc3Nzc3Nzc3LzhQL0IKWVFCd0FDd0FvRUZVeitJQUFJUzRBQWc5UkFBQkIrQUFFR1BCd0FC
QWFBQUVIZGlEZ0FDQTBBQUlPN0VIQUFFQk1BQVFYbUlPQUFJQwpZQUFndk1LV3V1dXV1dXV1dXV1
dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1bVNwYTY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2
CjY2NjY2NjY2NjY2NjY2NjY2NlpLbHJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJycnJy
cnJycnJycGtxV3V1dXV1dXV1dXUKdXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dW1TcGE2
NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NgpaTUFBQUFFaEpRQmc3Z2dJ
QzFmLy9naWlnQUNGSjQ0QUFuUHh3QUJNZXZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2
dnZ2CnZ2dnZ2di93LzhGaEFIQUFMQUNnUVZUUDRnQUFoTGdBQ0QxRUFBRUg0QUFRWThIQUFFQm9B
QVFkMklPQUFJRFFBQWc3c1FjQUFRRXcKQUJCZVlnNEFBZ0pnQUNDOHdwYTY2NjY2NjY2NjY2NjY2
NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2WktscnJycnJycnJycnJycgpycnJycnJycnJycnJy
cnJycnJycnJycnJycnJycGtxV3V1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1
dXV1bVNwCmE2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NlpLbHJycnJy
cnJycnJycnJycnJycnJycnJycnJycnJycnIKcnJycnJycnJycnBrd0FBQUFYY2xBQ0JMZ2dJQzFm
Ly9naWlnQUNGSjQ0QUFuUHh3QUJNZXZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dnZ2dgp2dnZ2dnZ2dnZ2
dnZ2dnZ2di93LzhGaEFIQUFMQUNnUVZUUDRnQUFoTGdBQ0QxRUFBRUg0QUFRWThIQUFFQm9BQVFk
MklPQUFJRFFBCkFnN3NRY0FBUUV3QUJCZVlnNEFBZ0pnQUNDOHdwYTY2NjY2NjY2NjY2NjY2NjY2
NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2WktscnIKcnJycnJycnJycnJycnJycnJycnJycnJycnJy
cnJycnJycnJycnJycGtxV3V1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dXV1dQp1dXV1dXV1
dW1TcGE2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NlpJV3dBRVprWkda
R1JHUmtYL2dBR3lNCndFTFNoZkdXQy93bHBBQzRBRmRNallueUhSMkR3QUtUUnBEYnFSV2NOUzEx
MTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTEKMTExMTExd3N5QUFJeUl6SXpJaklqTXYv
OEFEcUVGYnNpUEsyNHpkOTRCM2dBYVpQazN6bjNBQ2VhbWwzL3JjQUFBQVZCZ1VSQTRmMApUczBL
Uzl5aGxEckQxSnNYSHdDQUFBQUFDQ0hoQ1FDbEFFRGdBQUFBQ2lFQWdlRUpBTFVBUU9BQUFBQUtJ
UUJBdUVKQUxVQVFPQUFBCkFBb2hBR0Q0UWtBdFFCQTRBQUFBRENFQUlFNFFrQXRRRFk4RmNBQUFB
QlVHQlJFRGgvUk96UXBMM0tHVU9zUFVteGNmQUlBQUFBQUkKQWFpQllCR2dDQndBQUFBS0FRQ0Jx
SUZnRmFBSUhBQUFBQW9CQUVDcUlGZ0ZhQUlIQUFBQUNnRUFZT29nV0FWb0FnY0FBQUFMQVFBZwpT
b2dXQVZvQWdjQUFBQUFWQmdVUkE0ZjBUczBLUzl5aGxEckQxSnNYSHdDQUFBQUFDQ0hpRVFDbEFF
RGdBQUFBQ2lFQWdlSVJBTFVBClFPQUFBQUFLSVFCQXVJUkFMVUFRT0FBQUFBb2hBR0Q0aEVBdFFC
QTRBQUFBRENFQUlFNGhFQXRRRFk4RmNBQUFBQlVHQlJFRGgvUk8KelFwTDNLR1VPc1BVbXhjZkFJ
QUFBQUFJQWFqRFlCR2dDQndBQUFBS0FRQ0JxTU5nRmFBSUhBQUFBQW9CQUVDcU1OZ0ZhQUlIQUFB
QQpDZ0VBWU9vdzJBVm9BZ2NBQUFBTEFRQWdTb3cyQVZvQWdjQUFBQUFWQmdVUkE0ZjBUczBLUzl5
aGxEckQxSnNYSHdDQUFBQUFDQ0hqCkdRQ2xBRURnQUFBQUNpRUFnZU1aQUxVQVFPQUFBQUFLSVFC
QXVNWkFMVUFRT0FBQUFBb2hBR0Q0eGtBdFFCQTRBQUFBRENFQUlFNHgKa0F0UURZOEZjQUFBQUJV
R0JSRURoL1JPelFwTDNLR1VPc1BVbXhjZkFJQUFBQUFJQWFrRllCR2dDQndBQUFBS0FRQ0JxUVZn
RmFBSQpIQUFBQUFvQkFFQ3FRVmdGYUFJSEFBQUFDZ0VBWU9wQldBVm9BZ2NBQUFBTEFRQWdTcEJX
QVZvQWdjQT0KCg==
</data>

          </attachment>
      

    </bug>

</bugzilla>